★★★问关于高斯模糊!★★★

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是高斯宽度,按道理来说,严格的高斯模糊应该对图象范围内的所有点进行运算,可是这样的话速度不是很慢?如果不是对所有的点进行运算,那么怎样保证图象处理的精度?
(注意是高斯模糊不是线性模糊)
...全文
30 7 打赏 收藏 转发到动态 举报
写回复
用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
  • 打赏
  • 举报
回复
我不懂高斯模糊,不过根据你的公式来看,这样的速度不是很慢呀!就算对所有点处理一次也用不了多少时间的呀!那些边缘检测的算子哪个不是要对所以点进行卷积运算啊。

4,446

社区成员

发帖
与我相关
我的任务
社区描述
图形图像/机器视觉
社区管理员
  • 机器视觉
  • 迪菲赫尔曼
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