소프트웨어가 JPEG보다 RAW 파일의 화이트 밸런스를 더 정확하게 교정 할 수있는 이유는 무엇입니까?


11

후 처리 JPEG 화이트 밸런스 보정이 Raw의 화이트 밸런스만큼 정확하지 않은 이유는 무엇입니까?

내 이해는 jpeg를 촬영할 때 카메라가 내부적으로 다음 단계를 수행한다는 것입니다.

  1. (demosaicing / debayering) 알고리즘을 사용하여 원시 센서 데이터를 변환하십시오.
  2. 선형 공간으로 변환

    ㅏ. 룩업 테이블을 사용하여 원시 값을 선형 공간에 맵핑

    비. 그런 다음 각 픽셀의 블랙 레벨을 계산하고 뺍니다.

    씨. 그런 다음 화이트 레벨을 사용하여 각 픽셀의 값을 0.0에서 1.0으로 다시 조정합니다

    디. 크기가 조정 된 값은 0.0에서 1.0 논리 범위로 잘립니다.

  3. 화이트 밸런스 조정으로 카메라 색상 공간을 CIE XYZ 공간에 매핑

    ㅏ. CameraToXYZ_D50 = Chromatic_adapatation_matrix * CameraToXYZ_matrix를 사용하여 XYZ (D50)로 변환

  4. CIE XYZ에서 sRGB로 변환

    ㅏ. CIE XYZ를 사용하여 선형 RGB 행렬로 선형 RGB 계산

    비. 선형 RGB에서 감마 곡선 변환을 사용하여 Rec709 sRGB 계산

  5. sRGB를 8 비트로 변환하고 JPEG를 사용하여 압축

이것이 맞다면 Jpeg가 왜 Raw와 같은 방식으로 화이트 밸런스를 수정할 수 없었는지 이해할 수 없습니다!

JPEG 및 32 비트 tiff 파일의 손실 압축으로 인해이 문제가 발생하지 않습니까?

여기에 이미지 설명을 입력하십시오


1
JPEG WB가 원시만큼 정확하지 않다고 생각하는 것은 무엇입니까? 정확히 무엇을 의미 합니까? 원시 변환 응용 프로그램을 사용할 수있는 숙련 된 사람은 물론 카메라가 일반적으로 추측하지 않는다는 것을 의미합니까? 또는 다른 것?
Michael C

카메라에 동일한 사진의 jpeg 사본을 저장 한 다음 라이트 룸에서 모두 열도록하고 이미지에서 정확히 동일한 위치를 클릭하여 색상 선택기를 사용하여 화이트 밸런스를 올바르게 조정하려고하면 jpeg가 여전히 이상한 색상을 유지하는 동안 완벽합니다.
skyde

2
그것은 매우 다른 질문입니다. 나는 당신이 실제로 묻는 생각을 반영하기 위해 제목을 편집하려고합니다 ...
제 프로필을 읽으십시오

5
첫 번째 이미지는 "원본 원본 파일"이 아닙니다. 이는 원시 변환 응용 프로그램이 생성하여 화면에 8 비트로 표시 한 원시 데이터에 대한 무한한 해석 수 중 하나입니다.
Michael C

2
아마도 가장 중요한 점은 아니지만 2 단계는 실제로 2 개의 별개의 단계이며, 제시된 순서대로 수행되지 않을 수 있습니다 (WB가 최종 JPEG에 "베이크"되는 추가 방법 임) 색깔).
junkyardsparkle 1

답변:


9

소프트웨어가 JPEG보다 RAW 파일의 화이트 밸런스를 더 정확하게 교정 할 수있는 이유는 무엇입니까?

실제 원시 데이터를 사용하여 원시 데이터에 대한 다른 해석을 생성하는 것과 화면에 표시되는 원시 파일의 초기 8 비트 해석과 다른 정보를 생성하는 것의 근본적인 차이가 있습니다. 파일이 화면에 표시됩니다.

"원시"파일에서 흰색 클릭기를 사용하면 화면에 표시된 이미지 (원시 이미지 파일의 데이터에 대한 많은 해석 중 하나 인 jpeg와 같은 8 비트 렌더링)가 수정 되지 않습니다. ). 원시 변환 응용 프로그램에서 다른 색상 채널 승수 세트를 사용하여 원시 파일의 데이터를 다시 표시 가능한 이미지로 다시 변환하도록 지시합니다.

