林從早上檢測到新的面部,當計數的人數在實時網絡攝像頭忙到晚計數的人實時視頻
people_list = []
while True:
_, frame = video_capture.read()
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
faces = faceCascade.detectMultiScale(gray, 1.3, 5)
detections = faceCascade.detectMultiScale(gray, 1.15, 5)
for i in range(len(detections)):
face_i = detections[i]
x, y, w, h = face_i
cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 222, 0), 1)
font = cv2.FONT_HERSHEY_SIMPLEX
people_list.insert(len(people_list)+1,i)
cv2.putText(frame, "id: "+str (people_list[i]), (x, y), font, 2, (255, 255, 255), 2, cv2.LINE_AA)
# Display the resulting frame
cv2.imshow('Video', frame)
每次的PEOPLE_LIST計數增加。但是,每個鏡頭的people_list數量正在增加,而不是每個新的臉部。我怎樣才能解決這個問題?
用戶是否包含任何唯一標識符?如果是這樣,請創建一組唯一標識符而不是列表。編輯:也許值得檢查標識符是否已經在集合中,並跳過它,否則你的軟件將不斷插入數據到集合中,每次迭代 – AK47
不......他們沒有一個...我必須分配它基於從早上 –
訪問的人數那麼這聽起來像你需要重新評估你的用戶存儲方式。您如何知道特定用戶是否離開? – AK47