OpenCVを使ってみる
OpenCVを使ってみた. 最近囲碁がマイブームなので,地合計算をしてくれるアプリを作りたい.
導入
これ見てやったらできた.いつもお世話になってます.
Mac OS X で OpenCV 3 + Python 2/3 の開発環境を整備する方法 - 意識低い開発者のBlog
簡単なのを試してみる
import cv2
import numpy as np
img = cv2.imread('sample.jpg')
# グレースケール
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
cv2.imwrite('gray.png', gray)
# 二値化
_ ,binary = cv2.threshold(gray, 120, 255, cv2.THRESH_BINARY)
cv2.imwrite('binary.png', binary)
# エッジ抽出
edge = cv2.Canny(img, 50, 150)
cv2.imwrite('edge.png', edge)
# ネガポジ反転
negaposi = cv2.bitwise_not(edge)
cv2.imwrite('negaposi.png', negaposi)
元の画像

グレースケール

二値化

エッジ抽出

ネガポジ反転

二値化画像とエッジの画像を組み合わせてみる
alpha = 0.5
result = cv2.addWeighted(negaposi, alpha, binary, 1-alpha, 0.0)
cv2.imwrite('result.png', result)

参考サイト
【シリーズ】「pythonとOpenCVを用いたCVプログラミング 」第8回:... | DERiVE コンピュータビジョン ブログ
Python OpenCV3で画像の画素値を二値化して出力 - from umentu import stupid