Farbbild-Pipeline - Color image pipeline

Eine Bildpipeline oder Videopipeline ist der Satz von Komponenten, die üblicherweise zwischen einer Bildquelle (wie einer Kamera, einem Scanner oder der Rendering-Engine in einem Computerspiel) und einem Bildrenderer (wie einem Fernsehgerät, einem Computerbildschirm) verwendet werden einen Computerdrucker oder einen Kinoleinwand) oder zum Durchführen einer beliebigen digitalen Zwischenbildverarbeitung , die aus zwei oder mehr getrennten Verarbeitungsblöcken besteht. Ein Bild / Video - Pipeline kann als Computer implementiert wird Software in einem digitalen Signalprozessor , auf einem FPGA oder als feste Funktion ASIC . Darüber hinaus können analoge Schaltungen verwendet werden, um viele der gleichen Funktionen auszuführen.

Typische Komponenten sind Bildsensorkorrekturen (einschließlich "Debaying" oder Anwenden eines Bayer-Filters ), Rauschunterdrückung , Bildskalierung , Gammakorrektur , Bildverbesserung, Farbraumkonvertierung (zwischen Formaten wie RGB , YUV oder YCbCr ), Chroma-Subsampling , Framerate- Konvertierung, Bildkomprimierung / Videokomprimierung (z. B. JPEG ) und Speicherung / Datenübertragung von Computerdaten .

Typische Ziele einer Imaging-Pipeline können wahrnehmbar ansprechende Endergebnisse, kolorimetrische Präzision, ein hohes Maß an Flexibilität, niedrige Kosten / geringe CPU-Auslastung / lange Akkulaufzeit oder Reduzierung der Bandbreite / Dateigröße sein .

Einige Funktionen können algorithmisch linear sein. Mathematisch können diese Elemente in beliebiger Reihenfolge verbunden werden, ohne das Endergebnis zu ändern. Da digitale Computer eine endliche Annäherung an das numerische Rechnen verwenden, trifft dies in der Praxis nicht zu. Andere Elemente können nichtlinear oder zeitvariant sein. In beiden Fällen gibt es häufig eine oder mehrere Komponentenfolgen, die für optimale Präzision sowie minimale Hardwarekosten / CPU-Auslastung sinnvoll sind.

Diese Abbildung zeigt eine vereinfachte, typische Verwendung von zwei Imaging-Pipelines. Die obere Hälfte zeigt Komponenten, die sich möglicherweise in einer Digitalkamera befinden. Die untere Hälfte zeigt Komponenten, die in einer Bildbetrachtungsanwendung auf einem Computer zum Anzeigen der von der Kamera erzeugten Bilder verwendet werden können. (Beachten Sie, dass Operationen, die physikalisches, lineares Verhalten wie die Bildskalierung imitieren, idealerweise auf der linken Seite ausgeführt werden und mit linearen RGB-Signalen arbeiten. Operationen, die "wahrnehmungsmäßig einheitlich" erscheinen sollen, wie z. B. verlustbehaftete Bildkomprimierung, auf der anderen Seite Hand sollte auf der rechten Seite ausgeführt werden und an "gammakorrigierten" r'g'b- oder Y'CbCr-Signalen arbeiten.)

Siehe auch

Verweise