终于在windows下跑起来pointnet源代码了。
这里是针对无tensorflow基础,无python基础的人群写的,有此基础的可以看其他资料了
安装anaconda,tensorflow以及cudnn的环节这里不描述了,后期重新整理发布。
第一个坑,用vs打开,各种错误,建议用pycharm,配置好canaconda的python版本即可运行下去,
第二个坑,数据集,对于初学者,h5是很陌生的概念,所以作者提前提醒,需要安装h5py,主要作用就是打开h5格式文件,如果没有运行程序,一定对这个概念感到,无从下手,
第三个坑,作者说是用的Stanford的modelnet40数据集,可是下载下来之后发现好几个G的off文件,根本没办法跑程序。只能去下载modelnet40_ply_hdf5_2048(及其难下载,这是自己上传的https://blog.csdn.net/guyuezunting/article/details/106644658)。真正的关系是,作者利用的确实是modelnet40数据集,不过是off文件,是cad的模型数据,对于点云还差一步,从cad模型取点保存成ply格式的点云数据,所以作者采用了对modelnet40里面的cad模型取点,作为点云数据,放到模型里面跑,而一般的点云用ply或者pcd的数据格式文件存储,作者又把ply的格式数据,保存到了h5格式的文件,可能存储更简单吧(在这个pointnet的工程里面,h5文件里面存储了多个ply文件,以及多个ply点云数据集,具体原因目前不知道,后期再研究)。
第四个坑,各种import出错,只能根据自己的路径通过文件名进行import
第五个坑,epoch设置250,目前还没填好这个坑
第六个坑,明明num设置的是1024,可是运行的时候读出来点数确是统一的2048个,目前还没填好这个坑
第七个坑,每个epoch里面,BATCH_SIZE指定为32,重新根据数据计算了num_batches,然后根据num_batches进行for循环,数据是每次32*1024*3个点,安照readme里面的提示,1024个点即1024*3是一个模型,难道是每32个模型进行一次训练吗?