图像处理特征不变算子系列之DoG算子(五)

图像处理特征不变算子系列之DoG算子(五)
图像处理特征不变算子系列之DoG算子(五)

图像处理特征不变算子系列之DoG算子(五)

时间 2013-09-12 00:24:07 CSDN博客原

文https://www.360docs.net/doc/8b12369368.html,/kezunhai/article/details/11403733

图像处理特征不变算子系列之DoG算子(五)

kezunhai@https://www.360docs.net/doc/8b12369368.html,

https://www.360docs.net/doc/8b12369368.html,/kezunhai

在前面分别介绍了:图像处理特征不变算子系列之Moravec算子(一)、图像处理特征不变算子系列之Harris算子(二)、图像处理特征不变算子系列之SUSAN算子(三)和图像处理特征不变算子系列之FAST算子(四)。今天我们将介绍另外一个特征检测算子---DoG算子,DoG算子是

由 Lowe D.G. 提出的,对噪声、尺度、仿射变化和旋转等具有很强的鲁棒性,能够提供更丰富的局部特征信息,本文将对DoG算子进行详细地分析。

在开始介绍DoG之前,有必要对尺度空间有一定的了解。尺度空间最早是由Tony Lindeberg提出的,并不断的发展和完善。日常生活中,我们自觉或不自觉的在使用尺度的概念。举个我们个人自觉的经历,当我们读小学的时候,同学间互相询问来自哪个组;当我们读中学的时候,同学们互相询问自哪个村;当我们读高中的时候,同学们互相询问来自哪个镇;当读大学的时候,同学们互相询问来自哪个省?这里的组、村、镇、省就是我们不自觉使用的尺寸。还有一个例子,当我们打开google地图的时候,随着鼠标的滚动,地图会由五大洲逐渐定位到国家--》省---》市---》区---》街道办等,这也是尺度的表现。

1)尺度空间

在尺度空间中,尺度越大图像就越模糊,尺度空间中各尺度图像的模糊程度逐渐变大,能够模拟目标由远及近人对目标的感知过程。那为什么要讨论尺度空间呢?因为在用机器视觉系统分析未知场景时,机器并不知道图像中物体的尺度,只有通过对图像的多尺度描述,才能获得对物体感知的最佳尺度。如果在不同尺度上,对输入的图像都能检测到相同的关键点特征,那么在不同尺度下也可以实现关键点的匹配,从而实现关键点的尺度不变特性。尺度空间描述的就是图像在不同尺度下的描述,如果对尺度空间有兴趣,请参考Tony Lindeberg的论文:Scale-Space。

2)金字塔多分辨率

常常有人会将DoG与图像金字塔弄混,从而导致对SIFT算法第一步构造DoG不甚理解。这里首先介绍下金字塔多分辨率。金字塔是早起图像多尺度的表示形式,图像金字塔一般包括2个步骤,分别是使用低通滤波平滑图像;对图像进行降采样(也即图像缩小为原来的1/4,长宽高缩小为1/2),从而得到一系列尺寸缩小的图像。金字塔的构造如下所示:

图像金字塔也正如其名,是以一个降采样的形式来表示图像的多分辨率,类似一个金字塔形状。

3)高斯平滑滤波

高斯核是唯一可以产生多尺度空间的核,细节分析可以参

考:Scale-space theory: A basic tool for analysing structures at different scales。一个图像的尺度空间L(x,y,σ) ,定义为原始图像I(x,y)与一个可变尺度的2维高斯函数G(x,y,σ)卷积运算。二维空间高斯函数:

尺度空间表示为:

高斯模版是圆对称的,且卷积的结果使原始像素值有最大的权重,距离中心越远的相邻像素值权重也越小。高斯模糊另一个重要的性质就是线性可分,使用二维矩阵变换的高斯模糊可以通过在水平和竖直方向各进行一维高斯矩阵变换相加得到。

4)多尺度与多分辨率

尺度空间表达和金字塔多分辨率表达之间最大的不同是:(1)尺度空间表达是由不同高斯核平滑卷积得到,在所有尺度上有相同的分辨率;

(2)金字塔多分辨率表达每层分辨率减少固定比率。

所以,金字塔多分辨率生成较快,且占用存储空间少;而多尺度表达随着尺度参数的增加冗余信息也变多。多尺度表达的优点在于图像的局部特征可以用简单的形式在不同尺度上描述;而金字塔表达没有理论基础,难以分析图像局部特征。

5)拉普拉斯金字塔

结合尺度空间表达和金字塔多分辨率表达,就是在使用尺度空间时使用金字塔表示,在计算机视觉中最有名莫过于拉普拉斯金字塔。对于拉普拉斯不清楚的可以参考:https://www.360docs.net/doc/8b12369368.html,/rbf/HIPR2/log.htm。这里简单介绍下介绍下高斯拉普拉斯金字塔。

拉普拉斯金字塔顾名思义就是通过对图像进行拉普拉斯操作,然后进行一个降采样的过程。具体来说就是:原始图像作为金字塔的底层,也即0层,称为g0,对0层图像g0进行进行拉普拉斯金操作,得到第一层图像g1;接着对第一层图像进行拉普拉斯操作,得到第二层图像g2,依次类推,并进行一个降采样,如此构造高斯金字塔。这里只是做简单的介绍,如果还要了解更多细节信息,请参考论文:The Laplacian pyramid as a compact image code。

6)DoG金字塔

DoG(Difference of Gaussian)其实是对高斯拉普拉斯LoG的近似,在某一尺度上的特征检测可以通过对两个相邻高斯尺度空间的图像相减,得到DoG的响应值图像D(x,y,σ)。具体来说:

(1)分别对原图进行相邻尺度的高斯滤波

