安康市网站建设_网站建设公司_展示型网站_seo优化
2025/12/18 17:43:19 网站建设 项目流程

目录

目录

目录

一.环境

二.具体步骤

①列出当前windows电脑下的所有usb设备:

②绑定这个摄像头BUSID:

③链接这个摄像头BUSID到wsl2中:

④在wsl2中使用命令lsusb进行查看,会发现摄像头设备,如图所示:

⑤在wsl2中,查看是否拥有video设备:

⑥区分主摄像头:

⑦测试:


一.环境

win11+wsl2+ubuntu20.04

二.具体步骤

1.打开powershell,先将usb设备链接到wsl2中:

①列出当前windows电脑下的所有usb设备:

usbipd list

如图:

我的usb摄像头设备端口是1-7,正常新加的usb设备会出现Not shared,因为我之前在这个端口加载过,所以直接到③步骤就行;

②绑定这个摄像头BUSID:

sudo usbipd bind -b 1-7

这条命令运行完会出现步骤①的现象;

③链接这个摄像头BUSID到wsl2中:

usbipd attach --wsl --busid 1-7

再次usbipd list查看,会发现由Shared——>Attached,代表已经链接到了wsl2中,如图所示:

④在wsl2中使用命令lsusb进行查看,会发现摄像头设备,如图所示:

⑤在wsl2中,查看是否拥有video设备:

ls /dev/video*

如图(出现就直接跳到⑥):

未出现

①卸载linux摄像头内核驱动(此命令可不执行)

sudo rmmod uvcvideo

②加载摄像头驱动模块

sudo modprobe uvcvideo

注:加载完成之后,需要重启一下wsl2

③查看video所属组以及权限:

命令1(所属组):groups

如果没有video,则需要将video加入到自己的用户组:

usermod -aG video xxx

xxx为你自己的用户名,并使用;

命令2(权限):ls -l /dev/video*

⑥区分主摄像头:

v4l2-ctl -d /dev/video0 --list-formats-ext

会出现如图所示:

通常,支持高分辨率(如 1920x1080)和常见像素格式(如 MJPEG、YUYV)的是主摄像头。

⑦测试:

使用测试命令行

guvcview --device=/dev/video0 --audio=none

使用测试代码

import cv2 from ultralytics import YOLO cap = cv2.VideoCapture(0,cv2.CAP_V4L2) # /dev/video0 cap.set(3,480) cap.set(4,640) cap.set(cv2.CAP_PROP_FPS,30) #cap.set(cv2.CAP_PROP_FOURCC,cv2.VideoWriter.fourcc('Y','U','Y','V')) # 下面不行可以尝试这个 cap.set(cv2.CAP_PROP_FOURCC,cv2.VideoWriter.fourcc('M','J','P','G')) while(True): ret, frame = cap.read() if not ret: print("Failed to read the image.") break cv2.imshow('YOLO Detection', frame) key = cv2.waitKey(1) if key & 0xFF == ord('q'): break cap.release() cv2.destroyAllWindows()

测试完成会出现画面:

后续加载自己的模型,做一些视觉的检测等。

注:文中的一些命令工具,需自行下载。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询