Stable Diffusion Hands comparison in 23 models

2022. 12. 7. 03:14Stable Diffusion Demo & Image

인공지능 이미지 생성에서 손은 왜 이상하고, 어려운 것일까 / Stable Diffusion Hands comparison in 23 models

 

Stable Diffusion과 같은 인공지능 이미지 생성의 경우 가장 문제가 되는 것 중 하나는 바로 손(손모양) 처리라고 할 수 있다.

사실 풀샷을 기준으로 할 때 생성된 이미지의 손의 모양만 봐도, Stable Diffusion의 워터마크 없이도 인공지능의 결과물인 것을 사람이 구분할 수 있다고 할 정도인데, 이는 두 가지 원인에서 야기된다.

 

1. 데이터셋의 라벨링 부족과 비정규화

첫번째로 Stable Diffusion이 사용하는 LAION 5B는 총 이미지 58억 5천만개의 이미지로 이뤄진 데이터셋이며, LAION-1B, LAION-2B 등 EN 서브셋 데이터 역시 영어로 라벨링이 되어 있으나, 대부분의 라벨링(80% 이상의 데이터가) 규정없이 상품의 설명, 이미지에 대한 간단한 타이틀 정도로 이뤄져 있기 때문이다.

즉 "검은색 바지와 흰색 티셔츠를 입은 근육질 40대 남성"과 같은 설명은 라벨링의 총량이 충분하나, 손에 대한 설명은 없을 뿐만 아니라 수많은 이미지가 사용자의 공여와 크롤링 데이터들의 취합이므로, 정규화되어 있지 않는게 당연하기 때문이다. 

 

손은 많은 것을 알려주나, 라벨링을 이렇게 하면 결과물은 원하는 것과 달라지게 마련이겠죠.. (LAION 5B의 Hand 데이터입니다)

 

2. 손 모양의 복잡함

두번째로 인체의 해부학적 관점에서도 손은 모양이 복잡할 수 밖에 없을 뿐이다. (단순히 표현하면, 몸에 팔이 다섯개 달렸고,이 팔이 3개 관절노드를 가졌으며, 접고 펴는 방향이 자유롭고,  이미지를 바라보는 몸의 방향이 달라질 수 있다고 보면 된다.)

즉, 손이 열렸나 닫혔나, 접혔나, 펼쳐졌나와 같은 수준의 문제가 아니라, 방향성까지 복잡성을 더하기 때문이다. 그것도 손가락 갯수가 다섯개라는 수량적 확장까지 더해져서... 더 복잡하게 되기 때문이다.

 

손 모양의 간단한 예시 / 이 정도만 하더라도 내가 할 수 있는 손모양이 몇 가지 빠져있음을 금방 찾을 수 있다.

 

그러므로 인공지능 이미지 생성에 사용되는 수많은 이미지와 데이터셋이 사용자의 공여와 크롤링 데이터들의 취합이라고 볼 때 이렇게 짧은 기간동안 수 많은 이미지 데이터셋 샘플을 가졌다고 할지라도 결과물이 풀샷과 같은 경우가 아니면 Stable Diffusion이나 미드저니나 너나할것없이 여지없이 기괴한 손 모양이 나올 수 밖에 없는 것은 당연하다 하겠다. (사실 손 뿐만 아니라, 발도 같은 문제가 있으나, 발의 경우 신발이라고 하는 외형적인 커버가 사용되는 경우가 잦기 때문이며, 상체만 드러나는 이미지 결과물이 많기 때문이기도 하다)

 

결론적으로 Stable Diffusion과 인공지능 이미지 생성기에서 손 모양을 해결하기 위해서는 적합한 라벨링과 손에 대한 명확한 이미지 서브셋의 추가지원 등이 함께 해야하며, 사실 이러한 문제는 위의 두 가지 문제의 해결의 난이도로 볼 때 지금 시점에서도 6개월내에도 해결이 가능하다. 다만, 각자의 커스텀 데이터셋의 구성 하에서 이뤄질 것이며, 58억 5천만의 LAION 5B는 나이브한 기본형 데이터셋으로 존재할테니 온라인에서는 보기 힘들지 않을까 싶다.

 

출처) https://www.reddit.com/r/StableDiffusion/comments/ze2ooc/stable_hands_hands_comparison_in_23_models/

 

Stable Hands - Hands comparison in 23 models

Posted in r/StableDiffusion by u/alexds9 • 48 points and 21 comments

www.reddit.com