Appearance
배경 제거 기능 PRD
Status: Released created: January 20, 2026 3:29 PM 앱/웹/스튜디오: 스튜디오
1. 목표 및 배경
- 유저는 프론티아 스튜디오에서 여러 이미지를 업로드하고, 배경 제거된 이미지를 다운받을 수 있습니다.
- 여러 장의 이미지를 쉽게 배경 제거하는데 초점을 둡니다.
- 한 장 한 장의 퀄리티 체크에는 초점을 두지 않습니다. (본다고 해서 더 퀄리티를 높이기 어렵기 때문에)
- 투명 배경 이미지를 쉽게 다운로드하여 활용할 수 있게 합니다.
2. 타깃 사용자
- 캐릭터 이미지를 만들기 위해 배경 제거 기능이 필요한 모든 사용자
- 초급자부터 중급자까지 아우를 것으로 예상 (고급자는 에디터까지 있는 개인 유료 플랜을 사용할 수도 있음)
3. 유저 스토리 & 세부 요구 사항
- [기능 진입] 배경 제거를 이용하고 싶은 사용자가 캐릭터 탭 내(위치 미정)에서 배경제거 기능으로 진입하고 기능을 확인할 수 있다.
- [ ] 초기 화면에 이미지 업로드 영역이 표시된다
- [ ] '배경 제거 시작' 버튼이 비활성화 상태로 표시된다
- [ ] 이미지 추가 방법(드래그 앤 드롭, 클릭)이 안내된다
- [ ] 최대 30개까지 추가 가능하다는 정보가 표시된다
- [ ] 가지고 있는 재화 개수가 표시된다
- [이미지 업로드] 이미지의 배경을 제거하고 싶은 사용자가 간편하게 여러 개의 이미지를 업로드할 수 있다.
- [ ] 드래그 앤 드롭으로 이미지를 업로드할 수 있다
- [ ] 업로드 영역 클릭 → 파일 선택으로 이미지를 업로드할 수 있다
- 지원 포맷: jpg, jpeg, png, webp
- 파일 크기: 최대 10MB
- [ ] 한 번에 최대 30개까지 이미지를 추가할 수 있다
- [ ] 30개 초과 시 추가 업로드가 차단되고 안내 메시지가 표시된다
- 30개까지는 업로드가 되고, 그 이후 업로드 차단
- [ ] 업로드된 이미지가 리스트에 미리보기로 표시된다
- [ ] 개별 이미지를 삭제할 수 있다
- [배경제거 시작] 이미지를 업로드한 사용자가 소모될 재화를 확인하고, 배경 제거를 시작할 수 있다.
- [ ] 이미지가 1개 이상 업로드되면 '배경 제거 시작' 버튼이 활성화된다
- [ ] 버튼에 소모될 스타 개수가 표시된다 (예: "배경 제거 시작 -5")
- [ ] 버튼 클릭 시 확인 모달이 표시된다
- [ ] 확인 모달에 "이미지 1개당 스타 1개가 차감되며, 차감 후 되돌릴 수 없습니다" 안내가 포함된다
- [ ] 확인 후 배경 제거가 시작된다
- [ ] 보유 스타가 부족한 경우 에러 모달이 표시된다 → 5번 스토리에서 이어짐
- [배경제거 진행 중] 배경 제거를 진행 중인 사용자가 현재 진행 상황을 확인할 수 있다.
- [ ] 배경 제거 시작 시 로딩 화면이 표시된다
- [ ] 로딩 화면에서는 다른 동작을 할 수 없다
- [ ] 사이드 페이지를 나가도 배경 제거가 계속 진행된다
- [ ] 스튜디오를 완전히 나가거나 웹을 종료해도 배경 제거가 중단되지 않는다
- [ ] (P1 - 차순위) 진행 현황을 볼 수 있다 (예: 5/10 완료)
- [ ] (P1 - 차순위) 끝났을 때 알림을 주면 베스트!
- [재화 부족] 재화가 부족해서 배경 제거를 사용하지 못하는 사용자는 재화 충전을 안내받아, 재화를 충전할 수 있다.
- [ ] 보유 스타가 부족한 상태에서 '배경 제거 시작' 버튼 클릭 시 알림 모달이 표시된다
- [ ] 알림 모달에 "스타가 부족합니다" 메시지가 표시된다
- [ ] 현재 보유 스타와 필요한 스타 개수가 명시된다
- [ ] [충전하러 가기] 버튼이 제공된다
- [ ] [충전하러 가기] 클릭 시 스타 충전 페이지로 이동한다 → 이동하지 않고 모달로 가능?
- [ ] 배경 제거가 시작되지 않으며 스타가 차감되지 않는다
- [배경제거 완료] 배경 제거를 완료한 사용자는 결과 이미지를 확인한 후 원하는 이미지만 다운로드하고 불필요한 이미지는 삭제할 수 있다
- [ ] 배경 제거 완료 시 투명 배경의 이미지가 리스트에 표시된다 (미리보기)
- [ ] 각 이미지마다 삭제 버튼이 제공된다
- [ ] 삭제 버튼 클릭 시 해당 이미지가 리스트에서 제거된다
- [ ] 일부 이미지가 에러로 실패한 경우, 원본 이미지와 함께 실패 표시가 보여진다
- [ ] 스튜디오를 나갔다 들어와도 최신 리스트가 유지된다
- [ ] 이미지는 최대 7일까지 보관되며, 이후 자동 삭제된다는 안내가 표시된다
- [ ] [이미지 다운로드]와 [다른 이미지 배경 제거하기] 버튼이 제공된다
- [ ] [이미지 다운로드] 버튼 클릭 시 모든 이미지가 ZIP 파일로 다운로드된다
- [ ] ZIP 파일명은 "frontia_char.zip"으로 저장된다
- [ ] 다운로드 후에도 이미지 리스트는 유지된다
- [배경제거 재시작] 배경 제거 완료 후 사용자는 배경제거 기능을 반복해서 사용할 수 있다.
- [ ] [다른 이미지 배경 제거하기] 클릭 시 기존 이미지가 모두 삭제된다는 확인 모달이 표시된다
- [ ] [다른 이미지 배경 제거하기] 클릭 시 뜨는 확인 모달에서 확인을 누르면 리스트가 비워진다
4. 기술 요구사항 및 성능 지표
4.1 기술 사양
- 사용 API: Cloudflare Images API
- 처리 프로세스:
Cloudflare Images API로 이미지 업로드
업로드 완료 후
image_id획득배경 제거된 이미지 URL 생성:
https://imagedelivery.net/<account_hash>/<image_id>/segment=foreground<account_hash>: 계정 해시값<image_id>: 업로드된 이미지 ID<variant_name>:segment=foreground(배경 제거 처리)
- 참고 문서: Cloudflare Images - Transform via URL
4.2 인수 조건 (Acceptance Criteria)
[ ] Cloudflare Images API 연동이 완료되어 있다
[ ] 이미지 업로드 후 image_id를 정상적으로 받아온다
[ ] segment=foreground 파라미터로 배경 제거된 이미지를 받아온다
[ ] 배경 제거된 이미지가 투명 배경(PNG)으로 처리된다
[ ] API 에러 발생 시 적절한 에러 핸들링이 이루어진다
성능 참고
[이미지 누락: BiRefNet-HRSOD]
BiRefNet-HRSOD
[이미지 누락: photoroom]
photoroom
[이미지 누락: iloveimg]
iloveimg
5. 에러 처리 및 예외 상황
5.1 주요 에러 시나리오
| 에러 상황 | 에러 메시지 | 처리 방법 |
|---|---|---|
| 스타(재화) 부족 | "스타가 부족합니다. 현재 보유: {N}개 / 필요: {M}개" | - [충전하러 가기] 버튼 제공 |
- 충전 페이지로 이동
- 배경 제거 시작 안 됨 | | 이미지 업로드 개수 초과 | "최대 30개까지 업로드할 수 있습니다" | - 추가 업로드 차단 | | 파일 형식 오류 | "지원하지 않는 파일 형식입니다" | - 파일 선택 취소
- 지원 형식 안내 (JPG, PNG, WEBP) | | 파일 크기 초과 | "파일 크기는 10MB 이하만 가능합니다" | - 업로드 안됨
- 파일 최대 크기 안내 (10MB 이하) | | 이미지 업로드 실패 | "이미지 업로드에 실패했습니다. 다시 시도해 주세요." | - 업로드 안됨 | | Cloudflare API 에러 | "서버 오류가 발생했습니다. 잠시 후 다시 시도해주세요." | - 재시도 버튼 제공
- 스타 차감 안 됨
- 고객 지원 연결 | | 배경 제거 부분 실패 | "일부 이미지 처리에 실패했습니다. 성공한 {N}개만 표시됩니다." | - 성공한 이미지만 결과 표시
- 실패한 이미지 스타 환불 (→ 가능? 불가능하면 안내 필요) | | 네트워크 끊김 | "네트워크 연결을 확인해주세요" | - 연결 복구 시 재시도
- 진행 중이던 작업 복구 시도 | | 세션 만료 | "세션이 만료되었습니다. 다시 로그인해주세요." | - 로그인 페이지 이동
- 작업 중이던 데이터 임시 저장 (가능 시) | | 7일 보관 기간 만료 | "만료 기간이 N일 남았습니다" | - 이미지 리스트 자동 비우기
- 초기 업로드 화면으로 전환 |
5.2 스타(재화) 처리 규칙
| 상황 | 스타 차감 여부 | 환불 여부 | 비고 |
|---|---|---|---|
| 배경 제거 성공 | O (이미지 1개당 1개) | X | |
| 배경 제거 부분 실패 | O (성공한 개수만큼) | O (실패한 개수만큼) | 논의 필요 |
| 배경 제거 전체 실패 | X | - | |
| 사용자가 중단 (스튜디오 종료) | X | - | |
| 서버 에러로 실패 | X | O (차감되었다면) | |
| 네트워크 에러로 실패 | X | O (차감되었다면) |
5.3 사용자 안내 메시지
처리 전 안내
- "이미지 1개당 스타 1개가 차감되며, 차감 후 되돌릴 수 없습니다"
- "최대 30개까지 업로드할 수 있습니다"
처리 중 안내
- "배경 제거 진행 중입니다. 잠시만 기다려주세요"
- (P1) "{N}/{M} 처리 중..."
- "페이지를 나가도 배경 제거가 계속 진행됩니다"
처리 완료 안내
- "이미지는 최대 7일까지 보관됩니다"