如何解决平滑框过滤器的内核大小
对于OpenCV中的框过滤器,平滑内核大小可以通过cv2.boxFilter()中的ksize参数定义。我想知道ksize实际上是X和Y方向正方向上的尺寸还是原点周围的尺寸?
在上图中-ksize应该为(1,1),对吗?还是(0.5,1)?如果在两个方向上的宽度均为5,则ksize应该是(5,5)还是(10,5)?对于上述情况,我希望宽度在正和负X方向上均为5,高度在y方向上为5。我认为y应该仍然为5,因为对于框式过滤器来说,负y并没有多大意义。
解决方法
通过测试boxFilter的脉冲响应很容易发现。假设x
为9x9图片
>>> x
array([[0.,0.,0.],[0.,1.,0.]])
然后运行cv2.boxFilter(x,6,(5,5))
且ksize =(5,5)的boxFilter产生
array([[0.,0. ],0.04,0. ]])
就像克里斯说的那样,ksize是盒子的整个宽度和高度,过滤器居中。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。