セブンステストマシンビジョン
まず、実験の目的
実験は第七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)
図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")
図3.2に示し資格の写真かどうか
第四に、実験誤差
実験は大きな問題は発生しませんでした。
第五に、実験の概要
学習OpenCVの欠陥検出技術、能力を向上させます。