コンピュータビジョン (Computer Vision)

1. コンピュータビジョン (Computer Vision)とは [概要]

コンピュータビジョン (Computer Vision)とは,計算機(Computer)が実行する視覚(Vision)的システムの技術を取り扱う,コンピュータサイエンス分野の1つである.ソフトウェア上での処理をイメージするが,レンズやカメラ機構などの撮像系も含めた,視覚処理すべてをコンピュータビジョンと呼ぶ.

※ 仮に日本語に翻訳するとすればそのまま「計算機視覚」であるが,やはり日本語だとコンピュータビジョンがしっくり来る使われない)

この記事では,コンピュータビジョンの3つの時代の概要を,トピックの列挙によって簡潔に行う(2節).また,アカデミック的な技術的に歴史を追うだけでなく,ビジネス・産業的な流れも3時代で,同時に追っていく構成にした.

この記事では,ディープラーニングの用語記事の一覧コンピュータビジョンの用語記事の一覧のような「おおまかな構成 」の提供に加えて,アカデミック・ビジネスの双方の視点からの「3時代における,CV・DLの歴史」を,今後繰り返し確認ができるようなサイト全体の基点ページの提供を目指したい

コンピュータビジョンむけのシステムの入力は,動物の目と一緒で,画像・映像・3D点群などの,視覚データ(Visual Data)が用いられる.その入力を元に,各種のアルゴリズムや信号処理演算により,(1) 画像を編集・補間・修正した結果を出力したり,(2) 認識・生成・予測のための機械学習モデル(特にDeep Neural Network)を学習する.また,パターン認識が登場以前のコンピュータビジョンは,幾何(Geometry)測光(Photometry)への興味が2本柱であったこともあり,対象物体の「3D形状・3D光学特性を再構成する」こともよく行う.

2000年を超えたころから,コンピュータビジョンでも,当時の最先端の機械学習・パターン認識の技術や,手作り画像特徴の発展で物体認識物体検出が高精度化・多クラス対応・対象の変形への対応が可能になりはじめていった.更に2010年代後半からは,ディープラーニングCNNの急成長とあいまって,画像認識・動画認識の認識精度の向上が著しい.一方,GANやVAEの登場で,これまではなかった画像生成・画像対画像変換も登場した.

また,機械翻訳分野を皮切りとするseq2seq with アテンションや ,その発展型であるTransformerと事前学習のBERT,GPT-2・GPT-3 が登場して以降も,自然言語処理や音声・音響処理ともに連携するマルチモーダル(クロスモーダル)な認識・生成技術の発展も著しい.更にその流れは、2020年頃以降は,CLIPやDALL-EなどのV-Lモデルの急成長や,T5の登場に伴い加速しており,コンピュータビジョンも,その「モーダル横断的な枠組み」の1分野として技術進化が進んでいる.

列挙した各問題や技術については,詳細までは述べない.詳細を知らない方は,リンクしてある子記事や,参考書籍に元論文等をたどっていただきたい.

※ 3節以降に,産業目線での各技術の議論や,各技術の意義・功罪・モラルなどについても,書き加える可能性あり.

1.1 コンピュータビジョンにおける予測モデルの典型的なシステム構成

コンピュータビジョン (Computer Vision) の典型的なシステム構成
図1 コンピュータビジョン Computer Vision の典型的なシステム構成

2節で3世代をたどる前に,その中で出てくる各問題への見通しがよくなるよう,「コンピュータビジョンで組む,典型的なシステム構成」(図1)を,先に簡単にだけおさらいしておきたい.

コンピュータビジョンの予測システムでは,まず,画像や,画像列(動画)・画像集合(複数視点)を入力とする.このとき, 入力と同じサイズの(1) 深層生成モデル・変換モデル (Encoder-Decoderでよく組む)と,(2)認識・予測モデル(CNNTransformer-Encoderでよく組む)の2種類に大別できるので,図1ではそれをいっしょくたに表現し図説することをこころみた.

生成モデル(変換モデル)では,同じサイズの画像(or 画像群)をDecoderをもとに,中間表現から復元して出力する.画像対画像変換や,画像スタイル変換,に,密予測(Dense Predicition)問題における,画素ごとの予測値(ステレオマッチングオプティカルフロー意味的分割)などをDecoderで復元する.

