Pages

Wednesday, May 24, 2023

さまざまなノードをつなぐだけでOK、AIを使った画像処理を楽しむ - ITpro

mungkinbelum.blogspot.com

全2513文字

話題の「ChatGPT」をはじめ、AI(人工知能)を利用できるフリーソフトが増えている。この特集では、そうしたフリーソフトを5本厳選して紹介する。

[画像のクリックで拡大表示]

 「Image-Processing-Node-Editor」(以下、IPNE)は、画像編集ツールの一つですが、「GIMP」といった同様なアプリとは大きく異なる特徴を持っています。具体的には、(1)ノードをつないでいくことで画像処理の過程を確認しながら作業できること、(2)AI(人工知能)による顔検出といった画像処理が可能なことです。このような特徴から、IPNEはデジカメで撮影した写真を編集するような用途ではなく、例えば自動車に搭載される自動運転技術といった画像処理とAIを活用したサービスやモノづくりの開発現場での利用を想定しています(図1)。

図1 車載カメラの映像をAIで分析しているイメージのデモ画面

図1 車載カメラの映像をAIで分析しているイメージのデモ画面

「https://qiita.com/Kazuhito/items/03741785301f5f47caa2」より引用。「Monocular Depth Estimation」は単眼深度推定、「Semantic Segmentation」はセマンティックセグメンテーション、「Object Detection」は物体検出、「ApplyColorMap」は疑似カラー化、「Image Concat」は複数画像の結合、「Result Image」は画像の表示が適用されている。

[画像のクリックで拡大表示]

インストール

 IPNEは主にPythonで書かれており、WindowsやmacOSでも動作します。Linuxにインストールする方法はいくつかあります。ここでは、安定した環境を比較的簡単に構築できる、コンテナー仮想化技術のDockerを使った方法を紹介します。あらかじめ「Docker Desktop」をインストールしておいてください*1。その後、次のコマンドでIPNEをインストールします。

*1 Ubuntu 22.04 LTSで「Docker Desktop」をインストールするには、まずWebページ「https://docs.docker.com/desktop/install/ubuntu/」で「DEB package」をクリックしてパッケージをダウンロードします。次に端末アプリを起動し、ダウンロード先フォルダーに移動して「apt install ./docker-desktop-4.13.1-amd64.deb[Enter]」と実行します(太字のバージョン番号は時期によって変わる)。

[画像のクリックで拡大表示]

 「Image-Processing-Node-Editor」フォルダーで次のコマンドを実行するとIPNEが起動します。

[画像のクリックで拡大表示]

基本的な使い方

 IPNEはノードエディタ形式となっており、さまざまな機能を持ったノードをつなげていくことで、画像処理を実行できます。基本的な流れとしては、「Input Node」で入力する画像や動画を用意し、後は好きな画像処理のノードにつなぐだけです。

 まずは基本となるInput Nodeを試してみましょう。IPNE起動後、メニューの「InputNode」を選択します。Input Nodeには「Image(画像)」「Video(動画)」「WebCam(カメラ)」などさまざまな入力ソースが選べます。PCの内蔵カメラやUSB接続のWebカメラがある場合は「WebCam」を選ぶとよいでしょう。「Device No」のドロップダウンリストでカメラ番号(1台だけなら「0」となることが多い)を指定すれば、カメラの映像が表示されます(図2)。

図2 Inpuit Nodeの画面

図2 Inpuit Nodeの画面

メニューの「InputNode」で「WebCam」を選択すると追加される。映らないときは「Device No」で入力先のカメラを指定する。

[画像のクリックで拡大表示]

 続いて、Input Nodeに対して画像処理をしていきます。メニューの「ProcessNode」を開くと、「Crop(切り取り)」「Resize(リサイズ)」「Blur(ぼかし)」などのProcess Nodeが選べます。これらProcess Nodeの入力端子とInput Nodeの出力端子を、マウスのドラッグ操作で接続します。接続すると同時に画像処理された結果がProcess Nodeに表示されます(図3)。Process Nodeを数珠つなぎにすると、複数の画像処理を組み合わせられます(図4)。

図3 Process Nodeの利用例

図3 Process Nodeの利用例

「Omnidirectional Viewer」は画像の方向変換、「Contrast」はコントラスト調整処理、「Crop」は切り抜き処理、「Glayscale」はグレースケール化が適用されている。

[画像のクリックで拡大表示]

図4 複数の画像処理を組み合わせた例

図4 複数の画像処理を組み合わせた例

「ApplyColorMap」で疑似カラーを適用した後、「Crop」で切り抜き処理している。

[画像のクリックで拡大表示]

Adblock test (Why?)


からの記事と詳細 ( さまざまなノードをつなぐだけでOK、AIを使った画像処理を楽しむ - ITpro )
https://ift.tt/ew48SWB

No comments:

Post a Comment