我正在尝试使用Java构建用于OMR识别的代码。当扫描图像中的对象与我使用的模板图像的位置不同时,我遇到了问题。
为了解决这个问题,我决定在图像中放置边框,当我使用边框剪切图像时,我可以获得正确的值。现在为此我手动切割图像,但我也希望使用Java剪切图像。
我知道我可以从CropImageFilter
班级中选择矩形。但是,我怎么能让程序知道它需要从哪里开始呢?任何人都可以帮我解决这个问题吗?
答案 0 :(得分:2)
如果您不使用Java 7
然后我知道这样做的最简单的方法是:
private BufferedImage cropImage(BufferedImage source, Rectangle newDim) {
return source.getSubimage(0, 0, newDim.width, newDim.height);
}
答案 1 :(得分:0)
您可以查看CropImageFilter
的{{3}}:
CropImageFilter(int x, int y, int w, int h)
构造一个CropImageFilter,它从x,y,w和h参数指定的源Image中提取像素的绝对矩形区域。