기본 콘텐츠로 건너뛰기

좋은 이미지를 만들기 위한 조건 - Flux 또는 Stable Diffusion 활용법

 좋은 이미지를 만들기 위한 조건을 살펴 보면

그동안의 경험을 바탕으로 개인적으로 Stable Diffusion 과 Flux 를 이용하여 어떻게 멋진 이미지를 만들 수 있는 가를 정리해 보고자 한다. 물론 이 글의 내용은 개인적인 생각일 뿐  이것이 정석은 아니라는 것이다.  다른 달인들의 방식은 나의 방식과 다를 수도 있다.  그러나 그동안 수만장의 이미지를 생성하면서 나름 느꼈던 바를 정리한 것이기 때문에 초보자들에게 조금이라도 도움이 되었으면 한다.
Flux Master

1. Prompt 의 중요성

    이미지 생성형 AI에서 프롬프트는 결과물에 가장 큰 영향을 준다.  프롬프트는 사용자가 원하는 이미지를 AI에게 설명하는 텍스트 명령이다. 구체적이고 명확한 프롬프트가 중요하다. 예를 들어, "beautiful landscape"보다는 "sunset over mountains with a calm lake in the foreground, vibrant orange and pink hues reflecting on the water"와 같이 자세히 묘사하는 것이 더 좋은 결과를 얻을 수 있다.
  • 구체적인 묘사: 색상, 분위기, 구도, 시간대, 스타일 등을 포함하면 더 정교한 이미지를 얻을 수 있다.
  • 키워드 선택: 핵심적인 단어들을 명확히 사용한다. 예를 들어, "photorealistic" 또는 "surreal" 같은 단어로 스타일을 지정할 수 있다. 개인적으로 가장 좋아하는 키워드는 "silhouette" 이다. 이것은 여성 인물을 묘사하는데 좋은 작품성을 부여한다.
  • 부정 키워드 사용: 원하지 않는 요소는 Negative Prompt 에 부정 키워드로 명시할 수 있다. 예를 들어 "bad quality, bad anatomy, wrong fingers" 또는 "text, watermark"라고 하면 해당 요소가 배제된다.  다만 부정 키워드는 스테이블 디퓨전 SD1.5 에서 주로 영향을 주었고 , SDXL 버전에서는 부정 키워드가 없어도 제법 잘 나온다.  특히 Flux 에서는 Negative Prompt 입력이 필요가 없다.

