DK STORY

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

ARONGE 2023. 5. 25. 12:48
반응형

사진을 만화로 카툰으로 바꾸는 것은
AI stable diffusion을 통해
쉽게 바꿀 수 있는데,
영상은 조금 까다롭다.
영상도 결국 사진의 연속이며,
그 한 장 한 장을 바꾸어 연결하면
똑같이 영상이 되지 않을까 라는 생각을 하는데,
결코 자연스럽지가 않다.
지금까지의 방법 중에서
가장 자연스럽게 만들어 주는 방법인 것 같아
기록하려 한다.

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth (모델: 이나리 _INSTAGRAM @_n._. rily)

 

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth (모델: 이나리 _INSTAGRAM @_n._. rily)

 

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth (모델: 이나리 _INSTAGRAM @_n._. rily)

 

1. 변환할 파일 이름을 input으로 바꾸고,
같은 곳에 input 폴더도 만들어 놓는다.

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

 

2. ffmpeg 설치 (편집프로그램 등에서 가능한데, 속도가 빨라서 쓰는 게 좋음)
 https://www.ffmpeg.org/download.html 접속

- 윈도 아이콘 클릭
- Windows builds from gyan.dev 클릭

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

- release builds 클릭
- ffmpeg-release-full.7z 클릭(다운로드)

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

- 다운로드한 ffmpeg release 파일을 적당한 곳에 압축품
- bin폴더가 있고 ffmpeg.exe가 있음
- 탐색기에서 위치클릭하여 경로 복사

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth


- 탐색기 내 PC 마우스 오른쪽클릭
속성 클릭

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

- 고급 시스템 설정 클릭

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth


- 환경변수 클릭
- 시스템 변수에서 Path 찾아서 클릭
- 편집 클릭

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth


- 새로 만들기 클릭
- 아까 복사한 bin경로 붙여 넣기
- 확인 클릭

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

* [ffmpeg설치방법]
https://github.com/ninjaneural/webui/blob/master/memo/ffmpeg_install.md

[프롬프트 정보 / ffmpeg 명령어]
https://github.com/ninjaneural/webui/blob/master/memo/ebsynth.md

 

3. 탐색기에서 명령프롬프트(cmd) 실행.

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

ffmpeg -i "./input.mp4" -vf fps=30 "./input/%07d.png"

 

3. input 폴더에 영상이 프레임별로 저장되어 있다.

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

* 오디오 포함한 영상으로 변환 (이미지들+오디오 -> 비디오)
ffmpeg -y -r 30  -i "./output/%07d.png" -i input.mp4 -c:a copy -c:v libx264 -pix_fmt yuv420p -crf 17 -map 0:v -map 1:a "./output.mp4"
* 영상으로 변환 (이미지들 -> 비디오)
ffmpeg -y -r 30  -i "./output/%07d.png" -c:v libx264 -pix_fmt yuv420p -crf 17 "./output.mp4"

 

4.python 설치
https://www.python.org/downloads/release/python-3106/ 접속
- 메인 홈페이지 하단에  Windows installer (64-bit) 클릭

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

- 다운로드한 python-3.10.6-amd64.exe 실행
- Add Python 3.10 to PATH 체크
- Install Now 클릭

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

*[python설치방법]
https://github.com/ninjaneural/webui/blob/master/memo/python_install.md

 

5. ebsynth 다운로드 및 유틸 다운로드
https://ebsynth.com/

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

* ebsynth는 무설치 프로그램


- 유틸 다운로드

ebsynth_util.zip
0.01MB

