分类模型训练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 中指定其他的插值方式。

相关推荐
JAVA_AI人工智能项目实战5 小时前
轻量级模型训练_RNN文本分类流水线实验代码
人工智能·rnn·分类
Leo.yuan14 小时前
2026年可信AI数据分析平台研究:主流厂商的可信机制、能力边界与企业选型
人工智能·数据挖掘·数据分析
AI的探索之旅14 小时前
97 个 OpenCV 实例(三十七):二维码识别,一张图四个码的陷阱
c++·opencv·计算机视觉
程序员清风14 小时前
让 AI 编写与运行测试:从样例通过到回归验证
人工智能·数据挖掘·回归
D e re k ZH15 小时前
保序回归:从 PAVA 到可并堆的单调约束优化
c++·算法·数据挖掘·回归·kotlin
吴名氏.16 小时前
Java转AI Agent教程(第二周)超时重试与错误分类
java·人工智能·python·分类·ai agent
听风吹等浪起16 小时前
第27章:EfficientNet全家桶|钢材表面6类缺陷分类完整Pytorch实现
pytorch·分类·数据挖掘
Raymond16882 天前
零样本TTS长视频配音的工程取舍:自回归、非自回归与韵律边界
人工智能·数据挖掘·回归·音视频·音频
sbjdhjd2 天前
从污点追踪断点到 PHP-FPM 请求队列:HIDS PHP WebShell 样本复盘
开发语言·网络安全·数据挖掘·渗透测试·开源·php·shell