Efficient migration of complex off-line computer vision software to real-time system implementation on generic computer hardware.
This paper addresses the problem of migrating large and complex computer vision code bases that have been developed off-line, into efficient real-time implementations avoiding the need for rewriting the software, and the associated costs. Creative linking strategies based on Linux loadable kernel modules are presented to create a simultaneous realization of real-time and off-line frame rate computer vision systems from a single code base. In this approach, systemic predictability is achieved by inserting time-critical components of a user-level executable directly into the kernel as a virtual device driver. This effectively emulates a single process space model that is nonpreemptable, nonpageable, and that has direct access to a powerful set of system-level services. This overall approach is shown to provide the basis for building a predictable frame-rate vision system using commercial off-the-shelf hardware and a standard uniprocessor Linux operating system. Experiments on a frame-rate vision system designed for computer-assisted laser retinal surgery show that this method reduces the variance of observed per-frame central processing unit cycle counts by two orders of magnitude. The conclusion is that when predictable application algorithms are used, it is possible to efficiently migrate to a predictable frame-rate computer vision system.
Tyrrell
James Alexander
JA
Rensselaer Polytechnic Institute, Troy, NY 12180-3590, USA.
LaPre
Justin M
JM
Carothers
Christopher D
CD
Roysam
Badrinath
B
Stewart
Charles V
CV
D000465:Algorithms; D001185:Artificial Intelligence; D006801:Humans; D007089:Image Enhancement / Q000379:methods; D007090:Image Interpretation, Computer-Assisted / Q000379:methods*; D009862:Online Systems; D013508:Ophthalmologic Surgical Procedures / Q000379:methods; D009887:Ophthalmoscopy / Q000379:methods; D015203:Reproducibility of Results; D012160:Retina / Q000033:anatomy & histology* / Q000601:surgery*; D012680:Sensitivity and Specificity; D012984:Software; D025321:Surgery, Computer-Assisted / Q000379:methods*