【问题标题】:Multi-channel matrix/array多通道矩阵/阵列
【发布时间】:2016-05-24 17:48:54
【问题描述】:

我最近一直在阅读有关 openCV 及其 cv::Mat 数据结构的信息。在文档中,作者不断提到多通道数组和多通道矩阵。有人能给我这两者的定义吗?什么是“渠道”?我试图在谷歌上找到,但没有找到类似的东西。

【问题讨论】:

  • 如果你有一个二维矩阵你有宽度*高度元素。如果每个元素都是单个值,则您有一个通道矩阵。如果每个元素有多个值,则矩阵有多个通道。单通道矩阵的例子是灰度图像(每个像素1个强度值),多通道矩阵的例子是RGB图像(每个像素是3个值)

标签: opencv channel mat


【解决方案1】:

最基本的示例是标准图像。它有一个宽度 (cols)、一个高度 (rows) 和 3 个颜色通道。

Mat myImg = imread("color_picture.jpg");
Vec3b pixel = myImg.at<Vec3b>(y, x);

在这种情况下,myImg 将是 CV_8UC3 -- 3 个 8 位通道,无符号整数。

我更喜欢使用模板类,因为我觉得它更清晰:

Mat_<Vec3b> myImg = imread("color_picture.jpg");
// Or, Mat3b myImg = ...
Vec3b pixel = myImg(y, x);

那么,像素是蓝、绿、红:

uchar blue = pixel[0];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-06-02
    • 1970-01-01
    • 2014-02-07
    • 2014-02-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-17
    • 2012-09-02
    相关资源
    最近更新 更多