2. Style 과 분위기

    이미지의 스타일과 분위기를 설정하는 것도 매우 중요하다.  AI는 다양한 예술적 스타일을 모방할 수 있기 때문에 원하는 스타일이 있다면, 프롬프트에 그 스타일을 명시하면 된다.
  • 예술적 스타일: "Impressionist painting" 또는 "Art Deco"와 같은 구체적인 예술 사조를 명시하면 특정 시대나 예술가의 스타일을 반영한 이미지가 생성된다.
  • 사진 스타일: "cinematic lighting" 또는 "photography"와 같은 표현을 사용하여 이미지를 더욱 사실적으로 만들 수 있다. 
  • 그림 재료 스타일: "oil painting" , "water color painting" , "pencil sketch" 또는 "ink painting" 등 으로 표현해 주면 그런 미술 스타일의 작품들이 만들어 진다.
  • 감정 및 분위기: "dark and moody" 또는 "bright and cheerful"과 같이 이미지의 전반적인 느낌도 표현할 수 있다.

  3. Model 선택 - Checkpoint 또는 Loras

    Stable Diffusion Checkpoint 는 SD 모델과 SDXL 그리고  Pony 모델이 있다.  SD 는 512x512 의 해상도로 훈련되었고, SDXL 은 1024x1024 해상도로 훈련이 된 모델이다.  따라서 SDXL 모델 사용시 더 좋은 해상도의 이미지를 얻을 수 있다.  Pony 모델은 파생된 모델로 애니메이션 캐릭터 스타일로 독특한 일러스트레이션을 생성하기 위해 주로 사용된다. Flux 모델도 1024x1024 로 훈련 되었기 때문에 높은 해상도의 이미지를 만들 수 있다. 개인적으로는 Flux의 이미지 품질이 가장 높은 것으로 생각된다. Midjourney 에도 결코 뒤지지 않는 모델이다.
  • Checkpoint 또는 Flux Unet 모델 : stable diffusion 과 Flux 모두 맨 처음의 기본 모델 들이 있고 거기서 변형된 파생 모델들이 수 없이 많이 존재한다.  그 모델들은 주로 CIVITAI 사이트에서 다운 받을 수 있기 때문에 수시로 들어가서 마음에 드는 모델들을 다운받아 사용 하기를 권한다.  똑같은 prompt 라도 어떤 모델을 사용 하는가에 따라 이미지의 결과물이 많이 다르다.  인물, 풍경, 사이버, 환타지, 그림, 스케치 등이 각각 모델에 따라 다르기 때문에 여러가지 모델들을 사용한 후 자신의 취향에 맞는 모델들을 찾을 수 있을 것이다.  반드시 수많은 이미지를 생성해 보아야 한다.
  • Pony 모델 : 이것 역시 수많은 파생 모델들이 존재한다. 그림체도 제각각이고 SFW, NSFW도 구분되어 있다.  참고로 NSFW 모델이 섹시하고 야한 19금 그림을 만들 수 있는 모델이다. 좋은 모델을 찾는 것이 아마도 좋은 이미지를 만들 수 있는 지름길이 될 것이다.
  • Loras : 좋은 checkpoint 모델을 찾았어도 그 모델이 100% 만족감을 주기 어렵다.  뭔가 아쉬운 부분이 존재하게 되는데 이럴 때 부족한 부분을 채워줄 모델이 Lora 모델 들이다. Lora 모델과 함께 사용하면 상당히 만족할 만한 이미지 생성이 가능하다. 보통 Lora 모델을 사용 할 때에는 Trigger 키워드를 사용하여야 Lora 모델이 작동하는 방식이다.
수 많은 이미지를 생성해 보면 어떤 모델에는 어떤 Prompt 가 잘 되는지 특성이 파악되고 그렇게 찾은 후에 적절한 정도의 Prompt 를 사용해도 좋은 결과를 얻을 수 있다.  Midjourney , Stable Diffusion, Pony, Flux 에 적용되는 prompt 들이 각각 모두 다르기 때문에 이것은 많은 시행오차를 겪은 후에야 특성을 파악할 수 있을 것으로 본다.

4. 여러가지 방법 시도

    많은 이미지를 생성해 보는 것은 당연한 일이다.  그런데 문제는 prompt 는 영어로 만들어야 하는데 외국어인 영어로 만들기가 쉽지 않는 일이다.  간단한 이미지를 위한 prompt 조차도 시간이 걸린다.  그래서 처음에는 다른 사람이 만든 prompt 를 가지고 많이 만들어 보기를 권한다.  거기서 여러가지 키워드를 변경하면서 시도해 보면 좋은 키워드도 찾을 수 있다.  stable diffusion 을 사용하기 위해 반드시 SD 로 만든 prompt 만 참고 할 필요는 없다.  Midjourney 용 prompt 도 복사해서 사용해 보라.  예기치 않는 멋진 이미지가 만들어 지는 것을 종종 느낄 수 있다.  원하는 이미지는 아니지만 더 멋진 이미지가 만들어 진다면 즐거운 일이다.  그것으로 그 prompt 를 수정해 나가면 나만의 독특한 작품이 만들어 진다.  

