2010-11-16 68 views
1

我需要一點opencv(python)中的blob幫助。python中的opencv + 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過治療的事實,這個工程。

回答

0

CvSet是一個類 - 所以不知道第二行正在做什麼。在Python中也沒有像原生的Blob - 這是一個正在返回的cv.CvSet或cv.CvSeq序列嗎?

或者你是否在找到閾值後找到輪廓 - 然後遍歷它們,就像在contour.py例子中那樣?這可能是更好的方法...