【发布时间】:2017-05-14 02:32:02
【问题描述】:
有人知道如何将 Mat 转换为 IplImage 吗? 为了实现这一点,我已将 Mat 转换为 BufferedImage,但再次无法在 BufferedImage 中找到转换为 IplImage。
有什么方法可以将 Mat 转换为 IplImage?
谢谢
【问题讨论】:
标签: opencv image-processing javacv face-recognition
有人知道如何将 Mat 转换为 IplImage 吗? 为了实现这一点,我已将 Mat 转换为 BufferedImage,但再次无法在 BufferedImage 中找到转换为 IplImage。
有什么方法可以将 Mat 转换为 IplImage?
谢谢
【问题讨论】:
标签: opencv image-processing javacv face-recognition
我相信您可以按如下方式将 BufferedImage 转换为 IplImage。
public static IplImage toIplImage(BufferedImage src) {
Java2DFrameConverter bimConverter = new Java2DFrameConverter();
OpenCVFrameConverter.ToIplImage iplConverter = new OpenCVFrameConverter.ToIplImage();
Frame frame = bimConverter.convert(src);
IplImage img = iplConverter.convert(frame);
IplImage result = img.clone();
img.release();
return result;
}
我是从this 问题中得到的。暂时试试这个。我会检查是否可以直接转换。
更新: 请看看这个api docs。我没有测试以下内容。刚才写了。请尝试告诉我。
public static IplImage toIplImage(Mat src) {
OpenCVFrameConverter.ToIplImage iplConverter = new OpenCVFrameConverter.ToIplImage();
OpenCVFrameConverter.ToMat matConverter = new OpenCVFrameConverter.ToMat();
Frame frame = matConverter.convert(src);
IplImage img = iplConverter.convert(frame);
IplImage result = img.clone();
img.release();
return result;
}
【讨论】: