识别出的图片有bug会多出来边框. 解决方法是
修改D:\Anaconda3\Lib\site-packages\paddlex\cv\models\deeplabv3p.py 的第492行,
将
pred = cv2.resize(pred, (w, h), cv2.INTER_NEAREST)
这一行的代码替换成下面的代码即可
image = Image.fromarray(pred)
image = image.resize((w, h),resample=Image.NEAREST)
pred = np.array(image)
别忘记引入
from PIL import Image, ImageDraw, ImageFont
resize之前的图片

下面是resize之后的图片

用ps就可以看出来,多了一层边框. 貌似还去不掉.
解决方法是用PIL的resize替代opencv的resize
pred = cv2.resize(pred, (w, h))
改成下面的即可
image = Image.fromarray(pred)
image = image.resize((w, h),resample=Image.NEAREST) # resample=Image.NEAREST 参数一定要
# image.save('PIL_resize_pred.png')
pred = np.array(image)

博客介绍了在使用PaddlePaddle的U-Net模型时,由于OpenCV的cv2.resize操作导致识别图片出现多余的边框。为了解决这个问题,建议将DeepLabV3P.py文件中的相关代码替换为PIL的resize方法,从而避免多余的边框问题。
1106

被折叠的 条评论
为什么被折叠?