ebsynth_utility익스텐션 기능 중 일부를 로컬에서 사용하도록
유튜브 '뉴럴닌자'에서 수정한 것
(https://github.com/s9roll7/ebsynth_utility)

위의 익스텐션을 로컬에서 사용하도록 만든 파일
https://github.com/ninjaneural/webui/blob/master/memo/ebsynth_util.md

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

- 같은 폴더 명령어프롬프트(cmd)에서 실행
- opencv-python 설치 (최초 한 번만 하면 돼요)

pip install opencv-python

 

6.  키프레임 만들기 (stage2)
- 같은 폴더 명령어프롬프트(cmd)에서 실행
- 10은 영상을 나누는 최소단위
- 300은 영상변화가 없을 때 최대프레임 길이
- 8.5는 영상변화를 감지하는 가중치값
- 7은 생성되는 이미지파일길이 (0000001.png)

python run_stage2.py input.mp4 ./input ./video_key 10 300 8.5 7

- video_key 폴더에 이미지 생성됨

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

 

 

7. SD (stable diffusion) WebUI 실행
https://github.com/ninjaneural/webui

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

- Settings > Live previews > Show previews of all images generated in a batch as a grid 수를 1로 변경하고
Progressbar 200으로 줄이면, 변화되는 과정을 빨리빨리 볼 수 있다.

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

*아래 유튜브'뉴럴닌자' colab 설명을 통해
구글드라이브 연동하여 webui 사용
또는 로컬로 설치하여 사용
https://youtu.be/fsMsc6JyNNk

8. 구글 드라이브 접속
- input_key 폴더 만들어서 video_key폴더 이미지를 복사한다
(로컬이면 폴더에 이미지 복사)

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

 

9. webui로 한 장의 이미지 AI 변환(img2img)


- 모델: icerealistic_v21-fp16-no-ema.safetensors
- vae: vae-ft-mse-840000-ema-pruned.vae.pt
- pprompt:  (masterpiece,best quality:1.2), highres, 4k, clearly, complex detail, anime style, black eyes, short hair, chibi, simple background,
- nprompt: (worst quality, low quality:1.2), EasyNegative, makeup, (nsfw, nude),
- sampling method: Euler a
- sampling steps: 20~22
- CFG scale: 11
- Denoising strength: 0.3

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

*뉴럴닌자 - 프롬프트
- pp:(masterpiece, best quality:1.2), complex detail, chibi,
-NP:(worst quality, low quality:1.2),

 

- 표정을 살리기 위해 ControlNet 적용하기
- Preprocessor: lineart_realistic
- Model: control_v11p_sd15_lineart_fp16
- Control Mode: ControlNet is more important

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

 

10. Batch 하기
- 경로 복사

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

- Batch에 입력하기
- Input directory: /content/sd-webui/outputs/input_key (경로복사한 것을 붙여 넣기)
- Output directory: /content/sd-webui/outputs/input_key_out (추가해서 붙이면 폴더 자동생성됨)

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

 

11. 폴더 다운로드하기
- 구글 드라이브에 확인하고 폴더 다운로드하기

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth


- 다운로드하고 압축 풀고, 폴더명을 key로 변경하기
(input_key_output > key)

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

- map 이미지삭제하기
명령프롬프트 (cmd)에서  

del *-*.png

 하면, 그냥 이미지만 남음.

 

12. Ebsynth 프로젝트 만들기 (stage5)
- 프레임수에 따라 파일 개수가 증가함

python run_stage5.py ./input ./key out-

13. Ebsynth 열고 각 프로젝트 파일을 open 하여 run all 한다.

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

 

- 모든 프로젝트 파일을 변환하면 아래와 같이 폴더들과 이미지가 생성된다.

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

 

13. 부드럽게 영상 이어 붙이기 (stage7)
- 겹치는 부분을 부드럽게 이어주며, 영상파일로 변환해 줌

python run_stage7.py input.mp4 out-

 

- 아래와 같이 사운드가 포함된 영상도 있음.

[AI 만화] 영상을 애니메이션으로 변환, AI cartoon, Stable diffusion webui, EbSynth

 


* Ebsynth 설명

- input 폴더에 변환할 이미지 시퀀스 추가
- key 폴더에 같은 이름으로 AI변환한 이미지 한 장 추가
- Ebsynth에서 Keyframes 1장 선택
- vedeo는 input 폴더 1장 선택
- Synth 누르면 변환

 


상기 내용은 유튜브 채널 '뉴럴닌자'의 정보를 통해 직접 실행하여 요약함

https://www.youtube.com/@neuralninja

 

반응형