1▲大坂(システム開発グループ)/トニースタークになりたい。入社一ケ月目の大坂です。漢字を間違えられます。大阪では主に製品を作るための大型機械を作ったり、故障を直したりしていました。自力で新しいモノを作るのが好きで、品質管理用の試験機を自作したり、既存の設備を改造して自動化したりもしました。使った車のタイヤの画像解析システムを開発しています。スマホで撮ったタイヤの画像から、そのタイヤのメーカー名と、速度記号や大きさなどが記載された情報を取得することを目的としています。Bridgestone,Mishelin)の中で正しいメーカーを当てるAIを作成します。タイヤのメーカーを識別するAIの開発そもそも機械学習(AI)ってどうやって作るの?機械学習(AI)を作るための流れが、下記の図のような流れが必要です。”教えるための画像データ”をたくさん用意して、その画像を機械が理解しやすいように前処理を行う”その画像をどういう風に学習するか”というAIの定義づけと作成を行った上で、準備しておいたデータを定義づけしたAIに入れるそのデータを元にどれくらい頭のいいAIのモデルができたか評価し、良ければ実装してみて実評価を行うといった流れです。開発環境は以下の通りです。Colaboratoryは、Googleが提供している高性能な機械学習環境です。Webブラウザで動きます。Tensorflowは、Googleが提供しているAI開発用のオープンソースなフレームワークです。これらはすべて、Python言語で構築できます。実はここが一番重要な箇所であり、難航したところでした。タイヤ上の文字は湾曲している上に文字とタイヤの境界値がわかりづらいため、そのままタイヤの画像だけを集めて学習させてもいい結果が得られません。このため、AIに分かりやすいように画像を加工しなければなりません。▲タイヤの画像認識は難しい湾曲補正やグレースケール、シャープ化、高コントラスト化、二値化や領域切取など、様々な前処理を試みました。試行錯誤の末、”これならAIにも理解しやすいかもしれない!”と思うような処理が完成し、データを準備しました。CNNモデルは画像認識モデルに使われる一般的な手法です。今作ったAIに先ほど取得してきたタイヤの画像を投げてみます。すると結果は、おお!見事に的中しました!データの前処理方法やCNNモデルの構成を色々変えてやってみたのですが、ようやく良いモデルを作成することができました!今後について今回、AIが正しく判定できるようになったのは3択でした。今後はこの択を6社に増やし、精度100%のメーカー判別器を目指します。データの前処理や実評価に利用する画像も今は自分で行っています。これはとても面倒で時間のかかる作業です。この課題を克服するために、まずは”前処理を自動で行うプログラム”と、”どの部分を解析するか調べるための領域判別モデル”を開発します。”面倒な作業”は自動化に限ります。して、ようやく本命のタイヤ記号の情報読み取りの開発に入ることができそうです。課題は多く道のりは長いですが、やるべきことはわかりました。今後も前向きに取り組んでいきます。それから、今回利用した画像処理とAI解析の技術は、様々な用途で利用できそうです!これからの進展にご期待ください。