Какие графические файлы занимают меньше места в памяти компьютера

Обновлено: 03.07.2024

Форматы графических файлов можно разбить на 2 большие группы: универсальные и специализированные.

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

Форматы второй группы используют для хранения изображений.

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

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

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

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

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

Для рисунков типа диаграммы целесообразно применение другого метода сжатия, который использует поиск повторяющихся в рисунке «узоров». Такой алгоритм используется в графических файлах форматов TIFF и GIF и позволяет сжать файл в несколько раз.

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

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

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

Рассмотрим некоторые форматы графических файлов более подробно.

Bit MaP image (BMP) — универсальный формат растровых графических файлов, используется в операционной системе Windows. Этот формат поддерживается многими графическими редакторами, в том числе редактором Paint. Рекомендуется для хранения и обмена данными с другими приложениями.

Tagged Image File Format (TIFF) — формат растровых графических файлов, поддерживается всеми основными графическими редакторами и компьютерными платформами. Включает в себя алгоритм сжатия без потерь информации. Используется для обмена документами между различными программами. Рекомендуется для использования при работе с издательскими системами.

Graphics Interchange Format (GIF) — формат растровых графических файлов, поддерживается приложениями для различных операционных систем. Включает алгоритм сжатия без потерь информации, позволяющий уменьшить объем файла в несколько раз. Рекомендуется для хранения изображений, создаваемых программным путем (диаграмм, графиков и так далее) и рисунков (типа аппликации) с ограниченным количеством цветов (до 256). Используется для размещения графических изображений на Web-страницах в Интернете.

Portable Network Graphic (PNG) — формат растровых графических файлов, аналогичный формату GIF. Рекомендуется для размещения графических изображений на Web-страницах в Интернете.

Joint Photographic Expert Group (JPEG) — формат растровых графических файлов, который реализует эффективный алгоритм сжатия (метод JPEG) для отсканированных фотографий и иллюстраций. Алгоритм сжатия позволяет уменьшить объем файла в десятки раз, однако приводит к необратимой потере части информации. Поддерживается приложениями для различных операционных систем. Используется для размещения графических изображений на Web-страницах в Интернете.

Windows MetaFile (WMF) — универсальный формат векторных графических файлов для Windows-приложений. Используется для хранения коллекции графических изображений Microsoft Clip Gallery.

Encapsulated PostScript (EPS) — формат векторных графических файлов, поддерживается программами для различных операционных систем. Рекомендуется для печати и создания иллюстраций в настольных издательских системах.

CorelDRaw files (CDR) — оригинальный формат векторных графических файлов, используемый в системе обработки векторной графики CorelDraw.

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

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

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

Схематичное изображение PCX, GIF и PNG

На что при загрузке сайта расходуется больше трафика? Чаще всего это картинки, и их суммарный «вес» частенько в несколько раз больше, чем у разметки, скриптов и стилей. В файлах изображений распространенных форматов растровые данные хранятся в сжатом виде, и это значительно лучше, чем несжатый BMP. А если хочется ещё лучше? Ведь в достаточно крупных проектах каждый байт на счету (например, в TradingView, чего уж там скромничать).

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

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

Средневековье

Восьмидесятые годы прошлого столетия стали временем становления растровой графики. Графика как таковая применялась и раньше, но теперь она стала гораздо более доступна, и не в последнюю очередь на неё повлияла игровая индустрия. Atari 2600 позволяла рисовать нечто более изысканное, чем белый прямоугольник. А Commodore 64 обладал видеопамятью, с настоящими пикселями, и работать с ним было удобнее, чем «переключи цвет не позже 31415-го такта».

Нарисовать на экране Мону Лизу, выставляя пиксели вручную по хитрому алгоритму, трудновато. Да и не нужно, потому что из видеопамяти выдернуть кусок данных и сохранить его в файл, а потом из файла вставить. Такой дамп памяти в Бейсике делался командой BSAVE , а сам формат назывался в честь неё BSAVE'd. Редактировать изображения стало намного удобней, и расцвели пышным цветом простенькие графредакторы, большей частью неотличимые друг от друга.

