Skip to content
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

yolov8-seg的mask位置偏移该如何解决? #4

Open
fat-921 opened this issue Jan 13, 2024 · 7 comments
Open

yolov8-seg的mask位置偏移该如何解决? #4

fat-921 opened this issue Jan 13, 2024 · 7 comments

Comments

@fat-921
Copy link

fat-921 commented Jan 13, 2024

Hi,我在使用Yolo-seg C++推理时画出来的mask位置有偏移,并且mask没有在bbox框内,这该如何解决?
image

@Melody-Zhou
Copy link
Owner

似乎是 draw_mask 函数在映射 mask 时出现的位置偏差,但奇怪的是我这边官方的 model 测试下来没有问题,你模型的输入是 640x640 吗,我是按照 640x640 来计算仿射变换矩阵的

@fat-921
Copy link
Author

fat-921 commented Jan 13, 2024

似乎是 draw_mask 函数在映射 mask 时出现的位置偏差,但奇怪的是我这边官方的 model 测试下来没有问题,你模型的输入是 640x640 吗,我是按照 640x640 来计算仿射变换矩阵的

我的模型也是640x640,原图是2048x2400,得到的mask偏移,感觉还是draw_mask后处理出现了问题。
在官方的predict.py中有个retina_masks设置,画出的mask就没有偏移
image

@Melody-Zhou
Copy link
Owner

可能是 draw_mask 的实现存在问题,你有尝试过使用我提供的 Python 代码推理吗,是否存在同样的 mask 位置偏移问题呢

@fat-921
Copy link
Author

fat-921 commented Jan 13, 2024

可能是 draw_mask 的实现存在问题,你有尝试过使用我提供的 Python 代码推理吗,是否存在同样的 mask 位置偏移问题呢

您提供的 Python 代码推理官方的模型yolov8n-seg.pt是没有问题的,mask能正常绘制。由于我是将模型的通道数改成了单通道,使用灰度图推理,得到的结果都为空@_@,我再检查一下是哪里出了问题。。
image

@Melody-Zhou
Copy link
Owner

如果是单通道处理的话你可能需要修改下预处理 warpAffine 部分,因为 C++ 上预处理似乎是按照 3 通道处理的;此外看下灰度图单通道下后处理部分是否有任何差异,如果有变化也需要进行相应的修改

@fat-921
Copy link
Author

fat-921 commented Jan 17, 2024

请问有计划增加Yolov8-obb C++推理嘛?

@Melody-Zhou
Copy link
Owner

请问有计划增加Yolov8-obb C++推理嘛?

暂时没计划

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants