はじめに

この記事にたどり着いたあなたは、どのような人でしょうか? 新しい技術分野へのチャレンジや起業を志しているエンジニアでしょうか? または、新規プロジェクトを立ち上げたいと思っているマネージャーでしょうか? そういった方々に是非コンピュータビジョンを学んで、活用していただきたいと思っています。

人間が外界から得る情報の8割以上が、視覚からだと言われています。Wikipediaには、"コンピュータビジョン(computer vision)は大雑把に言って、「ロボットの目」を作る研究分野である"とあります。つまり、「8割以上の情報を得ている人間の目をコンピュータとカメラで作ろう」ということです。

さらに近年では、手足のあるロボットだけでなく、ドローン(無人航空機)、自動車の制御、スマートフォンのアプリ、Webサービス、監視カメラなど適用先は幅広いものとなっています。コンピュータビジョンは、普及期に入ったばかりです。まだまだ伸びしろ、ビジネスチャンスがある分野ですので、ぜひ次に習得する技術としてコンピュータビジョンを選択肢に入れてみて下さい。

そのコンピュータビジョンについては、数多くの学術論文や書籍、Slideshare、ブログなどですでに解説されています。しかし、それらのほとんどは、理論の詳細や、どうやって実装するかのみを記述しているもの、特定の技術のみに特化したものです。

それに対し本連載では、どういう技術がすでにあるのか、何に使えるのかに焦点をあて、分りやすく全体像を説明します。また、ベンチャー起業(スタートアップ起業)やフリーランスで活躍されている方へのインタビューを通し、コンピュータビジョン技術がビジネスにどのように活用されているかも紹介していく予定です。

各技術の詳細、コーディング方法などは、学術論文、書籍、Webページで解説されていますので、検索してみてください。

コンピュータビジョンで何ができるの?

コンピュータビジョンの概要を下図にまとめました。目の役割を果たすカメラにより現実世界の様々なものを撮影し、脳の役割を果たすコンピュータにより処理します。例えば、どんな画像なのか? 何が写っているのか? 物体までの距離は何メートルか? を求めます。

また、インターネット上にアップされている写真、動画を処理することもできます。例えば、手持ちの画像と類似した画像をインターネット上から探せます。

もう少し技術的な視点から説明すると、機械の目から見た世界は、0と1の数字の組み合わせで表されるデジタルデータです。膨大な0と1で表される画像、動画をコンピュータで処理して、何が映っているかを自動で判定したり、映っている物体までの距離を計測する技術がコンピュータビジョンです。

図 コンピュータビジョン技術の概要

コンピュータビジョンが何に応用できるか具体的なイメージを持っていただくためにいくつか例をあげてみましょう。

デジタルカメラ、Facebook、エアコンの事例

デジタルカメラやスマートフォンのカメラには、人間の顔を検出して、ピントや露光を制御する機能がすでに搭載されています。また、Facebookでは顔を自動的に検出することでタグ付けを容易にできるようになっています。さらに日立や三菱電機の一部のエアコンでは、カメラが搭載されていて、人を検出することで快適性、省エネ効果を高めることができます。

自動車の自律走行、安全運転支援

カメラ、ミリ波レーダ、レーザレーダのいずれか、またはそれらの組み合わせで、周囲の車両、歩行者、車線を認識し、車を自動で制御する技術があります。完全に自動で走行する車は、まだ研究開発段階ですが、衝突の危険性がある場合に自動でブレーキをかける機能はすでに製品化されています。アメリカでは、自動ブレーキ機能を標準装備にすることが決まったため、今後さらに普及するでしょう。

Google Earthの3次元地図

Google Earthでは、空撮した複数の画像から建物の3次元形状を自動で計測することで、地図の3次元化に成功しました。 一部地域で3次元地図に対応しており、視点を変えて建物などの構造物をいろいろな角度から見ることができます。

コンピュータビジョンの技術が成熟すれば、間違いなく人の生活が変わります。自動車の自動運転が可能になったり、現地に行かずしてリアルな情景を3次元で観ることができるのです。

機械の目は人間の目を越えられるのか?

