가상 시도
가상 시도는 참조 이미지의 내용이 마스크 이미지의 지침에 따라 소스 이미지에 중첩되는 이미지 안내형 인페인팅 사용 사례입니다. Amazon Nova Canvas는 의상, 액세서리, 가구 및 관련 객체에 맞춰 조정되었습니다. 이 모델은 이미지에 로고나 텍스트를 추가하는 등의 다른 경우에도 적합합니다.
가상 시도 API를 사용하여 최대 5개의 이미지를 생성할 수 있습니다. 기본적으로 이미지는 1개만 생성됩니다.
가상 시도를 수행하려면 다음 세 가지 이미지를 제공해야 합니다.
-
소스 이미지 - 수정하려는 원본 이미지입니다. 예를 들면 이미지, 사람 또는 방의 모습이 담긴 이미지입니다.
-
참조 이미지 - 소스 이미지에 중첩하려는 항목, 객체 또는 아이템이 포함된 이미지입니다. 예를 들어 재킷이나 그릇 또는 소파 등이 포함될 수 있습니다. 의상의 경우 참조 이미지에는 신체에 착용하거나 착용하지 않은 의상과 의상의 고유한 구성 요소(예: 단일 이미지의 셔츠, 바지, 신발 등)를 나타내는 여러 제품이 포함될 수 있습니다.
-
마스크 이미지 - 소스에서 수정할 영역을 정의하는 이미지입니다. 마스크 이미지는 소스 이미지에서 수정할 부분을 정의하는 데 사용되는 흑백 이미지입니다. 검은색 픽셀은 소스 이미지에서 수정할 영역을 나타내고, 흰색 픽셀은 보존할 영역을 나타냅니다. 직접 마스크 이미지를 제공하거나 제공한 다른 입력 파라미터를 기반으로 모델이 자동으로 이미지를 생성하게 할 수 있습니다.
지정된 경우 마스크 이미지를 출력의 일부로 반환할 수 있습니다.
모델이 작동하는 방식에 대한 몇 가지 예시는 다음과 같습니다.
다른 Amazon Nova Canvas 작업 유형과 달리 가상 시도는 텍스트 프롬프트 또는 네거티브 텍스트 프롬프트를 지원하지 않습니다.
마스크 이미지 정의
maskType: "IMAGE"
를 지정하여 마스크 이미지를 직접 제공하거나 모델이 maskType: "GARMENT"
또는 maskType: "PROMPT"
와 같은 보조 입력을 사용하여 이미지를 자동으로 계산하도록 허용할 수 있습니다.
"GARMENT"
의 마스크 유형을 지정하면 Amazon Nova Canvas가 지정된 garmentClass
입력 파라미터 값을 기반으로 의상 인식 마스크를 생성합니다. 대부분의 경우 다음과 같은 상위 수준의 의상 클래스 중 하나를 사용할 수 있습니다.
-
"UPPER_BODY"
- 팔 전체 길이를 포함하는 마스크를 생성합니다. -
"LOWER_BODY"
- 다리 사이의 간격 없이 다리 전체 길이를 포함하는 마스크를 생성합니다. -
"FOOTWEAR"
- 소스 이미지에 나타난 신발의 모양에 맞는 마스크를 생성합니다. -
"FULL_BODY"
-"UPPER_BODY"
및"LOWER_BODY"
의 조합에 해당하는 마스크를 생성합니다.
"PROMPT"
마스크 유형을 사용하면 소스 이미지에서 교체하고자 하는 항목을 자연어로 설명할 수 있습니다. 이는 의상이 아닌 시나리오에 유용합니다. 이 기능은 maskPrompt
파라미터를 통해 "INPAINTING"
작업 유형에 있는 것과 동일한 자동 마스킹 기능을 사용합니다.
주의
"PROMPT"
마스크 유형으로 생성된 마스크는 설명하는 항목의 모양에 엄격하게 적용됩니다. 추가하는 제품이 교체하는 항목과 실루엣이나 크기가 동일하지 않을 수 있으므로 많은 시나리오에서 문제가 될 수 있습니다. 이러한 이유로 가상 시도 API는 "BOUNDING_BOX"
로 설정할 수 있는 선택적 maskShape
파라미터도 제공합니다. 대부분의 경우 "PROMPT"
마스크 유형을 사용할 때 이 설정(기본값)을 사용하는 것이 좋습니다.
새로운 포즈, 손 또는 얼굴 생성
소스 이미지에 있는 사람의 포즈, 손 또는 얼굴을 유지하거나 다시 생성하도록 모델에 지시할 수 있습니다. 이러한 요소를 유지하도록 선택하면 선택한 maskType
과 관계없이 마스크 이미지에서 자동으로 제거됩니다.
다음과 같은 상황에서는 포즈, 손 또는 얼굴을 유지하는 것이 좋습니다.
-
최종 사용자가 직접 마스크를 그릴 수 있는 애플리케이션을 개발하는 경우 이러한 요소를 유지하면 최종 사용자가 실수로 마스크에 손이나 얼굴을 포함하는 것을 방지할 수 있습니다.
-
maskShape: BOUNDING_BOX
를 사용하지만 손이나 얼굴을 새로 생성하고 싶지 않은 경우preserveFace: ON
또는preserveHands: ON
을 사용하면 이러한 요소가 자동으로 마스크에서 제외됩니다. -
직립 포즈가 아닌 모델의 이미지에서
maskType:GARMENT
와maskShape: BOUNDING_BOX
를 사용하는 경우 경계 상자 마스크가 얼굴과 겹칠 수 있으므로preserveFace: ON
을 사용하는 것이 좋습니다.
반대로 다음과 같은 상황에서는 포즈, 손 또는 얼굴을 다시 생성하는 것이 좋습니다.
-
목을 덮는 의상의 경우
preserveFace: ON
을 사용하면 출력에 부정적 영향을 줄 정도로 목의 영역이 제외될 수 있습니다. -
모델이 하이힐을 신고 있으며 참조 이미지의 신발이 플랫 슈즈이거나 그 반대의 경우 바디 포즈를 유지하면 부자연스러운 결과물이 생성됩니다.
-
앞의 내용과 마찬가지로 핸드백이나 기타 액세서리를 시도할 때 새로운 포즈나 손을 생성하면 더 자연스러워 보이는 결과를 얻을 수 있습니다.
스타일 신호
garmentStyling
파라미터를 사용하면 촬영 사진에서 볼 수 있는 특정 의상 스타일 신호를 유지하거나 변경할 수 있습니다. 예를 들어 Amazon Nova Canvas는 셔츠 소매를 걷거나 내리는 방식으로 또는 셔츠를 안으로 집어넣거나 빼는 방식으로 스타일을 수정할 수 있습니다. 다음과 같은 옵션을 사용할 수 있습니다.
-
"longSleeveStyle"
- 긴 소매 셔츠의 소매가 걷혀 있는지 내려와 있는지를 제어합니다.-
"SLEEVE_DOWN"
- 소스 이미지에서 소매를 걷거나 내린 긴 소매 셔츠, 반소매 셔츠 또는 민소매 셔츠를 착용한 경우에 적용할 수 있습니다. -
"SLEEVE_UP"
- 소스 이미지에서 소매를 걷은 긴소매 셔츠, 반소매 셔츠 또는 민소매 셔츠를 착용한 경우에 적용할 수 있습니다.
-
-
"tuckingStyle"
- 상의가 안으로 들어가 있는지 또는 밖으로 나와 있는지를 제어합니다.-
"UNTUCKED"
- 소스 이미지의 셔츠가 안으로 들어가 있든 나와 있든 상관없이 적용할 수 있습니다. -
"TUCKED"
- 소스 이미지의 셔츠가 안으로 들어가 있는 경우에 적용할 수 있습니다.
-
-
"outerLayerStyle"
- 상의가 열린 상태인지 또는 닫혀 있는지를 제어합니다. 기본값은"CLOSED"
이며 대부분의 의상(예: 셔츠, 스웨터)에 적합합니다. 재킷과 같은 외투에 이 값을"OPEN"
으로 설정하면 소스 이미지의 원래 상의가 그대로 유지되며 새 외투가 그 위에 겹쳐집니다."CLOSED"
값을 외투에 사용하면 의상이 닫힌 상태로 렌더링되지 않을 수도 있습니다. 이는"CLOSED"
값이 소스 이미지의 모든 상의가 교체된다는 것만 보장하가 때문에 경우에 따라 외투가 열린 상태로 렌더링되고 그 아래에 새로운 레이어가 보일 수 있습니다.-
"CLOSED"
-
"OPEN"
-
자세한 내용은 이미지 생성을 위한 요청 및 응답 구조 섹션의 garmentStyling
파라미터를 참조하세요.
이미지 스티칭
가상 시도를 사용하면 이미지가 함께 스티칭되어 최종 이미지가 생성되는 방식을 결정할 수 있습니다. "BALANCED"
, "SEAMLESS"
, "DETAILED"
중에서 선택할 수 있습니다. 병합 스타일마다 해당 요소를 함께 연결하여 최종 이미지를 생성하는 방법에 대한 접근 방식이 다르며 각각 장단점이 있습니다.
-
"BALANCED"
- 원본 이미지에서 마스킹 처리되지 않은 픽셀을 보호하여 원본과 100% 동일한 상태를 유지하게 합니다. 경우에 따라 출력 이미지에서 색상이나 텍스처가 미세하게 불일치하여 마스크 형태가 마치 '유령' 이미지처럼 보일 수 있습니다. 이는 사람이 단색 또는 균일한 텍스처를 배경으로 하고 서 있는 이미지에서 발생할 가능성이 높습니다. 이를 방지하기 위해"SEAMLESS"
병합 스타일을 대신 사용할 수 있습니다. -
"SEAMLESS"
- 최종 이미지에서 마스킹된 영역과 마스킹 처리되지 않은 영역 사이에 눈에 띄는 경계가 생기지 않게 합니다. 단점은 이미지의 모든 픽셀이 약간 변경되고 때로는 이미지에서 마스킹되지 않은 영역의 정밀한 세부 사항이 희미해지는 것입니다. -
"DETAILED"
- 로고 및 텍스트와 같은 정밀한 세부 사항을 크게 개선할 수 있으며 특히 마스킹된 영역이 전체 이미지에 비해 상대적으로 작은 경우에 효과적입니다. 이 모델은 원본 이미지에서 마스킹된 영역만 포함하여 정밀하게 잘라낸 고해상도 버전에서 인페인팅을 수행하여 이를 달성합니다. 그런 다음 결과를 원본 이미지에 다시 병합합니다."BALANCED"
모드를 사용할 때와 마찬가지로 이 모드에서는 경계가 보일 수 있습니다.