AI開発のハードルは低い、コロナ禍に対応する混雑検知システムの開発に学べAIアプリケーション開発

注目を集めるAIだが、その開発は容易ではないイメージが強い。しかし、実際にはオープンソースソフトウェアやさまざまなツールを活用することにより、複雑なプログラミングなどを行わなくてもAIアプリケーションを開発できる環境は既に整っている。技術商社のマクニカが開発した「コロナ対策混雑検知システム」はそのことを端的に示す事例になっている。

» 2020年12月14日 10時00分 公開
[PR/MONOist]
PR

 製造業が活用を推し進めているデジタル技術の中でも最も注目を集めているのがAI(人工知能)だろう。特に、画像データを活用するAIについては、GPUをはじめとするパワフルなデバイスの登場によって急速に技術が進歩したこともあり、新たな可能性として期待されている。ただし、これら新しい技術の取り込みは容易ではないイメージが強く、そういった心理的障壁が導入に向けたハードルになっていることも多い。

 だが、実際にはオープンソースソフトウェアやさまざまなツールを活用することにより、複雑なプログラミングなどを行わなくてもAIアプリケーションを開発できる環境は既に整っている。その事例を端的に示すことで、多くの技術者にAI開発に取り組んでもらうための提案活動を進めているのがAI/IoTにおけるトータルサービス/ソリューション・プロバイダーであるマクニカだ。

 マクニカ クラビス カンパニー 技術統括部技術第4部 第1課 課長の戸羽健夫氏は「画像データを活用したAIアプリケーションのアイデアを持っている人はたくさんいますが、AI開発が難しいというイメージもあってか気軽に取り組んではいただけていないのが現状です。この状況を打破すべく、実はこんなに簡単にAIアプリケーションを開発できるんだ、ということを分かりやすく伝えるための取り組みを進めています」と語る。

混雑検知をリアルタイムかつスタンドアロンで行うシステム

 マクニカが示す事例の第1弾となるのが、コロナ禍における“密”を避けるため、店舗やイベント会場、宿泊施設などで採用が検討されている「コロナ対策混雑検知システム」である。

開発した「コロナ対策混雑検知システム」の表示画面 開発した「コロナ対策混雑検知システム」の表示画面(クリックで拡大)

 今回開発したコロナ対策混雑検知システムの仕組みは以下のようなものだ。まず、カメラで撮影した画像データに対してAIを用いて人物検知を行う。この人物検知の結果をデータとして整理した上で、モニターなどを使って混雑状況を見える化したり、混雑が一定以上になったらスマートフォンなどに警告を送ったりする。そして、これらの混雑検知をリアルタイムかつスタンドアロンで行うエッジデバイスとして仕立てる。

 用意するハードウェアとしては、NVIDIAのエッジAIボード「Jetson Xavier NX 開発者キット」とUSB接続のカメラとmicroSDメモリカードだけでOK。ソフトウェアとしては、Jetson Xavier NXのユーザーであれば無償で利用できる画像処理用ソフトウェア開発キット「DeepStream SDK」の他、オープンソースソフトウェアとして知られるシステム間のデータの受け渡しを仲介するミドルウェア「Kafka」とコーディング不要のローコード開発ツール「Node-RED」を用いる。人物検知のAIについては、一から学習する必要はなく、一般公開されているAIモデルである「DetectNetV2」と「ResNet10」を利用している。

「コロナ対策混雑検知システム」の概要 「コロナ対策混雑検知システム」の概要(クリックで拡大)

 これらを組み合わせて幾つかの設定を行うだけでコロナ対策混雑検知システムが完成するわけだが、この簡単なAIアプリケーションの開発で重要な役割を果たしているのがDeepStream SDKだ。カメラから得た画像データを処理するには、キャプチャーやデコードなどのプロセスを経る必要があり、さらにこれらをリアルタイムで処理するにはGPUに合わせ込む必要がある。DeepStream SDKは、NVIDIAのGPUに合わせて最適な性能が出せるように処理を実行してくれる上に、混雑状況の見える化などに求められる検知対象へのトラッキングなどにも活用できる。

「DeepStream SDK」の構成 「DeepStream SDK」の構成(クリックで拡大)

 そして、リアルタイムかつスタンドアロンで混雑検知を行うエッジデバイスを実現する上で、Jetson Xavier NXの極めて高い処理性能が一役買っている。マクニカ クラビス カンパニー ビジネスソリューション第1営業部 第2課 課長の山田智教氏は「Jetson Xavier NXをはじめとするJetsonシリーズの最大の特徴は、高性能のGPUを組み込みボードに搭載していることです。他の組み込みボードでは、画像データを扱うAIを運用するには非力なこともありますが、Jetsonシリーズであればその心配はありません」と強調する。また、ほとんどのAIの開発でNVIDIAのGPUを用いられていることを考えれば、その開発したAIを実装する先にNVIDIAのGPUを用いることで、AIの性能を落とすことなく短期間で実行できるというメリットも得られる。

入社2年目の若手エンジニアが約1カ月半で開発

 このコロナ対策混雑検知システムは、マクニカの熟練のAIエンジニアではなく、入社2年目の若手エンジニアが約1カ月半で開発したことも重要な事実になるだろう。「それくらい手軽にAIアプリケーションを開発できる環境が既に整っているということを多くの方に伝えたいです」(戸羽氏)。なお、システムの詳細はGitHubで公開されているので、興味のある方はアクセスしていただきたい。

 コロナ対策混雑検知システムに続くAIアプリケーションの事例としては、駅のホームなどに置き忘れたカバンなどの忘れ物を検知するシステムを開発中だ。コロナ対策混雑検知システムでは、一般に公開されている学習済みのAIモデルを用いていたが、忘れ物検知システムでは検知する忘れ物について学習を行う必要がある。「忘れ物検知の定義やAIモデルの学習というと、一気にハードルが上がるイメージがあるかもしれませんが、そうではないことを感じていただけるようなものに仕上げたいと思います。コロナ対策混雑検知システムと同様にGitHubで公開する予定です」(山田氏)としている。

コロナ対策混雑検知システムについて解説するオンラインセミナーを開催!

 本記事で紹介したコロナ対策混雑検知システムを開発した入社2年目の若手エンジニアによる無料オンラインセミナーを開催します。開発で苦労した点をどう乗り越えたのか、オープンソースソフトウェアを活用した開発でつまずくポイントなどについてビギナー目線で解説します。

セミナー名:コロナ対策混雑検知システムを作ってみよう〜入社2年目の若手エンジニアの奮闘記録〜

開催日時:2020年12月17日(木)13〜14時

参加登録Webサイトhttps://www.macnica.co.jp/business/semiconductor/events/nvidia/135283/

Copyright © ITmedia, Inc. All Rights Reserved.


提供:エヌビディア合同会社
アイティメディア営業企画/制作:MONOist 編集部/掲載内容有効期限:2021年1月13日