본문으로 건너뛰기

Head Swap은 SpicyAPI의 이미지 머리 교체입니다. 대상 이미지의 머리 전체를 헤어스타일·머리색·실루엣까지 레퍼런스 사진의 머리로 바꾸고 몸·의상·포즈·배경은 그대로입니다. URL 두 개와 선택 seed를 보냅니다.

최저가 $0.013/장

플레이그라운드

입력

이미지 편집
1/1

파일이나 미디어 링크를 끌어오거나 붙여넣기 또는 선택 · 파일 1개 · 개당 최대 10 MB · JPG · PNG · WEBP

  • 1
파일 1 / 1개
바뀌는 이미지입니다. 이 이미지의 몸과 의상, 포즈, 조명, 배경은 보존되고 목 위로는 전부 교체됩니다.JPEG, PNG, WebP를 받습니다. AVIF는 쓸 수 없습니다. 컨테이너 형식이 동영상과 같아서 입력 검사가 동영상 콘텐츠로 판단해 거부하며, HEIC 등 다른 ISOBMFF 파일도 같게 동작할 가능성이 높습니다. JPEG나 PNG로 변환해 사용하세요. 1자 이상
1/1

파일이나 미디어 링크를 끌어오거나 붙여넣기 또는 선택 · 파일 1개 · 개당 최대 10 MB · JPG · PNG · WEBP

  • 1
파일 1 / 1개
머리 전체를 주는 이미지입니다. 형태와 헤어스타일, 머리색까지 포함합니다. 대상과 비슷한 방향에서 빛을 받고 비슷한 각도로 있는 사진을 고르세요.JPEG, PNG, WebP를 받습니다. AVIF는 쓸 수 없습니다. 컨테이너 형식이 동영상과 같아서 입력 검사가 동영상 콘텐츠로 판단해 거부하며, HEIC 등 다른 ISOBMFF 파일도 같게 동작할 가능성이 높습니다. JPEG나 PNG로 변환해 사용하세요. 1자 이상
시드
같은 seed를 다시 쓰면 같은 이미지 쌍에서 돌린 두 실행을 같은 뽑기 위에서 견줄 수 있습니다. 비워 두거나 0으로 두면 매번 무작위로 뽑습니다. 비교를 위한 값이지 똑같은 결과를 보장하지는 않습니다. 0 이상 · 2147483647 이하
안전 검사꺼짐

SpicyAPI는 이 모델에 안전 검사를 적용하지 않습니다. 프롬프트와 소재는 작성한 그대로 모델에 전달되며, 결과는 모델 자체가 결정합니다.

제출과 가격 계산을 열기 전에 계정을 확인하고 있습니다.

출력

실행 대기
silver-hair-onto-armor샘플 결과

관련 모델과 다음 단계

찾는 모델이 없나요?

필요한 모델과 쓰려는 목적을 알려 주세요. 다음에 무엇을 추가할지 정하는 팀에 바로 전달됩니다.

이미지 URL 두 개로 머리 전체를 교체, 프롬프트 없음

Head Swap API는 대상 이미지(image_url)와 참조 인물의 머리 사진(reference_image_url)을 입력받아, 대상 이미지에서 얼굴과 헤어스타일, 머리색, 두개골 형태까지 머리 전체를 참조 이미지로 교체한 결과를 반환합니다. 목 아래는 대상 이미지 그대로 유지됩니다. 프롬프트 필드도 마스크도 없으며, 결과를 좌우하는 입력은 이미지 두 장과 선택 항목인 seed뿐입니다.

플레이그라운드 열기
이미지 URL 두 개로 머리 전체를 교체, 프롬프트 없음
필수 입력
image_url(대상)과 reference_image_url(참조 머리)
선택 입력
seed, 정수 0~2,147,483,647, 0이거나 생략하면 무작위로 뽑음
지원 형식
두 이미지 필드 모두 JPEG, PNG, WebP 지원
프롬프트 또는 마스크
이 엔드포인트 스키마에는 둘 다 존재하지 않음
작업 제한 시간
최종 상태에 도달하기까지 1,800초
콘텐츠 정책
무검열: 이 엔드포인트에는 플랫폼 콘텐츠 필터가 없음
범위
얼굴만이 아니라 머리 전체가 움직인다헤어스타일과 머리색, 두개골 형태가 얼굴 특징과 함께 전이됩니다. 얼굴만 바꾸는 스왑과 이 엔드포인트를 가르는 지점이 바로 이 부분입니다.
스키마
이미지 두 장과 선택적 seed, 그게 전부additionalProperties는 false이고 스키마에는 정확히 세 필드만 있습니다. 그러니 문구를 다듬을 프롬프트도, 조절할 강도 다이얼도 없습니다.
실패 지점
목은 스왑이 성립하는지 깨지는지가 갈리는 자리두 원본 이미지 사이의 조명 방향, 피부톤, 머리 각도가 이음새를 한 장의 사진처럼 읽히게 할지 결정합니다.

