次の方法で共有


KSPROPERTY_CAMERACONTROL_EXTENDED_VIDEOTEMPORALDENOISING

KSPROPERTY_CAMERACONTROL_EXTENDED_VIDEOTEMPORALDENOISING は、ドライバーのビデオ テンポラル ノイズ除去を制御するために使用されます。

概要

最適でない光条件でカメラ システムを運用する場合、画像信号プロセッサ (ISP) の 3A 統計ロジックでは、アナログとデジタルのゲインが増加し、カメラ システムの光感度が向上して、設定されたキャプチャ フレーム レートでセンサーにヒットするフォトンの不足を補う傾向があります。 これには、ショット ノイズを増幅する副作用があり、センサーによって生成されるフレームで認識されるノイズが増加します。 これは、ISP パイプラインを介して処理された後でも、明確になります。

彩度とルーマ収差でシーンの画像が変化するだけでなく、このショットノイズの確率的性質のために、ピクセル値の時間的不一致がビデオ (プレビューまたはレコード) で顕著になり、ユーザーにとって不快なエクスペリエンスにつながる可能性があります。

ビデオ テンポラル ノイズ除去 (VTD) の目的は、複数のフレームからの情報を蓄積して組み合わせることによってノイズに対処し、ノイズ ピクセルの時間的不一致を減らすことであり、ビデオ ソースなど、フレームの待機時間が重要な時間制限付きコンテキストでよりクリーンな出力フレームを生成します。

この追加処理は、ユーザーがカメラを正常に操作するのをブロックすることなく、後処理の手順を必要とせずに、画質を向上させるために最小限の遅延でリアルタイムで実行することを意図しています。

用法の要点

範囲 コントロール Type
Version 1 Assert 同期

以下は、ドライバーのビデオ テンポラル ノイズ除去を制御するために KSCAMERA_EXTENDEDPROP_HEADER.Flags フィールドに配置できるフラグです。

#define KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_AUTO   0x0000000000000001
#define KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_OFF    0x0000000000000002
#define KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_ON     0x0000000000000004

ドライバーがこのコントロールをサポートしている場合は、VIDEOTEMPORALDENOISING_AUTO、または VIDEOTEMPORALDENOISING_ON と VIDEOTEMPORALDENOISING_OFF の両方をサポートする必要があります。

ドライバーが、ビデオ テンポラル ノイズ除去 サポートしない場合は、このコントロールをドライバーに実装しないでください。

これは、サポートされているすべてのピンからのストリーミング中に動的に制御できる同期コントロールです。

以下の表では、フラグの機能について説明します。

フラグ 説明
KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_AUTO KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_OFF と KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_ON がサポートされていない場合、これは必須の機能です。 指定すると、ビデオ テンポラル ノイズ除去はドライバーで自動的に有効または無効になり、光の可視スペクトルのピクセルをストリーミングするサポートされているすべてのピンに影響します。 これはフレームの実際の処理を常に保証するものではありませんが、これは、ISP を介して通過するビデオ信号を考慮して、実装者の裁量によって行われる可能性があることを示唆しています。
KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_OFF これは、KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_AUTO がサポートされていない場合は必須の機能であり、サポートされている場合は省略可能です。 指定すると、サポートされているすべてのピンが光の可視スペクトル内のピクセルをストリーミングするために、常にドライバーでビデオ テンポラル ノイズ除去が無効になります。
KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_ON これは、KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_AUTO がサポートされていない場合は必須の機能であり、サポートされている場合は省略可能です。 指定すると、サポートされているすべてのピンが光の可視スペクトル内のピクセルをストリーミングするために、常にドライバーでビデオ テンポラル ノイズ除去が有効になります。

次の表は、KSCAMERA_EXTENDEDPROP_HEADER 構造体について、このコントロールを使用する場合のフィールドの説明と要件を示します。

メンバー 説明
バージョン 1 にする必要があります。
PinId KSCAMERA_EXTENDEDPROP_FILTERSCOPE (0xFFFFFFFF) にする必要があります。
サイズ sizeof(KSCAMERA_EXTENDEDPROP_HEADER)+ sizeof(KSCAMERA_EXTENDEDPROP_VALUE) にする必要があります。
結果 最後の SET 操作のエラー結果を示します。 SET 操作が実行されていない場合は、0 にする必要があります。
機能 上記で定義した、サポートされている KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_* フラグのビット論理和にする必要があります。
Flags これは読み取り/書き込みフィールドです。 これは、上記で定義した KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_XXX フラグのいずれかにする必要があります。 これらのフラグは相互に排他的であり、ビット論理和の組み合わせでは設定できません。

要件

ヘッダー: Ksmedia.h