【问题标题】:Separate hsv channels in opencv在opencv中分离hsv通道
【发布时间】:2014-01-27 16:10:00
【问题描述】:

我在 opencv 中有一个 hsv ma​​t 文件,我想分离通道。我找到了 cvSplit(hsv, h, s, v, NULL),但它不适用于 Mat 文件。那么,如何只保留 Mat 图像文件中的第一个通道 h 呢? 我的结果是上面的。基本上是我转换的图像,我可以看到脸,但色调很奇怪。

使用的代码:

    cvtColor(cropped_rgb, cropped_hsv, CV_BGR2HSV);
    split(cropped_hsv, channels);
    cropped_hsv = channels[0]; 
    imshow("cropped_hsv", cropped_hsv);

【问题讨论】:

    标签: c++ opencv hsv


    【解决方案1】:

    你可以简单地使用split:

    Mat hsv;
    vector<Mat> channels;
    split(hsv, channels);
    

    channels[0]、channels[1]、channels[2] 将分别包含您的 H、S、V。

    【讨论】:

    • imshow("h 频道",channels[0]);结果我得到了一个奇怪的图像。是因为转化吗??
    • OK 基本上我觉得价值通道更接近灰度图像,这实际上是我想要的。
    • 这里有不同的颜色模型及其通道:blog.patdavid.net/2012/12/…
    猜你喜欢
    • 1970-01-01
    • 2016-07-23
    • 2021-07-30
    • 2013-07-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-29
    • 2017-04-26
    相关资源
    最近更新 更多