0

这是我第一次使用网络摄像机(D-LINK DCS-5605),我的最终任务是检测物体并跟随它们(控制网络摄像机)......

我已经编写了 java 代码,以我希望使用 openCV 的方式检测对象...

现在我需要使用opencv从java中使用ip camera。

问题 1) 如何通过 OpenCV 检测网络摄像机?

问题2)如何通过java控制它?

任何事情都会对我有用,您的帮助将不胜感激:) 问候。

4

2 回答 2

1

我猜您不再关注这个问题,但如果您或其他任何人偶然发现它,您可以使用 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 发送命令应该可以工作。

于 2011-12-19T15:59:03.423 回答
1

亲爱的朋友们,因为我在这里没有看到任何回复,所以这是我在研究中发现的......

如果你使用 C,有一种方法可以做到这一点,有一种特殊的方法,但不幸的是在 java 接口中它是不可访问的......

所以我想如果我真的决定用java来实现这个,那么我需要修改OpenCV.java并导出新修改的jar ...

希望这对某人有用...

于 2011-05-26T15:33:51.407 回答