OpenCV入门:平滑处理 — 中值滤波

本文介绍使用OpenCV库中的中值滤波函数进行图像平滑处理的方法,包括函数参数解析及具体实现代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

平滑处理 — 中值滤波

相关函数:


C++: void GaussianBlur(InputArray src, OutputArray dst, Size ksize, double sigmaX, double sigmaY=0, int borderType=BORDER_DEFAULT)

参数解析:

  • src – 支持1、3、4通道图片输入,当ksize为3或者5时,图片的深度只能是CV_8U,,CV_16U,或者 CV_32F,对于其他大孔径尺寸只支持深度为CV_8U。
  • dst – 输出图片,和输入图片相同大小和深度。
  • ksize – 线性直径大小,只能是一个大于1的奇数,例如:3, 5, 7 ...


相关实例:
#include<opencv2/core/core.hpp>  
#include<opencv2/highgui/highgui.hpp>  
#include"opencv2/imgproc/imgproc.hpp"  
#include <stdio.h>  

using namespace cv;

/*
中值滤波: void GaussianBlur(InputArray src, OutputArray dst, Size ksize, double sigmaX, double sigmaY=0, int borderType=BORDER_DEFAULT)
参数解析:
src – 支持1、3、4通道图片输入,当ksize为3或者5时,图片的深度只能是CV_8U,,CV_16U,或者 CV_32F,对于其他大孔径尺寸只支持深度为CV_8U。
dst – 输出图片,和输入图片相同大小和深度。
ksize – 线性直径大小,只能是一个大于1的奇数,例如:3, 5, 7 ...
**/

int main() {
	cvNamedWindow("中值滤波原图", 0);
	cvNamedWindow("中值滤波效果图",0);

	Mat imageSrc = imread("寒冰射手.jpg");
	imshow("中值滤波原图", imageSrc);
	Mat imageChange;

	//中值滤波处理
	medianBlur(imageSrc, imageChange, 7);
	//显示效果图  
	imshow("中值滤波效果图", imageChange);

	waitKey(6000 * 100);
}

效果图:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值