学习opencv笔记
文章平均质量分 85
mengyanshizhe
这个作者很懒,什么都没留下…
展开
-
直方图的计算与显示
这是opencv中文版第七章的一个例子,主要参考了这两篇博客进行源码的理解http://blog.csdn.net/cwjcwj520/article/details/7421411和http://www.opencv.org.cn/opencvdoc/2.3.2/html/doc/tutorials/imgproc/histograms/histogram_calculation/histogr原创 2015-05-27 18:02:27 · 1348 阅读 · 0 评论 -
读入视频文件并缩放后存入磁盘
#include "cv.h"#include "highgui.h"int main(){//定义两个窗口用来显示视频缩放后的结果cvNamedWindow("in",1);cvNamedWindow("out",1);//读入视频文件CvCapture *capture=cvCreateFileCapture("testVideo.avi原创 2015-05-22 10:31:48 · 496 阅读 · 0 评论 -
opencv练习题3-6
练习3-5: 为一个图像创建多个图像头。读取一个大小至少为100×100的图像。另创建两个图像头并设置它们的origion,depth,nChannels和widthStep属性同之前读取的图像一样。在新的图像头中,设置宽度为20,高度为30。最后,将imageData指针分别指向像素(5,10)和(50,60)像素位置。传递这两个新的图像头给cvNot()。最后显示最初读取的图像,在那个大图像中原创 2015-05-26 15:18:54 · 1143 阅读 · 0 评论 -
学习opencv之添加滚动条到视频中,并实现滚动条随着视频播放自动移动
#include "cv.h"#include "highgui.h"int g_slider_position=0;CvCapture *g_capture=NULL;void onTrackbarSlide(int pos){cvSetCaptureProperty(g_capture,CV_CAP_PROP_POS_FRAMES,pos)原创 2015-05-21 10:32:03 · 1915 阅读 · 0 评论 -
用固定数据创建一个Opencv矩阵并访问其数据元素
今天学习opencv基本数据类型的时候,利用固定数据创建一个Opencv矩阵float vals[ ]={0.86,-0.50,0.50,0.86};CvMat rotmat;cvInitMatHeader(&rotmat,2,2,CV_32FC1,vals);float a=CV_MAT_ELEM(*rotmat,float,1,1);在VC6.0,ope原创 2015-05-25 09:04:05 · 1230 阅读 · 0 评论 -
opencv的矩阵操作
#include "cv.h"#include "cxcore.h"#include "highgui.h"#include "stdio.h"int main(){//创建一个大小为100*100的3通道2维矩阵,并将其数据置0 CvMat *mat=cvCreateMat(100,100,CV_32FC3);cvSetZero(mat);//在原创 2015-05-26 10:53:37 · 650 阅读 · 0 评论 -
使用cvSave和cvLoad实现矩阵的存储和读入(CvMat矩阵)
#include "cv.h"#include "cxcore.h"#include "stdio.h"int main(){ //首先定义好待存入矩阵的数据float val[]={1,2,3, 4,5,6, 7,8,9}; //创建一个32为浮点数,单通道矩阵CvMat A=cvM原创 2015-05-25 17:53:34 · 3802 阅读 · 0 评论 -
使用ImageROI来增加某范围的像素
//使用ImageROI来增加某范围的像素#include "cv.h"#include "highgui.h"int main(int argc,char **argv){ IplImage *src,*dst;if(argc==7 &&((src=cvLoadImage(argv[1],1))!=0)){dst=cvCreateImage(cv原创 2015-05-25 11:39:17 · 1130 阅读 · 0 评论 -
给视频图像添加滚动条,是的用户可以动态调节缩放比例,缩放比例取值为2-8
#include "cv.h"#include "highgui.h"int g_slider_position=2;CvCapture *g_capture=NULL;void OntrackbarSlider(int pos){cvSetCaptureProperty(g_capture,CV_CAP_PROP_POS_FRAMES,pos);}in原创 2015-05-22 12:10:11 · 1124 阅读 · 0 评论 -
关于opencv 中cvCreateVideoWriter函数返回NULL情况的总结
在对读入视频处理后进行保存的时候,出现了cvCreateVideoWriter返回值是NULL的情况。看了网上的一些大致说法,简单的总结如下:法一:通过调用cvGetCaptureProperty(capture,CV_CAP_PROP_FOURCC),获取原视频的编码方式,我自己试了一下,没有成功,看函数说明显示:cvGetCaptureProperty该函数读取视频属性只对输入摄像头有原创 2015-05-21 17:40:16 · 2660 阅读 · 0 评论 -
Opencv—第四章细说highgui课后练习4-1
练习:创建一个程序实现以下功能:(1)从视频文件读入数据;(2)将读入数据转换为灰度图;(3)对图像做Canny边缘检测。将三个过程的处理结果显示到不同的窗口,每个窗口根据其内容合理命名。程序运行源码如下:#include "cv.h"#include "highgui.h"int main(){ //根据要求首先定义3个不同的窗口,用于处理后图像的显示 cvNam原创 2015-05-28 14:06:30 · 734 阅读 · 0 评论 -
Opencv 用鼠标在窗口中画方形的程序实现_第四章书中源码摘写
#include "cv.h"#include "highgui.h"void my_mouse_callback( int event,int x,int y,int flags, void *param); CvRect box;bool drawing_box=false;void draw_box(IplImage *img,CvRect rect){原创 2015-05-26 17:01:29 · 483 阅读 · 0 评论 -
Opencv练习题3-7
练习题7使用cvCmp()创建一个掩码。加载一个真实的图像。使用cvSplit()将图像分割成红,绿,蓝三个单通道图像。a. 找到并显示绿图。b. 克隆这个绿图两次(分别命名为clone1和clone2)。c. 求出这个绿色平面的最大值和最小值。d. 将clone1的所有元素赋值为thresh=(unsigned char)((最大值-最小值)/2.0)。e. 将clo原创 2015-05-26 16:03:33 · 643 阅读 · 0 评论