가중선형 안자츠(Weighted Linear Ansatz)를 적용한 High Dynamic Range 및 Low Dynamic Range 예제

간략한 설명

파일: \examples\Processing\HDR_ImageComposition\HighDynamicRange\HDR_linearW_Bayer_3_Base.vad
\examples\Processing\HDR_ImageComposition\HighDynamicRange\HDR_linearW_Color_3_Base.vad
\examples\Processing\HDR_ImageComposition\HighDynamicRange\HDR_linearW_Gray_3_Base.vad
\examples\Processing\HDR_ImageComposition\HighDynamicRange\HDR_linearW_Bayer_3_Full.vad
\examples\Processing\HDR_ImageComposition\HighDynamicRange\HDR_linearW_Color_3_Full.vad

기본 플랫폼: mE5-MA-VCL

간단한 설명

Reinhard 등과 Fattal 등의 연구에 기반한 가중 선형 HDR 알고리즘 및 LDR 알고리즘.

이 High Dynamic Range(HDR) 및 Low Dynamic Range(LDR) VisualApplets(VA) 디자인은 '카메라 응답 함수를 사용한 High Dynamic Range 및 Low Dynamic Range 예제'에 설명된 내용과 유사합니다. 차이점은 HDR 알고리즘에 있으며, 이는 다음 하위 섹션에서 설명합니다. 이 예제에는 여러 가지 변형이 존재합니다. 이들은 베이스 및 풀 구성의 marathon VCL 보드용으로 RGB, 베이어 패턴 또는 흑백 카메라를 위해 설계되었습니다.

가중 선형 안자츠를 활용한 하이 다이나믹 레인지 이미징

노출(Exposure) 은(는) 다음의 역함수로 표현할 수 있습니다. 식 32

식 42.


노출이 선형 함수라고 가정할 수 있는 경우, 다음과 같이 HDR 색상 성분을 구성할 수 있습니다:

식 43.


대신 Equation 34(을)를 사용합니다. 여기서 은(는) Equation 35 어둡거나 밝게 노출된 픽셀 값에 더 적은 가중치를 부여하는 가중치 함수와 유사합니다. 이 예제의 LDR 성분은 다음의 LDR 알고리즘과 유사하게 계산됩니다. 및 .

VisualApplets 디자인

이 예제는 매우 어두운 객체와 매우 밝은 객체가 혼재된 매우 넓은 밝기 범위의 장면에 적합합니다. 장면의 모든 객체가 올바르게 표시되는 이미지가 PC로 전송됩니다. 디자인의 기본 구조는 그림 354에 나와 있습니다(여기서는 베이스 구성의 베이어 패턴 카메라용). 모든 이미지 픽셀의 빨간색, 초록색, 파란색 값은 Bayer5x5Linear 연산자가 포함된 HierarchicalBox Bayer에서 계산됩니다. 상자 ImageSequence에서는 세 장의 이미지 시퀀스가 버퍼링됩니다. 세 장의 이미지는 HDR-LDR 처리를 위해 서로 다른 세 가지 노출 시간을 가져야 합니다. 노출 시간은 이미지 시퀀스의 최소한 한 장 이상의 이미지에서 모든 이미지 픽셀이 과소 노출이나 과다 노출되지 않도록 선택해야 합니다. HierarchicalBox Trigger의 연산자 SignalWidth width1 ~ width3을 통해 이러한 시간을 설정할 수 있습니다(그림 348 참조). 시간 단위는 8ns의 시스템 클럭 틱입니다. 연산자 Generate-Period는 연산자 SignalWidth width1 ~ width3 중 가장 긴 시간보다 크거나 같은 값으로 설정해야 합니다. 또한 카메라 매뉴얼에서 연산자 Generate-Period의 최소 주기 길이를 확인하시기 바랍니다. 세 장의 이미지는 식 43에 설명된 가중 선형 HDR 알고리즘을 사용하여 결합됩니다. 이는 HierarchicalBox HDR(그림 354)에 구현되어 있습니다. Reinhard 외 [Rei02] 및 Fattal 외 [Fat02]의 LDR 알고리즘은 LDR에 구현되어 있습니다. 결과 RGB 이미지의 색상은 HierarchicalBox OutputToPC에서 병합됩니다. "HDR_linearW_Gray_3_Base.vad" 디자인에는 이 상자가 존재하지 않습니다. 연산자 SourceSelector를 사용하면 처리된 HDR-LDR 이미지 또는 (베이어 디모자이싱된) 카메라 이미지 중 하나를 DMA 전송하도록 선택할 수 있습니다. 디자인 구조와 계산은 섹션 의 예제와 유사하므로, 이하에서는 HDR의 내용 설명에만 집중하겠습니다. 단, 소수점 이하 비트 등 일부 세부 사항에서는 디자인이 다를 수 있다는 점에 유의하십시오. 관련 참고 사항은 예제의 주석 상자에서 확인할 수 있습니다.

기본 디자인 구조

그림 354. 기본 디자인 구조


그림 355 에서 다음 HierarchicalBox의 내용을 확인할 수 있습니다. HDR. 버퍼링된 이미지 시퀀스의 3개 이미지에 대해, 첫 번째 이미지부터 세 번째 이미지까지의 분자 및 분모의 항이 의 멤버 식 43 빨간색, 초록색, 파란색 색상별로 각각 계산됩니다(HierarchicalBox Image1 (으)로 Image3) 빨간색, 초록색, 파란색 색상에 대해 각각 수행됩니다. "HDR_linearW_Gray_3_Base.vad" 디자인의 흑백 이미지의 경우, 계산은 흑백 성분에 대해서만 수행됩니다.

HDR 박스의 내용

그림 355. HDR 상자의 내용


이러한 항의 계산은 그림 356 에 빨간색 색상의 예시로 나타나 있습니다. Image1 초록색 및 파란색 색상과 이미지 2 및 3에 대한 계산도 이와 유사합니다. 그림 356 의 픽셀 값은 다음 파라미터의 값으로 설정할 수 있는 노출 시간으로 나누어집니다. Const_dt1 (또는 아날로그 Const_dt2 및 Const_dt3). 시간 기준은 초, 밀리초 또는 마이크로초일 수 있으며 파라미터인 TimeBase 상자 Red, 초록색 및 Blue 박스 내 HDR (그림 355 및 그림 357). 의 결과는 룩업 테이블로 구현된 가중치 함수와 곱해집니다. LUT_weight. "WeightsLinear.txt" 테이블은 Matlab 프로그램 모듈 "WeightLinear.m", "sample.m" (그레이스케일 이미지의 경우 "sample_gray.m") 및 "HDR_CRC_m" (그레이스케일 이미지의 경우 "HDR_CRC_Gray.m")를 사용하여 (\examples\Processing\Advanced\HighDynamicRange\ 아래에서) 생성할 수 있습니다. 자세한 지침은 "HDR_CRC.m"(그레이스케일 이미지의 경우 "HDR_CRC_Gray.m")에 있는 간략한 매뉴얼을 참조하십시오. 그림에 표시된 구성 요소의 출력은 356 의 피가수(summands)가 됩니다. 식 43: 및 .

Image1 상자의 Red 콘텐츠

그림 356. Image1 상자의 Red 콘텐츠


HDR 상자의 Red 콘텐츠

그림 357. HDR 상자의 Red 콘텐츠


이 피가수들은 HierarchicalBoxes Red, Green 및 Blue의 Equation 43에 따라 합산되고 나뉩니다. 예를 들어 그림 357의 Red 상자를 참조하십시오.

휘도 모듈 내에서 Luminance, 스케일링된 휘도 , LDR 휘도 그리고 LDR 컬러 컴포넌트의 최종 계산은 , 및 또는 섹션의 구현과 유사합니다. 'Camera Response Function을 이용한 High Dynamic Range 및 Low Dynamic Range 예제'. 자세한 내용은 해당 섹션의 관련 부분을 참조하십시오. 또는 VA 디자인의 코멘트 박스를 사용합니다.