열다섯번째 수업 | Stable Diffusion

Faithful Dev·2024년 10월 1일
1
post-thumbnail

강명호 강사님

생성 AI (Generative AI)

생성 AI는 컴퓨터가 새로운 콘텐츠를 만드는 기술이다. 텍스트, 이미지, 음악, 비디오 등이 포함된다.

  • 응용 분야: 프로그램 코드 작성, 의료 이미지 생성, 데이터 증강 등
  • 중요한 점
    - 학습 데이터의 품질이 좋아야 함
    • 저작권윤리적 문제를 고려해야 함

Stable Diffusion 실습

Stable Diffusion이란?

Stable Diffusion텍스트를 이미지로 변환해주는 기술로, 사용자가 글로 설명하는 내용을 바탕으로 AI가 그에 맞는 이미지를 만들어주는 인공지능 모델이다.

Stable Diffusion의 기술적 동작 원리

확산 모델(Diffusion Model)의 원리

확산 모델은 아주 많은 노이즈(무작위 점들)가 있는 이미지에서 시작해 점차 그 노이즈를 제거해가며 원래의 깨끗한 이미지를 찾아가는 방식이다.
1. 순방향 과정(Forward Process): 이 과정에서 AI는 실제 이미지에 계속해서 노이즈를 추가한다. 노이즈가 추가될수록 이미지의 세부 사항이 점점 사라져 결국 무작위의 잡음으로 변한다.
2. 역방향 과정(Forward Process): 이 과정은 노이즈를 점차 제거하면서 원래의 이미지를 되찾는 과정이다. 이때 AI는 학습된 데이터를 바탕으로 노이즈를 제거하는 패턴을 학습하며, 최종적으로 사용자가 입력한 텍스트에 맞는 이미지가 만들어진다.

실습 과정: AI로 그림 만들기

Text to Image 메뉴 사용하기 - 프롬프트 입력

  • 프롬프트는 사용자가 AI에게 요청사항을 설명하는 글로, 자세하게 설명할수록 AI가 더 구체적으로 그림을 그려준다.
  • 부정 프롬프트(negative prompt)불필요한 요소를 제외하고 싶을 때 사용하는 프롬프트이다.

세부 설정

  • Sampling Method: AI가 이미지를 생성하는 방식을 결정하는 옵션이다.
  • Steps: AI가 몇 번의 과정을 거쳐서 이미지를 완성할지 설정하는 옵션으로, 스텝 수가 맣ㄴ을 수록 이미지는 정교해지지만 시간이 오래 걸린다.
  • Batch Size: 한 번에 몇 개의 이미지를 만들지 설정할 수 있다. GPU 메모리에 따라 배치 크기가 클수록 더 많은 자원을 사용하므로 적절하게 설정해야 한다.

그림 생성

모든 설정을 마치고 나서 Generate 버튼을 눌러 AI가 그림을 그리도록 한다. AI는 입력한 프롬프트와 설정을 바탕으로 그림을 생성하기 시작하며, 시간이 조금 걸릴 수 있다. 완성되면 생성된 이미지가 화면에 표시된다.

이미지 수정 및 확장 기능

Outpainting 기능

이미지를 가로 또는 세로로 확장 하는 기능. 이미지의 경계를 넘어 더 넓은 장면을 만들 수 있음.

Inpainting 기능

이미지의 일부를 다시 그리는 기능. 이미지에서 마음에 들지 않는 부분을 수정하거나 특정 부분을 변경하고 싶을 때 Inpainting을 사용할 수 있다.

Upscaling 기능

Stable Diffusion에서 처음 생성된 이미지는 크기가 작을 수 있는데, Upscaling을 통해 이미지의 해상도를 높여 더 선명하고 고화질의 이미지를 얻을 수 있다. 특히 이미지를 크게 출력하거나 세밀한 부분을 확대해서 보고 싶을 때 유용하다.

프롬프트 작성 요령

  1. 구체적이고 명확하게 작성하기
  2. 중요한 요소는 앞에 배치하기
  3. 강조하고 싶은 부분에 괄호 사용하기
  4. 부정 프롬프트 활용하기

Personal Insight

실습 위주의 수업이었고 공휴일이라 쉬고 싶으므로 오늘은 간단하게 실습했던 그림들 올리고 마무리!



profile
Turning Vision into Reality.

0개의 댓글