視覚障がい者に向けたディープラーニングを用いた 物体提示シス...

5
-125- 視覚障がい者に向けたディープラーニングを用いた 物体提示システムの試作 宮 崎 英 一 ・ 坂 井   聡 ・ 谷 口 公 彦 佐 野 将 大 ・ 近 藤   創 要旨 最近,AI 等の普及に伴い,ディープラーニングを用いたシステムはコンピュータやスマート フォンといった ICT デバイスだけでなく,日常生活における TV のリモコン等においても音声認識, 手書き文字認識等の様々な形で我々の日常生活に用いられている。このようにディープラーニング システムが我々の日常に用いられているのは,従来の情報処理システムでは実現出来なかったよう な高い認識精度や広い応用範囲を持つからである。本研究では一般的なコンピュータで利用可能な ディープラーニングシステムを応用して WEB カメラで撮影した動画からリアルタイムで物体認識 およびこれを用いたラベリングを行い,対象物の名称を音声合成で発声するものである。これによ り,視覚障害を持った方でも身の周りの対象物が把握出来る可能性を持つ。 キーワード:物体認識,ディープラーニング,音声合成,視覚障害,機械学習 1.はじめに 現在,ICT 機器の発展に伴い,様々な場面で 視覚障害者をサポートするシステムが多く発 ⅰ,ⅱ されている。その1つの分野に物体認識 がある。視覚障害者における視覚障害はその人 の特性に大きく依存し,全く視力を有さない全 盲の方からわずかながらも視野を有する弱視の 方,また色の見え方等に問題のある方等様々で ある。しかし多くの場面では身の周りの物が見 えない,見えにくいという事が共通項としてあ げられる。そこで何らかの方法で身の周りのも のが分かれば,視覚障害に伴う日常生活の不便 を解消するだけでなく,新たな趣味や就業にま で発展する可能性がある。そのためには,物体 認識がリアルタイムで出来る事が必須であり, さらには研究室レベルの特別なシステムでは無 く,スマートフォン程度のデバイスで物体認識 が実現できる必要がある。 またディープラーニングシステムを自前で構 築する場合には,ディープラーニングが行える レベルの高速なCPUGPUを用いたコンピュー タの使用が望ましい。しかしこれらのコン ピュータの環境を整える以外にもディープラー ニングシステムが必要となり,この学習システ ムの構築にも時間的なコストが要求される。こ のため,誰でもが簡単にディープラーニングシ 1 技術教育 2 特別支援教育 3 高松養護

Upload: others

Post on 28-May-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

-125-

視覚障がい者に向けたディープラーニングを用いた物体提示システムの試作

視覚障がい者に向けたディープラーニングを用いた

物体提示システムの試作

宮 崎 英 一1 ・ 坂 井   聡2 ・ 谷 口 公 彦3

佐 野 将 大3 ・ 近 藤   創3

要旨 最近,AI等の普及に伴い,ディープラーニングを用いたシステムはコンピュータやスマートフォンといった ICTデバイスだけでなく,日常生活におけるTVのリモコン等においても音声認識,手書き文字認識等の様々な形で我々の日常生活に用いられている。このようにディープラーニングシステムが我々の日常に用いられているのは,従来の情報処理システムでは実現出来なかったような高い認識精度や広い応用範囲を持つからである。本研究では一般的なコンピュータで利用可能なディープラーニングシステムを応用してWEBカメラで撮影した動画からリアルタイムで物体認識およびこれを用いたラベリングを行い,対象物の名称を音声合成で発声するものである。これにより,視覚障害を持った方でも身の周りの対象物が把握出来る可能性を持つ。

キーワード:物体認識,ディープラーニング,音声合成,視覚障害,機械学習

1.はじめに 現在,ICT機器の発展に伴い,様々な場面で視覚障害者をサポートするシステムが多く発表ⅰ,ⅱされている。その1つの分野に物体認識がある。視覚障害者における視覚障害はその人の特性に大きく依存し,全く視力を有さない全盲の方からわずかながらも視野を有する弱視の方,また色の見え方等に問題のある方等様々である。しかし多くの場面では身の周りの物が見えない,見えにくいという事が共通項としてあげられる。そこで何らかの方法で身の周りのものが分かれば,視覚障害に伴う日常生活の不便を解消するだけでなく,新たな趣味や就業にま

で発展する可能性がある。そのためには,物体認識がリアルタイムで出来る事が必須であり,さらには研究室レベルの特別なシステムでは無く,スマートフォン程度のデバイスで物体認識が実現できる必要がある。 またディープラーニングシステムを自前で構築する場合には,ディープラーニングが行えるレベルの高速なCPUやGPUを用いたコンピュータの使用が望ましい。しかしこれらのコンピュータの環境を整える以外にもディープラーニングシステムが必要となり,この学習システムの構築にも時間的なコストが要求される。このため,誰でもが簡単にディープラーニングシ

