DM642的图像平移程序,刚开始没明白为什么平移要分为两个半屏来平移,后来琢磨了一下不知道理解对不对,先上程序:

/*确定图像的参数*/ int numPixels = 720;//每行720个像素 int numLines = 576;//每帧576行(PAL) /*图像偏移量初始化*/ int intXOffset = -200; //水平偏移量 int intYOffset = -200; //垂直偏移量,必须是2的整数 void geometryTrans() { int i,j; int intCapX,intCapY; for(i=0;i<numLines;i++) { for(j=0;j<numPixels;j++) { intCapX = j-intXOffset; intCapY = i-intYOffset/2; //判断是否在原图范围内 if((intCapX>=0) && (intCapX<numPixels)) { if((i<numLines/2) && (intCapY>=0) && (intCapY<numLines/2)) { //传送亮度信号 *(Uint8 *)(tempYbuffer + i*numPixels + j) = *(Uint8 *)(capYbuffer + (i-intYOffset/2)*numPixels + intCapX); } else if((i>=numLines/2) && (i<numLines) && (intCapY>=numLines/2) && (intCapY<numLines)) { //传送亮度信号 *(Uint8 *)(tempYbuffer + i*numPixels + j) = *(Uint8 *)(capYbuffer + (i-intYOffset/2)*numPixels + intCapX); } else { *(Uint8 *)(tempYbuffer + i*numPixels + j) = 0xFF; } } else { *(Uint8 *)(tempYbuffer + i*numPixels + j) = 0xFF; } } } }

程序的功能是将采集到的图像偏移一定的偏移量之后再显示,既然是偏移就肯定要根据偏移量算出新的坐标,然后对应到新的坐标去显示。图像偏移之后只有还在源图像坐标范围内的像素才能够显示出来,因此需要判断偏移后各像素点的坐标在不在可显示的范围内。但是程序将判断分为了两部分,上半屏和下半屏分别判断传送。

DM642图像平移程序学习相关推荐

  1. OpenCV-Python学习(18)—— OpenCV 图像几何变换之图像平移(cv.warpAffine)

    1. 学习目标 学习图像的平移矩阵: 学习 OpenCV 图像平移函数. 2. 图像的平移矩阵 平移是物体位置在水平和垂直方向的移动. 像素点 (x,y) 沿 x 轴平移 dx.沿 y 轴平移 dy, ...

  2. 高博SLAM十四讲书本程序学习——第3讲 三维空间刚体运动

    小白高博SLAM十四讲书本程序学习_1 第3讲 三维空间刚体运动 在高博原始注释上,针对我自己不明白的部分,做额外注释 如果有错误的地方,请大家指点指点 博文目录 一.P.48 eigenMatrix ...

  3. 在OpenCV环境下写的两个图像平移C和C++源代码

    图像处理开发需求.图像处理接私活挣零花钱,请加微信/QQ 2487872782 图像处理开发资料.图像处理技术交流请加QQ群,群号 271891601 图像平移的概念就不用多说了,直接上经实测无误的代 ...

  4. VTK:图像平移范围用法实战

    VTK:图像平移范围用法实战 程序输出 程序完整源代码 程序输出 程序完整源代码 #include <vtkImageData.h> #include <vtkNew.h> #

  5. python如何移动图片_python之详细图像仿射变换讲解(图像平移、旋转、缩放、翻转),一文就够了,赶紧码住...

    仿射变换简介 什么是放射变换 图像上的仿射变换, 其实就是图片中的一个像素点,通过某种变换,移动到另外一个地方. 从数学上来讲, 就是一个向量空间进行一次线形变换并加上平移向量, 从而变换到另外一个向 ...

  6. OpenCV_04 几何变换:图像缩放+图像平移+图像旋转+仿射变换+透射变换+图像金字塔

    1 图像缩放 缩放是对图像的大小进行调整,即使图像放大或缩小. API cv2.resize(src,dsize,fx=0,fy=0,interpolation=cv2.INTER_LINEAR) 参 ...

  7. MFC空间几何变换之图像平移、镜像、旋转、缩放

    本文主要讲述基于VC++6.0 MFC图像处理的应用知识,主要结合自己大三所学课程<数字图像处理>及课件进行讲解,主要通过MFC单文档视图实现显示BMP图片空间几何变换,包括图像平移.图形 ...

  8. 基于OpenCV实现图像平移

    [1]理论知识 图像平移就是将图像中所有的点按照指定的平移量水平或者垂直移动 [2]完整代码 /*--------------------------------------------------- ...

  9. 单片机 c语言 宏程序,宏程序学习的几点心得.doc

    有关宏程序学习的几点心得 天长市职业教育中心 蒋春飞 HNC-21/22T为用户配备了强有力的类似于高级语言的宏程序功能,用户可以使用变量进行算术运算.逻辑运算和函数的混合运算,此外宏程序还提供了循环 ...

最新文章

  1. python 办公自动化-用python进行办公自动化都需要学习什么知识呢?
  2. Spark详解(十四):Spark SQL的Join实现
  3. axure7.0元件库 安卓_AxureRP 7.0 元件库下载
  4. 201119阶段二sqlite3
  5. BZOJ3453 XLkxc(拉格朗日插值)
  6. 初始化linux-nginx的安装和使用
  7. XML-RPC技术在WP上研究(一)
  8. EF4的系列文章,mark一下
  9. 什么是Zepto.js
  10. 全国各地货运量(全国与各省级指标,2005-2019数据分析对比)
  11. python练习实例(七)
  12. 品牌笔记本主板刷BIOS升级NVME ssd启动系统
  13. 分页插件Kaminari
  14. Ctrl+26字母组合快捷键,分分钟变成办公室大表哥
  15. excel高级筛选怎么用_Excel表格自动筛选的9个高级用法
  16. 滴滴在HBase性能与可用性上的探索与实践
  17. consider increasing the maximum size of the cache. After eviction approximately [9,230] KB of data
  18. Animated之基础篇-概述
  19. 如何利用python将excel表格中筛选出来的每一份数据各自另存为新的excel文件?
  20. 太牛逼了,Python和算法简直是绝配

热门文章

  1. 关于ping telnet
  2. 每天学习30分钟新知识之html教程1
  3. 关于5G,看这一篇文章就够了
  4. nagios自写插件—check_file
  5. java编程 反射类的使用
  6. 使用GDAL将12bit量化图像转为16bit或者8bit
  7. 我要一颗原子弹 -- 开发者思维
  8. 封装、继承、多态、访问符,范围修饰符
  9. java内部类和静态内部类的区别
  10. 使用 Telnet 仿冒任意邮件