はじめに
skimage.filters の rank.otsuで大津の方法で適応的しきい値処理を行うことができる。ここでは、適応的しきい値を行う範囲を変化させた時の2値化像の変化をアニメーションで表示する。
大津の適応的2値化については下記記事で解説した。
[scikit-image] 96. 大津の適応的しきい値処理による画像の2値化(skimage.filters rank.otsu)
skimage.filtersのrank.otsuで大津の方法で適応的しきい値処理を行う方法について説明する。
解説
モジュールのインポートなど
バージョン
画像の読み込み
下記サイトの画像を使用する。color.rgba2rgbでPNG形式からRGB画像に変換し、color.rgb2grayでグレースケール形式に変換する。最後にimg_as_ubyteでubyte形式に変換する。
マリトッツォのキャラクター
いらすとやは季節のイベント・動物・子供などのかわいいイラストが沢山見つかるフリー素材サイトです。
計算範囲を変化させて適応的しきい値処理
適応型閾値処理を行う範囲をrange(3,101,2)で変化させる。ここでは、計算範囲の種類として、diskを用いる。得られたしきい値像はlocal_otsusに追加していく。
2値化像の変化アニメーション
オリジナル、しきい値、2値化像のアニメーション
計算範囲形状としてDiamondを用いた場合
コードをダウンロード(.pyファイル)
コードをダウンロード(.ipynbファイル)
参考
Local Otsu Threshold — skimage v0.12.2 docs
skimage.color — skimage 0.25.0rc2.dev0 documentation
マリトッツォのキャラクター
いらすとやは季節のイベント・動物・子供などのかわいいイラストが沢山見つかるフリー素材サイトです。
コメント