스테이블 디퓨전(StableDiffusion)

이미지를 더욱 디테일하게 만들어 봅시다(Detail-demon)

물범쌤 2025. 1. 14. 17:05

안녕하세요 여러분, 물범쌤입니다 :)

 

내용에 앞서, 요즘 유행하는 독감 다들 알고계시죠?

정말 아프니까..다들 걸리시지 않게 마스크 꼭 하시고 ㅠ

건강한 새해 시작하시기를 바라겠습니다.


오늘 알려드릴 기능은 이미지를 더욱 디테일하게 묘사할 수 있는

디테일 데몬이라는 기능입니다.

디테일 데몬은 이미지에 적용된 프롬프트를 더 자세하게 표현해주고,

배경과 질감등의 디테일을 끌어올리는데에 효과적인 기능입니다.

 

설치 방법은 ComfyUI manager를 통해서 다운로드 받아 주시면 되겠습니다.

설치순서 : ComfyUI manager - Custom Nodes manager - 검색 'Detail-Daemon'

설치 후에는 항상 재시작해주셔야 한다는점, 잊지 말아주시구요

 

패키지를 다운받고 나면, 공식 사이트에서 

기본 워크 플로우를 다운로드 받으실 수 있습니다.

https://github.com/Jonseed/ComfyUI-Detail-Daemon

반응형

 

 

오늘은 그 중에서도 가장 기본적인 기능이라고 할 수 있는

'Comparing Detailers' 워크플로우를 기준으로 안내드릴 예정입니다.

 

아마 워크플로우를 적용하시면, 노드 수가 굉장히 많아서

복잡해 보이실 수도 있지만,

여러가지 결과물을 보여주는 노드들이 혼합되어있어서 그렇지

하나하나 뜯어보면 별로 복잡하지 않습니다.

 

일단 전체적인 노드를 절반정도로 나눠서 생각해보면

왼쪽편에 있는 노드들은 모델,프롬프트, 이미지 사이즈 등
익숙한 노드들이 많이 보이실텐데요


아래에 있는 Default그룹까지 포함해서

왼쪽편은 사용자가 입력한 프롬프트대로 생성하는
기본 이미지에 해당하는 단계입니다.

 

그리고 오른쪽에 보이시는 부분들이

각각의 디테일 수치에 따라서 세 가지 스타일로 결과값을 보여는 노드 구성입니다.

 

detail demon을 구동하기 위해서는

Clip 모델이 필요합니다.

ViT-L-14-GmP-ft-TE-only-HF-format.safetensors,
그리고
t5xxl_fp16 모델입니다.(fp8버전이 있으시다면 사용 가능합니다)
 
만일 클립 모델이 없으신 분들은
아래 URL을 통해 다운로드 받아주세요!

https://huggingface.co/comfyanonymous/flux_text_encoders/tree/main

 

클립 모델은 Models/CLIP 폴더 안에 추가되어야 합니다.

저를 따라 스테빌리티 매트릭스를 사용하고 계신 분들 기준으로는

StabilityMatrix\Data\Models\CLIP 경로에 넣어주시면 되겠습니다.

 

혹은 스테빌리티 매스릭스 런처에서

CLIP 필터를 찾으시고 드래그&드롭 방식으로 추가하셔도 같습니다.

추가 후에는 새로고침'R'이나 재시작을 해주시고

기본 워크 플로우 그대로 한번 실행해 보겠습니다.

우선 워크플로우 결과물로서
디테일이 적용된 이미지 미리보기 노드(preview Image),
그리고 기존이미지와 비교할 수 있는 Compare 노드가 배치되어 있습니다.

앞쪽에 보시면 처음 보시는 Detail Daemon Samper와

Graph Sigmas 노드가 있는데

이 중에서 두번째, Detail Daemon Graph Sigmas 노드는 사용자가 설정한 수치를

그래프로 보여주기 위한 노드이기 때문에 결과물에 영향을 주지는 않습니다.

 

Detail Daemon Samper의 각 수치들은 다음과 같습니다.

 

detail_amount: 생성 프로세스 중간에 디테일을 조정하는 주요 값입니다. 
양수 값(+)은 시그마를 낮추어

각 단계에서 제거되는 노이즈를 줄여 디테일을 증가시킵니다. 
Flux 모델의 경우 0.1~1.0 범위를 , SDXL 모델의 경우 0.25 미만이 적절합니다.
디테일을 줄이거나 이미지를 단순화하려면 음수 값(-)을 사용할 수도 있습니다.


start: 조정 시작지점입니다.
0~1.0의 백분율 범위, 0이 첫 번째 단계, 1.0이 마지막 단계입니다.

권장: 0.1~0.5


end: 조정을 중단 지점입니다.
0~1.0의 백분율 범위로, 0은 첫 번째 단계, 1.0은 마지막 단계입니다.

권장: 0.5~0.9

bias: 생성 과정에서 중간 단계의 detail_amount를 앞이나 뒤로 이동합니다.


exponent: 조정의 곡률을 변경합니다. 0은 곡률이 없고, 1은 부드럽게 휘어집니다.


