首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >JAVACV :使用javacv捕获网络摄像头

JAVACV :使用javacv捕获网络摄像头
EN

Stack Overflow用户
提问于 2012-07-18 18:24:14
回答 3查看 8.6K关注 0票数 1

已尝试使用JAVACV库从网络摄像头捕获。但是它抛出了一个UnsatisfiedLinkError。堆栈跟踪如下:

代码语言:javascript
运行
复制
Exception in thread "main" java.lang.UnsatisfiedLinkError:
C:\Users\anooj\AppData\Local\Temp\javacpp7955905460040\jniopencv_core.dll: %1 is not a valid Win32 application
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1928)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1825)
at java.lang.Runtime.load0(Runtime.java:792)
at java.lang.System.load(System.java:1059)
at com.googlecode.javacpp.Loader.loadLibrary(Loader.java:418)
at com.googlecode.javacpp.Loader.load(Loader.java:368)
at com.googlecode.javacpp.Loader.load(Loader.java:315)
at com.googlecode.javacv.cpp.opencv_core.<clinit>(opencv_core.java:131)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at com.googlecode.javacpp.Loader.load(Loader.java:334)
at com.googlecode.javacv.cpp.opencv_imgproc.<clinit>(opencv_imgproc.java:96)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at com.googlecode.javacpp.Loader.load(Loader.java:334)
at com.googlecode.javacv.cpp.opencv_highgui.<clinit>(opencv_highgui.java:91)
at com.googlecode.javacv.OpenCVFrameGrabber.start(OpenCVFrameGrabber.java:170)
at javaapplication16.JavaApplication16.captureframe(JavaApplication16.java:24)
at javaapplication16.JavaApplication16.main(JavaApplication16.java:38)
Java Result: 1

我们的代码如下:

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

public class JavaApplication16 {

/**
 * @param args the command line arguments
 */
    public static void captureframe()
    {
        OpenCVFrameGrabber grabber=new OpenCVFrameGrabber(0);
        try
        {
            grabber.start();
            IplImage img=grabber.grab();
            if(img!=null)
            {
                cvSaveImage("capture.jpg", img);
            }
        }
        catch(Exception ae)
        {
            ae.printStackTrace();

        }
    }
    public static void main(String[] args) {
        captureframe();
    }    
}
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-08-01 22:04:10

请参阅此链接以解决您收到的Link1错误

查看此链接,该程序可以从相机捕获图像,将其保存为JPG格式,并在画布Link2上显示。

希望它能解决你的问题。

票数 1
EN

Stack Overflow用户

发布于 2012-07-19 14:06:39

  • 确保已正确安装Microsoft Visual C++ Redistributable package和setup path变量。下面的链接解释了所有必要的步骤

http://code.google.com/p/javacv/wiki/Windows7AndOpenCV#I_cannot_capture_from_my_Webcam_using_opencv_highgui_or_OpenCVFr下面的链接中建议使用http://opencvlover.blogspot.in/2012/04/javacv-setup-with-eclipse-on-windows-7.html

  • Use VideoInputFrameGrabber而不是OpncvFrameGrabber
票数 2
EN

Stack Overflow用户

发布于 2013-12-04 17:01:32

请记住,openCV和javaCV的版本必须匹配。下载最新版本openCV 2..46 http://opencv.org/downloads.html

并下载javacp https://code.google.com/p/javacv/downloads/list注意:选择javacv-0.6-cppjars.zip 85.0MB

在这种情况下,你不会在线程"main“java.lang.UnsatisfiedLinkError中得到异常:

我的代码正在成功运行。

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

https://stackoverflow.com/questions/11539230

复制
相关文章

相似问题

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