Твердотельные сенсоры изображения:
как получается цвет


«Классические» ФПЗС и КМОП-сенсоры [1]

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

Для обеспечения сенсору возможности различать цвета нужны дополнительные приспособления. А что же такое «цвет», вообще говоря? В физике у света есть спектр — набор длин волн излучения. Этим спектром однозначно определяется цвет — психофизиологическое ощущение. Обратное утверждение, кстати, неверно — несколько различных спектров могут давать одно и то же ощущение цвета. 

Т. к. с точки зрения колориметрии цвет — трехмерная векторная величина, то нужно неким образом выделить из падающего на сенсор светового потока три [2] составляющих. Возможность трехмерного описания цвета [3] объясняется не физическими свойствами самого света, а механизмами цветовосприятия глаза.

Суть «классического» сенсора: в одном пикселе за время экспозиции мы можем сделать только одно спектральное измерение (исключения — см. ниже).

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

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


Такой подход часто используется в профессиональных фото и видеокамерах и называется 3CCD.

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

Однако такой подход требует сложной юстировки всей системы и часто — особой оптики (из-за появления перед сенсором довольно большого блока призм). При этом широкоугольным объективам не повезло больше всех. Добавьте сюда тройной комплект сенсоров и их электронной обвязки. Все это в итоге повышает стоимость, габариты системы и ее энергопотребление (особенно, если сенсоры — ФПЗС).

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

2. Установить светофильтры перед сенсором.

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

3. Установить светофильтры непосредственно над каждым пикселем сенсора.

Если в сенсоре используются микролинзы [4], то светофильтры устанавливаются между микролинзой и ячейкой. Распределение таких светофильтров по поверхности сенсора — массив цветных фильтров (CFA = Color Filter Array) может быть различным.

3.1. Например, линейный (используется в некоторых планшетных сканерах — там как раз всего три строки для каждого из цветов):
R R R R R
G G G G G
B B B B B

3.2. Наиболее популярный — байеровский, по цветовой модели Байера (B. Bayer [5]), предложенной в начале 70-х годов прошлого века. Иначе — RGBG-фильтр. Все массивы, построенные по принципу Байера называют мозаиками.

RGBG
Пример сенсора — Sony ICX252AQ.

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

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

RGBG

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

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

3.3. Вариацией на тему фильтра Байера является RGBE -фильтр от компании Sony Corporation. Т. е. к RGB-светофильтрам добавлен Emerald — изумрудный. Теоретически, четвертый компонент для определения цвета уже лишний. Однако на практике он немного приближает цветовую гамму изображения к натуральной (для человеческого глаза), улучшая передачу сине-зеленых и красных оттенков. Вообще говоря, изумрудный светофильтр пропускает всю коротковолновую часть видимого спектра, так что правильнее было бы его назвать голубым.

RGBE
Пример сенсора с подобной организацией фильтров — Sony ICX456, а камера на его основе — Sony Cybershot DSC-F828

3.4. Выше были рассмотрены мозаики в основу которых положена модель аддитивного цветового синтеза (RGB), однако выпускаются сенсоры с мозаиками на основе субстрактивного синтеза (CYM=Cyan Yellow Magenta). Те же господа из Sony выпускают матрицы с CYMG-фильтром. Основные компоненты в нем — CYM (голубой, желтый, пурпурный) и один, дополнительный, аддитивный — G (зеленый). На мой взгляд — весьма спорное решение.
Тем более что типичная проблемой сенсоров с такой мозаикой — регистрация света с длинной волны в 450 нм в синем и красном канале.

CYMG
Пример сенсора — Sony ICX 282AK, а камера на его основе — Nikon Coolpix 5700. Последние буквы в названии сенсора и определяют используемую систему фильтров AK — CYMG, AQ —GRGB (Minolta 7 , 7i , 7Hi и A1 ).

Краткий итог: при одинаковых числе пикселей и их размере у сенсора с массивом цветных светофильтров пространственное разрешение примерно в 2 раза ниже, чем у монохромного. Если быть точным, то величина эта зависит от метода интерполяции, типа мозаики и направления: для фильтра Байера по горизонтали снижение разрешения составляет около 65%, а по вертикали примерно 80%.

По мере роста вычислительной мощности графических процессоров фотокамер линейная интерполяция заменялась кубической, а та — кубическими сплайнами. Во многих современных камерах предпочтение отдается специальным алгоритмам, оптимизированным под работу с цветом и под конкретный сенсор. Естественно эти алгоритмы являются коммерческой тайной фирм-производителей. Например, существуют:
—интерполяция с постоянным тоном (одна из первых в массовых образцах камер);
— интерполяция по медиане (двухпроходная: линейная интерполяция, медианная фильтрация цветовых различий);
— интерполяция по градиенту (трехпроходная: сначала G, а затем R-G и B-G каналы; используется в Kodak DCS 200).
Все эти алгоритмы направлены на устранение артефактов: «лесенки» — на краях контрастных объектов и «конфетти» вокруг ярких пикселей на темном фоне.

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

Вот пример работы цветовой интерполяции кубическими сплайнами с RGBG-сенсора (под картинкой ссылка на увеличенное в 3 раза PNG-изображение):

RAW
Слева — изображение непосредственно с сенсора, монохромное. В середине — наложение на него массива байеровских фильтров. Справа — изображение после цветовой интерполяции.

4. Использование технологии пиксельного сдвига сенсора.

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

сдвиг сенсора

Минус — увеличенное в три раза время экспозиции и стоимость устройства. Конечно, для репортажной съемки такая технология не подходит. Поэтому применяется преимущественно в цифровых задниках для студийной съемки, где возможно обеспечить неподвижность сцены съемки на время порядка 1-2 секунд.