一方,認識モデルでは,クラス分類結果(物体認識)や,物体ROI + クラス(物体検出)に,6DoF Pose (物体姿勢推定),Keypoint(人物姿勢推定)などを,入力画像をEncodeした結果の特徴ベクトル群(特徴マップ)をもとに推定する.

また,最近のコンピュータビジョンでは,入力に補助入力やクエリーを用いるアプローチも多い.画像検索などでは,クエリーにも(第2の)入力画像を入れたり,もう少し中間表現化したものを補助入力としてニューラルネットの途中に加える.また,V-Lなど,文記述などの他モーダルのクエリーを入れることも多い.加えて,少数ラベル付き画像からの学習では,サポート画像(Few-shot学習)を元に,短時間で住むモデル適応(メタ学習やプロトタイプ学習)を行うことも多い.

1.2 コンピュータビジョンの応用先

主なコンピュータビジョンの応用先を,概要的にだけ列強しておきたい.

管理人は,大学に博士を取りにもどったが,基本的には企業との共同研究や,大手企業やベンチャーでの仕事にずっと携わっているので,この1.2節で各内容は,とても「産業応用目線」の度合いが強い(逆に,アカデミックな目線での,各技術の変遷は2節で整理する).

つまりは,「世の中,どういうところにどういったビジョン応用のユーザーが増えたか」「しかし,過去はそうでなくここまでしか達成できなかった」とか,「これこれこういうきっかけがあって移行,ユーザーが新たに増えてここで需要が拡大している」という話をしていく.つまりは,経営目線や営業目線はもちろん,ビジネス潮流をまとめる目線で,この1.2節をまとめていきたい.

1.2.1 マシン・ロボットビジョン

初期のロボット研究における古典的ビジョン

初期の視覚系の基礎的な産業として成り立つ前の時代(60年代や70年代)の研究は,それこそMITやStanfordなどの先進的な研究質における,機械のビジョン部分を担当する「マシンビジョン(Machine Vision)」であった.初期の当時は今のようなパターン認識が使えないので,複雑なものは検出・認識できず,ロボットが取り扱いやすい正方形や球などを対称に,エッジ検出やハフ変換などの古典的な技術でプロトタイプ的形状の物体のみを認識できていた.よって,より複雑な物体認識やシーン理解を薦めていくため,3次元シーンの幾何的・測光的な性質を復元する技術の初期研究が,行われた(平行ステレオマッチングやフォトメトリックステレオに,アクティブステレオなど).

その語,80年代〜90年代に入ると,「テンプレートマッチング」系の技術や「平行ステレオカメラ」の技術などをもとに,工場での概観検査などのロボットビジョン系の技術を皮切りに,少しずつ画像認識の産業応用が始まる.

深層学習ブームと平行した,移動式ロボットへの導入

3次AIブーム終了以降の,2021年以降では,工場で高度なロボットビジョン (Robot Vision)システムがロボットに搭載され活躍するのは当たり前となってきている.Amazonの巨大配送基地での,移動式ロボットによる棚卸し自動化や,自動車工場でのアームロボットによる半自動製造など,製造業における工場のロボットの発展速度が著しく,そこには深層学習で高度な画像認識が可能になってきているコンピュータビジョン業界の発展が大きく関わってもいる.

製造業では,そうしたロボットビジョン部分の点群処理の発展が実用段階に以降移行し,それまで静止したロボットや外観検査システムで主に用いられてきたロボットビジョン・マシンビジョンの技術が,移動ロボットへも移行している.例えばiRobot社のルンバ™や,そのフォロワーによる掃除ロボットなどの移動式小型ロボットが,家庭内に家電として入ってきている.

※ センサーとしてカメラ使われておらず,SLAMにビジョン技術がまだ貢献していない小型移動ロボットも多かったことには注意.

自動車業界でも,ADAS(自動ドライバーアシストシステム)の進展が続き,ステレオカメラやミリ波レーダーを活用した,自動ブレーキ機能が高級車から導入されていき,最近ではオートクルーズ機能が搭載される高級車も出てきている.また,コロナをきっかけに,外食産業レストランでも自動配膳ロボットの導入や,オフィス掃除・見回りロボットなども導入されている.更には,配送ビジネスの拡大により,アメリカでは自宅まで出前を配達してくれるロボットカーも登場しているなど,ロボットカーやドローンによる物の配送の話が進みつつあり,このロボットの自動移動にはロボットビジョン技術が欠かせない(特に点群処理).

1.2.2 スマホ画像・動画での応用

