Сколько разных цветов можно закодировать, если на 1 пиксель в видеопамяти отводится 1 бит

Обновлено: 04.07.2024

Мы рекомендуем вам прочитать главу 8 (стр. 340–350) и главу 5 вашей книги Head First HTML and CSS.

Основываясь на идее представления, мы обсудим, как изображения представлены в цифровой форме. Мы будем работать над этим, сначала начав с того, как представлен цвет (который основан на физиологии человеческого глаза), а затем рассматривая изображения как прямоугольные расположения пятен чистого цвета. Наконец, мы рассчитаем размер файла изображения и обсудим один из способов сжатия файла, чтобы он был меньше и, следовательно, загружался быстрее. Это сжатие фактически является другим представлением информации.

Стандартные цвета

В настоящее время современные браузеры поддерживают 140 названий цветов. Это означает, что мы можем использовать имена цветов, такие как черный, бирюзовый или шоколадный, в качестве значений свойств CSS, за исключением значения цвета, такого как цвет, фоновый цвет и т. д. Много лет назад браузеры могли поддерживать только 17 названий цветов, известные как стандартные цвета: бирюзовый, черный, синий, фуксия, серый, зеленый, салатовый, темно-бордовый, темно-синий, оливковый, оранжевый, фиолетовый, красный, серебристый, бирюзовый, белый и желтый. Однако позже этот список был расширен еще на 123 цвета. W3Schools поддерживает полный список из 140 признанных названий цветов. Хотя вы можете добиться многого, используя только эти именованные цвета, очень часто вам нужно что-то более конкретное из цветового спектра. Оказывается, мы можем использовать числовые коды для обозначения цветов, потому что внутри компьютера цвета представлены числами. Как? Для этого нам нужно понимать аддитивные цвета и цветовое зрение.

Аддитивные (RGB) цвета и цветовое зрение

В сетчатке человека есть палочковидные клетки, чувствительные ко всему свету, и конусообразные клетки, которые бывают трех типов: чувствительные к красному, зеленому и синему. Следовательно, существует три (аддитивных) основных цвета: красный, зеленый и синий или RGB. Все видимые цвета воспринимаются при возбуждении этих трех типов клеток в разной степени. (Для получения дополнительной информации обратитесь к этим статьям Википедии об аддитивном цвете и цветовом зрении.)

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

На компьютерах компоненты цвета RGB стандартно определяются по шкале от 0 до 255, что составляет 8 бит или 1 байт.

Поиграйте со страницей ползунка "Цвет", чтобы почувствовать это.

смешивание добавок

Пример аддитивного смешивания.

<УЛ>
  • Василек = 100 149 237
  • Зеленый лес = 34 139 34
  • Золото = 255 215 0
  • ДоджерСиний = 30 144 255
  • Сиена = 160 82 45
  • Горячий розовый = 255 105 180
  • Мы можем использовать эти знания о цветах, представленных как смесь красного, синего и зеленого, при указании значений цвета в CSS. Это можно сделать тремя способами:

    Шестнадцатеричный

    Люди используют десятичную систему счисления (основание 10), компьютеры используют двоичную систему (основание 2), но программисты часто используют для удобства шестнадцатеричное число (основание 16).

    Двоичные числа очень быстро удлиняются. Нелегко запомнить 24 двоичных разряда, но легче запомнить 6 шестнадцатеричных разрядов. Каждая шестнадцатеричная цифра представляет ровно четыре двоичных цифры (бита). (Это потому, что 2 4 = 16.)

    Один из способов понимания шестнадцатеричной системы счисления — аналогия с десятичной, но мы все так хорошо знакомы с десятичными числами, что наши рефлексы мешают. (На самом деле люди на протяжении всей истории использовали множество различных систем счисления; десятичная система счисления не является священной.) Итак, сначала нам нужно разбить десятичную систему счисления, чтобы вы могли увидеть аналогию с шестнадцатеричной. На данный момент мы будем придерживаться двузначных чисел, но те же идеи применимы и к любым большим числам.

    Десятичная система счисления работает путем организации вещей в группы по десять штук, а затем подсчета групп и остатков. Предположим, у вас есть куча палок на земле, и вы связали их все в группы по 10 штук, а некоторые остались (менее 10). . Теперь используйте символ для обозначения количества связок и другой символ для обозначения количества оставшихся палочек. Вы только что изобрели двузначные числа по основанию 10.

    Шестнадцатеричный формат. Проделайте то же самое с наборами из 16, и вы изобретете двузначные числа с основанием 16. Например, если у вас есть тридцать пять палочек , их можно разделить на две группы по шестнадцать и три оставшихся числа. закончено, поэтому шестнадцатеричная запись равна 23. Осторожно! Это число не десятичное число двадцать три! Это по-прежнему тридцать пять палочек, но мы записываем их в шестнадцатеричном формате как 23.

    Чтобы отличить десятичное число от шестнадцатеричного, мы используем нижние индексы. Итак, чтобы сказать, что тридцать пять палочек записывается как 23 в шестнадцатеричном формате, мы можем написать:

    И десятичная, и шестнадцатеричная система счисления основаны на разрядном значении. Мы говорим, что 2316 означает 3510, потому что это "2" в разряде шестнадцати и "3" в единицах< /em>, точно так же, как 3510 имеет "3" в разряде десятков и "5" в разряде единиц.< /p>

    Возьмем другой пример. Предположим, у нас есть 2610 палочек. Осталась одна группа из 16 и 10 человек. Как записать это число в шестнадцатеричном виде? Это 11016? То есть "1" в разряде шестнадцати, за которым следует "10" в разряде единиц? Нет; это сбило бы с толку, поскольку выглядело бы как трехзначное число. Нам нужен символ, который означает десять. Мы не можем использовать «10», так как это не отдельный символ. Вместо этого мы используем «А»; то есть A16=1010. Точно так же «B» означает 11, «C» означает 12, «D» означает 13, «E» означает 14, а «F» означает 15. Нам больше не нужны символы, потому что мы не можем иметь 16 вещей. осталось, так как это составит еще одну группу из 16. В следующей таблице приведены эти соответствия и то, что мы сделали до сих пор.

    Чтобы преобразовать большое десятичное число в шестнадцатеричное, просто разделите его. Например, 23010, разделенное на 16, равно 1410 с остатком 610. Таким образом, шестнадцатеричное число равно E616. Чтобы преобразовать шестнадцатеричное число в десятичное, просто умножьте: E616=E*16 + 6 = 14*16 + 6 = 230 .

    Упражнение 1

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

    Вы можете проверить свою работу с помощью следующей формы:

    Преобразование шестнадцатеричной системы счисления в двоичную или из нее

    Теперь, когда мы знаем как шестнадцатеричный, так и двоичный формат, вы можете преобразовать двоичный код в шестнадцатеричный (и наоборот). Однако вы, вероятно, сделаете это, преобразовав двоичное число в десятичное, а затем десятичное число в шестнадцатеричное. Есть способ получше, почти без арифметики (точнее, вся арифметика с однозначными числами, которые можно складывать в уме). Действительно, этот метод является причиной, по которой программисты любят использовать шестнадцатеричный формат. (Ну, это и удовольствие от написания слов, таких как ACE и DEADBEEF, с шестнадцатеричными цифрами.)

    Пример 1

    Начнем с примера. Предположим, вам нужно преобразовать следующее из двоичного в шестнадцатеричное:

    Что мы собираемся сделать, так это взять биты кусками по четыре бита, поэтому, чтобы отметить куски, мы вставим точку в середине числа:

    Теперь мы просто конвертируем каждый фрагмент напрямую в шестнадцатеричный формат. Первый фрагмент, 0101, это просто номер 5. Второй фрагмент, 0100, это просто номер 4. Они уже в шестнадцатеричном формате, поэтому мы закончили:

    (Попробуйте сделать это с помощью десятичного числа, чтобы проверить. Десятичное значение, соответствующее обоим этим, равно 80+4=84.)

    Пример 2

    Давайте сделаем еще один, на этот раз с немного большими значениями:

    Снова возьмите биты порциями по четыре бита:

    Теперь мы просто конвертируем каждый фрагмент напрямую в шестнадцатеричный формат. Первый фрагмент, 1010, равен 8+2 или 1010, что является цифрой A в шестнадцатеричном формате. Второй блок, 1100, равен 8+4 или 1210, что является цифрой C в шестнадцатеричном формате. Итак, мы закончили:

    (Опять же, проверьте нашу работу, выполнив ее через десятичную дробь. Десятичное значение, соответствующее обоим этим, равно 160+12=172.)

    Пояснение

    Обратите внимание, что единственная арифметическая операция, которую нам нужно выполнить, — это преобразовать каждую порцию из четырех битов в эквивалентную шестнадцатеричную цифру. Используемая арифметика в уме ограничена: мы знаем, что (1) мы складываем однозначные числа, (2) не более четырех из них и (3) сумма всегда будет меньше 16.

    Посмотрите продолжение выступления профессора Курмаса из Государственного университета Гранд-Вэлли о двоичных и шестнадцатеричных числах. Это версия, которую он отредактировал для нас. Вы смотрели первые 5 минут в последний раз; смотреть остальные на сегодня.

    Вот видео, на котором Том Лерер поет New Math . Это около 4 минут; вам понравится.

    Цвета в шестнадцатеричном формате

    Вот более полный список названий цветов. --> Упражнение 2

    Используя созданную ранее веб-страницу (или этот пример веб-страницы), поэкспериментируйте с числовым определением цвета. Используйте тег SPAN, чтобы раскрасить текст. Если вы не можете придумать какой цвет попробовать, попробуйте Шоколадный. Синтаксис:

    Вот оно! Требуется некоторая практика, чтобы научиться вычислять шестнадцатеричные числа, но ничего такого, чего вы не делали раньше.-->

    Упражнение 2

    Представление изображения

    Теперь, когда мы знаем, как представлять цвет, мы можем представлять изображения. Вы можете думать об изображении как о прямоугольной двумерной сетке пятен чистого цвета, каждое из которых представлено как RRGGBB. Пятно чистого цвета называется пикселем, сокращением от элемента изображения, атомом изображения. Пиксели лучше видны, если увеличить изображение несколько раз; вот несколько примеров. Нажмите на картинку, чтобы увеличить ее.Рисунок шотландского терьера как набор пикселей Мона Лиза как набор пикселей, с увеличением пикселей, составляющих один глаз

    Каждое изображение на мониторе компьютера представлено пикселями. Изображения на веб-странице сохраняются в файлах, которые, помимо данных изображения, содержат информацию о размере изображения, наборе используемых цветов, происхождении изображения и т. д. В зависимости от того, как именно сохраняется эта информация , мы называем их форматами изображений. GIF, JPEG, PNG и BMP — одни из самых известных форматов изображений. Подробнее о форматах изображений мы поговорим ниже. Сейчас мы сосредоточимся на количестве пикселей и представлении каждого пикселя и, следовательно, на размере файла изображения.

    Выше мы сказали, что количество каждого основного цвета — это число от 0 до 25510 или от 00 до FF16. Неслучайно это ровно один байт (8 бит). Байт — это удобный фрагмент компьютерной памяти, поэтому один байт был выделен для представления количества одного основного цвета. Таким образом, для представления одного пятна чистого цвета требуется 3 байта (24 бита).

    Поскольку каждый пиксель занимает 24 бита (3 байта), в зависимости от количества пикселей вашего устройства для хранения изображения может потребоваться много места.

    300 x 500 x 3 = 450 000 байт

    Это около 450 килобайт (сокращенно kB, "k" — строчная, а B — прописная; см. примечание к сокращениям) или почти полмегабайта. Это не только много места для хранения, но, что более важно, загрузка занимает значительное время, если только ваш модем не очень быстрый. Например, если у вас телефонный модем старого образца, который может обрабатывать только 56 кбит/с (56 кбит/с) = 7 кбит/с (7 кбит/с), вам потребуется немногим более 1 минуты для его загрузки (напомним, что 1 байт = 8 бит/с). биты). Это много времени.

    Телефонные модемы? Да, некоторые люди до сих пор пользуются телефонными модемами. Но очень популярны стали более быстрые DSL-модемы (от 128 кбит/с до 1500 кбит/с) и кабельные модемы (от 300 кбит/с до 6 000 кбит/с).

    Однако появление более высоких скоростей соединения сопровождается ростом числа веб-сайтов с контентом (фотографии с более высоким разрешением, песни, видео), который полностью потребляет дополнительную пропускную способность. Таким образом, ни у кого никогда не бывает достаточно пропускной способности сети, и разумно не тратить ее впустую. Если кто-то из вашей аудитории обнаружит, что ваш сайт загружается медленно, он перейдет на другой сайт.>

    1. При использовании модема на 56 кбит/с (56 000 битов в секунду) сколько времени вам потребуется, чтобы загрузить папку, содержащую все эти изображения?
    2. Проверьте текущую скорость подключения к Интернету с помощью этого теста скорости (например, подключитесь к серверу в Нью-Йорке). При такой скорости сколько времени вам потребуется, чтобы загрузить все изображения?

    Размер изображения и время загрузки

    В несжатом формате файла для хранения каждого пикселя требуется 24 бита (3 байта). Предположим, вы собираетесь сфотографировать всех своих 30 одноклассников для веб-сайта класса, используя камеру iPhone4. Согласно спецификациям телефона, его экран имеет разрешение 2592 x 1936 пикселей, что составляет около 5 миллионов пикселей или 5 МП (мегапикселей). Таким образом, если каждый пиксель занимает 3 байта, а фото с вашей камеры имеет разрешение 5 МП, то для хранения изображения вам потребуется 15 МБ (мегабайт). Для всех ваших одноранговых фотографий вам потребуется 30 x 15 МБ = 450 МБ.

    Представьте, что вы размещаете все эти фотографии на своем веб-сайте на одной странице (используя атрибуты width и height, чтобы они поместились на одном экране), а затем отправляете ссылку на эту страницу своим родителям. У них может быть среднее подключение к Интернету (например, Verizon предлагает 1–3 Мбит/с (мегабит в секунду) подписчикам без FiOS).

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

    размер содержимого (450 МБ) x 8 бит/байт / 1 МБ = 3600 секунд или 1 час.

    Если бы размер каждой из ваших фотографий составлял всего около 100 КБ (как мы требуем в некоторых ваших домашних заданиях), то время загрузки всех фотографий на странице составило бы 24 секунды.

    Итак, как мы можем сделать наши изображения такими маленькими? Есть два способа: изменение размера (уменьшение количества пикселей в изображении путем разумной обрезки) и сжатие (уменьшение необходимого количества битов на пиксель). Мы обсудим сжатие в следующем разделе.

    Сжатие

    Помимо уменьшения размеров изображений (меньше пикселей), что мы можем сделать, чтобы ускорить загрузку? Мы можем сжать файлы.

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

    Мы подробно рассмотрим один из видов сжатия без потерь — индексированный цвет (кодирование GIF), потому что он дает нам представление о видах идей и методов, которые важны при разработке представлений изображений. информация.

    Индексированный цвет

    <ПР>
  • нумерованный список цветов
  • какого цвета (номера) каждый пиксель
  • Пример: двухцветное изображение

    Вы можете увидеть общую схему в работе: мы создаем таблицу всех цветов, используемых на картинке. Сокращением для цвета является просто его индекс в таблице. Мы ограничим таблицу так, чтобы сокращения были не более 8 бит. Поскольку все сокращения заменяют спецификации 24-битного цвета, сокращение составляет максимум одну треть размера. В приведенном выше примере сокращение составляет 1/24 размера.

    Пример: четырехцветное изображение

    Как видите, сокращенная запись теперь состоит из двух битов вместо одного. Следовательно, для 150 000 пикселей требуется 300 000 бит или 300 000/8 = 37 500 байт или около 37,5 КБ. Очевидно, что это примерно в два раза больше, чем в предыдущем примере, поскольку каждое сокращение теперь в два раза больше. Тем не менее, он все равно намного меньше несжатого файла размером 450 КБ.

    Как насчет размера палитры? Теперь это тоже в два раза больше. Четыре записи по 3 байта каждая увеличивают размер файла на 12 байт, что является незначительным увеличением до 37,5 КБ.

    Вы можете видеть, что количество битов, необходимых для каждого пикселя, является ключевым количеством. Это количество называется битами на пиксель или «bpp». Его также часто называют "битовой глубиной", так что размер файла изображения равен ширине x высоте x битовой глубине, как если бы это был физический трехмерный блок.

    Наконец, мы можем сформулировать правило:

    Разрядность изображения должна быть достаточно большой, чтобы количества строк в таблице хватило для всех цветов. Если битовая глубина d, количество строк в таблице равно 2 d .

    Вот точное соотношение, а также размер изображения 300 x 500:

    Сопоставление битовой глубины с количеством цветов
    битовая глубинамаксимальное количество цветов размер файла изображения 300x500
    12 18kB
    24 37kB
    38 55 КБ
    41673 КБ
    53291 КБ
    664110 КБ
    7128128kB
    8256147 КБ

    Упражнение 3

    <УЛ>
  • Сколько байтов требуется для представления этого изображения, если оно черно-белое? Не забудьте представить таблицу цветов.
  • Сколько байтов, если изображение использует 4 цвета?
  • Сколько байтов, если изображение использует 16 цветов?
  • Сколько байтов, если изображение использует 17 цветов?
  • Подводя итог, можно уменьшить размер файла изображения, используя меньше цветов. Конечно, это может снизить качество вашего изображения. Это компромисс.

    Индексированный цвет GIF

    Формат файла GIF (т. е. представление изображения) — наиболее известный пример формата индексированного цвета. Вот как это работает: представьте художника-росписчика, который придет к вам домой и нарисует на вашей стене все, что вы захотите. Но есть одна загвоздка: она приедет к вам домой только один раз, а в ее фургоне всего 256 банок с краской. У нее на складе 16 миллионов банок с краской, и вы можете выбрать любые 256, какие захотите, но у вас не может быть фрески с более чем 256 разными цветами.

    Это основная идея изображений GIF и индексированного цвета. -->

    Вычисление размера файла

    Мы узнали, как работает индексированный цвет и как он влияет на размер файла. Это важно не только для теоретического понимания того, почему представления имеют значение, но и для практической полезности понимания того, как уменьшить размеры ваших изображений. В этом разделе мы рассмотрим, как вычислить приблизительный размер изображения с индексированными цветами. (Индексированный цвет — это один из приемов, используемых в файлах GIF, хотя в файлах GIF используются и другие приемы.) Зачем мы это делаем? Потому что он объединяет все концептуальные вопросы в один небольшой расчет.

    Ключевой концепцией вычислений является битовая глубина изображения. Прочтите на стр. 19 определение битовой глубины. Это количество битов, необходимое для представления желаемого количества цветов. Помните, что количество цветов равно 2 d , где d — разрядность. Это экспоненциальная зависимость. Добавление всего одного бита к битовой глубине удваивает количество цветов, которые вы можете иметь.

    1. пиксели (представленные их сокращенными значениями, каждый из которых имеет размер, равный битовой глубине), и
    2. палитра (в которой для каждого сокращения дается полноцветное определение).

    Наконец, поскольку размер файла обычно большой (тысячи или миллионы байт), мы делим его на 1000 или 1 000 000, чтобы преобразовать в килобайты или мегабайты, в зависимости от ситуации.

    Мы продолжим обсуждение расчета размера файла в лабораторных и домашних заданиях.

    Между количеством цветов, придаваемых растровой точке, и количеством информации, которое необходимо выделить для хранения цвета точки, существует зависимость, определяемая соотношением (формула Р. Хартли):


    где

    I- количество информации

    N количество цветов, присвоенных точке.

    Таким образом, если для точки изображения задано количество цветов N= 256, то количество информации, необходимой для ее хранения (глубина цвета) в соответствии с формулой Р. Хартли, будет равно до I= 8 бит.

    Компьютеры используют различные режимы графического отображения для отображения графической информации. Здесь следует отметить, что кроме графического режима монитора существует еще и текстовый режим, при котором экран монитора условно разбит на 25 строк по 80 символов в строке. Эти графические режимы характеризуются разрешением экрана монитора и качеством цвета (глубиной цвета).

    Для реализации каждого из графических режимов экрана монитора необходим определенный информационный объем видеопамяти компьютера (V), который определяется из соотношения


    где

    ТО- количество точек изображения на экране монитора (К=А Б)

    НО- количество горизонтальных точек на экране монитора

    IN- количество точек по вертикали на экране монитора

    I– количество информации (глубина цвета), т.е. количество бит на пиксель.


    Так, если экран монитора имеет разрешение 1024 на 768 пикселей и палитру, состоящую из 65536 цветов, то

    глубина цвета будет равна I = log 2 65 538 = 16 бит,

    количество пикселей изображения будет равно K = 1024 x 768 = 786432

    Требуемый информационный объем видеопамяти в соответствии будет равен V = 786432 16 бит = 12582912 бит = 1572864 байт = 1536 КБ = 1,5 МБ.

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

    Выбирая цветы, каждый человек задумывается о том, сколько цветов должно быть в букете. Ведь кроме вида и оттенка растений большую роль в букете играет их количество. С помощью специальных разработок ученым удалось выяснить, что уже в V-VI веках до нашей эры наблюдалась определенная числовая символика. Этот факт говорит о том, что цифры имеют давно проверенное значение, поэтому к количеству цветов для подарка стоит отнестись серьезно.

    Четные и нечетные числа

    Согласно древним славянским традициям, четное количество цветов в букете имеет траурное значение и заряжает букет негативной энергией.

    Поэтому на похороны, на могилы или памятники везут парную сумму. А вот жители восточных, европейских стран и США имеют на этот счет совершенно иную точку зрения. Их четное количество является символом удачи, счастья и любви.

    Самое счастливое число в немецком букете – восемь, несмотря на то, что оно четное.

    В США чаще всего дарят вместе 12 цветов. Жители Токио спокойно отреагируют, если вы подарите им по 2 цветка, главное не 4 - эта цифра считается для них символом смерти.

    У японцев вообще свой язык растений, и каждое число имеет свое значение. Например, одна роза — это знак внимания, три — уважения, пять — любви, семь — страсти и обожания, девять — преклонения. Японцы преподносят букет из 9 цветов своим кумирам, а из 7 – любимым женщинам. В нашей стране также можно дарить четное количество растений, если их больше 15 в одном наборе.

    Язык цветов

    Мало кто знает, что язык цветов определяет количество бутонов в букете. Этот язык нужно знать и учитывать тому, кто делает подарок, чтобы не жалеть о своих поступках в будущем. Неожиданно для получателя имеет значение количество цветов в букете.

    О чем говорят цифры

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

    Для этих красивых растений существует отдельный язык, определяющий значение каждого из их чисел:

    Как подарить девушке розу

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

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

    Не стоит заворачивать цветок в обертку, а также добавлять к нему лишние ветки и растения, это только удешевит его внешний вид.

    Намного лучше будет смотреться роза, украшенная бархатной или атласной лентой. Иногда можно упаковать в прозрачную обертку, но только без лишнего блеска. То же самое можно сказать и о букете из трех бутонов. Если в наборе более 7 цветов, то их необходимо упаковать и перевязать ленточками, чтобы букет смотрелся красиво и не осыпался.

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

    Если вам все же нужен рисунок с большим количеством разных цветов, то лучше использовать специальное оборудование, позволяющее выполнять полноцветную печать на пакетах. Принцип таких машин – наличие УФ-сушки, так как для полноцветной печати можно использовать только УФ-отверждаемые краски. Конечно, эта технология подразумевает не только высокую стоимость нанесения полноцветных изображений на упаковку, но и печать более крупных точек, поэтому не стоит ожидать такого качества картинки, как на бумаге.

    Зайдите практически на любой форум фотографии, и вы обязательно наткнетесь на обсуждение преимуществ файлов RAW и JPEG. Одной из причин, по которой некоторые фотографы предпочитают формат RAW, является большая битовая глубина (глубина цвета)*, содержащаяся в файле. Это позволяет делать фотографии более высокого технического качества, чем то, что вы можете получить из файла JPEG.

    *Битглубина(разрядность), или цветглубина(глубина цвета, по-русски это определение чаще используется) — количество битов, используемых для представления цвета при кодировании одного пикселя растровой графики или видеоизображения. Часто выражается в битах на пиксель (bpp). Википедия

    Что такое глубина цвета?

    Компьютеры (и устройства, управляемые встроенными компьютерами, такие как цифровые зеркальные камеры) используют двоичную систему. Двоичная нумерация состоит из двух цифр — 1 и 0 (в отличие от десятичной системы, включающей 10 цифр). Одна цифра в двоичной системе называется «бит» (англ. «бит», сокращение от «двоичная цифра», «двоичная цифра»).


    Максимально возможное восьмибитное число – 1 111 1111, или 255 в десятичном формате. Это важное число для фотографов, поскольку оно присутствует во многих программах обработки изображений, а также в старых дисплеях.

    Цифровая съемка

    Каждый из миллионов пикселей на цифровой фотографии соответствует элементу (также называемому "пикселем") на датчике (массиве датчиков) камеры. Эти элементы при воздействии света генерируют небольшой электрический ток, который измеряется камерой и записывается в файл JPEG или RAW.

    Файлы JPEG

    Файлы JPEG записывают информацию о цвете и яркости для каждого пикселя в виде трех восьмизначных чисел, по одному для красного, зеленого и синего каналов (это те же самые цветовые каналы, которые вы видите при построении цветовой гистограммы в Photoshop). или на камеру).


    Этот градиент был сохранен в 24-битном файле (8 бит на канал), что достаточно для передачи мягких цветовых градаций.


    Этот градиент был сохранен как 16-битный файл. Как видите, 16 бит недостаточно для передачи мягкого градиента.

    RAW-файлы

    Файлы RAW назначают больше битов каждому пикселю (большинство камер имеют 12- или 14-битные процессоры). Больше битов означает больше чисел и, следовательно, больше тонов на канал.

    Это не означает большее количество цветов — файлы JPEG уже могут записывать больше цветов, чем может воспринять человеческий глаз. Но каждый цвет сохраняется с гораздо более тонкой градацией тонов. В этом случае говорят, что изображение имеет большую глубину цвета. В таблице ниже показано, как битовая глубина соотносится с количеством оттенков.


    Обработка внутри камеры

    постобработка

    Файл RAW отличается от JPEG тем, что содержит все данные, полученные датчиком камеры в течение периода экспозиции. Когда вы обрабатываете файл RAW с помощью программного обеспечения для преобразования RAW, программное обеспечение выполняет преобразование, аналогичное тому, что делает внутренний процессор камеры при съемке в формате JPEG. Разница в том, что вы задаете параметры внутри используемой вами программы, а те, что заданы в меню камеры, игнорируются.

    Преимущество дополнительной разрядности файла RAW становится очевидным при постобработке. Файл JPEG стоит использовать, если вы не собираетесь выполнять какую-либо постобработку, а вам нужно просто установить экспозицию и все остальные настройки во время съемки.

    Однако на самом деле большинству из нас хочется внести хотя бы несколько корректировок, даже если это просто яркость и контрастность. И это как раз тот момент, когда файлы JPEG начинают уступать. Благодаря меньшему количеству информации на пиксель при настройке яркости, контрастности или цветового баланса оттенки можно визуально разделить.

    Результат наиболее заметен в областях с плавными и длинными переходами оттенков, например на голубом небе. Вместо мягкого градиента от светлого к темному вы увидите наслоение цветных полос. Этот эффект также известен как постеризация. Чем больше вы настраиваете, тем больше это проявляется на изображении.

    С файлом RAW вы можете значительно изменить цветовой оттенок, яркость и контрастность, прежде чем заметите ухудшение качества изображения. Он также позволяет выполнять некоторые функции конвертера RAW, такие как настройка баланса белого и восстановление «переэкспонированных» областей (восстановление засветки).


    Эта фотография была взята из файла JPEG. Даже при таком размере видны полосы на небе в результате постобработки.


    При ближайшем рассмотрении на небе виден эффект постеризации. Работа с 16-битным файлом TIFF может устранить или, по крайней мере, свести к минимуму эффект полос.

    16-битные файлы TIFF

    Однако, если вы планируете выполнять постобработку в Photoshop, рекомендуется сохранить изображение как 16-битный файл. В этом случае изображение, полученное с 12- или 14-битного сенсора, будет «растянуто», чтобы заполнить 16-битный файл. После этого вы можете поработать над ним в Photoshop, зная, что дополнительная глубина цвета поможет вам добиться максимального качества.


    Это изображение, которое я сделал с настройкой RAW+JPEG на камеру EOS 350D. Камера сохранила две версии файла: файл JPEG, обработанный процессором камеры, и файл RAW, содержащий всю информацию, записанную 12-битным датчиком камеры.


    Здесь вы можете увидеть сравнение правого верхнего угла обработанного файла JPEG и файла RAW. Оба файла были созданы камерой с одинаковыми настройками экспозиции, и единственная разница между ними — глубина цвета. Мне удалось «вытянуть» в JPEG «переэкспонированные» детали, которые не различимы в файле RAW. Если бы я хотел продолжить работу с этим изображением в Photoshop, я мог бы сохранить его как 16-битный файл TIFF, чтобы обеспечить наилучшее качество изображения во время обработки.

    Почему фотографы используют JPEG?

    Тот факт, что не все профессиональные фотографы постоянно используют формат RAW, ничего не значит. Например, свадебные и спортивные фотографы часто работают с форматом JPEG.

    Для свадебных фотографов, которые могут сделать тысячи кадров на свадьбе, это экономит время на постобработке.

    Спортивные фотографы используют файлы JPEG, чтобы отправлять фотографии в свои фоторедакторы во время мероприятия. В обоих случаях скорость, эффективность и меньший размер файла формата JPEG делают его логичным для использования.

    Глубина цвета на экранах компьютеров

    Битовая глубина также относится к глубине цвета, которую способны отображать компьютерные мониторы. Читателю, использующему современные дисплеи, может быть трудно поверить в это, но компьютеры, которыми я пользовался в школе, могли воспроизводить только 2 цвета — белый и черный. «Обязательный» компьютер того времени — Commodore 64, способный воспроизводить целых 16 цветов. По информации из Википедии, продано более 12 единиц этого компьютера.



    Компьютер Commodore 64. Фото Билла Бертрама

    Файлы HDR

    Многие из вас знают, что изображения с расширенным динамическим диапазоном (HDR) создаются путем объединения нескольких версий одного и того же изображения, снятых с разными настройками экспозиции.Но знаете ли вы, что программное обеспечение генерирует 32-битное изображение с более чем 4 миллиардами тональных значений на канал на пиксель — всего лишь скачок по сравнению с 256 тонами в файле JPEG.

    Файлы True HDR не могут правильно отображаться на мониторе компьютера или на печатной странице. Вместо этого они обрезаются до 8- или 16-битных файлов с помощью процесса, называемого тональной компрессией, который сохраняет характеристики исходного изображения с высоким динамическим диапазоном, но позволяет воспроизводить его на устройствах с узким динамическим диапазоном.

    Заключение

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

    Решение задач по кодированию графической информации.

    Растровая графика.

    Векторная графика.

    Введение

    Данное электронное пособие содержит группу заданий по теме «Кодирование графической информации». Коллекция заданий разделена на типы заданий по заданной теме. Каждый вид заданий рассматривается с учетом дифференцированного подхода, т. е. рассматриваются задания минимального уровня (оценка «3»), общего уровня (оценка «4»), продвинутого уровня (оценка «5»). Данные задания взяты из различных учебников (список прилагается). Подробно рассматриваются решения всех задач, даются методические рекомендации по каждому типу задач, дается краткий теоретический материал. Для удобства руководство содержит ссылки на закладки.

    Растровая графика.

    <р>1. Определение объема видеопамяти.

    <р>2. Определение разрешения экрана и установка графического режима.

    1. Определение объема видеопамяти

    В задачах этого типа используются следующие понятия:

    · объем видеопамяти

    · графический режим,

    · глубина цвета,

    · разрешение экрана,

    Во всех подобных задачах нужно найти ту или иную величину.

    Видеопамять - это специальная оперативная память, в которой формируется графическое изображение. Другими словами, чтобы картинка попала на экран монитора, ее надо где-то хранить. Вот для чего нужна видеопамять. Чаще всего его значение составляет от 512 Кб до 4 Мб для лучших ПК с 16,7 млн ​​цветов.

    Объем видеопамяти рассчитывается по формуле: V=I*X*Y, где I — глубина цвета одной точки, x,Y — размеры экрана по горизонтали и вертикали (произведение x и y — разрешение экрана) .

    Экран дисплея может работать в двух основных режимах: текстовом и графическом.

    В графическом режиме экран делится на отдельные светящиеся точки, количество которых зависит от типа дисплея, например 640 по горизонтали и 480 по вертикали. Светящиеся точки на экране обычно называют пикселями, их цвет и яркость могут различаться. Именно в графическом режиме все сложные графические изображения, созданные компьютером, появляются на экране компьютера. специальные программы, управляющие настройками каждого пикселя на экране. Графические режимы характеризуются такими показателями, как:

    - разрешение (количество точек, с которым изображение воспроизводится на экране) - в настоящее время типовые уровни разрешения составляют 800*600 точек или 1024*768 точек. Однако для мониторов с большой диагональю можно использовать разрешение 1152*864 пикселей.

    - глубина цвета (количество бит, используемое для кодирования цвета точки), например, 8, 16, 24, 32 бита. Каждый цвет можно рассматривать как возможное состояние точки, Тогда количество отображаемых на экране монитора цветов можно рассчитать по формуле K=2 I, где K- количество цветов I– глубина цвета или разрядность.

    Кроме вышеперечисленных знаний, учащийся должен иметь представление о палитре:

    - палитра (количество цветов, которые используются для воспроизведения изображения), например 4 цвета, 16 цветов, 256 цветов, 256 оттенков серого, 216 цветов в режиме High color или 224, 232 цвета в режиме True цветовой режим.

    Учащийся также должен знать взаимосвязь между единицами информации, уметь переводить из мелких единиц в более крупные, Кбайты и Мбайты, пользоваться обычным калькулятором и Wise Calculator.

    Уровень "3"

    1. Определить необходимый объем видеопамяти для разных графических режимов экрана монитора, если известна глубина цвета на одну точку. (2.76)

    Глубина цвета (бит на точку)

    <р>1. Всего точек на экране (разрешение): 640 * 480 = 307200
    2. Требуемый объем видеопамяти V= 4 бит * 307200 = 1228800 бит = 153600 байт = 150 Кб.
    3. Аналогично рассчитывается необходимое количество видеопамяти для других графических режимов. При расчетах учащийся использует калькулятор для экономии времени.

    Битовая глубина определяет количество уникальных цветов, доступных в цветовой палитре изображения, с точки зрения количества нулей и единиц, или «битов», которые используются для указания каждого цвета.Это не означает, что изображение обязательно использует все эти цвета, но вместо этого оно может задавать цвета с таким уровнем точности. Для изображения в градациях серого глубина цвета определяет количество доступных уникальных оттенков. Изображения с более высокой битовой глубиной могут кодировать больше оттенков или цветов, так как доступно больше комбинаций 0 и 1.

    ТЕРМИНОЛОГИЯ

    Каждый цветной пиксель цифрового изображения создается комбинацией трех основных цветов: красного, зеленого и синего. Каждый основной цвет часто называют «цветовым каналом» и может иметь любой диапазон значений интенсивности, определяемый его битовой глубиной. Битовая глубина для каждого основного цвета называется «бит на канал». «Бит на пиксель» (bpp) относится к сумме битов во всех трех цветовых каналах и представляет общее количество цветов, доступных для каждого пикселя. С цветными изображениями часто возникает путаница, потому что может быть неясно, относится ли указанное число к битам на пиксель или к битам на канал. Использование суффикса "bpp" помогает различать эти два термина.

    ПРИМЕР

    СРАВНЕНИЕ

    В следующей таблице показаны различные типы изображений с точки зрения разрядности (разрядности), общего количества доступных цветов и распространенных имен.

    Бит на пиксель Доступное количество цветов Общие имена
    1 2 Монохромный
    2 4 CGA
    4 16 EGA
    8 256 VGA
    16 65536 XGA, High Color
    24 16777216 SVGA, True Color
    32 16777216 + прозрачность
    48 281 трлн

    ВИЗУАЛИЗАЦИЯ БИТОВОЙ ГЛУБИНЫ

    Если навести указатель мыши на любой из ярлыков ниже, изображение будет повторно отображаться с использованием выбранного количества цветов. Разница между 24 и 16 битами на пиксель незначительна, но будет хорошо заметна, если ваш дисплей настроен на истинный цвет или выше (24 или 32 бита на пиксель).

    24 бит на пиксель 16 бит на пиксель 12 бит на пиксель 10 бит на пиксель 8 бит на пиксель
    Визуализация битовой глубины

    ПОЛЕЗНЫЕ СОВЕТЫ





    Хотите узнать больше? Обсудите эту и другие статьи на наших форумах по цифровой фотографии.

    Bpp или бит на пиксель обозначает количество бит на пиксель. Количество различных цветов в изображении зависит от глубины цвета или количества битов на пиксель.

    Кратко о математике:

    Это похоже на игру с двоичными битами.

    Сколько чисел может быть представлено одним битом.

    Сколько двухбитовых комбинаций можно составить.

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

    бит на пиксель

    Где bpp обозначает количество бит на пиксель. Подставьте 1 в формулу, получите 2, подставьте 2 в формулу, получите 4. Она растет экспоненциально.

    Количество разных цветов:

    Теперь, как мы сказали в начале, количество различных цветов зависит от количества битов на пиксель.

    Таблица некоторых битов и их цвета приведены ниже.

    В этой таблице показаны различные биты на пиксель и количество цвета, которое они содержат.

    Оттенки

    Вы можете легко заметить закономерность экспоненциального роста. Знаменитое изображение в оттенках серого имеет 8 бит на пиксель , что означает, что оно содержит 256 различных цветов или 256 оттенков.

    Оттенки могут быть представлены как:

    shades

    Цветные изображения обычно имеют формат 24 бит/пиксель или 16 бит/пиксель.

    Мы узнаем больше о других цветовых форматах и ​​типах изображений в руководстве по типам изображений.

    Цветовые значения:

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

    Черный цвет:

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

    Белый цвет:

    Значение, обозначающее белый цвет, можно рассчитать следующим образом:

    white_color

    В случае 1 бит/пиксель 0 – черный, 1 – белый.

    В случае 8 бит/с 0 означает черный, а 255 – белый.

    Серый цвет:

    Когда вы вычисляете значение черного и белого цвета, вы можете вычислить значение пикселя серого цвета.

    Серый цвет на самом деле является средней точкой черного и белого. При этом

    В случае 8 бит на пиксель значение пикселя, обозначающее серый цвет, составляет 127 или 128 бит на пиксель (если считать от 1, а не от 0).

    Требования к хранению изображений

    После обсуждения количества бит на пиксель у нас есть все, что нужно для расчета размера изображения.

    Размер изображения

    Размер изображения зависит от трех факторов.

    • Количество строк
    • Количество столбцов
    • Количество бит на пиксель

    Формула расчета размера приведена ниже.

    Размер изображения = количество строк * столбцов * бит/пиксель

    Это означает, что если у вас есть изображение, скажем, вот это:

    einstein

    Предположим, что в нем 1024 строки и 1024 столбца. И поскольку это изображение в градациях серого, оно имеет 256 различных оттенков серого или количество битов на пиксель. Затем подставляя эти значения в формулу, получаем

    Размер изображения = количество строк * столбцов * бит/пиксель

    Но поскольку это не стандартный ответ, который мы распознаем, мы преобразуем его в наш формат.

    Преобразование в байты = 8388608 / 8 = 1048576 байт.

    Перевод в килобайты = 1048576 / 1024 = 1024 КБ.

    Перевод в мегабайты = 1024/1024 = 1 Мб.

    Так рассчитывается размер изображения и сохраняется. Теперь в формуле, если вам задан размер изображения и количество бит на пиксель, вы также можете вычислить строки и столбцы изображения, если изображение квадратное (одинаковые строки и один и тот же столбец).

    Читайте также:

    Бит на пиксель Количество цветов
    1 бит на пиксель 2 цвета
    2 бита на пиксель 4 цвета
    3 бита на пиксель 8 цветов
    4 бита на пиксель 16 цветов
    5 бит на пиксель 32 цвета
    6 бит на пиксель 64 цвета
    7 бит на пиксель 128 цветов
    8 бит на пиксель 256 цветов
    10 бит на пиксель 1024 цвета
    16 бит на пиксель 65536 цветов
    24 бит на пиксель 16777216 цветов (16,7 миллиона цветов)
    32 бита на пиксель 4294967296 цветов (4294 миллиона цветов)