请我喝杯咖啡☕
*我的帖子解释了斯坦福汽车。
stanfordcars()可以使用stanford cars数据集,如下所示:
*备忘录:
- 第一个参数是 root(必需类型:str 或 pathlib.path)。 *绝对或相对路径都是可能的。
- 第二个参数是 split(可选-默认:"train"-类型:str)。 *可以设置“train”(8,144张图片)或“test”(8,041张图片)。
- 第三个参数是transform(optional-default:none-type:callable)。
- 第四个参数是 target_transform(optional-default:none-type:callable)。
- 第五个参数是 download(optional-default:false-type:bool):
*备注:
- 保留为 false,因为如果为 true,则会发生错误,因为原始 url 已损坏。
- 因此,您需要从这里手动下载并解压 archive.zip,从这里解压 archive.zip 以及 car_devkit.tgz 到 data/stanford_cars/ ,如下所示:
*备注:
- cars_test_annos_withlabels (1).mat 需要重命名为 cars_test_annos_withlabels.mat。
- cars_annos.mat 和 cars_annos (2).mat 不需要,并且还有一些重复的文件。
- 您还可以查看说明。
data
└-stanford_cars
|-cars_test_annos_withlabels.mat
|-cars_test
| └-*.jpg
|-cars_train
| └-*.jpg
└-devkit
|-cars_meta.mat
|-cars_test_annos.mat
|-cars_train_annos.mat
|-eval_train.m
|-readme.txt
└-train_perfect_preds.txt
from torchvision.datasets import StanfordCars
train_data = StanfordCars(
root="data"
)
train_data = StanfordCars(
root="data",
split="train",
transform=None,
target_transform=None,
download=False
)
test_data = StanfordCars(
root="data",
split="test"
)
len(train_data), len(test_data)
# (8144, 8041)
train_data
# Dataset StanfordCars
# Number of datapoints: 8144
# Root location: data
train_data.root
# 'data'
train_data._split
# 'train'
print(train_data.transform)
# None
print(train_data.target_transform)
# None
train_data.download
#
len(train_data.classes), train_data.classes
# (196,
# ['AM General Hummer SUV 2000', 'Acura RL Sedan 2012', 'Acura TL Sedan 2012',
# 'Acura TL Type-S 2008', ..., 'Volvo 240 Sedan 1993',
# 'Volvo XC90 SUV 2007', 'smart fortwo Convertible 2012'])
train_data[0]
# (, 13)
train_data[1]
# (, 2)
train_data[2]
# (, 90)
train_data[3]
# (, 133)
train_data[4]
# (, 105)
import matplotlib.pyplot as plt
def show_images(data, main_title=None):
plt.figure(figsize=(12, 5))
plt.suptitle(t=main_title, y=1.0, fontsize=14)
for i, (im, lab) in zip(range(1, 11), data):
plt.subplot(2, 5, i)
plt.imshow(X=im)
plt.title(label=lab)
plt.tight_layout()
plt.show()
show_images(data=train_data, main_title="train_data")
show_images(data=test_data, main_title="test_data")
show_images(data=train_data, ims=train_ims, main_title="train_data")
show_images(data=train_data, ims=val_ims, main_title="val_data")
show_images(data=test_data, ims=test_ims, main_title="test_data")












