-
Notifications
You must be signed in to change notification settings - Fork 427
Prometheus目标检测 配置目标的实际长宽
Ren Jin edited this page Mar 31, 2022
·
1 revision
如果想输出目标位置,需要在类别描述文件中填写目标的高度与宽度(单位:m
),具体位置如下:
<path-to-Prometheus>/Modules/object_detection/py_nodes/yolov5_tensorrt_client/class_desc/coco.txt
如下图所示:
如上图,以人(person)为例,设置宽度
0.5m
,高度1.8m
然后,需要修改源代码,这里以高度估计人距离摄像机的距离,并以此估计目标位置,所在源码位置如下:
<path-to-Prometheus>/Modules/object_detection/py_nodes/yolov5_tensorrt_client/yolov5_tensorrt_client.py
# 112-114行
如下图所示:
cls==0
用来判断是否为类别person
,cls_hs[cls]
用来读取目标高度(读到的数就是我们写在coco.txt
里的1.8m
),camera_matrix[1][1]
为垂直方向像素焦距(由相机标定参数文件决定),h
物体的像素高度(为实时检测结果,并被归一化到[0,1]
)
感谢使用Prometheus自主无人机软件平台!