Head Swap API는 무엇을 잘하나

머리카락, 색, 머리 형태가 얼굴과 함께 옮겨간다

머리카락, 색, 머리 형태가 얼굴과 함께 옮겨간다

image_url은 유지되는 몸을 제공합니다. 의상, 포즈, 조명, 배경입니다. reference_image_url은 목 위 전부를 채워 넣습니다. 헤어스타일과 머리색도 얼굴과 함께 넘어옵니다. 인물이 완전히 다른 프레임으로 옮겨가면서도 참조 이미지 본연의 머리를 그대로 유지할 수 있습니다.

다듬거나 가릴 것이 없다

다듬거나 가릴 것이 없다

요청 본문에는 정확히 세 필드만 있습니다. image_url, reference_image_url, 선택적 seed입니다. 문구를 다듬을 프롬프트도 영역을 지정할 마스크도 없으므로, 좋은 결과를 만드는 작업은 전적으로 두 장의 사진을 고르는 데 달려 있습니다. 다른 엔드포인트에서 복사해 온 낯선 키는 조용히 무시되는 대신 검증에서 걸립니다.

  • seed는 실행을 비교할 뿐 고정하지는 않는다

    같은 이미지 쌍에 같은 seed를 넘기면 두 호출이 같은 뽑기 결과에 묶이므로, 조명이나 각도를 바꿨을 때 그 차이를 읽어낼 수 있습니다. 그렇다고 동일한 출력이 보장되지는 않으며, 0이거나 생략된 seed는 호출마다 새로 뽑습니다.

  • 호출 한 번에 머리 하나, 출력 하나

    이 엔드포인트는 각 이미지에 명확히 보이는 머리가 하나만 있다고 가정합니다. 요청 하나는 출력 이미지 한 장을 반환하며 생성된 이미지 단위로 과금되고, 한 번의 호출로 여러 버전을 뽑는 배치 필드는 없습니다. seed나 참조 사진을 바꾸려면 각각 별도의 요청이 필요합니다.

  • 이미지를 넘기는 세 가지 방법

    image_url과 reference_image_url은 요청에 첨부하는 파일 파트가 아니라 문자열입니다. 각각 공개 HTTPS 주소, 플랫폼이 직접 업로드 후 반환하는 spicy:// 파일 URI, 작은 파일이면 Base64 데이터 URI를 받으므로 로컬 사진을 공개 호스트에 올리지 않고도 사용할 수 있습니다.

  • 고정된 제한 시간을 가진 비동기 작업

    호출 한 번이 작업을 하나 생성합니다. 제출하고 반환된 작업 ID를 보관한 뒤 상태가 확정될 때까지 폴링하고, 플랫폼 저장소에서 출력 이미지를 읽어옵니다. 작업은 최종 상태에 도달하기까지 1,800초의 제한 시간을 가지며 이를 넘기면 타임아웃으로 처리되므로, 예상 소요 시간이 아니라 이 제한 시간을 기준으로 폴링 루프를 짜야 합니다.

Head Swap API는 누구를 위한 것인가

  • 촬영 원판 하나에 버전마다 다른 모델

    캠페인·카탈로그 팀

    촬영 원판 하나에 버전마다 다른 모델

    승인받은 사진 한 장을 image_url에 고정해 두고, 각 버전마다 허가된 모델의 사진을 reference_image_url에 넣어 버전당 작업 하나씩 처리합니다. 두 호출 사이에 바뀐 것은 참조 머리뿐이므로 의상, 포즈, 세트, 색보정은 전체 세트에서 동일하게 유지됩니다.

  • 같은 촬영의 다른 프레임에서 머리를 가져온다

    리터치·컨티뉴이티

    같은 촬영의 다른 프레임에서 머리를 가져온다

    스키마는 두 이미지가 서로 다른 인물을 보여줘야 한다고 요구하지 않으므로, 몸과 조명이 가장 좋은 프레임을 image_url에, 같은 인물의 다른 테이크를 참조 머리로 쓸 수 있습니다. 신원은 그대로 유지되고 포즈는 원본을 그대로 따라갑니다.

  • 생성한 머리와 촬영한 몸을 조합한다

    합성 아이덴티티 작업

    생성한 머리와 촬영한 몸을 조합한다

    reference_image_url은 엔드포인트가 가져올 수 있는 이미지이기만 하면 되므로, 생성된 인물 사진도 유효한 참조 이미지입니다. 반복적으로 쓰는 합성 캐릭터가 촬영된 세트의 포즈, 의상, 조명, 배경을 한 번의 호출로 그대로 입을 수 있습니다.

  • 필드 두 개짜리 호출은 어떤 이미지 워크플로에도 들어간다

    파이프라인 엔지니어

    필드 두 개짜리 호출은 어떤 이미지 워크플로에도 들어간다

    스키마가 필수 이미지 필드 두 개와 선택적 seed로만 구성되어 있으므로, 이 엔드포인트는 렌더링, 촬영 사진, 다른 편집기의 출력 등 어떤 이미지 소스 뒤에도 이어 붙일 수 있습니다. 각 이미지가 HTTPS 주소, 업로드된 파일 URI, 인라인 데이터 URI 중 하나로만 도착하면 됩니다.

