Laporan Tugas Pertama Pengolahan Multimedia & Lab » Part 1


imadjust


%membersihkan semua nilai variabel pada workspace
clear;
%membersihkan tampilan Command Window
clc;

%membaca masukan nilai untuk Lout dan Hout
Lout = input('Lout = ');
Hout = input('Hout = ');

%membaca image asli dan mengubahnya menjadi grayscale
%kemudian menjadi image intensitas
img = imread('Radiografia.jpg');
img_gray = double(rgb2gray(img))/255;

%mendapatkan ukuran image intensitas
[m,n] = size(img_gray);

%perulangan untuk adjustment intensitas secara manual
for i=1:m
    for j=1:n
        img_adjust(i,j) = ((img_gray(i,j))*(Hout-Lout))+Lout;
    end
end

%adjustmen intensitas menggunakan fungsi bawaan Matlab
img_func = imadjust(img_gray,[0;1],[Lout;Hout]);

%menampilkan image intensitas asli, hasil adjustment manual
%dan adjustment dengan fungsi bawaan Matlab pada satu figure
figure('Name','Tugas Adjustment Intensitas - 2207 100 175','NumberTitle','off');
subplot(2,1,1);
imshow(img_gray);
title('Image Intensitas Asli');
subplot(2,2,3);
imshow(img_adjust);
title('Image Hasil Adjustment Intensitas Secara Manual');
subplot(2,2,4);
imshow(img_func);
title('Image Hasil Adjustment Intensitas Dengan Fungsi imadjust');


figure hasil run program tugas_imadjust.mnilai pada variabel img_gray

nilai pada variabel img_adjustnilai pada variabel img_func




filter average dan filter median


%membersihkan semua nilai variabel pada workspace
clear;
%membersihkan tampilan Command Window
clc;

%baca image, ubah jadi grayscale dan dapatkan ukurannya
img = imread('Radiografia-small.jpg');
img_gray = imnoise(rgb2gray(img),'salt & pepper');
[m,n] = size(img_gray);

%berikan nilai tepi (0) pada image grayscale, dapatkan ukurannya
img_border = [zeros(m+2,1) [zeros(1,n); img_gray; zeros(1,n)] zeros(m+2,1)];
[p,q] = size(img_border);

%copy image asli untuk dioperasikan (dikorelasi) dengan kernel 3*3
img_average = img_border; %copy image yang akan dikorelasi linier
img_median = img_border; %copy image yang akan dikorelasi non-linier

%korelasi linier (nilai rata-rata) menggunakan kernel 3*3
for i=1:m
    for j=1:n
        img_average(i+1,j+1) = sum(sum(img_average(i:i+2,j:j+2)))/9;
    end
end

%korelasi non-linier (nilai median) menggunakan kernel 3*3
for x=1:m
    for y=1:n
        img_median(x+1,y+1) = median([img_median(x,y:y+2) img_median(x+1,y:y+2) img_median(x+2,y:y+2)]);
    end
end

%menghilangkan border pada image hasil filter
img_average_hasil = img_average(2:p-1, 2:q-1);
img_median_hasil = img_median(2:p-1, 2:q-1);

%menampilkan image asli dengan noise dan hasil filter dalam satu figure
figure('Name','Tugas Korelasi Linier dan Non Linier - 2207 100 175','NumberTitle','off');
subplot(1,3,1),imshow(img_gray);
title('Image Grayscale Asli Dengan Noise');
subplot(1,3,2),imshow(img_average_hasil);
title('Image Grayscale Hasil Korelasi Linier');
subplot(1,3,3),imshow(img_median_hasil);
title('Image Grayscale Hasil Korelasi Non Linier');


figure hasil run program tugas_korelasi_linier_non_linier.m nilai pada variabel img_gray

nilai pada variabel img_average_hasil nilai pada variabel img_median_hasil
download laporan dalam format pdf di sini

0 comments:

Posting Komentar