Каковы плюсы и минусы различных алгоритмов демоакции Байера?

25

Датчики Байера используют комбинацию красных, зеленых и синих пикселей и объединяют их вместе в окончательное цветное изображение с одним пикселем для каждого отдельного датчика цвета . Это можно сделать с помощью «наивного» смешения соседних датчиков, но я слышал о более сложных подходах с такими именами, как AHD, HPHD и AMaZE.

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

Я полагаю, что подход, используемый для встроенного в JPEG JPEG, более строго охраняется, но очевидно, что многие исследования и разработки идут в этой области. Вызывает ли ограниченная вычислительная мощность в камере какие-либо компромиссы в этой области?

mattdm
источник
Возможно, я ошибаюсь, но у меня сложилось впечатление, что в камере происходит демосиационирование, иначе изображение будет страдать от алиасинга. В одной из недавней «Популярной фотографии», посвященной этой теме, была интересная статья, рассказывающая о Sigma (датчик Foveon X3), которая является одной из немногих камер, у которых нет датчика Байера.
Якуб Сисак GeoGraphics
1
Что ж, быстрое исследование показывает, что AHD, или Adaptive Homogeneity-Directed Demosaicing, является «отраслевым стандартом» и, похоже, используется ACR / LR (по крайней мере, пару версий назад ... кто знает, есть ли у них представил что-то более продвинутое с ACR 6.x и LR4.x). Это похоже на взвешенный алгоритм, который нацелен на уменьшение ложного цвета.
rista
7
@Jakub: демосакция происходит в камере для изображений JPEG. Весь смысл изображения в формате RAW состоит в том, что оно еще не было демоасизировано и представляет собой «необработанную» запись пиксельных данных непосредственно с датчика без какой-либо дополнительной обработки (вне вашего основного усиления для достижения необходимого ISO.) Оптический низкий уровень -проходной фильтр (AA-фильтр) устраняет алиасинг, физически «размывая» пространственные частоты ниже частоты Найквиста датчика.
rista
Помните, что «красные», «зеленые» и «синие» цветные фильтры в наших массивах Bayer не равны красным, зеленым и синим излучателям на наших устройствах RGB. К сожалению, мы используем одинаковые имена для обоих.
Майкл С
Э-э, они действительно достаточно близки, чтобы относиться к этому. Вы не получите идеальный цвет, но он находится на стадионе. Посмотрите увеличенное изображение на сайте petapixel.com/2013/02/12/… например, просто визуально, цвета фильтров, безусловно, те, с которыми мы их идентифицируем.
mattdm

Ответы:

19

Несколько месяцев назад я был удивлен, обнаружив, что моя SDK камеры машинного зрения использует «интерполяцию» ближайшего соседа в своей встроенной функции Байера. Это самый быстрый, но наихудший тип, с четкими краями, особенно когда вы начинаете делать математические расчеты на каналах изображения для обеспечения постоянства цвета или изменения яркости. Я нашел этот обзор алгоритмов:

http://www.arl.army.mil/arlreports/2010/ARL-TR-5061.pdf

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

Можно увидеть в этой статье, и с количественными данными о качестве по 5 различным алгоритмам:

http://research.microsoft.com/en-us/um/people/lhe/papers/icassp04.demosaicing.pdf

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

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

http://math.auburn.edu/~kilgota/ahd_bayer.pdf

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

http://www.ruevski.com/rawhistogram/40D_Demosaicing/40D_DemosaicingArtifacts.html

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

  • По каналу гладкость. Если ближайшие соседи не совпадают, сделайте переход плавным. Артефакт: пилы / молнии, мягкость
  • Постоянство яркости с направленными краями (билинейное направление). Артефакты: высокочастотная текстура муара, цветная окантовка
  • Оттенок постоянства. если в окрестности оттенок одинаков, поэтому, если один канал меняется, другие должны следовать. Артефакты: цветные молнии по краям
  • Постоянство можно предсказать из зелени. Артефакт: лабиринты
Майкл Нильсен
источник
Быстрый вопрос - в последней строке вы имеете в виду «кукурузы» (виды кукурузы?) Или «лабиринты»? В любом случае, я был бы признателен за более подробное описание того, каким может быть этот тип артефакта.
Mattdm
мышь в лабиринте
Майкл Нильсен
Круто :) Думаю, я знаю артефакт, к которому это относится, но я не совсем уверен. Это случайный рисунок на уровне пикселей коротких горизонтальных и вертикальных линий (возможно, смешанный с шумом), верно? Интересно узнать, откуда это происходит - на самом деле, я чуть не задал вопрос об этом на днях, потому что я предположил, что это артефакт NR.
mattdm
это те строки, да, и это происходит из того, как алгоритм Байера пытается угадать данные.
Майкл Нильсен
5

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

Вот пример. Эта фотография была сделана намеренно как пробный снимок:

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

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

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

Олин Латроп
источник
3

Насколько я понимаю, разные версии процессов в Lightroom (до сих пор у нас есть 2003, 2010 и 2012 годы) соответствуют, среди прочего, различным алгоритмам демозаики. Еще одно интересное программное обеспечение - UFRaw, которое предлагает следующее (цитата с веб-страницы):


После настройки баланса белого UFRaw интерполирует паттерн Байера.

  • AHD-интерполяция - это адаптивная интерполяция, направленная на однородность. Это интерполяция по умолчанию.
  • VNG-интерполяция использует основанную на пороге переменную Number of Gradients. Раньше это была интерполяция по умолчанию, и она все еще очень хороша .
  • Четырехцветную интерполяцию VNG следует использовать, если на фотографии есть артефакты Байера (см. Часто задаваемые вопросы по DCRaw ).
  • PPG интерполяция расшифровывается как интерполяция Patterned Pixel Grouping. Это почти так же хорошо, как все вышеперечисленное и намного быстрее.
  • Билинейная интерполяция является очень простой интерполяцией, но она намного быстрее.

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

Francesco
источник
0

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

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

Некоторое программное обеспечение, которое я использовал для выбора процессов Debayering: Deep Sky Stacker и Pix Insight. Есть и другие. Многие из них основаны на DCRAW .

Вот ссылка на статью на странице Deep Sky Stacker, где они обсуждают некоторые варианты: Debayering Choices

smigol
источник
1
Это интересно (спасибо!), Но я не думаю, что это отвечает на вопрос. Эта последняя ссылка кажется многообещающей, но в ней основное внимание уделяется альтернативам демозаицированию. В данной теме говорится только: «Существует много различных методов интерполяции, дающих плохие или хорошие результаты (линейный, градиент ...), но все они ухудшают качество конечного изображения, угадывая, какими должны быть пропущенные цвета. " Но это не идет дальше в практические детали.
Mattdm