Но некоторые из редакторов переросли детский возраст и стали весьма удобным и полезным инструментом. Так в 1984 появился PCPaint, в котором можно было рисовать при помощи мыши. Помимо очевидных удобств пользовательсого интерфейса PCPaint давал еще одно преимущество. Дело в том, что дамп BSAVE не включал данных о размере изображения, глубине цвета и палитре, и если видеорежимов было немного (да и цветное изображение вменяемо показывалось в черно-белом режиме) то для палитры приходилось использовать отдельный файлик PAL. В формате PIC редактора PCPaint содержались и палитра, и дамп BSAVE. Это маленький шаг для программиста и гигантский скачок для всего человества. Что-то вроде «а давайте придумаем формат MKV, в котором субтитры можно будет хранить внутри, и чтобы не нужно было их в нужную папочку класть».

Но еще одна проблема оставалась нерешенной: на PC есть BSAVE и на Apple есть BSAVE , но они генерируют файлы разного формата. Это и не удивтельно, внутреннее представление картинки в памяти различалось. Существовали транскодеры, но стало понятно, что долго эта вендор-зависимая кутерьма не продержится. В 1984 компания Truevision представила формат TARGA, более известный как TGA. А в следующем 1985 году свет увидела рисовалка PC Paintbrush. Хотя PC Paintbrush и продавалась хуже, её формат PCX, переносимый и достаточно простой, прожил дольше, чем PIC.

И в TGA, и в PCX данные о размере изображения и палитре хранились в явном виде, без сильной привязки к железу. Это стало возможным, потому как пиксельные данные перестали зависеть о конкретной платформы и представляли из себя просто сканлайны: слева направо, сверху вниз.

Но была ещё одна важная особенность у этих двух форматов, растровые данные в них хранились в сжатом виде. Применяемый алгоритм RLE не был верхом эффективности, но это было уже весьма неплохо.

RLE (Run length encoding) достаточно простой алгоритм, но он хорошо показывает, как работает сжатие данных. Сжать данные без потерь означает, избавиться от избыточности в них. Для этого берем набор данных, находим в них цепочки повторяющихся значений и заменяем их на нечто более компактное.

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

Скорее всего, Вы уже пользуетесь им. Посмотрим на строку « AAAAAAAAAAAABBBAAAAAAAAA ». Если нам придется продиктовать её по телефону, то это будет звучать как «двенадцать заглавных букв A, три заглавные B, девять заглавных A». Если записать это, получится « 12 A 3 B 9 A », а чтобы не было разночтений, то « 9 A 3 A 3 B 9 A ». Гораздо компактнее.

Возьмем теперь другую строку, « 0KXQsNCx0YDQsNGF0LDQsdGA », и попытаемся её так сжать. Получится « 1 0 1 K 1 X …», стоп-стоп-стоп! Строка получается вдвое длиннее, чем исходная, это же ни разу не сжатие. Модифицируем алгоритм и добавим к цифрам буквы: буква A означает, что следующий символ пишется «как есть»; если B, то два; если C, то три, и так далее. Выходит « X 0KXQsNCx0YDQsNGF0LDQsdGA ». Итого, в лучшем случае мы получаем сжатие в 350%, а худшем случае мы теряем только 4%.

Разумеется, в реальных условиях кодируются обычно байты, а не буквы латинского алфавита, и длины последовательностей кодируются значениями от 0 до 255. Плюс к тому, обычно бессмысленные значения длин серий игнорируются: в нашем примере 1 и A делают одно и тоже, а 0 вообще смысла не имеет. Но это детали, суть остается одна и та же.

Энтропия

Как бы ни хотелось избежать теории, эта вещь слишком важная, чтобы её игнорировать. Вы заметили, что не все последовательности получается сжать? Строки AAAAAAAAAAAABBBAAAAAAAAA и 0KXQsNCx0YDQsNGF0LDQsdGA одной длины, 24 символа, но во второй эти символы более хаотичны, и её сжать труднее.

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


