OpenCVで画像を読み込んで書き出す
2017-01-23
OpenCV の使い方ということで,手始めに画像を読み書きしてみます.
読み込み
シンプルにカラーで
import cv2
import numpy as np
img = cv2.imread('test.jpg', 1)
第二引数を指定する
カラーイメージやグレースケールなどの指定は第二引数で.
import cv2
import numpy as np
# カラーイメージ
img = cv2.imread('test.jpg', cv2.IMREAD_COLOR)
# グレースケール
img = cv2.imread('test.jpg', cv2.GRAYSCALE)
# アルファチャンネルあり
img = cv2.imread('test.jpg', cv2.UNCHANGED)
IMREAD_COLOR は 1, GRAYSCALE は 0, UNCHANGED は -1 でも代替できます.
画像が見つからなかったときの処理
画像の名前の指定を間違っていて正しく読み込めなくても,エラーを返してくれません.
img には None が代入された状態になります.
書き出し
cv2.imwrite('test2.jpg', img)
オブジェクトを指定して名前を付けるだけ.
新しい画像の書き出し
ブランクイメージの作成とかに使えるかも.
new_img = np.zeros((HEIGHT, WIDTH, 3), np.uint8)
零行列なので,黒一色です.