how to make two matrices multiplicable in matlab

let say i have an image of some dimension and a 3x3 matrix which i want to multiply with all its pixels but how can i achieve it. Rows and cols are not equal?

Respuestas (1)

Star Strider
Star Strider el 16 de Feb. de 2016
You can see if the convn function does what you want. For this, your image has to be in double-precision, so use the double function on it first.
Esample:
Img = randi([0 255], 40, 50, 3);
K33 = rand(3);
Out = convn( Img, K33, 'same');
figure(1)
subplot(1,2,1)
imshow(uint8(Img))
subplot(1,2,2)
imshow(uint8(Out))

2 comentarios

Muneef
Muneef el 16 de Feb. de 2016
still getting it ??? Error using ==> times Matrix dimensions must agree.
Is your image 2D (grayscale, black and white) or 3D (RGB) ? If it is 2D then you would use conv2() instead of convn()

Iniciar sesión para comentar.

Categorías

Más información sobre Loops and Conditional Statements en Centro de ayuda y File Exchange.

Preguntada:

el 16 de Feb. de 2016

Comentada:

el 16 de Feb. de 2016

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by