Це правильний метод корекції шуму з фіксованою схемою?


12

Зараз я беру участь у проекті, що включає програмування датчика зображень. Наш датчик видає нам шум, тому ми хочемо виправити його. Хтось інший у проекті придумав ідею зробити «чорне» зображення, тобто надіти кришку об’єктива та зробити знімок, який повинен бути повністю чорним. (Очевидно, це не через шум) У цей момент при наступних захопленнях він бере значення пікселів із чорного зображення і віднімає їх від регулярно знімається зображення.

Зображення виглядає краще і більша частина шуму видаляється, проте я не переконаний, що це найкращий підхід до усунення шуму завдяки наступному:

Діапазон фіксованого зображення становить [-172 194] (366 значень) порівняно зі стандартним діапазоном [0 255]. Коли вона перемальована, вона повертається до [0 255], і це виглядає краще, проте я вважаю, що це неправильно.

Слід зазначити, що новий образ зроблений при слабкому освітленні.

Чи правильний цей спосіб видалення шуму? Чому чи чому б ні?


Цей конкретний метод ("чорне" зображення) є формою калібрування датчика, який не є чистим DSP (він також пов'язаний з фізикою, наприклад - потрібно моделювати фізичні дефекти). Наприклад, саме цей підхід намагається компенсувати дефекти гарячих пікселів.
MSalters

погоджуюсь з @PaulR
Simon Bergot

Ви можете перевірити рішення в цьому посиланню: ardueye.com/pmwiki.php?n=Main.StonymanLens
Сельма

якщо ми маємо справу із зображенням Sattelite Images, методи обчислення будуть однаковими? Я маю на увазі, як обчислити чорно-біле зображення для отримання чистих значень зміщення та посилення? Чи є якийсь опис коду розрахунку FPN в Matlab? Дякую за будь-які поради !!!

Відповіді:


12

Чорне зображення - це сума фіксованого малюнка і темного шуму (який, швидше за все, слід нормальному розподілу, оскільки він зазвичай виникає від коливань струму). Ви хочете відняти фіксовану схему, але не темний шум - віднімання випадкового шуму від сигналу просто збільшує загальний шум і, таким чином, знижує якість сигналу.

Щоб отримати хорошу оцінку за фіксованою схемою, вам слід зафіксувати значну кількість кадрів (скажімо, 25, хоча 100, звичайно, залишать вам лише половину шуму), і середнє їх значення. Оскільки темний шум у часі (повинен бути) некорельованим, він усереднюється, так що вам залишається фіксований малюнок із низьким рівнем шуму, який ви зможете відняти з майбутніх зображень, і це не збільшить шум у вашому зображенні.

Зауважте, що фіксований малюнок зазвичай залежить від часу експозиції (наприклад, CCD-камера може накопичувати електрони під час операцій зсуву), тому вам доведеться робити калібрування для кожного часу експозиції. Якщо ви часто змінюєте час експозиції, і якщо це можливо, ви можете налаштувати свій експеримент, щоб знімати ряд темних кадрів після кожного експерименту, що означає, що ви отримуєте калібрування для кожного експерименту.

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


1
Я зовсім другий @Jonas. Якщо тепер ви хочете знизити темний шум поверх видалення постійної картини, єдиним рішенням є охолодження датчика.
Жан-Ів

1
Це передбачає, що шум з фіксованою схемою є лише "зсувом". Багато датчиків з FPN також мають різницю коефіцієнта підсилення в кожному пікселі, тому, потрапляючи на "чисто білу" сцену, FPN залишатиметься навіть після зняття зсувів, виміряних у темряві ...
Мартін Томпсон,

@MartinThompson: Це хороший момент, хоча на практиці може бути дуже складно гарантувати «чисто білу» сцену. Тому я ніколи не використовую жодної вигоди, якщо можу допомогти їй :).
Йонас

@MartinThompson Martin, яка найкраща практика для виправлення параметрів посилення. Я не можу придумати простий спосіб зробити все білим при даній тривалості експозиції.
Ktuncer

1
@Ktuncer: Я не думаю, що ви повинні робити його чисто білим - чим яскравіше ви можете його зробити, тим краще ви можете виправити. Поки це однакова яскравість на сцені, ви можете використовувати середнє значення пікселя як "ціль" для виправлення
Мартін Томпсон

7

такий підхід є дійсним і насправді застосовується в деяких камерах високого класу: датчик спочатку знімає фотографію із закритою шторкою та піддає її "справжній" фотографії. Це має дві переваги:

  • він виправляє шум фіксованої картини
  • це робить зображення лінійним

Цей метод може дати різні результати за різний час експозиції.

Фотонічний шум залишається недоторканим.


4

Я думаю, це залежить від датчика, який ви використовуєте.

Ви можете зробити серію (наприклад, 10000) зображень із увімкненою кришкою об'єктива та порівняти середнє / стандартне відхилення для кожного пікселя. Якщо можливо, ви можете зробити те ж саме для рівномірного «яскравого» зображення (без перенапруження, просто рівномірної яскравості).

Якщо між "темними засобами" є значні відмінності, хороша ідея віднімає темну середню для кожного пікселя. Якщо існують значні відмінності між (яскрава середня - темна середина) для кожного пікселя, поділ на "середнє біле зображення" також може бути поліпшенням.

Але вам справді потрібно зробити цю статистику, щоб з’ясувати, що має сенс.


3

Зазвичай негативні значення повинні бути скорочені до нуля, коли ви віднімаєте темний кадр.

Я здивований, що віднімання темних кадрів дає значення -172. Це означає, що:

  • Ваш рівень шуму високий - десь принаймні 172
  • Ваш шум сильно різниться від кадру до кадру. У цьому випадку віднімання темних кадрів не дуже ефективно.

Чи можете ви розміщувати зображення звичайного кадру, темного кадру, а потім відняту версію?


Камера може спробувати виправити умови низької освітленості за рахунок збільшення часу зйомки. В результаті гарячі пікселі будуть накопичувати більше шуму. Крім того, зчитування датчика може бути нелінійним, і в цьому випадку їх взагалі неможливо відняти.
MSalters

negative values should be truncated to zero when you subtract the dark frame. Не варто цього робити, оскільки це заважатиме робити гарну роботу по позначенню темних областей вашого зображення. Краще зберегти шум «природним», перш ніж ви дійсно намагаєтесь його зняти.
Саймон Бергот

Це було моєю проблемою з методом, якщо ви не обрізаєте значення до нуля, то вам залишається більший діапазон, ніж зображення повинно створювати, тож, коли ви його масштабуєте, ви, здавалося б, обмацуєте дані, а не усічені значення, які також здаються заважають вам отримати правильну корекцію
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.