SYSTEM BLUEPRINT

스포츠 대회 사진 자동 매칭
운영 화면 및 API 흐름 설계

대회 운영자, 품질 검수 담당자, 내부 프런트 개발자가 같은 결과를 신뢰할 수 있도록 화면과 데이터 흐름을 정의합니다.

대회 운영 관리자 시나리오

대회 사진 배치 운영 여정

대회 생성부터 S3 업로드 연결, GPU 워커 실행, 배치 완료 리포트까지의 흐름입니다.

1. 대회 생성

대회명, 촬영일, 예상 사진 수 등록

2. S3 연결

원본 경로와 썸네일 생성 규칙 설정

3. 배치 시작

GPU 워커 수와 큐 정책 선택

4. 진행률 확인

OCR, 얼굴, 의상 단계별 처리량 확인

5. 리포트 완료

매칭 성공률과 실패 유형 확인

대회 운영 관리자 | 화면 01

대회 배치 관제 대시보드

admin.race-ai.local/events/2026-seoul-marathon
Seoul Marathon 2026
사진
842,000장
GPU
8 워커
상태
배치 중

S3 원본에서 1080p 추론 이미지를 생성하고 큐에 적재합니다.

worker-03 OCR 91%
worker-05 face-vector 64%
retry queue 128
indexed: 612,480

[화면 개요 및 목적]

운영자가 대회 사진 수, GPU 워커, 배치 진행률을 한눈에 확인하는 화면입니다.

[핵심 기능 로직]

S3 업로드 이벤트와 배치 큐 상태를 연결하여 전체 처리량과 실패 작업을 실시간 집계합니다.

  • FastAPI Admin API
  • Celery + Redis Queue
대회 운영 관리자 | 화면 02

배치 실행 설정 화면

admin.race-ai.local/batches/new
Seoul Marathon 2026
사진
842,000장
GPU
8 워커
상태
배치 중

S3 원본에서 1080p 추론 이미지를 생성하고 큐에 적재합니다.

worker-03 OCR 91%
worker-05 face-vector 64%
retry queue 128
indexed: 612,480

[화면 개요 및 목적]

원본 이미지 경로, 추론용 해상도, GPU 워커 수, 재시도 횟수를 설정합니다.

[핵심 기능 로직]

배치 설정값은 작업 테이블에 저장되고 모든 워커가 동일한 규칙으로 처리합니다.

  • AWS S3
  • Docker GPU Worker
대회 운영 관리자 | 화면 03

배치 완료 리포트

BIB 24817

OCR 신뢰도 97.8%

저신뢰 후보 검수

얼굴 유사도 0.84

의상 일치 0.91

최종 판단: 자동 승인

[화면 개요 및 목적]

OCR 성공률, 보조 매칭 수, 실패 이미지 유형, 예상 GPU 비용을 요약합니다.

[핵심 기능 로직]

모델 버전과 처리 결과를 묶어 다음 대회 개선 기준으로 남깁니다.

  • PostgreSQL
  • Batch Metrics
사진 품질 검수 담당자 시나리오

저신뢰 매칭 검수 여정

OCR 실패와 낮은 신뢰도 후보를 확인하고 재처리 또는 승인하는 흐름입니다.

1. 실패 큐 확인

OCR 실패 및 저신뢰 후보 목록 확인

2. 원본 비교

원본, 배번호 박스, OCR 결과 비교

3. 보조 매칭 검증

얼굴과 의상 유사도 확인

4. 승인 또는 재처리

오탐 태깅 및 재처리 요청

5. 품질 반영

검수 결과를 다음 배치 기준에 반영

사진 품질 검수 담당자 | 화면 01

OCR 실패 검수 센터

admin.race-ai.local/review/ocr-failed
BIB 24817

OCR 신뢰도 97.8%

저신뢰 후보 검수

얼굴 유사도 0.84

의상 일치 0.91

최종 판단: 자동 승인

[화면 개요 및 목적]

배번호가 흐리거나 접힌 사진을 담당자가 빠르게 확인합니다.

[핵심 기능 로직]

신뢰도와 실패 사유를 기준으로 검수 우선순위를 자동 정렬합니다.

  • OCR Confidence Score
  • Review Queue
사진 품질 검수 담당자 | 화면 02

얼굴·의상 보조 매칭 화면

admin.race-ai.local/review/assist-match
BIB 24817

OCR 신뢰도 97.8%

저신뢰 후보 검수

얼굴 유사도 0.84

의상 일치 0.91

최종 판단: 자동 승인

[화면 개요 및 목적]

배번호가 보이지 않는 사진을 기준 샘플의 얼굴과 의상 특징으로 비교합니다.

[핵심 기능 로직]

얼굴 유사도 통과 후보 중 의상 특징이 불일치하면 자동 제외합니다.

  • InsightFace Vector
  • HSV / ReID Filter
사진 품질 검수 담당자 | 화면 03

오탐 유형 태깅 화면

admin.race-ai.local/review/false-positive
BIB 24817

OCR 신뢰도 97.8%

저신뢰 후보 검수

얼굴 유사도 0.84

의상 일치 0.91

최종 판단: 자동 승인

[화면 개요 및 목적]

군중 겹침, 유사 유니폼, 측면 얼굴 등 오류 유형을 남기는 화면입니다.

[핵심 기능 로직]

검수 태그는 모델 컷오프와 재처리 룰 개선에 활용됩니다.

  • Data Aggregation & Visualization
  • Model Versioning
API 연동 담당자 시나리오

참가자 조회 API 연동 여정

클라이언트 내부 프런트가 배번호 조회 기능을 빠르게 붙일 수 있도록 응답 구조를 확인합니다.

1. 배번호 입력

참가자 배번호로 검색 요청

2. 색인 조회

사전 매핑 테이블에서 즉시 조회

3. 사진 목록 반환

썸네일과 원본 주소 반환

4. 속도 확인

100밀리초 이하 응답 지표 확인

5. 연동 완료

프런트 조회 화면과 연결

API 연동 담당자 | 화면 01

참가자 조회 API 테스트

api.race-ai.local/photos?bib=24817
GET /photos?bib=24817
74ms

사전 색인 테이블에서 즉시 반환

[화면 개요 및 목적]

배번호를 입력하면 사전 색인된 사진 목록을 즉시 반환하는 테스트 화면입니다.

[핵심 기능 로직]

조회 시점에는 AI 추론을 돌리지 않고 PostgreSQL 인덱스와 캐시를 읽습니다.

  • FastAPI REST
  • Indexed Query
API 연동 담당자 | 화면 02

응답 필드 명세 화면

api.race-ai.local/docs
GET /photos?bib=24817
74ms

사전 색인 테이블에서 즉시 반환

[화면 개요 및 목적]

썸네일 주소, 원본 다운로드 주소, 신뢰도, 촬영 시간 필드를 확인합니다.

[핵심 기능 로직]

프런트 개발자가 바로 연동할 수 있도록 Swagger와 샘플 응답을 제공합니다.

  • Swagger
  • Signed URL
API 연동 담당자 | 화면 03

조회 속도 모니터링

admin.race-ai.local/api-latency
GET /photos?bib=24817
74ms

사전 색인 테이블에서 즉시 반환

[화면 개요 및 목적]

배번호 조회 응답 시간이 100밀리초 목표 안에 들어오는지 확인합니다.

[핵심 기능 로직]

인덱스 성능과 캐시 적중률을 함께 모니터링합니다.

  • PostgreSQL Index
  • Issue Tracking & Status Management