Сенсоры Байера используют шаблон из красных, зеленых и синих пикселей и объединяют их вместе в окончательное цветное изображение с одним пикселем для каждого отдельного цветового сенсора. Это можно сделать с помощью «наивного» смешивания соседних датчиков, но я слышал о более сложных подходах с такими названиями, как AHD, HPHD и AMaZE.
Что это за другие подходы и какие преимущества они приносят? Есть ли у них недостатки помимо сложности вычислений?
Я предполагаю, что подход, используемый для внутрикамерного JPEG, более тщательно охраняется, но очевидно, что в этой области проводится много исследований и разработок. Вынуждает ли ограниченная вычислительная мощность камеры идти на какие-либо компромиссы в этой области?
Несколько месяцев назад я был удивлен, обнаружив, что SDK моей камеры машинного зрения использует «интерполяцию» ближайшего соседа во встроенной функции Байера. Это самый быстрый, но худший тип, дающий резкие края, особенно когда вы начинаете выполнять математические операции с каналами изображения для постоянства цвета или инвариантности яркости. Я нашел этот обзор алгоритмов:
http://www.arl.army.mil/arlreports/2010/ARL-TR-5061.pdf
Следующим шагом является билинейная и бикубическая интерполяции, которые могут быть вычислены довольно быстро, потому что они составляют только ядра свертки. Они дают цветные пилообразные зубья на наклонных краях - скорее билинейные, чем бикубические.
Можно увидеть в этой статье и с количественными данными о качестве по 5 различным алгоритмам:
https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/Demosaicing_ICASSP04.pdf
Вот почему они сделали интерполяцию на основе направления края. Однако они рассматривают зеленый цвет как более «важный канал» (поскольку он имеет наилучшее разрешение и отвечает за большую часть нашей визуальной чувствительности и разрешения наших глаз). И затем они создают синий и красный в зависимости от зеленого канала, сохраняя оттенок. Это, в свою очередь, делает высокочастотный контент зеленого канала более подверженным ошибкам. Сложность выше, поскольку они должны определять, что происходит, и требуют нескольких проходов. Муар и кукуруза являются обычными артефактами от этих типов интерполяции.
Здесь они показывают примеры Adaptive Homogeneity Demosaicing и билинейных версий с аддонами, сохраняющими оттенок и края, и без них:
http://math.auburn.edu/~kilgota/ahd_bayer.pdf
Эта бумага поддерживает AHD и не показывает отрицательную часть. На этой странице вы можете увидеть различные артефакты узоров из Adaptive Homogeneity Demosaicing, Patterned Pixel Grouping и Variable Number of Gradients (наведите указатель мыши на названия):
http://www.ruevski.com/rawhistogram/40D_Demosaicing/40D_DemosaicingArtifacts.html
Таким образом, в этих алгоритмах используется ряд допущений, и артефакты возникают, когда допущение не выполняется:
Я немного поиграл с этим и обнаружил, что наивный подход не так уж и плох. Это просто обработка каждого цвета отдельно и интерполяция, чтобы получить промежуточные пиксели. Основным недостатком этого является то, что если вы смотрите на пиксель в месте с высокой контрастностью, вы можете увидеть небольшую цветовую окантовку. Иными словами, если у вас есть светло-серая область, примыкающая к черной области, вы увидите несколько цветных пикселей на границе. К счастью, в целом они усредняются, но если край почти вертикальный или почти горизонтальный, они усредняются по низкой частоте. Тот же эффект может быть еще более заметен на тонких ярких линиях, почти вертикальных или горизонтальных.
Вот пример. Эта фотография была сделана намеренно в качестве пробного снимка:
Обратите внимание на явную полосатость линии хромированной отделки. Чтобы представить это в перспективе, вот полный кадр:
Я думал об альтернативном подходе, но до сих пор всегда были другие вещи, которые нужно было сделать в первую очередь. Эта схема будет стремиться сначала найти только яркость . Это был бы единственный канал данных изображения, если бы изображение было черно-белым. Каждый сенсел вносит свой вклад в это, хотя цвета вносят неодинаковый вклад. Как только интенсивность определена, вы должны интерполировать цвета, как в наивном методе, но использовать результат только для установки цветов таким образом, чтобы сохранить интенсивность. Интенсивность будет иметь более широкую полосу пропускания или быть более четкой с фотографической точки зрения, чем информация об оттенке. Аналоговое телевидение использовало этот трюк, чтобы уменьшить требования к полосе пропускания цветного изображения. Им это сошло с рук, потому что зрительная система человека придает большее значение интенсивности, чем цветам, особенно красному.
Во всяком случае, это только некоторые мысли. Как я уже сказал, я на самом деле еще не пробовал и не разобрался в деталях. Когда-нибудь.
Насколько я понимаю, разные версии процесса в Lightroom (до сих пор у нас были 2003, 2010 и 2012) соответствуют, среди прочего, разным алгоритмам демозаики. Еще одно интересное программное обеспечение — UFRaw , которое предлагает следующее (цитата с веб-страницы):
После установки баланса белого UFRaw интерполирует шаблон Байера.
Это может дать некоторый материал для экспериментов. Между прочим, UFRaw имеет открытый исходный код, что позволяет вам заглянуть в сами алгоритмы.
В астрофотографии эта тема исследуется глубоко, потому что при использовании однократного датчика цвета из-за дебайеризации много теряется разрешение. С другой стороны, использование файла RAW по-прежнему дает доступ к исходным данным, и их можно обрабатывать до применения цвета. Эта тема тесно связана с программной стороной дела.
Короче говоря, если у вас есть доступ к большому количеству изображений с одними и теми же данными о предмете (что делается для уменьшения шума датчика), вы можете обменять одно преобразование кадра с помощью AHD на подход изморось, который может восстановить потерянное разрешение. Выбор зависит от того, какие исходные данные у вас есть. Большинство фотографов используют только одно изображение.
Некоторое программное обеспечение, которое я использовал для процессов дебайеризации: Deep Sky Stacker и Pix Insight. Есть и другие. Многие основаны на DCRAW .
Вот ссылка на статью на странице Deep Sky Stacker, где обсуждаются некоторые варианты: Выбор дебайеризации .
Якуб Сисак GeoGraphics
джриста
джриста
Майкл С
матдм
пользователь98068