0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于VBE标准实现遥感图像实时滚动显示系统的设计

电子设计 来源:电子技术 作者:韩梅 2021-03-18 09:07 次阅读

PC机的开放体系结构使得有更多的厂商能够参与计算机部件的生产,参加标准的制定。在PC机图形显示领域的早期,IBM推出的VGA标准成为默认的行业标准,但随后一段时期,其他厂商生产的VGA显示卡虽兼容了IBM VGA的BIOS寄存器,却加入了扩展功能,当时,出现了众多具有更高分辨率、更多色彩甚至附加图形处理功能的显示卡-Super VGA显示卡。

当时,对于Super VGA显示卡的软件开发者而言,他们却要面对非常严重的问题:由于没有硬件设计标准,软件开发者面对着各种完全不同的Super VGA硬件结构,而且,由于没有统一的软件开发界面,在程序开发中必须解决软件兼容不同显示卡的问题,随之而来的是,对于某一具体的Super VGA显示卡,除了一些特定的软件可以得到制造厂家提供的显示驱动程序支持,几乎再没有什么软件包可以利用Super VGA带来的能力和优点。

VBE标准的制定就是要改变这种困境,作为各种Super VGA显示卡的统一软件接口,它可以使应用软件和系统软件在较大的范围内利用扩展VGA可用的优势。

本文先简单介绍VBE标准,然后结合一个具体设计,给出如何利用VBE标准实现遥感图像实时滚动显示。

1 VBE标准

VBEl.0提供了基本信息查询、显示方式信息查询、设置显示方式、返回当前显示方式、保存/恢复视频状态等几项基本功能,定义了有限的几种扩展显示模式。

VBEl.1增加了设置/获取逻辑扫描线长度等功能,并增加5种显示模式和新的显示方式参数

VBEl.2增加了对调色板设置的接口及更多的显示模式和显示方式参数。

VBE2.0增加了对线性帧缓存和保护模式的支持等。

VBE3.0扩充了过去版本中的许多功能,实现了刷新率、点时钟、硬件帧切换等。由于篇幅所限,这里只对被硬件厂商广泛支持的VBE-2.0标准定义的软件接口做简单介绍。

标准VGA的BIOS是通过中断lO来调用的,而VBE是通过中断4F,通过设置不同的功能号调用该标准的不同功能:

(1)功能调用00H--基本信息查询

可返回VBE版本号、OEM名字,显示视频环境能力、支持的显示方式、显示存储器数目等信息。

(2)功能调用01H--显示方式信息查询

可返回特定显示方式的具体信息,包括显示方式属性、主机视频窗口属性、功能调用入口地址、分辨率、像素位数、显示存储器分块数、分块长度等。

(3)功能调用02H--设置显示方式

设置显示方式。

(4)功能调用03H--返回显示方式

返回当前显示方式。

(5)功能调用04H--保存/恢复视频状态

保存/恢复视频状态。

(6)功能调用05H--主机视频窗口控制

设置主机视频窗口在显示存储器中的位置。

(7)功能调用06H--设置/获取逻辑扫描线长度

通过对子功能的控制实现设置或获取逻辑扫描线长度。

(8)功能调用07H--设置/获取显示起始地址

通过对子功能的控制实现设置或获取显示的起始地址。

(9)功能调用08H--设置/获取调色板格式

通过对子功能的控制实现设置或获取调色板格式。

(10)功能调用09H--设置/获取调色板数据

通过对子功能的控制实现设置或获取调色板数据。

(11)功能调用0AH--返回保护模式接口

返回保护模式程序接口。

2 遥感图像实时滚动显示系统的设计要求

遥感图像实时滚动显示系统具有以下特点:

(1)图像尺寸大,行像素点数多;

(2)图像滚动显示,速度快,每秒刷新行数较多;

(3)显示信息丰富,除显示动态图像外,还要能够在图像上叠加显示文字信息和网格信息;

(4)有良好的视觉效果,图像滚动显示不能有跳跃的感觉;

(5)基于可满足特殊环境要求的嵌入式平台运行。

基于上述设计限制,对动态图像实时显示系统显示速度的要求是比较高的。具体的技术指标如下:

输入数据率: ≤2.5Mb/s

输入每行像素数: 8192点/线

输入数据格式: 遥感图像+辅助数据

显示字长: 8bit

显示图像灰度级: 256

屏幕显示方式: 滚动显示

网状标尺叠加显示: 热键选择

辅助信息字符显示: 热键选择

图像显示模式: A.高分辨率局部显示,行显示起始可选

B.抽样全局显示,行向8抽1,列向8抽1

要求实时显示系统在1024×768的显示模式下滚动显示图像的同时,在固定位置叠加显示的辅助数据字符和网格标尺。由于需要在全屏范围内叠加滚动的和静止的两种图像,在嵌入式平台的实现难度较大。

3 几种软件实现方案的对比

根据嵌入式计算机的显示卡性能和可利用的编程软件库,可以采用以下3种方式实现实时图像显示软件:

(1)基于帧切换

基于帧切换的滚动图像与静止图像叠加显示是通过类似电影放映的方式实现的,即由全屏图像构成一帧,许多这样的帧一起构成帧序列,通过在屏幕上顺序显示这些帧序列,就形成在图像滚动显示的同时叠加静止网格和文字。

按照实时显示的要求,基于帧切换的方法构成一帧时,首先要在后台显存中重建整个一帧的图像数据,然后将网格和文字写到显存的相应地址。这种方法的数据搬移量非常大,所需的显示内存容量很大,对显存的存取速度要求高。

(2)基于帧切换,并利用硬件二维加速功能

利用硬件二维加速功能实现帧切换,这种方法与上述方法类似,不同的是它利用了硬件的优势,即滚动显示的图像与静止的网格和文字分别存储于显示存储器的不同区域,在显示时由显示卡的硬件进行叠加,这样,对每帧图像的操作基本只集中在图像数据的存储区内。

此时,构成一帧的主要工作是重建整个一帧的图像数据,由于网格和文字存储于显存中的另一地址空间,一般情况下,仅需对个别文字进行操作。然而,这种方法的数据搬移量还是非常大,对系统内存寻址能力要求高,所需的显示内存容量更大。

(3)基于更改显示窗口在显存中的起始地址

在显示存储器中,屏幕上显示的仅是显存的一小部分。当设定显示模式后,可以把整个显示存储器看作是一幅纵向很长的画面,显示器作为一个窗口只显示了其中的一部分。我们可以通过更改显示窗口在内存中的起始地址的方法来改变屏幕上的内容,如果这种改变是顺序、连续的,在屏幕上就会形成滚动的图像。

每次输入的图像数据依次存储于显存中,再进行所需的处理(如添加纵向的网格线),当需要屏幕滚动时,首先更改显示窗口在内存中的起始地址,然后处理横向的网格线和文字,使它们在屏幕上处于正确的位置。这种方法的数据搬移量比较小,所需的系统内存和显示内存容量也很小,但这种方法的数据处理较复杂,在编程过程中需要考虑多种边界的影响。同时,当用户不需要显示网格线和文字时,恢复已被显示网格线和文字破坏的原图像数据的处理量是非常大的,是否能够实现取决于目标系统的系统内存和显示内存的存取速度以及编程语言的效率。

结合图像实时显示分机的技术指标,可以通过表1具体说明上述三种方法各自的优势及问题:

o4YBAGBSqOmALPWCAAGr_jUEzEA806.png

对于普通的计算机平台而言,三种实现方法对系统的要求都是可以满足的,但在实际的工程实施中,则要考虑环境因素对目标系统在结构、温度、湿度等方面的限制,这时,加以限制的目标系统是否能满足要求,成为制约图像显示方案的关键因素。

