毕业设计---图像预处理系统设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
毕业设计---图像预处理系统设计

第一章 引言 1.1课题来源及意义 本课题来源于科研需求。 本课题主要研究的是针对打印或扫描中出现的图像进行背景去噪、灰度化、二值化等处理,得到较为干净的字符图像块。本课题主要对图像进行背景去噪、灰度化、二值化等处理,得到较为干净的字符图像块。 随着科学技术的不断发展,计算机的更新速度不断提高,人们的思想文化素质的提高,对图像的要求也越来越高。因此把原始图像与计算机结合起来,从而创作出许多更加完美的图像,满足人们的需求。计算机图像处理,是指利用计算机对图像进行一系列加工,以便获得人们所需要的效果。图像是人类获取和交换信息的主要来源,人类感知外界信息,80%以上是通过视觉得到的。因此,图像处理的应用领域必然涉及到人类生活和工作的方方面面。图像处理或图像分析方法的应用越来越广泛答题卡一般由基本信息栏、导引道和很多信息位构成。 基本信息栏一般用于填写填涂这张卡片的使用者的基本信息,一般考试中包括考生的姓名和考号。导引道用于阅读机确认答题卡的方向和位置。而占据绝大部分位置的信息位则是供使用者填涂其所选择的选项。 答题后,答题卡上的信息通过光标阅读机识别并储存在计算机中。Jean-Luc Starck, Emmanuel J. Candès, 和 David L. Donoho认为图像处理其基本的思想都是——把减少图像的模糊点进行到底,模糊点可以局部地处理掉,就像高斯滤波或各向异性过滤、通过可变的微积分、或者在范围波段,如韦纳滤波(Jean-Luc Starck, Emmanuel J. Candès, and David L. Donoho,2002)。 1.4本文的主要工作 目标本课题的目的是设计一个图像预处理系统。其功能包括对图像进行灰度化,二值化,去噪。 基本功能 对图像进行图像进行背景去噪、灰度化、二值化等处理,得到较为干净的字符图像块。 采用技术 对图像二值化处理,将256个亮度等级的灰度图像通过适当的阀值选取而获得仍然可以反映图像整体和局部特征的二值化图像。所有灰度大于或等于阀值的像素被判定为属于特定物体,其灰度值为255表示,否则这些像素点被排除在物体区域以外,灰度值为0,表示背景或者例外的物体区域。如果某特定物体在内部有均匀一致的灰度值,并且其处在一个具有其他等级灰度值的均匀背景下,使用阀值法就可以得到比较的分割效果。如果物体同背景的差别表现不在灰度值上(比如纹理不同),可以将这个差别特征转换为灰度的差别,然后利用阀值选取技术来分割该图像。动态调节阀值实现图像的二值化可动态观察其分割图像的具体结果。procedure TForm1.BitBtn1Click(Sender: TObject); var p:PByteArray; //PByteArray的定义格式 //PByteArray = ^TByteArray; //TByteArray = array[0..32767] of Byte; ChangedBmp : Tbitmap; gray,x,y:integer; TestBMP : Tbitmap; // 处理过程中位图 Begin TestBMP:=Tbitmap.Create; ChangedBmp:=Tbitmap.Create; TestBMP.Assign(image1.Picture); for y := 0 to TestBMP.Height - 1 do begin //获取每一行象素信息 p := TestBMP.scanline[y]; for x := 0 to TestBMP.Width - 1 do begin //这里采用YUV与RGB颜色空间变换的方法,即 Y=0.3R+0.59G+0.11B Gray := Round(p[3 * x + 2] * 0.3 + p[3 * x + 1] * 0.59 + p[3 * x] * 0.11); //由于是24位真彩色,故一个像素点为三个字节 p[3 * x + 2] := byte(Gray); p[3 * x + 1] := byte(Gray); p[3 * x] := byte(Gray); //Gray的值必须在0~255之间 end; ChangedBmp.Assign(TestBMP); PaintBox1.Canvas.CopyMode:=srccopy; PaintBox1.Canvas.Draw(0,0,ChangedBmp);//用PaintBox控件重新绘制图像; end; 2.2.3实现灰度化代码 bool Convert256toGray(LPSTR lpDIB,LPSTR lpDIBBits, long?? lWidth,long?? lHeight) { BYTE

文档评论(0)

manyu + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档