1 import java.awt.*; 2 import java.awt.event.*; 3 import JSci.awt.*; 4 import JSci.maths.wavelet.*; 5 import JSci.maths.wavelet.cdf2_4.*; 6 7 12 public final class WaveletImageTransform extends Frame { 13 public static void main(String [] arg) { 14 if(arg.length==0) { 15 System.err.println("Please specify an image with odd dimensions."); 16 return; 17 } 18 new WaveletImageTransform(arg[0]); 19 } 20 public WaveletImageTransform(String filename) { 21 super("Fast Wavelet Transform"); 22 addWindowListener(new WindowAdapter() { 23 public void windowClosing(WindowEvent evt) { 24 dispose(); 25 System.exit(0); 26 } 27 }); 28 29 System.err.println("Opening \""+filename+"\""); 30 PixelArray pa1=new PixelArray(filename); 31 ImageCanvas ic1=new ImageCanvas(pa1.rebuildImage()); 32 System.err.println("Please wait... This could take a few minutes..."); 33 34 PixelArray[][] paa=pa1.greenFWT(new CDF2_4()); 35 36 ImageCanvas ic0_0=new ImageCanvas(paa[0][0].rebuildImage()); 37 38 ImageCanvas ic1_0=new ImageCanvas(paa[1][0].rebuildImage()); 39 ImageCanvas ic0_1=new ImageCanvas(paa[0][1].rebuildImage()); 40 ImageCanvas ic1_1=new ImageCanvas(paa[1][1].rebuildImage()); 41 42 setLayout(new GridLayout(2,0,2,2)); 43 add(ic1); 44 Panel p2=new Panel(); 45 p2.setLayout(new GridLayout(0,2,1,1)); 46 p2.add(ic0_0); 47 p2.add(ic1_0); 48 p2.add(ic0_1); 49 p2.add(ic1_1); 50 add(p2); 51 setBounds(0,0,400,400); 52 show(); 53 } 54 } 55 56 | Popular Tags |