【问题标题】:matrix type conversion in opencvopencv中的矩阵类型转换
【发布时间】:2011-06-27 06:51:56
【问题描述】:

我正在尝试使用过滤器对图像进行卷积,并借助 opencv 中的 filter2D 函数将其存储到 CV_64F 类型的矩阵中。但是目标矩阵的类型发生了变化,我尝试在 assignTo 0r ConvertTo 函数的帮助下将其改回 CV_64F,但我无法这样做。有人可以帮忙吗?这是我的代码行

                     cv::Mat op = cv::Mat(25,25,a.type(),Arr1); // a is the image matrix and op is the filter.
         cv::Point anchor = Point(-1,-1);
         cv::Mat b = cv::Mat(a.size(),CV_64F);
         cv::Mat l = cv::Mat(a.size(),CV_64F);
         cv::Mat m = cv::Mat(a.size(),CV_64F);

        //prnmt(a);

         filter2D(a,b,-1,op,anchor,0,BORDER_DEFAULT);
         b.assignTo(l,CV_64F);

【问题讨论】:

    标签: opencv


    【解决方案1】:

    我尝试使用 OpenCV 2.3 运行以下类似的代码,并且在调用 filter2D 后,b 的类型是 CV_64F

    cv::Mat a(100, 100, CV_64F); 
    cv::Mat op(25, 25, CV_64F);
    cv::Mat b(a.size(), CV_64F);
    cv::Mat l(a.size(), CV_64F);
    cv::Mat m(a.size(), CV_64F);
    cv::Point anchor(-1, -1);
    
    filter2D(a, b, -1, op, anchor, 0, cv::BORDER_DEFAULT);
    

    您确定a 在您的代码中是CV_64F 吗?

    bfilter2D 转换成什么类型​​?

    您使用的是哪个版本的 OpenCV?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-09-18
      • 1970-01-01
      • 1970-01-01
      • 2012-09-23
      • 2015-03-24
      • 1970-01-01
      • 2019-02-06
      • 1970-01-01
      相关资源
      最近更新 更多