亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python利用opencv調(diào)用攝像頭實現(xiàn)目標檢測

 更新時間:2022年05月09日 10:21:43   作者:Bubbliiiing  
這篇文章主要為大家介紹了python利用opencv調(diào)用攝像頭實現(xiàn)目標檢測的示例代碼,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

使用到的庫

好多人都想了解一下如何對攝像頭進行調(diào)用,然后進行目標檢測,于是我做了這個小BLOG。

opencv-python==4.1.2.30

Pillow==6.2.1

numpy==1.17.4

這些都是通用的庫,版本不同問題應(yīng)該也不大。

實現(xiàn)思路

利用opencv調(diào)用攝像頭,讀取每一幀傳入目標檢測網(wǎng)絡(luò)檢測,將檢測結(jié)果呈現(xiàn)。

由于本文所用的檢測格式為RGB格式,CV2讀取的時候會使用BGR格式,因此在檢測的時候要利用cv2.cvtColor進行轉(zhuǎn)換。

實現(xiàn)代碼

以Retinanet為例:

from keras.layers import Input
from retinanet import Retinanet
from PIL import Image
import numpy as np
import cv2
retinanet = Retinanet()
# 調(diào)用攝像頭
capture=cv2.VideoCapture(0) 
while(True):
    # 讀取某一幀
    ref,frame=capture.read()
    # 格式轉(zhuǎn)變,BGRtoRGB
    frame = cv2.cvtColor(frame,cv2.COLOR_BGR2RGB)
    # 轉(zhuǎn)變成Image
    frame = Image.fromarray(np.uint8(frame))
    # 進行檢測
    frame = np.array(retinanet.detect_image(frame))
    # RGBtoBGR滿足opencv顯示格式
    frame = cv2.cvtColor(frame,cv2.COLOR_RGB2BGR)
    cv2.imshow("video",frame)
    c= cv2.waitKey(30) & 0xff 
    if c==27:
        capture.release()
        break
retinanet.close_session()

2020/4/26更新:FPS計算

很多小伙伴說到想要獲取FPS,于是給所有的目標檢測網(wǎng)絡(luò)加上了FPS的功能,需要的小伙伴請重新下載。

FPS記錄的原理

FPS簡單來理解就是圖像的刷新頻率,也就是每秒多少幀。

假設(shè)目標檢測網(wǎng)絡(luò)處理1幀要0.02s。

此時FPS就是50。

FPS實現(xiàn)代碼

該代碼以ssd為例。

#-------------------------------------#
#       調(diào)用攝像頭檢測
#-------------------------------------#
from ssd import SSD
from PIL import Image
import numpy as np
import cv2
import time
ssd = SSD()
# 調(diào)用攝像頭
capture=cv2.VideoCapture(0) # capture=cv2.VideoCapture("1.mp4")
fps = 0.0
while(True):
    t1 = time.time()
    # 讀取某一幀
    ref,frame=capture.read()
    # 格式轉(zhuǎn)變,BGRtoRGB
    frame = cv2.cvtColor(frame,cv2.COLOR_BGR2RGB)
    # 轉(zhuǎn)變成Image
    frame = Image.fromarray(np.uint8(frame))
    # 進行檢測
    frame = np.array(ssd.detect_image(frame))
    # RGBtoBGR滿足opencv顯示格式
    frame = cv2.cvtColor(frame,cv2.COLOR_RGB2BGR)
    fps  = ( fps + (1./(time.time()-t1)) ) / 2
    print("fps= %.2f"%(fps))
    frame = cv2.putText(frame, "fps= %.2f"%(fps), (0, 40), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 255, 0), 2)
    cv2.imshow("video",frame)
    c= cv2.waitKey(30) & 0xff 
    if c==27:
        capture.release()
        break

以上就是python利用opencv調(diào)用攝像頭實現(xiàn)目標檢測的詳細內(nèi)容,更多關(guān)于python opencv調(diào)用攝像頭目標檢測的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Python面向?qū)ο缶幊讨^承與多態(tài)詳解

    Python面向?qū)ο缶幊讨^承與多態(tài)詳解

    這篇文章主要介紹了Python面向?qū)ο缶幊讨^承與多態(tài),結(jié)合實例形式詳細分析了Python面向?qū)ο缶幊讨欣^承與多態(tài)的概念、使用方法及相關(guān)注意事項,需要的朋友可以參考下
    2018-01-01
  • python,Java,JavaScript實現(xiàn)indexOf

    python,Java,JavaScript實現(xiàn)indexOf

    這篇文章主要介紹了python,Java,JavaScript如何實現(xiàn)indexOf,幫助大家更好的理解indexOf,感興趣的朋友可以了解下
    2020-09-09
  • Python實現(xiàn)為PDF去除水印的示例代碼

    Python實現(xiàn)為PDF去除水印的示例代碼

    這篇文章主要介紹了如何利用Python實現(xiàn)PDF去除水印功能,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-04-04
  • PyTorch搭建一維線性回歸模型(二)

    PyTorch搭建一維線性回歸模型(二)

    這篇文章主要為大家詳細介紹了PyTorch搭建一維線性回歸模型,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-05-05
  • 深入探討opencv圖像矯正算法實戰(zhàn)

    深入探討opencv圖像矯正算法實戰(zhàn)

    在機器視覺中,對于圖像的處理有時候因為放置的原因?qū)е翿OI區(qū)域傾斜,這個時候我們會想辦法把它糾正為正確的角度視角來,本文主要介紹了opencv圖像矯正算法,感興趣的可以了解一下
    2021-05-05
  • Python生成短uuid的方法實例詳解

    Python生成短uuid的方法實例詳解

    python的uuid都是32位的,比較長,處理起來效率比較低。這篇文章主要介紹了Python生成短uuid的方法,需要的朋友可以參考下
    2018-05-05
  • Python中的json對象與string相互轉(zhuǎn)換教程

    Python中的json對象與string相互轉(zhuǎn)換教程

    python里有json這個庫,但并沒有json這個類,所以所謂的json對象本質(zhì)上就是一個dict;而json這個庫,用于實現(xiàn)dict到string、string到dict的互轉(zhuǎn),這篇文章主要介紹了Python中的json對象與string相互轉(zhuǎn)換教程,需要的朋友可以參考下
    2022-11-11
  • python日記(使用TCP實現(xiàn)的對話客戶端和服務(wù)器)

    python日記(使用TCP實現(xiàn)的對話客戶端和服務(wù)器)

    這篇文章主要為大家介紹了python使用TCP實現(xiàn)的對話客戶端和服務(wù)器實現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-03-03
  • python中使用numpy包的向量矩陣相乘np.dot和np.matmul實現(xiàn)

    python中使用numpy包的向量矩陣相乘np.dot和np.matmul實現(xiàn)

    本文主要介紹了python中使用numpy包的向量矩陣相乘np.dot和np.matmul實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-02-02
  • Python 實現(xiàn)毫秒級淘寶搶購腳本的示例代碼

    Python 實現(xiàn)毫秒級淘寶搶購腳本的示例代碼

    本篇文章主要介紹了Python 通過selenium實現(xiàn)毫秒級自動搶購的示例代碼,通過掃碼登錄即可自動完成一系列操作,搶購時間精確至毫秒,可搶加購物車等待時間結(jié)算的,感興趣的小伙伴們可以參考一下
    2019-09-09

最新評論