这是我第一次使用网络摄像机(D-LINK DCS-5605),我的最终任务是检测物体并跟随它们(控制网络摄像机)......
我已经编写了 java 代码,以我希望使用 openCV 的方式检测对象...
现在我需要使用opencv从java中使用ip camera。
问题 1) 如何通过 OpenCV 检测网络摄像机?
问题2)如何通过java控制它?
任何事情都会对我有用,您的帮助将不胜感激:) 问候。
我猜您不再关注这个问题,但如果您或其他任何人偶然发现它,您可以使用 JNI(Java 本地接口)将 OpenCV(C/C++ 版本)和 Java 连接在一起。这将允许您通过 Java 连接到相机并将图像传回 OpenCV,或者通过 OpenCV 连接并将它们转发给 Java,具体取决于您的偏好。
我仍在努力寻找通过 Java 连接到 IP 摄像头的最佳方法,但 Xuggler 库运行良好并且学习曲线很小。但是要通过 OpenCV 进行连接,您可以将相机源的地址输入到 CreateFileCapture 方法中,如下所示:
CvCapture *camera = cvCreateFileCapture("rtsp://username:password@your.IP.address.here:554/ch1-s1");
这对我有用。您传递的实际字符串将取决于相机。
至于通过 Java 控制摄像机,假设您正在谈论 PTZ 摄像机,那么通过 http 发送命令应该可以工作。
亲爱的朋友们,因为我在这里没有看到任何回复,所以这是我在研究中发现的......
如果你使用 C,有一种方法可以做到这一点,有一种特殊的方法,但不幸的是在 java 接口中它是不可访问的......
所以我想如果我真的决定用java来实现这个,那么我需要修改OpenCV.java并导出新修改的jar ...
希望这对某人有用...