首页 >> 大全

实验记录 MV3D 代码复现

2023-09-30 大全 22 作者:考证青年

实验记录 MV3D 代码复现

conda mv3d2

file path : ~/work//didi/

1, 下载好数据,不要下载错了

2,按照数据布局进行数据摆放

然后对raw进行数据摆放

3,摆放好数据后,编译ver3的代码,生成两个动态库

这里要注意按照文件,对路径进行修正。

但是这里我也碰到一个问题,

怎么实现 numpy array to be into ‘raw’ to .so in .py line 126.

我尝试raw=np.load(“.so”,=True),但是这会报错动态库文件没法当打开。

如果有朋友会,私信我,感谢。

4,生成动态库文件后, data.py

这里要注意的是

运行data.py文件以后,在data文件中产生6个文件夹,如下图:

储存154个npy文件,每个文件对应一帧点云数据中所有boxes的8个坐标信息

储存了154和png文件,是将2Dbox画在img上的png文件(并不是所有额obj都被画了出来,根据.xml文件可知,点云数据中还有和行人等目标,但是在data阶段没有画出来)

文件夹里边包含154个npy文件,储存对应点云中boxes目标框的标签,比如[1,1].代表这帧点云中有两个boxes框,且种类标签都为1

rgb 154个png文件,代表归一化后的原始image;不要诧异图片是黑色的,黑色的原因是因为原始图片的rgb范围是[0,255].黑色的图片rgb范围是[0,1];

top npy.npz文件,mv3d的top视图,将点云平均分为M个切片,为每一个切片计算高度图,得到M个高度图;代码中的M计算得15;

首先将点云分为很对个3维格子,设置格子的长宽高分辨率;然后根据点的三维坐标确定位于的格子;取每个格子内所有点的最大高度为切片对应得2D 格子的高度值;源码里边将每个点云切片分为500*300的分辨率;每个npy.npz文件可以得到一个shape为[500,300,15]的数组

5,调试

这个时候要用到,因此需要不断调试。

版本太高了,需要降低到1

pip -gpu1.1.0

卸载干净

版本太高,降低到.6

conda .6

但是降低版本太麻烦,不如重新创建一个环境

conda --name mv3d2 =3.6

conda -gpu==1.4.1

conda =8

conda cudnn=6

然后缺啥补啥。

5.1 首先测试是否正常能用

Test your -GPU is by"

5.2 测试 -gpu是否可用 5.3 修改相关文件和查询gpu的算力

After -GPU could work If you are not using K520 GPU, you need to “arch=sm_30” to other value in src/net/lib/setup.py and src/lib/make.sh in order to *.so file right. Here is short list for arch for .

因为我用的是,所以sm_86

6, train.py

碰到新问题卡住了

: /usr/lib/-linux-gnu/.so.0: :

搞定又有新问题,我都无语了

: /home/siat//ENTER/envs/mv3d2/bin/…/lib/-2.0.so.0: : ds

第一种可能glib的版本跟系统版本不同

查看后果然版本不同

mv3d 是2.58.2

是2.56.4

ubunu 是2.64.6

是2.72.1

降低glib版本,注意不要再的终端进行,要在终端进行

conda -c glib==2.56.1

成功解决该问题

但是版本降低又会出现新的问题。。。无语

: /usr/lib/-linux-gnu/.so.2: :

那么我再查看是否版本问题

当前cairo 版本是1.12.18

是1.15.0

将两者版本调为一致试试

调整失败

谷歌说版本要和cari版本匹配,但是匹配关系没找到

版本为0.32.6

当前cairo 版本是1.12.18

然后第二种法说法是的版本有那个 ,所以需要在下面做文章

先看看.so.2跟哪些东西链接

ldd /usr/lib/-linux-gnu/.so.2

nm -s -D /usr/lib/-linux-gnu/.so.6 | grep

谷歌发现 .so.2 报错主要是版本问题

查找.so文件

可以看出我的mv3d2环境的.so是查不到那个

所以

但是问题来了,/usr/lib/-linux-gnu/.so.2的是链接/usr/lib/-linux-gnu/.so.6,那这应该是没问题的呀。

有一个新的想法,升级mv3d2的cario版本

既然我们已经知道1.12.18是不行,那么就升级到最新版本1.16.0 干!

问题解决了,十分奇葩

因为我之前用pip安装的,它是有问题的,因为版本太高,是4。3+。

我卸载pip的-,卸载conda的,然后成功安装conda的,他的版本使3.4+ ,然后就成功了。

新问题: not

参考资料

MV3D源代码

#

关于我们

最火推荐

小编推荐

联系我们


版权声明:本站内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 88@qq.com 举报,一经查实,本站将立刻删除。备案号:桂ICP备2021009421号
Powered By Z-BlogPHP.
复制成功
微信号:
我知道了