一:图片操作
1. 图片打开
CV_EXPORTS_W Mat imread( const String& filename, int flags = IMREAD_COLOR ); 【imgcodec】
2. 图片存储:打开的图片存储在Mat数组中,Mat.data指向图片数据的buffer
3. 图片色彩转换:
CV_EXPORTS_W void cvtColor( InputArray src, OutputArray dst, int code, int dstCn = 0 ); 【imgproc】
第三个参数,参考:ColorConversionCodes
4. 图片存盘:
CV_EXPORTS_W bool imwrite( const String& filename, InputArray img, 【imgcodec】
const std::vector<int>& params = std::vector<int>());
二:窗口操作
1. 创建窗口:【highgui】
CV_EXPORTS_W void namedWindow(const String& winname, int flags = WINDOW_AUTOSIZE);
2. 在窗口中显示图片:【highgui】
CV_EXPORTS_W void imshow(const String& winname, InputArray mat);
#include <opencv2\core.hpp>
#include <opencv2\opencv.hpp>
#include <string>
using namespace cv;
int main(int argc, char** argv)
{
String imageName = "JayChou.jpg";
Mat image;
image = imread(imageName, IMREAD_COLOR);
if (image.data == NULL) {
printf("no data, exit");
return -1;
}
Mat grayImage;
cvtColor(image, grayImage, COLOR_BGR2GRAY);
imwrite("D:/JayChou_Gray.jpg", grayImage);
namedWindow("grayImage");
imshow("grayImage", grayImage);
waitKey(0);
return 0;
}