[youcansの200のOpenCVルーチン]128。形態学的アルゴリズムのスケルトン(skimage)

「Youcansの200OpenCVルーチン」シリーズへようこそ。継続的に更新されている「YoucansのOpenCV学習コース」
シリーズへようこそ。


[youcansの200のOpenCVルーチン]128。形態学的アルゴリズムのスケルトン(skimage)

3.形態学的アルゴリズム

形態学的処理の主な用途は、境界、連結成分、凸包、局所骨格の抽出など、画像内の形状を表現および記述するために使用される要素とコンポーネントを抽出することです。


3.7スケルトン

形態学的スケルトンは洗練された構造であり、画像の骨格部分を参照します。これは、オブジェクトの幾何学的形状とトポロジーを記述するために使用され、ターゲットオブジェクトの重要なトポロジー記述です。画像の改良は、バイナリ画像のスケルトンを抽出し、不要な輪郭点を削除し、スケルトンポイントのみを保持することです。

スケルトンは、侵食および開放操作で表すことができます
。S(A)=⋃k= 0 KS k(A)S k(A)=(A⊖kB)−(A⊖kB)∘BS(A)= \ bigcup ^ K_ {k = 0} S_k(A)\\ S_k(A)=(A \ ominus kB)-(A \ ominus kB)\ circ BS A =k = 0KSkA SkA =Ak B Ak B B

上記のアイデアによると、スケルトン化アルゴリズムを構築する手順は次のとおりです。

(1)画像を腐食させると、腐食した物体が狭くなります。

(2)侵食された画像に対してオープニング操作を実行します。オープニング操作中に削除されたピクセルはスケルトンの一部であり、スケルトン画像に追加します。

(3)画像が完全に侵食されるまで、上記のプロセスを繰り返します。

関数skimage.morphology.skeletonizeは、画像のボーンを取得するためにskimageで提供されます。


ルーチン10.17:skimageスケルトン化アルゴリズム

    # # 10.17 形态算法之骨架 (skimage.morphology.skeletonize)
    from skimage import morphology
    imgGray = cv2.imread("../images/handwriting01.png", flags=0)  # flags=0 灰度图像

    ret, imgBin = cv2.threshold(imgGray, 127, 255, cv2.THRESH_BINARY)  # 二值化处理
    imgBin[imgBin==255] = 1
    skeleton01 = morphology.skeletonize(imgBin)
    skeleton = skeleton01.astype(np.uint8) * 255

    plt.figure(figsize=(8, 6))
    plt.subplot(121), plt.axis('off'), plt.title("origin")
    plt.imshow(imgGray, cmap='gray', vmin=0, vmax=255)
    plt.subplot(122), plt.title("skeleton"), plt.axis('off')
    plt.imshow(skeleton, cmap='gray', vmin=0, vmax=255)
    plt.tight_layout()
    plt.show()

ここに画像の説明を挿入


(このセクションの終わり)


著作権表示:

