tyhuang/3D_Few-Shot_Class-Incremental_Learning_Dataset
数据集说明 数据集结构 ├ trainset/ ├── 0/ │ ├── [label]-xxxxx.npy │ ├── ...... ├── 1/ ├── ...... ├── 10/ │ ├ testset/ ├── 0/ │ ├── xxxxx.npy │ ├── ...... ├── 1/ ├── ...... ├── 10/ 文件夹"0"为基类数据集,文件夹"1"-"10"为新类数据集的10个增量阶段数据。每个文件夹内包含.npy格式的点云数据,可以使用numpy.load(path)读取相应文件。在trainset中,文件命名保证依照"[label]-xxxxx.npy"格式,其中第一个"-"前的内容为该点云的类别名,可以使用filename.split('-')[0]获取相应标签。 数据集读取示例 class CONTESTCIL_train(Dataset): def __init__(self, root='./trainset'… See the full description on the dataset page: https://huggingface.co/datasets/tyhuang/3D_Few-Shot_Class-Incremental_Learning_Dataset.
09
1# 数据集说明2 3## 数据集结构4```5├ trainset/6├── 0/7│ ├── [label]-xxxxx.npy8│ ├── ......9├── 1/10├── ......11├── 10/12│ 13├ testset/14├── 0/15│ ├── xxxxx.npy16│ ├── ......17├── 1/18├── ......19├── 10/20```21文件夹"0"为基类数据集,文件夹"1"-"10"为新类数据集的10个增量阶段数据。每个文件夹内包含.npy格式的点云数据,可以使用`numpy.load(path)`读取相应文件。在trainset中,文件命名保证依照"[label]-xxxxx.npy"格式,其中第一个"-"前的内容为该点云的类别名,可以使用`filename.split('-')[0]`获取相应标签。22 23## 数据集读取示例24```python25class CONTESTCIL_train(Dataset):26 def __init__(self, root='./trainset', session=0, name2id=None):27 data_root = os.path.join(root,str(session),"train")28 self.point_cloud = []29 self.labels = []30 self.session = session31 self.session_label_num = [55,59,63,67,71,75,79,83,87,91,95]32 for name in os.listdir(self.data_root):33 self.point_cloud.append(os.path.join(data_root,name))34 self.labels.append(name2id[name.split('-')[0]])35 36 def get_cat_num(self):37 return self.session_label_num[self.session]38 39 def __getitem__(self, idx):40 return np.load(self.point_cloud[idx]), self.labels[idx]41 42 def __len__(self):43 return len(self.labels)44 45 46class CONTESTCIL_test(Dataset):47 def __init__(self, root='./testset', session=0):48 self.session = session49 self.session_label_num = [55,59,63,67,71,75,79,83,87,91,95]50 data_root = os.path.join(root,str(session))51 self.point_cloud = []52 self.name = []53 for name in os.listdir(self.data_root):54 self.point_cloud.append(os.path.join(data_root,name))55 self.name.append(name)56 57 def get_cat_num(self):58 return self.session_label_num[self.session] 59 60 def __getitem__(self, idx):61 return np.load(self.point_cloud[idx]),self.name[idx]62 63 def __len__(self):64 return len(self.point_cloud)65```66 67## 答案提交68参赛选手需要提交 `test.csv`,其所需内容要求如下:69 70- 选手提交的答案文件,每行均包含两列,其中第一列为文件名称"XXX.npy"(输出内容无需加双引号),第二列为选手模型预测的标签,如"sofa"等。71- 选手对于每个增量阶段,均需要对该阶段测试集所有样本进行预测并输出。在每个增量阶段所有样本答案输出结束之后,请输出一行"END,END"用于标记该增量阶段结束。请注意:无效文件名,相同文件名重复输出均不会被统计。72- 具体格式可以参考主办方发布的"test.csv"文件,若存在提交格式问题需要确认,请联系主办方。