화면에 표시되는 첫 번째 버전을 만드는 데 사용 된 것과 동일한 원시 데이터로 다른 이미지를 만듭니다. 그러나 응용 프로그램은 처음부터 다시 시작하여 원시 파일의 모든 데이터를 사용하여 해당 데이터를 처리하는 방법에 대한 다른 지침에 따라 원시 데이터에 대한 두 번째 다른 해석을 만듭니다. 화면에 표시된 제한된 정보로 시작하여 수정하지 않습니다. 그렇게하면 jpeg로 작업 할 때와 동일한 결과를 얻을 수 있습니다. ¹

원시 파일에는 원시 파일을 '열 때'모니터에 표시되는 것보다 훨씬 많은 정보가 포함됩니다. 원시 이미지 파일에는 8 비트 jpeg 파일에 맞는 해당 데이터에 대한 거의 무한한 수의 다른 해석을 생성하기에 충분한 데이터가 포함됩니다 .²

Raw 파일을 열고 화면에서 볼 때마다 "THE Raw 파일"이 표시되지 않습니다. ³ 원시 파일의 데이터에 대해 거의 수많은 가능한 해석 중 하나 를보고 있습니다. 원시 데이터 자체에는 각 픽셀 웰별로 단일 (모노크롬) 밝기 값 측정 값이 포함됩니다. Bayer 마스크 카메라 센서 (대부분의 컬러 디지털 카메라는 Bayer 필터를 사용함)를 사용하면 각 픽셀 앞에는 '빨간색', '녹색'또는 '파란색'(실제 '색상')의 색상 필터 가 있습니다. 대부분의 Bayer Masks의 필터는 '적색'의 경우 약간 황록색에서 주황색-노란색, '녹색'의 경우 약간 청록색, '청색'의 경우 약간 청록색-이 색상은 망막의 세 가지 유형의 원뿔에 대한 민감도 중심에 해당합니다 . 각 픽셀에서 측정 된 단일 밝기 값에서 색상 정보를 얻는 방법에 대한 자세한 내용은 RAW 파일이 픽셀 당 3 개의 색상을 저장합니까?

원시 파일의 화이트 밸런스를 변경하면 화면에 표시되는 원시 파일의 8 비트 해석이 변경되지 않고 선형 14 비트 단색 원시 데이터가 해석되는 방식이 변경됩니다. 업데이트 된 화이트 밸런스와 함께 화면에 표시됩니다.즉, 8 비트 화면에 표시되는 각 픽셀에 대해 3 개의 색상 채널에서 256 개의 이산 감마 보정 단계가 아니라 각 파일에 대해 원시 파일에 포함 된 16,384 개의 이산 단색 선형 단계의 모든 이점을 사용하고 있습니다. 그 raw 파일의 표현 또한 마스크 된 픽셀 및 파일을 화면에 표시하기 위해 8 비트 형식으로 변환 할 때 버려지는 기타 정보와 같은 원시 이미지 데이터에 포함 된 다른 모든 정보를 활용합니다.

원시 파일을 열 때 모니터에 표시되는 이미지의 모양은 파일을 열 때 사용한 응용 프로그램이 파일의 원시 데이터를 해석하여 볼 수있는 이미지를 생성하는 방법에 따라 결정됩니다. 그러나 이것이 "원래의 원본 파일"을 표시하는 유일한 방법은 아닙니다. 응용 프로그램 또는 원시 파일에 첨부 된 jpeg 미리보기를 생성 한 카메라가 원시 파일의 정보를 처리하여 화면에 표시하는 방식입니다.

각 애플리케이션에는 원시 데이터 처리 방법을 결정하는 고유 한 기본 매개 변수 세트가 있습니다. 가장 중요한 매개 변수 중 하나는 원시 데이터를 변환하는 데 사용되는 화이트 밸런스 를 선택하는 방법입니다. 대부분의 응용 프로그램에는 사용자가 선택할 수있는 다양한 매개 변수 집합이 있으며,이 매개 변수는 원시 파일의 데이터를 처음 해석하는 데 사용되는 명령 집합 내에서 개별 설정을 자유롭게 변경할 수 있습니다. 많은 응용 프로그램에서 사진을 촬영할 때 카메라 (AWB 카메라 내장 사용시) 또는 사용자가 입력 한 (CT + WB 보정 카메라 사용시) 추정 한 화이트 밸런스 / 컬러 채널 승수를 사용합니다. 그러나이없는 경우에만 원시 데이터를 해석하는 데 사용할 수있는 합법적 인 화이트 밸런스.