1 技術教育2 特別支援教育3 高松養護

-126-

宮 崎 英 一 ・ 坂 井   聡 ・ 谷 口 公 彦 ・ 佐 野 将 大 ・ 近 藤   創

ステムを準備するには負担が大きい。 そのため,本研究ではまずは基礎的なレベルでこれらの目的を達成できるシステムの構築を目指すものとした。そこでシステムの前提条件として,

 1 )一般的なコンピュータとWEBカメラを提示システムとして利用

 2)物体認識はリアルタイムで行う 3)学習済みモデルを導入

 本研究では,これらの前提条件をクリアできる物体認識システムが構築出来た後,個人の環境に適応した学習モデルの構築を行う予定である。 今後,個別の学習モデルが構築出来れば,「おかあさん」や,「坂井先生」といった自身の身の回りにいる個別情報を認識出来るようになるので,視覚障害者の方の日常生活の質向上が期待出来る。

2.物体認識について 物体認識とは,画像中の物体の位置を検出し,その物体の名前を決定するものである。この分野はマシンビジョンとして古くから研究されてきた分野であり,最近では自動車の自動運転においての利用が盛んである。 物体認識の代表的な例を図1ⅲに示す。ここでは認識システムに撮影された画像に自動的に「dog」「bicycle」「truck」の3つの対象物の名称及びその位置が示されている。 ディープラーニングで物体認識を行う場合,このように事前に学習された学習モデルを用いて物体認識を行うため,当然ながら学習されていない物体は認識されていない。また,認識精度を向上させるためには,学習モデルの構築においても多くの画像データを準備する必要がある。更に多くの画像データを用いて学習モデルを構築するには,(勿論,学習モデル自体さえディープラーニングにより,自動的に構築させる事も可能であるが),使用者がディープラーニングのモデル構築を十分に理解している必要

がある。 更に,今回のような視覚障害者を支援する場合では画像認識をリアルタイムで行う必要があるため,精度の高い学習モデルと同時にリアルタイムで認識できる学習モデルが必要となる。そこで本研究では画像認識モデルとして「YOLOv3ⅳ」を用いた。YOLOv3は速度を犠牲にし,より高精度な検出を可能としている。このモデルの特徴ⅴは, 1)ロジスティック回帰によっての分類 2)異なるスケールでボックスを予測 3)アップサンプリングである。現在,物体認識システムとして数多くのモデルが存在するが,YOLOv3は高速で精度の高いモデルと言われている。そのため,本研究では,このモデルを物体認識システムに採用した。

3.物体提示シスム 上記で述べたように本研究では,コンピュータ(windows10)上でYOLOv3を用いた画像認識システムを構築した。システム構築の手順としてはWEB上に記載されている手順ⅵ に沿って行った。3.1 環境構築1)仮想環境の構築 YOLOv3の環境構築には,いくつかの手法があるが,ここではAnacondaⅶを用いた。

図1 物体認識結果

-127-

視覚障がい者に向けたディープラーニングを用いた物体提示システムの試作

Anacondaはデータサイエンス向けのPythonパッケージなどを提供するプラットフォームであり,科学技術計算などを中心とした,多くのモジュールやツールのコンパイル済みバイナリファイルを提供している。そのため,簡単にPythonを利用する環境の構築が可能である。2)必要なライブラリのインストール YOLOv3の動作に必要なライブラリをインストールする。ここでは「pandas」,「opencv」,「pytorch」等のライブラリを追加インストールした。3)YOLOv3のインストールと設定 上記でインストールしたPyTorchでYOLOv3を実行する環境と,YOLOv3の学習の重みファイルをgit等を用いてダウンロードする。 これだけで,YOLOv3を用いた物体認識システムの構築が完了できるので,比較的時間的な導入コストが低いと言える。3.2 静止画認識 まずは,上記でインストールしたシステムが正常に動作しているかを確認するために静止画を用いてのテストを行った。ただし,予めインストールされていたデモプログラムでは認識を行うものの,認識結果画像が保存出来ていな

