decode_image¶
- torchvision.io.decode_image(input: Union[Tensor, str], mode: ImageReadMode = ImageReadMode.UNCHANGED, apply_exif_orientation: bool = False) Tensor[source]¶
從路徑或原始編碼位元組將影像解碼為 uint8 張量。
目前支援的影像格式有 jpeg、png、gif 和 webp。
在大多數情況下,輸出張量的值是 uint8 格式,範圍為 [0, 255]。
如果影像是 16 位 png,則輸出張量是 uint16 格式,範圍為 [0, 65535](從 torchvision
0.21開始支援)。由於 pytorch 對 uint16 的支援有限,建議在此函式之後呼叫torchvision.transforms.v2.functional.to_dtype()並設定scale=True,將解碼後的影像轉換為 uint8 或 float 張量。注意
decode_image()尚不支援 AVIF 或 HEIC 影像。對於這些格式,請直接呼叫decode_avif()或decode_heic()。- 引數:
input (Tensor 或 str 或
pathlib.Path) – 要解碼的影像。如果傳入的是張量,它必須是包含影像原始位元組的一維 uint8 張量。否則,它必須是影像檔案的路徑。mode (str 或 ImageReadMode) – 將影像轉換為的模式,例如 “RGB”。預設為 “UNCHANGED”。請參閱
ImageReadMode以瞭解可用模式。apply_exif_orientation (bool) – 對輸出張量應用 EXIF 方向變換。僅適用於 JPEG 和 PNG 影像。預設值: False。
- 返回值:
output (Tensor[影像通道數, 影像高度, 影像寬度])
使用
decode_image的示例