OpenCV-Pythonチュートリアル 画像の読み込み,表示,保存方法

OpenCV-Pythonチュートリアルをやってみる
import numpy as np
import cv2

#画像ファイル読込

#cv2.IMREAD_COLOR : カラー画像として読み込む.画像の透明度は無視される.デフォルト値
#cv2.IMREAD_GRAYSCALE : グレースケール画像として読み込む
#cv2.IMREAD_UNCHANGED : アルファチャンネルも含めた画像として読み込む
# Load an color image in grayscale
img = cv2.imread('dsub.jpg',cv2.IMREAD_COLOR)

cv2.imshow('image',img) #画像表示 (タイトル,データ)
cv2.namedWindow('image', cv2.WINDOW_NORMAL) #サイズ可変
cv2.imshow('image',img)

k = cv2.waitKey(0)          #キー入力待ち 引数は待ち時間(ms) 0で無限
if k == 27:         # wait for ESC key to exit
    cv2.destroyAllWindows()
elif k == ord('s'): # wait for 's' key to save and exit
    cv2.imwrite('messigray.png',img)    #画像を保存
    cv2.destroyAllWindows()             #全ウインドウ クローズ

Matplotlibを使用
まずmatplotlibを入れる
pip install matplotlib

読み込んだ画像のズームや移動、保存ができる
#
# Matplotlibを使えば,画像のズームや保存ができます
# need   pip install matplotlib
#  OpenCVで読み込んだカラー画像はBGRモードで読み込まれます.
#  しかし, Matplotlib は画像をRGBモードで表示します.
# そのため,OpenCVを使って読み込んだ画像を表示しようとすると,
#  色成分がおかしな表示になってしまいます.
#

import numpy as np
import cv2
from matplotlib import pyplot as plt

#img = cv2.imread('dsub.jpg',0)
img = cv2.imread('dsub.jpg',-1)
plt.imshow(img, cmap = 'gray', interpolation = 'bicubic')
plt.xticks([]), plt.yticks([])  # to hide tick values on X and Y axis
plt.show()

コメント

このブログの人気の投稿

Python OpenCVとWebカメラでバーコードリーダー

OpenCV 画像の足し算

OpenCV3とPython3で形状のある物体の輪郭と方向を認識する(主成分分析:PCA、固有ベクトル)