﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-君子性非异也，善假于物也。-文章分类-数字图像</title><link>http://www.cppblog.com/xushaohua/category/2628.html</link><description>如有恒，何须三更起，半夜眠；最怕莫，三天打鱼两天晒网，竹篮打水一场空！</description><language>zh-cn</language><lastBuildDate>Tue, 27 May 2008 22:33:16 GMT</lastBuildDate><pubDate>Tue, 27 May 2008 22:33:16 GMT</pubDate><ttl>60</ttl><item><title>[转]浅谈图像处理方向的就业前景</title><link>http://www.cppblog.com/xushaohua/articles/17333.html</link><dc:creator>shaohua</dc:creator><author>shaohua</author><pubDate>Fri, 05 Jan 2007 09:14:00 GMT</pubDate><guid>http://www.cppblog.com/xushaohua/articles/17333.html</guid><wfw:comment>http://www.cppblog.com/xushaohua/comments/17333.html</wfw:comment><comments>http://www.cppblog.com/xushaohua/articles/17333.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/xushaohua/comments/commentRss/17333.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/xushaohua/services/trackbacks/17333.html</trackback:ping><description><![CDATA[
		<span class="javascript" id="text501501">最近版上有不少人在讨论图像处理的就业方向，似乎大部分都持悲观的态度。我想结合我今年找工作的经验谈谈我的看法。<br /><br />就我看来，个人觉得图像处理的就业还是不错的。首先可以把图像看成二维、三维或者更高维的信号，从这个意义上来说，图像处理是整个信号处理里面就业形势最好的，因为你不仅要掌握（一维）信号处理的基本知识，也要掌握图像处理（二维或者高维信号处理）的知识。其次，图像处理是计算机视觉和视频处理的基础，掌握好了图像处理的基本知识，就业时就可以向这些方向发展。目前的模式识别，大部分也都是图像模式识别。在实际应用场合，采集的信息很多都是图像信息，比如指纹、条码、人脸、虹膜、车辆等等。说到应用场合，千万不能忘了医学图像这一块，如果有医学图像处理的背景，去一些医疗器械公司或者医疗软件公司也是不错的选择。图像处理对编程的要求比较高，如果编程很厉害，当然就业也多了一个选择方向，并不一定要局限在图像方向。<br /><br />下面谈谈我所知道的一些公司信息，不全，仅仅是我所了解到的或者我所感兴趣的，实际远远不止这么多。<br /><br />搜索方向<br />基于内容的图像或视频搜索是很多搜索公司研究的热点。要想进入这个领域，必须有很强的编程能力，很好的图像处理和模式识别的背景。要求高待遇自然就不错，目前这方面的代表公司有微软、google、yahoo和百度，个个鼎鼎大名。<br /><br />医学图像方向<br />目前在医疗器械方向主要是几个大企业在竞争，来头都不小，其中包括Simens、GE、飞利浦和柯达，主要生产CT和MRI等医疗器材。由于医疗器械的主要功能是成像，必然涉及到对图像的处理，做图像处理的很有机会进入这些公司。它们在国内都设有研发中心，simens的在上海和深圳，GE和柯达都在上海，飞利浦的在沈阳。由于医疗市场是一个没有完全开发的市场，而一套医疗设备的价格是非常昂贵的，所以在这些地方的待遇都还可以，前景也看好。国内也有一些这样的企业比如深圳安科和迈瑞<br /><br />计算机视觉和模式识别方向<br />我没去调研过有哪些公司在做，但肯定不少，比如指纹识别、人脸识别、虹膜识别。还有一个很大的方向是车牌识别，这个我倒是知道有一个公司高德威智能交通似乎做的很不错的样子。目前视频监控是一个热点问题，做跟踪和识别的可以在这个方向找到一席之地。<br />上海法视特位于上海张江高科技园区，在视觉和识别方面做的不错。北京的我也知道两个公司：大恒和凌云，都是以图像作为研发的主体。<br /><br />视频方向<br />一般的高校或者研究所侧重在标准的制定和修改以及技术创新方面，而公司则侧重在编码解码的硬件实现方面。一般这些公司要求是熟悉或者精通MPEG、H.264或者AVS，选择了这个方向，只要做的还不错，基本就不愁饭碗。由于这不是我所感兴趣的方向，所以这方面的公司的信息我没有收集，但平常在各个bbs或者各种招聘网站经常看到。<br />我所知道的两个公司：诺基亚和pixelworks<br /><br />其他<br />其实一般来说，只要涉及到成像或者图像的基本都要图像处理方面的人。比方说一个成像设备，在输出图像之前需要对原始图像进行增强或者去噪处理，存储时需要对图像进行压缩，成像之后需要对图像内容进行自动分析，这些内容都是图像处理的范畴。下面列举一些与图像有关或者招聘时明确说明需要图像处理方面人才的公司：<br />上海豪威集成电路有限公司（www.ovt.com.cn）<br />中芯微<br />摩托罗拉上海研究院<br />威盛（VIA）<br />松下<br />索尼<br />清华同方<br />三星<br />所有与图像（静止或者运动图像）有关的公司都是一种选择。比如数码相机、显微镜成像、超声成像、工业机器人控制、显示器、电视、遥感等等，都可以作为求职方向。<br /><br />要求：<br />1、外语。如果进外企，外语的重要性不言而喻。一般外企的第一轮面试都是英语口语面试。<br />2、编程。这方面尤以C＋＋为重，很多公司的笔试都是考c＋＋知识。<br />3、专业水平。如果要找专业相关的工作，研究生期间的研究经历和发表的论文就显的比较重要。<br />4、知识面的宽度。我觉得在研究生期间，除了做好自己的研究方向之外，扩宽一下知识面也有很大的帮助，当然这个知识面指的是图像处理、计算机视觉和模式识别，知识面越宽，就业时的选择就会越多。<br /><br />图像处理方向毕业的就业面非常广，而且待遇在应届生应该是中上等。其实还是一句话，能力决定一切。只要研究生三年没有白过，根本不愁找不到好工作。祝所有正在读研或者即将读研的朋友将来都能有一份满意的工作。 </span>
		<br />