对原图的高斯滤波表示如下:

将上面滤波得到的两幅图像g1和g2相减得到:

如果将该公式进行简化写(SIFT中的写法),则变成如下:

为了得到DoG图像,首先要构造高斯金字塔,高斯金字塔在多分辨率金字塔的基础上加入了高斯滤波,也就是对金字塔每层图像采用不同的参数sigma进行了高斯卷积,使得金字塔的每层有多张图片组成为一个Octave,每组有多张(也叫层interval)图像。在SIFT算子中,很多人对Octave和Interval 不太了解,现在应该清楚了吧(每个Octave是由同一大小的图像,经过不同sigma高斯滤波得到的,而Interval则表示的是同一个sigma高斯滤波的图像)。另外,降采样时,金字塔上边一组图像的第一张图像(最底层的一张)是由前一组(金字塔下面一组)图像的倒数第三张隔点采样得到,图像表示如下:

下面代码贴出opencv中构造高斯金字塔的代码:

void SIFT::buildGaussianPyramid( const Mat& base, vector& pyr, int nOctaves ) const

{

vector sig(nOctaveLayers + 3);

pyr.resize(nOctaves*(nOctaveLayers + 3));

// precompute Gaussian sigmas using the following formula:

// \sigma_{total}^2 = \sigma_{i}^2 + \sigma_{i-1}^2

sig[0] = sigma;

double k = pow( 2., 1. / nOctaveLayers );

for( int i = 1; i < nOctaveLayers + 3; i++ )

{

double sig_prev = pow(k, (double)(i-1))*sigma;

double sig_total = sig_prev*k;

sig[i] = std::sqrt(sig_total*sig_total - sig_prev*sig_pr ev);

}

for( int o = 0; o < nOctaves; o++ )

{

for( int i = 0; i < nOctaveLayers + 3; i++ )

{

Mat& dst = pyr[o*(nOctaveLayers + 3) + i];

if( o == 0 && i == 0 )

dst = base;

// base of new octave is halved image from end of pre vious octave

else if( i == 0 )

{

const Mat& src = pyr[(o-1)*(nOctaveLayers + 3) + nOctaveLayers];

resize(src, dst, Size(src.cols/2, src.rows/2),

0, 0, INTER_NEAREST);

}

else

{

const Mat& src = pyr[o*(nOctaveLayers + 3) + i-1];

GaussianBlur(src, dst, Size(), sig[i], sig[i]);

}

}

}

}

高斯金字塔构造完成后,就可以求DoG,如图所示:

opencv中实现的DoG的代码为:

void SIFT::buildDoGPyramid( const vector& gpyr, vector & dogpyr ) const

{

int nOctaves = (int)gpyr.size()/(nOctaveLayers + 3);

dogpyr.resize( nOctaves*(nOctaveLayers + 2) );

for( int o = 0; o < nOctaves; o++ )

{

for( int i = 0; i < nOctaveLayers + 2; i++ )

{

const Mat& src1 = gpyr[o*(nOctaveLayers + 3) + i];

const Mat& src2 = gpyr[o*(nOctaveLayers + 3) + i + 1];

Mat& dst = dogpyr[o*(nOctaveLayers + 2) + i];

subtract(src2, src1, dst, noArray(), DataType::type);

}

}

}

7)根据DoG求角点

理论:三维图中的最大值和最小值点是角点,如图所示:

X标记当前像素点,绿色的圈标记邻接像素点,用这个方式,最多检测相邻尺度的26个像素点。如果它是所有邻接像素点的最大值或最小值点,则 X 被标记为特征点,如此依次进行,则可以完成图像的特征点提取。

更多信息请参考:

1、DoG (Difference of Gaussian)角点检测:

https://www.360docs.net/doc/8b12369368.html,/abcjennifer/article/details/7639488

2、SIFT原理与源码分析:DoG尺度空间构造:

https://www.360docs.net/doc/8b12369368.html,/xiaowei_cqu/article/details/8067881

作者:kezunhai出处:https://www.360docs.net/doc/8b12369368.html,/kezunhai欢迎转载或分享,但请务必声明文章出处。

数字图像处理大作业

大作业指导书 题目:数字图像处理 院(系):物联网工程学院 专业: 计算机 班级:计算机1401-1406 指导老师: 学号: 姓名: 设计时间: 2016-2017学年 1学期

摘要 (3) 一、简介 (3) 二、斑点数据模型 .参数估计与解释 (4) 三、水平集框架 (5) 1.能量泛函映射 (5) 2.水平集传播模型 (6) 3.随机评估方法 (7) 四、实验结果 (8) 五、总结 (11)

