您的位置:首页 > 新闻 > 热点要闻 > 【OpenCV 基础知识 13】高斯平滑处理图像

【OpenCV 基础知识 13】高斯平滑处理图像

2024/12/24 2:16:03 来源:https://blog.csdn.net/gust2013/article/details/139124015  浏览:    关键词:【OpenCV 基础知识 13】高斯平滑处理图像

函数 cvSmooth 可使用简单模糊、简单无缩放变换的模糊、中值模糊、高斯模糊、双边滤波的任何一种方法平滑图像。每一种方法都有自己的特点以及局限。 没有缩放的图像平滑仅支持单通道图像,并且支持8位到16位的转换(与cvSobel和cvLaplace相似)和32位浮点数到32位浮点数的变换格式。 简单模糊和高斯模糊支持 1- 或 3-通道, 8-比特 和 32-比特 浮点图像。这两种方法可以(in-place)方式处理图像。 中值和双向滤波工作于 1- 或 3-通道, 8-位图像,但是不能以 in-place 方式处理图像。

program cv_Smooth;{$APPTYPE CONSOLE}
{$R *.res}usesSystem.SysUtils,ocv.highgui_c,ocv.core_c,ocv.core.types_c,ocv.imgproc_c,ocv.imgproc.types_c,uResourcePaths;const// 桁 赅痱桧觇filename = cResourceMedia + 'cat2.jpg';varimage: PIplImage = nil;dst: PIplImage = nil;begintry// 从文件加载图像并将其分配给变量 `image`image := cvLoadImage(filename, 1);// 克隆图像,将其分配给变量 `dst`dst := cvCloneImage(image);// 打印图像文件名Writeln('[i] image: ', filename);// 如果图像未被成功加载,终止程序if not Assigned(image) thenHalt;// 创建并显示名为 'original' 的窗口,用于显示原始图像cvNamedWindow('original', CV_WINDOW_AUTOSIZE);// 创建并显示名为 'Smooth' 的窗口,用于显示经过平滑处理后的图像cvNamedWindow('Smooth', CV_WINDOW_AUTOSIZE);// 对原始图像进行高斯平滑处理,结果存储在 `dst` 中cvSmooth(image, dst, CV_GAUSSIAN, 3, 3);// cvSmooth(image, dst, CV_BLUR_NO_SCALE, 3, 3);cvShowImage('original', image);cvShowImage('Smooth', dst);cvWaitKey(0);cvReleaseImage(image);cvReleaseImage(dst);cvDestroyWindow('original');cvDestroyWindow('Smooth');excepton E: Exception doWriteln(E.ClassName, ': ', E.Message);end;end.

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com