分类模型训练pil、torchvision.transforms和opencv的resize

参考:https://blog.csdn.net/weixin_41012399/article/details/126049885

https://www.cnpython.com/qa/1291644

https://blog.csdn.net/weixin_44966641/article/details/125084573

https://blog.csdn.net/IEEE_FELLOW/article/details/115536987

训练时用pil读取图片,使用torchvision.transforms.Resize 进行数据处理。因为transforms.Resize当输入为PIL图像时,默认使用的PIL的resize进行处理,除了默认的双线性插值,还会进行antialiasing。

PyTorch 中的 torchvision.transforms.Resize 就是采用的 PIL 的 resize。

部署的时候使用opcv的resize处理,发现不一致,最好在训练的时候统一用opencv处理图片。

transforms.Resize 和 PIL 的 resize 的插值方式有区别吗?

A:是的,transforms.Resize 和 PIL 的 resize 的默认插值方式是不同的。

在 transforms.Resize 中,默认使用的是 PIL.Image.BILINEAR,即双线性插值。而在 PIL 的 resize 中,默认使用的是 PIL.Image.BICUBIC,即三次样条插值。

当然,transforms.Resize 也可以指定其他的插值方式,如 PIL.Image.NEAREST(最近邻插值)、PIL.Image.BICUBIC 等。同样地,也可以在 PIL 的 resize 中指定其他的插值方式。

相关推荐
xiaohouzi1122333 天前
OpenCV的cv2.VideoCapture如何加GStreamer后端
人工智能·opencv·计算机视觉
荼蘼3 天前
答题卡识别改分项目
人工智能·opencv·计算机视觉
张子夜 iiii3 天前
4步OpenCV-----扫秒身份证号
人工智能·python·opencv·计算机视觉
潮汐退涨月冷风霜3 天前
数字图像处理(1)OpenCV C++ & Opencv Python显示图像和视频
c++·python·opencv
paid槮3 天前
机器视觉之图像处理篇
图像处理·opencv·计算机视觉
qingyunliushuiyu3 天前
BI数据可视化:驱动数据价值释放的关键引擎
数据挖掘·数据分析·数据分析系统·数据分析平台·bi数据可视化
小王爱学人工智能3 天前
OpenCV一些进阶操作
人工智能·opencv·计算机视觉
山烛3 天前
OpenCV:图像透视变换
人工智能·opencv·计算机视觉·图像透视变换
HenrySmale4 天前
05 回归问题和分类问题
分类·数据挖掘·回归
✎﹏赤子·墨筱晗♪4 天前
深入浅出LVS负载均衡群集:原理、分类与NAT模式实战部署
分类·负载均衡·lvs