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

相关推荐
ahccqw12 小时前
OpenCV 车辆数量统计
人工智能·opencv·计算机视觉
Aloudata1 天前
Claude 做数据分析的这两年:一份复盘与发展线索
大数据·数据库·人工智能·数据挖掘·数据分析·dataagent
架构师伯子明1 天前
ffmpeg学习4:opencv在音视频领域常用指令
opencv·学习·ffmpeg
.道阻且长.1 天前
AI 按数据模态分类:计算机视觉、NLP、语音处理,一篇理清
人工智能·计算机视觉·分类
yunhuibin2 天前
AI分类任务种类
人工智能·自然语言处理·分类
LongRunning2 天前
【Linux】RK3568-OpenCV+YOLO(八)
linux·opencv·yolo
GrowingIO技术社区3 天前
用户行为分析怎么做?从业务目标到改进验证的完整流程
大数据·数据挖掘·数据分析
电科_银尘3 天前
【深度学习项目实战·15】小样本图像分类:迁移学习识别蚂蚁与蜜蜂
深度学习·分类·迁移学习
敢敢のwings4 天前
机器人如何通过触觉认识物体:从材质分类到接触状态判断
分类·机器人·材质
Blockbuater_drug5 天前
《经典机器学习实战》第 4 课:逻辑回归:预测类别(南瓜)
分类·逻辑回归·混淆矩阵·roc曲线·auc·召回率·精确率