Python 如何在一个框中找到平均RGB值?

Python 如何在一个框中找到平均RGB值?,python,colors,average,contour,Python,Colors,Average,Contour,我正在尝试获取框内区域的RGB平均值。但是,我不能使用轮廓之类的东西,因为有些边被切断了。我也不能使用固定(x,y)点,因为其他图像中的“框”位于不同的位置,可能会切断某些边。是否有一种方法可以自动确定“框”内的内容以及获得平均RGB值 尝试使用二值化,然后,你可以做一些分割。从一个角开始,将标签分配给像素。然后你扫描一下附近。如果像素与角点的二值颜色相同,则分配相同的标签。您只扫描角落中具有相同二元颜色的邻居。您将拥有形状外部的区域,该区域将是一组相同的标签像素。从逻辑上讲,该区域将位于形状内


我正在尝试获取框内区域的RGB平均值。但是,我不能使用轮廓之类的东西,因为有些边被切断了。我也不能使用固定(x,y)点,因为其他图像中的“框”位于不同的位置,可能会切断某些边。是否有一种方法可以自动确定“框”内的内容以及获得平均RGB值

尝试使用二值化,然后,你可以做一些分割。从一个角开始,将标签分配给像素。然后你扫描一下附近。如果像素与角点的二值颜色相同,则分配相同的标签。您只扫描角落中具有相同二元颜色的邻居。您将拥有形状外部的区域,该区域将是一组相同的标签像素。从逻辑上讲,该区域将位于形状内部。唯一的问题是,如果你的形状切割了图像的整个宽度或长度,比如你的矩形的顶部和底部在图像外部。但是你可以检查你是否扫描了整个宽度和长度。如果没有,则从另一个尚未扫描的角(上一个操作的相反角)开始重新执行操作。如果轮廓上有洞,可以尝试扫描一组像素,如4、16、32(越高,轮廓上的洞越大,但分割精度越低)