画像処理のパイソン+ OpenCVの開閉動作

オープン操作:重要な形態学的画像操作のいずれか、腐食の形成と組み合わせた拡張操作に基づいて、主に二値画像の解析に使用される、グレースケール画像よいです

= +拡張可能な操作上の腐食、入力構造要素画像+

処置:より大きな物体滑らかな境界が有意領域を変更しないでいる間に、小さなオブジェクトを除去するために、水平または垂直線抽出

開閉動作:腐食の形成と組み合わせた拡張操作に基づいて、重要な形態学的画像操作のいずれか、;主にバイナリ画像、グレースケール画像の解析に使用されてもよいです

= +拡張閉動作腐食、入力画像の構成要素+

処置:同時に、詰め物のための小さな穴は、オブジェクトがスムーズな境界領域が大きく変化しない隣接接続されています

パイソン達成

インポートCV2の


DEF open_demo(画像):
     プリント(image.shape)
    灰色 = cv2.cvtColor(画像、cv2.COLOR_BGR2GRAY)
    RET、バイナリ = cv2.threshold(灰色、0、255、cv2.THRESH_BINARY | cv2.THRESH_OTSU)
    CV2。関数imshow(" バイナリ" 、バイナリ)
    カーネル = cv2.getStructuringElement(cv2.MORPH_RECT、(5,5 ))
    バイナリ = cv2.morphologyEx(バイナリ、cv2.MORPH_OPEN、カーネル)
    cv2.imshow(" オープン結果" 、バイナリ)


DEF close_demo(画像):
     プリント(image.shape)
    グレー =cv2.cvtColor(画像、cv2.COLOR_BGR2GRAY)
    RET、バイナリ = cv2.threshold(灰色、0、255、cv2.THRESH_BINARY | cv2.THRESH_OTSU)
    cv2.imshow(" バイナリ" 、バイナリ)
    カーネル = cv2.getStructuringElement(CV2 .MORPH_RECT、(5,5 ))
    バイナリ = cv2.morphologyEx(バイナリ、cv2.MORPH_CLOSE、カーネル)
    cv2.imshow(" 近い結果" 、バイナリ)


であれば __name__ == " __main__ " 
    IMG = cv2.imread(" 画像/open.jpg  
    cv2.namedWindow("入力画像"cv2.WINDOW_AUTOSIZE) 
    cv2.imshow(" 入力画像、IMG)
    open_demo(IMG)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

オープンなオペレーティング結果、そのまま他の構成要素を保ち、小さなオブジェクトを排除

 

私たちは、カーネルのサイズを変更すると、あなたは私たちは=(15,1)ksizeを設定するなど、さまざまな効果を得ることができ、画像を横一直線に抽出することができます

カーネル= cv2.getStructuringElement(cv2.MORPH_RECT、(15、1 ))
 バイナリ = cv2.morphologyEx(バイナリ、cv2.MORPH_OPEN、カーネル)

同様に、我々は、(1,15)= ksizeてみましょう、あなたは垂直線の画像を抽出することができます。結果は以下の通りであります

操作閉会結果、他の人が変更されないまま、囲まれた領域を塗りつぶし

我々はコアの形状を変更したときだけでなく、そのようなイメージサークルの抽出などのさまざまな効果を達成するために

カーネル= cv2.getStructuringElement(cv2.MORPH_ELLIPSE、(5,5 ))
 バイナリ = cv2.morphologyEx(バイナリ、cv2.MORPH_CLOSE、カーネル)

結果は以下の通りであります

SRCパラメータ:入力画像

OPパラメータ:操作のタイプ

  MORTH_OPEN                函数做开运算

  MORTH_CLOSE              函数做闭运算

  MORTH_GRADIENT       函数做形态学梯度运算

  MORTH_TOPHAT            函数做顶帽运算

  MORTH_BLACKHAT       函数做黑帽运算

  MORTH_DILATE              函数做膨胀运算

  MORTH_ERODE             函数做腐蚀运算

kernel参数 :内核类型,用getStructuringElement函数得到

おすすめ

転載: www.cnblogs.com/qianxia/p/11106090.html