python/OpenCVで輪郭検出してたらなんかかっこいい画像が出来た
OpenCV楽しくてやばいですはい。 輪郭検出も出来るようで、キャニー法とやらを使って軽く遊んで見ました。 遊んでたらなんかかっこいいのが出来ました。
ターゲットにするのは今回はレナさんではなくて、立川で撮ってきた謎の道祖神くん。
で、肝心のキャニー法の使い方はこんな感じ。
import cv2
img = cv2.imread('in.jpg')
out = cv2.Canny(img, 50, 150)
cv2.imwrite('out.jpg', out)
おお、かつてなく簡単だ。 これだけで輪郭を検出できてしまう。
出力はこんな。
パラメータ変えるとちょっとずつ出力が変わって面白いので、3通りやって重ねてみた。
import cv2
img = cv2.imread('in.jpg')
b = cv2.Canny(img, 25, 200)
g = cv2.Canny(img, 50, 150)
r = cv2.Canny(img, 100, 100)
img[:,:,0] = b
img[:,:,1] = g
img[:,:,2] = r
cv2.imwrite('out.jpg', img)
これはこれでシンプル。 赤、青、緑のそれぞれにパラメータ違いで重ねています。
んで、結果がこんな。
超かっこいい!