AI 이미지의 검은 영역이 뭉개지는 이유: Black Level 이해하기
AI로 이미지를 뽑아보면 유독 어두운 부분, 그러니까 그림자나 밤 장면에서 디테일이 죽어버리는 경우가 많은데요, 이건 대부분 블랙 레벨(black level) 처리와 관련된 문제입니다. 오늘은 이 블랙 레벨이 뭔지, 왜 어두운 영역이 뭉개지는지 하나씩 풀어보겠습니다.
블랙 레벨이 뭔가요? 검은색의 ‘기준점’ 이해하기
블랙 레벨은 쉽게 말하면 “이 이미지에서 어디부터를 완전한 검정으로 볼 것인가”를 정하는 기준점이에요. 사진관에서 인화지 노출을 맞추는 것과 비슷한데요, 카메라 센서나 디지털 파일에는 원래 아주 미세한 밝기 차이까지 다 담겨 있지만, 이걸 화면에 표시하거나 저장할 때 “여기부터는 그냥 다 검정으로 처리하자”라고 잘라내는 지점이 생깁니다.
문제는 이 기준점이 잘못 잡히면 두 가지 증상이 생긴다는 겁니다. 하나는 크러시드 블랙(crushed black), 다른 하나는 **리프티드 블랙(lifted black)**입니다.
크러시드 블랙: 어두운 디테일이 뭉텅 잘려나가는 현상
크러시드 블랙은 원래 살아있어야 할 그림자 속 디테일(옷 주름, 머리카락 결, 배경 사물의 윤곽 등)이 전부 새까만 한 덩어리로 뭉개지는 현상이에요. 마치 사진을 어두운 방에서 봐서 구분이 안 되는 게 아니라, 아예 파일 자체에 그 정보가 없어져 버린 상태라고 보시면 됩니다. 나중에 보정 프로그램에서 밝기를 올려도 디테일이 살아나지 않고 그냥 뿌연 회색 덩어리만 나오는 이유가 여기 있습니다.
리프티드 블랙: 검정이 검정 같지 않고 뿌옇게 뜨는 현상
반대로 리프티드 블랙은 검정이어야 할 부분이 살짝 떠서 회색빛이 도는 현상입니다. 화면 전체가 안개 낀 것처럼 뿌옇게 보이거나, 명암 대비가 밋밋해 보이는 게 특징이에요. 필름 룩을 낼 때 일부러 살짝 띄우기도 하지만, 의도치 않게 이런 상태가 되면 이미지가 힘없어 보이는 원인이 됩니다.
8bit sRGB, 왜 어두운 영역에서 유독 약할까
여기서 비트 심도(bit depth) 이야기를 안 할 수가 없는데요, 비트 심도는 “밝기를 몇 단계로 촘촘하게 나눠서 기록하느냐”를 뜻합니다. 흔히 쓰는 8bit는 한 채널당 256단계(0~255)로 밝기를 나눕니다. 얼핏 충분해 보이지만, 사람 눈은 어두운 쪽 명암 차이에 훨씬 민감하기 때문에 문제가 됩니다.
sRGB 같은 표준 색공간은 이런 특성을 고려해서 감마(gamma) 곡선을 적용합니다. 감마는 밝기 단계를 배분하는 방식인데, 쉽게 말해 어두운 영역에 더 많은 계단을, 밝은 영역에는 적은 계단을 배정하는 거예요. 계단 간격을 촘촘하게 만들어주는 셈이죠. 그런데 이렇게 배려를 해줘도 8bit는 절대적인 계단 수 자체가 적기 때문에, 아주 어두운 그림자 구간에서는 여전히 계단 사이 간격이 눈에 띄게 벌어집니다. 그 결과가 밴딩(bandng, 색이 계단처럼 뚝뚝 끊겨 보이는 현상)이나 디테일 손실로 나타나는 거예요. 반면 10bit, 16bit처럼 계단 수가 훨씬 많은 포맷은 같은 어두운 구간에서도 훨씬 부드럽게 정보를 담을 수 있습니다.
AI 생성 이미지에서 섀도가 눌리는 경향, 왜 그럴까
AI 이미지 생성 모델에서 유독 그림자 뭉개짐이 자주 보이는 데는 몇 가지 경향이 있습니다. 다만 이건 모델 내부 동작을 100% 단정할 수 있는 영역은 아니고, 관찰되는 경향 정도로 이해해주시면 좋겠습니다.
- 학습 데이터의 편향: 학습에 쓰인 이미지 상당수가 이미 JPEG 압축을 거쳤거나, 대비가 강조된 편집본일 가능성이 있습니다. JPEG는 압축 과정에서 미세한 밝기 차이를 뭉뚱그리는 경향이 있어서, 이런 이미지로 학습한 모델도 비슷한 습관을 물려받을 수 있어요.
- 압축과 후처리 파이프라인: 생성 결과를 저장하거나 웹에 올리는 과정에서 다시 JPEG로 압축되면, 이미 약했던 그림자 디테일이 한 번 더 깎여나갑니다.
- 대비 강조 튜닝: 좀 더 “임팩트 있는” 이미지를 만들기 위해 대비를 세게 주는 방향으로 튜닝된 모델은 결과적으로 어두운 톤을 더 눌러버리는 경향을 보일 수 있습니다.
풀레인지 vs 리미티드 레인지, 헷갈리면 검정이 이상해집니다
의외로 자주 놓치는 부분이 바로 풀레인지(full range)와 리미티드 레인지(limited range) 혼동입니다. 리미티드 레인지는 방송·비디오 규격에서 쓰던 방식으로, 0~255 전체 중 16~235 구간만 실제 영상 신호로 쓰고 나머지는 여유 공간으로 남겨둡니다. 풀레인지는 0~255를 전부 다 사용하고요.
이 두 방식이 서로 안 맞으면 어떤 일이 벌어지냐면요, 리미티드 레인지로 인코딩된 파일을 풀레인지로 잘못 해석하면 검정이 진짜 검정(0)이 아니라 회색(16 근처)으로 떠 보이는 리프티드 블랙 현상이 생깁니다. 반대로 풀레인지 파일을 리미티드 레인지로 잘못 해석하면 0~16 사이의 값이 전부 뭉텅 잘려서 크러시드 블랙이 생기죠. AI 툴 체인에서 이미지를 이 프로그램 저 프로그램으로 옮길 때 이 설정이 슬쩍 바뀌는 경우가 은근히 많습니다.
히스토그램·레벨·커브로 뭉개짐 진단하기
눈으로만 봐서는 크러시드인지 리프티드인지, 아니면 그냥 원래 어두운 장면인지 구분이 애매할 때가 많아요. 이럴 때 쓰는 게 히스토그램입니다.
히스토그램은 이미지의 모든 픽셀이 얼마나 밝은지를 막대그래프로 보여주는 도구예요. 왼쪽 끝(검정 쪽)에 픽셀이 뾰족하게 몰려 있고 그 왼쪽 벽에 딱 붙어서 잘려 있다면, 그건 크러시드 블랙일 가능성이 높습니다. 반대로 왼쪽 끝이 완전히 비어 있고 그래프가 살짝 오른쪽에서 시작한다면 리프티드 블랙이에요.
포토샵이나 다빈치 리졸브 같은 툴의 레벨(Levels), 커브(Curves) 도구를 쓰면 이 기준점을 눈으로 확인하고 조정할 수 있습니다. 레벨 도구의 검정점 슬라이더를 살짝 움직여보면서 히스토그램이 어디서부터 반응하는지 보는 것만으로도 진단이 훨씬 쉬워집니다.
뭉개진 섀도, 살릴 수 있을까? 현실적인 방법과 한계
일단 리프티드 블랙은 비교적 쉽게 고칠 수 있습니다. 레벨이나 커브에서 검정점을 살짝 내려주면 대부분 정상적인 검정으로 돌아옵니다.
문제는 크러시드 블랙이에요. 이건 냉정하게 말씀드리면, 없는 정보는 되살릴 수 없습니다. 이미 0으로 뭉개진 픽셀에는 원래 있었을 디테일 정보 자체가 사라진 상태라서, 밝기를 올려봤자 회색 덩어리만 커질 뿐 없던 무늬가 생기지 않아요.
그래도 실무에서 쓰는 완화 방법들은 있습니다.
- AI 기반 디테일 복원(생성형 업스케일러, 디노이즈 겸용 툴)을 활용해 그럴듯한 질감을 새로 만들어 붙이기 — 다만 이건 원본 복원이 아니라 “새로 그려 넣는” 것에 가깝습니다.
- 톤 매핑을 부드럽게 걸어서 뭉개진 경계를 조금이라도 자연스럽게 풀어주기
- 아예 처음부터 다시 생성하되, 프롬프트에서 노출·조명 조건을 조정해 크러시드가 덜 생기게 유도하기
미리 막는 게 최선입니다: 예방을 위한 체크리스트
사후 보정보다 훨씬 효율적인 건 애초에 뭉개지지 않게 뽑는 것입니다.
- 가능하면 결과물을 **고비트(16bit) 무손실 포맷(PNG, TIFF, EXR 등)**으로 저장하기
- JPEG로 저장해야 한다면 최고 품질 설정을 쓰고, 재압축 횟수를 최소화하기
- 업스케일은 색보정 이후에 진행하기 — 뭉개진 저해상도 이미지를 먼저 업스케일하면 뭉개진 디테일까지 그대로 확대되어 고치기 더 어려워집니다
- 색공간과 레인지(풀/리미티드) 설정을 파이프라인 전 단계에서 통일해서 확인하기
- 최종 결과물을 넘기기 전에 히스토그램으로 양쪽 끝이 잘리지 않았는지 습관적으로 확인하기
증상별 원인과 대처법 한눈에 보기
| 증상 | 주요 원인 | 대처법 |
|---|---|---|
| 그림자가 새까만 덩어리로 뭉개짐 (크러시드) | 8bit 저장, 강한 JPEG 압축, 대비 과다 튜닝 | 고비트 재출력 권장, AI 디테일 복원으로 일부 완화, 완전 복구는 불가 |
| 검정이 뿌옇게 뜸 (리프티드) | 레인지 오해(리미티드→풀레인지 오인식), 잘못된 톤커브 | 레벨 도구로 검정점 낮추기, 레인지 설정 재확인 |
| 밴딩(계단 현상)이 어두운 곳에 보임 | 8bit 한계, 낮은 비트 심도로 그라디언트 표현 | 16bit 작업, 노이즈(디더링) 살짝 추가 |
| 툴마다 검정 표시가 다름 | 색공간/레인지 설정 불일치 | 파이프라인 전체 레인지 통일, 모니터 캘리브레이션 |
자주 묻는 질문(FAQ)
Q1. 크러시드 블랙과 그냥 어두운 사진의 차이는 뭔가요? 그냥 어두운 사진은 밝기를 올리면 원래 있던 디테일이 자연스럽게 드러납니다. 반면 크러시드 블랙은 파일 자체에 그 정보가 저장되지 않아서, 밝기를 올려도 뿌연 회색 덩어리만 나오고 원래 무늬나 질감은 나타나지 않습니다.
Q2. AI 이미지 생성 시 처음부터 뭉개짐을 줄이는 프롬프트 팁이 있을까요? 확실한 정답은 아니지만, 노출이나 조명을 지나치게 극단적으로(“완전히 어두운”, “강한 그림자”) 요구하기보다 조명 조건을 조금 더 구체적이고 부드럽게 묘사하면 결과물의 톤 폭이 넓게 나오는 경향이 있습니다. 다만 이는 모델과 설정에 따라 달라질 수 있는 경향일 뿐, 항상 보장되는 건 아닙니다.
Q3. 8bit로 작업해도 괜찮은 경우는 언제인가요? 최종 출력물이 웹용 썸네일처럼 크기가 작고 어두운 톤 디테일이 크게 중요하지 않은 경우라면 8bit로도 충분할 수 있습니다. 하지만 색보정이나 합성 등 추가 작업을 거쳐야 하는 중간 단계 파일이라면, 나중에 밴딩과 뭉개짐이 누적될 수 있으니 가능한 한 고비트로 유지하는 걸 권장드립니다.
vfx 잡학지식



댓글 0
첫 댓글을 남겨보세요.