可扩展遥感图像处理软件框架的搭建
可扩展遥感图像处理软件框架的搭建
引言
随着科技的发展,遥感技术已经形成了一个从地面到空中乃至空间,从数据获取、处理到解译
分析和应用,对全球进行探测和监测的多层次、多视角、多领域的观测体系,成为获取地球资
源与环境信息的重要手段。随着对如此庞大数据的处理速度的提升,遥感数字图像处理技术也
得以迅速发展。
任何一套遥感图像处理软件都不能完全满足所有用户的需求; 并且随着数字图像处理技术的发
展,图像处理软件还需要不断地添加新的功能,如果对软件进行修改,然后重新编译、发布,
不仅费时费力,而且还可能出现版本兼容性方面的问题。
本文提出一种可扩展遥感图像处理软件框架的设计方法,可将执行程序( EXE) 和动态链接库
( dy-namic link library,DLL) 程序以扩展模块的形式添加到软件平台中; 并动态添加菜单项,以
约定方式对其调用,利用文件映射技术进行数据交换,以便科研人员能够快速地将研究成果编
写成新的功能模块,并方便地添加到遥感图像处理软件系统中。
1 系统框架设计
可扩展遥感图像处理系统主要实现框架功能,构成一个遥感图像处理软件平台。该系统中需要
规定统一的遥感图像格式及其访问模式; 通过应用程序接口( application programming
interface,API) 以平台功能方式提供基础图像处理功能,定义对外开放的内部程序接口和外部
程序调用接口; 其他功能均可由扩展模块来实现。系统的整体结构如图 1 所示。【图 1 】
1 .1 数据接口
遥感图像的格式多种多样,为了方便图像处理功能的开发,在遥感图像处理软件平台中规定一
种统一的图像格式,并且提供格式转换功能,在处理图像之前将图像转换成统一格式。主程序
将实现读写遥感图像的功能( 比如获取头文件信息,获取某波段、某区块的图像数据) ,扩展模
块时不需要了解遥感图像的具体格式,只要通过接口直接调用主程序中的功能就能获取到图像
信息。
1 .2 基础平台功能
主程序可以提供图像文件访问、图像显示等基础功能,还可以包括以下功能: ①图像信息查
看,包括图像直方图查看和图像波谱查看等; ②图像增强功能,包括图像拉伸、图像平滑、图
像锐化等功能;③显示外部图像源与窗口控制,可以让扩展模块新建窗口或指定现有窗口并显
示扩展模块组织的图像; ④ 图像裁剪、旋转与缩放功能。
1 .3 API 的设计
软件平台应提供应用程序接口( API) ,主要包括遥感图像处理的一些基础功能,如上文提到的
数据接口,基本的遥感图像增强、图像显示等。将这些功能封装到一个动态链接库( DLL) 中,
并开放 API 供扩展模块调用。专业人员可以软件平台为基础,进行二次开发,不必在基础功能
上重复开发、浪费精力。平台和扩展模块之间、扩展模块和扩展模块之间都可以互相调用,完
全开放、透明,使系统具有良好的可扩展性。
1 .4 扩展模块与动态菜单
扩展模块使用C\C ++ 进行开发,可以以 EXE,DLL( 或其他形式,只要定义相应API 即可) 的
形式实现。在图像界面中通过动态菜单调用扩展模块,EXE 模块可以被直接调用,DLL 模块
可以开放程序接口或者定义一个导出变量( 包含接口信息) 。科研人员可以随时将新功能添加到
系统平台中( 有新的研究成果时,可以依托平台现有功能,仅针对新的研究成果快速地编写程
序,并方便地添加到系统平台中) ,新的功能模块可以实时地反映到系统平台的动态菜单中。
整个系统平台的关键是扩展模块的添加与调用方式。
2 菜单的动态添加与响应
在图形界面中使用扩展模块功能,主要是通过动态添加的菜单来调用的。可以把菜单项和扩展
模块的对应关系保存到一个配置文件中,每次程序启动时,根据这个配置文件来实现动态菜单
初始化,这种方法需要开发人员自行开发一个编辑配置文件的工具; 还可以把所有扩展模块存
储到同一个文件夹中,每次程序启动时扫描该文件夹,为每一个扩展模块动态添加一个菜单
项。第一种方法需要额外开发一个工具,但是配置文件中可以保存多种信息( 比如菜单的上下
级关系) ,这样在添加菜单时可以更好地进行扩展模块的分类和显示; 而第二种方法虽然使用起
来简单方便,但是在菜单中所有的扩展模块只能罗列在一起,不美观也不方便使用。
2 .1 菜单的动态添加
动态添加菜单的操作可在应用程序类CWinApp 的InitInstance 函数中进行。添加菜单项的操作
主要使用AppendMenu 函数,使用该函数时要根据设计的菜单级别获取相应的父级菜单对象,
设置该函数的第一个参数为 MF_POPUP 和MF_ST RING,可以分别添加下拉菜单和菜单项。
在所有的菜单项添加完成之后,进行 DrawMenuBar 操作,这样动态添加的菜单就可以显示出
来。添加 2 级菜单的动态添加过程可以通过以下代码实现:
CMenu * pTopMenu = AfxGetMainWnd( ) - > GetMenu( ) ; / / 获取系统菜单指针
int nMenu = pTopMenu - > GetMenuItemCount( ) ; / / 获取现有菜单项个数
while ( i <nMenuCount)
{
szTitle .Format( _T( " % s" ) ,menuItem[i ].title) ;
if( menuItem[i ].type = = TOP_MENU)
{
CMenu newMenu;
newMenu .CreatePopupMenu( ) ;
pTopMenu - > AppendMenuW( MF_POPUP,( UINT) newMenu .m_hMenu,szTitle) ;
newMenu .Detach( ) ; / / 菜单项与局部变量分离
+ + nMenu; / / 递增菜单数,以便让子菜单获取正确的父级菜单
}
else if ( menuItem[i ].type = = SUB_MENU)
{
/ / 获取当前子菜单的父级菜单
pParentMenu = pTopMenu - > GetSubMenu( nMenu -1) ;
/ / 子菜单需要有相应的命令响应,需要一个全局唯一的 ID
pParentMenu - > AppendMenuW( MF_ST RING,newMenuID,szTitle) ;+ + newMenuID;
}
+ + i;
}
DrawMenuBar( AfxGetMainWnd( ) - > m_hWnd) 。
“ ”如果只进行添加菜单的操作,那么界面中的这些动态菜单项都是 灰色的( 不可用状态) ,而不
像其他系统自带菜单项那样显示为可用状态;这是因为其他系统的程序对自带的菜单项进行统
一管理,而通过上述方法添加的菜单项需要自行管理。对 菜 单 状态进行自定 义 操 作 需 要
重 写 CView 类中的 OnCmdMsg 函数,其中 nCode 参数表明本次命令的消息类型,当nCode 值
为CN_UP-DATE_COMMAND_UI 时,表示更新用户界面。开发人员可以根据具体需求有选择
“ ”性地设置各个菜单项的状态。将所有动态添加的菜单 激活 的过程可以通过以下代码实现:
摘要:
展开>>
收起<<
可扩展遥感图像处理软件框架的搭建引言随着科技的发展,遥感技术已经形成了一个从地面到空中乃至空间,从数据获取、处理到解译分析和应用,对全球进行探测和监测的多层次、多视角、多领域的观测体系,成为获取地球资源与环境信息的重要手段。随着对如此庞大数据的处理速度的提升,遥感数字图像处理技术也得以迅速发展。任何一套遥感图像处理软件都不能完全满足所有用户的需求;并且随着数字图像处理技术的发展,图像处理软件还需要不断地添加新的功能,如果对软件进行修改,然后重新编译、发布,不仅费时费力,而且还可能出现版本兼容性方面的问题。本文提出一种可扩展遥感图像处理软件框架的设计方法,可将执行程序(EXE)和动态链接库(dy...
相关推荐
-
2024年党建工作要点工作计划5篇供参考
2023-12-16 999+ -
2025年专题生活会对照带头严守政治纪律和政治规矩,维护党的团结统一等“四个带头方面”个人对照检查发言材料4110字文稿
2024-12-21 999+ -
2025年医保局局长、科技局领导干部专题“四个带头”方面对照检查材料2篇例文(附:反面典型案例剖析情况)
2025-02-09 457 -
2025年国有企业党委书记、市总工会党组书记民主生活会“四个带头”方面对照个人检查发言材料2篇文(附:典型案例、上年度整改+个人情况)
2025-02-09 506 -
2025年市委组织部部长、教育局党委书记生活会“四个带头”个人对照检查发言材料2篇文(典型案例+个人事项)
2025-02-09 626 -
2025年市财政局党组书记、局长、市检察院党组领导班子对照“四个带头”方面生活会个人对照检视发言材料2篇文(含以案为鉴反思、以案促改促治方面)
2025-02-09 508 -
市检察院党组、市财政局领导班子2025年生活会对照“四个带头”方面检视发言材料2份文【含以违纪行为为典型案例剖析】
2025-02-09 461 -
2025年市财政局领导对照“四个带头”生活会检视发言材料2篇例文【含以违纪行为为典型案例剖析】
2025-02-09 582 -
单位领导班子2025年聚焦“四个带头”生活会对照检查材料2篇文(含:典型案例剖析反思、落实意识形态责任制)
2025-02-09 757 -
2025年镇党委副书记、市科学技术局领导班子生活会对照“四个带头”检视材料2篇文【含违纪行为典型案例分析】
2025-02-09 257
作者:闻远设计
分类:其它行业资料
价格:免费
属性:4 页
大小:29.32KB
格式:DOCX
时间:2024-03-13

