Detecção ao entrar no ROI

Home Fóruns Fórum Rastreamento de Objetos com Python e OpenCV Detecção ao entrar no ROI

Visualizando 5 posts - 1 até 5 (de 5 do total)
  • Autor
    Posts
  • #19172

    Em um projeto de um veiculo sobre trilhos, o qual eu quero identificar quando um pedestre passa na frente dos trilhos, eu consigo criar um ROI fixo de uma determinada área (visto que esta sobre trilhos eu poderia manter fixo) e se alguem entrar nessa área eu ter uma ação? Fiquei com dúvida se é possivel pré definir o ROI sem ter que abrir o video e selecionar com o mouse

    #19181
    Dalton Vargas
    Instrutor

    Olá Guilherme!

    Sim, você pode deixar o ROI estático, apenas inicializando a variável bbox nas posições de x, y, l, a da área de interesse na imagem que você definiu.

    Segue exemplo:

    bbox = (287, 23, 86, 320)

    Espero ter ajudado, fico a disposição!

    #19225

    Olá,

    Selecionando essa região de interesse é possivel tomar alguma ação caso algum objeto entre nela? Ou a região de interesse seria mais para especificar o que deve ser rastreado?

    #19226
    Dalton Vargas
    Instrutor

    Sim, na verdade é possível fazer as duas coisas que você mencionou.

    • A resposta anterior é sobre inicializar o rastreamento passando uma posição pré-definida, sem precisar selecionar com o mouse, conforme você havia questionado;
    • Sobre especificar a ROI para “executar alguma ação caso algum objeto entre nela”, por exemplo, usar a detecção de uma pessoa somente em determinada área do vídeo, funciona assim:
      • Dentro da estrutura de repetição while, após inicializar a captura do vídeo (ret, frame = cap.read()), você pode definir a ROI assim:
        • roi = frame[100:300, 400:600]
      • Também pode desenhar um retângulo para marcar as posições da ROI:
        • cv2.rectangle(frame, (400, 100), (600, 300), (158, 158, 158), 1)
      • Ai é só passar a variável roi como parâmetro para o detector de objetos, segue exemplo:
        • deteccao = fullbody_cascade.detectMultiScale(roi, 1.08, 1, minSize=(80,80))
    • Esta resposta foi modificada 2 meses, 3 semanas atrás por Dalton Vargas.
    #19248

    Excelente, muito obrigado! Vou tentar!

Visualizando 5 posts - 1 até 5 (de 5 do total)
  • Você deve fazer login para responder a este tópico.