Python版OpenCVのcv2.imencodeとcv2.imdecodeでOpenCVで画像をエンコードおよびデコードを行う方法を解説します。
画像の圧縮(エンコード)と復号(デコード)
Python版OpenCVのcv2.imencodeとcv2.imdecodeは、OpenCVで画像をエンコードおよびデコードするためのメソッドです。
画像をメモリ内で圧縮したり、圧縮された画像データを元の画像に戻したりすることができます。
サンプルコード① 画像のエンコード
import cv2
# 画像を読み込む
img = cv2.imread('input.jpg')
# 画像をJPEG形式でエンコード
result, encoded_img = cv2.imencode('.jpg', img)
# エンコードされた画像データをファイルに保存
with open('encoded_img.jpg', 'wb') as f:
f.write(encoded_img)
サンプルコード② 画像のデコード
import cv2
import numpy as np
# エンコードされた画像データを読み込む
with open('encoded_img.jpg', 'rb') as f:
encoded_img = f.read()
# バッファから画像データをデコード
decoded_img = cv2.imdecode(np.frombuffer(encoded_img, np.uint8), cv2.IMREAD_COLOR)
# デコードされた画像を表示
cv2.imshow('Decoded Image', decoded_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
関連ページ

PythonとOpenCVで画像処理超入門
Python版OpenCVで画像処理プログラミングを行う方法を入門者向けにソースコード付きで解説するページです。

【画像処理超入門】アルゴリズムの仕組みと実装方法を簡単に解説
画像処理超アルゴリズムの仕組みとプログラミングによる実装方法を簡単に解説します。


コメント