比较与torchvision.transforms.RandomAffine的差异
torchvision.transforms.RandomAffine
class torchvision.transforms.RandomAffine(degrees, translate=None, scale=None, shear=None, interpolation=<InterpolationMode.NEAREST: 'nearest'>, fill=0, fillcolor=None, resample=None)
mindspore.dataset.vision.RandomAffine
class mindspore.dataset.vision.RandomAffine(degrees, translate=None, scale=None, shear=None, resample=Inter.NEAREST, fill_value=0)
差异对比
PyTorch:将张量图像应用随机仿射变换,支持指定旋转中心位置。
MindSpore:对输入图像应用随机仿射变换,旋转中心在图像中心位置,不支持指定旋转中心。
| 分类 | 子类 | PyTorch | MindSpore | 差异 | 
|---|---|---|---|---|
| 参数 | 参数1 | degrees | degrees | - | 
| 参数2 | translate | translate | - | |
| 参数3 | scale | scale | - | |
| 参数4 | shear | shear | - | |
| 参数5 | interpolation | resample | - | |
| 参数6 | fill | fill_value | - | |
| 参数7 | fillcolor | - | PyTorch已废弃此参数,与fill参数功能相同 | |
| 参数8 | resample | - | PyTorch已废弃此参数,与interpolation参数功能相同 | 
代码示例
from download import download
from PIL import Image
url = "https://mindspore-website.obs.cn-north-4.myhuaweicloud.com/notebook/datasets/flamingos.jpg"
download(url, './flamingos.jpg', replace=True)
orig_img = Image.open('flamingos.jpg')
# PyTorch
import torchvision.transforms as T
affine_transfomer = T.RandomAffine(degrees=(30, 70), translate=(0.1, 0.3), fill=0)
img_torch = affine_transfomer(orig_img)
# MindSpore
import mindspore.dataset.vision as vision
import mindspore.dataset.transforms as transforms
affine_transfomer = vision.RandomAffine(degrees=(30, 70), translate=(0.1, 0.3), fill_value=0)
img_ms = affine_transfomer(orig_img)