我正在尝试在 Ubuntu 20.04 上下载 Waymo 开放数据集,但我遇到了一个又一个问题。首先我去了这里:
https://waymo.com/open/download/
输入我的名字等,然后在“感知数据集”下,我选择了 v1.2“个人文件”链接,该链接导致:
https://console.cloud.google.com/storage/browser/waymo_open_dataset_v_1_2_0_individual_files
我之前使用过各种云服务,但之前没有使用过 Google Cloud Platform。我检查了所有框,然后选择“下载”:
出现一个弹出框,指示输入此命令:
gsutil -m cp -r \
"gs://waymo_open_dataset_v_1_2_0_individual_files/domain_adaptation/" \
"gs://waymo_open_dataset_v_1_2_0_individual_files/testing/" \
"gs://waymo_open_dataset_v_1_2_0_individual_files/training/" \
"gs://waymo_open_dataset_v_1_2_0_individual_files/validation/" \
.
我运行了命令,得到一个错误“gsutil notrecognized”,所以我做了:
sudo apt-get install gsutil
然后再次运行推荐的命令,我得到了这个错误:
Unknown option: m
No command was given.
Choose one of -b, -d, -e, or -r to do something.
经过一番谷歌搜索后,我发现了这篇文章:
https://stackoverflow.com/questions/61417140/installing-gcloud-gsutil-on-ubuntu-18
所以我做了:
echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] http://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key --keyring /usr/share/keyrings/cloud.google.gpg add -
sudo apt-get update
sudo apt-get install google-cloud-sdk
现在,当我运行上面推荐的命令时,我得到:
$ gsutil -m cp -r \
> "gs://waymo_open_dataset_v_1_2_0_individual_files/domain_adaptation/" \
> "gs://waymo_open_dataset_v_1_2_0_individual_files/testing/" \
> "gs://waymo_open_dataset_v_1_2_0_individual_files/training/" \
> "gs://waymo_open_dataset_v_1_2_0_individual_files/validation/" \
> .
ServiceException: 401 Anonymous caller does not have storage.objects.get access to the Google Cloud Storage object.
CommandException: 1 file/object could not be transferred.
此数据集是公开的,因此不需要密码或等效项。有没有其他人使用 Ubuntu 成功下载了这个数据集?我已经下载了其他自动驾驶汽车数据集(Lyft Level 5、Kitti 等),并且还在同一台计算机上使用了 AWS,没有遇到任何问题。我究竟做错了什么?
我能够解决这个问题,以下是步骤:
谷歌
Download Waymo Dataset
或类似的,应该带你到https://waymo.com/open/选择
Download
右上角,您必须在第一次这样做时输入您的姓名和电子邮件地址,别担心,他们不会向您发送电子邮件或任何垃圾邮件,继续输入您的信息。在
Download
页面上向下滚动并找到您尝试下载的数据集,例如Perception
,v1.2
,tar files
将带您到https://console.cloud.google.com/storage/browser/waymo_open_dataset_v_1_2_0;tab=objects?prefix= &forceOnObjectsSortingFiltering=false。选择文件/目录上方的复选框,以便检查每个目录的复选框(参见上面的截图),然后选择
DOWNLOAD
,这将显示如下命令:如果您收到如下消息,请打开终端并复制/粘贴:
这意味着您已经使用命令安装了一个包
gsutil
,但它不是与 Google Cloud SDK 一起使用的包!因此,如果您收到此消息,请卸载此其他gsutil
软件包:现在通过以下方式安装 Google Cloud SDK
snap
:或者,您可以访问https://cloud.google.com/sdk/docs/install#deb并按照手动下载和配置说明进行操作,但老实说,该
snap
软件包更容易并且效果很好,因此我会推荐该选项。现在尝试
gsutil
再次从终端运行上面的命令,您现在将收到如下错误:要解决此问题,请在您的默认浏览器中登录您的 Google 帐户(如果您尚未登录),然后从终端执行以下操作:
这会将您的默认浏览器打开到一个页面,该页面将要求您授予谷歌云执行操作的权限,继续并允许权限。有关此主题的更多信息,请参阅这篇文章https://stackoverflow.com/questions/49302859/gsutil-serviceexception-401-anonymous-caller-does-not-have-storage-objects-list
最后回到终端并再次发出上述
gsutil
命令,它现在应该可以工作了。为什么谷歌让它变得如此复杂并且没有提供关于如何在任何地方执行此操作的明确说明,我不确定。- - - 编辑 - - -
今天早上我在下载 Waymo 数据集时遇到了另一个问题,我能够解决这个问题。具体来说,仅对于 Motion Dataset v1.1,Google Cloud 为您提供的下载命令不起作用:
它不会显示错误或挂起,它只是什么都不做。诀窍是删除引号:
然后它似乎工作正常。有关更多详细信息,请参阅此问题https://github.com/waymo-research/waymo-open-dataset/issues/377。