Судоку слева содержит 81 цифру и уже решен. Тот, что посередине, содержит меньше информации, 26 цифр, но решив его, можно восстановить все исходные 81.

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

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

  • Изображение может иметь размеры до 65536×65536. Палитра до 256 цветов, либо 24-битный цвет без палитры. Заголовок всегда размером 128 байт, содержит размер изображения, количество цветов и палитру до 16 цветов по одному байту на канал. Естественно, 256-цветовая палитра в такой заголовок не влезет, и если она есть, она дописывается в конец файла и имеет размер 769 байт (1 байт сигнатуры и 256×3 байт данных). Есть ещё поле для палитры CGA, но она более не поддерживается.
  • «Сырой» поток данных состоит из сканлайнов — горизонтальных линий в один писель. Внутри каждого сканлайна может быть до 4 битовых плоскостей: R, G, B, A. Все плоскости пишутся последовательно: RRRRGGGGBBBBAAAA . Плоскости состоят из строго чётного количества байтов, и при необходимости к сырым данным дописываются заполнители, чтобы это условие выполнялось. Такие данные-заполнители при декодировании игнорируются.
  • Сжатие «сырых» растровых данных производится построчно, при помощи RLE. «Построчно» означает, что серия RLE не может выходить за пределы битовой плоскости.
  • В RLE байтовые значения от 192 до 255 кодируют количество повторений символа от 0 до 63 раз соответственно. Остальные значения — литеральные, если ни встречаются на том месте, где ожидается количество повторений, считается, что они повторяются один раз.

PCX на практике

Теперь давайте на примере разберем этот шмат технических данных. Возьмем для примера такую вот картинку (17×8, для удобства увеличена в 8 раз):

Определимся с палитрой. В изображении три разных цвета, поэтому нам подходят палитры из 4, 16 и 256 цветов, а также Truecolor. В 4-цветовой палитре у нас будет в одном байте 4 значения (8 бит байта поделить на 2 бита номера в палитре); в 16-цветовой — 2 пикселя на байт; в 256-цветовой — пиксель на байт (плюс 769 байт дополнительной палитры); в Truecolor — три байта на пиксель. Выбор очевиден, 4 цвета.

Цвета расположим, например, так:

Теперь выписываем битовые значения первой строки, начиная со старших битов. Листинг в четверичной системе, разделители — границы байтов.

0000 0000 0000 0000 0

Получается 4,25 байта. RLE с дробными байтами не работает, добиваем до пяти.

0000 0000 0000 0000 0 000

В документации сказано, что в сканлайне должно быть чётное количество байт. Делать нечего, добиваем ещё.

0000 0000 0000 0000 0 000 0000

То же самое проделываем с остальными строками, получаем:

0000 0000 0000 0000 0 000 0000
0111 1111 1111 1111 0 000 0000
0121 2121 2121 2121 0 000 0000
0212 1212 1212 1212 0 000 0000
0222 2222 2222 2222 0 000 0000
0202 0202 0202 0202 0 000 0000
0020 2020 2020 2020 0 000 0000
0000 0000 0000 0000 0 000 0000

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

0000 0000 0000 0000 0 000 0000
0111 1111 1111 1111 0 000 0000
0121 2121 2121 2121 0 000 0000
0212 1212 1212 1212 0 000 0000
0222 2222 2222 2222 0 000 0000
0202 0202 0202 0202 0 000 0000
0020 2020 2020 2020 0 000 0000
0000 0000 0000 0000 0 000 0000

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

0000 0000 0000 0000 0 000 0000
0111 1111 1111 1111 0 000 0000
0121 2121 2121 2121 0 000 0000
0212 1212 1212 1212 0 000 0000
0222 2222 2222 2222 0 000 0000
0202 0202 0202 0202 0 202 0202
0020 2020 2020 2020 0 000 0000
0000 0000 0000 0000 0 000 0000

