米Qualcommは8月16日(現地時間)、同社の「Spectra ISP」の第二世代に関する発表を行った。このSpectra ISPの第二世代に関して、今年7月に開催されたSIGGRAPH 2017に合わせて説明会が行われたので、その内容をお届けしたい。

今回発表されたのは、第二世代Spectraと、これと組み合わされる「SMP(Spectra Module Program)」である。まずSMPに関しては、これは初代Spectra ISP(こちらは2015年にリリースされた)向けのソリューションである(Photo01)。

Photo01:SMPの概念。性能やコストにあわせて複数のカメラモジュールが用意される

あらかじめSpectra ISPに対応したカメラモジュールを用意しておくことで、スマートフォンメーカーが迅速にシステムを構築できるようにするというものだ。さてそのSMPだが、第二世代Spectra向けには、3種類のモジュール形態が提供されることになった(Photo02)。まず虹彩認識に関しては、赤外線センサを利用して40ms以内に認識が出来るほか、写真とか3D造形のマスクなどと本当の人間をきちんと区別できること、またサングラス越しにも認識できるといった特徴が挙げられた。ただしこれをどうやって実装したかについては「我々が開発してきたさまざまなアルゴリズムを組み合わせたものだが、具体的には説明できない」とされた。これを利用する場合は、通常のフロントカメラに加え、Photo03にもあるように赤外線センサモジュールが必要になる。

左から虹彩認識、パッシブ距離測定、アクティブ距離測定となる

生体反応認識(Liveness detection algorithms)が肝の1つで、デモでも大きく取り上げられた

次が深度センサ。写真だけでなく、XRあるいはさらなる生体認識に向けて深度センサが利用できる、とする(Photo04)。方法としては、低価格向けにはステレオカメラが、高価格向けにはIRによるセンシングが用意される(Photo05)。低価格向けはいわゆるステレオカメラを利用して、視差から距離を測定するという方式であり、低価格向けにはこれで十分としている(Photo06)。OpenCVでライブラリが提供されるステレオカメラそのものと考えれば理解が早いだろう。

背景をぼかすために深度センサを使うというのはなかなか斬新である。もっとも現状そこまでの精度があるかどうかちょっと微妙だが

Active Depth Sensingは、さすがにLIDARではない

この方式の欠点は、2つのカメラの距離が十分にないと精度が落ちること、それと水平方向での距離は測定できるが、垂直方向の距離は測定できないことだ。まぁそこまでの能力は、低価格向けには不要だろうが

一方、高価格向けには、IRイルミネータを利用してパターンを照射し、これをIRカメラで捕らえてパターンから距離を測定するというものだ(Photo07)。実際、これを利用して手の動きをライブで再現するデモも行われた(Photo08)。

例えば正方格子のパターンを照射すれば、距離が離れるほど格子の寸法が大きくなる。カメラでこの格子を捕らえて寸法を測定することで距離が測定できるという仕組み

ただこの方式は当然ながら点群データとなるので、点群からオブジェクトへの変換に一手間かかることになるが。フレームレートは40fps前後(写真だと47.4fps)だった

Qualcomm自身も別のデモをYouTubeで公開している。

Qualcomm Spectra ISP camera module, 2nd generation

さて、これと組み合わせる第二世代Spectraであるが、主要な特徴として

  • 複数画像によるノイズフィルタリング
  • 時間方向のフィルタを利用した動画補償機能(MCTF:Motion Conpensated Temporal Filtering)
  • 電子スタビライザ
  • 顔/虹彩認識やボケなどの処理を行う機械学習向けアクセラレータ
  • SLAM機能

などが追加されたとしている(Photo09)。ノイズリダクションは、最近のデジカメとかミラーレス一眼では半ば標準装備になっているものだが(Photo10)、これがISPの機能として標準搭載された形だ。

右下にあるように、他にも新機能はあるそうだが、それは今年年末までに公表されるとのこと

同じことはソフトウェアでも可能だが、どうしても遅くなるし消費電力も増える

次がスタビライザとMCTFである(Photo11)。スタビライザは要するに画素を全部使うのではなく、周囲を少しあまらせる形で撮影しながら、撮影中の動きをある程度キャンセルさせる方式である。もちろん機械的スタビライザには及ばない事が多いが、コストははるかに安く実現する。一方のMCTFは、特に動画で動画ベクトル検索を行う際に、時間的にあまり変動しない領域を検索することで滑らかに補完を行えるようにすることで、同じデータレートならより品質を上げられるというものだ。実際サンプル動画(Photo12)を比較すると、MCTFを使うことでよりディテールが上がっていることが判る。

どちらの機能も特に動画撮影で威力を発揮する

例えば右下にある家の2階の窓枠が、MCTFありだと「Tの字型」と判別できるのに対し、MCTFなしだとTの字を認識するのは難しい。あるいは右中央にある大きな建物、MCTFありだと窓枠が認識できるが、MCTFなしだと潰れて見えなくなっている

コンピュータビジョンに関しては今回は概念だけで特にデモはなく、具体的にAI(おそらくCNNベースだろう)のどんな機能をどうアクセラレートするのかは不明である。最後がXRで、これはすでにSpapdragonを使ったVRゴーグルなどが実用化されている事を鑑みて、6軸(DoF:Degrees of Freedom)のトラッキング機能や、SLAM(Simultaneous location and mapping)の機能をSpecra ISPに取り込むとしている(Photo14)。

さすがにCNNそのものをSpectra ISPが保持するとは思えないので、おそらくはQualcommが「プロセッサないしDSP上で動作するネットワーク」をまず提供し、そのネットワークと連携できるような機能をSpectra ISP側に搭載するものと思われる

厳密に言えばこれはISPの機能ではないように思うのだが、他にモジュールを増やすよりはSpecta ISPに取り込んだ方が賢明と判断されたのだろう

この第二世代のSpectra ISPは、ディスクリートでの提供あるいはIPの提供などの計画はなく、今後登場する将来のSpapdragonに統合されるかたちでリリースされる、との事であった。