a3f63e56e2
- 10_Wiki/Comfyui/: ComfyUI docs generated via /wikify - 00_Raw/_youtube/: /youtube extraction outputs - Move some 00_Raw originals into 10_Wiki/Topics_meeting; remove empty canvases and stray files Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
5.2 KiB
5.2 KiB
id, title, category, status, verification_status, canonical_id, aliases, duplicate_of, source_trust_level, confidence_score, created_at, updated_at, review_reason, merge_history, tags, raw_sources, applied_in, github_commit
| id | title | category | status | verification_status | canonical_id | aliases | duplicate_of | source_trust_level | confidence_score | created_at | updated_at | review_reason | merge_history | tags | raw_sources | applied_in | github_commit | |||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| annotated-examples---comfyui | Annotated Examples - ComfyUI | 10_Wiki/Topics | draft | conceptual | B | 0.8 | 2026-05-20 | 2026-05-20 |
|
|
Annotated Examples - ComfyUI
🎯 한 줄 통찰 (One-line insight)
ComfyUI의 기능 구현을 위한 이미지, 마스크, 노이즈 처리 관련 코드 예제 및 구현 방법론을 제공한다.
🧠 핵심 개념 (Core concepts)
- Images and Masks: Load an image, Save an image batch, Invert a mask 등 이미지와 마스크 데이터의 조작 기법.
- Mask Transformation: 마스크를 특정 형태(
[B,H,W,C])로 변환하거나 투명도 레이어(Transparency Layers)로 활용하는 방법. 나머지 개념은 코드 구현을 위한 구체적인 로직과 Noise 생성 전략을 포함함.
🧩 추출된 패턴 (Extracted patterns)
- 데이터 정규화 및 변환: 이미지를 처리할 때
exif_transpose를 적용하거나, 마스크의 범위를[0,1]로 정규화하여 연산하는 패턴. - 차원 확장(Dimension Expansion): 마스크 데이터의 형태가 불일치할 경우
None또는unsqueeze를 사용하여 채널(C)이나 배치(B) 차원을 맞추는 구조적 접근. - 가중치 기반 혼합: 두 개의 노이즈 소스를
weight2값을 통해 선형 결합하여 변동성을 생성하는 방식.
📖 세부 내용 (Details)
🖼️ Images and Masks 구현 예제
Load an image
LoadImage의 소스 코드를 기반으로, 이미지를 배치 크기 1로 로드하는 과정입니다.
Image.open을 통해 경로에서 이미지를 불러온 후exif_transpose를 적용합니다.- 모드가
'I'인 경우 값을1/255로 스케일링합니다. - 최종적으로
torch.from_numpy를 사용하여float32타입의 텐서로 변환하며, 배치 차원을 추가합니다.
Save an image batch
SaveImage 소스 코드를 기반으로, 이미지 배치를 저장하는 과정입니다.
- 각 이미지에 대해
cpu().numpy()를 통해 넘파이 배열로 변환합니다. np.clip을 사용하여 값을[0, 255]범위로 제한하고uint8타입으로 변환합니다.- 지정된 경로(
filepath)에 저장합니다.
Invert a mask
마스크를 반전시키는 단순 프로세스입니다. 마스크는 [0,1] 범위로 정규화되어 있으므로 다음과 같이 계산합니다.
mask = 1.0 - mask
Convert a mask to Image shape
마스크의 형태를 [B, H, W, C] 구조(C=1)로 맞추기 위한 조건부 차원 확장 로직입니다.
len(mask.shape)==2(H,W):[None, :, :, None]적용.len(mask.shape)==3및C=1(H,W,C):[None, :, :, :]적용.len(mask.shape)==3(B,H,W):[:, :, :, None]적용.
Using Masks as Transparency Layers
마스크를 인페인팅이나 세그멘테이션의 투명 레이어로 활용하는 방법입니다.
- 마스크 값을 반전시켜 원래의 투명도 레이어로 복구하거나, 채널(
C) 차원을unsqueeze(-1)로 확장합니다. torch.cat을 사용하여 RGB 이미지와 마스크를 채널 축(dim=-1)을 따라 결합하여 RGBA 이미지를 생성할 수 있습니다.
🔊 Noise Generation
Creating noise variations
두 가지 노이즈 소스를 혼합하여 새로운 노이즈 객체를 생성하는 예제입니다.
Noise_MixedNoise클래스는noise1,noise2, 그리고 가중치weight2를 속성으로 가집니다.generate_noise메서드는noise1 * (1.0 - self.weight2) + noise2 * self.weight2공식을 통해 혼합된 노이즈를 생성합니다.
⚖️ 모의 및 업데이트 (Contradictions & updates)
본문에서 확인되지 않음
🛠️ 적용 사례 (Applied in summary)
- 이미지 처리 파이프라인:
torch.Tensor기반의 이미지 로드, 변환, 저장 로직 구현 시 활용 가능. - 마스크 조작: 인페인팅(Inpainting)을 위한 마스크 투명도 레이어 생성 및 차원 재구성 작업.
- 노이즈 제어: 가중치 조절을 통한 노이즈 변동성(Noise variations) 생성 실험.
✅ 검증 상태 및 신뢰도
- 상태: draft
- 검증 단계: conceptual
- 출처 신뢰도: B (Primary Source — 웹사이트 본문 직접 추출)
- 중복 검사 결과: 신규 생성 (New discovery)
🔗 관련 문서 링크 (Related document links)
- ComfyUI : 이 문서의 기반이 되는 소프트웨어 프레임워크입니다.
- LoadImage : 이미지 로드 로직의 핵심 노드 구현체입니다.
- SaveImage : 이미지 저장 로직의 핵심 노드 구현체입니다.
- torch.Tensor : 데이터 처리에 사용되는 주요 텐서 구조입니다.
- Inpainting : 마스크를 활용하는 구체적인 작업 사례입니다.
📝 변경 이력 (Change history)
- 2026-05-20: Astra /wikify 로 https://docs.comfy.org/custom-nodes/backend/snippets 본문에서 초안 생성.