В чем отличие цветовой карты от гистограммы в выходных данных команды идентификации? - PullRequest
0 голосов
/ 28 апреля 2020

Я использую команду идентификации в форме ниже:

identify -verbose image.png

Часть вывода:

  Colors: 8
  Histogram:
     49602: ( 49, 51, 39) #313327 srgb(49,51,39)
     36492: ( 98,121,135) #627987 srgb(98,121,135)
     21728: ( 98,182,240) #62B6F0 srgb(98,182,240)
     39526: (121,131, 75) #79834B srgb(121,131,75)
     34298: (165,171,147) #A5AB93 srgb(165,171,147)
     29957: (185,200,226) #B9C8E2 srgb(185,200,226)
     18767: (210,185, 67) #D2B943 srgb(210,185,67)
     31774: (246, 69, 44) #F6452C srgb(246,69,44)
  Colormap entries: 9
  Colormap:
         0: (121,131, 75) #79834B srgb(121,131,75)
         1: ( 49, 51, 39) #313327 srgb(49,51,39)
         2: (210,185, 67) #D2B943 srgb(210,185,67)
         3: (165,171,147) #A5AB93 srgb(165,171,147)
         4: (185,200,226) #B9C8E2 srgb(185,200,226)
         5: ( 98,121,135) #627987 srgb(98,121,135)
         6: ( 98,182,240) #62B6F0 srgb(98,182,240)
         7: (246, 69, 44) #F6452C srgb(246,69,44)
         8: (255,255,255) #FFFFFF white

Я вижу, что те же цвета, что и в гистограмме, плюс белый, но в другом порядке появляются также в карте цветов.

В чем разница между этими двумя?

1 Ответ

2 голосов
/ 28 апреля 2020

Первая строка под Histogram:

49602: ( 49, 51, 39) #313327 srgb(49,51,39)

говорит о том, что на изображении 49 602 пикселя с цветом sRGB(49,51,39). Таким образом, он сообщает вам частоту появления или частоту появления каждого цвета.


9 строк в Colormap: являются палитрой изображения.

Давайте посмотрим на первую строку:

0: (121,131, 75) #79834B srgb(121,131,75)

Это означает, что везде, где цвет srgb(121,131,75) встречается на изображении, мы сохраняем только индекс палитры 0 в этом месте, а не цвет 121,131,75. Это означает, что мы используем только 1 байт для хранения 0 вместо хранения 3 байтов RGB, что означает, что мы экономим 2/3 пространства. Это «таблица поиска» или палитра .

Палитры обменивают пространство для точности цвета. Как правило, они составляют 1/3 от размера исходного изображения, но обычно могут хранить только 256 уникальных цветов, а не 16 777 216 цветов обычного изображения RGB.

Просто для удовольствия, давайте создадим эту плавную градацию серого. градиент и некоторый случайный шум как обычное изображение RGB888 (которое выходит на 75kB):

magick -size 40x600 gradient: \( xc: +noise random \) +append -rotate 90 PNG24:a.png

enter image description here

И теперь сделайте то же самое, но Обязать ImageMagick создать изображение палитры (размером 25 КБ):

magick -size 40x600 gradient: \( xc: +noise random \) +append -rotate 90 PNG8:a.png

enter image description here

Более длинное объяснение с примером здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...