【サイト内の関連ページ】
【関連する外部ページ】
Python の公式ページ: https://www.python.org/
Python で OpenCV を動かすためのもの.
OpenCV Python のインストールは:別ページ »で説明1~2 コマンドの実行でインストールできる.
画像ファイル fruits.jpg, home.jpg のダウンロードは, Windows でコマンドプロンプトを管理者として開き 次のコマンドを実行する.
mkdir c:\image cd c:\image curl -L https://github.com/opencv/opencv/blob/master/samples/data/fruits.jpg?raw=true -o fruits.jpg curl -L https://github.com/opencv/opencv/blob/master/samples/data/home.jpg?raw=true -o home.jpg
上のコマンドがうまく
https://github.com/opencv/opencv/tree/master/samples/data
で公開されている fruits.jpg, home.jpg を使用する(謝辞:画像の作者に感謝します)
Python プログラムを実行する
画像が表示されるので確認.
このあと,ウインドウの右上の「x」をクリックしない.画面の中をクリックしてから,何かのキーを押して閉じる
引き続き次を実行
ヒストグラム平坦化
import os
import numpy as np
import cv2
IMROOT=os.environ['LOCALAPPDATA'] + '/'
KERNSIZE=10
bgr = cv2.imread(IMROOT + "fruits.jpg")
mono = cv2.cvtColor(bgr, cv2.COLOR_BGR2GRAY)
r, dst = cv2.threshold(mono, 0, 255, cv2.THRESH_OTSU)
kernel = np.ones((KERNSIZE, KERNSIZE), np.uint8)
opening = cv2.morphologyEx(dst, cv2.MORPH_OPEN, kernel)
cv2.imshow("opening", opening)
edges, contours, hierarchy = cv2.findContours(opening, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
cv2.imshow("edges", edges)
cv2.waitKey(0)
cv2.destroyAllWindows()
print( cv2.contourArea(contours[0]) )
x,y,w,h = cv2.boundingRect(contours[0])
aspect_ratio = float(w)/h
print( aspect_ratio )
(x,y),(MA,ma),angle = cv2.fitEllipse(contours[0])
print( angle )