Head Swap API 쓰는 방법

  1. 두 이미지 모두 엔드포인트가 읽을 수 있는 주소로 준비합니다

    image_url과 reference_image_url은 문자열을 받으므로, 각 이미지는 공개 HTTPS 링크, 플랫폼 업로드 플로우가 반환하는 spicy:// 파일 URI, 또는 파일이 작을 때는 인라인 데이터 URI로 전달합니다. 두 필드 모두 JPEG, PNG, WebP를 지원합니다.

  2. 두 사진의 조명과 각도를 맞춥니다

    image_url과 비슷한 방향에서 비추고 비슷한 각도로 촬영된 reference_image_url을 고르세요. 목 이음새는 이 일치 여부로 판단되며, 불일치가 눈에 보이는 이음새의 가장 흔한 원인입니다.

  3. 단체 사진은 인물 한 명으로 잘라냅니다

    둘 중 한쪽 이미지에 인물이 여러 명 나온다면, 보내기 전에 의도한 인물로 크롭하세요. 이 엔드포인트는 이미지당 머리 하나를 가정하므로, 크롭하지 않은 단체 사진은 예측할 수 없는 결과를 냅니다.

  4. 탐색 단계에서는 seed를 지정하지 않습니다

    초기 호출에서는 seed를 생략하거나 0으로 두어 무작위로 뽑고, 조합이 맞으면 그때 seed를 고정해 이후 비교 호출이 같은 뽑기 결과를 기준으로 실행되게 합니다.

  5. 작업을 제출하고 최종 상태를 기다립니다

    image_url, reference_image_url, 선택적 seed를 보내고 반환된 작업 ID를 저장한 뒤 상태가 확정될 때까지 폴링하고 플랫폼 저장소에서 출력 이미지를 가져옵니다.

  6. 먼저 목을 확인합니다

    이미지의 나머지 부분을 판단하기 전에 목 이음새부터 보세요. 한 장의 연속된 사진처럼 읽힌다면 나머지 전이도 대체로 잘 됐다는 뜻이고, 그렇지 않다면 같은 쌍을 다시 보내는 대신 원본 사진의 조명이나 각도를 바꾸세요.

Head Swap 실제 예시

  • 원판 하나에 참조 이미지 세 개

    대상 사진 한 장을 세 번 보내면서 매 호출마다 reference_image_url만 바꾸고 seed는 지정하지 않습니다. 결과 세 장은 누구의 머리가 왔는지만 다르므로, 비교 대상은 목 이음새가 되고 한 장의 사진처럼 이어져 보이는 결과가 승자입니다.

  • 나란히 놓고 볼 가치가 있는 재시도

    첫 호출에서 seed를 특정 정수로 고정합니다. 이후 대상과 같은 방향에서 조명을 받은 참조 이미지로 교체하면, 두 번째 호출은 입력 하나만 달라지므로 두 결과가 실제로 던진 질문에 답합니다. 매번 무작위로 뽑았다면 참조 이미지보다 더 많은 것이 바뀌었을 것입니다.

  • 인물 한 명으로 크롭한 단체 사진

    네 명이 나온 파티 사진은 어떤 인물을 의도한 것인지 엔드포인트가 알 방법이 없으므로, image_url에 넣기 전에 의도한 인물로 대상을 크롭합니다. 크롭은 그 인물의 머리를 프레임 안에 크게 유지해 주기도 하는데, 이는 두 입력 모두가 원하는 조건입니다.

Head Swap API 자주 묻는 질문

다듬을 프롬프트가 없으므로 결과 전체는 두 이미지 선택에 달려 있습니다. image_url과 비슷한 방향에서 조명을 받고 비슷한 각도로 촬영된 reference_image_url을 고르고, 각 프레임에는 명확히 보이는 머리를 하나만 넣으세요. 결과마다 목 이음새를 가장 먼저 확인하고, 선이 보인다면 원본 사진의 조명이나 각도를 바꾸세요. 이 엔드포인트의 어떤 파라미터도 그 불일치를 보정해 주지 않습니다.

이 시리즈의 모델2

이미지 모델1

  • Head Swap현재이미지 편집$0.013장당