かった。そのため,文献ⅷに記載されているようにデモプログラムのソースコードを一部改変している。 これを用いて静止画の認識結果を図2に示す。ここでは[clock],[bottle],[cell phone]の3つが認識されているが,実施は,それぞれが,[時計],[ステックのり],[充電器]である。[ステックのり]及び[充電器]に関しては用いた学習モデルに本来存在していないので,正確には認識できない。よって,時計の認識だけでも,十分な精度を持つことが示されている。この解析時間は0.135秒であり,高速性も確認できた。3.3 動画認識 続いて,動画のリアルタイム性を検証するためのテストを行った。ここではコンピュータにWEBカメラを接続し,動画を撮影している。動画認識のデモプログラムはコンピュータに保存されている動画ファイルを認識する。そのため,ここではWEBカメラからの画像をリアルタイムで認識出来るようにソースコードのカメラ有効化ⅸを行った。その結果を図3に示す。ここではリアルタイムで「キーボード」,「マウス」,「ハンドバック」の3つが正しく認識されており,それぞれの対象を音声で発声出来た。 この場合の測定数は平均して1秒あたりに0.6~0.8フレームであった。音声合成を行わない場合には平均して1秒あたりに7~9フレーム認識を行うので,音声合成により10倍近く遅

図2 静止画における物体認識 図3 動画での物体認識

-128-

宮 崎 英 一 ・ 坂 井   聡 ・ 谷 口 公 彦 ・ 佐 野 将 大 ・ 近 藤   創

くなる事が示された。3.4 音声合成 本研究では,音声合成において espeakⅹを用いた。Espeakは,多言語ソフトウェア発話シンセサイザであり,コマンドラインから制御可能である。このため,本研究では,pythonのsubprocessモジュールを用いて制御ⅺを行った。具体的には下記に示すようなコマンドでpythonから espeakに labelで定義された単語を発声させている。labelにはYOLOv3で認識された物体名が代入されるので,撮影された動画の各フレームごとに音声合成を行う。この結果,本方法では,撮影された動画に多くの認識対象が存在すれば,それらを全て読み上げるので,読み上げ時間が余分にかかるという問題点がある。

subprocess. call(‘espeak’ + label, shell =True)音声合成コマンド

音声合成コマンド

4.今後に向けて 上記でテストした結果,今後に向けてのシステムの改善点もある事が示された。 1)オリジナル学習モデルの構築  本研究では,事前に計算された学習済みモデルを用いたので,簡単に物体認識システムを構築する事ができた。その反面,事前に学習されている物体しか認識出来ないので,個人の生活環境に対応出来ていない。そのため今後は独自の学習用データセットを準備し,学習モデルを構築する必要がある。 2)日本語音声への対応  今回は音声合成に関しては,英語のみの対応であった。しかしこれも実際には日本語でないと家庭での使用は出来ない。よって,この部分を日本語が発声可能なシステムに変更する必要がある。

5.おわりに 本研究では,ディープラーニングを用いてリアルタイムで物体の認識を行い,この物体の名

称を音声で提示する事が出来た。 しかし実生活においては物体の認識だけでなく,対象物の距離や正確な方向といった情報も併せて必要な場合がある事もわかった。今後はこれらの情報を合わせて提示出来るようなシステムとして改良を行い,視覚障害者の日常生活の質を向上させるデバイスの開発を目指すものである。

6.謝辞 本研究は,令和元年度「重度重複障害児のコミュニケーション獲得性に向けた支援者支援ディープラーニングシステムの試作(課題番号:19K11417)」の一部として行われたことを記して謝意を示す。

7.参考文献ⅰ 視覚障がい者の学びを支えるための物体認識システムの構築,森田賢太・栗原恵莉奈・森田直樹・高瀬治彦,2016 PC Conference,pp.283-2862016

ⅱ 学校の職員が管理できる物体認識システム―視覚障がい者の学校生活を支えるために―,森田賢太・森田直樹・高瀬治彦・田畑 忍,コンピュータ&エデュケーション VOL.41,pp.52-57,2016

ⅲ Tutorial: Build your own custom real-time object

classifier,https://towardsdatascience.com/tutorial-build-

an-object-detection-system-using-yolo-9a930513643aⅳ YOLO: Real-Time Object Detection https://pjreddie.

com/darknet/yolo/ⅴ YOLOv3 論文訳, h t t p s : / / q i i t a . c o m / m d o4n t6n / i t e m s /7c d5 f106

adc775e5d92bⅵ YOLOv3をCPU環境でpython使ってリアルタイム画像認識を動かしてみた h t t p s : / / q i i t a . c o m / d a i a rg / i t e m s /03c55c82 f d c 6e623bf07

ⅶ 環境構築ガイド〉Anaconda

https://www.python.jp/install/anaconda/index.htmlⅷ Images are not being saved in the det folder #92 https://github.com/ayooshkathuria/pytorch-yolo-v3/

issues/92ⅸ Macで物体検知アルゴリズムYOLO V3を動かす,

-129-

視覚障がい者に向けたディープラーニングを用いた物体提示システムの試作

http://starpentagon.net/analytics/yolo_v3_on_mac/ⅹ パッケージ: espeak (1.48.04+dfsg-1) https://packages.debian.org/ja/jessie/espeakⅺ Making speech with Python

http://machakux.appspot.com/blog/44003/making_speech_with_python