OpenCv练习】的更多相关文章

在图像定位和模式识别时,经常需要把结果标注到图片上,标注内容可以是数字字母.矩形框等(opencv支持的)或者是中文汉字(借助freetype). 1.显示数字/矩形框 #include <opencv/highgui.h> using namespace cv; //绘画 Mat image = imread(image_root + filename); Point p1(x,y), p2(x+w,y+h), p0(x+w/, y+h/); ; //数字 rectangle(image,…
opencv中对图像的处理是最基本的操作,一般的图像类型为IplImage类型,但是当我们对图像进行处理的时候,多数都是对像素矩阵进行处理,所以这三个类型之间的转换会对我们的工作带来便利. Mat类型较CvMat和IplImage有更强的矩阵运算能力,支持常见的矩阵运算(参照Matlab中的各种矩阵运算),所以将IplImage类型和CvMat类型转换为Mat类型更易于数据处理. Mat类型可用于直接存储图像信息,通过函数imread.imwrite.imshow等实现(与Matlab中的函数相…
级联分类器检测类CascadeClassifier,提供了两个重要的方法: CascadeClassifier cascade_classifier; cascade_classifier.load( cascade_dir + cascade_name );// 加载 vector<Rect> object_rect; cascade_classifier.detectMultiScale( img1, object_rect, |CASCADE_SCALE_IMAGE, Size(,) )…
最近老师布置了一个作业,是做一个基于视频的车辆检测与追踪,用了大概两周的时间做了一个简单的,效果不是很理想,但抑制不住想把自己的一些认识写下来,这里就把一些网络上的博客整理一下分享给大家,希望帮助到大家,因为本人也是个小白,所以如果有什么讲的不对的地方希望各位看官多指正! 一.安装OpenCV和搭建环境 首先呢,大家得安装OpenCV,这里网络上有很多相关的教程,这里就不赘述了!我本人用的是OpenCV3.10+VS2015. 这里就贴出几个教程: 下载地址:http://opencv.org/…
1 理论基础 学习Eigen人脸识别算法需要了解一下它用到的几个理论基础,现总结如下: 1.1 协方差矩阵 首先需要了解一下公式: 共公式可以看出:均值描述的是样本集合的平均值,而标准差描述的则是样本集合的各个样本点到均值的距离之平均.以一个国家国民收入为例,均值反映了平均收入,而均方差/方差则反映了贫富差距,如果两个国家国民收入均值相等,则标准差越大说明国家的国民收入越不均衡,贫富差距较大.以上公式都是用来描述一维数据量的,把方差公式推广到二维,则可得到协方差公式: 协方差表明了两个随机变量之…
1 背景及理论基础 人脸识别是指将一个需要识别的人脸和人脸库中的某个人脸对应起来(类似于指纹识别),目的是完成识别功能,该术语需要和人脸检测进行区分,人脸检测是在一张图片中把人脸定位出来,完成的是搜寻的功能.从OpenCV2.4开始,加入了新的类FaceRecognizer,该类用于人脸识别,使用它可以方便地进行相关识别实验. 原始的LBP算子定义为在3*3的窗口内,以窗口中心像素为阈值,将相邻的8个像素的灰度值与其进行比较,若周围像素值大于或等于中心像素值,则该像素点的位置被标记为1,否则为0…
1 理论介绍 模板匹配是在一幅图像中寻找一个特定目标的方法之一,这种方法的原理非常简单,遍历图像中的每一个可能的位置,比较各处与模板是否“相似”,当相似度足够高时,就认为找到了我们的目标.OpenCV提供了6种模板匹配算法: 平方差匹配法CV_TM_SQDIFF 归一化平方差匹配法CV_TM_SQDIFF_NORMED 相关匹配法CV_TM_CCORR 归一化相关匹配法CV_TM_CCORR_NORMED 相关系数匹配法CV_TM_CCOEFF 归一化相关系数匹配法CV_TM_CCOEFF_NO…
目录: 1,过程感慨: 2,运行环境: 3,准备工作: 4,编译 .so 5,遇到的关键问题及其解决方法 6,实现效果截图. (原创:转载声明出处:http://www.cnblogs.com/linguanh/) 1,过程感慨(想直接看教程,请跳过此部分) 在写具体内容之前,我先说下我搞这个东西的过程,由于导师之前说过要搞个图像匹配的androi APP,具体就是匹配前后两张图片的相似度,类似 安卓5.0 引入的刷脸解锁. 当时觉得,要实现这样一个东西,肯定没现成的API 可供使用,第一时间想…
我使用的是海康DS-2CD852MF-E, 200万,网络摄像机,已经比较老了,不过SDK在海康官网下载的,开发流程都差不多. 海康摄像机回调解码后的视频数据格式为YV12,顺便说一下YV12的数据格式   YYYY  V U.   我这个是720P,即1280 * 720分辨率. 那么Y分量的数量为 1280 * 720 = 921600 字节, V = U 数量为Y的1/4, 即921600 / 4 =   230400字节,所以一帧720P的YV12数据量为1382400字节,与断点调试查…
前提: 1.安装Android Studio(过程略) 2.官网下载OpenCV for Android 网址:http:opencv.org/downloads.html 我下载的是下图的版本 3.将下载好的OpenCV for Android解压到固定文件夹 4.新建一个android项目(就新建一个就好,以后用到) 以上的步骤基本没有什么问题(除了打开网页的时候网速很慢...) Android Studio导入OpenCV: 1.点击File-new-import Module如图: 2.…
Mac-OSX的Python3.5虚拟环境下安装Opencv 1   关键词 关键词:Mac,OSX,Python3.5,Virtualenv,Opencv 2   概述 本文是一篇 环境搭建 的基础文. 为了这个东西让自己折腾了接近2天的时间,各种筛选资料,各种尝试,最后终于找到了相应的资料,然后成功安装. 在整理本文的时候,特别感谢这个作者,他提供了两篇安装opencv的方法,分别是 python2.x [1] 和 python3.x [2] . 笔者按照 3.x 的步骤和线索,再解决掉一些…
Atitit 图像处理 调用opencv 通过java  api   attilax总结 1.1. Opencv java api的支持 opencv2.4.2 就有了对java api的支持1 1.2. 安装2016-05-19  opencv v2.4.13   267M  ,一个压缩包解压即可1 1.3. Opencv d java 接口api  ,把opencv-2413.jar加入java项目1 1.4. /AtiPlatf_ee/src/com/attilax/img/SfitTes…
Atitit opencv版本新特性attilax总结 1.1. :OpenCV 3.0 发布,史上功能最全,速度最快的版1 1.2. 应用领域2 1.3. OPENCV2.4.3改进 2.4.2就有了对java的支持2 1.4. opencv在2.4.4版本以后添加了对java的最新支持,可以利用java api了.3 2. Qa3 2.1.  java.lang.UnsatisfiedLinkError: Directory separator should not appear in li…
Python安装注意事项(版本3.5,系统windows)1.安装好Python后将D:\Program Files\Python.D:\Program Files\Python\Scripts加入Path环境变量2.安装numpy D:\Program Files\Python\Lib\site-packages>pip install numpy (通过pip包管理工具直接安装)如果出现版本过低You are using pip version 8.1.1, however version…
在Opencv论坛有好些这方面的帖子,主要看了一下几个牛人的帖子,比如论坛管理员于博士Shiqi Yu:(EMCV:可在DSP上运行的OpenCV)http://www.opencv.org.cn/forum/viewtopic.php?f=9&t=3569 另外feixiaolin :(学用emcv)http://www.opencv.org.cn/forum/viewtopic.php?f=9&t=7937以及chai2010 :(在C6000系列DSP中使用EMCV) http://…
转自: http://blog.csdn.net/vsooda/article/details/7555969 1.下载安装TortoiseSVN:http://tortoisesvn.net/downloads.html (安装后需重启) 注:安装 TortoiseSVN 不成功出现错误提示“Service "VisualSVNServer" failed to start. Verify that you have sufficient privileges to start sy…
说明:本文所有算法的涉及到的优化均指在PC上进行的,对于其他构架是否合适未知,请自行试验. Box Filter,最经典的一种领域操作,在无数的场合中都有着广泛的应用,作为一个很基础的函数,其性能的好坏也直接影响着其他相关函数的性能,最典型莫如现在很好的EPF滤波器:GuideFilter.因此其优化的档次和程度是非常重要的,网络上有很多相关的代码和博客对该算法进行讲解和优化,提出了不少O(1)算法,但所谓的0(1)算法也有优劣之分,0(1)只是表示执行时间和某个参数无关,但本身的耗时还是有区别…
本文使用OpenCV2.48在win10平台下操作. 一,关于OpenCV OpenCV是开源C++计算机可视化处理库,它集成了很多计算机图形图像处理的功能.还有机器学习,字符识别,人脸识别,物体检测等许多算法.作为一名计算机专业的学生,不管是不是VR方向,熟练使用OpenCV是必备技能. OpenCV支持多种语言,原生支持C++,还支持Java,Python.但是Java版的OpenCV相当难用,不仅仅是API设计的难用不灵活,而且还缺少OpenCV中的一些不太成熟的库,比如图片拼接库Stit…
参考:http://www.cnblogs.com/tail/p/4618476.html 工具: 1,Android Studio(AS)1.4 2,Opencv 2.4.11 步骤: 1,解压下载后的Opencv 2.4.11 2,进入AS,File->New->Import Moudle 上图中的路径就是解压后 /sdk/java文件夹下的文件夹路径. 3,更新build.gradle信息 这个是比较重要的一步配置,在Android Studio中的左上角选择Project视图,在oep…
在Matlab下,使用imfill可以很容易的完成孔洞填充操作,感觉这是一个极为常用的方法,然而不知道为什么OpenCV里面却没有集成这个函数.在网上查了好多关于Opencv下的孔洞填充方法,大部分使用轮廓查找方法去做的,但对于这种方法,总感觉不是特别好.     最近重新使用这个方法,正好之前了解过冈萨雷斯那本书上的孔洞填充算法,所以想着手重新写一个.这里借鉴了冈萨雷斯书上的集合运算方法(并不完全一样)  空洞图像的定义:由前景像素相连接的边界所包围的一个背景区域.对于二值图像,可以理解为被白…
cv::threshold(GrayImg, Bw, 0, 255, CV_THRESH_BINARY | CV_THRESH_OTSU);//灰度图像二值化 CV_THRESH_OTSU是提取图像最佳阈值算法.该方法在类间方差最大的情况下是最佳的,就图像的灰度值而言,OTSU给出最好的类间分离的阈值. OpenCV阈值分割的几种方法(types_c.h中的定义): /* Threshold types */ enum { CV_THRESH_BINARY =0, /* value = valu…
概述 使用OpenCV的过程中经常查看文档,每次都去官网查看,不过国内访问速度很慢,有一份本地的文档就好了.本文列出了在Linux(Fedora)系统上从OpenCV源码编译出documentation的步骤.在Windows系统上也可以编译出文档,只需在cmake-gui界面中勾选build-doc并根据提示信息安装相应依赖程序,generate后用visual studio编译安装文档. 你也可以直接下载我编译生成好的文档: OpenCV-3.0.0文档:百度云盘 我的github项目. O…
codeblock安装:http://blog.csdn.net/hitwengqi/article/details/7985343 ubuntu+codeblock+opencv:http://blog.csdn.net/u012559520/article/details/51313932 图森科技(车牌识别):http://car.tusimple.com/index-en.html…
1. YUV420 -> Mat 可用于转换接受到的YUV视频源到OpenCV可以识别的数据 Mat myuv( Frame_Height + Frame_Height / 2, Frame_Width, CV_8UC1, (unsigned char *) YUV420_Image_Buffer); cvtColor(myuv, mgMat, CV_YUV420p2RGB); 2. Mat -> YUV420 可用于OpenCV处理完视频信号后返回 cvtColor(mgMat, myuv,…
联合体:当多个数据需要共享内存或者多个数据每次只取其一时,可以利用联合体(union) 1. 联合体是一种结构: 2. 他的所有成员相对于基地址的偏移量均为0: 3. 此结构空间要大到足够容纳最"宽"的成员: //但是其大小不仅仅由最宽的成员决定,还需要考虑每个成员的自身对齐方式! 4. 其对齐方式要适合其中所有的成员. const作用: c++编译器会在编译时,把常量优化成立即数,减少内存访问.因此,能够使用const的变量(在运行过程中不会发生变化的变量),尽量使用const去修饰…
整理了我所了解的有关OpenCV的学习笔记.原理分析.使用例程等相关的博文.排序不分先后,随机整理的.如果有好的资源,也欢迎介绍和分享. 1:OpenCV学习笔记 作者:CSDN数量:55篇博文网址:http://blog.csdn.NET/column/details/opencv-manual.html 2:部分OpenCV的函数解读和原理解读 作者:梦想腾飞数量:20篇博文网址:http://blog.csdn.Net/xidianzhimeng/article/category/1593…
在这篇中,我们探讨如何通过已安装的opencv选择不同的编译器类型,生成高度还原的OpenCV开发时的解决方案工程文件,欣赏OpenCV新版本中总计 六十六多万行的精妙源代码.我们可以对其源代码进行再次编译,得到二进制文件,或者修改原版官方的OpenCV代码,并编译后为自己所用,为深入理解OpenCV的开源魅力迈出了坚实的一步. 一.下载安装cmake 想要在Windows平台下生成OpenCV的解决方案,我们需要一个名为cmake的开源软件,可以在 camke的官网:http://www.cm…
最近在将Karlsruhe Institute of Technology的Andreas Geiger发表在ACCV2010上的Efficent Large-Scale Stereo Matching代码仿真.Andreas提供的源码中没有使用opencv,导致我一时无法适应如何显示处理的中间结果.将对应的库加载后,仿照采集相机图像数据的方式,从内存中读取对应图像到IplImage类型指针指定的内存空间,方便代码的调试和效果观测.其中用到的部分资料如下. *******************…
最近学习人脸识别相关的东西,在MFC下使用OpenCV做了一个简单的应用.训练需要较多的数据,windows应用程序终究还是不方便,于是想着做成CS模式:检测识别都放在服务器端,视频获取和显示都放在网页端. 在网上找了一些资料,实现了简单的人脸检测.人脸识别只要在这个框架上加点代码就行.主要参考了下面这篇文章: http://www.open-open.com/home/space-361-do-blog-id-8960.html jetty版本:jetty-9.2.17.v20160517 j…
ubantu16.04+mxnet +opencv+cuda8.0 环境搭建 建议:环境搭建完成之后,不要更新系统(内核) 转载请注明出处: 微微苏荷 一 我的安装环境 系统:ubuntu16.04 显卡:gt940m python: 2.7.12 GCC:5.3.0 (ubuntu 默认是5.4, 关于降级,后边有叙述) 二 安装步骤 (一) gcc降级 (可选/安装opencv2.4.13则必选) 根据需要,opencv安装时提示,gcc 不支持5.3以上版本,所以降级. 方法1:5.4 =…