小白学视觉,笔记,扩展
分离为X、Y方向的滤波器,无论是先X方向,还是先Y方向,叠加结果和没有分离的滤波结果一样;
节省时间,为处理加速提供可能;
行滤波器3个数据,列滤波3个数据;
如果直接滤波,9个数据,增加了时间。
#include <opencv2\opencv.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main()
{
float points[25] = { 1,2,3,4,5,
6,7,8,9,10,
11,12,13,14,15,
16,17,18,19,20,
21,22,23,24,25 };
Mat data(5, 5, CV_32FC1, points);
//X方向、Y方向和联合滤波器的构建
Mat a = (Mat_<float>(3, 1) << -1, 3, -1);
cout<<a.channels()<<endl;
Mat b = a.reshape(1, 1);//Mat reshape(int cn, i