Кроме увеличения цветового, увеличивается и пространственное разрешение. Оба примерно в 2,5 раза по сравнению с таким же сенсором, но без сдвига.

Пример: цифровые  задники FlexFrame 4040 от Imacon и Sinarback 44 HR от Sinar.

Foveon X3

До сих пор мы говорили о классических сенсорах. Сейчас стоит рассказать о новом типе  КМОП-сенсора от калифорнийской компании Foveon — Foveon X3 [6]. Сенсор был представлен широкой публике в начале 2002 года.

В основу положена идея о поглощении фотонов различных длин волн на различных глубинах в полупроводнике. Это дает возможность для каждого пикселя сенсора получать свои собственные RGB-компоненты, в одном пикселе совмещены детекторы всех трех цветовых компонент. Весьма изящная идея: одним махом избавляемся от цветовой интерполяции, сглаживания и разницы фаз между RGB-компонентами, присущих классическим сенсорам с CFA. Также, не требуется и трех сенсоров вместе с устройством расщепления света.

Foveon

Эксперименты [7] по стандарту ISO12233 [8] показывают 2,4-кратное превосходство Foveon X3 в пространственной разрешающей способности над сенсорами с фильтром Байера. А на границе раздела синий-красный до 5 крат. Мы помним о том, что байеровский фильтр содержит синих и красных светофильтров в 2 раза меньше, чем зеленых, отсюда такой скачок :-)

Все же не удержусь и дам упрощенную схему строения этого сенсора:

Foveon

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

Можно сказать, что перед нами «электронная фотопленка», т. к. из всех сенсоров Foveon X3 наиболее близок к фотопленке, которая также содержит в себе три чувствительных слоя для каждого из цветов в виде «бутерброда».

В качестве камеры, использующей Foveon X3 можно отметить Sigma SD9, SD10 и Polaroid x530 и вот пока что все. Идея Foveon красива, но, видимо, на практике не все так гладко…
Желающих подробнее ознакомиться с этим типом сенсора прошу на сайт производителя.
Альтернативный теоретический взгляд можно найти в статье.

TFA

В настоящее время разрабатывается технология TFA (Thin Film on ASIC). Коммерческих образцов пока нет, так что сказать что-то окончательно нельзя. TFA представляет собой интеграцию слоя детектора из аморфного гидрогенизированного кремния  (a-Si:H) на кристалл ASIC (Application Specific Integrated Circuit, по-сути, КМОП-микросхема).

TFA

Толщина слоя детектора менее 1 микрона и работает он как мультиспектральный фотодиод. Пик спектральной чувствительности может сдвигаться в границах видимого света в зависимости от напряжения между p- и n- областями. Можно считывать три цветовых составляющих последовательно (быстро меняя напряжение). Кроме этого a-Si:H обладает высоким квантовым выходом и тремя линейно-независимыми пиками чувствительности в зоне видимого света. TFA является  сенсором с коэффициентом заполнения 100%: вся поверхность является светочувствительной.

Возможно, в лице TFA-сенсоров мы скоро увидим увеличение динамического диапазона (для TFA заявлено 120dB, тогда как человеческий глаз имеет 200dB) и цветового разрешения.

В конце статьи стоит упомянуть о том, что полученный с любого сенсора RGB-триплет сам по себе, вообще говоря, информации о цвете не несет. Парадокс? Нет! Например, для сенсора с массивом цветных светофильтров, зеленый сигнал определяется числом «зеленых» фотонов достигших ячейки, относительным коэффициентом пропускания зеленого светофильтра и относительной спектральной чувствительностью полупроводника к «зеленым» фотонам. Максимум и форма кривой спектральной чувствительности систем фильтр-полупроводник для трех цветов может отличаться (а вернее сказать, всегда отличается) от таковых как для человеческого глаза, так и для опорных стимулов системы RGB. Поэтому и необходимо преобразование цвета из цветового пространства  сенсора в какое-либо аппаратно-независимое, например в sRGB.

  • [1]ФПЗС — Фоточувствительный Прибор с Зарядовой Связью; в англоязычной терминологии: CCD — Charge Coupled Device
    КМОП — Комплементарный Металл-Оксид-Полупроводник; в англоязычной терминологии: — CMOS — Complementary Metal Oxide Semiconductor.
    Вместо слова «сенсор» иногда используют «матрица» или «датчик».
  • [2]Обычно выделяют RGB-компоненты: красную, зеленую и синюю, но возможно выделение и субстрактивных компонент CMY: голубую, пурпурную и желтую, либо четырех и более компонент для улучшения цветовой интерполяции. См. далее по статье.
  • [3] Восстановлении цвета по трем точкам применимо только для сплошных спектров и не работает для линейчатых.
  • [4]Микролинзы располагаются по одной над каждой ячейкой и применяются для фокусировки света на фоточувствительный элемент ячейки сенсора с целью повышения чувствительности.
  • [5]B. Bayer, U. S. Patent No. 3,971,065.
  • [6]U.S. Patent No. 5,965,875.
  • [7]Spatial Frequency Response of Color Image Sensors: Bayer Color Filters and Foveon X3 // Paul M. Hubel, John Liu and Rudolph J. Guttosch //Foveon, Inc. Santa Clara, California
  • [8]ISO 12233:2000 Photography-Electronic still picture cameras-Resolution measurements.





Дополнительно

ОПРОС на iXBT.com

Есть ли у Вас внешний аккумулятор (PowerBank)?

Нашли ошибку на сайте? Выделите текст и нажмите Shift+Enter

Код для блога бета

Выделите HTML-код в поле, скопируйте его в буфер и вставьте в свой блог.