본문 바로가기
초심자를 위한 AI/이미지 프롬프트

[이미지] 좋은 이미지를 얻기 위한 프롬프트 구성 방법(1)

by GAI.T & a.k.a Chonkko 2023. 4. 22.
반응형

지난 포스트에서 스테이블디퓨전이나 MS 빙 이미지 크리에이터 같은 이미지 생성AI에 대해 소개를 드렸습니다. 간단히 말하면 이미지 생성AI는 문자(Text), 즉 프롬프트가 입력되면 이미지를 생성(generate)하게 됩니다.

 

우리가 입력하는 프롬프트는 일종의 힌트가 되고 AI는 그 힌트를 통해 미리 학습해둔 거대한 크기의 이미지 데이터 세트 내에서 목표를 좁혀나가 자신이 찾아낸 가장 정답같은 이미지를 만들어냅니다. 당연히 AI는 우리 머리속을 읽지는 못합니다. 우리가 얼마나 정확하고 구체적으로 원하는 이미지에 대한 힌트를 주느냐가 관건입니다.

 

한 가지 중요한 점은 AI가 힌트를 이해하는 방식은 우리 생각과는 전혀 다를 수 있다는 점입니다. AI가 더 잘 알아듣는 방식이 있고, AI가 더 중요하게 생각하는 문구가 있기 때문에 AI가 이해하기 쉬운 힌트를 주는 것, 그래서 필요한 것이 프롬프트 구성입니다. 프롬프트 세트라고 해도 되겠네요.

 

스테이블디퓨전이나 미드져니 같은 유명한 이미지 생성AI에서 많은 사람들이 사용하며 검증한 프롬프트 구성이 다른 이미지 생성 프롬프트에도 어느정도 적용이 가능한 만큼 이를 기준으로 초보자가 쉽게 시도해볼 수 있는 방식으로  설명해보려고 합니다. 각 프롬프트 사이에는 그냥 쉼표를 넣으시면 됩니다. 

 
기본 4구성 : 표현수단(Medium), 주제(Subject), 배경(Background), 스타일(Style) 
 
추가 구성 1 : 색감(Color), 빛(Lighting), 해상도(Resolution)
 
추가 구성 2 : 화가(Artist), 이미지 웹사이트(Website) 
 

이번 포스트에서는 우선 각각의 구성에 대해 기본적인 개념만 잡아보겠습니다. (누구나 시도해보실 수 있도록 무료인 MS 빙 이미지 크리에이터로 직접 그린 그림을 예시로 들어봅니다.) 

 

주제(Subject)

 

주제(Subject)는 여러분이 그리고 싶은 대상입니다. 고양이일 수도 있고, 사람일 수도 있고, 로봇일 수도 있고 무엇이든 가능하겠지요. 이때 가급적이면 구체적으로 상상해서 묘사를 해주는 것이 좋습니다. 그냥 로봇을 그려줘가 아니라 외형과 동작을 함께 표현해주는 것입니다. "책을 들고 의자에 앉아 있는 티타늄 소재의 로봇(Titanium Robot holding a book sitting on a chair)" 이라고 해볼까요. 주제만 잘 표현해도 쓸만한 이미지가 나오지만, 아무래도 개성이 부족합니다.

기본 프롬프트1 : Titanium Robot holding a book sitting on a chair

 

표현수단(Medium)

 

표현수단(Medium)은 유화, 수채화, 일러스트레이션, 3D 렌더링, 사진 같이 그림을 그리는 소재를 뜻합니다. 표현수단 프롬프트는 AI가 아주 좋아하는 힌트입니다. 기본 프롬프트1에 표현수단으로 각각 유화(oil painting), 일러스트레이션(illustration), 3D 렌더링(3d rendering)이라는 프롬프트를 추가해보았습니다. 참고로, 표현수단을 프롬프트의 제일 앞에 구성하는 것을 AI가 잘 알아듣는 것 같습니다. 

기본 프롬프트2: Oil painting, Titanium Robot holding a book sitting on a chair
기본 프롬프트2: illustration, Titanium Robot holding a book sitting on a chair
기본 프롬프트2: 3d rendering, Titanium Robot holding a book sitting on a chair

기본 프롬프트2 : Oil painting,Titanium Robot holding a book sitting on a chair (두번째, 세번째는 oil painting 대신 illustration, 3d rendering을 프롬프트로 넣었습니다.)
 

배경(Background)

 

배경(Background)는 말그대로 그림의 배경을 프롬프트로 알려주는 것입니다. 은하계 배경(background of galaxy)이라는 프롬프트를 맨 뒤에 추가해보았습니다.

기본 프롬프트3: 3D rendering, Titanim Robot holding a book sitting on a chair, background of galaxy

 

스타일(Style)

 

스타일(Style)은 이미지에 대한 예술적 표현양식을 알려주는 프롬프트입니다. 그림으로 치면 화풍 정도가 될까요. 인상주의(impressionist), 현실주의(realistic), 초현실주의(surrealistic 또는hyperrealistic), 팝아트(pop art)  등이 좋은 예이며, 이러한 스타일 프롬프트도 그림에 미치는 영향력이 큽니다. 이번에는 기본 프롬프트3에 현실감을 좀 더 주기 위해 현실주의(realistic)이라는 프롬프트를 추가해보겠습니다.

 

기본 프롬프트 4구성: 3D rendering, Titanim Robot holding a book sitting on a chair, background of galaxy, realistic

 

일단 이렇게  표현수단, 주제, 배경, 스타일 4가지로 구성된 기본 프롬프트로 제 수준에 만족할 만한 이미지가 완성되었네요. 

 
완벽한 프롬프트를 만드는 과정의 지름길은 없는 것 같습니다. 계속 반복하고 모방하다보면 자신만의 방식이 생긴다고 하네요. 
 
다음 포스트에서는 추가 구성 프롬프트들이 어떻게 이미지에 개성을 더하는지 살펴보겠습니다.

[이미지] 좋은 이미지를 얻기 위한 프롬프트 구성 방법(2)

 
 

반응형