<img src ="http://www.cppblog.com/xushaohua/aggbug/17333.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/xushaohua/" target="_blank">shaohua</a> 2007-01-05 17:14 <a href="http://www.cppblog.com/xushaohua/articles/17333.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[转]图像处理网络资源</title><link>http://www.cppblog.com/xushaohua/articles/17332.html</link><dc:creator>shaohua</dc:creator><author>shaohua</author><pubDate>Fri, 05 Jan 2007 09:07:00 GMT</pubDate><guid>http://www.cppblog.com/xushaohua/articles/17332.html</guid><wfw:comment>http://www.cppblog.com/xushaohua/comments/17332.html</wfw:comment><comments>http://www.cppblog.com/xushaohua/articles/17332.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/xushaohua/comments/commentRss/17332.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/xushaohua/services/trackbacks/17332.html</trackback:ping><description><![CDATA[
		<p>
				<span class="javascript" id="text352505">作图像处理方面的研究工作，最重要的两个问题：其一是要把握住国际上最前<br /><br />沿的内容；其二是所作工作要具备很高的实用背景。解决第一个问题的办法就<br /><br />是找出这个方向公认最牛的几个超级大拿(看看他们都在作什么)和最权威的<br /><br />出版物(阅读上面最新的文献)，解决第二个问题的办法是你最好能够找到一个<br /><br />实际应用的项目，边做边写文章。 <br /><br />做好这几点的途径之一就是充分利用网络资源，特别是权威网站和大拿们的个人主页。下面是我收集的一些资源，希望对大家有用。(这里我要感谢SMTH AI版的alamarik和Graphics版的faintt) <br /><br />导航栏： <br /><br />[1]研究群体<br />[2]大拿主页<br />[3]前沿期刊<br />[4]GPL软件资源<br />[5]搜索引擎<br /><br />一、研究群体<br /><a class="ilink" href="http://www-2.cs.cmu.edu/~cil/vision.html" target="_blank">http://www-2.cs.cmu.edu/~cil/vision.html</a><br />这是卡奈基梅隆大学的计算机视觉研究组的主页，上面提供很全的资料，从发表文章的下载到演示程序、测试图像、常用链接、相关软硬件，甚至还有一个搜索引擎。 <br /><br /><a class="ilink" href="http://www.cmis.csiro.au/IAP/zimage.htm" target="_blank">http://www.cmis.csiro.au/IAP/zimage.htm</a><br />这是一个侧重图像分析的站点，一般。但是提供一个Image Analysis环境---ZIMAGE and SZIMAGE。 <br /><br /><a class="ilink" href="http://www.via.cornell.edu/" target="_blank">http://www.via.cornell.edu/</a><br />康奈尔大学的计算机视觉和图像分析研究组，好像是电子和计算机工程系的。侧重医学方面的研究，但是在上面有相当不错资源，关键是它正在建设中，能够跟踪一些信息。 <br /><br /><a class="ilink" href="http://www2.parc.com/istl/groups/did/didoverview.shtml" target="_blank">http://www2.parc.com/istl/groups/did/didoverview.shtml</a><br />有一个很有意思的项目：DID(文档图像解码)。 <br /><br /><a class="ilink" href="http://www-cs-students.stanford.edu/" target="_blank">http://www-cs-students.stanford.edu/</a><br />斯坦福大学计算机系主页，自己找吧:( <br /><br /><a class="ilink" href="http://www.fmrib.ox.ac.uk/analysis/" target="_blank">http://www.fmrib.ox.ac.uk/analysis/</a><br />主要研究：Brain Extraction Tool,Nonlinear noise reduction,Linear Image Registration,<br /><br />Automated Segmentation,Structural brain change analysis,motion correction,etc. <br /><br /><a class="ilink" href="http://www.cse.msu.edu/prip/" target="_blank">http://www.cse.msu.edu/prip/</a><br />这是密歇根州立大学计算机和电子工程系的模式识别--图像处理研究组，它的FTP上有许多的文章(NEW)。 <br /><br /><a class="ilink" href="http://pandora.inf.uni-jena.de/p/e/index.html" target="_blank">http://pandora.inf.uni-jena.de/p/e/index.html</a><br />德国的一个数字图像处理研究小组，在其上面能找到一些不错的链接资源。 <br /><br /><a class="ilink" href="http://www-staff.it.uts.edu.au/~sean/CVCC.dir/home.html" target="_blank">http://www-staff.it.uts.edu.au/~sean/CVCC.dir/home.html</a><br />CVIP(used to be CVCC for Computer Vision and Cluster Computing) is a research group focusing on cluster-based computer vision within the Spiral Architecture. <br /><br /><a class="ilink" href="http://cfia.gmu.edu/" target="_blank">http://cfia.gmu.edu/</a><br />The mission of the Center for Image Analysis is to foster multi-disciplinary research in image, multimedia and related technologies by establishing links <br /><br />between academic institutes, industry and government agencies, and to transfer key technologies to <br /><br />help industry build next <br /><br />generation commercial and military imaging and multimedia systems. <br /><br /><a class="ilink" href="http://peipa.essex.ac.uk/info/groups.html" target="_blank">http://peipa.essex.ac.uk/info/groups.html</a><br />可以通过它来搜索全世界各地的知名的计算机视觉研究组(CV Groups)，极力推荐。 <br /><br />二、图像处理GPL库<br /><a class="ilink" href="http://www.ph.tn.tudelft.nl/~klamer/cppima.html" target="_blank">http://www.ph.tn.tudelft.nl/~klamer/cppima.html</a><br />Cppima 是一个图像处理的C++函数库。这里有一个较全面介绍它的库函数的文档，当然你也可以下载压缩的GZIP包，里面包含TexInfo格式的文档。 <br /><br /><a class="ilink" href="http://iraf.noao.edu/" target="_blank">http://iraf.noao.edu/</a><br />Welcome to the IRAF Homepage! IRAF is the Image Reduction and Analysis Facility, a general purpose software <br /><br />system for the reduction and analysis of astronomical data. <br /><br /><a class="ilink" href="http://entropy.brni-jhu.org/tnimage.html" target="_blank">http://entropy.brni-jhu.org/tnimage.html</a><br />一个非常不错的Unix系统的图像处理工具，看看它的截图。你可以在此基础上构建自己的专用图像处理工具包。 <br /><br /><a class="ilink" href="http://sourceforge.net/projects/" target="_blank">http://sourceforge.net/projects/</a><br />这是GPL软件集散地，到这里找你想要得到的IP库吧。 <br /><br />三、搜索资源<br />当然这里基本的搜索引擎还是必须要依靠的，比如Google等，可以到我常用的链接看看。下面的链接可能会节省你一些时间： <br /><br /><a class="ilink" href="http://sal.kachinatech.com/" target="_blank">http://sal.kachinatech.com/</a><br /><a class="ilink" href="http://cheminfo.pku.edu.cn/mirrors/SAL/index.shtml" target="_blank">http://cheminfo.pku.edu.cn/mirrors/SAL/index.shtml</a><br />四、大拿网页<br /><a class="ilink" href="http://www.ai.mit.edu/people/wtf/" target="_blank">http://www.ai.mit.edu/people/wtf/</a><br />这位可是MIT人工智能实验室的BILL FREEMAN。大名鼎鼎！专长是：理解--贝叶斯模型。 <br /><br /><a class="ilink" href="http://www.merl.com/people/brand/" target="_blank">http://www.merl.com/people/brand/</a><br />MERL(Mitsubishi Electric Research Laboratory)中的擅长“Style Machine”高手。 <br /><br /><a class="ilink" href="http://research.microsoft.com/~ablake/" target="_blank">http://research.microsoft.com/~ablake/</a><br />CV界极有声望的A.Blake 1977年毕业于剑桥大学三一学院并或数学与电子科学学士学位。之后在MIT，Edinburgh，Oxford先后组建过研究小组并成为Oxford的教授，直到1999年进入微软剑桥研究中心。主要工作领域是计算机视觉。 <br /><br /><a class="ilink" href="http://www-2.cs.cmu.edu/afs/cs.cmu.edu/user/har/Web/home.html" target="_blank">http://www-2.cs.cmu.edu/afs/cs.cmu.edu/user/har/Web/home.html</a><br />这位牛人好像正在学习汉语，并且搜集了诸如“两只老虎(Two Tigers)”的歌曲，嘿嘿:)<br />他的主页上面还有几个牛：Shumeet Baluja, Takeo Kanade。他们的Face Detection作的绝对是世界一流。他毕业于卡奈基梅隆大学的计算机科学系，兴趣是计算机视觉。 <br /><br /><a class="ilink" href="http://www.ifp.uiuc.edu/yrui_ifp_home/html/huang_frame.html" target="_blank">http://www.ifp.uiuc.edu/yrui_ifp_home/html/huang_frame.html</a><br />这位老牛在1963年就获得了MIT的博士学位！他领导的Image Lab比较出名的是指纹识别。 <br /><br />--------------------------------------------------------------------------------<br /><br />下面这些是我搜集的牛群(大部分是如日中天的Ph.D们)，可以学习的是他们的Study Ways! <br /><br />Finn Lindgren(Sweden):Statistical image analysis <a class="ilink" href="http://www.maths.lth.se/matstat/staff/finn/" target="_blank">http://www.maths.lth.se/matstat/staff/finn/</a><br />Pavel Paclik(Prague):statistical pattern recognition <a class="ilink" href="http://www.ph.tn.tudelft.nl/~pavel/" target="_blank">http://www.ph.tn.tudelft.nl/~pavel/</a><br />Dr. Mark Burge:machine learning and graph theory <a class="ilink" href="http://cs.armstrong.edu/burge/" target="_blank">http://cs.armstrong.edu/burge/</a><br />yalin Wang:Document Image Analysis <a class="ilink" href="http://students.washington.edu/~ylwang/" target="_blank">http://students.washington.edu/~ylwang/</a><br />Geir Storvik: Image analysis <a class="ilink" href="http://www.math.uio.no/~geirs/" target="_blank">http://www.math.uio.no/~geirs/</a><br />Heidorn <a class="ilink" href="http://alexia.lis.uiuc.edu/~heidorn/" target="_blank">http://alexia.lis.uiuc.edu/~heidorn/</a><br />Joakim Lindblad:Digital Image Cytometry <a class="ilink" href="http://www.cb.uu.se/~joakim/index_eng.html" target="_blank">http://www.cb.uu.se/~joakim/index_eng.html</a><br />S.Lavirotte: <a class="ilink" href="http://www-sop.inria.fr/cafe/Stephane.Lavirotte/" target="_blank">http://www-sop.inria.fr/cafe/Stephane.Lavirotte/</a><br />Sporring:scale-space techniques <a class="ilink" href="http://www.lab3d.odont.ku.dk/~sporring/" target="_blank">http://www.lab3d.odont.ku.dk/~sporring/</a><br />Mark Jenkinson:Reduction of MR Artefacts <a class="ilink" href="http://www.fmrib.ox.ac.uk/~mark/" target="_blank">http://www.fmrib.ox.ac.uk/~mark/</a><br />Justin K. Romberg:digital signal processing <a class="ilink" href="http://www-dsp.rice.edu/~jrom/" target="_blank">http://www-dsp.rice.edu/~jrom/</a><br />Fauqueur:Image retrieval by regions of interest <a class="ilink" href="http://www-rocq.inria.fr/~fauqueur/" target="_blank">http://www-rocq.inria.fr/~fauqueur/</a><br />James J. Nolan:Computer Vision <a class="ilink" href="http://cs.gmu.edu/~jnolan/" target="_blank">http://cs.gmu.edu/~jnolan/</a><br />Daniel X. Pape:Information <a class="ilink" href="http://www.bucho.org/~dpape/" target="_blank">http://www.bucho.org/~dpape/</a><br />Drew Pilant:remote sensing technology <a class="ilink" href="http://www.geo.mtu.edu/~anpilant/index.html" target="_blank">http://www.geo.mtu.edu/~anpilant/index.html</a><br /><br />五、前沿期刊(TOP10)<br />这里的期刊大部分都可以通过上面的大拿们的主页间接找到，在这列出主要是为了节省直接想找期刊投稿的兄弟的时间:) <br /><br />IEEE Trans. On PAMI <a class="ilink" href="http://www.computer.org/tpami/index.htm" target="_blank">http://www.computer.org/tpami/index.htm</a><br />IEEE Transactionson Image Processing <a class="ilink" href="http://www.ieee.org/organizations/pubs/transactions/tip.htm" target="_blank">http://www.ieee.org/organizations/pubs/transactions/tip.htm</a><br />Pattern Recognition <a class="ilink" href="http://www.elsevier.com/locate/issn/00313203" target="_blank">http://www.elsevier.com/locate/issn/00313203</a><br />Pattern Recognition Letters <a class="ilink" href="http://www.elsevier.com/locate/issn/01678655" target="_blank">http://www.elsevier.com/locate/issn/01678655</a></span>
				<br />
		</p>
		<p>
				<span class="javascript" id="text352508">神经网络 <br /><br />Neural Networks Tutorial Review <br /><a class="ilink" href="http://hem.hj.se/~de96klda/NeuralNetworks.htm" target="_blank">http://hem.hj.se/~de96klda/NeuralNetworks.htm</a><br /><a class="ilink" href="ftp://ftp.sas.com/pub/neural/FAQ.html" target="_blank">ftp://ftp.sas.com/pub/neural/FAQ.html</a><br /><br /><br />Image Compression with Neural Networks <br /><a class="ilink" href="http://www.comp.glam.ac.uk/digimaging/neural.htm" target="_blank">http://www.comp.glam.ac.uk/digimaging/neural.htm</a><br /><br /><br />Backpropagator's Review <br /><a class="ilink" href="http://www.dontveter.com/bpr/bpr.html" target="_blank">http://www.dontveter.com/bpr/bpr.html</a><br /><br /><br />Bibliographies on Neural Networks <br /><a class="ilink" href="http://liinwww.ira.uka.de/bibliography/Neural/" target="_blank">http://liinwww.ira.uka.de/bibliography/Neural/</a><br /><br /><br />Intelligent Motion Control with an Artificial Cerebellum <br /><a class="ilink" href="http://www.q12.org/phd.html" target="_blank">http://www.q12.org/phd.html</a><br /><br /><br />Kernel Machines <br /><a class="ilink" href="http://www.kernel-machines.org/" target="_blank">http://www.kernel-machines.org/</a><br /><br /><br />Some Neural Networks Research Organizations <br /><a class="ilink" href="http://www.ieee.org/nnc/" target="_blank">http://www.ieee.org/nnc/</a><br /><a class="ilink" href="http://www.inns.org/" target="_blank">http://www.inns.org/</a><br /><br /><br />Neural Network Modeling in Vision Research <br /><a class="ilink" href="http://www.rybak-et-al.net/nisms.html" target="_blank">http://www.rybak-et-al.net/nisms.html</a><br /><br /><br />Neural Networks and Machine Learning <br /><a class="ilink" href="http://learning.cs.toronto.edu/" target="_blank">http://learning.cs.toronto.edu/</a><br /><br /><br />Neural Application Software <br /><a class="ilink" href="http://attrasoft.com/" target="_blank">http://attrasoft.com</a><br /><br /><br />Neural Network Toolbox for MATLAB <br /><a class="ilink" href="http://www.mathworks.com/products/neuralnet/" target="_blank">http://www.mathworks.com/products/neuralnet/</a><br /><br /><br />Netlab Software <br /><a class="ilink" href="http://www.ncrg.aston.ac.uk/netlab/" target="_blank">http://www.ncrg.aston.ac.uk/netlab/</a><br /><br /><br />Kunama Systems Limited <br /><a class="ilink" href="http://www.kunama.co.uk/" target="_blank">http://www.kunama.co.uk/</a></span>
				<br />
				<br />
				<span class="javascript" id="text352512">Computer Vision <br /><br />Computer Vision Homepage, Carnegie Mellon University<br /><a class="ilink" href="http://www.cs.cmu.edu/~cil/vision.html" target="_blank">www.cs.cmu.edu/~cil/vision.html</a><br /><br />Annotated Computer Vision Bibliography <br /><a class="ilink" href="http://iris.usc.edu/Vision-Notes/bibliography/contents.html" target="_blank">http://iris.usc.edu/Vision-Notes/bibliography/contents.html</a><br /><a class="ilink" href="http://iris.usc.edu/Vision-Notes/rosenfeld/contents.html" target="_blank">http://iris.usc.edu/Vision-Notes/rosenfeld/contents.html</a><br /><br />Lawrence Berkeley National Lab Computer Vision and Robotics Applications <br /><a class="ilink" href="http://www-itg.lbl.gov/ITG.hm.pg.docs/VISIon/vision.html" target="_blank">http://www-itg.lbl.gov/ITG.hm.pg.docs/VISIon/vision.html</a><br /><br />CVonline by University of Edinburgh <br />The Evolving, Distributed, Non-Proprietary, On-Line Compendium of Computer Vision, <a class="ilink" href="http://www.dai.ed.ac.uk/CVonline" target="_blank">www.dai.ed.ac.uk/CVonline</a><br /><br />Computer Vision Handbook, <a class="ilink" href="http://www.cs.hmc.edu/~fleck/computer-vision-handbook" target="_blank">www.cs.hmc.edu/~fleck/computer-vision-handbook</a><br /><br />Vision Systems Courseware <br /><a class="ilink" href="http://www.cs.cf.ac.uk/Dave/Vision_lecture/Vision_lecture_caller.html" target="_blank">www.cs.cf.ac.uk/Dave/Vision_lecture/Vision_lecture_caller.html</a><br /><br />Research Activities in Computer Vision <br /><a class="ilink" href="http://www-syntim.inria.fr/syntim/analyse/index-eng.html" target="_blank">http://www-syntim.inria.fr/syntim/analyse/index-eng.html</a><br /><br />Vision Systems Acronyms <br /><a class="ilink" href="http://www.vision-systems-design.com/vsd/archive/acronyms.html" target="_blank">www.vision-systems-design.com/vsd/archive/acronyms.html</a><br /><br />Dictionary of Terms in Human and Animal Vision <br /><a class="ilink" href="http://cns-web.bu.edu/pub/laliden/WWW/Visionary/Visionary.html" target="_blank">http://cns-web.bu.edu/pub/laliden/WWW/Visionary/Visionary.html</a><br /><br />Metrology based on Computer Vision <br /><a class="ilink" href="http://www.cranfield.ac.uk/sme/amac/research/metrology/metrology.html" target="_blank">www.cranfield.ac.uk/sme/amac/research/metrology/metrology.html</a><br /><br />Digital Photography<br /><br />Digital Photography, Scanning, and Image Processing <br /><a class="ilink" href="http://www.dbusch.com/scanners/scanners.html" target="_blank">www.dbusch.com/scanners/scanners.html</a></span>
				<br />
				<br />
				<span class="javascript" id="text352514">Educational Resources, Universities <br /><br />Center for Image Processing in Education <br /><a class="ilink" href="http://www.cipe.com/" target="_blank">www.cipe.com</a><br />Library of Congress Call Numbers Related to Imaging Science by Rochester Institute of Technology <br /><a class="ilink" href="http://wally2.rit.edu/pubs/guides/imagingcall.html" target="_blank">http://wally2.rit.edu/pubs/guides/imagingcall.html</a><br /><br />Mathematical Experiences through Image Processing, University of Washington <br /><a class="ilink" href="http://www.cs.washington.edu/research/metip/metip.html" target="_blank">www.cs.washington.edu/research/metip/metip.html</a><br /><br />Vismod Tech Reports and Publications, MIT <br /><a class="ilink" href="http://vismod.www.media.mit.edu/cgi-bin/tr_pagemaker" target="_blank">http://vismod.www.media.mit.edu/cgi-bin/tr_pagemaker</a><br /><br />Vision Lab PhD dissertation list, University of Antwerp <br /><a class="ilink" href="http://wcc.ruca.ua.ac.be/~visielab/theses.html" target="_blank">http://wcc.ruca.ua.ac.be/~visielab/theses.html</a><br /><br />INRIA (France) Research Projects: Human-Computer Interaction, Image Processing, Data Management, Knowledge Systems <br /><a class="ilink" href="http://www.inria.fr/Themes/Theme3-eng.html" target="_blank">www.inria.fr/Themes/Theme3-eng.html</a><br /><br />Image Processing Resources <br /><a class="ilink" href="http://eleceng.ukc.ac.uk/~rls3/Contents.htm" target="_blank">http://eleceng.ukc.ac.uk/~rls3/Contents.htm</a><br /><br />Publications of Carsten Steger <br /><a class="ilink" href="http://www9.informatik.tu-muenchen.de/people/steger/publications.html" target="_blank">http://www9.informatik.tu-muenchen.de/people/steger/publications.html</a><br /><br />FAQs<br /><br />comp.dsp FAQ <br /><a class="ilink" href="http://www.bdti.com/faq/dsp_faq.htm" target="_blank">www.bdti.com/faq/dsp_faq.htm</a><br />Robotics FAQ <br /><a class="ilink" href="http://www.frc.ri.cmu.edu/robotics-faq" target="_blank">www.frc.ri.cmu.edu/robotics-faq</a><br /><br />Where's the sci.image.processing FAQ? <br /><a class="ilink" href="http://www.cc.iastate.edu/olc_answers/packages/graphics/sci.image.processing.faq.html" target="_blank">www.cc.iastate.edu/olc_answers/packages/graphics/sci.image.processing.faq.html</a><br /><br />comp.graphics.algorithms FAQ, Section 3, 2D Image/Pixel Computations <br /><a class="ilink" href="http://www.exaflop.org/docs/cgafaq" target="_blank">www.exaflop.org/docs/cgafaq</a><br /><br />Astronomical Image Processing System FAQ <br /><a class="ilink" href="http://www.cv.nrao.edu/aips/aips_faq.html" target="_blank">www.cv.nrao.edu/aips/aips_faq.html</a></span>
				<br />
		</p>
