An Efficient Recovery Mechanism for Restoration
of Image Contents in Teleconsultation
 
Authors:
Cheng-Hsiung Wang, MS, National Cheng Kung University; Kuo-Feng Ssu, PhD; Pau-Choo Chung, PhD
 
Background:
With the widespread deployment of the Internet and the increasing power of communication technologies, many telecommunication systems, have been proposed to facilitate the exchange of multi-media information between users in geographically-dispersed locations[1–3]. One area in which telecommunication systems have found particular use is that of telemedicine and teleconsultation[4–5]. In medical teleconsultation, a critical dependency exists between the image contents and the type and sequence of the image processing commands applied by the participants in a session. Accordingly, for re-entrant / late users, a significant challenge exists in restoring the image contents in such a way that all the participants maintain a consistent view of the medical images. In this study, this problem is resolved by a recovery mechanism comprising two major components, namely a content-recording scheme designated as IndexTree in Figure 1, and a prioritized recovery policy. The efficiency of the proposed recovery mechanism is proven by the reduction of the recovery-latency (i.e., the elapsed time between the moment at which the re-entrant / late user joins the on-going session and the moment at which the restoration process is completed).
 
Figure 1
Figure 1: Illustration of Index Tree architecture showing SessionNode and DataNodes
comprising UserNode, CommandNode, and PictureNode

 
The IndexTree utilizes an efficient cross-linkage design to maintain the dependency between the image contents and the sequence in which image processing commands are applied. As shown in Figure 1, IndexTree comprises a single SessionNode and multiple DataNodes distributed in time. Furthermore, it can be seen that each DataNode contains a CommandNode, a PictureNode, and a UserNode. The SessionNode maintains a Picture_Index which records the DataNode and CommandNode index pairs for every medical image. The DataNodes are used to store the index information relating to all the events which take place during the time period(s) for which a particular physician has control. In DataNodes, the UserNode records the index of the first performed command. Within a DataNode, the commands which affect the image (referred to henceforth as “image-affect commands”) are indexed using the CommandNode, while the Command-Record mechanism in[6] is used to record all the commands (both image-affect and non-image-affect) invoked by participants. As for the PictureNode, it contains a series of records, each of which represents the invocation of a particular image at the associated DataNode. Through the above content-recording scheme, IndexTree maintains a record of all the image-affect commands for each medical image such that, when a restoration process is required, these image-affect commands can be rapidly identified and transmitted to the user. As a result, a significant reduction of the recovery-latency is obtained in both the command identification / transmission time and the image restoration time compared to traditional message-logging schemes[7], in which the contents are restored by re-executing all of the commands applied to the images during the session.
 
Figure 2
Figure 2: Illustrative example of showing identification of DataNodes and commands used to select specific images.
 

The prioritized recovery policy utilizes IndexTree to restore the foreground image (i.e., the image under current discussion) before the background images (i.e., the remaining images in the session). When a re-entrant / late user joins an on-going session, the session server initializes the prioritized restoration process by interrogating the Picture_Index in the SessionNode to determine all the DataNodes at which the foreground image was selected for discussion and to identify the commands used within these DataNodes to select this image. Figure 2 presents an illustrative example in which picA is assumed to be the foreground image. The index pair 2:1 indicates that picA was selected for discussion in the second DataNode using the first command listed in the corresponding CommandNode. (The command “TS:click_win” indicates the selection of a new image). Similarly, the index pair 7:3 shows that picA was later selected as the foreground image in the seventh DataNode using the third command in the corresponding CommandNode. Having identified all the DataNodes and commands used to select picA for discussion, the restoration process for each index pair is accomplished by the session server which selects all the commands in the corresponding CommandNode starting from one, used to select the image, and ending with one immediately prior to that, used to select a new image as the foreground image, and then transmits those commands to the re-entrant / late user end where they are then re-executed.

 
Evaluation:
The performance of the proposed recovery mechanism was evaluated by performing a series of experiments and by measuring the resulting recovery-latency. To demonstrate the efficiency of the proposed recovery mechanism, the recovery-latency is measured for two different recovery policies, namely a basic recovery policy and the prioritized recovery policy. The basic recovery policy simply re-executes every command applied to the image since the beginning of the session. By contrast, the prioritized recovery policy uses IndexTree to identify and apply only image-affect commands needed. Table 1 summarizes the recovery-latency at two experimental objectives, Client_A and Client_B, for each of the five experimental patterns under the basic and prioritized recovery policies.
 

