如何将 PyTorch 数据加载器转换为 sv. 检测对象
作者: shanalikhan创建于 2024年11月24日更新于 2026年8月6日
标签question
问前搜索
- 我搜索了监督问题,没有发现类似的功能请求。
问题
我拥有Dataloader对象,并且能够用"从 transformer"将预测的模型输出转换为检测对象. 由于我想生成MAP和混淆矩阵,我需要将实际对象也转换为检测对象.
怎么样?
[Python] 用于 idx, 拼接( tqdm( TEST DATALOADER) ) :
像素 值=批["像素 值"].to(DEVICE) 像素 mask = 批量 ["像素 mask"].to(DEVICE) #印 (批 ["标签"]) 标签 = [{k: v.to (DEVICE) for k, v in t. items ()} 对于 t 在批量 ["标签"] ]
打印( 标签)
使用火炬.no grad(): 输出=模型(像素 值=像素 值,像素 mask=pixel mask) #输出=模型(**批)
orig target sizes = 火炬.stack(用于标签中的目标["orig size"],dim=0)
打印(输出)
结果=图像 处理器. post process object 检测(输出,目标 大小=orig object sizes,阈值=0.5) 打印 ("LABELS") 打印( 标签 [0]. keys ())
打印(标签[0]['类 标签']) 打印(“RESULTS”) 打印( 结果 [0]. keys ()) 打印(结果[0]['标签']) 成果: 检测=sv. 检测. from transfers(结果)#. with nms(阈值=IOU TRESHOLD) #sv. 检测。 附录(说明) 预测. 附录(检测) 换行
增加额
无回复( N)内容来源: roboflow/supervision