数据集下载
ScanNet代码主页
https://github.com/ScanNet/ScanNet
这个里面是没有数据集的,按照作者说明,应该去邮件申请:ScanNet Terms of Use to scannet@googlegroups.com
申请后会获得两份下载脚本
脚本具体内容参照ScanNet数据集下载
下面是一份改进的版本,可以固定下载某些序列,直接把内容替换到download_scannet.py
里即可
scannet数据集下载
下载示例,把0059_00序列下载到目标文件夹内
python download_scannet.py -o [output_folder] --id scene0059_00
可能需要挂梯子,如果感觉下载太慢的话,可以把命令行界面加载的网址复制出来到网页端下载
">"号前面的是下载网址,直接复制即可下载,网页也慢的话就用IDM
Downloading ScanNet v2 scan scene0207_00 ...
http://kaldir.vc.in.tum.de/scannet/v2/scans/scene0207_00/scene0207_00.aggregation.json > ./SLAM\scans\scene0207_00/scene0207_00.aggregation.json
http://kaldir.vc.in.tum.de/scannet/v1/scans/scene0207_00/scene0207_00.sens > ./SLAM\scans\scene0207_00/scene0207_00.sens
http://kaldir.vc.in.tum.de/scannet/v2/scans/scene0207_00/scene0207_00.txt > ./SLAM\scans\scene0207_00/scene0207_00.txt
http://kaldir.vc.in.tum.de/scannet/v2/scans/scene0207_00/scene0207_00_vh_clean.ply > ./SLAM\scans\scene0207_00/scene0207_00_vh_clean.ply
http://kaldir.vc.in.tum.de/scannet/v2/scans/scene0207_00/scene0207_00_vh_clean_2.0.010000.segs.json > ./SLAM\scans\scene0207_00/scene0207_00_vh_clean_2.0.010000.segs.json
http://kaldir.vc.in.tum.de/scannet/v2/scans/scene0207_00/scene0207_00_vh_clean_2.ply > ./SLAM\scans\scene0207_00/scene0207_00_vh_clean_2.ply
http://kaldir.vc.in.tum.de/scannet/v2/scans/scene0207_00/scene0207_00_vh_clean.segs.json > ./SLAM\scans\scene0207_00/scene0207_00_vh_clean.segs.json
http://kaldir.vc.in.tum.de/scannet/v2/scans/scene0207_00/scene0207_00_vh_clean.aggregation.json > ./SLAM\scans\scene0207_00/scene0207_00_vh_clean.aggregation.json
http://kaldir.vc.in.tum.de/scannet/v2/scans/scene0207_00/scene0207_00_vh_clean_2.labels.ply > ./SLAM\scans\scene0207_00/scene0207_00_vh_clean_2.labels.ply
http://kaldir.vc.in.tum.de/scannet/v2/scans/scene0207_00/scene0207_00_2d-instance.zip > ./SLAM\scans\scene0207_00/scene0207_00_2d-instance.zip
http://kaldir.vc.in.tum.de/scannet/v2/scans/scene0207_00/scene0207_00_2d-instance-filt.zip > ./SLAM\scans\scene0207_00/scene0207_00_2d-instance-filt.zip
http://kaldir.vc.in.tum.de/scannet/v2/scans/scene0207_00/scene0207_00_2d-label.zip > ./SLAM\scans\scene0207_00/scene0207_00_2d-label.zip
http://kaldir.vc.in.tum.de/scannet/v2/scans/scene0207_00/scene0207_00_2d-label-filt.zip > ./SLAM\scans\scene0207_00/scene0207_00_2d-label-filt.zip
数据集解析
下载后得到的传感器数据是一个xxxx_xx.sens
文件,需要用脚本转化出color,depth,pose文件
官方给了一个导出代码
https://github.com/ScanNet/ScanNet/tree/master/SensReader/python
但是这个我用的时候,转出来的depth文件被损坏。
按照bashhttps://github.com/ScanNet/ScanNet/issues/46
中一位大佬的回答,将原本的ScanNet\SensReader\pythonSensorData.py
替换成
https://github.com/pengsongyou/openscene/blob/main/scripts/preprocess/scannet_sensordata.py
里的代码即可
conda环境
conda install没有的用pip install下载,一定要按版本来
运行
python reader.py --filename xxxx\scene0181_00.sens --output_path xxxx\scene0181_00
最后得到的文件大概有以下部分
数据集处理问题
由于该数据集命名方式是0,1,2,3,4,5…这种序列,有可能被一些代码排序成0,1,10,100,1000,1001.