BaofengZan/yolov7-mask-trt

export the yolov7_mask.pt error:

xinsuinizhuan opened this issue · 8 comments

python mask_demo.py:
Traceback (most recent call last):
File "xxx\mask_demo.py", line 158, in
masks, cls, conf, bboxs = yolov7.get_mask(
File "xxx\mask_demo.py", line 100, in get_mask
image = self.img_to_tensor(img_path)
File "xxx\mask_demo.py", line 51, in img_to_tensor
image = letterbox(image, 640, stride=64, auto=True)[0] #
File "xxx\utils\datasets.py", line 986, in letterbox
shape = img.shape[:2] # current shape [height, width]
AttributeError: 'NoneType' object has no attribute 'shape'

masks, cls, conf, bboxs = yolov7.get_mask(
这个图片路径设置成你本地的路径吧

masks, cls, conf, bboxs = yolov7.get_mask(

这个图片路径设置成你本地的路径吧
还有错误:
图片

WongKinYiu/yolov7#520
yolov7里面有解决方案

不过有些问题:
onnx导出后的输出层是:
图片
但是,我看代码里面解析 时候是:
图片
bbox_and_cls and mask_iou 怎么来的?
不一样

mask_iou源代码最后为None。 所以onnx里面没有这个head。 train_out是一个列表,里面有三个元素,是检测器的3个head,没有cat起来,所以onnx里面分为了3个,这个在后处理中实际没用到

这个各个层都是什么意思,可以帮忙解释一下吗?我正在进行onnxruntime解析:
我看一共用到了四个层,test attn bases和sem
第一个test是目标检测层,这个层我单独解析目标检测没问题,后面几个层,都是啥意思?
attn 尺寸是 1 17649 980
bases尺寸 1 4 112 160
seg尺寸 1 1 112 160
我看它一上来就是把bases和sem合并一起了,在non_max_suppression_mask_conf函数里面,这个解析逻辑可以大概讲一下吗?

yolov7-mask 基于blendMask(https://zhuanlan.zhihu.com/p/103256935), 可以先理解这个。我也是刚开始理解,还没法回答你的问题