检测图像中有洞的白色物体

时间:2016-11-15 12:12:59

标签: python python-2.7 opencv opencv3.1

所以我有视频,起初它的黑色,白色像素很少。 然后白色物体出现并生长,直到它达到稳定。

一旦它稳定,它占据了大约50%的图片。

这里位于底部但可能位于顶部,侧面,角落处。 唯一不变的是,它最终会占据图片的很大一部分。

我怎么能检测出来?

我尝试过hough circle检测,但没有成功。

现在我计算图像中非黑色像素的百分比(超过30%的触发检测),但它的速度很慢(2个用于循环,if用于计数器)。

star approach

ps:这是一艘在退出超空间时移动恒星的船只,无用的颜色被移除,星形表面不断变化,因此白色的黑洞会随着时间的推移而改变位置。

编辑:

我目前的解决方案:

gray = cv2.cvtColor(im, cv2.COLOR_BGR2GRAY)
idxs = np.any(gray != 0, axis=1) # index of rows with at least one non zero value
grayNoZeroLine = gray[idxs, :] # selection of the wanted rows
print idxs

if len(grayNoZeroLine)>200:
    print 'star detected'
它速度很快,但是我无法通过这种检测方法知道星星在屏幕的哪个位置,因为我需要调整路线并避免它变得很重要它

0 个答案:

没有答案