基于水平集方法和G0模型的SAR图像分割 Abstract(摘要) 这篇文章提出了一种分割SAR图像的方法,探索利用SAR数据中的统计特性将图像分区域。我们假设为SAR图像分割分配参数,并与水平集模型相结合。分布属于G分布中的一种,处于数据建模的目的,它们已经成功的被用于振幅SAR图像中不同区域的建模。这种统计数据模型是驱动能量泛函执行区域映射的基础,被引用到水平集传播数值方案中,将SAR 图像分为均匀、异构和极其异构区域。此外,我们引入了一个基于随机距离和模型的评估过程,用于量化我们方法的鲁棒性和准确性。实验结果表明,我们的算法对合成和真实SAR 数据都具有准确性。+ 简介 1、Induction(简介) 合成孔径雷达系统是一种成像装置,采用相干照明比如激光和超声波,并会受到斑点噪声的影响。在SAR图像处理过程中,返回的是斑点噪声和雷达切面建模在一起的结果。这个积性模型(文献[1])因包含大量的真实SAR数据,并且在获取过程中斑点噪声被建模为固有的一部分而被广泛应用。因此,SAR图像应用区域边界和目标检测变得更加困难,可能需要斑点去除。因此,斑点去除是必需的,有效的方法可以在文献[2][3][4][5][6][7][8][9][10]中找到。 对于SAR图像分割,水平集方法构成一类基于哈密顿-雅克比公式的重要算法。水平集方法允许有效的分割标准公式,从文献[12]中讨论的传播函数项可以得到。经典方法有着昂贵的计算成本,但现在的水平集的实现配置了有趣的低成本的替换。 水平集方法的一个重要方面,比如传播模型,可以用来设计SAR图像的分割算法。这个传播函数能够依据伽马和伽马平方根法则将斑点统计进行整合,函数已经被广泛地应用于SAR图像中的均质区域分割。Ayed等基于伽马分布任意建模,设计方案将SAR图像分成多个均质区域。尽管多区分割问题已经解决,该方案人需要一定数量的区域作为输入。Shuai 和Sun在文献[16]中提出对这个方法进行了改进,他们使用了一个有效的传播前收敛判断。Marques等引入了一个类似于含有斑点噪声图像中目标检测的框架,将基于本地区域的斑点噪声统计融合进去。这些作者采用伽马平方根对均质区域进行建模并用一个自适应窗口方案检测本地的同质性。 最近,新的SAR数据模型比如K,G,显示出了优势。经典法则受限于均质区域特性的描述,而最近的法则展现出了在数据建模中更有吸引力的特性。法则允许同构、异构和高度异构幅度SAR数据的建模。这个分布族提供了一组参数,可以描述SAR图像中的不同区域。分布的参数信息,可以被广泛的应用于设计SAR图像处理和分类技术。在文献[21]中,Mejail 等人介绍了SAR监督数据分类器,它基于其参数映射并实现了有趣的结果。Gambini等人在文献[22]中使用这个分布的一个参数来量化SAR数据的粗糙度,通过活动轮廓和B样条差值来检测边缘。然而,这种技术需要一个初始分割步骤,并受拓扑限制。一般来说,活动轮廓方法不能解决不连续区域分割的问题。 本文介绍了一种新的水平集算法来实现SAR图像中均质、异构和极其异构区域分割的目标。由于分布能够描述SAR图像的同质性和规模,我们的方法采用分布对斑点数据进行建模。这些分布参数基于每一个域点进行估计,通过这些信息,我们可以在水平集分割框架内得到一个能量泛函来驱动向前传播(front propagation)。该泛函以最大化不同区域平均能量间的差异作为结束。最终水平集阶段以能量带作为依据得到SAR图像的分割结果。

最新图像处理技术作业及答案

__________________________________________________
图像处理作业
1. 计算 F 和 H 的卷积。
7 1 3 F 7 2 0
7 1 2
H
1 1
1 1
2. 计算的 f (x) 的 N=8 的一维 DCT 余弦变换。
3. 为什么一般情况下对离散图像的直方图均衡化并不能产生完全平坦的直方 图?
4. 一幅图像直方图如 a 所示,要求对其进行直方图规定变换,变换后直方图如
b 所示:
0.384
0.174
0.088
0.08
0.058
0.086
0.068
0.062
01234567
a图
0.4
0.2
0.4
01234567
b图
5. 用 5 X 5 的十字形窗口对下图进行滤波。
1111111111 1 1 1 1 1 1 1 1 11 1115555111 1155555511 1155885511 1155885511 1155555511 1115555111 1111111111 1111111111
收集于网络,如有侵权请联系管理员删除

__________________________________________________
6. 已知符号 a,e,i,o,u,? 的出现概率分别是 0.2 , 0.3, 0.1 ,0.2 ,0.1 ,0.1 , 对字符串 aieoau 进行算术编码;如果一个字符串(共四位)的算术编码是 0.23355,对其进行算术解码,求这字符串是什么。
7. 已知符号 a,e,i,o,u,? 的出现概率分别是 0.2 , 0.3, 0.1 ,0.2 ,0.1 ,0.1 , 求这些字符的霍夫曼编码,及编码后的平均码长。
收集于网络,如有侵权请联系管理员删除

photoshop图像处理第五次作业 1

photoshop图像处理第五次作业 1 试卷总分:100 得分100 注:请20分钟以内保存一次。每大题完成后请先保存再更换大题,试卷试题全部完 成后提交。 第1大题 第2大题一、单项选择题(总分80.00) 1.画笔工具的用法和喷枪工具的用法基本相同,唯一不同的是以下 哪个选项()(4.00分) A. 模式 B. 不透明度 C. 湿边 D. 笔触 2.对一个图像文件的像素更改的比原来高时,则选 项说法是不正确的。( )(4.00分) A. 图像文件比原来大了 B. 在同一台电脑上处理起来速度比原来要慢 C. 图像的尺寸没有发生改变 D. 图像的质量比原来要高 3.下列关于背景层的描述哪个是正确的?( )( 4.00 分) A. 背景层不能转换为其它类型的图层 B. 在图层调板上背景层是不能上下移动的,只能是最下面一层 C. 背景层不可以执行滤镜效果 D. 背景层可以设置图层蒙板 4.下面对 Airbrush (喷枪工具)描述正确的是? ()(4.00分)

A. 喷枪工具喷出的颜色为工具箱中的背景色 B. 喷枪工具隐藏在笔刷工具的选项栏中 C. 喷枪工具是不能调整不透明度值的 D. 喷枪工具是不能用于图层蒙板中的 5.下列说法中,哪些是不正确的( )。(4.00分) A. 用户不能改变动作中命令的执行方式 B. 用户可在动作中的指定位置手动插入想要执行的菜单命令 C. 在录制动作时不能录制绘制路径的操作 D. 如果“动作”调板中的复选框中出现了红色图标,表示该动作中的部分命令包含了暂停操作 6.只删除当前图象的所有历史记录,应当用下列哪个操作 ()(4.00分) A. 按住shift键并选择清除历史记录 B. 按住ctrl键并选择清除历史记 C. 选择历史记录面板上的清除历史记录 D. 按住alt键并选择清除历史记录 7.在色彩范围对话框中为了调整颜色的范围,应当调整哪一个数值()(4.00分) A. 羽化 B. 反相 C. 颜色容差

数字图像处理大作业

1、下图是一用于干涉原理进行测试的干涉场图像,要求判读条纹的间距,请给 出图像处理的方案并说明每一步的作用及其对其它处理步骤可能产生的影响。 解:步骤与思路: ○1.进行模糊处理,消除噪声 ○2.边缘检测,进行图像增强处理 ○3.二值化图像,再进行边缘检测,能够得到很清晰的边界。 ○4.采用横向标号法,根据值为1像素在标号中的相邻位置可以确定间距 I=imread('xz mjt.bmp'); I1=medfilt2(I); %对图像中值滤波 imshow(I1); [m,n]=size(I1); for i=1:m for j=1:n if(I1(i,j)<100) %阈值为100 I1(i,j)=255; else I1(i,j)=0; %进行二值化 end end end figure; imshow(I1);

Y1=zeros(1,25); y2=y1; c=y2; i=100; for j=1:1200 if (I1(i,j)==255&&I1(i,j+1)==0) Y1=j+1; end if (I1(i,j)==0&&I1(i,j+1)==255) Y2=j; end end for i=1:25 c=Y2(i)-Y1(i) end c %找出每两个条纹之间的距离

2. 现有8个待编码的符号m0,……,m7,它们的概率分别为0.11,0.02,0.08,0.04,0.39,0.05,0.06,0.25,利用哈夫曼编码求出这一组符号的编码并画出哈夫曼树。 3. 请以图像分割方法为主题,结合具体处理实例,采用期刊论文格式,撰写一篇小论文。

数字图像处理 作业1汇总

数字图像处理 报告标题:01 报告编号: 课程编号: 学生姓名: 截止日期: 上交日期:

摘要 (1)编写函数计算灰度图像的均方误差(MSE)、信噪比(SNR)、峰值信噪比(PSNR)、平均绝对误差(MAE);(2)编写函数对灰度图像经行降采样,直接消除像素以及消除像素前进行简单平滑滤波;(3)编写函数对图像进行放大,分别使用像素直接复制和双线性插值的方法:(4)编写函数用题目给出的量化步骤Q去量化灰度图像,并给出相应的MSE和直方图;(5)编写函数对灰度图像执行直方图均衡化,显示均衡前后的直方图。同时,熟悉使用MATLAB,并且熟练操作对图像进行各种修改变换等。 KEY WORD :MATLAB MSE、PSNR 直方图量化

技术探讨 数字图像处理是基于Matlab来实现的,由于Matlab 独特的功能和对矩阵,图像,函数灵活的处理,因而用于图像的处理相当的方便。 task1 均方误差(MSE),信噪比(SNR),峰值信噪比(PSNR),平均绝对误差(MAE)。可以使用使用for循环语句,分别计算图像MSE/SNR/PSNR/MAE,具体的计算公式见附录代码,下面只附运算原理代码 均方误差(MSE): sum=sum+(a(i,j)-b(i,j))^2; MSE=sum/(M*N) 信噪比(SNR): sum2=sum2+a(i,j)^2; SNR=10*log10(sum2/MSE) 峰值信噪比(PSNR): sum=sum+(a(i,j)-b(i,j))^2; PSNR=10*log10(255^2/MSE) 平均绝对误差(MAE): sum=sum+a(i,j)+b(i,j); MAE=sum/(M*N) 在每次对同一个图像处理时它们的均方误差(MSE),信噪比(SNR),峰值信噪比(PSNR),平均绝对误差(MAE)都会有所不同,因为它是原图像与加噪后的图像比较,而电脑的每次操作都会对加噪过得图像有影响。 task3 按比例缩小灰度图像 (1)直接消除像素点: I1=g(1:m:end,1:m:end);I1 为缩小后的图像,g为原图。 (2)先平滑滤波再消除像素点: 滤波函数,g=imfilter(I,w,'corr','replicate'); task4 对图像的放大运用了pixel repetition法以及双线性插值法: 它有三种插值法:即最近邻插值(pixel repetition)、双线性插值、双三次插值(缩放倍数为0.5) ;缩放与放大由给定的参数来确定。 ;缩放与放大由给定的参数来确定。而缩小则同样适用I1=g(1:m:end,1:m:end); 而放大的代码为“J=imresize(I,m,'nearest');%使用pixel repetition法”和“J=imresize(I,m,'bilinear');%使用双线性插值法” 放大倍数更改m值即可 task4 对图像的量化,使用“J=histeq(I,x); ”,x为可变的量化步长 task5 灰度图像的量化和直方图均衡化直接调用函数。“J=histeq(I)”“imhist(I,64)”

特征描述算子评测

