OpenCV の imshow ってどんな関数なんですか・・・?
ウィンドウで OpenCV で読み込んだ画像を表示することができるぞ。
✔️ 本記事のテーマ
OpenCV の imshow 関数の使い方(コード付き)
✔️ 読者さんへの前置きメッセージ
本記事は「OpenCVで画像を表示する方法」について書いています。
OpenCVライブラリは画像処理に特化したライブラリです。
imshow 関数を使うことで、
OpenCVライブラリで読み込んだ画像を簡単に表示することが出来ます。
それでは、画像を表示する方法を解説していきましょう。
OpenCVで画像を表示する方法(opencv.imshow)
opencv.imshow 関数を使って、画像を表示する方法について解説します。
まず、今回のサンプルコードは以下のようになります。
import cv2
img = cv2.imread('./sample.png')
cv2.imshow('sample', img)
cv2.waitKey(3000)
順番に、詳しく解説していきましょう。
imshow 関数の使い方 1: ライブラリのインポート
OpenCV は Python のサードパーティライブラリです。
そのため、OpenCV の機能を使うため、コード中でインポートする必要があります。
以下のように書くことで OpenCV ライブラリをインポートすることができます。
import cv2
もし、上記コードを実行してエラーが出る場合は
OpenCV ライブラリのインストール自体が出来てない可能性があります。
まず、インストールを済ませましょう。なお、OpenCVのインストールについての詳細はは
「【python】opencvのインストール方法」
の記事で書いているので、良ければ参考にしてみて下さい。
imshow 関数の使い方 2: 画像を読み込む
OpenCV で画像を表示する前に対象となる画像を読み込む必要があります。
OpenCV で画像を読み込むには以下のように書きます。
img = cv2.imread('./sample.png')
サンプルコードではpythonファイルと同階層にある sample.png を読み込んでいます。
cv2.imread 関数を使うことで画像を読み込むことができます。
cv2.imread 関数の引数には画像パスを渡すようにしましょう。
なお、OpenCVによる画像の読み込みについては
「OpenCVで画像を読み込む方法【Python】」
の記事で解説しています。
imshow 関数の使い方 3: 画像を表示する
いよいよ OpenCV で画像を表示します。
OpenCV で画像を表示するには cv2.imshow 関数を使用します。
cv2.imshow('test', img)
cv2.imshow 関数は以下の使い方をします。
- 第1引数: 開かれるウィンドウの名前 -> Stirng 型
- 第2引数: 対象の画像オブジェクト -> numpy.ndarray 型
第1引数にはプログラムを実行した時に開かれるウィンドウの名前を指定します。
この名前はなんでも良いので適当な文字を指定すれば OK です。
サンプルコードでは test としています。
第2引数には表示する画像オブジェクトを指定します。
こちらには先ほど cv2.imread 関数の戻り値を受けている変数 img をそのまま指定します。
imshow 関数の使い方 4: ウィンドウが開いている時間を指定する
最後に cv2.imshow 関数を使う際の注意点を記載します。
cv2.imshow 関数の実行後には cv2.waitKey 関数を実行しましょう。
cv2.waitKey(3000)
cv2.waitKey 関数を実行することでプログラムの処理を止めることができます。
引数にはプログラムを止める時間を指定します。
注意点として、ここで指定する時間の単位はミリ秒です。
サンプルコードでは 3000 ミリ秒 = 3 秒 を指定しているので、3 秒間ウィンドウが展開されます。
なお、cv2.imshow 関数の後に cv2.waitKey 関数を書いておかないと、
ウィンドウが開かれた後、一瞬で閉じられます。
表示された画像を見ることなくプログラムが終了してしまうので気を付けましょう。
画像処理プログラミングを独学で勉強するなら
OpenCV の imshow 関数の使い方について解説しました。
OpenCVは画像処理には欠かすことのできないライブラリです。
もし、OpenCVについて独学でスキルをつけるなら、以下の書籍がオススメです。
この書籍はOpenCVの基礎から応用までを
丁寧にかつ詳細に解説しています。
OpenCVのほぼ全てを網羅しているとも言えるほどの徹底ぶりなので、
関数のリファレンスとしても使用することができます。
本記事で解説したcv2.putText関数も掲載されています。
エンジニアとしての自身の価値をチェックする(完全無料)
エンジニアとして、
自分の価値がどれくらいのものかご存知でしょうか?
エンジニアとしてIT業界に身を置いていると
今の会社でずっと働くのか、フリーランスとして独立するのか …
と様々な選択肢があります。
どの選択肢が正解なのかを見極めるためにも、選択肢を広げるためにも
自身の価値を知っておくことはとても重要です。
TechClips ME では、
職務経歴書をアップロードするだけで企業からのスカウトを受けることができます。
▼▼▼▼▼
▲▲▲▲▲
しかもTechClips MEでは想定年収を企業から提示してくれるので、
自身の価値を数字で分かりやすくたしかめることができます。
登録はもちろん完全無料なので、一度登録してみると良いかもしれません。
コメント