操作基本像素
来源:互联网 发布:python计算机视觉编程 编辑:程序博客网 时间:2024/06/12 13:28
预备知识:
(1) opencv2中用于存储图像数据为Mat类型,优点是它是一个类,可以自动分配和释放内存
(2) image.data是指向已经分配的内存块,另外image.ptr(j)可以返回每一行的地址,data是成员变量,而ptr是成员函数,一般使用后者;其中data返回的是一个unsigned char的指针
(3) image.size()返回的是一个结构体,实际上包括width和weight的两个成员变量
(4) flip(image,result,0)该函数实现图像反转,其中0表示水平翻转,1表示垂直翻转
(5) 浅拷贝 Mat a;a=image;或Mat c(image),浅拷贝虽然有不同的矩阵头,但是指向同一块内存空间
(6) 深拷贝 Mat b,c;b=image.clone();第二种方式image.copyTo(c);不共享内存空间
(7) 成员函数at(int x,int y)可以用来存取元素,但是必须在编译时知道元素的数据类型,因为它是模版函数,即at(i,j)
(8) Vec3b由三个uchar组成的向量,可以通过操作符[]来获取
(9) Mat_是Mat的模板之类,用之前需要知道矩阵的类型
(10) Image.total()返回总像素的个数;image.elemSize()返回一个像素的大小;image.step返回行宽,即一行中所包含的字节数
(11) Static_csat进行强制类型转换
功能:实现椒盐噪声,顾名思义,随机的将像素点设置为白色或者黑色void salt(Mat& image1,int n){for(int i=0;i<n;i++){int j=rand()%(image1.rows);int k=rand()%(image1.cols);if(image1.channels()==1)image1.at<uchar>(j,k)=255;else if(image1.channels()==3){image1.at<Vec3b>(j,k)[0]=255;image1.at<Vec3b>(j,k)[1]=255;image1.at<Vec3b>(j,k)[2]=255;}}}
0 0
- 操作基本像素
- opencv2 像素的基本操作
- OpenCV-005:图片的基本像素操作
- opencv像素基本操作及图像遍历at
- opencv像素基本操作及图像遍历at
- opencv像素基本操作及图像遍历at
- 像素操作
- 操作像素
- 像素操作
- VTK修炼之道19:图像基本操作_图像像素值的访问与修改
- DirectDraw像素操作
- 第十四讲 像素操作
- 快速图像像素操作
- android 操作图像像素
- bcb 像素操作
- OpenGL中的像素操作
- OpenGL像素操作
- 图像像素操作
- 菜鸟IDA python调试脚本
- hdu 2041 走楼梯
- LintCode-两个整数相除
- c 语言指针学习
- [UVA 12589]Learning Vector[DP]
- 操作基本像素
- IOS--cell不出图解决方法
- POJ 2349 Arctic Network 最小生成树 prim && kruscal
- leetcode 111: Minimum Depth of Binary Tree
- 母港TOP用新API_url = "api_port/port";20150803_破解版
- 2.4 1的数目
- GDB使用
- HDOJ--1162--Eddy's picture(包含题意)
- 算法学习之排序算法(一)(冒泡法)