Задача №1 (найти максимальное количество цветов)
 

Содержание:

Плохо понимаете, как решать задания на кодирование графической информации?

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

Скоро экзамен ЕГЭ по информатике и ИКТ, а у вас не получается правильно решать задания, ориентированные на кодирование графической информации? Не понимаете, как найти максимальное количество цветов в палитре? Если, да, то записывайтесь ко мне на частные занятия, ну, или внимательно читайте данный материал. wink

Мои индивидуальные занятия проходят в различных территориальных форматах, а именно:

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

Условие задачи

Автоматическая камера производит растровые изображения размером $200 × 256$ пикселей. Для кодирования цвета каждого пикселя используется одинаковое количество бит, коды пикселей записываются в файл один за другим без промежутков. Объём файла с изображением не может превышать $65$ Кбайт без учёта размера заголовка файла.

Какое максимальное количество цветов можно использовать в палитре?

Решение задачи

В первую очередь нужно выяснить, о каком типе графики идет речь! Напомню, что школьная программа подготовки к ЕГЭ по информатике предполагает знакомство учащихся с $3$-мя видами компьютерной графики:

растровая графика векторная графика фрактальная графика

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

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

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

Из постановки задачи нам известны:

  • габариты растрового изображения, выраженные в пикселях ($200 • 256$);

  • общий информационный вес изображения, выраженный в Кбайт ($65$ Кбайт).

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

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

$<Память\ на $1$\ пиксель>\ =\ \frac{<Общий\ размер\ памяти>}{<Общее\ количество\ пикселей>}$, [бит]

Для упрощения последующих математических выкладок сделаем следующее:

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

  2. Переведем единицы измерения информации из [Кбайт] в [бит].

$200 = 2 · 2 · 2 · 5 · 5 = 2^3 · 5^2$

$256 = 2 · 2 · 2 · 2 · 2 · 2 · 2 · 2 = 2^8$

$65\ [Кбайт] = 5 · 13\ [Кбайт] = 5 * 13 * 2^{13}\ [бит]$

Не забывайте, что в $1$-ом Кбайте $8\ 192$ или $2^{13}$ бит.cool Подставляем разложенные величины в формулу:

$I = \frac{5\ ·\ 13\ ·\ 2^{13} [бит]}{2^3\ ·\ 5^2\ ·\ 2^8} = \frac{5\ ·\ 13\ ·\ 2^{13} [бит]}{2^{11}\ ·\ 5^2} = \frac{4\ ·\ 13}{5} = \frac{52}{5} = 10.4$, [бит]

Но, глубина цвета должна выражаться целым числом бит, поэтому округляем "вниз" до ближайшего целого: $10.4 \approx 10$ [бит].

Вывод: на кодирование каждого пикселя заданного растрового изображения отводится ровно $10$ бит информации.

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

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

В общем виде эта формула имеет вид: $I = K · \log_2 N$, где:

$N$ - мощность алфавита $K$ - длина сообщения $I$ - количество информации в сообщении в битах

Сразу обратимся к вопросу в постановке задачи: "Какое максимальное количество цветов можно использовать в палитре?". Этот вопрос можно переформулировать так: "Какое максимальное количество цветов можно использовать в изображении?"..

А лучше переформулируем еще точнее и понятнее: "Какое максимальное количество цветов может принимать каждый пиксель заданного изображения?". Т к все пиксели растровой картинки структурно идентичны друг другу, т е имеют одинаковую глубину цвета, то нам достаточно разобрать $1$ конкретный пиксель.

Поэтому в формуле Хартли величина $K$ будет равна $1$ и формула примет сокращенную форму: $I = \log_2 N$.

$I$ - глубина цвета, и мы уже ее посчитали ранее: $I$ = 10 [бит].

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

Выражаем из сокращенной формулы Хартли величину $N$, используя свойства логарифма: $N = 2^I = 2^{10} = 1\ 024$, различных цвета.

