- 博客(51)
- 资源 (7)
- 收藏
- 关注
原创 python图像旋转
图像旋转90度方法:1.img_data = np.rot90(img_data, -1)2.使用 opencv函数:img_data = cv2.transpose(img_data) img_data = cv2.flip(img_data, 1)
2019-07-30 10:16:36
843
原创 tensorflow加载预训练模型的部分参数方法
在训练时,修改了部分网络结构,但其他的网络结果仍一样,又不想重新开始训练,这就需要加载已训练的好的模型的参数。下面是在训练中需要加载部分参数模型,以此记录:if args.checkpoint and os.path.isdir(args.checkpoint): logger.info('Restore from checkpoint...') ...
2019-05-24 15:46:04
8636
原创 windows10-cuda10.1-cudnn7-tensorflow1.4.0配置流程
1.下载cuda版本:cuda_10.1.105_win10_network.exe,并按照流程安装。安装完后,打开cmd ,输入:nvcc -V,回车查看是否有版本信息,若出现版本信息,则证明nvcc安装成功。2.下载cudnn版本:cudnn-10.0-windows10-x64-v7.4.2.24,并把bin,include,lib三个文件拷贝到CUDA/10.1文件夹中。3.下载A...
2019-03-23 19:10:22
2634
原创 ImportError: libgthread-2.0.so.0: cannot open shared object file: No such file or directory解决方法
1.apt-get update2.apt-get -y upgrade3.pip install python-opencv4.apt-get install python-tk5.apt-get install python-opencv -y --allow-unauthenticated或者使用apt-file,流程如下:apt-get updateapt-...
2019-01-15 19:48:07
15764
2
原创 pytorch读取图片
pytorch读取图片是用的python,目前刚开始学习,具体代码如下:from torchvision import transforms, datasets as dsfrom PIL import Imageimg_path="F:/mpii_human_pose_v1/images/000001163.jpg"transform1 = transforms.Compose(...
2018-12-10 10:06:05
4429
1
原创 实现princeton-vl/pose-hg-train的demo时遇到的问题
1.在运行th main.lua -expID test-run指令时,出现这样的问题:cudnnFindConvolutionForwardAlgorithm failed: 2 convDesc=[mode : CUDNN_CROSS_CORRELATION datatype : CUDNN_DATA_FLOAT] hash=-dimA6,3,256,256 -filt...
2018-11-29 11:10:02
440
原创 windows平台上的NDK开发
一、工具:adt-bundle-windows-x86-20140702jdk-8u91-windows-i586.exe含有ndk的pluginsandroid-ndk-r10d-windows-x86.exe2.安装jdk-8u91-windows-i586.exe,配置java环境变量按照如下网址教程:http://jingyan.baidu.
2016-05-23 14:30:01
620
转载 vs2008中调用matlab3013a程序配置方法
1.在vs2008中建立一个win32控制台应用程序,;2.在vs2008中的 “工具”——>“选项”——>"项目与解决方案"——>"VC++目录"——>右上角选择"包含文件",在下面 包含:D:\Program Files\MATLAB\R2013a\extern\include3.再选择“库文件”,在下面包含:D:\Program Files\MATLAB\R2013a\exte
2015-07-26 17:02:38
1240
转载 float数据在内存中的存储方法
浮点型变量在计算机内存中占用4字节(Byte),即32-bit。遵循IEEE-754格式标准。一个浮点数由2部分组成:底数m 和 指数e。 ±mantissa × 2exponent (注意,公式中的mantissa 和 exponent使用二进制表示)底数部分 使用2进制数来表示此浮点数的实际值。指数部分 占用8-bit的二进制
2013-12-31 11:15:52
1090
转载 YUV 颜色空间
YUV(亦称YCrCb)是被欧洲电视系统所采用的一种颜色编码方法(属于PAL),是PAL和SECAM模拟彩色电视制式采用的颜色空间。其中的Y,U,V几个字母不是英文单词的组合词,Y表示明亮度(Luminance或Luma),也就是灰阶值;而“U”和“V” 表示的则是色度(Chrominance或Chroma),作用是描述影像色彩及饱和度,用于指定像素的颜色。“U”和“V”是构成彩色的两个分量。
2013-12-26 11:16:13
1357
转载 彩色色彩校正
通过插值得到RGB三基色齐全的图像后,但传感器响应的这个图像与真实场景之间扔存在差异。这其中存在多方面的原因,涉及图像传感器中光学器件的光谱性、场景的光源光照条件(如白光、荧光或者钨光)以及色彩滤镜的光谱特性。为了补偿这种差异,必须对图像进行色彩校正。现描述一下色彩校正的原理。 色彩校正主要是针对彩色图像在成像过程中的不足而对彩色饱和度和彩色色调进行校正。一、彩色饱和
2013-11-18 13:17:19
5377
2
原创 Bayer模型的颜色插值算法
图像采集的功能一般用CCD和CMOS传感器来实现。但是这两种图像传感器在一个像素上只能采集RGB颜色的一个分量,为了获得最佳的图像效果,需要3个图像传感器分别采集不同的颜色分量,但考虑到产品的成本及设计复杂度,通常的数字成像设备用一个传感器在表面覆盖颜色滤波阵列(CFA)来采集图像。目前常用的一种颜色滤波阵列是Bayer型的,当采集到的图像通过一个颜色滤波阵列滤波后在图像传感器上感
2013-11-15 15:53:14
11586
3
转载 最小生成树(普利姆算法、克鲁斯卡尔算法)
设G = (V,E)是无向连通带权图,即一个网络。E中的每一条边(v,w)的权为c[v][w]。如果G的子图G’是一棵包含G的所有顶点的树,则称G’为G的生成树。生成树上各边权的总和称为生成树的耗费。在G的所有生成树中,耗费最小的生成树称为G的最小生成树。构造最小生成树的两种方法:Prim算法和Kruskal算法。 一、最小生成树的性质 设G = (V,E)是连通带权图,U是V
2013-11-11 09:57:43
2682
转载 广度优先搜索,图的遍历
1、 队列(1) 定义 队列也是一种运算受限的线性表。在这种线性表上,插入限定在表的某一端进行,删除限定在表的另一端进行。允许插入的一端称为队尾,允许删除的一端称为队头。 特点:队列中数据元素的入队和出队过程是按照“先进先出” 的原则进行的。因此,队列又称为“先进先出”的线性表,简称FIFO表。(2) 实现-链队列队列的
2013-11-07 18:34:30
1211
转载 深度优先算法,图的遍历
和树的遍历相似,若从图中某顶点出发访遍图中每个顶点,且每个顶点仅访问一次,此过程称为图的遍历(Traversing Graph)。图的遍历算法是求解图的连通性问题、拓扑排序和求关键路径等算法的基础。图的遍历顺序有两种:深度优先搜索(DFS)和广度优先搜索(BFS)。对每种搜索顺序,访问各顶点的顺序也不是唯一的。1、邻接表及逆邻接表的存储方法(1)定义邻接表是图的一种链式存储
2013-11-07 10:06:13
1755
转载 图像轮廓匹配
一、原理(1)最常用到的轮廓匹配就是字符的匹配,而两个轮廓最最简洁的方式就是比较它们的轮廓矩。矩就是通过对轮廓上所有点进行积分运算活求和运算而得到一个粗略的特征,对一幅图像I(x,y)求普通矩公式为: 其中p对应x维度上的矩,q对应y维度上的矩,阶数表示对应的部分的指数,该计算是对轮廓边界上
2013-11-06 11:22:06
2990
转载 图的存储及基本操作
5.3 图的存储及基本操作★3◎2 相对于其他的线性数据结构,图的存储要复杂很多,因为顶点数相同的图,其边(或弧)的数量相差很大。比如一个有n个顶点e条边的图,若是以顶点为结点来存储,由于各个顶点的度数不一致,无法指定结点的指针域中需要的指针数。虽然可以定义结点的指针域存在n-1个指针,但这样存储过于复杂,存储密度过小;若以边为结点来存储,又不便于顶点遍历。所以一般情况下,图需要同时
2013-11-05 10:35:01
1754
原创 harris角点检测
一.harris角点检测的数学原理 对于harris角点检测,其主要思想就是:在图像设计中,用一个高斯窗口沿各个方向(0,360)上移动时,在两个垂直方向上,用导数求出变化量函数的极大值,当这个极大值大于设定的阈值时,就把该窗口的中心像素点提取为角点。 用各个方向上像素差的平方和表示在高斯窗口中的变化量,其函数可以表示为:
2013-10-16 12:45:26
2157
转载 Moravec角点检测算法
一、Moravec角点检测算法原理 Moravec角点检测算法的思想是: 在图像中设计一个局部检测窗口,当该窗口沿各个方向作微小移动时 ,考查窗口的平均能量变化,当该能量变化值超过设定的阈值时,就将窗口的中心像素点提取为角点。 此检测窗口可以是3*3,也可以是5*5。现在就以3*3为例,至于平均能量用兴趣值来表示。计算每个像素点的兴趣值,就要在3*3的窗口中计算0度
2013-10-10 13:52:31
5719
转载 LLE算法
http://smilefuture.blog.sohu.com/54204609.html原始特征的数量可能很大,或者说样本是处于一个高维空间中,通过映射或变换的方法,降高维数据降低到低维空间中的数据,这个过程叫特征提取,也称降维。 特征提取得基本任务研究从众多特征中求出那些对分类最有效的特征,从而实现特征空间维数的压缩。传统的降维技术可以分为线性和非线性两类。(1)
2013-10-08 12:09:02
6815
原创 最大类间方差法、大津法(ostu)
一、算法原理 OSTU算法也就是最大类间方差法,也即大津法。是一种选取最佳的阈值分割的方法,是阈值选取中最佳的方法。按照灰度的特性将图像分成前景和背景两部分。背景和前景之间的类间方差越大,说明构成图像两部分的差别就越大,当部分前景错分为背景活部分背景错分为前景都会导致两部分差别变小。因此,是类间方差最大的分割意味着错分概率最小。 设图像I(x,y)的前景
2013-09-23 17:45:40
4364
转载 OSG场景漫游(二)
二、测试TravelManipulator.DLL下面我们来建立一个只需几行代码就可以完成漫游功能的程序,具体步骤如下:第一步:菜单文件->新建项目->WIN32/WIN32控制台应用程序,项目名取test,在应用程序设置中点击空项目后完成。第二步:菜单项目->test属性->配置属性->链接器->命令行中添加:OpenThreadsWin32d.lib Producerd.
2013-09-22 15:33:09
3022
转载 OSG场景漫游(一)
一、编写动态链接库TravelManipulator.DLL第一步:新建->项目->WIN32/WIN32控制台应用程序,项目名称填入:TravelManipulator在应用程序设置中选DLL与空项目选项。第二步:在菜单项目属性配置属性链接器->命令行中添加下列LIB: OpenThreadsWin32d.lib Producerd.lib osgd.lib osgDBd.
2013-09-22 15:08:13
2812
转载 学习OPENCV
OpenCv中文论坛精华地址http://www.opencv.org.cn/index.php/User:Ollydbg23http://sivp.sourceforge.net/(sivp)一、基础操作1. 数据类型 数据结构了解 图像相关:cvArr cvMat IplImage 数据数组的维数, 与数据的通道数 见P46 (76)2. 常
2013-09-16 18:37:11
2890
原创 cvGEMM、cvMatMul和cvMatMulAdd的定义
一、GEMM函数的定义void cvGEMM( const CvArr* src1, const CvArr* src2, double alpha,const CvArr* src3, double beta, CvArr* dst, int tABC=0 );这是通用矩阵乘法,其中各个参数表示:src1:第一输入数组src2:第二输入数组alpha:系数src3
2013-09-16 16:30:25
10494
原创 RGB与Ycbcr空间的互相转换
一、RGB与Ycbcr转换的公式1.RGB表示三原色:红绿蓝Y:表示明亮度,也就是灰阶值。“亮度”是透过RGB输入信号来建立的,方法是将RGB信号的特定部分叠加到一起。Cb:反映的是RGB输入信号蓝色部分与RGB信号亮度值之间的差异。Cr:反映了RGB输入信号红色部分与RGB信号亮度值之间的差异。在以下两个公式中RGB和YCbCr各分量的值的范围均为0-255。
2013-09-16 10:43:04
31087
1
原创 OSG-3.0.0在vs2008下的配置与安装
第一部分:准备资源需要准备的资源如下:OSG:OSG源代码:OpenSceneGraph-3.0.0.zip; OSG示例数据:OpenSceneGraph-Data-3.0.0.zip; OSG依赖的第三方库:3rdParty_win32binaries_vs90sp1下载这些资源可以到http://trac.openscenegr
2013-09-11 15:27:40
2760
转载 OpenCv视频处理函数
视频序列操作 从视频序列中抓取一帧 OpenCV支持从摄像头或视频文件(AVI)中抓取图像. 从摄像头获取初始化:CvCapture* capture = cvCaptureFromCAM(0); // capture from video device #0 从视频文件获取初始化:CvCapture* capture = cvCap
2013-09-09 21:07:54
1365
原创 立方体纹理贴图代码
#include "stdafx.h"#include #include #include #include #include #include #include GLuint texture[6];GLfloat xrot=0.0f;// X RotationGLfloat yrot=0.0f;// Y RotationGLfloat z=
2013-09-03 21:41:26
2081
原创 纹理贴图
一.纹理贴图主要用到的一些函数1.glGenTextures作用是生成纹理对象名称,其函数原型为:void glGenTextures(GLsizei n, GLuint *textures);其中n表示用来生成纹理的数量;textures表示存储纹理索引。其函数返回n个纹理索引。2.glBindTextures作用是绑定纹理对象,且没有被删除, 则返回TRUE,但是如果没有被删除则返
2013-09-03 21:38:13
1706
原创 Opengl绘制花托(二)
二.绘制花托代码1.使用闭合折线GL_LINE_LOOP绘制花托#include "stdafx.h"#include "GL/glut.h"#include "math.h"#define PI 3.1415926static GLfloat yRot=30.0f;GLint nNumMajor=80,nNumMinor=40;//采样点的数目GLfloat fs
2013-08-23 16:57:37
1323
原创 Opengl绘制花托(一)
一..绘制花托的原理花托也可以看做是一个轮胎形状。要绘制花托,就要了解花托形成的原理,从而计算出花托的各个坐标值。也就像我们画圆一样,计算出圆的公式,从而可以画出来。要了解花托的形成原理,就必须选择一个通用的横截面来分析。如下图花托的横截面所示,让红色部分的圆绕远点旋转360度就形成花托。为了方便描述,我们规定:圆心O1和O2的距离,我们称之为大半径,用R 表示,对应的
2013-08-23 16:27:30
1956
原创 二次曲面的绘制
#include "stdafx.h"#include #include /*声明四个二次曲面物体*/ GLUquadricObj *quadObj1; GLUquadricObj *quadObj2; GLUquadricObj *quadObj3; GLUquadricObj *quadObj4; GLUquadricObj *q
2013-08-22 18:23:47
2920
转载 Opengl中光照、材质
OpenGL在处理光照时把光照系统分为三部分,分别是光源、材质和光照模型。光源、材质和光照模式都有各自的属性,尽管属性种类繁多,但这些属性都只用很少的几个函数来设置。使用glLight*函数可设置光源的属性,使用glMaterial*函数可设置材质的属性,使用glLightModel*函数可设置光照模式。GL_AMBIENT、GL_DIFFUSE、GL_SP
2013-08-22 18:21:31
2028
原创 Opengl中glEnable的介绍
在Opengl中glEnable函数的功能是:用于启用各种功能,其功能由参数决定。所以该函数在实现各种功能中是十分重要的。其函数原型为:void glEnable(GLenum cap);其cap就是一个参数值,每个参数值有着不一样的功能。与其相对应的是glDisable(GLenum cap);函数,就是关闭各种功能。glEnable函数的用法:void myInit(v
2013-08-22 17:06:05
10008
原创 二次曲面的绘制函数(二)
三.绘制二次曲面步骤1.绘制二次曲面首先要创建二次曲面对象。其函数名为gluNewQuadric,原型GLUquadricObj* gluNewQuadric(void)GLUquadricObj是二次曲面声明类型,它所在的头文件是GLU.h中。一般使用是先声明二次曲面,然后再建立二次曲面对象,例如:GLUquadricObj *quadObj1;quadObj1 = gluNewQu
2013-08-22 12:06:28
5257
原创 二次曲面的绘制函数(一)
一.OpenGL的glu库提供了以下类型的二次曲面绘制:1.Cylinder, 圆柱体。使用gluCylinder函数2. Cone, 圆锥。使用gluCylinder函数。只是相对圆柱体来说,一个底圆为零3. Sphere, 球体。使用gluSphere函数4. Disk, 碟盘,也就是同心圆。使用gluDisk函数5.Partial Disk, 部分
2013-08-21 11:33:10
3640
原创 Opengl创建一个球体
#include "stdafx.h"#include #include #include #include void myDisplay(){glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);glShadeModel(GL_FLAT); glColor3f(1.0f,0.0f,0.0f);glutSolid
2013-08-20 20:58:27
2775
原创 glShadeModel,gluPerspective和gluLookAt
1.glShadeModel原型为:void glShadeModel ( GLenum mode);作用:设置着色模式。参数mode可以是GL_SMOOTH(默认值)或GL_FLAT。采用恒定着色时就用GL_FLAT,也就是说使用图元中的某个顶点的颜色来渲染整个图元。使用光滑着色时就用GL_SMOOTH,独立处理图元中各个顶点的颜色。对于线段图元,线段上各点的颜色将根据两个顶点的
2013-08-19 19:56:08
1484
原创 Opengl中列表的显示
在opengl中,显示列表可以加快程序的速度,而且可以减少代码的长度。现在就来学习opengl中的显示列表的一些函数的使用。1.首先要建立n个显示列表空间。使用的函数是theTorus=glGenLists(n),表示建立了两个显示列表的空间并返回第一个显示列表的指针。theTorus表示指向第一个显示列表,任何时候调用theTorus,第一个显示列表就会显示出来。2.显示列表
2013-08-19 17:54:54
1082
把RGB转换为HSV和HSI,然后根据黄色和蓝色所在的范围来检测图片中的颜色
2018-08-22
hogcascade训练,内有人头训练样本和使用文档,还有归一化matlab代码
2018-08-22
svm训练车牌,作为二分类判断是否为车牌
2018-08-22
语音压缩存储回放
2012-11-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人