Closed tangjingwe closed 9 months ago
def load_data() raise NotImplementedError大佬是需要自己写吗
不用自己实现,作者已经实现了。在dataset.py里面,ICDAR2015Dataset类继承了BaseDataSet并且重写了load_data()方法,可以查看class ICDAR2015Dataset(BaseDataSet)等,也可以debug查看程序如何运行的。
哇谢谢大佬,我先去试试,也是返回的空列表。数据是按要求存放的,但是‘。/datasets/train.txt’在写入‘\t’的时候,前100个写入的空格,不知道有没有影响
Traceback (most recent call last):
File "tools/train.py", line 77, in
Traceback (most recent call last): File "tools/train.py", line 77, in main(config) File "tools/train.py", line 36, in main train_loader = get_dataloader(config['dataset']['train'], config['distributed']) File "/home/omnisky/HTC/DBNet.pytorch-master/data_loader/init.py", line 84, in get_dataloader _dataset = get_dataset(data_path=data_path, module_name=dataset_name, transform=img_transfroms, dataset_args=dataset_args) File "/home/omnisky/HTC/DBNet.pytorch-master/data_loader/init.py", line 25, in get_dataset dataset_args) File "/home/omnisky/HTC/DBNet.pytorch-master/data_loader/dataset.py", line 17, in init super().init(data_path, img_mode, pre_processes, filter_keys, ignore_tags, transform) File "/home/omnisky/HTC/DBNet.pytorch-master/base/base_dataset.py", line 18, in init assert item in self.data_list[0], 'data_list from load_data must contains {}'.format(item_keys) IndexError: list index out of range** 大佬能帮我看看这个问题的原因吗,一下午没明白
这个错误是你的self.data_list为空,原因的你的train.txt或test.txt内存放的图像路径不对,检查你的train.txt和test.txt,程序会根据这两个txt内的文件路径去读图像和label,修改正确即可。
Traceback (most recent call last):
File "tools/eval.py", line 78, in
模型路径不对吧
已解决 是路径的问题
我刚刚也遇到相同的问题,已解决,希望能帮到你。 1)train.txt和test.txt的内容:
train.txt存放的是所有的训练图像的相对路径和该图片的标签文本txt文件的路径,二者用\t分割
test.txt存放的是所有的测试图像的相对路径和该图片的标签文本txt文件的路径,二者用\t分割
如test.txt存放的是:(500个测试样本,中间的省略了)
./datasets/test/img/img_1.jpg ./datasets/test/gt/gt_img_1.txt ./datasets/test/img/img_500.jpg ./datasets/test/gt/gt_img_500.txt 训练也是一样的,train.txt存放的是图像路径和对应标签的txt文件的路径。 ./datasets/train/img/img_1.jpg ./datasets/train/gt/gt_img_1.txt ./datasets/train/img/img_1000.jpg ./datasets/train/gt/gt_img_1000.txt
2)需要先将数据集和标签文件放到指定的位置:文件结构 datasets train img img_1.jpg img_1000.jpg gt gt_img_1.txt gt_img_1000.txt test img img_1.jpg img_500.jpg gt gt_img_1.txt gt_img_500.txt
3)在dataset.py运行和使用脚本如singlel_gpu_train.sh运行是的目录是不一样的,运行脚本不用修改路径,运行dataset.py需要修改文件路径,修改内容如下: 1)修改config文件为上级目录即,将“.”改为“..” 2)将train.txt和test.txt内同样,将“.”改为“..”