Flag Filter / Image Fusion


Pergantian profil image di facebook dengan menyertakan bendera atau yang sering dibilang “flag filter”. sekitar beberapa bulan yang lalu rainbow flag dan sekarang france flag.

bagaimana cara kerja “flag filter”?
“flag filter” dalam bahasa lainnya dikenal dengan image fusion, image fusion ini terdiri dari bermacam macam metode: Simple Average, Maximum Selected High pass filtering, IHS Transform, PCA, Wavelet, dll. Semakin aneh namanya semakin aneh cara kerjanya, lengkapnya bisa digoogle “image fusion”

Sekarang kita coba lihat metode yang paling simple yaitu Simple average. Dari namanya kita sudah bisa tahu bahwa cara kerja nya adalah dengan merata-ratakan.

Dalam Citra Digital setiap pixel di representasikan dengan nilai pixel, gampangnya jika kita punya Citra digital 16 pixel maka ada 16 nilai pixel atau 16×3 nilai pixel (jika citra direprentasikan dalam layer warna)

Contoh:
Citra Background = Ig (dalam hal ini adalah citra flag)
Citra Foreground = In (dalam hal ini adalah citra profil)
Citra Fused = fusedImg (dalam hal ini adalah citra yg sudah terfused)

bgImg=representasi nilai pixel Ig
fgImg=representasi nilai pixel In

jika kita anggap Ig dan In memiliki panjang dan lebar yang sama,
maka setiap nilai pixel yang terfused adalah IfusedImg = (bgImg+fgImg)/2.

Tetapi kita bisa memodifikasi tingkat ketebalan atau tingkat transparansi dari Ig atau In dengan formula sederhana sebagai berikut:
0<=alphaFactor<=1 (semakin tinggi nilai alphaFactor semakin transparan bgImgAlpha (Flag)

fgImgAlpha = alphaFactor .* fgImg;
bgImgAlpha = (1 – alphaFactor) .* bgImg;

berikut script yang dijalankan dimatlab dengan alphaFactor =0.4,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clc, clear all, close all
Ig=imread(‘Indonesia_flagx.png’);
If=imread(‘n.png’);

bgImg = double(Ig);
fgImg = double(If);

alphaFactor = 0.4;

fgImgAlpha = alphaFactor .* fgImg;
bgImgAlpha = (1 – alphaFactor) .* bgImg;

fusedImgt = fgImgAlpha + bgImgAlpha;
fusedImg = uint8(fusedImgt);

figure;
subplot(131);imshow(Ig);title(‘BackGround’);
subplot(132);imshow(If);title(‘ForeGround’);
subplot(133);imshow(fusedImg);title(‘Fused’);

figure;imshow(fusedImg)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Screenshot from 2015-11-15 11:04:48

Advertisements

Author: ridhobustami

orang ngak jelas

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