


全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C 语 言 图 像 处 理 方 法 C 语 言 图 像 处 理 方 法 1图像平移 图像平移只是改变图像在屏幕上的位置,图像本身并不发生变化。 假设原图像区域左上角坐标为(x0, y0),右下角坐标为(x1, y1),将图像分别沿x和y轴平移dx和dy,则新图像的左上角坐标为(x0 dx, y0 dy),右下角坐标为(x1 dx, y1 dy)。坐标平移变换公式为: x = x dx y = y dy 在屏幕上实现图像的移动分为四个步骤: 保存原图像到缓冲区。 擦除原图像。 计算平移后的新坐标。 在新的坐标位置重新显示原图像。 其中,擦除原图像的方法与图形变换中擦除原图形的方法一致,在实现中仍采用XOR异或方式画图擦除原图像。对于新坐标值的计算还需要考虑边界情况,不要在图像平移后超出允许的屏幕范围。此外,如果采用C函数getimage()和putimage()来保存和恢复图像,则图像的大小不能超过64K。 2图像颠倒 图像颠倒是指把定义好的图像区域上下翻转地显示在屏幕上。分析图像颠倒的过程,可发现每行的图像信息都保持不变,而只是改变了行的顺序,将第一行与最后的第n行相互交换,第二行与第n 1行交换,依此类推,从而实现了图像的颠倒。只需采用按行交换的方式,即可方便地修改缓冲区内容,实现图像的颠倒。基本步骤如下: (1) 用getimage()保存原图像,并擦除原图像。 (2) 计算图像的高度,即行数height;计算图像宽度width;计算保存一行图像信息 height = bottom top 1; width = right left 1; linebytes = (width 7) 8 4; (3)利用行交换缓冲区linebuf在图像内存缓冲区中进行信息交换,即把第一行与最末行交换,第2行与第n1行交换,依此类推,直至全部交换完毕。 (4)把交换后的图像缓冲区内容重新显示在屏幕上。 3图像镜像变换 镜像变换是指将指定区域的图像左右翻转地显示在屏幕。分析镜像变换过程可以发现:每行图像信息的处理方式是相同的,而且行顺序不发生变化,只是每一行的像素信息按从左到右的顺序进行了左右颠倒,从而实现了镜像变换。因此,采用按行逐点变换的方式实现图像的镜像。 首先,对于左上角为(left, top),右下角为(right, bottom)矩形区域图像,给出其中任意点(x0, y0)镜像变换后的新坐标(x, y)的坐标变换公式: x = right x0 left y = y0 根据以上公式,对各个像素点计算新坐标后,直接把它显示在屏幕的相应位置上。 如果完全逐点地进行交换,处理一个像素点就要读取一次像素值,从而降低了变换速度。由于像素点是顺序存放在各个bit位上,每读取一个字节就包含了8个像素点的信息,只需设置不同的位屏值bitmask,就可以获得不同像素点的信息。因此采用按行逐字节变换的方式,每读一次就进行8个像素点的变换,以提高变换速度。 将一矩形区域的图像进行镜像变换的基本步骤如下: (1) 用getimage()把图像保存到内存缓冲区,并擦除原图像。 (2) 计算图像高度,即行数高度height和宽度width;计算保存一行图像信息占用的字节数linebytes。计算公式如下: height = bottom top 1; width = right left 1; linebyte = (width 7) 8 4; (3) 对图像进行镜像。 (4)释放内存图像缓冲区。 4图像旋转 图像旋转是指把定义的图像绕某一点以逆时针或顺时针方向旋转一定的角度,通常是指绕图像的中心以逆时针方向旋转。 假设图像的左上角为(left, top),右下角为(right, bottom),则图像上任意点(x0, y0)绕其中心(xcenter, ycenter)逆时针旋转angle角度后,新的坐标位置(x, y)的计算公式为: xcenter = (right left 1) 2 left; ycenter = (bottom top 1) 2 top; x = (x0 xcenter) cos (y0 ycenter) sin xcenter; y = (x0 xcenter) sin (y0 ycenter) cos ycenter; 与图像的镜像变换相类似,也采用按行逐点变换的方式实现图像的旋转,其步骤如下: (1) 用getimage()把图像保存到内存缓冲区,并擦除原图像。 (2) 计算图像高度height,宽度width,及保存一行图像信息占用的字节数linebytes,计算公式与镜像变换的计算公式相同。 (3) 对图像逐行进行旋转变换。 (4) 释放内存图像缓冲
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026届黑龙江绥化市一中化学高二上期中统考试题含解析
- 2026届福建省宁德市部分一级达标中学化学高一第一学期期中经典模拟试题含解析
- 2026届河北省重点中学高一化学第一学期期末考试模拟试题含解析
- Unit2HobbiesWeletotheunit教学设计译林版七年级英语上册
- 机械司机安全培训课件
- 消防有关面试题目及答案
- 新解读《GB-T 20409-2018高压锅炉用内螺纹无缝钢管》
- 湘水集团面试题目及答案
- 机械原件基础知识培训课件
- 化妆品配方知识培训课件
- 《鸡防疫程序》课件
- 2024年河北港口集团有限公司招聘笔试参考题库含答案解析
- 《用户体验的要素》课件
- 基于现代文献探讨经方治疗冠心病(胸痹心痛)的处方用药规律研究演示稿件
- 钣金结构件点检表
- 一元二次不等式及解法
- 桩基工程验收监理质量评估报告
- 2022年脓毒血症指南解读(更新)
- 郭岩非煤矿山双重预防机制建设课件
- 中医揿针技术理论考核试题
- 第五代移动通信设备安装工程造价编制指导意见(5G补充定额)
评论
0/150
提交评论