관리 메뉴

클라이언트/ 서버/ 엔지니어 "게임 개발자"를 향한 매일의 공부일지

CNN 17 - 이미지 생성 모델 실습해보기 1 : Stable Diffusion 기초 실습 본문

인공지능/딥러닝

CNN 17 - 이미지 생성 모델 실습해보기 1 : Stable Diffusion 기초 실습

huenuri 2024. 11. 3. 06:12

 

이제 이미지 생성 모델 실습을 진행해 보겠다. 지금까지 개념 학습을 하느라 고생이 많았으니 이번에는 조금 더 재미있는 수업을 시작해 보겠다.


 

 

 

 

Stable Diffusion 기초 실습

 

자연어를 이해하기 위한 transformers를 설치한다. 글자를 숫자로 바꾸는데 일조하는 것 중 하나이다.

 

 

 

 

 

 

 

 

cuda를 사용해 GPU로 계산되도록 생성한다.

 

 

 

프롬프트 이미지를 생성하는데 프롬프트를 생성하는 것이 까다롭기에 참고할만한 사이트를 소개한다.

 

프롬프트 참고 사이트

 

Civitai: The Home of Open-Source Generative AI

Explore thousands of high-quality Stable Diffusion & Flux models, share your AI-generated art, and engage with a vibrant community of creators

civitai.com

 

 

 

 

 

내가 참고한 프롬프트 이미지

 

Image posted by Dreaming_Android

 

civitai.com

 

 

 

 

여기 표시된 숫자는 내가 생성한 이미지를 계산해서 빼주는 과정이다. 노이즈를 빼주므로 점점 더 선명해지는데 기본이 50번으로 그 밑으로 떨어지면 이미지가 덜 만들어지는 느낌이 든다. 정교하게 하려면 이 횟수를 좀 더 늘려주면 된다.

그리고 아래의 주소에 이미지가 들어있다.

 

선생님이 이 작업이 GPU 자원을 많이 잡아먹는다고 하셔서 처음에는 글자 수를 절반으로 줄였다가 그냥 원본 그대로 작성했다. 글을 줄이면 이미지가 제대로 나오지 않을 테니까.

 

 

 

 

 

 

원본과는 퀄리티가 많아 달라졌다. 원본 이미지는 이것이었다.

 

 

모델이 학습하는 수준에 따라 다르게 나온다. 그리고 돌릴 때마다 이미지가 바뀐다.

 

 

 

 

내가 선택한 이미지는 고흐 작품 같은 느낌이 난다. 조금 전보다는 그림의 전체적인 분위기는 잘 만들어낸 것 같지만 표현 방식이 별로 마음에 들지는 않는다.


 

 

 

 

프롬프트를 만들 때 generator를 고정하면 난수 시드가 바뀌지 않고 고정되어 형성된다.

 

 

내가 생각한 이미지는 아니었지만 처음에 만든 이상한 들판 그림보다는 나은 것 같다. 50번 밑으로 떨어지면 이미지를 만들다 만 것 같은 엉성한 이미지가 형성되는 것을 알게 된다.

 


 

 

 

학습을 마치고

실습을 하는 과정은 무척 재미있었다. 이번 실습은 모든 것을 처음부터 만드는 이미지 생성 실습이었다. 이제 1시간 분량의 한 가지 실습이 더 남아있다. 그러면 강의 영상으로 하는 실습은 끝이고 책으로 더 깊이 있는 공부를 진행해 볼 것이다.

오늘의 목표는 CNN을 모두 마치고 지난 이틀에 걸쳐 진행되었던 AICON 행사를 정리해보려고 한다.