今回は画像ファイルをPythonで読み込む方法を解説します。画像処理やAIの学習など、色々なことに活用できると思いますので、ぜひ挑戦してみてください。
また、本記事は「Kerasでディープラーニング!Pythonで始める機械学習入」シリーズの手順を解説するページです。シリーズの一覧は以下をご覧ください。
\ 機械学習を学びたい人には自宅で学べるUdemyがおすすめ! /
講座単位で購入できます!
環境
ハードウェア:Intel x86
OS:Windows 10
Anaconda:4.10.3
Python:3.9.7
画像データを収集する
まずはPythonプログラムで読み込む画像ファイルを入手します。
手作業で画像を集めるのは大変なので、クローラーを使ってWeb上の画像を自動で大量に収集します。
クローラーの使い方は以下のサイトで解説していますので、公開しているソースコードを実行してみてください。
画像データを読み込む
前項で大量に取集した画像ファイルを読み込む方法を解説します。
ファイルのパスを取得
画像のファイルパスを取得するためにはglobというライブラリを使用します。globライブラリは引数で指定した条件に一致するパスを再帰的に取得します。
files = glob.glob("images/*.jpg")
この例では、実行される.pyファイルが置かれていディレクトリをカレントとして、「images」というフォルダ以下の「.jpg」という拡張子のファイルを再帰的に取得します。
画像ファイル読み込み
画像ファイルの読み込みには、画像処理ライブラリOpenCVを使用します。
OpenCVのインストールは以下のコマンドを実行してください。
pip3 install opencv-python
作成したソースコード
実際に作成したソースコードは以下の通りです。
import glob
import cv2
#全ての画像ファイルのパスを取得する
files = glob.glob("images/*.jpg")
#先頭の画像のみ表示して確認
#パスの画像ファイルを読み込み
image = cv2.imread(files[0])
#確認用に縮小
image = cv2.resize(image, (500, 200))
#画像データを表示
cv2.imshow("image", image)
#キーが押されるまで待機
key = cv2.waitKey(10000)
5行目:
globライブラリを使ってフォルダ内の全ての画像ファイルのパスを取得します。
9行目:
OpenCVを使ってファイルのパスから画像データを読み込みます。
12行目:
確認しやすいように画像サイズを縮小します。
15行目:
ウィンドウに画像を表示し、データが正しく読み込まれているかを確認します。
実行結果
プログラムを実行すると、実際に読み込んだ画像をウインドウに表示することができました。
まとめ
今回は画像ファイルをPythonプログラムで読み込む方法を解説しました。
画像を読み込むことができると、そのデータをプログラム内で自由に使用することができます。
次回は読み込んだ画像をAIに学習させる方法を解説していきたいと思います。
また、OpenCVをさらに詳しく学びたい方には、Udemyの以下の講座もお勧めです。
【Pythonで学ぶ】OpenCVでの画像処理入門また、以下の記事で効率的にPythonのプログラミングスキルを学べるプログラミングスクールの選び方について解説しています。最近ではほとんどのスクールがオンラインで授業を受けられるようになり、仕事をしながらでも自宅で自分のペースで学習できるようになりました。
スキルアップや副業にぜひ活用してみてください。
スクールではなく、自分でPythonを習得したい方には、いつでもどこでも学べる動画学習プラットフォームのUdemyがおすすめです。
講座単位で購入できるため、スクールに比べ非常に安価(セール時1200円程度~)に学ぶことができます。私も受講しているおすすめの講座を以下の記事でまとめていますので、ぜひ参考にしてみてください。
それでは、また次の記事でお会いしましょう。
コメント