object-detection - 用于训练/验证的图像分辨率是否会影响 Yolov3 从短距离和长距离检测物体的能力
问题描述
假设我希望能够从短距离和远距离检测汽车模型。这是否意味着我必须准备包含具有多个分辨率的相同汽车图像的训练和验证数据集?
任何见解将不胜感激。
问候,
塞努格
解决方案
我认为您的问题与YOLO WIKI页面中提到的以下问题相匹配:
1. I get low accuracy:
....
....
4. Your training dataset doesn't suitable for your Test dataset:
- Training dataset contains: cars (rear view) from distance 100m
- Test dataset contains: cars (side view) from distance 5m
如果您查看如何改进对象检测部分,您可以找到有关如何根据检测目标准备训练的一般规则:Dataset
一般规则 - 您的训练数据集应包含您想要检测的一组相对大小的对象:
train_network_width * train_obj_width / train_image_width ~= detection_network_width * detection_obj_width / detection_image_width
train_network_height * train_obj_height / train_image_height ~= detection_network_height * detection_obj_height / detection_image_height
即对于来自测试数据集的每个对象,在训练数据集中必须至少有一个对象具有相同的 class_id 和大约相同的相对大小:
object width in percent from Training dataset ~= object width in percent from Test dataset
也就是说,如果训练集中只存在占据图像 80-90% 的对象,那么经过训练的网络将无法检测到占据图像 1-10% 的对象。
您的查询:
这是否意味着我必须准备包含具有多个分辨率的相同汽车图像的训练和验证数据集?
答:不,这并不一定意味着您需要具有不同分辨率的相同汽车图像。相反,您可以说您需要具有相似分辨率的汽车训练图像,以了解您想要使用训练模型检测的汽车尺寸(分辨率)。
推荐阅读
- python - 在 Windows 下将 Python 嵌入到 C 中
- c++ - 将 lambda 作为参数传递时,gcc 无法扩展宏?- gcc 错误
- c# - WebDriver.SwitchTo().Window() 和 WebDriver.SwitchTo().Frame() 有什么区别
- .htaccess - 强制站点范围的 HTTPS,但在特定目录中强制 HTTP
- python - Python3:os.path.isdir(path) 对文件为 True
- javascript - Unable to create ListItems with 'Objects' using Microsoft Graph Api
- python - RNA拼接Python(未给出输出)
- php - Php Null 合并运算符
- java - 如何禁用嵌套 JPanel 的子组件但保持面板本身可用
- c++ - 定义子类 (c++)