ニュース
Snapdragon 8 Gen 2は“リアルタイムフォトショ”機能を搭載
2022年11月17日 10:42
Qualcommは、Snapdragon Summitと呼ばれる同社のSoCに関するソリューションを説明するイベントを、米国ハワイ州マウイ島にあるホテルで行なっている。初日となる11月16日にはSnapdragon 8 Gen 2が発表され、その詳細に関して説明が行なわれた。
本記事では基調講演終了後Tech Talkと呼ばれる技術的な詳細をお伝えする。このTech Talkでは、新しいISP(Image Signal Processor)に関する説明が行なわれ、写真をAIのセマンティック・セグメンテーションで階層化して、その階層に応じた処理を行ないより高品質な写真や動画を撮影できるようになっていることなどが説明された。言ってみれば、Photoshopによる写真の後処理が自動で行なわれるようなものだ。
従来世代に比べて4.35倍になったAI推論
QualcommのSoCは、「Qualcomm AI Engine」と同社が呼んでいるソフトウェアレイヤーと、SnapdragonのCPU、GPU、DSPとの組み合わせで実現されている。AI処理はQualcomm AI Engineにより抽象化されているため、ソフトウェアベンダが一度対応するアプリのコードを作ってしまえば、複数の世代のSnapdragonで動作するし(Qualcomm AI Engineに対応している2015年に発表されたSnapdragon 820以降)、プレミアム向け製品でもメインストリーム向けでも動作するし、スマートフォン向けだけでなくPC向けのSnapdragonでも、自動車向けのSnapdragonでも動作する。
今回のSnapdragon 8 Gen 2はQualcomm AI Engineに対応したSoCとしては第8世代になる。その鍵となるは、AIの処理に特化したDSPとなる新Hexagonで、従来通りTensor、スカラー、ベクターの各プロセッサが内蔵されており、処理に合わせて内部プロセッサに割り当てながら動作する。
従来のHexagonでも、例えば画像認識を行なう時に、タイルと呼ばれるデータに分割して、Tensor、スカラー、ベクターに割り当てて処理してきた。新世代のHexagonではそれをさらに細かな「マイクロタイル」に分割して処理することで、より処理の効率を上げる。また、Tensorプロセッサにはアクティベーション・ファンクション、グループ・コンボリューションという2つのアクセラレータが内蔵しており、従来製品に比べて2倍のTensor処理が可能になっていることも大きな特徴だ。
また、従来から可能だったINT8に加えて、INT4の精度を利用して推論処理を行なうことが可能になっている。一般的な処理ではFP32の精度を利用して推論処理を行なうが、それをINT8に置きかえて演算すると、正確性はあまり変わらず推論処理が行なえることはよく知られており、CPUやGPUで推論処理を行なう時によく利用されている。
今回のHexagonではそうしたINT8などに加えてINT4を利用して処理を行なう仕組みが用意されている。これにより推論時のデータ量を減らすことができるので、性能を大幅に向上させることが可能になる。Qualcommによれば、INT4を活用することで、90%の性能向上を実現しながら60%の消費電力を削減することが可能になる。また、ほかの精度とミックスして演算することも可能になっている。
こうした改良により、Snapdragon 8 Gen 1と比較してAI推論時の性能は約4.35倍になり、電力効率は60%向上している。同様に競合との比較でも大きな性能向上が見られるとQualcommは説明した。
また、QualcommはQualcomm AI Engineの開発環境として「Qualcomm AI Studio」を投入する計画することも明らかにした。Qualcomm AI StudioはGUIベースの開発ツールで、SoCのうち、CPU、GPU、DSPなどのうちどれをターゲットにするのかなどをGUIベースで設定して、ソフトウェアの開発を行なうことができる。
フォトショのレイヤーのような機能が実装され、セグメント化して写真を処理して高品質な撮影が可能に
今回のSnapdragon 8 Gen 2では、新しいISPが導入されている。今回Qualcommが説明した、Snapdragonの各世代のISPの構成をまとめると、以下のようになっている。
845 | 855 | 855 | 888 | 8 Gen 1 | 8 Gen 2 | |
---|---|---|---|---|---|---|
レンズ数 | 2 | 2 | 2 | 3 | 3 | 3 |
フレーム数 | 6 | 6 | 6 | 6 | 30 | 30 |
2レンズを使って深度計測 | - | ○ | ○ | ○ | ○ | ○ |
カメラデータ幅 | 14bit | 14bit | 14bit | 14bit | 18bit | 18bit |
レイヤー | - | - | - | - | - | 8レイヤー |
Qualcommはここ数年でISPの機能を急速に強化しており、それが他社に対するアドバンテージの1つになっている。その背景としては、スマートフォンの差別化ポイントが既にカメラの機能になりつつあり、そのカメラの機能を裏側で支えるSoCのISPの重要性が向上しているからだ。
QualcommはSnapdragon 888でISPのエンジン数を3つに増やして、3つのレンズをSoCだけでサポートできるように拡張した。そして昨年のSnapdragon 8 Gen 1では、カメラ(具体的にはCMOSセンサー)との接続するデータバス幅を14bitから18bitへと拡張している。それにより、より多くのデータをCMOSセンサーからISPに遅れるようになっており、具体的には1つのカメラから10フレームをISPに転送できるようになっている(3つのレンズ合計で30フレーム)。
今回のSnapdragon 8 Gen 2ではそうしたフレーム1つあたりに、8つの追加レイヤーをもつことが可能になっている。このレイヤーは、Photoshopのレイヤーと同じような考え方で、AIエンジンによりセマンティック・セグメンテーション(画像認識により画像をセグメントに別けること)を行ない、それぞれのレイヤーに分割して処理することができる。
例えば、人物の顔、体、背景、背景も芝生と空……のようにセグメント別にそれぞれのレイヤーに分離する。そうすると、例えば空のレイヤーだけの明るさを変え、顔のレイヤーだけを明るくするなどの処理が可能になる。Snapdragon 8 Gen 2のISPではそうした処理をリアルタイムに行なうことができる。まさに「フォトショ」しながら映像や画像を撮影することができる、そうした機能と言える。
今回のSnapdragon 8 Gen 2では、DSPとISPが専用のインターコネクト(Hexagon Direct Link)で直結されており、そうしたAI処理を、CPUやGPUなども接続されている汎用のインターコネクトの帯域に影響されず処理できるようになっている。
ISPが処理するデータ量は膨大なので、この専用インターコネクトは渋滞を避けるために高架のバイパスが作られたようなものだと考えればわかりやすいだろう。なお、QualcommによればこのHexagon Direct Linkは双方向のデータのやりとりが可能で、低遅延で広帯域になっているということだった(具体的なスペックは明かされなかった)。
ソニーのCMOSセンサーとジョイントラボで共同研究を行なった成果を製品に採用
CMOSセンサーのベンダーであるソニーセミコンダクタソリューションズと共同でサンディエゴに設立した研究開発センターの成果として、ソニーセミコンダクタソリューションズが提供するIMX800(1/1.5インチ)、IMX989(1インチ)を利用して、QDOL4(Quad Digital OverLap 4)という手法で4つの画像からHDR処理を行なった画像を作り出す処理をリアルタイムに行なうことができる。
一般的なHDRでは2つのフレーム(時間をずらしたフレーム)をISP側の後処理で1つのHDRフレームに合成する。しかし、ソニーのCMOSでは、CMOSセンサーの内部で4つのフレームをまず2つに合成し、その2つに合成したHDRフレームを、さらに1つのHDRフレームに合成する仕組みをとっている。これにより、より明暗がくっきりした画像や動画などを撮影することが可能になる。
また、IMX800/989では、3つのレンズを常時オンにしておくと、消費電力が増えてしまうので、スタンバイ状態にある2つのレンズのCMOSセンサーを低消費電力モードに移行することで消費電力を削減する仕組みであることも同時に明らかにされた。
このほかにも、「BOKEH Engine 2」と呼ばれるハードウェアでぼけ具合を調整できる(具体的にはF値をデジタル的にリアルタイムに変えていく)機能が用意され、カメラアプリからスライダーでぼけ具合をリアルタイムに変えていく様子などが紹介された。