5

Click here to load reader

watermarking Teknik Phase Coding Mp3

Embed Size (px)

DESCRIPTION

watermarking phase coding

Citation preview

Page 1: watermarking Teknik Phase Coding Mp3

[email protected]|image processing|artificial intelegent|decision support system|

more informationhttp://softscients.blogspot.com

Watermarking in MP3 Files Bases on Phase Coding

Tanda air di file mp3 dengan Phase Coding

Sebaiknya anda terlebih dahulu memahami phase coding dan signal processing sebelum membaca tulisan ini

Oleh : [email protected]

http://softscients.blogspot.com

Baru-baru ini penulis membuat ‘aplikasi’ watermarking. Walau rada anehjuga diluar topik dari image processing, artificial intelegent, decision suportsystem, ini malah signal processing. Demi untuk memenuhi tugas diatas,penulis harus belajar mengenal teknik pemroses sinyal, Fast fouriertransform, format mp3, pencuplikan .

Ternyata format mp3 untuk melakukan proses CODEC (encoding-decoding)saja susah untuk mencari library yang siap pakai, mulai dari C# denganAforget.net, kemudian Java dengan java Sound API, dan terakhir denganMatlab dengan melibatkan 3 library yaitu

1. LAME.exe untuk write2. mp3info .exe untuk membaca format mp3 seperti frekuensinya dan

panjangnya3. mpg123.exe untuk membaca

3 perkakas tersebut hanya untuk melakukan proses CODEX mp3 saja

0 1 2 3 4 5 6 7 8 9 10

x 105

-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1hasil akhir

black adalah file mp3 DIBACA

red adalah hasil DITULIS dan DIBACA lagi

Page 2: watermarking Teknik Phase Coding Mp3

[email protected]|image processing|artificial intelegent|decision support system|

more informationhttp://softscients.blogspot.com

Nah yang terakhir adalah menerjemahkan algoritma dari berbagai paper-journalmengenai phase coding kedalam kode <penulis menggunakan matlab>. Berikutadalah kode yang ‘terlihat sederhana sekali’ yaitu terdiri dari

EN

CO

DIN

GMembaca file mp3 Input text ASCII untuk diubah

ke binerBiner dikonversikan kedalampi yaituJika 1 maka (pi/2)Jika 0 maka (-pi/2)

Menghitung FFTMenentukan Amplitudodan Fase

Masukan kedalamperhitungan untuk mencarinilai Fase*

Modifikasi Fase menjadi Fase*Menghitung nilai IFFT dari Amplitudo dan Fase*

Menulis file mp3

DE

CO

DIN

G

Membaca file mp3Menghitung FFTMenentukan Amplitudo dan Fase

Konversikan Fase kedalam bilangan biner

Maaf sekali kalau kurang jelas, karena menggambarkan alur langkah saja.Jika anda tertarik bisa silahkan kirim email untuk detail lebih lanjut.Penulis sudah ‘memperkirakan’ bahwa secara teori phase coding memangbisa, dan sudah penulis buktikan! Bagaimana dengan file mp3?? Silahkanlanjut kehalaman bawah!

Page 3: watermarking Teknik Phase Coding Mp3

[email protected]|image processing|artificial intelegent|decision support system|

more informationhttp://softscients.blogspot.com

Percobaan dengan data BULK dan file mp3

Penulis telah menulis code seperti langkah diatas dengan menggunakan data BULK (bukan data signal dari membaca file .mp3) dandengan file .mp3. berikut adalah script yang ditulis menggunakan Matlab <lumayan dikit tapi didalamnya banyak juga>

d=tan(1:3000); %data berupa fungsi tanPesan='mulkan bejo pamungkas' %pesan text

PesanBiner=str2bin(Pesan); %pesan menjadi binerPesanPhi=bin2pi(PesanBiner); %mengubah biner menjadi pi[d2]=Encoding(d,PesanPhi); %melakukan proses encoding

Hidden=Decoding(d2,length(Pesan)*8); %melakukan proses decodingteks=bin2str(Hidden) %extract databerikut adalah uji coba untuk berbagai kondisi

no Data BULK Pesan Extract Hasil1 d=tan(1:3000); 'mulkan bejo

pamungkas'mulkan bejo pamungkas Sip

2 d=cos(1:3000); 'mulkan bejopamungkas'

muLkAn bejo pAmunGiaq Lumayan hancur

3 d=sin(1:3000); 'mulkan bejopamungkas'

mulKaN bejo paMuNgkas Lumayan

4 d=tan(1:3000); ini adalah pesan ini adalah pesan Sip banget5 d=cos(1:3000); ini adalah pesan inI AdAlah pesaN Lumayan6 d=sin(1:3000); ini adalah pesan ili aDalah pesAn Lumayan hancur

Data Mp3 dan WAV7 [dmp3,sr] =mp3read('lagu5Library.mp3'); mulkan MulkAn Lumayan

8 mulkan bejo pamungkas MulkAn bEjO pamungkAs lumayan9 [dmp3,sr] =mp3read('lagu5Library.mp3'); mulkan àÊÂà Nggak jelas

10 mulkan bejo pamungkas ÀJÂààÂàà`°Àä dhèë Hadewdh hancur11 [dmp3,sr] = wavread('FATIHAH.WAV'); mulkan bejo pamungkas m+ahbejm phu@ k@s Kalau ini parah banget

Page 4: watermarking Teknik Phase Coding Mp3

[email protected]|image processing|artificial intelegent|decision support system|

more informationhttp://softscients.blogspot.com

Jadi fungsi tan adalah “sempurna” untuk melakukan CODEC diatas, kenapapenulis menggunakan fungsi sin dan cos karena kedua fungsi tersebutmempresentasikan signal nyata karena signal biasa direpresentasikan denganfungsi sin dan cos

Uji coba pada file mp3 dibagi menjadi 2 yaitu

1. Hasil signal encoding langsung dilakukan decoding yaitu hasil pada no 7dan 8

2. Hasil signal encoding ditulis ke file.mp3 dan dibaca kemudian dilakukanproses decoding yaitu hasil pada no 9 dan 10

3. Langkah seperti no 1 hanya saja format yang digunakan adalah wav

Kemudian penulis uji coba untuk mengetahui seberapa jauh perbedaan antaradata file.mp3 yang

1. dibaca2. ditulis kembali dan dibaca lagi

Berikut adalah nilai Standar deviasi dari delta nya yaitu 0.0218. Nilai STD begitusangat besar sekali mengingat signal mempunyai rentang antara -1 sampai 1<idealnya 0.0001 untuk nilai STD>

Kesimpulan

Kendala library?? <ya begitulah> atau harus mengubah data kedalamtransformasi lain?? <silahkan dipikir-pikir>

0 1 2 3 4 5 6 7 8 9 10

x 105

-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1hasil akhir

black adalah file mp3 DIBACA

red adalah hasil DITULIS dan DIBACA lagi

Page 5: watermarking Teknik Phase Coding Mp3

[email protected]|image processing|artificial intelegent|decision support system|

more informationhttp://softscients.blogspot.com

diskusi – panduan - source code - tutorial

Gabung aja disini