14 비트 원시 파일의 경우 0 (순 검은 색)과 1 (순백색) 사이에 16,384 개의 이산 값이 있습니다. 이는 각 값 사이에 매우 작은 단계를 허용합니다. 그러나 이들은 단색 휘도 값입니다. 데이터가 디 모자이크되고 감마 곡선이 적용되고 특정 색 공간으로의 변환이 수행되면 WB 변환 승수가 일반적으로 이러한 14 비트 값에 적용됩니다. 프로세스의 마지막 단계는 손실 된 파일 압축을 수행하기 전에 결과 값을 8 비트로 다시 매핑하는 것입니다. 8 비트는 0 (순 검은 색)과 1 (순백색) 사이의 256 이산 값만 허용합니다. 따라서 값 사이의 각 단계는 14 비트보다 64 배 더 큽니다.

그런 다음이 많은 그라데이션으로 WB를 변경하려고하면 확장하려는 영역이 결과 파일의 단일 단계보다 사용중인 데이터의 각 단계를 푸시합니다. 따라서 해당 영역의 그라데이션이 더 거칠어집니다. 축소하는 영역은 각 단계를 결과 파일의 단일 단계보다 작은 공간으로 밀어 넣습니다. 그러나이 단계는 모두 '0'과 '1'사이의 256 단계 계조에 맞게 재정렬됩니다. 이로 인해 부드러운 전환 대신 밴딩 또는 포스터가 나타납니다.

¹ 더 빠르고 리소스를 덜 사용하기 위해 일부 원시 처리 응용 프로그램에는 설정 슬라이더를 움직일 때 화면의 기존 8 비트 표현을 실제로 수정하는 "빠른"모드가 있습니다. 이것은 종종 밴딩 또는 문제의 색상 이동 jpeg에서 볼 수있는 자주색 색조와 같은 다른 바람직하지 않은 인공물을 초래합니다. 그러나 이것은보고있는 미리보기에만 적용됩니다. 파일이 변환 및 저장 (내보내기) 될 때, 실제 데이터가 재 처리 될 때와 동일한 지침이 실제 데이터에 적용되며 밴딩 또는 기타 아티팩트가 표시되지 않거나 심각하지 않습니다.

² 물론, 전체 시야 내에서 하나의 순수한 색상을 포함하는 사진을 찍을 수 있습니다. 그러나 대부분의 사진에는 다양한 색조, 색조 및 밝기 수준이 있습니다.

³ 참조 : 디베 이어링을 아직 수행하지 않은 경우 왜 RAW 이미지가 이미 컬러로 표시됩니까?

이것은 정밀도 감소로 인한 이미지의 밴딩 또는 포스터 화를 설명하지만 여전히 화이트 포인트를 올바른 위치로 이동시킬 수 있습니까?

JPEG의 색상을 어느 정도 변경할 수 있지만 원시 데이터로 생성 할 수있는 모든 색상을 생성하는 데 필요한 대부분의 정보는 더 이상 존재하지 않습니다. 압축 RGB로 변환하고 8 비트로 축소하는 동안 버렸습니다 . 당신이 남길 수있는 유일한 것은 그 세 가지 색상 채널의 각 픽셀의 값입니다. 이들 채널 각각에 대한 응답 곡선은 다시 그려 질 수 있지만, 모든 것은 각각의 이미지 픽셀에서 그 컬러 채널에 대한 값을 올리거나 내릴 뿐이다. JPEG에서는 정보가 유지되지 않기 때문에 새로운 채널 승수를 기반으로 되돌아 가서 데모를 다시 시작하지 않습니다.

질문에 추가 된 예시 이미지에서, 제 2 이미지는 제 1 이미지로부터 도출되지 않는다는 것을 이해하는 것이 중요하다. 모두 제 1 및 제 2 영상은 완전히 같은 원시 데이터 개의 상이한 해석된다.어느 쪽도 다른 것보다 독창적이지 않습니다. 원시 파일에 포함 된 데이터의 유효한 표현이라는 측면에서 다른 것보다 "올바른"것도 아닙니다. 둘 다 원시 파일의 데이터를 사용하여 8 비트 이미지를 생성하는 합법적 인 방법입니다. 첫 번째는 원시 변환 응용 프로그램 및 / 또는 카메라에서 생성 된 jpeg 미리보기가 데이터 해석을 선택한 방식입니다. 두 번째는 원시 변환 값이 회색 / 흰색으로 변환하려는 원시 센서 값을 말한 후 원시 변환 응용 프로그램이 데이터를 해석하는 방법입니다. jpeg 이미지의 동일한 부분을 클릭하면 이미지를 수정하여 원시 파일의 두 번째 버전처럼 보이게하는 데 필요한 많은 색상 정보가 더 이상 존재하지 않아 사용할 수 없었습니다.

JPEG 및 32 비트 tiff 파일의 손실 압축으로 인해이 문제가 발생하지 않습니까?

손실 압축은 그것의 대부분이지만, 아닙니다. 또한 8 비트로 축소되어 14 비트 원시 파일 에서처럼 '0'(검은 색)과 '1'(전체 채도) 사이의 각 단계를 64 배 크게 만듭니다. 그러나 그것은 JPEG 압축을 뛰어 넘습니다.

에서 단락의 커플 이 답변TIFF 또는 PSD 16 비트에 RAW 색상 깊이를 잃게 :

원시 파일의 데이터 가 탈선 된 감마 보정 TIFF 파일 로 변환 되면 프로세스를 되돌릴 수 없습니다.

TIFF 파일에는 모든 처리 단계가 포함 된 정보에 "구워"있습니다. 압축되지 않은 16 비트 TIFF 파일이 각 데이터 저장 방식으로 인해 파생 된 일반 원시 파일보다 훨씬 크지 만 변환을 취소하고 동일한 정확한 데이터를 재생하는 데 필요한 모든 정보를 포함하지는 않습니다. 원시 파일에 포함되어 있습니다. 원시 파일의 픽셀 레벨 데이터에는 특정 TIFF를 생성하는 데 사용될 수있는 거의 무한한 수의 다른 값이 있습니다. 마찬가지로 원시 데이터를 처리하여 TIFF를 생성하는 방법에 대한 결정에 따라 원시 이미지 파일의 데이터에서 생성 할 수있는 TIFF 파일이 거의 무한대로 있습니다.

16 비트 TIFF와 8 비트 TIFF의 장점은 이미지의 각 색상 채널에 대해 가장 어두운 값과 가장 밝은 값 사이의 단계 수입니다. 이러한 미세한 단계를 통해 색조 그라데이션 영역에서 밴딩과 같은 아티팩트를 만들지 않고 궁극적으로 8 비트 형식으로 변환하기 전에 추가로 조작 할 수 있습니다.

그러나 16 비트 TIFF가 12 비트 (0-4095) 또는 14 비트 (0-16383) 원시 파일보다 "0"과 "65,535"사이에 더 많은 단계가 있다고해서 TIFF 파일이 표시되는 것은 아닙니다. 같거나 더 큰 밝기 범위. 14 비트 원시 파일의 데이터가 TIFF 파일로 변환 된 경우 검은 점은 2048과 같은 값으로 선택되었을 수 있습니다. 원시 파일의 값이 2048보다 낮은 모든 픽셀에는 0 값이 할당됩니다. TIFF에서. 마찬가지로, 화이트 포인트를 8,191로 설정하면 8191보다 높은 원시 파일의 값이 65,535로 설정되고 원시 파일에서 가장 밝은 빛의 정지가 취소 될 수 없게됩니다. 원시 파일에서 선택한 흰색 점보다 밝은 모든 것은 TIFF에서 동일한 값을 가지므로 세부 사항이 유지되지 않습니다.

여기에는 동일한 근거를 많이 다루는 많은 기존 질문이 있습니다. 도움이 될만한 몇 가지 정보는 다음과 같습니다.

RAW 파일은 픽셀 당 3 가지 색상을 저장합니까?
RAW에서 TIFF 또는 PSD 16 비트로 색상 심도가 손실
Lightroom에서 카메라 내 JPEG 설정을 시작하려면 어떻게해야합니까?
Darktable에서 "lighttable"에서 "darkroom"으로 전환 할 때 RAW 파일의 모양이 바뀌는 이유는 무엇입니까?
nikon d810 매뉴얼 WB가 Lightroom의 "As Shot"과 동일하지 않은
이유 편집 프로그램에서 RAW 이미지가 JPEG보다 왜 나빠 보입니까?
Lightroom의 색상을 다른 편집 도구와 일치
RAW로 촬영하는 동안 사진을보기 좋게하려면 후 처리해야합니까?

카메라에서 컴퓨터 화면으로 품질이 저하되는
이유 Photoshop / Lightroom과 Canon EOS 유틸리티 / 카메라에서 사진이 다르게 보이는 이유는 무엇입니까?
카메라에서 랩탑으로 가져올 때 이미지가 다르게 보이는 이유는 무엇입니까?
Lightroom에서 카메라 내 처리를 에뮬레이트하는 방법은 무엇입니까?
Nikon 카메라 내 vs Lightroom jpg 변환
로드 한 후 Lightroom / Photoshop 미리보기가 변경되는 이유는 무엇입니까?


2
이것은 정밀도 감소로 인한 이미지의 밴딩 또는 포스터 화를 설명하지만 여전히 화이트 포인트를 올바른 위치로 이동시킬 수 있습니까?
skyde