Feature descriptor comparison report Sharing my research work of behavior of several types of feature descriptors. This article is an update of old "Comparison of feature descriptors" post. I've added a brand new ORB feature descriptor to the test suite, also SIFT descriptor included as well. And a new version of LAZY descriptor present in this test too. For this test i have written special test framework, which allows me to easily add the new kind of descriptors and test cases and generate report data in CSV-like format. Than i upload it in Google docs and create this awesome charts. Five quality and one performance test was done for each kind of descriptor. o Rotation test - this test shows how the feature descriptor depends on feature orientation. o Scaling test - this test shows how the feature descriptor depends on feature size. o Blur test - this test shows how the feature descriptor is robust against blur. o Lighting test - this test shows how the feature descriptor is robust against lighting. o Pattern detection test - this test performs detection of planar平面object (image) on the real video. In contrast to the synthetic综合tests, this test gives a real picture of the overall stability of the particular descriptor. o Performance test is a measurement of description extraction time. All quality tests works in similar way. Using a given source image we generate a synthetic test data: transformed images corresponding feature points. The transformation algorithm depends on the particular test. For the rotation test case, it's the rotation of the source image around it's center for 360 degrees, for scaling - it's resizing of image from 0.25X to 2x size of original. Blur test uses gaussian blur with several steps and the lighting test changes the overall picture brightness. The pattern detection test deserves a special attention. This test is done on very complex and noisy video sequence. So it's challenging task for any feature descriptor algorithm to demonstrate a good results in this test. The metric for all quality tests is the percent of correct matches between the source image and the transformed one. Since we use planar object, we can easily select the inliers from all matches using the homography estimation. I use OpenCV's function cvFindHomography for this. This metric gives very good and stable results. I do no outlier detection of matches before homography estimation because this will affect the results in unexpected way. The matching of descriptors is done via brute-force matching from the OpenCV.

西安交通大学数字图像处理第二次作业

数字图像处理的基本数学 工具的使用 摘要 本报告主要介绍了运用编程软件MATLAB对图像灰度级进行变换、求取图像均值与方差、采用不同的内插方法对图像进行缩放及利用仿射变换对图像进行空间变换处理的方法。同时,对最近邻内插法、双线性内插法、双三次内插法进行图像处理的效果进行了详细的对比,并对出现差异的原因做出了简要分析。 姓名: X X X 班级: 学号: 提交日期:年月日

2_1. 把lena 512*512图像灰度级逐级递减8-1显示; (1) 问题分析: 所要实现的功能是:在不改变图像大小的前提下,使得整幅图像的灰度级逐级递减并将图像显示出来;即对所有像素点的灰度依次进行除2操作; (2) 实验过程: 工具:MATLAB 软件; 利用imread()函数将图像读入MATLAB ,利用imshow()对原图像进行显示,再利用循环体对整幅图像的灰度级逐级递减并一一进行显示。 源代码附于本报告最后一部分。 (3) 实验结果: 备注:在大小为512X512的途中观察更为方便,但此处为了便于排版以及将结果进行对比对所有图像做了一定的缩小。 a b c d

e f g h 图2_1 (a)大小为512X512的256灰度级图像;(b)~(h)保持图像大小不变的同 时以灰度级128,62,32,16,8,4,2显示的图像。 (4) 结果分析: 对图2_1中的(a)~(h)图像进行对比可知,256级、128级、64级以及32级灰度的图像几乎没有太大的区别;然而在灰度级为16的图(e)中出现了较为明显的伪轮廓,这种效果是由数字图像的平滑区域中的灰度级数不足引起的。(说明:此分析为本人肉眼的观察结果,对细节的观察难免存在疏漏之处,还请批评指正。) 2_2. 计算lena 图像的均值方差; (1) 问题分析: 所要实现的功能是:计算图像‘lena.bmp ’的均值与方差; (2) 实验过程: 工具:MATLAB 软件; 利用imread()函数将图像读入MATLAB ,由于二维数字图像使用二维阵列表示的,因而可以直接利用MATLAB 中的mean2()及std2()分别求整幅图像的均值于方差; 源代码附于本报告最后一部分。 (3) 实验结果:均值 m =99.0512 方差 =52.8776。 2_3. 把lena 图像用近邻、双线性和双三次插值法zoom 到2048*2048;

4种梯度算子

利用matlab编写的4种梯度算子程序,有图有真相。源代码如下: clear all; close all; P=input('input picture data:'); subplot(231);imshow(P); title('原图像'); d=size(P); if(d(3)>1) P=rgb2gray(P); end subplot(232);imshow(P); title('灰度图像'); P=double(P); % Roberts Operator tou=input('input threshold tou='); bh=input('input a constant intensity nearer to white bh='); bl=input('input a constant intensity nearer to black bl='); P1=P; for i=1:d(1)-1 for j=1:d(2)-1 RobNum=abs(P(i+1,j+1)-P(i,j))+abs(P(i,j+1)-P(i+1,j)); if RobNum>=tou P1(i,j)=bh; else P1(i,j)=bl; end end end P1=uint8(P1); subplot(233);imshow(P1); title('Roberts Operator'); %Prewitt Operator P2=P; for i=2:d(1)-1 for j=2:d(2)-1 PreNum=1/6*(abs(P(i-1,j-1)+P(i-1,j)+P(i-1,j+1)-P(i+1,j-1)-P(i+1,j)-P(i+1,j+1))+abs(P(i-1,j-1)+P(i ,j-1)+P(i+1,j-1)-P(i-1,j+1)-P(i,j+1)-P(i+1,j+1))); if PreNum>=tou P2(i,j)=bh; else P2(i,j)=bl; end

数字图像处理大作业