(2.1節でも述べるが),画像特徴量ベクトルの技術が,SVM・Boostingなど連携しはじめた2000年頃移行は,「スマートフォン普及」に伴い,スマートフォンで撮影したin the wild なデジタル画像・動画に対して,各種の画像認識や画像動画編集をする機会が増えていった.

画像編集アプリや動画編集アプリの大衆化

また,コンピューテーショナルフォトグラフィの技術が,スマートフォンの後処理として画像編集ソフトで使用されてくるようになった.パッチマッチ(Adobe)による画像の削除領域自動補間が画像編集アプリで手軽に使えるようになった.もとは映画会社向けの高級な拡張であった,SLAMによる3D対象追跡での3Dオブジェクト合成も,手軽に動画編集ソフトで行えるようになってきている.

最近のスマートフォンでは,HDR処理機能による,白飛び黒飛びのない撮影の自動合成できる.また,画角・焦点距離(+ F値, 画角)の異なる2~3眼の望遠/広角カメラペアが装備されたスマートフォンでは,対象までの距離に則したカメラの選択や,複数カメラからの画像を合成することで,後処理のバリエーション(ボケの活かしかたや,ポートレート撮影)も増えている.以前は高級なデジタル一眼を所有しているような写真が好きなひとだけが行っていたことが,インスタグラムの人気などもあって,「プロ的写真撮影」が大衆化している.

Appleの「写真アプリ」など,自動的に物体検出やシーン認識に,顔認証(クラスタリング)を行い,半自動アルバム整理する技術も身近になってきている.紅葉の写真が勝手にたまると,これ系のアルバムアプリは「紅葉の思いで」と紅葉画像のみを自動アルバム化してくれる.また,子育て中の家庭の多くは,クラウド型の写真アルバム共有アプリを使用するようにもなり,実家の祖父母に赤ちゃんの成長をアプリ経由で共有する時代にもなった.以前は,こうしたの人物認証技術は,監視カメラによる犯人追跡や同定むけに使われていたのが,一般家庭での娯楽むけに別応用されていったたとも取れる(逆に言うと、監視社会化が進展しているので気を付けるべきとも言えよう).

1.2.3 T.B.D. (応用3)

T.B.D.

2. コンピュータビジョン の3時代における主要トピック

このサイト(もとい管理人の目線)では,コンピュータビジョンの世代について,ディープラーニング(深層学習)を基準とした,以下の①〜③の3つの年代に分類することとしたい:

この3時代で,時代ごとに主にアカデミックな「研究分野の進展」の目線で,それぞれの時代の概観を述べていきたい.同時に実用例やビジネス応用の目線の話も,ある程度述べていく.

以降の2.1~2.3節では,①〜③の時代で新しく出てきた話題を,順にリスト形式で手短にだけ紹介する.各節では,その時代のビジネス的なトピックを提示したのち,研究でよく取組まれた主要タスクや技術を列挙する.

※ 必ずしも網羅的ではないのは,ご容赦いただきたい.多くを列挙しようとすると,各リストの簡潔性が薄まってしまうので.とはいえTwitter等で,「これはさすがにあったほうがいいでしょう」と追加をリクエストをしていただくのは歓迎.

2.1 ① 昔のコンピュータビジョン (2013年ごろより以前)

深層学習・AIブームに突入する前の時代(2010年ごろ以前)に,コンピュータビジョン・マシンビジョン界隈でよく解かれていた問題には,例えば以下のようなものがある(※あくまで抜粋である):

  • 古典的なCV技術全般(OpenCVで,機械学習無しで使えるような技術)
    • 画像処理 (より良い画像フィルタ,ブラー除去,超解像など)
    • マルチビュー幾何:
    • カメラキャリブレーション
    • FFTによるCT画像のフーリエ再構成
    • オプティカルフロー,Keypointマッチングによる画像間の密な対応付け.
  • マシンビジョン・ロボットビジョン・外観検査など
    • テンプレートマッチングによる良品識別や,ゴミ・傷検出など.
  • 物体認識において,機械学習の本格的活用が開始(2000年ごろ~)
    • Webレベル画像検索の開始(Googleなどによる,先進的な実用化の試み)
    • カーネルSVMや,Latent SVM の流行
    • BoostingやRandom Forestなど,アンサンブル学習モデルの使用も標準化.
    • 画像検索と認証技術むけの,距離軽量学習の進展.
    • 映像認識(TRECVIDコンペティションの開始)の先駆的研究が開始.

