Context-aware surgical summary for streaming
Patent Information
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- DIGITAL SURGERY LTD
- Filing Date
- 2024-08-16
- Publication Date
- 2026-06-24
AI Technical Summary
Current computer-assisted surgery (CAS) systems lack an efficient method for generating context-aware surgical summaries during streaming, which hinders real-time collaboration and post-surgical analysis.
A computer-implemented method and system that monitor surgical data feeds during a procedure, detect contextually-notable events based on summary generation rules, and generate a surgical summary for display to users in a streaming system, providing prompts for review during the procedure.
Enables real-time generation and display of context-aware surgical summaries, enhancing collaboration during surgeries and facilitating post-surgical analysis by providing relevant data summaries to users.
Smart Images

Figure EP2024073051_20022025_PF_FP_ABST
Abstract
Description
CONTEXT-AWARE SURGICAL SUMMARY FOR STREAMINGBACKGROUND
[0001] The present disclosure relates in general to computing technology and relates more particularly to computing technology for context-aware surgical summary generation for streaming.
[0002] Computer-assisted systems, particularly computer-assisted surgery (CAS) systems, can rely on video data digitally captured during a surgery in an operating room. Such video data can be stored and / or streamed. In some cases, the video data can be used within a system to augment a person’s physical sensing, perception, and reaction capabilities. For example, such systems can effectively provide the information corresponding to an expanded field of vision, both temporal and spatial, that enables a person to adjust current and future actions based on the part of an environment not included in his or her physical field of view. Alternatively, or in addition, the video data, which can include or be accompanied by audio data captured by one or more microphones, can be stored and / or transmitted for several purposes such as archival, operational notes, training, post-surgery analysis, and / or patient consultation.
[0003] Streaming systems may allow users within an operating room environment to collaborate with users outside of the operating room environment. Further, streaming system may be observational to allow remote users to view and discuss a live surgical procedure without directly interacting with the surgeon or surgical team performing an operation.SUMMARY
[0004] According to an aspect, a computer-implemented method includes monitoring, by a surgery monitoring system, one or more surgical data feeds during a surgical procedure for a plurality of phases and events and determining, by the surgery monitoring system, whether at least one of the events is detected as a contextually-notable event based on a plurality of summary generation rules. The method also includes generating, by the surgery monitoring system, a surgical summary for display to a user of a streaming system based on a relationship between the contextually-notable event and at least one of the phases of the surgical procedure,and providing the user with a prompt to review the surgical summary with data recorded from the one or more surgical data feeds, the prompt provided while the surgical procedure is in progress.
[0005] According to an aspect, a computer program product includes a memory device having computer executable instructions stored thereon, which when executed by one or more processors cause the one or more processors to perform operations including determining whether an event detected during a surgical procedure is a contextually-notable event based on context data associated with the event, generating a surgical summary during the surgical procedure based on the contextually-notable event, and displaying the surgical summary through a user interface of a streaming system during the surgical procedure.
[0006] According to an aspect, a system includes a memory system and a processing system coupled to the memory system. The processing system is configured to execute a plurality of instructions to monitor one or more surgical data feeds during a surgical procedure, generate a surgical summary during the surgical procedure based on the one or more surgical data feeds, and output the surgical summary through a user interface of a streaming system during the surgical procedure.
[0007] Additional technical features and benefits are realized through the techniques of the present invention. Aspects of the invention are described in detail herein and are considered a part of the claimed subject matter. For a better understanding, refer to the detailed description and to the drawings.BRIEF DESCRIPTION OF THE DRAWINGS
[0008] The specifics of the exclusive rights described herein are particularly pointed out and distinctly claimed in the claims at the conclusion of the specification. The foregoing and other features and advantages of the aspects of the invention are apparent from the following detailed description taken in conjunction with the accompanying drawings in which:
[0009] FIG. 1 depicts a computer-assisted surgery (CAS) system according to one or more aspects;
[0010] FIG. 2 depicts a surgical procedure system in accordance with one or more aspects;
[0011] FIG. 3 depicts a system for prediction generation that can be incorporated according to one or more aspects;
[0012] FIG. 4 depicts a time sequence diagram illustrating a relationship between phases and events according to one or more aspects;
[0013] FIG. 5 depicts a time sequence diagram illustrating a relationship between events spanning multiple phases according to one or more aspects;
[0014] FIG. 6A depicts a user interface of a streaming session according to one or more aspects;
[0015] FIG. 6B depicts a user interface after a user joins a streaming session according to one or more aspects;
[0016] FIG. 6C depicts a user interface of a streaming session with a surgical summary according to one or more aspects;
[0017] FIG. 6D depicts a user interface of a streaming session with an event timeline according to one or more aspects;
[0018] FIG. 7 depicts a flowchart of a method for context-aware surgical summary generation for streaming according to one or more aspects; and
[0019] FIG. 8 depicts a computer system according to one or more aspects.
[0020] The diagrams depicted herein are illustrative. There can be many variations to the diagrams and / or the operations described herein without departing from the spirit of the invention. For instance, the actions can be performed in a differing order, or actions can be added, deleted, or modified. Also, the term “coupled” and variations thereof describe having a communications path between two elements and do not imply a direct connection between the elements with no intervening elements / connections between them. All of these variations are considered a part of the specification.DETAILED DESCRIPTION
[0021] Exemplary aspects of the technical solutions described herein include systems and methods for context-aware surgical summary generation for streaming. As one example, a video streaming system can allow one or more participants external to an operating room to observe and interact with a surgeon or surgical team within the operating room. A user interface within the operating room can provide a surgeon or surgical team with the ability to invite one or more participants to observe the surgical procedure and interact through audio, video, and / or telestration. Participants outside of the operating room can use a different user interface that allows the participants to customize viewing preferences as well as interacting through audio, video, and / or telestration. Other interactions can occur through an interactive chat while streaming is active and comments which can be added during streaming or postoperatively to link with a recording of the surgical video. For example, surgical video can include an endoscopic view of a surgical procedure. Further, there can be multiple cameras or selectable points-of-view that capture the surgical procedure. In some aspects, the surgical video can be captured with overlaid content, such as structural identification using color and / or text overlays. The overlaid content can be merged with the surgical video or managed as another stream such that viewers may have an option of turning the overlaid content on or off.
[0022] Some users may desire to join a surgical streaming session after a surgical procedure is in progress. For example, a supervising surgeon outside of an operating room may desire to join a surgical streaming session to check on progress and potential issues encountered by students or less experienced staff. Upon joining the streaming session, the user may desire to view a summary of events and other information related to the surgical procedure to understand past events and a current state. Summary information can include video clips and data occurring in a particular surgical phase, associated with a particular event, and / or derived data.
[0023] In some aspects, summary information can be made available to any participants of a streaming session regardless of whether they were late to join the streaming session. For instance, making summary data available can assist observers in quickly locating relevant previously stored data during the surgical procedure without having to manually search for potentially relevant segments of video or other data while the surgical procedure is active.
[0024] Machine-learning models can monitor one or more surgical video streams and / or other data sources to track progress through a surgical procedure. The machine-learning models can be trained to predict the occurrence of events within context of a surgical procedure. For example, machine-learning models can learn a sequence of phases for one or more types of surgical procedures along with expected occurrences of events within particular phases. Deviations from expected occurrences of events can be used as one type of contextually-notable event that can be part of surgical summary generation to assist users in identifying unusual events and related information. Other types of events can be detected and used as anchor points in summarizing information, such as starting or completion of a surgical phase or a procedure.
[0025] An operating room may contain a camera and microphone located on a central console and / or one or more cameras and microphones affixed (e.g., via a clip or other means) to medical personnel or objects in the operating room. In addition, or alternatively, one or more cameras and microphones can be attached or integrated into one or more devices in the operating room such as, but not limited to surgical tools, goggles, personal computers, smart watches, and / or smart phones. One or more cameras with microphones can be designated as providing a view of a surgeon or surgical team within the operating room. One or more surgical cameras can be incorporated with surgical tools, such as a laparoscopic or more generally, and endoscopic camera. Thus, while some resulting video feeds can include an audio portion, other video feeds may not include audio. Summarized data can include video, audio, surgical instrument data, sensor data, and / or other such data collected in an operating room.
[0026] Turning now to FIG. 1, an example CAS system 100 is generally shown in accordance with one or more aspects. The CAS system 100 includes at least a computing system 102, a video / audio recording system 104, and a surgical instrumentation system 106. As illustrated in FIG. 1, an actor 112 can be medical personnel that uses the CAS system 100 to perform a surgical procedure on a patient 110. Medical personnel, or health care professionals, can be a surgeon, assistant, nurse, administrator, or any other actor that interacts with the CAS system 100 in a surgical environment. The surgical procedure can be any type of surgery, such as but not limited to open or laparoscopic hernia repair, laparoscopic cholecystectomy, robotic laparoscopic surgery, or any other surgical procedure with or without a robot. In other examples, actor 112 can be a surgeon, anesthesiologist, theatre nurse, technician, an administrator, an engineer, orany other such personnel that interacts with the CAS system 100. For example, actor 112 can record data from the CAS system 100, configure / update one or more attributes of the CAS system 100, review past performance of the CAS system 100, repair the CAS system 100, etc.
[0027] A surgical procedure can include multiple phases, and each phase can include one or more surgical actions. A “surgical action” can include an incision, a compression, a stapling, a clipping, a suturing, a cauterization, a sealing, or any other such actions performed to complete a phase in the surgical procedure. A “phase” represents a surgical event that is composed of a series of steps (e.g., closure). A “step” refers to the completion of a named surgical objective (e.g., hemostasis). During each step, certain surgical instruments 108 (e.g., forceps) are used to achieve a specific objective by performing one or more surgical actions.
[0028] The video / audio recording system 104 shown in FIG. 1 includes one or more cameras 105, such as operating room cameras, endoscopic cameras, etc. The cameras 105 capture video data of the surgical procedure being performed. The video / audio recording system 104 includes one or more video capture devices that can include cameras 105 placed in the surgical room to capture events surrounding (i.e., outside) the patient being operated upon. The video / audio recording system 104 further includes cameras 105 that are passed inside (e.g., endoscopic cameras) the patient 110 to capture endoscopic data. The endoscopic data provides video and images of the surgical procedure.
[0029] The video / audio recording system 104 also includes one or more microphones 107, which can be located on a central console, affixed (e.g., via a clip or other means) to medical personnel or objects in the operating room, and / or attached to or integrated into one or more devices in the operating room. Examples of devices in the operating room can include, but are not limited to surgical tools, video recorders, cameras, goggles, personal computers, smart watches, and / or smart phones. The microphones 107 capture audio data, and can be wired or wireless or a combination of both.
[0030] In exemplary aspects, the video data captured by the cameras 105 and the audio data captured by the microphones 107 can both include timestamps (or other indicia) that are used to correlate the video data and the audio data. The timestamps can be used to correlate, orsynchronize, the sounds captured in the operating room with the images of the medical procedure performed in the operating room.
[0031] The computing system 102 includes one or more memory devices, one or more processors, and a user interface device, among other components. All or a portion of the computing system 102 shown in FIG. 1 can be implemented for example, by all or a portion of computer system 800 of FIG. 8. Computing system 102 can execute one or more computerexecutable instructions. The execution of the instructions facilitates the computing system 102 to perform one or more methods, including those described herein. The computing system 102 can communicate with other computing systems via a wired and / or a wireless network. In one or more examples, the computing system 102 includes one or more trained machine learning models that can detect and / or predict features of / from the surgical procedure that is being performed or has been performed earlier. Features can include structures such as anatomical structures, surgical instruments 108 in the captured video of the surgical procedure. Features can further include events such as phases, actions in the surgical procedure. Features that are detected can further include the actor 112 and / or patient 110. Based on the detection, the computing system 102, in one or more examples, can provide recommendations for subsequent actions to be taken by the actor 112. Alternatively, or in addition, the computing system 102 can provide one or more reports based on the detections. The detections by the machine learning models can be performed in an autonomous or semi-autonomous manner.
[0032] The machine learning models can include artificial neural networks, such as deep neural networks, convolutional neural networks, recurrent neural networks, encoders, decoders, or any other type of machine learning model. The machine learning models can be trained in a supervised, unsupervised, or hybrid manner. The machine learning models can be trained to perform detection and / or prediction using one or more types of data acquired by the CAS system 100. For example, the machine learning models can use the video data captured via the video / audio recording system 104. Alternatively, or in addition, the machine learning models use the surgical instrumentation data from the surgical instrumentation system 106. In yet other examples, the machine learning models use a combination of video data and surgical instrumentation data.
[0033] Additionally, in some examples, the machine learning models can also use audio data captured by the one or microphones 107 during the surgical procedure. The audio data can include sounds emitted by the surgical instrumentation system 106 while activating one or more surgical instruments 108. Alternatively, or in addition, the audio data can include voice commands, snippets, or dialog from one or more actors 112. The audio data can further include sounds made by the surgical instruments 108 during their use.
[0034] After training, the one or more machine-learning models can then be used in real-time to process one or more data streams (e.g., video streams, audio streams, RFID data, etc.). The processing can include predicting and characterizing visualization modifications in images of a video of a surgical procedure based on one or more surgical phases, instruments, and / or other structures within various instantaneous or block time periods. The visualization can be modified to highlight the presence, position, and / or use of one or more structures. Alternatively, or in addition, the structures can be used to identify a stage within a workflow (e.g., as represented via a surgical data structure), predict a future stage within a workflow, etc.
[0035] In one or more examples, the machine learning models can detect surgical actions, surgical phases, anatomical structures, surgical instruments, activities, events, and various other features from the data associated with a surgical procedure. The detection can be performed in real-time in some examples. Alternatively, or in addition, the computing system 102 analyzes the surgical data, i.e., the various types of data captured during the surgical procedure, in an offline manner (e.g., post-surgery). In one or more examples, the machine learning models detect surgical phases based on detecting some of the features such as the anatomical structure, surgical instruments, etc.
[0036] Machine learning models executed by or accessible by the computing system 102 can part of surgery monitoring modules 103. In some aspects, the surgery monitoring modules 103 can monitor video data, audio data and / or other surgical data (e.g., sensor data, instrument data, etc.) to detect contextual information along with surgical phases and events.
[0037] A data collection system 150 can be employed to store the surgical data, including the video(s) captured during the surgical procedures and the audio data captured during the surgical procedure. The data collection system 150 includes one or more storage devices 152. The datacollection system 150 can be a local storage system, a cloud-based storage system, or a combination thereof. Further, the data collection system 150 can use any type of cloud-based storage architecture, for example, public cloud, private cloud, hybrid cloud, etc. In some examples, the data collection system can use a distributed storage, i.e., the storage devices 152 are located at different geographic locations. The storage devices 152 can include any type of electronic data storage media used for recording machine-readable data, such as semiconductorbased, magnetic-based, optical -based storage media, or a combination thereof. For example, the data storage media can include flash-based solid-state drives (SSDs), magnetic-based hard disk drives, magnetic tape, optical discs, etc.
[0038] In one or more examples, the data collection system 150 can be part of the video / audio recording system 104, or vice-versa. In some examples, the data collection system 150, the video / audio recording system 104, and the computing system 102, can communicate with each other via a communication network, which can be wired, wireless, or a combination thereof. The communication between the systems can include the transfer of data (e.g., video data, audio data, instrumentation data, etc.), data manipulation commands (e.g., browse, copy, paste, move, delete, create, compress, etc.), data manipulation results, etc. In one or more examples, the computing system 102 can manipulate the data already stored / being stored in the data collection system 150 based on outputs from the one or more machine learning models, e.g., phase detection, structure detection, etc. Alternatively, or in addition, the computing system 102 can manipulate the data already stored / being stored in the data collection system 150 based on information from the surgical instrumentation system 106.
[0039] In one or more examples, the video captured by the video / audio recording system 104 is stored on the data collection system 150. In some examples, the computing system 102 curates parts of the video data being stored on the data collection system 150. In some examples, the computing system 102 filters the video captured by the video / audio recording system 104 before it is stored on the data collection system 150. Alternatively, or in addition, the computing system 102 filters the video captured by the video / audio recording system 104 after it is stored on the data collection system 150.
[0040] A surgical data management system 160 can provide access to portions of data captured in the data collection system 150, as well as data and records stored in other systems. Participant systems 165A-165N can access the surgical data management system 160 through one or more applications or secure web pages. Participant systems 165A-165N can include various types of computing devices, such as personal computers, laptop computers, tablet computers, mobile devices, smart appliances, and the like. The surgical data management system 160 can be a stand-alone application, module, and / or an extension of another system, including processing system and networking support hardware and software to support operation of the surgical data management system 160. Video, with or without audio, can pass through the data collection system 150 and surgical data management system 160 to support real-time streaming between users of the participant systems 165A-165N and one or more actors 112 through cameras 105 and / or microphones 107. Surgical instruments 108 can also be a source of streaming. Summary generation preferences can be stored in a data store 162, including summary generation rules 163, accessible by the surgical data management system 160 to customize summary generation and determine which events are considered contextually-notable event.
[0041] The combination of the computing system 102, surgery monitoring modules 103, video / audio recording system 104, cameras 105, microphones 107, data collection system 150, storage devices 152, surgical data management system 160, and / or data store 162 can be referred to as a surgery monitoring system 101. A portion of the surgical instrumentation system 106 that provides feedback on surgical instruments can also be part of the surgery monitoring system 101. Components of the surgery monitoring system 101 can be combined or further subdivided. Further, the surgery monitoring system 101 may include additional components beyond those specifically described above.
[0042] Turning now to FIG. 2, a surgical procedure system 200 is generally shown in accordance with one or more aspects. The example of FIG. 2 depicts a surgical procedure support system 202 that can include or may be coupled to the CAS system 100 of FIG. 1. The surgical procedure support system 202 can acquire image or video data using one or more cameras 204 (e.g., cameras 105 of FIG. 1). The surgical procedure support system 202 can also acquire audio data using one or more microphones 220 (e.g., microphones 107 of FIG. 1). Thesurgical procedure support system 202 can further interface with a plurality of sensors 206 and effectors 208. The sensors 206 may be associated with surgical support equipment and / or patient monitoring. The effectors 208 can be robotic components or other equipment (e.g., surgical instruments 108 of FIG. 1) controllable through the surgical procedure support system 202. The surgical procedure support system 202 can also interact with one or more user interfaces 210, such as various input and / or output devices. The surgical procedure support system 202 can store, access, and / or update surgical data 214 associated with a training dataset and / or live data as a surgical procedure is being performed on patient 110 of FIG. 1. The surgical procedure support system 202 can store, access, and / or update surgical objectives 216 to assist in training and guidance for one or more surgical procedures. User configurations 218 can track and store user preferences.
[0043] The surgical procedure support system 202 can also communicate with other systems through a network 230. For example, the surgical procedure support system 202 can communicate with a surgical procedure scheduling system 240, a surgical data post-processing system 250, and / or other types of devices, such as a computing device 234, 264 (e.g., a mobile phone, tablet computer, or laptop) through a network 230. As one example, user interfaces 210 may be connected to or integrated with the surgical procedure support system 202 by a local connection (e.g., within an operating room), while the mobile computing device 234 may connect to the surgical procedure support system 202 via a wireless connection directly or pass through the network 230.
[0044] The surgical procedure scheduling system 240 can access and / or modify scheduling data 242 used to track planned surgical procedures. The scheduling data 242 can be used to schedule physical resources and / or human resources to perform planned surgical procedures. In some aspects, the computing device 234 can execute or link to another computer system that executes the surgical data management system 160 of FIG. 1 to access various data sources through the network 230.
[0045] The surgical data post-processing system 250 can receive surgical data and associated data generated by the surgical procedure support system 202 and may be separately stored and secured through other data storage. Access to specific data or portions of data through thesurgical data post-processing system 250 may be limited by associated permissions. The surgical data post-processing system 250 may include features such as video viewing, video sharing, data analytics, and selective data extraction.
[0046] One or more computing device 264 (e.g., a mobile phone, laptop, personal computer, or tablet computer), can interact with the surgical data management system 160 of FIG. 1 to access various data sources through a network 260. The network 230 may be within a facility or multiple facilities maintained with an a private network. The network 260 may be a wider area network, such as the internet. Accordingly, the networks 230 and 260 may have access to different files and data sets along with shared access to select files and data sets. In some aspects, networks 230 and 260 can be combined.
[0047] The computing devices 234, 264 are examples of the participant systems 165A-165N of FIG. 1. Accordingly, the surgical data management system 160 of FIG. 1 can be interposed between the computing devices 234, 264 and the network 230 to manage data flow, streaming, and access constraints. Further, portions of the surgical data management system 160 can be executed locally by the computing devices 234, 264 and / or the surgical procedure support system 202.
[0048] In some aspects, the surgical procedure scheduling system 240 can provide scheduling information used to select rule sets for determining context information. As further described herein, generation of surgical summary information occurs in real time while a surgical procedure is in progress in contrast to post-processing operations that may be performed by the surgical data post-processing system 250.
[0049] Turning now to FIG. 3, a system 300 for analyzing data that includes video data is generally shown according to one or more aspects. For example, the video data can be captured from video / audio recording system 104 of FIG. 1. The analysis can result in predicting surgical phases and structures (e.g., instruments, anatomical structures, etc.) in the video data using machine learning. System 300 can be the CAS system 100 of FIG. 1, or a part thereof in one or more examples. System 300 uses data streams in the surgical data to identify procedural states according to some aspects.
[0050] System 300 includes a data reception system 305 that collects surgical data, including the video data and surgical instrumentation data. The data reception system 305 can include one or more devices (e.g., one or more user devices and / or servers) located within and / or associated with a surgical operating room and / or control center. The data reception system 305 can receive surgical data in real-time, i.e., as the surgical procedure is being performed. Alternatively, or in addition, the data reception system 305 can receive or access surgical data in an offline manner, for example, by accessing data that is stored in the data collection system 150 of FIG. 1.
[0051] System 300 further includes a machine learning processing system 310 that processes the surgical data using one or more machine learning models to identify one or more features, such as surgical phase, instrument, anatomical structure, etc., in the surgical data. It will be appreciated that machine learning processing system 310 can include one or more devices (e.g., one or more servers), each of which can be configured to include part or all of one or more of the depicted components of the machine learning processing system 310. In some instances, a part or all of the machine learning processing system 310 is in the cloud and / or remote from an operating room and / or physical location corresponding to a part or all of data reception system 305. It will be appreciated that several components of the machine learning processing system 310 are depicted and described herein. However, the components are just one example structure of the machine learning processing system 310, and that in other examples, the machine learning processing system 310 can be structured using a different combination of the components. Such variations in the combination of the components are encompassed by the technical solutions described herein.
[0052] The machine learning processing system 310 includes a machine learning training system 325, which can be a separate device (e.g., server) that stores its output as one or more trained machine learning models 330. The machine learning models 330 are accessible by a machine learning execution system 340. The machine learning execution system 340 can be separate from the machine learning training system 325 in some examples. In other words, in some aspects, devices that “train” the models are separate from devices that “infer,” i.e., perform real-time processing of surgical data using the trained machine learning models 330.
[0053] Machine learning processing system 310, in some examples, further includes a data generator 315 to generate simulated surgical data, such as a set of virtual images, or record the video data from the video / audio recording system 104, to train the machine learning models 330. Data generator 315 can access (read / write) a data store 320 to record data, including multiple images and / or multiple videos. The images and / or videos can include images and / or videos collected during one or more procedures (e.g., one or more surgical procedures). For example, the images and / or video may have been collected by a user device worn by the actor 112 of FIG. 1 (e.g., surgeon, surgical nurse, anesthesiologist, etc.) during the surgery, a non-wearable imaging device located within an operating room, or an endoscopic camera inserted inside the patient 110 of FIG. 1. The data store 320 can be separate from the data collection system 150 of FIG. 1 in some examples. In other examples, the data store 320 can be part of the data collection system 150.
[0054] Each of the images and / or videos recorded in the data store 320 for training the machine learning models 330 can be defined as a base image and can be associated with other data that characterizes an associated procedure and / or rendering specifications. For example, the other data can identify a type of procedure, a location of a procedure, one or more people involved in performing the procedure, surgical objectives, and / or an outcome of the procedure. Alternatively, or in addition, the other data can indicate a stage of the procedure with which the image or video corresponds, rendering specification with which the image or video corresponds and / or a type of imaging device that captured the image or video (e.g., and / or, if the device is a wearable device, a role of a particular person wearing the device, etc.). Further, the other data can include image-segmentation data that identifies and / or characterizes one or more objects (e.g., tools, anatomical objects, etc.) that are depicted in the image or video. The characterization can indicate the position, orientation, or pose of the object in the image. For example, the characterization can indicate a set of pixels that correspond to the object and / or a state of the object resulting from a past or current user handling. Localization can be performed using a variety of techniques for identifying objects in one or more coordinate systems.
[0055] The machine learning training system 325 uses the recorded data in the data store 320, which can include the simulated surgical data (e.g., set of virtual images) and actual surgical data to train the machine learning models 330. The machine learning model 330 can be defined basedon a type of model and a set of hyperparameters (e.g., defined based on input from a client device). The machine learning models 330 can be configured based on a set of parameters that can be dynamically defined based on (e.g., continuous or repeated) training (i.e., learning, parameter tuning). Machine learning training system 325 can use one or more optimization algorithms to define the set of parameters to minimize or maximize one or more loss functions. The set of (learned) parameters can be stored as part of a trained machine learning model 330 using a specific data structure for that trained machine learning model 330. The data structure can also include one or more non-learnable variables (e.g., hyperparameters and / or model definitions).
[0056] Examples of the trained machine learning model 330 can include a surgical video monitoring model 332 and a surgical data monitoring model 334, where the surgical video monitoring model 332 and surgical data monitoring model 334 can be surgery monitoring modules 103 of FIG. 1. The surgical video monitoring model 332 can be trained to classify and / or detect features in a surgical video stream. The surgical data monitoring model 334 can be trained to classify and / or detect features in other sources of surgical data, such as sensor data, instrument data, audio data, and / or other data accessible to the surgery monitoring system 101.
[0057] Machine learning execution system 340 can access the data structure(s) of the machine learning models 330 and accordingly configure the machine learning models 330 for inference (i.e., prediction). The machine learning models 330 can include, for example, a fully convolutional network adaptation, an adversarial network model, an encoder, a decoder, or other types of machine learning models. The type of the machine learning models 330 can be indicated in the corresponding data structures. The machine learning model 330 can be configured in accordance with one or more hyperparameters and the set of learned parameters.
[0058] The one or more machine learning models 330, during execution, receive, as input, surgical data to be processed and subsequently generate one or more inferences according to the training. For example, the video data captured by the video / audio recording system 104 of FIG.1 can include data streams (e.g., an array of intensity, depth, and / or RGB values) for a single image or for each of a set of frames (e.g., including multiple images or an image with sequencing data) representing a temporal window of fixed or variable length in a video. The video data thatis captured by the video / audio recording system 104 can be received by the data reception system 305, which can include one or more devices located within an operating room where the surgical procedure is being performed. Alternatively, the data reception system 305 can include devices that are located remotely, to which the captured video data is streamed live during the performance of the surgical procedure. Alternatively, or in addition, the data reception system 305 accesses the data in an offline manner from the data collection system 150 or from any other data source (e.g., local or remote storage device).
[0059] The data reception system 305 can process the video and / or other data received. The processing can include decoding when a video stream is received in an encoded format such that data for a sequence of images can be extracted and processed. The data reception system 305 can also process other types of data included in the input surgical data. For example, the surgical data can include additional data streams, such as audio data, RFID data, textual data, measurements from one or more surgical instrum ents / sensors, etc., that can represent stimuli / procedural states from the operating room. The data reception system 305 synchronizes the different inputs from the different devices / sensors before inputting them in the machine learning processing system 310. In according to some aspects, audio data can also be used as a data source to generate predictions. Synchronization can be achieved by using a common reference clock to generate time stamps alongside each data stream. The clocks can be shared via network protocols or through hardware locking or through any other means. Such time stamps can be associated with any processed data format, such as, but not limited to text or other discrete data created from the audio signal. Additional synchronization can be performed by linking actions, events, or phase segmented that have been automatically processed from the raw signals using machine learning models. For example, text generated from an audio signal can be associated to specific phases of the procedure that are extracted from that audio or any other data stream signal. Text generated may be captured and / or displayed through a user interface.
[0060] The machine learning models 330, once trained, can analyze the input surgical data, and in one or more aspects, predict and / or characterize structures included in the video data included with the surgical data. The video data can include sequential images and / or encoded video data (e.g., using digital video file / stream formats and / or codecs, such as MP4, MOV, AVI, WEBM, AVCHD, OGG, etc.). The prediction and / or characterization of the structures caninclude segmenting the video data or predicting the localization of the structures with a probabilistic heatmap. In some instances, the one or more machine learning models include or are associated with a preprocessing or augmentation (e.g., intensity normalization, resizing, cropping, etc.) that is performed prior to segmenting the video data. An output of the one or more machine learning models can include image-segmentation or probabilistic heatmap data that indicates which (if any) of a defined set of structures are predicted within the video data, a location and / or position and / or pose of the structure(s) within the video data, and / or state of the structure(s). The location can be a set of coordinates in an image / frame in the video data. For example, the coordinates can provide a bounding box. The coordinates can provide boundaries that surround the structure(s) being predicted. The trained machine learning models 330, in one or more examples, are trained to perform higher-level predictions and tracking, such as predicting a phase of a surgical procedure and tracking one or more surgical instruments used in the surgical procedure.
[0061] While some techniques for predicting a surgical phase (“phase”) in the surgical procedure are described herein, it should be understood that any other technique for phase prediction can be used without affecting the aspects of the technical solutions described herein. In some examples, the machine learning processing system 310 includes a detector 350 that uses the machine learning models to identify a phase within the surgical procedure (“procedure”). Detector 350 uses a particular procedural tracking data structure 355 from a list of procedural tracking data structures. Detector 350 selects the procedural tracking data structure 355 based on the type of surgical procedure that is being performed. In one or more examples, the type of surgical procedure is predetermined or input by actor 112. The procedural tracking data structure 355 identifies a set of potential phases that can correspond to a part of the specific type of procedure.
[0062] In some examples, the procedural tracking data structure 355 can be a graph that includes a set of nodes and a set of edges, with each node corresponding to a potential phase. The edges can provide directional connections between nodes that indicate (via the direction) an expected order during which the phases will be encountered throughout an iteration of the procedure. The procedural tracking data structure 355 may include one or more branching nodes that feed to multiple next nodes and / or can include one or more points of divergence and / orconvergence between the nodes. In some instances, a phase indicates a procedural action (e.g., surgical action) that is being performed or has been performed and / or indicates a combination of actions that have been performed. In some instances, a phase relates to a biological state of a patient undergoing a surgical procedure. For example, the biological state can indicate a complication (e.g., blood clots, clogged arteries / veins, etc.), pre-condition (e.g., lesions, polyps, etc.). In some examples, the machine learning models 330 are trained to detect an “abnormal condition,” such as hemorrhaging, arrhythmias, blood vessel abnormality, etc.
[0063] Each node within the procedural tracking data structure 355 can identify one or more characteristics of the phase corresponding to that node. The characteristics can include visual characteristics. In some instances, the node identifies one or more tools that are typically in use or availed for use (e.g., on a tool tray) during the phase. The node also identifies one or more roles of people who are typically performing a surgical task, a typical type of movement (e.g., of a hand or tool), etc. Thus, detector 350 can use the segmented data generated by machine learning execution system 340 that indicates the presence and / or characteristics of particular objects within a field of view to identify an estimated node to which the real image data corresponds. Identification of the node (i.e., phase) can further be based upon previously detected phases for a given procedural iteration and / or other detected input (e.g., verbal audio data that includes person-to-person requests or comments, explicit identifications of a current or past phase, information requests, etc.).
[0064] The detector 350 outputs the prediction associated with a portion of the video data that is analyzed by the machine learning processing system 310. The prediction is associated with the portion of the video data by identifying a start time and an end time of the portion of the video that is analyzed by the machine learning execution system 340. The prediction that is output can include an identity of a surgical phase, activity, or event as detected by the detector 350 based on the output of the machine learning execution system 340. Further, the prediction, in one or more examples, can include identities of the structures (e.g., instrument, anatomy, etc.) that are identified by the machine learning execution system 340 in the portion of the video that is analyzed. The prediction can also include a confidence score of the prediction. Various types of information in the prediction that can be output may include phases, actions, and / or events associated with a surgical procedure.
[0065] It should be noted that although some of the drawings depict endoscopic videos being analyzed, the technical solutions described herein can be applied to analyze video and image data captured by cameras that are not endoscopic (i.e., cameras external to the patient’s body) when performing open surgeries (i.e., not laparoscopic surgeries). For example, the video and image data can be captured by cameras that are mounted on one or more personnel in the operating room, e.g., surgeon. Alternatively, or in addition, the cameras can be mounted on surgical instruments, walls, or other locations in the operating room.
[0066] Turning now to FIG. 4, a time sequence diagram 400 illustrating a relationship between phases and events is depicted according to one or more aspects. According to aspects, as time 402 elapses during a surgical procedure, the machine learning models 330 of FIG. 3 can observe one or more surgical data streams 404 (also referred to as surgical data feeds 404) and determine phases 405 of the surgical procedure. A plurality of events 406 can also be detected through a combination of the machine learning models 330 and / or other inputs. For example, some events 406 can be detected through image processing of surgical video in the surgical data streams 404, while other events 406 can be detected as an input received from another source, such as the surgical instrumentation system 106 of FIG. 1. Input from the surgical instrumentation system 106 can form another one of the surgical data streams 404. The machine learning models 330 can also derive contextual information, such as anatomy detection, sequencing, and other information. Some contextual information can be derived through rule-based processing to look for specific events 406, event sequences, time between events, time of phase duration, and / or other such information. Rules, such as summary generation rules 163 of FIG. 1, may be used where specific sequences and / or conditions have previously been identified as notable for summarization. Some such sequences and conditions may not have a sufficient amount of training data available to train the machine learning models 330 to detect the sequences and conditions. Accordingly, the sequences and conditions can be defined in the summary generation rules 163.
[0067] In the example of FIG. 4, time 402 progresses left to right, such that a current phase (phase N 405) is at a rightmost side, an immediately previous phase (phase N-l 405) is to the left of the current phase, and an earlier phase (phase N-2 405) is at the leftmost side. Here, data for phases N-l and N-2 may have been completely captured while phase N is not yet complete. Forpurposes of explanation, events 406A and 406B may have been detected during phase N-2, events 406C, 406D, 406E, and 406F may have been detected during phase N-l, and event 406G may have been detected during phase N. The surgery monitoring modules 103 of FIG. 1 can be trained to detect certain aspects tuned for specific surgery types and other aspects that may be common across surgery types (e.g., bleeding).
[0068] According to aspects, the surgery monitoring system 101 of FIG. 1, can identify which events 406 are related to each other and observe associated context to identify which of the events 406 is considered a contextually-notable event. FIG. 5 depicts a time sequence diagram 500 illustrating a relationship between events spanning multiple phases according to one or more aspects. In the example of FIG. 5, event 406F occurring at the transition from phase N-l to phase N may be identified as a contextually-notable event. For example, one or more of the surgery monitoring modules 103 can identify the event 406F from one or more of the surgical data streams 404. The machine learning models 330 of FIG. 3 can also observe the one or more surgical data streams 404 and determine that a phase transition from phase N-l to phase N occurs. The summary generation rules 163 of FIG. 1 may include one or more rules that if a specific type of event 406 occurs when transitioning between phases identified as phase N-l and phase N, then such an event 406 is a contextually-notable event (e.g., event 406F) and should be captured in summary information. Further, event 406F may be related to previous events 406 occurring in the same phase (e.g., phase N-l) and / or a previous phase (e.g., phase N-2). Upon determining that event 406F is a contextually-notable event, the surgery monitoring system 101 may also identify related events, such as events 406D and 406A, for which summary information can also be gathered and made available for review. For instance, use of a surgical instrument at event 406F in the context of a phase transition may be a contextually-notable event, and events 406D and 406A can be previous uses of the same surgical instrument.
[0069] When a user joins a streaming session that has been in-progress (e.g., at joining event 502 in phase N 405), the user may be presented with an option to review information and replay portions of one or more surgical data streams 404 around event 406F (e.g., the contextually- notable event) as well as events 406D and 406 A. The surgery monitoring system 101 may set boundary markers for viewing portions of the surgical data streams 404 around events of interest, such as 5 second before to 10 seconds after each event in the sequence. This can assist a newlyjoining user in getting up to speed by viewing potentially relevant data while skipping immediate review of other portions of the data. For instance, portions of the surgical data streams 404 around events 406B, 406C, 406E, and 406G may not be considered particularly relevant to understanding what happened at event 406F.
[0070] Several examples are provided for tailoring summaries specifically to the point at which a user (e.g., a viewer) joins or is viewing a streaming session. The summary information seeks to put forward the most relevant information at a specific point in time at which the viewer finds themselves (e.g., time at joining event 502 or later). Other notable points in the surgical procedure can still be available to view (e.g., with the timeline view), but may be more out of the way or less prominently displayed.
[0071] Case specific context can be identified when a user joins a streaming session. For example, offline, specific actions / events can be marked as contextually important for a phase (e.g., through summary generation rules 163). During the surgical procedure, when the user joins the streaming session (e.g., at phase N 405), the user can be given an opportunity to review specific marked actions / events for the last phase 405 or an earlier phase 405. For instance, if a user joins after a phase where a critical view of safety should be observed, the user can be provided an opportunity to review that part of the surgical procedure. As a further example, if a user joins during a leak test phase (e.g., a phase after surgical stapling in a lap sleeve), the user can be given an opportunity to review previous stapler uses.
[0072] As another example, a user can be provided with an opportunity to review past events 406 as the past events 406 become relevant. For instance, if an event that occurs during a surgical procedure is identified as a contextually-notable event, the user can be presented with an option to review similar or related events. As an example, during a suture, the user can be given the option to review previous sutures performed (e.g., to review quality of technique used if the surgeon is learning). As a further example, if joining occurs during excessive bleeding, the user can be provided with an option to review surgical data associated with the moment when the bleeding started.
[0073] In some aspects, historical data for a surgical procedure as performed so far can be combined with real-time information. The summary information can be available with real-timedata as the surgical procedure is ongoing. The summary, as presented to the user, can be contingent on features currently being viewed. Current phase detection for what is currently seen in real-time can be used to adapt the summary. For instance, if currently in a particular phase, then certain types of information can be more relevant to summarize. This can be defined, for example, through the summary generation rules 163. If the user is looking at a completed phase, the surgery monitoring system 101 can highlight features to summarize an event. Data derived from a currently viewed real-time video stream can be logged in a database, such as within data collection system 150 of FIG. 1. Capturing of data and use of the data can be performed during the same process rather than waiting for post-operative analysis.Interoperative data can be used in highlighting summary details. The summary can be contingent on the current state of the surgical procedure. Highlights and summary information can be customized based on the state of the surgical procedure (e.g., phase, view, different version).
[0074] In some aspects, when a user joins a streaming session, the user can be presented with several options to quickly understand what has happened in the surgical procedure so far. A user interface can present a timeline of the surgical procedure with time stamps for phases and contextually-notable events, such as excessive bleeding, critical view of safety, energy activation of surgical instruments, points of interest, and / or other irregularities. The user interface can include a playback interface with a capability to jump around to selected portions of video and / or other types of surgical data streams. Some events may be tagged by other users and such events can be identified as contextually-notable events. During playback, the user may be provided with options to toggle overlays, for instance, to see previous Al-generated labels, user-generated telestrations, corresponding updates to a chat session, and other such information. The summary information can be extracted to form a single summary video that combines multiple portions of content around contextually-notable events. Further, the user interface may allow the user to add notes and create additional points of interest during playback to assist other later joining users and / or for post-operative use. The summary video can include multiple camera views and allow the user to select various views during summary replay. Additional content can be manually tagged for inclusion in summary information, such as audio-triggered tags.
[0075] FIG. 6 A depicts a user interface 600 of a streaming session 601 of a surgical procedure according to one or more aspects. In the example of FIG. 6A, a main display window 602 can display a surgical video stream observed by a plurality of participants watching the surgical procedure in real-time. The user interface 600 can include a plurality of controls 606 accessible to participants and participant video streams 608 A, 608B, 608C. Surgery monitoring system 101 of FIG. 1 can process the surgical video stream and / or other surgical data and determine that an event has been detected. The event may result in a graphical indication 604 or may be detected without providing details or an indication to the participants.
[0076] FIG. 6B depicts user interface 600 after a user joins the streaming session 601 of FIG. 6 A according to one or more aspects. Upon a user joining the streaming session 601, for instance, with an associated participant video stream 608D to interact with the other participants, the user may be provided with a prompt 610 to review a summary associated with the streaming session 601. The prompt 610 may only be visible to a newly joining user. In other aspects, the prompt 610 may be provided to review associated data upon detection of an event, anatomical structure, or other such triggering condition, which may be defined, for example, through summary generation rules 163 of FIG. 1. Other variations of prompting triggers are contemplated and may be incorporated beyond those already described. Thus, the summary options are not limited to the examples described herein.
[0077] Upon a user confirming that summary information should be provided, a surgical summary 612 can be displayed, as depicted in the example of FIG. 6C. The surgical summary 612 may appear as a pop-up or overlay upon a user interface of the streaming session 601. In some aspects, upon a user selecting to view surgical video and / or other data representing a time shift relative to a current instant in time, the current content of the main display window 602 can be automatically moved to a side panel location and content of the main display window 602 can include previously recorded video of the same surgical procedure, such as video associated with an earlier event or phase. The summary content displayed in the main display window 602 can be shifted to a side panel and another stream can be moved back to the main display window 602 before closing the summary information panel. Upon completion of reviewing the summary information, an associated summary information panel can be closed. Summary data generatedduring the surgical procedure can also be made available for review after completion of the surgical procedure, for instance, through the surgical data post-processing system 250 of FIG. 2.
[0078] FIG. 6D depicts user interface 600 of streaming session 601 with an event timeline 620 according to one or more aspects. The event timeline can include one or more thumbnails 622 A, 622B, 622C, 622D and navigation capabilities to allow a user to jump to an event associated with one of the thumbnails 622A-622D or navigate elsewhere through the previously record video of the streaming session 601. The thumbnails 622A-622D can be reduced-scale still images associated with video frames that align in time with detected events, such as events 406A-406G of FIGS. 4 and 5. Further, the thumbnails 622A-622D can be associated with a filtered or reduced set of events, such as contextually-notable event 406F and related events, such as events 406A and 406D of FIG. 5. The event timeline 620 can highlight or otherwise identify a current playback time (e.g., thumbnail 622B in the example of FIG. 6D). The event timeline 620 may use a graphical shape or other change to the event timeline 620 to indicate a current playback position. Playback summaries can include a configurable time window to playback around the thumbnails 622A-622D. For instance, upon a user clicking on thumbnail 622A, playback may begin, for example, at 5 seconds before to 10 seconds after a time stamp associated with thumbnail 622A. Alternatively, playback may start at a thumbnail associated time. Where thumbnails exist in close proximity in time, such as thumbnails 622C and 622D, the playback times may be merged, such as 5 seconds before the time of thumbnail 622C to 10 seconds after the time of thumbnail 622D. In some aspects, the event timeline 620 can be used in combination with the surgical summary 612 of FIG. 6C. Although only four thumbnails 622A- 622D are depicted in the example of FIG. 6D, any number of thumbnails can be created and used according to aspects.
[0079] Turning now to FIG. 7, a flowchart of a method 700 of context-aware surgical summary generation for streaming is generally shown in accordance with one or more aspects. All or a portion of method 700 can be implemented, for example, by all or a portion of CAS system 100 of FIG. 1, surgical procedure system 200, the system 300 of FIG. 3 and / or computer system 800 of FIG. 8. The method 700 is described in reference to FIGS. 1-6.
[0080] At block 702, a surgery monitoring system 101 can monitor one or more surgical data feeds 404 during a surgical procedure for a plurality of phases and events. The one or more surgical data feeds 404 can include at least one surgical video stream and / or at least one surgical instrument data feed.
[0081] At block 704, the surgery monitoring system 101 can determine whether at least one of the events is detected as a contextually-notable event based on a plurality of summary generation rules 163.
[0082] At block 706, the surgery monitoring system 101 can generate a surgical summary for display to a user of a streaming system (e.g., part of streaming session 601) based on a relationship between the contextually-notable event and at least one of the phases of the surgical procedure.
[0083] At block 708, the surgery monitoring system 101 can provide the user with a prompt 610 to review the surgical summary 612 with data recorded from the one or more surgical data feeds 404, where the prompt 610 is provided while the surgical procedure is in progress.
[0084] In some aspects, the surgery monitoring system 101 can track a sequence of one or more occurrences of one or more the phases and the events during the surgical procedure. The user can be provided with a same phase option to review one or more of the events in the sequence and associated data recorded from the one or more surgical data feeds in a same phase as the contextually-notable event. Further, the user can be provided with a previous phase option to review one or more of the events in the sequence and associated data recorded from the one or more surgical data feeds in a previous phase that occurred prior to as the contextually-notable event.
[0085] In some aspects, the surgery monitoring system 101 can track a joining time when the user joined a streaming session in progress during the surgical procedure. The surgical summary can be adapted for the user based on a most recent occurrence of the contextually-notable event relative to the joining time. Adapting the surgical summary can include determining a current phase at the joining time and outputting the surgical summary of a most recently completed phase prior to the joining time. Adapting the surgical summary may include determining one ormore related events occurring before the most recent occurrence of the contextually-notable event and outputting data recorded from the one or more surgical data feeds for at least one of the one or more related events.
[0086] In some aspects, surgery monitoring system 101 can identify a plurality of contextually-notable events during the surgical procedure and generate a list of surgical summaries associated with the contextually-notable events. The surgery monitoring system 101 may rank the contextually-notable events based on the summary generation rules and a time of occurrence of the contextually-notable events and provide the user with an option to view the surgical summary selected from the list of surgical summaries and ordered based on the ranking of the contextually-notable events. Events, such as the contextually-notable events, can be selectable through thumbnails 622A-622D of the event timeline 620 of FIG. 6D.
[0087] In some aspects, context data can be derived based on one or more the phases, where the phases are determined by a machine learning model 330 applied to the one or more surgical data feeds 404. The context data can be stored with event data associated with one or more of the events during the surgical procedure. The context data can be used in combination with the summary generation rules 163 to distinguish the contextually-notable event from the one or more events.
[0088] The processing shown in FIG. 7 is not intended to indicate that the operations are to be executed in any particular order or that all of the operations shown in FIG. 7 are to be included in every case. Additionally, the processing shown in FIG. 7 can include any suitable number of additional operations.
[0089] Turning now to FIG. 8, a computer system 800 is generally shown in accordance with an aspect. The computer system 800 can be an electronic computer framework comprising and / or employing any number and combination of computing devices and networks utilizing various communication technologies, as described herein. The computer system 800 can be easily scalable, extensible, and modular, with the ability to change to different services or reconfigure some features independently of others. The computer system 800 may be, for example, a server, desktop computer, laptop computer, tablet computer, or smartphone. In some examples, computer system 800 may be a cloud computing node. Computer system 800 may bedescribed in the general context of computer-executable instructions, such as program modules, being executed by a computer system. Generally, program modules may include routines, programs, objects, components, logic, data structures, and so on that perform particular tasks or implement particular abstract data types. Computer system 800 may be practiced in distributed cloud computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed cloud computing environment, program modules may be located in both local and remote computer system storage media, including memory storage devices.
[0090] As shown in FIG. 8, the computer system 800 has one or more central processing units (CPU(s)) 801a, 801b, 801c, etc. (collectively or generically referred to as processor(s) 801). The processors 801 can be a single-core processor, multi-core processor, computing cluster, or any number of other configurations. The processors 801 can be any type of circuitry capable of executing instructions. The processors 801, also referred to as processing circuits, are coupled via a system bus 802 to a system memory 803 and various other components. The system memory 803 can include one or more memory devices, such as read-only memory (ROM) 804 and a random-access memory (RAM) 805. The ROM 804 is coupled to the system bus 802 and may include a basic input / output system (BIOS), which controls certain basic functions of the computer system 800. The RAM is read-write memory coupled to the system bus 802 for use by the processors 801. The system memory 803 provides temporary memory space for operations of said instructions during operation. The system memory 803 can include random access memory (RAM), read-only memory, flash memory, or any other suitable memory systems.
[0091] The computer system 800 comprises an input / output (I / O) adapter 806 and a communications adapter 807 coupled to the system bus 802. The I / O adapter 806 may be a small computer system interface (SCSI) adapter that communicates with a hard disk 808 and / or any other similar component. The I / O adapter 806 and the hard disk 808 are collectively referred to herein as a mass storage 810.
[0092] Software 811 for execution on the computer system 800 may be stored in the mass storage 810. The mass storage 810 is an example of a tangible storage medium readable by the processors 801, where the software 811 is stored as instructions for execution by the processors801 to cause the computer system 800 to operate, such as is described hereinbelow with respect to the various Figures. Examples of computer program product and the execution of such instruction is discussed herein in more detail. The communications adapter 807 interconnects the system bus 802 with a network 812, which may be an outside network, enabling the computer system 800 to communicate with other such systems. In one aspect, a portion of the system memory 803 and the mass storage 810 collectively store an operating system, which may be any appropriate operating system to coordinate the functions of the various components shown in FIG. 8.
[0093] Additional input / output devices are shown as connected to the system bus 802 via a display adapter 815 and an interface adapter 816. In one aspect, the adapters 806, 807, 815, and 816 may be connected to one or more I / O buses that are connected to the system bus 802 via an intermediate bus bridge (not shown). A display 819 (e.g., a screen or a display monitor) is connected to the system bus 802 by a display adapter 815, which may include a graphics controller to improve the performance of graphics-intensive applications and a video controller. A keyboard, a mouse, a touchscreen, one or more buttons, a speaker, etc., can be interconnected to the system bus 802 via the interface adapter 816, which may include, for example, a Super I / O chip integrating multiple device adapters into a single integrated circuit. Suitable I / O buses for connecting peripheral devices such as hard disk controllers, network adapters, and graphics adapters typically include common protocols, such as the Peripheral Component Interconnect (PCI). Thus, as configured in FIG. 8, the computer system 800 includes processing capability in the form of the processors 801, and storage capability including the system memory 803 and the mass storage 810, input means such as the buttons, touchscreen, and output capability including the speaker 823 and the display 819.
[0094] In some aspects, the communications adapter 807 can transmit data using any suitable interface or protocol, such as the internet small computer system interface, among others. The network 812 may be a cellular network, a radio network, a wide area network (WAN), a local area network (LAN), or the Internet, among others. An external computing device may connect to the computer system 800 through the network 812. In some examples, an external computing device may be an external web server or a cloud computing node.
[0095] It is to be understood that the block diagram of FIG. 8 is not intended to indicate that the computer system 800 is to include all of the components shown in FIG. 8. Rather, the computer system 800 can include any appropriate fewer or additional components not illustrated in FIG. 8 (e.g., additional memory components, embedded controllers, modules, additional network interfaces, etc.). Further, the aspects described herein with respect to computer system 800 may be implemented with any appropriate logic, wherein the logic, as referred to herein, can include any suitable hardware (e.g., a processor, an embedded controller, or an applicationspecific integrated circuit, among others), software (e.g., an application, among others), firmware, or any suitable combination of hardware, software, and firmware, in various aspects. Various aspects can be combined to include two or more of the aspects described herein.
[0096] The present invention may be a system, a method, and / or a computer program product at any possible technical detail level of integration. The computer program product may include a computer-readable storage medium (or media) having computer-readable program instructions thereon for causing a processor to carry out aspects of the present invention.
[0097] The computer-readable storage medium can be a tangible device that can retain and store instructions for use by an instruction execution device. The computer-readable storage medium may be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. A non-exhaustive list of more specific examples of the computer-readable storage medium includes the following: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon, and any suitable combination of the foregoing. A computer-readable storage medium, as used herein, is not to be construed as being transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission media (e.g., light pulses passing through a fiber-optic cable), or electrical signals transmitted through a wire.
[0098] Computer-readable program instructions described herein can be downloaded to respective computing / processing devices from a computer-readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network, and / or a wireless network. The network may comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. The wireless network(s) can include, but is not limited to fifth generation (5G) and sixth generation (6G) protocols and connections. A network adapter card or network interface in each computing / processing device receives computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in a computer-readable storage medium within the respective computing / processing device.
[0099] Computer-readable program instructions for carrying out operations of the present invention may be assembler instructions, instruction-set-architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state-setting data, configuration data for integrated circuitry, or either source-code or object code written in any combination of one or more programming languages, including an object-oriented programming language such as Smalltalk, C++, high-level languages such as Python, or the like, and procedural programming languages, such as the “C” programming language or similar programming languages. The computer-readable program instructions may execute entirely on the user’s computer, partly on the user’s computer, as a stand-alone software package, partly on the user’ s computer and partly on a remote computer, or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user’s computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider). In some aspects, electronic circuitry including, for example, programmable logic circuitry, field-programmable gate arrays (FPGA), or programmable logic arrays (PLA) may execute the computer-readable program instruction by utilizing state information of the computer-readable program instructions to personalize the electronic circuitry, in order to perform aspects of the present invention.
[0100] Aspects of the present invention are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to aspects of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.
[0101] These computer-readable program instructions may be provided to a processor of a general-purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks. These computer- readable program instructions may also be stored in a computer-readable storage medium that can direct a computer, a programmable data processing apparatus, and / or other devices to function in a particular manner, such that the computer-readable storage medium having instructions stored therein comprises an article of manufacture including instructions which implement aspects of the function / act specified in the flowchart and / or block diagram block or blocks.
[0102] The computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer-implemented process, such that the instructions which execute on the computer, other programmable apparatus, or other device implement the functions / acts specified in the flowchart and / or block diagram block or blocks.
[0103] The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various aspects of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the blocks mayoccur out of the order noted in the Figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and / or flowchart illustration, and combinations of blocks in the block diagrams and / or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts or carry out combinations of special purpose hardware and computer instructions.
[0104] The descriptions of the various aspects of the present invention have been presented for purposes of illustration but are not intended to be exhaustive or limited to the aspects disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described aspects. The terminology used herein was chosen to best explain the principles of the aspects, the practical application or technical improvement over technologies found in the marketplace, or to enable others of ordinary skill in the art to understand the aspects described herein.
[0105] Various aspects of the invention are described herein with reference to the related drawings. Alternative aspects of the invention can be devised without departing from the scope of this invention. Various connections and positional relationships (e.g., over, below, adjacent, etc.) are set forth between elements in the following description and in the drawings. These connections and / or positional relationships, unless specified otherwise, can be direct or indirect, and the present invention is not intended to be limiting in this respect. Accordingly, a coupling of entities can refer to either a direct or an indirect coupling, and a positional relationship between entities can be a direct or indirect positional relationship. Moreover, the various tasks and process steps described herein can be incorporated into a more comprehensive procedure or process having additional steps or functionality not described in detail herein.
[0106] The following definitions and abbreviations are to be used for the interpretation of the claims and the specification. As used herein, the terms “comprises,” “comprising,” “includes,” “including,” “has,” “having,” “contains,” or “containing,” or any other variation thereof are intended to cover a non-exclusive inclusion. For example, a composition, a mixture, process, method, article, or apparatus that comprises a list of elements is not necessarily limited to onlythose elements but can include other elements not expressly listed or inherent to such composition, mixture, process, method, article, or apparatus.
[0107] Additionally, the term “exemplary” is used herein to mean “serving as an example, instance or illustration.” Any aspect or design described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other aspects or designs. The terms “at least one” and “one or more” may be understood to include any integer number greater than or equal to one, i.e., one, two, three, four, etc. The terms “a plurality” may be understood to include any integer number greater than or equal to two, i.e., two, three, four, five, etc. The term “connection” may include both an indirect “connection” and a direct “connection.”
[0108] The terms “about,” “substantially,” “approximately,” and variations thereof are intended to include the degree of error associated with measurement of the particular quantity based upon the equipment available at the time of filing the application. For example, “about” can include a range of ± 8% or 5%, or 2% of a given value.
[0109] For the sake of brevity, conventional techniques related to making and using aspects of the invention may or may not be described in detail herein. In particular, various aspects of computing systems and specific computer programs to implement the various technical features described herein are well known. Accordingly, in the interest of brevity, many conventional implementation details are only mentioned briefly herein or are omitted entirely without providing the well-known system and / or process details.
[0110] It should be understood that various aspects disclosed herein may be combined in different combinations than the combinations specifically presented in the description and accompanying drawings. It should also be understood that, depending on the example, certain acts or events of any of the processes or methods described herein may be performed in a different sequence, may be added, merged, or left out altogether (e.g., all described acts or events may not be necessary to carry out the techniques). In addition, while certain aspects of this disclosure are described as being performed by a single module or unit for purposes of clarity, it should be understood that the techniques of this disclosure may be performed by a combination of units or modules associated with, for example, a medical device.[oni] In one or more examples, the described techniques may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored as one or more instructions or code on a computer-readable medium and executed by a hardware-based processing unit. Computer-readable media may include non-transitory computer-readable media, which corresponds to a tangible medium such as data storage media (e.g., RAM, ROM, EEPROM, flash memory, or any other medium that can be used to store desired program code in the form of instructions or data structures and that can be accessed by a computer).
[0112] Instructions may be executed by one or more processors, such as one or more digital signal processors (DSPs), graphics processing units (GPUs), general-purpose microprocessors, application-specific integrated circuits (ASICs), field programmable logic arrays (FPGAs), or other equivalent integrated or discrete logic circuitry. Accordingly, the term “processor” as used herein may refer to any of the foregoing structure or any other physical structure suitable for implementation of the described techniques. Also, the techniques could be fully implemented in one or more circuits or logic elements.
Claims
CLAIMSWhat is claimed is:
1. A computer-implemented method comprising: monitoring, by a surgery monitoring system, one or more surgical data feeds during a surgical procedure for a plurality of phases and events; determining, by the surgery monitoring system, whether at least one of the events is detected as a contextually-notable event based on a plurality of summary generation rules; generating, by the surgery monitoring system, a surgical summary for display to a user of a streaming system based on a relationship between the contextually-notable event and at least one of the phases of the surgical procedure; and providing the user with a prompt to review the surgical summary with data recorded from the one or more surgical data feeds, the prompt provided while the surgical procedure is in progress.
2. The method of claim 1, further comprising: tracking, by the surgery monitoring system, a sequence of one or more occurrences of one or more the phases and the events during the surgical procedure; and providing the user with a same phase option to review one or more of the events in the sequence and associated data recorded from the one or more surgical data feeds in a same phase as the contextually-notable event.
3. The method of claim 2, further comprising:providing the user with a previous phase option to review one or more of the events in the sequence and associated data recorded from the one or more surgical data feeds in a previous phase that occurred prior to as the contextually-notable event.
4. The method of claim 1 or claim 2, wherein the one or more surgical data feeds comprises at least one surgical video stream.
5. The method of claim 4, wherein the one or more surgical data feeds comprises at least one surgical instrument data feed.
6. The method of any preceding claim, further comprising: tracking a joining time when the user joined a streaming session in progress during the surgical procedure; and adapting the surgical summary for the user based on a most recent occurrence of the contextually-notable event relative to the joining time.
7. The method of claim 6, wherein adapting the surgical summary comprises determining a current phase at the joining time and outputting the surgical summary of a most recently completed phase prior to the joining time.
8. The method of claim 6 or claim 7, wherein adapting the surgical summary comprises determining one or more related events occurring before the most recent occurrence of the contextually-notable event and outputting data recorded from the one or more surgical data feeds for at least one of the one or more related events.
9. The method of any preceding claim, further comprising: identifying, by the surgery monitoring system, a plurality of contextually-notable events during the surgical procedure; generating a list of surgical summaries associated with the contextually-notable events; ranking the contextually-notable events based on the summary generation rules and a time of occurrence of the contextually-notable events; andproviding the user with an option to view the surgical summary selected from the list of surgical summaries and ordered based on the ranking of the contextually-notable events.
10. The method of any preceding claim, further comprising: deriving context data based on one or more the phases, wherein the phases are determined by a machine learning model applied to the one or more surgical data feeds; storing the context data with event data associated with one or more of the events during the surgical procedure; and using the context data in combination with the summary generation rules to distinguish the contextually-notable event from the one or more events.
11. A computer program product comprising a memory device having computer executable instructions stored thereon, which when executed by one or more processors cause the one or more processors to perform operations comprising: determining whether an event detected during a surgical procedure is a contextually-notable event based on context data associated with the event; generating a surgical summary during the surgical procedure based on the contextually- notable event; and displaying the surgical summary through a user interface of a streaming system during the surgical procedure.
12. The computer program product of claim 11, wherein the operations further comprise: monitoring one or more surgical data feeds during the surgical procedure; and outputting data recorded from one or more surgical data feeds of the surgical procedure as a portion of the surgical summary.
13. The computer program product of claim 12, wherein the operations further comprise:determining a plurality of phases of the surgical procedure by a machine learning model applied to the one or more surgical data feeds, wherein the surgical summary is generated based on a relationship between the contextually-notable event and at least one of the phases of the surgical procedure.
14. The computer program product of claim 12 or claim 13, wherein the one or more surgical data feeds comprise one or more of a surgical video stream and a surgical instrument data feed.
15. The computer program product of any of claims 11 to 14, wherein the operations further comprise: tracking a joining time when a user joined a streaming session in progress during the surgical procedure; and adapting the surgical summary for the user based on a most recent occurrence of the contextually-notable event relative to the joining time.
16. The computer program product of any of claims 11 to 15, wherein the operations further comprise: identifying a plurality of contextually-notable events during the surgical procedure; generating a list of surgical summaries associated with the contextually-notable events; ranking the contextually-notable events based on the summary generation rules and a time of occurrence of the contextually-notable events; and outputting to the user interface an option to view the surgical summary selected from the list of surgical summaries, ordered based on the ranking of the contextually-notable events, and selectable through an event timeline.
17. A system comprising: a memory system; anda processing system coupled to the memory system, the processing system configured to execute a plurality of instructions to: monitor one or more surgical data feeds during a surgical procedure; generate a surgical summary during the surgical procedure based on the one or more surgical data feeds; and output the surgical summary through a user interface of a streaming system during the surgical procedure.
18. The system of claim 17, wherein the streaming system generates a visualization of one or more surgical data feeds for one or more participants located remotely from the surgical procedure.
19. The system of claim 18, wherein the processing system is configured to execute a plurality of instructions to: detect one or more phases and events; determine whether at least one of the events is detected as a contextually-notable event based on a plurality of summary generation rules; and generate the surgical summary based on a relationship between the contextually-notable event and at least one of the phases of the surgical procedure.
20. The system of claim 19, wherein the processing system is configured to execute a plurality of instructions to: track a sequence of one or more occurrences of one or more the phases and the events during the surgical procedure; and output an option to review one or more of the events in the sequence and associated data recorded from the one or more surgical data feeds in a same phase or a previous phase as the contextually-notable event.