Java + OpenCv 根据PID/VID调用指定摄像头

这篇具有很好参考价值的文章主要介绍了Java + OpenCv 根据PID/VID调用指定摄像头。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

问题

        主机接入了多个USB摄像头,传统的OpenCv是用摄像头插入usb的下标调取的,如过只接入一个摄像头那直接使用capture.open(0);这种方式调用没有任何问题,多个的话,就会出现问题,因为USB拔插时候对应摄像头对应的下标会发生变化。

解决思路

        使用硬件设备的唯一标识,就是PID和VID来确定USB摄像头的下标,这样不管下标怎么变,我们都是通过PID和VID调起的,就成功解决我们的问题。

话不多说,直接上步骤:

一、首先查看硬件设备的PID/VID编号

        我的电脑是win10这里只说明win10的步骤,其他系统自己百度怎么查看。

        点击此电脑-->管理-->设备管理器--->照相机--->点击USB摄像头属性--->详细信息---->硬件ID

就可以看到PID/VID编号了

        java 调用电脑摄像头,JAVA,OpenCv,USB摄像头,opencv,java

 java 调用电脑摄像头,JAVA,OpenCv,USB摄像头,opencv,java

java 调用电脑摄像头,JAVA,OpenCv,USB摄像头,opencv,java

 java 调用电脑摄像头,JAVA,OpenCv,USB摄像头,opencv,java

 二、添加动态库

        我也是看到大佬写的改了一下,大佬只写了python 和 C 的调用方法

        大佬博客:根据摄像头硬件标识VID&PID获取OpenCV打开照相机所需参数index索引下标_MylesYYY的博客-CSDN博客_c++ cameraindex 怎么获取

动态库地址:

CvCameraIndex: 根据摄像头硬件标识(如vid_1234&pid_4321)获取OpenCV打开摄像头时的参数下标index


这里我说明一下Java版本的

        需要下载jna.jar添加到项目的环境中

代码如下

import com.sun.jna.Library;
import com.sun.jna.Native;

public class OpenCv {

    public interface CallMTScaleLibrary extends Library {
        CallMTScaleLibrary INSTANCE = Native.load("C:\\Users\\admin\\Desktop\\cv-camera-index-master\\cv-camera-index-master\\lib\\CvCameraIndex_x64", CallMTScaleLibrary.class);
             //public int Transfer_Ethernet_EX(String filename, int key);
             public  int getCameraIndex(String hwid) ;        
        }
    public static void main(String[] args) {
        
        int n = CallMTScaleLibrary.INSTANCE.getCameraIndex("vid_0BC8&pid_5880");
        System.out.println("相机编号:"+n);
    }
}

这样我们就实现了Java 使用opencv调用指定的USB摄像头

感谢阅读,留个免费的小赞哦文章来源地址https://www.toymoban.com/news/detail-653383.html

到了这里,关于Java + OpenCv 根据PID/VID调用指定摄像头的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • opencv调用海康威视工业摄像头

    opencv调用海康威视工业摄像头需要用到官方接口VideoCapture() 接口:cv2.VideoCapture() 作用:获取本地目录下的视频文件或者使用本电脑的摄像头获取实时数据;  “0” ,调用的是本地电脑摄像头 “1” ,调用的是外接摄像头 打开MVS  正常设置使画面正常  然后找到宽度和长度

    2024年02月13日
    浏览(53)
  • python实现opencv调用摄像头

    Python的opencv库提供了一种简单而高效的方法来处理图像,包括从摄像头中读取视频流。在本篇技术博客中,我们将介绍如何使用Python的opencv库调用IP摄像头和本地摄像头的代码。 首先,我们需要安装Python的opencv库,可以使用pip install opencv-python命令进行安装。 在使用IP摄像头之

    2024年02月11日
    浏览(47)
  • 使用opencv调用外接摄像头

    当我们使用opencv调用摄像头的命令 cv2.VideoCapture(0),可能会出现下面这个错误。 [ERROR:0@0.433] global obsensor_uvc_stream_channel.cpp:156 cv::obsensor::getStreamChannelGroup Camera index out of range 表明在尝试获取摄像机流通道组时,使用的摄像机索引超出了有效范围。这通常意味着你尝试访问的摄

    2024年02月03日
    浏览(59)
  • 【计算机视觉 · OpenCV】使用 OpenCV 调用手机摄像头

    Droidcam 是一款可以将手机变成网络摄像头的工具,我们可以利用 Droidcam 让 OpenCV 拥有调用手机摄像头的能力。 2.1 安装 DroidCam 在手机和电脑上分别安装 DroidCam 的客户端和服务端 下载地址:https://pan.baidu.com/s/1DrBn3P1Bx-SXa4d6oziifA?pwd=gr1o 提取码:gr1o 2.2 测试连接状态 手机和电脑需

    2024年02月09日
    浏览(52)
  • 使用OpenCV调用摄像头和读取视频图片

    要捕获视频,你需要创建一个 VideoCapture 对象。它的参数是设备索引的名称。设备索引就是指定哪个摄像头的数字。正常情况下,内部摄像头可以通过传入0来调用,传递1来选择外置的第二个相机,以此类推。在此之后,你可以逐帧捕获。但是在最后,不要忘记释放俘虏。 直

    2024年02月08日
    浏览(53)
  • Python进阶,使用 opencv 调用摄像头进行拍照

             opencv 支持 Python 版本的模块叫作 opencv-p hon ,可直接使用 pip install opencv-python 令进行安装,但常常会因为网络等问题导致失败。推荐使用离线模式来安装 opencv 模块。 下载完安装包后,使用如下命令进行安装: D: pip install opencv

    2024年02月11日
    浏览(69)
  • Python+OpenCV 调用手机摄像头并实现人脸识别

    文章内容 : 1、windows 环境下安装 OpenCV 机器视觉环境搭建; 2、基于通过 Python+OpenCV 调用 手机摄像头 并实现人脸检测识别。 操作环境:Windows 10 64位 开发 IDE:Spyder 4.2.5 Python:3.8 OpenCV:OpenCv-Python 4.5.3 硬件需要:PC(win10)、手机 主要介绍使用 pip 安装 OpenCV(使用.whl文件安装

    2024年02月09日
    浏览(56)
  • python opencv 调用摄像头失败问题的解决 Windows

    省流: 内含 Python Opencv 双目相机拍照代码(手动 or 自动),可自取; 如果你的 cv2.VideoCapture() 函数卡住但不报错,打开 Windows “相机”应用可以正常看到摄像头画面,且能够正常用 cv2.imshow() 打开图像,请继续阅读。 这个学期选修了方璐老师的媒体与认知课程,期末的 Fin

    2024年02月05日
    浏览(49)
  • opencv在linux上调用usb摄像头进行拍照

    一般video1就是usb摄像头

    2024年02月06日
    浏览(50)
  • Jetson Orin Nano 使用OpenCV调用USB摄像头

    Jetson Orin Nano 8G ubuntu 20.04 检查usb摄像头是否被识别到 或者 Jetson Orin Nano 使用OpenCV调用USB摄像头

    2024年01月21日
    浏览(70)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包