5. 나만의 모델 만들기 - Lora

    이미지를 계속 만들다 보면 다른 사람들이 만든 이미지도 보이고 어떻게 만든 것인지도 예상이 된다.  그리고 독특한 느낌의 이미지가 무엇인지도 알게 된다.  그럴 때 나만의 독특한 이미지를 만들고 싶을 것이다.  이런 경우에 checkpoint 를 변형해서 나만의 모델을 만들 수도 있지만 비용이 들고 만들기도 쉽지 않다.  그래서 나만의 독특한 Lora 를 만들어 사용하라는 것이다.   Lora를 만드는 방법은 이전에 작성된 다른 글을 참조 하면 된다.  특히 나만의 얼굴을 가진 캐릭터를 원한다면 반드시 Lora를 만들어 사용하기를 권한다.

결론적으로

    좋은 이미지를 만들기 위해서는 구체적인 프롬프트 작성, 적절한 AI 모델 선택, 반복적인  작업, 나만의 독특한 Lora 제작 등 여러 요소가 결합되어야 합니다. AI가 제공하는 다양한 기능을 최대한 활용하면서 반복적인 시도를 통해 최적의 조건들을 찾아내면 내가 원하는 이미지를 만들어 낼 수 있다.  생성형 이미지의 달인이 되는 길은  만들고 또 만들고 반복하면서 checkpoint - lora - prompt - 기타 조건 들의  최적 조건을 찾는 것이라고 생각한다.

댓글

이 블로그의 인기 게시물

Comfyui Wildcard 사용법 - Stable Diffusion , Flux 에서 쉽게 Random Prompt 로 이미지 만들기

 Comfyui Wildcard 사용법에 대하여 알아본다. Comfyui 로 Stable Diffusion 또는 Flux 로 이미지를 만들 때 Prompt 가 이미지를 결정하는데 매우 중요한 역할을 한다.  영어가 모국어가 아닌 이상 영어로 prompt 를 만드는 것이 참 어려운 일이다. 물론 처음에는 많은 다른 사람들이 사용한 prompt 들을 모방하여 수정하고 사용하는데 이런 일을 하나하나 해 보기가 시간이 많이 걸리고 어렵다.   그래서 Random 으로 prompt 가 만들어 져서 이미지가 생성되고 그 이미지 중에서 마음에 드는 이미지들을 골라 그 이미지의 Prompt들 만을 가지고 보완하고 개선하면 더 편리하고 좋지 않을까 생각이 든다.  그런 식의 Random Prompt 생성이 가능하게 해주는 것이 wildcard 사용이다. Joker는 card game에서 wildcard 이다. 1. Wildcard 의 의미      와일드 카드(Wildcard)란 카드 게임에서 유래되었다.  이런 카드 게임에서 모든 카드의 대용으로 쓸 수 있는 비장의 카드를 와일드 카드라고 한다. 포커나 훌라를 할 때 조커가 이런 역할을 하는데 ,  이 의미가 컴퓨터와 스포츠로 확장되어 사용되는 것이다. 컴퓨터 용어로 쓰일 때는 한 디렉터리 내에 여러 파일이 존재하거나, 파일 이름의 뒷부분을 정확히 알지 못하는 경우에도 사용할 수 있는 명령어를 말합니다. '*'을 넣으면 빠진 것에 어떤 문자열이 있든지 대신할 수 있고,  '?'는 임의의 한 문자에만  대응한다. Comfyui 에서 wildcard 사용은 "--문자열--"  이런 식으로 wildcard 사용 가능한 노드에 prompt 를 입력해 주면 그 노드는 "문자열" 에  해당되는 파일을 찾아 그 파일 내용 중에서 임의의 일부분을 prompt 로 대체해 준다. 2. Wildcard 사...

