溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

怎么在python中使用opencv調(diào)用筆記本攝像頭

發(fā)布時間:2021-03-10 15:55:57 來源:億速云 閱讀:282 作者:Leah 欄目:開發(fā)技術(shù)

今天就跟大家聊聊有關(guān)怎么在python中使用opencv調(diào)用筆記本攝像頭,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

1.通過窗口展示圖片:

import cv2
 
"""
:param
 無
:return
 無
"""""
 
# 讀取圖片
img = cv2.imread("index.jpeg", 0)
 
img2=cv2.imread("feifei.jpeg",0)
# 顯示圖片,第一個參數(shù)是窗口名稱,第二個參數(shù)是圖片名字
cv2.imshow("image", img)
#設(shè)置圖片窗口延遲,參數(shù)為0,鍵盤無限期的等待鍵入。
cv2.waitKey(0)
#刪除所有新建的窗口
# cv2.destroyAllWinfdows()
#刪除指定的窗口
cv2.destroyWindow("image")

圖片展示如下:

怎么在python中使用opencv調(diào)用筆記本攝像頭

2.自定義圖片展示窗口,可以調(diào)整窗口的大小,針對圖片比較大的,可以適當(dāng)調(diào)整。

#自定義圖片打開窗口,大小可以調(diào)節(jié)
# 先自定義一個窗口,參數(shù)一是窗口名稱,參數(shù)2是可以調(diào)整窗口大小
cv2.namedWindow("image", cv2.WINDOW_NORMAL)
# 顯示圖片
cv2.imshow("image", img)
# 設(shè)置圖片窗口延遲
cv2.waitKey(0)
# 設(shè)置關(guān)閉所有的圖片窗口
cv2.destroyAllWindows()

3.保存圖片的功能

"""
:param
 無
:return
 無
功能:通過s鍵,保存圖片
"""""
# 讀取圖片
img = cv2.imread("index.jpeg", 0)
# 通過窗口顯示圖片
cv2.imshow("image", img)
# 設(shè)置圖片窗口顯示延遲
k = cv2.waitKey(0)
if k == 27:
 # 27是代表esc鍵
 cv2.destroyAllWindows()
elif k == ord("s"):
 # 保存圖片,新命名index2.jpg
 cv2.imwrite("index2.jpg", img)
 cv2.destroyAllWindows()

接下來是通過cv2中的VideoCapture()調(diào)用電腦的攝像功能。

具體實現(xiàn)代碼如下:

"""
:param
 無
:return
 無
功能:調(diào)用筆記本攝像頭獲取視頻圖片
"""""
import numpy as np
import cv2
#調(diào)用筆記本內(nèi)置攝像頭,所以參數(shù)為0,如果有其他的攝像頭可以調(diào)整參數(shù)為1,2
cap=cv2.VideoCapture(0)
while True:
 #從攝像頭讀取圖片
 sucess,img=cap.read()
 #轉(zhuǎn)為灰度圖片
 gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
 #顯示攝像頭,背景是灰度。
 cv2.imshow("img",gray)
 #保持畫面的持續(xù)。
 k=cv2.waitKey(1)
 if k == 27:
  #通過esc鍵退出攝像
  cv2.destroyAllWindows()
  break
 elif k==ord("s"):
  #通過s鍵保存圖片,并退出。
  cv2.imwrite("image2.jpg",img)
  cv2.destroyAllWindows()
  break
#關(guān)閉攝像頭
cap.release()

攝像頭展示如下:

怎么在python中使用opencv調(diào)用筆記本攝像頭

我們知道m(xù)atplotlib是一個跟強(qiáng)大的繪圖軟件,當(dāng)然在這里也可以用matplotlib將圖片展示在坐標(biāo)中。

"""
:param
 無
:return
 無
功能:使用matplotlib顯示圖片
"""""
import numpy as np
import cv2
from matplotlib import pyplot as plt
#讀取圖片
img=cv2.imread("feifei.jpeg",0)
#利用matplotlib顯示圖片
plt.imshow(img,cmap="gray",interpolation="bicubic")
#設(shè)置x,y坐標(biāo)軸
plt.xticks([]),plt.yticks([])
#將圖片在坐標(biāo)中展示
plt.show()

看完上述內(nèi)容,你們對怎么在python中使用opencv調(diào)用筆記本攝像頭有進(jìn)一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI