zaLinux.ru

Как определить контент с 10-битной глубиной цвета. Как проверить какая глубина цвета используется в фотографии и видео


Как определить, используется ли 10-битная глубина в видео или фотографии?

Как определить глубину цвета в изображении

Прежде всего, если фотография в формате JPG, то с уверенностью можно сказать, что 10-битная глубина цвета в ней не используется, поскольку этот формат просто не поддерживает это.

Примерами форматов, которые поддерживают 10-битную глубину цвета являются:

  • PNG
  • HEIF (High Efficiency Image Format)

При этом если используется какой-либо из этих форматов, то совсем необаятельно в них используется большая глубина цвета чем 8-бит. Конкретное значение глубины цвета необязательно зависит от формата, эту величину нужно проверять.

Смотрите также:

Рассмотрим как определить глубину используемого цвета картинок в приложениях с графическим пользовательским интерфейсом, а также в командной строке.

Глубину цвета в изображениях можно определить с помощью следующих программ с графическим интерфейсом:

  • MediaInfo-GUI
  • GIMP
  • Krita

Если вы предпочитаете интерфейс командной строки, то глубину цвета в изображениях можно определить с помощью следующих утилит:

  • file (для PNG)
  • mediainfo
  • identify (из пакета ImageMagick)
  • MediaInfo

Смотрите также: Руководство по ImageMagick: установка, использование и решение проблем

Начнём с приложений с графическим пользовательским интерфейсом.

Запустите прилоежние MediaInfo-GUI. Вы можете найти MediaInfo в Меню (кнопка «Пуск»), либо выполните в командной строке команду:

mediainfo-gui

Откройте медиафайл, например, фотографию.

В строке «Bit depth» вы увидите глубину цвета, которую использует изображение.

Популярный и продвинутый редактор изображений GIMP поддерживает множество форматов изображений и может показать для них свойства файла, включаю глубину цвета.

Начните с того, что откройте в GIMP изображение, для которого вы хотите просмотреть информацию.

Затем в меню GIMP перейдите в пункты меню «Image» → «Image Properties».

В строке «Precision» будет показана глубина цвета данного изображения.

Аналогично и приложение Krita — поддерживает много графических форматов, при этом позволяет просматривать подробные свойства изображения.


Откройте интересующее вас изображение.

В меню программы Krita перейдите в Image → Properties.

В открывшемся окне перейдите на вкладку «Image Color Space». В строке «Depth» вы увидите глубину цвета данного изображения.

Теперь рассмотрим как определить глубину цвета фотографий с помощью утилит в командной строке.

Пример определения глубины цвета с помощью утилиты «file» для файла с именем gradient_3840-2160_0-50.png:

file gradient_3840-2160_0-50.png

Это изображение использует глубину цвета 16-bit на каждый цвет:

gradient_3840-2160_0-50.png: PNG image data, 3840 x 2160, 16-bit/color RGBA, non-interlaced

Обратите внимание, что для формата HEIF утилита file не показала какой-либо полезной информации о количестве бит на цветовой канал для файла pattaya.heif:


file pattaya.heif

Пример вывода:


pattaya.heif: ISO Media, HEIF Image HEVC Main or Main Still Picture Profile

Утилита identify из пакета imagemagick можно использовать следующим образом:

identify IMAGE_FILE

Или, если вы хотите получить максимум информации, то укажите дополнительно опцию -verbose:

identify -verbose IMAGE_FILE

Пример команд и вывода без опции -verbose:

identify gradient_3840-2160_0-50.png
gradient_3840-2160_0-50.png PNG 3840x2160 3840x2160+0+0 16-bit sRGB 1.01734MiB 0.000u 0:00.000

identify pattaya.heif
pattaya.heif HEIF 4000x2252 4000x2252+0+0 8-bit sRGB 1.05563MiB 0.000u 0:00.001

Пример команды с опцией -verbose:

identify -verbose gradient_3840-2160_0-50.png

Пример вывода для PNG файла с 16-битной глубиной цвета:

Пример команды с опцией -verbose для файла в формате HEIF:

identify -verbose pattaya.heif

Формат HEIF поддерживает 10-битную глубину цвета, но в данном случае это изображение использует только 8-битный цвет.

Пример команды mediainfo для показа свойств, в том числе глубину цвета, файла gradient_3840-2160_0-50.png:

mediainfo gradient_3840-2160_0-50.png

Пример вывода:

General
Complete name                            : gradient_3840-2160_0-50.png
Format                                   : PNG
Format/Info                              : Portable Network Graphic
File size                                : 1.02 MiB

Image
Format                                   : PNG
Format/Info                              : Portable Network Graphic
Compression                              : Deflate
Width                                    : 3 840 pixels
Height                                   : 2 160 pixels
Color space                              : RGBA
Bit depth                                : 16 bits
Compression mode                         : Lossless
Stream size                              : 1.02 MiB (100%)

А эта команда mediainfo выведет техническую для медиа файла в формате HEIF:

mediainfo pattaya.heif

Как можно ещё раз убедиться в следующем примере вывода, глубина цвета этого файла равна 8-битам:

General
Complete name                            : pattaya.heif
Format                                   : heic
Codec ID                                 : heic (mif1/heic/miaf)
File size                                : 1.06 MiB

Image
ID                                       : 1
Format                                   : HEVC
Format/Info                              : High Efficiency Video Coding
Format profile                           : Main Still@L6@Main
Codec ID                                 : hvc1
Codec ID/Info                            : High Efficiency Video Coding
Width                                    : 4 000 pixels
Height                                   : 2 252 pixels
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Stream size                              : 1 000 KiB (93%)
Matrix coefficients                      : BT.601
Color range                              : Full
Describes                                : 2,3
Codec configuration box                  : hvcC

Как определить глубину цвета в видео

Для определения глубины цвета в видео можно использовать уже упомянутую выше утилиту mediainfo. Кстати, вы также можете использовать версию с графическим интерфейсом.

Проверка глубины цвета для видео файла gradient_1920-1080_25-50_gbrp10le_x265.mp4:


mediainfo gradient_1920-1080_25-50_gbrp10le_x265.mp4

Пример вывода:

Проверка ещё одного тестового видео файла, который я снял на свой телефон с активированным HDR10+ для одной из статей:

mediainfo '4K (3840x2160), 30 fps (HDR10+).mp4'

Пример вывода:

Если судить по показанной информации, это видео использует 10-битную глубину цвета. Но, на самом деле, у меня есть сомнения на этот счёт. Дело в том, что я не уверен, поддерживает ли датчик камеры моего телефона 10-битную глубину цвета или нет. Я склоняюсь к тому, что поддерживает только 8-битную глубину цвета.

Кстати, с телевизорами бывают аналогичные ситуации: некоторые телевизоры при заявленной поддержки 8-битной глубины цвета, на самом деле способны показывать только 6-битный цвет.


Рекомендуемые статьи:

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *