Penskalaan adalah sebuah operasi geometri yang memberikan
efek memperbesar atau memperkecil ukuran citra masukan sesuai variabel
penskalaan citra-nya (putra, 2010: 159). Ukuran baru hasil penskalaan didapat
melalui perkalian antara ukuran citra masukan dengan variabel penskalaan.
Penskalaan citra disebut image zooming yaitu pengubahan
ukuran citra (membesar/zoom out atau mengecil/zoom in)
Rumus penskalaan :
x’=sx . x sx : faktor skala arah x
y’=sy . y sy : faktor skala arah y
Operasi zoom out (pembesaran) dengan faktor 2 (sx=sy = 2) diimplementasikan dengan menyalin setiap pixel sebanyak 4 kali.
Jadi citra 2 x 2 pixel akan menjadi 4 x 4 pixel
Operasi zoom in (pengecilan) dengan faktor skala = ½ dilakukan dengan mengambil rata-rata dari 4 pixel yang bertetangga menjadi 1 pixel
void zoom_out(Citra A, Citra B,int N,int M)
/* Perbesaran citra A dengan faktor skala 2
*/
{ int i, j, k, m, n;
m=0; n=0
for (i=0; i<=N-1; i++)
{
for (j=0; j<=M-1; j++)
{
B[m][n]=A[i][j];
B[m][n+1]=A[i][j];
B[m+1][n]=A[i][j];
B[m+1][n+1]=A[i][j];
N=n+2;
}
m=m+2
n=0
}
}
Citra semula Citra diperbesar 2 kali
Rumus penskalaan :
x’=sx . x sx : faktor skala arah x
y’=sy . y sy : faktor skala arah y
Operasi zoom out (pembesaran) dengan faktor 2 (sx=sy = 2) diimplementasikan dengan menyalin setiap pixel sebanyak 4 kali.
Jadi citra 2 x 2 pixel akan menjadi 4 x 4 pixel
Operasi zoom in (pengecilan) dengan faktor skala = ½ dilakukan dengan mengambil rata-rata dari 4 pixel yang bertetangga menjadi 1 pixel
void zoom_out(Citra A, Citra B,int N,int M)
/* Perbesaran citra A dengan faktor skala 2
*/
{ int i, j, k, m, n;
m=0; n=0
for (i=0; i<=N-1; i++)
{
for (j=0; j<=M-1; j++)
{
B[m][n]=A[i][j];
B[m][n+1]=A[i][j];
B[m+1][n]=A[i][j];
B[m+1][n+1]=A[i][j];
N=n+2;
}
m=m+2
n=0
}
}
Citra semula Citra diperbesar 2 kali
Tidak ada komentar:
Posting Komentar