python實(shí)現(xiàn)從本地?cái)z像頭和網(wǎng)絡(luò)攝像頭截取圖片功能
python-----從本地?cái)z像頭和網(wǎng)絡(luò)攝像頭截取圖片 ,具體代碼如下所示:
import cv2
# 獲取本地?cái)z像頭
# folder_path 截取圖片的存儲(chǔ)目錄
def get_img_from_camera_local(folder_path):
cap = cv2.VideoCapture(0)
i = 1
while True:
ret, frame = cap.read()
cv2.imshow("capture", frame)
print str(i)
cv2.imwrite(folder_path + str(i) + '.jpg', frame) # 存儲(chǔ)為圖像
if cv2.waitKey(1) & 0xFF == ord('q'):
break
i += 1
cap.release()
cv2.destroyAllWindows()
# 獲取網(wǎng)絡(luò)攝像頭,格式:rtsp://username:pwd@ip/
# folder_path 截取圖片的存儲(chǔ)目錄
def get_img_from_camera_net(folder_path):
cap = cv2.VideoCapture('rtsp://username:pwd@ip/')
i = 1
while True:
ret, frame = cap.read()
cv2.imshow("capture", frame)
print str(i)
cv2.imwrite(folder_path + str(i) + '.jpg', frame) # 存儲(chǔ)為圖像
if cv2.waitKey(1) & 0xFF == ord('q'):
break
i += 1
cap.release()
cv2.destroyAllWindows()
# 測(cè)試
if __name__ == '__main__':
folder_path = 'D:\\img_from_camera\\'
get_img_from_camera_local(folder_path)
PS:下面看下用 python , opencv 打開(kāi)網(wǎng)絡(luò)攝像頭讀取圖像
打開(kāi)網(wǎng)絡(luò)攝像頭用如下代碼:
###########################################
import cv2
url = 'rtsp://admin:password@192.168.1.104:554/11'
cap = cv2.VideoCapture(url)
while(cap.isOpened()):
# Capture frame-by-frame
ret, frame = cap.read()
# Display the resulting frame
cv2.imshow('frame',frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
# When everything done, release the capture
cap.release()
cv2.destroyAllWindows()
############################################
注: 將從攝像頭獲取的圖像從bgr轉(zhuǎn)為rgb : image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
1、cap = cv2.VideoCapture(0)
VideoCapture()中參數(shù)是0,表示打開(kāi)筆記本的內(nèi)置攝像頭,參數(shù)是1,表示打開(kāi)usb攝像頭,
參數(shù)是視頻文件路徑則打開(kāi)視頻,如cap = cv2.VideoCapture("../test.avi")
2、ret,frame = cap.read()
cap.read()按幀讀取視頻,ret,frame是獲cap.read()方法的兩個(gè)返回值。其中ret是布爾值,如果讀取幀是正確的則返回True,如果文件讀取到結(jié)尾,它的返回值就為False。frame就是每一幀的圖像,是個(gè)三維矩陣。
3、cv2.waitKey(1),waitKey()方法本身表示等待鍵盤(pán)輸入,
參數(shù)是1,表示延時(shí)1ms切換到下一幀圖像,對(duì)于視頻而言;
參數(shù)為0,如cv2.waitKey(0)只顯示當(dāng)前幀圖像,相當(dāng)于視頻暫停,;
參數(shù)過(guò)大如cv2.waitKey(1000),會(huì)因?yàn)檠訒r(shí)過(guò)久而卡頓感覺(jué)到卡頓。
c得到的是鍵盤(pán)輸入的ASCII碼,esc鍵對(duì)應(yīng)的ASCII碼是27,即當(dāng)按esc鍵是if條件句成立
4、調(diào)用release()釋放攝像頭,調(diào)用destroyAllWindows()關(guān)閉所有圖像窗口。
總結(jié)
以上所述是小編給大家介紹的python實(shí)現(xiàn)從本地?cái)z像頭和網(wǎng)絡(luò)攝像頭截取圖片功能,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
- 用Python獲取攝像頭并實(shí)時(shí)控制人臉的實(shí)現(xiàn)示例
- OpenCV-Python 攝像頭實(shí)時(shí)檢測(cè)人臉代碼實(shí)例
- Python3利用Dlib實(shí)現(xiàn)攝像頭實(shí)時(shí)人臉檢測(cè)和平鋪顯示示例
- python版opencv攝像頭人臉實(shí)時(shí)檢測(cè)方法
- Python+OpenCV圖像處理——打印圖片屬性、設(shè)置存儲(chǔ)路徑、調(diào)用攝像頭
- 教你如何用python操作攝像頭以及對(duì)視頻流的處理
- python使用opencv在Windows下調(diào)用攝像頭實(shí)現(xiàn)解析
- 樹(shù)莓派4B+opencv4+python 打開(kāi)攝像頭的實(shí)現(xiàn)方法
- python opencv捕獲攝像頭并顯示內(nèi)容的實(shí)現(xiàn)
- python 實(shí)時(shí)調(diào)取攝像頭的示例代碼
相關(guān)文章
注意import和from import 的區(qū)別及說(shuō)明
這篇文章主要介紹了注意import和from import 的區(qū)別及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-09-09
python實(shí)現(xiàn)對(duì)象列表根據(jù)某個(gè)屬性排序的方法詳解
這篇文章主要介紹了python實(shí)現(xiàn)對(duì)象列表根據(jù)某個(gè)屬性排序的方法,結(jié)合具體實(shí)例形式詳細(xì)分析了Python對(duì)象列表遍歷、排序的兩種常見(jiàn)操作技巧,需要的朋友可以參考下2019-06-06
對(duì)Python中列表和數(shù)組的賦值,淺拷貝和深拷貝的實(shí)例講解
今天小編就為大家分享一篇對(duì)Python中列表和數(shù)組的賦值,淺拷貝和深拷貝的實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-06-06
Python利用openpyxl庫(kù)遍歷Sheet的實(shí)例
今天小編就為大家?guī)?lái)一篇Python利用openpyxl庫(kù)遍歷Sheet的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-05-05
python3:excel操作之讀取數(shù)據(jù)并返回字典 + 寫(xiě)入的案例
這篇文章主要介紹了python3:excel操作之讀取數(shù)據(jù)并返回字典 + 寫(xiě)入的案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-09-09
vscode 遠(yuǎn)程調(diào)試python的方法
本篇文章主要介紹了vscode 遠(yuǎn)程調(diào)試python的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-12-12
Python中matplotlib庫(kù)安裝失敗的經(jīng)驗(yàn)總結(jié)(附pycharm配置anaconda)
最近根據(jù)領(lǐng)導(dǎo)布置的學(xué)習(xí)任務(wù),開(kāi)始學(xué)習(xí)python中的matplotlib,朋友告訴我這個(gè)很簡(jiǎn)單,然而剛踏入安裝的門(mén)檻,就遇到了安裝不成功的問(wèn)題,下面這篇文章主要給大家介紹了關(guān)于Python中matplotlib庫(kù)安裝失敗的經(jīng)驗(yàn)總結(jié),需要的朋友可以參考下2022-08-08
Python通過(guò)poll實(shí)現(xiàn)異步IO的方法
這篇文章主要介紹了Python通過(guò)poll實(shí)現(xiàn)異步IO的方法,實(shí)例分析了poll方法實(shí)現(xiàn)異步IO的相關(guān)技巧,需要的朋友可以參考下2015-06-06