Закодируем получившееся в RLE. Пожалуй, будет удобней перейти к более привычному шестнадцатеричному виду:

00 00 00 00 00 00
15 55 55 55 00 00
19 99 99 99 00 00
26 66 66 66 00 00
2A AA AA AA 00 00
22 22 22 22 22 22
08 88 88 88 00 00
00 00 00 00 00 00

Кодируем первую строку. 6 байт 0x00 . Повтору 6 раз соответсвует значение 192 + 6 = 198 или C6 . После него пишем, какое же значение мы собираемся повторять 6 раз, получается 0xC6 0x00 . Первый сканлайн готов.

Далее три одинаковых байта становятся 0xC3 0x55 .

И в конце строки два нулевых байта, которые можно представить двумя способами: в лоб, 0x00 0x00 , или более хитро, 0xC2 0x00 . И так и сяк два байта. На девушек произвести впечатление хитрым приёмом вряд ли получится, а других причин делать вещи заковыристее, чем требуется, нету, поэтому берем просто 0x00 0x00 .

Продолжая подобным образом, получим:

PCX на практике 2: палитра

Возьмем теперь другое изображение и снова переведем его в PCX, пытаясь максимально сжать. На этот раз картинка поменьше, 7×5.

Это НЛО. Знаю, что не очень похоже.

Перво-наперво, выберем глубину цвета: 2 бита. Это четыре цвета, как раз, сколько нам и нужно. Определяем палитру, например, так:

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

Сырые данные Сжатые данные
0F C0
3A B0
FF FF
D9 9C
3F F0
0F C1 C0
3A B0
C2 FF
C1 D9 9C
3F C1 F0

Упс! Сжатые данные получились больше по размеру, чем исходные. Это потому, что значения от 0xC0 до 0xFF — это маркеры количества повторений, и их нельзя записать просто так. Вместо 0xC0 пришлось подставить C1 C0 , вместо 0xF0 — 0xC1 0xF0 и так далее.

В случае 0xFF 0xFF нам повезло — там мы драгоценных байт не потеряли. Но в целом выходит унылая картина: теперь RLE вместо того, чтобы помогать, только мешает.

В сторону безысходность, посмотрим, что с этим можно сделать. Маркерами являются байты с двумя старшими битами равными единице, 11XXXXXX. Данные пишутся последовательно, начиная со старшего бита. Зачит, при двухбитной глубине цвета на то, будет ли байт маркером или нет, влияют пиксели по смещению 4×n. А именно, пиксели цвета под номером 3 (в нашем случае, темно-серый).

Вот они, виновники разрастания размеров файла. В третьей строке темно-серые пиксели тоже попадают в выделенные колонки, но погоды они нам не делают: сама строка при кодировании даст два одинаковых байта.

Порядок цветов в палитре мы определяем сами, поэтому выберем в качестве цвета номер 3 тот, который меньше всего встречается по смещению 4×n. Синий — лучший кандидат, он не встречается на таких местах вообще ни разу. Переопределяем палитру и делаем вторую попытку.


Сырые данные Сжатые данные
0A 80
25 60
AA AA
B7 78
2A A0
0A 80
25 60
AA AA
B7 78
2A A0

Сжатые данные оказались идентичны исходным. RLE это изображение пришлось не по зубам, но хотя бы нет и оверхеда. Так или иначе, растровые данные готовы, и это максимум, что можно выжать.

Итого

Еще раз вкратце техники, помогающие уменьшить вес PCX:

  • Выбор минимально возможной глубины цвета (размера палитры);
  • Оптимизация мусорных данных;
  • Удаление бессмысленных данных (серии длиной 0);
  • Оптимизация палитры.

Продолжение следует

Ну вот, пожалуй, и всё. Про TGA я рассказывать не буду, он хоть и отличается от PCX, но сходств гораздо больше, чем отличий. А других прямо уж примечательных графических форматов того времени и не было.

Кроме, конечно же, формата GIF компании CompuServe. В нем мы и покопаемся в следующий раз.


