Как мне создать свой собственный фильтр в Matlab? - PullRequest
1 голос
/ 03 декабря 2011

Могу ли я создать свой собственный фильтр для удаления шума на изображениях в MATLAB, изменив значения ядра / маски.Я новичок в MATLAB, и мне действительно нужна помощь.

Ответы [ 3 ]

8 голосов
/ 03 декабря 2011

Да.Функция filter2 принимает указанное пользователем ядро ​​фильтра.Например, для применения вертикального фильтра Собеля:

h = [ 1  2  1 
      0  0  0
     -1 -2 -1 ];

im_out = filter2(h, im_in);

Если вы спрашиваете, как выбрать значения для вашего ядра фильтра, это обширная тема.Но если у вас есть набор инструментов для обработки изображений, вы можете использовать функцию fspecial, чтобы получить несколько предопределенных ядер.

1 голос
/ 04 декабря 2011

Ответ выше - это все, что вам нужно для начала.Тогда, если вы хотите узнать больше, они очень помогли мне в начале:

Для понятий http://www.imagemagick.org/Usage/fourier/ Код не в Matlab, но это один из лучших учебников, которые я видел

Для проверки Matlab http://blogs.mathworks.com/steve/category/image-deblurring/ и http://blogs.mathworks.com/steve/category/fourier-transforms/

0 голосов
/ 28 декабря 2011

Вы можете просмотреть все существующие фильтры и предложить изменения в них. В этом случае будет полезен тщательный анализ.

Существуют различные фильтры для удаления импульсных помех, гауссовских шумов и т. Д.

Вы можете начать с поиска шумов, присутствующих на изображениях, и пошагово пошагово решить проблему

Раздел справки MATLAB предоставляет множество ссылок на одно и то же.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...