【问题标题】:OpenCV 3 bilateral filter function errorOpenCV 3双边过滤功能错误
【发布时间】:2016-07-28 19:12:58
【问题描述】:

当我尝试使用 OpenCV 3 双边过滤功能时

bilateralFilter ( src, dst, 3, 3, 3 );

我收到此错误:

OpenCV 错误:断言失败 ((src.type() == CV_8UC1 || src.type() == CV_8UC3) && src.data != dst.data) 在bilateralFilter_8u,文件/home/jean/opencv-3.0.0/modules/imgproc/src/smooth.cpp,第3066行 在抛出 'cv::Exception' 的实例后调用终止

我已经尝试使用cvtColor(src, src, CV_8UC3);cvtColor(src, src, CV_8UC1); 修复错误,但错误仍然存​​在。

有解决这个问题的技巧吗?

【问题讨论】:

  • 查看这一行:src.data != dst.data。试着让你的目的地垫成为一个新的。
  • 看起来问题确实出在 dst 上。我已经改了,现在问题解决了,谢谢。

标签: c++ opencv image-processing


【解决方案1】:

正如 Derman 所说,您的源和目标 mat 可能指向相同的数据。您可以在以下链接中找到示例:

http://opencvexamples.blogspot.com/2013/10/applying-bilateral-filter.html

OpenCV 提供的另一个例子可以在这里找到:

http://docs.opencv.org/3.0-beta/doc/tutorials/imgproc/gausian_median_blur_bilateral_filter/gausian_median_blur_bilateral_filter.html

【讨论】:

    猜你喜欢
    • 2017-05-15
    • 1970-01-01
    • 2021-10-22
    • 1970-01-01
    • 2020-08-27
    • 1970-01-01
    • 2011-08-07
    • 2020-03-12
    相关资源
    最近更新 更多