YouCam API

[YouCam API] Playground로 AI Skin Analysis 체험하기 (12)

lseonhye 2026. 6. 29. 16:41

지난 글에서는 YouCam API를 사용하기 위한 API Key를 발급받았습니다.

이번에는 코드를 작성하지 않고 Playground를 이용해 AI Skin Analysis 기능을 직접 체험해보겠습니다.

Playground를 이용하면 브라우저에서 이미지를 업로드하고 AI 분석 결과를 바로 확인할 수 있어, API를 사용하기 전에 기능을 빠르게 테스트해보기 좋습니다.


Playground란?

Playground는 별도의 프로그램이나 코드를 작성하지 않아도 API를 직접 테스트할 수 있는 공간입니다.

API 요청(Request)과 응답(Response)을 한 화면에서 확인할 수 있기 때문에 실제 API가 어떻게 동작하는지 이해하는 데 많은 도움이 됩니다.

이번 글에서는 AI Skin Analysis 기능을 사용해보겠습니다.


AI Skin Analysis 선택하기

https://docs.perfectcorp.com/reference/ai_skin_analysis/section/overview/inputs-and-outputs
자세한 입력 형식과 지원되는 출력 정보는 공식 문서를 참고하시면 됩니다.

https://yce.perfectcorp.com/api-console/en/api-playground/ai-skin-analysis/
Playground 메뉴에서 AI Skin Analysis를 선택합니다.

화면에서는 다음과 같은 항목을 확인할 수 있습니다.

  • Authorization(API Key)
  • 이미지 업로드
  • 분석 옵션(Parameter)
  • 결과(Result)
  • Request / Response
  • 다양한 언어별 예제 코드

이미지 업로드하기

Playground에서는 URL을 입력하거나 이미지를 직접 업로드하여 테스트할 수 있습니다.

이번 글에서는 개인정보 보호를 위해
AI로 생성한 얼굴 이미지를 사용했습니다.

실제 사진을 사용해도 되지만,
블로그 공개용이라면 AI 생성 이미지를 사용하는 것도 좋은 방법입니다.

  • 생성 귀찮으신 분은 샘플 사진 사용하시면 돼요.

예시 이미지 생성


More details 들어가기

https://docs.perfectcorp.com/reference/ai_skin_analysis/section/overview/file-specs-and-errors

분석 이미지 형식을 확인합니다.

  • 저는 제미나이를 통해 동양인 여성 얼굴을 생성하였습니다.

  • 비교를 위해 깨끗한 피부, 트러블 피부 2개의 사진을 생성했습니다.

이미지를 생성하였으니
생성한 이미지로 분석을 진행하겠습니다.

다시 playground로 돌아가
Authorization의 api key를 선택해주고,


분석 할 사진을 업로드합니다.

  • 깨끗한 피부 먼저 분석 후 트러블 피부 분석 진행하겠습니다.

파라미터 선택하기

분석 할 피부 문제를 선택해줍니다.

저는 SD Skin Concern의 Pore, Acne 택해주었습니다.

  • Request
    {
    "src_file_id": "IOjg4utXEYfAYtgVTa6FwZQQnCPP9OrcqspsKGW79+8LbKfeLEmuXUa9yH4wuc2K",
    "dst_actions": [
      "acne",
      "pore"
    ],
    "miniserver_args": {
      "enable_mask_overlay": false
    },
    "format": "json",
    "pf_camera_kit": false
    }

💡 처음에는 아무 항목도 선택하지 않고 실행했다가 dst_actions cannot be empty 오류가 발생했습니다.
AI Skin Analysis는 최소 하나 이상의 피부 분석 항목(Skin Concern)을 선택해야 정상적으로 동작합니다.

💡 또한 HD Skin Concern과 SD Skin Concern은 함께 선택할 수 없습니다.
처음에는 HD Acne와 SD Pore를 같이 선택했다가 cannot mix HD and SD dst_actions 오류가 발생했습니다.
따라서 SD만 선택하거나 HD만 선택하여 분석을 진행해야 합니다.

이미지를 생성해서 분석을 하실 분들은 이미지 형식 먼저 참고하셔요

오류 (Error) 원인 해결 방법
dst_actions cannot be empty 분석 항목 미선택 Skin Concern 최소 1개 선택
cannot mix HD and SD dst_actions HD와 SD를 동시에 선택 둘 중 하나만 선택
error_src_face_too_small 얼굴이 너무 작음 얼굴이 크게 나온 사진 사용
error_below_min_image_size 이미지 해상도가 너무 작음 더 큰 해상도의 이미지 사용

분석 시작하기

  • format은 JSON으로 기본 세팅 그대로 진행했습니다.

이미지를 업로드한 후 Start Processing 버튼을 클릭합니다.

잠시 후 AI가 피부 상태를 분석하여 결과를 반환합니다.


분석 결과 확인하기

분석이 완료되면 오른쪽 Result 영역에서 결과를 확인할 수 있습니다.

