opencvのドキュメントには次のように書かれています。
モードがRETR_CCOMPまたはRETR_FLOODFILLと等しい場合、入力はラベルの32ビット整数イメージ(CV_32SC1)にすることもできます。
変換された画像を関数に送信した後、180kの等高線を取得しました。それらをプロットすると、下に黒い混乱が生じます。では、何をしRETR_FLOODFILL
、どのように正しく使用するのですか?
img = cv2.imread("lena.png")
img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
_, contours, _ = cv2.findContours(image=np.array(img, dtype=np.int32), mode=cv2.RETR_FLOODFILL, method=cv2.CHAIN_APPROX_SIMPLE)
len(contours)
Out[7]: 183295
私はそれがどんな機能でもすることをすると思いますcv2.floodFill
。次のすべてのピクセルを検索します。
1-相互に接続
2-強度値が互いに近い
そしてそれらを連結成分と見なします。たとえば、サンプル画像には、互いにくっついていて強度が近い183295グループのピクセルがあります。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加