我想计算图像的颜色直方图,但只考虑特定像素(我知道其2D坐标)。
是否可以使用calcHist指定只考虑这些具体像素(而不是整个cv :: Mat及其中的所有像素)?如果没有,是否可以创建一个新的Mat,仅包括已知位置的特定像素,以及如何? (考虑到对于直方图,像素坐标无关紧要,是否可以将它们添加到(1 x number_of_specific_pixels)-dim Mat中,保留Mat的原始类型?)
提前多多感谢!
答案 0 :(得分:1)
clalHist的第三个参数称为Mask
。
因此,您创建一个新的单个通道8位cv::Mat
,其大小与您的输入图像相同。它应该包含您要计算直方图的255's
和不需要的0's
。然后,将其作为Mask
传递。