分别对三通道赋值img.at<Vec3b>(i,j)[2]=255;


#include "opencv2/highgui/highgui.hpp"
#include "opencv2/imgproc/imgproc.hpp"
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
using namespace cv;
using namespace std;

int main()
{
double time=static_cast<double>(getTickCount());//书P110计时
Mat img=imread("1.jpg");
Mat img2,img3,img4;
int i=0,j=0;

for(int i=0;i<img.rows;i++)
{ for(int j=0;j < img.cols;j++)
{ img.at<Vec3b>(i,j)[0]=2554;
//img.at<Vec3b>(i,j)[1]=255;
//img.at<Vec3b>(i,j)[2]=255;
}} printf("sld %d",img.rows);

imshow("原来",img);

imwrite("攒公开.jpg",img);

time=((double)getTickCount()-time)/getTickFrequency();//书P110计时
cout<<"时间:"<<time<<"秒"<<endl;//书P110计时函数
waitKey (0);

}

这是img.at<Vec3b>(i,j)[2]=255;的结果



这是img.at<Vec3b>(i,j)[1]=255;的结果




这是img.at<Vec3b>(i,j)[0]=255;的结果


猜你喜欢

转载自blog.csdn.net/guanyonglai/article/details/50525520