23 #include <fvfilters/sharpen.h>
25 #include <core/exception.h>
29 #elif defined(HAVE_OPENCV)
32 # error "Neither IPP nor OpenCV available"
35 namespace firevision {
46 FilterSharpen::FilterSharpen()
67 if ( status != ippStsNoErr ) {
70 #elif defined(HAVE_OPENCV)
75 cv::Mat srcm(src_roi[0]->height, src_roi[0]->width, CV_8UC1,
77 (src_roi[0]->start.y * src_roi[0]->line_step) +
78 (src_roi[0]->start.x * src_roi[0]->pixel_step),
79 src_roi[0]->line_step);
87 cv::Mat kernel(3, 3, CV_32F);
88 float *kernel_f = (
float *)kernel.ptr();
89 kernel_f[0] = -0.125; kernel_f[1] = -0.125; kernel_f[2] = -0.125;
90 kernel_f[3] = -0.125; kernel_f[4] = 2.0; kernel_f[5] = -0.125;
91 kernel_f[6] = -0.125; kernel_f[7] = -0.125; kernel_f[8] = -0.125;
93 cv::Point kanchor(1, 1);
95 cv::filter2D(srcm, dstm, -1, kernel, kanchor);