一、概述
案例:
1.加載一張彩色圖片,並將彩色圖像轉換為灰度圖像。
2.獲取灰度圖像和彩色圖像的像素值
二、示例圖
三、示例代碼
//操作像素點 #include <opencv2/opencv.hpp> #include <iostream> using namespace cv; using namespace std; int main(int argc, char const *argv[]) { /*讀取一個灰度圖的像素值*/ Mat src = imread("girl.jpg"); imshow("src",src); Mat gray; //色彩轉換,將彩色圖轉為灰度圖 cvtColor(src,gray,COLOR_BGR2GRAY); imshow("gray",gray); //讀取灰度圖的像素點並輸出 // cout << gray<<endl; Scalar simpler = gray.at<uchar>(1,1); Scalar simpler2 = gray.at<uchar>(Point(1,1)); cout << simpler<<endl; cout << simpler2<<endl; //讀取彩色圖像的像素點並輸出 Vec3f vec = src.at<Vec3f>(1,1); float blue = vec.val[0]; float green = vec.val[1]; float red = vec.val[2]; cout << "紅:"<<red<<" 綠:"<<green<<" 藍:"<<blue<<endl; waitKey(0); return 0; }