Определяет, является ли изображение 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
Требуемый тип данных возвращаемого Tensor .
name
Имя операции (необязательно).
expand_animations
Необязательный bool. По умолчанию True. Управляет формой выходного значения результата операции. Если True, возвращаемая операция создаст 3-мерный тензор для файлов PNG, JPEG и BMP; и 4-мерный тензор для всех GIF, анимированных или нет. Если False, возвращаемая операция создаст 3-мерный тензор для всех типов файлов и обрезает анимированные GIF до первого кадра.
Возвращаемые значения
Tensor типа dtype и 3- или 4-мерной формой, в зависимости от типа файла и значения параметра expand_animations .