OpenCV
芳芳不是我真名
show me your code
展开
-
OpenCV(一)显示一幅图像代码详细讲解
#include "cv.h"#include "highgui.h"int main(){ IplImage* img = cvLoadImage("G:/test.bmp",-1); cvNamedWindow( "test", 0 ); cvShowImage("test", img); cvWaitKey(0); cvReleaseImage(原创 2016-11-10 14:44:37 · 4524 阅读 · 0 评论 -
OpenCV初相识:CodeBlocks搭建OpenCV
OpenCV和CodeBlocks的安装都相当简单,而且都是开源的。OpenCV的下载地址:http://opencv.org/CodeBlocks的下载地址:http://www.codeblocks.org/这里说一下,基本不用在意版本问题,越新的版本理论上肯定会更好。第一步:在CodeBlocks中建立一个“Console application”项目。看下图点击原创 2016-11-10 10:22:30 · 821 阅读 · 0 评论 -
OpenCV(二)播放一段视频(从计算机摄像头中获取)
#include #include "cv.h"#include "highgui.h"int main(){ CvCapture* webcam = cvCreateCameraCapture(0); cvNamedWindow("webcam",0); if(!webcam){ return; } while(1){原创 2016-11-11 08:37:07 · 445 阅读 · 0 评论 -
OpenCV(三)回归计算机视觉,对图像平滑处理
#include "cv.h"#include "highgui.h"void smooth(IplImage *image){ cvNamedWindow("in",0); cvNamedWindow("out",0); cvShowImage("in",image); IplImage* out =cvCreateImage(cvGetSize(image原创 2016-11-12 10:41:27 · 899 阅读 · 0 评论 -
OpenCV(六)细说HighGUI(创建窗口,载入图像,显示图像)
创建窗口如何将一幅图像显示在屏幕上,在之前的学习中我们多次用到了函数cvNamedWindow()函数来实现这个功能。来看一下这个函数的定义:int cvNamedWindow( const char* name, int flags=CV_WINDOW_AUTOSIZE);由此可见,这个函数接受两个参数,第一个参数用来表示窗口的名字,就是给新建的窗口原创 2016-11-16 09:17:48 · 4571 阅读 · 0 评论 -
OpenCV(四)对矩阵的操作(CvMat详细讲解)
OpenCV包含了非常多的图像处理算法,而我们知道图像其实就是由矩阵数据构成,所以OpenCV中肯定有处理矩阵的函数和数据结构。牛人说过,程序就是数据结构+算法。OpenCV这么厉害的库当然也不会例外。在前几篇文章中,我们多次用到过IplImage这个数据结构,每当我们想获得图像时都会用到这个结构,图像和矩阵有关系,那IplImage肯定也跟矩阵有关系吧! 看到上图原创 2016-11-13 10:25:31 · 7078 阅读 · 0 评论 -
OpenCV(七)细说HighGUI(视频处理)
显示图像类似,让我们先看看处理视频相关的函数,首先用到的肯定是读写视频的文件的函数。在OpenCV中,处理视频要用到CvCapture结构。CvCapture结构包含从摄像机或视频文件读取帧所需的信息。根据视频来源,我们可以使用下面两个函数之一来初始化CvCapture结构。CvCapture* cvCreateFileCapture (const char* filename);CvCa原创 2016-11-17 16:15:35 · 666 阅读 · 1 评论 -
OpenCV(五)IplImage数据结构详解(1)
从本质上讲,它是一个CvMat对象,当然还有其他成员变量将矩阵解释为图像。那么让我们看看IplImage的结构。typedef struct _IplImage { int nSize; int ID; int nChannels; int alphaChannels; int depth; char colorModel[4]; cha原创 2016-11-15 19:15:00 · 1910 阅读 · 1 评论