#include<opencv2/opencv.hpp>
#include<iostream>
using namespace std;
using namespace cv;
int main(int argc, char** argv)
{
Mat src;
src = imread("1.jpg");
if (src.empty())
{
cout << "无" << endl;
return -1;
}
namedWindow("haha", WINDOW_AUTOSIZE);
imshow("haha", src);
Mat dst; //定义一个新的对象
一.获取纯色背景图操作
dst=Mat(src.size(), src.type()); //初始化Mat对象和src大小类型一样
dst = Scalar(0, 0, 0); //创建一个新的图像0,0,0纯黑或者255,255,255纯白背景图
二. 克隆操作
dst = src.clone(); // 克隆
src.copyTo(dst); //需要参数的克隆
三.转化图像操作
cvtColor(src,dst,BGR2GRAY) ; //将src转化为灰色命名为dst
dst.channels(或者src.channels); // 看是几通道
四.指针操作
int cols=dst.cols; //总列数
int rows=dst.rows; //总行数
const uchar*firstrow=dst.ptr<uchar>(0); //指针指向第一行
printf("haha",*firstrow); //第一行像素值
五.
Mat M(3,3,CV_8UC3,Scalar(0,0,255)); // 验证算法正确性
namedWindow("ha", WINDOW_AUTOSIZE);
imshow("ha", dst);
waitKey(0);
return 0;
}