首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >JavaCV中的ExceptionInInitializerError

JavaCV中的ExceptionInInitializerError
EN

Stack Overflow用户
提问于 2013-11-19 22:29:27
回答 1查看 1.2K关注 0票数 1

我正在尝试使用JavaCV,但我正在使用ExceptionInInitializerError。

以下是日志:

代码语言:javascript
运行
复制
Exception in thread "Thread-2" java.lang.ExceptionInInitializerError
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Unknown Source)
    at com.googlecode.javacpp.Loader.load(Loader.java:553)
    at com.googlecode.javacpp.Loader.load(Loader.java:532)
    at com.googlecode.javacv.cpp.opencv_core$CvArr.<clinit>(opencv_core.java:156)
    at com.googlecode.javacv.VideoInputFrameGrabber.grab(VideoInputFrameGrabber.java:163)
    at com.sudev.robo.Robot.run(Robot.java:30)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.IllegalStateException: Can't overwrite cause
    at java.lang.Throwable.initCause(Throwable.java:456)
    at com.googlecode.javacpp.Loader.load(Loader.java:581)
    at com.googlecode.javacpp.Loader.load(Loader.java:532)
    at com.googlecode.javacv.cpp.opencv_core.<clinit>(opencv_core.java:134)
    ... 8 more

有人能帮我解决这个问题吗。我使用的是JavaCV 0.6、OpenCV 2.4.7和Microsoft visual c++ 2010 redistributable x64。

程序代码如下:

代码语言:javascript
运行
复制
import static com.googlecode.javacv.cpp.opencv_core.cvFlip;
import static com.googlecode.javacv.cpp.opencv_highgui.cvSaveImage;
import com.googlecode.javacv.CanvasFrame;
import com.googlecode.javacv.FrameGrabber;
import com.googlecode.javacv.VideoInputFrameGrabber;
import com.googlecode.javacv.cpp.opencv_core.IplImage;

public class Robot implements Runnable {
    IplImage image;
    CanvasFrame canvas = new CanvasFrame("Web Cam");

    public Robot() {
        canvas.setDefaultCloseOperation(javax.swing.JFrame.EXIT_ON_CLOSE);
    }

    @Override
    public void run() {
        FrameGrabber grabber = new VideoInputFrameGrabber(0);
        // 1 for next camera
        int i = 0;
        try {
            grabber.start();
            IplImage img = null;
            while (true) {
                 long sleepTime= (long)((1000 / 60));
                    img = grabber.grab();
                if (img != null) {
                    cvFlip(img, img, 1);// l-r = 90_degrees_steps_anti_clockwise
                    cvSaveImage((i++) + "-aa.jpg", img); // show image on window
                    canvas.showImage(img);
                } 
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public static void main(String[] args) {
        Robot gs = new Robot();
        Thread th = new Thread(gs);
        th.start();
    }
}
EN

回答 1

Stack Overflow用户

发布于 2013-12-18 06:16:03

对于那些在使用JavaCV并试图加载摄像头时发现此错误的人...

我发现从下面的文件中导入所有文件解决了我的问题。

https://code.google.com/p/javacv/downloads/detail?name=javacv-0.6-cppjars.zip

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20074205

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档