機械の目は人間の目を越えられるのでしょうか? 私の意見としては、Yesであり、Noでもあります。人工知能が、将棋やチェスでプロに勝つことがたびたび話題になりますが、視覚についても特定のタスクに関してはコンピュータの方が優れているということはすでに起こっています。

例えば、昔流行った「ウォーリーを探せ」のような問題はコンピュータが得意で、人間よりも圧倒的に早くウォーリーを探せるでしょう。また、人混みの人数をカウントする、数多くの画像から類似した画像を探し出す、こういった問題もコンピュータが人間を凌駕できるでしょう。今後も機械の目が人間の目に勝てる領域は増えることは間違いないと思います。

しかし、私の個人的な意見としては、人間と同等の目を作ることは、現在のコンピュータのアーキテクチャでは不可能だと考えています。どこをどう改良すれば可能になるかは分かりませんが、ソフトだけでなくハードウェアの技術革新も必要だというのが私の考えです。

本連載で紹介する技術

具体的には、下記の内容について解説していく予定です。

1) 連載:コンピュータビジョン技術

  • コンピュータビジョンでできること
  • ハードウェアの基礎知識
  • コンピュータビジョンの基礎知識
  • ステレオカメラによる3次元計測
  • 1台のカメラで3次元計測
  • 複数のカメラによる3次元計測
  • 顔検出と追跡
  • 物体認識と姿勢推定
  • 人、物体の追跡処理
  • 動画の解析
  • 一人称視点映像の解析
  • 画像を加工する技術
  • 動画を加工する技術
  • 目に見えないものを見る技術

など

2) コンピュータビジョンを用いたビジネス

  • ベンチャー企業(スタートアップ企業)・フリーランスのインタビュー

3) 国際会議などで発表された最新技術の紹介

連載開始に添えて

コンピュータビジョン分野における、オープンソースライブラリのデファクトスタンダードの地位を確立したOpenCVは、2006年にリリースされました。それまでは、様々な処理を自前でコーディングする必要があり、手法の詳細まで理解していなければなりませんでした。

しかし近年では、基本的な知識さえ押さえておけば、ライブラリを用いてある程度のアプリケーションを実装できます。ライブラリは今後も充実していくと私は考えています。コンピュータビジョンの専門家だけでなく、スマートフォンアプリ開発者、Webエンジニアなどの今までコンピュータビジョンに縁の無かった人でも必須になる時代はそう遠くないでしょう。

また、コンピュータビジョンで必要な知識は、多岐にわたります(機械学習、線形代数、最適化問題など)。それらは、音声の認識や、ビッグデータ解析など他分野でも間違いなく役に立ちます。ドローンのように新たなハードウェアは今後も登場するでしょう。そのときに、コンピュータビジョンの知識は必ず役に立つはずです。

本連載は、林昌希氏の連載「コンピュータビジョンのセカイ - 今そこにあるミライ」の方針を継承して、どういった技術が存在し、それらが何に使われているのかを初学者や専門外の方向けに解説していきます。「コンピュータビジョンのセカイ - 今そこにあるミライ」を読んだことのない方はそちらも是非目を通してみてください。

今回、幸いにもこのような情報発信の場を提供いただけることになりました。この連載を通じて、より多くの方にコンピュータビジョンについて知っていただき、日本のIT技術の発展に少しでも寄与できれば幸いです。

著者プロフィール

樋口未来(ひぐち・みらい)
日立製作所 日立研究所に入社後、自動車向けステレオカメラ、監視カメラの研究開発に従事。2011年から1年間、米国カーネギーメロン大学にて客員研究員としてカメラキャリブレーション技術の研究に携わる。

現在は、日立製作所を退職し、東京大学大学院博士課程に在学中。一人称視点映像(First-person vision, Egocentric vision)の解析に関する研究を行っている。具体的には、頭部に装着したカメラで撮影した一人称視点映像を用いて、人と人のインタラクション時の非言語コミュニケーション(うなずき等)を観測し、機械学習の枠組みでカメラ装着者がどのような人物かを推定する技術の研究に取り組んでいる。また、大学院での研究の傍ら、フリーランスとしてコンピュータビジョン技術の研究開発に従事している。

専門:コンピュータビジョン、機械学習