이미지를 선명하게 하기(cvMul 함수)
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 39 40 41 42 43 44 45 46 | #include <opencv/cv.h> #include <opencv/highgui.h> void main() { IplImage *srcImage, *tempImage=0, *multiImage=0, *divImage=0; srcImage = cvLoadImage("D:/study/testimage.jpg", -1); //이미지 로드 //이미지객체 생성 //cvCreateImage(이미지크기, Depth, 채널수) tempImage = cvCreateImage(cvGetSize(srcImage), IPL_DEPTH_8U, 3); multiImage = cvCreateImage(cvGetSize(srcImage), IPL_DEPTH_8U, 3); divImage = cvCreateImage(cvGetSize(srcImage), IPL_DEPTH_8U, 3); //cvSet(결과이미지, 픽셀값, 마스크) : 행렬이나 이미지를 주어진 픽셀값으로 채움 cvSet(tempImage, cvScalarAll(1), NULL); //곱셈 : 명암대비 증가 -> 선명한 영상 //나눗셈 : 명암대비 감소 //cvMul(첫번째이미지, 두번째이미지, 결과이미지, 곱하는 상수) cvMul(srcImage, tempImage, multiImage,1.5); cvMul(srcImage, tempImage, divImage, 1/2.0); //create window cvNamedWindow("original", CV_WINDOW_AUTOSIZE); cvNamedWindow("multiply", CV_WINDOW_AUTOSIZE); cvNamedWindow("divide", CV_WINDOW_AUTOSIZE); //show window cvShowImage("original", srcImage); cvShowImage("multiply", multiImage); cvShowImage("divide", divImage); cvWaitKey(0); //release image cvReleaseImage(&srcImage); cvReleaseImage(&multiImage); cvReleaseImage(&divImage); } | cs |
결과
'IT > - 프로그래밍' 카테고리의 다른 글
OpenCV 두 이미지 합성하기(뺄셈 cvSub 함수) (0) | 2017.04.11 |
---|---|
OpenCV 두 이미지 합성하기(덧셈 cvAdd 함수) (1) | 2017.04.10 |
OpenCV 이미지를 밝게, 어둡게하기 (0) | 2017.04.06 |
OpenCV 컬러 이미지를 흑백 이미지로 변환하기 (0) | 2017.04.05 |
OpenCV 이미지 가운데에 흰색 선긋기 예제 (0) | 2017.04.04 |