CIFAR10の作り方は前回のブログをご覧ください
独自の CIFAR データセットを作成する方法を説明します (プロジェクトのソース コード付き)
前回の記事では、コードは 32*32 CIFAR しか生成できませんでしたが、トレーニング用のコード内の Shape を変更すると、私がテストした後、他のサイズのデータセットを正常に作成できなくなったので、皆さんの学習に役立つように投稿しました。 !
-
まず、demo.pyファイルの 15 行目のshape=32をshape=必要な入力サイズ(224など)に変更します。
if __name__ == '__main__': data, label, lst = read_data(file_list, data_path, shape=224) pickled(save_path, data, label, lst, bin_num = 5)#bin_num为生成的batch数量
-
load_data.pyファイルの 10 ~ 12 行目のハイパーパラメータを変更します。
DATA_LEN = 150528 #数据长度=通道数*图像宽*图像高 150528 = 3*224*224 CHANNEL_LEN = 50176 #通道长度=数据长度/通道数 50176 = 150528/3 SHAPE = 224 #圖像大小
-
edit_mate.pyファイルの 11 行目を変更して、 「num_vis」を 3072から150528 (データ長)に変更します。
dictCow = { 'num_cases_per_batch':3139,#每个batch包含的样本数量 'label_names':['1','10','2','3','4','5','6','7','8','9'],#类别索引,将类别索引表(object_list.txt)中的label_names:填进去 'num_vis':150528}#将此处修改为你的 数据长度=通道数*图像宽*图像高
-
フレームワークのcifar.pyファイルの 87 行目を変更します。
cifar.py は Python フォルダー -> lib -> python3.6 -> site-packages -> torchvision -> datasets -> cifar.py にあります。
改訂
self.data = np.vstack(self.data).reshape(-1, 3, 32, 32)#将此处的32改为你的图像大小224
着替える
self.data = np.vstack(self.data).reshape(-1, 3, 224, 224)#CIFAR利用这里计算iteration次数
-
リメイクCIFAR10