考虑特殊的环境适应性要求,动态图像实时显示系统的嵌入式计算机必须具有插针式的机械结构,同时还要具有很小的体积,并具各PCI接口。因此,考虑成本和体积限制,选择PC104plus结构的嵌入式计算机。这种结构的计算机的显示内存很少配置在2M以上,因此,利用硬件二维加速功能实现帧切换方法暂时不能应用。尽管可以得到2M显存的PC104plus计算机,但由于系统主频低,系统内存和显示内存速度慢,经过测试,基于帧切换方法只能达到25frame/s的显示速度,考虑图像数据输入所占用的时间,最多也只能保证15frame/s,这样的更新速度会造成图像闪烁,是不能接受的。

4 基于VBE的图像实时显示软件解决方案

基于更改显示窗口在内存中的起始地址的方法可以通过VBE编程接口实现,具体如下:

4.1 目标系统

在目标系统中,与图像显示输出相关的部分是嵌入式计算机和集成在其上的显示卡,嵌入式计算机为PC104plus结构,具有PCI和ISA两种总线接口,其CPU为Pentium MMXl66,系统内存32M,显示控制芯片为M69000,显示内存2M。

4.2 图像实时显示软件

图像实时显示软件由数据读入、显示输出和显示控制三个模块构成,下面只对本文相关的显示输出模块进行介绍。

显示输出模块要实现在1024×768的高分辨率显示模式下滚动显示图像数据,同时叠加显示固定的辅助数据字符和网格,并可由操作员通过显示控制模块控制是否显示辅助数据字符和网格。在每次图像滚动时,显示输出模块需要完成以下操作:

(1)更改当前读写窗口;

(2)将读入数据写入显存的相应地址;

(3)写入纵向网格线;

(4)恢复原横向网格线上的图像数据(此期间需更改当前读写窗口);

(5)写入新的横向网格线:

(6)恢复原辅助数据字符上的图像数据;

(7)写入新的辅助数据字符;

(8)更改显示窗口在显存中的起始地址使屏幕滚动;

(9)重复(1)

4.3 性能

通过测试表明,每次滚动2条线,每秒可滚动120线,若每次滚动4条线,可以达到240线每秒,在这两种情况下,图像滚动时无明显跳动感。

5 小结

随着计算机技术的发展,VBE标准不断升级,最高版本是3.0版。同时,也派生出一些子标准,如VBE/AF、VBE/AI、VBE/PM等。然而,计算机显示系统的发展主流是向三维加速、立体显示等方向发展,这些主流发展方向的功能很多都得不到VBE的支持。但在一些特殊应用领域,VBE标准仍不失为一种适应高环境要求的动态图像实时显示系统的较好解决方案。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 寄存器
    +关注

    关注

    30

    文章

    5032

    浏览量

    117745
  • 存储器
    +关注

    关注

    38

    文章

    7151

    浏览量

    162001
  • 接口
    +关注

    关注

    33

    文章

    7640

    浏览量

    148509
