1
より明白円を認識していない私は下に指定されたパラメータを使ってSimpleBlobDetectorを使用しています:がSimpleBlobDetector
# Parameters
params = cv2.SimpleBlobDetector_Params()
params.filterByArea = True
params.minArea = 1500
params.filterByCircularity = True
params.minCircularity = 0.5
params.filterByConvexity = True
params.minConvexity = 0.9
params.filterByInertia = True
params.minInertiaRatio = 0.7
params.minDistBetweenBlobs = 10
params.filterByColor = False
# Create a detector with the parameters
detector = cv2.SimpleBlobDetector(params)
keypoints = detector.detect(dilated)
im_with_keypoints = cv2.drawKeypoints(dilated, keypoints, np.array([]), (0, 0, 255),cv2.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS)
# Display result
cv2.imshow("Keypoints", im_with_keypoints)
これは、以下の結果が得られます。あなたが見ることができるように、よりクリーンなサークルのいくつかは検出されませんが、より粗いエッジを持つ他のサークルが検出されます。何が問題なの?
私は電話をかけていてデバッグはできませんが、オブジェクトの機能をチェックして、すべてがフィルタのパラメータに含まれていることを確認してください。 –
はい、私はできるだけ多くのブロブをキャッチするためにフィルタリングパラメータを非常に幅広くしようとしましたが、問題はまだ発生しました – ganninu93