JDet
JDet copied to clipboard
AttributeError: module 'jittor.nn' has no attribute 'Conv3d'
使用docker安装的jittor,version是1.2.2.59。 不仅nn.Conv3d没有,而且nn.BatchNorm3d,nn.InstanceNorm3d也都没有。
可以在docker里面更新一下jittor: python -m pip install jittor --upgrade
可以了。不过在docker里面最好指定路径(多个python版本),python -m pip install jittor --upgrade --target=/usr/local/lib/pythonxxx/site-packages/
好的,我们会更新一下,感谢!
想问一下,在/python/jdet/data/dota.py里面DOTADataset类中第109,110行 dets = np.concatenate(dets) ; gts = np.concatenate(gts) 。 前面定义dets,gts都是list类型。没问题吗?
这样是没问题的,因为这个list里面是np数组,不过eval还有点问题就是,默认网络输出的box是原图大小的,而target是输入网络的图片大小,如果用val的话,需要把网络里的rescale给关掉
好的。还有一个问题,我先用了python preprocess.py --config-file dota_preprocess_config.py 对DOTA做裁剪等预处理,然后再做训练的时候,len(self.train_dataset)=0。
数据集处理后成这样的。
您的原始数据集是DOTA1.0的吗?
原始数据集是DOTA1.5
那您可能需要仿造python/jdet/data/dota.py里面的DOTADataset写一个针对DOTA1.5的Dataset,应该主要是针对DOTA1.5新增的分类做一些改动就可以了
preprocess也需要改一下,我来加一下吧,尽快push上去
DOTA1.5加好了,请pull最新的JDet,我简单测试了一下,应该没啥问题,您也可以try一try
您可以参考https://github.com/Jittor/JDet/blob/master/docs/dota.md 和 $JDet_PATH$/configs/retinanet_r50v1d_fpn_dota1_5.py 使用
好的,我先试一试
我参考了https://github.com/Jittor/JDet/blob/master/docs/dota.md 和 $JDet_PATH$/configs/retinanet_r50v1d_fpn_dota1_5.py,修改了s2anet_r50_fpn_1x_dota.py,成功训练了。不过测试的结果最后一个类别的AP却是0,网络配置的输出头的num_classes修改了的。
我把测试出来的结果,在原图把预测框可视化出来了,发现最后一个类别确实比其他类别训练得差,框选的目标基本都是错的。如果说是训练不够的画,可有些类别的AP都达到90%了。
你修改的config能发一下我看看吗,感觉像是少训练了一个类
看起来好像没有问题,您还改其他地方了吗,要不把代码发给我我看下?
好的。代码和训练的权重文件在链接:https://pan.baidu.com/s/1l-GklzsAFoharBQ0ej8UGA 提取码:6zv0 谢谢了。
收到,我测试下
同学,你好,我这边看到你的ckpt_12.pkl是用num_classes=16训练的,是不是您训练时候忘改num_classes,然后训练完才改的呢?
`[e 0820 13:26:46.989093 12 init.py:996] load parameter bbox_head.fam_cls.weight failed: expect the shape of bbox_head.fam_cls.weight to be [16,256,1,1,], but got [15,256,1,1,]
[e 0820 13:26:46.989227 12 init.py:996] load parameter bbox_head.fam_cls.bias failed: expect the shape of bbox_head.fam_cls.bias to be [16,], but got [15,]
[e 0820 13:26:46.999255 12 init.py:996] load parameter bbox_head.odm_cls.weight failed: expect the shape of bbox_head.odm_cls.weight to be [16,256,3,3,], but got [15,256,3,3,]
[e 0820 13:26:46.999411 12 init.py:996] load parameter bbox_head.odm_cls.bias failed: expect the shape of bbox_head.odm_cls.bias to be [16,], but got [15,]`
非常不好意思啊!我是改了num_classes,再训练过的,因为放在服务器上跑的,本地没有同步,给你的代码给错了,不好意思啊。训练了16个类别的权重文件这个压缩包里:链接:https://pan.baidu.com/s/1krhg-57CLoCgXzSC-Icqrw 提取码:73rr
好的,谢谢
您好,最后一个类没有点数应该是因为数量太少和比较难学。我单独训了最后一类,在val上只有13mAP。最后一个类在train里面只有7张图片142个框,val里面2张图片14个框,如果想训得比较好的话需要均衡一下类别,比如训练的时候重复这几张图片100次之类的。