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

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

js 复制代码
program cv_Smooth;

{$APPTYPE CONSOLE}
{$R *.res}

uses
  System.SysUtils,
  ocv.highgui_c,
  ocv.core_c,
  ocv.core.types_c,
  ocv.imgproc_c,
  ocv.imgproc.types_c,
  uResourcePaths;

const
  // 桁 赅痱桧觇
  filename = cResourceMedia + 'cat2.jpg';

var
  image: PIplImage = nil;
  dst: PIplImage = nil;

begin
  try
    // 从文件加载图像并将其分配给变量 `image`
    image := cvLoadImage(filename, 1);

    // 克隆图像,将其分配给变量 `dst`
    dst := cvCloneImage(image);

    // 打印图像文件名
    Writeln('[i] image: ', filename);

    // 如果图像未被成功加载,终止程序
    if not Assigned(image) then
      Halt;

    // 创建并显示名为 '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');
  except
    on E: Exception do
      Writeln(E.ClassName, ': ', E.Message);
  end;

end.
相关推荐
weixin_468466852 小时前
从“看懂”到“做到”:视觉-语言-动作模型如何让机器人真正执行指令
人工智能·ai·机器人·大语言模型·前沿科技
朋友圈自动点赞工具2 小时前
科学AI插件化:从蛋白质结构到古籍修复
人工智能
龙粤GEO3 小时前
实体Entity在GEO中代表什么含义
人工智能
拜小白4 小时前
【论文解读】《DeepPanoContext:用全局场景关系图 + 可微关系优做全景 3D 场景理解
深度学习·计算机视觉·全景图
剑雨巍巍4 小时前
AI Agent面试之基础概念
人工智能
微帧Visionular4 小时前
AI视频单帧清晰,播放时却闪烁,原因是什么?
人工智能·深度学习·音视频
武子康4 小时前
MultiNet6 空闲崩溃:`EXCVADDR=0x8` 后又出现 `CORRUPT HEAP`
人工智能·后端·agent
云智慧AIOps社区4 小时前
智能巡检机器人应用场景解析:机房巡检、园区安防、管廊巡视与展厅导览
人工智能·机器人·具身智能·智能巡检机器人·企业级智能巡检机器人·机房巡检机器人·导览机器人
EnCi Zheng4 小时前
Agent 如何进行工具调用:从一次 Function Calling 到生产级工具编排的完整链路
大数据·人工智能·agent·ai编程·工具调用
赛博守夜人4 小时前
AI安全攻防与治理之十四:AI 安全测试不能脱离传统安全,Web、API、移动端与模型攻击面的组合拳
前端·人工智能·安全