2.2 ②深層学習を用いた コンピュータビジョン (2013頃~2019頃まで)

AlexNetでCNNがブレイクした2012~2013年以降,コンピュータビジョンや自然言語処理,音声・音響分野などではディープラーニングへの移行が始まった.少なくともアカデミック側では,2015年~2016年頃までには,ディープラーニングで問題に取組むのが主流となっていた.

この期間に,産業応用やビジネス目線では,以下のようなトピックがあった:

  • 自動運転の研究開発競争化で,関連3D技術がブームに.
  • GoogleやFacebookに,ディープラーニング系専門の研究所が誕生.AIブームとあいまって報酬が大学より多いため,Ph.D取得者だけでなく,教員の各ラボへの移籍も始まる.
  • DeepMindや Google Brainなど,以前はスタンフォードやCMU, MITなどが担当していたような高度基礎研究を得意とする,エリート少数精鋭部隊によるラボが誕生.
  • 「ネットショッピング需要増による,Amazonなど巨大倉庫むけのロボット自動化.
  • 顔キーポイント追跡による,スマホフロントカメラでの顔デコレーションのブーム
  • AWSを皮切りに,クラウドサービスが定着化
    • 各社クラウドにVision APIを提供
    • 専門性がなくとも画像認識を使用しやすくなった(=コモディティ化).
  • NVIDIA社が,GPUの深層学習活用に路線を強める.
    • ゲーム,グラフィックス業界が主戦場だったゆえ,深層生成モデル(特にGAN)による画像生成や,画像対画像変換,画像編集に強い研究チームとなり,分野を先導.
    • Adobe社など画像・動画編集業界の大手企業も,この深層学習研究の流れに追随.
  • デジカメの進化(レンズ撮像系,画像処理・画像認識の両面)

そして,その時代のなかで,アカデミックでは,以下のような話題が新たに登場・進展・流行した:

  • 主要タスクのDeepCNN化の成功 (2013~2017年ごろ):
  • Google,Facebookなどで新設された大企業ラボも巻き込んだ,CNNバックボーンの提案の競争.
  • ResNet 時代到来:各画像認識問題が,まずは教師あり学習できちんと学習できた.
  • ロボットビジョン目的の,物体の6DoF Pose推定.
  • そこでCNN教師あり学習の「データセット用意の不便さ」を解決したい:
    • 少数ラベルからの学習の追求が開始(弱教師あり,Few-shot学習).
    • アノテーションやデータ拡張の研究も盛んに.
    • ドメイン適応:
      • 少数未知ドメインデータ(昼夜変換や季節変化)への適応.
      • 実画像認識モデルから,イラスト画像への適応
  • 画像向けの深層生成モデルの登場(GANVAE).
  • Triplet lossによるランキング学習の登場により,Deep Embedding学習が容易に.
  • 3D点群処理ネットワーク(PointNetなど)の登場.
  • seq2seq with attentionの登場:系列変換問題が初めて手身近に解けるように.
    • これで解きやすくなったVision-Language研究がブームに.

2.3 ③Transformer登場以後のコンピュータビジョン (2019頃以降〜)

産業応用やビジネス目線では,以下のようなトピックがあった:

  • 大規模クラウド流行により,動画コンテンツ時代が到来.
  • コンテンツメディアや放送のサブスクリプション型への移行 (NetflixやDAZN)
  • 若年層から順に,テキストメッセージSNSから,動画SNSへとユーザーが移動:
    • SnapChat/Instagram/Tiktokによる,ショート動画の時代へも突入
  • Youtubeによる,動画メディア・放送の大衆化.
    • 動画編集アプリと,そのための技術の重要が増加中
  • スマホ自撮りや、VLOG用途の増加.
  • ドローン需要増に伴う,ドローン動画撮影や点群取得の需要増加

アカデミック側では,以下のような技術の進展があらたに起こっている:

  • 系列変換にTransformerが登場.BERT, GPTの登場にもすぐ繋がる.
  • 事前学習として,教師なしの自己教師有り学習が威力を発揮し人気に.
  • VisionやVision-Languageも,(RNNベースから)Transformerへ移行(ViT, DETRなど).
  • 単体画像だけからの3D物体メッシュ再構成が盛んに.
  • Neural Field,特にNeRFの流行.
  • (T5の登場の影響などで) 複数タスク統合のUniversal モデルの流行.

関連書籍

References

参照外部リンク