<img src ="http://www.cppblog.com/xushaohua/aggbug/17332.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/xushaohua/" target="_blank">shaohua</a> 2007-01-05 17:07 <a href="http://www.cppblog.com/xushaohua/articles/17332.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JPEG压缩编码标准</title><link>http://www.cppblog.com/xushaohua/articles/14340.html</link><dc:creator>shaohua</dc:creator><author>shaohua</author><pubDate>Sun, 29 Oct 2006 07:22:00 GMT</pubDate><guid>http://www.cppblog.com/xushaohua/articles/14340.html</guid><wfw:comment>http://www.cppblog.com/xushaohua/comments/14340.html</wfw:comment><comments>http://www.cppblog.com/xushaohua/articles/14340.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.cppblog.com/xushaohua/comments/commentRss/14340.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/xushaohua/services/trackbacks/14340.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: JPEG				是联合图象专家组				(Joint Picture Expert Group)				的英文缩写，是国际标准化组织				(ISO)				和				CCITT				联合制定的静态图象的压缩编码标准。和相同图象质量的其它常用文件格式				(				如				GIF				，				TIFF				，				PCX)	...&nbsp;&nbsp;<a href='http://www.cppblog.com/xushaohua/articles/14340.html'>阅读全文</a><img src ="http://www.cppblog.com/xushaohua/aggbug/14340.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/xushaohua/" target="_blank">shaohua</a> 2006-10-29 15:22 <a href="http://www.cppblog.com/xushaohua/articles/14340.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title> Gif 文件格式 </title><link>http://www.cppblog.com/xushaohua/articles/14328.html</link><dc:creator>shaohua</dc:creator><author>shaohua</author><pubDate>Sun, 29 Oct 2006 01:24:00 GMT</pubDate><guid>http://www.cppblog.com/xushaohua/articles/14328.html</guid><wfw:comment>http://www.cppblog.com/xushaohua/comments/14328.html</wfw:comment><comments>http://www.cppblog.com/xushaohua/articles/14328.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/xushaohua/comments/commentRss/14328.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/xushaohua/services/trackbacks/14328.html</trackback:ping><description><![CDATA[Gif动画文件在网络传播中应用较为广泛。虽然目前有关gif动画文件的处理工具也可件一二，本人认为对于gif文件的进一步利用仍有许多值得开发子处。为了方便有此意向的读者有明确的开发依据，本人特将gif89a的英文说明文档中与gif开发有用的部分作了解释性翻译，希望能对有关gif的开发起到一定的帮助作用。下面就是具体的译解。<br /><br />一、编码器<br /><br />　　 编码器是用于生成gif文件的程序。通过光栅数据和其他信息，编码器生成用于再现原始图形所必须的控制块和数据块。它负责完成如下工作：<br />　　 －将所有对再生原始图片所必须的信息包含进来。<br />　　 －确保数据流标记着包含所有数据块定义的最早的版本号；这是为了确保可以有尽可能多的解码器能够处理该数据流。<br />　　 －使得对图片的编码方法对解码器最为优化，尽可能避免信息的冗余。<br />　　 -为了便于扩展，应该避免对图片的分组，因为在解码时这种分组可能需要对硬件参数进行重新设置。<br />　　 -将定义为保留的字段的每一位都置为零。注意，逻辑视频、描述符合图像描述符中的某些字段在87a版本中是保留的，但在89a版本中却是有用的。<br /><br />二、解码器<br /><br />　　 解码器是用于处理gif数据流的程序。它顺序地处理数据流，分析各种数据块和子块，使用控制信息来设置硬件及处理参数，并且解释数据来显示图像。<br />解码器负责完成如下工作：<br />　　 ·依次处理数据流中的每个图像，按照控制信息中的设定处理图像间的延时。<br />　　 ·按照在数据流中设置的控制信息，尽可能接近地设置硬件参数。<br /><br />三、关于色表<br /><br />　　 gif格式利用色表来显示基于光栅的图像。色表分为全局色表和局部色表。全局色表对于那些没有设置局部色表的图像起作用。全局色表的作用域是整个数据流。局部色表对于紧接在其后的单张图像起作用。这两种色表都是可选的。正因为这样，在某个gif数据流中就有可能出现很多根本不具有任何色表的图像。因为会有如上情况发生，所以解码器通常会保留最后一个全局色表直到得到一个新的全局色表。如果一个数据流中既没有全局色表也没有局部色表，解码器就会用从上一个数据流中保留下来的全局色表来执行。可以在一组数据流中仅设置一个全局色表来适应一系列图片。如果确实没有色表，解码器会使用系统色表或者它自己的色表。应该说明的是，这样的色表用黑和白作为两个开始项，所以单色图像可以充分显示。<br />　　 Gif格式规定一个数据流只能包含头部、逻辑视屏描述符、全局色表和gif尾记录。<br /><br />四、块、扩充和域<br /><br />　　 gif数据流中的数据块可以分为三组：控制块、成象块和特殊用途块。控制块，如：头部、逻辑视屏描述块、图像控制扩充和尾记录，包含用于控制处理数据流或设置硬件参数的信息。成像块，如：图像描述符和纯文本扩充，包含用于在显示设备上成像的信息和数据。特殊用途块，如：注释扩充和应用扩充，包含那些既不用于处理数据流也不用于在显示设备上成象的信息。除了逻辑视屏描述块和全局色表之外，特殊用途块的作用域是整个数据流，而其他控制块的作用域是有限的，仅限于对他们后面的成象块起作用。特殊用途块不对任何控制块构成限制，它对于解码过程来说是透明的。成象块及扩充用于控制块及扩充的作用域限定。块的标记分为三段：除尾记录0x3b之外，0x00～0x7f用于成象块;0x80～0xf9用于控制块；0xfa～0xff用于特殊用途块。解码器通过识别块标记来处理块的作用域。<br /><br />五、块尺寸<br /><br />　　 一个块中的块尺寸字段用来记录块中所包含的字节数，不包括块尺寸字段本身和块结束符。它的设置便于跳过某个块，该尺寸设置后不能改变。数据块和子块的长度是可变的，以适应数据量的变化。<br /><br />六、gif作为内嵌的协议<br /><br />　　 作为一个内嵌的协议，gif属于某个更大的应用协议的一部分，在这个应用协议中gif用于成象。因此，应用协议可以将gif数据流定义在一个数据块中。当应用程序遇到一个gif类型的数据块时就调用gif解码器。使用gif扩展名来识别gif数据流的方法是一种较为有效的方法。<br /><br />七、数据子块<br /><br />　　 a. 数据子块是一些包含数据的单元。这些单元没有标签，被当作控制块的内容进行处理。数据子块中的第一个字节指示其后的数据长度（0～255），长度信息不包括这个长度字节。<br />　　 b. 必须的版本号：87a<br />　　 c. 句法 <br /><br />7 6 5 4 3 2 1 0 字段名 类型<br />+---------------+<br />0 | | 块尺寸 字节<br />+---------------+<br />1 | |<br />+- -+<br />2 | |<br />+- -+<br />3 | |<br />+- -+<br />| | 数据值 字节<br />. +- -+<br />. | |<br />. +- . . . . -+<br />. | |<br />+- -+<br />| |<br />+- -+<br />255 | |<br />+---------------+<br />d. 扩充和域：该类型的块总是作为其他更大块的一部分，它没有自己的作用域。<br />八、块终止符<br />a. 这是一个零长度的数据子块，用于说明前一个子块的结束。它只包含一个字节的块尺寸字段，其值为0，没有数据。<br />b. 必须的版本：87a<br />九、头部<br />a. 头部用于在上下文中识别gif 数据流。标记字段表明数据流的开始，版本字段用来标识一个解码器能够完整处理该数据流所需的功能集。此块是必须的，并且每个数据流只有一个头部。必须出现在数据流的开始。<br />b. 句法<br />7 6 5 4 3 2 1 0 字段名 类型<br />+---------------+<br />0 | | 标识符 3 字节<br />+- -+<br />1 | |<br />+- -+<br />2 | |<br />+---------------+<br />3 | | 版本 3 字节<br />+- -+<br />4 | |<br />+- -+<br />5 | |<br />+---------------+<br />i) 标识符 - 包含gif三个字符。<br />ii)版本 - 版本号为：87a或89a <br />iii) 扩充和域 - 该块的域为整个数据流。该块不能被任何扩充来改变。<br /><br />十、逻辑视屏描述块<br /><br />a. 逻辑视屏描述符包含用于定义显示设备的区域的参数。该块中的坐标以虚拟屏幕的左上角为基准，而不需要参考显示设备的绝对坐标。该块是必须的，并且每个数据流只能有一个逻辑视屏描述块。该块紧接着头部出现。<br />b. 语法<br />7 6 5 4 3 2 1 0 字段名 类型<br />+---------------+<br />0 | | 逻辑屏幕宽 Unsigned<br />+- -+<br />1 | |<br />+---------------+<br />2 | | 逻辑屏幕高 Unsigned<br />+- -+<br />3 | |<br />+---------------+<br />4 | | | | | &lt;Packed Fields&gt; See below<br />+---------------+<br />5 | | 背景色索引 Byte<br />+---------------+<br />6 | | 象素高宽比 Byte<br />+---------------+<br /><br />&lt;Packed Fields&gt; = 全局色表标志 1 Bit<br />颜色方案 3 Bits<br />短标志 1 Bit<br />全局色表尺寸 3 Bits<br /><br />　　 i) 全局色表标志 - 指示有没有全局色表，如果该标志位置1，则全局色表会紧接在该块之后出现。该位也用于解释是否选用背景颜色索引字段。若该位置1，则背景颜色索引字段的值将指向背景颜色表。 <br />　　 ii) 色彩方案 - 提供给原始图像的每个颜色的位数减1。这个值代表图像中所使用的整个调色板的大小，而不是图像中所使用的颜色的数量。例如，若该字段的值为3，则图像中所使用的调色板的每个色值占4位。<br />　　 iii) 短标志 - 表明全局色表是否被排序。如果该位置1，则全局色表按照重要性递减的原则进行了排序。典型地，是按照颜色的使用频度进行递减排序，使用频度最高的颜色排在色表的最前面。这样便可帮助解码器选择最好的颜色子集来成象。 <br />　　 iv) 全局色表的尺寸 - 如果全局色表标志位置1，则该字段的值记录全局色表中所占用的字节数。<br />　　 v) 背景颜色索引 - 为背景颜色指向全局色表。背景颜色是指那些没有背图像覆盖的视屏部分的颜色。若全局色表标志位置为0，则该字段也被值0，并且被忽略。<br />　　 vi) 象素高宽比 - 用于计算原图像中像素的近似高宽比。如果该字段的值为非0，则象素的高宽比由下面的公式计算。<br />高宽比 = (象素高宽比 + 15) / 64<br />该字段的取值范围从最宽的比值4：1到最高的比值1：4，递增的步幅为1/64。<br />取值： 0 - 没有比值<br />1～255 - 用于计算的值 <br />c. 扩充和域。该块的作用域为整个数据流。它不能被任何扩充来改变。<br />十一、全局色表<br />a. 该块包含一个按照字节顺序表示红-绿-兰三元色的色表。全局色表用于那些没有局部色表的图像和纯文本扩充。在逻辑视屏描述块中的全局色表标志位置1时表示有全局色表。全局色表紧接在逻辑视屏描述块之后，占用的字节数为：<br />3*2^（全局色表尺寸+1）<br />b. 必须的版本：87a<br />c. 语法<br />7 6 5 4 3 2 1 0 字段名 类型<br />+===============+<br />0 | | Red 0 Byte<br />+- -+<br />1 | | Green 0 Byte<br />+- -+<br />2 | | Blue 0 Byte<br />+- -+<br />3 | | Red 1 Byte<br />+- -+<br />| | Green 1 Byte<br />+- -+<br />up | |<br />+- . . . . -+ ...<br />to | |<br />+- -+<br />| | Green 255 Byte<br />+- -+<br />767 | | Blue 255 Byte<br />+===============+<br />d.扩充和域：该块的作用域为整个数据流。它不能被任何扩充来改变。<br /><br />十二、图像描述符<br /><br />a. 数据流中的每一幅图像都由一个图像描述符、一个可选的局部色表和图像数据组成。每一幅图像必须在逻辑视屏描述块中所定义的逻辑视屏界限之内。图像描述符包含处理一个基于图像的表的必要参数。在这个块中给定的坐标是参照逻辑视屏的像素坐标。该块是一个成象块，在其前面可以选择加上一个或多个控制块，如：图像控制扩充，或者是后面接有局部色表；图像描述符后面总是图像数据。它是一幅图所必需的。一幅图像对应一个图像描述符。一个数据流中的图像数目不做限制。<br />b. 必须的版本号：87a <br />c. 语法<br />7 6 5 4 3 2 1 0 字段名 类型<br />+---------------+<br />0 | | 图象分隔符 Byte<br />+---------------+<br />1 | | 图象左坐标 Unsigned<br />+- -+<br />2 | |<br />+---------------+<br />3 | | 图象顶坐标 Unsigned<br />+- -+<br />4 | |<br />+---------------+<br />5 | | 图象宽度 Unsigned<br />+- -+<br />6 | |<br />+---------------+<br />7 | | 图象高度 Unsigned<br />+- -+<br />8 | |<br />+---------------+<br />9 | | | | | | &lt;Packed Fields&gt; See below<br />+---------------+<br />&lt;Packed Fields&gt; = 局部色表标志 1 Bit<br />隔行处理标志 1 Bit<br />短标志 1 Bit<br />保留 2 Bits<br />局部色表尺寸 3 Bits<br />i)图像分隔符 - 用于识别图像描述符的开始。取固定值0x2c。<br />d. 扩充和域：该块的域是基于表的图像。该块可以被图像控制扩充所改变。<br /><br />十三、局部色表<br /><br />a. 该块包含一个按照红-绿-兰三原色的顺序排列的色表。该表作用于紧跟其后的图像。当局不色表标志位置1时，该表出现，且其后紧跟图像的描述符，它所包含的字节数等于<br />3*2^（局部色表尺寸+1）<br />b. 必须的版本：87a<br />c. 语法<br />7 6 5 4 3 2 1 0 字段名 类型<br />+===============+<br />0 | | Red 0 Byte<br />+- -+<br />1 | | Green 0 Byte<br />+- -+<br />2 | | Blue 0 Byte<br />+- -+<br />3 | | Red 1 Byte<br />+- -+<br />| | Green 1 Byte<br />+- -+<br />up | |<br />+- . . . . -+ ...<br />to | |<br />+- -+<br />| | Green 255 Byte<br />+- -+<br />767 | | Blue 255 Byte<br />+===============+<br />d. 扩充及域：该块的域是紧跟其后的基于表的图像数据块。该块不能被任何扩充所改变。<br /><br />十四、基于表的图像数据<br /><br />a. 对一个基于表的图像数据由一系列子块组成，每个子块最多255<br />字节，包含一个为图中每个象素所指定的有效色表的索引。索引的顺序用LZW算法进行编码。<br />b. 必须的版本：87a<br />c. 语法<br />图像数据的格式如下图所示<br />7 6 5 4 3 2 1 0 字段名 类型<br />+---------------+<br />| | LZW 最小编码尺寸 Byte<br />+---------------+<br />+===============+<br />| |<br />/ / 图象数据 数据子块<br />| |<br />+===============+<br />i) LZW 最小编码尺寸：该字节用于决定在图像数据中用 LZW 编码最初的位数。 <br />e. 扩充和域：该块没有域，它包括格栅数据。要改变基于表格的图像的扩充必须在相应的图像描述符之前出现。<br /><br />十五、图像控制扩充<br /><br />a. 图像控制扩充包含在处理一个成象块时所需的参数。扩充只包括一个数据子块。该块是可选的。通常只有一个图像控制扩充在成象块之前。这也是在一个数据流中对成象控制扩充的唯一限制。<br />b. 必须的版本：89a<br />c. 语法<br />7 6 5 4 3 2 1 0 字段名 类型<br />+---------------+<br />0 | | 扩充导入符 Byte<br />+---------------+<br />1 | | 图象控制标记 Byte<br />+---------------+<br />+---------------+<br />0 | | 块尺寸 Byte<br />+---------------+<br />1 | | | | | &lt;Packed Fields&gt; See below<br />+---------------+<br />2 | | 延长时间 Unsigned<br />+- -+<br />3 | |<br />+---------------+<br />4 | | 透明颜色索引 Byte<br />+---------------+<br />+---------------+<br />0 | | 块结束 Byte<br />+---------------+<br />&lt;Packed Fields&gt; = 保留 3 Bits<br />配置方法 3 Bits<br />用户输入标志 1 Bit<br />透明颜色标志 1 Bit<br />i) 扩充引入 - 用于识别一个扩充块的开始，该字段为固定值0x21。<br />ii)图像控制标号 - 识别当前块是否为图形控制扩充。该字段为固定值 0xF9。<br />iii) 块尺寸 - 块中所包含的字节数。从块尺寸字段开始到快结束符（不含结束符）。该字段包含固定值4。<br />iv) 配置方法 - 指示图像显示后的处理方法。<br />值: 0 - 无指定的配置，解码器不需要做任何处理。<br />1 - 不做配值。图像将被留在原位置。<br />2 - 恢复背景颜色。图像所占的区域必须备恢复为背景颜色。<br />3 - 恢复以前的颜色。解码器需要将图像区域恢复为原来成象的颜色。<br />4-7 - 未定义。<br />v)用户输入标志 - 说明在继续处理之前是否需要用户输入。可以和输入延时一起使用。<br />vi) 透明标志 - 表明在透明索引字段是否给定透明索引。<br />vii) 延时 - 如果不为0, 该字段指定以1/100秒为单位的时延数。<br />viii) 透明索引 - 如果遇到透明索引，则显示设备的相关象素不被改变，继续处理下一个象素。<br />ix) 块终止符 - 这个0长度字段标志着图像控制扩充得结束。<br />d. 扩充和域:该扩充的域是其后的成象块；在该块和它的作用块之间可以由其他扩充。该块可以改变图像描述块和纯文本扩充。<br />e. 建议：i)配置方法 - 恢复到原先的方法厂用于图像中的一些小区域；用该方法强制使解码器存储需要保留的图像区域，因此该方法要慎用。该方法并非为整个图像或大区域的图像所设置。<br />ii) 用户输入标志 - 当该标志被设置时，解码器会用(0x07)来激活声音来提醒用户输入数据。如果没有设定延时，则解码器会一直等待用户的输入。<br /><br />十六、注释扩充<br /><br />a. 注释扩充包含实际不属于gif数据流的文本信息。它适用于包括图像注释、描述或者任何其他非控制和非图像数据。注释扩充将被解码器忽略，或者被保留到以后处理。在任何情况下注释扩充也不能中断对数据流的处理。该块是可选的；在数据流中的出现量不加限制。<br />b. 必须的版本：89a<br />c. 语法<br />7 6 5 4 3 2 1 0 字段名 类型<br />+---------------+<br />0 | | 扩充导入符 Byte<br />+---------------+<br />1 | | 注释标记 Byte<br />+---------------+ <br />+===============+<br />| |<br />N | | 注释数据 数据子块<br />| |<br />+===============+<br />+---------------+<br />0 | | 块结束符 Byte<br />+---------------+<br />i) 扩充导入符 - 标识扩充的开始。该字段为固定值0x21。<br />ii) 注释标号 - 标示某块为注释扩充。该段为固定值0xFE。<br />iii) 注释数据 - 按照子块顺序，每个注释最少1字节最多255字节。序列结尾用块结束符标识。<br />iv) 块结束符 - 这个零长度数据块用来标识注释扩充的结束。<br />d. 扩充和域：该块没有域，且不能被任何扩充修改。<br />e. 建议<br />i) 数据 - 该块为方便使用所设。它使用7位ASCII码字符集。不能用于存储控制信息。 <br />ii) 位置 - 该块可以出现在数据流中的任何地方。建议该块尽量在数据流的开始或者结尾。<br /><br />十七、纯文本扩充<br /><br />a. 纯文本扩充包括纯文本数据和将数据显示为图像所必需的参数。文本数据将用7位可印刷ASCII码字符编码。文本数据用在块字段中定义的单元格字符元素来成象。每个字符用一个单元成象。为单色字符，用最合适的字型、字号。字符格包含单元的数量，剩余不足成为格子的部分要丢弃。编码器应精确测算，以避免剩余现象出现。该块使用全局色表。它可以被图形控制扩充来修改。该块为可选块。<br />b. 必须的版本：89a。<br />c. 语法<br />7 6 5 4 3 2 1 0 字段名 类型<br />+---------------+<br />0 | | 扩充导入符 Byte<br />+---------------+<br />1 | | 纯文本标记 Byte<br />+---------------+<br />+---------------+<br />0 | | 块尺寸 Byte<br />+---------------+<br />1 | | 文本格左坐标 Unsigned<br />+- -+<br />2 | |<br />+---------------+<br />3 | | 文本格顶坐标 Unsigned<br />+- -+<br />4 | |<br />+---------------+<br />5 | | 文本格宽度 Unsigned<br />+- -+<br />6 | |<br />+---------------+<br />7 | | 文本格高度 Unsigned<br />+- -+<br />8 | |<br />+---------------+<br />9 | | 字符单元宽度 Byte<br />+---------------+<br />10 | | 字符单元高度 Byte<br />+---------------+<br />11 | | 文本前景色索引 Byte<br />+---------------+<br />12 | | 文本背景色索引 Byte<br />+---------------+<br />+===============+<br />| |<br />N | | 纯文本数据 数据子块<br />| |<br />+===============+<br />+---------------+<br />0 | | 块结束符 Byte<br />+---------------+<br />i) 扩充导入符 - 标识一个扩充块的开始。取固定值0x21.<br />ii) 纯文本标记 - 标识当前块为原文扩充。取固定值0x01.<br />iii) 块尺寸 - 扩充中的字节数，取固定值12.<br />iv) 文本格左位置 - 逻辑视屏的左边，用象素表示的左边列数，<br />v) 文本格顶位置 - 逻辑视屏的上边，用象素表示的上边行数。<br />xii) 原文数据 - 子块序列，每个子块最少1字节最多255字节。该序列遇到块结束符时结束。<br />xiii) 块结束符 - 这个0长度数据块用来标志块结束。<br />d. 扩充和域：该块的域是包含其中的原文字数据。它可以被图像控制扩充来修改。<br />e. 建议<br />在原文扩充中的数据是提前格式化好的。对字型、字号的选择由解码器来定。如果遇到小于0x20 或者大于0xf7 的字符，解码器将按空格0x20来处理。为了最广泛地兼容，字符单元应该为8*8或8*16点阵。<br /><br />十八、应用扩充<br /><br />a. 应用扩充包含应用说明信息；它遵守如下所述的扩充块的语法，块标记为0xff.<br />b. 必须的版本：89a<br />c. 语法<br />7 6 5 4 3 2 1 0 字段名 类型<br />+---------------+<br />0 | | 扩充导入符 Byte<br />+---------------+<br />1 | | 扩充标记 Byte<br />+---------------+<br />+---------------+<br />0 | | 块尺寸 Byte<br />+---------------+<br />1 | |<br />+- -+<br />2 | |<br />+- -+<br />3 | | 应用标识符 8 Bytes<br />+- -+<br />4 | |<br />+- -+<br />5 | |<br />+- -+<br />6 | |<br />+- -+<br />7 | |<br />+- -+<br />8 | |<br />+---------------+<br />9 | |<br />+- -+<br />10 | | 应用证明码 3 Bytes<br />+- -+<br />11 | |<br />+---------------+<br />+===============+<br />| |<br />| | 应用数据 数据子块<br />| |<br />| |<br />+===============+<br />+---------------+<br />0 | | 块结束符 Byte<br />+---------------+<br />i) 扩充引入符 - 定义该块位扩充块。取固定值0x21.<br />ii) 应用扩充标记 - 标识该块为应用扩充块。取固定值0xFF.<br />iii) 块尺寸 - 指示该块中包含的字节数。取固定值11.<br />iv) 应用标识符 - 8格可印刷ASCII字符用来标识该应用所属的应用扩充。<br />v) 应用证明码 - 3格字节的序列用于证明应用标识符。一个应用程序可以一种算法来计算一个二进制码来唯一地识别这个应用是否数于这个应用扩充。<br />d. 扩充和域：该块没有域，且不能被其他扩充所修改。<br /><br />十九、尾记录<br /><br />a. 该块为一个单字段块，用来指示该数据流的结束。取固定值0x3b.<br />b. 必须的版本：87a。<br />c. 语法<br />7 6 5 4 3 2 1 0 字段名 类型<br />+---------------+<br />0 | | GIF 尾记录 Byte<br />+---------------+<br />d.扩充和域：该块没有域，它用于结束gif 数据流。它不能被任何扩充所修改。<br /><br />附录A. 快速参照表.<br />块名称 必须项 标记 扩充 版本<br />应用扩充 可选 (*) 0xFF (255) 是 89a<br />注释扩充 可选 (*) 0xFE (254) 是 89a<br />全局色表 可选 (1) 无 否 87a<br />图像控制扩充 可选 (*) 0xF9 (249) 是 89a<br />头部 必须 (1) 无 否 N/A<br />图象描述符 可选 (*) 0x2C (044) 否 87a (89a)<br />局部色表 可选 (*) 无 否 87a<br />逻辑视屏描述块 必须 (1) 无 否 87a (89a)<br />纯文本扩充 可选 (*) 0x01 (001) 是 89a<br />尾记录 必须 (1) 0x3B (059) 否 87a<br />无标记块<br />头部 必须 (1) 无 否 N/A<br />逻辑视屏描述符 必须 (1) 无 否 87a (89a)<br />全局色表 可选 (1) 无 否 87a<br />局部色表 可选 (*) 无 否 87a<br />成象块<br />纯文本扩充 可选 (*) 0x01 (001) 是 89a<br />图像描述符 可选 (*) 0x2C (044) 否 87a (89a)<br />控制块<br />图象控制扩充 可选 (*) 0xF9 (249) 是 89a<br />特殊用途块<br />尾记录 必须 (1) 0x3B (059) 否 87a<br />注释扩充 可选 (*) 0xFE (254) 是 89a<br />应用扩充 可选 (*) 0xFF (255) 是 89a<br />图例: (1) 如果出现，最多发生一个<br />(*) 0个或者多个发生<br />(+) 一个或者多个发生<br />注 : 头部不受版本号的制约。<br />89a版的逻辑视屏描述块及图象描述符保留它们从87a版到89a版的语法,不过有的字段 在87a版是保留项，但是在89a版这为有用项。<br /><br />附录B. GIF 语法.<br />　　 语法是用来表达序列的一种符号形式，并用这个表达序列中的一些对象来形成更大的对象。语法也用于表达在给定的位置出现对象的数目。在此给出的语法用来说明形成gif数据流的块序列，用一些规则列表来表达。下面列出用于gif语法的符号定义。<br />图例: &lt;&gt; 语法词<br />::= 符号定义<br />* 0个或更多的事件发生<br />+ 1个或更多的事件发生<br />| 替代元素<br />[] 可选元素<br />例子:<br />&lt;GIF 数据流&gt; ::= 头部 &lt;逻辑视屏&gt; &lt;数据&gt;* 尾记录<br />这个规则将&lt;Gif 数据流&gt;实体定义如下。它必须以头部开始，头部后面接一个逻辑视屏 实体，该实体药用其他规则来定义。最后，数据实体接结束符。数据实体后面的*表示数据实体可以在此位置出现0或多次。<br />语法<br />&lt;Gif 数据流&gt; ::= 头部 &lt;逻辑视屏&gt; &lt;数据&gt;* 尾记录<br />&lt;逻辑视屏&gt; ::= 逻辑视屏描述块 [全局色表]<br />&lt;数据&gt; ::= &lt;成象块&gt; |<br />&lt;特殊用途块&gt;<br />&lt;成象块&gt; ::= [图象控制扩充] &lt;成象块&gt;<br />&lt;成象块&gt; ::= &lt;基于表的图象&gt; |<br />纯文本扩充<br />&lt;Table-Based Image&gt; ::= 图象描述符 [局部色表] 图象数据<br />&lt;特殊用途块&gt; ::= 应用扩充 |<br />注释扩充<img src ="http://www.cppblog.com/xushaohua/aggbug/14328.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/xushaohua/" target="_blank">shaohua</a> 2006-10-29 09:24 <a href="http://www.cppblog.com/xushaohua/articles/14328.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[转]小波转换影像压缩模式</title><link>http://www.cppblog.com/xushaohua/articles/14121.html</link><dc:creator>shaohua</dc:creator><author>shaohua</author><pubDate>Wed, 25 Oct 2006 02:28:00 GMT</pubDate><guid>http://www.cppblog.com/xushaohua/articles/14121.html</guid><wfw:comment>http://www.cppblog.com/xushaohua/comments/14121.html</wfw:comment><comments>http://www.cppblog.com/xushaohua/articles/14121.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/xushaohua/comments/commentRss/14121.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/xushaohua/services/trackbacks/14121.html</trackback:ping><description><![CDATA[摘要  
<p></p><p>由於在现今资讯流通普遍的社会中，影像的需求量越来越大，影像的数位化是必然的趋势。然而在数位化过的影像所占的资料量又相当庞大，在传输与处理上皆有所不便。将资料压缩是最好的方法。如今有一新的模式，在压缩率及还原度皆有不错的表现，为其尚未有一标准的格式，故在应用上尚未普及。但在不久的未来，其潜力不可限量。而影像之於印刷有密不可分的关系。故以此篇文章介绍小波（WAVELET）转换的历史渊源。小波转换的基础原理。现今的发展对印刷业界的冲击。影像压缩的未来的发展。 </p><p><br />壹、前言 </p><p>由於科技日新月异，印刷已由传统印刷走向数位印刷。在数位化的过程中，影像的资料一直有档案过大的问题，占用记忆体过多，使资料在传输上、处理上都相当的费时，现今个人拥有True Color的视讯卡、24-bit的全彩印表机与扫描器已不再是天方夜谭了，而使用者对影像图形的要求，不仅要色彩繁多、真实自然，更要搭配多媒体或动画。但是相对的高画质视觉享受，所要付出的代价是大量的储存空间，使用者往往只能眼睁睁地看着体积庞大的图档占掉硬碟、磁带和光碟片的空间；美丽的图档在亲朋好友之间互通有无，是天经地义的事，但是用网路传个640X480 True Color图形得花3分多钟，常使人哈欠连连，大家不禁心生疑虑，难道图档不能压缩得更小些吗？如此报业在传版时也可更快速。所以一种好的压缩格式是不可或缺的，可以使影像所占的记忆体更小、更容易处理。但是目前市场上所用的压缩模式，在压缩的比率上并不理想，失去压缩的意义。不然就是压缩比例过大而造成影像失真，即使数学家与资讯理论学者日以继夜，卯尽全力地为lossless编码法找出更快速、更精彩的演算法，都无可避免一个尴尬的事实：压缩率还是不够好。再说用来印刷的话就造成影像模糊不清，或是影像出现锯齿状的现象。皆会造成印刷输出的问题。影像压缩<a href="http://www.itshantou.com/" target="_blank">技术</a>是否真的穷途末路？请相信人类解决难题的潜力是无限的。既然旧有编码法不够管用，山不转路转，科学家便将注意力移转到WAVELET转换法，结果不但发现了满意的解答，还开拓出一条光明的坦途。小波分析是近几年来才发展出来的数学理论。小波分析，无论是作为数学理论的连续小波变换，还是作为分析工具和方法的离散小波变换，仍有许多可被研究的地方，它是近几年来在工具及方法上的重大突破。小波分析是傅利叶（Fourier）分析的重要发展，他保留了傅氏理论的优点，又能克服其不足之处。可达到完全不失真，压缩的比率也令人可以接受。由於其数学理论早在1960年代中叶就有人提出了，而到现在才有人将其应用於实际上，其理论仍有相当大的发展空间，而其实际运用也属刚起步，其後续发展可说是不可限量。故研究的动机便由此而生。 </p><p><br />贰、 WAVELET的历史起源 </p><p>WAVELET源起於Joseph Fourier的热力学公式。傅利叶方程式在十九世纪初期由Joseph Fourier (1768-1830)所提出，为现代信号分析奠定了基础。在十九到二十世纪的基础数学研究领域也占了极重要的地位。Fourier提出了任一方程式，甚至是画出不连续图形的方程式，都可以有一单纯的分析式来表示。小波分析是近几年来才发展出来的数学理论为傅利叶方程式的延伸。 </p><p>小波分析方法的提出可追溯到1910年Haar提出的小波规范正交基。其後1984年，法国地球物理学J. Morlet在分析地震波的局部性质时，发现传统的傅利叶转换，难以达到其要求，因此引进小波概念於信号分析中，对信号进行分解。随後理论物理学家A.Grossman对Morlet的这种信号根据一个确定函数的伸缩，平移系 { a -1/2 Ψ[(x-b)/a] ；a,b?R ,a≠0}展开的可行性进行了研究，为小波分析的形成开了先河。 </p><p>1986年，Y. Meyer建构出具有一定衰减性的光滑函数Ψj,k(x)，其二进制伸缩与平移系 {Ψj,k(x)=√2jΨ(2jx-k)；j,k?Z}构成L2（R）的规范正交基。1987年，Mallat巧妙的将多分辨分析的<map title="思想" href="http://www.mflw.com/search.aspx?Where=title&amp;cid=0&amp;Keyword=%CB%BC%CF%EB">思想</map>引入到小波分析中，建构了小波函数的构造及信号按小波转换的分解及重构。1988年Daubechies建构了具有正交性（Orthonormal）及紧支集（Compactly Supported）；及只有在一有限区域中是非零的小波，如此，小波分析的<map title="系统" href="http://www.mflw.com/search.aspx?keyword=%CF%B5%CD%B3&amp;where=title">系统</map>理论得到了初步建立。  </p><p><br />三、 WAVELET影像压缩简介及基础理论介绍 </p><p>一、 WAVELET的压缩概念  </p><p>WAVELET架在三个主要的基础理论之上，分别是阶层式边码(pyramid coding)、滤波器组理论(filter bank theory)、以及次旁带编码(subband coding)，可以说wavelet transform统合了此三项<a href="http://www.itshantou.com/" target="_blank">技术</a>。小波转换能将各种交织在一起的不同频率组成的信号，分解成不相同频率的信号，因此能有效的应用於编码、解码、检测边缘、压缩数据，及将非线性问题线性化。良好的分析局部的时间区域与频率区域的信号，弥补傅利叶转换中的缺失，也因此小波转换被誉为数学显微镜。  </p><p>WAVELET并不会保留所有的原始资料，而是选择性的保留了必要的部份，以便经由数学公式推算出其原始资料，可能不是非常完整，但是可以非常接近原始资料。至於影像中什度要保留，什麽要舍弃，端看能量的大小储存（跟波长与频率有关）。以较少的资料代替原来的资料，达到压缩资料的目的，这种经由取舍资料而达到压缩目地的作法，是近代数位影像编码<a href="http://www.itshantou.com/" target="_blank">技术</a>的一项突破。即是WAVELET的概念引入编码<a href="http://www.itshantou.com/" target="_blank">技术</a>中。 </p><p>WAVELET转换在数位影像转换<a href="http://www.itshantou.com/" target="_blank">技术</a>上算是新秀，然而在太空科技早已行之有年，像探测卫星和哈柏望远镜传输影像回地球，和医学上的光纤影像，早就开始用WAVELET的原理压缩/还原影像资料，而且有压缩率极佳与原影重现的效果。 </p><p>以往lossless的编码法只着重压缩演算法的表现，将数位化的影像资料一丝不漏的送去压缩，所以还原回来的资料和原始资料分毫无差，但是此种压缩法的压缩率不佳。 将数位化的影像资料转换成利於编码的资料型态，控制解码後影像的品质，选择适当的编码法，而且还在撷取图形资料时，先帮资料「减肥」。如此才是WAVELET编码法主要的观念。  </p><p>二、 影像压缩过程 </p><p>原始图形资料 → 色彩模式转换 → DCT转换 → 量化器 → 编码器 → 编码结束  </p><p>三、 编码的基本要素有三点 </p><p>（一） 一种压缩/还原的转换可表现在影像上的。 </p><p>（二） 其转换的系数是可以量化的。 </p><p>（三） 其量化的系数是可以用函数编码的。 </p><p>四、 现有WAVELET影像压缩工具主要的部份 </p><p>（一） Wavelet Transform（WAVELET转换）：将图形均衡的分割成任何大小，最少压缩二分之一。  </p><p>（二） Filters（滤镜）：这部份包含Wavelet Transform，和一些着名的压缩方法。  </p><p>（三） Quantizers（量化器）：包含两种格式的量化，一种是平均量化，一种是内插量化，对编码的架构有一定的影响。 </p><p>（四） Entropy Coding（熵编码器）：有两种格式，一种是使其减少，一种为内插。 </p><p>（五） Arithmetic Coder（数学公式）：这是建立在Alistair Moffat's linear time coding histogram的基础上。 </p><p>（六） Bit Allocation（资料分布）：这个过程是用整除法有效率的分配任何一种量化。  </p><p>肆、 WAVELET影像压缩未来的发展趋势 </p><p>一、 在其结构上加强完备性。 </p><p>二、 修改程式，使其可以处理不同模式比率的影像。 </p><p>三、 支援更多的色彩。可以处理RGB的色彩，像是YIQ、HUV的色彩定义都可以分别的处理。  </p><p>四、 加强运算的能力，使其可支援更多的影像格式。 </p><p>五、 使用WAVELET转换藉由消除高频率资料增加速率。 </p><p>六、 增加多种的WAVELET。如：离散、零元树等。 </p><p>七、 修改其数学编码器，使资料能在数学公式和<map title="电脑和计算机方面" href="http://www.mflw.com/search.aspx?keyword=%B5%E7%C4%D4&amp;where=title">电脑</map>的位元之间转换。 </p><p>八、 增加8X8格的DCT模式，使其能做JPEG的压缩。 </p><p>九、 增加8X8格的DCT模式，使其能重叠。 </p><p>十、 增加trellis coding。 </p><p>十一、 增加零元树。 </p><p>现今已有由中研院委托国内学术单位研究，也有不少的研究所的硕士<map title="&lt;a href='http://www.itshantou.com/lw/' target=_blank&gt;论文&lt;/a&gt;" href="http://www.mflw.com/search.aspx?keyword=%C2%DB%CE%C4&amp;amp;where=title"><a href="http://www.itshantou.com/lw/" target="_blank">论文</a></map>发表。国外更是如火如荼的展开研究。相信实际应用於实务上的日子指日可待。  </p><p>　 </p><p>伍、 影像压缩研究的方向 </p><p>1. 输入装置如何捕捉真实的影像而将其数位化。 </p><p>2. 如何将数位化的影像资料转换成利於编码的资料型态。 </p><p>3. 如何控制解码影像的品质。 </p><p>4. 如何选择适当的编码法。 </p><p>5. 人的视觉<map title="系统" href="http://www.mflw.com/search.aspx?keyword=%CF%B5%CD%B3&amp;where=title">系统</map>对影像的反应机制。 </p><p>小波分析，无论是作为数学理论的连续小波变换，还是作为分析工具和方法的离散小波变换，仍有许多可被研究的地方，它是近几年来在工具及方法上的重大突破。小波分析是傅利叶（Fourier）分析的重要发展，他保留了傅氏理论的优点，又能克服其不足之处。  </p><p><br />陆、 在印刷输出的应用 </p><p>WAVELET影像压缩格式尚未成熟的情况下，作为印刷输出还嫌太早。但是後续发展潜力无穷，尤其在网路出版方面，其利用价值更高，WAVELET的出现就犹如当时的JPEG出现，在影像的领域中掀起一股旋风，但是WAVELET却有JPEG没有的优点，JPEG乃是失真压缩，且解码後复原程度有限，能在网路应用，乃是由於<map title="电脑和计算机方面" href="http://www.mflw.com/search.aspx?keyword=%B5%E7%C4%D4&amp;where=title">电脑</map>的解析度并不需要太高，就可辨识其图形。而印刷所需的解析度却需一定的程度。WAVELET虽然也是失真压缩，但是解码後却可以还原资料到几乎完整还原，如此的压缩才有存在的价值。 </p><p>有一点必须要提出的就是，并不是只要资料还原就可以用在印刷上，还需要有解读其档案的RIP，才能用於数位印刷上。等到WAVELET的应用成熟，再发展其适用的RIP，又是一段时间以後的事了。 </p><p>在网路出版上已经有浏览器可以外挂读取WAVELET档案的软体了，不过还是测试版，可是以後会在网路上大量使用，应该是未来的趋势。对於网路出版应该是一阵不小的冲击。 </p><p>图像压缩的好处是在於资料传输快速，减少网路的使用费用，增加企业的利润，由於传版的时间减少，也使印刷品在当地印刷的可能性增高，减少运费，减少开支，提高时效性，创造新的商机。  </p><p><br />柒、 结论  </p><p>WAVELET的理论并不是相当完备，但是据现有的研究<map title="报告" href="http://www.mflw.com/search.aspx?keyword=%B1%A8%B8%E6&amp;where=title">报告</map>显现，到普及应用的阶段，还有一段距离。但小波分析在信号处理、影像处理、量子物理及非线性科学领域上，均有其应用价值。国内已有正式<map title="&lt;a href='http://www.itshantou.com/lw/' target=_blank&gt;论文&lt;/a&gt;" href="http://www.mflw.com/search.aspx?keyword=%C2%DB%CE%C4&amp;amp;where=title"><a href="http://www.itshantou.com/lw/" target="_blank">论文</a></map>研究此一压缩模式。但有许多名词尚未有正式的翻译，各自有各自的翻译，故研究起来倍感辛苦。但相信不久即会有正式的定名出现。这也显示国内的研究速度，远落在外国的後面，国外已成立不少相关的<map title="&lt;a href='http://www.itshantou.com' target=_blank&gt;网站&lt;/a&gt;" href="http://www.mflw.com/search.aspx?keyword=%CD%F8%D5%BE&amp;where=title"><a href="http://www.itshantou.com/" target="_blank">网站</a></map>，国内仅有少数的相关<map title="&lt;a href='http://www.itshantou.com/lw/' target=_blank&gt;论文&lt;/a&gt;" href="http://www.mflw.com/search.aspx?keyword=%C2%DB%CE%C4&amp;amp;where=title"><a href="http://www.itshantou.com/lw/" target="_blank">论文</a></map>。如此一来国内要使这种压缩模式普及还有的等。正式使用於印刷业更是要相当时间。不过对於网路出版仍是有相当大的契机，国内仍是可以朝这一方面发展的。站在一个使用其成果的角度，印刷业界也许并不需要去了解其高深的数理理论。但是在运用上，为了要使用方便，和预估其发展趋势，影像压缩的基本概念却不能没有。本篇文章单纯的介绍其中的一种影像压缩模式，目的在为了使後进者有一参考的依据，也许在不久的将来此一模式会成为主流，到时才不会手足无措。 </p><p><br />参考文献： </p><p>1.Geoff Davis，1997，Wavelet Image Compression Construction Kit，。 </p><p>2.张维谷.小宇宙工作室，初版1994，影像档宝典.WINDOWS实作（上）， 峰资讯股份有限公司。 </p><p>3.张维谷.小宇宙工作室，初版1994，影像档宝典.WINDOWS实作（下）， 峰资讯股份有限公司。 </p><p>4.施威铭研究室，1994，PC影像处理<a href="http://www.itshantou.com/" target="_blank">技术</a>（二）图档压缩续篇，旗标出版有限公司。 </p><p>5.卢永成，民八十七年，使用小波转换及其在影像与视讯编码之应用，私立中原大学电机工程学系硕士学位<map title="&lt;a href='http://www.itshantou.com/lw/' target=_blank&gt;论文&lt;/a&gt;" href="http://www.mflw.com/search.aspx?keyword=%C2%DB%CE%C4&amp;amp;where=title"><a href="http://www.itshantou.com/lw/" target="_blank">论文</a></map>。 </p><p>6.江俊明，民八十六年，小波分析简介，私立淡江大学物理学系硕士<map title="&lt;a href='http://www.itshantou.com/lw/' target=_blank&gt;论文&lt;/a&gt;" href="http://www.mflw.com/search.aspx?keyword=%C2%DB%CE%C4&amp;amp;where=title"><a href="http://www.itshantou.com/lw/" target="_blank">论文</a></map>。 </p><p>7.曾泓瑜、陈曜州，民八十三年，最新数位讯号处理<a href="http://www.itshantou.com/" target="_blank">技术</a>（语音、影像处理实务），全欣资讯图书。</p><img src ="http://www.cppblog.com/xushaohua/aggbug/14121.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/xushaohua/" target="_blank">shaohua</a> 2006-10-25 10:28 <a href="http://www.cppblog.com/xushaohua/articles/14121.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[转]指纹识别算法仍有优化空间</title><link>http://www.cppblog.com/xushaohua/articles/13240.html</link><dc:creator>shaohua</dc:creator><author>shaohua</author><pubDate>Tue, 03 Oct 2006 07:37:00 GMT</pubDate><guid>http://www.cppblog.com/xushaohua/articles/13240.html</guid><wfw:comment>http://www.cppblog.com/xushaohua/comments/13240.html</wfw:comment><comments>http://www.cppblog.com/xushaohua/articles/13240.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/xushaohua/comments/commentRss/13240.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/xushaohua/services/trackbacks/13240.html</trackback:ping><description><![CDATA[
		<p class="a14">指纹识别算法是实现指纹识别的关键，它直接决定了识别率的高低，是指纹识别技术的核心。虽然这些算法日臻完善，但仍有进一步降低错误率的空间。 
