Pythonで画像ファイルの表示(Dockerコンテナ起動し、JupyterLabから実行)
解説
JupyterLabサーバーをDockerコンテナを起動することで起動し、JupyterLab上のPythonプログラミングにおいて、画像ファイルを表示する方法についてまとめます。
(Dockerコンテナを起動し、起動したコンテナ上にいるTerminalからPythonプログラムを実行するときの、画像ファイルを表示する方法は、「Pythonで画像ファイルの表示(Dockerコンテナ起動し、Terminalから実行)」にあります。)
画像ファイルを表示する方法は様々ありますが、以下の方法についてまとめます。
- IPython.displayを用いて画像ファイルを読み込み、画像表示をする方法
- Pillowを用いて画像ファイルを読み込み、画像表示をする方法
- OpenCVを用いて画像ファイルを読み込み、IPythonを用いて画像表示をする方法
- OpenCVを用いて画像ファイルを読み込み、Matplotlibを用いて画像表示をする方法
機械学習開発用のコンテナの起動
「Dockerコンテナを実行してJupyterLabにアクセス」に従い、コンテナ起動スクリプトファイルを作成します。
以下のコマンドを実行し、「L4T ML」コンテナを起動します。
Jupyterにアクセス
「L4T ML」コンテナを起動すると、以下のようなメッセージが表示され、JupyterLabサーバーも起動します。(IPアドレス部は、実行する
Jetson Orin Nano の環境によって異なります)
Jetson Orin Nano のデスクトップの「Chromium ウェブ・ブラウザ」アプリ、もしくは、同一ネットワーク上のPCのブラウザアプリ(ChromeやEdge)から、
http://[Jetson Orin Nano のIPアドレス]:8888
もしくは
http://[Jetson Orin Nano のホスト名]:8888
にアクセスします。
JupiterLabが表示されます。ログインします。
1. IPython.displayを用いて画像ファイルを読み込み、画像表示をする方法
実行結果例
画像ファイルの読み込み結果のimageオブジェクトのデータ型は、
IPython.core.display.Image
でした。(「print(type(image))」にて確認)
2. Pillowを用いて画像ファイルを読み込み、画像表示をする方法
実行結果例
画像ファイルの読み込み結果のimageオブジェクトのデータ型は、
PIL.JpegImagePlugin.JpegImageFile
でした。(Jpegフォーマットの画像を読み込んだ場合)(「print(type(image))」にて確認)
3. OpenCVを用いて画像ファイルを読み込み、IPythonを用いて画像表示をする方法
実行結果例
画像ファイルの読み込み結果のarrayImageオブジェクトのデータ型は、
numpy.ndarray
でした。(「print(type(arrayImage))」にて確認)
画像ファイルの読み込み結果のimageオブジェクトのNumPy配列の形状は、
(256, 256, 3)
でした。(256x256の画像を読み込んだ場合)(「print(arrayImage.shape)」にて確認)
4. OpenCVを用いて画像ファイルを読み込み、Matplotlibを用いて画像表示をする方法
実行結果例
コンテナの終了
コンテナを終了するには、起動したコンテナ上にいるTerminalで「exit」と入力します。