Component-based software for dynamic configuration and control of computer assisted intervention systems: Release 1.0.

This paper presents the rationale for the use of a component-based architecture for computer-assisted intervention (CAI) systems, including the ability to reuse components and to easily develop distributed systems. We introduce three additional capabilities, however, that we believe are especially important for research and development of CAI systems. The first is the ability to deploy components among different processes (as conventionally done) or within the same process (for optimal real-time performance), without requiring source-level modifications to the component. This is particularly relevant for real-time video processing, where the use of multiple processes could cause perceptible delays in the video stream. The second key feature is the ability to dynamically reconfigure the system. In a system composed of multiple processes on multiple computers, this allows one process to be restarted (e.g., after correcting a problem) and reconnected to the rest of the system, which is more convenient than restarting the entire distributed application and enables better fault recovery. The third key feature is the availability of run-time tools for data collection, interactive control, and introspection, and offline tools for data analysis and playback. The above features are provided by the open-source cisst software package, which forms the basis for the Surgical Assistant Workstation (SAW) framework. A complex computer-assisted intervention system for retinal microsurgery is presented as an example that relies on these features. This system integrates robotics, stereo microscopy, force sensing, and optical coherence tomography (OCT) imaging to transcend the current limitations of vitreoretinal surgery.

[1]  Gabor Fichtinger,et al.  OpenIGTLink: an open network protocol for image‐guided therapy environment , 2009, The international journal of medical robotics + computer assisted surgery : MRCAS.

[2]  Peter Kazanzides,et al.  Software components and frameworks for medical robot control , 2006, Proceedings 2006 IEEE International Conference on Robotics and Automation, 2006. ICRA 2006..

[3]  Thaís Vasconcelos Batista,et al.  Managing Dynamic Reconfiguration in Component-Based Systems , 2005, EWSA.

[4]  Pierre-Charles David,et al.  Experience with Safe Dynamic Reconfigurations in Component-Based Embedded Systems , 2007, CBSE.

[5]  Michi Henning,et al.  A new approach to object-oriented middleware , 2004, IEEE Internet Computing.

[6]  Peter Kazanzides,et al.  A component-based architecture for flexible integration of robotic systems , 2010, 2010 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[7]  Thomas Ledoux,et al.  Reliable Dynamic Reconfigurations in a Reflective Component Model , 2010, CBSE.

[8]  Russell H. Taylor,et al.  New steady-hand Eye Robot with micro-force sensing for vitreoretinal surgery , 2010, 2010 3rd IEEE RAS & EMBS International Conference on Biomedical Robotics and Biomechatronics.

[9]  Clemens A. Szyperski,et al.  Component software - beyond object-oriented programming , 2002 .

[10]  Jang-Eui Hong,et al.  A component composition model providing dynamic, flexible, and hierarchical composition of components for supporting software evolution , 2007, J. Syst. Softw..

[11]  Russell H. Taylor,et al.  Single Fiber Optical Coherence Tomography Microsurgical Instruments for Computer and Robot-Assisted Retinal Surgery , 2009, MICCAI.

[12]  Marc Shapiro,et al.  Structure and Encapsulation in Distributed Systems: The Proxy Principle , 1986, ICDCS.