Отправляет email-рассылки с помощью сервиса Sendsay

Роботоша

  Все выпуски  

Роботоша: Изображения и пиксели


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

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

В зависимости от типа изображения, диапазон возможных цветов пикселя может изменяться. В полутоновом изображении, каждый пиксель будет либо черный, либо белый, или же иметь некоторый оттенок серого цвета. В цветном изображении, каждый пиксель имеет красный (RRed) , зеленый (GGreen) и синий (BBlue) компоненты, которые, соединяясь вместе в различных пропорциях, образуют любой другой цвет. Каждый компонент цвета это как один черно-белый пиксель, но вместо того, чтобы изменяться от черного до белого через сотни оттенков серого, каждый компонент цвета варьируется от черного до полной интенсивности его цвета через спектр вариантов различной «темноты». Так, красный компонент пикселя, например, может быть любого оттенка от черного через глубокий темно-бордовый до ярко-красного. При этом, красный компонент в сочетании с аналогичными зеленой и синей составляющими пикселя, в конкретных оттенках их собственных спектров, может представлять любой пиксель в большом разнообразии цветов. 

Каждый пиксель в компьютерном представлении является просто числом. Числовое значение пикселя представляет его интенсивность. В полутоновом черно-белом изображении, числовое значение выражает, насколько темным является пиксель и это значение равно 0 для черного пикселя и 255 — для белого. В цветном изображении, каждый компонент пикселя (красный, зеленый и синий) может изменяться в диапазоне от нуля до 255. Ноль представляет черный цвет, значение 255  представляет максимально насыщенный цвет.

Откуда берется число 255? Цветовой диапазон пикселя определяет, насколько большое число мы готовы использовать для хранения наибольшего значения интенсивности. Чем больше число, которое мы готовы использовать для записи интенсивности каждого пикселя, тем больше памяти будет занимать каждое изображение. Изображения, которые используют большие числа для хранения каждого пикселя будут занимать большой объем памяти и становятся очень медленными при обработке. Для многих практических применений достаточным является величина равная 255. Это значение известно как «байтовая глубина» изображения (при помощи 8 бит в двоичной системе счисления мы можем закодировать значения в диапазоне от 0 до 255).

В зависимости от своего разрешения, каждое цифровое изображение состоит из тысяч, или даже миллионов пикселей, расположенных в узлах координатной сетки. Эта сетка состоит из столбцов и строк. Число столбцов равно ширине изображения и число строк равна его высоте, выраженных в пикселях. Глубина изображения для Kinect составляет 640 пикселей в ширину и 480 пикселей в высоту. Это означает, что каждый кадр, поступающий с камеры глубины Kinect будет иметь в общей сложности 307 200 пикселей. И, в отличие от полутоновых и цветных изображений, каждая из этих точек выполняет двойную работу. Числовое значение каждого пикселя в диапазоне между нулем и 255, будет представлять собой оттенок серого и расстояние в пространстве. Мы можем использовать одно и то же число и для просмотра данных в виде изображения и для вычисления расстояния до объекта, чьей частью является тот или иной пиксель. Мы можем рассматривать ноль как черный и 255 как белый цвет, или же мы можем принять ноль как действительно что-то расположенное далеко и 255 — в непосредственной близости. Это магия изображения глубины: мы имеем и картину сцены перед Kinect и серию измерений.

Что такое видео? До этого момента мы только говорили об изображениях и пикселях. Видео - это просто серия изображений (или кадров) в течении времени. Цифровое видео (или видеопоток) состоит из последовательности отдельных кадров. Kinectзахватывает изображения по одному и отправляет их, например, в наш скетч, написанный на Processing, который затем отображает их на экране так быстро, что мы видим результат в виде непрерывного видео.

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


В избранное