Eu estou seguindo um tutorial para obter um leitor de qr trabalhar em python, mas eu estou executando o seguinte erro durante a execução:
Ocorreu uma excepção: erro OpenCV(4.5.4) :-1: erro: (-5:Bad argument) em função de "linha" Sobrecarga de falha de resolução:
- Não é possível analisar a 'pt1'. Sequência item com índice 0 tem um tipo errado
- Não é possível analisar a 'pt1'. Sequência item com índice 0 tem um tipo errado Arquivo "C:\Users\me\project\qrreader.py", linha 18, em cv2.linha(img, tuple(bbox[i][0]), tuple(bbox[(i+1) % len(bbox)][0]), cor=(255,
O script é o seguinte
import cv2
# set up camera object
cap = cv2.VideoCapture(0)
# QR code detection object
detector = cv2.QRCodeDetector()
while True:
# get the image
_, img = cap.read()
# get bounding box coords and data
data, bbox, _ = detector.detectAndDecode(img)
# if there is a bounding box, draw one, along with the data
if(bbox is not None):
for i in range(len(bbox)):
cv2.line(img, tuple(bbox[i][0]), tuple(bbox[(i+1) % len(bbox)][0]), color=(255,
0, 255), thickness=2)
cv2.putText(img, data, (int(bbox[0][0][0]), int(bbox[0][0][1]) - 10), cv2.FONT_HERSHEY_SIMPLEX,
0.5, (0, 255, 0), 2)
if data:
print("data found: ", data)
# display the image preview
cv2.imshow("code detector", img)
if(cv2.waitKey(1) == ord("q")):
break
# free camera object and exit
Este script é em todos os tutoriais que existem, aparentemente, mas parece ter rompeu com opencv 4.5.2 alterações tanto quanto eu posso dizer, mas eu não consigo corrigir.
Se não é uma tupla, o que faz a função de linha requer?