数字图像处理――数学形态学mathematical .
- 格式:doc
- 大小:2.58 MB
- 文档页数:23
Mathematica数字图像处理功能颇强(1)来源看到这样一个例子,如何把图片中的红球变成蓝色。
实现方法目前三个答案里面最好的一个来自自称有“工程师强迫症”的@belisarius:思路是,先生成球的蒙板,再仅对特定区域的颜色作处理,这样就不会影响其它部分。
1.结果2 . 代码i=Import["/Qr7Tx.jpg"];getReds[x_Image]:=First@ColorSeparate[x,"Hue"]isolateSphere[x_Image]:=SelectComponents[Binarize[getRe ds[x],.9],Large]makeMask[x_Image]:=Image@Graphics[Disk@@(1/.Compo nentMeasurements[isolateSphere[x],{"Centroid","BoundingDisk Radius"}]),{PlotRange->Thread[{1,#}],ImageSize->#}&@ImageDi mensions@x]getAreaToChange[x_Image]:=ImageMultiply[i,ColorNegate @makeMask[x]]shiftColors[x_Image]:=Image[ImageData[getAreaToChange[ x]]/.p:{r_,g_,b_}/;r>.3:>RotateLeft[p,1]]finishIt[x_Image]:=ImageAdd[ImageMultiply[x,makeMask[x] ],ColorConvert[shiftColors[x],"RGB"]]{#,getReds@#,isolateSphere@#,makeMask@#,getAreaToCh ange@#,shiftColors@#,finishIt@#}&@i•1•2•3•4•5•6•7•8这个例子只是让人感受一下, Mathematica中已经提供了足够强大的函数功能完成一些颇为复杂的数字图象处理过程。
数字图像处理中的形态学(摘自某文献,因为贴图的数目有限制,后面的公式图片没有能够上,电脑重装后文档已经找不到了,囧)一引言数学形态学是一门建立在集论基础上的学科,是几何形态学分析和描述的有力工具。
数学形态学的历史可回溯到19世纪。
1964年法国的Matheron和Serra在积分几何的研究成果上,将数学形态学引入图像处理领域,并研制了基于数学形态学的图像处理系统。
1982年出版的专著《Image Analysis and Mathematical Morphology》是数学形态学发展的重要里程碑,表明数学形态学在理论上趋于完备及应用上不断深入。
数学形态学蓬勃发展,由于其并行快速,易于硬件实现,已引起了人们的广泛关注。
目前,数学形态学已在计算机视觉、信号处理与图像分析、模式识别、计算方法与数据处理等方面得到了极为广泛的应用。
数学形态学可以用来解决抑制噪声、特征提取、边缘检测、图像分割、形状识别、纹理分析、图像恢复与重建、图像压缩等图像处理问题。
该文将主要对数学形态学的基本理论及其在图像处理中的应用进行综述。
二数学形态学的定义和分类数学形态学是以形态结构元素为基础对图像进行分析的数学工具。
它的基本思想是用具有一定形态的结构元素去度量和提取图像中的对应形状以达到对图像分析和识别的目的。
数学形态学的应用可以简化图像数据,保持它们基本的形状特征,并除去不相干的结构。
数学形态学的基本运算有4个:膨胀、腐蚀、开启和闭合。
它们在二值图像中和灰度图像中各有特点。
基于这些基本运算还可以推导和组合成各种数学形态学实用算法。
(1)二值形态学数学形态学中二值图像的形态变换是一种针对集合的处理过程。
其形态算子的实质是表达物体或形状的集合与结构元素间的相互作用,结构元素的形状就决定了这种运算所提取的信号的形状信息。
形态学图像处理是在图像中移动一个结构元素,然后将结构元素与下面的二值图像进行交、并等集合运算。
基本的形态运算是腐蚀和膨胀。