Patent Publication Number: US-11647888-B2

Title: Compensation for observer movement in robotic surgical systems having stereoscopic displays

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     This application is a U.S. National Stage Application filed under 35 U.S.C. § 371(a) of International Patent Application Serial No. PCT/US2019/025096, filed Apr. 1, 2019, which claims the benefit of and priority to U.S. Provisional Patent Application Ser. No. 62/660,398, filed Apr. 20, 2018, the entire disclosure of which is incorporated by reference herein. 
    
    
     BACKGROUND 
     Description of Related Art 
     Robotic surgery involves a clinician, such as a surgeon or technician, operating a surgical robot via a control console. Robotic surgery may be performed endoscopically, and thus the only view of a surgical site available to the clinician may be images, such as three-dimensional (3D) or stereoscopic images, captured by an endoscopic camera. While operating the surgical robot, and thus viewing the 3D images, the clinician&#39;s head may be moved. Such movement of the clinician&#39;s head may cause the clinician to expect corresponding movement of the 3D images, for instance, based on a change in the clinician&#39;s perspective. However, conventional 3D video images are not configured to move based on movement of the clinician&#39;s head. Thus, if the clinician&#39;s head is moved while the clinician views the 3D images, the 3D images that the clinician perceives are somewhat different from the 3D images that the clinician expects to perceive. This difference may be even greater in surgical robotic systems that utilize head or gaze tracking to control movement of the robotic arm coupled to the endoscopic camera. In view of the foregoing, it would be beneficial to have improved systems and methods for controlling and displaying stereoscopic images from an endoscopic camera while controlling a surgical robot during robotic surgery. 
     SUMMARY 
     The present disclosure describes robotic surgical systems with observer movement compensation, in accordance with various embodiments. In an aspect of the present disclosure, an illustrative system includes an image capture device configured to capture images of a surgical site, a stereoscopic display device, a sensor configured to detect positions of an observer, and a computing device including at least one processor and a memory storing instructions. When executed by the at least one processor, the instructions cause the computing device to receive the images of the surgical site from the image capture device, receive data from the sensor indicating a first position of the observer, process the received images of the surgical site based on the first position of the observer, and cause the stereoscopic display device to display the processed stereoscopic images of the surgical site. 
     In embodiments, the images of the surgical site include left-eye image data and right-eye image data. 
     In some embodiments, the images of the surgical site have a frame size, and the processing the received images of the surgical site based on the first position of the observer includes determining a portion of the images to display based on the first position of the observer, the portion of the images to display being smaller than the frame size. 
     In another embodiment, the portion of the images to display corresponds to a number of pixels less than the number of pixels included in the images of the surgical site. 
     In an embodiment, the determining the portion of the images to display includes cropping at least a portion of the images. 
     In embodiments, the determining the portion of the images to display includes shifting at least a portion of the images. 
     In some embodiments, the shifting of at least the portion of the images includes determining a vector of movement of the observer based on the first position of the observer, determining a direction and an amount of pixels to shift based on the determined vector of movement of the observer, and shifting at least a portion of the images based on the determined direction and amount of pixels to shift. 
     In additional embodiments, the determining the vector of movement of the observer further includes determining a degree of movement, and the determining the direction and the amount of pixels to shift is further based on the determined degree of movement. 
     In another embodiment, the determining the direction and the amount of pixels to shift is further based on a relationship between the vector of movement of the observer and the direction and amount of pixels to shift. The relationship may be based on a table or a threshold. 
     In embodiments, the determining of the vector of movement of the observer includes determining whether the first position of the observer approaches a maximum threshold, and providing an alert indicating that the first position of the observer approaches the maximum threshold. 
     In an embodiment, the determining the vector of movement of the observer includes determining whether the first position of the observer exceeds a maximum threshold, and providing an alert indicating that the first position of the observer exceeds the maximum threshold. 
     In another embodiment, the system further includes a surgical robot, wherein the image capture device is coupled to the surgical robot, and the instructions, when executed by the processor, further cause the computing device to determine a vector of movement of the observer based on the data received from the sensor; and cause the surgical robot to reposition the image capture device based on the determined vector of movement of the observer. 
     In some embodiments, the stereoscopic display is an autostereoscopic display. 
     In several embodiments, the stereoscopic display is a passive stereoscopic display, and the system further comprises three-dimensional (3D) glasses worn by the observer. 
     In embodiments, the 3D glasses cause a left-eye image to be displayed to a left eye of the observer, and a right-eye image to be displayed to a right eye of the observer. 
     In an embodiment, the image capture device is a stereoscopic camera coupled to an endoscope. 
     In another embodiment, the sensor is a motion sensor or a camera. 
     In some embodiments, the data received from the sensor indicating a first position of the observer includes an image of the observer, and the instructions, when executed by the processor, further cause the computing device to generate second image data based on the image of the observer, and detect the first position of the observer by processing the second image data. 
     In several embodiments, the detecting first position of the observer includes detecting one or more of a distance of the observer relative to a vector normal to the stereoscopic display, a direction of the observer relative to the vector normal to the stereoscopic display, or an orientation of the observer relative to the stereoscopic display. 
     In embodiments, the direction of the observer is one or more of a lateral direction or a vertical direction. 
     In some embodiments, the instructions, when executed by the at least one processor, further cause the computing device to receive additional data from the sensor indicating a second position of the observer, process the received images of the surgical site based on the second position of the observer, and cause the stereoscopic display to display the processed images of the surgical site. 
     Provided in accordance with embodiments of the present disclosure are methods for compensating for observer movement in a robotic surgical system. In an aspect of the present disclosure, an illustrative method includes receiving images of a surgical site from an image capture device, receiving data from a sensor indicating a first position of an observer, processing the received images of the surgical site based on the first position of the observer, and causing a stereoscopic display device to display the processed images of the surgical site. 
     Provided in accordance with embodiments of the present disclosure are non-transitory computer-readable storage media storing a program for compensating for observer movement in a robotic surgical system. In an aspect of the present disclosure, an illustrative program includes instructions which, when executed by a processor, cause a computing device to receive images of a surgical site from an image capture device, receive data from a sensor indicating a first position of an observer, process the received images of the surgical site based on the first position of the observer, and cause a stereoscopic display device to display the processed images of the surgical site. 
     Any of the above aspects and embodiments of the present disclosure may be combined without departing from the scope of the present disclosure. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       Various aspects and features of the present disclosure are described hereinbelow with references to the drawings, wherein: 
         FIG.  1    is a schematic diagram of an exemplary robotic surgical system that may be used to compensate for observer movement, according to an embodiment of the present disclosure; 
         FIG.  2    is a simplified block diagram of an exemplary computing device forming part of the system of  FIG.  1   ; 
         FIG.  3    is a flowchart of an exemplary method for compensating for observer movement in a robotic surgical system having a stereoscopic display, according to an embodiment of the present disclosure; 
         FIG.  4    is a flowchart of an exemplary method for processing stereoscopic image data that compensates for observer movement, according to an embodiment of the present disclosure; and 
         FIG.  5    shows various views of an exemplary graphical user interface that may be displayed by the computing device of  FIG.  2   , according to an embodiment of the present disclosure. 
     
    
    
     DETAILED DESCRIPTION 
     The present disclosure generally relates to the display of stereoscopic images on a three-dimensional (3D) display and, more particularly, to the mitigation of a head-movement effect that is perceived by a user when viewing stereoscopic images on a conventional 3D display. In that regard, the present disclosure relates to systems and methods for compensating for observer movement in robotic surgical systems having stereoscopic displays, such as by detecting movement of the observer, repositioning an endoscopic camera based on the detected movement of the observer, shifting images received from the endoscopic camera based on the detected movement of the observer to compensate for the movement of the observer, and displaying the shifted images on a stereoscopic display. In this manner, the stereoscopic images are cropped and/or shifted, such as by shifting one or more lines and/or columns of pixels around the edges of the stereoscopic images, based on movement of the observer&#39;s head prior to being displayed. The effect of such shifting of the stereoscopic images is that the observer&#39;s perceived movement of the stereoscopic images caused by movement of the observer&#39;s head is visually mitigated by changing a displayed portion of the stereoscopic images to cause the displayed images to “move” in the way the observer expects the stereoscopic images to move even if the images received from the endoscopic camera do not move. Visual and/or auditory guidance, notifications, and/or alarms may be displayed and/or emitted by the stereoscopic display and/or a computing device associated therewith, to assist the observer with appropriately moving the observer&#39;s body, head, face, and/or eyes to control movement of the endoscopic camera and/or shifting of the images. Those skilled in the art will appreciate that the endoscopic camera may also be controlled based on other user interfaces, and thus need not be controlled based on movement of the observer. 
     With reference to  FIG.  1   , there is shown a system  100  for compensating for observer movement in robotic surgical systems having stereoscopic displays, according to an embodiment of the present disclosure. System  100  includes a table  110  supporting a body B, a stereoscopic display device  120 , one or more image capture devices  125   a  and  125   b , an endoscope  140  including an endoscopic camera  145 , a surgical robot assembly  150 , and a computing device  200 .  FIG.  1    further shows the observer O. The observer may be a user, clinician, surgeon, nurse, technician, and/or any other person operating surgical robot assembly  150 . 
     Endoscopic camera  145  may be a single camera or a plurality of cameras capable of capturing stereoscopic images and/or any other camera or imaging device known to those skilled in the art that may be used to capture 3D images of a surgical site. In some embodiments, endoscopic camera  145  is a dual-lens or multi-lens camera. Display  120  may be any stereoscopic display device configured to output stereoscopic images to the observer. For example, display  120  may be an autostereoscopic display, a passive stereoscopic display, and/or any other display device configured to display three-dimensional (3D) images known to those skilled in the art. In embodiments where display  120  is a passive stereoscopic display device, system  100  may further include 3D glasses  127  worn by the observer. For example, 3D glasses  127  may cause a left-eye image to be displayed to a left eye of the observer, and a right-eye image to be displayed to a right eye of the observer. 
     Image capture devices  125   a  and  125   b , may be any image capture devices known to those skilled in the art, such as video cameras, still cameras, stereoscopic cameras, etc. In some embodiments, image capture devices  125   a  and  125   b  are motion sensors configured to detect movement of the observer. In other embodiments, image capture devices  125   a ,  125   b  are infrared light based marker tracking devices configured to track markers attached to the observer, such as to the observer&#39;s head and/or to 3D glasses  127 . In embodiments, image capture devices  125   a  and  125   b  are positioned about display  120  to detect a viewing direction and/or angle of the observer. Image capture devices  125   a  and  125   b , are referred to collectively hereinafter as image capture devices  125 . 
     Surgical robot assembly  150  includes a base  151 , a first joint  152  coupled to base  151 , a first robotic arm  155 , coupled to first joint  152 , a second joint  153  coupled to first robotic arm  155 , a second robotic arm  154  coupled to second joint  153 , and an instrument drive unit  156  coupled to second arm  154 . Endoscope  140  is attached to surgical robot assembly  150  via instrument drive unit  156 . In embodiments, multiple surgical robot assemblies  150  may be used concurrently and may together form a surgical robot. While a single surgical robot assembly  150  is shown in  FIG.  1   , multiple surgical robot assemblies  150  may be included in the surgical training environment, and those skilled in the art will recognize that the below-described methods may be applied using surgical robots having single and/or multiple surgical robot assemblies  150 , each including at least one base  151 , robotic arms  154  and  155 , joints  152  and  153 , and instrument drive unit  156 , without departing from the scope of the present disclosure. Body B may be a body of a patient upon whom a robotic surgical procedure is being performed. 
     Computing device  200  may be any computing device configurable for use during robotic surgery known to those skilled in the art. For example, computing device  200  may be a desktop computer, laptop computer, server and terminal configuration, and/or a control computer for surgical robot assembly  150 , etc. In some embodiments, computing device  200  may be included in display  120 . As described further below, system  100  may be used during robotic surgery to detect movement of the observer, reposition endoscope  140  based on the detected movement, and shift images captured by endoscopic camera  145  based on the detected movement. 
     Turning now to  FIG.  2   , there is shown a schematic diagram of computing device  200  forming part of system  100  of  FIG.  1   , according to an embodiment of the present disclosure. Computing device  200  includes a memory  202  storing a database  240  and an application  280 . Application  280  includes instructions which, when executed by a processor  204 , cause computing device  200  to perform various functions, as described below. Application  280  further includes graphical user interface (GUI) instructions  285  which, when executed by processor  204 , cause computing device  200  to generate one or more GUIs (not shown in  FIG.  2   ), such as, for example, the exemplary GUI shown in  FIGS.  5 A- 5 D . Database  240  stores various tables, thresholds, and/or relational data related to shifting of images based on movement of the observer, as further described below. 
     Memory  202  may include any non-transitory computer-readable storage medium for storing data and/or software that is executable by processor  204  and which controls the operation of computing device  200 , display  120 , and/or surgical robot assembly  150 . In an embodiment, memory  202  may include one or more solid-state storage devices such as flash memory chips. Alternatively, or in addition to the one or more solid-state storage devices, memory  202  may include one or more mass storage devices connected to the processor  204  through a mass storage controller (not shown in  FIG.  2   ) and a communications bus (not shown in  FIG.  2   ). Although the description of computer-readable media included herein refers to a solid-state storage, it should be appreciated by those skilled in the art that computer-readable storage media may be any available media that can be accessed by processor  204 . That is, computer-readable storage media may include non-transitory, volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules or other data. For example, computer-readable storage media may include RAM, ROM, EPROM, EEPROM, flash memory or other solid state memory technology, CD-ROM, DVD, Blu-Ray or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which may be used to store the desired information and which may be accessed by computing device  200 . 
     Computing device  200  further includes an input interface  206 , a communications interface  208 , and an output interface  210 . Input interface  206  may be a mouse, keyboard, or other hand-held controller, foot pedal, touch screen, voice interface, and/or any other device or interface by means of which a user may interact with computing device  200 . 
     Communications interface  208  may be configured to connect to a network such as a local area network (LAN) consisting of a wired network and/or a wireless network, a wide area network (WAN), a wireless mobile network, a Bluetooth network, and/or the internet. Output interface  210  may be a screen or other display device usable to output images or data by computing device  200 . 
     With reference to  FIG.  3   , there is shown a flowchart of an exemplary method  300  for compensating for observer movement in robotic surgical systems having stereoscopic displays, according to an embodiment of the present disclosure. In embodiments, method  300  may be implemented using a system, such as system  100  of  FIG.  1   , and one or more computing devices, such as computing device  200  of  FIG.  2   . Starting at step S 302 , computing device  200  receives one or more images of a surgical site within body B. The images may be first images of the surgical site, and may be captured by endoscopic camera  145 . The first images may be stereoscopic images including left-eye image data and right-eye image data. In some embodiments, the first images are live images of the surgical site, and the below-described processing of the first images occurs in real time. 
     Next, at step S 304 , computing device  200  receives data indicating a position of the observer. The data may be acquired by image capture devices  125 . The data may include images and/or image data of the observer, such as images of a portion of the observer&#39;s body, for example, the observer&#39;s head, face, and/or eyes. For example, if the data received from image capture devices  125  include images, computing device  200  may process the images to generate image data, and may then further process the image data to identify the observer and detect a position of the observer in the image data, such as a position relative to a vector normal and centered to a front face of display  120  (referred to hereinafter as the “normal vector”). For example, the normal vector may be a vector coming out of the center of a face of display  120  facing the observer. In some embodiments, computing device  200  may process the images and/or image data received from image capture devices  125  to identify the observer&#39;s head, face, and/or eyes, as well as a viewing direction, orientation, and/or angle of the observer&#39;s head, face, and/or eyes. Computing device  200  may further process the images and/or image data received from image capture devices  125  to determine movement of the observer&#39;s body, head, face, and/or eyes, such as movement relative to the normal vector. For example, computing device  200  may intermittently and/or continuously receive data from image capture devices  125 , and may intermittently and/or continuously process the data to identify successive positions of the observer, and thereby determine movement of the observer relative to a previous position and/or relative to the normal vector. In other embodiments, such as embodiments where image capture devices  125  are motion sensors, image capture devices  125  provide motion data to computing device  200 . 
     As an optional step, at step S 306 , computing device  200 , such as via application  280 , may process the data received at step S 304  to determine a direction, amount, speed, and/or degree of movement of the observer based on the determined position or positions of the observer, such as of the observer&#39;s head, face, and/or eyes. For example, computing device  200  may determine whether the observer is moving in a horizontal direction, a vertical direction, a diagonal direction, and/or a rotational direction relative to the normal vector. Computing device  200  may further determine an amount, speed, and/or degree of movement of the observer in each direction—e.g., the user may be moving left by 5 cm and up by 2 cm. Computing device  200  may then cause surgical robot assembly  150  to reposition endoscope  140  based on the determined movement of the observer. 
     As noted above, in some embodiments, computing device  200  may intermittently and/or continuously receive images and/or image data of the observer from image capture devices  125 . Computing device  200  may then intermittently and/or continuously process the images and/or image data of the observer to detect movement of the observer. For example, computing device  200  may determine successive positions of the observer relative to the normal vector in the images and/or image data received from image capture devices  125 . Computing device  200  may then determine a vector of the observer&#39;s movement based on the determined successive positions of the observer relative to the normal vector in the images and/or image data. 
     As an additional optional step, after endoscope  140  is repositioned, computing device  200 , at step S 308 , receives second images of the surgical site from endoscopic camera  145 . Similar to the first images, the second images may be stereoscopic images including left-eye image data and right-eye image data, and may have the same aspect ratio, resolution, frame size, and/or number of pixels as the first images. 
     Thereafter, concurrently with steps S 306  and/or S 308 , or in embodiments where steps S 306  and S 308  are not performed directly after step S 304 , at step S 310  computing device  200 , such as via application  280 , determines whether the position of the observer, as determined at step S 306 , approaches a maximum threshold for that particular direction of movement. For example, computing device  200  may have stored in database  240  various tables and/or thresholds for each direction relative to the normal vector. The tables and/or thresholds may indicate various relationships between the direction and distance of the observer relative to the normal vector, and corresponding movement of endoscope  140  and/or adjustment required for displaying stereoscopic image data. For example, the tables and/or thresholds may indicate an amount of movement of the observer in a particular direction, such as a horizontal direction, required to cause surgical robot assembly  150  to reposition endoscope  140  by a predetermined amount in the same direction, and/or a number of pixels in a particular direction to shift stereoscopic images received from endoscope  140  based on position of the observer relative to the normal vector. The tables and/or thresholds may also indicate a maximum amount of movement in a particular direction that can be used to cause surgical robot assembly  150  to reposition endoscope  140  and/or a maximum number of pixels that could be shifted in a particular direction. Such a maximum threshold may correspond to a limit of motion of endoscope  140  and/or surgical robot assembly  150 , and/or a maximum number of pixels available to be shifted in a particular direction. 
     If it is determined at S 310  that the position of the observer does not approach a maximum threshold corresponding to that particular direction (“No” at step S 310 ), processing skips ahead to step S 318 . Alternatively, if it is determined at step S 310  that the position of the observer approaches a maximum threshold corresponding to that particular direction (“Yes” at step S 310 ), processing proceeds to step S 312 . At step S 312 , computing device  200 , such as via application  280 , determines whether the position of the observer exceeds the maximum threshold corresponding to that particular direction. If it is determined at step S 312  that the position of the observer does not exceed the maximum threshold corresponding to that particular direction (“No” at step S 312 ), processing proceeds to step S 314 , where computing device  200  provides an alert to notify the observer that the position of the observer is approaching the maximum threshold corresponding to that particular direction. Alternatively, if it is determined at step S 312  that the position of the observer exceeds the maximum threshold corresponding to that particular direction (“Yes” at step S 312 ), processing proceeds to step S 316 , where computing device provides a warning to notify the observer that the position of the observer has exceeded the maximum threshold. After either the alert is provided at step S 314  or the warning is provided at step S 316 , processing proceeds to step S 318 . 
     At step S 318 , computing device  200 , such as via application  280 , processes the images of the surgical site received at step S 302  and/or the second images of the surgical site received at step S 308 . Further details regarding an exemplary procedure  400  that may be employed as part of the processing of the images of the surgical site at step S 318  are described below with reference to  FIG.  4   . Computing device  200  then, at step S 320 , causes display  120  to display the processed images of the surgical site. 
     Thereafter, at step S 322 , computing device  200 , such as via application  280 , determines whether the surgical procedure has been completed. For example, computing device  200  may receive input from the observer and/or another clinician involved in the surgical procedure indicating that the surgical procedure has been completed. If it is determined at step S 322  that the surgical procedure has not been completed (“No” at step S 322 ), processing returns to step S 304 . Alternatively, if it is determined at step S 322  that the surgical procedure has been completed (“Yes” at step S 322 ), processing ends. 
     Turning now to  FIG.  4   , there is shown a flowchart of an exemplary method  400  for processing stereoscopic images to compensate for observer movement, according to an embodiment of the present disclosure. Computing device  200  may perform some or all of the steps of the method of  FIG.  4   , for example, at or during step S 318  of the method  300  of  FIG.  3   , described above. However, those skilled in the art will recognize that some of the steps of method  400  may be repeated, omitted, and/or performed in a different sequence without departing from the scope of the present disclosure. 
     Starting at step S 402 , computing device  200 , receives images of a surgical site. The images of the surgical site may be received from a camera such as endoscopic camera  145 , as shown in  FIG.  5    where, for example, image  502  is a stereoscopic image displayed by display  120 . Thus, the images received from endoscopic camera  145  may include left-eye image data and right-eye image data which are displayed by display device  120  as a stereoscopic image  502 . The image  502  may have a particular aspect ratio, resolution, frame size, and/or number of pixels. For example, the image  502  may have multiple rows and columns of pixels. The aspect ratio, resolution, frame size, and/or number of pixels may correspond to a type of endoscopic camera  145  used. Alternatively, or in addition, the aspect ratio, resolution, frame size, and/or number of pixels may correspond to image processing techniques used by computing device  200 . For example, the frame size of the image  502  may correspond to a number of pixels included in the image  502 . 
     Thereafter, at step S 404 , computing device  200 , such as via application  280 , crops at least a portion of the image  502  of the surgical site to designate a displayed portion  504  of the image  502 , as shown in  FIG.  5   . For example, the displayed portion  504  may include a number of pixels less than the full number of pixels included in the image  502  of the surgical site. Thus, the displayed portion  504  may have a smaller resolution, frame size, and/or number of pixels than the image  502  of the surgical site. For example, the displayed portion  504  may exclude one or more rows and/or columns of pixels  506  around outer edges of the image  502  of the surgical site. As shown in  FIG.  5   , the displayed portion  504  has a smaller frame size than the image  502 . Image view  508  shows an example of the displayed portion  504  of the image  502  that may be displayed on display  120  prior to being shifted. 
     Next, at step S 406 , computing device  200 , such as via application  280 , determines a position of the observer&#39;s body, e.g. the observer&#39;s head, face, and/or eyes, relative to the normal vector. In some embodiments, the determination described above with reference to step S 306  is the same as the determination described here. In other embodiments, computing device  200  may perform two separate determinations of a position of the observer relative to the normal vector. For example, computing device  200  may determine a horizontal distance, a vertical distance, and/or a diagonal distance, of the position of the observer relative to the normal vector. In some embodiments, computing device  200  may determine a directional component, such as a vector, and a scalar component, such as a magnitude, based on the position of the observer relative to the normal vector. In some embodiments, successive positions of the observer (such as a first position, a second position, etc.) are determined, and movement of the observer may then be detected based on the determined successive positions of the observer relative to the normal vector. For example, as the observer moves relative to the normal vector, one or more positions of the observer relative to the normal vector may be determined, and a direction, amount, speed, and/or degree of movement of the observer may be determined based on the successive positions of the observer relative to the normal vector. 
     Thereafter, at step S 408 , computing device  200 , such as via application  280 , determines a direction and/or amount of pixels to shift and/or pan the displayed portion  504  of the image  502 , based on the position of the observer determined at step S 406 . The determination may be based on a table and/or a threshold. For example, computing device  200  may have stored in database  240  various tables and/or thresholds, as described above with reference to step S 310 . The tables and/or thresholds may indicate various relationships between a direction and/or distance of the observer relative to the normal vector, and a corresponding direction and amount of pixels to shift and/or pan the displayed portion  504  of the image  502 . For example, the tables and/or thresholds may indicate distance of the observer from the normal vector in a particular direction, such as a horizontal direction, required to shift a predetermined amount of pixels of the image frame  504  in the same direction. In embodiments, different thresholds and/or relationships may be configured for each direction. For example, based on the preference of the observer, the threshold for the horizontal direction may be lower than the threshold for the vertical direction, thus allowing for more sensitivity to movement of the observer in a horizontal direction relative to the normal vector than movement of the observer in a vertical direction relative to the normal vector. The tables and/or thresholds may also indicate a maximum distance of the observer from the normal vector in a particular direction that can be used to shift pixels in that direction. For example, if too many pixels are shifted and/or panned at once, the images displayed by display  120  may appear distorted. As such, a maximum threshold may correspond to a limit of the number of pixels that may be shifted and/or panned at once. Further, in embodiments where computing device  200  determines directional and scalar components based on movement of the observer, the determination of the direction and/or amount of pixels to shift may further be based on the directional and scalar components. 
     Next, at step S 410 , computing device  200 , such as via application  280 , shifts the displayed portion  504  of the image  502  based on the direction and/or amount of pixels to shift determined at step S 408 . For example, if the position of the observer is to the left of the normal vector by a particular amount, computing device  200  may shift the displayed portion  504  right by the amount of pixels determined at step S 408 . In the example shown in  FIG.  5   , the displayed portion  504  of the image  502 , as shown in unshifted image view  508 , is shifted to the right (as viewed by the observer), as shown in shifted image view  510 , such that the displayed portion  504  includes one or more columns of pixels to the right of, and not included in, the unshifted image view  508 , and excludes one or more columns of pixels of the image  502  of the surgical site included in the right side of the unshifted image view  508 . As such, the unshifted image view  508  and the shifted image view  510 , both being based on the image  502  of the surgical site received from endoscopic camera  145 , may include an overlapping portion that is the majority of both the unshifted image view  508  and the shifted image view  510 . However, the shifted image view  510  includes a minor portion of the right of the shifted image view  510  that is not included in the unshifted image view  508 , and will exclude a minor portion of the right of the unshifted image view  508 . 
     As such, by virtue of the above-described systems and methods, computing device  200  may be configured to detect one or more positions of the observer, reposition an endoscopic camera based on movement of the observer determined based on successive positions of the observer, shift one or more lines and/or columns of pixels in the images received from the endoscopic camera based on the one or more positions of the observer to compensate for the movement of the observer, and display the shifted images on a stereoscopic display. In this manner, the stereoscopic images are cropped and/or shifted based on movement of the observer&#39;s head prior to being displayed. One effect of such shifting of the stereoscopic images is that the displayed images “move” in the way the observer expects the stereoscopic images to move even if the images received from the endoscopic camera do not move. 
     Detailed embodiments of devices, systems incorporating such devices, and methods using the same as described herein. However, these detailed embodiments are merely examples of the disclosure, which may be embodied in various forms. Therefore, specific structural and functional details disclosed herein are not to be interpreted as limiting, but merely as a basis for the claims and as a representative basis for allowing one skilled in the art to variously employ the present disclosure in appropriately detailed structure.