如何使用自定义推理代码和容器为 SageMaker 端点高效解析存储在 S3 中的视频文件?

问题描述 投票:0回答:1

我目前正在努力部署具有自定义推理代码的 SageMaker 端点以及用于对象检测和跟踪的自定义容器。我的目标是对 Amazon S3 中存储的视频执行实时视频分析。但是,我在解析视频文件并将其发送到端点而不遇到服务器超时时遇到困难。

我尝试通过 API 直接将视频文件发送到端点,但在下载整个视频之前服务器时间已耗尽。在网上研究后,我发现建议将视频预处理成帧,然后通过 API 发送。但是,我的自定义推理代码旨在处理视频文件,而不是单个帧。

考虑到我的自定义推理代码仅支持视频输入,处理存储在 S3 中的视频文件并将其输入 SageMaker 端点以进行对象检测和跟踪的最有效方法是什么?

以下是我的一些具体问题:

  1. 如何高效地实时解析和处理来自 S3 的视频文件并将其输入 SageMaker 端点而不导致服务器超时?
  2. 有没有办法修改我的自定义推理代码以处理单个帧而不是完整的视频文件,以便我可以利用建议的将视频预处理为帧的方法?
  3. 如果修改我的推理代码不可行,有哪些替代方法可以直接处理视频文件而不会遇到服务器超时?
  4. 在 SageMaker 端点中处理视频数据是否有任何可以提高整体性能的最佳实践或优化技术?
  5. 任何与 SageMaker 中的视频处理和部署自定义容器相关的见解、代码示例或推荐资源,我们将不胜感激。

提前感谢您的帮助!

amazon-s3 computer-vision video-streaming amazon-sagemaker object-tracking
1个回答
0
投票

如果您愿意,可以使用异步端点。这些端点每个请求有 1 小时的超时期限,并允许 1GB 的有效负载。

请参阅此处的博客,其中展示了如何对大型视频进行推理。 https://aws.amazon.com/blogs/machine-learning/run-computer-vision-inference-on-large-videos-with-amazon-sagemaker-asynchronous-endpoints/

© www.soinside.com 2019 - 2024. All rights reserved.