2
예, 이것은 TIFF 색상 영역으로 변환 할 때 원색의 색상이 잘릴 수 있음을 의미합니다. 그리고 이로 인해 색상 균형 보정에 필요한 정보가 여전히 손실되었습니다.
skyde

1
저는 스카이 데를 사용하고 있습니다. 색상 해상도에 불연속 단계가 적다고해서 화이트 밸런스가 눈에 띄는 다른 결과를 의미하지는 않습니다. 특히 jpeg 버전이 짙은 자주색 톤인 경우. 더 적합한 이론은 가능한 내부 보정 값이 원시보다 jpeg에서 더 좁은 범위로 고정된다는 것입니다. 이는 원시가 원시 센서 데이터에서 해석되고 jpeg가 개별 색상 값이라는 사실에 기인합니다.
Horitsu

1
나는 여기 skyde와 함께합니다. 이것은 원시 형식과 JPEG 형식의 차이점에 대한 길고 관계없는 이야기입니다. 여기에 실제로 원래 질문에 대한 답변이 없습니다.
jarnbjo

1
@jarnbjo 대부분의 답변은 이미지 파일의 실제 원시 데이터와 원시 데이터에 대한 여러 가능한 해석 중 하나를 "볼"때 화면에 표시되는 것과의 차이를 설명하는 데 사용됩니다. 이러한 유형의 질문의 대부분은 사용자가 화면에서 보는 것이 절대 "THE"원시 파일이라는 사실에 대한 이해 부족으로 인해 발생합니다. 또한 여러 가지 다른 방법으로 전구를 밝히면 전구가 질문자에게 계속 갈 확률이 높아진다는 것이 저의 경험이었습니다. YMMV.
Michael C

3

간단한 대답은 카메라와 RAW 프로세서 (LR, Darktable)는 다른 알고리즘을 사용하여 RAW 파일을 처리하기 때문입니다. 그 이유는 많으며, 영업 비밀이므로 많은 알고리즘을 평가할 수 없습니다. 예를 들어 Canon의 (EOS 700D) 일광 색 온도는 약 5200K이고 Lightroom은 5500K입니다. 상황에 따라 차이가 있습니다.

정확하게 말하면 RAW 파일에는 미리 정의 된 색 온도가 없습니다. 메타 정보로 포함됩니다. RAW 프로세서는 설명 된 작업을 수행 할 때 특정 WB를 적용합니다.

편집 : 귀하의 의견에 따라 : JPEG 파일은 이미 "요리"되었기 때문에 많은 색 온도를 변경할 수 없습니다. 색 온도가 이미 적용되어 있으며 색을 "이동"할 수있는 색 깊이가 충분하지 않습니다.


Darktable의 알고리즘은 영업 비밀이 아닙니다.
내 프로필을 읽어주세요

@mattdm, 사실입니다. 그러나 LR, ON1, CaptureOne의 사람들은, 다른 nonopensource RAW 프로세서는 ...이다
로미오 Ninov

그러나 그 질문과 실제로 관련이 있습니까? 화이트 밸런스 보정의 기본 사항은 널리 알려진 소프트웨어로 널리 알려져 있습니다.
내 프로필을 읽어주세요

기본 사항 예. 그러나 구현이 다를 수 있습니다. 그리고 정확하게 (nonopensource 소프트웨어)은 일반적으로 비밀에 보관하는 세부 사항
로미오 Ninov

1

그것은 이다 화이트 밸런스 JPEG 파일로 가능하지만, 다른 이미지를 다르게 (다른 알고리즘을) 행동하는 경향이 대 편집 툴은 RAW에서 작동하는 데 사용됩니다. 더욱이:

  • 적기 도구는 부정확 어려운 결과를 복제 할 수있다.

  • 비트 심도 JPEG 파일의 많은 색상이 RAW 대 이동 할 수있는 방법을 제한합니다.

  • 감마 곡선 놨 모든 것을 위로.

  • 선형 데이터와 로그 데이터의 계산은 다르게 작동합니다.

이것은 정확히 작동하는 방식이 아니라 설명하기위한 것입니다.

  • 일부 데이터 (1, 4, 8)에 2를 곱한다고 가정하면 결과는 (2, 8, 16)입니다. 선형 데이터의 경우 최대 결과 16은 최소 결과 4의 2 배입니다.

  • 그러나 로그 표현으로 2 5 와 같은 인접 값 사이의 간격 와 2 6 과 선형 값 5와 6의 차이보다 훨씬 큽니다. 또한 최대 결과 인 2 16 은 32768 배보다 크지 않습니다. 최소 결과, 2 2 는 원래 값인 2 8의 256 배이기도 합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.