-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
新手提问,想要把识别出的内容作下一步操作 #5
Comments
其实我已经将整个识别器封装成了 RulesRecognizer 类,可以这样创建它的实例: recognizer = RulesRecognizer(configs) 其中构造参数 configs 为 configs/config.yaml 中的配置字典,可以这样加载它: import yaml
with open('configs/config.yaml', 'r') as configs_file:
configs = yaml.safe_load(configs_file) 也可以直接硬编码到程序中: # 一个配置的例子
configs = {
'device': 'CPU',
'precision': 'fp32',
'detector': {
'conf-threshold': 0.25,
'iou-threshold': 0.45,
},
'filter': {
'weights': [0.05, 5, 2, 2],
'threshold': 40,
},
'strategy': 'conservative',
} 调用 recognizer 对象,传入 opencv 加载的待识别图像: import cv2
image = cv2.imread('your_image_path')
signals, directs = recognizer(image) 调用返回的结果包含两部分,其中第一个返回值 signals 为所有识别到的有效交通信号灯列表,它的每一个元素均为一个交通信号灯对象: for signal in signals:
signal.x # 左上角横坐标
signal.y # 左上角纵坐标
signal.w # 宽度
signal.h # 高度
signal.center_x # 中心点横坐标
signal.center_y # 中心点纵坐标
signal.color # 颜色
signal.shape # 箭头的形状 第二个返回值为三个方向上的通行规则对象: directs.left # 是否能够左转(bool类型,下同)
directs.right # 是否能够右转
directs.straight # 是否能够直行 对于你需要一个数组,可以这么做: results = [directs.left, directs.straight, directs.right] |
非常感谢!很明白的解释。作者万圣节快乐! |
classifier 执行的是分类任务,它需要的数据集格式和常规的图像分类数据集是一样的,就像下面这样: dataset-/
|
|-- train/
| |-- class1/
| | |-- xxx.png
| | |-- xxx.png
| | |-- ...
| |
| |-- class2/
| | |-- xxx.png
| | |-- xxx.png
| | |-- ...
| |
| |-- ...
|
|-- test/
| |-- class1/
| | |-- xxx.png
| | |-- xxx.png
| | |-- ...
| |
| |-- class2/
| | |-- xxx.png
| | |-- xxx.png
| | |-- ...
| |
| |-- ...
|
|-- val/
|-- class1/
| |-- xxx.png
| |-- xxx.png
| |-- ...
|
|-- class2/
| |-- xxx.png
| |-- xxx.png
| |-- ...
|
|-- ... 具体参见 Image Classification Datasets Overview - Ultralytics YOLO Docs ,另外我用来训练的数据集也放在了 Releases 中,可以参考它的格式。 |
训练的命令大概是这样的: yolo classify train data=path/to/your/dataset model=yolov8n-cls.pt epochs=100 imgsz=64 |
请问如果要直接返回一个数组比如[True,True,False]代表各个值该怎么改main函数呢
最近才开始接触yolo所以问题很简单:( 如果可以解答的话就太感谢了!
The text was updated successfully, but these errors were encountered: