如何利用AI对媒资内容进行理解

智能媒体服务支持对媒资素材(视频、音频、图片)进行内容理解。用户可以根据实际需求对指定素材进行内容理解。通过阅读本文,您将了解调用OpenAPI进行内容理解的流程。

前提条件

基础使用

  1. 创建智能内容理解算法模板。

    调用接口CreateCustomTemplate - 创建用户自定义模板,创建自定义AI智能分析模板。

    示例代码:

    # -*- coding: utf-8 -*-
    from alibabacloud_ice20201109.client import Client as ICE20201109Client
    from alibabacloud_credentials.client import Client as CredentialClient
    from alibabacloud_tea_openapi import models as open_api_models
    from alibabacloud_ice20201109 import models as ice20201109_models
    from alibabacloud_tea_util import models as util_models
    
    # 工程代码建议使用更安全的无AK方式,凭据配置方式请参见:https://help.aliyun.com/document_detail/378659.html。
    credential = CredentialClient()
    config = open_api_models.Config(
        credential=credential
    )
    # Endpoint 请参考 https://api.aliyun.com/product/ICE
    config.endpoint = 'ice.cn-xxx.aliyuncs.com'
    client = ICE20201109Client(config)
    
    create_custom_template_request = ice20201109_models.CreateCustomTemplateRequest(
        name='face_template_001',
        template_config='{"AnalyseTypes":"face","FaceCategoryIds":"celebrity,politician,sensitive"}',
        type=11
    )
    runtime = util_models.RuntimeOptions()
    response = client.create_custom_template_with_options(create_custom_template_request, runtime)
    print(response)
  2. 提交智能内容理解任务。

    调用接口SubmitSmarttagJob - 提交智能标签作业,提交智能内容理解任务。

    示例代码:

    # -*- coding: utf-8 -*-
    from alibabacloud_ice20201109.client import Client as ICE20201109Client
    from alibabacloud_credentials.client import Client as CredentialClient
    from alibabacloud_tea_openapi import models as open_api_models
    from alibabacloud_ice20201109 import models as ice20201109_models
    from alibabacloud_tea_util import models as util_models
    
    # 工程代码建议使用更安全的无AK方式,凭据配置方式请参见:https://help.aliyun.com/document_detail/378659.html。
    credential = CredentialClient()
    config = open_api_models.Config(
        credential=credential
    )
    # Endpoint 请参考 https://api.aliyun.com/product/ICE
    config.endpoint = 'ice.cn-xxx.aliyuncs.com'
    client = ICE20201109Client(config)
    
    submit_smarttag_job_request_input = ice20201109_models.SubmitSmarttagJobRequestInput(
        type='URL',
        media='https://xxx.jpeg'
    )
    submit_smarttag_job_request = ice20201109_models.SubmitSmarttagJobRequest(
        title='人脸测试-001',
        input=submit_smarttag_job_request_input,
        template_id='xxx'
    )
    runtime = util_models.RuntimeOptions()
    response = client.submit_smarttag_job_with_options(submit_smarttag_job_request, runtime)
    print(response)
  3. 查询任务结果。

    调用接口QuerySmarttagJob - 智能标签任务查询接口, 查询智能内容理解任务。

    示例代码:

    # -*- coding: utf-8 -*-
    from alibabacloud_ice20201109.client import Client as ICE20201109Client
    from alibabacloud_credentials.client import Client as CredentialClient
    from alibabacloud_tea_openapi import models as open_api_models
    from alibabacloud_ice20201109 import models as ice20201109_models
    from alibabacloud_tea_util import models as util_models
    
    # 工程代码建议使用更安全的无AK方式,凭据配置方式请参见:https://help.aliyun.com/document_detail/378659.html。
    credential = CredentialClient()
    config = open_api_models.Config(
        credential=credential
    )
    # Endpoint 请参考 https://api.aliyun.com/product/ICE
    config.endpoint = 'ice.cn-xxx.aliyuncs.com'
    client = ICE20201109Client(config)
    
    query_smarttag_job_request = ice20201109_models.QuerySmarttagJobRequest(
        job_id='xxx'
    )
    runtime = util_models.RuntimeOptions()
    response = client.query_smarttag_job_with_options(query_smarttag_job_request, runtime)
    print(response)

进阶使用

  1. 创建自定义库。

    调用接口CreateRecognitionLib - 创建自定义识别库,创建自定义识别库。

    示例代码:

    # -*- coding: utf-8 -*-
    from alibabacloud_ice20201109.client import Client as ICE20201109Client
    from alibabacloud_credentials.client import Client as CredentialClient
    from alibabacloud_tea_openapi import models as open_api_models
    from alibabacloud_ice20201109 import models as ice20201109_models
    from alibabacloud_tea_util import models as util_models
    
    # 工程代码建议使用更安全的无AK方式,凭据配置方式请参见:https://help.aliyun.com/document_detail/378659.html。
    credential = CredentialClient()
    config = open_api_models.Config(
        credential=credential
    )
    # Endpoint 请参考 https://api.aliyun.com/product/ICE
    config.endpoint = 'ice.cn-xxx.aliyuncs.com'
    client = ICE20201109Client(config)
    
    create_recognition_lib_request = ice20201109_models.CreateRecognitionLibRequest(
        algorithm='face',
        lib_name='face_lib_001'
    )
    runtime = util_models.RuntimeOptions()
    response = client.create_recognition_lib_with_options(create_recognition_lib_request, runtime)
    print(response)
  2. 创建自定义实体。

    调用接口CreateRecognitionEntity - 创建自定义识别库中的待识别实体,在指定的自定义识别库中创建一个新的实体。

    示例代码:

    # -*- coding: utf-8 -*-
    from alibabacloud_ice20201109.client import Client as ICE20201109Client
    from alibabacloud_credentials.client import Client as CredentialClient
    from alibabacloud_tea_openapi import models as open_api_models
    from alibabacloud_ice20201109 import models as ice20201109_models
    from alibabacloud_tea_util import models as util_models
    
    # 工程代码建议使用更安全的无AK方式,凭据配置方式请参见:https://help.aliyun.com/document_detail/378659.html。
    credential = CredentialClient()
    config = open_api_models.Config(
        credential=credential
    )
    # Endpoint 请参考 https://api.aliyun.com/product/ICE
    config.endpoint = 'ice.cn-xxx.aliyuncs.com'
    client = ICE20201109Client(config)
    
    create_recognition_entity_request = ice20201109_models.CreateRecognitionEntityRequest(
        algorithm='face',
        lib_id='xxx',
        entity_name='小帅'
    )
    runtime = util_models.RuntimeOptions()
    response = client.create_recognition_entity_with_options(create_recognition_entity_request, runtime)
    print(response)
  3. 创建自定义对象

    调用接口CreateRecognitionSample - 注册自定义实体的识别样本,为指定的自定义实体添加识别样本图片或文本标签。

    示例代码:

    # -*- coding: utf-8 -*-
    
    from alibabacloud_ice20201109.client import Client as ICE20201109Client
    from alibabacloud_credentials.client import Client as CredentialClient
    from alibabacloud_tea_openapi import models as open_api_models
    from alibabacloud_ice20201109 import models as ice20201109_models
    from alibabacloud_tea_util import models as util_models
    
    # 工程代码建议使用更安全的无AK方式,凭据配置方式请参见:https://help.aliyun.com/document_detail/378659.html。
    credential = CredentialClient()
    config = open_api_models.Config(
        credential=credential
    )
    # Endpoint 请参考 https://api.aliyun.com/product/ICE
    config.endpoint = 'ice.cn-xxx.aliyuncs.com'
    client = ICE20201109Client(config)
    
    create_recognition_sample_request = ice20201109_models.CreateRecognitionSampleRequest(
        algorithm='face',
        lib_id='xxx',
        entity_id='xxx',
        image_url='https://xxx.jpg'
    )
    runtime = util_models.RuntimeOptions()
    response = client.create_recognition_sample_with_options(create_recognition_sample_request, runtime)
    print(response)
  4. 创建内容理解算法模板。

    与基础使用相同,需要根据需求输入分析类型的算子以及相应的自定义库ID(如人脸、地标、物体、logo、自定义标签等)。

  5. 提交智能内容理解任务。

    与基础使用相同。

  6. 查询任务结果。

    与基础使用相同。