Brightness and Contrast (dart E)#
Brightness와 Contrast는 공통적인 수학적 Brightness/Contrast 함수의 일부로서 항상 함께 처리됩니다.
기능 사용#
Contrast 조절하기#
Contrast를 조절하려면 다음 항목에 값을 입력하세요. BslContrast 파라미터입니다. 파라미터 값 범위는 -1에서 1까지입니다. 기본적으로 파라미터는 0으로 설정되어 있으며, 이는 Contrast가 변경되지 않음을 의미합니다.
Brightness 조절하기#
Brightness를 조절하려면 다음 항목에 값을 입력하세요. BslBrightness 파라미터입니다. 파라미터 값 범위는 -1에서 1까지입니다. 기본적으로 파라미터는 0으로 설정되어 있으며, 이는 Brightness가 변경되지 않음을 의미합니다.
작동 방식#
Contrast#
Contrast를 조절하면 이미지의 밝고 어두운 영역 간의 차이 정도가 변경됩니다. Contrast를 높일수록 그 차이가 더 두드러집니다.
카메라는 Contrast를 조절하기 위해 S-curve 함수를 사용합니다.
이를 통해 이미지의 다이나믹 렌지를 유지하면서 체감 Contrast를 향상시킬 수 있습니다.
Contrast를 높일수록 함수의 그래프는 더 뚜렷한 S자 형태를 띱니다.
위 그림은 S-Curve 모드에서 Contrast를 높일 때 다음과 같은 효과가 나타남을 보여줍니다.
- S-curve는 시작점과 끝점 부근에서는 더 완만해지고 중앙 부근에서는 더 가파라집니다. 결과적으로 이미지의 밝고 어두운 영역의 Contrast는 감소하고, 중간 톤의 Contrast는 증가합니다.
- 낮은 입력 픽셀 값은 더 낮아지고 높은 입력 픽셀 값은 더 높아집니다. 그 결과 이미지의 극단적인 어둡고 밝은 영역이 압축되어 체감 Contrast가 더욱 향상됩니다.
- 곡선이 항상 (0,0)에서 시작하여 (Xmax,Ymax)에서 끝나므로 이미지의 다이나믹 렌지가 유지됩니다.
S-Curve 모드에서 Contrast 설정을 0 미만으로 지정하면 반대 효과를 내는 반전된 S-curve가 생성됩니다.
Brightness#
Brightness를 조절하면 톤 값을 높이거나 낮추어 이미지의 밝기를 밝게 또는 어둡게 만들 수 있습니다.
Brightness를 조절하면 Brightness/Contrast 함수의 피벗 포인트가 이동합니다.
- Brightness를 증가시키면 피벗 포인트가 왼쪽 위로 이동합니다. 즉, 이미지가 더 밝게 표시됩니다.
- Brightness를 감소시키면 피벗 포인트가 오른쪽 아래로 이동합니다. 즉, 이미지가 더 어둡게 표시됩니다.
샘플 코드#
/* Macro to check for errors */
#define CHECK(errc) if (GENAPI_E_OK != errc) printErrorAndExit(errc)
GENAPIC_RESULT errRes = GENAPI_E_OK; /* Return value of pylon methods */
/* Set the Brightness parameter to 0.5 */
errRes = PylonDeviceSetFloatFeature(hdev, "BslBrightness", 0.5);
CHECK(errRes);
/* Set the Contrast parameter to 1.2 */
errRes = PylonDeviceSetFloatFeature(hdev, "BslContrast", 1.2);
CHECK(errRes);
/* Macro to check for errors */
#define CHECK(errc) if (GENAPI_E_OK != errc) printErrorAndExit(errc)
GENAPIC_RESULT errRes = GENAPI_E_OK; /* Return value of pylon methods */
/* Set the Brightness parameter to 0.5 */
errRes = PylonDeviceSetFloatFeature(hdev, "BslBrightness", 0.5);
CHECK(errRes);
/* Set the Contrast parameter to 1.2 */
errRes = PylonDeviceSetFloatFeature(hdev, "BslContrast", 1.2);
CHECK(errRes);
pylon Viewer를 사용하여 매개변수를 간편하게 설정할 수도 있습니다.