セマンティックセグメンテーションと呼ばれる画像認識の技術が注目を浴びています。この技術は、自動運転や医療診断など、さまざまな分野で活用され始めています。セマンティックセグメンテーションとは、どのような技術なのでしょうか?いつから、注目を浴び出したのでしょうか? この記事では、セマンティックセグメンテーションについて分かりやすく解説します。※この記事は「SegNet: A Deep Convolutional Encoder-Decoder Architecture for Image Segmentation」を参考にしていますので、より深く学びたい方は文献を参考にしてみてください。画像認識の種類と違い画像認識の技術は「画像分類」「画像検出」「セマンティックセグメンテーション」に分類ができます。それぞれの特徴は以下の通りです。(出典元:自動運転にも応用される精緻な画像認識技術、「画像セグメンテーション」とは?事例を交えてわかりやすく解説)セマンティックセグメンテーションとはセマンティックセグメンテーション(Semantic Segmentation)とは、画像を画素レベルで把握するための深層学習を用いた画像認識技術です。画像の領域まで識別するために用いられます。上の図は、セマンティックセグメンテーションにより道路シーンをクラス分けしたものです。「道路」「白線」「標識」「通行人」「自動車」「建物」が領域まで識別されています。物体の種類、位置だけでなく、領域まで識別できる技術として大きな注目を浴びています。セマンティックセグメンテーションの仕組みセマンティックセグメンテーションは、SegNet(セマンティックセグメンテーション向け畳み込みニューラルネットワーク)を活用して実現されています。SegNetは、2015年にケンブリッジ大学により発表された技術です。SegNetは、データを圧縮するための装置「エンコーダ」 圧縮データを解凍するための装置「デコーダ」2つの仕組みを持っており、画像に写る物体をピクセル単体で複数のクラスに分割していきます。エンコーダ部分にはCNN(畳み込みニュートラルネットワーク)が実装されています。デコーダ部分には、CNNが逆実装されていますが、圧縮データを解凍しても画質が劣らないことが大きな魅力となっている技術です。(出典元:セマンティックセグメンテーションこれだけは知っておきたい 3 つのこと)セマンティックセグメンテーションのメリットセマンティックセグメンテーションは、「物体の特定」「物体の位置」「物体の領域」まで識別できることがメリットです。後ほど詳しく解説しますが、各分野で幅広く活用されています。【活用分野】自動運転、画像診断、衛星画像、ロボット、医療診断セマンティックセグメンテーションのデメリットセマンティックセグメンテーションは高精度な画像識別が行えますが、教師データの作成が複雑となり大変です。動画や画像内の物体の領域を指定して、正解ラベルを付けていかなければいけません。また、膨大な数の教師データが必要となります。(出典元:セマンティックセグメンテーションこれだけは知っておきたい 3 つのこと) セマンティックセグメンテーションの活用事例セマンティックセグメンテーションの画像認識技術や仕組みについて理解して頂けたと思います。続いて、セマンティックセグメンテーションの活用事例をご紹介します。自動運転自動運転を実現するLiDARに技術が活用されています。LiDARとは対象物にレーザーを当てて、光が跳ね返るまでの時間から、対象物までの距離や形状を測定する技術です。LiDAR自体は新しい技術ではありません。セマンティックセグメンテーション技術の登場により、車間距離の計算や障害物の判別が行えるようになり、精度が上がり再注目されてきたものです。2021年には、レベル3の自動走行を可能とした自動車が販売され大きな話題を集めています。(出典元:ストラドビジョン、CEATEC 2021に出展 高額なLiDARの代替技術や拡張現実HUD等を発表)医療用画像診断病院で活用されるAI画像診断システムにもセマンティックセグメンテーションの技術が活用されています。東京大学発のスタートアップ会社が開発したアルゴリズムでは、MRA画像データから90%以上の確率で脳動脈瘤が自動検知できるようになったと報告されています。医師の診断業務を軽減するために、AI画像診断システムの導入が進んでいくことでしょう。将来的には、医師では発見が難しい疾患や初期段階の癌なども自動検知ができると予測されており、大きな注目を集めています。(出典元:医療用画像の機械学習を効率化するアノテーションツールを開発、医師による高精度のAI開発を促進~DeepEyeVisionとMENOU、協業による機能拡張~)画像検査河川の監視カメラにも当技術が活用されています。監視カメラの動画から水面の領域を認識して水位を推定し、河川氾濫、浸水被害の発生率の予測にセマンティックセグメンテーションの画像認識技術が役立てられています。地方自治体の防災業務の効率化に貢献するシステムとして大きな注目を浴びているのです。近年は、ゲリラ豪雨による河川越水や道路冠水などの莫大な被害が多発しており、河川氾濫の被害予測の需要は高まっています。そのため、総務省の指示により全国で河川の監視カメラによる水位推定の実証実験が行われています。(出典元:河川の監視カメラ画像から水位を予測 誤差±3.6cmでの推測に成功) セマンティックセグメンテーションを活用したAI開発手法セマンティックセグメンテーション技術を活用したAIシステムはどのように開発していくのでしょうか?続いて、AIシステムの開発方法について解説します。データにラベルを付けるまずは、AIモデルに読み込ませるための教師データを作成していきます。領域が分かる正確なマッピングが必要になるため、高度な技術が問われます。社内で教師データを作成するのは大きな負担となってしまうでしょう。そのため、教師データを作成する場合は、AI開発支援会社へデータ作成を代行してください。また、下記のようなオープンデータセットを利用する方法もあります。【オープンデータセット】Coco、PASCAL Visual Object Classes、Waymo open dataset、Cityscapes Datasetデータストアにデータを保存する大量の教師データを用意できたら、データストアに保存をしておきましょう。データストアにファイルを格納しておけば、ファイルを処理する必要があるときのみ、メモリにデータを読み取ることができます。ImageDatastore(元画像を格納するデータストア)とLabelDatastore(教師データを格納するデータストア)の2つのデータストアにデータを保存しましょう。 データストアを分割するLabelDatastore(教師データを格納するデータストア)の画像をトレーニングデータとテストデータに分けます。一般的にトレーニングデータとテストデータの分割比率は「75%:25%」です。このような比率で教師データを分割していきますが、データの特性に偏りが出ないように注意しましょう。偏りが出ると、精度の悪いAIモデルになってしまいます。CNNをインポートしてSegNet用に変更するSegnetLayersを使用して、エンコーダーとデコーダー、ネットワークアーキテクチャを構築していきます。その後にネットワークアーキテクチャのハイパーパラメーターを設定し、期待通りの効果が出るか評価してください。理想の精度が出たらAIシステムの完成です。SegNetLayersに関しては「MathWorks」を参考にしてみてください。(出典元:セマンティックセグメンテーションこれだけは知っておきたい 3 つのこと)まとめ今回はセマンティックセグメンテーションの画像認識の技術について解説しました。2015年にケンブリッジ大学がSegNetの技術に関する論文を発表したことにより、新たな画像識別技術として注目を浴びました。セマンティックセグメンテーションの技術は、さまざまな分野に技術は活用されています。2021年にはレベル3の自動運転を実現した自動車が発売され、AI技術の注目が集まっています。今後もセマンティックセグメンテーションの画像認識の技術は、あらゆる分野で活用されていくことでしょう。需要が増えていく技術ですが、教師データの作成が難しいという問題点が挙げられています。オープンデータセットを活用する方法もありますが、自社優位性の高いシステム開発には自社データが必要となります。そのため、教師データの作成に悩んだ際は、「FastLabel」までご相談ください。