"이 사진을 멋지게 만들어줘." 모호한 한마디면 충분하다. 편집 단계를 스스로 추론하고, 계획하고, 실행하고, 평가하는 자율 사진 편집 에이전트다.
지시 기반 이미지 편집 모델은 강력하지만 사용자-루프 패러다임 아래 동작한다. 정밀하고 순차적인 지시를 만들 수 있어야 효과를 보는데, 이는 일반 사용자에게 어렵다. 이 의존성이 세 가지 근본적 한계를 만든다.
계산 사진학의 다음 개척지는 더 강력한 편집기가 아니라, 전문가 수준 조작 없이도 사진을 향상하는 자율 편집 에이전트다. 인간 편집자처럼 이미지의 필요를 진단해 도구를 전략적으로 선택·배열하고 편집한다. PhotoAgent는 기반 편집 모델 자체를 혁신하는 대신, 이들을 조율하는 시스템 수준 프레임워크를 구성한다.
개루프 시스템은 피드백 없이 선형 행동 시퀀스를 실행한다. PhotoAgent는 몬테카를로 트리 탐색(MCTS)으로 편집 궤적을 트리 구조로 탐색해, 실행 전에 미래 편집의 장기적 결과를 시뮬레이션한다. 아래 트리에서 각 노드는 편집 상태, 밝기는 보상 점수, 굵은 경로는 선택된 최적 궤적이다.
시스템은 네 핵심 구성요소로 이뤄지며, perceive–plan–execute–evaluate 주기를 추상 컨트롤러가 관리한다. 편집 목표가 충족되거나 종료 조건이 만족될 때까지 폐루프가 이어진다.
VLM(LLaVA·Qwen-VL)이 입력 이미지를 분석해 다양하고 원자적인 편집 행동 K개를 생성한다. 구도·객체 수준 연산을 엄격한 JSON으로 출력한다.
MCTS가 후보 행동을 반복 롤아웃으로 탐색·채점·가지치기해 최종 결과가 최적인 시퀀스를 고른다. 근시안적 결정과 되돌릴 수 없는 실수를 피한다.
상위 K개 행동을 실제로 적용한다. 전통 연산자(OpenCV·PIL)와 생성 모델(FLUX.1 Kontext·Step1X-Edit) 사이에서 선택하며, 결과를 보상 모델로 재평가한다.
편집 결과를 채점해 입력 대비 개선이 있으면 다음 상태로 채택하고, 없으면 이전 상태로 롤백한다. 최대 반복 도달 또는 무개선 시 종료한다.
MCTS는 실제 편집을 수행하기 전에 여러 미래 궤적을 빠른 근사 환경에서 시뮬레이션한다. 저해상도 처리와 제한된 확산 샘플링으로 결과를 빠르게 미리 보되, 평가에 필요한 시각·의미 정보는 보존한다.
시뮬레이션 부정확성을 줄이기 위해 실행 단계에서는 최고 점수 하나가 아니라 상위 K개 행동을 실제로 적용한 뒤 보상 모델로 재평가해 최고 결과만 다음 상태로 남긴다. 최종 결정이 시뮬레이션 추정이 아닌 실제 결과에 근거하도록 보장한다.
PhotoAgent는 도구 비의존적으로, 유연한 API와 오픈소스 편집 플랫폼을 프로그래매틱하게 제어한다. 저수준 색·대비·조명 조정을 넘어 어두운 하늘에 해를 더하거나 장면 속 객체를 수정하는 의미 있는 편집을 수행한다.
색 조정·자르기처럼 안정적이고 빠른 재현이 필요한 연산을 담당한다.
객체 추가·교체, 하늘 변경 같은 의미 수준 편집을 수행한다. 백엔드 교체는 API 한 줄 변경이다.
기존 화질 평가 데이터셋은 AI 생성 이미지·스크린샷·광고·포스터가 많아 실사용자 사진(UGC)에 부적합하다. PhotoAgent는 실제 사용자 사진 기반 다단계 편집 데이터셋 UGC-Edit을 구축하고, 그 위에서 보상 모델을 학습한다.
LAION(영어 중심 웹)과 RealQA(중국어 중심)에서 관광지·식당·호텔 등 실사용 장면을 수집한다.
Qwen에 구조화 프롬프트를 걸어 이미지별 다양한 편집 의도를 생성한다.
VLM 태깅 후 수동 필터링으로 진짜 UGC 특성을 지닌 7K 이미지 부분집합을 얻는다. 미적 점수를 1–5로 정규화한다.
Qwen2.5-VL 7B를 GRPO로 학습한다. 그룹 내 상대 순위에서 배워 주석 잡음에 강건하고 미묘한 미적 선호를 포착한다.
현실 조건을 반영해 모든 방법에 동일한 모호한 프롬프트("이 이미지를 좋게 만들어줘")를 준다. 비에이전트 방법과 에이전트 방법 두 그룹과 비교한다. GPT-4o는 과편집 경향으로 색과 대비를 과장해 지각 지표는 높아도 왜곡을 유발한다.
| 방법 | CLIP Sim ↑ | ImageReward ↓ | BRISQUE ↓ | LAION-R ↑ | UGC Score ↑ |
|---|---|---|---|---|---|
| 원본 이미지 | 0.6011 | 0.3836 | 0.6965 | 0.4876 | 3.022 |
| GPT-4o | 0.6142 | 0.4262 | 0.8763 | 0.5091 | 4.009 |
| InstructPix2Pix | 0.6101 | 0.3984 | 0.6454 | 0.4751 | 3.207 |
| SDXL+Prompt | 0.6084 | 0.3855 | 0.6955 | 0.4924 | 3.457 |
| Flux.1 Kontext | 0.6059 | 0.4039 | 0.6718 | 0.4897 | 3.325 |
| HuggingGPT | 0.6024 | 0.3844 | 0.7041 | 0.4841 | 0.367 |
| ReAct (개루프) | 0.6024 | 0.3833 | 0.7041 | 0.4833 | 3.111 |
| ReAct (폐루프) | 0.6026 | 0.3953 | 0.7030 | 0.4886 | 3.183 |
| PhotoAgent (Ours) | 0.6054 | 0.3954 | 0.6103 | 0.4934 | 3.465 |
PhotoAgent는 BRISQUE 최고를 기록해 프레임워크의 효과를 입증한다. 개루프 에이전트는 시각 피드백 부재로 오류가 누적되고, 폐루프도 근시안적 결정에 제약된다.
맞춤 평가자의 효과를 검증하기 위해 인간 판단과의 상관을 기존 지표와 비교한다. 아래는 스피어만 순위 상관(SRCC)이다. GRPO 미세조정 후 UGC 평가자가 모든 베이스라인을 큰 폭으로 앞서, 폐루프 평가의 신뢰 기반을 제공한다.
외부 PARA 데이터셋에서도 SRCC 약 0.75를 달성해 기존 PIAA 모델(0.70–0.72)을 넘어서며, 여러 시나리오에서 일관되게 인간 선호와 정렬한다.
기본 구성(탐색 깊이 3·반복당 최대 20 시뮬레이션·3 편집 반복)에서 이미지당 평균 처리 시간은 약 470초다. 지배적 비용은 MCTS 계획자의 시뮬레이션과 루프 내 실행이다. 시뮬레이션 수를 줄이면 화질을 비슷하게 유지하면서도 훨씬 빠른 운영점에 도달한다.
기본 설정은 속도가 아니라 품질을 강조한다. 아키텍처 변경 없이 더 빠른 운영점을 쉽게 얻을 수 있으며, 저해상도 시뮬레이션의 sim-to-real 격차는 상위 K 재채점과 매 편집 후 재계획으로 통제한다.