使用指针遍历图像
2015-03-25 23:49
162 查看
#include<cv.h> #include<highgui.h> void colorReduce(cv::Mat &imag, int div = 64) { int n1 = imag.rows; int nc = imag.cols*imag.channels();//每一行的像素数目(多通道的像素需要乘3) for (int j = 0; j < n1; j++)//对每一行像素点进行操作 { uchar *data = imag.ptr<uchar>(j);//定位到每一行像素数组的首地址 for (int i = 0; i < nc; i++) { data[i] = data[i] / div*div + div / 2;//缩小像素点范围可以利用data[i]=0和data[i]=255求出最大像素值范围 } } } int main() { cv::Mat image = cv::imread("C:\\Users\\dell\\Desktop\\2.jpg"); colorReduce(image); cv::namedWindow("Image"); cv::imshow("Image", image); cv::waitKey(0); return 0; }
相关文章推荐
- OPenCV2 如何使用指针的方式遍历图像
- 使用指针遍历图像
- OpenCV学习篇之五 使用指针遍历图像
- [OpenCV2]使用指针遍历图像
- 学习《OpenCV 2 计算机视觉编程手册》第二章---使用指针遍历图像案例
- opencv学习笔记(2)----颜色缩减(使用指针遍历图像)
- OPENCV学习笔记2-2_图像遍历(使用指针)
- OpenCV学习之二: 使用指针遍历图像
- 使用指针的方式遍历图像数据
- [OpenCV2]使用迭代器遍历指针
- 使用指针的算术操作遍历C风格字符串
- 如何用指针遍历图像中的每一个像素
- 创建一个大小为400*400的三通道的RGB图像。将它的全部元素置0.使用指针算法将以(100,100)与(300,300)为项点绘制一个绿色的矩形。
- 072.Traverse Array 使用指针遍历数组
- VTK中迭代器的使用,并将指针中的图像保存
- opencv学习(5) 使用迭代器遍历图像的像素
- 使用迭代器遍历图像
- java中使用for遍历集合是注意的空指针异常
- 使用数组的内部指针next,end,reset,prev控制函数遍历数组
- OpenCV 2 学习笔记(6): 使用指针来扫描图像:减少图像的位深