仅考虑特定像素(而非完整图像)的OpenCV颜色直方图calcHist

时间:2018-03-02 13:11:13

标签: c++ opencv colors histogram

我想计算图像的颜色直方图,但只考虑特定像素(我知道其2D坐标)。

是否可以使用calcHist指定只考虑这些具体像素(而不是整个cv :: Mat及其中的所有像素)?如果没有,是否可以创建一个新的Mat,仅包括已知位置的特定像素,以及如何? (考虑到对于直方图,像素坐标无关紧要,是否可以将它们添加到(1 x number_of_specific_pixels)-dim Mat中,保留Mat的原始类型?)

提前多多感谢!

1 个答案:

答案 0 :(得分:1)

clalHist的第三个参数称为Mask

因此,您创建一个新的单个通道8位cv::Mat,其大小与您的输入图像相同。它应该包含您要计算直方图的255's和不需要的0's。然后,将其作为Mask传递。