이매진 개요
이매진은 시간이 많이 소요되는 사진 포스트 프로덕션 작업의 효율성을 획기적으로 높여주는 전문가용 AI 기반 솔루션입니다.
어떤 방식으로 작동하나요?
사진작가가 직접 퍼스널 AI 프로필을 만들거나 인재 또는 이매진 AI 프로필을 선택합니다. 그런 후 이매진에 사진을 업로드합니다. 수작업으로 많은 시간이 소요되는 사진 편집 작업을 이매진이 AI 프로필을 활용해 순식간에 처리합니다. 마지막으로 사진을 내보내기하여 고객에게 제출합니다.
이매진 API는 이매진 앱과 유사한 방식으로 사진작가의 포스트 프로덕션 편집 워크플로를 간소화하고 자동화합니다. 이 문서에서는 호출 흐름과 호출해야 하는 엔드포인트에 대해 설명합니다.
이매진 API를 사용할 때 주요 단계는 다음과 같습니다.
- AI 프로필 선택 – 이매진 API로 편집 시 사용할 AI 프로필을 찾으려면 AI 프로필을 사용해 보세요.
- 편집을 위해 업로드하기 전에 사진을 컬링하세요. 컬링은 이매진 API의 일부가 아닙니다.
- 사진 편집하기 – AI 프로필 및 AI 도구를 사용하여 사진을 편집하려면 AWS에 있는 이매진의 S3 버킷에 사진을 업로드하세요.
- 제출용 사진 내보내기 – 프로젝트의 편집 사진을 JPEG 파일 형식으로 내보냅니다. 이 단계는 필수 사항이 아닙니다. 일부 회사는 자체 편집 소프트웨어를 사용하여 편집본을 미세 조정한 후 사진을 내보내는 것을 선호합니다.
시작하기 전
전제 조건
이매진 API를 사용하려면 먼저 이매진에 가입해야 합니다. 그런 다음 이매진 고객 성공팀에 이메일을 보내 API 키를 요청합니다. 이메일에 이매진에 가입 시 사용한 이메일 주소를 포함하세요.
이매진 기본 URL
이매진 API의 기본 URL은 https://api-beta.imagen-ai.com/v1/입니다.
참조 API 문서
이매진 API에 대한 참조 API 문서는 다음과 같습니다.
인증
이매진 API는 인증에 API 키를 사용합니다. 텍스트 형식으로 요청에 헤더로 추가합니다. 헤더 이름은 x-api-key입니다.
예시:
curl --location ‘https://api-beta.imagen-ai.com/v1/profiles/’ \
--header ‘x-api-key: ’ \
--header ‘Content-Type: application/json’
사진 편집을 위해 지원되는 파일 형식
이매진 API는 사진 편집을 위해 다음 파일 형식을 지원합니다.
- RAW: NEF, CR2, CR3, ARW, NRW, CRW, SRF, SR2, ORF, RW2, RAF, PTX, PEF, RWL, SRW, 3FR, FFF
- DNG
- JPEG
AI 프로필 선택
AI 프로필은 사진 작가의 편집 스타일을 예측하고 그에 따라 사진을 편집합니다. 이매진에서는 다양한 AI 프로필을 무료로 제공합니다. 또는 사용자가 자신의 사진을 사용해 직접 프로필을 만들 수도 있습니다.
편집하려는 사진과 호환되는 AI 프로필을 선택합니다. 파일 형식과 내 사진의 편집 스타일이 매칭되는지 확인하세요. 그런 다음 /profiles/ 엔드포인트를 호출하여 사용 가능한 모든 프로필 목록을 가져옵니다. 응답에서 사용하려는 profile_key를 찾습니다.
-
온라인에서 사진을 편집하여 원하는 AI 프로필을 선택합니다. RAW 사진은 최대 10장까지 업로드할 수 있으며 결과를 빠르게 얻을 수 있습니다. 마음에 드는 프로필이 없다면, 이매진 앱을 사용하여 퍼스널 AI 프로필을 만듭니다.
- AI 프로필 목록 및 해당 키를 가져옵니다.
https://api-beta.imagen-ai.com/v1/profiles/을 GET 요청을 보내 사진 편집에 사용할 수 있는 AI 프로필 목록을 받습니다.
응답에는 사용자가 이매진 앱으로 만든 퍼스널 AI 프로필과 사용 가능한 모든 인재 및 이매진 AI 프로필이 포함됩니다. 각 AI 프로필에는 이를 식별하는 profile_key가 있습니다. 프로젝트에서 사진을 편집할 때는 이 profile_key가 필요합니다.
사용 가능한 AI 프로필 샘플이 포함된 응답 예시
{
"data": {
"profiles": [
{
"profile_key": <퍼스널 AI 프로필의 프로필 키>,
"profile_name": "wedding",
"profile_type": "Personal",
"image_type": "RAW"
},
{
"profile_key": 14715,
"profile_name": "LOVE & LIGHT",
"profile_type": "Talent",
"image_type": "RAW"
},
{
"profile_key": 163322,
"profile_name": "ELEGANT HOME",
"profile_type": "Talent",
"image_type": "RAW"
}
]
}
}
편집 기능을 개선할 AI 도구 선택하기
AI 도구는 프로젝트에서 사진 편집 역량을 개선하는 추가 AI 기반 사진 처리 기능을 제공합니다. 필요에 따라 AI 도구를 조합하여 사용할 수 있습니다. 일부 AI 도구는 서로 배타적이므로 둘 중 하나만 선택해 사용해야 합니다. 그밖에 건물/인테리어이나 스포츠와 같은 특정 사진 유형에 특화된 AI 도구가 있습니다.
이 섹션에서는 AI 도구 선택 방법을 설명드리겠습니다. 프로세스 후반부에서 여러분은 편집 요청에 AI 도구를 추가하게 됩니다.
이매진 AI 도구
AI 도구 매개변수 | 설명 |
---|---|
자르기 | 다양한 유형의 사진에 활용하기에 최적의 구도인 2x3 종횡비로 자르세요. 이 기능은 headshot_crop 또는 portrait_crop 기능과 함께 사용할 수 없습니다. |
headshot_crop | 연감과 전문적인 증명 사진에 적합하도록 모든 얼굴 사진을 정렬하고 크기를 일관되게 조정합니다. 사진에서 피사체에 중심을 두고 인물의 눈을 동일한 수평선에 맞춥니다. 이 기능은 자르기 또는 portrait_crop 기능과 함께 사용할 수 없습니다. |
hdr_merge | 노출 정도가 다른 여러 장의 사진을 하나의 이미지로 결합함으로써, 실내 사진과 실외 사진의 노출이 둘 다 적절하게 나타나도록 합니다. HDR 병합 기능은 주로 건물/인테리어 사진 편집에 사용됩니다. 요건은 HDR 병합을 참조하세요. |
perspective_correction | 건물/인테리어 사진에서 광각 렌즈나 불완전한 촬영 각도로 인해 왜곡된 부분을 보정하여 수직 및 수평선이 일직선이 되도록 조정합니다. 이 기능은 직선화 기능과 함께 사용할 수 없습니다. |
portrait_crop | 각 사진의 주요 피사체를 중앙에 배치한 다음 4x5의 종횡비로 자릅니다. 인물 머리 위에 최적의 공간을 유지하고 기타 주요 디테일을 살립니다. 학교 및 스포츠 관련 장면뿐 아니라 인물 사진 및 스튜디오 촬영에도 추천합니다. 이 기능은 자르기 또는 headshot_crop 기능과 함께 사용할 수 없습니다. |
직선화 | 각 사진을 지평선을 따라 회전시킵니다. 이 기능은 perspective_correction 기능과 함께 사용할 수 없습니다. |
subject_mask | 라이트룸과 유사한 방식으로 사진의 주요 피사체를 선택하고 브러시를 사용하여 마스크를 적용한 다음 해당 마스크에 로컬 AI 편집을 적용합니다. |
smooth_skin | 잔주름과 잡티 등 피부 결점이 눈에 잘 띄지 않게 하여 피부결이 더 부드럽고 시각적으로 매력적으로 보이도록 보정합니다. |
상호 배타적인 AI 도구
일부 유사한 AI 도구는 상호 배타적입니다. 둘 중 하나만 선택 가능:
- 자르기, headshot_crop 또는 portrait_crop
- perspective_correction 또는 straighten.
다양한 사진 유형을 위한 AI 도구
건물/인테리어
건물/인테리어 사진의 경우, hdr_merge 및 perspective_correction 기능을 사용해 보세요. 직선화 AI 도구를 사용하지 않도록 주의하세요.
학교 및 스포츠
학교 및 스포츠 관련 사진의 경우, portrait_crop을 사용해 보세요.
모든 유형용 일반 도구
대부분의 사진 유형에 적합한 일반 AI 도구입니다.
- 자르기
- 직선화
- subject_mask
- smooth_skin
사진 편집
1. 프로젝트 만들기
프로젝트를 만들려면 https://api-beta.imagen-ai.com/v1/projects/로 POST 요청을 보냅니다.
촬영마다 별도의 프로젝트를 만드시기를 권장해 드립니다. 프로젝트는 사진 편집을 위해 선택한 AI 프로필로 사진을 정리합니다. 응답은 이 프로젝트를 식별하는 데 사용되는 project_uuid입니다. 사진을 JPEG로 내보낼 때까지 이 project_uuid를 사용하세요.
응답 예시
{
"data": {
"project_uuid": ""
}
}
2. 사진을 업로드할 임시 업로드 링크 받기
https://api-beta.imagen-ai.com/v1/projects//get_temporary_upload_links로 POST 요청을 보냅니다.
요청의 files_list 매개변수에 업로드할 사진의 파일 이름을 포함하세요. 목록 형식을 사용하세요.
응답에는 AWS의 이매진 S3 버킷으로 연결되는 임시 링크가 각 사진별로 포함되어 있습니다. 이 링크는 AWS가 사전에 지정한 URL입니다.
요청 예시
curl --location ‘https://api.dev.imagen-ai.com/v1/projects//get_temporary_upload_links’ \
--header ‘x-api-key: ’ \
--header ‘Content-Type: application/json’ \
--data ‘{
“files_list”: [
{“file_name”: “922A4846.CR2”},
{“file_name”: “922A4832.CR2”},
{“file_name”: “922A4818.CR2”},
{“file_name”: “922A4809.CR2”}
]
}’
응답 예시
{
"data": {
"files_list": [
{
"file_name": "922A4846.raw",
"upload_link": ""
},
{
"file_name": "922A4832.raw",
"upload_link": ""
},
{
"file_name": "922A4818.raw",
"upload_link": ""
},
{
"file_name": "922A4809.raw",
"upload_link": ""
}
]
}
}
3. 각 사진을 임시 업로드 링크에 업로드하기
이전 단계의 응답에서 임시 업로드 링크를 사용하여 AWS에 있는 이매진의 S3 버킷에 사진을 업로드하세요. 원하는 방법을 사용하세요.
지정된 URL이 있는 파일 업로드에 대한 자세한 내용은 AWS 설명서의 가이드를 참조하세요.
Postman에서 테스트
- 헤더에서 Content-Type을 삭제합니다.
- 매개변수 탭에서 빈 문자열("")을 값으로 사용하여 Content-Type이라는 새 매개변수를 추가합니다.
헤더 요건 요청
임시 업로드 링크 요청의 files_list 매개변수에 md5가 포함된 경우, 요청 헤더에 MD5를 포함시켜 사진을 업로드해야 합니다. 파이썬의 샘플 코드는 Github의 이매진 API 프로젝트에서 api_client.py를 참조하세요.
본문 요건 요청
요청 본문에서 빈 문자열(“”)을 값으로 하는 쿼리 매개변수로 Content-Type을 추가합니다.
4. 편집 시작하기
선택한 AI 프로필로 편집을 시작하려면, https://api-beta.imagen-ai.com/v1/projects//edit로 POST 요청을 보내세요.
요청 본문에 다음을 포함하세요.
- 사용하려는 AI 프로필의 프로필 키
- 프로젝트를 위한 AI 도구
- 사진 유형(선택 사항)
- 콜백 URL(선택 사항)
요청 본문 예시
{
"profile_key": ,
"hdr_merge": true,
"photography_type": "NO_TYPE",
"callback_url": "string",
"perspective_correction": true
}
응답은 프로젝트가 성공적으로 편집되었다는 메시지입니다. 오류가 있는 경우 고객성공팀으로 이메일을 보내주세요.
프로필 키
profile_key는 프로젝트 편집에 사용하는 AI 프로필의 식별자입니다. 정수 형식을 사용하세요. AI 프로필 선택에서 응답을 확인하여 profile_key를가져옵니다.
AI 도구
AI 도구는 프로젝트에서 사진을 편집할 때 추가할 수 있는 추가적인 AI 기반 사진 처리 도구입니다.
사진 유형
photography_type은 프로젝트의 사진 촬영 유형을 나타냅니다. 이 매개변수는 선택 사항입니다.
photography_type 값:
- 결혼식
- REAL_ESTATE
- 학교
- 스포츠
- 이벤트
- 인물 사진
- NO_TYPE
- 기타
- LANDSCAPE_NATURE
- FAMILY_NEWBORN
- 바디프로필
콜백 URL
callback_url은 이매진이 API에 상태 메시지를 보내는 데 사용할 수 있는 POST 엔드포인트입니다. 이 매개변수는 선택 사항입니다. 이를 사용하는 경우, 편집 상태를 확인할 필요가 없습니다. 이 엔드포인트는 반드시 이매진에 열려 있어야 합니다.
요청으로 전송할 수 있는 상태:
- 실패: 고객 성공팀으로 이메일을 보내시기 바랍니다.
-
완료: 이매진 API가 사진 편집을 완료했습니다. 다음 중 하나로 계속 진행하세요.
-
편집한 사진을 다운로드할 수 있는 임시 다운로드 링크를 받아 이용하시는 편집 소프트웨어로 사진을 미세 조정하고 내보낼 수 있습니다.
또는 - 제출용 사진 내보내기를 통해 고객용으로 내보내기한 JPEG 파일를 생성합니다.
-
편집한 사진을 다운로드할 수 있는 임시 다운로드 링크를 받아 이용하시는 편집 소프트웨어로 사진을 미세 조정하고 내보낼 수 있습니다.
응답 예시
{“project_uuid”: “”, “status”: “Failed/Completed”, “action”: “edit/export”“}
5. 편집 상태 확인
https://api-beta.imagen-ai.com/v1/projects//edit/status로 GET 요청을 보내 편집 프로세스의 현재 상태를 확인합니다. 상태가 완료될 때까지 긴 폴링으로 이 엔드포인트를 계속 호출합니다.
이 상태 확인을 우회하려면, /projects//edit/ 요청에 callback_url 요청을 포함하세요. 자세한 내용은 콜백 URL에서 확인하세요.
응답 상태 예시:
- 대기 중: 편집 프로세스가 시작되지 않았습니다. 편집이 시작되면, 상태가 진행 중으로 변경됩니다.
- 진행 중: 이매진 API가 사진을 편집하는 중입니다.
- 실패: 고객 성공팀으로 이메일을 보내시기 바랍니다.
-
완료: 이매진 API가 사진 편집을 완료했습니다. 다음 중 하나로 계속 진행하세요.
-
편집한 사진을 다운로드할 수 있는 임시 다운로드 링크를 받아 이용하시는 편집 소프트웨어로 사진을 미세 조정하고 내보낼 수 있습니다.
또는 - 제출용 사진 내보내기를 통해 고객용으로 내보내기한 JPEG 파일를 생성합니다.
-
편집한 사진을 다운로드할 수 있는 임시 다운로드 링크를 받아 이용하시는 편집 소프트웨어로 사진을 미세 조정하고 내보낼 수 있습니다.
6. 편집한 사진을 다운로드할 수 있는 임시 다운로드 링크 받기
완료 상태를 수신한 후, https://api-beta.imagen-ai.com/v1/projects//edit/get_temporary_download_link로 GET 요청을 보냅니다.
요청에서 files_list 매개변수에 다운로드할 사진을 포함하세요. 목록 형식을 사용하세요.
응답에는 AWS의 이매진 S3 버킷으로 연결되는 임시 링크가 각 사진별로 포함되어 있습니다. 이 링크는 AWS가 사전에 지정한 URL입니다.
응답 예시
{
"data": {
"files_list": [
{
"file_name": "922A4846.DNG",
"upload_link": ""
},
{
"file_name": "922A4832.DNG",
"upload_link": ""
},
{
"file_name": "922A4818.DNG",
"upload_link": ""
},
{
"file_name": "922A4809.DNG",
"upload_link": ""
}
]
}
}
7. 로컬에서 사진 다운로드
이매진이 편집한 파일을 반환할 때, 각 형식은 다음과 같습니다.
편집 전 파일 형식 | 편집 후 반환된 파일 형식 |
RAW |
XMP 참고: HDR 병합으로 사진을 편집할 때, 편집 전 파일 형식이 RAW라도 반환된 형식은 항상 DNG가 됩니다. |
DNG | 임베디드 XMP가 있는 DNG |
JPEG | 임베디드 XMP가 포함된 JPEG |
이전 단계의 응답에서 임시 다운로드 링크를 사용하여 AWS에 있는 이매진의 S3 버킷에서 사진을 다운로드하세요. 원하는 방법을 사용하세요. 파이썬의 샘플 코드는 Github의 이매진 API 프로젝트에서 api_client.py를 참조하세요.
AWS에서 파일 다운로드에 대한 자세한 내용은 AWS 설명서의 가이드를 참조하세요.
제출할 사진 내보내기
이매진 API는 프로젝트의 모든 사진을 JPEG 형식으로 내보냅니다. 이는 선택 사항입니다. 일부 사진작가는 본인의 편집 소프트웨어를 사용하여 편집본을 미세 조정한 후 내보냅니다. 사진을 내보낸 후 납품하거나 갤러리에 업로드합니다.
1. 프로젝트에서 사진 내보내기
https://api-beta.imagen-ai.com/v1/projects//export로 POST 요청을 보냅니다. 응답에는 project_uuid와 내보내기 성공 메시지가 포함됩니다. 오류가 있는 경우 고객성공팀에 이메일을 보내주시기 바랍니다.
2. 내보내기 상태 확인
https://api-beta.imagen-ai.com/v1/projects//export/status로 GET 요청을 보냅니다. 응답에는 내보내기 상태가 포함됩니다. 가능한 상태 예시:
- 진행 중: 이매진 API가 사진을 편집하는 중입니다.
- 실패: 고객 성공팀에 이메일을 보내시기 바랍니다.
-
완료: 이매진 API가 JPEG 파일로 사진 내보내기를 완료했습니다.
3. 내보낸 JPEG 사진 다운로드하기
내보낸 JPEG 사진을 다운로드하기 위한 임시 다운로드 링크 받기
내보내기 상태가 완료로 반환되면, https://api-beta.imagen-ai.com/v1/projects//export/get_temporary_download_links로 GET 요청을 보냅니다.
요청에서 files_list 매개변수에 다운로드할 내보낸 사진을 포함하세요. 목록 형식을 사용하세요.
응답에는 AWS의 이매진 S3 버킷으로 연결되는 임시 링크가 각 사진별로 포함되어 있습니다. 이 링크는 AWS가 사전에 지정한 URL입니다.
응답 예시
{
"data": {
"files_list": [
{
"file_name": "922A4846.JPG",
"upload_link": ""
},
{
"file_name": "922A4832.JPG",
"upload_link": ""
},
{
"file_name": "922A4818.JPG",
"upload_link": ""
},
{
"file_name": "922A4809.JPG",
"upload_link": ""
}
]
}
}
내보낸 JPEG 사진을 로컬로 다운로드하기
이전 단계의 응답에서 임시 다운로드 링크를 사용하여 AWS에 있는 이매진의 S3 버킷에서 사진을 다운로드하세요. 원하는 방법을 사용하세요. 파이썬의 샘플 코드는 Github의 이매진 API 프로젝트에서 api_client.py를 참조하세요.
AWS에서 파일 다운로드에 대한 자세한 내용은 AWS 설명서의 가이드를 참조하세요.