日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

人臉?biāo)阉?/h1>

創(chuàng)建數(shù)據(jù)集并將圖片索引至該數(shù)據(jù)集后,您可以利用人臉?biāo)阉鞴δ軓臄?shù)據(jù)集中檢索與指定圖片最相似的前N張圖片,此功能可應(yīng)用于VIP用戶的身份識別等場景。

應(yīng)用場景

智能安防監(jiān)控

結(jié)合人臉識別技術(shù),在工廠、學(xué)校、商場、餐廳等人流密集的場所進(jìn)行監(jiān)控,對人流進(jìn)行自動統(tǒng)計、識別和追蹤,同時標(biāo)記存在安全隱患的行為及區(qū)域,并發(fā)出告警提醒,加強信息化安全管理,降低人工監(jiān)督成本。

工廠安全生產(chǎn)

提供軟硬結(jié)合的安全生產(chǎn)監(jiān)控方案,基于廠區(qū)、車間內(nèi)攝像頭采集的圖像,識別是否有陌生人闖入,減少安全隱患。

刷臉閘機通行

將人臉識別功能集成到閘機中,快速錄入人臉信息,創(chuàng)建安全可靠的人臉庫,用戶刷臉通行,解決用戶忘帶工卡、盜刷等問題,實現(xiàn)企業(yè)、商業(yè)、住宅等多場景門禁通行。

智慧人臉考勤

提供移動考勤、攝像頭無感知考勤、一體機考勤三種方案,實現(xiàn)1秒內(nèi)快速搜索用戶最相似的人臉,確保簽到識別準(zhǔn)確性,有效防止代打卡等作弊行為,增強企業(yè)安全管理。

前提條件

步驟一:上傳文件

請使用OSS管理控制臺將需要對比的照片上傳至已綁定的bucket。

image

步驟二:向照片集中添加照片

  • 使用智能媒體管理控制臺,將您OSS中存儲的照片添加到數(shù)據(jù)集中以構(gòu)建照片庫,具體操作過程如下:

image

image

  • 也可以使用BatchIndexFileMeta - 批量文件元信息建立索引接口,向數(shù)據(jù)集中批量寫入人臉照片中的信息。寫入照片信息的過程為異步進(jìn)行,您可以使用設(shè)置 Notification 消息通知參數(shù)來獲取任務(wù)信息。

    代碼示例:

    # -*- coding: utf-8 -*-
    # This file is auto-generated, don't edit it. Thanks.
    import os
    import sys
    
    from typing import List
    
    from alibabacloud_imm20200930.client import Client as imm20200930Client
    from alibabacloud_tea_openapi import models as open_api_models
    from alibabacloud_imm20200930 import models as imm_20200930_models
    from alibabacloud_tea_util import models as util_models
    from alibabacloud_tea_util.client import Client as UtilClient
    
    
    class Sample:
        def __init__(self):
            pass
    
        @staticmethod
        def create_client() -> imm20200930Client:
            """
            使用AK&SK初始化賬號Client
            @return: Client
            @throws Exception
            """
            # 工程代碼泄露可能會導(dǎo)致 AccessKey 泄露,并威脅賬號下所有資源的安全性。以下代碼示例僅供參考。
            # 建議使用更安全的 STS 方式,更多鑒權(quán)訪問方式請參見:http://bestwisewords.com/document_detail/378659.html。
            config = open_api_models.Config(
                # 必填,請確保代碼運行環(huán)境設(shè)置了環(huán)境變量 ALIBABA_CLOUD_ACCESS_KEY_ID。,
                access_key_id=os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID'],
                # 必填,請確保代碼運行環(huán)境設(shè)置了環(huán)境變量 ALIBABA_CLOUD_ACCESS_KEY_SECRET。,
                access_key_secret=os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
            )
            # Endpoint 請參考 https://api.aliyun.com/product/imm
            config.endpoint = f'imm.cn-hangzhou.aliyuncs.com'
            return imm20200930Client(config)
    
        @staticmethod
        def main(
            args: List[str],
        ) -> None:
            client = Sample.create_client()
            notification_mns = imm_20200930_models.MNS(
                topic_name='test-mns-topic'
            )
            notification = imm_20200930_models.Notification(
                mns=notification_mns
            )
            input_file_0 = imm_20200930_models.InputFile(
                uri='''[
        {
            "URI": "oss://test-bucket/test-object-1.jpg"
        },
        {
            "URI": "oss://test-bucket/test-object-2.jpg"
        },
        {
            "URI": "oss://test-bucket/test-object-3.jpg"
        }
    ]'''
            )
            batch_index_file_meta_request = imm_20200930_models.BatchIndexFileMetaRequest(
                project_name='test-project',
                dataset_name='test-dataset',
                files=[
                    input_file_0
                ],
                notification=notification
            )
            runtime = util_models.RuntimeOptions()
            try:
                # 復(fù)制代碼運行請自行打印 API 的返回值
                client.batch_index_file_meta_with_options(batch_index_file_meta_request, runtime)
            except Exception as error:
                # 此處僅做打印展示,請謹(jǐn)慎對待異常處理,在工程項目中切勿直接忽略異常。
                # 錯誤 message
                print(error.message)
                # 診斷地址
                print(error.data.get("Recommend"))
                UtilClient.assert_as_string(error.message)
    
        @staticmethod
        async def main_async(
            args: List[str],
        ) -> None:
            client = Sample.create_client()
            notification_mns = imm_20200930_models.MNS(
                topic_name='test-mns-topic'
            )
            notification = imm_20200930_models.Notification(
                mns=notification_mns
            )
            input_file_0 = imm_20200930_models.InputFile(
                uri='''[
        {
            "URI": "oss://test-bucket/1.jpg"
        },
        {
            "URI": "oss://test-bucket/2.jpg"
        },
        {
            "URI": "oss://test-bucket/3.jpg"
        },
        {
            "URI": "oss://test-bucket/4.jpg"
        },
        {
            "URI": "oss://test-bucket/5.jpg"
        },
        {
            "URI": "oss://test-bucket/6.jpg"
        }
    ]'''
            )
            batch_index_file_meta_request = imm_20200930_models.BatchIndexFileMetaRequest(
                project_name='test-project',
                dataset_name='test-dataset',
                files=[
                    input_file_0
                ],
                notification=notification
            )
            runtime = util_models.RuntimeOptions()
            try:
                # 復(fù)制代碼運行請自行打印 API 的返回值
                await client.batch_index_file_meta_with_options_async(batch_index_file_meta_request, runtime)
            except Exception as error:
                # 此處僅做打印展示,請謹(jǐn)慎對待異常處理,在工程項目中切勿直接忽略異常。
                # 錯誤 message
                print(error.message)
                # 診斷地址
                print(error.data.get("Recommend"))
                UtilClient.assert_as_string(error.message)
    
    
    if __name__ == '__main__':
        Sample.main(sys.argv[1:])

    返回示例:

    {
      'EventId':'049-1udsgM0nr0leAdDBAOxe4kDLYM5',
      'RequestId': 'D4C150A6-D8EF-502B-9F30-645346388E13'
     }

    輕量消息隊列(原MNS)消息示例:

    {
        "TopicOwner": "14133977656xxxxx",
        "Message": "{\"id\":\"077-1x2s0rqA6ZOENW6gjAiN5Dl796T\",\"source\":\"acs.imm\",\"type\":\"imm:FileMeta:Index\",\"subject\":\"acs:imm:cn-hangzhou:14133977656xxxxx:test-project/imm:FileMeta:Index\",\"time\":\"1729564297965\",\"content\":\"{\\\"ProjectName\\\":\\\"test-project\\\",\\\"DatasetName\\\":\\\"test-dataset\\\",\\\"RequestId\\\":\\\"7FE8A307-1649-6B0D-1AB8-0600C9D4877B\\\",\\\"StartTime\\\":\\\"2024-10-22T10:31:37.787209251+08:00\\\",\\\"EndTime\\\":\\\"2024-10-22T10:31:37.965992728+08:00\\\",\\\"Success\\\":true,\\\"Message\\\":\\\"\\\",\\\"Files\\\":[{\\\"URI\\\":\\\"[\\\\n    {\\\\n        \\\\\\\"URI\\\\\\\": \\\\\\\"oss://test-bucket/test-object-1.jpg\\\\\\\"\\\\n    },\\\\n    {\\\\n        \\\\\\\"URI\\\\\\\": \\\\\\\"oss://test-bucket/test-object-2.jpg\\\\\\\"\\\\n    },\\\\n    {\\\\n        \\\\\\\"URI\\\\\\\": \\\\\\\"oss://test-bucket/test-object-3.jpg\\\\\\\"\\\\n    }\\\\n],\\\"UserData\\\":\\\"\\\"}\"}",
        "Subscriber": "14133977656xxxxx",
        "PublishTime": "1729564298068",
        "SubscriptionName": "test-mns-subscription",
        "MessageMD5": "9921327B25E01FB38151781B81042BA7",
        "TopicName": "tf-test-mns-queue",
        "MessageId": "129D772E14277FA6182D6E67D354D069"
    }

步驟三:創(chuàng)建相似人臉?biāo)阉魅蝿?wù)

您可以調(diào)用CreateFacesSearchingTask - 圖片人臉?biāo)阉?/a>接口搜索與指定圖片中最大的人臉最相似的N張照片。如下以搜索數(shù)據(jù)集test-dataset中,與OSS地址為oss://test-bucket/test-object.jpg的圖片相似的圖片為例

請求示例

{
  "ProjectName": "test-project",
  "DatasetName": "test-dataset",
  "Sources": [{"URI": "oss://test-bucket/test-object.jpg"}],
  "Notification": {"MNS": {"TopicName": "tf-test-mns-topic"}},
  "MaxResult": 100
}

返回示例

{
    "TaskId": "CreateFacesSearchingTask-dedf1bd9-7edc-4d16-97f2-bbb2a4fc****",
    "RequestId": "BB9C38A3-BB7A-53B7-A168-6DBC1CF6****",
    "EventId": "0DA-1TAZO4ClNnKbn4Ungls8SOk****"
}

示例代碼

# -*- coding: utf-8 -*-
# This file is auto-generated, don't edit it. Thanks.
import os
import sys

from typing import List

from alibabacloud_imm20200930.client import Client as imm20200930Client
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_imm20200930 import models as imm_20200930_models
from alibabacloud_tea_util import models as util_models
from alibabacloud_tea_util.client import Client as UtilClient


class Sample:
    def __init__(self):
        pass

    @staticmethod
    def create_client(
        access_key_id: str,
        access_key_secret: str,
    ) -> imm20200930Client:
        """
        使用AccessKey ID&AccessKey Secret初始化賬號Client。
        @param access_key_id:
        @param access_key_secret:
        @return: Client
        @throws Exception
        """
        config = open_api_models.Config(
            access_key_id=access_key_id,
            access_key_secret=access_key_secret
        )
        # 填寫訪問的域名。
        config.endpoint = f'imm.cn-hangzhou.aliyuncs.com'
        return imm20200930Client(config)

    @staticmethod
    def main(
        args: List[str],
    ) -> None:
        # 阿里云賬號AccessKey擁有所有API的訪問權(quán)限,建議您使用RAM用戶進(jìn)行API訪問或日常運維。
        # 強烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導(dǎo)致AccessKey泄露,威脅您賬號下所有資源的安全。
        # 本示例通過從環(huán)境變量中讀取AccessKey,來實現(xiàn)API訪問的身份驗證。如何配置環(huán)境變量,請參見http://bestwisewords.com/document_detail/2361894.html。
        imm_access_key_id = os.getenv("AccessKeyId")
        imm_access_key_secret = os.getenv("AccessKeySecret")
        # 初始化客戶端。
        client = Sample.create_client(imm_access_key_id, imm_access_key_secret)
        notification_mns = imm_20200930_models.MNS(
            topic_name='tf-test-mns-topic'
        )
        notification = imm_20200930_models.Notification(
            mns=notification_mns
        )
        sources_0 = imm_20200930_models.CreateFacesSearchingTaskRequestSources(
            uri='''oss://test-bucket/test-object.jpg
'''
        )
        create_faces_searching_task_request = imm_20200930_models.CreateFacesSearchingTaskRequest(
            project_name='test-project',
            dataset_name='test-dataset',
            sources=[
                sources_0
            ],
            notification=notification,
            max_result=100
        )
        runtime = util_models.RuntimeOptions()
        try:
            # 復(fù)制代碼運行請自行打印API的返回值。
            client.create_faces_searching_task_with_options(create_faces_searching_task_request, runtime)
        except Exception as error:
            # 如有需要,請打印錯誤信息。
            UtilClient.assert_as_string(error.message)

    @staticmethod
    async def main_async(
        args: List[str],
    ) -> None:
        # 阿里云賬號AccessKey擁有所有API的訪問權(quán)限,建議您使用RAM用戶進(jìn)行API訪問或日常運維。
        # 強烈建議不要把AccessKey ID和AccessKey Secret保存到工程代碼里,否則可能導(dǎo)致AccessKey泄露,威脅您賬號下所有資源的安全。
        # 本示例通過從環(huán)境變量中讀取AccessKey,來實現(xiàn)API訪問的身份驗證。如何配置環(huán)境變量,請參見http://bestwisewords.com/document_detail/2361894.html。
        imm_access_key_id = os.getenv("AccessKeyId")
        imm_access_key_secret = os.getenv("AccessKeySecret")
        # 初始化客戶端。
        client = Sample.create_client(imm_access_key_id, imm_access_key_secret)
        notification_mns = imm_20200930_models.MNS(
            topic_name='tf-test-mns-topic'
        )
        notification = imm_20200930_models.Notification(
            mns=notification_mns
        )
        sources_0 = imm_20200930_models.CreateFacesSearchingTaskRequestSources(
            uri='''oss://test-bucket/test-object.jpg
'''
        )
        create_faces_searching_task_request = imm_20200930_models.CreateFacesSearchingTaskRequest(
            project_name='test-project',
            dataset_name='test-dataset',
            sources=[
                sources_0
            ],
            notification=notification,
            max_result=100
        )
        runtime = util_models.RuntimeOptions()
        try:
            # 復(fù)制代碼運行請自行打印API的返回值。
            await client.create_faces_searching_task_with_options_async(create_faces_searching_task_request, runtime)
        except Exception as error:
            # 如有需要,請打印錯誤信息。
            UtilClient.assert_as_string(error.message)


if __name__ == '__main__':
    Sample.main(sys.argv[1:])

步驟四:查看相似人臉?biāo)阉鹘Y(jié)果

相似人臉圖片搜索任務(wù)創(chuàng)建成功后,您可以通過MNS服務(wù)獲取任務(wù)信息。如下以通過Python SDK獲取任務(wù)信息為例。更多信息,請參見步驟四:接收和刪除消息

  1. sample目錄中執(zhí)行以下命令。

    python recvdelmessage.py tf-test-mns-queue

  2. 將控制臺返回的結(jié)果JSON格式化,如下僅列舉Messegecontent部分的內(nèi)容。

    {
        "ProjectName": "test-project",
        "DatasetName": "test-dataset",
        "RequestId": "BB9C38A3-BB7A-53B7-A168-6DBC1CF6****",
        "StartTime": "2023-01-04T05:08:28.582Z",
        "EndTime": "2023-01-04T05:08:28.785Z",
        "UserData": "",
        "TaskType": "FacesSearching",
        "TaskId": "CreateFacesSearchingTask-dedf1bd9-7edc-4d16-97f2-bbb2a4fc****",
        "Status": "Succeeded",
        "Code": "",  // Code為空表示處理成功。
        "Message": "Success",
        "SimilarFaces": [
            {
                "URI": "oss://test-bucket/test-object.jpg",
                "Boundary": {
                    "Width": 109,
                    "Height": 150,
                    "Left": 69,
                    "Top": 49
                },
                // 相似人臉列表。
                "SimilarFaces": [
                    {
                        "URI": "oss://test-bucket/test-object-1.jpg",
                        "FigureId": "4cacbb71-52fd-4d3f-9d14-0840fecee0bf",
                        "Similarity": 0.73321015
                    },
                    {
                        "URI": "oss://test-bucket/test-object-2.jpg",
                        "FigureId": "7a4cd08d-bcd0-4bc4-93f4-1291075819cf",
                        "Similarity": 0.77035695
                    },
                    {
                        "URI": "oss://test-bucket/test-object-3.jpg",
                        "FigureId": "da920124-410a-4493-9fd3-1a3b366dca86",
                        "Similarity": 0.9836307
                    }
                ]
            }
        ]
    }
    
    說明

    消息內(nèi)容顯示,在數(shù)據(jù)集test-dataset中,與查詢圖片中的人臉相似的有以下三張圖片:

    • 圖片1:OSS地址為oss://test-bucket/test-object-1.jpg,圖片中的人臉與查詢圖片的人臉相似度為0.73321015

    • 圖片2:OSS地址為oss://test-bucket/test-object-2.jpg,圖片中的人臉與查詢圖片的人臉相似度為0.77035695

    • 圖片3:OSS地址為oss://test-bucket/test-object-3.jpg,圖片中的人臉與查詢圖片的人臉相似度為0.9836307