大作业要求 1.数字图像处理中的图像增强、图像分割、数学形态学、图像编码这几个章节中,围绕你所感兴趣的题目写一篇综述。 2.要求: (1)在中国知网上下载5篇以上相关文章,结合上课所学内容,确定综述的内容。(2)文字3000字以上,包含 a. 课题背景和概述 b. 国内外研究现状 c. 技术应用(可以实现哪些功能,实 现的方法及结果 d. 结论 e. 学习体会 f.参考文献 (3)综述的排版: 正文层次格式如下: 1(空两格)×××××(居中,三号宋体,加粗,占4行) 1.1×××(左顶格,四号宋体,加粗,占 2.5行,不接排) 1.1.1×××(左顶格,小四号宋体,加粗,占2行,不接排) a.(左空两格,a.后空一格)×××(小4号宋体,加粗) (正文)×××××(小4 号宋体,接排)

(1)(左空两格,(1)后空一格)×××(小4号宋体,加粗) (正文)×××××(小4号宋体,接排) 1)(左空两格,1)后空一格)(小4号宋体,加粗) (正文)×××××(小4号宋体,接排) 正文中段落一律段前、段后0磅,行距为20磅,对齐方式:两端对齐。小4号字体。 论文中的图和表居中,并且有图题和表题。 例如: 图 1 主站工作过程(5号字体,加粗) 表1 不同总线速率下从站的延迟时间(5号字体,加粗) 速率(Kbit/s ) 9.6 19.2 93.75 187.5 500 1500 1200SDR minT (bit T ) 11 11 11 11 11 11 11 SDR maxT (bit T ) 60 60 60 60 100 150 800 参考文献按照下面形式给出: 参考文献 (居中,三号,宋体,加粗,占4行)

国科大图像处理作业

3.2a S=T(r)=1 )E 1+(m r 3.2bL是图像灰度级,m=L/2,取L=500,m=250。假设E=10,15,20,100,通过matlab分析得到的图形如下: 程序: >> L=linspace(0,500); >> S1=1./(1+((250./L).^10)); >> S2=1./(1+((250./L).^15)); >> S3=1./(1+((250./L).^20)); >> S4=1./(1+((250./L).^100)); >> plot(L,S1),hold on >> plot(L,S2) >> plot(L,S3) >> plot(L,S4) >> hold off

2. S0=0.17 S1=0.17+0.25=0.42 S2=0.17+0.25+0.21=0.63 S3=0.17+0.25+0.21+0.16=0.79 S4=0.17+0.25+0.21+0.16+0.07=0.86 S5=0.17+0.25+0.21+0.16+0.07+0.08=0.94 S6=0.17+0.25+0.21+0.16+0.07+0.08=0.98 S7=0.17+0.25+0.21+0.16+0.07+0.08+0.02=1 输出的图像灰度级是等间距的,和原来的图像一样去8个灰度级,那么S k=i/7(i=0,1,2,3,…,7)。所以需要对S i进行修正。得到的结果为: S0并=1 7S1并=3 7 S2并=4 7 S3并=6 7 S4并=6 7 S5并=1 S6并=1 S7并=1 由计算的结果可知,直方图均衡化后的输出图像灰度级仅为 5个级别,即为S0=1 7S1=3 7 S2=4 7 S3=6 7 S4=1 通过r k与s k的相关关系,可以计算出P S(s k)。 P s(s0=1 7 )=0.17 P S(s1=3 7 )=0.25 P S(s2=4 7 )=0.21 P s(s3=6 7 )=0.16+0.07=0.23 P S(s4=1)=0.08+0.06+0.02=0.14 根据s k的取值和对应的概率,画出均衡化的直方图如下:

图像局部特征描述子研究分析(未完-待续)

研究背景 在日常生活中,我们主要依赖于视觉来感知外界的信息,比起听觉,视觉能给我们更加丰富的描述。人们一直想通过计算机视觉来描述视觉信息中有意义和有用的东西。首先,我们必须回答什么类型的信息是我们想要的?如何提取这样的特征信息?有人定义视觉为发现图像是什么和在哪里的过程,这强调了视觉是一个信息处理任务[]。而如何构建一个视觉系统来进行这样的信息处理任务是很多学者研究的问题之一。其中,达成统一共识是利用不同的特征层来构建这一个视觉模型系统,最简单的三层体系结构为低层、中层、高层。而本文基于最基本的图像描述方法——尺度的概念,利用尺度空间表示法来分析最低层图像数据。尺度空间方法是一种尺度参数连续、不同尺度空间下采样保持一致性的视觉多尺度分析。 视觉多尺度分析是一种新的视觉信息处理方法,其基本思想是:当我们用眼睛观察物体且物体和观察者之间的距离(将距离视为尺度参数)不断变化时,视网膜将感知到不断变化的图像信息,分析和综合这些不同尺度下的视觉信息以获得被观察物体的本质特征,这种视觉分析方法即称为视觉多尺度分析。 尺度空间方法的基本思想是:在视觉信息(图像信息)处理模型中引入一个被视为尺度的参数,通过连续变化尺度参数获得不同尺度下的视觉处理信息,然后综合这些信息以深入地挖掘图像的本质特征。尺度空间方法将传统的单尺度视觉信息处理技术纳入尺度不断变化的动态分析框架中,因此更容易获得图像的本质特征。 为什么要研究尺度空间?可以从以下几个通俗的描述来说明: 1)现实世界的物体由不同尺度的结构所组成; 2)在人的视觉中,对物体观察的尺度不同,物体的呈现方式也不同; 3)对计算机视觉而言,无法预知某种尺度的物体结构是有意义的,因此有必要将所有尺度的结构表示出来; 4)从测量的角度来说,对物体的测量数据必然是依赖于某个尺度的,例如温度曲线的采集,不可能是无限的,而是在一定温度范围进行量化采集。温度范围即是选择的尺度; 5)采用尺度空间理论对物体建模,即将尺度的概念融合入物理模型之中。 尺度空间数学定义表示如下: 设多尺度分析的初始图像为0()u x (x , 为图像区域),(,)u x t 为多尺度分析用于图像所获得的在尺度(0)t t 时的图像,称0:()(,)t T u x u x t 为尺度空间算子,尺度空间算子族 0t t T 为尺度空间,并称为0:()(,)t h T u x t u x t h 尺度由t 变化到t h 的尺度空间算子。 依据尺度空间公理,尺度空间算子应满足如下定义的视觉不变性: 定义2 设t T 为尺度空间算子,称t T 具有

