Python 如何在Matlab中找到图像中的黑斑?

Python 如何在Matlab中找到图像中的黑斑?,python,arrays,matlab,Python,Arrays,Matlab,我有一对图像。 我需要的是报告与之相关的变更(我能够做到) 该程序还显示了图像1中黑色大补丁的变化。虽然这肯定是一个变化,但我要求忽略这些变化(其中一个图像中没有信息(黑色补丁)) 例如,在给定的一对中,只有六边形应显示为变化。因此,我需要定位补丁或图像的坐标。 我遇到了一个方法 如何在Matlab中实现这一点?这种方法非常有效,但是我在Matlab中很难找到与cv2函数对应的函数(特别是cv2.approxpolyDP()和cv2.arclength()。尝试使用regionprops但没有

我有一对图像。

我需要的是报告与之相关的变更(我能够做到)

该程序还显示了图像1中黑色大补丁的变化。虽然这肯定是一个变化,但我要求忽略这些变化(其中一个图像中没有信息(黑色补丁))

例如,在给定的一对中,只有六边形应显示为变化。因此,我需要定位补丁或图像的坐标。 我遇到了一个方法

如何在Matlab中实现这一点?这种方法非常有效,但是我在Matlab中很难找到与
cv2
函数对应的函数(特别是
cv2.approxpolyDP()
cv2.arclength()
。尝试使用
regionprops
但没有效果

还有别的办法吗,除了在街上的那条


PS:我是Matlab新手。

您已经发布了一个参考手册的链接。我认为它很好地解释了如何提取
轮廓矩阵
每个轮廓的x和y值,因此您只需将每个(x,y)之间的距离相加即可成对。顺便说一句:你确定在你的情况下最长的轮廓就可以了吗?你绘制了在你的图像上找到的轮廓了吗?实际上我打算做的是完全不同的。我需要通过一对相似的图像(读取卫星图像)报告任何变化,但有细微的差异。我可以执行,但在一些图像对中,一个(只有一个)图像的角上有这样的黑色斑点。因为这也是一个变化(对于我的算法),它会被报告,但我不想报告这样的变化。因此,我试图在执行变化检测之前隔离黑色斑点,以便以前的非黑色图像现在在同一个斑点中变为黑色(因此,该补丁没有任何变化)在阅读手册时没有注意到。现在就知道了。