DARDet
DARDet copied to clipboard
训练
数据集是dota吗?需要修改些什么地方?我看有个DOTAK和DOTA 需要注意些什么?我训练不起来 报这个错误。
我的DARDet config的路径改成了如下所示,是哪里出了问题呢?跑不起来呢。
麻烦告知了 ,期待您的解答。谢谢!
这个错误在issue里面有 安装 mmpycocotools就可以了 mmdet官方代码库的 issue里面也有。百度一搜就能搜到。发自我的华为手机-------- 原始邮件 --------发件人: yzk-lab @.>日期: 2021年12月7日周二 晚上8:03收件人: zf020114/DARDet @.>抄送: Subscribed @.***>主 题: [zf020114/DARDet] 训练 (Issue #14)
数据集是dota吗?需要修改些什么地方?我看有个DOTAK和DOTA 需要注意些什么?我训练不起来 报这个错误。
我的DARDet config的路径改成了如下所示,是哪里出了问题呢?跑不起来呢。
—You are receiving this because you are subscribed to this thread.Reply to this email directly, view it on GitHub, or unsubscribe.Triage notifications on the go with GitHub Mobile for iOS or Android.
这个错误在issue里面有 安装 mmpycocotools就可以了 mmdet官方代码库的 issue里面也有。百度一搜就能搜到。发自我的华为手机-------- 原始邮件 --------发件人: yzk-lab @.>日期: 2021年12月7日周二 晚上8:03收件人: zf020114/DARDet @.>抄送: Subscribed @.***>主 题: [zf020114/DARDet] 训练 (Issue #14) 数据集是dota吗?需要修改些什么地方?我看有个DOTAK和DOTA 需要注意些什么?我训练不起来 报这个错误。 我的DARDet config的路径改成了如下所示,是哪里出了问题呢?跑不起来呢。 —You are receiving this because you are subscribed to this thread.Reply to this email directly, view it on GitHub, or unsubscribe.Triage notifications on the go with GitHub Mobile for iOS or Android.
按照作者你给的建议解决了之前出现的问题,我始终感觉还是数据集的问题,当时就是直接用DOTA_devkit裁剪了图片得到了json格式标签和patch. 我利用的是你给的dardet_r50_fpn_1x_dcn_val.py配置文件。现在训练出现这个问题。
配置文件中 我只改了几个路径
是还需要注意哪里吗?麻烦告知啦 谢谢 感觉能跑 很想学习你文章。
这个需要把DOTA2COCOTrain函数里的imageparent和labelparent也指向到自己训练的数据路径
- Traceback (most recent call last): File "tools/train.py", line 191, in main() File "tools/train.py", line 188, in main meta=meta) File "/dataset/lg_datacode/code/DARDet/mmdet/apis/train.py", line 176, in train_detector runner.run(data_loaders, cfg.workflow) File "/home/lg/anaconda3/envs/dardet/lib/python3.7/site-packages/mmcv/runner/epoch_based_runner.py", line 125, in run epoch_runner(data_loaders[i], **kwargs) File "/home/lg/anaconda3/envs/dardet/lib/python3.7/site-packages/mmcv/runner/epoch_based_runner.py", line 47, in train for i, data_batch in enumerate(self.data_loader): File "/home/lg/anaconda3/envs/dardet/lib/python3.7/site-packages/torch/utils/data/dataloader.py", line 279, in iter return _MultiProcessingDataLoaderIter(self) File "/home/lg/anaconda3/envs/dardet/lib/python3.7/site-packages/torch/utils/data/dataloader.py", line 746, in init self._try_put_index() File "/home/lg/anaconda3/envs/dardet/lib/python3.7/site-packages/torch/utils/data/dataloader.py", line 861, in _try_put_index index = self._next_index() File "/home/lg/anaconda3/envs/dardet/lib/python3.7/site-packages/torch/utils/data/dataloader.py", line 339, in _next_index return next(self._sampler_iter) # may raise StopIteration File "/home/lg/anaconda3/envs/dardet/lib/python3.7/site-packages/torch/utils/data/sampler.py", line 200, in iter for idx in self.sampler: File "/dataset/lg_datacode/code/DARDet/mmdet/datasets/samplers/group_sampler.py", line 36, in iter indices = np.concatenate(indices) File "<array_function internals>", line 6, in concatenate ValueError: need at least one array to concatenate
when I use ./tools/dist_train.sh configs/DARDet/dardet_r50_fpn_1x_dcn_rotate_train.py 4,
everything is OK;
but when use python tools/train.py configs/DARDet/dardet_r50_fpn_1x_dcn_rotate_train.py
, it will cause the error.
What will cause this?
- Traceback (most recent call last): File "tools/train.py", line 191, in main() File "tools/train.py", line 188, in main meta=meta) File "/dataset/lg_datacode/code/DARDet/mmdet/apis/train.py", line 176, in train_detector runner.run(data_loaders, cfg.workflow) File "/home/lg/anaconda3/envs/dardet/lib/python3.7/site-packages/mmcv/runner/epoch_based_runner.py", line 125, in run epoch_runner(data_loaders[i], **kwargs) File "/home/lg/anaconda3/envs/dardet/lib/python3.7/site-packages/mmcv/runner/epoch_based_runner.py", line 47, in train for i, data_batch in enumerate(self.data_loader): File "/home/lg/anaconda3/envs/dardet/lib/python3.7/site-packages/torch/utils/data/dataloader.py", line 279, in iter return _MultiProcessingDataLoaderIter(self) File "/home/lg/anaconda3/envs/dardet/lib/python3.7/site-packages/torch/utils/data/dataloader.py", line 746, in init self._try_put_index() File "/home/lg/anaconda3/envs/dardet/lib/python3.7/site-packages/torch/utils/data/dataloader.py", line 861, in _try_put_index index = self._next_index() File "/home/lg/anaconda3/envs/dardet/lib/python3.7/site-packages/torch/utils/data/dataloader.py", line 339, in _next_index return next(self._sampler_iter) # may raise StopIteration File "/home/lg/anaconda3/envs/dardet/lib/python3.7/site-packages/torch/utils/data/sampler.py", line 200, in iter for idx in self.sampler: File "/dataset/lg_datacode/code/DARDet/mmdet/datasets/samplers/group_sampler.py", line 36, in iter indices = np.concatenate(indices) File "<array_function internals>", line 6, in concatenate ValueError: need at least one array to concatenate
when I use
./tools/dist_train.sh configs/DARDet/dardet_r50_fpn_1x_dcn_rotate_train.py 4,
everything is OK;but when use
python tools/train.py configs/DARDet/dardet_r50_fpn_1x_dcn_rotate_train.py
, it will cause the error.What will cause this?
解决了,问题出在DOTA_devkit/DOTA2COCO.py/ def DOTA2COCOTrain()
https://github.com/zf020114/DARDet/blob/f77f3280cbb141e23b1e8ba045d84458dff1d88b/DOTA_devkit/DOTA2COCO.py#L152-L153
train2017
和train2017labelTxt
要分别改为images
和labelTxt
,否则创建的json文件不会包含图像。同时注意也要把def DOTA2COCOval
函数也改一下