社区
机器视觉
帖子详情
★★★问关于高斯模糊!★★★
thirdapple
2003-05-21 11:41:31
没办法,VB版没有图象处理版,也没什么图象处理高手(Zyl910考大学太忙了)
最近看关于高斯模糊,说什么
G(x,y)=e^(-(x^2+y^2)/2*sigma^2) / 2*pi*sigma^2
Sigma是高斯宽度,按道理来说,严格的高斯模糊应该对图象范围内的所有点进行运算,可是这样的话速度不是很慢?如果不是对所有的点进行运算,那么怎样保证图象处理的精度?
(注意是高斯模糊不是线性模糊)
...全文
60
7
打赏
收藏
★★★问关于高斯模糊!★★★
没办法,VB版没有图象处理版,也没什么图象处理高手(Zyl910考大学太忙了) 最近看关于高斯模糊,说什么 G(x,y)=e^(-(x^2+y^2)/2*sigma^2) / 2*pi*sigma^2 Sigma是高斯宽度,按道理来说,严格的高斯模糊应该对图象范围内的所有点进行运算,可是这样的话速度不是很慢?如果不是对所有的点进行运算,那么怎样保证图象处理的精度? (注意是高斯模糊不是线性模糊)
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
classfactory
2003-06-05
打赏
举报
回复
To duwenyong(啸海): 这只是取不同的alpha值而已,呵呵。另外这段code做教学还可以,实际应用性能太差了。如果用C的话,尽量注意使用32位运算而不是8位,另外乘法除法应尽量避免(可以用移位指令)。替代的办法是使用MMX指令,在Intel机器上这是最快的。
duwenyong
2003-06-04
打赏
举报
回复
void CAviFile::Smooth(PBYTE pImgData,PBYTE pImgSmoothData)
{
int TempNum;
PBYTE pPtr,pTempPtr;
unsigned int x,y;
int pos;
for(y=1;y<HEIGHT-1;y++)
{
pos=(GrayImgDataSize-WIDTH-y*WIDTH);
pPtr=(unsigned char *)pImgData+pos;
pTempPtr=(unsigned char *)pImgSmoothData+pos;
for(x=1;x<WIDTH-1;x++)
{
// pos=(GrayImgDataSize-WIDTH-y*WIDTH)+x;
// pPtr=(unsigned char *)pImgData+pos;
// pTempPtr=(unsigned char *)pImgSmoothData+pos;
pPtr++;
pTempPtr++;
TempNum=((unsigned char)*(pPtr+WIDTH-1));
TempNum+=((unsigned char)*(pPtr+WIDTH));
TempNum+=((unsigned char)*(pPtr+WIDTH+1));
TempNum+=((unsigned char)*(pPtr-1));
TempNum+=((unsigned char)*pPtr);
TempNum+=((unsigned char)*(pPtr+1));
TempNum+=((unsigned char)*(pPtr-WIDTH-1));
TempNum+=((unsigned char)*(pPtr-WIDTH));
TempNum+=((unsigned char)*(pPtr-WIDTH+1));
TempNum/=9;
//if(TempNum>255) *pTempPtr=(BYTE)255;
//else if(TempNum<0)
// *pTempPtr=(BYTE)abs(TempNum);
//else
*pTempPtr=(BYTE)TempNum;
}
}
}
duwenyong
2003-06-04
打赏
举报
回复
高斯模糊的3x3的滤波器是:
1 2 1
2 4 2
1 2 1
classfactory
2003-06-04
打赏
举报
回复
你的说法不对,高斯滤波是针对图像区域的运算,比如3x3或5x5。通常的图像软件都会给用户自定义大小的功能(比如blur, blue more等)。如果对所有点都进行运算的话,结果图像就没法看了。
当然滤波器的尺寸越大,处理时间就越长。
比如3x3的滤波器:
1 2 1
2 3 2
1 2 1
thirdapple
2003-05-22
打赏
举报
回复
关键是严格按公司计算一个点就要计算图象上所有的点,也就是说,要计算所有点的二次方那么多次,不慢吗?
现在的关键问题是根据Sigma计算模板的大小,这样提高速度,可是我不知道.....
fxniao
2003-05-22
打赏
举报
回复
先进行傅立叶变换,频域乘积,然后反变换回去即可。
ljranby
2003-05-22
打赏
举报
回复
我不懂高斯模糊,不过根据你的公式来看,这样的速度不是很慢呀!就算对所有点处理一次也用不了多少时间的呀!那些边缘检测的算子哪个不是要对所以点进行卷积运算啊。
OpenCV边缘检测与
高斯模糊
实战指南
本文系统讲解OpenCV中
高斯模糊
与边缘检测的协同应用:涵盖高斯核函数原理、cv2.GaussianBlur参数调优(核大小、σ选择)、Canny算法四步流程(降噪、梯度计算、非极大值抑制、双阈值),以及工业场景下的流水线设计(如零件测量)、动态图像优化、嵌入式部署和内存优化策略。强调预处理阶段(模糊)对最终边缘质量的决定性影响。
别再只会用
高斯模糊
了!用MATLAB的邻域平均法处理椒盐噪声,保姆级代码解析
本文详解如何使用MATLAB实现邻域平均法处理椒盐噪声,涵盖噪声图像生成(imnoise)、均值滤波器设计(fspecial)、卷积滤波(filter2)、边界处理策略、灰度预处理及性能优化。重点对比不同模板尺寸对去噪效果与细节保留的影响,并指出其相较于中值滤波和高斯滤波的适用边界,强调在图像处理工具箱支持下的工程实践要点。
别再只会用均值滤波了!Halcon图像去噪实战:中值、高斯、光照校正保姆级教程
本文聚焦工业视觉中Halcon图像去噪核心技术,系统解析椒盐噪声(适配中值滤波)、高斯噪声(适配高斯滤波)及光照不均(需同态滤波/局部自适应校正)三大
问
题;强调噪声诊断先行、光照校正前置、算子组合调优等工程实践原则,并给出参数设置经验与典型场景方案。
从‘滋滋’声到清晰画面:手把手教你用Python+OpenCV给老照片去除高斯噪声
本文详解使用Python与OpenCV去除老照片中高斯噪声的技术路径,涵盖高斯噪声特性分析、环境配置、基础方法(高斯滤波、中值滤波)、高级技术(非局部均值去噪NLM、深度学习DnCNN)及多阶段优化工作流。重点突出算法原理、参数调优策略与实际修复效果平衡,适用于扫描胶片老化产生的随机颗粒噪声处理。
从模糊老照片到清晰影像:实战对比逆滤波、维纳滤波与约束最小二乘在MATLAB中的复原效果
本文基于MATLAB实战对比逆滤波、维纳滤波和约束最小二乘法在老照片复原中的效果。通过构建运动模糊与高斯噪声退化模型,分析各算法在频域建模、噪声鲁棒性、细节保留及计算效率上的差异。重点阐述其数学原理、关键参数(如K、γ)调优策略及适用场景,为图像复原任务提供可落地的选型依据。
机器视觉
4,511
社区成员
15,352
社区内容
发帖
与我相关
我的任务
机器视觉
图形图像/机器视觉
复制链接
扫一扫
分享
社区描述
图形图像/机器视觉
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章