数字图像处理论文范文
时间:2023-03-29 08:49:34
导语:如何才能写好一篇数字图像处理论文,这就需要搜集整理更多的资料和文献,欢迎阅读由公务员之家整理的十篇范文,供你借鉴。
篇1
关键词:数字图像处理;教学改革;课程建设;研究性教学
作者简介:宁纪锋(1975-),男,陕西韩城人,西北农林科技大学信息工程学院,副教授。(陕西 杨凌 712100)
基金项目:本文系西北农林科技大学教学改革研究项目(项目编号:JY1102077)、西北农林科技大学本科优质课程建设项目的研究成果。
中图分类号:G642.0 文献标识码:A 文章编号:1007-0079(2013)34-0122-02
“数字图像处理”是西北农林科技大学(以下简称“我校”)信息工程学院为计算机科学与技术、软件工程、信息与计算科学等多个理工科专业所开设的一门专业必修课。该课程涵盖数学、物理、信号处理、心理学、计算机科学等多个领域的知识,与本科阶段的高等数学、线性代数、概率论、面向对象编程、数据结构、算法分析等多门课程密切相关,对后续的特征提取和图像理解等高级计算机视觉处理课程具有重要的基础作用。同时,它在“模式识别”、“人工智能”和“机器学习”等专业课程体系中起着重要的作用。[1-3]
一、课程改革的必要性
由于图像处理理论性强,内容抽象,算法较多,涉及的理论和方法既包含时域(空域)、变换域(频域为主)、数学形态学、地理学(如分水岭算法),还涉及到模式识别理论的一些知识,学生理解起来有一定难度,在解决实际问题时,面临着无从下手的困难。同时,图像处理技术应用较为广泛,随着数字成像设备的广泛使用和智能手机的普及,社会对图像处理人才的需求也日益增加,这些都对课程教学提出了更高的要求。在教学过程中发现“数字图像处理”的传统教学模式中,在课程定位、教学模式和教学内容上存在一些问题。
1.课程定位不明确
“数字图像处理”在本科教学过程中有着两种比较冲突的定位,导致课程教学过程存在两种倾向。一是不顾本科学生实际情况向研究生课程看齐,将重点放在数字图像处理理论内容。但这些内容与实际应用联系并不紧密,忽视它的应用性和实践性强的特点,从而导致理论与实践脱节,造成学生在编程能力上的欠缺。二是过分强调应用技能,把数字图像处理等同于讲授Photoshop等应用软件的使用,或以讲授MATLAB和Open CV图像处理函数为主,不重视原理和算法,忽略了对本科生科学素质和研究能力的培养。
2.传统教学模式与授课对象差异性的矛盾
“数字图像处理”通常要求先研修“高等数学”、“线性代数”、“概率论与数理统计”和“数字信号处理”等课程,但是一些本科专业并没有完整开设这些课程。例如,我校计算机科学与技术专业学习“数字信号处理”课程,但软件工程和信息与计算科学专业未开设该类课程。此外,在实验环节中,教师根据教学大纲设置的实验内容通常比较固定,而未考虑学生专业和背景知识的差异、统一的实验环境模式,使得有的专业学生因为知识储备不足,学习起来有一定困难;而有的专业学生则感觉学习内容简单、缺乏挑战性,使得教师讲授时在调动学生积极性、提高学生实践能力方面难以协调。
3.教材与学科发展不一致
数字图像处理内容涉及到矩阵运算、信号处理、概率论与数理统计等多个内容交叉学科,与新兴学科的发展密切相关。当前,在人工智能、模式识别和机器学习等新兴学科的推动下,数字图像处理技术发展越来越快。传统的教材或过于偏重推导理论,与应用实践偏离,或成为图像处理软件或函数(如 Photoshop、MATLAB或Open CV)的使用说明书,使得学生难以深入学习图像处理知识,影响对该门课程的掌握。
二、课程改革方法
根据授课专业对象的实际情况,在教学内容、教学方法、完善实验教学和考核等方面对该门课程进行一系列改革,充分利用图像处理实践性强的特点,依托我校在数字图像处理方面长期积累的理论和研究资源,将理论方法与实践应用有机结合,构建了全面系统的数字图像处理教学体系。多年教学效果表明,该教学模式有效克服传统数字图像处理教学存在的局限,极大增强了学生的学习兴趣,提高了学生的动手能力和创新素养。
1.完善课程内容体系,适应图像处理发展
数字图像处理是一门发展中的课程,每年都有许多新的研究理论和方法不断涌现,需对课程不断进行完善,以适应图像处理学科的发展。在保持图像处理课程核心内容的基础上,注重将最近的该学科具有代表性的成果纳入教学。精简和更新一些陈旧的和目前图像处理实际中很少使用的一些方法。其次,将一些现代经典的科研论文,以补充教材的形式,作为教学内容。将一些理论性较强,对数学基础要求较高的内容,如主动轮廓分割模型和目标跟踪方法等作为选学内容,供有兴趣的学生学习。
考虑到OpenCV和MATLAB的广泛使用,图像文件的读写已非常简单,因此,减少对图像文件格式的讲解;在图像分割与边缘检测中,删掉投影法与差影法内容,因为该方面内容在实际中已很少使用;在频域处理中,淡化对傅里叶变换理论和算法的讲解,重点放在其思想和应用上。
2.应用全方位教学手段,构建立体化教学资源
针对“数字图像处理”课程理论性和实践性较强、可视化程度较高的特点,综合利用图像、视频信息、可视化编程软件和网络资源等现代化教育技术,从课堂、实验、应用实践等诸多环节探索立体化教学资源。结合不同专业需求,运用MATLAB、Open CV等软件工具包开发图像处理实验平台,建立网络化辅助教学系统,使抽象概念和算法形象化,激发学生思维。例如,建立图像处理标准测试库,包括了图像去噪、图像分割、图像变换和特征提取与识别等核心内容涉及到的测试数据;在参考教材方面,提供了国内外知名大学出版的数字图像处理和计算机视觉教材及计算机视域的专著;在多媒体课件方面,提供多年从国内外知名大学网站上搜集到多个数字图像处理和计算机视觉的电子课件,供学生学习;在代码方面,提供了数字图像处理方面的经典和最新的一些科研成果的源代码或可执行软件,学生自己运行代码并分析实验结果,加深对图像处理课程的认识。
3.以学生发展为本,建立多元化的考核评价标准
在传统方式下,教师常以期末考试和出勤率来评价学习效果,忽略了对学生参与学习活动和学习过程的评价。大部分学生往往在考试前突击学习,没有真正掌握扎实的知识。因此,本教学改革以过程控制为中心,以能力提高为目标,对考核方式进行改革,实行常规考核与过程性考核相结合的方式,准确把握学生的真实成绩,全面衡量和控制教学质量,既要考学生的基本理论,更要考他们运用知识和方法设计图像处理方案、完成图像处理实际任务的能力。在授课过程中,注重课堂考察环节,加强师生交互,动态掌握学生对授课内容的理解。开展专题讨论课程,让学生大胆提问,锻炼学生创新思维能力,对表现突出的学生增加平时分。
4.开展研究性课堂教学探索
在教学改革中,精选了若干图像处理经典和前沿专题讨论,包括论文、程序源代码和辅助材料。在课程一开始就布置任务给学生课下自学,并安排学生上台讲授,其他学生提问,教师给予点评,并组织学生一起讨论,加深对图像处理课程的认识,培养学生综合运用知识的能力,提高创新素养。
例如,在图像分割专题讨论中,以经典Mean Shift分割为主要内容,Graph Cut和交互式分割两个方向作为补充内容,开展专题讨论。因为这些广泛使用的算法涉及到高等数学、线性代数、概率论、数据结构和算法设计等多门所学课程。通过自学、上课讨论和教师点评,学生对以前所学基础和专业知识有了更深层次的理解。同时,这些算法都面向彩色图像,克服了教材中以灰度图像为主要分割对象的不足。
5.开展研究性实践教学
传统“数字图像处理”课程实践教学强调基本算法的实现,未强调算法之间的逻辑联系,忽略了数字图像处理基本算法的综合训练。在改革中,保留图像处理基本核心算法,将科研项目融入教学实践中,通过设计研究性综合实践项目,注重学生对所学知识的综合理解和提升。例如,“图像去雾”综合训练实践,以如何有效果去除图像中的雾增强图像质量为目标。该任务以2009年国际计算机视觉和模式识别会议(CVPR)的最佳论文《基于暗通道通先验的单幅图像去雾》[4]为主要内容,涉及到图像处理的多个基本算法,同时也包含了物理学和光学的一些知识。通过将新的实践教学手段应用到教学中,突出对学生思维能力、科研能力和创新能力的培养。
三、结论
通过分析数字图像处理目前存在的课程定位模糊、传统的教学模式与授课对象差异性的矛盾和教材内容与学科发展脱节等问题,笔者根据学科专业特点,结合授课教师的科研项目,从完善课程内容体系、构建立体化教学资源、多元化考核评价标准和开展研究性教学探索等五个方面进行开展数字图像处理教学改革。多年教学效果表明,该教学方法克服传统教学方法所存在的弊端,极大地提高了学生的自主学习能力。学生较好地掌握数字图像处理的核心内容,了解当代图像处理的代表性成果和前沿趋势,综合应用能力和创新素养明显增强,为培养具有较强适应能力的应用型和创新型人才打下坚实的基础,适应了新世纪对信息技术人才的培养要求。
参考文献:
[1]何东健.数字图像处理[M].西安:西安电子科技大学出版社,2008.
[2]杜云明,郝兵,刘文科.“数字图像处理”课程任务驱动教学模式的实践[J].中国电力教育,2013,(10):113-114.
篇2
关键词:数字图像 图像处理 数字技术 应用
一、数字图像处理综述
数字图像处理(Digital Image Processing)又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。
数字图像处理最早出现于20世纪50年代,当时的电子计算机已经发展到一定水平,人们开始利用计算机来处理图形和图像信息,数字图像处理作为一门学科大约形成于20世纪60年代初期,早期的图像处理的目的是改善图像的质量,它以人为对象,以改善人的视觉效果为目的。图像处理中,输入的是质量低的图像,输出的是改善质量后的图像,常用的图像处理方法有图像增强、复原、编码、压缩等。
首次获得实际成功应用的是美国喷气推进实验室(JPL),他们对航天探测器徘徊者7号在1964年发回的几千张月球照片使用了图像处理技术,如几何校正、灰度变换、去除噪声等方法进行处理,并考虑了太阳位置和月球环境的影响,由计算机成功地绘制出月球表面地图,获得了巨大的成功。随后又对探测飞船发回的近十万张照片进行更为复杂的图像处理,以致获得了月球的地形图、彩色图及全景镶嵌图,获得了非凡的成果,为人类登月创举奠定了坚实的基础,也推动了数字图像处理这门学科的诞生。在以后的宇航空间技术,医学技术中数字图像处理技术都发挥了巨大的作用。
从70年代中期开始,随着计算机技术和人工智能、思维科学研究的迅速发展,数字图像处理向更高、更深层次发展,人们已开始研究如何用计算机系统解释图像,实现类似人类视觉系统理解外部世界,这被称为图像理解或计算机视觉。很多国家,特别是发达国家投入更多的人力、物力到这项研究,取得了不少重要的研究成果。其中代表性的成果是70年代末MIT的Marr提出的视觉计算理论,这个理论成为计算机视觉领域其后十多年的主导思想。图像理解虽然在理论方法研究上已取得不小的进展,但它本身是一个比较难的研究领域,存在不少困难,因人类本身对自己的视觉过程还了解甚少,因此计算机视觉是一个有待人们进一步探索的新领域。
二、国内外研究现状
目前,国内图像识别的算法研究多是关于数字、文字、人脸、以及医用病理方面的较多,对产品内表图像进行分析识别、分类的还很少。国内已研制出了具有先进水平的高精度内表检测系统和装置,如何对产品零部件的外形,尺寸进行较高精度测量的激光在线检测系统等,但迄今为止,尚无能对生产出的产品内表面进行自动检测和识别的系统。应用CCD、电子、计算机技术检测内表面的实时自动检测技术在国内正处于刚刚起步的阶段,对内表面图像进行分析识别、分类的软件系统还没有十分完善,现在的识别算法对图像中的疵病部分定位不是很准确,对疵病的范围、大小、方位不能做定量分析,只能作定性分析,精度低,采用的传统的最小距离等分类器在图像复杂且类别多时,很难表示和提取特征,进行图像识别十分困难。
国外关于图像识别中的图像分割,特征信号提取,边缘检测,纹理识别等的算法已经取得了一定的成果,提出了一些新方法,如利用直线分割来识别三维人脸,通过子图匹配法在相邻区域间识别不同目标,用双值微波仿射不变函数识别二维形形状等等,近年来,国外基于图像识别与分类技术的图像检索,人脸识别,字体识别发展十分迅速。
在国外,为提高自动目标识别能力而开发的算法现在正被引入许多侦测和成像系统之中,图像分割、特征信号探测和析取、静止目标的模式识别等方面已取得了很大进步,这一自动目标识别能力大大减轻了操作人员的工作负担。如美国正在加紧自动检测能力与自动目标识别的研究工作,并在硬件能力的基础上开发多种用于信号图像处理的算法和开展各种算法软件的研制,包括相关法(匹配滤波器技术)、自适应多维处理法、基于模型的方法等。
三、数字图像处理的应用
图像是人类获取和交换信息的主要来源,因此,图像处理的应用领域必然涉及到人类生活和工作的方方面面,随着人类活动范围的不断扩大,图像处理的应用领域也将随之不断扩大。
1、航天和航空技术方面的应用
数字图像处理技术在航天和航空技术方面的应用,除了JPL对月球、火星照片的处理之外,另一方面的应用是在飞机遥感和卫星遥感技术中。现在世界各国都在利用陆地卫星所获取的图像进行资源调查,灾害检测,资源勘察,农业规划,城市规划,我国也陆续开展了以上诸方面的一些实际应用,并获得了良好的效果。在气象预报和对太空其它星球研究方面,数字图像处理技术也发挥了相当大的作用。
2、生物医学工程方面的应用
数字图像处理在生物医学工程方面的应用十分广泛,而且很有成效。除了一般的CT技术之外,还有一类是对医用显微图像的处理分析,如红细胞、白细胞分类,染色体分析,癌细胞识别等,此外,在X光肺部图像增晰、超声波图像处理、心电图分析、立体定向放射治疗等医学诊断方面都广泛地应用图像处理技术。
3、通信工程方面的应用
当前通信的主要发展方向是声音、文字、图像和数据结合的多媒体通信。具体地讲是将电话、电视和计算机以三网合一的方式在数字通信网上传输。其中以图像通信最为复杂和困难,因图像的数据量十分巨大,如传送彩色电视信号的速率达100Mbit/s以上,要将这样高速率的数据实时传送出去,必须采用编码技术来压缩信息的比特量。在一定意义上讲,编码压缩是这些技术成败的关键。除了已应用较广泛的熵编码、DPCM编码、变换编码外,目前国内外正在大力开发研究新的编码方法,如分行编码、自适应网络编码、小波变换图像压缩编码等。
4、工业和工程方面的应用
在工业和工程领域中图像处理技术有着广泛的应用,如自动装配线中检测零件的质量、并对零件进行分类,印刷电路板疵病检查,弹性力学照片的应力分析,流体力学图片的阻力和升力分析,邮政信件的自动分拣,在一些有毒、放射性环境内识别工件及物体的形状和排列状态,先进的设计和制造技术中采用工业视觉等等。其中值得一提的是研制具备视觉、听觉和触觉功能的智能机器人,将会给工农业生产带来新的激励,目前已在工业生产中的喷漆、焊接、装配中得到有效的利用。
5、军事公安方面的应用
在军事方面图像处理和识别主要用于导弹的精确末制导,各种侦察照片的判读,具有图像传输、存储和显示的军事自动化指挥系统,飞机、坦克和军舰模拟训练系统等;公安业务图片的判读分析,指纹识别,人脸鉴别,不完整图片的复原,以及交通监控、事故分析等。目前已投入运行的高速公路不停车自动收费系统中的车辆和车牌的自动识别都是图像处理技术成功应用的例子。
6、文化艺术方面的应用
目前这类应用有电视画面的数字编辑,动画的制作,电子图像游戏,纺织工艺品设计,服装设计与制作,发型设计,文物资料照片的复制和修复,运动员动作分析和评分等等,现在已逐渐形成一门新的艺术——计算机美术。
参考文献:
[1]孙即祥 图像压缩与投影重建 北京:科学出版社;2005.7:第一章:1~2,63~64.
[2]韩金姝.基于分形的植物形态模拟与图像压缩技术研究:[硕士论文]. 青岛:中国海洋大学信号与信息处理专业,2005.
篇3
1 图像处理技术
1.1 数字图象处理的特点
随着计算机科学的发展与工控程度的提高,图像处理技术被越来越广泛的运用。在颗粒检测识别领域,图像处理技术有着得天独厚的优势。它减少了单纯的人工操作量,降低了测量过程中的粗糙性。提供了对复杂细微颗粒处理的可行性,加快了分析处理速度并且可以直接或间接的获取人们所需要的信息。实现过程的实时监测和控制。
1.2 煤堆颗粒的图像识别系统框架
图像识别系统主要包括图像采集和图像处理两部分。图像采集主要由图像传感器来完成,图像处理主要由计算机和相应的系统软件来完成。框架如图1。
在煤堆里取样,用粉碎机磨制好煤粒粗样后得到煤的颗粒样本如图2。然后通过CCD图像传感器采集到图像,lunwen. 1KEJI AN. COMlunwen. 1KEJI AN. COM提供写作论文和发表服务,欢迎您的光临进行数字化处理后存入计算机,获取煤粒原始图像。再利用软件对数字图像进行相应处理得到相关图像参数,最后根据所得参数数据分析得出煤粒特性结论。
这里选用CCD传感器来获取数字图像如图3所示。CCD图像传感器是一种特殊的半导体材料又名电荷耦合器[2]。它由大量按矩阵排列的独立光敏元件构成。可直接将光信号转换为电信号,然后电信号经放大和模数转换后,实现图像的获取、存储、传输、处理和复现等操作。由CCD摄像设备采集的光学图像转成模拟信号经图像模数转换器进行数字化后,得到数字图像交由计算机处理。它最显著的优点是噪声低、响应速度快、像素分辨率高等。
1.3 煤堆颗粒图像的数字化处理
在计算机中利用软件对原始颗粒图像(图4)进行预处理。对于一张图像来说,往往需要提取目标物,所以先作灰度变换减少图像噪声,保证图像质量。每一副图像相当于一个矩阵,矩阵的行和列确定图像中的每一个点,矩阵中的元素值对应该点的灰度级。图像矩阵中的每个元素就是像素。颗粒本体灰度值与背景图层灰度值较为均匀,进行灰度变化后效果较好,灰度图有无明显的双峰。灰度变换不足以达到最终效果,需要对图像作二值化处理。手动改变图像阈值,颗粒图像二值化效果发生改变,当观测图像变化效果最为理想时停止改变,确定一个最佳的门限阈值。二值化处理后颗粒如图5。另外也可以选择自适应阈值分割,但是无法同步观察变化过程,且计算量相对较大耗时长,无法达到背景图层与颗粒本体二值化图像最佳效果。
2 煤堆颗粒特性分析
2.1 颗粒的形态描述
从颗粒的形态学切入,分析颗粒粒度及形状。粒度是颗粒在空间范围所占大小的线性尺度。通常表面光滑的球体颗粒的粒度用直径表示,立方体颗粒的粒度用边长表示。对不规则的矿物颗粒,可将与矿物颗粒有相同行为的某一球体直径作为该颗粒的等效直径。对许多取向混乱的颗粒按一定方向测量平均线度的统计作为当量径。由于获取的是颗粒投影图像,则可按二维投影规则对煤粒度进行定义[3]。
2.2 煤堆颗粒粒度相关参数
颗粒面积的计算,通过对图像像素点的统计得到。统计获得颗粒像素的个数后,还需要用一个标准单位来标定。通过比例换算得到目标颗粒实际面积大小。采用逐行扫描的方式对图像中每一个颗粒进行标号确定单个颗粒参数。这样每一个目标颗粒的参数都有一个归属,不容易产生混乱。
颗粒周长的计算可以通过对二值图像中目标物的边缘像素计算获得。依然可以采用顺序逐行扫描的方式对图像进行扫描。对图像边缘像素跟踪累加,统计像素个数可得周长。因此颗粒的当量直径可以根据颗粒粒度定义由面积和周长求得。此外还可以利用计算机图像系统对颗粒进行自定义多方向扫描,获取每一个方向上的粒径值再进行平均。用该平均值对粒径大小作粗估计值,这里并没有对此种方法加以详细证明。
这样就可以根据不同粒径的颗粒物在颗粒总体中所含的百分比来确定粒度分布。此外还可以根据颗粒粒度来进lunwen. 1KEJI AN. COMlunwen. 1KEJI AN. COM提供写作论文和发表服务,欢迎您的光临行颗粒分级,明确颗粒的层次关系。
3 煤堆颗粒与分形理论
3.1 分形理论的定义
分形理论是时下非常流行的新理论。分形理论的最基本特点是用分形分维的数学工具来描述研究客观事物。它跳出了一维的线、二维的面、三维的立体乃至四维时空的传统藩篱[4],更加接近客观事物和复杂系统的真实属性。
3.2 颗粒粒度的分形分析
在颗粒的形态特征中,主要讨论了分形分维的方法。把分形维数作为颗粒形态描述的一个重要角度。分形维数在一定程度上体现了颗粒的某些化学物理特性。实际测定分维的办法有很多,如根据尺度、测度关系、相关函数等。针对颗粒的不同特征可以建立不同的分形模型。对于无规颗粒具有如下分形特征式:
①根据边缘进行分形分析,颗粒的无归边缘曲线可利用盒维数[5]计算得分形维数。与边缘线相交的正方形个数记为盒子数N(如图6盒子数为16),盒子大小为k*k,k即盒子的边长。存在推导关系式:-;D记为分形维数,B为常数。通过推导关系计算拟合数据可得到分形维数D。在对k取值时,k值越小所能取到的盒子数也越多,边缘分形结果越精确。理论上颗粒边缘复杂程度越大,分形维数值越大。边缘分形维数体现颗粒的轮廓曲线特点。这里取了4个不同颗粒样本进行了图像处理后,经过计算分别得出4个样本的分形维数,进行比较。
从表1中可以看出颗粒边缘分形维数变化不是特别明显,原因可能与所取的盒子边长k有关。还需要结合其他形状参数来进行特征描述。说明仅仅利用颗粒边缘分形分维作为煤粉颗粒特性标准描述有待改进。
②根据颗粒粒径分形有关系式:-。是粒径分布分形维数,R是粒径大小,为粒径大于R的颗粒数。同样可以通过拟合数据计算得到颗粒粒径分布分形维数。在选取了3组颗粒图像进行了颗粒粒径分布分形维数计算后得到相关参数如表2。
从表2来看,粒径分布分形很大程度上与颗粒数目有关。分形维数是根据统计粒径R以及对应的颗粒数目N进行拟合后得到的直线斜率。尽可能的选取较多的颗粒图进行计算,分形维数越准确粒径分布分形偏差越小。颗粒粒径与分布分形维数呈负相关关系,粒径越小分布分形维数越大,粒径分布随粒径减小呈现的分形特征越明显,反映煤堆颗粒粒径分布越复杂。
5 结语
对于煤堆颗粒的识别,采用数字图象处理技术能够提高识别检测的速度,同时还可以减小大量人为干预造成的误差,避免检测重复性低等缺点。对于煤炭行业提高燃煤利用率和降低污染有着重要的意义。本文主要通过图像灰度变换、图像分割等方法对煤粒图像做处理。同时结合分形理论进行分析,得到煤堆颗粒粒lunwen. 1KEJI AN. COMlunwen. 1KEJI AN. COM提供写作论文和发表服务,欢迎您的光临径分布分形等参数,说明了颗粒分形的可行性并对煤的颗粒分形特征进行描述。但是在粒度形态识别中只是对二维投影图颗粒粒径做了说明,还可以从形状因子等参数考虑,综合描述颗粒特征。对颗粒分布分形也不完善,需要做进一步研究。此外,如何更好的提取颗粒的边缘轮廓,找到颗粒新的参考特性以及分形与工业分析之间的关系是下一步探讨的方向。
参考文献
[1] 苗春卫,李玉祥,王克家,等.基于数字图像处理的煤粉颗粒检测[J].应用科技,2003(2):1-3.
[2] 青.基于分形理论的大气悬浮颗粒物图像识别[D].武汉:武汉理工大学,2006.
篇4
关键词:高层结构;数字图像测量;水平位移
Abstract:This paper describes the causes of high-level structure of lateral digital image measurement technology works and its advantages, and outlines how it works, and the actual construction of the horizontal displacement of the dynamic monitoring to prove that this new technologypracticality.
Key words: high-level structure; digital image measurement; horizontal displacement
中图分类号:O4-34 文献标识码:A文章编号:2095-2104(2012)
一,引言
数字图像测量技术是利用照相机、摄像机等对景物或者物体进行拍摄得到序列或者单帧数字图像,再应用数字图像处理分析等技术结合各种目标信息的求解和分析算法,对目标结构参数或者运动参数进行测量和估计的理论和技术[1]。近年来正在逐渐被人们所重视,并不断的在工程变形监测中进行尝试,现有的图像测量技术已经基本可实现对目标点的二维位移测量,而且测量精度高,对于大范围变形的目标也能适用,且使用经济,这种技术在桥梁变形测量应用较多[2],目前也逐渐往民用建筑上发展,在钢结构变形监测也有了一定进展[3]。
二、高层结构侧移特性
高层结构在受到外荷载作用,结构在动荷载作用下水平方向的侧移随时间不停变化。随着结构高度增加,水平荷载下结构的侧向变形迅速增大,与结构高度四次方成正比。因此不仅要求结构具有足够的强度,还要求具有足够的抗推刚度,使结构在水平荷载下产生的侧移被控制在某一限度之内[4],否则会产生以下情况:
1,侧移变形过大会使人感觉不舒服,影响使用。
2,侧向变形过大会使填充墙或建筑装修出现裂缝或损坏,也会使电梯轨道变形。
3,侧向变形过大会使主体结构出现裂缝,甚至损坏。
4,侧向变形过大会使结构产生附加内力从而可能引起倒塌,建筑物上竖向荷载在侧向变形时会产生附加弯矩,即P-效应。
因此对高层结构的侧向变形进行监测是非常有必要的。
三,数字图像测量技术原理及特点
数字图像测量技术是基于摄影测量学原理,通过对摄影成像系统拍摄的图像分析计算,得到被测物体在三维空间中的几何参数和运动参数。拍摄的影像是空间物体通过成像系统在像平面上的反映,即三维空间物体在像平面上的投影。数字影像每个像素的灰度反映了空间物体表面对应点的光强度,而该点的图像位置对应了空间物体的表面的几何位置。并且利用数字影像处理技术和数字影像匹配技术获得同名像点的坐标,通过软件自动计算得到对应物点的空间坐标,与初始位置进行比较,即可测量被测目标的变形位移量。通过的摄影测量系统的标定及采用先进的图像处理算法,能够实现亚像素级别的测量精度。目前常采用亚像素定位算法,一般情况下精度为0.1-0.5个像素,理想时可达到0.01个像素左右的精度[5]。
具有以下特性:①可瞬间得到被测物体的点位关系,作业方法有较大的灵活性;②采集的图片信息丰富,显示物体的客观变化,对于规则或不规则的物体变形测量都可使用;③可用于物体外形和运动状态的测定;④测量时,可以不接触物体,不干扰被测物体的自然状态;⑤测量图片利于保存,可随时进行检查,分析及对比;⑥基于严谨的理论知识和先进的硬件软件设备,能提供相当高精度和可靠性的测量结果。
四、测量系统
基于数字图像测量技术的高层结构动态测量系统主要由以下几个部分组成:一、测量头,主要由工业相机和镜头组成,用于实时采集被测目标图像;二、PC平台,带有自主研发的图像处理系统,用于获取测量头采集的图像并处理得到实时数据;三、标志板,放置在被测点处,提高被测目标的可视性;四、千兆网线,连接测量头和PC平台,传递图像数据。这套测量系统的图像采集频率可达30Hz,完全可以满足高层结构的实时动态测量要求。
五、测量方式
根据建筑结构在外界干扰及自身结构作用下变形位移的特点,通过测量关键点在平面内的二维坐标、通过测得得位移变化来描述结构的运动特征。例如高层建筑在外水平荷载作用下,竖直方向的位移非常小,主要是对其水平方向位移进行测量,因此主要任务是获取结构不同高度在水平面内的二维坐标变化。
在需要监测的关键点所在的平面内设置标志板,提高被测目标的可视度。将标志板用人工方式固定在监测点处,保证它能代表监测点的运动姿态,将测量头利用螺栓固定在不动点,对仪器的姿态不作要求,对准标志板,仪器镜头主光轴与标志板平面之间的几何关系没有严格的要求。坐标系统的标定是通过标志板成像的图形和自身的几何尺寸之间的变换将测量头的像平面坐标归算到目标所在的坐标系统,经过图像算法处理,就能得实际的物坐标系结果,即标志板平面上的二维坐标值,得到运动变形量是以仪器架设为基点的数值。测量参数设置、实施及测量数据的获取可在远处数据处理平台上的数据软件中进行操作处理,可直接获取实时测量数据及变形曲线。
六、工程实测数据
该楼位于广州市一住宅小高层,地下为一层地下室,地上为21层,标准层层高为3.3m,结构体系采用框架-剪力墙结构,该工程按7度抗震烈度设防。测量点选在20层一阳台柱子处,高度为70m。自然条件非常适合测量,对测点进行了2分钟左右的同步动态测量,对数据进行分析处理,得到测点的侧移,换算出频谱图。测量得到X、Y方向的位移值和功率谱如下:
图6-1O点X方向位移时程曲线
图6-2O点X方向功率谱
图6-3O点Y方向位移时程曲线
图6-4O点Y方向位移功率谱图
七、结论
这套数字图像测量系统实现了对高层结构的水平位移的实时测量,并得到测量数据结果,测量过程完全可实现数据获取自动化、图表和结果输出的可视化。随着测量系统的进一步完善,其在结构健康监测领域中应用将更加广泛参考文献。
参考文献:
[1] 张祖勋,张剑清.数字摄影测量学[M ].武汉:武汉测绘科技大学出版社,1997.
[2] 梁菲.近景摄影测量在桥梁变形监测中的应用,重庆交通大学,硕士学位论文,2010
[3] 于承新,滕永彪等.数字摄影与计算机技术在实时监测结构变形中的应用。济南大学学报(自然科学版),2001,3(15):232-234
[5] 于起峰,尚洋.摄像测量学原理与应用研究[M].北京:科学出版社,2009.
篇5
关键词:DCT;数字图像水印;离散余弦;鲁棒性
中图分类号:TP309
1 数字水印技术研究的意义
由于科学技术的发展,很多的数字化产品易于加工,非法的复制和拷贝也比较容易,这样严重损坏了数字产品的完整性以及数字产品作者的版权。为了解决这一问题,因而提出了数字水印技术。
数字水印技术,从1993年Caronni正式提出数字水印到现在,无论国内还是国外对数字水印的研究都引起了人们的关注。在国外方面,由于有大公司的介入和美国军方及财政部的支持,虽然在数字水印方面的研究刚起步不久,但该技术研究的发展速度非常快。1998年以来,《IEEE图像处理》、《IEEE会报》、《IEEE通信选题》、《IEEE消费电子学》等许多国际重要期刊都组织了数字水印的技术专刊或专题新闻报道,SPIE和IEEE的一些重要国际会议也开辟了相关的专题。IBM公司、日立公司、NEC公司、Pioneer电子公司和Sony公司等五家公司还宣布联合研究基于信息隐藏的电子水印。国内方面,我国的数字水印技术,也已经取得了一定的研究成果,而且从学术领域的研究成果来看,我国的研究与世界水平相差的并不远,并且有自己的独特研究思路。
数字水印的主要用途可以分为以下几类:(1)版权标识水印。数字水印将各种信息放在各种需要保护的数字产品中,即使经过噪声干扰、滤波、剪切、压缩、旋转等攻击,水印仍可以继续存在。例如Adobe公司在其著名的PS软件Corel Draw图像处理软件中集成了Digimarc公司的数字水印插件。(2)篡改提示水印。检测数字产品是否被修改、伪造等的处理的过程。(3)隐蔽标识水印。在一些数字产品中,可以将数字水印嵌入作一些隐式注释。(4)票据防伪水印。随着现代各种先进输出设备的发展,使得各种票据的伪造变得更加容易,数字水印技术可以增加伪造的难度。因此,研究数字技术非常有必要性。
2 基于DCT数字图像水印技术的研究
2.1 数字水印的概念
数字水印技术是指用信号处理的方法在多媒体数据中嵌入某些能证明版权归属或跟踪侵权行为的隐蔽的信息,这些信息通常是不可见的,不容易被人的知觉系统觉察或注意到,这些隐藏在多媒体内容中的信息只有通过专用的监测器或阅读器才能提取。通过这些隐藏在多媒体内容中的信息,可以达到确认内容创建者,购买者或判断内容是否真实完整的目的。水印系统所隐藏的信息总是与被保护的数字对象或它的所有者有关。
2.2 DCT数字图像水印的基本理论
其中图像二维DCT变换(M取8或16)有许多优点:
图像信号经过变换后,变换系数几乎不相关,经过反变换重构图像信道误差和量化误差将像随机噪声一样分散到块中的各个像素中去,不会造成误差累积,并且变换能将数据块中的能量压缩到为数不多的部分低频系数中去(即DCT矩阵的左上角)。对于给定图像f(m,n)存在两种DCT变换方法:一种是把图像f(m,n)看成一个二维矩阵直接对其进行DCT变换,然后嵌入水印,Cox[3]采用此种方法;另一种方法是与JPEG压缩标准相统一,先把图像分成8*8的不同小块,再分别对每一块进行DCT变换,进而嵌入水印,本文采用后一种方法嵌入水印。
一般数字水印应具有如下的特征:无论经过怎样复杂的操作处理,通过水印算法仍能检测到数字水印作品中的水印能力。即所谓的稳健性;通过水印算法,嵌入水印后不能最终导致图像的质量在视觉上发生明显变化,即视觉的不可感知性;通过数字水印算法能够抵御非授权人的攻击,同时检测可以检测到水印的概率,具有较高的安全性及有效性。
3 基于DCT的数字图像水印算法系统的设计与实现
3.1 MATLAB软件的介绍
MATLAB是目前最强大的编程工具之一,本文将利用MATLAB7.0软件进行基于DCT的数字水印算法的系统的设计和实现。
MATLAB语言简洁紧凑,库函数丰富,程序书写形式自由,运算符丰富,使用方便灵活。MATLAB具有结构化的面向对象编程的特性,可移植性好,且具有较强的图形编辑界面和功能强大的工具箱。同时,MATLAB中的源程序具有开放性,可以通过对其的修改使其变成新的程序。不足之处是,MATLAB的程序执行速度较慢。利用MATLAB研究数字水印技术集成了DCT等函数,方便了研究人员编写源程序,易实现。使用了MATLAB中很多的工具箱。
3.2 基于DCT的数字图像水印算法系统的设计与实现
3.2.1 需求分析
离散余弦变换(Discrete Cosine Transform)简称DCT,基于DCT域的数字水印算法,可以分为两大类,一类是直接对整幅图像进行DCT整体计算,然后嵌入水印。另一类是先将整幅图像分成块,对每一块分别进行DCT计算,最后再嵌入水印。由于分块DCT计算速度比整体DCT计算速度快得多,因此目前DCT域的水印方法大多数是采用的分块DCT方法。
基于DCT的数字图像水印算法系统的设计与实现,可以提供用户一个良好的交互手段,用户可以利用本系统进行水印的嵌入、提取、攻击等,本系统的可交互的,可视化的特点为用户研究基于DCT的数字图像水印算法提供了方便。
3.2.2 系统功能模块设计
(1)水印生成。通常是通过伪随机数发生器或混沌系统来产生水印信号,通常需要对水印进行预处理来适应水印嵌入算法。
(2)水印嵌入。水印嵌入的准则常用的有三种,分别为加法准则、乘法准则、加法乘法混合准则,混合准则近年来引起了人们的广泛关注。
(3)水印提取。指水印被提取出来的过程。
(4)水印检测。水印检测是指判断数字产品中是否存在水印的过程。
3.2.3 系统实现
一个完整水印系统的设计通常包括水印的生成、嵌入、提取和检测四个部分。
通过选取实验图片,点击导入图片,然后进行水印的嵌入,再对嵌入水印的图片进行高斯噪声、滤波、剪切、旋转等攻击实验后,可以继续提取水印,进行水印信号的检测。
(1)嵌入水印的过程。论文采用的是分块DCT算法,水印嵌入步骤如下:
1)将灰度宿主图像分成互不覆盖的8×8的块,然后对每一块都进行DCT变换,得到与宿主图像相同尺寸的DCT域;
2)我们用密钥生成长度为NW的Gaussian白噪声作为水印信号:W~N(0,1);
3)将每个8×8的DCT系数矩阵从每一块的中频段取出((64×Nw)/(M×N))个系数CK(i,j),k=1,2,…Bnum;
4)根据公式W′=W(1+alfa*mark)嵌入水印,其中alfa为尺度因子,mark为水印信息,W为原图象的分块DCT系数。
5)用得到的新的DCT系数对原来位置的DCT系数进行置换。
6)对新的DCT系数矩阵进行DCT反变换,得到了嵌入水印信号后的图像。
4 结束语
本论文是在应用了MATLAB7.0软件,设计和实现了完整的数字图像水印处理系统,包括水印的嵌入、提取与验证过程。所提出的方案均在该系统中进行了验证。
数字水印技术的发展时间虽然不长,但其在版权保护、内容的完整性以及认证方面都做出了一定的贡献。未来,数字水印在知识产权的保护、内容认证等方面会有一个更好的应用前景。我们应该抓住信息时代对于数字版权保护的迫切需求,开发出自己的水印产品。
参考文献:
[1]孙锐,孙洪,姚天任.多媒体水印技术的研究进展与应用[J].系统工程与电子技术,2003,25(6):772-776.
[2]王丙锡,陈琦,邓峰森.数字水印技术[M].西安:西安电子科技大学出版社,2003.
[3]余成波,杨菁,杨如民,周登义.数字信号处理及MATLAB实现[M].北京:清华大学出版社,2005.
[4]王家文,李仰军.MATLAB7.0图形图像处理[M].北京:国防工业出版社,2006.
[5]张问银,梁永全.基于DCT的一种数字图像水印策略[J].山东:山东科技大学学报,2002.
[6]肖力.一种基于DCT域的数字水印的实现[J].鄂州大学学报,2005.
[7]Rafael C.Gonzalez,Richad E.Woods.阮秋琦,阮宇智译.数字图像处理[M].北京:电子工业出版社,2003.
[8]耿永军,朱雪芹.基于离散余弦变换的数字水印算法[J].郑州大学学报,2005.
[9]M.jiang,Z.jiang.A New Searchless Fractal Image Encoding Method Based on Wavelet Decomposition.Proceedings of the 6th World Congress on Intelligent Control and automatiaon,(2006):83-86.
篇6
关键词:隶属度函数 直方图统计量 图像增强
中图分类号:TP391.41 文献标识码:A 文章编号:1007-9416(2015)09-0000-00
1 引言
数字图像增强的主要目的就是采用某种技术手段,要改善图像的视觉效果,将图像转化为更适合于人眼观察和机器分析的形式,以便从图像中获取更有用的信息。根据图像增强技术处理过程所在的空间不同,可分为基于空域的算法和基于频域的算法两大类。基于空域的算法处理时直接对图像灰度级做运算,基于频域的算法是在图像的某种变换域内对图像的变换系数值进行某种修正。本文基于空域的运算,设计一种直方图统计量与模糊集合结合的算法。
模糊集合的概念首次提出于1965年美国加利福尼亚大学扎德教授发表的论文。模糊数学在短短三十多年的时间里已取得了迅速的发展,并日益显示其理论价值和应用价值。尤其在信息处理方面,由于涉及到大量的模糊因素和模糊信息处理问题,模糊数学作为描述和处理具有不确定性的现象和事物的一种数学手段 ,已成功应用于自动控制、图像处理、模式识别、机器视觉等领域。近年来,不少学者致力于把模糊集理论引入图像处理和识别技术的研究中,已取得了显著成果;且实验表明:基于模糊集理论的处理和识别技术,在某些场合应用效果比传统方法更好。
2 基于直方图统计及模糊集合的图像增强算法
2.1 预备知识
80年代中期,Pal等提出了一种图像边缘检测模糊算法(简称 Pal算法),首次将模糊集理论引入到图像的边缘检测算法中。其具体做法是:第一步,利用模糊集理论将图像从灰度数据空间转换为模糊空间,即把图像看成一个模糊点集阵列。一个 , 具有级灰度 的二维图像可表示为:
其中 表示图像象素 具有某种性质的程度为 ,规定 (当 时表示不具有该性质,当 表示绝对地具有该性质),称函数 为该性质的隶属度函数。Pal采用下式作为隶属度函数:
式中 分别称为指数型和倒数型模糊因子。完成了待处理图像到模糊矩阵的映射后,第二步是在模糊空间中通过模糊增强算子对图像做模糊增强处理,以增强边缘两侧象素灰度的对比度,减少图像灰度层次;第三步,将处理结果由模糊空间变换回数据空间,并提取边界。Pal算法的处理效果明显优于传统方法,但该算法在将图像由灰度数据空间转换为模糊空间时,采用复杂的幂函数作为模糊隶属度函数,存在着运算量大、耗时多的缺点。因此,目前对算法的改进应集中在研究如何选取新的、简单的模糊隶属度函数来实现灰度空间到模糊空间的合理转换,以及设计效果更佳的模糊增强算子和快速实现模糊增强过程的方法,以简化计算、提高速度。
因而,构造隶属度函数是用模糊方法处理图像的关键一步,我们将结合图像的直方图统计量进行构造。
设 为一个 ,灰度级为 的数字图像,将 的直方图从0到 排列,分别计算出上四分位数 ,中位数 ,下四分位数 ,并记 表示为四分位距。由统计学知识,处于 及 之间的点称为正常用点,这个区域之外的点称为异常值。我会将利用这些统计量构造隶属度函数。
2.2 算法
Step1: 统计原始图像直方图的相关的统计量。引入两个变量作为暗、亮的临界值,称为暗区上限和亮区下限,分别记以:
(1)
基中 、 分别表示图像 的最小像素和最大像素。在step2中我们将对这两个变量加以说明。
Step2:根据模糊法则。设计出隶属度函数,我们用如下规则说明了灰度级图像对比增强的过程:
(2)
此IF-THEN规则描述了图像增强的总体思路,它们的条件是确定项,结论是模糊项,我们必须用合适的隶属度函数来表示暗、灰和亮这些概念。为此,我们需要确立一个隶属度函数,从而来判断一个像素对于三个条件的隶属度。我们将用 、 和 分别表示暗隶属度、灰隶属度和明隶属度。实际上,隶属度函数的确定是很复杂的,正如Pal所构造的函数计算太大,这里我们则尽量想得简单一点。首先,一个像素 若小于 时,则由定义 小于等于 或 。对于前者,由统计学知识可知 是奇异点,即已经处于暗区(甚至更暗)的范围;对于后者,则说明 为图像 中像素最低的值。由 定义的规则,其隶属度函数必需满足:在低于 的时候域隶属度为1,在灰度越过某一个值(我们取定这个值为 )之后,其隶属度为0,介于这两个值之间,我们进行二次函数插值。因而,我们确定了 规则的隶属度函数 。其次,一个像素如果处于图像中所有像素的中位数,则这个像素的灰度级对于 的隶属度为1,即 ,处于这个值的前后,我们进行线性插值,并由 规定,当处于区间 之外时,得到其隶属度为0。从而,我们确定了 。 的构造的原理与 是相仿。
根据以上讨论,我们所确定的隶属度函数如下所示:
(3)
(4)
(5)
Step3:根据隶属函数变换图像。我们沿袭《Digital Image Processing》中的方法,将隶属函数加权平均,得到如下变换:
(6)
其中 分别表示暗、灰、亮的灰度值,我们可以采用最小灰度值、灰度级中值及最大灰度值代入。
经过上面三个步骤,原图像将“智能”地增强可视效果。我们将在下面的实验中行到验证。
3 实验与小结
下面以Matlab自带的图片pout.tif为例进行实验。为了方便分析该算法的特点,我们将其与传统的直方图均衡化做比较。
Step1:求得 , , ,从而 , ;Step2:将上述结果代入(3)-(5)式,得到隶属度函数 、 、 ;Step3:由于图片灰度级 为,因而可取 ,将其代入(6)式,得到最终的图像变换。利用Matlab编程最终得到如图1图像及对应的直方图:
图1 实验结果及其直方图
从图1 直方图及图像表现可知:原图像主要集中在灰色区域,因而需要增强对比度。对该类型的图像对比度增强,传统的算法是直方图均衡化(在Matlab中有相应的命令histeq()可进行操作)。直方图均衡化具有运算快速、自动化等优点,均衡化的结果是直方图得到最大程度的“分散”,但它的不足是信息量的减少。图像的信息量是用信息熵反映的,其计算由下面公式给出:
其中 表示第 个灰度级在图像中出现的频率。通过实验,我们可以得出新算法的优势:
(1)直方图均衡化是对图像直方图进行“平均”,使其画片各灰度值分布“均匀”,而本算法不仅增强了图像的对比度,而且这种增强是“模糊智能”的:当图像暗区较大(曝光不足)时, 主导发生抑制作用,使图像趋于亮;当图像亮区较大(曝光过足)时, 主导发生抑制作用,使图像趋于暗;当图像灰区较大(对比度不足)时, 主导发生抑制作用,使图像趋于两端(正如本实验所示结果)。
(2)均衡化将失去部分细节,而新算法对信息熵基本保持。对比两种算法的信息熵表1所示:
表1 对比两种算法的信息熵
算法 原图 均衡化 本文算法
信息熵 3.9925 3.7840 3.9921
(3)均衡过的图像虽然也增强了对比图,但直方图的特征发生了变化。对于本算法,从灰度直方图来看,处理后的图像的直方图的动态范围得到了扩展,所得的图像也比原图更加的明亮清晰,图片的一些细节处理的较为妥当,并且最重要的是,保留了原图像直方图的相同的基本特征。
(4)从处理速度上看,该算法自动化,且运算速度较快。传统的模糊图像处理的计算量较大,当处理速度和图像吞吐量是重点考虑的问题时,该模糊算法的体现这一优越性。
参考文献
[1] 冈萨雷斯.数字图像处理[M].北京:电子工业出版社,2003.
[2] 王家文,李仰军.MATLAB7.0图形图像处理[M].北京:国防工业出版社,2003.
[3] 李开端,李树军.基于直方图统计学的图像增强算法研究[J].科学技术与工程,2011(8).
[4] 吴薇.图像处理中的模糊技术[J].现代电子技术,2010(3).
[5] 林海涛.基于模糊关联集合的图像去噪方法[J].软件导刊,2014(8)
收稿日期:2015-08-28
篇7
关键词:图像超分辨率;频域;空域;学习
中图分类号:TP391
由于超分辨率重构技术是采用软件方法来提高图像的空间分辨率,而不需要更换原有的成像设备,使它成为一种有效而又经济的提高图像分辨率的方法。自开始提出到现在,已具有广泛的应用领域,如在计算机视觉、卫星图像中军事目标识别、视频监控系统、生物医学图像处理和视频压缩、民用安防等领域中具有重要的实际应用价值,近年来得到许多学者广泛的关注。
国外超分辨率图像重构研究较为活跃,国内对于超分辨率重建构的研究近年来也逐步引起重视,但主要是对国外超分辨率方法的改进及部分领域的应用,如汪雪林等[1]提出了基于小波域局部高斯模型的图像超分辨率算法;姚振杰等提出一种用于车牌识别的图像超分辨算法[2]等。
1 图像超分辨率重构算法分类
目前,单帧图像的超分辨率研究较少,而多帧图像比单帧图像所含的可利用的信息量大,已经成为目前研究的热点。其重构按实现的具体方法主要可分为频域算法和空域算法
1.1 基于频域的超分辨率重构算法
频域方法是在变换域中解决图像的插值问题,1984年,Tsai和Huang[3]开创性地提出一种基于Fourier变换域的对多帧卫星图像进行超分辨率重构的算法,从本质上解决了高分辨率图像重构无唯一解的问题。Kaltenbacher和Hardie[4]在Tsai的基础上提出一种估计图像整体平移参数的计算方法,在计算整体平移方面的性能比Tsai的方法更为有效。郝鹏威[5]给出了多次欠采样图像在频域混叠的更一般的公式,这一改进具有很强的抗噪能力和收敛性。随后还出现了许多改进算法,但都是基于整体平移运动模型。
频域算法受限于傅立叶变换理论,难以包含先验信息,图像的运动只能是整体平移运动,而且观测模型也不能随意改变,因此频域算法的发展受到了极大地限制。
1.2 基于空域的超分辨率重构算法
空域算法是对影响低分辨率图像成像效果的空域因素(如光学模糊、运动模糊)进行数学建模。空域算法可以包含更为灵活的观测模型和先验知识,更接近于实际应用领域。
(1)基于插值的方法——非均匀采样插值算法
非均匀采样值算法首先是对多帧低分辨率图像进行运动估计,即图像配准。将配准后的低分辨率像素投放到高分辨率栅格上,低分辨率像素在高分辨率网格中是非均匀分布的无序采样值,对这些采样值进行内插,即可得到高分辨率像素值。
非均匀采样值算法优点是算法快速易行,基本可以满足实时要求,但因为不能引入更多有用的高频信息,没有充分的使用先验知识,降质模型有限,所以无法重构出好的高分辨率图像。
(2)迭代反投影(IBP)算法
Irani和Peleg[6]提出了迭代反向投影法。其基本思想是先估计出一帧高分辨率图像,并将此高分辨率图像代入到观测模型;然后经过一系列的降质过程生成低分辨率图像,计算出与输入的低分辨率图像之间的差值并投影到高分辨率图像上,同时根据差值不断更新当前输出图像;再经过多次迭代,误差得到收敛,便可得到相应的高分辨率图像。
IBP算法运算量小,收敛速度较快,不足点是重构结果不唯一,且与凸集投影(POCS)算法比较,难以包含先验知识,实际应用较少。
(3)集合论的方法——凸集投影(POCS)算法
POCS算法最早是Stark[7]从集合投影理论出发提出的超分辨率重构算法,它利用有效的空间观测模型,将成像系统每个先验信息视为对图像重构的结果的一个约束条件,加入这些先验信息,在这些信息的交集内得到一个可行解。POCS算法也是一个迭代过程,只需给定高分辨率图像空间上的任意一点,通过把初始估计迭影到每个凸集 ,最终得到一个能够满足所有集合的解,即重构的高分辨率图像。早在90年代,国外就将POCS算法应用到生物医学图像和视频序列的超分辨率重构模型,并取得了较好的重构效果。
POCS算法可以很便利的加入先验知识,具有较好的图像边缘及细节保持能力,应用较广泛,但是它的解不唯一,收敛速度较慢且不稳定。
(4)统计学方法——最大后验概率(MAP)算法
统计学算法是把高分辨率图像和低分率图像之间的运动都看成是随机的变量。MAP算法中的先验模型非常重要,大多数MAP算法的差别就在于先验模型的选择。如高斯马尔科夫随机场(GMRF)有很多优点,但是用这种方法进行超分辨率重构得到的结果过度平滑,边缘得不到锐化;胡贝尔随机场(HMRF)可以分段平滑,能很好地保持边缘等。基于这些原理,Jin Chen[8]提出了基于GMRF的视频超分辨率重构;Hefnawy等[9]将正则化的MAP算法应用到核磁共振成像上。
最大后验概率算法优势在于可以在解中直接加入先验约束、能确保解的唯一性、降噪能力强和收敛稳定性高等,但是收敛慢、运算量大。另外,MAP算法的边缘保持能力不如POCS算法好,所获得的高分辨率图像上的细节容易被平滑掉。
(5)混合MAP/POCS算法
容易发现,POCS算法与MAP算法可以弥补彼此的缺点,继而出现了MAP/POCS算法。其算法本质是在MAP算法的迭代优化过程中加入一些先验知识,这样可以把全部先验知识有效地结合起来,并且确保唯一解。理论证明,采用梯度下降最优化算法能保证收敛到全局最优解。混合POCS/MAP算法在视频压缩方面应用较多。
混合MAP/POCS算法结合了各自算法的优点,充分利用先验信息,收敛性和稳定性也比较好,是目前重构算法较为理想的算法。
(6)自适应滤波算法
Elad和Feuer[10]把自适应滤波理论用于超分辨率重构。他们[11]还把R-SD和R-LMS算法近似地看作是Kat-rnan滤波,对两者的性能进行了分析,得出两种算法的实用性。自适应滤波方法的缺点是最优滤波方法不能包含先验知识,而且该方法不能包含非线性先验知识。
(7)其他算法
除上面介绍的较为成熟的算法外,还有一些算法在近几年也备受关注。如将规整化算法改进应用到了彩色图象,取得了很好的重构效果[12];小波算法也应用到了视频超分辨率[13,14]、医学核磁共振成像[15]等领域;基于偏微分方程的超分辨率重构算法[16,17]等也在一些领域得到很好地应用。
1.3 基于学习的重构算法
基于学习的超分辨算法目的在于从低频和中频分量信息中恢复高频信息。与前面频域和空域算法相比,基于学习的重构算法更注重对图像的内容和结构的把握,它充分利用与图像本身相关的先验知识,在不增加输入图像样本数量的情况下,提供更强的约束并产生新的高频细节,从而获得更好的重构效果。但是,基于学习的重构算法也有一定的局限性。这种算法所使用的样本图像对放大倍数都是固定的,在实际情况下能达到的放大倍数有限,且基于学习的重构算法的性能训练样本库有极大的依赖性,然而目前还没有相关理论指导样本的选择。
2 结束与展望
全文对超分辨率图像重构算法做了简单分类与比较,系统地分析了超分辨率图像重构算法。目前,超分辨率重构技术在理论和实际应用中都具有重大的意义,因而对超分辨率重构技术的要求越来越高。学者们将不断地迎接新的问题与挑战,如亚像素配准精确性、算法效率的提高、任意倍数的重构以及应用领域的扩展等,这些方面都是未来研究的重点和难点。
参考文献:
[1]汪雪林,文伟,彭思龙,基于小波域局部高斯模型的图像超分辨率[J].中国图象图形学报,2004.
[2]姚振杰,易卫东.一种用于车牌识别的超分辨率算法[J].中国科学院研究生院学报,2013.
[3]R.Y.Tsai and T.S.Huang.Multipleframe image restoration and puter Vision and Image Processing,1984:317-339.
[4]Irani M,Peleg S.Motion analysis for image enhancement.resolution,conclusion,and transparency[J].Journal of Visual Communication and Image Representation,1993,4(4):324-336.
[5]郝鹏威,数字图像空间分辨率改善的方法研究[D].中国科学院遥感应用研究所博士学位论文,1997,9.
[6]Irani M,Peleg S.Improving resolution by image registration.GraphicalModels and Image Proc,1991,53(1):231-239.
[7]Stark H,Oskoui P.High-resolution image recovery from image-plane arrays,Using convex projection[J].Journal of the Optical Society of America,1989,6(11):1715-1726.2012,849-852
[8]Jin Chen,Nunez-Yanez J Achim,A.Video Super-Resolution Using Generalized Gaussian Markov Random Fields.IEEE Signal Processing Society,2012:63-66.
[9]AA Hefnawy.An efficient super-resolution approach for obtaining isotropic 3-D imaging using 2-D multi-slice MRI,Egyptian Informatics Journal,2013.
[10]Elad M,Feuer.Super-resolution restoration of an image Sequence:adaptive filtering appmach[J].IEEE Trans.Image Processing,1999,8(3):387-395.
[11]Elad M.Feuer Super-resolution reconstruction of image sequences[J].IEEE Trans.Pattern Analysis&Machine Intelligence,1999,21(9):817-834.
[12]S.Farsiu,M.Elad,P.Milanfar.Multiframe Demosicing and Super-resolution of color Image.IEEE Trans.Signal Processing,2006,15:141-159.
[13]Chang-Ming Lee,Chien-Jung Lee,Chia-Yung Hsieh,Wen-Nung Lie.Super-resolution reconstruction of video sequences based on wavelet-domain spatial and temporal processing.IEEE,Pattern Recognition (ICPR),2012:194-197.
[14]S.Izadpanahi,H.Demirel.Motion based video super resolution using edge directed interpolation and complex wavelet transform.Signal Processing,2013.
[15]Islam,R.Lambert,A.J.Pickering,M.R.Super resolution OF 3D MRI images using a Gaussian scale mixture model constraint.IEEE,Acoustics,Speech and Signal Processing,2012:849-852.
[16]Shuying Huang,Yong Yang,Guoyu Wang.An Improved PDE Based Super-Resolution Reconstruction Algorithm.Procedia Engineering,2012,29:2838-2842.
[17]Niang O,Thioune A,Gueirea M.C.E,Delechelle E.Partial Differential Equation-Based Approach for Empirical Mode Decomposition:Application on Image Analsis.IEEE Trans,Image Processing,2012,21:3391-4001.
作者简介:孙小霞(1987-),女,安徽芜湖人,研究生,主要研究方向为:数字图像处理;王彦钦,男,博士,研究方向:细微加工,为纳光学和表面等离子体等;罗先刚,男,博士生导师,研究方向:细微加工,为纳光学和表面等离子体等;汪慧兰(1978-),女(通讯作者),副教授,研究方向:数字图像处理。
篇8
中图分类号:TP311文献标识码:A文章编号:1009-3044(2012)12-2882-04
Threshold Citrusimage Segmentation Research and Analysis
WANG Jun, ZHOU Li-juan
(Collegeof Information Science and Technology, Hunan Agricultural University, Changsha 410128, China)
Abstract:Image segmentation is an important and primary problem in the field of computer vision. The thesis puts forward a full set of cit? rus image segmentation algorithm, which adopts improved genetic algorithm combining with improved threshold method. The thesis, through simulation experiment, brings forward threshold scope which is more stable, and makes the image segmentation edges more dedi? cated.
Key words: navel orange; threshold segmentation; classes distance; improved genetic algorithm
图像分割是计算机视觉领域的一个重要而且基本的问题。它在农产品无损检测方面得到了广泛的应用。图像分割算法好坏会直接影响检测系统的准确度。它是从图像处理到图像分析的一个关键步骤。对它的研究一直都是图像技术研究中的热点和焦点之一。但由于图像的特殊性,针对具体图像,针对具体问题,分割算法就不一样,至今还没有找到通用的分割理论,也没有找到对所有图像都适合的通用分割算法。
近几年来,基于遗传算法的图像分割方法得到了很多学者的研究。由于遗传算法在搜索方面具有很强的优势,而图像分割的实质是在众多的参量中去寻找一个最优参量,以此作为分隔的依据。于是如果在图像分割中引入遗传算法去求取最佳阈值,将会大大提高分割效率。
本论文重点对基于传统遗传算法的图像分割算法进行了比较系统的研究。针对传统遗传算法的不足,提出了一些改进措施,并且设计新的阈值确定方法——类类距离法,将两者结合共同运用到脐橙图像分割中,得到了比较好的效果。在最大程度上避免基本遗传算法收敛性差,容易早熟等问题。
1脐橙图像分割
对于脐橙出产大省湖南省,每年脐橙收获完后的分类,分等级进行销售是一项工作量庞大的任务。脐橙表面破损自动检测系统就是基于计算机视觉技术研发而成,其检测的精度较人工挑选有很大提高。该系统中脐橙图像分割算法好坏会直接影响系统检测脐橙表面是否破损的准确度。
通过特定装置获得比较清晰的彩色脐橙图像后,对于表面有破损的脐橙,要进行筛选清理。进行破损部分比对前,要对彩色脐橙图像先进行分割处理。把整幅图像分成脐橙和背景两部分,再提取脐橙部分的图像进行破损分析。这要求将脐橙的边缘和破损部分处理得非常清晰,最大可能的避免将破损区域误分割成图像背景。
2改进的遗传算法
2.1控制参数改进
在遗传算法中,直接影响到算法的收敛性的关键参数是:交叉概率与变异概率,它们的选取会影响到算法行为和性能。在适应度值变换的情况下将交叉概率与变异概率随之调整,以达到保证算法收敛性的目的。于是我们对交叉概率和变异概率按照如下公式进行自动调整:
图5本文提出的算法分割效果图
从表1,图2至图5可以得出以下结论:
1)脐橙图像利用遗传算法来分割,每次运行所得阈值都在变化,但变化的范围不是很大,只是在一定区域做细微波动。这种情况是正常的,也是完全可以接受的,其原因是由于遗传算法随机生产初始种群,这种随机性就带来了阈值的波动性。这也是遗传算法不稳定性的体现。但从表中数据看出采用本文所设计的改进的遗传算法,即交叉概率和变异概率随适应度自动调整,那么分割的图像所得到的阈值,其波动会限制在一个很小的范围以内(稳定在4个像素以内,阈值最大为60,最小为57),这样既保持了群体多样性,又保证了遗传算法的收敛性。同时其稳定性也明显地优于其他算法。
2)利用本文所设计的类类距离遗传算法进行图像分割可以极大减少阈值计算时间,平均运算时间比起其他几个常用方法都缩短了不少,平均仅在2.3s左右。在进化代数相同的条件下,本论文提出的图像分割算法较其他算法更有优势,收敛速度更快。
3)从图2至图5这几个图像分割结果图来看,本文所设计的分割方法中对脐橙图像中的破损部分,边缘轮廓等细节都有非常好的体现,可见结合遗传算法和类类距离法所设计出的图像分割新算法比其他常用算法有很大的优势。
本文通过改变的遗传控制参数结合类类距离法,把改进后的遗传算法应用到脐橙图像分割中去。仿真实验结果表明,此图像分割算法由于所设计的寻找最优阈值的方案比较合理,阈值的计算时间缩短了,使得最终图像分割所用时间明显减少了。同时此方法还做到了将阈值范围稳定在4个像素以内,大大提高了算法全局收敛的稳定性。而且从视觉角度来看,其分割效果更明显,图像边缘处理很细致、清晰。实验证明本论文设计的算法分割图像不仅快速准确,而且还能满足各种图像的实时处理、分析的需求。具有较高的通用性和实用性。
[1]姚敏.数字图像处理[M].北京:机械工业出版社,2006.
[2]孙艳歌,邵罕.基于改进遗传算法的最优阈值图像分割算法[J].信息系统工程,2010,10(6),26-27.
[3]童小念,刘娜.一种基于遗传算法的最优阈值图像分割算法[J].武汉理工大学学报:交通科学与工程版,2008,32(02),301-304.
[4]王强.图像分割中阈值的选取研究及算法实现[J].计算机与现代化.2006(10).54-56.
[5]左奇,史忠科.基于模糊理论的图像分割方法[J].西北工业大学学报,2003,(03):313-316.
[6]劳丽,吴效明,朱学峰.模糊集理论在图像分割中的应用综述[J].中国体视学与图像分析,2006,11(3):200-205.
[7]曹芳,吴迪.基于可见-近红外反射光谱技术的葡萄品种鉴别方法的研究[J].光学学报,2009,29(2),537-540.
篇9
本文所讨论的基于遗传算法的图像分割算法,采用标准遗传算法作为计算流程,但对其中的选择算子进行了改变,用高级选择函数select代替了传统的单一选择算子,使得在每次选择运算后所得的父辈更为健壮,更好的保持了第一代父辈的表现型,使得分割更加精确。通过设计变异概率,使得每次迭代遗传运算后,子代的表现型略有改变,从而更以获得最优的表现型(即最优阈值),减少了迭代寻优次数,降低了程序运行时间。同时考虑到过多迭代不利于降低程序运行时间,以及在寻优过程中的最佳值收敛问题,指定迭代次数为50次时即跳出整个程序,通过反编码求得最优阈值,并通过变量调用,直接应用于下面的分割程序,达到了整个算法的自动完成。
相对于灰度直方图双峰法,本方法对图像的先验信息要求不高,不需要像灰度直方图法那样,先通过获得图像的灰度直方图取得分割阈值后再对图像处理,整个程序的自动化程度高,且对于那些灰度直方图不呈双峰分布的图像,本算法程序一样可以处理,这就扩大了本算法程序的灵活性,从而更具有实际意义。而且,由于灰度直方图双峰法的阈值是通过人眼观察获得,其误差必然大于机器迭代运算所取得的最优阈值,而普通的阈值分割法,如ostu法,虽然实现了阈值的自动选择,但其运算时间与本算法相比偏长,实时性差于本算法。因此,在图像分割算法中,基于遗传算法的图像分割算法更优于其它传统的图像分割算法。
通过上述讨论,以及两种方法的处理结果图片的对比,基于遗传算法的最大类间方差法分割后图像与直方图双峰法分割后的图像像比,效果更明显,且无须事先测量图像的灰度直方图,更加灵活,更加精确。
其相关试验结论列于下表:
基于遗传算法的图象分割实验结论总表:
分割方法
自动化程度
阈值
灰度直方图
计算时间
分割结果
灰度直方图法
无法自动完成
——
基于遗传算法的Ostu法
高
阈值自动指定,阈值M=162,
短于普通Ostu法
普通Ostu法
高
阈值自动指定
偏长
参见参考文章[25]
参 考 文 献
[1]张兆礼,赵春晖,梅晓丹.现代图像处理技术及MAThAB实现.北京:人民邮电出版社,2001.1
[2]陈传波,金先级.数字图像处理[M].北京:机械工业出版社,2004.
[3]夏德深,傅德胜等.现代图象处理技术与应用[M].南京:东南大学出版社,1997.
[4]章毓晋.图象工程(上册)图象处理和分析.北京:清华大学出版社,1999.
[5]王小平,曹立明.遗传算法理论、应用与软件实现.西安:西安交大出版社,2002.
[6]徐立中,数字图像的智能信息处理。北京:国防工业出版社,2001
[7]王耀南,李树涛,毛建旭,计算机图像处理与识别技术,北京:高等教育出版社,2001
[8]雷英杰,张善文,李绪武,周创明.MATLAB遗传算法工具箱及应用,西安:西安电子科技大学出版社
[9]何新贵.模糊知识处理的理论与计算,国防工业出版社,1999
[10]徐建华.图像处理与分析,北京:科学出版,1992.
[11]阮秋琦.数字图象处理学,电子工业出版社,2001
[12]王博等.图像平滑与边缘检测的模糊向量描述,小型微型计算机统,Vol. 20(3), 1999
[13]吴谨,李娟,刘成云,基于最大熵的灰度阈值选取方法,武汉科技大学学报(自然科学版),Vol. 27, No. 1, Mar, 2004
[14]李鉴庆,左坤隆,图像阈值选取的一种快速算法.计算机与现代化,2001年第6期
[15]魏宝刚,鲁东明,潘云鹤等.多颜色空间上的互式图像分割[J].计算机学报,2001, 24 (7):770-775
[16]杜亚勤,基于模糊集的图像边缘检测技术研究:[硕士学位论文].西安:西安工业学院,2004年4月
[17]王保平,基于模糊技术的图像处理方法研究[博士学位论文],西安:西安电子科技大学,2004, 9
[18]杜亚娟,潘泉,周德龙等,图像多级灰度非线性模糊增强算法研究,数据采集与处Vo1.14 No.2
[19]Russ J C, The image processing handbook. New York:CRC Press,1994
[20]L A Zadeh.Fuzzy Sets[J].Information and Contro1,1965, (8):338-353
[21]Lotfi A.Zadeh,A fuzzy-set-theoretic interpretation of linguistic hedges, Journal of Cybernetic, 1972, 64(2):4-34
[22]S. K. Pal, R. A. King. Image Enhancement Using Fuzzy Sets. Electron. Let t.,1980 16 (9):376-378.
[23]S. K. PaI, R. :A. King, On Edge Detection of R-Ray Images Using Fuzzy Sets. IEEE Trans.Patt. Anal and MachineIntell.1983,PAMI-5 (1):69-77.
[24]Otsu N. A Threshold Selection Method From Gray Level Histograms. IEEE Trans on Syst Man Cybernet, 1979, SMC-9:62-66
附 录 附录 一
灰度直方图双峰法分割源代码
clear, close all
B=imread('2.jpg');
%读入原始jpg格式图像
figure(1);
imshow(B),title('原始jpg格式图像');
I1=rgb2gray(B);
%将原图像转化为灰度图象
figure(2);
imshow(I1),title('灰度格式图像');
[I1,map1]=gray2ind(I1,255);
%将灰度图像转化为索引图像
figure(3), imhist(I1)
%画出灰度直方图,以判断域值
I1=double(I1);
%将unit8数组转化为double型数组
Z=I1
%将double型数组I1转存到Z中
[m, n]=size(Z);
for i=1:m
for j=1:n
if Z(i,j)>240
%灰度值大于域值时是白色
Z(i,j)=256;
end
end
end
figure(4)
%画出分割后目标图像
image(Z),title('分割后图像');colormap(map1);
图像I图像格式转化及灰度直方图双峰法分割源代码
clear, close all
B=imread('she.jpg');
%读入原始jpg格式图像she
figure(1);
imshow(B),title('原始jpg格式图像');
I1=rgb2gray(B);
%将原图像转化为灰度图象
figure(2);
imshow(I1),title('灰度格式图像');
[I1,map1]=gray2ind(I1,255);
%将灰度图像转化为索引图像
figure(3), imhist(I1)
%画出灰度直方图,以判断域值
I1=double(I1);
%将unit8数组转化为double型数组
Z=I1
%将double型数组I1转存到Z中
[m, n]=size(Z);
for i=1:m
for j=1:n
if Z(i,j)>240
%灰度值大于域值时是白色
Z(i,j)=256;
end
end
end
figure(4)
%画出分割后目标图像
image(Z),title('分割后图像');colormap(map1);
图像II图像格式转化及灰度直方图双峰法分割源代码
clear, close all
B=imread('she.jpg');
%读入原始jpg格式图像月亮
figure(1);
imshow(B),title('原始jpg格式图像');
I1=rgb2gray(B);
%将原图像转化为灰度图象
figure(2);
imshow(I1),title('灰度格式图像');
[I1,map1]=gray2ind(I1,255);
%将灰度图像转化为索引图像
figure(3), imhist(I1)
%画出灰度直方图,以判断域值
I1=double(I1);
%将unit8数组转化为double型数组
Z=I1
%将double型数组I1转存到Z中
[m, n]=size(Z);
for i=1:m
for j=1:n
if Z(i,j)>240
%灰度值大于域值时是白色
Z(i,j)=256;
end
end
end
figure(4)
%画出分割后目标图像
image(Z),title('分割后图像');colormap(map1);
附录 二
Crtbp 函数源代码:(由谢菲尔德大学Andrew Chipperfield编写)
% CRTBP.m - Create an initial population%
% This function creates a binary population of given size and structure.
%
% Syntax: [Chrom Lind BaseV] = crtbp(Nind, Lind, Base)
%
% Input Parameters:
%
%
Nind
- Either a scalar containing the number of inpiduals
%
in the new population or a row vector of length two
%
containing the number of inpiduals and their length.
%
%
Lind
- A scalar containing the length of the inpidual
%
chromosomes.
%
%
Base
- A scalar containing the base of the chromosome
%
elements or a row vector containing the base(s)
%
of the loci of the chromosomes.
%
% Output Parameter
s:
%
%
Chrom
- A matrix containing the random valued chromosomes
%
row wise.
%
%
Lind - A scalar containing the length of the chromosome.
%
%
BaseV
- A row vector containing the base of the
%
chromosome loci.
% Author: Andrew Chipperfield
% Date: 19-Jan-94
function [Chrom, Lind, BaseV] = crtbp(Nind, Lind, Base)
nargs = nargin ;
% Check parameter consistency
if nargs >= 1, [mN, nN] = size(Nind) ; end
if nargs >= 2, [mL, nL] = size(Lind) ; end
if nargs == 3, [mB, nB] = size(Base) ; end
if nN == 2
if (nargs == 1)
Lind = Nind(2) ; Nind = Nind(1) ; BaseV = crtbase(Lind) ;
elseif (nargs == 2 & nL == 1)
BaseV = crtbase(Nind(2),Lind) ; Lind = Nind(2) ; Nind = Nind(1) ;
elseif (nargs == 2 & nL > 1)
if Lind ~= length(Lind), error('Lind and Base disagree'); end
BaseV = Lind ; Lind = Nind(2) ; Nind = Nind(1) ;
end
elseif nN == 1
if nargs == 2
if nL == 1, BaseV = crtbase(Lind) ;
else, BaseV = Lind ; Lind = nL ; end
elseif nargs == 3
if nB == 1, BaseV = crtbase(Lind,Base) ;
elseif nB ~= Lind, error('Lind and Base disagree') ;
else BaseV = Base ; end
end
else
error('Input parameters inconsistent') ;
end
% Create a structure of random chromosomes in row wise order, dimensions
% Nind by Lind. The base of each chromosomes loci is given by the value
% of the corresponding element of the row vector base.
Chrom = floor(rand(Nind,Lind).*BaseV(ones(Nind,1),:)) ;
% End of file
附录 三
Bs2rv函数源代码: (由谢菲尔德大学Andrew Chipperfield编写)
% BS2RV.m - Binary string to real vector
%
% This function decodes binary chromosomes into vectors of reals. The
% chromosomes are seen as the concatenation of binary strings of given
% length, and decoded into real numbers in a specified interval using
% either standard binary or Gray decoding.
%
% Syntax:
Phen = bs2rv(Chrom,FieldD)
%
% Input parameters:
%
%
Chrom
- Matrix containing the chromosomes of the current
%
population. Each line corresponds to one
%
inpidual's concatenated binary string
%
representation. Leftmost bits are MSb and
%
rightmost are LSb.
%
%
FieldD - Matrix describing the length and how to decode
%
each substring in the chromosome. It has the
%
following structure:
%
%
[len;
(num)
%
lb;
(num)
%
ub;
(num)
%
code;
(0=binary
| 1=gray)
%
scale;
(0=arithmetic | 1=logarithmic)
%
lbin;
(0=excluded | 1=included)
%
ubin];
(0=excluded | 1=included)
%
%
where
%
len - row vector containing the length of
%
each substring in Chrom. sum(len)
%
should equal the inpidual length.
%
lb,
%
ub
- Lower and upper bounds for each
%
variable.
%
code - binary row vector indicating how each
%
substring is to be decoded.
%
scale - binary row vector indicating where to
%
use arithmetic and/or logarithmic
%
scaling.
%
lbin,
%
ubin - binary row vectors indicating whether
%
or not to include each bound in the
%
representation range
%
% Output parameter:
%
%
Phen
- Real matrix containing the population phenotypes.
%
% Author: Carlos Fonseca, Updated: Andrew Chipperfield
% Date: 08/06/93,
Date: 26-Jan-94
function Phen = bs2rv(Chrom,FieldD)
% Identify the population size (Nind)
%
and the chromosome length (Lind)
[Nind,Lind] = size(Chrom);
% Identify the number of decision variables (Nvar)
[seven,Nvar] = size(FieldD);
if seven ~= 7
error('FieldD must have 7 rows.');
end
% Get substring properties
len = FieldD(1,:);
lb = FieldD(2,:);
ub = FieldD(3,:);
code = ~(~FieldD(4,:));
scale = ~(~FieldD(5,:));
lin = ~(~FieldD(6,:));
uin = ~(~FieldD(7,:));
% Check substring properties for consistency
if sum(len) ~= Lind,
error('Data in FieldD must agree with chromosome length');
end
if ~all(lb(scale).*ub(scale)>0)
error('Log-scaled variables must not include 0 in their range');
end
% Decode chromosomes
Phen = zeros(Nind,Nvar);
lf = cumsum(len);
li = cumsum([1 len]);
Prec = .5 .^ len;
logsgn = sign(lb
(scale)); lb(scale) = log( abs(lb(scale)) );
ub(scale) = log( abs(ub(scale)) );
delta = ub - lb;
Prec = .5 .^ len;
num = (~lin) .* Prec;
den = (lin + uin - 1) .* Prec;
for i = 1:Nvar,
idx = li(i):lf(i);
if code(i) % Gray decoding
Chrom(:,idx)=rem(cumsum(Chrom(:,idx)')',2);
end
Phen(:,i) = Chrom(:,idx) * [ (.5).^(1:len(i))' ];
Phen(:,i) = lb(i) + delta(i) * (Phen(:,i) + num(i)) ./ (1 - den(i));
end
expand = ones(Nind,1);
if any(scale)
Phen(:,scale) = logsgn(expand,:) .* exp(Phen(:,scale));
end
附录 四
适应度函数target源代码:
function f=target(T,M)
%适应度函数,T为待处理图像,M为域值序列
[U, V]=size(T);
W=, , length(M);
f=zeros(W,1);
for k=1:W
I=0;s1=0;J=0;s2=0;
%统计目标图像和背景图像的像素数及像素之和
for i=1:U
for j=1:V
if T(i,j)
s1=s1+T(i,j);I=I+1;
end
if T(i,j)>M(k)
s2=s2+T(i,j);J=J+1;
end
end
end
if I==0, p1=0; else p1=s1/I; end
if J==0, p2=0; else p2=s2/J; end
f(k)=I*J*(p1-p2)*(p1-p2)/(256*256);
end
附录 五
选择函数Select源代码:(由谢菲尔德大学Hartmut Pohlheim编写)
% SELECT.M
(universal SELECTion)
%
% This function performs universal selection. The function handles
% multiple populations and calls the low level selection function
% for the actual selection process.
%
% Syntax: SelCh = select(SEL_F, Chrom, FitnV, GGAP, SUBPOP)
%
% Input parameters:
%
SEL_F
- Name of the selection function
%
Chrom
- Matrix containing the inpiduals (parents) of the current
%
population. Each row corresponds to one inpidual.
%
FitnV
- Column vector containing the fitness values of the
%
inpiduals in the population.
%
GGAP
- (optional) Rate of inpiduals to be selected
%
if omitted 1.0 is assumed
%
SUBPOP
- (optional) Number of subpopulations
%
if omitted 1 subpopulation is assumed
%
% Output parameters:
%
SelCh
- Matrix containing the selected inpiduals.
% Author:
Hartmut Pohlheim
% History:
10.03.94
file created
function SelCh = select(SEL_F, Chrom, FitnV, GGAP, SUBPOP);
% Check parameter consistency
if nargin < 3, error('Not enough input parameter'); end
% Identify the population size (Nind)
[NindCh,Nvar] = size(Chrom);
[NindF,VarF] = size(FitnV);
if NindCh ~= NindF, error('Chrom and FitnV disagree'); end
if VarF ~= 1, error('FitnV must be a column vector'); end
if nargin < 5, SUBPOP = 1; end
if nargin > 4,
if isempty(SUBPOP), SUBPOP = 1;
elseif isnan(SUBPOP), SUBPOP = 1;
elseif length(SUBPOP) ~= 1, error('SUBPOP must be a scalar'); end
end
if (NindCh/SUBPOP) ~= fix(NindCh/SUBPOP), error('Chrom and SUBPOP disagree'); end
Nind = NindCh/SUBPOP; % Compute number of inpiduals per subpopulation
if nargin < 4, GGAP = 1; end
if nargin > 3,
if isempty(GGAP), GGAP = 1;
elseif isnan(GGAP), GGAP = 1;
elseif length(GGAP) ~= 1, error('GGAP must be a scalar');
elseif (GGAP < 0), error('GGAP must be a scalar bigger than 0'); end
end
% Compute number of new inpiduals (to select)
NSel=max(floor(Nind*GGAP+.5),2);
% Select inpiduals from population
SelCh = [];
for irun = 1:SUBPOP,
FitnVSub = FitnV((irun-1)*Nind+1:irun*Nind);
ChrIx=feval(SEL_F, FitnVSub, NSel)+(irun-1)*Nind;
SelCh=[SelCh; Chrom(ChrIx,:)];
end
% End of function
附录 六
交叉函数recombin的源代码:(由谢菲尔德大学Hartmut Pohlheim编写)
% RECOMBIN.M
(RECOMBINation high-level function)
%
% This function performs recombination between pairs of inpiduals
% and returns the new inpiduals after mating. The function handles
% multiple populations and calls the low-level recombination function
% for the actual recombination process.
%
% Syntax: NewChrom = recombin(REC_F, OldChrom, RecOpt, SUBPOP)
%
% Input parameters:
%
REC_F
- String containing the name of the recombination or
%
crossover function
%
Chrom
- Matrix containing the chromosomes of the old
%
population. Each line corresponds to one inpidual
%
RecOpt
- (optional) Scalar containing the probability of
%
recombination/crossover occurring between pairs
%
of inpiduals.
%
if omitted or NaN, 1 is assumed
%
SUBPOP
- (optional) Number of subpopulations
%
if omitted or NaN, 1 subpopulation is assumed
%
% Output parameter:
%
NewChrom - Matrix containing the chromosomes of the population
%
after recombination in the same format as OldChrom.
% Author:
Hartmut Pohlheim
% History: 18.03.94
file created
function NewChrom = recombin(REC_F, Chrom, RecOpt, SUBPOP);
% Check parameter consistency
if nargin < 2, error('Not enough input parameter'); end
% Identify the population size (Nind)
[Nind,Nvar] = size(Chrom);
if nargin < 4, SUBPOP = 1; end
if nargin > 3,
if isempty(SUBPOP), SUBPOP = 1;
elseif isnan(SUBPOP), SUBPOP = 1;
elseif length(SUBPOP) ~= 1, error('SUBPOP must be a scalar'); end
end
if (Nind/SUBPOP) ~= fix(Nind/SUBPOP), error('Chrom and SUBPOP disagree'); end
Nind = Nind/SUBPOP; % Compute number of inpiduals per subpopulation
if nargin < 3, RecOpt = 0.7; end
if nargin > 2,
if isempty(RecOpt), RecOpt = 0.7;
elseif isnan(RecOpt), RecOpt = 0.7;
elseif length(RecOpt) ~= 1, error('RecOpt must be a scalar');
elseif (RecOpt < 0 | RecOpt > 1), error('RecOpt must be a scalar in [0, 1]'); end
end
% Select inpiduals of one subpopulation and call low level function
NewChrom = [];
for irun = 1:SUBPOP,
ChromSub = Chrom((irun-1)*Nind+1:irun*Nind,:);
NewChromSub = feval(REC_F, ChromSub, RecOpt);
NewChrom=[NewChrom; NewChromSub];
end
% End of function
附录 七
变异函数mut源代码 :(由谢菲尔德大学Andrew Chipperfield编写)
% MUT.m
%
% This function takes the representation of the current population,
% mutates each element with given probability and returns the resulting
% population.
%
% Syntax:
NewChrom = mut(OldChrom,Pm,BaseV)
%
% Input parameters:
%
%
OldChrom - A matrix containing the chromosomes of the
%
current population. Each row corresponds to
%
an inpiduals string representation.
%
%
Pm - Mutation probability (scalar). Default value
%
of Pm = 0.7/Lind, where Lind is the chromosome
%
length is assumed if omitted.
%
%
BaseV
- Optional row vector of the same length as the
%
chromosome structure defining the base of the
%
inpidual elements of the chromosome. Binary
%
representation is assumed if omitted.
%
% Output parameter:
%
%
NewChrom - A Matrix containing a mutated version of
%
OldChrom.
%
% Author: Andrew Chipperfield
% Date: 25-Jan-94
function NewChrom = mut(OldChrom,Pm,BaseV)
% get population size (Nind) and chromosome length (Lind)
[Nind, Lind] = size(OldChrom) ;
% check input parameters
if nargin < 2, Pm = 0.7/Lind ; end
if isnan(Pm), Pm = 0.7/Lind; end
if (nargin < 3), BaseV = crtbase(Lind); end
if (isnan(BaseV)), BaseV = crtbase(Lind); end
if (isempty(BaseV)), BaseV = crtbase(Lind); end
if (nargin == 3) & (Lind ~= length(BaseV))
error('OldChrom and BaseV are incompatible'), end
% create mutation mask matrix
BaseM = BaseV(ones(Nind,1),:) ;
% perform mutation on chromosome structure
NewChrom = rem(OldChrom+(rand(Nind,Lind)
附录 八
基于遗传算法的最大类间方差法对JPG格式图像分割的程序源代码:
clear, close all
B=imread('she.jpg');
%读入原始jpg格式图像
figure(1);
imshow(B),title('原始jpg格式图像');
I1=rgb2gray(B);
%将原图像转化为灰度图象
figure(2);
imshow(I1),title('灰度格式图像');
BW1 = edge(I1,'sobel');
BW2 = edge(I1,'canny');
figure(6),imshow(BW1),title('边缘检测1');
%边缘检测
figure(5), imshow(BW2),title('边缘检测2');
[I1,map1]=gray2ind(I1,255);
%将灰度图像转化为索引图像
I1=double(I1);
%将unit8数组转化为double型数组
Z=I1
%将double型数组I1转存到Z中
figure(3)
%画出未进行分割的原始图像
image(Z),title('未进行分割的原始图像');colormap(map1);
NIND=40;
%个体
数目(Number of inpiduals)
MAXGEN=50;
%最大遗传代数(Maximum number of generations)
PRECI=8;
%变量的二进制位数(Precision of variables)
GGAP=0.9;
%代沟(Generation gap)
FieldD=[8;1;256;1;0;1;1];
%建立区域描述器(Build field descriptor)
Chrom=crtbp(NIND,PRECI);
%创建初始种群
gen=0;
phen=bs2rv(Chrom,FieldD);
%初始种群十进制转换
ObjV=target(Z,phen);
%计算种群适应度值
while gen
%代沟(Generation gap)
FitnV=ranking(-ObjV);
%分配适应度值(Assign fitness values)
SelCh=select('sus',Chrom,FitnV,GGAP);
%选择
SelCh=recombin('xovsp',SelCh,0.7);
%重组
SelCh=mut(SelCh);
%变异
phenSel=bs2rv(SelCh,FieldD);
%子代十进制转换
ObjVSel=target(Z,phenSel);
[Chrom ObjV]=reins(Chrom,SelCh,1,1,ObjV,ObjVSel);
%重插入
gen=gen+1;
end
[Y, I]=max(ObjV);
M=bs2rv(Chrom(I,:),FieldD);
%估计域值
[m, n]=size(Z);
for i=1:m
for j=1:n
if Z(i,j)>M
%灰度值大于域值时是白色
Z(i,j)=256;
end
end
end
figure(4)
%画出分割后目标图像
image(Z),title('分割后图像');colormap(map1);
target求适应度函数代码:
function f=target(T,M)
%适应度函数,T为待处理图像,M为域值序列
[U, V]=size(T);
W=length(M);
f=zeros(W,1);
for k=1:W
I=0;s1=0;J=0;s2=0;
%统计目标图像和背景图像的像素数及像素之和
for i=1:U
for j=1:V
if T(i,j)
s1=s1+T(i,j);I=I+1;
end
if T(i,j)>M(k)
s2=s2+T(i,j);J=J+1;
end
end
end
if I==0, p1=0; else p1=s1/I; end
if J==0, p2=0; else p2=s2/J; end
篇10
高校开展大学生领导力教育的分析和思考
基于熵的高校大学生毕业论文(设计)质量的模糊综合评价法
基于CDIO理论的工程教育模式探讨——以车辆工程专业为例
基于产业发展的高校学科结构优化设计
高校双语教学评价体系的建构探索
社会主义核心价值视域下的高校思想政治理论课教学
技术站能力查定数据处理与计算的实验教学平台的构建
微机原理与接口技术课程教学方法探讨
本科生班导师工作探索与实践
道路运输组织课程教学中存在的问题及改进措施
高校教学评价的内容构成与评价方法探讨
无机化学教学改革初探
基于自制远程测控实验系统的“智能仪器”课程实验教学探索
如何有效发挥汉语言文学在理工类大学人文通识课程教学中的作用
现代测试技术及应用课程教学改革探索
大学二年级建筑设计课程教学改革探讨——以建筑系馆设计课程为例
热能与动力工程专业课的教学改革探讨
高职院校人才培养应体现区域特色
竞技啦啦队教学与训练中的运动损伤调查及预防研究
教育经济学研究的理论拓展及其进一步发展
属性识别理论在高校贫困生困难等级评价认定中的应用
国际科技学术论文与国内硕博论文英文摘要主位结构的对比研究
浅谈虚拟学习环境及其在当代教育中的应用
分享资源共赢发展——麻省理工学院“公开课程材料”计划对我国英语教育资源共享的启示
大学生就业能力解析及就业能力提升策略——基于SWOT理论的视角
高校毕业生就业见习制度的实证调查与法律分析
中介组织参与高校毕业生就业统计的必要性及相关问题探讨
对高校辅导员兼职承担思想政治理论课教学工作的思考
本科计量经济学课程教学改革探讨
中美法学教育教学方法比较
提高经管类本科专业经济法课程教学质量的几点建议
应用化学专业化工基础课程教学改革的探索
关于强化高校金融类课程实践教学的思考——基于西华大学经济与贸易学院“外汇交易模拟实习”课程教学经验
基于日语新闻广播语体特点谈日语新闻听力教学策略
关于在机械类专业课程中实施有效教学的若干探讨
比较教学法在“给水工程”教学中的应用
从Sturm-Liouville问题谈分离变量法的教学改进
法理学本科教学的困境与出路
工程管理专业工程施工课程教学改革的探索
加强课程建设提高教学质量
四川民办高等教育的回顾与展望
论四川高等教育改革发展的历史成就及主要问题
民办高校产权归属的国际比较及对我国的启示
美国联邦政府大学生资助理念探究
思想政治教育内容的文化解读
高校校园网应成为校风学风建设的前沿阵地
大学生和谐人格建构的德育机制分析
财经类专业型高层次人才应用能力培养的探索
“3+1”:一种先进的人才培养模式
地方高校教学质量监控体系的探索与实践
高校教师教学质量评价与监控保障机制优化
本科论文教学质量评价指标体系研究
我校与东汽合作的重点科技攻关项目获省科技进步二等奖
中国近代文化史公选课教学改革的思考
市场调研课程教学改革初探:面向实践导向
基于应用型人才培养目标的财务管理教学改革的探讨
基于MATLAB的数字图像处理课程的教学实验设计