执行new Mat()时出现UnsatisfiedLinkError



我目前正试图编写一个小程序来拍摄新生的照片,并通过他们的名字等来保存他们,以减轻铭文等。

所以这是我的问题,我找到了一个很好的教程来帮助我使用网络摄像头:http://www.codeproject.com/Tips/717283/How-to-use-OpenCV-with-Java-under-NetBeans-IDE

我可以运行这个项目没有错误,但当我试图导入一些代码,我得到了这个错误:

Exception in thread "main" java.lang.UnsatisfiedLinkError: org.opencv.core.Mat.n_Mat()J
    at org.opencv.core.Mat.n_Mat(Native Method)
    at org.opencv.core.Mat.<init>(Mat.java:24)
    at recupphoto.Ihm.<init>(Ihm.java:38)
    at recupphoto.RecupPhoto.main(RecupPhoto.java:19)
Java Result: 1

当我执行这些行时出现错误:

Mat frame = new Mat();
MatOfByte mem = new MatOfByte();

这里是我的进口产品,如果它能帮助你找到:

import java.util.ArrayList;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.ByteArrayInputStream;
import javax.imageio.ImageIO;
import javax.swing.JOptionPane;
import javax.swing.UIManager;
import org.opencv.core.Mat;
import org.opencv.core.MatOfByte;
import org.opencv.imgcodecs.Imgcodecs;
import org.opencv.videoio.VideoCapture;

在编译时我得到了这个消息,不知道是否相关

注意:一些输入文件使用未检查或不安全的操作。注意:重新编译时使用-Xlint:unchecked查看详细信息。

两个错误出现(我猜)当Mat()被调用,但我找不到如何解决这个问题。

我真的应该在这里使用一些帮助或技巧!谢谢你的阅读,并为我糟糕的英语感到抱歉!

终于解决了我的问题,事实是我打电话给

System.loadLibrary(Core.NATIVE_LIBRARY_NAME);

太晚了,所以我移动了一点并解决了这个问题:)感谢所有花时间帮助我的人!

步骤1获取dependency walker应用程序。

步骤2浏览到相应的库文件夹。

步骤3看看缺少了什么,并得到它。

提示:

确保你得到的DLL是32位或64位的。

请确保使用正确的java(32位/64位)编译,具体取决于您提供的DLL。

最后,如果您缺少的依赖项从MSVCP***.dll开始下载Microsoft Visual c++包。再次关注建筑。我建议你从这一步开始。

相关内容

  • 没有找到相关文章

最新更新