图像处理
cjluozi
研究过电路,结构,光学。现在在学图像处理,点云处理,深度学习,控制算法。
展开
-
opencv canny算子中sobel算子底层
opencv底层sobel算子采用的还是sepfilter2D ,在这里用的是先列卷积再行卷积,已通过手动验证。原创 2021-01-31 12:28:31 · 135 阅读 · 0 评论 -
Opencv Gaussblur和sepfilter2D细节问题
还是复现opencv的Gaussblur写成c,首先会获取kernal核,获取kernal核比较简单和matlab一模一样。源码也不贴了。而最关键的是里的卷积问题。常规的都是2X2卷积。假设有MxN的图片,用nxn的卷积核运算,复杂度是要n^2MN次操作;但opencv采用的可分离卷积滤波器sepfilter2D也就是先行卷积,复杂度nMN;再列卷积,复杂度nMN。优化计算速度。这个问题大部分博客都有,关键就是先行卷积时的补齐问题,左边自动补齐的是以下方式。当行卷积做完后,sepfilter2D再对图片原创 2021-01-29 18:21:58 · 445 阅读 · 0 评论 -
C++: int flann::Index_<T>::radiusSearch使用时的细节
最近在做项目用到了一些先进算法。需要将opencv的某些函数转为部分c代码,其中遇到很多细节问题,尤其是matlab与opencv不同,以及和一些算法原理的少许区别。以后会后续更新。这个问题困扰1天,查了所有源码和kdtree相关资料,最后通过调试找出,radiusSearch的一些bug。首先,看下图opencv3.1.0 flann::Index_::radiusSearch 调用有个bug,网上很多人都有同类型问题,经常结果不对。像在图像这种二维度上,因为你采用vector输入的时候自动默认que原创 2021-01-29 17:44:37 · 1299 阅读 · 0 评论