梯度算子的Matlab实现

利用matlab编写的4种梯度算子程序。源代码如下: clear all; close all; P=input('input picture data:'); subplot(231);imshow(P); title('原图像'); d=size(P); if(d(3)>1) P=rgb2gray(P); end subplot(232);imshow(P); title('灰度图像'); P=double(P); % Roberts Operator tou=input('input threshold tou='); bh=input('input a constant intensity nearer to white bh='); bl=input('input a constant intensity nearer to black bl='); P1=P; for i=1:d(1)-1 for j=1:d(2)-1 RobNum=abs(P(i+1,j+1)-P(i,j))+abs(P(i,j+1)-P(i+1,j)); if RobNum>=tou P1(i,j)=bh; else P1(i,j)=bl; end end end P1=uint8(P1); subplot(233);imshow(P1); title('Roberts Operator'); %Prewitt Operator P2=P; for i=2:d(1)-1 for j=2:d(2)-1 PreNum=1/6*(abs(P(i-1,j-1)+P(i-1,j)+P(i-1,j+1)-P(i+1,j-1)-P(i+1,j)-P(i+1,j+1))+abs(P(i-1,j-1)+P(i ,j-1)+P(i+1,j-1)-P(i-1,j+1)-P(i,j+1)-P(i+1,j+1))); if PreNum>=tou P2(i,j)=bh; else P2(i,j)=bl; end

《数字图像处理》复习大作业及答案

2014年上学期《数字图像处理》复习大作业及参考答案 ===================================================== 一、选择题(共20题) 1、采用幂次变换进行灰度变换时,当幂次取大于1时,该变换是针对如下哪一类图像进行增 强。(B) A 图像整体偏暗 B 图像整体偏亮 C图像细节淹没在暗背景中D图像同时存在过亮和过暗背景 2、图像灰度方差说明了图像哪一个属性。(B ) A 平均灰度 B 图像对比度 C 图像整体亮度D图像细节 3、计算机显示器主要采用哪一种彩色模型( A ) A、RGB B、CMY或CMYK C、HSI D、HSV 4、采用模板[-1 1]T主要检测( A )方向的边缘。 A.水平 B.45? C.垂直 D.135? 5、下列算法中属于图象锐化处理的是:( C ) A.低通滤波 B.加权平均法 C.高通滤波 D. 中值滤波 6、维纳滤波器通常用于( C ) A、去噪 B、减小图像动态范围 C、复原图像 D、平滑图像 7、彩色图像增强时, C 处理可以采用RGB彩色模型。 A. 直方图均衡化 B. 同态滤波 C. 加权均值滤波 D. 中值滤波 8、__B__滤波器在对图像复原过程中需要计算噪声功率谱和图像功率谱。 A. 逆滤波 B. 维纳滤波 C. 约束最小二乘滤波 D. 同态滤波 9、高通滤波后的图像通常较暗,为改善这种情况,将高通滤波器的转移函数加上一常数量以 便引入一些低频分量。这样的滤波器叫B。 A. 巴特沃斯高通滤波器 B. 高频提升滤波器 C. 高频加强滤波器 D. 理想高通滤波器 10、图象与灰度直方图间的对应关系是 B __ A.一一对应 B.多对一 C.一对多 D.都不 11、下列算法中属于图象锐化处理的是:C A.低通滤波 B.加权平均法 C.高通滤 D. 中值滤波 12、一幅256*256的图像,若灰度级数为16,则存储它所需的比特数是:( A ) A、256K B、512K C、1M C、2M 13、噪声有以下某一种特性( D ) A、只含有高频分量 B、其频率总覆盖整个频谱 C、等宽的频率间隔内有相同的能量 D、总有一定的随机性 14. 利用直方图取单阈值方法进行图像分割时:(B) a.图像中应仅有一个目标 b.图像直方图应有两个峰 c.图像中目标和背景应一样大 d. 图像中目标灰度应比背景大 15. 在单变量变换增强中,最容易让人感到图像内容发生变化的是( C )

forstner算子提取特征点

Forstner算子提取特征点(原创) ;------------------------------ ;Forstner算子 ;; image:输入原始图像 ; vwsize:窗口宽度 ; ithresh:初选差分阈值 ; qthresh:兴趣值阈值 function Forstner,image,vwsize=vwsize,ithresh=ithresh,Tq=Tq IF N_Elements(vwsize) eq 0 THEN vwsize=5 IF N_Elements(ithresh) eq 0 THEN ithresh=50 IF N_Elements(Tq) eq 0 THEN Tq=0.5 image=float(image) imgSize = Size(image, /Dimensions) xsize=imgSize[0] ysize=imgSize[1] ;灰度的协方差矩阵 result=fltarr(xsize,ysize) ;第一步:利用差分算子提取初选点

