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

      

  • 相关阅读:
    哈希表(hash)
    并查集
    trie树(字典树)
    单调队列(滑动窗口)
    单调栈
    用数组实现栈与队列
    数组实现双链表
    数组实现单链表
    区间合并
    离散化
  • 原文地址:https://www.cnblogs.com/tony-yang-flutter/p/15380231.html
Copyright © 2020-2023  润新知