![]() |
|
![]() ![]() ![]() |
|
Чистый |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 23.7.2009 Репутация: нет Всего: нет |
Добрый день!
Делаю к.р. Надо реализовать взвешенный медианный фильтр 3x1, в нете информация только по медианному фильтру и то я все равно не понимаю как его применять, не могли бы растолковать этот алгоритм, не нужна реализация, а просто что бы растолковали. Например, медианный фильтр подразумевает использование матрицы, в маем случае как я понимаю это матрица 3х1, она накладывается на изображение, в итоге получаем 3 пикселя изображения, теперь этот массив пикселей надо отсортировать, вопрос как? Ведь пиксель это как минимум три значения (RGB) или банально преобразовать в какой-нить unsigned char* ? Дальше после отсортировки мы берем среднее значение и это значение применяется к текущему пикселю. Это касательно медианного фильтра, взвешенный же, судя по логике, подразумевает использование весового значения для каждого элемента матрицы, вот и встает вопрос откуда эти весовые значения брать? После опять сортируем и выбираем медиану, которую применяем к текущему пикселю. Зарание спасибо за объяснения непутевому студенту! |
|||
|
||||
Фантом |
|
|||
![]() Вы это прекратите! ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1516 Регистрация: 23.3.2008 Репутация: 2 Всего: 49 |
Не обязательно, это могут быть и какие-то линейные данные. А откуда следует, что данные - это именно изображение, причем трехканальное? Но если это действительно так, то каждый из трех каналов попросту обрабатывается отдельно. Обычно веса для взешенного медианного фильтра - это "количества экземпляров" соответствующего значения. Т.е. для последовательности 1 5 4 медианное значение равно 4, но если ее взять с фильтром 1 3 1, то медианное значение надо будет считать для данных 1 5 5 5 4 и оно, очевидно, будет равно 5. |
|||
|
||||
Чистый |
|
||||
![]() Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 23.7.2009 Репутация: нет Всего: нет |
я работаю c изображением, вот и предположил это.... получается я раскладываю изображение на три канала и отдельно их обрабатываю затем соединяю и получаю исходное изображение?
так откуда взять этот самый фильтр? Это сообщение отредактировал(а) Чистый - 7.1.2013, 19:12 |
||||
|
|||||
Фантом |
|
|||
![]() Вы это прекратите! ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1516 Регистрация: 23.3.2008 Репутация: 2 Всего: 49 |
Надеюсь, все же не исходное. ![]() Дело в том, что для двумерных данных (т.е., в частности, для изображений) такой фильтр будет анизотропным, что несколько странно. В общем случае лучше использовать маски в виде квадратов, крестов и т.п., а такое анизотропное сглаживание имеет смысл только в том случае, если помехи на изображении тоже почему-то линейны (и это заранее известно). Подобрать самому. Правда, для такой маленькой маски добавка весов будет практически лишена смысла: уже даже тот пример, который я привел выше, с весами 1 3 1, фактически отключает сглаживание полностью. |
|||
|
||||
Чистый |
|
||||
![]() Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 23.7.2009 Репутация: нет Всего: нет |
я имел ввиду что получу обработанное изображение.
почему странно? Просто у меня в задании написано то как я назвал тему, и полагаю что 3x1 это и есть маска или я недопонимаю чего-то? |
||||
|
|||||
Фантом |
|
|||
![]() Вы это прекратите! ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1516 Регистрация: 23.3.2008 Репутация: 2 Всего: 49 |
||||
|
||||
Чистый |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 23.7.2009 Репутация: нет Всего: нет |
тогда последний вопрос, можно ли этим методом зашумить изображение например на 20%? Если до то что меняется в логике? Спасибо за помощь!
|
|||
|
||||
Фантом |
|
|||
![]() Вы это прекратите! ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1516 Регистрация: 23.3.2008 Репутация: 2 Всего: 49 |
||||
|
||||
Чистый |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 23.7.2009 Репутация: нет Всего: нет |
Спасибо, буду пробовать все это добро реализовать, будут вопросы/результаты буду отписываться! Спасибо!
|
|||
|
||||
Чистый |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 23.7.2009 Репутация: нет Всего: нет |
вообщем вот что написал (Qt/C++):
изображение не изменяется никак :( |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Алгоритмы" | |
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Алгоритмы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |