1

使用默认值,以及网站上第一个示例中的相同源图像:http ://www.tomgibara.com/computer-vision/canny-edge-detector我得到一个纯黑色图像作为我的 out.jpg。尺寸正确,但未检测到边缘。

有人可以告诉我如何复制第一个例子吗?

我的代码:

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

public class CannyCmd
{

    public static void main(String args[])
    {

        BufferedImage img = null;

        try
        {
            img = ImageIO.read(new File("in.jpg"));
        }
        catch (Exception e)
        {
          e.printStackTrace();
          System.exit(1);
        }


        CannyEdgeDetector detector = new CannyEdgeDetector();
        detector.setSourceImage(img);
        detector.process();
        BufferedImage edges = detector.getEdgesImage();

        File saveFile = new File("out.jpg");

        try 
        {
            ImageIO.write(edges, "jpg", saveFile);
        } 
        catch (IOException ex) {} 

    }
}
4

1 回答 1

0
 File saveFile = new File("out.png"); 
 ImageIO.write(edges, "png", saveFile);
于 2013-08-06T20:29:33.957 回答