PythonとOpenCVで線画を抽出してみる
chainerで線画着色をwebサービスにして公開してみた – Qiita
これスゴいよね。
着色してみようと思ったけど、手元に線画なかったのでシンプルな方法で線画抽出してみた。
といってもここのコメントのやり方をコードにしただけ。
OpenCV(Python)でやった。
こんな感じ。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
%matplotlib inline import cv2 import numpy as np import matplotlib.pyplot as plt image_path = "gundam.jpg" img = cv2.imread(image_path) gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) cv2.merge((gray, gray, gray), img) kernel = np.ones((4,4),np.uint8) dilation = cv2.dilate(img,kernel,iterations = 1) diff = cv2.subtract(dilation, img) negaposi = 255 - diff plt.imshow(negaposi) # cv2.imwrite('output.png', negaposi) |
これが…
こんな感じになる…
良いね。
石田スイ系の絵だと輪郭がボヤッとしてるからか線画の抽出が難しかった。
スレッショルド系のフィルタを組み合わせたらイケるのかな…よく分からん。
着色したらこうなった。
色味は違うけど、陰影が自然な感じに再現されてる点がスゴい。
336px
336px
関連記事
-
-
deepdreamしてみたい
ht …
-
-
MacでKerasを使えるようにする
Ke …
- PREV
- FINE BOYS(2017年2月)の感想文
- NEXT
- FINE BOYS(2017年3月)の感想文