Freigeben über


ImageFormat.Raw12 Feld

Definition

Achtung

This constant will be removed in the future version. Use Android.Graphics.ImageFormatType enum directly instead of this field.

12-Bit-Unformat für Android

[Android.Runtime.Register("RAW12", ApiSince=23)]
[System.Obsolete("This constant will be removed in the future version. Use Android.Graphics.ImageFormatType enum directly instead of this field.", true)]
public const Android.Graphics.ImageFormatType Raw12 = 38;
[<Android.Runtime.Register("RAW12", ApiSince=23)>]
[<System.Obsolete("This constant will be removed in the future version. Use Android.Graphics.ImageFormatType enum directly instead of this field.", true)>]
val mutable Raw12 : Android.Graphics.ImageFormatType

Feldwert

Value = 38
Attribute

Hinweise

12-Bit-Unformat für Android

Dies ist eine einebene, 12-Bit pro Pixel, dicht gepackt (in jeder Zeile), unverarbeitetes Format, in der Regel rohe Bayer-Musterbilder, die von einem Bildsensor stammen.

In einem Bildpuffer mit diesem Format werden alle zwei aufeinander folgenden Pixel beginnend mit dem ersten Pixel jeder Zeile in 3 Byte (24 Bit) verpackt. Das erste und das zweite Byte enthält die obersten 8 Bits des ersten und zweiten Pixels. Das dritte Byte enthält die vier am wenigsten signifikanten Bits der zwei Pixel, die genauen Layoutdaten für die beiden aufeinander folgenden Pixel werden unten dargestellt (Pi[j] steht für das jth Bit des Ith-Pixels):

<table><thead><tr><th align="center"></th><align="center">bit 7</th th><align="center"bit">6</th th<>align="center">bit 5</th><align="center="center"center="center"center".> bit 4</th><align="center">bit 3</th th><align="center">bit 2</th><align="center">bit 1</th th><align="center="center"bit">bit 0</th></Tr></thead tbody><tr><td align="center">Byte 0:</td td td<>align="center">P0[11]</td td<>td align="center">P0[10]</td><td align="center">P0[ 9]</td><td align="center">P0[ 8]</td td<>align="center">P0[ 7]</td td><align="center">P0[ 6]</td td<>align="center">P0[ 5]</td><td align=">< center">P0[ 4]</td></tr td>><<align="center">Byte 1:</td td td><align="center">P1[11]</td><td td align="center">P1[10]</td td><align="center"center ">P1[ 9]</td><td align="center">P1[ 8]</td td<>align="center">P1[ 7]</td<>td align="center">P1[ 6]</td td><align="center="center">P1[ 5]</td td align="center">P1[ 4]</td/tr<>td>><< align="center">Byte 2:</td td<>td align="center">P1[ 3]</td td align="center"P1[ 2]]/td<>td align="center">P1[ 2]]< /td><td align="center">P1[ 1]</td td<>td align="center">P1[ 0]</td td<>align="center">P0[ 3]</td><td align="center">P0[ 2]/<>< td><td align="center">P0[ 1]</td><td td align="center">P0[ 0]</td></tr></tbody></table>

Bei diesem Format wird davon ausgegangen, dass ul>li eine Breite von 4 Pixel</li<>li>eine gerade Höhe</li/li/ul aufweist.<>><<>

size = row stride * height

dabei befindet sich der Zeilenschritt in em>Bytes</em>, nicht in <Pixeln.

Da dies ein dicht verpacktes Format ist, ist die Pixelstride immer 0. Die Anwendung muss das in der obigen Tabelle definierte Pixeldatenlayout verwenden, um auf die einzelnen Zeilendaten zuzugreifen. Wenn der Zeilenschritt gleich width * (12 / 8)ist, gibt es am Ende jeder Zeile keine Abstandsbytes, die gesamten Bilddaten sind dicht gepackt. Wenn der Abstand größer als width * (12 / 8)ist, werden Abstandsbytes am Ende jeder Zeile vorhanden sein.

Das Objekt kann z. B android.media.Image . Daten in diesem Format von einem android.hardware.camera2.CameraDevice (sofern unterstützt) über ein android.media.ImageReader Objekt bereitstellen. Dies android.media.Image#getPlanes() Image#getPlanes() gibt eine einzelne Ebene zurück, die die Pixeldaten enthält. Die Pixelstride ist immer 0 Zoll android.media.Image.Plane#getPixelStride()und beschreibt android.media.Image.Plane#getRowStride() den vertikalen benachbarten Pixelabstand (in Byte) zwischen benachbarten Zeilen.

Java-Dokumentation für android.graphics.ImageFormat.RAW12.

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: