2016-03-07 4 views
-4

Я новичок в Matlab, и я пытаюсь фильтровать матрицуФильтрующие матрицы в MATLAB

A=[104 104 100 108 108; 104 104 100 108 108; 99 99 106 98 98; 95 95 90 85 85; 95 95 90 85 85] 

с фильтром

B=[-0.1111111111111111 -0.1111111111111111 -0.1111111111111111; -0.1111111111111111 0.8888888888888889 -0.1111111111111111; -0.1111111111111111 -0.1111111111111111 -0.1111111111111111] 

метод, который я должен использовать для заполнения является репликация , поэтому я изменил матрицу А, чтобы стать

A=[104 104 100 108 108; 104 104 100 108 108; 99 99 106 98 98; 95 95 90 85 85; 95 95 90 85 85] 

, когда я попытался сделать внутренний продукт между матрицей и th е фильтр, чтобы получить отфильтрованный матрицу

dot(A,B) 

я получил ошибку:

_________ Error using dot (line 33) A and B must be same size. 
_________ 

Что я должен делать?

ответ

1

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

Кроме того, он автоматически обрабатывает заполнение репликации, передавая входной параметр replicate.

output = imfilter(A, B, 'replicate'); 
+0

спасибо! эти три строки, которые вы написали, очень полезны больше, чем минуты, потраченные впустую на поиск веб-сайтов и просмотр видео, которое не отвечает на мой вопрос –

Смежные вопросы