opencv
zhouzhouzf
这个作者很懒,什么都没留下…
展开
-
opencv2 学习第7天 RGB图像的直方图 & 灰度图的直方图
#include #include #include #include #include using namespace cv;using namespace std;//class Histgram1D//{//public:// Histgram1D()// {// histsize[0] = 256;// hranges[0] = 0.0;// hrange原创 2013-07-08 10:05:58 · 1518 阅读 · 0 评论 -
opencv 学习第二天 学习opencv(中文版)对一幅图片进行canny边缘检测
#include #include #include using namespace std;using namespace cv;IplImage *dopyrDown(IplImage *in,int filter = IPL_GAUSSIAN_5x5){ //assert(in->width%2 == 0 && in->height%2 == 0);//一个断言要求图像的长宽是原创 2013-06-26 11:05:12 · 1582 阅读 · 0 评论 -
opencv 学习第二天 学习opencv(中文版)画一个图像
#include #include#include #define w 400using namespace std;using namespace cv;void MyEllipse(Mat image,double angle){ int thickness = 2; int linetype = 8; ellipse(image,Point(w/2.0,w/2.0),原创 2013-06-26 16:57:18 · 895 阅读 · 0 评论 -
opencv 学习第三天 学习opencv(中文版) cvmat矩阵的操作
本文转自http://blog.csdn.net/bealives/article/details/5873602,尊重别人在OpenCV中有三种方式访问矩阵中的数据元素:容易的方式,困难的方式,以及正确的方式。以下先讲容易的方式和困难的方式。容易的方式最容易的方式是使用宏CV_MAT_ELEM( matrix, elemtype, row, col ),输入参数是矩阵的指针,矩阵转载 2013-06-27 16:15:58 · 943 阅读 · 0 评论 -
opencv 学习第三天 学习opencv(中文版) ROI
#include #include#include #include using namespace std;using namespace cv;void main(){ IplImage *img = cvLoadImage("C:\\1.jpg"); cvNamedWindow("example",CV_WINDOW_AUTOSIZE); cvShowImage("exa转载 2013-06-27 17:19:19 · 1674 阅读 · 0 评论 -
opencv 学习第四天 学习opencv(中文版) alpha融合
如果我还年轻但是却怀揣着一颗成熟的心做着老人干的事情,还要个毛青春干啥。。。。。。。。。。。#include #include #include using namespace std;using namespace cv;void main(){ IplImage *img1,*img2; img1 = cvLoadImage("d:\\2.png"); img2 = cv原创 2013-06-28 16:38:32 · 1345 阅读 · 0 评论 -
opencv 学习第四天 学习opencv(中文版) 总结一下opencv的图像视频的简单应用
此文转载自http://lubobill1990.blog.163.com/blog/static/36930386201010653632341/IplImage* cvCreateImage(CvSize size,int depth,int channels); 创建一幅图像 IplImage* cvCloneImage(IplImage*); 复制一幅图像 void转载 2013-06-28 16:58:03 · 1030 阅读 · 0 评论 -
opencv2 问题复习 第11天
之前一直有个问题都没有解决今天又遇到这个问题简单来说就是如何把数字加到字符串的后面之前做视音频处理的时候就是搞不定现在出来了,其实是这么的简单string a[3]; for (int i=0;i<3;i++) { char ch[2];//如果这里声明的空间只有一个的话会导致程序结束时候崩溃 a[i] = "das"; sprintf(ch,"%d",i);//直接把这个原创 2013-07-17 00:08:01 · 1001 阅读 · 0 评论 -
opencv2 学习第12天 复习
#include #include #include using namespace cv;using namespace std;int g_slider_position = 0;int n = 0;CvCapture *g_cap = nullptr;void onTrackbarslide(int pos){ if (cvGetTrackbarPos("positi原创 2013-07-17 10:40:48 · 937 阅读 · 0 评论 -
opencv2 第12天复习
我们很容易利用opencv打开摄像头捕捉视频#include #include #include using namespace cv;int main(){ VideoCapture cap(0); if(!cap.isOpened()) { return -1; } Mat frame; Mat edges;原创 2013-07-17 13:00:21 · 1045 阅读 · 0 评论 -
opencv2 学习第13天 轮廓特征及其描述子
我们在提取了轮廓之后我们最想做的就是把它画出来,人们还是愿意相信可以看见的东西这个时候就将他们打印出来就可以了,提取的特征一般放在vector里//获取轮廓: findContours(image, //图像 contours, //轮廓点 //包含图像拓扑结构的信息(可选参数,这里没有选) CV_RETR_EXTE原创 2013-07-18 14:11:13 · 2476 阅读 · 1 评论 -
opencv 学习第五天 图像噪音
#include #include #include using namespace std;using namespace cv;void salt(Mat &img,int n){ for(int k=0;k<n;k++) { int i = rand()%img.cols; int j = rand()%img.rows; if (img.channels()==原创 2013-07-04 16:30:31 · 1076 阅读 · 0 评论 -
opencv 在ubuntu 12.04 下使用
我之前一直在使用ubuntu下的codeblocks从来就没有真正的编译过opencv,今天我弄了一下,感觉是云里雾里编译的过程很简单,但是我并不明白为什么那么去做我把步骤放在下面第一步:安装必要的一些东西sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev lib原创 2013-07-31 14:07:17 · 1591 阅读 · 0 评论 -
opencv2 第10天 第十章的代码
/*------------------------------------------------------------------------------------------*\ This file contains material supporting chapter 9 of the cookbook: Computer Vision Programming usi原创 2013-07-11 11:20:24 · 2066 阅读 · 0 评论 -
opencv 学习第二天 学习opencv(中文版)对一幅图片进行高斯平滑并缩小一半
#include #include using namespace std;using namespace cv;IplImage *dopyrDown(IplImage *in,int filter = IPL_GAUSSIAN_5x5){ assert(in->width%2 == 0 && in->height%2 == 0); IplImage *out = cvCreate原创 2013-06-26 10:04:22 · 1665 阅读 · 0 评论 -
opencv 学习第二天 学习opencv(中文版)将一个视频读入后以灰度方式输出
#include #include#include using namespace std;using namespace cv;void main(){ CvCapture *cap = 0; cap = cvCreateFileCapture("D:\\highway.avi"); if(!cap) cout<<"cannot open the video file"<<原创 2013-06-26 15:55:05 · 1176 阅读 · 0 评论 -
opencv2 学习第7天 TransformingImage是with Morphological Operations
Erode and dilate image with opencv's Morphological filters#include #include #include #include #include //#include "../../../../../Downloads/colourhistogram.h"using namespace cv;using namespac原创 2013-07-09 11:02:45 · 1048 阅读 · 0 评论 -
opencv2 学习第7天 直方图的简单比较
#include #include #include #include #include //#include "../../../../../Downloads/colourhistogram.h"using namespace cv;using namespace std;class ColorHistogram { private: int histSize[3原创 2013-07-08 15:33:12 · 1447 阅读 · 0 评论 -
opencv2 学习第8天 提取分离前景和背景
GrabCut代码来自于http://www.cnblogs.com/tornadomeet/archive/2012/11/09/2763271.html#include #include #include #include #include //#include "../../../../../Downloads/colourhistogram.h"using name原创 2013-07-09 14:26:55 · 5653 阅读 · 0 评论 -
opencv2 第8天 Filtering image using sundry filters
//filting image using low_pass filter blur(image,result_image,Size(5,5)); imshow("Low_pass_filter",result_image);这个是最常用的低通滤波GaussianBlur(img2,result_image2,Size(5,5),1.5); imshow("Gaussian_fil原创 2013-07-09 16:09:12 · 972 阅读 · 0 评论 -
opencv2 第9天 Extracting image features
Detecting image contours with the canny operatorCanny(image,//gray-level image img2,//output image 120,//low threshold 350);//high threshold Mat contoursInv; threshold(img2,contoursInv, 12原创 2013-07-10 13:39:09 · 1925 阅读 · 0 评论 -
opencv2 第9天 检测基本图形--circle
image= cv::imread("D:\\1.jpg",0); cv::GaussianBlur(image,image,cv::Size(5,5),1.5); std::vector circles; cv::HoughCircles(image, circles, CV_HOUGH_GRADIENT, 2, // accumulator resolution原创 2013-07-10 17:25:02 · 1726 阅读 · 0 评论 -
opencv 第10天 Detecting and Matching Interest Points
Detecting Harris cornersint main(){ Mat cornerStrength; Mat image = imread("D:\\images\\church01.jpg",0); cornerHarris(image,cornerStrength, 3,//neighborhood size 3,//aperture size 0.01);/原创 2013-07-11 10:33:08 · 3535 阅读 · 0 评论 -
opencv 学习第一天 学习opencv(中文版)创建一个类似滚动条
#include #include #include using namespace cv;using namespace std;int g_slider_position = 0;CvCapture *g_cap = nullptr;void onTrackbarslide(int pos){ cvSetCaptureProperty(g_cap,CV_CAP_PROP_PO原创 2013-06-25 19:53:36 · 776 阅读 · 0 评论 -
opencv 学习第一天 学习opencv(中文版)中思考题 解决滚动条随视频播放而动
#include #include #include using namespace cv;using namespace std;int g_slider_position = 0;int n = 0;CvCapture *g_cap = nullptr;void onTrackbarslide(int pos){ if (cvGetTrackbarPos("positi原创 2013-06-25 21:09:33 · 787 阅读 · 0 评论 -
opencv 学习第一天 学习opencv(中文版)第一个程序 打开一个图像
从今天开始争取将 学习opencv(中文版)这本书上的程序都实现一遍#include using namespace cv;void main(){ Mat img = imread("C:\\1.jpg",WINDOW_AUTOSIZE); cvNamedWindow("first program"); imshow("first program",img); waitKey(0原创 2013-06-25 17:06:11 · 1341 阅读 · 0 评论 -
opencv 学习第一天 如何打开一个视频
#include #include using namespace cv;using namespace std;void main(){ cvNamedWindow("example2",CV_WINDOW_AUTOSIZE); CvCapture *cap = cvCreateFileCapture("D:\\output1.mp4"); IplImage *frame; i原创 2013-06-25 19:28:11 · 1911 阅读 · 0 评论 -
opencv 学习第一天 如何标定图片的特征点
经过了很多天的学习以及看别人的blog发现自己简直就是弱爆了,但是我相信假以时日必成传奇我的一个问题,就是看到了现在的paper我很难明白,什么叫做特征点虽然我也知道,在内存中那些就是一个矩阵不过到现在还是不能明白,我把一副图像的特征点标记了出来我想把存在vector的值打印出来,但是我发现for_each办不到,因为我不知道其中的存放数据的格式是啥,郁闷代码如下#includ原创 2013-06-25 16:44:23 · 2418 阅读 · 0 评论 -
opencv 学习第二天 学习opencv(中文版)对一幅图片进行高斯平滑
#include #include using namespace std;using namespace cv;void main(){ IplImage *image = cvLoadImage("D:\\1.png"); cvNamedWindow("example4-in"); cvNamedWindow("example4-out"); cvShowImage("exa原创 2013-06-26 09:17:07 · 921 阅读 · 0 评论 -
opencv 第13天 视频处理
opencv集成了很多对视频处理的函数,这里最简单就是读入一个视频后然后重建外加一个简单的canny方法void canny(Mat &image,Mat &out){ if (image.channels()==3) { cvtColor(image,out,CV_RGB2GRAY); } cv::Canny(out,out,100,200); threshold(out,o原创 2013-12-27 09:46:03 · 1279 阅读 · 3 评论