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

相关推荐
R-G-B12 小时前
OpenCV Python——报错AttributeError: module ‘cv2‘ has no attribute ‘bgsegm‘,解决办法
人工智能·python·opencv·opencv python·attributeerror·module ‘cv2‘·no attribute
楚韵天工14 小时前
基于多分类的工业异常声检测及应用
人工智能·深度学习·神经网络·目标检测·机器学习·分类·数据挖掘
似乎很简单16 小时前
【opencv-Python学习笔记(5):几何变换】
笔记·opencv·学习
OpenC++16 小时前
【机器学习】核心分类及详细介绍
人工智能·机器学习·分类
荼蘼20 小时前
OpenCv(二)——边界填充、阈值处理
人工智能·opencv·计算机视觉
思通数据1 天前
AI视频监控:重构安防行业智能化新生态
人工智能·安全·目标检测·机器学习·计算机视觉·重构·数据挖掘
蜀中廖化1 天前
机器学习:基于OpenCV和Python的智能图像处理 实战
python·opencv·机器学习
R-G-B1 天前
【P27 4-8】OpenCV Python——Mat类、深拷贝(clone、copyTo、copy)、浅拷贝,原理讲解与示例代码
人工智能·python·opencv·浅拷贝·深拷贝·opencv python·mat类
Blossom.1181 天前
把大模型当“温度计”——基于 LLM 的分布式系统异常根因定位实战
人工智能·python·深度学习·机器学习·自然语言处理·分类·bert
RIKI_11 天前
【浅学】tflite-micro + ESP32S3 + VScode + ESP-IDF 基于例程快速实现自己的图像分类模型训练部署全流程
单片机·分类