问题描述
我有一个 16 位图像,其主要对象是 6 个 LED、两个反射方块,图像的其余部分非常暗。这两个方块与两个 LED 部分重叠。大约 50% 的可见 LED 过饱和(它们的中心),像素强度为 65532。在中心附近,靠近边缘,可以看到光溢出,我认为,可以用来精确确定每个的质心引领。我试图通过使用 astropy photutils 包(https://photutils.readthedocs.io/en/stable/index.html)来实现亚像素精度,特别是它的方法:源检测(),质心(),光圈光度法......
两个主要任务是如何区分与上述反射方块重叠的LED以及如何精确确定每个LED的中心。
我试图增加阈值,这部分起作用,方块不再可见,但我也失去了 LED 的边缘,这导致只有它的中心过饱和。
有人熟悉这个问题吗?
解决方法
一般来说,我所知道的所有亚像素定位方法都假设观察到的图像值是从底层平滑(连续和可微)亮度分布中提取的噪声样本,并且至关重要的是,要定位的点是该分布 - 最大值、最小值或鞍点。感兴趣点周围的传感器饱和通常会打破后一种假设。
在您的情况下,您可能会对分布的形状做出进一步的假设(例如,未饱和 LED 投影为椭圆),这样您就可以忽略饱和部分并从非饱和部分推断出位置饱和轮廓。
或者您可以减少曝光并完全消除饱和度,请参阅计算机视觉第三定律(“计算机视觉中 3/4 的图像相关问题是由于滥用完全足够的硬件,其余 1/ 4 需要的硬件比你买得起的还要贵")