码迷,mamicode.com
首页 > 其他好文 > 详细

5.使用std的迭代器访问并修改图像

时间:2017-03-21 22:04:36      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:pre   oid   iter   hang   clone   cts   begin   for循环   std   

void Test_ColorReduceByIterator()
{
	Mat g_srcImage=imread("D:\\OpenCV Projects\\OpenCV_Test_Image\\6.jpg");
	Mat g_tmpImage;
	g_tmpImage=g_srcImage.clone();
	Mat_<Vec3b>::iterator it_start=g_tmpImage.begin<Vec3b>();
	Mat_<Vec3b>::iterator it_end=g_tmpImage.end<Vec3b>();
	for(;it_start!=it_end;it_start++)
	{
		//由于是3通道的图像,所有一次要处理3个数据,也可for循环处理
		(*it_start)[0]=(*it_start)[0]/60*60+60/2; //B通道
		(*it_start)[1]=(*it_start)[1]/60*60+60/2; //G通道
		(*it_start)[2]=(*it_start)[2]/60*60+60/2; //R通道
	}
	imshow("原图",g_srcImage);
	imshow("change",g_tmpImage);
}

技术分享

 

5.使用std的迭代器访问并修改图像

标签:pre   oid   iter   hang   clone   cts   begin   for循环   std   

原文地址:http://www.cnblogs.com/foggia2004/p/6596747.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!