![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbDa72w%2FbtrTtAtYIv8%2FrOlPAK2E0pbKuVF4xnqKx1%2Fimg.png)
1차 미분 값의 크기 : 영상에서 윤곽선의 존재여부 2차 미분 값의 부호 : 윤곽선 픽셀의 밝고 어두운 부분의 위치 Mask void cvFilter2D(const CvArr* src, CvArr* dst, const CvMat* kernel, CvPoint anchor = cvPoint(-1,-1)); # src: 입력 영상 # dst: 출력 영상 # kernel: 커널(마스크) # anchor: 마스크 시작 위치 # Ex) cvFilter2D(srcImage, img2, &mask); CvMat cvMat(int rows, int cols, int type, void* data = NULL); # rows: 가로 픽셀 수 # cols: 세로 픽셀 수 # type: CV8UC1, CV_32FC2 등의 ..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fpm12b%2FbtrTuAfSauP%2FiajAGSktSSaIu28xbzgKb0%2Fimg.png)
덧셈 Void cvAdd(const CvArr* src1, const CvArr* src2, CvArr* dst, const CvArr* mask=NULL); #dst = src1 + src2 void cvAddWeighted(const CvArr* src1, double alpha, const CvArr* src2, double beta, double gamma, CvArr* dst); #dst = src1 x alpha + src2 x beta + gamma 뺄셈 Void cvSub(const CvArr* src1, const CvArr* src2, CvArr* dst, const CvArr* mask=NULL); #dst = src1 - src2 void cvSubRS(const CvArr* src..