이미지를 밝게, 어둡게하기



c++)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <opencv/cv.h>
#include <opencv/highgui.h>
 
 
void main() {
    IplImage *srcImage;
    IplImage *brightImage, *darkImage;
 
    srcImage = cvLoadImage("D:/study/testimage.jpg"-1);    //이미지 로드
 
 
    brightImage = cvCreateImage(cvGetSize(srcImage), IPL_DEPTH_8U, 3);    //이미지객체1
    darkImage = cvCreateImage(cvGetSize(srcImage), IPL_DEPTH_8U, 3);    //이미지객체2
 
 
    //덧셈 : 이미지를 밝게한다
    //뺄셈 : 이미지를 어둡게한다
    //cvAddS , cvSubS(원본이미지, 더하고자하는 상수값, 목적이미지, 마스크)
    cvAddS(srcImage, CV_RGB(100100100), brightImage, NULL);    //brightImage는 100만큼 밝아진 이미지가 된다
    cvSubS(srcImage, cvScalarAll(100), darkImage, NULL);    //dark는 100만큼 어두워진 이미지가 된다
    
 
 
    //create window
    cvNamedWindow("original", CV_WINDOW_AUTOSIZE);
    cvNamedWindow("bright", CV_WINDOW_AUTOSIZE);
    cvNamedWindow("dark", CV_WINDOW_AUTOSIZE);
    //show window
    cvShowImage("original", srcImage);
    cvShowImage("bright", brightImage);
    cvShowImage("dark", darkImage);
 
    cvWaitKey(0);
 
    cvReleaseImage(&srcImage);
    cvReleaseImage(&brightImage);
    cvReleaseImage(&darkImage);
}
cs



결과



+ Recent posts