Именно это значение нам следует выписать в бланк ответов официального экзамена ЕГЭ по информатике. Выписывается только число без указаний каких-либо единиц измерения информации.

Ответ: $1\ 024$.

Выводы

Во-первых, внимательно несколько раз прочитайте условие задачи.wink Во-вторых, определите вид компьютерной графики, т е кодирования какого типа изображения происходит. В $99.99\%$ случаев речь идет о растровых картинках.

В-третьих, в обязательном порядке научитесь пользоваться формулой Хартли. Да, эта формула достаточно скользкая и с $1$-го раза мало, кто понимает, о чем она в принципе. Для этого придется вникать в тему "Измерение количества информации".

В-четвертых, знайте наизусть большинство степеней двоек. Желательно на интервале от $2^0$ до $2^{20}$. В-пятых, умейте варьировать единицы измерения информации, т е заменять [Кбайты] на [байты] или [Мбайты], а [байты] переводить в [биты] и т.п.

Примеры условий реальных задач, встречающихся на ЕГЭ по информатике

чуть позже!

Хотите разбираться в задачах графического содержания? Тогда жду вас на уроке

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

Также можете кидать условия задач графической тематики в мою группу в вк. Обязательно я их рассмотрю, напишу соответствующее решение, а также отсниму видео на свой Youtube-канал. Кстати, можете подписаться на мой канал прямо сейчас! yes

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

На мой экспертный взгляд, задание из ЕГЭ по информатике, ориентированное на кодирование графической информации в общем и на нахождение максимального количества цветов в частности, является проходным. Оценивается оно всего в $1$ первичный балл, и этот балл вы должны в обязательном порядке получить!

Отзывы
моих учеников

Белов
Антон

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

Мельник
Игорь

 
Я рад, что обратился к такому сильному репетитору, как Александр Георгиевич. Видно, что он прекрасно разбирается в студенческом программировании, владеет терминологией на шикарнейшем уровне, очень понятно объясняет....

Лебедев
Валерий

 
С большим удовольствием занимался с учителем, т к начал понимать программирование на более углубленном уровне. Очень много изучали такую тему как "указатели" и я их понял наконец-таки очень хорошо. Понимание указателей...

Шамшуров
Денис

 
Спасибо вам большое Александр Георгиевич! Вы практически сделали невозможное - натаскали меня к экзамену по программированию, которое я очень плохо понимал до того, как обратился к вам. Хочу отдельно отметить, что урок...

Крылов
Антон

 
Я не ожидал, что получу 83 балла, думал, максимум 70, а результат меня ошеломил. Вы просто мастер Александр Георгиевич, выражаю вам благодарность большую.

Дмитрий
Чуков

 
Главная цель моего обращения к Александру Георгиевичу, была достигнута. Я доволен нашим результатам.Спасибо вам большое! Потраченные деньги стоят тех знаний, которые я приобрел.

Коваленко
Всеволод

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

Павленко
Илья

 
Жаль, что я потерял 1 балл)) Александр Георгиевич подготовил меня очень круто. Когда я увидел задания на экзамене, то понял, что я могу решить абсолютно все. На экзамене я не переживал, т к был уверен в собственных...

Минаев
Сергей

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

Миронов
Сергей

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

Ахматова
Юлия

 
В нашем вузе я должна была сдавать экзамену по C#. Билеты были очень сложные. Один вопрос теоретический, практическая задача в консоли и лабораторная, связанная с базами данных. Знания у меня были тусклые в этих...

Трунин
Сергей

 
На редкость сильный репетитор, абсолютно компетентен в преподаваемом предмете, знает язык программирования Turbo Pascal просто "насквозь". Было интересно заниматься и очень познавательно, так как в школе мы ничего этого...
Смотреть все отзывы
 
 
 
 
 
 
Авторизация на сайте
 
 
 
Обнаружили
ошибку на сайте?
Занятия по информатике