はじめに
このチュートリアルでは、OpenCV-Pythonライブラリを使った画像操作の基本を学びます。このチュートリアルを終えると、画像の読み込み、表示、保存ができるようになります。
このチュートリアルでは、OpenCV-Pythonライブラリを使った画像操作の基本を学びます。このチュートリアルを終えると、画像の読み込み、表示、保存ができるようになります。
まず、必要なライブラリをインポートしましょう。画像処理には cv2
ライブラリを使用します。インポートするには import
を使用してください。
VMデスクトップのターミナル に次のコマンドを入力してPythonシェルを開きます。
python3
python3
を入力してPythonインタプリタの起動プロセスを開始します。次に、次のコードを入力します。
import cv2
その後、コード内で cv2
ライブラリを使用できます。
ファイルから画像を読み込むには、cv2.imread()
関数を使用します。この関数は、ファイルパスを引数として受け取り、画像をNumPy配列として返します。
画像パスは /home/labex/Desktop/Image.jpg
です。
python
を入力してPythonインタプリタの起動プロセスを開始します。次に、次のコードを入力します。
## 画像を読み込む
image = cv2.imread('/home/labex/Desktop/Image.jpg')
## 画像が正しく読み込まれたかどうかを確認する
if image is None:
print('エラー: 画像が見つかりません。')
else:
print('画像が正常に読み込まれました。')
画像が見つからない場合、cv2.imread()
関数は None
を返します。この場合、エラーメッセージを表示します。それ以外の場合は、成功メッセージを表示します。
画像を表示するには、cv2.imshow()
関数を使用します。この関数は2つの引数をとります。ウィンドウ名と表示する画像です。
また、キー入力を待つために cv2.waitKey()
関数を使用します。これは、ユーザーがキーを押すまでウィンドウを開いたままにするために必要です。cv2.waitKey()
関数は1つの引数をとり、それはキー入力を待つミリ秒数です。ユーザーが指定された時間内にキーを押すと、関数はキーコードを返します。それ以外の場合は、-1
を返します。この場合、キー入力を無期限に待つために 0
を渡します。
最後に、すべてのウィンドウを閉じるために cv2.destroyAllWindows()
関数を使用します。これは任意ですが、Pythonインタプリタ
プログラムを終了する前にすべてのウィンドウを閉じるのは良い慣例です。
python
を入力してPythonインタプリタの起動プロセスを開始します。次に、次のコードを入力します。
window_name = 'Image'
## 画像を表示する、画像は前の手順で読み込まれている
cv2.imshow(window_name, image)
## キー入力を待ち、ウィンドウを閉じる
cv2.waitKey(0)
## 画像を表示した後にウィンドウを破棄する
cv2.destroyAllWindows()
window_name
を変更して結果を確認できます。waitKey
のパラメータを変更して結果を確認できます。Pythonインタプリタ
を使用しているため、imshow
の直後にプログラムがすぐに終了するわけではありませんが、Pythonファイル
を実行している場合は、waitKey
を使用して imshow
の直後にウィンドウが閉じないようにする必要があります。画像を別の形式で保存するには、cv2.imwrite()
関数を使用します。この関数は2つの引数をとります。保存先のファイルパスと保存する画像です。
python
を入力してPythonインタプリタの起動プロセスを開始します。次に、次のコードを入力します。
## 画像を別の形式で保存する、画像は前の手順で読み込まれている
cv2.imwrite('/home/labex/Desktop/Image.png', image)
これで、OpenCV-Pythonライブラリを使った画像処理の基本を学びました。さまざまな画像形式を試して、リサイズ、切り取り、フィルタリングなどの高度な操作を探求することができます。楽しいコーディングを!