Есть код, который сканирует QR-код:
import cv2
import numpy as np
import pyzbar.pyzbar as pyzbar
cap = cv2.VideoCapture(0)
while True:
_, frame = cap.read()
decodedObjects = pyzbar.decode(frame)
for obj in decodedObjects:
print("Data", obj.data)
cv2.imshow("Frame", frame)
key = cv2.waitKey(1)
if key == 27:
break
Всё работает. Необходимо сделать из этого кода функцию, которая будет возвращать первое полученное значение. При попытке изменить строку
print("Data", obj.data)
на
return obj.data
в печатается следующее:
[ WARN:0] global C:\projects\opencv-python\opencv\modules\videoio\src\cap_msmf.cpp (674) SourceReaderCB::~SourceReaderCB terminating async callback
При этом, программа продолжает работать (не вылетает), но никакой другой код после строки вызова получившейся функции не выполняется.
Что делать, чтобы это пофиксить // предложите альтернативу для того, чтобы сделать из этого функцию.
P.S. Директория C:\Projects\opencv-python\opencv\... на диске C:\ не обнаружена