В данный момент вы не можете посмотреть или раздать видеоурок ученикам

Чтобы получить доступ к этому и другим видеоурокам комплекта, вам нужно добавить его в личный кабинет, приобрев в каталоге.

Получите невероятные возможности



2. Раздавайте видеоуроки в личные кабинеты ученикам.


3. Смотрите статистику просмотра видеоуроков учениками.

Конспект урока "Растровая и векторная графика. Форматы графических файлов"

· формат графического файла.

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

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

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


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

А как вы думаете, можно ли в современном мире используя компьютер, знания и умения работы с компьютером стать художником или дизайнером, не обладая особым талантом?

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

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

Как вы помните компьютерная графика — это изображения, подготовленные при помощи компьютера. Компьютер может обрабатывать информацию, представленную только в цифровой форме. Значит, изображение надо представить в цифровой форме. Наиболее распространены два способа представления изображений: растровый и векторный. Существует ещё фрактальный способ представления графических изображений.

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

Разные сканеры разбивают картинку на разное число пикселей. Размеры пикселя зависят от разрешающей способности сканера, которая обычно выражается в dpi (что означает — точек на дюйм) и задаётся парой чисел (например, 600 х 1200 dpi). Первое число — это количество пикселей, которые могут быть выделены сканером в строке изображения длиной в 1 дюйм. Второе число — количество строк, на которые может быть разбита полоска изображения высотой в 1 дюйм.

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


Слово растровый происходит от латинского Раструм – решётка.

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

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

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

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


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

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


Как вы думаете, какие изображения лучше?

Точно ответить на данный вопрос нельзя. Так как у каждого из них есть свои достоинства и недостатки.

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

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


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

Теперь разберёмся с вопросом какая графика называется фрактальной.

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


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

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

Рассмотрим некоторые форматы графических файлов более подробно.

BMP — универсальный формат растровых графических файлов, используется в операционной системе Windows. Этот формат поддерживается многими графическими редакторами, в том числе редактором Paint. Рекомендуется для хранения и обмена данными с другими приложениями. Изображения сохранённые в этом формате занимают большой объём памяти, так как в них на хранение информации о увете каждого пикселя отводится 24 бита.

GIF — универсальный формат растровых графических файлов, поддерживается приложениями для различных операционных систем. Рекомендуется для хранения изображений, создаваемых программным путём (диаграмм, графиков и так далее) и рисунков (типа аппликации) с ограниченным количеством цветов (до 256) то есть занимают небольшой информационный объем. Что очень важно для размещения графических изображений на Web-страницах в Интернете.

JPEG — универсальный формат растровых графических файлов. Поддерживается приложениями для различных операционных систем. Используется для размещения графических изображений на Web-страницах в Интернете.

WMF — универсальный формат векторных графических файлов для Windows-приложений. Используется для хранения коллекции графических изображений Microsoft Clip Gallery.

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

С собственными форматами мы с вами познакомимся в процессе работы с графическими изображениями.

Перейдём к практической части урока.

Рассмотрим следующую задачу. Растровое изображение занимает в памяти компьютера 8 килобайт. Размер данного изображения 256 на 256 пикселей. Нужно определить максимально возможное число цветов в палитре изображения.


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

Растровые изображения - это картинки, состоящие из большого количества цветных точек (пикселей).

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

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

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

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

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

С развитием компьютеров и интернета появлялись новые форматы для записи изображений в файлы. Каждый формат имеет свои преимущества и недостатки.

В этой статье я решил попробовать разобраться какой формат изображения лучше и рассказать о наиболее распространенных форматах графических - JPEG, TIFF, PNG, и GIF.

Какой формат изображения лучше?

Формат JPEG

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

какой формат изображения лучше

Формат JPEG для цифровых камер

Небольшой размер файла JPEG идет в ущерб качеству изображения. Степень сжатия можно устанавливать в настройках графических программ — ниже качество меньше файл изображения и наоборот чем выше качество тем большим размером получается файл.

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

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

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

