Определяет, является ли изображение BMP, GIF, JPEG или PNG, и выполняет соответствующую операцию для преобразования входных байтов string в Tensor типа dtype.
Примечание:decode_gif возвращает 4-мерный массив [num_frames, height, width, 3], в отличие от decode_bmp, decode_jpeg и decode_png, которые возвращают 3-мерные массивы [height, width, num_channels]. Убедитесь, что вы учли это при построении вашей схемы, если вы смешиваете файлы GIF с файлами BMP, JPEG и/или PNG. В качестве альтернативы, установите параметр expand_animations этой функции в значение False, в этом случае операция вернёт 3-мерные тензоры и обрезает анимированные файлы GIF до первого кадра.
Примечание: Если первый кадр анимированного GIF-изображения не занимает весь холст (максимальная ширина кадра × максимальная высота кадра), то он заполняет незанятые области (в первом кадре) нулями (черным цветом). Для кадров после первого кадра, не занимающего весь холст, он использует предыдущий кадр для заполнения незанятых областей.
Аргументы
contents
Tensor типа string. 0-мерный. Кодированные байты изображения.
channels
Необязательный int. По умолчанию 0. Количество цветовых каналов для декодированного изображения.
dtype
Требуемый тип DType возвращаемого Tensor.
name
Имя операции (необязательно)
expand_animations
Необязательный bool. По умолчанию True. Управляет формой выходных данных возвращаемой операции. Если True, возвращаемая операция будет создавать 3-мерный тензор для файлов PNG, JPEG и BMP; и 4-мерный тензор для всех GIF, анимированных или нет. Если False, возвращаемая операция будет создавать 3-мерный тензор для всех типов файлов и обрезать анимированные GIF до первого кадра.
Возвращаемое значение
Tensor типа dtype и 3- или 4-мерной формой, в зависимости от типа файла и значения параметра expand_animations.