DC1991 / G2L_Net

MIT License
118 stars 13 forks source link

运行test_linemod.py,读取图像数据出错 AttributeError: 'NoneType' object has no attribute 'shape' #24

Closed LEONHWH closed 2 years ago

LEONHWH commented 3 years ago

我改好几个路径错误之后,遇到一个很怪异的问题: `Traceback (most recent call last): File "/home/leon/code project test/G2L_Net/demo/test_linemod.py", line 289, in R, T = test(rgbs, deps, idx, model, classifier, classifier_ce, classifier_box, classifier_box_gan, classifier_box_vec, opt, pc, OR, Rt, Tt, imgid=idxx, temp=temp)

File "/home/leon/code project test/G2L_Net/demo/test_linemod.py", line 152, in test imgs = letterbox(rgb[0], [416, 416], color=(127.5, 127.5, 127.5))

File "/home/leon/code project test/G2L_Net/demo/test_linemod.py", line 78, in letterbox shape = img.shape[:2] # shape = [height, width]

AttributeError: 'NoneType' object has no attribute 'shape'` 我查看了"../test_sequence/01/rgb" 确认数据存在和路径没有问题,但是我无法理解为何依旧存在这样的错误。 而且我在运行test_linemod.py需要等待好几分钟才会出现报错的结果。

kk-letsgo commented 2 years ago

你可以将 models/1/valseg.lst 里面的数据改成0-19,就可以解决这个问题

LEONHWH commented 2 years ago

你可以将_models/1/valseg.lst_里面的数据改成0-19,就可以解决这个问题

谢谢你的回复,另外我有一个问题:关于作者论文的“逐点嵌入向量”的可视化效果如果实现?我在G2L_Net/utils/utils_funs.py 上发现有一些应用函数,但没理解他们的用法。

kk-letsgo commented 2 years ago

你可以将_models/1/valseg.lst_里面的数据改成0-19,就可以解决这个问题

谢谢你的回复,另外我有一个问题:关于作者论文的“逐点嵌入向量”的可视化效果如果实现?我在G2L_Net/utils/utils_funs.py 上发现有一些应用函数,但没理解他们的用法。

我也是刚接触这个代码,你说的这些我不太清楚,不好意思。对了,这个代码的train你复现成功了么,我复现的时候报了一个通道上的错:预期输入3通道,实际输入却为6通道

LEONHWH commented 2 years ago

你可以将_models/1/valseg.lst_里面的数据改成0-19,就可以解决这个问题

谢谢你的回复,另外我有一个问题:关于作者论文的“逐点嵌入向量”的可视化效果如果实现?我在G2L_Net/utils/utils_funs.py 上发现有一些应用函数,但没理解他们的用法。

我也是刚接触这个代码,你说的这些我不太清楚,不好意思。对了,这个代码的train你复现成功了么,我复现的时候报了一个通道上的错:预期输入3通道,实际输入却为6通道

我目前研究这类工作,在测试它在实际情况是否鲁棒,后面如果继续研究会去train。如果方便的话,留下你的联系方式,可以一起交流。

Vain-Glory commented 2 years ago

同样遇到了(我复现的时候报了一个通道上的错:预期输入3通道,实际输入却为6通道)这个问题 不知道如何解决

kk-letsgo commented 2 years ago

同样遇到了(我复现的时候报了一个通道上的错:预期输入3通道,实际输入却为6通道)这个问题 不知道如何解决

那是因为作者只用了点云的前三个值即xyz,你把代码里点云前三列值取出来就行

XLXIAOLONG commented 2 years ago

同样遇到了(我复现的时候报了一个通道上的错:预期输入3通道,实际输入却为6通道)这个问题 不知道如何解决

那是因为作者只用了点云的前三个值即xyz,你把代码里点云前三列值取出来就行 @kk-letsgo 您好,我提取点云的前三列后,在trainG2L.py的149行vecs = torch.index_select(vecs[ib, :, :], 0, p[ib, :].nonzero()[:, 0]) 出现了RuntimeError: CUDA error: device-side assert triggered的错误,我的pytorch版本是1.7.0,请问您有没有遇到这个错误呢?

kk-letsgo commented 2 years ago

同样遇到了(我复现的时候报了一个通道上的错:预期输入3通道,实际输入却为6通道)这个问题 不知道如何解决

那是因为作者只用了点云的前三个值即xyz,你把代码里点云前三列值取出来就行 @kk-letsgo 您好,我提取点云的前三列后,在trainG2L.py的149行vecs = torch.index_select(vecs[ib, :, :], 0, p[ib, :].nonzero()[:, 0]) 出现了RuntimeError: CUDA error: device-side assert triggered的错误,我的pytorch版本是1.7.0,请问您有没有遇到这个错误呢?

我提取点云前3列后运行就没有报过错了,你报的错我不太清楚

XLXIAOLONG commented 2 years ago

同样遇到了(我复现的时候报了一个通道上的错:预期输入3通道,实际输入却为6通道)这个问题 不知道如何解决

那是因为作者只用了点云的前三个值即xyz,你把代码里点云前三列值取出来就行 @kk-letsgo 您好,我提取点云的前三列后,在trainG2L.py的149行vecs = torch.index_select(vecs[ib, :, :], 0, p[ib, :].nonzero()[:, 0]) 出现了RuntimeError: CUDA error: device-side assert triggered的错误,我的pytorch版本是1.7.0,请问您有没有遇到这个错误呢?

我提取点云前3列后运行就没有报过错了,你报的错我不太清楚

好的,感谢您的回复。

FabienCode commented 2 years ago

@XLXIAOLONG RuntimeError: CUDA error: device-side assert triggered的错误你解决了吗

XLXIAOLONG commented 2 years ago

@XLXIAOLONG RuntimeError: CUDA error: device-side assert triggered的错误你解决了吗

@FabienCode 更改为下图应该就好了 2022-06-27 09-38-33屏幕截图