收藏 人收藏

    评论

    相关推荐

    基于SDI 接口的实时图像增强显示系统

    为了改善实时图像输出质量,研究基于SDI接口的增强显示系统软硬件设计.利用模块化思想提出一个基于SDI接口输出的硬件架构,以FPGA作为处理核心,通过2片SRAM的双缓存结构
    发表于 07-28 16:45 2858次阅读
    基于SDI 接口的<b class='flag-5'>实时</b><b class='flag-5'>图像</b>增强<b class='flag-5'>显示</b><b class='flag-5'>系统</b>

    采用SDI接口实现实时图像增强显示系统

    摘要:为了改善实时图像输出质量,研究基于SDI接口的增强显示系统软硬件设计。利用模块化思想提出一个基于SDI接口输出的硬件架构,以FPGA作为处理核心,通过2片SRAM的双缓存结构
    发表于 06-21 05:00

    tail实时滚动显示log文件内容

    Linux shell中有一个tail命令,常用来显示一个文件的最后n行文档内容但更多情况下,我们要在服务器端运行程序,并且需要实时监控运行日志,这时候有什么办法实时滚动
    发表于 07-09 08:04

    FPGA实时视频图像处理系统的原理是什么?

    在从图像源到终端显示的过程中,电路噪声、传输损耗等会造成图像质量下降,为了改善显示器的视觉效果,常常需要进行图像增强处理。
    发表于 08-22 08:22

    实时图像采集模块怎么实现

    介绍了32位嵌入式系统及应用现状,指出了在嵌入式实时图像采集的重要性和存在问题,提出了一种基于嵌入式系统总线接口的实时
    发表于 09-05 08:00

    基于FPGA的实时视频图像采集与显示系统该怎么设计?

    算法处理的数据量大,实现起来会比较慢,如果说对于一些实时性要求比较高的系统,那么处理速度往往是要考虑的关键要素,因为一旦实时性达不到,就不能第一时间记录下信息。另外,
    发表于 09-27 07:19

    如何利用VBE标准实现遥感图像实时滚动显示

    本文先简单介绍VBE标准,然后结合一个具体设计,给出如何利用VBE标准实现遥感
    发表于 06-04 06:36

    怎样去设计基于FPGA的实时图像边缘检测系统

    的信息并行存在,因此可以并行对其施以相同的操作,使得图像处理的速度大大提高,这正好适合映射到FPGA架构中用硬件算法得以实现。本篇阐述了基于FPGA设计一个能够实时采集、实时处理并
    发表于 07-28 06:06

    如何实现基于1394b接口的车载嵌入式图像实时采集与显示系统设计?

    如何实现基于1394b接口的车载嵌入式图像实时采集与显示系统设计?
    发表于 12-27 07:10

    多光谱可见光遥感图像压缩系统设计

    为了实现多光谱可见光遥感图像高质量压缩的要求,提出以JPEG2000压缩标准为理论,将FPGA与专用压缩芯片ADV212相结合的空间遥感
    发表于 01-17 15:48 22次下载

    一种多光谱可见光遥感图像压缩系统设计

    关键词:光谱 , 图像压缩 , 遥感 为了实现多光谱可见光遥感图像高质量压缩的要求,提出以JPEG2000压缩
    发表于 10-17 14:22 310次阅读

    如何设计和实现一个运动图像实时传输系统

    本文完成了运动图像实时传输系统的设计,并对其核心部分视频编码器和视频解码器进行了详细的分析和设计实现了运动图像
    发表于 11-21 08:00 7次下载
    如何设计和<b class='flag-5'>实现</b>一个运动<b class='flag-5'>图像</b><b class='flag-5'>实时</b>传输<b class='flag-5'>系统</b>

    VBE标准及其在实时动态图像实时显示中的应用

    关键词:VBE , 动态图像 , 显示 PC机的开放体系结构使得有更多的厂商能够参与计算机部件的生产,参加标准的制定。在PC机图形显示领域的
    发表于 11-23 15:01 486次阅读

    如何使用FPGA实现数字X线图像实时缩放模块

    本文介绍了一个自行设计的数字化x射线影像实时处理系统实现图像实时缩放的子系统。重点分析了缩放涉及的插值算法,设计并
    发表于 03-18 16:39 4次下载
    如何使用FPGA<b class='flag-5'>实现</b>数字X线<b class='flag-5'>图像</b>的<b class='flag-5'>实时</b>缩放模块

    解析多DSP的遥感图像实时压缩系统设计

    随着遥感技术的发展,对高分辨率的遥感图像实时压缩的需求日益迫切。设计了高性能的图像压缩系统,由8
    的头像 发表于 04-07 11:25 1623次阅读
    解析多DSP的<b class='flag-5'>遥感</b><b class='flag-5'>图像</b><b class='flag-5'>实时</b>压缩<b class='flag-5'>系统</b>设计