MATLAB : Invert dan Flip Image

Invert image adalah mengubah nilai grayscale tiap-tiap piksel image menjadi nilai invers nya. (bingung ya? :D )
Misalnya piksel yang aslinya gelap, nanti akan dijadikan piksel terang, dan sebaliknya. Lebih jelasnya, mari kita lihat contoh berikut...

Invert Image
Citra Biner
  • Nilai piksel 0 -> 1
  • Nilai piksel 1-> 0
Perhatikan code di bawah ini :
i = imread('rice.png'); %citra keabuan (grayscale)
ib = im2bw(i,graythresh(i)); %mengubah citra menjadi citra biner
ibinvert = ~ib;
figure, imshow(ib), title('Citra Biner');
figure, imshow(ibinvert), title('Invert Citra Biner');

Dari code di atas, ~ib menunjukkan inverse dari ib. Hasilnya dapat dilihat pada Gambar 1. Selain cara di atas, kita dapat mendapatkan invers dari citra biner dengan cara mengurangkan 1 dengan nilai piksel. Code nya sebagai berikut :
ibinvert = 1-ib;


Gambar 1 Invert citra biner

Citra Keabuan (grayscale)
Untuk mendapatkan invers dari citra grayscale, dapat dilakukan sebagai berikut :

iinvert = 255-i;
figure, imshow(i),title('Citra Grayscale');
figure, imshow(iinvert),title('Invert Citra Grayscale');

Code di atas akan menghasilkan citra seperti Gambar 2.

Gambar 2 Invert citra keabuan (grayscale)

Flip Image
Gambar 3 adalah citra yang akan kita flip.


Gambar 3 Citra asal

Flip Vertical
Flip vertikal akan menghasilkan cerminan citra terhadap sumbu vertikal.
Berikut code nya :
flipv = i(size(i,1):-1:1,:); 
Code di atas akan menghasilkan citra seperti Gambar 4.


Gambar 4 Citra hasil flip vertikal
Flip Horizontal
Flip horizontal akan menghasilkan cerminan citra terhadap sumbu horizontal.
Berikut code nya :
fliph = i(:,size(i,2):-1:1);

Code di atas akan menghasilkan citra seperti Gambar 5.
 
 Gambar 5 Citra hasil flip horizontal

1 comment on "MATLAB : Invert dan Flip Image"