또한 아래쪽에서는 실제 API 요청(Request)과 응답(Response)도 함께 확인할 수 있습니다.

깨끗한 피부

  • 결과

Response
{
  "status": 200,
  "data": {
    "error": null,
    "results": {
      "output": [
        {
          "ui_score": 70,
          "mask_urls": [
            "https://yce-us.s3-accelerate.amazonaws.com/ttl30/474135672152655019/113123504877/v2/aeMNNB0KmUIP8rnQ996tC5Q/f6541745-08d8-4df8-8188-a203c76dc4cd_pore_output.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20260629T071148Z&X-Amz-SignedHeaders=host&X-Amz-Expires=7200&X-Amz-Credential=AKIARB77EV5Y5D7DAE3S%2F20260629%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Signature=f8b039306a7b8282d37c7517ab1b7d2c0fee50bcaaee636ead6a1fa1e8132508"
          ],
          "raw_score": 54.863510608673096,
          "type": "pore",
          "url": null
        },
        {
          "ui_score": 99,
          "mask_urls": [
            "https://yce-us.s3-accelerate.amazonaws.com/ttl30/474135672152655019/113123504877/v2/aeMNNB0KmUIP8rnQ996tC5Q/f6541745-08d8-4df8-8188-a203c76dc4cd_acne_output.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20260629T071148Z&X-Amz-SignedHeaders=host&X-Amz-Expires=7200&X-Amz-Credential=AKIARB77EV5Y5D7DAE3S%2F20260629%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Signature=6bb1f82bd87fb39b44b831f7ad366ce8fc5846b5c05b3708db20c9811ad3ed0c"
          ],
          "raw_score": 100,
          "type": "acne",
          "url": null
        },
        {
          "score": 84.5,
          "type": "all",
          "url": null
        },
        {
          "score": 23,
          "type": "skin_age",
          "url": null
        },
        {
          "mask_urls": [
            "https://yce-us.s3-accelerate.amazonaws.com/ttl30/474135672152655019/113123504877/v2/aeMNNB0KmUIP8rnQ996tC5Q/f6541745-08d8-4df8-8188-a203c76dc4cd_resize_image.jpg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20260629T071148Z&X-Amz-SignedHeaders=host&X-Amz-Expires=7200&X-Amz-Credential=AKIARB77EV5Y5D7DAE3S%2F20260629%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Signature=dcc0f13cde4507bfd1163131b005d7a1a0d0fda28327d1fc882a769052c822d6"
          ],
          "type": "resize_image",
          "url": null
        }
      ]
    },
    "task_status": "success"
  }
}

깨끗한 피부 분석 결과

Response를 살펴보면 AI가 분석한 결과가 JSON 형태로 반환되는 것을 확인할 수 있습니다.

이번 예제에서는 pore와 acne 두 가지 항목을 선택하여 분석을 진행했습니다.

  • status: 200 : 요청이 정상적으로 처리되었음을 의미합니다.
  • task_status: success : AI 분석이 성공적으로 완료되었습니다.
  • output : 선택한 피부 분석 결과가 배열 형태로 반환됩니다.

각 항목에는 다음과 같은 정보가 포함됩니다.

  • type : 분석 항목 (pore, acne, all, skin_age 등)
  • ui_score : 화면에 표시하기 위한 점수
  • raw_score : AI가 계산한 실제 점수
  • mask_urls : 분석된 영역을 시각화한 마스크 이미지 URL

이번 결과에서는 다음과 같은 값을 확인할 수 있었습니다.

  • Acne : ui_score 99점
  • Pore : ui_score 70점
  • Overall Score(all) : 84.5점
  • Skin Age : 23세

트러블 피부


  • 결과

Response
{
  "status": 200,
  "data": {
    "error": null,
    "results": {
      "output": [
        {
          "ui_score": 73,
          "mask_urls": [
            "https://yce-us.s3-accelerate.amazonaws.com/ttl30/474135672152655019/113123678172/v2/aeMNNB0KmUIP8rnQ996tC5Q/1540dff3-57ba-42b4-91be-887feed76709_pore_output.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20260629T071441Z&X-Amz-SignedHeaders=host&X-Amz-Expires=7200&X-Amz-Credential=AKIARB77EV5Y5D7DAE3S%2F20260629%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Signature=049208b25302ed7b8e220808625f0d7e5dda13dc64c3c73ef8e82bb51a921e57"
          ],
          "raw_score": 62.467050671577454,
          "type": "pore",
          "url": null
        },
        {
          "ui_score": 69,
          "mask_urls": [
            "https://yce-us.s3-accelerate.amazonaws.com/ttl30/474135672152655019/113123678172/v2/aeMNNB0KmUIP8rnQ996tC5Q/1540dff3-57ba-42b4-91be-887feed76709_acne_output.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20260629T071441Z&X-Amz-SignedHeaders=host&X-Amz-Expires=7200&X-Amz-Credential=AKIARB77EV5Y5D7DAE3S%2F20260629%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Signature=eee127b0696e9d4c288ee9e4816ad4d983dfcda84a48b236bdb8f211d95a8fc0"
          ],
          "raw_score": 54.096180000000004,
          "type": "acne",
          "url": null
        },
        {
          "score": 71,
          "type": "all",
          "url": null
        },
        {
          "score": 27,
          "type": "skin_age",
          "url": null
        },
        {
          "mask_urls": [
            "https://yce-us.s3-accelerate.amazonaws.com/ttl30/474135672152655019/113123678172/v2/aeMNNB0KmUIP8rnQ996tC5Q/1540dff3-57ba-42b4-91be-887feed76709_resize_image.jpg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20260629T071441Z&X-Amz-SignedHeaders=host&X-Amz-Expires=7200&X-Amz-Credential=AKIARB77EV5Y5D7DAE3S%2F20260629%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Signature=1ee3db11c78e14943d7920efc9cc4a6e9d616714513513e147b1ae451e0aad34"
          ],
          "type": "resize_image",
          "url": null
        }
      ]
    },
    "task_status": "success"
  }
}


