[AI 이미지 제너레이션]
대표적인 이미지 생성 AI로는 Stable Diffusion, Midjourney, DALL - E 등이 있다
[ Ai 관련 이미지를 올리는 사이트 ]
Diffusion models(확산모델)이란?
텍스트로부터 이미지를 찾아가는 과정을 노이즈를 이용해 수많은 단계를 거쳐 점차적으로 확산시키며 이미지를 찾아가는 방식
많은 이미지 생성 AI 중 Stable Diffusion은 오픈소스로 공개되었다.
사용자에 의해 커스텀이 가능해지면서 좀 더 사용자의 니즈를 반영한 기능들이 많이 생겼다.
[Stable Diffusion]
Stable Diffusion은 여러 버전이 존재하는데 아직까지는 1.5 버전이 주력으로 사용되어진다. 1.5에 핵심적인 기능들이 많이 있기 때문이다. 이후의 버전들은 여러 공익적인 이유등으로 막아놓은 기능들이 많다고 한다.
Stable Diffusion가 베이스가되는 플러그인, 툴은 여러가지가 있는데 그 중 하나로 깔끔한 UI의
Automatic 111 web UI 가 있다
[Stable Diffusion(이후 SD로 표시) 모델 구조]
Check Point(마더 모델, 메인모델)를 기반으로 control Net (:이미지의 틀을 유지시켜주는 서브모델), LORA(Hyper Network) (:특정한 목적성(경향성)을 가진 서브모델), Textual Inversion의 모델을 연동하여 작동하게 된다
AI 이미지 생성에서 Check point에 접근하는 방식은 Text to image 와 image to image 방식이 대표적이다. 그외에도 Extra도 있다.
[ Text to Image (T2I) ]
프롬프트를 작성하는 방식으로 명령어를 입력하여 원하는 이미지를 구현하는 것
Text to Image의 경우 어느정도 AI에게 자유도를 열어주면(큰 범위의 프롬프트 작성) 퀄리티가 더 좋아지는 경향이 있다
같은 프롬프트를 작성하고 같은 마더 모델에 돌리더라도 그 것을 추론하는 방법, 알고리즘을 바꾸어주면 결과가 다르게 나오기도 한다. 샘플링 방법을 바꾸어 가며 테스트 해 줄 수 있다.
샘플링 스텝은 샘플링을 하며 거치는 단계의 수를 설정하는 것인데 무조건 높게 설정한다고 좋지 않다. 기본 10~30사이로 먼저 테스트를 해보는 것이 좋다.
CFG 스케일은 AI에 강요하는 정도? 같은 것. 높게 올릴 수록 프롬프트에 적은 것을 무조건 따르게 강요하는 것과 같다. 이 것도 너무 높으면 오히려 오류를 유발할 수 있다.
시드는 -1로 설정 시 랜덤, 시드 값을 활용하면 같은 프롬프트에 비슷한 설정을 했을 때 전과 같은 경향성의 결과물을 도출할 수 있다.
[ Image to Image (I2I) ]
디노이즈 강도가 약할 수록 원본을 유지한다.
이미지에 노이즈를 주어 흐리게 만들어 놓고 다시 이를 복구하는 방식을 따르기 때문에 디노이즈 강도는 매우 예민한 옵션이다. 보통 3~ 3.5 사이로 테스트를 시작한다. 원본을 유지하되 분위기를 베리에이션 하고 싶을 때 이처럼 수치를 낮추어서 테스트 할 수 있다.
[ Extra : 부가기능 ]
보통 이미지를 업스케일 하거나 픽셀라이즈 할 때 쓰는데, 이 것보다는 image to image에서 AI로 이미지 제너레이트하면서 업스케일 하는 기능도 있기 때문에 퀄리티 향상 측면에서는 I2I를 사용하는 것이 더 좋을 수 있다.
[ ControlNet ]
SD의 핵심적인 서브모델이다. 일종의 붕어빵틀과 같은 방식이라고 할 수 있는데, 사용자가 제시한 프롬프트나 이미지에 대해서 필요한 요소들을 유지시켜주기 위해서 일종의 제한을 걸어준다. 예를 들어 Depth, Canny(그림의 선,Lineart), MLSD(그림의 직선값), Normal map, pose, Scrible(낙서같은 가이드선), Color 등을 추출하여 새로 생성될 이미지에도 이를 유지할 수 있도록 해주는 것이다.
https://github.com/Mikubill/sd-webui-controlnet
[ LORA ]
특정 목적, 경향성을 가지도록 제시하는 서브 모델이다. 예를 들어 스타일, 캐릭터, 포즈, 표정, 상황, 디테일 등 다양한 측면에서 학습된 서브 모델이다. 적절한 LORA 모델을 선택하여 결합할 수 있다.
LORA는 개인이 학습시켜 만들 수도 있는데, KOHYA라는 LORA 학습기가 있다. 컴퓨터 사양은 4090 정도 필요하긴 하지만 자신이 원하는 이미지들을 모아 생성 가능하다.
[ Textual Inversion ]
일종의 프롬프트의 모음이라고 할 수 있다. 최근들어서는 비효율적인 측면이 있기 때문에 잘 사용되는 방식은 아니지만 특정 컬러를 프롬프트에 지정하고 싶은 때에는 효율적으로 활용할 수 있다. 예를들어 '파란색'이라는 단어는 너무 광범위하니 팬톤 컬러칩을 고르듯이 특정 색상의 고유 프롬프트를 찾아 입력하면 좀 더 원하는 색상에 가까운 컬러를 도출시킬 수 있다
AI 관련 사이트, 툴은 매우 다양하기 때문에 활용에 따라 맞는 사이트를 선택하여 테스트해보면 된다. 핵심은 자신이 원하는 스타일의 이미지들이 마더 모델에 잘 학습되어있는 AI를 찾는것.
AI로 이미지를 제너레이션을 할 때는 내가 상상하는 이미지를 구체화 할 수 있도록 계속해서 AI에게 단서를 쥐어지는 것이 중요하다. 추상적인 표현보다는 구체적인 상상이 가능한 단어나 해상도가 좋은 이미지 같은 것을 쓰는 것이 좋다.
AI가 가지는 경향성을 빠르게 판단하고 AI에게 맡길 부분과 직접 핸들링할 부족한 부분을 정확히 판단하는 것이 중요하다.
AI로 작업을 하다보면 하나의 툴로 완성하기 보다는 서로 결합하고 연동하면서 작업하는 것이 더 나을 수 있다. 그 사이에는 여러 선택과정이 있기 때문에 여러 AI를 사용해보면서 경험하는 것 역시 중요하다.
생성형 AI를 잘 사용한다라는 의미는 결국에는 자신에 의도에 맞는 결과물을 추출할 수 있는 가이다.
AI를 활용하면 결과물만 두고 봤을 때 잘 나왔다고 할 수 있지만 사실상 그 결과물을 활용하기 위해서는 랜덤하게 잘 만든 이미지가 필요한 것이 아닌 자신이 의도한 이미지가 잘 나와야하는 것이기 때문에 이부분에 대한 고민이 필요하다.
아직 3D 제작 실무에서 AI가 차지 하는 비율이 많지는 않지만 아트쪽 업무에서 주로 사용가능한 수준이라고 판단된다.
예를 들어 회화적인 맵소스 제작이나, 캐릭터 턴어라운드를 만들 때, 또는 기획단계에서 레퍼런스를 제시할 때, 3d 이펙트를 2d화 시킬 때 등에 활용할 수 있다.
[ Stable Diffusion을 활용한 AI 이미지 제너레이션 정리 ]
T2I가 Check point의 장점을 극대화하는 측면이 있다.
T2I + Control net의 조합으로 1차 이미지를 출력하고
Control net을 이용해 정확한 가로 세로 비율 역시 기준을 정해 확정해준다.
전체적인 과정은 큰 개념을 먼저 잘 정돈한 후 작은 개념으로 넘어가는 것을 권장한다.
또한 큰 개념을 잡을 때 작은 크기의 이미지에서 시작해서 이 것을 큰 이미지로 퀄리티 업 해가는 것이 좋다.
작은 이미지 / 큰 개념 단계에서는 사소한 디테일에 대해서는 프롬프트로 고치려고 애쓰는 것 보다
직접 포토샵 등으로 필요한 부분만 수정하여 다시 이미지를 가지오는 것이 효과적이며
원하는 이미지가 나온 후에는 다양한 스타일의 LORA 병합 실험을 해보고
최종적으로 SD UP SCALE을 진행하는 것이 좋다.
[Mid journey]
유료 툴, 퀄리티가 좋은 것이 특징, 마더 모델의 학습량이 앞서 설명한 SD에 비해 상당하다. Discord에서 프롬프트를 작성하는 방식으로 운영되고 있다. 스테이블 디퓨전이 단어 단위로 프롬프트를 적는다면, 미드저니는 자연어를 지원하여 문장의 맥락을 파악할 수 있다.
버전
MJ Model 과 NIJI Model(버전1~6)으로 나누어 볼 수 있는데, 그 차이는 아래와 같다.
MJ Model - 범용적인 모델, 다양한 스타일 추출가능
NIJI Model - 일본의 아니메 스타일에 최적화된 모델
[ 미드저니 라이브러리 사이트 ]
위와 같은 라이브러리를 활용하면 특정 스타일을 반영할 수 있다. 앞서 자신이 원하는 프롬프트를 적고 뒤에 라이브러리에서 찾은 스타일에 따라 'by oo' 형식으로 적어주면 반영된다.
미드저니는 다양한 라이브러리를 가지므로 다양한 스타일 제작이 가능하고, 또한 두가지 이미지, 스타일을 합성하는 것에 능하다. 또한 픽셀 이미지를 바탕으로 원화 형태의 이미지를 추출할 수 있을 정도이기 때문에 활용도가 매우 높다.
스테이블 디퓨전과 미드저니는 둘 중 하나만 사용하여 작업하기 보다는
스테이블 디퓨전에서 큰 개념을 잡아서 디테일한 퀄리티, 작은 개념을 미드저니에서 잡아올 수도 있다.
[기타 AI 서비스]
<Vectorizer.ai>
저해상도 이미지를 벡터로 전환해주는 AI
<KREA AI>
무료, 큰 개념을 잡을 때 사용하기 좋다. 좌측에서 대략적인 구도를 잡아주면 오른쪽에 AI로 완성된 이미지를 제시해준다.
<Meshy>
유료 툴, 3d 어셋에 관련된 베리에이션이 가능하도록 해주는 ai 툴
<TOPAZ>
업스케일 관련 잘되어있는 사이트 중 하나, 영상도 가능. 프레임 보간도 가능
<ebsynth>
무료, 하나 또는 양쪽 끝의 AI 이미지를 생성하여 영상이 움직이는 중간 부분을 보간하여 연결해주므로 기존 영상 AI에서 움직일 때마다 스타일이 바뀌거나 톤이 바뀌는 오류를 줄여주어 퀄리티가 좋다. 하지만 아직 움직임이 격한 영상에는 오류가 있는 편
<deepmotion>
동영상을 기반으로 모션캡처를 추출해주는 ai 기술, 키값을 뽑아낼 수 있어 다른 툴에 연동하여 사용할 수 있다.
<cascadeur>
대략적인 포징을 작업해주면 ai가 물리적인 연산을 하여 좀 더 세부적인 애니메이션을 표현해주는 툴
<emote>
음성에 따른 립싱크 표정, 묘사에서 고퀄리티 ai 영상 생성, 아직은 미출시
https://humanaigc.github.io/emote-portrait-alive/
<domoai>
동영상 컨버팅 ai, 영상에 원하는 스타일을 입혀서 생성해주는 ai
<wonder studio>
영상에 기반이 되는 캐릭터를 모델링으로 대체해주고 3d 씬에서 카메라도 반영시켜 모션캡처랑 키값이 추출됨.
<Gen2>
동영상 컨버팅 ai, 영상에 원하는 스타일을 입혀서 생성해주는 ai, 최근에는 Ai Sora가 고퀄리티로 나왔다.
https://research.runwayml.com/gen2
<suno>
음악을 만들어주는 AI, 가사를 프롬프트로 작성해주고, 장르, 악기, 보컬 등을 입력해주면 음악이 생성된다
<claude>
유료, LLM 모델, 기존의 딱딱한 AI 채팅 느낌에서 벗어나 좀 더 컨셉팅이 가능한 채팅을 할 수 있다. 이미지를 올려놓고 예를 들어 스테이블 디퓨전용 프롬프트로 바꿔줘 하면 알려주기도 한다. ChatGPT보다는 claude가 스테이블 디퓨전에는 친화적이다.
https://claude.ai/login?returnTo=%2F
AI에 의해 사람의 일자리가 많이 대체될 것이다라는 말이 많은데, 변화를 막을 수 없다면 AI에 대해 잘 파악해놓는 것이 중요할 것이다.
AI를 사용해보면서 AI가 가지는 한계를 경험해보기 그리고 나의 업무에 얼만큼 사용할 수 있는지 활용도도 파악해보기
AI가 사람보다 잘하는 부분 역시 실질적으로 존재하므로 이 과정에서 나의 한계점 역시 파악할 수 있게 될 것이고, AI에 맡겨야 하는 부분과 내가 디테일하게 핸들링 해야하는 부분을 구분할 수 있을 것이다.
여기서 AI에 맡긴다는 표현은 AI에게 모든 권한을 넘겨준다는 것 보다는 사용자가 가지고 있는 의도 안에서 작업 속도를 높이고 퀄리티를 높이기 위해 사용되는 Tool로써 사용한다는 것이기 때문에 이 점을 유의하고 주도적으로 AI를 활용하면서 인간과 AI의 협업을 준비해야할 것으로 보인다.