클라우드 인식 apis 소개
Api 전체 목록
- 타겟 이미지 생성하기
- 갤러리의 타겟 이미지 목록
- 단일 타겟 이미지 가져오기
- 이미지 인식 가능성 난이도 등급
- 기존 유사 타겟 이미지
- 타겟 이미지 삭제하기
- 타겟 이미지 속성 수정하기
- 이미지로 이미지 검색하기
- 상태 확인
Rest api 인터페이스 규약 및 인증 메커니즘
CRS API는 표준 HTTP REST 전송 표준을 준수합니다.
Http Header
Authorization: <APIKey에서 획득한 Token 입력>
Http 요청 매개변수는 두 가지 유형으로 분류됩니다:
공통 매개변수 (총체적으로 포함되며, 인증 방식에 따라 다르게 사용됨):
- appId
- timestamp (Long 정수형: 1970년 1월 1일 00:00:00 UTC 이후 경과된 밀리초)
- apiKey
- signature (요청 서명, token 방식 인증과 중복 사용 가능)
CRS API 매개변수: API 자체의 매개변수
API 문서에서는 인증용 공통 매개변수는 더 이상 설명하지 않습니다
Api key 인증
인증 방식은 두 가지로 구분됩니다:
Token 기반 인증
Http 헤더 Authorization에 Token을 포함하며, 공통 매개변수는:
- appId
서명 인증
Http 헤더 Authorization을 사용하지 않습니다.
공통 매개변수에 signature 서명 정보를 포함합니다. 모든 매개변수가 서명 계산에 포함됩니다(이미지 제외).
- appId
- timestamp
- apiKey
- signature
서명 계산의 상세 알고리즘 및 코드는 문서 API Key 서명 방법을 참고하세요.
사용 예시 및 속성 분석
Api 사용 예시
여기서 예시를 통해 - API 인터페이스를 호출하여 타겟 이미지를 생성하는 과정을 개발자에게 보여주며, CRS API 요청 절차를 살펴보고, 타겟 이미지의 속성 구조 및 인터페이스 입출력을 이해합니다.
운영 환경에서 타겟 이미지 생성 전에는 추가 검증이 필요하며, 구체적인 내용은 모범 사례를 참고하여 새로운 타겟 이미지를 생성하세요.
요청 예시
새로운 test-target.jpg 타겟 이미지 파일을 추가합니다. 타겟 이미지 생성 시 이미지 파일은 base64 인코딩되어야 합니다.
API 문서에서는 요청 매개변수에 대해 상세히 설명합니다. API —— 타겟 이미지 생성을 참고하며, 이미지 파일 base64 인코딩으로 API를 요청합니다.
POST /targets HTTP/1.1
Host:
Date: Mon, 1 Jan 2018 00:00:00 GMT
Content-Type: application/json
{
"image":"/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgM...",
"active":"1",
"name":"easyar",
"size":"5",
"meta":"496fbbabc2b38ecs3460a...",
"type":"ImageTarget",
"timestamp": 1514736000000,
"apiKey": "8b485c648c3056e79c2a85ee9b51f9dc",
"appId": "C:CN1:f9f903c36da8bd64d71d491077bba...",
"signature": "89985e2420899196db5bdf16b3c2ed0922c0c221"
}
응답 예시
HTTP/1.1 200 OK
Content-Type: application/json
{
"statusCode": 0,
"result": {
"targetId":"e61db301-e80f-4025-b822-9a00eb48d8d2",
"trackingImage":"/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgM...",
"name": "easyar",
"size": "5",
"meta": "496fbbabc2b38ecs3460a...",
"type": "ImageTarget",
"modified":1514735000000
"active":"1",
"trackableRate": 0,
"detectableRate": 0,
“detectableDistinctiveness”:0,
"detectableFeatureCount": 0,
"trackableDistinctiveness": 0,
"trackableFeatureCount": 0,
"trackableFeatureDistribution": 0,
"trackablePatchContrast": 0,
"trackablePatchAmbiguity": 0
},
"timestamp": 1514736000000
}
응답 형식
응답은 모두 통일된 형식을 사용합니다. 다음은 예시입니다:
{
"statusCode": 119,
"msg": "Parameter has errors",
"date": "2022-06-15T09:56:30.000Z",
"result": //statusCode가 0인 경우에만 result 존재, 오류 발생 시 결과 필드는 비어 있음
}
위 예시와 같이, 이는 정상적으로 반환된 타겟 이미지 상세 구조입니다. 하나의 타겟 이미지는 다음 속성을 포함합니다
| 속성 | 설명 |
|---|---|
| targetId | 타겟 이미지의 고유 Id |
| trackingImage | 처리된 그레이스케일 이미지의 base64 인코딩, 디바이스 측 이미지 트래킹에 사용 |
| name | 타겟 이미지 이름 |
| size | 이미지 크기, 앱에서 가상 콘텐츠 오버레이에 사용되는 실제 크기 |
| meta | 사용자 연관 데이터, 파일/텍스트/URL 가능, base64 인코딩 필요 |
| type | "ImageTarget" |
| active | 활성화된 타겟 이미지만 인식 가능, 비활성화 후에는 인식되지 않음 |
| trackableRate | 트래킹 난이도 점수, 낮을수록 우수 |
| detectableRate | 인식 종합 난이도 점수, 낮을수록 우수 |
| detectableDistinctiveness | 인식 구분 난이도 점수, 낮을수록 우수 |
| detectableFeatureCount | 인식 특징 측면 난이도 점수, 낮을수록 우수 |
| trackableDistinctiveness | 트래킹 구분 난이도 점수, 낮을수록 우수 |
| trackableFeatureCount | 트래킹 특징 측면 난이도 점수, 낮을수록 우수 |
| trackableFeatureDistribution | 트래킹 특징 분포 난이도 점수, 낮을수록 우수 |