Формат TIFF

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

Формат TIFF позволяет сохранять несколько слоев, что очень удобно при дальнейшем редактировании, и в отличии от JPEG может иметь разрядность 8 или 16 на канал. TIFF является наиболее универсальным, и как правило используется для хранения оригиналов изображений, которые в дальнейшем можно редактировать. Но имейте в виду что браузеры не отображают TIFF файлы.

Формат GIF

Глубиной цвета данный формат нас не радует, всего 8 бит (256 цветов максимум) и использовать его для хранения фотографий не рекомендуется (фото имеют 24 битную глубину цвета).

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

Формат PNG

Был создан сравнительно недавно для замены устаревшего GIF (браузеры показывают оба формата), и в некоторой степени более сложного TIFF формата. PNG является растровым форматом с использованием сжатия без потерь, не поддерживает анимацию и может иметь 48 битную глубину цвета.

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

Типов файлов в зависимости от цели использования:

Итоги

Какой какой формат изображения лучше и как выбрать тип файла в зависимости от области использования:

  • Лучшая компрессия — с потерями для маленьких файлов — JPEG, или без потерь для наилучшего качества изображений — TIFF и PNG
  • Полноцветный RGB для фотографий — TIFF, PNG, JPEG
  • Прозрачность или анимация для использования в графике — GIF и PNG
  • Документы, штриховые рисунки, многостраничные текстовые, факс, и т.д. — TIFF
  • Полиграфия где используется цветовая модель CMYK — TIFF

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

Так как Вы заинтересовались форматом изображений и их отличиями, могу предположить, что одна из Ваших сфер деятельности связана с сайтами или лендингами. Рекомендую Вашему вниманию бесплатную книгу «Анатомия продающих лендингов». Очень полезная книга из которой Вы узнаете:

  • 4 элемента первого экрана продающего лендинга
  • 3 простые и работающие формулы продающего заголовка
  • анатомия конверсионной страницы

Скачивайте книгу «Анатомия продающих лендингов» и применяйте на практике полученные знания.

Еще ее называют графическим ускорителем или адаптером. Без этого устройства было бы невозможно вывести на монитор изображение, передаваемое компьютером.
Существуют встроенные карты в материнскую плату (интегрированные) и дискретные (внешние). Адаптеры второго типа представляют собой отдельные модули, подключаемые к материнке компьютера.

Материнка компьютера


От мощности этого устройства и количества ее памяти зависит производительность ПК и его возможность работы с ресурсоемкими графическими утилитами. Определять эту характеристику можно как встроенными инструментами «Семерки», так и с помощью сторонних программ.

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

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

Сколько нужно видеопамяти

Это зависит от того, как вы будете использовать компьютер. Рассмотрим на примере игровых ПК и узнаем, сколько потребляют современные игры видеопамяти.


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

  1. Для какого разрешение экрана делается рендеринг
  2. Качество текстур
  3. Дальность прорисовки
  4. Некоторые типы сглаживания (TXAA или MSAA)

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


Игра заполняла видеопамять насколько это было возможно, с небольшим запасом. В зависимости от видеокарты этот объем был от 6 ГБ до 11 ГБ, т.е. использовался максимально доступный VRAM. С заполненной графической памятью вы не заметите лагов. Но… Посмотрим на график производительности:


Способы определения памяти графического адаптера

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

Наиболее эффективны и удобны следующие способы:

  1. Ознакомиться с паспортом оборудования или просто прочесть сведения на его упаковке, где производителем точно указан объем памяти графического устройства;
  2. Через встроенные инструменты «Виндовс 7»;
  3. С использованием специальных утилит.

Задачи на расчет информационного объёма растрового графического изображения

Теория

Расчёт информационного объёма растрового графического изображения (количества информации, содержащейся в графическом изображении) основан на подсчёте количества пикселей в этом изображении и на определении глубины цвета (информационного веса одного пикселя).

При расчетах используется формула V = i * k,