Youcans @ xuptのオリジナル作品、再版にはオリジナルのリンクを付ける必要があります:(https://blog.csdn.net/youcans/article/details/123497811)

Copyright 2022 youcans、XUPT
Crated:2022-3-15


「Youcansの200OpenCVルーチン」シリーズへようこそ。継続的に更新されている「YoucansのOpenCV学習コース」
シリーズへようこそ。

[YoucansのOpenCVルーチン200]01.画像の読み取り(cv2.imread)
[youcansのOpenCVルーチン200] 02.画像の保存(cv2.imwrite)
[youcansのOpenCVルーチン200] 03.画像の表示(cv2.imshow)
[youcansのOpenCVルーチン200] 04. matplotlib(plt.imshow)
[youcansのOpenCVルーチン200] 05.画像属性(np.shape)
[youcansの200OpenCVルーチン]06。ピクセル編集(img.itemset)
[youcansのOpenCVルーチン200] 07.画像の作成(np.zeros)
[youcansのOpenCVルーチン200] 08.画像の複製(np.copy)
[YoucansのOpenCVルーチン200] 09.画像のトリミング(cv2.selectROI)
[youcansのOpenCVルーチン200] 10.画像のステッチ( np.hstack)
[youcansのOpenCVルーチン200] 11.画像チャネルの分割(cv2.split)
[youcansの200OpenCVルーチン]12。画像チャネルのマ​​ージ(cv2.merge) [youcans
の200OpenCVルーチン]13。画像の追加(cv2 .add)
[youcansの200のOpenCVルーチン] 14.画像とスカラーの追加(cv2.add)
[youcansの200のOpenCVルーチン]15。画像の加重加算(cv2.addWeight)
[youcansの200のOpenCVルーチン]16。異なるサイズの画像の追加[youcansの
200のOpenCVルーチン]17。2つの画像勾配切り替え
[youcansのOpenCVルーチン200 ]18.画像マスクの追加
[youcansのOpenCVルーチン200]19.画像円形マスク
[youcansのOpenCVルーチン200]20.画像プレスビット操作
[youcansのOpenCVルーチン200]21.画像オーバーレイ
[youcansのOpenCVルーチン200]22.画像追加非-中国語のテキスト
[youcansのOpenCVルーチン200]23.画像の追加中国語のテキスト
[youcansの200OpenCVルーチン]24。画像のアフィニティ変換
[youcansのOpenCVルーチン200]25.画像の変換
[youcansのOpenCVルーチン200]26.画像の回転(中心原点)
[youcansの200OpenCVルーチン]27。画像の回転(任意の点を中心とする)
[youcansのOpenCVルーチン200] 28.画像の回転(直角回転)
[youcansのOpenCVルーチン200] 29.画像の反転(cv2.flip)
[youcansの200のOpenCVルーチン]30。画像スケーリング(cv2.resize)
[YoucansのOpenCVルーチン200]31.画像ピラミッド(cv2.pyrDown)
[youcansのOpenCVルーチン200] 32.画像の歪み(ミスカット)
[youcansのOpenCVルーチン200]33.画像複合変換
[youcansのOpenCVルーチン200]34.画像投影変換
[youcansのOpenCVルーチン200]35.画像投影変換(境界の塗りつぶし)
[youcansのOpenCVルーチン200]36.カルテシアン座標と極座標変換
[youcansのOpenCVルーチン200]37.画像のグレースケール処理と2値化
[youcansのOpenCVルーチン200]38。画像の逆色変換(画像反転)
[youcansのOpenCVルーチン200記事]39。画像グレースケールの線形変換
[youcansのOpenCVルーチン200記事]40。画像の断片的な線形グレースケール変換
[youcansのOpenCVルーチン200記事]41。画像グレースケール変換(灰色度レベルの階層化)
[youcansのOpenCVルーチン200] 42.画像のグレースケール変換(ビット平面の階層化)
[youcansのOpenCVルーチン200] 43.画像のグレースケール変換(対数変換)
[Youcans200のOpenCVルーチンの記事]44。画像のグレースケール変換(ガンマ変換)
[youcansのOpenCVルーチンの200記事]45。画像のグレースケールヒストグラム
[youcansのOpenCVルーチンの200記事]46。ヒストグラム等化の変更
[YoucansのOpenCVルーチン200記事]47。画像強調-ヒストグラムマッチング
[youcansのOpenCVルーチン200記事]48。画像強調-色ヒストグラムマッチング
[youcansのOpenCVルーチン200記事]49。画像強調-ローカルヒストグラム処理
[youcansのOpenCVルーチン200記事] ]50.画像強調-ヒストグラム統計画像強調
[youcansのOpenCVルーチン200記事]51。画像強調-ヒストグラム逆追跡
[youcansのOpenCVルーチン200記事]]52.画像相関および畳み込み操作
[youcansのOpenCVルーチン200]53.Scipyの実装2次元画像畳み込み
[youcansのOpenCVルーチン200]54.OpenCVは画像2次元畳み込みを実装します
[youcansのOpenCV200ルーチン]55。分離可能な畳み込みカーネル
[youcansのOpenCVルーチン200]56.ローパスボックスフィルター
[youcansのOpenCVルーチン200] 57.ローパスガウスフィルター
[youcansのOpenCV例]Cheng200記事]58。非線形フィルタリング-メディアンフィルタリング
[youcansのOpenCVルーチン200記事]59。非線形フィルタリング-バイラテラルフィルタリング
[youcansのOpenCVルーチン200記事]60。非線形フィルタリング-共同バイラテラルフィルタリング
[OpenCVルーチンの200記事]61。ガイド付きフィルター
[YoucanのOpenCVルーチンの200記事]62。画像の鮮明化-パッシベーションマスキング
[YoucansのOpenCVルーチン200]63.画像の鮮鋭化-ラプラシアン演算子
[youcansのOpenCVルーチン200]64.画像の鮮鋭化-Sobel演算子
[youcansのOpenCVルーチン200]65.画像の鮮鋭化-Scharr演算子
[youcansのOpenCVルーチン200]66.画像フィルタリング低-pass / high-pass / band-stop /band-pass
[youcansのOpenCVルーチン200]67.空間ドメイン画像強調の包括的なアプリケーション
[YoucansのOpenCVルーチン200の記事]68。空間ドメイン画像強調の包括的なアプリケーション
[youcansのOpenCVルーチン200記事]69。連続非周期信号のフーリエ係数
[youcansのOpenCVルーチン200記事]70。[youcansのOpenCVルーチン200]の1次元連続関数フーリエ変換
71.連続関数のサンプリング
[youcansのOpenCVルーチン200]72.One -次元離散フーリエ変換
[youcansのOpenCVルーチン200]73.二次元連続フーリエ変換
[youcansのOpenCVルーチン200]74.画像アンチエイリアシング
[youcansのOpenCVルーチン200]75.Numpyは画像フーリエ変換を実装します
[youcansのOpenCVルーチン200]76 .OpenCVは画像フーリエ変換を実装します
[youcansのOpenCVルーチン200]77.OpenCVは高速フーリエ変換を実装します
[YoucansのOpenCVルーチン200記事]78。周波数領域画像フィルタリングの基本
[youcansのOpenCVルーチン200記事]79。周波数領域画像フィルタリングの基本手順
[youcansのOpenCVルーチン200記事]80。周波数領域画像フィルタリングの詳細手順
[youcansのOpenCVルーチン200]81.周波数領域ガウス低域フィルター
[youcansのOpenCVルーチン200]82.周波数領域バターワース低域フィルター
[youcansのOpenCVルーチン200]83.周波数領域低域フィルタリング:印刷されたテキスト文字の修復
[youcansのOpenCVルーチン200]84.ローパスフィルターからハイパスフィルターを取得する
[youcansのOpenCVルーチン200]85.周波数領域ハイパスフィルターの適用
[youcans200のOpenCVルーチンの記事]86。周波数領域フィルタリングの適用:指紋画像処理
[youcansのOpenCVルーチン200件]87。周波数領域のパッシベーションマスキング[youcansのOpenCVルーチン200
件]88。周波数領域のラプラシアンハイパスフィルタリング
[youcansのOpenCVルーチン200]89.バンドストップの転送機能フィルタ
[youcansのOpenCVルーチン200]90.周波数領域ノッチフィルタ
[youcansのOpenCVルーチン200]91.ガウスノイズ、レイリーノイズ、アイルランドのノイズ
[youcansのOpenCVルーチン200] 92.指数ノイズ、均一ノイズ、ソルトアンドペッパーノイズ
[youcansのOpenCVルーチン200]93.ノイズモデルのヒストグラム
[YoucansのOpenCVルーチン200]94.算術平均フィルター
[YoucansのOpenCVルーチン200]95.幾何平均フィルター
[YoucansのOpenCVルーチン200]96.調和平均フィルター
[YoucansのOpenCV200ルーチン]97。逆調和平均フィルター
[YoucansのOpenCVルーチン200 ]98.統計的ソートフィルター
[youcansのOpenCVルーチン200]99.修正されたアルファ平均フィルター
[youcansのOpenCVルーチン]200記事]100。適応ローカルノイズリダクションフィルター
[youcansのOpenCVルーチン200記事]101。適応メディアンフィルター
[youcansのOpenCVルーチン200記事]102。ノッチバンドストップフィルターの転送機能
[YoucansのOpenCVルーチン200記事]103。周期的なノイズ干渉を排除するノッチバンドストップフィルター
[YoucansのOpenCVルーチン200記事]104。モーションブラー劣化モデル
[YoucansのOpenCVルーチン200の記事]105。乱流ぼかし劣化モデル
[YoucansのOpenCVルーチン200]106.劣化した画像の逆フィルタリング
[youcansのOpenCVルーチン200]107.劣化した画像のウィーナーフィルタリング
[youcansのOpenCVルーチン200]108.制約付き最小二乗フィルタリング
[ 200OpenCV youcansのルーチン]109。幾何平均フィルタリング
[YoucansのOpenCVルーチン200記事]110。投影と雷電変換
[youcansのOpenCVルーチン200記事]111。雷電変換逆投影再構成画像
[youcansのOpenCVルーチン200記事]112。フィルター処理された逆投影再構成画像
[youcansによる200OpenCVルーチン]113.形態学的操作の腐食
[youcansによる200のOpenCVルーチン]114
。形態学的操作の拡張[youcansによる200のOpenCVルーチン]115。形態学的操作のオープン操作
[YoucansのOpenCVルーチン200の記事]116。形態学的操作のクローズド操作
[ youcansのOpenCVルーチン200記事]117。形態学的操作のトップハット操作
[youcansのOpenCVルーチン200記事]118。形態学的操作の下部ハット操作
[youcansのOpenCVルーチン200記事]119。画像の形態学的勾配
[youcansのOpenCVルーチン200記事] ]120.ヒット-ヒット-ミス変換
[youcansのOpenCVルーチン200記事]121。hit-特徴認識に失敗
[youcansのOpenCVルーチン200]122.形態学的アルゴリズムの境界抽出
[youcansのOpenCVルーチン200]123.形態学的な穴埋めアルゴリズム
[youcansのOpenCVルーチン200]124.穴埋めのためのフラッディングアルゴリズム[youcansの200OpenCV
ルーチン]125。形態学的アルゴリズムによる接続されたコンポーネントの抽出
[YoucansのOpenCVルーチン200]126.形態学的アルゴリズム
の凸包[youcansのOpenCVルーチン200]127.形態学的アルゴリズムの改良
[youcansのOpenCVルーチン200]128.形態学的アルゴリズムのスケルトン(skimage)

おすすめ

転載: blog.csdn.net/youcans/article/details/123497811