
한 장의 이미지에서 광고 영상까지: Python과 AI로 구축하는 「크리에이티브 파이프라인」 실전 기록
요약
Python, OpenCV, Stable Diffusion 등을 활용하여 상품 데이터를 광고 영상으로 자동 변환하는 크리에이티브 파이프라인 구축 과정을 다룹니다. 반복적인 영상 편집 작업을 코드로 자동화하여 효율성을 높이는 실전 실험 기록입니다.
핵심 포인트
- Python과 API 통합을 통한 비디오 처리 파이프라인 구축
- 상품 데이터를 구조화하여 AI 프롬프트 생성에 활용
- OpenCV를 이용한 이미지 자동 트리밍 및 리사이징 자동화
- 크리에이티브한 판단과 반복적인 작업 처리의 분리
공시: 이 기사에서 소개하는 도구·서비스와 상업적인 이해관계는 없습니다. 어디까지나 개인의 실험·검증 기록입니다.

왜 광고 영상 생성을 자동화하고 싶었는가
광고 영상은 제대로 만들려고 하면 의외로 「비크리에이티브한 작업」이 많습니다.
해상도 조정, 종횡비 맞추기, 길이 미세 조정, 내보내기 형식 변경, 각 플랫폼에 맞춘 베리에이션 생성….
제 경우, 쇼트 광고를 양산하고 싶을 때 편집 소프트웨어 상에서 비슷한 조작을 수십 번씩 반복하고 있었고, "이거, 코드로 하는 게 더 낫지 않을까?"라고 생각한 것이 첫 계기였습니다.
그로부터 Python, FFmpeg, OpenCV, Stable Diffusion을 조합한 「Video processing pipeline (비디오 처리 파이프라인)」을 만드는 실험이 시작되었습니다.
전체상: Product Data → Export 까지의 파이프라인
제가 지금 테스트하고 있는 흐름은 대략 다음과 같습니다.
Product Data (상품 정보·LP·이미지·텍스트)
↓
Image Processing (트리밍, 리사이즈, 텍스트 오버레이)
...
하나하나가 기존 기술의 조합이지만, 「API integration (API 통합)」하여 파이프라인화하면 경험이 상당히 달라집니다.
손으로 하던 세세한 작업이 Python 스크립트와 API 호출로 대체되는 이미지입니다.
Product Data: 소재를 「데이터」로 바라보기
크리에이터 관점에서 가장 먼저 변한 것은 소재를 바라보는 시각이었습니다.
이전에는 「사진 폴더」, 「카피 안」, 「썸네일 후보」 등으로 제각각 관리했지만, 파이프라인을 구축하기 시작한 이후로는 전부를 「구조화된 Product Data (상품 데이터)」로 다루게 되었습니다.
구체적으로는 다음과 같은 구조입니다:
{
"product_name": "샘플 상품 A",
"price": 3980,
...
이렇게 해두면, 나중에 Image to video generator (이미지 투 비디오 생성기) 에 전달할 프롬프트를 반자동으로 구성할 수 있습니다.
Google Cloud의 Vertex AI의 Veo 모델에서는 「프롬프트 + 이미지 + 설정」을 코드에서 전달하는 워크플로우가 공식 문서에서도 해설되어 있어, 구조화된 데이터의 중요성을 잘 알 수 있습니다.
Image Processing: OpenCV와 Python으로 「밑준비」
실제 작업에서 가장 「편해졌다」고 느낀 부분이 바로 이 Image Processing (이미지 처리) 부분입니다.
- OpenCV로 자동 트리밍 (윤곽선 검출 + 무게 중심 계산으로 상품을 중앙으로 이동)
- 배경 흐림 처리나 가벼운 색상 조정의 스크립트화
- SNS별 권장 사이즈에 맞춘 리사이즈
처음에는 OpenCV의 좌표 지정 실수를 해서, 상품의 머리가 잘린 채로 대량으로 내보낸 적도 있습니다 (웃음).
다만, 한 번 스크립트가 안정되면 수십 장의 이미지를 한꺼번에 처리할 수 있으므로, 「크리에이티브한 판단」과 「작업적인 처리」가 완전히 분리되는 감각이 있습니다.
import cv2
def center_crop_product(image_path, output_size=(1080, 1080)):
img = cv2.imread(image_path)
...
AI Video Generation: Image to video generator 와의 관계 맺기
Image to video generator (이미지 투 비디오 생성기) 나 AI commercial generator (AI 광고 생성기) 를 사용하기 시작하며 가장 고민했던 것은 「어디까지를 AI에게 맡길 것인가」라는 선긋기였습니다.
Google의 Veo와 같은 생성 모델에서는 한 장의 이미지로부터 프롬프트 기반으로 영상을 생성할 수 있지만, 실제로 시도해 보면 프롬프트를 조금 바꾸는 것만으로 움직임이나 카메라 워크가 크게 변합니다. 「프롬프트 설계 = 연출」이라는 것을 체감하게 됩니다.
실제 실패 사례
① 텍스트를 너무 많이 집어넣은 프롬프트
# NG 예시
"A product floating in the air with sparkles,
fast zoom in, rotation, light flare,
...
→ 움직임이 부자연스러워져서, 광고로서 「안정감이 없다」는 인상을 주게 됨.
② 상품과 배경의 대비(Contrast)가 약한 입력 이미지
→ AI가 「어디를 주인공으로 삼아야 할지」 망설이는 듯한 모션이 나옴. 상품을 흰색 배경에서 다시 촬영했더니 개선됨.
AI commercial generator를 선택하는 관점
범용 동영상 생성 모델과 광고 특화 AI commercial generator를 비교해 보면, 용도에 따라 적합성과 부적합성이 명확하게 갈립니다.
| 비교 축 | 범용 모델 | AI commercial generator |
|---|---|---|
| 프롬프트 자유도 | 높음 | 다소 제한적 있음 |
| ... | ... | ... |
개인적인 결론으로는, **"시작(Prototype) 단계는 범용 모델로 자유롭게 실험하고, 양산(Mass Production) 단계는 AI commercial generator로 템플릿화한다"**는 방식의 구분 사용이 현재로서는 가장 적절하다고 느낍니다.
FFmpeg Rendering: 눈에 띄지는 않지만 가장 「업무」를 수행하는 부분
AI로 생성한 동영상 클립을 그대로 사용하는 경우는 거의 없으며, 결국 FFmpeg를 이용한 후처리가 필요합니다.
- BGM 자동 추가 (볼륨 조절 및 페이드 인·아웃)
- 자막(Telop) 삽입 (타임코드 기반 자동 배치)
- 여러 클립의 연결 및 트랜지션(Transition) 부여
# 자막 삽입 + BGM 합성 예시
ffmpeg -i input.mp4 -i bgm.mp3 \
-vf "drawtext=fontfile=NotoSansJP.ttf:\
...
이 부분은 상당히 「프로그래머스러운」 영역이지만, 개인적으로는 가장 안심이 되는 부분입니다.
AI의 출력물은 매번 미묘하게 다르지만, FFmpeg 스크립트는 언제나 동일하게 동작하므로 품질을 컨트롤하기 쉬워집니다.
Multi-platform Export: 플랫폼별 「특성」을 흡수하기
마지막으로 기다리고 있는 것은 각 플랫폼용 내보내기(Export)입니다.
| 플랫폼 | 종횡비 (Aspect Ratio) | 권장 길이 | 주의 사항 |
|---|---|---|---|
| TikTok | 9:16 | 21~34초 | 파일 크기 상한 · 초반 3초가 승부처 |
| ... | ... | ... | ... |
이 작업을 매번 수동으로 조정하면 정말 시간이 아깝기 때문에, Python 스크립트에 「내보내기 프리셋(Export Preset)」을 갖추어 명령어 한 번으로 각 패턴을 생성하도록 했습니다.
EXPORT_PRESETS = {
"tiktok": {"size": (1080, 1920), "duration": 30, "fps": 30},
"reels": {"size": (1080, 1920), "duration": 25, "fps": 30},
...
}
광고 영상 양산 파이프라인은 구조적으로 데이터 엔지니어링의 「ETL 프로세스」와 유사한 개념으로 설계할 수 있습니다. 소재의 가져오기(Extract), 가공·생성(Transform), 각 매체로의 내보내기(Load)라는 흐름은 제작 플로우를 데이터 처리 관점에서 재검토하면 정리하기가 수월해집니다.
실제로 사용하며 느낀 점: AI는 「파트너」이지 「자동 조종」이 아니다
지금까지 다양한 Image to video generator나 AI commercial generator를 시도해 보았지만, 솔직히 「버튼 하나로 마법 같은 광고가 만들어지는 것」은 없었습니다.
오히려 파이프라인을 제대로 구축한 상태에서 사용하면 다음과 같은 장점이 보입니다.
- 시작(Prototype) 속도가 압도적으로 빨라짐 (하루에 10~20개 패턴 정도 시도 가능)
- 「좋았던 패턴」을 재현하기 쉬움 (데이터와 설정이 남음)
- 실패 사례로부터 배우기 쉬움 (어느 단계에서 문제가 생겼는지 확인 가능)
「AI와 API로 만드는 크리에이티브 파이프라인」이라는 컨셉은 단순한 유행어가 아니라, 상당히 실무적인 테마라고 느끼게 되었습니다.
자체 파이프라인 vs SaaS라는 선택지
최근에는 Nextify.ai와 같이 광고 영상 생성을 서비스로 제공하는 툴도 늘어나고 있습니다.
자체적으로 파이프라인을 구축하는 경우와 비교하면 각각 트레이드오프(Trade-off)가 존재합니다.
| 비교 축 | 자체 파이프라인 | Nextify.ai 등의 SaaS |
|---|---|---|
| 초기 구축 비용 | 높음 (설계·구현 필요) | 낮음 (즉시 사용 가능) |
| ... | ... | ... |
현재는 "독자적인 처리가 필요한 건은 자체 파이프라인, 표준적인 양산 건은 SaaS를 활용한다"는 방식으로 구분하여 테스트하고 있습니다. 어느 쪽이 정답이라기보다는, 프로젝트의 요구사항과 자신의 리소스에 따라 판단하는 것이 현실적이라고 생각합니다.
마치며: 자신의 제작 스타일을 언어화해 보기
광고 영상 생성 자동화를 진행하며 느낀 점은, "기술을 도입하면 자신의 제작 스타일이 명확해진다"는 것이었습니다.
어디까지 수작업으로 하고 싶은지, 어디서부터 코드와 AI에 맡기고 싶은지, 그 경계선은 크리에이터마다 다릅니다.
이 기사에서는 제가 실험하고 있는 Video processing pipeline (비디오 처리 파이프라인)과 AI model workflow (AI 모델 워크플로우)를 대략적으로 소개했지만, 읽고 계신 분들 각자마다 "이 부분은 따라 하고 싶다" 혹은 "이 부분은 나라면 직접 손으로 하고 싶다"라는 생각이 있을 것입니다.
현시점에서 아직 해결하지 못한 과제들도 있으며, 예를 들면 다음과 같습니다:
- 생성된 영상의 브랜드 톤 일관성 (Brand tone consistency)을 어떻게 담보할 것인가
- 여러 상품을 동일한 파이프라인으로 처리할 때의 프롬프트 (Prompt) 관리
- A/B 테스트 결과를 파이프라인에 피드백하는 메커니즘
이러한 부분들은 계속해서 실험 중입니다. 만약 저와 마찬가지로 광고 크리에이티브 제작을 자동화하려고 노력 중인 분이 계신다면, 꼭 자신만의 파이프라인을 언어화해 보시기 바랍니다. 그 프로세스 자체가 꽤나 크리에이티브한 작업이 되기도 합니다.
Discussion

AI 자동 생성 콘텐츠
본 콘텐츠는 Zenn AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기