1. 程式人生 > 實用技巧 >使用python+opencv連線網路攝像頭畫人臉框

使用python+opencv連線網路攝像頭畫人臉框

# 獲取rtsp流在 frame中實時檢測
import cv2


faceCasCade = cv2.CascadeClassifier("Resources/haarcascade_frontalface_default.xml")
# 這個rtsp 流是網路控攝像頭進行連線的
cap = cv2.VideoCapture("rtsp://使用者名稱:密碼@相機ip/")
# 判斷抓拍資料流是否開啟
if cap.isOpened():
     open, frame = cap.read()
else:
     open = False
# 當開啟時open 為true
while open:
     
# 讀取開啟的資料流幀數 ret, frame = cap.read() # 將人臉轉換為灰色的影象 imgGray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) # 將獲取的到的灰色人臉進行1比1的切割 faces = faceCasCade.detectMultiScale(imgGray, 1.1, 4) # 設定長寬高進行人臉圖形的切割 for (x, y, w, h) in faces: cv2.rectangle(frame, (x, y), (x
+ w, y + h), (0, 255, 0), 2) # 繪製矩形人臉框 if frame is None: break # 顯示迴圈每一幀的影象進行放映 cv2.imshow("frame", frame) # 當話面正在進行時可以使用q 鍵進行退出 if cv2.waitKey(1) & 0xFF == ord('q'): break cv2.destroyAllWindows() cap.release()

需要進一步瞭解的可以去github進一步瞭解:

    https://github.com/murtazahassan/Learn-OpenCV-in-3-hours