
OpenCV
MLusrrt
兴趣是第一生产力
展开
-
OpenCV学习笔记二:操作像素
一、存取像素值Mat的成员函数at(int x,int y)用于存取第x行,第y例的像素值。存取像素值时必须知道图像的数据类型,因此at函数实现为模板函数,调用时需指定类型,例如对单通道图和彩色图://注:指定的数据类型一定要与图像的实际类型吻合 //单通道 image.at< uchar >(x,y) = 255; //双通道 image.at<Vec3b>(x,y)[channel] = 255原创 2017-03-08 19:26:12 · 623 阅读 · 0 评论 -
OpenCV学习笔记三:视频读取
为了处理视频,需要读取视频的每一帧,OpenCV提供了一个非常易用的框架以读取视频文件或从摄像头中读取。 一、读取视频文件 读取视频文件,只需要创建VideoCapture实例,然后循环读取并处理每一帧就行了。 示例 #include #include #include using namespace std; using namespace cv; int main() {原创 2017-03-09 20:05:27 · 711 阅读 · 0 评论 -
OpenCV学习笔记五:直方图
图像由不同颜色值的像素组成,像素值在图像中的分布情况是图像的一个重要特征。一、计算图像的直方图直方图是一个简单的表,它给出了图像中各个像素值的数目(归一化后则为相应的比例),在OpenCV中可以使用cv::calcHist计算图像的直方图,这是一个通用函数,可以计算一张或一组任意像素类型的多通道图像。void calcHist(const Mat* arrays, int narrays, cons原创 2017-03-20 21:39:00 · 438 阅读 · 0 评论 -
OpenCV学习笔记四:绘图
1、利用函数绘图函数原型:1、直线void line(Mat& img, Point pt1,Point pt2, const Scalar& color, int thickness=1, int lineType=8,int shift=0) img – 图像. pt1 – 起点. pt2 – 终点. color – 颜色. thickness – 线宽. lineType – 线型(4联通,8原创 2017-03-12 22:11:14 · 525 阅读 · 0 评论 -
OpenCV学习笔记一:图像基础操作
一、图像的读取、显示和保存1、Mat imread(const string& filename, int flags=1)filename:读入图像的完整路径flags:读入图像的方式 CV_LOAD_IMAGE_GRAYSCALE:单通道灰度图 CV_LOAD_IMAGE_COLOR:三通道彩色图 CV_LOAD_IMAGE_UNCHANGED保持不变 Mat image = imread("i原创 2017-03-07 20:27:34 · 723 阅读 · 0 评论 -
OpenCV学习笔记六:直方图(2)
一、反投影响直方图查找物体 直方图反向投影可以用来做图像分割,或者在图像中找寻我们感兴趣的部分。简单来说,它会输出与输入图像同样大小的图像,其中的每一个像素值代表了输入图像上对应点属于我们感兴趣的目标图像的概率。输出图像中像素值越高(越白)的点就越可能代表我们要搜索的目标。原创 2017-03-26 14:55:06 · 449 阅读 · 0 评论 -
OpenCV学习笔记七:几何变换
介绍简单的图像几何变换,主要包括缩放,移动,旋转,仿射变换,透视变换等一、扩展缩放 扩展缩放只改变图像的尺寸大小。OpenCV提供了函数resize()可以实现这个功能。可以通过指定缩放因子也可以直接指定尺寸来设置图像的大小。扩展缩放时,可以选择不同的插值方法,扩展时推荐使用INTER_CUBIC和INTER_LINEAR,缩放时推荐使用INTER_AREA。默认情况下,扩展和缩放使用的都是INT原创 2017-04-04 21:38:08 · 844 阅读 · 0 评论