Photo Detail Edit
사용자가 원본 이미지와 편집 프롬프트를 제공합니다. 이 스킬은 전체 워크플로우를 완료합니다: 보존 제약 조건 추가 → 내장 이미지 편집 → 작은 이미지 구조 매칭 → 로컬 RGB 변환 학습 → 원본 크기 이미지에 적용 → 최종 결과물 및 부분 비교. 단순히 생성하거나 조작 제안만 하지 않습니다.
입력 및 경계
- 읽을 수 있는 원본 이미지 파일이 필요합니다. 먼저 파일의 픽셀, 바이트 수, EXIF 방향 및 투명도를 확인하십시오. 시각적 미리보기는 축소될 수 있으므로 '원본 큰 이미지'로 간주하지 마십시오. 세션 미리보기만 있고 원본 파일을 얻을 수 없는 경우, 사용자에게 원본 파일이나 원본 이미지가 포함된 ZIP을 제공하도록 요청하십시오. 손실된 디테일에서 실제 정보를 복원했다고 주장하지 마십시오.
- 사용자는 이미지와 프롬프트만 제공하면 됩니다. 에이전트가 보존 영역을 판단하고, 분할 프롬프트를 만들며, 마스크를 확인합니다. 사용자에게 수동으로 마스크를 그리도록 요구하지 마십시오.
- 사용자가 명확히 요청한 변경 사항을 유지하십시오. 배경 교체, 배경 제거, 옷 갈아입히기, 장식품 삭제 등 해당 영역은 이후 복원 단계에서 되돌리지 않아야 합니다. 명확히 변경된 객체나 구조에 대해 제외 영역을 설정하십시오.
- 이 워크플로우는 사진 리터칭을 대상으로 합니다. 자세, 인물 정체성을 크게 변경하거나 전체를 다시 그리는 경우 신뢰할 수 있는 대응이 없을 수 있으므로, 생성 결과를 그대로 유지하고 복원이 제한적임을 설명하십시오.
워크플로우
1. 작업 디렉토리 생성
현재 작업 공간에 새 출력 디렉토리를 만들고, 원본 이미지를 보존하며 기존 파일이나 완성된 결과물을 덮어쓰지 않습니다. 사용자 원본 프롬프트, 실제 전송된 전체 프롬프트 및 생성된 기본 이미지를 저장합니다. 첨부 ZIP을 압축 풀 때 경로를 확인하고 기존 파일을 덮어쓰지 마십시오.
의존성이 설치되지 않은 경우, 현재 프로젝트의 가상 환경에 scripts/requirements.txt를 설치하십시오. 기존 호환 환경을 우선 재사용하거나 uv venv / uv pip install --python ... -r ...을 사용하십시오. 시스템 수준 설치가 필요하지 않습니다. 스크립트 실행 시 네트워크에 연결하지 않고 모델을 다운로드하지 않습니다.
2. GPT Image 편집
- 먼저
view_image를 통해 원본 로컬 파일을 확인하십시오. 현재 세션에서 사용 가능한 내장image_gen편집 도구를 호출하고, 원본 파일을 편집 입력으로 사용하며, 이전 생성 이미지를 원본 대신 사용하지 마십시오. - 실제 프롬프트 = 사용자 원문 + 고정 보존 제약 조건. 고정 부분은 추가 제약 조건으로, 사용자 목표를 대체하거나 희석하지 않습니다. 전신 구도 요청은 원본 사진이 전신 구도인 경우에만 적용됩니다. 이 정확한 결합 결과를 저장하십시오.
- 배경 제거/분리/투명 배경 요청 시
transparent_background: true로 설정하고, 새 배경으로 교체 시 false로 설정합니다. 기타 매개변수는 현재 도구의 기능을 따르며, 허위 품질, 크기 또는 모델 버전 매개변수를 만들지 않고, 프롬프트가 픽셀이나 해상도 보존을 보장한다고 약속하지 마십시오. - 생성된 파일을 작업 디렉토리로 복사하십시오. 실제 출력 크기와 용량을 기록하십시오. 기본 한 번 생성하며, 도구가 실패하거나 사용자의 주요 요청을 명백히 누락한 경우에만 수정 후 한 번 재시도하십시오. 무한히 재생성하지 마십시오. 함부로 유료 API/CLI로 전환하지 마십시오.
3. 이미지 보존 영역 설정
원본 이미지와 생성된 이미지를 확인하십시오. 지역 설정 및 실행 설명에 따라 이번 작업의 regions.json을 만들고, 각각 원본 이미지와 생성된 이미지의 주요 마스크 또는 GrabCut 시드를 지정하십시오. 좌표는 현재 이미지에서 판단하며, 이전 인물 좌표를 복사하지 마십시오. 스크립트는 설정된 좌표를 각 이미지의 EXIF 표시 방향에 따라 해석합니다.
마스크는 보존해야 할 공통 피사체를 덮어야 하며, 배경과 사용자가 의도적으로 변경한 부분을 제외해야 합니다. 투명한 전경은 알파를 활용할 수 있지만, 사용자가 의도적으로 다시 그린 영역은 여전히 제외해야 합니다. fill_holes는 기본적으로 꺼져 있으며, 물체 손잡이, 자세로 인한 틈은 실제 배경일 수 있으므로 무턱대고 구멍을 메우지 마십시오.
최소 두 개의 인물/물체 디테일 위치를 선택하여 부분 비교를 수행하십시오. 사진에 얼굴, 프린트, 모직/직물이 있는 경우 해당 위치를 우선시하십시오. 설정은 에이전트의 시각적 판단에서 비롯되며, 고정 템플릿이 아닙니다.
4. 분석, 확인, 융합
동일한 매개변수 세트를 사용하여 먼저 --stage analyze, 그 다음 --stage fuse를 실행하십시오:
<python> <skill>/scripts/restore_detail.py --source <original> --base <generated> --regions <regions.json> --out <job>/restored --stage analyze
기본값 --method local-rgb --structure-channel auto입니다. 분석 단계에서는 원본 이미지를 공통 크기로 축소하고, 기하학적 대응을 검증하며, 구조 판단에 대한 색상, 대비 및 미세 텍스처의 영향을 줄이고, 신뢰할 수 있는 영역에서 제약되고 단조로운 로컬 RGB 색상 곡선을 피팅합니다. 일반적인 다색 사진은 밝기 구조를 사용합니다. 강한 단색광은 자동으로 해당 채널을 선택하며, 두 이미지는 동일한 표현을 사용하고 빨간색 채널을 고정하지 않습니다.
base-mask.png, source-mask.png, confidence-overlay.png 및 report.json을 확인하여 실제 방법이 local-rgb인지, 구조 채널과 매칭 범위가 합리적인지 확인하십시오. 배경이 복구 영역에 선택되지 않아야 합니다. 마스크가 명백히 잘못된 경우, 영역 설정을 수정한 후 다시 분석하십시오. 매칭 임계값을 완화하여 강제로 적용 범위를 늘리지 마십시오.
<python> <skill>/scripts/restore_detail.py --source <original> --base <generated> --regions <regions.json> --out <job>/restored --stage fuse
스크립트는 로컬 곡선 매개변수를 부드럽게 업샘플링하고, 정렬된 원본 크기 이미지에 적용하여 실제 디테일이 목표 색조와 조명 변환을 통과하도록 합니다. 매핑이 신뢰할 수 없는 위치는 확대된 생성 이미지를 사용합니다. 배경, 투명도 및 명시적으로 제외된 편집 영역은 일관성을 유지합니다. 공유 특징이 충분하지 않은 경우 원본 이미지 콘텐츠를 전달하지 않습니다. 피사체의 색조와 조명은 피팅 결과이므로 픽셀 단위 일관성을 약속할 수 없으며, 원본 이미지 크기를 '전체 복원된 원본 화질'이라고 부르지 마십시오.
기본적으로 Lab 회색조 고주파를 오버레이하거나, 자유도가 너무 높은 임의 행렬이나 전체 3D LUT를 사용하지 마십시오. --method lab-detail은 사용자가 명시적으로 요청한 이전 방식 비교를 위해서만 유지하십시오. 조용히 이전 방법으로 되돌리지 마십시오.
5. 확인 및 전달
- 최종 미리보기와 적어도 두 개의 원본 픽셀 규모 부분 비교를 확인하여 실제 텍스처, 색상 및 광범위한 조명을 확인하고, 고스트 이미지, 검은 블록, 어두운 부분의 회색 톤, 가장자리 및 접지 그림자에 주의하십시오. 텍스처 상관도나 매칭 적용 범위만으로 화질 개선을 선언하지 마십시오. 필요한 경우 제외 영역을 좁히고 분석 및 융합을 다시 실행하십시오.
report.json에서 배경 범위의 픽셀 변동이 0이고, 알파가 유지되며, PNG를 읽을 수 있는지 확인하십시오. 정확한 배경 일관성은 무손실 PNG를 대상으로 하며, JPEG 압축은 픽셀을 변경할 수 있습니다.- 가시 미리보기, 전체 크기 무손실 PNG 및 부분 비교 링크를 반환하십시오. 투명도가 없으면 JPEG도 함께 전달하고, 투명 이미지는 JPEG로 전달하지 마십시오.
- 출력 크기, 실제 복원 범위 및 명백한 제한 사항을 간략히 설명하고, 실제 전체 프롬프트 파일 링크를 제공하십시오. 보간으로 확대된 픽셀 수를 새로운 실제 디테일로 오인하지 마십시오.
호출 예시
"$photo-detail-edit를 사용하여 이 원본 사진을 처리하세요: 배경과 조명을 정리하여 잡지 스튜디오 촬영 같은 질감을 만드세요."
"$photo-detail-edit를 사용하여 배경을 제거하고 투명 PNG를 출력하되, 인물과 의상 디테일을 유지하세요."