OpenCV
不要做程序员的小松鼠
愉快的调bug......
展开
-
OpenCV1.0及VC6.0的配置
OpenCV的配置主要分三种文件配置:.h .lib . source files这些是一劳永逸的另外每个项目创建时候还要添加库文件在这里设你的安装路径为F:\Program Files\ps:不用非得装在系统盘一、.h头文件vc->工具->选项->目录 F:\Program Files\OpenCV\cxcore\include F原创 2015-01-17 18:38:51 · 958 阅读 · 0 评论 -
cmake编译 opencv_contrib-master时候遇到错误
错误内容:Unknown CMake command "ovc_define_module".这不是我的错!是它们的CMakeLists.txt中的ocv_define_module写成了ovc_define_module,手动改一下就好了。我下载了他们的最新更新的文件,里面已经改正了。原创 2016-05-10 15:59:42 · 7954 阅读 · 6 评论 -
OpenCv训练降低CPU占用率
OpenCv使用cpu训练数据时候,cpu占用率会达到100%,这样的效率很快,但是会升高温度缩短cpu使用时间,影响其他程序运行。 打开任务管理器减少节点,当然你也可以用GPU训练。原创 2016-05-10 19:05:58 · 5290 阅读 · 0 评论 -
OpenCv Mat, IplImage 相互转换
还记得用opencv1.0时候总是内存泄漏么,看哪个没有release。。。2.0之后这个Mat真是太棒了,官方文档说不必再手动地为其开辟空间。在不需要时不用立即将空间释放。 下面捞干的:Mat->Iplimage*:Mat m; IplImage* transIplimage = cvCloneImage(&(IplImage) m); Ip原创 2016-03-17 20:15:06 · 4295 阅读 · 0 评论 -
OpenCV_contrib配置
Opencv3.0把一些不稳定的东西放到OpenCV_contrib里了,默认是没有的,所以最近对其中的一些东西比较感兴趣,遂尝试配置,前提是已经安装了3.0。 我用的是vs2013,他们两个的配置我有另一篇文章有介绍,前日,Opencv3.1.0版本也发布了,打算过两天尝个鲜,会更新到那个文章里。 准备工作 - cmake下载 直接用搜索引擎查找就行 - OpenCV_cont原创 2015-12-25 20:11:54 · 7575 阅读 · 2 评论 -
图像特征之 Haar-like特征(二)计算方法-积分图
1.积分图(Integral Image)类似动态规划的方法,主要的思想是将图像从起点开始到各个点所形成的矩形区域像素之存在数组中,当要计算某个区域的像素和时可以直接从数组中索引,不需要重新计算这个区域的像素和,从而加快了计算。 ABCD是四个区域,包含若干像素 2.计算点1:A 2.A+B 3.A+C 4.A+B+C+D 其实就是图像中各个点与坐标原创 2016-04-20 11:06:08 · 4794 阅读 · 0 评论 -
OpenCV 源码解读——createsample
最近在学习,网上有很多训练的教程,但是不够深入,照葫芦画瓢会导致遇到问题无从下手。遂将源码创建工程,通过看注释和调试程序对源码有了一定认识,了解什么是瓢,分享在这里,从createsample开始。在VS中,通过项目属性->配置属性->调试 设置命令行参数,如 -img .\pos\2.bmp -vec vec.txt -num 9 -w 20 -h 20 -show 。对源码增加了在生成vec文件之前,保存各个样本的功能,这样就知道样本的具体情况,遇到问题更好解决,如有需要欢迎交流。原创 2016-05-04 16:14:35 · 2751 阅读 · 0 评论 -
opencv源码解读——haartraining
1.参数:-data :指定生成的文件目录-vec :正样本的保存文件-bg :负样本的保存文件-npos :正样本的数量 默认2000-nneg :负样本的数量 默认2000-nstages :训练的层数 默认14-nsplits :决定adaboost的弱分类器,默认 1 ,则一个简单的 stump classifier 被使用。如果是n,则使用带有 n原创 2016-05-05 10:35:33 · 1261 阅读 · 0 评论 -
OpenCv中不常见但又极有用的函数
cvRound int cvRound (double value)对一个double型的数进行四舍五入,并返回一个整型数。cvFloor 返回不大于参数的最大整数值。参数double,返回int。cvCeil 返回不小于参数的最小整数值参数double,返回int。 -cvGetTickCount(); -程序的当前时间 - double time1 =原创 2016-04-28 20:23:57 · 785 阅读 · 0 评论 -
图像特征之 Haar-like特征(一)概述及特征值数量计算
1.haar-like特征介绍 - 最初用于描述人脸, 分为三类:边缘特征、线性特征、中心特征和对角线特征,组合成特征模板。 - 特征模板内有白色和黑色两种矩形,并定义该模板的特征值为 黑色矩形像素和 - 白色矩形像素和。 - 邻域矩形灰度差特征Haar特征值反映了图像的灰度变化情况。例如:脸部的一些特征能由矩形特征简单的描述,眼睛要比脸颊颜色要深,鼻梁两侧比鼻梁颜色要深,嘴原创 2016-04-15 11:44:32 · 11636 阅读 · 0 评论 -
error C2665: none of the 2 overloads could convert all the argument types
error C2665: none of the 2 overloads could convert all the argument types 2 个重载中没有一个可以转换所有参数类型这个错误就是你调用的函数中的参数类型不匹配。我用的从cv::rectangle,参数应该是Mat型,而CvRectangle中的参数应该是Iplimage*型的,把之前的代码调用过来就出现了上面的错误。原创 2016-04-27 20:18:32 · 9770 阅读 · 0 评论 -
OpenCV3.0下 cvCvtColor函数灰度化图像遇到问题及解决办法
灰度图像在1.0下我们可以这么写:int main(int argc, char* argv[]){ IplImage* src = cvLoadImage("lampard.jpg",1); IplImage* gimg =0; gimg =cvCreateImage(cvGetSize(src),src->depth,1); cvNamedWindow("showImage原创 2015-03-16 20:37:24 · 14114 阅读 · 1 评论 -
VS2013配置OpenCV3.0
第一步:你得有VS2013和OpenCV3.0 alpha(我下的这个,之前的3.0还不稳定)第二步:提取OpenCV,目录自己定,我用的 F:\opencv第三步:配置环境变量计算机->属性 1、系统变量->新建变量名:OPENCV· 变量值:F:\opencv (提取的目录)2、Path:系统变量中的path添加变量值:;%OPENCV%\x86\原创 2015-01-23 19:56:50 · 5699 阅读 · 2 评论 -
OpenCv工具——Image Watch
最近发现一个新的工具:Image Watch,特别方便。下载:https://visualstudiogallery.msdn.microsoft.com/e682d542-7ef3-402c-b857-bbfba714f78d双击安装原创 2016-01-04 10:01:12 · 965 阅读 · 0 评论 -
Opencv 自带提取前景(背景建模)
官方教程源码稍加修改:读入视频(图片序列)->bei//opencv#include "opencv2/imgcodecs.hpp"#include "opencv2/imgproc.hpp"#include "opencv2/videoio.hpp"#include #include //C#include //C++#include #include using原创 2016-03-17 21:04:13 · 12290 阅读 · 3 评论 -
OpenCv调整图片(Mat)大小
CV_EXPORTS_W void resize( InputArray src, OutputArray dst, Size dsize, double fx = 0, double fy = 0, int interpolation = INTER_LINEAR );和之前Iplimag原创 2016-03-18 10:26:29 · 13248 阅读 · 0 评论 -
Opencv+VS+MFC 播放视频(cv 2.3+版本)
配置环境,可以参考:VS2013配置OpenCv3.0原创 2016-03-30 18:24:07 · 2792 阅读 · 3 评论 -
warning: Error opening file (../../modules/highgui/src/cap_ffmpeg_impl.hpp:545)
这个问题就是视频文件的路径错了!!!用了一早上时间。。。。。。原创 2016-03-31 19:55:01 · 9878 阅读 · 12 评论 -
遍历文件夹下某种类型文件名(C++)
在文件夹下,查找某后缀的文件: vector findfileinfolder(string fileFolderPath, string fileExtension)//文件路径和后缀名{ string fileFolder = fileFolderPath + "\\*." + fileExtension; vector file; char fileName[2000];原创 2016-04-26 22:04:51 · 4136 阅读 · 0 评论 -
cvCvtPixToPlane & cvCvtPlanetoPix
“cvCvtPixToPlane”: 找不到标识符 将cvCvtPixToPlane 改成 cvSplit“cvCvtPlanetoPix”: 找不到标识符增加#define cvCvtPlanetoPix cvMergeOpenCv版本不同导致。原创 2016-01-05 19:29:25 · 3255 阅读 · 2 评论