OpenCV將彩色圖像轉換為灰度圖像,並獲取灰度圖像和彩色圖像的像素值


一、概述

  案例:

  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;
}

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM