Mercury APIマニュアル - Beta

当マニュアルは現在ご利用いただけません。公開までお待ちください。

改訂履歴

日付

改訂内容

2020/06/24

編集中

概要

1:N顔認証のために、顔写真を含む認証用データ(以下「認証用データ」)を保存するDBが最大20個まで作成できます。各DBに最大50,000人分の認証用データ情報が保存できます。つまり、Nの最大値は100万人となっています。

返却値

HTTP返却値:

返却値

ステータス

200

OK

400

BAD_REQUEST

404

NOT_FOUND

411

LENGTH_REQUIRED

413

PAYLOAD_TOO_LARGE

500

INTERNAL_ERROR

システム返却値

返却値

ステータス

80000

OK

80001

CANCELED

80002

UNKNOWN

80003

INVALID_ARGUMENT

80004

DEADLINE_EXCEEDED

80005

NOT_FOUND

80006

ALREADY_EXISTS

80007

PERMISSION_DENIED

80008

RESOURCE_EXHAUSTED

80009

FAILED_PRECONDITION

80010

ABORTED

80011

OUT_OF_RANGE

80012

UNIMPLEMENTED

80013

INTERNAL

80014

UNAVAILABLE

80015

DATA_LOSS

80016

UNAUTHENTICATED

01-1:1の比較

アップロードされた2枚の写真を比較し、類似度を返却します。

リクエスト方法

POST Content-Type: application/json

リクエストアドレス

http://ip:port/api/v3/face/verify

リクエストパラメータ

パラメータ名

必須

説明

first_image

string

YES

1枚目画像のbase64データ

second_image

string

YES

2枚目画像のbase64データ

レスポンス結果

パラメータ名

説明

request_id

string

ユニークリクエストID

code

int

システム返却値、正常の時に80000

message

string

システム返却メッセージ,正常の時に“OK”

score

string

類似度

{
    "code": 200,
    "message": "OK",
    "desc": null,
    "data": {
        "code": 80000,
        "message": "OK",
        "result": {
            "score": 1.0
        },
          "requestId": "6dcabe1b-6b08-447f-bea1-d18429e10ebc"
    }
}

02-認証用データを保存するDBの作成

認証用データを保存するDBを作成します。最大20件のデータまで作成できます。

リクエスト方法

POST Content-Type: application/json

リクエストアドレス

http://ip:port/api/v3/db/create

リクエストパラメータ

パラメータ名

必須

説明

db_name

string

YES

DBの名前,重複可能,編集可能

db_desc

string

NO

説明情報

レスポンス結果

パラメータ名

説明

request_id

string

ユニークリクエストID

code

int

システム返却値,正常の時に80000

message

string

システム返却メッセージ,正常の時に“OK”

db_id

string

認証用データを保存するDBのID

{
    "code": 200,
    "message": "OK",
    "desc": null,
    "data": {
        "code": 80000,
        "message": "OK",
        "result": "e5fdc03c-b2c2-45b0-9b42-4c6b3f614000",
        "requestId": "797b5476-a88f-4cdb-b3a5-451bf6da7862"
    }
}

03-認証用データを保存するDBの削除

認証用データを保存するDBを削除します。

注意事項:認証用データのDBが削除されることによって、DBに保存されるデータも自動的に削除されます。

リクエスト方法

POST Content-Type: application/json

リクエストアドレス

http://ip:port/api/v3/db/delete

リクエストパラメータ

パラメータ名

必須

説明

db_id

String

YES

DBの名前,重複可能,編集可能

レスポンス結果

パラメータ名

説明

request_id

string

ユニークリクエストID

code

int

システム返却値,正常の時に80000

message

string

システム返却メッセージ,正常の時に“OK”

result

string

システムレスポンス結果

{
    "code": 200,
    "message": "OK",
    "desc": null,
    "data": [
        {
            "code": 80000,
            "message": "OK",
            "result": null,
            "request_id": "d23ccf7d-ccd7-4228-b420-61bef231a220"
        },
        {
            "code": 80000,
            "message": "OK",
            "result": null,
            "request_id": "d23ccf7d-ccd7-4228-b420-61bef231a220"
        }
    ]
}

04-認証用データを保存するDB一覧の取得

認証用データを保存するDB一覧を取得します。

リクエスト方法

POST Content-Type: application/json

リクエストアドレス

http://ip:port/api/v3/db/list

リクエストパラメータ

なし

レスポンス結果

パラメータ名

説明

request_id

string

ユニークリクエストID

code

int

システム返却値,正常の時に80000

message

string

システム返却メッセージ,正常の時に“OK”

db_count

int

既存DBの数

db_info

json

各DBの詳細情報

db_id

string

DBのID

db_name

string

DBの名前

face_count

int

DBに登録されている認証用データの数

db_desc

string

説明情報

{
    "code": 200,
    "message": "OK",
    "desc": null,
    "data": {
        "code": 80000,
        "message": "OK",
        "result": {
            "dbCount": 98,
            "dbinfos": [
                {
                    "faceCount": "0",
                    "id": "35040d1e-c7b9-43d9-93c8-32d301657000",
                    "name": "senseradar_alert",
                    "desc": ""
                },
                {
                    "faceCount": "0",
                    "id": "404c159a-118e-4e8b-bed6-d3fab2a33000",
                    "name": "test2",
                    "desc": "none"
                }
            ]
        },
        "requestId": "ad2f6b05-1e5f-4768-b030-1809b6e5430a"
    }
}

05-認証用データを保存するDBの更新

認証用データを保存するDBを更新します。

リクエスト方法

POST Content-Type: application/json

リクエストアドレス

http://ip:port/api/v3/db/update

リクエストパラメータ

パラメータ名

必須

説明

db_id

string

YES

更新したいDBのID

db_name

string

YES

更新したいDBの名前

db_desc

string

NO

説明情報

レスポンス結果

パラメータ名

説明

request_id

string

ユニークリクエストID

code

int

システム返却値,正常の時に80000

message

string

システム返却メッセージ,正常の時に“OK”

dbid

string

DBのID

name

string

更新後のDB名,重複不可

description

string

更新後の説明情報

{
    "code": 200,
    "message": "OK",
    "desc": null,
    "data": {
        "code": 80000,
        "message": "OK",
        "result": {
            "dbId": "0d873e4a-c232-4698-902e-5573457d1000",
            "name": "liuchang",
            "description": "liuchang_test1"
        },
        "requestId": "74e2225e-8283-4c74-ac47-1e8748ce992b"
    }
}

06-認証用データの追加

DBに認証用データを追加します。各DBは最大5万人分の認証用データまで登録できます。

登録する写真は下記の条件に満たす必要があります:

  1. フォマット:JPG(JPEG),BMP,PNG,GIF,TIFF

  2. 幅と高さの両方は8px以上,4000px以下

  3. 写真サイズは5MB以下

リクエスト方法

POST Content-Type: application/json

リクエストアドレス

http://ip:port/api/v3/db/face/add

リクエストパラメータ

パラメータ名

必須

説明

db_id

string

YES

DBのID

faces

json

YES

認証用データのリスト。複数の認証用データを一括で登録可能です。

face_name

tring

NO

人の名前、重複可能。

image

String

YES

顔写真、base64データ

image_format

String

NO

顔写真の

threshold

Float

NO

顔写真に対する品質チェックの閾値、0〜1の間の値です。値が高いほど、品質チェックが厳しくなります。デフォルト値は0.9です。0の場合は品質チェックしません。

face_desc

String

NO

説明情報

{
    "dbId": "xxx",
    "faces": [{
            "face_name": "XXX1",
            "image": "XXX",
            "threshold": 0.1,
            "face_desc": "XXX"
        },
        {
            "face_name": "XXX1",
            "image": "XXX",
            "threshold": 0.1,
            "face_desc": "XXX"
        }
    ]
}

レスポンス結果

パラメータ名

説明

request_id

string

ユニークリクエストID

code

int

システム返却値,正常の時に80000

message

string

システム返却メッセージ,正常の時に“OK”

face_id

string

認証用データの一意のID。正常時のみ返却します。

{
    "code": 200,
    "message": "OK",
    "desc": null,
    "data": {
        "code": 80000,
        "message": "OK",
        "result": [
            {
                "code": 0,
                "message": "",
                "faceId": "0d873e4ac2324698902e5573457d10010000000000005b5c"
            },
            {
                "code": 0,
                "message": "",
                "faceId": "0d873e4ac2324698902e5573457d10010000000000005b5d"
            }
        ],
        "requestId": "68482793-d3c2-4086-abd2-11b81fc3c728"
    }
}

07-認証用データの削除

DBから特定の認証用データを削除します。

リクエスト方法

POST Content-Type: application/json

リクエストアドレス

http://ip:port/api/v3/db/face/delete

リクエストパラメータ

パラメータ名

必須

説明

db_id

string

YES

削除したい認証用データが保存されるDBのID

face_id

string

YES

認証用データの一意のID

レスポンス結果

パラメータ名

説明

request_id

string

ユニークリクエストID

code

int

システム返却値,正常の時に80000

message

string

システム返却メッセージ,正常の時に“OK”

result

string

システムレスポンス結果

{
    "code": 200,
    "message": "OK",
    "desc": null,
    "data": {
        "code": 80005,
        "message": "NOT_FOUND",
        "result": null,
        "requestId": "179bd42c-4612-4343-aecf-eec764935cf6"
    }
}

08-認証用データの取得

認証用データを取得します。

リクエスト方法

POST Content-Type: application/json

リクエストアドレス

http://ip:port/api/v3/db/face/info

リクエストパラメータ

パラメータ名

必須

説明

db_id

string

YES

検索したい認証用データが保存されるDBのID

face_id

string

YES

認証用データの一意のID

レスポンス結果

パラメータ名

説明

request_id

string

ユニークリクエストID

code

string

システム返却値,正常の時に80000

message

string

システム返却メッセージ,正常の時に“OK”

dbId

string

DBのid

faceId

string

認証用データの一意のID

faceName

string

該当する認証用データに登録された指名

faceDesc

string

説明

{
    "code": 200,
    "message": "OK",
    "desc": null,
    "data": {
        "code": 80000,
        "message": "OK",
        "result": {
            "response": {
                "code": 0,
                "message": "",
                "dbId": "0d873e4a-c232-4698-902e-5573457d1000",
                "faceId": "0d873e4ac2324698902e5573457d10010000000000005aee",
                "faceName": "test-mercury-api",
                "faceDesc": "nothing"
            }
        },
        "requestId": "a27b09b4-9b8c-43ac-a186-c63131926c25"
    }
}

対象の認証用データ(写真)を元に、DBから最も類似するTop Kのを検用索します。検索結果は、類似度の高い順に並べ替えられます。

リクエスト方法

POST Content-Type: application/json

リクエストアドレス

http://ip:port/api/v3/db/face/search

リクエストパラメータ

パラメータ名

必須

説明

db_ids

string[]

YES

検索したいDBのリストです。複数のDBの場合、”;”で分けます、最大は20個です。

top_k

int

YES

返却したい最も類似する認証用データの数です。デフォルトは1で、最大は20です。

image

string

YES

検索対象の顔写真、base64データ

threshold

float

NO

希望する類似度の閾値。デフォルトは0.9です。

注意事項:閾値は空ではない場合、閾値より大きな類似度の結果のみ返却します。例えば、条件に満たす結果の数はNの時、N=0なら、空の返却となります;N<top_kなら、全ての結果を返却します;N>=top_kなら、top_kの結果のみ返却します。

レスポンス結果

パラメータ名

説明

request_id

string

ユニークリクエストID

code

iInt

システム返却値,正常の時に80000

message

string

システム返却メッセージ,正常の時に“OK”

result

json

システムレスポンス結果

dbID

string

DBのID

faceID

String

認証用データの一意のID

score

String

類似度

{
    "code": 200,
    "message": "OK",
    "desc": null,
    "data": {
        "code": 80000,
        "message": "OK",
        "result": {
            "response": [
                {
                    "code": 5,
                    "message": "rpc error: code = NotFound desc = db not found",
                    "dbId": "",
                    "similarResults": []
                },
                {
                    "code": 0,
                    "message": "",
                    "dbId": "0d873e4a-c232-4698-902e-5573457d1000",
                    "similarResults": [
                        {
                            "faceId": "0d873e4ac2324698902e5573457d10010000000000005aee",
                            "score": 1.0
                        }
                    ]
                }
            ]
        },
        "requestId": "c88c6027-907e-4f69-8dc8-c750f6372d1f"
    }
}

最終更新