cv2如何访问AWS s3存储桶中的视频

时间:2020-02-10 23:16:10

标签: amazon-s3 amazon-sagemaker

我现在可以使用SageMaker笔记本。但这是一个重大问题。当我想使用cv2.VideoCapture读取s3存储桶中的视频时。它说路径不存在。 Stackoverflow中的一个答案说cv2仅支持本地文件,这意味着我们必须将视频从s3存储桶下载到笔记本,但我不想这样做。我想知道你如何看视频?谢谢。

enter image description here

我发现一种解决方案是使用CloudFront,但这会收费吗?很快吗?

2 个答案:

答案 0 :(得分:1)

您正在SageMaker中使用Python,因此可以使用:

import boto3

s3_client = boto3.client('s3')
s3_client.download_file('deepfake2020', 'dfdc_train_part_1/foo.mp4', foo.mp4')

这会将文件名为foo.mp4从Amazon S3下载到本地磁盘。

请参阅:boto3中的download_file()

这要求已授予SageMaker实例访问Amazon S3存储桶的权限。

答案 1 :(得分:0)

enter image description here

此解决方案也有效。

要使用AWS SageMaker,

1)转到支持中心,要求提高笔记本实例的限制。他们通常会在1天之内回复。

2)创建笔记本时,将本地磁盘大小更改为1TB(双倍数据大小)。

3)打开Jupyter lab并在终端上输入cd SageMaker

4)使用CurlWget获取数据集的下载链接。

5)下载后,解压缩数据

unzip dfdc_train_all.zip

unzip '*.zip'

你去了。