</p>
		<p class="a14">目前，指纹识别技术的研究无论是在前端的数据采集上还是在后端的指纹识别算法上都已经取得了巨大的进展。于是，很多人认为现在的指纹识别技术已经很完善了，不再需要研究了。但这种观点是错误的，在指纹识别技术上仍然有一些没有解决好的问题，如: 低质量指纹图像的处理、形变指纹图像的匹配、活体指纹的检测等。这些都是经常遇到、非常重要和亟待解决的问题。在国际指纹识别竞赛（FVC2004）中，指纹数据库DB1中有些指纹图像的形变就很大，而位于第一名的指纹识别算法的等错误率(EER)是1.97%，从中可以看出形变指纹图像的处理仍然不是很理想，有着很多工作要做。 
</p>
		<p class="a14">自动指纹识别系统（Automatic Fingerprint Identification System，简称AFIS）是通过特殊的光电转换设备和计算机图像处理技术，对活体指纹进行采集、分析和比对，可以自动、迅速、准确地鉴别出个人身份的。一般可以分成“离线部分”和“在线部分”两个部分。如图1所示。 
</p>
		<table cellspacing="1" cellpadding="0" width="600" align="center" bgcolor="#b00e" border="0">
				<tbody>
						<tr bgcolor="#ffffff">
								<td valign="top">
										<img src="http://www.bio1.com.cn/upload/2006_01/060123095721531.jpg" border="0" />
								</td>
						</tr>
						<tr>
								<td valign="top">
										<font color="#ffffff">图1 自动指纹识别系统框图</font>
								</td>
						</tr>
				</tbody>
		</table>
		<p class="a14">其中离线部分包括用指纹采集仪采集指纹、提取出细节点、将细节点保存到数据库中形成指纹模板库等主要步骤。在线部分包括用指纹采集仪采集指纹、提取出细节点、然后将这些细节点与保存在数据库中模板细节点进行匹配，判断输入细节点与模板细节点是否来自同一个手指的指纹。一般来说，离线处理允许人工因素介入，可根据需要手动调整系统参数，而在线处理应完全由系统自动完成所有操作。 
