더북(TheBook)

그렇다면 OpenCV에서 영상의 밝기를 조절하려면 소스 코드를 어떻게 작성해야 할까요? OpenCV 라이브러리는 매우 잘 설계되어 만들어졌기 때문에 훨씬 직관적으로 밝기를 조절할 수 있습니다. 코드 5-1의 brightness1() 함수는 lenna.bmp 영상의 밝기를 100만큼 증가시켜 화면에 출력합니다. brightness1() 함수가 정의된 소스 파일은 내려받은 예제 파일 중 ch05/brightness 프로젝트에서 확인할 수 있습니다.

코드 5-1 영상의 밝기를 100만큼 증가하기 [ch05/brightness]

01    void brightness1()
02    {
03        Mat src = imread("lenna.bmp", IMREAD_GRAYSCALE);
04     
05        if (src.empty()) {
06            cerr << "Image load failed!" << endl;
07            return;
08        }
09     
10        Mat dst = src + 100;
11     
12        imshow("src", src);
13        imshow("dst", dst);
14        waitKey();
15     
16        destroyAllWindows();
17    }

 

3행 lenna.bmp 레나 영상을 그레이스케일 형식으로 불러와 src에 저장합니다.

5~8행 lenna.bmp 파일 불러오기가 실패하면 에러 메시지를 출력하고 종료합니다.

10행 src 영상의 모든 픽셀 값을 100만큼 증가시킨 결과 영상을 dst에 저장합니다.

12~14행 src와 dst 영상을 각각 새 창에 출력하고 키 입력이 있을 때까지 기다립니다.

16행 영상 출력 창을 모두 닫습니다.

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