Opencv图片转换常用的几个功能
功能1,创建一个空白图片
功能2,克隆原图片
功能3,复制原图片
功能4,彩色图片转换为灰度图片
功能5,查看像素值
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace std;
using namespace cv;
int main(int argc, char** argv) {
Mat src;
src = imread("E:/9.JPG");
if (src.empty()) {
cout << "could not load image..." << endl;
return -1;
}
namedWindow("input", CV_WINDOW_AUTOSIZE);
imshow("input", src);
/*Mat dst;
//功能1,创建一个空白图片
dst = Mat(src.size(), src.type());
//对空白图片的大小,颜色进行赋值
dst = Scalar(127, 0, 255);
namedWindow("output", CV_WINDOW_AUTOSIZE);
imshow("output", dst);*/
Mat dst;
//功能2,克隆原图片
//src.copyTo(dst);
//功能3,复制原图片
//src.copyTo(dst);
namedWindow("output", CV_WINDOW_AUTOSIZE);
//功能4,彩色图片转换为灰度图片
cvtColor(src, dst, CV_BGR2GRAY);
printf("input image channels : %d\n", src.channels());
printf("output image channels : %d\n", dst.channels());
//功能5,查看像素值
int cols = dst.cols;
int rows = dst.rows;
printf("rows : %d cols : %d\n", rows, cols);
const uchar* firstRow = dst.ptr<uchar>(0);
printf("fist pixel value : %d\n", *firstRow);
imshow("output",dst);
waitKey(0);
return 0;
}