sobel算子的计算过程 sobel函数
例程
#include效果#include #include #include #include #include using namespace cv; using namespace std; int main(int argc, char** argv) { //0.创建 grad_x 和 grad_y矩阵 Mat grad_x, grad_y; Mat abs_grad_x, abs_grad_y, dst; //1.载入原始图 Mat src = imread("700levi.jpg"); //2.显示原始图 imshow("原始图", src); //3.求x方向梯度 Sobel(src, grad_x, CV_16S, 1, 0, 3, 1, 1, BORDER_DEFAULT); convertScaleAbs(grad_x, abs_grad_x); imshow("效果图X方向Sobel", abs_grad_x); //4.求y方向梯度 Sobel(src, grad_y, CV_16S, 0, 1, 3, 1, 1, BORDER_DEFAULT); convertScaleAbs(grad_y, abs_grad_y); imshow("效果图Y方向Sobel", abs_grad_y); //5.合并梯度(近似) addWeighted(abs_grad_x, 0.5, abs_grad_y, 0.5, 0, dst); imshow("效果图整体方向Sobel", dst); waitKey(0); return 0; }



