ageitgey / ageitgey/face_recognition

grey = cv2.cvtColor(frame1,cv2.COLOR_BGR2GRAY) cv2.error: OpenCV(4.1.2)

Open
#987 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
56.8k
Forks
13.7k
PR merge metrics
No merged PRs in 30d

Description

What happened Can you help?
thank you

Code

import cv2
import numpy as np
from time import sleep

largura_min=80 #Largura minima do retangulo
altura_min=80 #Altura minima do retangulo

offset=6 #Erro permitido entre pixel

pos_linha=550 #Posição da linha de contagem

delay= 60 #FPS do vídeo

detec = []
carros= 0

def pega_centro(x, y, w, h):
x1 = int(w / 2)
y1 = int(h / 2)
cx = x + x1
cy = y + y1
return cx,cy

cap = cv2.VideoCapture('11.mp4')
subtracao = cv2.bgsegm.createBackgroundSubtractorMOG()

while True:
ret , frame1 = cap.read()
tempo = float(1/delay)
sleep(tempo)
grey = cv2.cvtColor(frame1,cv2.COLOR_BGR2GRAY)
blur = cv2.GaussianBlur(grey,(3,3),5)
img_sub = subtracao.apply(blur)
dilat = cv2.dilate(img_sub,np.ones((5,5)))
kernel = cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (5, 5))
dilatada = cv2.morphologyEx (dilat, cv2. MORPH_CLOSE , kernel)
dilatada = cv2.morphologyEx (dilatada, cv2. MORPH_CLOSE , kernel)

img,contorno,h = cv2.findContours(dilatada,cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE)
cv2.line(frame1, (25, pos_linha), (1200, pos_linha), (255,127,0), 3) 
for(i,c) in enumerate(contorno):
    (x,y,w,h) = cv2.boundingRect(c)
    validar_contorno = (w >= largura_min) and (h >= altura_min)
    if not validar_contorno:
        continue

    cv2.rectangle(frame1,(x,y),(x+w,y+h),(0,255,0),2)        
    centro = pega_centro(x, y, w, h)
    detec.append(centro)
    cv2.circle(frame1, centro, 4, (0, 0,255), -1)

    for (x,y) in detec:
        if y<(pos_linha+offset) and y>(pos_linha-offset):
            carros+=1
            cv2.line(frame1, (25, pos_linha), (1200, pos_linha), (0,127,255), 3)  
            detec.remove((x,y))
            print("Carros detectados  o momento: "+str(carros))        
   
cv2.putText(frame1, "VEICULOS: "+str(carros), (450, 70), cv2.FONT_HERSHEY_SIMPLEX, 2, (0, 0, 255),5)
cv2.imshow("Video Original" , frame1)
cv2.imshow("Detectar",dilatada)

if cv2.waitKey(1) == 27:
    break

cv2.destroyAllWindows()
cap.release()

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No repository file, test, or project entry point is identified; start by reproducing the pasted Python snippet and inspecting the full OpenCV traceback around cv2.cvtColor(frame1, cv2.COLOR_BGR2GRAY). Done would require a clearly scoped, reproducible issue tied to this repository, with the expected behavior and a verified fix or explanation.

Written by the indexing model from the issue text.

Assessment

Tech stack
opencv, python
Domain
computer-vision
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
10/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.