随笔分类 -  OpenCV

摘要:在树莓派上运行在windows上正确的程序, 报错: 解决方法: 方法一: 安装v4l2ucp, v4l-utils 和 libv4l-dev. 对我来说没用。 方法二: 在视频imshow图像前,增加判断语句 然后, 只报错第一行, 但是程序可以正常运行。 之后,有出现了这个问题,仔细查阅,发现原 阅读全文
posted @ 2017-07-08 22:09 Not-Bad 阅读(3993) 评论(0) 推荐(0) 编辑
摘要:检测出特定轮廓,可进一步对其特征进行描述,从而识别物体。 1. 如下函数,可以将轮廓以多种形式包围起来。 2. 将轮廓数据存储在记事本中,然后读取数据,存入vector<cv::Point>中 其中每行的存取格式为: 3. 使用mathShapes函数比较两个形状的相似度 4. 判断某点是否在轮廓内 阅读全文
posted @ 2017-07-08 20:15 Not-Bad 阅读(1160) 评论(0) 推荐(0) 编辑
摘要:好久没有发OpenCV的博客了,最近想到了一个识别地图轮廓的方案,就写来试试。(识别中国的28个省份地图轮廓,不考虑直辖市) 首先,我的基本思路是 用最小的矩形将地图的轮廓圈出来,可以根据长方形的长宽比判断,也可将其缩放至特定的大小,计算其轮廓上的像素个数来判断。 缺点:用摄像头读取图片时,使用这种 阅读全文
posted @ 2017-04-16 21:40 Not-Bad 阅读(4152) 评论(0) 推荐(0) 编辑
摘要:计算轮廓面积: InputArray contour:输入的点,一般是图像的轮廓点 bool oriented=false:表示某一个方向上轮廓的的面积值,顺时针或者逆时针,一般选择默认false 计算轮廓边长: InputArray curve:表示图像的轮廓 bool closed:表示轮廓是否 阅读全文
posted @ 2017-04-16 20:30 Not-Bad 阅读(18591) 评论(0) 推荐(1) 编辑
摘要:在raspberry pi3 上安装opencv3已测试,没有问题,而opencv2报错如下: step 1:尝试了如下方法: http://blog.csdn.net/fendoubasaonian/article/details/50586869 即 仍然报错。 step 2:搜索发现这个 ht 阅读全文
posted @ 2017-04-13 19:36 Not-Bad 阅读(1576) 评论(0) 推荐(0) 编辑
摘要:最近刚转用opencv3,使用ANN算法时遇到了一些问题,记录下来。 训练神经网络的代码如下: 设置层数时,要注意:例子的数量要和标签的数量相同 第一项为图片的像素数,最后一项为训练的种类数 不知道为什么,我使用opencv3的ANN算法 跟opencv2中的算法识别结果差距很大(2识别结果大致正确 阅读全文
posted @ 2017-01-13 10:12 Not-Bad 阅读(6685) 评论(4) 推荐(0) 编辑
摘要:这个是树莓派上运行的, opencv3 opencv提供了一张手写数字图片给我们,如下图所示,可以作为识别手写数字的样本库。 0到9共十个数字,每个数字有五行,一行100个数字。首先要把这5000个数字截取出来。 图片大小为1000*2000,则每个数字块大小为20*20。 1.截取样本并存储 以下 阅读全文
posted @ 2016-12-19 23:25 Not-Bad 阅读(9696) 评论(0) 推荐(1) 编辑
摘要:1.先安装依赖项 OpenCV 2.2以后版本需要使用Cmake生成makefile文件,因此需要先安装cmake。 2.下载编译opencv 解压以后,在其目录中创建一个文件夹build,进入该文件夹, 使用cmake工具在该文件夹中生成makefile文件,指定opencv的安装目录为/usr/ 阅读全文
posted @ 2016-12-18 09:48 Not-Bad 阅读(10966) 评论(1) 推荐(0) 编辑
摘要:dsize与fx和fy必须不能同时为零,也就是说要么dsize不为零而fx与fy同时可以为0,要么dsize为0而fx与fy不同时为0;resize函数的目标大小可以是任意的大小,可以不保持长宽比率,删除的像素或者新增的像素值通过interpolation(内插)控制 转换成功~ 阅读全文
posted @ 2016-11-18 19:20 Not-Bad 阅读(7253) 评论(0) 推荐(0) 编辑
摘要:级联分类器的计算特征值的基础类FeatureEvaluator 功能:读操作read、复制clone、获得特征类型getFeatureType,分配图片分配窗口的操作setImage、setWindow,计算有序特征calcOrd,计算绝对特征calcCat,创建分类器特征的结构create函数。 阅读全文
posted @ 2016-11-14 10:46 Not-Bad 阅读(22196) 评论(0) 推荐(0) 编辑
摘要:使用ANN神经网络训练数据后进行手势识别。 运行一次后,不用每次都训练数据,直接加载第一次保存的 "detect_gesture.xml"即可 PS: 文件查找相关 阅读全文
posted @ 2016-11-04 18:06 Not-Bad 阅读(6964) 评论(0) 推荐(0) 编辑
摘要:ANN—— Artificial Neural Networks 人工神经网络 两种训练方法:BACKPROP 与 RPROP BACKPROP的两个参数: RPROP的四个参数: float CvANN_MLP::predict(constMat&inputs,Mat&outputs) 图像进行特 阅读全文
posted @ 2016-11-04 17:56 Not-Bad 阅读(6422) 评论(0) 推荐(0) 编辑
摘要:分水岭算法,是一种基于拓扑理论的数学形态学的分割方法,其基本思想是把图像看作是测地学上的拓扑地貌,图像中每一点像素的灰度值表示该点的海拔高度,每一个局部极小值及其影响区域称为集水盆,而集水盆的边界则形成分水岭。 一般的分水岭算法会对微弱边缘,图像中的噪声,物体表面细微的灰度变化造成过度的分割。 以下 阅读全文
posted @ 2016-11-02 09:33 Not-Bad 阅读(2014) 评论(0) 推荐(1) 编辑
摘要:最近写opencv的手势识别时,真的碰到了好多好多程序运行时的错误。 比如: 位置冲突: findcontours函数的使用错误: 各种符号的加载错误: 这种符号加载的错误,一般用网上各种方法就可以解决,打开“调试-选项和设置-打开‘启动源服务器支持’ ” 和 “符号”中的“Microsoft符号服 阅读全文
posted @ 2016-10-31 10:32 Not-Bad 阅读(598) 评论(0) 推荐(0) 编辑
摘要:一、RGB color space 检测代码如下: 二、二次多项式模式检测(RG color space) 三、Ycrcb之cr分量+otsu阈值化 原理: a.将RGB图像转换到YCrCb颜色空间,提取Cr分量图像 b.对Cr做自适应二值化处理(Ostu法) 四、OpenCV自带肤色检测类——Cv 阅读全文
posted @ 2016-10-29 15:02 Not-Bad 阅读(10154) 评论(0) 推荐(0) 编辑
摘要:三种匹配方法: 阅读全文
posted @ 2016-10-27 16:01 Not-Bad 阅读(12292) 评论(0) 推荐(0) 编辑
摘要:IplImage结构: 常用函数: 阅读全文
posted @ 2016-10-27 15:03 Not-Bad 阅读(1425) 评论(0) 推荐(0) 编辑
摘要:1、cvLoadImage:将图像文件加载至内存; 2、cvNamedWindow:在屏幕上创建一个窗口; 3、cvShowImage:在一个已创建好的窗口中显示图像; 4、cvWaitKey:使程序暂停,等待用户触发一个按键操作; 5、cvReleaseImage:释放图像文件所分配的内存; 6、 阅读全文
posted @ 2016-10-27 14:56 Not-Bad 阅读(3061) 评论(0) 推荐(1) 编辑
摘要:Sobel变换和拉普拉斯变换都是高通滤波器。 什么是高通滤波器呢?就是保留图像的高频分量(变化剧烈的部分),抑制图像的低频分量(变化缓慢的部分)。而图像变化剧烈的部分,往往反应的就是图像的边沿信息了。 1. Sobel算子(主要用于边缘检测) 2.Laplacian变换 Laplacian变换功能1 阅读全文
posted @ 2016-10-27 14:48 Not-Bad 阅读(3480) 评论(0) 推荐(0) 编辑
摘要:动态结构序列CvSeq是所有OpenCV动态数据结构的基础。 分为两类: 稠密序列 稀疏序列 (1) 稠密序列都派生自CvSeq,他们用来代表可扩展的一维数组 — 向量、栈、队列和双端队列。数据间不存在空隙(连续存储)。如果元素元素从序列中间被删除或插入新的元素到序列,那么此元素后边的相关元素全部被 阅读全文
posted @ 2016-10-26 12:40 Not-Bad 阅读(2331) 评论(0) 推荐(0) 编辑