始める無料で始める

輪郭抽出(Contouring shapes)

この演習では、馬の輪郭を見つけます。

そのために、scikit-image の data モジュールで提供されている二値化画像を使います。二値化画像は、このアルゴリズムで輪郭を検出するときに処理が容易になります。輪郭検出は 2D の画像配列にのみ対応していることを覚えておいてください。

輪郭を検出できたら、元の画像と一緒に表示します。こうすることで、解析が正しかったかを確認できます。

show_image_contour(image, contours) は、Matplotlib を使って見つかったすべての輪郭付きで画像を表示する、あらかじめ用意された関数です。

白黒の馬のシルエット

measure モジュールの find_contours() 関数は、しきい値処理した画像と定数値を渡して利用できることを思い出してください。

この演習はコースの一部です

Pythonで学ぶ画像処理

コースを見る

演習の手順

  • 輪郭検出に必要な data とモジュールをインポートします。
  • コンテキスト欄に表示されている馬の画像を取得します。
  • レベル値を 0.8 に固定して、馬の画像の輪郭を検出します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Import the modules
from skimage import ____, ____

# Obtain the horse image
horse_image = ____.horse()

# Find the contours with a constant level value of 0.8
contours = measure.____(____, ____)

# Shows the image with contours found
show_image_contour(horse_image, contours)
コードを編集して実行