AI 도구만으로 30초 광고용 스토리보드(컷별 이미지 + 보고용 웹페이지)를 처음부터 끝까지 만든 전 과정 매뉴얼입니다. "시네마틱"은 영화 같은 색감과 연출을 뜻하며, 이 문서를 따라 하시면 AI 광고 제작이 처음이어도 같은 결과물을 재현할 수 있도록 모든 단계를 풀어 적었습니다.
이번 사례에서 무엇을, 얼마에, 어떤 도구로 만들었는지 먼저 확인하시는 것이 빠릅니다. 숫자는 모두 실제 측정값입니다.
각 도구는 정해진 역할이 있습니다. 한 도구가 모든 것을 하는 것이 아니라 "기획·코드·이미지·편집·배포"를 단계별로 분담해서 결과물을 만들었습니다.
기획 정리, 프롬프트 작성, Python 스크립트 자동 생성, HTML 페이지 코딩, 메모리(MEMORY.md) 관리까지 — 작업 전 과정의 지휘자.
시네마틱 키프레임 8장을 4K 품질로 생성. 영문 텍스트 합성 우수, 한국어 텍스트는 약함(영상 합성 단계에서 후처리).
다양한 카메라 각도·라이팅 베리에이션. v3.1의 13컷 스토리보드 본편은 Higgsfield 결과를 톤그레이드해 사용.
광고주 피드백 디테일 편집에 특화. 실제 제품 사진을 base로 두고 라이팅만 변환하면 디테일 일관성이 깨지지 않음.
컨트라스트·채도·샤프니스 일괄 보정, 빨간 LED 미러 복제, 작은 자막 제거 등. 13컷 모두에 동일 톤을 자동 적용.
정적 SPA를 영구 URL로 무료 호스팅. 같은 명령어로 재배포 시 같은 URL이 갱신되어 광고주 공유에 최적.
아래 흐름을 그대로 따라 하시면 다른 제품·광고에도 동일하게 적용 가능합니다. 먼저 한눈에 보이는 9단계 흐름 후, 각 단계의 입력·출력·도구·소요시간을 자세히 풀어 설명합니다.
# 전체 컷 생성 cd /Users/sjiphone/Desktop/라쓰캐리어/광고기획페이지 python3 scripts/generate_imagen.py config/batch_config_lath_imagen4.json # 특정 컷만 재생성 (예: 5번 컷) python3 scripts/generate_imagen.py config/batch_config_lath_imagen4.json 05_
# 한 번만 (계정 연결) npx wrangler@latest login # 매번 배포 (이 명령어 한 줄) cd /Users/sjiphone/Desktop/라쓰캐리어/광고기획페이지/storyboard_v3 npx wrangler@latest pages deploy . --project-name=lath-storyboard --commit-dirty=true
AI 이미지 도구에 단순히 "멋지게 만들어줘"라고 하면 결과가 들쭉날쭉합니다. 아래 공식을 프롬프트에 명시하면 13컷 모두 같은 시네마틱 톤으로 묶입니다.
영화 촬영용 카메라(ARRI Alexa 35) + 가로비가 시네마틱한 아나모픽 렌즈, 50~100mm 매크로. 프롬프트에 그대로 적으면 AI가 알아듣습니다.
옆에서 강하게 비치는 빛(림라이트)으로 윤곽을 살리고, 정면은 부드럽게 채우고, 어두운 부분은 더 깊게. 한쪽이 강하면 한쪽은 약하게.
전체적으로 어두운 회색 톤(차콜 그라데이션). 빨간색 하나만 선명하게 살리고 나머지는 흑백에 가까운 모노크롬으로 — 시선이 자연스럽게 빨강에 모입니다.
주제만 또렷하고 배경은 부드럽게 흐리게. 카메라 용어로 "얕은 심도"라고 합니다. 광고에서 시선을 한 곳에 집중시키는 가장 강력한 기법.
한국어 슬로건이 들어갈 자리를 미리 비워둡니다. AI 이미지에 한국어를 직접 넣지 말고, 영상 합성 단계에서 텍스트로 따로 얹는 것이 깔끔합니다.
def base_grade(img):
img = ImageEnhance.Contrast(img).enhance(1.05) # 컨트라스트 +5%
img = ImageEnhance.Color(img).enhance(0.94) # 채도 -6%
img = ImageEnhance.Sharpness(img).enhance(1.08) # 샤프니스 +8%
return img
이 값은 보수적인 기본값입니다. 다크 무드를 더 살리려면 컨트라스트를 1.08까지 올리고, 채도는 0.92까지 낮춰도 됩니다.
피드백 한 건이 들어왔을 때 어떤 순서로 처리해야 가장 빠르게 다시 보낼 수 있는지를 표준화한 9단계 사이클입니다. 이 흐름이 익숙해지면 컷당 약 15분 안에 처리됩니다.
"컷 6번에 나사가 아니라 둥근 모양", "컷 8번 자물쇠가 메탈이 아니라 플라스틱" 등 디테일 단위 요청을 그대로 받아 정리합니다.
피드백 받은 컷의 현재 생성 이미지와 실제 제품 사진(라쓰 캐리어 이미지/DSC0xxxx.jpg)을 나란히 놓고 차이점을 부위별로 표로 정리합니다.
변경 사항을 1·2·3 번호로 분리하고, 마지막에 "Preserve absolutely…" 절로 변경 외 모든 요소 보존을 명시합니다.
같은 부위를 여러 번 시도해도 디테일이 매번 다르게 나오면, 실제 제품 사진을 base로 두고 라이팅·색감·무드만 변환하는 방식으로 전환합니다.
ChatGPT 웹 UI 또는 OpenAI API로 편집 후 결과 PNG를 스토리보드 이미지 1차/컷N번수정.png로 저장합니다.
Python 스크립트(scripts/apply_*_revisions.py)로 PIL 톤그레이드 + JPEG 변환 + storyboard_v3/images/ 덮어쓰기까지 한 번에 처리합니다.
index.html에서 수정된 이미지 src 4곳(타임라인 1·컷 상세 1 × 두 곳)에 ?v=2·?v=3 같은 쿼리를 붙여 브라우저 캐시를 강제 무효화합니다.
"v3.1 → v3.2 (C06·C08 광고주 피드백 반영)"처럼 페이지 푸터에 변경 이력을 남깁니다. 광고주가 어떤 버전을 보고 있는지 즉시 확인할 수 있습니다.
npx wrangler@latest pages deploy . --project-name=lath-storyboard --commit-dirty=true 한 줄. 같은 URL이 1분 안에 새 버전으로 갱신됩니다.
아래 명령어만 순서대로 실행하면 같은 결과가 만들어집니다.
$ 표시는 터미널에서 실행한다는 의미이며, 실제로 입력할 때는 빼고 입력합니다.
$ cd /Users/sjiphone/Desktop/라쓰캐리어/광고기획페이지 # 전체 13컷 한 번에 생성 (이미 있는 컷은 자동 skip) $ python3 scripts/generate_imagen.py config/batch_config_lath_imagen4.json # 특정 컷만 재생성 (5번 컷만) $ python3 scripts/generate_imagen.py config/batch_config_lath_imagen4.json 05_
# 13컷 전체 톤 통일 $ python3 scripts/process_storyboard_v3.py # 광고주 피드백 반영 시 (수정된 PNG만 다시 톤 적용) $ python3 scripts/apply_cut68_revisions.py
# 한 번만 — Cloudflare 계정 연결 $ npx wrangler@latest login # 매번 — 이 한 줄로 재배포 $ cd /Users/sjiphone/Desktop/라쓰캐리어/광고기획페이지/storyboard_v3 $ npx wrangler@latest pages deploy . --project-name=lath-storyboard --commit-dirty=true
# 작업 전체 백업 (광고주 컨펌 직전 권장) $ cd /Users/sjiphone/Desktop $ zip -r 라쓰캐리어_백업_$(date +%Y%m%d_%H%M).zip 라쓰캐리어 -x "*.DS_Store"
$ 기호는 빼고 입력하세요. 중간에 오류가 나면 출력 메시지 그대로 Claude Code에 붙여넣어 도움받을 수 있습니다.
이 프로세스를 처음 따라하시는 분은 아래 사전 준비를 한 번 끝내두시면 됩니다. 한 번만 셋업하면 다음 프로젝트부터는 스크립트와 명령어가 그대로 재사용됩니다.
"Claude Code"는 터미널에서 작동하는 AI 어시스턴트입니다. 공식 사이트(claude.com/code)의 설치 안내를 따라 Mac/Windows에 설치하시고, 첫 실행 시 Anthropic 계정으로 로그인하시면 됩니다.
"API 키"는 외부 AI 서비스를 호출할 권한이 적힌 비밀번호입니다. Imagen 4를 쓰려면 Google AI Studio에서 발급합니다. 채팅창이나 카톡에 절대 그대로 붙이지 마시고, Mac 터미널에서 nano ~/.env 명령으로 환경설정 파일을 열어 거기에 저장하세요.
이번 사례의 폴더 구조는 아래 참고 자료 섹션에 정리되어 있습니다. 새 프로젝트는 같은 구조를 그대로 복사해서 시작하시면 됩니다.
https://dash.cloudflare.com/sign-up 에서 무료 가입(카드 등록 불필요). 첫 배포 전에 npx wrangler@latest login으로 한 번만 연결합니다.
Claude Code를 실행한 뒤 이렇게 입력해보세요. "라쓰 캐리어 광고 인수인계 페이지를 보고 같은 흐름으로 [새 제품명] 광고를 시작하고 싶어". Claude가 작업 폴더 만들기부터 안내해줍니다.
실제로 이번 작업 중 막혔던 지점들과 해결법입니다.
?v=2·?v=3 같은 버전 표시를 붙이면
브라우저가 "새 이미지구나" 인식하고 다시 받아옵니다.
타임라인 작은 미리보기와 컷 상세 큰 이미지 두 곳 모두 동일한 버전 표시를 적용하세요.
급하면 광고주에게 Cmd+Shift+R(Mac) 또는 Ctrl+Shift+R(Windows)으로 강력 새로고침을 안내해도 됩니다.
각 단계마다 도구 선택과 프롬프트 작성 방식이 다릅니다. 실제로 여러 도구를 비교한 후 정착한 노하우를 모았습니다. 이 섹션만 따라 해도 비슷한 품질의 결과물을 만들 수 있습니다.
같은 컨셉이라도 GPT Image 2·Gemini Pro·Midjourney는 입력 방식이 달라서, 한 도구의 프롬프트를 다른 도구에 그대로 붙여넣으면 결과가 어긋납니다. 각 도구의 강점을 살려 단계별로 분담하시는 것이 좋습니다.
한 단락 자연어로 풀어 씁니다. 변경/보존을 1·2·3 번호로 분리하고 마지막에 "Preserve absolutely…" 절을 명시합니다.
강점 — 텍스트 렌더링, 편집 모드(다중 이미지 + 마스크), 보존 일관성
약점 — 환상적·예술적 무드는 약함, OpenAI org verify 차단 시 ChatGPT 웹 UI로 우회
자연어 문장에 카메라·렌즈 키워드(ARRI Alexa 35, anamorphic, 50mm)를 함께 명시. 영문이 안정적이며, nano-banana는 인페인트·편집 전용 모델입니다.
강점 — API 안정, 16:9 4K 한 번에, 사진 사실주의 강력
약점 — 한국어 텍스트 렌더링 약함, 세밀한 인페인트는 별도 모델 필요
짧은 키워드를 콤마로 나열하고 끝에 파라미터(--ar 16:9 --v 6 --style raw)를 붙입니다. Discord UI. Vary Region으로 부분 정밀 편집.
강점 — 시네마틱 무드 자동 생성, 예술적 톤 압도적
약점 — 정확한 묘사 약함(추상화 경향), 한국어 불가, 편집 정밀도 낮음
# ① Midjourney — 무드보드 / 컨셉 비주얼 (광고 톤 잡기 단계) cinematic black hard-shell suitcase, ARRI anamorphic, deep charcoal, single red accent, premium ad campaign --ar 16:9 --v 6 --style raw # ② Gemini Imagen 4 — 1차 키프레임 대량 생성 (확정 톤으로 13컷 한 번에) Hyperrealistic cinematic product photography, ARRI Alexa 35 anamorphic lens 50mm, premium black hard-shell suitcase, deep charcoal seamless backdrop, single rim light from upper-right, monochromatic palette, ultra sharp. # ③ GPT Image 2 — 광고주 피드백 디테일 편집 (특정 부위만 정밀 수정) Edit the provided photograph. 1) Replace the torx screws with smooth domed rivets ... 2) Refine the cap silhouette ... Preserve absolutely [the rest].
같은 키프레임을 넣어도 도구마다 모션 품질·디테일 보존이 달라서, 한 도구에 정착하지 마시고 셋 다 한 번씩 돌려보고 베스트만 픽하시는 것이 효율적입니다. 컷당 1회 호출씩이라 추가 비용은 작지만 결과 차이는 큽니다.
최근 가장 자연스러운 움직임과 폼(form). 카메라가 천천히 들어가거나 옆으로 도는 시네마틱 무빙(돌리 인, 푸시 인, 슬로우 팬)을 의도대로 잘 만들어내서, 광고 메인 컷의 1차 선택지로 씁니다.
프롬프트 팁 — 자연어로 움직임을 묘사하고, 카메라 무빙을 명시하며, 시간 흐름(0~3초, 3~5초)을 함께 적습니다.
시네마틱 라이팅·무드가 강합니다. Seedance 2의 결과가 의도와 어긋나는 컷에서 대안으로 활용합니다.
프롬프트 팁 — 무드·라이팅 키워드 위주로, 움직임은 짧고 단순하게 표현합니다.
전반적으로 괜찮지만 가끔 구현 결과가 의도와 어긋나서, 같은 프롬프트로 여러 번 돌려봐야 안정적입니다. 시작·끝 프레임을 직접 지정할 수 있어 정확한 모션이 필요한 컷에 유리합니다.
프롬프트 팁 — 자연어로 길게 묘사 + 시작/끝 프레임 이미지 첨부.
음악 AI는 "멋진 음악 만들어줘"보다 장르·BPM·분위기·악기·구조를 함께 명시할 때 의도한 트랙이 정확히 나옵니다.
자연어 프롬프트로 30초~2분 음악 생성. 가사 합성도 가능. 시네마틱 광고 BGM과 잘 맞으며, 반복 생성으로 베리에이션 확보가 쉽습니다.
사운드 이펙트(SFX) 생성 강력. 캐리어 굴러가는 소리, 잠금 클릭 소리, 지퍼 마찰음 같은 광고 효과음 제작에 활용. 보이스오버 합성도 자연스럽습니다.
# 라쓰 캐리어 30초 광고 BGM 예시 (Suno에 그대로 입력) Cinematic ambient instrumental, BPM 75, deep synth bass with subtle string pad, premium luxurious mood, contemplative and quiet, 30 seconds total, gentle build at 0:08, soft drop at 0:18, fade out in last 5 seconds.
이번 사례뿐 아니라 모든 광고 편집에 적용되는 두 가지 원칙입니다. 처음엔 번거로워 보이지만, 수정 라운드가 한두 번만 들어와도 시간 차이가 크게 납니다.
File → New → Adjustment Layer → 만든 후 타임라인에 드래그.