当前位置:首页 > 智能硬件 > 人工智能AI
[导读]   均值滤波   均值滤波是典型的线性滤波算法,它是指在图像上对目标像素给一个模板,该模板包括了其周围的临近像素(以目标像素为中心的周围个像素,构成一个滤波模板,即去掉目标像素本身),再

  均值滤波

  均值滤波是典型的线性滤波算法,它是指在图像上对目标像素给一个模板,该模板包括了其周围的临近像素(以目标像素为中心的周围个像素,构成一个滤波模板,即去掉目标像素本身),再用模板中的全体像素的平均值来代替原来像素值。

  均值滤波也称为线性滤波,其采用的主要方法为邻域平均法。线性滤波的基本原理是用均值代替原图像中的各个像素值,即对待处理的当前像素点(x,y),选择一个模板,该模板由其近邻的若干像素组成,求模板中所有像素的均值,再把该均值赋予当前像素点(x,y),作为处理后图像在该点上的灰度g(x,y),即g(x,y)=/m ∑f(x,y) m为该模板中包含当前像素在内的像素总个数。

  均值滤波介绍

  滤波是滤波是将信号中特定波段频率滤除的操作,是从含有干扰的接收信号中提取有用信号的一种技术。

  均值滤波是典型的线性滤波算法,它是指在图像上对目标像素给一个模板,该模板包括了其周围的临近像素(如&TImes;模板:以目标象素为中心的周围个象素,构成一个滤波模板,即去掉目标象素本身),再用模板中的全体像素的平均值来代替原来像素值。

  均值滤波效果:平滑线性滤波处理降低了图像的“尖锐”变化。由于典型的随机噪声由灰度级的急剧变化组成,因此常见的平滑处理的应用就是降低噪声。均值滤波器的主要应用是去除图像中的不相关细节,其中“不相关”是指与滤波器模板尺寸相比较小的像素区域。然而,由于图像的边缘也是由图像灰度的尖锐变化带来的特性,所以均值滤波处理还是存在着边缘模糊的负面效应。

  均值滤波算法实现(C语言)

  // junzhilvbo.cpp : 定义控制台应用程序的入口点。

  //

  #include “stdafx.h”

  #include “stdlib.h”

  #include “string.h”

  #define DATA_X //数字图像水平像素个数

  #define DATA_Y //数字图像竖直像素个数

  void OpenFile(const char *cFilePath , int nOriginalData[DATA_Y][DATA_X])

  {

  printf(“正在获取数据。。。。。。 ”);

  FILE *fp ;

  fp = fopen(cFilePath , “r”);

  if(NULL == fp)

  {

  printf(“open file failed! ”);

  return ;

  }

  unsigned char *pData = (unsigned char *)malloc(sizeof(unsigned char)*DATA_X*DATA_Y);

  if(NULL == pData)

  {

  printf(“memory malloc failed! ”);

  return ;

  }

  fread(pData , sizeof(unsigned char)*DATA_X*DATA_Y , , fp);

  int count_x = ;

  int count_y = ;

  for(;count_y 《 DATA_Y ; count_y++)

  {

  for(; count_x 《 DATA_X ;count_x++)

  {

  nOriginalData[count_y][count_x] = pData[count_y*DATA_Y+count_x];

  }

  }

  free(pData);

  fclose(fp);

  return ;

  }

  void SaveFile(const char *cFilePath , int nResultData[DATA_Y][DATA_X])

  {

  printf(“正在保存数据。。。。。。 ”);

  int count_x,count_y;

  FILE *fp ;

  fp = fopen(cFilePath , “w”);

  if(NULL == fp)

  {

  printf(“open file failed! ”);

  return ;

  }

  for(count_y=;count_y《DATA_Y;count_y++)

  {

  for(count_x=;count_x《DATA_X;count_x++)

  {

  fwrite(&nResultData[count_y][count_x],,,fp);

  }

  }

  fclose(fp);

  printf(“文件保存成功! ”);

  return ;

  }

  bool JunZhiLvBo(const int nOriginalData[DATA_Y][DATA_X], int nResultData[DATA_Y][DATA_X])

  {

  printf(“正在进行均值滤波。。。。。。 ”);

  int count_x ,count_y ;

  /**模版滤波计算,不计算边缘像素*/

  for(count_y = ; count_y 《 DATA_Y ; count_y++)

  {

  for(count_x = ; count_x 《 DATA_X ;count_x++)

  {

  nResultData[count_y][count_x] = (int)((nOriginalData[count_y-][count_x-]+

  nOriginalData[count_y-][count_x] +

  nOriginalData[count_y-][count_x+]+

  nOriginalData[count_y][count_x-] +

  nOriginalData[count_y][count_x] +

  nOriginalData[count_y][count_x+] +

  nOriginalData[count_y+][count_x-]+

  nOriginalData[count_y+][count_x] +

  nOriginalData[count_y+][count_x+])/);

  }

  }

  /*对四个边缘直接进行赋值处理*/

  for(count_x=;count_x《DATA_X;count_x++) //水平边缘像素等于原来像素灰度值

  {

  nResultData[][count_x]=nOriginalData[][count_x];

  nResultData[DATA_Y-][count_x]=nOriginalData[DATA_Y-][count_x];

  }

  for(count_y=;count_y《DATA_Y-;count_y++) //竖直边缘像素等于原来像素灰度值

  {

  nResultData[count_y][]=nOriginalData[count_y][];

  nResultData[count_y][DATA_X-]=nOriginalData[count_y][DATA_X-];

  }

  return true ;

  }

  int _tmain(int argc, _TCHAR* argv[])

  {

  int nOriginalData[DATA_Y][DATA_X]; //保存原始图像灰度值

  int nResultData[DATA_Y][DATA_X]; //保存滤波后的灰度值

  memset(nOriginalData,,sizeof(nOriginalData)); //初始化数组

  memset(nResultData,,sizeof(nResultData));

  char cOpenFilePath[] = “Lena.raw”; //图像文件路径

  OpenFile(cOpenFilePath,nOriginalData);

  if(!JunZhiLvBo(nOriginalData,nResultData)) //滤波计算

  {

  printf(“操作失败! ”);

  return ;

  }

  char cSaveFilePath[] = “Result.raw”; //文件保存路径

  SaveFile(cSaveFilePath,nResultData);

  return ;

  }

  均值滤波算法效果对比

  均值滤波之前: 均值滤波之后:

  

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