做课设的时候遇到一个问题,因为我们想做的是一个关于图像识别的程序。就像这样:
然后通过一系列的图像识别操作,最后得到的图像是Mat的格式,但是在javaFx中只能通过ImageView显示图片,那就转化呗!
例如一个颜色筛选操作:
//颜色筛选
public static void colorFilter() {
/**
* ImageProcessing.orangeImage 为颜色筛选图像的Mat对象
* toBufferedImage 将Mat类型的图像转化为java.awt中的BufferedImage类型。
* showImage 将java.awt中的BUfferedImage类型转化为javaFx中的ImageView类型,用于直接显示图像。
*/
BufferedImage image = toBufferedImage(ImageProcessing.orangeImage);
showImage(image);
}
private static BufferedImage toBufferedImage(Mat matrix) {
int type = BufferedImage.TYPE_BYTE_GRAY;
if (matrix.channels