パイソンOpenCVの欠陥検出を実現

セブンステストマシンビジョン

まず、実験の目的

実験は第七OpenCVの、画像欠陥検出することにより行います。

第二に、実験的なコンテンツ

画像欠陥測定。

第三に、実験プロセス

私は、Python言語+ OpenCVの画像機能の欠陥検出を使用しています。私たちはインポートCV2を持つインポートライブラリに必要な実験; PILインポートイメージから、ImageDraw、ImageFont。

1)画像とグレースケールを読み取ります

我々は、検出すべきすべての画像を読み取るためのループを使用し、画像を読み取るために関数imread()関数を使用してグレースケール

コード例:

IMG = cv2.imread( "0.bmp")

灰色= cv2.cvtColor(IMG、cv2.COLOR_RGB2GRAY)

私のための範囲(1、6):

    T1 = cv2.cvtColor(cv2.imread(STR(I)+ "BMP")、cv2.COLOR_RGB2GRAY)

無題.PNG 

図3.1白髪の写真

2)ヒストグラム算出ピクチャ

使用calcHist()関数が計算されます。

サンプルコード:

画像ヒストグラム#計算

    HIST = cv2.calcHist([グレー]、[0]、[なし]、[256]、[0.0,255.0])

    cv2.calcHist H1 =([T1]、[0]、[なし]、[256]、[0.0,255.0])

3)画像フォント、フォントサイズ

コードを入力してください。

#コントラスト画像の類似性

    結果= SUM(HIST - H1)[0]

    PILを作成した#オープン画像

    イム= Image.open(STR(I)+ ".BMP")

    #操作オブジェクトを作成します。

    ドロー= ImageDraw.Draw(IM)

    #Fontオブジェクトsimsun、ワードサイズは30で、

    FNT = ImageFont.truetype(R'C:\ WINDOWS \フォント\ simsun.ttc」、30)

4)資格の画像を決定します

そうでなければ未修飾;修飾10未満の原画像のコントラストの類似性、あれば、if文を使用します。

サンプルコード:

その結果、<10の場合:

        draw.text((5、10)、U '合格'、フィル= '赤'、フォント= FNT)

    そうしないと:

        draw.text((5、10)、U '失敗'、フィル= '赤'、フォント= FNT)

5)画像を表示

サンプルコード:

    im.show( "結果" + STR(I)+ "PNG")

1.png 

図3.2に示し資格の写真かどうか

第四に、実験誤差

実験は大きな問題は発生しませんでした。

第五に、実験の概要

学習OpenCVの欠陥検出技術、能力を向上させます。

 

おすすめ

転載: www.cnblogs.com/CJR-QYF/p/12635009.html