图像平移程序流程图.doc_第1页
图像平移程序流程图.doc_第2页
图像平移程序流程图.doc_第3页
全文预览已结束

下载本文档

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

文档简介

图像平移程序流程图 图像平移程序流程图由上面的程序流程图可以得到如下算法:/每行for(i=0;ilHeight;i+) /每列for(j=0;j=0)&(j0=0)&(i0lHeight)/指向原DIB第i0行,第j0个像素的指针 /同样要注意DIB上下倒置的问题lpSrc=(char*)lpDIBBits+lLineBytes*(lHeight-1-i0)+j0;/复制像素*lpDst=*lpSrc;else *(unsigned char*)lpDst)=255; /对于原图中没有的像素,直接赋值为255由于每行像素是连续放置的,可以直接逐行地来复制图像。首先计算移出后可视的区域。对于x轴方向, 当tx -width时,图像完全移出了屏幕,不用做任何处理; 当-width tx 0时,图像区域的x范围从0到width-,对应原图的范围从到width; 当0 txwidth时,图像区域的x范围从tx到width,对应原图的范围从0到width-tx; 当tx width时,图像完全移出了屏幕,不用做任何处理;对于y轴方向, 当ty -height时,图像完全移出了屏幕,不用做任何处理; 当-height ty 0时,图像区域的y范围从0到height- ,对应原图的范围从到height; 当0 tyheight时,图像区域的y范围从ty到height,对应原图的范围从0到height-ty; 当ty height时,图像完全移出了屏幕,不用做任何处理;当计算出经移动而可视的区域后,就可以利用位图存储的连续性,即同一行的像素在内存中是相邻的这一规则进行计算。利用memcpy函数,从(x0,y0)点开始,一次可以拷贝一整行(宽度为x1-x0),然后将内存指针移到(x0,y0+1)处,拷贝下一行。这样拷贝到(y1-y0)行就完成了全部操作,避免了单个像素的计算,从而提高了效率。按照上面的描述,现在可以构造自己的图像几何变换函数库了。首先来完成图像的平移函数。图像的平移函数操作不需要改变DIB的调色

温馨提示

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

评论

0/150

提交评论