где V – это информационный объём растрового графического изображения, измеряющийся в байтах, килобайтах, мегабайтах;

k – количество пикселей (точек) в изображении, определяющееся разрешающей способностью носителя информации (экрана монитора, сканера, принтера);

i – глубина цвета, которая измеряется в битах на один пиксель.

Глубина цвета задаётся количеством битов, используемым для кодирования цвета точки.

Глубина цвета связана с количеством отображаемых цветов формулой

N = 2i, где N – это количество цветов в палитре, i – глубина цвета в битах на один пиксель.

Примеры

1. Видеопамять компьютера имеет объем 512Кб, размер графической сетки 640×200, в палитре 8 цветов. Какое количество страниц экрана может одновременно разместиться в видеопамяти компьютера?

Найдем количество пикселей в изображении одной страницы экрана:

k = 640*200=128000 пикселей.

Найдем i (глубину цвета, т.е. сколько бит потребуется для кодировки одного цвета) N = 2i, следовательно, 8 = 2i, i = 3.

Находим объем видеопамяти, необходимый для размещения одной станицы экрана. V = i * k (бит), V = 3*128000 = 384000(бит) = 48000 (байт) = 46,875Кб.

Т.к. объем видеопамяти компьютера 512Кб, то можно одновременно хранить в видеопамяти компьютера 512 / 46,875 = 10,923 ≈ 10 целых страниц экрана.

10 полных страниц экрана можно одновременно хранить в видеопамяти компьютера

2. В результате преобразования растрового графического изображения количество цветов уменьшилось с 256 до 16. Как при этом изменился объем видеопамяти, занимаемой изображением?

Используем формулы V = i * k и N = 2i.

N1 = 2i1, N2 = 2i2, затем V1 = i1 * k, V2 = i2 * k, следовательно,

256 = 2i1, 16 = 2i2,

V1 = 8 * k, V2 = 4 * k.

объём графического изображения уменьшится в два раза.

3. Сканируется цветное изображение стандартного размера А4 (21×29,7 см2). Разрешающая способность сканера 1200dpi (точек на один дюйм) и глубина цвета 24 бита. Какой информационный объём будет иметь полученный графический файл?

i=24 бита на пиксель;

Переведем размеры изображения в дюймы и найдем количество пикселей k: k = (21/2,54)*(29,7/2,54)*12002(dpi) ≈ 139210118 (пикселей)

Используем формулу V = i * k

V=139210118*24 = 3341042842 (бита) = 417630355байт = 407842Кб = 398Мб

объём сканированного графического изображения равен 398 Мб

Задачи для самостоятельного решения

1. Определите количество цветов в палитре при глубине цвета 4, 8, 16, 24, 32 бита.

2. В процессе преобразования растрового графического изображения количество цветов уменьшилось с 65536 до 16. Во сколько раз уменьшится информационный объем файла?

3. 256-цветный рисунок содержит 120 байт информации. Из скольких точек он состоит?

4. Достаточно ли видеопамяти объёмом 256 Кбайт для работы монитора в режиме 640×480 и палитрой из 16 цветов?

5. Какой объем видеопамяти необходим для хранения двух страниц изображения при условии, что разрешающая способность дисплея равна 640×350 пикселей, а количество используемых цветов – 16?

6. Какой объем видеопамяти необходим для хранения четырех страниц изображения, если битовая глубина равна 24, а разрешающая способность дисплея 800×600 пикселей?

7. Объем видеопамяти равен 2 Мб, битовая глубина 24, разрешающая способность дисплея 640×480. Какое максимальное количество страниц можно использовать при этих условиях?

8. Видеопамять имеет объем, в котором может храниться 4-х цветное изображение размером 640×480. Какого размера изображение можно хранить в том же объеме видеопамяти, если использовать 256 – цветную палитру?

9. Для хранения растрового изображения размером 1024×512 отвели 256 Кб памяти. Каково максимальное возможное количество цветов в палитре изображения?

Задачи на расчет объёма звуковой информации