Table 1
Table 1: Experimental results: recovery-latency (unit: ms)

 
Discussion:
It is observed that the average recovery-latency at Client_A is reduced from 50089 ms to 7538 ms when the basic recovery policy is replaced with the prioritized recovery policy. In other words, the recovery-latency at Client_A is reduced by around 84.95% when using the proposed recovery mechanism. Similarly, the average recovery-latency at Client_B is reduced from 51941 ms to 9733 ms, when using the prioritized recovery policy, corresponding to a performance improvement of 81.26%. In other words, the IndexTree / prioritized recovery policy yields a significant improvement in the performance of the restoration process. In practice, this performance improvement can be attributed to two principal factors, namely: (1) the cross-linkage design implemented in IndexTree facilitates the rapid identification of all the image-affect commands when performing the restoration process, and (2) the server transmits only those image-affect commands, thereby reducing both the transmission time and the restoration time.
 
Conclusion:
In restoring the image contents for re-entrant / late users, it is essential to preserve the command dependency in order to ensure that each participant has a consistent view of the images. This study has proposed two mechanisms for enhancing the restoration performance while satisfying this consistency constraint. First, a content-recording scheme, IndexTree, has been proposed for indexing the image-affect commands applied to each image. In the restoration process, the server only sends those image-affect commands to the re-entrant / late user, rather than all the commands. As a result, both the command parsing / transmission time and the image restoration time are significantly reduced. Second, a prioritized recovery policy has been proposed for accomplishing the preferential restoration of the foreground image prior to the background images. The prioritized recovery policy enables the re-entrant / late users to follow the on-going session in a passive capacity as the restoration of the remaining images is completed in a transparent background mode. The evaluation results confirm that the proposed recovery mechanism yields a significant reduction in recovery-latency compared to that of traditional message-logging restoration systems.
 
References:
[1] Lee CC, Chung PC, Han YS, Duh DR, Lin, CW. “A Practice of a Collaborative Multipoint Medical Teleconsultation System on Broadband Network.” Journal of High Speed Networks. 2004;Vol.13(3):207-222.

[2] Huang W, Ai Y, Chen Z, et al. “Computer Supported Cooperative Work (CSCW) for Telemedicine”, Computer Supported Cooperative Work in Design. 11th International Conference. April 2007;1063-1065.

[3] Marsh J, Glencross M, Pettifer S, Hubbold R. “A network architecture supporting consistent rich behavior in collaborative interactive applications.” Visualization and Computer Graphics, IEEE Transactions. May-June 2006;Vol.12:3:405-416.

[4] Hsu YC, Lin PO, Hsu SJ, Chan CT. “Design and Implementation of Teleconsultation System for Instant Treatment.” Bioinformatics and Biomedical Engineering (ICBBE). 2nd International Conference. May 2008;1355-1358.

[5] Lo CS, Yang CW, Chung PC, Ouyang YC, Lee SK, Liao PS. “A Mammography Tele-Consultation Pilot System in Taiwan.” Journal of High Speed Networks. 2000;Vol.9:31-46.

[6] Wang CH, Lee CC, Jiau HC, et al. “Improving the Tele-consultation Services – Capabilities of Retro.” Proceedings of the 3rd European Medical & Biological Engineering Conference. 2005.

[7] Elnozahy E.N, Alvisi L, Wang YM, Johnson DB. “A survey of rollback-recovery protocols in message-passing systems.” ACM Computing Surveys. September 2002;Vol.34(3):375-408.