OpenCV之快速的图像边缘滤波算法

Posted MachineLP

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OpenCV之快速的图像边缘滤波算法相关的知识,希望对你有一定的参考价值。

python代码:

import cv2 as cv
import numpy as np

src = cv.imread("./test.png")
cv.namedWindow("input", cv.WINDOW_AUTOSIZE)
cv.imshow("input", src)

h, w = src.shape[:2]
dst = cv.edgePreservingFilter(src, sigma_s=100, sigma_r=0.4, flags=cv.RECURS_FILTER)
result = np.zeros([h, w*2, 3], dtype=src.dtype)
result[0:h,0:w,:] = src
result[0:h,w:2*w,:] = dst
result = cv.resize(result, (w, h//2) )
cv.imshow("result", result)
# cv.imwrite("result.png", result)


cv.waitKey(0)
cv.destroyAllWindows()

C++代码:

#include <opencv2/opencv.hpp>
#include <iostream>

using namespace cv;
using namespace std;

int main(int artc, char** argv) 
	Mat src = imread("./test.png");
	if (src.empty()) 
		printf("could 

以上是关于OpenCV之快速的图像边缘滤波算法的主要内容,如果未能解决你的问题,请参考以下文章

opencv入门之九Opencv边缘检测:Canny算子,Sobel算子,Laplace算子,Scharr滤波器

OpenCv 026---高斯双边滤波

图像处理之Canny边缘检测

数字图像处理之快速中值滤波算法

图片处理-opencv-2.图像平滑

OpenCV之边缘保留滤波算法 – 高斯双边模糊