我需要一些关于opencv(python)中的blob的帮助。
事情是这样的:
我已经编写了可以正常工作的预处理函数,它们隔离感兴趣的区域并返回一个阈值图像,其中这些区域是白色的,其余的是黑色的。问题是,我只对白色区域感兴趣,但无论我做什么,我都会不断地将背景变成一个斑点。我无法按大小过滤,因为我不知道对象有多远。
有没有办法只处理白色斑点?
这是我现在所拥有的要点:
mask = cv.cvCreateImage(frame_size,8,1)
cvSet(mask,1)
.
.
.
blob_a_matches = CBlobResult(blob_a,mask,100, True)
blob_a_matches.filter_blobs(10, 1000)
for i in range(blob_a_matches.GetNumBlobs()):
numbered_blob = blob_a_matches.GetBlob(i)
area = numbered_blob.Area()
.
.
.
除了背景也被视为 blob 的事实之外,这是可行的。