zoukankan      html  css  js  c++  java
  • Opencv 图像数字化 Mat

    灰度图像数字化

    灰度图像的位深度为8位,图像中的每一个像素点灰度的深浅由256个数字来衡量,所以灰度图在计算机面前就是一个单通道数字矩阵。通过设置imread函数中的flag参数为IMREAD_GRAYSCALE即可将灰度图转化为Mat

    # include <opencv2corecore.hpp>
    # include <opencv2highguihighgui.hpp>
    #include <iostream>
    using namespace std;
    using namespace cv;
    int main()
    {
    	// ## 灰度图像转化为Mat:使用imread
    	//输入图像矩阵
    	Mat img = imread("C:/users/76973/desktop/output_image1.jpg",IMREAD_GRAYSCALE);
    	if (img.empty())
    		return -1;
    	//定义显示原图的窗口
    	string winname = "原图";
    	namedWindow(winname);
    	imshow(winname, img);
    	waitKey(0);
    }
    

    彩色图像数字化

    彩色图像每个像素点可以看作一个三行一列类型为uchar的单位向量,即Vec3b.
    RGB彩色图片每个通道为8位图,所以一共是24位。通过设置imread函数中的flag参数为IMREAD_COLOR即可将彩色图转化为Mat

    #include <opencv2/core/core.hpp>
    #include <opencv2/highgui/highgui.hpp>
    #include <iostream>
    using namespace cv;
    using namespace std;
    int main()
    {
    	//输入图像矩阵
    	Mat img = imread("C:/users/76973/desktop/compressedpicture.jpg", IMREAD_COLOR);
    	if (img.empty())
    		return -1;
    	//显示彩色图像
    	imshow("BGR", img);
    	vector<Mat> planes;
    	split(img, planes);
    	//显示B通道
    	imshow("B", planes[0]);
    	//显示G通道
    	imshow("G", planes[1]);
    	//显示R通道
    	imshow("R", planes[2]);
    	waitKey(0);
    }
    
  • 相关阅读:
    【移动安全高级篇】————2、浅谈Android软件安全自动化审计
    【移动安全实战篇】————1、Android手机下xx.apk JAVA破解之旅
    【移动安全高级篇】————1、Android沙盘原理与实现
    CLR
    反射
    泛型
    面试
    Sqlite
    粒子
    地图
  • 原文地址:https://www.cnblogs.com/PythonFCG/p/13860129.html
Copyright © 2011-2022 走看看