더북(TheBook)

5.1.4 트랙바를 이용한 영상의 밝기 조절

OpenCV 라이브러리를 사용하면 영상의 밝기를 덧셈 혹은 뺄셈 연산자를 사용하여 쉽게 변경할 수 있었습니다. 예를 들어 레나 영상의 밝기를 50만큼 밝게 만들려면 다음과 같이 코드를 작성합니다.

Mat src = imread("lenna.bmp", IMREAD_GRAYSCALE);
Mat dst = src + 50;

그런데 만약 밝기를 50만큼 증가한 결과 영상이 마음에 들지 않으면 어떻게 할까요? 아마도 소스 코드에서 50이라는 정수 값을 변경한 후 다시 프로그램을 빌드하고 실행해서 결과를 확인해야 할 것입니다. 이러한 소스 코드 수정과 빌드 작업을 여러 번 하는 것이 불편하다면 밝기 조절 프로그램에 트랙바를 부착하고, 프로그램 동작 중 트랙바로 밝기를 조정하여 곧바로 그 결과를 확인하는 것이 좋습니다.

트랙바를 사용하는 방법은 4.3.3절에서 자세하게 설명하였으므로, 여기서는 실제로 트랙바를 이용하여 밝기를 조절하고 그 결과를 화면에 나타내는 소스 코드 위주로 설명하겠습니다. 결과 영상 출력 창에 트랙바를 부착하고, 트랙바가 움직일 때 트랙바 위치만큼의 밝기를 조절하는 소스 코드를 코드 5-4에 나타냈습니다. brightness4() 함수가 정의된 소스 파일은 내려받은 예제 파일 중 ch05/brightness 프로젝트에서 확인할 수 있습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.