start_offset: 생성 프로세스 시작 시 특정 값으로 detail_amount를 시작합니다.

조정을 권장하지 않습니다.


end_offset: 생성 프로세스가 끝나면 특정 값으로 detail_amount를 종료합니다.

조정을 권장하지 않습니다.


fade: 전체 조정 곡선을 특정 값만큼 줄입니다.


smooth: (참/거짓), 조정 곡선을 매끄럽게 할지 여부를 선택합니다.


cfg_scale_override: 0(기본값)으로 설정하면 

샘플러가 자동으로 CFG 스케일을 결정합니다(가능한 경우). 
다른 값으로 설정하여 재정의합니다

(워크플로에서 사용된 CFG와 일치해야 함).

 

여기서 중요한 수치들만 꼽아보자면

detail_amount(디테일 강도),start,end,exponent 정도로 보여집니다.

다른 부분들은 디폴트로 두고 사용하시면 수월하게 사용하실 수 있습니다.

 

 


다음은 가장 아래에 있는 Multiply Sigmas 입니다.

조정하는 수치가 줄어들어서 편하게 사용 가능한 기능이지만

변동수치를 곱연산으로 계산하기 때문에 이미지 변형이 과해질 수 있습니다.

 

노드의 입력값은 다음과 같습니다.

 

factor: 각 단계에서 시그마(노이즈 레벨)를 곱할 양입니다. 
예를 들어, 첫 번째 단계의 시그마가 1인 경우 
0.95의 인수를 사용하면 이 시그마가 0.95가 됩니다. 
단계의 시그마가 0.7인 경우 0.95의 인수를 사용하면 0.665가 됩니다. 
이 인수는 0.95~0.99 사이로 유지하는 것이 좋습니다. 
값이 낮을수록 세부 정보가 증가하지만,
이미지 구성이 점점 더 변경되거나 노이즈 그레인이 발생할 수 있습니다.
1.0으로 설정하면 노드가 효과적으로 비활성화됩니다.

start: 조정 시작지점입니다.
0~1.0의 백분율 범위, 0이 첫 번째 단계, 1.0이 마지막 단계입니다.

 

end: 조정을 중단 지점입니다.
0~1.0의 백분율 범위로, 0은 첫 번째 단계, 1.0은 마지막 단계입니다.

 


마지막으로 중간에 위치한 Lying Sigmas 입니다.
Detail Daemon Sampler의 간단한 버전으로,

조정과 시작 및 종료 값만 있다고 합니다.


노드의 입력값은 다음과 같습니다.

dishonesty_factor: Detail Daemon 노드와 비슷하게 detail_amount, 세부 사항을 조정합니다.
그러나 스케일이 다릅니다. 예를 들어, -0.05 dishonesty_factor는
Detail Daemon의 detail_amount:0.5(또는 Multiply Sigmas의 0.95)와 같습니다
음수 값은 시그마를 낮추어 세부 사항을 증가시킵니다.
아마도 -0.1과 -0.01 사이를 유지하는 것이 좋습니다.
양수 값은 시그마를 증가시켜 세부 사항을 감소시킵니다 .


start_percent: 조정 시작지점입니다.
0~1.0의 백분율 범위, 0이 첫 번째 단계, 1.0이 마지막 단계입니다.

권장: 0.1~0.5


end_percent: 조정을 중단 지점입니다.
0~1.0의 백분율 범위로, 0은 첫 번째 단계, 1.0은 마지막 단계입니다.

권장: 0.5~0.9

 


사실 사용법은 프롬프트를 입력하고 각 수치들을 조정하는 것이 다라서

생각했던것보다 간단하게 해당 기능을 사용하실 수 있습니다.

이 워크 플로우를 프롬프트만 변경해서 한번 생성해 보았습니다.

 

배경이나 의상의 디테일이 더욱 선명해진것을 보실 수 있습니다.

 

추가로 기본 생성이미지에 여러스타일의 로라를 적용할 수 있도록

워크 플로우를 조금 수정해 보겠습니다.

 

워크 플로우에서, model을 입력하고 있는 gguf노드와

Clip을 입력하고 있는 노드를 옆으로 살짝 빼줍니다.

 

power Lora Loader 노드를 배치해 줍니다(rgthree 패키지)

 

그 다음, anything Everywhere3 노드를 배치합니다(cg-use-everywhere패키지)

 

마지막으로 기존 워크플로우에서 연결중이던 model과 clip 입력을 끊어주면

Anything Everywhere 노드를 통해 원격으로 입력값이 연결됩니다.

 

 

이제 똑같은 프롬프트로 다시 한번 생성해 보겠습니다.

 

어떤가요? 이미지가 많이 변했죠?

혹시나 너무 변화가 없다 싶으신 분들은 seed값을 조금 변경해보시면

체감하실 수 있을테니 확인해보시기 바랍니다.


오늘은 이미지를 디테일하게 생성할 수 있는

디테일-데몬에 대해서 알아보았습니다.

 

이 컨텐츠가 유익하셨다면

커피값은 기업들에게 받을테니

광고 한번씩만 눌러주시면 감사드리겠습니다 :)

반응형