</p>
		<p class="a14">本文主要对指纹图像增强、特征点提取、匹配以及分类和压缩算法进行介绍。 
</p>
		<p class="a14">指纹图像增强算法 
</p>
		<p class="a14">采集获得的指纹图像通常都伴随着各种各样的噪声，一部分是由于采集仪造成的，比如采集仪上的污渍，采集仪的参数设置不恰当等。另外一部分是由于手指的状态造成的，比如手指的过干、太湿、伤疤、脱皮等等。第一种相对来说是固定的系统误差，比较容易恢复。另外一类和个体手指密切相关，比较难于恢复。指纹增强在指纹图像的识别过程中是最为重要的一环，这部分算法的优劣将对整个系统的性能产生至关重要的影响。如果这一部分没有处理好，也很难通过改进后面的细节提取过程而获得好的效果。 
</p>
		<p class="a14">指纹图像是连续脊线和谷线组成的（在细节点处除外），具有丰富纹理信息的图像。对于灰度指纹图像，脊线和谷线在局部的小邻域内可以认为是正弦波形状，具有一定的频率和方向。使用方向场和Gabor滤波器来进行增强的算法就是基于这样的特点进行。 
</p>
		<p class="a14">指纹专家通常是根据视觉上的脊线信息来准确地识别出真正的细节点。这些脊线的关系有局部脊线的方向、脊线的连续性、脊线的曲率、光滑度、脊线走向趋势等等。而诸如指纹的脊线连接、局部脊线方向和脊线的光滑度这样的结构信息是有可能在计算机中表示出来的。所以也可以把人对指纹结构的认识引入指纹图像处理的过程中，用计算机来模拟指纹专家做图像增强的算法。 
</p>
		<p class="a14">图像的预处理指的是在指纹进行图像增强前使用一些简单的图像处理手段对图像进行初加工的过程。常见的预处理有: 灰度的均衡化，这可以消除不同图像之间对比度的差异; 使用简单的低通滤波消除斑点噪声、高斯噪声; 计算出图像的边界，进行图像的裁剪，这样可以减少下一步的计算工作量，提高系统的速度。 
</p>
		<p class="a14">指纹特征提取算法 
</p>
		<table cellspacing="1" cellpadding="0" width="150" align="right" bgcolor="#b00e" border="0">
				<tbody>
						<tr>
								<td valign="top">
										<font color="#ffffff">图2 指纹图像及其特征</font>
								</td>
						</tr>
						<tr bgcolor="#ffffff">
								<td valign="top">
										<img src="http://www.bio1.com.cn/upload/2006_01/060123095721532.jpg" border="0" />
								</td>
						</tr>
				</tbody>
		</table>
		<p class="a14">用计算机的语言完整地描述稳定而又有区别的指纹特征是实现自动指纹识别的一个关键问题。选择什么特征以及如何表示这种特征既关系指纹本身的特点，又和具体的指纹匹配算法紧密联系，同时还要考虑所采用的指纹采集设备的特点。目前的自动指纹识别系统普遍采用的指纹特征是细节点（minutiae），分为极限末梢和分叉点，见图2。 
</p>
		<p class="a14">指纹的特征可以反映给定的人类群体里来自不同手指的指纹之间相似的程度。指纹的特征信息很多。这些所有的指纹特征信息构成了庞大的指纹特征集合。那么，特征层需要研究和解决的问题主要与这些特征信息有关，比如: “特征是否是终生不变的、惟一的”，“特征之间存在什么样的相互关系”，“什么样的特征子集可以使某种算法达到最佳的识别效果”，“指纹特征用于身份鉴别是否更安全”等等。一组好的特征不仅要能达到身份识别的基本要求，而且对噪声、畸变和环境条件不敏感。 
</p>
		<p class="a14">围绕指纹特征展开研究是伴随着人们对指纹进行身份鉴别的认识而进行的，如今已经有很长的历史。1892年英国Sir Francis Galton对指纹进行了系统研究，首次提出了指纹特征惟一性的问题。随着信息技术的发展，人们对身份认证的准确性要求明显提高，同时也对指纹有效鉴定身份的能力产生质疑。2002年1月，美国联邦法官路易斯·波拉克做出的“凭借指纹鉴定不能定罪”的裁决促动了针对指纹特征的两个方面的研究工作: (1)在实践中为指纹定出可以作为有效特征的标准，使得两幅指纹是否相符不依赖于鉴定人员的主观判断; (2)研究指纹特征产生误差的根源，从技术角度将出现的误差量化。 
</p>
		<p class="a14">指纹匹配 
</p>
		<p class="a14">指纹匹配指的是通过对两枚指纹特征集间的相似性比较，来判断对应的指纹图像是否来自同一手指的过程，它是一种非常经典而又亟待解决的模式识别问题。 
</p>
		<p class="a14">目前，指纹细节点匹配算法分类有多种: 根据指纹识别的目的可以分为一比一匹配和一比N匹配; 根据操作过程的差异可分为自动匹配 和人机交互匹配; 根据匹配适应性可以分为弹性匹配和刚性匹配。根据指纹细节点定义和相似性判断函数选取的不同，指纹匹配方法更是多种多样的，比如基于奇异点的、基于三角形的、基于极坐标变换的，基于动态规划的、基于图匹配的等等方法，不胜枚举。需要说明的是这些分类方法都难以囊括所有的指纹匹配算法，因为同时有很多算法彼此交叉。 
</p>
		<p class="a14">需要指出的是，上述分类方法并不是绝对的，各种方法是相互联系的，每个算法都有自己的特点，并针对特殊的应用。比如: 图匹配的方法对质量差指纹图的噪声抗干扰能力较好，但方法未经大规模实验的证实; 细节点匹配对质量好的指纹图像计算准确，纹理特征的可区分性不强; 基于纹理信息和串匹配的混合匹配方法在一定程度上提高了识别率，但是计算代价非常高; 基于三角匹配和动态规划的混合匹配方法可以解决非线性形变的问题，但是提取的特征过大，难以满足在线实用的要求。总而言之，指纹图像的几何影像形变及错位等问题是匹配算法需要做的首要工作。因此，在指纹识别中必须考虑这些指纹图像中可能存在的线性或非线性形变。目前已有的算法依赖一个前提条件: 待匹配的两幅指纹图像是使用相同配置、相同采集仪来采集的，即同模态，并且，这些指纹允许存在一定程度的噪声。而匹配算法的最终目的是对给定的两幅指纹，寻求使这两幅图像的灰度(或特征)相似度之间差异达到最小的方法。在这种情况下，主要的工作常常是对指纹形变问题的研究，建立一个定义在有穷的形变参数空间的带参数的形变变换模型，最后进行形变参数最优化处理。 
</p>
		<p class="a14">指纹分类与压缩 
</p>
		<p class="a14">识别一个人需要将他的指纹与数据库中的所有指纹做比较。在某些民用或刑侦场合，数据库可能非常大（比如几百万枚指纹）。在这种情况下，识别就需要耗费很长的时间，这是无法接受的。这一识别过程可以通过减少必须执行的匹配次数来提高速度。在某些情况下，如果加入诸如性别、种族、年龄等与个体有关的信息能显著降低搜索数据库的范围，然而这些信息并不总是存在的，比如在犯罪现场的指纹。通常的策略是将指纹数据库划分成几个子类，这样识别指纹时只需将此指纹与数据库中同一类的指纹做比较。 
</p>
		<p class="a14">指纹分类就是研究如何以稳定而且可靠的方式将指纹划为某一类别。指纹匹配多根据指纹的局部特征（如细节点）来判别，而指纹分类则根据指纹的全局特征（如全局脊线结构、奇异点）来判别。由于各指纹模式具有较小的类间差距和较大的类内差距，指纹分类是一个非常难的模式识别问题。指纹图像通常还有噪声，这使得分类任务更加困难，因此指纹分类问题一直是模式识别领域中的难点问题，一直以来也吸引了科研人员的极大兴趣。 
</p>
		<p class="a14">指纹压缩技术也是自动指纹识别系统中的一项重要技术，在大容量的指纹库中，为了节省存储空间必须对指纹图进行压缩存储，使用时再进行解压缩。图像压缩编码的目的是以尽量少的比特数表示图像，同时保持复原图像的质量，使它符合预定应用场合的要求。基于小波的指纹压缩算法，是目前技术较成熟、应用较广泛的指纹图像压缩算法。</p>
<img src ="http://www.cppblog.com/xushaohua/aggbug/13240.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/xushaohua/" target="_blank">shaohua</a> 2006-10-03 15:37 <a href="http://www.cppblog.com/xushaohua/articles/13240.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>常用图像压缩方法</title><link>http://www.cppblog.com/xushaohua/articles/13231.html</link><dc:creator>shaohua</dc:creator><author>shaohua</author><pubDate>Mon, 02 Oct 2006 13:03:00 GMT</pubDate><guid>http://www.cppblog.com/xushaohua/articles/13231.html</guid><wfw:comment>http://www.cppblog.com/xushaohua/comments/13231.html</wfw:comment><comments>http://www.cppblog.com/xushaohua/articles/13231.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/xushaohua/comments/commentRss/13231.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/xushaohua/services/trackbacks/13231.html</trackback:ping><description><![CDATA[
		<p>一、行程长度压缩</p>
		<p>原理是将一扫描行中的颜色值相同的相邻像素用一个计数值和那些像素的颜色值来代替。例如:aaabccccccddeee，则可用3a1b6c2d3e来代替。对于拥有大面积，相同颜色区域的图像，用RLE压缩方法非常有效。由RLE原理派生出许多具体行程压缩方法:</p>
		<p>1.PCX行程压缩方法:</p>
		<p>该算法实际上是位映射格式到压缩格式的转换算法，该算法对于连续出现1次的字节Ch，若Ch&gt;0xc0则压缩时在该字节前加上0xc1，否则直接输出Ch，对于连续出现N次的字节Ch，则压缩成0xc0＋N，Ch这两个字节，因而N最大只能为ff－c0=3fh(十进制为63)，当N大于63时，则需分多次压缩。</p>
		<p>2.BI_RLE8压缩方法:</p>
		<p>在WINDOWS3.0、3.1的位图文件中采用了这种压缩方法。该压缩方法编码也是以两个字节为基本单位。其中第一个字节规定了用第二个字节指定的颜色重复次数。如编码0504表示从当前位置开始连续显示5个颜色值为04的像素。当第二个字节为零时第二个字节有特殊含义:0表示行末;1<br />表示图末;2转义后面2个字节，这两个字节分别表示下一像素相对于当前位置的水平位移和垂直位移。这种压缩方法所能压缩的图像像素位数最大为8位(256色)图像。</p>
		<p>3.BI_RLE压缩方法:</p>
		<p>该方法也用于WINDOWS3.0/3.1位图文件中，它与BI_RLE8编码类似，唯一不同是:BI_RLE4的一个字节包含了两个像素的颜色，因此，它只能压缩的颜色数不超过16的图像。因而这种压缩应用范围有限。</p>
		<p>4.紧缩位压缩方法(Packbits):</p>
		<p>该方法是用于Apple公司的Macintosh机上的位图数据压缩方法，TIFF规范中使用了这种方法，这种压缩方法与BI_RLE8压缩方法相似，如1c1c1c1c2132325648压缩为:831c2181325648，显而易见，这种压缩方法最好情况是每连续128个字节相同，这128个字节可压缩为一个数值7f。这种方法还是非常有效的。</p>
		<p>二、霍夫曼编码压缩:</p>
		<p>也是一种常用的压缩方法。是1952年为文本文件建立的，其基本原理是频繁使用的数据用较短的代码代替，很少使用的数据用较长的代码代替，每个数据的代码各不相同。这些代码都是二进制码，且码的长度是可变的。如:有一个原始数据序列，ABACCDAA则编码为A(0)，B(10)，C(110)，D111)，压缩后为010011011011100。产生霍夫曼编码需要对原始数据扫描两遍，第一遍扫描要精确地统计出原始数据中的每个值出现的频率，第二遍是建立霍夫曼树并进行编码，由于需要建立二叉树并遍历二叉树生成编码，因此数据压缩和还原速度都较慢，但简单有效，因而得到广泛的应用。</p>
		<p>三、LZW压缩方法</p>
		<p>LZW压缩技术比其它大多数压缩技术都复杂，压缩效率也较高。其基本原理是把每一个第一次出现的字符串用一个数值来编码，在还原程序中再将这个数值还成原来的字符串，如用数值0x100代替字符串"abccddeee"这样每当出现该字符串时，都用0x100代替，起到了压缩的作用。至于0x100与字符串的对应关系则是在压缩过程中动态生成的，而且这种对应关系是隐含在压缩数据中，随着解压缩的进行这张编码表会从压缩数据中逐步得到恢复，后面的压缩数据再根据前面数据产生的对应关系产生更多的对应关系。直到压缩文件结束为止。LZW是可逆的，所有信息全部保留。</p>
		<p>四、算术压缩方法</p>
		<p>算术压缩与霍夫曼编码压缩方法类似，只不过它比霍夫曼编码更加有效。算术压缩适合于由相同的重复序列组成的文件，算术压缩接近压缩的理论极限。这种方法，是将不同的序列映像到0到1之间的区域内，该区域表示成可变精度(位数)的二进制小数，越不常见的数据要的精度越高(更多的位数)，这种方法比较复杂，因而不太常用。</p>
		<p>五、JPEG(联合摄影专家组JointPhotographicExprertsGroup)</p>
		<p>JPEG标准与其它的标准不同，它定义了不兼容的编码方法，在它最常用的模式中，它是带失真的，一个从JPEG文件恢复出来的图像与原始图像总是不同的，但有损压缩重建后的图像常常比原始图像的效果更好。JPEG的另一个显著的特点是它的压缩比例相当高，原图像大小与压缩后的图像大小相比，比例可以从1％到80～90％不等。这种方法效果也好，适合多媒体系统。</p>
<img src ="http://www.cppblog.com/xushaohua/aggbug/13231.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/xushaohua/" target="_blank">shaohua</a> 2006-10-02 21:03 <a href="http://www.cppblog.com/xushaohua/articles/13231.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>浅析指纹识别</title><link>http://www.cppblog.com/xushaohua/articles/13230.html</link><dc:creator>shaohua</dc:creator><author>shaohua</author><pubDate>Mon, 02 Oct 2006 12:55:00 GMT</pubDate><guid>http://www.cppblog.com/xushaohua/articles/13230.html</guid><wfw:comment>http://www.cppblog.com/xushaohua/comments/13230.html</wfw:comment><comments>http://www.cppblog.com/xushaohua/articles/13230.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/xushaohua/comments/commentRss/13230.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/xushaohua/services/trackbacks/13230.html</trackback:ping><description><![CDATA[一般的指纹分成有以下几个大的类别：left loop，right loop，twin loop，whorl，arch 和 tented arch。这样就可以将每个人的指纹分别规类，进行检索。
<p>    指纹识别基本上也是可以分成：预处理、特征选择和模式分类几个大的步骤。但是由于指纹图像的特殊性，其内在的处理过程可能比较复杂，所以其中的变化也比较多。<br /> <img alt="" src="http://www.chinaai.org/Images/resource/zhiwen1.jpg" onload="javascript:if(this.width&gt;740)this.width=740" border="undefined" /><br />指纹图像的预处理包括：图像加强、细化、方向图提取、分割等步骤。其中分割指的是去除噪声较多不易区分的指纹分块等等。方向图提取的方法也比较多，有模板的方法、神经网络的方法或者其他好多的方法。</p><p>指纹图像的特征指的是这种特征<br /> <img alt="" src="http://www.chinaai.org/Images/resource/zhiwen2.jpg" onload="javascript:if(this.width&gt;740)this.width=740" border="undefined" /></p><p>    特征提取之后的匹配过程，我们所知到的不多，可以参考文章。</p><p>A.K.Jain是其中的大师，中国在这方面的人物有石青云。以下列出了他们的一些文章。</p><p>1. Fingerprint classification approaches: an overview <br /><a href="http://ccrma-www.stanford.edu/~jhw/bioauth/fingerprints/00949849.pdf"><font color="#333333">http://ccrma-www.stanford.edu/~jhw/bioauth/fingerprints/00949849.pdf</font></a></p><p>2. Jain, A., and Pankanti, S., "Fingerprint Classification and Matching". <br /> Handbook for Image and Video Processing, A. Bovik (ed.), Academic Press, April 2000.<br /><a href="http://www.research.ibm.com/ecvg/pubs/sharat-handbook.pdf"><font color="#333333">http://www.research.ibm.com/ecvg/pubs/sharat-handbook.pdf</font></a></p><p>3. L. Hong, Y. Wan, and A. Jain, "Fingerprint image enhancement: Algorithm and performance evaluation,"  IEEE. Trans. Pattern Anal. Machine Intell., vol. 20, pp. 777--789, Aug. 1998.</p><p> <img alt="" src="http://www.chinaai.org/Images/resource/zhiwen3.jpg" onload="javascript:if(this.width&gt;740)this.width=740" border="undefined" /></p><img src ="http://www.cppblog.com/xushaohua/aggbug/13230.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/xushaohua/" target="_blank">shaohua</a> 2006-10-02 20:55 <a href="http://www.cppblog.com/xushaohua/articles/13230.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>指纹识别的基本原理</title><link>http://www.cppblog.com/xushaohua/articles/13228.html</link><dc:creator>shaohua</dc:creator><author>shaohua</author><pubDate>Mon, 02 Oct 2006 12:53:00 GMT</pubDate><guid>http://www.cppblog.com/xushaohua/articles/13228.html</guid><wfw:comment>http://www.cppblog.com/xushaohua/comments/13228.html</wfw:comment><comments>http://www.cppblog.com/xushaohua/articles/13228.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/xushaohua/comments/commentRss/13228.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/xushaohua/services/trackbacks/13228.html</trackback:ping><description><![CDATA[
		<p>
				<span class="unnamed1">
						<font color="#333333" size="2">指纹其实是比较复杂的。与人工处理不同，许多生物识别技术公司并不直接存储指纹的图像。多年来在各个公司及其研究机构产生了许多数字化的算法（美国有关法律认为，指纹图像属于个人隐私，因此不能直接处理指纹图像）。但指纹识别算法最终都归结为在指纹图像上找到并比对指纹的特征。</font>
				</span>
		</p>
		<h2 class="unnamed1" align="left">
				<font color="#333333" size="2">指纹的特征</font>
		</h2>
		<p class="unnamed1" align="left">
				<font color="#333333" size="2">我们定义了指纹的两类特征来进行指纹的验证：总体特征和局部特征。在考虑局部特征的情况下，英国学者E.R.Herry认为，只要比对13个特征点重合，就可以确认为是同一个指纹。</font>
		</p>
		<h3 class="unnamed1" align="left">
				<font color="#333333" size="2">总体特征</font>
		</h3>
		<div align="left">
				<font color="#333333">
						<span class="unnamed1">
								<font size="2">　　总体特征是指那些用肉眼直接就可以观察到的特征，包括：</font>
						</span>
				</font>
		</div>
		<h4 class="unnamed1" align="left">
				<font color="#333333" size="2">纹形</font>
				<font color="#333333">
						<span class="unnamed1">
								<font size="2"> </font>
						</span>
				</font>
		</h4>
		<div align="left">
				<table width="747">
						<tbody>
								<tr>
										<td class="unnamed1">
												<div align="center">
														<font color="#333333">
																<img height="160" alt="loop" src="http://www.chinaai.org/UploadFiles/200433021838734.gif" width="160" />
														</font>
												</div>
										</td>
										<td class="unnamed1">
												<div align="center">
														<font color="#333333"><img height="160" alt="arch" src="http://www.chinaai.org/UploadFiles/200433021838580.gif" width="160" /></font>
												</div>
										</td>
										<td class="unnamed1">
												<div align="center">
														<font color="#333333">
																<img height="160" alt="whorl" src="http://www.chinaai.org/UploadFiles/200433021839621.gif" width="160" />
														</font>
												</div>
										</td>
								</tr>
								<tr align="middle">
										<td class="unnamed1">
												<font color="#333333" size="2">环型（loop） </font>
										</td>
										<td class="unnamed1">
												<font color="#333333" size="2">弓型（arch） </font>
										</td>
										<td class="unnamed1">
												<font color="#333333" size="2">螺旋型（whorl） </font>
										</td>
								</tr>
						</tbody>
				</table>
		</div>
		<p class="unnamed1" align="left">
				<font color="#333333" size="2">其他的指纹图案都基于这三种基本图案。仅仅依靠纹形来分辨指纹是远远不够的，这只是一个粗略的分类，通过更详细的分类使得在大数据库中搜寻指纹更为方便快捷。</font>
		</p>
		<h4 class="unnamed1" align="left">
				<font color="#333333" size="2">模式区（Pattern Area）</font>
		</h4>
		<div align="left">
				<table>
						<tbody>
								<tr>
										<td class="unnamed1" width="120">
												<div align="center">
														<font color="#333333">
																<img height="100" alt="" src="http://www.chinaai.org/UploadFiles/200433021839360.gif" width="100" />
														</font>
												</div>
										</td>
										<td class="unnamed1">
												<font color="#333333"><font size="2">模式区是指指纹上包括了总体特征的区域，即从模式区就能够分辨出指纹是属于那一种类型的。有的指纹识别算法只使用模式区的数据。 SecureTouch的指纹识别算法使用了所取得的完整指纹而不仅仅是模式区进行分析和识别。</font></font>
										</td>
								</tr>
						</tbody>
				</table>
		</div>
		<h4 class="unnamed1" align="left">
				<font color="#333333" size="2">核心点（Core Point）</font>
		</h4>
		<div align="left">
				<table>
						<tbody>
								<tr>
										<td class="unnamed1" width="120">
												<div align="center">
														<font color="#333333">
																<img height="100" alt="" src="http://www.chinaai.org/UploadFiles/200433021839371.gif" width="100" />
														</font>
												</div>
										</td>
										<td class="unnamed1">
												<font color="#333333"><font size="2">核心点位于指纹纹路的渐进中心，它在读取指纹和比对指纹时作为参考点。许多算法是基于核心点的，既只能处理和识别具有核心点的指纹。核心点对于SecureTouch的指纹识别算法很重要，但没有核心点的指纹它仍然能够处理。</font></font>
										</td>
								</tr>
						</tbody>
				</table>
		</div>
		<h4 class="unnamed1" align="left">
				<font color="#333333" size="2">三角点（Delta）</font>
		</h4>
		<div align="left">
				<table>
						<tbody>
								<tr>
										<td class="unnamed1" width="120">
												<div align="center">
														<font color="#333333">
																<img height="100" alt="" src="http://www.chinaai.org/UploadFiles/200433021840797.gif" width="100" />
														</font>
												</div>
										</td>
										<td class="unnamed1">
												<font color="#333333" size="2">三角点位于从核心点开始的第一个分叉点或者断点、或者两条纹路会聚处、孤立点、折转处，或者指向这些奇异点。三角点提供了指纹纹路的计数跟踪的开始之处。</font>
										</td>
								</tr>
						</tbody>
				</table>
		</div>
		<h4 class="unnamed1" align="left">
				<font color="#333333" size="2">纹数（Ridge Count）</font>
		</h4>
		<div align="left">
				<table>
						<tbody>
								<tr>
										<td class="unnamed1" width="120">
												<div align="center">
														<font color="#333333">
																<img height="100" alt="" src="http://www.chinaai.org/UploadFiles/200433021840112.gif" width="100" />
														</font>
												</div>
										</td>
										<td class="unnamed1">
												<font color="#333333"><font size="2">指模式区内指纹纹路的数量。在计算指纹的纹数时，一般先在连接核心点和三角点，这条连线与指纹纹路相交的数量即可认为是指纹的纹数。</font></font>
										</td>
								</tr>
						</tbody>
				</table>
		</div>
		<h3 class="unnamed1" align="left">
				<font color="#333333" size="2">局部特征</font>
		</h3>
		<p class="unnamed1" align="left">
				<font color="#333333" size="2">局部特征是指指纹上的节点的特征，这些具有某种特征的节点称为特征点。两枚指纹经常会具有相同的总体特征，但它们的局部特征--特征点，却不可能完全相同。</font>
		</p>
		<p class="unnamed1" align="left">
				<font color="#333333" size="2">指纹纹路并不是连续的、平滑笔直的，而是经常出现中断、分叉或打折。这些断点、分叉点和转折点就称为“<b>特征点</b>”。就是这些特征点提供了指纹唯一性的确认信息。指纹上的节点有四种不同特性：</font>
		</p>
		<h4 class="unnamed1" align="left">
				<font color="#333333" size="2">特征点的分类</font>
		</h4>
		<p class="unnamed1" align="left">
				<font color="#333333" size="2">有以下几种类型，最典型的是终结点和分叉点。</font>
		</p>
		<div align="left">
				<table>
						<tbody>
								<tr>
										<td class="unnamed1" width="100">
												<div align="center">
														<font color="#333333">
																<img height="85" alt="" src="http://www.chinaai.org/UploadFiles/200433021840784.gif" width="85" />
														</font>
												</div>
										</td>
										<td class="unnamed1">
												<font color="#333333" size="2">终结点（Ending） -- 一条纹路在此终结。</font>
										</td>
								</tr>
								<tr>
										<td class="unnamed1">
												<div align="center">
														<font color="#333333">
																<img height="85" alt="" src="http://www.chinaai.org/UploadFiles/200433021840833.gif" width="85" />
														</font>
												</div>
										</td>
										<td class="unnamed1">
												<font color="#333333" size="2">分叉点（Bifurcation） -- 一条纹路在此分开成为两条或更多的纹路。</font>
										</td>
								</tr>
								<tr>
										<td class="unnamed1">
												<div align="center">
														<font color="#333333">
																<img height="85" alt="" src="http://www.chinaai.org/UploadFiles/200433021841738.gif" width="85" />
														</font>
												</div>
										</td>
										<td class="unnamed1">
												<font color="#333333" size="2">分歧点（Ridge Divergence） -- 两条平行的纹路在此分开。</font>
										</td>
								</tr>
								<tr>
										<td class="unnamed1">
												<div align="center">
														<font color="#333333">
																<img height="85" alt="" src="http://www.chinaai.org/UploadFiles/200433021841140.gif" width="85" />
														</font>
												</div>
										</td>
										<td class="unnamed1">
												<font color="#333333" size="2">孤立点（Dot or Island） -- 一条特别短的纹路，以至于成为一点。</font>
										</td>
								</tr>
								<tr>
										<td class="unnamed1">
												<div align="center">
														<font color="#333333">
																<img height="85" alt="" src="http://www.chinaai.org/UploadFiles/200433021842472.gif" width="85" />
														</font>
												</div>
										</td>
										<td class="unnamed1">
												<font color="#333333" size="2">环点（Enclosure） -- 一条纹路分开成为两条之后，立即有合并成为一条，这样形成的一个小环称为环点。</font>
										</td>
								</tr>
								<tr>
										<td class="unnamed1">
												<div align="center">
														<font color="#333333">
																<img height="85" alt="" src="http://www.chinaai.org/UploadFiles/200433021842876.gif" width="85" />
														</font>
												</div>
										</td>
										<td class="unnamed1">
												<font color="#333333" size="2">短纹（Short Ridge） -- 一端较短但不至于成为一点的纹路。</font>
										</td>
								</tr>
						</tbody>
				</table>
		</div>
		<h4 class="unnamed1" align="left">
				<font color="#333333" size="2">方向（Orientation）</font>
		</h4>
		<p class="unnamed1" align="left">
				<font color="#333333" size="2">-- 节点可以朝着一定的方向。</font>
		</p>
		<h4 class="unnamed1" align="left">
				<font color="#333333" size="2">曲率（Curvature）</font>
		</h4>
		<p class="unnamed1" align="left">
				<font color="#333333" size="2">-- 描述纹路方向改变的速度。</font>
		</p>
		<h4 class="unnamed1" align="left">
				<font color="#333333" size="2">位置（Position）</font>
		</h4>
		<p class="unnamed1" align="left">
				<font color="#333333" size="2">-- 节点的位置通过（x, y）坐标来描述，可以是绝对的，也可以是相对于三角点或特征点的。</font>
		</p>
