使用OpenCV 改變圖片的顏色成為灰色,並將資料儲存在檔案中,以及顯示在畫面上。
#include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> #include <opencv2/opencv.hpp> #include <iostream> #include <string.h> #include <fstream> using namespace cv; int main( int argc, char** argv ) { char* imageName = argv[1]; Mat image; image = imread( imageName, 1 ); if( argc != 2 || !image.data ) { printf( " No image data \n " ); return -1; } Mat gray_image; cvtColor( image, gray_image, CV_BGR2GRAY ); imwrite( "Gray_Image.jpg", gray_image ); namedWindow( "Gray image", CV_WINDOW_AUTOSIZE ); imshow( "Gray image", gray_image ); waitKey(0); return 0; }
編譯時的指令:
$ g++ main.cpp -o main -I/opt/local/include -L/opt/local/lib -lopencv_core.2.4.10 -lopencv_highgui.2.4.10 -lopencv_imgproc.2.4.10