KSPROPERTY_CAMERACONTROL_EXTENDED_VIDEOTEMPORALDENOISING
KSPROPERTY_CAMERACONTROL_EXTENDED_VIDEOTEMPORALDENOISING viene usato per controllare la denoizzazione temporale video sul driver.
Panoramica
Quando si opera un sistema di fotocamera in condizioni di luce non ottimali, la logica di statistica 3A nel processore di segnali immagine (ISP) tenderà ad aumentare la sensibilità analogica e digitale per aumentare la sensibilità della luce del sistema di fotocamera per compensare la mancanza di fotoni che colpiscono il sensore alla frequenza di fotogramma di acquisizione imposta. Questo ha l'effetto collaterale di amplificare il rumore dello scatto, che aumenta il rumore percepito nei fotogrammi prodotti dal sensore. Ciò può essere comunque evidente anche dopo l'elaborazione tramite la pipeline ISP.
Oltre a modificare l'immagine della scena con aberrazioni chroma e luma, a causa della natura stocastica di questo rumore di colpo, l'incoerenza temporale dei valori di pixel è evidente nel video (anteprima o record) e può causare un'esperienza non valida per l'utente.
La finalità di Denoizzazione temporale video (VTD) consiste nell'affrontare il rumore e ridurre l'incoerenza temporale dei pixel rumorosi accumulando e combinando informazioni da più fotogrammi per produrre un frame di output più pulito in un contesto vincolato in cui la latenza dei fotogrammi è importante, ad esempio con un'origine video.
Questa elaborazione aggiuntiva è destinata a essere eseguita in modo in tempo reale con un ritardo minimo per migliorare la qualità dell'immagine senza impedire all'utente di funzionare normalmente la fotocamera e senza richiedere alcuna procedura di post-elaborazione.
Tabella riepilogo utilizzo
Ambito | Control | Tipo |
---|---|---|
Versione 1 | Filtra | Sincrono |
Di seguito sono riportati i flag che possono essere posizionati nella KSCAMERA_EXTENDEDPROP_HEADER. Contrassegna il campo per controllare la denoizzazione temporale video sul driver.
#define KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_AUTO 0x0000000000000001
#define KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_OFF 0x0000000000000002
#define KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_ON 0x0000000000000004
Se il driver supporta questo controllo, deve supportare VIDEOTEMPORALDENOISING_AUTO o sia VIDEOTEMPORALDENOISING_ON che VIDEOTEMPORALDENOISING_OFF.
Se il driver non supporta la denoizzazione temporale video, il driver non deve implementare questo controllo.
Si tratta di un controllo sincrono che può essere controllato dinamicamente durante lo streaming da tutti i pin supportati.
Nella tabella seguente vengono descritte le funzionalità del flag.
Flag | Descrizione |
---|---|
KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_AUTO | Si tratta di una funzionalità obbligatoria se KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_OFF e KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_ON non sono supportati. Se specificato, La denoizzazione temporale video viene abilitata o disabilitata automaticamente nel driver e influisce su tutti i pixel di streaming dei pin supportati nello spettro visibile di luce. Anche se questo non garantisce l'elaborazione effettiva dei fotogrammi in qualsiasi momento, ciò implica che può essere eseguito a discrezione dell'implementer dato che il segnale video passa attraverso l'ISP. |
KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_OFF | Questa è una funzionalità obbligatoria se KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_AUTO non è supportata e facoltativa se è. Se specificato, La denoizzazione temporale video è disabilitata nel driver in ogni momento per tutti i pin supportati che streaming di pixel nello spettro visibile della luce. |
KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_ON | Questa è una funzionalità obbligatoria se KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_AUTO non è supportata e facoltativa se è. Se specificato, La denoizzazione temporale video è abilitata nel driver in ogni momento per tutti i pin supportati che streaming di pixel nello spettro visibile di luce. |
La tabella seguente contiene le descrizioni e i requisiti per i campi struttura KSCAMERA_EXTENDEDPROP_HEADER quando si usa il controllo.
Membro | Descrizione |
---|---|
Versione | Deve essere 1. |
PinId | Deve essere KSCAMERA_EXTENDEDPROP_FILTERSCOPE (0xFFFFFFFF). |
Dimensione | Deve essere sizeof(KSCAMERA_EXTENDEDPROP_HEADER)+ sizeof(KSCAMERA_EXTENDEDPROP_VALUE). |
Risultato | Indica i risultati dell'errore dell'ultima operazione SET. Se non è stata eseguita alcuna operazione SET, questa operazione deve essere 0. |
Funzionalità | Deve essere un OR bit per bit dei flag di KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_* supportati definiti in precedenza. |
Flags | Si tratta di un campo di lettura/scrittura. Questo deve essere uno dei flag di KSCAMERA_EXTENDEDPROP_VIDEOTEMPORALDENOISING_XXX definiti in precedenza. Questi flag sono reciprocamente esclusivi e non possono essere impostati in alcuna combinazione OR bit per bit. |
Requisiti
Intestazione: Ksmedia.h