<img src ="http://www.cppblog.com/xushaohua/aggbug/13228.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/xushaohua/" target="_blank">shaohua</a> 2006-10-02 20:53 <a href="http://www.cppblog.com/xushaohua/articles/13228.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>指纹识别系统及其应用</title><link>http://www.cppblog.com/xushaohua/articles/13229.html</link><dc:creator>shaohua</dc:creator><author>shaohua</author><pubDate>Mon, 02 Oct 2006 12:53:00 GMT</pubDate><guid>http://www.cppblog.com/xushaohua/articles/13229.html</guid><wfw:comment>http://www.cppblog.com/xushaohua/comments/13229.html</wfw:comment><comments>http://www.cppblog.com/xushaohua/articles/13229.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/xushaohua/comments/commentRss/13229.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/xushaohua/services/trackbacks/13229.html</trackback:ping><description><![CDATA[一、 简介 <br />我们手掌及其手指、脚、脚趾内侧表面的皮肤凸凹不平产生的纹路会形成各种各样的图案。这些纹路的存在增加了皮肤表面的摩擦力，使得我们能够用手来抓起重物。人们也注意到，包括指纹在内的这些皮肤的纹路在图案、断点和交叉点上各不相同，也就是说，是唯一的。依靠这种唯一性，我们就可以把一个人同他的指纹对应起来，通过比较他的指纹和预先保存的指纹进行比较，就可以验证他的真实身份。这种依靠人体的身体特征来进行身份验证的技术称为生物识别技术，指纹识别是生物识别技术的一种。<br />1、现行的系统受到的挑战 <br />安全性是许多系统要首先考虑的问题，尽管使用者一向都相当讨厌安全检查机制介入他们的工作中，但管理者仍然需要这样的一种检查访问与使用情形的手续与方法。如果没有办法清楚明确的辨认使用者身分的话，那么你也将无法确认是那位使用者，以及他究竟操作了什么行动。所以使用者会被强迫去进行一些密码机制或硬件标志以帮助我们去追踪究竟是谁做了些什么？<br />现行的许多计算机系统中，包括许多非常机密的系统，都是使用“用户ID+密码”的方法来进行用户的身份认证和访问控制的。实际上，这种方案隐含着一些问题。例如，密码容易被忘记，也容易被别人窃取。而且，如果用户忘记了他的密码，他就不能进入系统，当然可以通过系统管理员重新设定密码来重新开始工作，但是一旦系统管理员忘记了自己的密码，整个系统也许只有重新安装后才能工作。有关机构的调查表明，因为忘记密码而产生的问题已经成为IT厂商售后服务的最常见问题之一；密码被别人盗取则更是一件可怕的事情，因为用心不良的人可能会进一步窃取公司机密数据、可能会盗用别人的名义做不正当的事情、甚至从锹行、ATM终端上提取别人的巨额存款。实际上，密码的盗取比较容易，别人只要留意你在计算机终端前输入口令时的击键动作就可以知道你的密码，甚至可以通过你的生日、年龄、姓名或者其他一些信息猜出你的密码--许多人使用自己的生日作为密码，密码还可以被解破--众所周知，高度机密的美国一些军事机构计算机网络曾不止一次被黑客侵入，黑客们实际上就是解破了这些计算机网络的某一合法用户的密码来开始的。尽管现行系统通过要求用户及时改变他们的口今来防止盗用口令行为，但这种方法不但增加了用户的记忆负担，也不能从根本上解决问题。<br />随着科技的进步，指纹识别技术已经开始走入了我们的日常生活之中。目前在世界上许多公司和研究机构都在指纹识别技术的研究中取得一些突破性技术，从而推出了许多新产品，这些产品己经开始在请多领域得以运用。BAC公司推出的业界领先的SecureTouch指纹识别机产品，就是非常具有应用价值和前景的。<br />除了计算机网络及其应用系统外，一些传统的需要进行身份验证的场合，也存在着类似的安全性问题。例如证件的伪造和盗用、不正当的转借等。一些犯罪通过伪造证件进入机密场所以窃取机密信息，有的犯罪伪造签证和护照非法入境或移民，这是因为传统的证件使用了易于伪造、未经加密的纸制证件。另一个例子是考勤机，它的使用方便了企业进行职工的考勤管理，但使领导头疼的是经常有人弄虚作假，代别人打卡。<br />丢了钥匙不仅打不开门，还要当心坏人拾到你的钥匙盗取你的家财，其他使用钥匙的场合同样也有如此的问题……<br />这些问题都说明，现行的系统安全性技术己经遭遇严峻的挑战!<br />2、指纹识别是成熟的生物识别(Biometric)技术 <br />由于人体的身体特征具有不可复制的特点，人们把目光转向了生物识别技术，希望可以籍此技术来应付现行系统安全所面临的的挑战。要把人体的特证用于身份识别，这些特征必须具有唯一性和稳定性。研究和经验表明，人的指纹、掌纹、面孔、发音、虹膜、视网膜、骨架等都具有唯一性和稳定性的特征，即每个人的这些特征都与别人不同、且终生不变，因此就可以据此识别出人的身份。基于这些特征，人们发展了指纹识别、面部识别、发音识别等多种生物识别技术，目前许多技术都己经成熟并得以应用，其中的指纹识别技术更是生物识别技术的热点。<br />指纹识别技术的发展得益于现代电子集成制造技术和快速可靠的算法的研究。尽管指纹只是人体皮肤的一小部分，但用于识别的数据量相当大，对这些数据进行比对也不是简单的相等与不相等的问题，而是使用需要进行大量运算的模糊匹配算法。现代电子集成制造技术使得我们可以制造相当小的指纹图象读取设备，同时飞速发展的个人计算机运算速度提供了在微机甚至单片机上可以进行两个指纹的比对运算的可能。另外，匹配算法可靠性也不断提高，指纹识别技术己经非常实用。<br />二、 验证和辨识 <br />应用系统利用指纹识别技术可以分为两类，即验证(Verification)和辨识(Identification)。 验证就是通过把一个现场采集到的指纹与一个己经登记的指纹进行一对一的比对（one-to-one matching），来确认身份的过程。作为验证的前提条件，他或她的指纹必须在指纹库中已经注册。指纹以一定的压缩格式存贮，并与其姓名或其标识（ID，PIN）联系起来。随后在比对现场，先验证其标识，然后，利用系统的指纹与现场采集的指纹比对来证明其标识是合法的。验证其实是回答了这样一个问题："他是他自称的这个人吗？"这是应用系统中使用得较多的方法。<br />辨识则是把现场采集到的指纹同指纹数据厍中的指纹逐一对比，从中找出与现场指纹相匹配的指纹。这也叫“一对多匹配（one-to-many matching）”。验证其实是回答了这样一个问题：“他是谁？”辨识主要应用于犯罪指纹匹配的传统领域中。一个不明身份的人的指纹与指纹库中有犯罪记录的人指纹进行比对，来确定此人是否曾经有过犯罪记录。<br />验证和辨识在比对算法和系统设计上各具技术特点。例如验证系统一般只考虑对完整的指纹进行比对，而辨识系统要考虑残纹的比对；验证系统对比对算法的速度要求不如辨识系统高，但更强调易用性；另外在辨识系统中，一般要使用分类技术来加快查询的速度。<br />除了验证的一对一和辨识的一对多比对方法，在实际应用中还有“一对几个匹配（one-to-few matching）”。一对几个匹配主要应用于只有“几个(few)”用户的系统中，比如一个家庭的成员要进入他们的房子。 “几个”所包含的数目一般为5～20人。一对几个匹配一般使用与一对一匹配相同的方法。<br />三、 可靠性问题 <br />由于计算机处理指纹时，只是涉及了指纹的一些有限的信息，而且比对算法并不是精确匹配，其结果也不能保证100%准确。指纹识别系统的特定应用的重要衡量标志是识别率。主要由两部分组成，拒判率(FRR)和误判率(FAR)。我们可以根据不同的用途来调整这两个值。FRR和FAR是成反比的。用0-1.0或百分比来表达这个数。ROC(Receiver Operating Curve)-曲线给出FAR和FRR之间的关系。<br />尽管指纹识别系统存在着可靠性问题，但其安全性也比相同可靠性级别的“用户ID+密码”方案的安全性高得多。例如采用四位数字密码的系统，不安全概率为0.01%，如果同采用误判率为0.01%指纹识别系统相比，由于不诚实的人可以在一段时间内试用所有可能的密码，因此四位密码并不安全，但是他绝对不可能找到一千个人去为他把所有的手指（十个手指）都试一遍。正因为如此，权威机构认为，在应用中1%的误判率就可以接受。<br />FRR实际上也是系统易用性的重要指标。由于FRR和FAR是相互矛盾的，这就使得在应用系统的设计中，要权衡易用性和安全性。一个有效的办法是比对两个或更多的指纹，从而在不损失易用性的同时，极大地提高了系统安全性。<br />四、 嵌入式系统(Embedded System)与连接PC的桌面应用 <br />利用指纹识别技术的应用系统常见有两种方法，即嵌入式系统和连接PC的桌面应用系统。嵌入式系统是一个相对独立的完整系统，它不需要连接其他设备或计算机就可以独立完成其设计的功能，象指纹门锁、指纹考勤终端就是嵌入式系统。其功能较为单一，应用于完成特定的功能。而连接PC的桌面应用系统具有灵活的系统结构，并且可以多个系统共享指纹识别设备，可以建立大型的数据库应用。当然，由于需要连接计算机才能完成指纹识别的功能，限制了这种系统在许多方面的应用。<br />当今市场上的指纹识别系统厂商，除了提供完整的指纹识别应用系统及其解决方案外，可以提供从指纹取像设备的OEM产品到完整的指纹识别软件开发包，从而使得无论是系统集成商还是应用系统开发商都可以自行开发自己的增值产品，包括嵌入式的系统和其他应用指纹验证的计算机软件。<br />五、 指纹识别技术应用实例 <br />指纹识别技术可以通过几种方法应用到许多方面。本文在上面已经介绍的通过使用指纹验证来取代各个计算机应用程序的密码就是最为典型的实例。可以想象如果计算机上的所有系统和应用程序都可以使用指纹验证的话，人们使用计算机就会非常方便和安全，用户不再讨厌必要的安全性检查，而IT开发商的售后服务工作也会减轻许多。IBM公司已经开发成功并广泛应用的Global Sign On软件通过定义唯一的口令，或者使用指纹，就可以在公司整个网络上畅行无阻。 把指纹识别技术同IC卡结合起来，是目前最有前景的一个方向之一。该技术把卡的主人的指纹（加密后）存储在IC卡上，并在IC卡的读卡机上加装指纹识别系统，当读卡机阅读卡上的信息时，一并读入持卡者的指纹，通过比对卡上的指纹与持卡者的指纹就可以确认持卡者的是否卡的真正主人，从而进行下一步的交易。在更加严格的场合，还可以进一步同后端主机系统数据库上的指纹作比较。指纹IC卡可以广泛地运用于许多行业中，例如取代现行的ATM卡、制造防伪证件（签证或护照、公费医疗卡、会员卡、借书卡等）。目前ATM提款机加装指纹识别功能在美国已经开始使用。持卡人可以取消密码 (避免老人和孩子记忆密码的困难)或者仍旧保留密码，在操作上按指纹与密码的时间差不多。<br />近年来，自动发送信息的互联网络，带给人们的方便与利益，正在快速增长之中，但也因此产生了很多的问题，尤其在信息安全方面。无论是团体或者个人的信息，都害怕在四通八达的网络上传送而发生有损权益的事情。由于指纹特征数据可以通过电子邮件或其他传输方法在计算机网络上进行传输和验证，通过指纹识别技术，限定只有指定的人才能访问相关信息，可以极大地提高网上信息的安全性，这样，包括网上银行、网上贸易、电子商务的一系列网络商业行为，就有了安全性保障。在SFNB(Security First Network Bank安全第一网络银行)，就是通过互联网络来进行资金划算的，他们目前正在实施以指纹识别技术为基础的保障安全性的项目，以增强交易的安全性。<br />在医院里，指纹识别技术可以验证病人身份，例如输血管理。指纹识别技术也有助于证实寻求公共救援、医疗及其他政府福利或者保险金的人的身份确认。在这些应用中，指纹识别系统将会取代或者补充许多大量使用照片和ID的系统。<br />总之，随着许多指纹识别产品已经开发和生产，指纹识别技术的应用已经开始进入民用市场，并且发展迅猛，相信这一技术的普及应用已经指日可待。<img src ="http://www.cppblog.com/xushaohua/aggbug/13229.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/xushaohua/" target="_blank">shaohua</a> 2006-10-02 20:53 <a href="http://www.cppblog.com/xushaohua/articles/13229.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>数字图像简介</title><link>http://www.cppblog.com/xushaohua/articles/12591.html</link><dc:creator>shaohua</dc:creator><author>shaohua</author><pubDate>Sun, 17 Sep 2006 11:41:00 GMT</pubDate><guid>http://www.cppblog.com/xushaohua/articles/12591.html</guid><wfw:comment>http://www.cppblog.com/xushaohua/comments/12591.html</wfw:comment><comments>http://www.cppblog.com/xushaohua/articles/12591.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/xushaohua/comments/commentRss/12591.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/xushaohua/services/trackbacks/12591.html</trackback:ping><description><![CDATA[
		<span class="javascript">
				<font color="#000000">
						<font color="#ff0033">
								<strong>1.数字图像处理发展概况<br />2.数字图像处理主要研究的内容<br />3.数字图像处理的基本特点<br />4.数字图像处理的优点<br />5.数字图像处理的应用</strong>
								<br />
						</font>
						<br />
						<strong>数字图像处理发展概况<br /></strong>　　数字图像处理（Digital Image Processing）又称为计算机图像处理，它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。数字图像处理最早出现于20世纪50年代，当时的电子计算机已经发展到一定水平，人们开始利用计算机来处理图形和图像信息。数字图像处理作为一门学科大约形成于20世纪60年代初期。早期的图像处理的目的是改善图像的质量，它以人为对象，以改善人的视觉效果为目的。图像处理中，输入的是质量低的图像，输出的是改善质量后的图像，常用的图像处理方法有图像增强、复原、编码、压缩等。首次获得实际成功应用的是美国喷气推进实验室（JPL）。他们对航天探测器徘徊者7号在1964年发回的几千张月球照片使用了图像处理技术，如几何校正、灰度变换、去除噪声等方法进行处理，并考虑了太阳位置和月球环境的影响，由计算机成功地绘制出月球表面地图，获得了巨大的成功。随后又对探测飞船发回的近十万张照片进行更为复杂的图像处理，以致获得了月球的地形图、彩色图及全景镶嵌图，获得了非凡的成果，为人类登月创举奠定了坚实的基础，也推动了数字图像处理这门学科的诞生。在以后的宇航空间技术，如对火星、土星等星球的探测研究中，数字图像处理技术都发挥了巨大的作用。数字图像处理取得的另一个巨大成就是在医学上获得的成果。1972年英国EMI公司工程师Housfield发明了用于头颅诊断的X射线计算机断层摄影装置，也就是我们通常所说的CT（Computer Tomograph）。CT的基本方法是根据人的头部截面的投影，经计算机处理来重建截面图像，称为图像重建。1975年EMI公司又成功研制出全身用的 CT装置，获得了人体各个部位鲜明清晰的断层图像。1979年，这项无损伤诊断技术获得了诺贝尔奖，说明它对人类作出了划时代的贡献。与此同时，图像处理技术在许多应用领域受到广泛重视并取得了重大的开拓性成就，属于这些领域的有航空航天、生物医学工程、工业检测、机器人视觉、公安司法、军事制导、文化艺术等，使图像处理成为一门引人注目、前景远大的新型学科。随着图像处理技术的深入发展，从70年代中期开始，随着计算机技术和人工智能、思维科学研究的迅速发展，数字图像处理向更高、更深层次发展。人们已开始研究如何用计算机系统解释图像，实现类似人类视觉系统理解外部世界，这被称为图像理解或计算机视觉。很多国家，特别是发达国家投入更多的人力、物力到这项研究，取得了不少重要的研究成果。其中代表性的成果是70年代末MIT的Marr提出的视觉计算理论，这个理论成为计算机视觉领域其后十多年的主导思想。图像理解虽然在理论方法研究上已取得不小的进展，但它本身是一个比较难的研究领域，存在不少困难，因人类本身对自己的视觉过程还了解甚少，因此计算机视觉是一个有待人们进一步探索的新领域。 <br /><br /><strong>数字图像处理主要研究的内容</strong><br />　　 数字图像处理主要研究的内容有以下几个方面： <br />        1) 图像变换。由于图像阵列很大，直接在空间域中进行处理，涉及计算量很大。因此，往往采用各种图像变换的方法，如傅立叶变换、沃尔什变换、离散余弦变换等间接处理技术，将空间域的处理转换为变换域处理，不仅可减少计算量，而且可获得更有效的处理（如傅立叶变换可在频域中进行数字滤波处理）。目前新兴研究的小波变换在时域和频域中都具有良好的局部化特性，它在图像处理中也有着广泛而有效的应用。<br />         2) 图像编码压缩。图像编码压缩技术可减少描述图像的数据量（即比特数），以便节省图像传输、处理时间和减少所占用的存储器容量。压缩可以在不失真的前提下获得，也可以在允许的失真条件下进行。编码是压缩技术中最重要的方法，它在图像处理技术中是发展最早且比较成熟的技术。<br />         3) 图像增强和复原。图像增强和复原的目的是为了提高图像的质量，如去除噪声，提高图像的清晰度等。图像增强不考虑图像降质的原因，突出图像中所感兴趣的部分。如强化图像高频分量，可使图像中物体轮廓清晰，细节明显；如强化低频分量可减少图像中噪声影响。图像复原要求对图像降质的原因有一定的了解，一般讲应根据降质过程建立" 降质模型"，再采用某种滤波方法，恢复或重建原来的图像。 <br />        </font>
		</span>
		<span class="javascript">
				<font color="#000000">4) 图像分割。图像分割是数字图像处理中的关键技术之一。图像分割是将图像中有意义的特征部分提取出来，其有意义的特征有图像中的边缘、区域等，这是进一步进行图像识别、分析和理解的基础。虽然目前已研究出不少边缘提取、区域分割的方法，但还没有一种普遍适用于各种图像的有效方法。因此，对图像分割的研究还在不断深入之中，是目前图像处理中研究的热点之一。 <br />       5) 图像描述。图像描述是图像识别和理解的必要前提。作为最简单的二值图像可采用其几何特性描述物体的特性，一般图像的描述方法采用二维形状描述，它有边界描述和区域描述两类方法。对于特殊的纹理图像可采用二维纹理特征描述。随着图像处理研究的深入发展，已经开始进行三维物体描述的研究，提出了体积描述、表面描述、广义圆柱体描述等方法。 <br />       6) 图像分类（识别）。</font>
		</span>
		<span class="javascript">
				<font color="#000000">图像分类（识别）属于模式识别的范畴，其主要内容是图像经过某些预处理（增强、复原、压缩）后，进行图像分割和特征提取，从而进行判决分类。图像分类常采用经典的模式识别方法，有统计模式分类和句法（结构）模式分类，近年来新发展起来的模糊模式识别和人工神经网络模式分类在图像识别中也越来越受到重视。<br /><br /><strong>数字图像处理的基本特点</strong><br />　　（1）目前，数字图像处理的信息大多是二维信息，处理信息量很大。如一幅256×256低分辨率黑白图像，要求约64kbit的数据量；对高分辨率彩色512×512图像，则要求768kbit数据量；如果要处理30帧/秒的电视图像序列，则每秒要求500kbit～22.5Mbit数据量。因此对计算机的计算速度、存储容量等要求较高。<br />       （2）数字图像处理占用的频带较宽。与语言信息相比，占用的频带要大几个数量级。如电视图像的带宽约5.6MHz，而语音带宽仅为4kHz左右。所以在成像、传输、存储、处理、显示等各个环节的实现上，技术难度较大，成本亦高，这就对频带压缩技术提出了更高的要求。<br />       （3）数字图像中各个像素是不独立的，其相关性大。在图像画面上，经常有很多像素有相同或接近的灰度。就电视画面而言，同一行中相邻两个像素或相邻两行间的像素，其相关系数可达0.9以上，而相邻两帧之间的相关性比帧内相关性一般说还要大些。因此，图像处理中信息压缩的潜力很大。<br />       （4）由于图像是三维景物的二维投影，一幅图象本身不具备复现三维景物的全部几何信息的能力，很显然三维景物背后部分信息在二维图像画面上是反映不出来的。因此，要分析和理解三维景物必须作合适的假定或附加新的测量，例如双目图像或多视点图像。在理解三维景物时需要知识导引，这也是人工智能中正在致力解决的知识工程问题。<br />       （5）数字图像处理后的图像一般是给人观察和评价的，因此受人的因素影响较大。由于人的视觉系统很复杂，受环境条件、视觉性能、人的情绪爱好以及知识状况影响很大，作为图像质量的评价还有待进一步深入的研究。另一方面，计算机视觉是模仿人的视觉，人的感知机理必然影响着计算机视觉的研究。例如，什么是感知的初始基元，基元是如何组成的，局部与全局感知的关系，优先敏感的结构、属性和时间特征等，这些都是心理学和神经心理学正在着力研究的课题。 <br /><br /><strong>数字图像处理的优点<br /></strong>　　1. 再现性好数字图像处理与模拟图像处理的根本不同在于，它不会因图像的存储、传输或复制等一系列变换操作而导致图像质量的退化。只要图像在数字化时准确地表现了原稿，则数字图像处理过程始终能保持图像的再现。 <br />       2．处理精度高按目前的技术，几乎可将一幅模拟图像数字化为任意大小的二维数组，这主要取决于图像数字化设备的能力。现代扫描仪可以把每个像素的灰度等级量化为16位甚至更高，这意味着图像的数字化精度可以达到满足任一应用需求。对计算机而言，不论数组大小，也不论每个像素的位数多少，其处理程序几乎是一样的。换言之，从原理上讲不论图像的精度有多高，处理总是能实现的，只要在处理时改变程序中的数组参数就可以了。回想一下图像的模拟处理，为了要把处理精度提高一个数量级，就要大幅度地改进处理装置，这在经济上是极不合算的。 <br />       3．适用面宽图像可以来自多种信息源，它们可以是可见光图像，也可以是不可见的波谱图像（例如X射线图像、射线图像、超声波图像或红外图像等）。从图像反映的客观实体尺度看，可以小到电子显微镜图像，大到航空照片、遥感图像甚至天文望远镜图像。这些来自不同信息源的图像只要被变换为数字编码形式后，均是用二维数组表示的灰度图像（彩色图像也是由灰度图像组合成的，例如RGB图像由红、绿、蓝三个灰度图像组合而成）组合而成，因而均可用计算机来处理。即只要针对不同的图像信息源，采取相应的图像信息采集措施，图像的数字处理方法适用于任何一种图像。<br />       4．灵活性高图像处理大体上可分为图像的像质改善、图像分析和图像重建三大部分，每一部分均包含丰富的内容。由于图像的光学处理从原理上讲只能进行线性运算，这极大地限制了光学图像处理能实现的目标。而数字图像处理不仅能完成线性运算，而且能实现非线性处理，即凡是可以用数学公式或逻辑关系来表达的一切运算均可用数字图像处理实现。 <br /><br /><strong>数字图像处理的应用<br /></strong>　　图像是人类获取和交换信息的主要来源，因此，图像处理的应用领域必然涉及到人类生活和工作的方方面面。随着人类活动范围的不断扩大，图像处理的应用领域也将随之不断扩大。 <br />      1）航天和航空技术方面的应用数字图像处理技术在航天和航空技术方面的应用，除了上面介绍的JPL对月球、火星照片的处理之外，另一方面的应用是在飞机遥感和卫星遥感技术中。许多国家每天派出很多侦察飞机对地球上有兴趣的地区进行大量的空中摄影。对由此得来的照片进行处理分析，以前需要雇用几千人，而现在改用配备有高级计算机的图像处理系统来判读分析，既节省人力，又加快了速度，还可以从照片中提取人工所不能发现的大量有用情报。从60年代末以来，美国及一些国际组织发射了资源遥感卫星（如LANDSAT系列）和天空实验室（如SKYLAB），由于成像条件受飞行器位置、姿态、环境条件等影响，图像质量总不是很高。因此，以如此昂贵的代价进行简单直观的判读来获取图像是不合算的，而必须采用数字图像处理技术。如LANDSAT系列陆地卫星，采用多波段扫描器（MSS），在900km高空对地球每一个地区以18天为一周期进行扫描成像，其图像分辨率大致相当于地面上十几米或100米左右（如1983年发射的LANDSAT-4，分辨率为 30m）。这些图像在空中先处理（数字化，编码）成数字信号存入磁带中，在卫星经过地面站上空时，再高速传送下来，然后由处理中心分析判读。这些图像无论是在成像、存储、传输过程中，还是在判读分析中，都必须采用很多数字图像处理方法。现在世界各国都在利用陆地卫星所获取的图像进行资源调查（如森林调查、海洋泥沙和渔业调查、水资源调查等），灾害检测（如病虫害检测、水火检测、环境污染检测等），资源勘察（如石油勘查、矿产量探测、大型工程地理位置勘探分析等），农业规划（如土壤营养、水份和农作物生长、产量的估算等），城市规划（如地质结构、水源及环境分析等）。我国也陆续开展了以上诸方面的一些实际应用，并获得了良好的效果。在气象预报和对太空其它星球研究方面，数字图像处理技术也发挥了相当大的作用。 <br />      2）生物医学工程方面的应用数字图像处理在生物医学工程方面的应用十分广泛，而且很有成效。除了上面介绍的CT技术之外，还有一类是对医用显微图像的处理分析，如红细胞、白细胞分类，染色体分析，癌细胞识别等。此外，在X光肺部图像增晰、超声波图像处理、心电图分析、立体定向放射治疗等医学诊断方面都广泛地应用图像处理技术。 <br />      3）通信工程方面的应用当前通信的主要发展方向是声音、文字、图像和数据结合的多媒体通信。具体地讲是将电话、电视和计算机以三网合一的方式在数字通信网上传输。其中以图像通信最为复杂和困难，因图像的数据量十分巨大，如传送彩色电视信号的速率达100Mbit/s以上。要将这样高速率的数据实时传送出去，必须采用编码技术来压缩信息的比特量。在一定意义上讲，编码压缩是这些技术成败的关键。除了已应用较广泛的熵编码、DPCM编码、变换编码外，目前国内外正在大力开发研究新的编码方法，如分行编码、自适应网络编码、小波变换图像压缩编码等。 <br />      4）工业和工程方面的应用在工业和工程领域中图像处理技术有着广泛的应用，如自动装配线中检测零件的质量、并对零件进行分类，印刷电路板疵病检查，弹性力学照片的应力分析，流体力学图片的阻力和升力分析，邮政信件的自动分拣，在一些有毒、放射性环境内识别工件及物体的形状和排列状态，先进的设计和制造技术中采用工业视觉等等。其中值得一提的是研制具备视觉、听觉和触觉功能的智能机器人，将会给工农业生产带来新的激励，目前已在工业生产中的喷漆、焊接、装配中得到有效的利用。 <br />      5）军事公安方面的应用在军事方面图像处理和识别主要用于导弹的精确末制导，各种侦察照片的判读，具有图像传输、存储和显示的军事自动化指挥系统，飞机、坦克和军舰模拟训练系统等；公安业务图片的判读分析，指纹识别，人脸鉴别，不完整图片的复原，以及交通监控、事故分析等。目前已投入运行的高速公路不停车自动收费系统中的车辆和车牌的自动识别都是图像处理技术成功应用的例子。 <br />      6）文化艺术方面的应用目前这类应用有电视画面的数字编辑，动画的制作，电子图像游戏，纺织工艺品设计，服装设计与制作，发型设计，文物资料照片的复制和修复，运动员动作分析和评分等等，现在已逐渐形成一门新的艺术--计算机美术</font>
		</span>
<img src ="http://www.cppblog.com/xushaohua/aggbug/12591.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/xushaohua/" target="_blank">shaohua</a> 2006-09-17 19:41 <a href="http://www.cppblog.com/xushaohua/articles/12591.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>