使用OpenCV 2 改變圖片的顏色成為灰色
更多顏色的調整, 請在 這裡httpss://docs.opencv.org/modules/imgproc/doc/miscellaneous_transformations.html
#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 ) { <%%KEEPWHITESPACE%%> char* imageName = argv[1]; <%%KEEPWHITESPACE%%> Mat image; <%%KEEPWHITESPACE%%> image = imread( imageName, 1 ); <%%KEEPWHITESPACE%%> if( argc != 2 || !image.data ) <%%KEEPWHITESPACE%%> { <%%KEEPWHITESPACE%%> printf( " No image data \n " ); <%%KEEPWHITESPACE%%> return -1; <%%KEEPWHITESPACE%%> } <%%KEEPWHITESPACE%%> Mat gray_image; // <%%KEEPWHITESPACE%%> cvtColor( image, gray_image, CV_BGR2GRAY ); <%%KEEPWHITESPACE%%> namedWindow( "Gray image", CV_WINDOW_AUTOSIZE ); <%%KEEPWHITESPACE%%> imshow( "Gray image", gray_image ); <%%KEEPWHITESPACE%%> waitKey(0); <%%KEEPWHITESPACE%%> 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#include <iostream> #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> #include <opencv/highgui.h> #include <opencv/cv.h> using namespace cv ; using namespace std ; int main() { cv::Mat image = cv::imread("/Users/powenko/Desktop/1.png"); if(image.data!=NULL){ cv::namedWindow("Image") ; cv::imshow("Image", image) ; Mat gray_image; cv::cvtColor( image, gray_image,CV_BGR2GRAY); //CV_BGR2GRAY ); cv::imshow("CV_BGR2GRAY", gray_image) ; cv::waitKey() ; } return 0; }