Opencv I';我出错了。我想数数
我正在使用目标检测。我要同时数东西。但是我犯了一个错误。你能帮忙吗 错误:Opencv I';我出错了。我想数数,opencv,tensorflow,detection,counting,Opencv,Tensorflow,Detection,Counting,我正在使用目标检测。我要同时数东西。但是我犯了一个错误。你能帮忙吗 错误: Traceback (most recent call last): File "C:\tensorflow2\models\research\object_detection\Object_detection_image_say3.py", line 138, in <module> v2.putText(input_frame, counting_mode, (
Traceback (most recent call last):
File "C:\tensorflow2\models\research\object_detection\Object_detection_image_say3.py", line 138,
in
<module>
v2.putText(input_frame, counting_mode, (10, 35), font, 0.8,
(0,255,255),2,cv2.FONT_HERSHEY_SIMPLEX)
SystemError: <built-in function putText> returned NULL without setting an error
您的第二个cv2putText将计数模式作为输入 计数模式不是字符串,因此无法显示
在将计数模式对象注入cv2之前,将其转换为字符串(str)。putText第二个cv2putText将计数模式作为输入 计数模式不是字符串,因此无法显示
在将计数模式对象注入cv2之前,请将其转换为字符串(str)。putText返回一个NumPy数组,而不是字符串,它实际上需要作为第二个输入。您希望在该行中写入什么?一个函数正在运行。为每个框位置创建显示字符串(和颜色),将所有框分组将所有框拖动到图像上我执行这些操作。返回一个NumPy数组,而不是一个字符串,它实际上期望作为第二个输入。您希望在该行中写入什么?一个函数正在运行。为每个框位置创建显示字符串(和颜色),将所有框分组将所有框拖到图像上我执行这些操作。您好“如果(len(计数模式)==0):”还不够吗?您好,我执行。但结果是一样的。嗨“如果(len(计数模式)==0):”这还不够吗?嗨,我做了。但同样的结果。
input_frame = cv2.imread(PATH_TO_IMAGE)
image_expanded = np.expand_dims(input_frame, axis=0)
(boxes, scores, classes, num) = sess.run(
[detection_boxes, detection_scores, detection_classes, num_detections],
feed_dict={image_tensor: image_expanded})
font = cv2.FONT_HERSHEY_SIMPLEX
counting_mode = vis_util.visualize_boxes_and_labels_on_image_array(
input_frame,
np.squeeze(boxes),
np.squeeze(classes).astype(np.int32),
np.squeeze(scores),
category_index,
use_normalized_coordinates=True,
line_thickness=2,
min_score_thresh=0.80)
if(len(counting_mode) == 0):
cv2.putText(input_frame, "...", (10, 35), font, 0.8, (0,255,255),2,cv2.FONT_HERSHEY_SIMPLEX)
else:
cv2.putText(input_frame, counting_mode, (10, 35), font, 0.8,
(0,255,255),2,cv2.FONT_HERSHEY_SIMPLEX)
cv2.imshow('tensorflow_object counting_api',input_frame)
cv2.waitKey(0)