Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Клуб программистов > Свободное общение
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.01.2013, 14:35   #1
Ivan_32
somewhere else
Участник клуба
 
Аватар для Ivan_32
 
Регистрация: 17.07.2008
Сообщений: 1,409
По умолчанию Формула для расчета стандартной девиации шума на изображении

Пытаюсь реализовать один метод для определения уровня шума, описан вот здесь: A Fast Method For Image Noise Estimation Using
Laplacian Operator and Adaptive Edge Detection
. Получилось у меня вот что: C++ CImg noise deviation.

Честно говоря в математике я не силен и не совсем понимаю что эта формула должна мне дать на выходе (и вообще смотрится она нелогично или может я просто неправильно понял что это N означает).

Вопрос такой: правильно ли я понял формулу и что она мне должна дать на выходе? Для сильно зашумленного изображения я получил результат около 1800000, что на процент конечно не похоже. На количество пикселей являющихся шумом тоже не похоже, там их всего-то пикселей было 150000.

И еще возможно тут просто можно использовать pixel_average - pixel_value ? Т.е. посчитать среднее арифметическое, вычесть из каждого пикселя, просуммировать и поделить на количество пикселей и на выходе будет некий коэффициент отклонения от среднего? Проблема только будет в том, что возможно на сильно зашумленных изображениях среднее арифметическое будет ведь и много шумных пикселей включать и следовательно оно будет завышенным и соответственно уровень шума тогда будет определен меньший, чем есть на самом деле, причем скорее всего значительно меньший.
"Тяжело в учении, легко в бою" - А.В. Суворов
Ivan_32 вне форума Ответить с цитированием
Старый 14.01.2013, 20:38   #2
Kostia
Участник клуба
 
Аватар для Kostia
 
Регистрация: 21.11.2007
Сообщений: 1,690
По умолчанию

Что значит шумный пиксел?

F(x) = f(x) + шум, где
F(x) - замер прибора
f(x) - реальное значение замеряемого параметра или расчетное
шум - случайная величина вызванная погрешностью прибора и рядом других факторов.

Если f(x) нам не известно, то его получают путем сглаживания F(x). Сгладить можно огромным количеством способов, самые простые это метод скользящего среднего или метод медианного сглаживания и также любые способы аппроксимаций функции по точкам.

По сути никто не мешает спроецироваться все это на изображение. Возьмите окно размером 5x5, вычислите в нем среднее значения яркости, вычислите среднее отклонение, сдвиньте окно на пиксель и повторите. После чего вы получите множество как бы шума или случайной составляющей для каждого окна и можете вычислить среднее, дисперсию, квадратичное отклонение и т.д.
Этот подход более менее близок к правде. Но вот как быть, если шум представлен большими пятнами на изображении, тут нужно покопаться.
Kostia вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Формула для расчета времени 7-nadiya Microsoft Office Excel 14 19.08.2016 11:23
Запрос для расчета ЗП ta_n_u_s_h_ka БД в Delphi 0 03.06.2012 19:57
формула для расчета дней, проведенных в коммандировке; stkats Microsoft Office Excel 2 10.01.2011 10:23
Формула для автоматического расчета покупки 7-nadiya Microsoft Office Excel 26 20.05.2010 09:30
Формула расчета стоимости доставки Андрей 2009 Microsoft Office Excel 12 08.04.2009 12:52