트러블 피부 분석 결과

Response를 살펴보면 이번에는 트러블 피부 이미지에 대한 분석 결과가 JSON 형태로 반환된 것을 확인할 수 있습니다.

비교를 위하여 이번에도 pore와 acne 두 가지 항목을 선택하여 분석을 진행했습니다.

  • status: 200 : 요청이 정상적으로 처리되었습니다.
  • task_status: success : AI 피부 분석이 성공적으로 완료되었습니다.
  • output : 선택한 피부 분석 결과가 배열 형태로 반환됩니다.

각 항목에는 다음과 같은 정보가 포함됩니다.

  • type : 분석 항목 (pore, acne, all, skin_age 등)
  • ui_score : 사용자에게 표시되는 점수
  • raw_score : AI가 계산한 실제 분석 점수
  • mask_urls : 해당 피부 문제를 시각화한 마스크 이미지 URL

이번 분석 결과에서는 다음과 같은 값을 확인할 수 있었습니다.

  • Acne : ui_score 69점
  • Pore : ui_score 73점
  • Overall Score(all) : 71점
  • Skin Age : 27세

앞서 분석했던 깨끗한 피부 이미지와 비교해보면 Overall Score는 84.5점에서 71점으로 낮아졌고, Skin Age는 23세에서 27세로 높아졌습니다. 또한 Acne 점수도 99점에서 69점으로 크게 감소한 것을 확인할 수 있습니다.

AI가 이미지 속 피부 상태를 분석하여 피부 컨디션에 따라 서로 다른 결과를 반환하는 것을 확인할 수 있었으며, Playground를 통해 이러한 분석 결과를 코드 작성 없이도 손쉽게 테스트할 수 있었습니다.


깨끗한 피부 vs 트러블 피부 비교

동일한 분석 항목(Pore, Acne)을 선택하여 깨끗한 피부 이미지트러블 피부 이미지를 각각 분석해보았습니다.

항목 깨끗한 피부 트러블 피부
Overall Score 84.5 71
Skin Age 23세 27세
Acne 99점 69점
Pore 70점 73점

분석 결과를 비교해보면 차이를 확인할 수 있습니다.

  • Overall Score는 84.5점에서 71점으로 감소했습니다.
  • Skin Age는 23세에서 27세로 높게 분석되었습니다.
  • Acne는 99점에서 69점으로 크게 낮아져 트러블 피부를 반영하는 모습을 확인할 수 있었습니다.
  • Pore는 70점과 73점으로 큰 차이는 없었으며, 이미지에 따라 모공 상태는 상대적으로 비슷하게 분석되었습니다.

이번 실습은 AI로 생성한 이미지를 이용한 테스트이므로 실제 사람의 피부 상태를 정확하게 판단하는 결과는 아닙니다. 다만, 서로 다른 피부 상태를 가진 이미지를 입력했을 때 AI가 각 특징을 구분하여 서로 다른 분석 결과를 반환하는 것을 확인할 수 있었습니다.

Playground를 이용하면 이러한 결과를 코드 작성 없이 바로 확인할 수 있으며, API를 프로젝트에 연동하기 전에 동작 방식을 이해하는 데 큰 도움이 됩니다.


Request와 Response 살펴보기

Playground에서는 AI 분석 결과뿐만 아니라 실제 API 통신 내용도 확인할 수 있습니다.

예를 들어 Request에서는 어떤 데이터를 서버로 전송했는지 확인할 수 있으며,

Response에서는 AI가 분석한 결과를 JSON 형태로 반환하는 것을 볼 수 있습니다.

개발자는 이 JSON 데이터를 이용하여 원하는 화면이나 기능을 구현하게 됩니다.


마무리

Playground를 사용하면
코드를 작성하지 않아도 API의 동작 방식과
Request, Response 구조를 쉽게 이해할 수 있었습니다.

API를 처음 접하는 분이라면
실제 개발에 들어가기 전에 Playground를 먼저 사용해보는 것을 추천드립니다.