EP 인시그니아은(는) 무엇을 하나요?
소스 이미지 URL을 EP가 요구하는 두 개의 인시그니아 파일로 변환하고 s3://prod-ep-cmh-insignia (EP AWS 계정 405995789491, 리전 us-east-2)에 업로드합니다.
버킷 내 기존 파일과 일치하는 규칙:
- 키: 버킷 루트에
<prefix>.png및<prefix>.jpg형식이며,<prefix>는 EP 고객 접두사(소문자, 예:audubonpd,alexanderncsheriff)입니다. - 두 파일 모두 512x512입니다. 인시그니아는 자르고, 크기를 맞추고, 약간의 여백을 두고 중앙에 배치됩니다.
- PNG는 투명 배경입니다. JPG는 흰색 배경입니다.
- 콘텐츠 타입은
image/png및image/jpeg입니다. 버킷은 BucketOwnerEnforced를 사용하므로 ACL을 설정하지 마세요.
입력
- 소스 URL. 사용자가 제공하지 않았다면 요청하세요. 로컬 파일 경로도 사용할 수 있습니다.
- 고객 접두사. 제공되지 않았다면 요청하세요. 기관 이름에서 추측하지 마세요. 소문자로 정규화하고
a-z 0-9 - _이외의 문자는 거부하세요.
단계
1. 이미지 처리
스크래치패드에 새 작업 디렉터리를 만들거나 mktemp -d를 실행한 후 다음 명령을 실행하세요:
uv run -q <skill_dir>/scripts/process_insignia.py "<url>" "<prefix>" "<workdir>"
uv는 스크립트의 인라인 메타데이터에서 종속성을 설치합니다. 처음 AI 배경 제거를 실행하면 약 180MB 모델을 ~/.u2net에 다운로드합니다.
기본 배경 모드(--bg auto)는 다음과 같이 동작합니다:
- 소스에 이미 투명 배경이 있으면 그대로 유지됩니다.
- 테두리가 단색(보통 흰색)인 경우 가장자리에 연결된 배경만 제거됩니다. 배지 내부의 흰색 글자나 세부 사항은 유지됩니다.
- 그 외의 경우 AI 세그멘테이션(rembg
isnet-general-use)을 사용합니다.
재정의: --bg ai, --bg flood, --bg none은 모드를 강제합니다. --margin N은 패딩(px, 기본값 4)을 설정합니다.
다운로드가 403 또는 429 오류로 실패하거나, URL이 SVG 또는 웹 페이지(이미지가 아님)인 경우 사용자에게 알리고 직접 이미지 링크를 요청하세요. 사용자가 직접 파일을 다운로드하여 로컬 경로를 전달할 수도 있습니다.
2. 업로드 전 검토
대비되는 색상 위에 PNG 미리보기를 만들고 JPG 옆에 표시하세요:
convert \( <workdir>/<prefix>.png -background '#c33' -flatten \) <workdir>/<prefix>.jpg +append <workdir>/preview.png
preview.png를 읽기 도구로 열고 다음을 확인하세요:
- 남은 배경 없음(빨간색 쪽에 헤일로, 박스, 프린지 없음).
- 인시그니아의 누락된 부분 없음(내부 흰색이 제거된 구멍, 잘린 텍스트).
- 올바른 기관인지 확인.
결과가 잘못된 경우 다른 --bg 모드로 다시 실행하세요. 사용자에게 미리보기와 함께 스크립트가 보고한 배경 방법 및 작은 소스 이미지에 대한 경고를 표시하세요.
3. AWS 접근 및 기존 파일 확인
aws sts get-caller-identity --query Account --output text # 405995789491가 예상됨
aws s3 ls s3://prod-ep-cmh-insignia/<prefix>.
<prefix>.png 또는 <prefix>.jpg가 이미 존재하면 사용자에게 알리세요. 이는 프로덕션 버킷이므로 덮어쓰기 전에 명시적 확인을 받으세요. 먼저 기존 파일을 백업하세요:
aws s3 cp s3://prod-ep-cmh-insignia/<prefix>.png <workdir>/backup/<prefix>.png
aws s3 cp s3://prod-ep-cmh-insignia/<prefix>.jpg <workdir>/backup/<prefix>.jpg
기존 파일이 없더라도 미리보기를 보여준 후 사용자에게 업로드 확인을 받으세요.
4. 업로드
aws s3 cp <workdir>/<prefix>.png s3://prod-ep-cmh-insignia/<prefix>.png --content-type image/png
aws s3 cp <workdir>/<prefix>.jpg s3://prod-ep-cmh-insignia/<prefix>.jpg --content-type image/jpeg
aws s3 ls s3://prod-ep-cmh-insignia/<prefix>.로 업로드를 확인한 후 두 S3 키, 크기 및 백업이 저장된 위치를 보고하세요.