日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

Python-OpenCV学习 -- 台式机外接USB摄像头的视频读取

發(fā)布時(shí)間:2025/3/13 python 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python-OpenCV学习 -- 台式机外接USB摄像头的视频读取 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、網(wǎng)上很多筆記本帶有內(nèi)置攝像頭的 代碼讀取案例。例如:讀取內(nèi)置攝像頭的Python- OpenCV代碼

import cv2
#引入庫
cap = cv2.VideoCapture(0)
while True:
? ? ret, frame = cap.read()
? ? cv2.imshow("Video", frame)
#讀取內(nèi)容
? ? if cv2.waitKey(10) == ord("q"):
? ? ? ? break
? ? ? ??
#隨時(shí)準(zhǔn)備按q退出
cap.release()
cv2.destroyAllWindows()
#停止調(diào)用,關(guān)閉窗口

?

二、如果是外接USB的話,

cap = cv2.VideoCapture(0)

改成

cap = cv2.VideoCapture(1)

,如果有多個(gè)攝像頭,考慮將 1 改成 2 或3等。

?

三、臺式機(jī)一般沒有攝像頭,需要外接USB攝像頭,需要注意,cap = cv2.VideoCapture(0) 里面的參數(shù)不是1,不是1, 是0,否則報(bào)錯(cuò)

測試代碼:

import cv2# 調(diào)用usb攝像頭 cap = cv2.VideoCapture(0) cap.set(cv2.CAP_PROP_FRAME_WIDTH, 480) cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 640)cap.set(cv2.CAP_PROP_FOURCC, cv2.VideoWriter.fourcc("M", "J", "P", "G")) # 顯示 while True:ret, frame = cap.read()cv2.imshow("Video Display", frame)cv2.imshow("Video Display2", frame)cv2.imshow("Video Display3", frame)cv2.imshow("Video Display4", frame)cv2.imshow("Video Display5", frame)cv2.imshow("Video Display6", frame)if cv2.waitKey(1) & 0xFF == ord("q"):break# 關(guān)閉 cap.release() cv2.destroyAllWindows()

如果測試時(shí),報(bào)錯(cuò),可能是攝像頭分辨率參數(shù)不對,以上的480寬度,640高度是從攝像頭的參數(shù)上看到的。 如果攝像頭上沒有標(biāo)出參數(shù),可以通過以下代碼獲取:

import cv2videoCaputer = cv2.VideoCapture(0)size = (int(videoCaputer.get(cv2.CAP_PROP_FRAME_HEIGHT)), int(videoCaputer.get(cv2.CAP_PROP_FRAME_WIDTH))) print(size) #錯(cuò)誤結(jié)果(480,640)# 只要set下,貌似size就發(fā)生了變化 videoCaputer.set(cv2.CAP_PROP_FRAME_WIDTH,5000) videoCaputer.set(cv2.CAP_PROP_FRAME_HEIGHT,5000)size = (int(videoCaputer.get(cv2.CAP_PROP_FRAME_HEIGHT)), int(videoCaputer.get(cv2.CAP_PROP_FRAME_WIDTH))) _,frame = videoCaputer.read() print(size) # 正確結(jié)果(1024,1280) print(frame.shape)# 正確結(jié)果(1024,1280, 3)

參考鏈接:?https://www.jianshu.com/p/3b42df1850b2

但有時(shí)測試時(shí),這段代碼也能用。也能讀取臺式機(jī)外接USB攝像頭的圖像。

import cv2
#引入庫
cap = cv2.VideoCapture(0)
while True:
? ? ret, frame = cap.read()
? ? cv2.imshow("Video", frame)
#讀取內(nèi)容
? ? if cv2.waitKey(10) == ord("q"):
? ? ? ? break
? ? ? ??
#隨時(shí)準(zhǔn)備按q退出
cap.release()
cv2.destroyAllWindows()
#停止調(diào)用,關(guān)閉窗口

?

四、參考鏈接:

Python+Opencv 調(diào)用USB攝像頭(一)https://blog.csdn.net/Programmer_ch/article/details/89057129

Python+Opencv 調(diào)用USB攝像頭(二)?https://blog.csdn.net/Programmer_ch/article/details/89429677

總結(jié)

以上是生活随笔為你收集整理的Python-OpenCV学习 -- 台式机外接USB摄像头的视频读取的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。