画像ファイル読込、書込み imread、imwrite - OpenCV、Python徹底解説

 

{{DZ_TITLE}}
OpenCVで簡単にイメージファイルの読込、書込みの方法です。

基本形

画像読込

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

画像保存

cv2.imwrite( 'test.jpg', img,[cv2.IMWRITE_JPEG_QUALITY, 50])
cv2.imwrite( 'test.jpg', img)
cv2.imwrite( 'test.png', img)

サンプル

import cv2

# 画像の読込
img = cv2.imread( 'test.png')

# 画像の保存
cv2.imwrite( 'test.jpg' ,img)

カラーと、グレースケールについて

読込時にグレースケールに変換可能です

第2引数に cv2.IMREAD_GRAYSCALE を入れることでカラー画像ファイルでもグレースケールとして読込めます。

import cv2
img = cv2.imread( 'test.png' , cv2.IMREAD_GRAYSCALE)

カラーとグレースケールのデータの違いについて

カラーと、グレースケールでは内部の形式が違います。
shapeを見ていただくと以下のように形式が違う事が判ります。
カラーの場合、R,G,Bそれぞれデータを持っていますが、
グレースケールでは、カラーの様にデータを3種類もつ必要がないためです。
カラー:(y,x,3)
グレースケール:(y,x)

import cv2
img = cv2.imread( 'test.png' , cv2.IMREAD_GRAYSCALE)
print(img.shape)
(480, 640)
import cv2
img = cv2.imread( 'test.png' )
print(img.shape)
(480, 640, 3)

関連

Python - OpenCV徹底解説

おすすめ記事

みちびき 高精度 L1S対応、Sony spresenseは買いなのか?
みちびき 高精度 L1S対応、Sony spresenseは買いなのか?
eTrex 10JのGPSログをPythonで効率的に保存する
eTrex 10JのGPSログをPythonで効率的に保存する
Django テンプレート 使用 #4 URL
Django テンプレート 使用 #4 URL
COVID-19のRNA/DNAのチェック
COVID-19のRNA/DNAのチェック
Python徹底解説
Python徹底解説
Omni chat google extension 作成しました
Omni chat google extension 作成しました
Supponsered

外部サイト
↓プログラムを学んでみたい場合、学習コースなどもおすすめです!

Comments

comments powered by Disqus