Edge Detection in Matrix Form
6 views (last 30 days)
Show older comments
Hi my main problem is how can i detect edges in 3x3 matrix not image my values are
matrix 7 8 9;4 5 6;1 2 3
edge detector 1 2 3; 4 5 6; 7 8 9
please help me for detecting matrix edges with convolution
0 Comments
Answers (1)
Image Analyst
on 19 Dec 2018
Try this:
grayImage = imread('moon.tif');
subplot(1, 2, 1);
imshow(grayImage, []);
impixelinfo
edgeDetector = [1 2 3; 4 5 6; 7 8 9]; % Not a good edge detector!
edgeDetector = [1 1 1; 0 0 0; -1 -1 -1]; % Better edge detector.
filteredImage = conv2(double(grayImage), edgeDetector, 'same');
subplot(1, 2, 2);
imshow(filteredImage, []);
impixelinfo
3 Comments
Image Analyst
on 19 Dec 2018
So just replace the moon image with your image or matrix. I thought you'd understand to do that, but anyway, here it is:
matrix = [7 8 9; 4 5 6; 1 2 3]
subplot(1, 2, 1);
imshow(matrix, []);
impixelinfo
edgeDetector = [1 2 3; 4 5 6; 7 8 9]; % Not a good edge detector!
% edgeDetector = [1 1 1; 0 0 0; -1 -1 -1]; % Better edge detector.
filteredImage = conv2(matrix, edgeDetector, 'same');
subplot(1, 2, 2);
imshow(filteredImage, []);
impixelinfo
Now, you know that the filter window can only fit complete inside your matrix at ONE location, don't you?
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!