Pinokio 앱 설치 - 오픈 소스 AI 플랫폼

  Pinokio 는 오픈 소스 AI 플랫폼이다. 로컬에서 AI 애플리케이션을 쉽게 설치하고 실행할 수 있게 도와주는 오픈 소스 AI 플랫폼이다. 이 플랫폼은 사용자가 복잡한 설치 과정 없이 클릭 한 번으로 AI 도구들을 설치할 수 있도록 설계되어 있다. 이를 통해 기술적인 배경 지식이 없는 초보자나 비전문가들도 쉽게 AI 애플리케이션을 사용할 수 있다.   이미 설치되어 있는 애플리케이션이 있어도 별도의 독립된 공간에서 문제없이 사용할 수 있게 해준다.   우리가 stable diffusion 을 comfyui 에서 사용하기 위해서는 "Python", "git ....", "conda"  뭔지 모르지만 설치해야 하는데 pinokio 브라우저에서 원 클릭으로 알아서 설치를 해주기 때문에  컴맹인 일반인도 쉽게 설치하고 사용 할 수 있다. pinokio.computer 1. Pinokio 주요 기능 원클릭 설치 : 복잡한 환경 설정이나 명령어 입력 없이도 다양한 AI 모델을 한 번의 클릭으로 설치할 수 있다. 예를 들어, Comfyui 나 Flux 같은 AI 도구들을 손쉽게 설치할 수 있다. 다양한 AI 애플리케이션 제공 : Pinokio는 다양한 오픈 소스 AI 애플리케이션을 제공하는 허브 역할을 하며, Pinokio 브라우저 나 홈페이지에서 쉽게 찾아 설치할 수 있다. 브라우저 기반 인터페이스 : 모든 설치된 애플리케이션은 Pinokio 웹 브라우저에서 관리할 수 있어, 친숙한 인터페이스로 쉽게 사용이 가능하다. 독립적인 가상 컴퓨터 : Pinokio는 백엔드 작업을 자동으로 처리하여, 애플리케이션이 로컬에서 실행되는 동안 인터넷에 연결되어 있지 않아도 된다. 2. Pinokio 설치 구글에서 pinokio 를 검색하여 " pinokio.computer " 를 클릭 Download 클릭 다운로드 된 pinokio 압축 파일을  푼다. pinokio 설치파일을 실행하여 설치 설치과정은 복...

Flux Controlnet 적용 방법 - Comfyui 에서 사용

Flux에서도 이제 Controlnet 기능을 사용할 수있다. Comfyui 에서 Stable Diffusion 과 같은 방식으로 사용 할 수 있는  controlnet 모델들이 출시 되었다. 1. Controlnet 이란 ?      ControlNet은 Stable Diffusion 과 같은 이미지 생성 모델에서 조건부 입력 을 추가하여 결과 이미지를 더 세밀하게 제어할 수 있게 한다. 예를 들어, 포즈 , 스케치 , 엣지 지도(edge map) 등을 입력으로 받아 생성된 이미지를 밑그림으로 이미지에 반영할 수 있다.  2. Flux용 Controlnet 모델     Stable Diffusion 용 Controlnet 모델들은 Canny, Depth, Hed, Scribble, Open Pose, Sketch 등 여러가지 모델들이 있는데 Flux 용 모델들은 그 중에서 Canny, Depth, Hed 3가지 종류의 모델들만 출시되었다. 각각의 적용하는 대상은 어떤 이미지를 생성 하는가에 따라 적합한 것을 사용하면 되는데 3가지 모델들이 서로 다른 듯 비슷한 기능들이 섞여 있어서 많은 시행을 해 본 후 더 적합한 모델들을 사용하기를 권한다. 3. Controlnet 적용 기본     Controlnet 의 적용은 먼저 원본 이미지가 필요하고 그것을 Controlnet 모델들이 인식할 수 있도록 바꾸어 주는 전처리기를 통과한 후 Controlnet 모델들을 선택하여 이  이미지를 적용하여 Sampler에 입력한다. 이를 간단하게 workflow 를 구성하면 다음과 같다. 기본 Controlnet Workflow 전처리기는 Controlnet 모델별로 각각 다른 전처리기를 사용하기 때문에 항상 모델에 맞는 전처리기를 사용하여야 올바른 이미지를 얻을 수 있다. 4. Controlnet 모델 과 필수Nod 다운로드 및 설치     다운로드는 huggingf...