我必须用 php 检测图像中的“星形”形状。此外,星形不是固定的,下次可能在其他位置。我不能使用任何外部软件或库。我尝试了所有方法,如边缘检测和灰度,但是一切都是徒劳的。这是图像:
主要问题是我无法清除背景。如果图像背景被清除,我可以按行和按列读取所有像素颜色并检测。请帮助我。这是亮度过滤器和边缘检测后的图像。
对于此特定图像,建议执行少量低通滤波(高斯模糊)以衰减这些线条。这应该可行,因为细线在其过渡处具有高频率。然后你可以尝试增加对比度和亮度。
我刚刚做了一个快速测试,结果是这样的
然后只需计算得到的图像与不同恒星图像的互相关。
如果星星本身没有缩放或旋转,那么您应该能够从干净的星星图像与源图像的 2D 卷积中检测到它。
如果您试图找到具有不同比例和旋转的恒星,最好使用侵蚀过滤器清理图像,然后使用边缘检测和霍夫变换来找到边缘。