#java #opencv #ip-camera
#java #opencv #ip-камера
Вопрос:
я впервые работаю с ip-камерой (D-LINK DCS-5605), моя конечная задача — обнаруживать объекты и СЛЕДОВАТЬ за НИМИ (управлять IP-камерой)…
Я уже написал Java-код, который обнаруживает объекты способом, который я хочу использовать в OpenCV…
Теперь мне нужно работать с ip-камерой из java, используя opencv.
Вопрос 1) Как определить ip-камеру через OpenCV?
Вопрос 2) Как управлять ею через java?
Мне будет полезно все, что угодно, ваша помощь будет оценена по достоинству 🙂 С уважением.
Ответ №1:
Дорогие друзья, поскольку я не вижу здесь ответов, вот то, что я нашел в ходе своего исследования…
Есть способ сделать это, если вы используете C, для этого есть специальный метод, но, к сожалению, в интерфейсе Java он недоступен…
Итак, я думаю, что если я действительно решу достичь этого с помощью java, то мне нужно будет изменить OpenCV.java и экспортируйте новую измененную jar…
надеюсь, это будет кому-то полезно…
Ответ №2:
Я предполагаю, что вы больше не отслеживаете этот вопрос, но на случай, если вы или кто-либо другой наткнется на него, вы можете использовать JNI (собственный интерфейс Java) для соединения OpenCV (версии C / C ) и Java вместе. Это позволит вам либо подключиться к вашей камере через Java и передать изображения обратно в OpenCV, либо подключиться через OpenCV и передать их на Java, в зависимости от ваших предпочтений.
Я все еще работаю над поиском наилучшего способа подключения к IP-камере через Java, но библиотека Xuggler работает довольно хорошо и имеет небольшую кривую обучения. Но для подключения через OpenCV вы можете просто ввести адрес источника камеры в метод CreateFileCapture, примерно так:
CvCapture *camera = cvCreateFileCapture("rtsp://username:password@your.IP.address.here:554/ch1-s1");
Который работает для меня. Фактическая строка, которую вы передаете, будет зависеть от камеры.
Что касается управления камерой через Java, предполагая, что вы говорите о PTZ-камере, то отправка команд через http должна работать.