Датчики Байера используют комбинацию красных, зеленых и синих пикселей и объединяют их вместе в окончательное цветное изображение с одним пикселем для каждого отдельного датчика цвета . Это можно сделать с помощью «наивного» смешения соседних датчиков, но я слышал о более сложных подходах с такими именами, как AHD, HPHD и AMaZE.
Каковы эти другие подходы, и какие преимущества они приносят? Есть ли у них слабые места помимо вычислительной сложности?
Я полагаю, что подход, используемый для встроенного в JPEG JPEG, более строго охраняется, но очевидно, что многие исследования и разработки идут в этой области. Вызывает ли ограниченная вычислительная мощность в камере какие-либо компромиссы в этой области?
Ответы:
Несколько месяцев назад я был удивлен, обнаружив, что моя 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
Таким образом, в этих алгоритмах используется ряд допущений, и артефакты возникают, когда предположение не выполняется:
источник
Я начал играть с этим немного и обнаружил, что наивный подход не так уж и плох. Это просто обрабатывает каждый цвет отдельно и интерполирует, чтобы получить промежуточные пиксели. Основным недостатком этого является то, что, если вы выглядываете в пикселях в месте с высокой контрастностью, вы можете увидеть небольшую цветную окантовку. Другими словами, если у вас есть светло-серая область, примыкающая к черной области, вы увидите несколько цветных пикселей на границе. К счастью, они усредняются в целом, но если край почти вертикальный или почти горизонтальный, они усредняются по низкой частоте. Тот же эффект может быть еще более очевидным на тонких ярких линиях, которые расположены почти вертикально или горизонтально.
Вот пример. Эта фотография была сделана намеренно как пробный снимок:
Обратите внимание на очевидную полосу линии хромированной отделки. Чтобы представить это в перспективе, вот полный кадр:
Я думал об альтернативном подходе, но до сих пор всегда были другие вещи, чтобы сделать сначала. Эта схема будет искать сначала только яркость . Это был бы один канал данных изображения, если изображение было черно-белым. Каждый сенсор вносит свой вклад в это, хотя цвета не дают в равной степени. Как только интенсивность определена, вы должны интерполировать цвета, как в простом методе, но использовать результат только для того, чтобы установить цвета таким образом, чтобы сохранить интенсивность. Интенсивность будет иметь более высокую полосу пропускания или будет более резкой в фотографическом отношении, чем информация об оттенках. Аналоговое телевидение использовало эту уловку, чтобы уменьшить требования полосы пропускания цветного изображения. Им это сошло с рук, потому что зрительная система человека придает большее значение интенсивности, чем цвета, особенно красный.
Во всяком случае, это только некоторые мысли. Как я уже сказал, на самом деле я еще не пробовал это и не проработал детали. Когда-нибудь.
источник
Насколько я понимаю, разные версии процессов в Lightroom (до сих пор у нас есть 2003, 2010 и 2012 годы) соответствуют, среди прочего, различным алгоритмам демозаики. Еще одно интересное программное обеспечение - UFRaw, которое предлагает следующее (цитата с веб-страницы):
После настройки баланса белого UFRaw интерполирует паттерн Байера.
Это может обеспечить некоторый материал для экспериментов. Кстати, UFRaw, похоже, с открытым исходным кодом, что позволяет вам взглянуть на сами алгоритмы.
источник
В астрофотографии эта тема глубоко изучена, потому что при использовании одноцветного сенсора цветопередача приводит к большой потере разрешения. С другой стороны, использование файла RAW по-прежнему позволяет получить доступ к исходным данным, и его можно обработать до применения цвета. Эта тема тесно связана с программной стороной.
Короче говоря, если у вас есть доступ к большому количеству изображений с одинаковыми объектными данными (что сделано для уменьшения шума датчика), вы можете обменять однокадровое преобразование с AHD на метод измороси, который может восстановить потерянное разрешение. Выбор зависит от того, какие исходные данные у вас есть. Большинство фотографов могут использовать только одно изображение.
Некоторое программное обеспечение, которое я использовал для выбора процессов Debayering: Deep Sky Stacker и Pix Insight. Есть и другие. Многие из них основаны на DCRAW .
Вот ссылка на статью на странице Deep Sky Stacker, где они обсуждают некоторые варианты: Debayering Choices
источник