《Python编程与计算机视觉应用》习题及参考答案 第3章习题参考答案_第1页
《Python编程与计算机视觉应用》习题及参考答案 第3章习题参考答案_第2页
《Python编程与计算机视觉应用》习题及参考答案 第3章习题参考答案_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

3-1说明开运算与闭运算的特点以及它们在图像处理中的作用。答:图像的腐蚀和膨胀运算结合产生了图像开运算和闭运算。1.形态学开运算的特点:先对图像进行腐蚀操作,然后再对图像进行膨胀操作。它先对图像进行腐蚀,消除图像中的噪声和较小的连通域,之后通过膨胀运算弥补较大的连通域中因腐蚀造成的面积减小。形态学开运算的作用:(1)消除值高于邻近点的孤立点,达到去除图像中噪声的作用;(2)消除较小的连通域,保留较大的连通域;(3)断开较窄的狭颈,可以在两个物体纤细的连接处将它们分离;(4)不明显改变较大连通域的面积的情况下平滑连通域的连界、轮廓。2.形态学闭运算的特点:先对图像进行膨胀操作,再对图像进行腐蚀操作。它先对图像进行膨胀以填充连通域内的小型空洞,扩大连通域的边界,连接邻近的两个连通域,之后通过腐蚀运算减少由膨胀运算引起的连通域边界的扩大及面积的增加。形态学闭运算的作用:(1)消除值低于邻近点的孤立点,达到去除图像中噪声的作用;(2)连接两个邻近的连通域;(3)弥合较窄的间断和细长的沟壑;(4)去除连通域内的小型空洞;(5)和开运算一样也能够平滑物体的轮廓;3-2使用binary_erosion()函数和binary_expand()函数替换3.2.3节开、闭运算的Python实现例程中的binary_opening()函数和binary_closing()函数,即使用相同的结构元素来比较腐蚀开和膨胀闭运算,观察与开、闭运算结果的区别。答:代码如下:#模块导入fromskimage.ioimportimreadfromskimage.colorimportrgb2grayimportmatplotlib.pylabaspylabfromskimage.morphologyimportbinary_opening,binary_closing,binary_erosion,binary_dilation,disk#定义图片显示函数defplot_image(image,title=''):pylab.title(title,size=20),pylab.imshow(image)pylab.axis('off')#如果需要输出图像坐标轴上的刻度,请注释这一行#读取输入图像im=rgb2gray(imread('点.jpg'))im[im<=0.5]=0#创建固定阈值0.5的二值图像im[im>0.5]=1pylab.gray()pylab.figure(figsize=(20,10))pylab.subplot(1,3,1),plot_image(im,'original')#对二值图像进行结构元素尺寸为12的腐蚀开运算im1=binary_erosion(im,disk(12))pylab.subplot(1,3,2),plot_image(im1,'openingwithdisksize'+str(12))#对二值图像进行结构元素尺寸为6的膨胀闭运算im1=binary_expand(im,disk(6))pylab.subplot(1,3,3),plot_image(im1,'closingwithdisksize'+str(6))pylab.show()输出结果如下:3-3梯度用于刻画目标边界或边缘位于图像灰度级剧烈变化的区域,实现增强结构元素领域中像素的强度,突出高亮区域的外围。形态学Beucher梯度计算可定义为输入灰度图像的膨胀运算与腐蚀运算的差值图像,SciPy的ndimage也提供了一个计算灰度图像形态学梯度的函数,请使用以上相关函数对“熊猫.jpg”(如图3-25所示)进行灰度图像形态学梯度计算。fromscipyimportndimagefromskimage.ioimportimreadfromskimage.colorimportrgb2grayimportmatplotlib.pylabaspylabim=rgb2gray(imread('熊猫.jpg'))im_d=ndimage.grey_dilation(im,size=(7,7))im_e=ndimage.grey_erosion(im,size=(7,7))im_bg=im_d-im_eim_g=ndimage.morphological_gradient(im,size=(7,7))pylab.gray()pylab.figure(figsize=(20,18))pylab.subplot(231),pylab.imshow(im),pylab.title('original',size=20),pylab.axis('off')pylab.subplot(232),pylab.imshow(im_d),pylab.title('dilation',size=20),pylab.axis('off')pylab.subplot(233),pylab.imshow(im_e),pylab.title('erosion',size=20),pylab.axis('off')pylab.subplot(234),pylab.imshow(im_bg),pylab.title('Beuchergradient(bg)',size=20),pylab.axis('off')pylab.subplot(235),pylab.imshow(im_g),pylab.title('ndimagegradient(g)',size=20),pylab.axis('off')pyl

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论