Pengolahan Citra Digital untuk Deteksi Tepi Obyek


Berikut ini merupakan contoh pemrograman matlab untuk mendeteksi obyek dalam citra digital menggunakan metode deteksi tepi roberts.

Langkah-langkah pemrogramannya adalah sebagai berikut:

1. Membaca citra asli
1

2. Mengkonversi ruang warna citra RGB menjadi grayscale
2

3. Melakukan operasi konvolusi matriks menggunakan kernel roberts horizontal
3

4. Melakukan operasi konvolusi matriks menggunakan kernel roberts vertikal
4

5. Mencari resultan citra antara roberts horizontal dan roberts vertikal
5

6. Melakukan operasi thresholding
6

7. Melakukan operasi morfologi berupa filling holes dan area opening
7

8. Menampilkan hasil akhir deteksi obyek
8

Materi deteksi tepi citra digital lebih lanjut dapat dilihat pada laman berikut:
1. Deteksi tepi citra digital
2. Pemrograman GUI Matlab untuk deteksi tepi citra digital

Source code dan citra untuk untuk deteksi tepi pada materi di atas dapat diunduh pada laman berikut ini: Source Code

Sedangkan tampilan kodingnya  adalah:

clc;clear;close all;

Img = imread('candy.jpg');
figure,imshow(Img);

I = double(rgb2gray(Img));
figure, imshow(I,[]);

% Konvolusi dengan operator Roberts
robertshor = [0 1; -1 0];
robertsver = [1 0; 0 -1];
Ix = conv2(I,robertshor,'same');
Iy = conv2(I,robertsver,'same');
J = sqrt((Ix.^2)+(Iy.^2));

% Gambar Hasil
figure,imshow(Ix,[]);
figure,imshow(Iy,[]);
figure,imshow(J,[]);

K = uint8(J);
L = im2bw(K,.08);
figure, imshow(L,[]);
M = imfill(L,'holes');
N = bwareaopen(M,10000);
figure, imshow(N,[]);

Iregion = regionprops(N, 'centroid');
[labeled,numObjects] = bwlabel(N,8);
stats = regionprops(labeled,'Eccentricity','Area','BoundingBox');
eccentricities = [stats.Eccentricity];

idxOfSkittles = find(eccentricities);
statsDefects = stats(idxOfSkittles);

figure, imshow(Img);

hold on;
for idx = 1 : length(idxOfSkittles)
        h = rectangle('Position',statsDefects(idx).BoundingBox,'LineWidth',2);
        set(h,'EdgeColor',[.75 0 0]);
        hold on;
end

title(['There are ', num2str(numObjects), ' objects in the image!']);
hold off;

Save

Posted on July 2, 2016, in Pengolahan Citra and tagged , , , , , , , , , , , , , , , , , , , , , , , , . Bookmark the permalink. 2 Comments.

  1. mas adakah aplikasi atau program untuk mendeteksi hal tersebut ?

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: