それが僕には楽しかったんです。

僕と MySQL と時々 MariaDB

OpenCVで画像の読み込みと表示、保存

画像の読み込みと表示、保存

OpenCVを使って画像処理をしようにも、まず対象の画像が読み込めないと何もできない

そして、いろいろやっていった結果の画像を見れるといいなというわけで

さらにいろいろやった結果を出力できたらなおいいというわけで、今回は全てやる

方法

まずcv2.imread("画像ファイル名")で画像を読み込んだものを変数に代入する
imreadの第二引数を0にするとグレースケールで読み込める

画像を表示するにはimshowを使い
cv2.imshow("ウィンドウ名",画像を読み込んだ変数)とする

#coding:utf-8

import numpy
import cv2


img = cv2.imread("Lenna.png")
img2 = cv2.imread("Lenna.png",0)#グレースケールで読み込み

cv2.imshow("color",img)
cv2.imshow("gray",img2)
cv2.waitKey(0)
cv2.destroyAllWindows()

waitKeyではキーボードからの入力待受で引数のミリ秒だけ入力を待ち受けてその後次の処理に移る

destroyAllWindows()では現在表示中のhighGUIの画像表示窓を全て破棄する

これで画像の表示と読み込みができるようになった


次に画像の保存
今回はカラー画像をグレースケールで読み込んでそれを出力する

画像の出力は簡単で
cv2.imwrite("出力画像ファイル名",画像ファイルを読み込んだ変数)
でいいので

#coding:utf-8

import numpy
import cv2

img = cv2.imread("Lenna.png",0)#グレースケールで読み込み
cv2.imwrite("LennaG.png",img)

これで画像の読み込み、表示、保存ができるようになった