代码拉取完成,页面将自动刷新
class torchvision.transforms.ConvertImageDtype(
dtype: torch.dtype
)
更多内容详见torchvision.transforms.ConvertImageDtype。
class mindspore.dataset.vision.py_transforms.ToType(
output_type
)
更多内容详见mindspore.dataset.vision.py_transforms.ToType。
PyTorch:将张量图像转换为给定的数据类型并相应缩放值,此算子不支持PIL图像。
MindSpore:将输入的numpy.ndarray图像转换为所需的数据类型。
import numpy as np
import mindspore.dataset as ds
from mindspore import Tensor
import torchvision.transforms as T
import torchvision.datasets as datasets
from torch.utils.data import DataLoader
import mindspore.dataset.vision.py_transforms as py_vision
# In MindSpore, ToType act through map operation.
coco_dataset_dir = "/path/to/coco/testCOCO/train"
coco_annotation_file = "/path/to/coco/testCOCO/annotations/train.json"
dataset = ds.CocoDataset(
dataset_dir=coco_dataset_dir,
annotation_file=coco_annotation_file,
task='Detection')
transforms_list =py_vision.Compose(
[py_vision.Decode(),
py_vision.ToTensor(),
py_vision.ToType(np.float32)])
dataset = dataset.map(operations=transforms_list, input_columns="image")
for item in dataset:
print(len(item[0]))
break
# Out:
# 3
# In torch, ConvertImageDtype act through Sequential operation.
coco_dataset_dir = "/path/to/coco_dataset_directory/images"
coco_annotation_file = "/path/to/coco_dataset_directory/annotation_file"
#Convert a PIL Image or numpy.ndarray to tensor. This transform does not support torchscript.
dataset = datasets.CocoDetection(root, annFile, transform=T.ToTensor())
dataloader = DataLoader(dataset=dataset, num_workers=8, batch_size=1, shuffle=True)
for epoch in range(1):
for i, batch in enumerate(dataloader):
transformers = T.Compose([transforms.ConvertImageDtype(torch.float)])
real_a = batch[0]
real_a = transformers(real_a)
print(real_a.shape)
print(real_a.dtype)
# Out:
# loading annotations into memory...
# Done (t=0.00s)
# creating index...
# index created!
# torch.Size([1, 3, 561, 595])
# torch.float32
# ...
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。