49 lines
1.6 KiB
Python
49 lines
1.6 KiB
Python
from enum import Enum
|
|
|
|
# 根据标签修改
|
|
class tlabel(Enum):
|
|
BBLOCK = 1 # 蓝色方块
|
|
RBLOCK = 2 # 红色方块
|
|
HOSPITAL = 3 # 医院
|
|
BBALL = 4 # 蓝球
|
|
YBALL = 5 # 黄球
|
|
TOWER = 6 # 通信塔
|
|
RBALL = 7 # 红球
|
|
BASKET = 8 # 球筐
|
|
MARKL = 9 # 指向标
|
|
MARKR = 10 # 指向标
|
|
SPILLAR = 11 # 小柱体 (红色)
|
|
MPILLAR = 12 # 中柱体 (蓝色)
|
|
LPILLAR = 13 # 大柱体 (红色)
|
|
SIGN = 14 # 文字标牌
|
|
TARGET = 15 # 目标靶
|
|
SHELTER = 16 # 停车区
|
|
BASE = 17 # 基地
|
|
|
|
class label_filter:
|
|
def __init__(self, list_src):
|
|
self.num = 0
|
|
self.pos = []
|
|
self.list = list_src # 获取目标检测输出的接口 (含标签,位置,置信度)
|
|
# TODO 添加置信度阈值
|
|
pass
|
|
def get(self, tlabel):
|
|
# TODO 循环查找匹配的标签值
|
|
# TODO 返回对应标签的个数,以及坐标列表
|
|
return self.num, self.pos
|
|
def find(self, tlabel):
|
|
# TODO 遍历返回的列表,有对应标签则返回 True
|
|
return False
|
|
def aim_left(self, tlabel):
|
|
# TODO 如果标签存在,则返回列表中位置最靠左的目标框和中心的偏移值
|
|
error = 0
|
|
return error
|
|
def aim_right(self, tlabel):
|
|
# TODO 如果标签存在,则返回列表中位置最靠右的目标框和中心的偏移值
|
|
error = 0
|
|
return error
|
|
def aim_near(self, tlabel):
|
|
# TODO 如果标签存在,则返回列表中位置最近的目标框和中心的偏移值
|
|
error = 0
|
|
return error
|
|
|