画像AIセンシングの探求
〜 高知県IoPクラウド「SAWACHI」
画像AIセンシング Workshop 〜
はじめに
こんにちは。エンジニアの菊永です。
今回弊社の持つ画像処理に関する知見や最新のAI関連技術を絡めたノウハウを公開・提供するWorkshopを開催しましたのでその内容についてご紹介します。
このWorkshopを開催した目的は大きく3つあります。
-
様々な画像処理技術・画像認識AIの概念を理解してもらう。
-
IoPクラウド「SAWACHI」のデータ利活用を促進する。
-
参加者の皆さんには各社におけるエバンジェリストになって頂く。
ココからは少し担当の菊永個人の考えになりますが、いわゆる中小企業においてはIT分野のエンジニア獲得は様々な実状から非常にハードルが高いものとなっています。それならば現在は非エンジニアかもしれない方に昨今の技術進歩の恩恵を十二分に受けながらエンジニアになってもらうというアプローチはどうだろうか?と考えて、先の3つの目的を達成するべく、担当者として以下のような構成で内容を組み立ててみました。
本講座の主な構成
-
画像AIセンシングの概念と基本
-
画像処理技術について
-
AIを利用した応用例について
1. 画像AIセンシングの概念と基本
この部分では画像センシング技術がどのようにして画像データを捉え、処理し、解析するかについて”画像センシングの基本のキ”と銘打って基本的なプロセスの説明から行いました。
画像センシングの本質は画像データを構成するピクセルの数値情報から様々な情報を抽出することであり、例えば…
-
どんな色が多いのか?
-
輪郭(エッジ)はどうなっていてどんな形状なのか?
-
対象物はどのあたりにあるのか?
-
画像の中に人はいるか?どこにいるか?
etc
というような事は日々、皆さん自身もスマホでやっているという事を改めて確認しました。その上で、画像データの多量のピクセル群から傾向やパターンを読み解くことが重要なので、画像処理技術と確率統計は非常に相性が良いという事も説明しました。
2. 画像処理技術について
この部分では、画像処理技術の例として以下のような技術を紹介しました。
-
画像の補正
-
フィルタリング
-
エッジ検出
-
色調整
弊社としては前述の通り参加者の皆さまにエンジニアとしての一歩を踏み出して欲しいとの思いがありましたので、座学的な内容よりもエンジニアっぽく、実際に手を動かして試行錯誤してもらおうとハンズオン方式で進めてみました。
ただ、参加者の皆さまほとんどが非エンジニアであり、プログラミング経験者は少数だったのでハンズオンのアシスタントとして「ChatGPT Plus」の「Advanced Data Analysis」を活用して、より実践的な内容にチャレンジしてもらいました。
少し驚かれるかもしれませんが、上のグラフや処理結果、Python コードは全て ChatGPT が参加者からの指示(プロンプト)によって自動作成したものです。
具体的な Advanced Data Analysis の使い方は下記のような感じです。
-
処理対象となる画像をチャットへアップロード。(ChatGPT Plus 提供機能)
-
例)「この画像のヒストグラムを作成して表示して下さい。 また、そのヒストグラムから分かることを具体的に説明して下さい。」というプロンプトを入力。
-
例)「この画像に Canny エッジ検出処理を行った結果を表示して下さい。 また、エッジ検出から分かることを具体的に説明して下さい。」というプロンプトを入力。
以降のハンズオンも参加者には可能な限り自身の手を動かして、ChatGPT をアシスタントとして使いながら課題に取り組んでもらいました。
3. AI を利用した応用例について
この部分では、画像 AI センシング技術が実世界の問題解決にどのように活用されているかについていくつかの事例等を紹介しました。
また、参加者には実際の画像認識 AI モデル作成の一連のプロセスを体験できる Google が提供する Teachable Machine を使って簡単な画像認識モデル作成をハンズオンしてもらいました。
このコンテンツはブラウザで完結した仕組みでできており、いわゆる機械学習による AI モデル作成のデータ取集、アノテーション、学習、検証、推論までを直感的に試すことができるので個人的にオススメです。
ファインチューニング
ココまで、参加者には主に画像認識分野における機械学習や AI に関する基本的な概念を一通りなぞってもらいましたので、次の段階としてより実践的な AI モデル活用手法としてファインチューニングのハンズオンを行いました。
ファインチューニングとは?(ChatGPT の回答引用)
あるタスクで既に訓練されたモデルを取り、それを若干変更して新しいが関連するタスクに適応させるプロセスを指します。このプロセスは、新しいタスクのためにモデルをゼロから訓練するよりも、時間とリソースを節約できることが多く、少ないデータでも高い性能を達成できること、訓練時間と計算コストを削減できることにあります。
今回のハンズオンの実施にあたっては、参加者の PC 環境等の差異から発生する不具合を極力無くすことを考え、クラウド上である程度完結できる仕組みでかつ画像認識などの AI モデル作成・利用を効率的に行える GPU も利用できる Google Colaboratory とポピュラーで効率的なエコシステムが提供されている Ultralytics の YOLOv8 を使用しました。
ハンズオンの内容
-
画像分類(Classification)
-
学習用データセットを取得
-
ファインチューニングの実行
-
テスト・性能評価
-
物体検出(Object Detection)
-
学習用データセットを取得
-
ファインチューニングの実行
-
テスト・性能評価
-
セグメンテーション(Segmentation)
-
学習用データセットを取得
-
ファインチューニングの実行
-
テスト・性能評価
ハンズオンで使用した Notebook はこちら
今回は時間制約の都合上、十分な学習ができたとは言えないこともあって精度はイマイチですが、ある程度意図した方向にチューニングできた点と、このセミナーの目的でもある画像センシングの手法を理解する意味では一定程度達成できたかなと思っています。
まとめ
人間の外部からの入力情報の約8割を占めると言われている「眼」の機能を一部代替する画像 AI センシングについて、基本的な概念から最先端の画像処理技術と AI を組み合わせた活用例まで幅広くご紹介できたと思います。
また、その中でも重要なポイントとなる技術分野については参加者の皆さんに実際に手を動かしてハンズオンで体験してもらい、弊社が大切にしている”手触り感”を掴んで頂けたのでは!?と考えています。
私たちは、このように主に「エンジニアではない(非エンジニア)」方々にいかにテクノロジーを活用して頂けるか?を常に考えながら、日々アップデートしたコンテンツでセミナーを実施しています。
ご興味・ご関心のある方がいらっしゃいましたらご遠慮なくお問い合わせ下さい。