| 3333 | |
| 3334 | |
| 3335 | void cv::sepFilter2D( InputArray _src, OutputArray _dst, int ddepth, |
| 3336 | InputArray _kernelX, InputArray _kernelY, Point anchor, |
| 3337 | double delta, int borderType ) |
| 3338 | { |
| 3339 | Mat src = _src.getMat(), kernelX = _kernelX.getMat(), kernelY = _kernelY.getMat(); |
| 3340 | |
| 3341 | if( ddepth < 0 ) |
| 3342 | ddepth = src.depth(); |
| 3343 | |
| 3344 | _dst.create( src.size(), CV_MAKETYPE(ddepth, src.channels()) ); |
| 3345 | Mat dst = _dst.getMat(); |
| 3346 | |
| 3347 | Ptr<FilterEngine> f = createSeparableLinearFilter(src.type(), |
| 3348 | dst.type(), kernelX, kernelY, anchor, delta, borderType & ~BORDER_ISOLATED ); |
| 3349 | f->apply(src, dst, Rect(0,0,-1,-1), Point(), (borderType & BORDER_ISOLATED) != 0 ); |
| 3350 | } |
| 3351 | |
| 3352 | |
| 3353 | CV_IMPL void |