首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何使用经过训练的AWS模型进行实时目标检测

如何使用经过训练的AWS模型进行实时目标检测
EN

Stack Overflow用户
提问于 2021-02-20 21:09:04
回答 2查看 109关注 0票数 2

在使用AWS成功训练目标检测模型后,如何使用该模型对SageMaker视频进行实时目标检测?

EN

回答 2

Stack Overflow用户

发布于 2021-02-28 08:15:45

用于实时对象检测的一种解决方案如下。

训练模型后,将模型上载到S3。您可以使用以下命令进行检查

代码语言:javascript
代码运行次数:0
运行
复制
$aws sagemaker list-training-jobs --region us-east-1

然后,您需要在亚马逊SageMaker端点上验证您训练过的模型。您可以使用以下命令来完成此操作:

代码语言:javascript
代码运行次数:0
运行
复制
object_detector = estimator.deploy(initial_instance_count = 1,                                 
instance_type = 'ml.g4dn.xlarge')

将模型附加到端点后,您将需要创建一个API,该API允许用户将输入传递到经过训练的模型以进行推理。您可以使用Serverless来完成此操作。使用Serverless,您可以创建一个模板,该模板将创建一个Lambda函数,如handler.py和serverless.yml,这些函数需要根据应用程序的操作方式进行配置。确保在serverless.yml中指定端点名称、SAGEMAKER_ENDPOINT_NAMEResource: ${ssm:sagemakerarn}。这是需要传入的允许策略资源(AWS Systems Manager代理)参数。在您的lambda函数中,确保您调用了SageMaker端点。

在这里,您现在可以部署API以进行实时检测:

代码语言:javascript
代码运行次数:0
运行
复制
serverless deploy -v 

最后,您可以使用curl调用您的API。

有关详细的演练,请参阅here

票数 1
EN

Stack Overflow用户

发布于 2021-02-21 00:58:13

您尚未指定将在何处托管模型:在AWS上、移动设备或其他设备上。然而,一般的方法是,假设CNN处理图像,您的模型将一次消耗一帧。您尚未指定编程语言或库,因此以下是psuedocode中的一般过程:

代码语言:javascript
代码运行次数:0
运行
复制
while True:
    video_frame = get_next_rtsp_frame()
    detections = model.predict(video_frame)
    # There might be multiple objects detected, handle each one:
    for detected_object in detections:
        (x1, y1, x2, y2, score) = detected_object # bounding box
        # use the bounding box information, say to draw a box on the image

实时视频流需求的一个挑战是避免延迟,这取决于您的平台和您在循环中进行的处理类型。您可以跳过帧或不缓冲丢失的帧来解决此问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66291913

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档