Table of Contents

  1. Image Filtering and Enhancement
  2. Morphological Operations
  3. Feature Detection
  4. Basic Object Recognition
  5. Next Steps

1. Image Filtering and Enhancement

Noise Reduction

I = imread('noisy_image.jpg');
gaussian_filtered = imgaussfilt(I, 2);
median_filtered = medfilt2(I, [3 3]);
figure;
subplot(1,3,1), imshow(I), title('Original');
subplot(1,3,2), imshow(gaussian_filtered), title('Gaussian');
subplot(1,3,3), imshow(median_filtered), title('Median');

Edge Enhancement

I = im2double(rgb2gray(imread('peppers.png')));
sobel_edge = edge(I, 'sobel');
canny_edge = edge(I, 'canny');
figure;
imshowpair(sobel_edge, canny_edge, 'montage');
title('Sobel (Left) vs Canny (Right)');

2. Morphological Operations

Basic Operations

bw = imbinarize(imread('text.png'));
se = strel('disk', 3);
dilated = imdilate(bw, se);
eroded = imerode(bw, se);
figure;
imshowpair(dilated, eroded, 'montage');
title('Dilation (Left) vs Erosion (Right)');

Advanced Morphology

opened = imopen(bw, strel('rectangle',[5 3]));
closed = imclose(bw, strel('square',3));
boundary = bwperim(bw);
figure;
subplot(2,2,1), imshow(bw), title('Original');
subplot(2,2,2), imshow(opened), title('Opening');
subplot(2,2,3), imshow(closed), title('Closing');
subplot(2,2,4), imshow(boundary), title('Boundary');

3. Feature Detection

Corner Detection

I = rgb2gray(imread('checkerboard.jpg'));
corners = detectHarrisFeatures(I);
strongest = selectStrongest(corners, 50);
figure;
imshow(I); hold on;
plot(strongest);
title('Top 50 Harris Corners');

Blob Detection