OpenCV cvtColor()函数

cv::cvtColor()用于将图像从一个颜色空间转换到另一个颜色空间的转换(目前常见的颜色空间均支持),并且在转换的过程中能够保证数据的类型不变,即转换后的图像的数据类型和位深与源图像一致。

void cv::cvtColor(
      cv::InputArray src, // 输入序列
      cv::OutputArray dst, // 输出序列
      int code, // 颜色映射码
      int dstCn = 0 // 输出的通道数 (0='automatic')
     );

参数解释: 
. InputArray src: 输入图像即要进行颜色空间变换的原图像,可以是Mat类 
. OutputArray dst: 输出图像即进行颜色空间变换后存储图像,也可以Mat类 
. int code: 转换的代码或标识,即在此确定将什么制式的图片转换成什么制式的图片,
. int dstCn = 0: 目标图像通道数,如果取值为0,则由src和code决定

​

#include <iostream>

#include <opencv2/core.hpp>

#include <opencv2/highgui.hpp>

#include <opencv2/imgproc.hpp>


using namespace std;

using namespace cv;


int main()

{

    Mat srcImage = imread("星空.png");


    //判断图像是否加载成功

    if(!srcImage.data)

    {

        cout << "图像加载失败!" << endl;

        return false;

    }

    else

        cout << "图像加载成功!" << endl << endl;


    //显示原图像

    namedWindow("原图像",WINDOW_AUTOSIZE);

    imshow("原图像",srcImage);


    //将图像转换为灰度图,采用CV_前缀

    Mat grayImage;

    cvtColor(srcImage, grayImage, CV_BGR2GRAY);     //将图像转换为灰度图

    namedWindow("灰度图",WINDOW_AUTOSIZE);

    imshow("灰度图",grayImage);


    //将图像转换为HSV,采用COLOR_前缀

    Mat HSVImage;

    cvtColor(srcImage, HSVImage, COLOR_BGR2HSV);    //将图像转换为HSV图

    namedWindow("HSV",WINDOW_AUTOSIZE);

    imshow("HSV",HSVImage);


    waitKey(0);


    return 0;

}

[点击并拖拽以移动]
​

 

  • 11
    点赞
  • 100
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值