open cv を使用してエンボス(emboss)画像を作成します。
①元画像 を読み込む
②ネガ画像 作る
③ネガ画像を少しずらして元画像に足す。
この3ステップになります。’c:/temp/ts.jpg’に基準画を置いてください。
import cv2
import numpy as np
img = cv2.imread('c:/temp/ts.jpg')
#img = cv2.imread('c:/temp/ts0.jpg',cv2.IMREAD_GRAYSCALE)
#モノクロにしたい人はこちら
#元画像の準備
nega=255-img #ネガ画像を作る
hei,wid,_=img.shape
#モノクロにする場合"._"を消す。
#Affine変換量調整
matt=[[1,0,2],[0,1,2]] #2画素だけずらす変換マトリクス
matt=np.array(matt).astype(np.float64)
#array を浮動小数点にする.
nega_shift=cv2.warpAffine(nega,matt,(wid,hei))
emboss=cv2.add(img,nega_shift)-128
cv2.imwrite('c:/temp/emboss.bmp',emboss)
cv2.imshow('img',img)
cv2.imshow('nega',nega)
cv2.imshow('emboss',emboss)
cv2.waitKey(0)
cv2.destroyAllWindows()



こんな感じで趣のあるグレー画像になります。
Python+Pillow/PIL 画像の加工・補正・編集とその自動化 価格:4,180円 |
ディジタル画像処理 [改訂第二版]【電子書籍】[ ディジタル画像処理編集委員会 ] 価格:3,861円 |


コメント