乘以CvMat *和数字

时间:2011-06-29 16:56:56

标签: opencv matrix computer-vision

我正在使用OpenCV中的一些过滤器,并且不知道如何在这个例子中乘以一个数字(1/5)

CvMat* kernel=0; 

    IplImage* dst = cvCreateImage(cvGetSize( entrada ), IPL_DEPTH_8U, 3);

    kernel = cvCreateMat(3, 3,CV_32FC1);
    cvSet2D( kernel, 0, 0, cvRealScalar(1));
    cvSet2D( kernel, 0, 1, cvRealScalar(1));
    cvSet2D( kernel, 0, 2, cvRealScalar(1));
    cvSet2D( kernel, 1, 0, cvRealScalar(1));
    cvSet2D( kernel, 1, 1, cvRealScalar(2));
    cvSet2D( kernel, 1, 2, cvRealScalar(1));
    cvSet2D( kernel, 2, 0, cvRealScalar(1));
    cvSet2D( kernel, 2, 1, cvRealScalar(1));
    cvSet2D( kernel, 2, 2, cvRealScalar(1));

    // Matriz utilizada para el filtrado paso alto
    // 1 1 1
    // 1 2 1
    // 1 1 1

    cvFilter2D(entrada, dst, kernel, cvPoint(-1,-1));

1 个答案:

答案 0 :(得分:1)

cvScale(src, dst, scale)如果scale是数字,那么您想要将其乘以的矩阵怎么样呢?如果你想将它与内核相乘,那么用乘法值初始化内核呢?