一种多适应可复用X射线产品的算法库架构设计

2016-03-17 09:42马艳歌冯娟
科技与创新 2016年5期
关键词:架构设计X射线

马艳歌+冯娟

摘 要:简要介绍了一种多适应可复用X射线产品的算法库架构设计,以期为日后的相关工作提供参考。基本这种设计方法、算法库内的功能和代码,可以在不同产品之间或者同一产品的不同版本间反复使用,这对算法库的日常维护是非常重要的。针对算法库的管理对象,阐述了对象池模式的使用方法,进而提高对象的可复用性,降低系统内存的使用率。

关键词:架构设计;对象池;X射线;可复用性

中图分类号:TP311.52 文献标识码:A DOI:10.15913/j.cnki.kjycx.2016.05.099

在数字化医用X射线摄影系统中,获取到原始图像后,必须采用图像处理算法得到适用于临床诊断的图像。在设计相关软件时,将一系列图像处理算法的集合称为算法库。虽然摄影产品的种类繁多,但是,图像处理算法却有很多共同之处,它们差异不大。这就为不同产品之间图像处理算法的复用提供了有利的条件。在同一个产品的生命周期中,会遇到需要同时维护多个有差异的算法版本的情况,而在这些差异版本之间,也有大量的代码是可以复用的。

本文提出的多适应可复用的算法库架构设计适用于不同产品之间或者同一个产品的不同版本之间,它能最大限度地复用算法代码。另外,针对算法库实例对象管理提出了对象池模式。它不仅能够保证每幅图像都有独立的算法库实例对象,还能够提高对象的可复用性,降低系统内存的使用率。

1 算法库总体架构设计

图1展示了算法库总体架构的设计原理。其中,IPMain具有算法库实例对象管理功能;XXImplement具有算法完整的功能,能够实现不同产品之间或者同一产品不同版本之间的算法功能对接;AlgorithmBasis则具有基础算法的功能,它为所有产品和同一产品所有版本的实现提供算法调用服务;ArithemeticBasis则具有基础运算功能,比如加、减、乘、除,求直方图等。

2 算法库详细架构设计

图2展示了算法库的基础架构和2种扩展变化。其中,图2(a)为基础架构,A1是算法库提供的2个差异较大的对外使用接口。它可能是2个产品的接口,也可能是属于同一个产品的不同版本的接口。A1_A1是接口的实现类,它们不是用于实现某个算法的代码,而是用于算法流程设立和参数配置等操作的。图2(b)适用于接口没有变化的产品,但是,它们的功能实现不同。A1_B1的功能与A1_A1完全独立。这种情形多出现在不同产品之间,它们的功能相同,算法不同。图2(c)适用于在原有产品的所有功能上新增了独立功能的新产品,比如乳腺筛查机。这种架构设计的第一代产品只有2D图像功能,第二代产品既包含2D功能,又新增了断层重建功能。

3 算法库对象管理

图像处理流程要求支持多线程的应用场景,即每一幅图像能够独立处理,而且多幅图像的处理能够同时进行。因为算法实现对象内部有不同的模板、数据等图像独享信息,所以,每幅图像都需要一个算法实现对象与其对应,即在图像开始处理时创建该对象,在图像处理结束后销毁该对象,整个操作由应用层执行。

本文提出了一种使用对象池模式的算法库对象管理方法,其主要有以下3个特点:①将对象的创建、销毁、复制、赋值等操作以接口的方式提供给应用层使用。②为每一个创建的对象增加引用计数,表示该对象正在使用。当引用计数被清除时,表示该对象已经闲置。③当接收到创建对象的申请时,要先查找当前有无闲置对象,如果有,则返回该对象供使用,不然就要创建新对象。为了有效控制对象占用的内存,就要控制对象的总数量。当对象的数量达到上限,全部在使用,并且又收到创建对象的申请时,则需等待对方闲置下来后再返回。

4 结论

由本文提出的设计方法可知,与传统方法相比,从架构角度来说,文中提到的方法有较强的复用性和可维护性;从对象管理的角度来说,对象池模式的方法在面向接口编程时,在对象复用性、运行稳定性和最大内存可控性方面有明显的优势。

参考文献

[1]Linlan Liu.Study of Multiple Instances Schedule Based on Object Pool[G]//International Symposium on Information Processing(ISIP).Qingdao:Institute of Electrical and Electronics Engineers ,2010:46-49.

[2]Sun Ruizhi,Shi Meilin.Schedule of activity instance in workflow management system[J].Journal of Softerware,2005(03):400-406.

[3]Prayasee P.Impact of Design Patterns on Quantitative Assessment of Quality Parameters[G]//Advances in Computing and Comm -unication Engineering(ICACCE).Dehradun:Insitute of Electrical and Electronics Engineers,2015: 577-582.

猜你喜欢
架构设计X射线
基于云计算环境下的计算机网络安全存储系统的设计与实现
X射线元素技术在储层保护方面应用的研究
基于VR技术的X射线图像安检危险品自动识别
X射线
天鹅座X-1——最容易看到的黑洞迹象
为何可以通过X射线看穿人体?
掌游西塘APP设计与实现
基于智能终端的照护保险服务管理系统的架构设计
健康无忧网
基于心电远程会诊平台实现医疗资源共享