首先在ScanNet的github主页上下载ScanNet Terms of Use并填写好发送到指定邮箱,在回复的邮件中利用代码和命令行下载数据。
由于我用的是Python 3.x的版本,需要对代码做一点点改动。
raw_input()替换为input()
我想要先下载.sens文件类型。
输入如下命令:
python download-scannet.py -o F:/dataset/ScanNet/ --type .sens
出现如下错误:
By pressing any key to continue you confirm that you have agreed to the ScanNet terms of use as described at:
http://kaldir.vc.in.tum.de/scannet/ScanNet_TOS.pdf
***
Press any key to continue, or CTRL-C to exit.
Traceback (most recent call last):
File "download-scannet.py", line 234, in <module>
if __name__ == "__main__": main()
File "download-scannet.py", line 143, in main
key = raw_input('')
NameError: name 'raw_input' is not defined
刚开始不知道问题出在哪里(主要是python学的太水T T),后来看了出错的地方才发现原来 raw_input 是指键盘输入的内容,然后一查才知道这是由于python的版本问题造成的。
Raw_Input() Is Not Defined里面讲到:For Python 3.x, use input()
. For Python 2.x, use raw_input()
.
我用的是Python 3.x的版本,因此将代码中的所有raw_input()替换为了input()。
更改urllib库的导入及使用
参考Python3.X出现AttributeError: module ‘urllib’ has no attribute 'urlopen’错误
在Python3.X中应该用urllib.request
因此,将所有用到urllib库的地方都改为urllib.request。