Skip to content

배경 제거 기능 PRD

Status: Released created: January 20, 2026 3:29 PM 앱/웹/스튜디오: 스튜디오

1. 목표 및 배경

  • 유저는 프론티아 스튜디오에서 여러 이미지를 업로드하고, 배경 제거된 이미지를 다운받을 수 있습니다.
    • 여러 장의 이미지를 쉽게 배경 제거하는데 초점을 둡니다.
    • 한 장 한 장의 퀄리티 체크에는 초점을 두지 않습니다. (본다고 해서 더 퀄리티를 높이기 어렵기 때문에)
    • 투명 배경 이미지를 쉽게 다운로드하여 활용할 수 있게 합니다.

2. 타깃 사용자

  • 캐릭터 이미지를 만들기 위해 배경 제거 기능이 필요한 모든 사용자
  • 초급자부터 중급자까지 아우를 것으로 예상 (고급자는 에디터까지 있는 개인 유료 플랜을 사용할 수도 있음)

3. 유저 스토리 & 세부 요구 사항

  1. [기능 진입] 배경 제거를 이용하고 싶은 사용자가 캐릭터 탭 내(위치 미정)에서 배경제거 기능으로 진입하고 기능을 확인할 수 있다.
    • [ ] 초기 화면에 이미지 업로드 영역이 표시된다
    • [ ] '배경 제거 시작' 버튼이 비활성화 상태로 표시된다
    • [ ] 이미지 추가 방법(드래그 앤 드롭, 클릭)이 안내된다
    • [ ] 최대 30개까지 추가 가능하다는 정보가 표시된다
    • [ ] 가지고 있는 재화 개수가 표시된다
  2. [이미지 업로드] 이미지의 배경을 제거하고 싶은 사용자가 간편하게 여러 개의 이미지를 업로드할 수 있다.
    • [ ] 드래그 앤 드롭으로 이미지를 업로드할 수 있다
    • [ ] 업로드 영역 클릭 → 파일 선택으로 이미지를 업로드할 수 있다
      • 지원 포맷: jpg, jpeg, png, webp
      • 파일 크기: 최대 10MB
    • [ ] 한 번에 최대 30개까지 이미지를 추가할 수 있다
    • [ ] 30개 초과 시 추가 업로드가 차단되고 안내 메시지가 표시된다
      • 30개까지는 업로드가 되고, 그 이후 업로드 차단
    • [ ] 업로드된 이미지가 리스트에 미리보기로 표시된다
    • [ ] 개별 이미지를 삭제할 수 있다
  3. [배경제거 시작] 이미지를 업로드한 사용자가 소모될 재화를 확인하고, 배경 제거를 시작할 수 있다.
    • [ ] 이미지가 1개 이상 업로드되면 '배경 제거 시작' 버튼이 활성화된다
    • [ ] 버튼에 소모될 스타 개수가 표시된다 (예: "배경 제거 시작 -5")
    • [ ] 버튼 클릭 시 확인 모달이 표시된다
    • [ ] 확인 모달에 "이미지 1개당 스타 1개가 차감되며, 차감 후 되돌릴 수 없습니다" 안내가 포함된다
    • [ ] 확인 후 배경 제거가 시작된다
    • [ ] 보유 스타가 부족한 경우 에러 모달이 표시된다 → 5번 스토리에서 이어짐
  4. [배경제거 진행 중] 배경 제거를 진행 중인 사용자가 현재 진행 상황을 확인할 수 있다.
    • [ ] 배경 제거 시작 시 로딩 화면이 표시된다
    • [ ] 로딩 화면에서는 다른 동작을 할 수 없다
    • [ ] 사이드 페이지를 나가도 배경 제거가 계속 진행된다
    • [ ] 스튜디오를 완전히 나가거나 웹을 종료해도 배경 제거가 중단되지 않는다
    • [ ] (P1 - 차순위) 진행 현황을 볼 수 있다 (예: 5/10 완료)
    • [ ] (P1 - 차순위) 끝났을 때 알림을 주면 베스트!
  5. [재화 부족] 재화가 부족해서 배경 제거를 사용하지 못하는 사용자는 재화 충전을 안내받아, 재화를 충전할 수 있다.
    • [ ] 보유 스타가 부족한 상태에서 '배경 제거 시작' 버튼 클릭 시 알림 모달이 표시된다
    • [ ] 알림 모달에 "스타가 부족합니다" 메시지가 표시된다
    • [ ] 현재 보유 스타와 필요한 스타 개수가 명시된다
    • [ ] [충전하러 가기] 버튼이 제공된다
    • [ ] [충전하러 가기] 클릭 시 스타 충전 페이지로 이동한다 → 이동하지 않고 모달로 가능?
    • [ ] 배경 제거가 시작되지 않으며 스타가 차감되지 않는다
  6. [배경제거 완료] 배경 제거를 완료한 사용자는 결과 이미지를 확인한 후 원하는 이미지만 다운로드하고 불필요한 이미지는 삭제할 수 있다
    • [ ] 배경 제거 완료 시 투명 배경의 이미지가 리스트에 표시된다 (미리보기)
    • [ ] 각 이미지마다 삭제 버튼이 제공된다
    • [ ] 삭제 버튼 클릭 시 해당 이미지가 리스트에서 제거된다
    • [ ] 일부 이미지가 에러로 실패한 경우, 원본 이미지와 함께 실패 표시가 보여진다
    • [ ] 스튜디오를 나갔다 들어와도 최신 리스트가 유지된다
    • [ ] 이미지는 최대 7일까지 보관되며, 이후 자동 삭제된다는 안내가 표시된다
    • [ ] [이미지 다운로드]와 [다른 이미지 배경 제거하기] 버튼이 제공된다
    • [ ] [이미지 다운로드] 버튼 클릭 시 모든 이미지가 ZIP 파일로 다운로드된다
    • [ ] ZIP 파일명은 "frontia_char.zip"으로 저장된다
    • [ ] 다운로드 후에도 이미지 리스트는 유지된다
  7. [배경제거 재시작] 배경 제거 완료 후 사용자는 배경제거 기능을 반복해서 사용할 수 있다.
    • [ ] [다른 이미지 배경 제거하기] 클릭 시 기존 이미지가 모두 삭제된다는 확인 모달이 표시된다
    • [ ] [다른 이미지 배경 제거하기] 클릭 시 뜨는 확인 모달에서 확인을 누르면 리스트가 비워진다

4. 기술 요구사항 및 성능 지표

4.1 기술 사양

  • 사용 API: Cloudflare Images API
  • 처리 프로세스:
    1. Cloudflare Images API로 이미지 업로드

    2. 업로드 완료 후 image_id 획득

    3. 배경 제거된 이미지 URL 생성:

      https://imagedelivery.net/<account_hash>/<image_id>/segment=foreground

      1. <account_hash>: 계정 해시값
      2. <image_id>: 업로드된 이미지 ID
      3. <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-
서버 에러로 실패XO (차감되었다면)
네트워크 에러로 실패XO (차감되었다면)

5.3 사용자 안내 메시지

처리 전 안내

  • "이미지 1개당 스타 1개가 차감되며, 차감 후 되돌릴 수 없습니다"
  • "최대 30개까지 업로드할 수 있습니다"

처리 중 안내

  • "배경 제거 진행 중입니다. 잠시만 기다려주세요"
    • (P1) "{N}/{M} 처리 중..."
  • "페이지를 나가도 배경 제거가 계속 진행됩니다"

처리 완료 안내

  • "이미지는 최대 7일까지 보관됩니다"

6. 데이터 분석