Convolve4 – Edge Magnitude

c:\ece538\2019\impro2>java Convolve4 blob.png 2
maxval 285

 

Sometimes edges need to be scaled to be fully visible. We used a scaling factor of 2 in this example. The scaling factor is the second command-line argument.

See EdgeMag.java


Convolve4.java

import java.awt.image.*;
import java.awt.color.*;
import java.io.*;
import javax.imageio.*;
import javax.swing.JFrame;


public class Convolve4 {

    public static void main(String [] args) {
	String filename = "blob.png";
	if (args.length>0) filename = args[0];
	double scl = args.length>1? Double.parseDouble(args[1]): 1.0;

	ImagePanel p1 = new ImagePanel(filename);
	ImageFrame f1 = new ImageFrame(p1);
	f1.setLocation(10,10);
	f1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	int w = f1.getWidth();
	int h = f1.getHeight();

	EdgeMag c = new EdgeMag();
	if (scl!=1.0) c.setScale(scl);
	BufferedImage out3 = c.doEdgeMag(p1.img);
	System.out.println("maxval " + c.maxval);
	ImagePanel p2 = new ImagePanel(out3,"edge magnitude");
	ImageFrame f2 = new ImageFrame(p2);
	f2.setLocation(20+w,20);
	f2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);		
    }
}


Maintained by John Loomis, updated Wed Mar 18 16:11:18 2020