Теория

Звук может иметь различные уровни громкости. Количество различных уровней рассчитывается по формуле N = 2i, где i — глубина звука.

Частота дискретизации — количество измерений уровня входного сигнала в единицу времени (за 1 секунду).

Размер цифрового моноаудиофайла вычисляется по формуле А=Д*Т*i,

где Д- частота дискретизации;

Т- время звучания или записи звука;

i — разрядность регистра (глубина звука).

Для стереоаудиофайла размер вычисляется по формуле А=2*Д*Т*i

Примеры

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

Если записывают стереосигнал

А = 2*Д*Т*i = 44100*120*16 = 84672000бит = = 10584000байт = 10335,9375Кб = 10,094Мб.

Если записывают моносигнал А = 5Мб.

2. Объем свободной памяти на диске — 0,01 Гб, разрядность звуковой платы — 16. Какова длительность звучания цифрового аудиофайла, записанного с частотой дискретизации 44100 Гц.

Т = 10737418,24/44100/2 = 121,74(сек) = 2,03(мин)

Задачи для самостоятельного решения

1. Определить размер (в байтах) цифрового аудиофайла, время звучания которого составляет 10 секунд при частоте дискретизации 22,05 кГц и разрешении 8 бит. Файл сжатию не подвержен.

2. В распоряжении пользователя имеется память объемом 2,6 Мб. Необходимо записать цифровой аудиофайл с длительностью звучания 1 минута. Какой должна быть частота дискретизации и разрядность?

3. Объем свободной памяти на диске – 0,01 Гб, разрядность звуковой платы – 16. Какова длительность звучания цифрового аудиофайла, записанного с частотой дискретизации 44100 Гц?

4. Одна минута записи цифрового аудиофайла занимает на диске 1,3 Мб, разрядность звуковой платы – 8. С какой частотой записан звук?

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

Одним из хорошо зарекомендовавших себя приложений является свободно распространяемая программа «CPU-Z». Необходимо отметить, что утилита не только показывает параметры видеокарты, но еще и процессора и других важных комплектующих ПК.

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

Показатели


Также широкими возможностями обладает приложение «AIDA64». Его необходимо запустить и выполнить следующие простые действия:

«Компьютер»


Далее выделить строку «Суммарная информация».

В правом окошке найти параметры интересующего комплектующего оборудования.

Как увеличить видеопамять интегрированного GPU

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

Это почти все современные процессоры от Intel, за исключением серверных Xeon, а также AMD поколений А и Ryzen. Необходимый объем виртуальной памяти, которая необходима для работы графического чипа, они получают за счет общей ОЗУ. Эта величина может быть ограничена в настройках.

  • Зайти в настройки BIOS / UEFI. Для этого нужно перезагрузить компьютер и до загрузки операционной системы нажать одну из клавиш — Escape, Delete, F2, F8 или F10. Какую именно кнопку жать, зависит от модели системной платы и от версии БИОС.
  • Найти в меню пункт VGA Sharing Memory.
  • Параметру Frame Buffer Size присвоить необходимое значение. Для современных компьютеров минимальный размер видеопамяти рекомендуется установить не менее 2 Гб.
  • Сохранить изменения с помощью кнопки F10 и перезагрузить компьютер.

Если установить это значение как Auto, то компьютер будет брать в качестве видеопамяти столько ОЗУ, сколько ему требуется для выполнения определенной задачи. Если физической RAM мало и вы запустили «прожорливое» приложение (например, видеоигру), возможны лаги и зависания.

В современных материнских платах вместо BIOS используется UEFI — русифицированная графическая оболочка, изменять настройки в которой можно в том числе и с помощью мышки. Чтобы внести необходимые изменения, найдите пункт «Видеопамять».

Для владельцев видеокарт NVIDIA

Производитель этого графического ускорителя создал специальную «Панель управления» для своего устройства. Надо просто войти в нее и осуществить следующее:

«Справка»


Далее переместиться в раздел «Информация о системе»»;

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