OpenCV
Mittenss
Just waite,till the sunrise.
展开
-
【opencv练习32 - 查找轮廓】
/******************************************************* 测试程序【寻找轮廓】 时间:2016年9月3日 //【1、canny检测边缘】 Canny( src_gray, canny_output, thresh, thresh*2, 3 ); //【2、参数canny——>contours】 findCont原创 2016-09-09 08:05:52 · 493 阅读 · 0 评论 -
【opencv练习24 - 霍夫圆变换——圆检测】
/*****************************************************测试程序 【HoughCircle_Demo 霍夫圆变换——边缘检测】时间:2016年8月30日参数:src,输出数组,霍夫梯度,dp,最小圆心距,Canny阈值,累加阈值HoughCircles( src_gray, circles, CV_HOUGH_GRADIENT, 1, sr原创 2016-09-04 18:54:11 · 4367 阅读 · 0 评论 -
【opencv练习23 - 霍夫直线变换——直线检测】
/*****************************************************测试程序 HoughLines_Demo 霍夫直线变换——直线检测时间:2016年8月28日//【标准霍夫变换】//参数:输入,输出, rho ,theta ,最小阈值,最大阈值HoughLines( edges, s_lines, 1, CV_PI/180, min_thresho原创 2016-09-04 18:23:14 · 474 阅读 · 0 评论 -
【opencv练习20 - Sobel算子 一阶导数】
/***************************************************** 测试程序 【Sobel边缘 一阶导数】 时间:2016年8月26日******************************************************/int main(void){ Mat src, src_gray; Mat原创 2016-09-04 17:45:27 · 2071 阅读 · 0 评论 -
【opencv练习22 - Canny算子 边缘检测】
/***************************************************** 测试程序 Canny 边缘检测 时间:2016年8月27日******************************************************/// Global variablesMat src, src_gray;Mat dst, detec原创 2016-09-04 17:57:37 · 376 阅读 · 0 评论 -
【opencv练习21 - Laplace算子 二阶导数】
/***************************************************** 测试程序 【Laplace算子 二阶导数】 时间:2016年8月27日******************************************************/int main(void){ Mat src, src_gray, dst; //原创 2016-09-04 17:49:59 · 946 阅读 · 0 评论 -
【opencv练习19 - 图像添加边界】
/***************************************************** 测试程序 【图像添加边界】 时间:2016年8月26日******************************************************///【全局变量】Mat src, dst;int top, bottom; //【添原创 2016-09-04 16:44:05 · 797 阅读 · 0 评论 -
【opencv练习18 - 基本阈值操作】
/***************************************************** 测试程序 005 【基本阈值操作】 时间:2016年8月26日*****************************************************//// Global variablesint threshold_value = 0;原创 2016-09-04 12:47:13 · 229 阅读 · 0 评论 -
【opencv练习17 - 图像金字塔】
/****************************************************** 测试程序 【图像金字塔】 时间:2016年8月25日******************************************************///【全局变量】Mat src, dst, tmp;const char* window_name = "原创 2016-09-04 12:42:52 · 301 阅读 · 0 评论 -
【opencv练习16 - 形态学运算】
/***************************************************** 测试程序 【形态学运算】 时间:2016年8月25日******************************************************/// Global variablesMat src, dst;int morph_elem = 0;int原创 2016-09-04 12:40:11 · 200 阅读 · 0 评论 -
【opencv练习25 - remap重映射】
/***************************************************** 测试程序 【remap重映射】 时间:2016年8月30日 【创建重映射矩阵,重映射】 参数:src,dst,map1,map2,插值方式,边缘类型,边缘初始化 remap( src, dst, map_x, map_y, CV_INTER_LINEA原创 2016-09-04 19:30:05 · 396 阅读 · 0 评论 -
【opencv练习07 - 滤波器(锐化)】
void Sharpen(const Mat& myImage, Mat& Result){ CV_Assert( myImage.depth() != sizeof(uchar)); Result.create(myImage.size(), myImage.type()); const int nChannels = myImage.channels(); for(原创 2016-08-25 23:56:21 · 458 阅读 · 0 评论 -
【opencv练习05 - 计时器的使用】
//时间测量Time measuredouble time = (double)getTickCount();... **Do Some thing!**...time = ((double)getTickCount()- t[0])/getTickFrequency();cout<<"程序运行耗时:"<<time<<"ms"<<endl;原创 2016-08-25 23:35:56 · 682 阅读 · 0 评论 -
【opencv练习02-Mat的初始化、两种复制】
Mat A,C; A = imread("YY01.jpg",CV_LOAD_IMAGE_GRAYSCALE); Mat B(A); C = A; cout<<"A.data的地址"<<(void*)A.data<<endl; cout<<"B.data的地址"<<(void*)B.data<<endl; cout<<"C.data的地址"<<(void原创 2016-08-01 20:16:27 · 1268 阅读 · 0 评论 -
【opencv练习30 - 反投影】
/******************************************************* 测试程序【反投影】 时间:2016年9月3日********************************************************/Mat src; Mat hsv; Mat hue;int bins = 25;原创 2016-09-08 08:42:29 · 546 阅读 · 0 评论 -
【opencv练习29 - 直方图比较】
/******************************************************* 测试程序 【直方图比较】 时间:2016年8月31日********************************************************/int main(void){ Mat src_base, hsv_base; Mat原创 2016-09-08 08:37:16 · 301 阅读 · 0 评论 -
【opencv练习28 - 直方图计算】
/******************************************************* 测试程序 【直方图计算】 时间:2016年8月31日 函数:equalizeHist //【计算直方图】 Compute the histograms: //参数:src,源数组个数,每个通道(1 dim = 0),Mat(),原创 2016-09-08 08:32:09 · 258 阅读 · 0 评论 -
【opencv练习27 - 直方图均衡】
/******************************************************* 测试程序 【直方图均衡】 时间:2016年8月31日 函数:equalizeHist********************************************************/int main(void){ Mat src, d原创 2016-09-08 08:28:03 · 272 阅读 · 0 评论 -
【opencv练习26 - 仿射变换】
/*************************************************测试程序 【仿射变换】时间:2016年8月31日步骤:1、构建变换矩阵参数 2、根据参数获取变换矩阵 getAffineTransform/getRotationMatrix2D 3、应用变换矩阵变换warpAffine**********************原创 2016-09-08 08:25:22 · 378 阅读 · 0 评论 -
【opencv练习09 - 图片线性加权融合】
/******************************************************** 测试程序 - 【线性融合,权值相加】 时间:2016年8月13日********************************************************///博客自己实现void blending() { Mat src1,原创 2016-08-26 07:40:24 · 1094 阅读 · 0 评论 -
【opencv练习08 - 改变图像亮度】
/******************************************************* 测试程序 004 - 【 改变图像亮度】 时间:2016年8月13日********************************************************/void main3(void){ Mat image = imread("Y原创 2016-08-26 07:44:52 · 548 阅读 · 0 评论 -
【opencv练习06-Scan图像の三种方法】
//方法1【高效方式】*****************************************//压缩颜色值 uchar* p; for( int i = 0; i < nRows; ++i) //指针每一行 { p = I.ptr<uchar>(i); //p指向,第i行的地址 for( int j =原创 2016-08-25 23:40:50 · 362 阅读 · 0 评论 -
【opencv练习15 - 腐蚀膨胀】
/****************************************************** 测试程序 腐蚀膨胀 时间:2016年8月24日******************************************************///【全局变量*3】 Global variablesMat src;Mat erosion_dst;Mat原创 2016-09-04 12:36:46 · 266 阅读 · 0 评论 -
【opencv练习14 - 模糊图像 】
/****************************************************** 测试程序 模糊图像 时间:2016年8月24日*******************************************************/// Global Variablesint DELAY_CAPTION = 1500; //标题原创 2016-09-04 12:31:43 · 344 阅读 · 0 评论 -
【opencv练习13 - File 输入输出】
/****************************************************** 测试程序 008 - 【 File 输入输出】 时间:2016年8月24日******************************************************/static void help(string av){ cout << en原创 2016-09-04 12:20:21 · 264 阅读 · 0 评论 -
【opencv练习03-Mat相关操作】
Mat????? //1????? Mat M(2,2,CV_8UC3,Scalar(0,0,255)); //??[2 2]——???? //CV_8UC3——???? //Scalar(0,0,255)——????? //CV_8UC3——CV_[bit][??][Type][channel] cout<<"???????? M = "<<e原创 2016-08-01 20:20:46 · 281 阅读 · 0 评论 -
【opencv练习01-打开显示图片】
调用函数 imread(” YY01.jpg”,CV_LOAD_IMAGE_COLOR); //读入图片 namedWindow(“Disp YY”,WINDOW_AUTOSIZE); //建立窗口 imshow(“Disp YY”,image); //图片显示 waitKey(原创 2016-08-01 19:47:09 · 323 阅读 · 0 评论 -
CvArr、Mat、CvMat、IplImage、BYTE转换(总结而来)
一、Mat类型:矩阵类型,Matrix。 在openCV中,Mat是一个多维的密集数据数组。可以用来处理向量和矩阵、图像、直方图等等常见的多维数据。 Mat有3个重要的方法: 1、Mat mat = imread(const String* filename); 读取图像 2、imshow(con转载 2016-05-20 10:04:38 · 279 阅读 · 0 评论 -
opecncv不同深度图像的转换(IPL_DEPTH_8U和IPL_DEPTH_32F)
由于在很多的图片使用过程中会经常使用到各种转换,总结如下opencv的IplImage结构中有这么一个成员:depth。其取值如下:枚举值用%d输出 二进制IPL_DEPTH_8U : 8 : 0x0000 0008IPL_DEPTH_8S :-2147483640 : 0xffff fff8IPL_DEPTH_16U : 16 : 0x0000 0010IPL_D原创 2016-05-30 23:01:45 · 5121 阅读 · 0 评论 -
CV图像转换
需要自己写颜色空间转换的小程序,其中涉及到LOG运算及atan运算,所以在运算过程中用到double类型数据,但最后许转换为IPL_DEPTH_8U类型,故申请了一幅图像IplImage* hue64f = cvCreateImage( cvGetSize(src),IPL_DEPTH_64F, 1 );来存储中间变量。但是问题也随之而来。问题1:按照公式计算完,然后再应用Conver原创 2016-05-30 22:46:25 · 504 阅读 · 0 评论 -
OpenCV 获取摄像头并显示摄像头视频
#include #include #include using namespace cv;using namespace std;int main(){ char c; VideoCapture inputVideo(1); //1为外部摄像头的ID,1为笔记本内置摄像头的ID Mat src; while(1) {原创 2016-05-28 17:40:52 · 475 阅读 · 0 评论 -
OpenCV坐标体系的初步
主要说明4个问题: 1. 坐标体系中的零点坐标为图片的左上角。X轴为图像矩形的上面那条水平线;Y轴为图像矩形左边的那条垂直线。该坐标体系在诸如结构体Mat,Rect,Point中都是适用的。(OpenCV中有些数据结构的坐标原点是在图片的左下角,可以设置的)。 2. 在使用image.at(x1, x2)来访问图像中点的值时,原创 2016-05-28 16:51:34 · 987 阅读 · 0 评论 -
常用的OpenCV函数速查
常用的OpenCV函数速查 1、cvLoadImage:将图像文件加载至内存;2、cvNamedWindow:在屏幕上创建一个窗口;3、cvShowImage:在一个已创建好的窗口中显示图像;4、cvWaitKey:使程序暂停,等待用户触发一个按键操作;5、cvReleaseImage:释放图像文件所分配的内存;6、cvDestroyWindow:销原创 2016-05-28 10:46:07 · 431 阅读 · 0 评论 -
OpenCV基础知识
一、基础操作 1. 数据类型 数据结构了解 图像相关:cvArr cvMat IplImage 数据数组的维数, 与数据的通道数 见P46 (76)2. 常见的矩阵操作熟悉 3. 数据的保存和读取4. 图像的加载和显示5. 视频的操作6. 内存与序列 a. 内存存储器转载 2016-05-28 10:03:27 · 1671 阅读 · 0 评论 -
【opencv练习04-常用项の输出】
//1、2D Point Point2f P2f(5,1); cout<<"Point (2D) = "<<P2f<<endl<<endl; //2、3D Point Point3f P3f(2,6,7); cout<<"Point (3D) = "<<P3f<<endl<<endl; //3、通过Mat输出std::vector vector<f原创 2016-08-01 20:26:55 · 263 阅读 · 0 评论 -
【opencv练习31 - 模板匹配】
/******************************************************* 测试程序【模版匹配】 时间:2016年9月3日 //参数 输入I ,模板T , 结果 R ,匹配方法 matchTemplate( img, templ, result, match_method ); normalize( result, result, 0原创 2016-09-09 07:58:33 · 380 阅读 · 0 评论 -
【opencv练习33 - 寻找轮廓凸壳】
/******************************************************* 测试程序【寻找轮廓凸壳】 时间:2016年9月3日* threshold( src_gray, threshold_output, thresh, 255, THRESH_BINARY );* findContours( threshold_output, contou原创 2016-09-09 08:18:39 · 590 阅读 · 0 评论 -
【opencv练习12 - DFT离散傅立叶变换】
/****************************************************** 测试程序 - 【 DFT 离散傅立叶变换】 时间:2016年8月23日*******************************************************/int main6(void){ Mat I = imread("YY01.jp原创 2016-09-04 12:14:19 · 561 阅读 · 0 评论 -
【opencv练习11 - 随机绘制自定义图形】
/****************************************************** 测试程序 006 - 【 随机绘制 】 时间:2016年8月22日******************************************************//// Global Variablesconst int NUMBER = 100;原创 2016-09-04 12:10:06 · 470 阅读 · 0 评论 -
【opencv练习10 - 基础绘制】
/***************************************************** 测试程序 - 【 基础绘制 】 时间:2016年8月22日*******************************************************/#define w 400/** * @function MyEllipse【椭圆】 * @b原创 2016-09-04 12:01:10 · 229 阅读 · 0 评论