for i=1,xsize-2 do begin for j=1,ysize-2 do begin dg1=abs(image[i,j]-image[i+1,j]) dg2=abs(image[i,j]-image[i,j+1]) dg3=abs(image[i,j]-image[i-1,j]) dg4=abs(image[i,j]-image[i,j-1]) dg=[dg1,dg2,dg3,dg4] temp=dg[sort(dg)] if temp[2] gt ithresh then begin result[i,j]=255 endif else begin result[i,j]=0 endelse endfor endfor ;第二步:在以初选点为中心的3*3的窗口中计算协方差矩阵与圆度 ;此处可用where提高循环效率 ;权重矩阵 wMatrix=fltarr(xsize,ysize) for i=1,xsize-2 do begin for j=1,ysize-2 do begin ;是初选点 if result[i,j] eq 255 then begin gu2=0.0 & gv2=0.0 & guv=0.0 for ii=-1,1 do begin for jj=-1,1 do begin gu2=gu2+(image[i+1,j+1]-image[i,j])^2 gv2=gv2+(image[i,j+1]-image[i+1,j])^2 guv=guv+(image[i+1,j+1]-image[i,j])*(image[i,j+1]-image[i+1,j]) endfor endfor DetN=gu2*gv2-guv trN=gu2+gv2 q=4*DetN/(trN*trN) ;第三步:设定阈值Tq,若满足则计算权值 if q gt Tq then wMatrix[i,j]=DetN/trN endif

梯度、散度和旋度

梯度、散度和旋度是矢量分析里的重要概念。之所以是“分析”,因为三者是三种偏导数计算形式。这里假设读者已经了解了三者的定义。它们的符号分别记作如下: 从符号中可以获得这样的信息: ①求梯度是针对一个标量函数,求梯度的结果是得到一个矢量函数。这里φ称为势函数; ②求散度则是针对一个矢量函数,得到的结果是一个标量函数,跟求梯度是反一下 的; ③求旋度是针对一个矢量函数,得到的还是一个矢量函数。 这三种关系可以从定义式很直观地看出,因此可以求“梯度的散度”、“散度的梯度”、“梯度的旋度”、“旋度的散度”和“旋度的旋度”,只有旋度可以连续作用两次,而一维波动方程具有如下的形式 (1) 其中a为一实数,于是可以设想,对于一个矢量函数来说,要求得它的波动方程,只有求它的“旋度的旋度”才能得到。下面先给出梯度、散度和旋度的计算式: (2) ( 3) (4) 旋度公式略显复杂。这里结合麦克斯韦电磁场理论,来讨论前面几个“X度的X度”。 I.梯度的散度: 根据麦克斯韦方程有:

而 (5) 则电势的梯度的散度为 这是一个三维空间上的标量函数,常记作 (6) 称为泊松方程,而算符▽2称为拉普拉斯算符。事实上因为定义 所以有 当然,这只是一种记忆方式。 当空间内无电荷分布时,即ρ=0,则称为拉普拉斯方程 当我们仅需要考虑一维情况时,比如电荷均匀分布的无限大平行板电容器之间(不包含极板)的电场,我们知道该电场只有一个指向,场强处处相等,于是该电场满足一维拉普拉斯方程,即 这就是说如果那边平行板电容器的负极板接地,则板间一点处的电压与该点距负极板的距离呈线性关系。 II.散度的梯度:

西安交通大学大学数字图像处理大作业

数字图像处理

目录 作业一 (1) 一作业要求 (1) 二源代码 (1) 三运行结果 (3) 作业二 (5) 一作业要求 (5) 二算法描述 (5) 三源代码 (7) 四运行结果 (10)

作业一 一作业要求 在图像的空间域滤波操作中,会出现有部分掩膜矩阵在图像外面的情况,所以需要给图像先加入一个边界,执行完操作之后,再去掉这个边界,保证图像中所有的像素都参与矩阵运算。 二源代码 byte[,] filter(byte[,]f,float[,]mask) { int w = f.GetLength(0); int h = f.GetLength(1); byte[,] g = new byte[w,h]; int M = mask.GetLength(0)/2; int N = mask.GetLength(1)/2; for (int y=N;y255) return 255; if (v<0) return 0; return (byte)v;

} float[,] averagingMask(intM,int N) { float[,] mask = new float[2*M+1,2*N+1]; for (int m=-M;m<=M;m++) for (int n=-N;n<=N;n++) mask[M+m,N+n] = 1.0f/((2*M+1)*(2*N+1)); return mask; } byte[,] addboard(byte[,] f,intM,int N) { int w=f.GetLength(0); int h=f.GetLength(1); intgw=w+2*M; intgh=h+2*N; byte[,] g=new byte[gw,gh]; //add top board and bottom board for(inti=0;i

数字图像处理大作业.doc

-------------精选文档 ----------------- 1、下图是一用于干涉原理进行测试的干涉场图像,要求判读条纹的间距,请 给出图像处理的方案并说明每一步的作用及其对其它处理步骤可能产生的影响。 解:步骤与思路: ○1.进行模糊处理,消除噪声 ○2.边缘检测,进行图像增强处理 ○3.二值化图像,再进行边缘检测,能够得到很清晰的边界。 ○4.采用横向标号法,根据值为1 像素在标号中的相邻位置可以确定间距 I=imread('xz mjt.bmp'); I1=medfilt2(I);%对图像中值滤波 imshow(I1); [m,n]=size(I1); for i=1:m for j=1:n if(I1(i,j)<100)% 阈值为 100 I1(i,j)=255; else I1(i,j)=0;%进行二值化

-------------精选文档 ----------------- end end end figure; imshow(I1); Y1=zeros(1,25); y2=y1; c=y2; i=100; for j=1:1200 if (I1(i,j)==255&&I1(i,j+1)==0) Y1=j+1; end if (I1(i,j)==0&&I1(i,j+1)==255) Y2=j; end end for i=1:25 c=Y2(i)-Y1(i) end c%找出每两个条纹之间的距离

2.现有 8 个待编码的符号 m0,,m7, 它们的概率分别为 0.11,0.02,0.08,0.04,0.39,0.05,0.06,0.25,利用哈夫曼编码求出这一组符号的编码并画出哈夫曼树。 3.请以图像分割方法为主题,结合具体处理实例,采用期刊论文格式,撰写一篇小论文。

相关文档
最新文档