OpenCVで画像を読み込んで書き出す

作成日

2017年1月24日

OpenCV の使い方ということで,手始めに画像を読み書きしてみます.

読み込み

シンプルにカラーで

sample.py
import cv2
import numpy as np

img = cv2.imread('test.jpg', 1)

第二引数を指定する

カラーイメージやグレースケールなどの指定は第二引数で.

sample.py
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 が代入された状態になります.

書き出し

sample.py
cv2.imwrite('test2.jpg', img)

オブジェクトを指定して名前を付けるだけ.

新しい画像の書き出し

ブランクイメージの作成とかに使えるかも.

sample.py
new_img = np.zeros((HEIGHT, WIDTH, 3), np.uint8)

零行列なので,黒一色です.

参考

mktia's note

Research & Engineering / Blockchain / Web Dev

© 2017-2025 mktia. All rights reserved.