WO2024052458A1 - Compression de flux de travail alignée et alignement de flux de travail multidimensionnel - Google Patents
Compression de flux de travail alignée et alignement de flux de travail multidimensionnel Download PDFInfo
- Publication number
- WO2024052458A1 WO2024052458A1 PCT/EP2023/074575 EP2023074575W WO2024052458A1 WO 2024052458 A1 WO2024052458 A1 WO 2024052458A1 EP 2023074575 W EP2023074575 W EP 2023074575W WO 2024052458 A1 WO2024052458 A1 WO 2024052458A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- surgical
- workflow
- average
- workflows
- data
- Prior art date
Links
- 230000006835 compression Effects 0.000 title description 12
- 238000007906 compression Methods 0.000 title description 12
- 238000000034 method Methods 0.000 claims abstract description 103
- 238000013459 approach Methods 0.000 claims abstract description 54
- 238000001356 surgical procedure Methods 0.000 claims description 115
- 238000010801 machine learning Methods 0.000 claims description 74
- 238000012545 processing Methods 0.000 claims description 58
- 238000004590 computer program Methods 0.000 claims description 11
- 238000005457 optimization Methods 0.000 claims description 11
- 238000012935 Averaging Methods 0.000 claims description 9
- 230000003044 adaptive effect Effects 0.000 claims description 7
- 238000007405 data analysis Methods 0.000 claims description 6
- 230000004044 response Effects 0.000 claims description 2
- 238000003860 storage Methods 0.000 description 34
- 238000012800 visualization Methods 0.000 description 33
- 238000005192 partition Methods 0.000 description 29
- 238000010586 diagram Methods 0.000 description 25
- 238000013480 data collection Methods 0.000 description 19
- 230000008569 process Effects 0.000 description 17
- 238000004364 calculation method Methods 0.000 description 16
- 230000009471 action Effects 0.000 description 14
- 238000012549 training Methods 0.000 description 14
- 210000003484 anatomy Anatomy 0.000 description 12
- 230000006870 function Effects 0.000 description 11
- 238000004458 analytical method Methods 0.000 description 9
- 238000004422 calculation algorithm Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 8
- 238000001514 detection method Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 5
- 230000006872 improvement Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 239000000203 mixture Substances 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000011002 quantification Methods 0.000 description 4
- 238000003491 array Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000012512 characterization method Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000002192 cholecystectomy Methods 0.000 description 2
- 230000000052 comparative effect Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000012636 effector Substances 0.000 description 2
- 238000003709 image segmentation Methods 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 238000007683 laparoscopic Roux-en-Y gastric bypass Methods 0.000 description 2
- 230000004807 localization Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 241001320851 Aaaba Species 0.000 description 1
- 208000004998 Abdominal Pain Diseases 0.000 description 1
- 208000002177 Cataract Diseases 0.000 description 1
- 208000002881 Colic Diseases 0.000 description 1
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 208000007913 Pituitary Neoplasms Diseases 0.000 description 1
- 208000007536 Thrombosis Diseases 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000006793 arrhythmia Effects 0.000 description 1
- 206010003119 arrhythmia Diseases 0.000 description 1
- 210000001367 artery Anatomy 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 210000004204 blood vessel Anatomy 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 210000000232 gallbladder Anatomy 0.000 description 1
- 230000023597 hemostasis Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000002357 laparoscopic surgery Methods 0.000 description 1
- 230000003902 lesion Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000000819 phase cycle Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000002271 resection Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000007789 sealing Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000011477 surgical intervention Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000006496 vascular abnormality Effects 0.000 description 1
- 210000003462 vein Anatomy 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/41—Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/44—Event detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/49—Segmenting video sequences, i.e. computational techniques such as parsing or cutting the sequence, low-level clustering or determining units such as shots or scenes
Definitions
- the present invention relates in general to computing technology and relates more particularly to computing technology for aligned workflow compression and multidimensional workflow alignment.
- Computer-assisted systems particularly computer-assisted surgery systems (CASs)
- CASs computer-assisted surgery systems
- video data can be stored and/or streamed.
- the video data can be used to augment a person’s physical sensing, perception, and reaction capabilities.
- 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.
- the video data can be stored and/or transmitted for several purposes such as archival, training, post-surgery analysis, and/or patient consultation.
- the process of analyzing and comparing a large amount of video data from multiple surgical procedures to identify commonalities can be highly subjective and error-prone due, for example, to the volume of data and the numerous factors (e.g., patient condition, physician preferences, etc.) that impact the workflow of each individual surgical procedure that is being analyzed.
- a system includes a machine learning processing system that includes one or more machine learning models that are trained to identify a plurality of phases in a video of a surgical procedure.
- the system also includes a data analysis system configured to quantify variation in surgical approaches in a plurality of videos capturing a same type of surgical procedure.
- the quantifying variation in surgical approaches includes receiving a plurality of surgical videos, each of the plurality of surgical videos capturing a workflow of the same type of surgical procedure.
- Each of the plurality of surgical videos is segmented into a segmented workflow that includes a plurality of phases, the segmenting is based on phases identified by the machine learning processing system.
- the phases in the segmented workflows are aligned to an average workflow of the segmented workflows to create a plurality of aligned workflows.
- Each of the plurality of aligned workflows has a same number of phases as the average workflow.
- An entropy is calculated for each phase in the aligned workflows based on a Chao-Shen estimator.
- the entropy for each phase in the aligned workflow is output to a display device for display, where the entropy represents variation in surgical approaches to the surgical procedure.
- calculating the entropy includes scaling the entropy by its maximum possible value to a value that falls in a specified range of values.
- quantifying variation in surgical approaches further includes calculating the average workflow based on the workflows in the plurality of surgical videos.
- calculating the average workflow includes analyzing all medoid workflows in the surgical videos and selecting the average workflow from the medoid workflows based on the analyzing.
- further aspects may include that the analyzing includes executing adaptive dynamic time warping-barycenter-averaging (ADBA) using each of the medoid workflows as an initial average.
- ADBA adaptive dynamic time warping-barycenter-averaging
- further aspects may include that the analyzing is optimized for categoric data and is based at least in part on mode values of phases across the segmented workflows.
- optimization includes modifying a length of the average workflow by one of adding a phase to the average workflow or removing a phase from the average workflow.
- outputting further includes outputting an indication of a surgical service provider associated with one or more of the aligned workflows to the display device for display.
- each phase identified by the one or more machine learning models includes values for multi-dimensional data including a surgical tool and a surgical phase.
- a computer-implemented method includes receiving, by a processor, a plurality of surgical videos, each of the plurality of surgical videos capturing a workflow of a same type of surgical procedure and each of the plurality of surgical videos segmented into a segmented workflow based on multiple data dimensions, the segmented workflow including phases.
- the plurality of segmented workflows are analyzed to calculate a multi-dimensional average workflow.
- the plurality of the segmented workflows are aligned to the multi-dimensional average workflow. Based on the aligning, a variation in the surgical approaches in the plurality of segmented videos are quantified.
- further aspects may include that the analyzing includes modifying a length of the multi-dimensional average workflow by one of adding a phase to the multi- dimensional average workflow or removing a phase from the multi-dimensional average workflow.
- further aspects may include that the method further includes outputting, by the processor to a display device, a graphical representation of the aligned workflows and the variation.
- further aspects may include that the graphical representation identifies a surgical service provider associated with each of the workflows.
- calculating the multi-dimensional average workflow includes analyzing all medoid workflows in the surgical videos and selecting the multi-dimensional average workflow from the medoid workflows based on the analyzing.
- analyzing includes executing adaptive dynamic time warping-barycenter-averaging (ADBA) using each of the medoid workflows as an initial average.
- ADBA adaptive dynamic time warping-barycenter-averaging
- 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.
- the operations include visualizing variations in surgical approaches to performing a surgical procedure.
- the visualizing includes receiving a plurality of surgical videos, each of the plurality of surgical videos capturing a workflow of a same type of surgical procedure and each of the plurality of surgical videos segmented into a segmented workflow including phases. A variation in the workflows in the of the plurality of surgical videos is quantified.
- the quantifying includes calculating phases of an average workflow based at least in part on the plurality of surgical videos, and calculating one entropy value for each of the phases in the average workflow based at least in part on the average workflow and the plurality of surgical videos.
- a graphical representation of the quantified variation is output to a display device.
- visualizing includes receiving user input via a user interface of the graphical representation, and in response to the user input, outputting to the display device, a second graphical representation that includes additional information describing characteristics of one or both of a service provider or a patient.
- graphical representation of the quantified variation includes a graph of the variation over a duration of the surgical procedure.
- each of the phases includes multidimensional data.
- FIG. 1 depicts a computer-assisted surgery (CAS) system according to one or more aspects
- FIG. 2 depicts a surgical procedure system in accordance with one or more aspects.
- FIG. 3 depicts a system for analyzing video captured by a video recording system according to one or more aspects
- FIG. 4 depicts a block diagram of a data analysis system for quantifying variations in surgical approaches according to one or more aspects
- FIG. 5 depicts a flowchart of a method for quantifying variations in surgical approaches according to one or more aspects
- FIG. 6 depicts a flowchart of a method for performing dynamic time warping- barycenter-averaging (DBA) according to one or more aspects
- FIG. 7 depicts a flowchart of a method for performing adaptive DBA (ADBA) according to one or more aspects
- FIG. 8 depicts a block diagram of an alignment process according to one or more aspects
- FIG. 9 depicts a block diagram of an example of a visualization of variation over surgery when the aligned workflows are longer than the average workflow according to one or more aspects;
- FIG. 10 depicts a block diagram of a compression and entropy calculation of aligned workflows, and a visualization of the results according to one or more aspects;
- FIG. 11 depicts a comparison of a visualization of variation over surgery using stretched phases and a visualization of variation over surgery using compressed phases according to one or more aspects
- FIG. 12 depicts an example of a multi-dimensional workflow according to one or more aspects
- FIG. 13 depicts a block diagram of multi-dimensional workflow alignment according to one or more aspects
- FIG. 14 depicts an example of a visualization of workflow standardization according to one or more aspects
- FIG. 15 depicts an example of a visualization of variation over surgery according to one or more aspects
- FIG. 16 depicts an example of a visualization of aligned sequences according to one or more aspects.
- FIG. 17 depicts a computer system according to one or more aspects.
- Exemplary aspects of the technical solutions described herein include systems and methods for aligned workflow compression and multi-dimensional workflow alignment when quantifying variation in surgical approaches to medical procedures.
- a key requirement to be able to standardize surgery is the ability to understand and compare surgical variation. Additionally, the capability to quantify variation and identify at what stage in surgery this variation occurs is also an important step towards understanding the relationships between surgical procedure, patient outcome, and efficiency.
- One or more aspects of the present invention provide a representative average sequence for a data set, which can easily be compared to other groups and can be used to carry out multiple alignment, and a quantifiable value of variation throughout surgery which can be used to understand surgical standardization. This provides a robust standardization metric that allows adherence to an approach to be measured and for improvements due, for example, to training to be tracked and quantified.
- Contemporary approaches use non-linear temporal scaling (NLTS) methods to align a series of surgical workflows and to quantify the variation of the series using entropy.
- the variation has been used to compare the standard practices in surgery between surgeons at different levels of training to understand the main differences between junior and senior surgeons.
- NLTS has three main steps: calculation of the average workflow, multiple alignment of the workflows to the average, and calculation of the entropy across the aligned workflows.
- the average sequences are calculated using dynamic time warping-barycenter-averaging (DBA) and the entropy is calculated using Shannon’s entropy.
- DBA DBA is designed to be used on workflows of the same length, which is often not the case with surgical workflows.
- the length of the average sequence cannot change, meaning that the initial average chosen at the start will set the length of the final average. This means the final average from the algorithm may not be the best possible average for the data set. As each sequence is aligned to this average sequence, this can have a large impact on the results.
- DBA is designed to be used with numerical data rather than categorical data like a surgical phase.
- Another limitation of contemporary approaches is that the use of Shannon’s entropy can result in bias when applied to small sample sizes because it is based on the probability of each phase occurring. When using a small data set, the observed probability of each phase may be different than its true probability.
- ADBA adaptive DBA
- ADBA methods were designed to be used on numeric data and one or more aspects of the present invention described herein modify contemporary ADBA methods to work with categorical data, such as surgical phases or surgical instruments.
- the average optimization in DBA, average optimization in ADBA, and initialization of both methods are modified. These changes use the medoid sequence, that is, the sequence with the smallest sum-of- squares distance when compared to the sequences in the set, as a method to find the “best” average workflow.
- any sequence can be chosen as the initial average workflow, or average sequence, which will then be iteratively optimized.
- categorical data such as surgical phase data
- the choice of the initial average impacts the final average.
- One or more aspects of the present invention address this shortcoming of contemporary approaches by using all medoid sequences from the set as an initial average and the medoid is chosen out of all of the resulting averages.
- the average of each element is found across the set of aligned sequences and the element in the average is updated to have this value.
- the mode value is used instead.
- an average sequence is generated for each mode value as the element value. The medoid version of the average is then used going forward in the algorithm.
- elements are inserted or merged in the average sequence, where the value of the new element is the average of the elements on either side of it.
- two average sequences are generated, one where the element has the value of the element to its right and the second with the value of the element to its left. The medoid average out of these two is then chosen and used going forward.
- compact multiple alignment is used to align each sequence within the set to the corresponding average sequence. This alignment is carried out on each sequence using dynamic time warping (DTW) with respect to the average. CMA allows multiple phases of the sequence to be aligned to a single phase in the average. Once all the sequences are aligned, they are “unpacked,” which includes expanding, or stretching, each sequence so that each phase is only aligned to a single phase. The alignment of the sequences is maintained by inserting repeated values of the previous phase in sequences with no phases to unpack. This prevents any phases from being ignored within sequences due to the alignment, therefore preventing any data loss.
- DTW dynamic time warping
- Entropy gives a numerical value of the variation across the set at each point in the surgery based purely on sequencing rather than timing.
- Contemporary approaches use one of several methods to calculate Shannon’s entropy, which is based on the probability of each phase occurring. Previous studies have found that for small sample sizes Shannon’s entropy can be biased.
- One or more aspects of the present invention address the bias issues associated with small sample sizes by using the Chao-Shen estimator of Shannon’s entropy which has been found to be efficient for a range of sample sizes.
- the entropy calculations are scaled by the maximum possible entropy, given the number of sequences and number of possible phases, so that the entropy values are from 0 to 1. This allows the entropy to be directly comparable between groups.
- One or more aspects of the present invention also include the calculation of error bands for the entropy calculation to provide insights into the potential errors due to small sample size.
- error bands can be calculated using a constant error value that is based on the number of sequences in the set and performed similarly to bootstrapping methods when tested on the data set. This allows a simple calculation to provide an estimate of uncertainty around the entropy calculations, improving the accuracy of comparison between sequence sets of different sizes.
- phases are expanded in all workflows to the maximum length required. For example, if in one workflow there are four phases aligned to one phase in the average workflow, all of the workflows will be stretched to a length of four at this point. This is done to ensure that no information is lost (e.g., no phases are deleted) and that all workflows are the same length at the end of the process.
- This approach, of stretching the workflows can result in the aligned workflows being longer than the average workflow, thus making it appear that some phases are repeated multiple times in a row.
- aligned workflow compression is utilized to calculate a single entropy value per phase in the average workflow, or average sequence, and to show how often each phase occurs at each point in the surgery.
- the entropy is calculated based on all the phases that are aligned to one phase in the average workflow. So, if for the first phase in the average phase the aligned workflows have been stretched to have all four phases aligned to the single average phase, an aspect of a method described herein takes all four phases in the aligned workflows and calculates a single entropy that combines the four phases. This entropy calculation is performed for each phase in the average workflow.
- the method can also return how often each phase occurred in the aligned workflows to show what the most common phases were at this point.
- Aligned workflow compression can make it easier to understand the output that describes observed variation in surgical procedures because the visualization shows one entropy value for each phase in the average workflow.
- workflows contain one-dimensional data, such as a sequence of surgical phases.
- workflows contain multidimensional data which includes two or more data values (e.g., surgical phase, surgical instrument, and anatomy) for each portion of a surgery.
- data values e.g., surgical phase, surgical instrument, and anatomy
- One or more aspects described herein can be utilized to determine and to output visualizations of variations in multidimensional data related to a group of surgical procedures. For example, variations in multi-dimensional data (e.g., features such as surgical phase, surgical instrument, kinematics, anatomy, etc.) can be tracked at each point in a surgery.
- the averages are calculated in the same way that they are calculated for one-dimensional data, but at each point in the sequence the mode value is found in each dimension of the data.
- each workflow is aligned to the average it is aligned based on multiple data dimensions. For example, if two-dimensional data is being analyzed, the values at each point in the surgery can be represented as (value of dimension one, value of dimension two). The distance between (A, B) and (A, C) is equal to 0.5 (i.e., one of the two dimensions have different values). Similarly, the distance between (C, B) and (A, C) is equal to 1 (i.e., both dimensions have different values).
- one or more aspects of the present invention can be utilized to analyze Laparoscopic Roux-en-Y Gastric Bypass surgeries.
- the averaging method can be used to generate an average workflow for each set of surgeries (e.g., one set from each of several different hospitals). This can be used to identify differences in approaches for Laparoscopic Roux-en-Y Gastric Bypass between the hospitals.
- Comparison of the average workflows can identify, for example, one hospital of the group using a retro colic approach as standard and the most common approach used at each of the other hospitals. This provides an easily understandable way of comparing the approaches for each hospital.
- the average workflow also identifies surgical tools and each different combination of a surgical phase and a surgical tool represents a different point in the sequence in the average workflow.
- one or more aspects of the present invention are applied to Laparoscopic Cholecystectomy surgeries and the average workflows may be found based on the assigned grade of the gallbladder, with higher grades resulted in more complex workflows with repetitions of phases showing the increase in complexity of the surgery.
- the average workflows described herein can allow for easy comparison between groups as well as identification of their key characteristics.
- one or more aspects of the present invention provide multiple alignment of workflows which allows for the possibility of many comparative measures to be calculated.
- the compact multiple alignment of the surgical workflows based on the average generates a set of aligned sequences of the same length with clear points of similarity and difference.
- the use of entropy can provide a quantifiable value of variation at each point in the surgery. Due to the scaling of the entropy the calculated values are directly comparable between groups. This can allow the identification of high variation within the surgery and the comparison of variation between hospitals.
- Measurable improvement in surgical interventions can be achieved by objectively quantifying surgical standardization, process efficiency and patient outcomes.
- One or more aspects of the present invention provide a methodology that can effectively achieve this for categorical data, such as surgical phase data, surgical tool data, and/or patient anatomy data.
- One or more aspects of the present invention improve upon contemporary approaches that use NLTS on surgical phase data by the use of a new, modified ADBA method and the use of the Chao- Shen estimator of Shannon’s entropy scaled by its maximum possible value.
- One or more aspects of the present invention provide a representative average sequence for a data set of surgical workflows, which can easily be compared to other groups (or data sets), and a quantifiable value of variation throughout surgery which can be used to understand surgical standardization.
- a robust standardization metric such as that provided by one or more aspects of the present invention described herein allows a surgical approach to be measured and improvements due to training to be tracked and quantified.
- surgical data that is captured by a computer-assisted surgical (CAS) system and segmented into surgical phases is input to the analysis described herein to quantify variation is surgical approaches to a medical procedure.
- CAS computer-assisted surgical
- the CAS system 100 includes at least a computing system 102, a video recording system 104, and a surgical instrumentation system 106.
- an actor 112 can be medical personnel that uses the CAS system 100 to perform a surgical procedure on a patient 110. Medical personnel 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 cataract surgery, laparoscopic cholecystectomy, endoscopic endonasal transsphenoidal approach (eTSA) to resection of pituitary adenomas, or any other surgical procedure.
- actor 112 can be a technician, an administrator, an engineer, or any other such personnel that interacts with the CAS system 100.
- 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.
- 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).
- certain surgical instruments 108 e.g., forceps
- a particular anatomical structure of the patient may be the target of the surgical action(s).
- the video recording system 104 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 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 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.
- the computing system 102 includes one or more memory devices, one or more processors, 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 1700 of FIG. 17.
- Computing system 102 can execute one or more computer-executable 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.
- 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.
- the computing system 102 in one or more examples, can provide recommendations for subsequent actions to be taken by the actor 112.
- 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.
- 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.
- the machine learning models can use the video data captured via the video recording system 104.
- the machine learning models use the surgical instrumentation data from the surgical instrumentation system 106.
- the machine learning models use a combination of video data and surgical instrumentation data.
- the machine learning models can also use audio data captured 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.
- 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.
- the machine learning models can detect surgical actions, surgical phases, anatomical structures, surgical instruments, and various other features from the data associated with a surgical procedure. The detection can be performed in real-time in some examples.
- 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).
- the machine learning models detect surgical phases based on detecting some of the features such as the anatomical structure, surgical instruments, etc.
- a data collection system 150 can be employed to store the surgical data, including the video(s) captured during the surgical procedures.
- the data collection system 150 includes one or more storage devices 152.
- the data collection 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 semiconductor-based, magnetic-based, optical-based storage media, or a combination thereof.
- the data storage media can include flash-based solid- state drives (SSDs), magnetic-based hard disk drives, magnetic tape, optical discs, etc.
- the data collection system 150 can be part of the video recording system 104, or vice-versa.
- the data collection system 150, the video 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, instrumentation data, etc.), data manipulation commands (e.g., browse, copy, paste, move, delete, create, compress, etc.), data manipulation results, etc.
- 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, anatomical structure detection, surgical tool 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.
- the one or more machine learning models e.g., phase detection, anatomical structure detection, surgical tool detection, etc.
- 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.
- the video captured by the video recording system 104 is stored on the data collection system 150.
- the computing system 102 curates parts of the video data being stored on the data collection system 150.
- the computing system 102 filters the video captured by the video recording system 104 before it is stored on the data collection system 150.
- the computing system 102 filters the video captured by the video recording system 104 after it is stored on the data collection system 150.
- 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.
- the surgical procedure support system 202 can also 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 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.
- FIG. 3 a system 300 for analyzing video and data is generally shown according to one or more aspects.
- the video and data is captured from video recording system 104 of FIG. 1.
- the analysis can result in predicting features that include surgical phases and structures (e.g., instruments, anatomical structures, etc.) in the video data using machine learning.
- System 300 can be the computing system 102 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.
- 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.
- 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.
- 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.
- 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.
- the 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.
- 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.
- 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.
- Machine learning processing system 310 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 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.
- the data store 320 is separate from the data collection system 150 of FIG. 1 in some examples. In other examples, the data store 320 is part of the data collection system 150.
- 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.
- 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.
- 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.).
- the other data can include imagesegmentation 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.
- 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.
- 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 based on 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).
- 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.
- the machine learning models 330 receive, as input, surgical data to be processed and subsequently generate one or more inferences according to the training.
- the video data captured by the video 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 that is captured by the video 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.
- 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).
- any other data source e.g., local or remote storage device.
- the data reception system 305 can process the video and/or 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.
- the surgical data can include additional data streams, such as audio data, RFID data, textual data, measurements from one or more surgical instruments/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.
- the machine learning models 330 can analyze the input surgical data, and in one or more aspects, predict and/or characterize features (e.g., 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 features can include segmenting the video data or predicting the localization of the structures with a probabilistic heatmap.
- 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.
- the coordinates can provide a bounding box.
- the coordinates can provide boundaries that surround the structure(s) being predicted.
- the machine learning models 630 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.
- the machine learning processing system 310 includes a phase detector 350 that uses the machine learning models to identify a phase within the surgical procedure (“procedure”).
- Phase detector 350 uses a particular procedural tracking data structure 355 from a list of procedural tracking data structures.
- Phase 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.
- 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/or convergence between the nodes.
- 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.
- a phase relates to a biological state of a patient undergoing a surgical procedure.
- the biological state can indicate a complication (e.g., blood clots, clogged arteries/veins, etc.), pre-condition (e.g., lesions, polyps, etc.).
- the machine learning models 330 are trained to detect an “abnormal condition,” such as hemorrhaging, arrhythmias, blood vessel abnormality, etc.
- 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.
- 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.
- phase 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 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.).
- the phase detector 350 outputs the phase prediction associated with a portion of the video data that is analyzed by the machine learning processing system 310.
- the phase 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 phase prediction that is output can include segments of the video where each segment corresponds to and includes an identity of a surgical phase as detected by the phase detector 350 based on the output of the machine learning execution system 340. Further, the phase prediction, in one or more examples, can include additional data dimensions such as, but not limited to, 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 phase prediction can also include a confidence score of the prediction. Other examples can include various other types of information in the phase prediction that is output.
- 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).
- 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.
- the cameras can be mounted on surgical instruments, walls, or other locations in the operating room.
- FIG. 4 a block diagram of a data analysis system 400 for quantifying variations in surgical approaches is generally shown in accordance with one or more aspects. All or a portion of data analysis system 400 can be implemented by CAS system 100 of FIG. 1, and/or by computer system 1700 of FIG. 17.
- the data analysis system 400 shown in FIG. 4 includes surgical workflow database 402, surgical workflow approach analysis module 404, surgical variation visualization module 406, surgical approach variation quantification module 408, and display device 410. Examples of the processing that can be performed by the modules shown in FIG. 4 are shown FIGs. 5-16 and described below.
- the surgical workflow database 402 stores video data captured, for example, by video recording system 104 of FIG. 1 and/or cameras 204 of FIG. 2, which is broken into phases, for example, by machine learning processing system 310 of FIG. 3.
- the surgical workflow database 402 is located in a storage device 152 of the data collection system of FIG. 1 or stored as surgical data 214 of FIG. 2.
- the surgical workflow database 402 includes surgical video data recorded during several iterations of the same medical procedure by one or more different surgical service providers.
- the display device 410 shown in FIG. 4 can be implemented by any user display device that is accessible to a user who has been granted access to viewing the results of the analysis described herein. Aspects include the display device 410 supporting a graphical user interface (GUI) for outputting graphical data.
- GUI graphical user interface
- Surgical workflow approach analysis module 404 receives surgical workflow data, from the surgical workflow database 402, that includes video recordings of multiple surgical procedures of the same type and creates groupings of similar workflows.
- the video recording, or surgical workflow, of each instance of the particular type of surgical procedure is annotated with phases and/or structures that have been identified, for example, by machine learning processing system 310 and/or via manual annotation.
- the annotation can be used to segment a surgical workflow into surgical phases. Further, the surgical workflows are grouped/clustered automatically using machine learning techniques.
- the grouping can be performed based on one or more factors.
- the factors can include, for example, but are not limited to, the identified surgical phases in each surgical workflow, medical personnel (e.g., surgeon, staff, trainee/interns, etc.) performing the surgical workflow, hospital/institution where the surgical workflow is being performed, equipment used for the surgical workflow, etc. or a combination thereof.
- the surgical approach variation quantification module 408 calculates and assigns an entropy value to a group of surgical workflows to indicate, or to quantify, the variation in the surgical approaches in the group.
- the entropy value and an identifier of the group of surgical workflows can be stored in the surgical workflow database 402 along with pointers to surgical workflows belonging to each group.
- the surgical variation visualization module 406 shown in FIG. 4 can provide authorized users with different views via display device 410 of the analysis of the data stored in the surgical workflow database 402. For example, each grouping can be shown in a different color, or surgical workflows capturing surgeries by different surgical service providers can be shown in different colors. Examples are shown below in FIGs. 9-16.
- all, or a portion, of the surgical variation visualization module 406 is executing by a processor located on a user device (e.g., a personal computer, laptop, mobile phone, etc.) and the display device 410 is located on or attached to the user device. All or portion of the surgical workflow Database 402 can be accessed by the surgical variation visualization module 406 via one or more network connections.
- the computing environment of FIG. 4 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 application specific integrated circuit, among others), software (e.g., an application, among others), firmware, or any suitable combination of hardware, software, and firmware, in various aspects.
- suitable hardware e.g., a processor, an embedded controller, or an application specific integrated circuit, among others
- software e.g., an application, among others
- firmware e.g., an application, among others
- FIG. 4 the block diagram of FIG. 4 is not intended to indicate that system 400 is to include all of the components shown in FIG. 4. Rather, the system 400 can include any appropriate fewer or additional components not illustrated in FIG. 4, such as but not limited to one or more additional display devices 410 and/or surgical workflow databases 402. In addition, the components shown in FIG. 4 may be arranged differently. For example, the surgical workflow approach analysis module 404 and the surgical approach variation quantification module 408 may be located on different computer servers, or they may be part of the same processing unit.
- FIG. 5 a flowchart of a method 500 for quantifying variations in surgical approaches is generally shown in accordance with one or more aspects. All or a portion of method 500 can be implemented, for example, by all or a portion of CAS system 100 of FIG. 1, system 200 of FIG. 2, system 300 of FIG. 3, and/or system 400 of FIG. 4. Method 500 shown in FIG. 5 includes a pipeline that can be used to quantify variations in surgical approaches.
- the method 500 shown in FIG. 5 uses NLTS methods to extract an average sequence from a set, or data set, of surgical phase sequences (workflows). This average can be used to identify the key characteristics of a data set and to easily compare differences in workflow between different groups (e.g., of hospitals, doctors, patients, etc.). The average can also be used to align all of the workflows into a comparable format. The ability to perform multiple alignment allows for the possibility of many comparative measures to be calculated. The method 500 shown in FIG. 5 also calculates entropy which is used to quantify the surgical variation in the workflows within the set, throughout the surgery.
- Surgical workflow data (e.g., surgical video) is acquired or received, at block 502 of FIG. 5. At least a portion of the surgical workflow data can be acquired, for example, from data collection system 150 of FIG. 1.
- the acquired surgical workflow data pertains to a single type of surgical procedure or a group of similar procedures, and may include workflow data from multiple surgical service providers such as multiple different surgeons and/or multiple institutions (e.g., hospitals) and by different surgeons.
- the surgical workflow data includes video data, e.g., laparoscopic video, for each iteration of the surgical procedure.
- the dataset acquired at block 502 can include additional data for each surgical procedure, such as but not limited to hospital identification/characteristics (e.g., location, frequency of performing the surgical procedure, etc.), surgeon identification/characteristics (e.g., years in practice, training, experience with the surgical procedure, etc.), and/or patient identification/characteristics (e.g., age, height, weight, etc.).
- hospital identification/characteristics e.g., location, frequency of performing the surgical procedure, etc.
- surgeon identification/characteristics e.g., years in practice, training, experience with the surgical procedure, etc.
- patient identification/characteristics e.g., age, height, weight, etc.
- the surgical video is segmented into surgical phases using, for example, visual cues in the video.
- the visual cues can include but are not limited to surgical instruments, anatomical structures, etc., in the video.
- the segmenting can include annotating the video and breaking the video up into multiple segments based on the annotating.
- the duration of the segments can also be used to identify surgical approaches.
- certain surgical phases can be repeated in the same case.
- case refers to one iteration of the surgical procedure, that is, a single surgery represented by a single surgical workflow.
- the surgical workflow data, or dataset, acquired at block 502 can include several cases (hundreds or even thousands) of a particular type of surgical procedure obtained from different surgical service providers.
- the surgical workflow data can also be obtained for a single surgical service provider to analyze consistency and/or approaches used by the single surgical service provider.
- an average workflow, or sequence is calculated based on a group of workflows.
- This group can be the whole data set or a subset that includes a particular hospital, a particular surgical approach, or a patient having particular characteristics.
- the calculation of the average sequence is based on ADBA with a modification that allows ADBA to be applied to categoric rather than numerical data.
- ADBA is an iterative process that identifies whether the average sequence is too long or too short compared to the sequences in the set, and it inserts or removes elements accordingly. The values of the elements chosen for insertion or removal are based on the mode values in the surgeries in the set. This results in an average workflow that is as similar to all the sequences in the set as possible. Average workflows can be used to reduce a set of multiple different workflows into one workflow that is easily understandable and comparable.
- a simplified example that uses one-dimensional data includes five surgical workflows or cases, each segmented into a plurality of phases. “A”, “B”, “C”, and “D” each represent a different phase of a surgical procedure. As shown below, Surgical Workflow 0 is segmented (e.g., at block 504 of FIG. 5) into an ordered sequence of phases that includes “ABCDADB.” “ABCDADB” is a symbolic representation of Surgical Workflow 0.
- the segments include phases A, B, C, and D and the sequences follow:
- Surgical Workflow 1 A B C B D A B D,
- Surgical Workflow 4 D A D C B A B C.
- the phase in the average is the mode of the elements in the set of sequences.
- the mode phase is A
- the second is B
- the third C is the fourth B
- the final element of the average is phase D, which is the most common last element in the set of elements.
- the sequences are different lengths, which is why the average phase is not necessarily the mode element near the end as the alignment using DTW has shifted the end points of the sequences relative each other. Exemplary processes for calculating the average workflow are described below in reference to FIG. 6 and FIG. 7.
- CM A compact multiple alignment
- CM A is used to align each sequence within the set to the corresponding average sequence. This alignment is carried out on each sequence using DTW with respect to the average.
- CMA allows multiple phases of the sequence to be aligned to a single phase in the average. Once all the sequences are aligned, they are “unpacked” which includes expanding, or stretching, each sequence so that each phase is only aligned to a single phase in the average sequence.
- the alignment of the sequences is maintained by inserting repeated values of the previous phase in sequences with no phases to unpack. This prevents any phases from being ignored within sequences due to the alignment therefore preventing any data loss.
- each sequence is aligned to the average sequence using DTW which results in the following aligned sequences:
- Surgical Workflow 0 A A B C D DA B D,
- Surgical Workflow 1 A A B C B D A B D,
- Surgical Workflow 2 A A B C B B A B D,
- Surgical Workflow 4 D A D C B B A B C.
- the entropy is calculated for each phase in the aligned workflows.
- the calculated entropy includes a quantifiable value of surgical variation throughout the surgery.
- the entropy at each element of the aligned sequences is calculated based on the Chao-Shen estimator for Shannon’s entropy. Shannon’s entropy is based on the probability that each phase will occur in an element.
- n the number of phase counts
- the entropy of the first element, or segment, in the aligned sequences is .31 (the first element has 2 Ds and 3 As), the entropy of the second element is .35 (4 As and 1 D), the entropy of the third element is .65 (1 D, 1 A, and 3 Bs), the entropy of the fourth element is .35 (ID and 4 Cs), the entropy of the fifth element is .35 (ID and 4 Bs), the entropy of the sixth element is .31 (3 Bs and 2 Ds), the entropy of the seventh element is 0 (5 As), the entropy of the eighth element is 0 (5 Bs), and the entropy of the ninth element is .35 (2 Cs and 3 Ds).
- These values can be presented to a user, for example in any graphical form such as that shown in FIG. 9 below, or in any other format.
- An entropy value of 0 is assigned to elements seven and eight where all sequences have the same phase.
- a value of 1 would relate to the maximum possible entropy given the number of sequences and possible phases. In the example, the entropy is highest in element 3, which has the most different phases out of the whole surgery.
- the processing performed at blocks 506 and 508 of FIG. 5 uses aligned workflow compression, as described below in reference to FIGs. 10- 11. This results in one entropy value per phase, or segment, in the average workflow.
- FIG. 5 the processing shown in FIG. 5 is performed for workflows that were segmented using multi-dimensional data, as described below in reference to FIGs. 12-13.
- FIG. 5 a flowchart of a method 600 for performing DBA is generally shown in accordance with one or more aspects. All or a portion of method 600 can be implemented, for example, by all or a portion of CAS system 100 of FIG. 1, system 200 of FIG. 2, system 300 of FIG. 3, and/or system 400 of FIG. 4.
- One or more aspects of the present invention alter the way that the DBA initializes and updates the average sequence when compared with contemporary DBA methodologies.
- Contemporary methods of applying DBA specify that any sequence can be used for initialization, however, with categoric data (such as surgical phases) the initial average that is chosen impacts the final outcome.
- categoric data such as surgical phases
- the initial average that is chosen impacts the final outcome.
- one or more aspects of the present invention find all medoid sequences and then the DBA is run using each medoid as the initial average. The best average, the medoid, is then chosen at the end as the final average.
- Block 620 which includes blocks 604, 606, and 608 is then performed for each of the initial averages. This block optimizes the initial average by iteratively updating the average to the mode values of the aligned sequences. This is repeated until the iterations have reached a maximum value or there is a minimal change in the average in the last iteration. This block is repeated for each medoid sequence within the set.
- a DTW of each sequence in the set to the initial average is computed at block 604.
- the mode value of each element in the average across the sequences is found at block 606. If there is one mode, the value of the element in the average is set to the mode value.
- processing continues at block 610. Otherwise, processing continues at block 604 to perform another iteration.
- a predefined value e.g., 0.05%, .1%, .01%, etc.
- processing continues at block 604 to perform another iteration.
- the medoid average sequence, out of the averages from each initial medoid is located and used as the final average. In this manner, the medoid of these averages when compared to the set of sequences is found and that average is used going forward in the algorithm.
- the processing shown in FIG. 6 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. 6 are to be included in every case. Additionally, the processing shown in FIG. 6 can include any suitable number of additional operations.
- the average is updated by finding the barycenter average of each element based on the sequences in the set. However, this is not possible with categoric data. Therefore, in one or more aspects of the present invention, the mode value is found for each element. In the case of multiple modes different averages are created, one with each mode as the element value. The best average, the medoid, is then found and used going forward.
- the averages combining each of the potential modes include:
- FIG. 7 a flowchart of a method 700 for performing adaptive DBA (ADBA) 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, system 200 of FIG. 2, system 300 of FIG. 3, and/or system 400 of FIG. 4.
- ADBA adaptive DBA
- the method 700 shown in FIG. 7 finds and uses all medoid sequences as the initial average and the best final average is selected and used as the output.
- the optimization of the average partitions includes either inserting a new element or merging two elements to change the length of the partition.
- the new inserted element has an initial value of the average of the elements on either side of it.
- the resulting element has a value of the average of the merged elements.
- a simple example includes an average sequence of:
- the DTW of the average to each sequence in the set is computed.
- the average is used to calculate the scaling coefficients.
- the scaling coefficients are a value for each element in the average which represents whether on average the element was matched to multiple elements in the sequences or vice versa. This gives an indication of whether the average is too long or too short at this point in comparison to the sequences.
- the alignment coefficient is calculated for each element in the average; 0 if the element is matched to one element in the sequence, if it is matched to multiple elements in the sequence it is given a value of the number of elements it is matched to -1, or 1 - the number of elements in the average matched to one element in the sequence.
- the scaling coefficients are then the sum of the alignment coefficients for each element for the average when aligned to each sequence in the set.
- FIG. 8 which depicts an alignment of the following example, for a sequences ABA, AAABA and A and an average sequence of ABA.
- ABA aligned to the first sequence would result in alignment coefficients 0, 0 and 0 as each element in the average would be matched to one in the sequence.
- A the first element of the average
- the following elements would be matched to one element in the sequence giving alignment coefficients of 2, 0 and 0.
- the partitioning includes separating the average sequence into sections, or partitions, where each section is either too long or too short when compared to the sequences. For example, for an average ABCDE with scaling coefficients -1,0, -2, 2, 3 the average would be split into two partitions ABC and DE, the first being too long and the second being too short when compared to the sequences.
- Each partition will then be optimized differently by merging elements in partitions that are too long and inserting elements in partitions that are too short.
- This block optimizes each partition within the average by either inserting or merging elements within the partition and then carrying out DBA. This is repeated for each partition until the scaling coefficient of the partition has changed sign.
- the processing performed in block 730 includes blocks 706 - 716.
- blocks 706 - 716 depending on the type of partition i.e., too long (negative scaling coefficients), too short (positive scaling coefficients) or matched (scaling coefficients of 0) a different optimization procedure will be carried out.
- block 708 is performed to insert an element into the partition.
- block 710 is performed to merge two elements from the average where the scaling partition is smallest.
- Two versions of the partition are created at block 710, one where the merged element has the value of the element to on the left and another where the merged element has the value of the element on the right.
- DBA such as DBA method 600 of FIG. 6, is run on the partition average to optimize the values. This involves optimizing the values of the partition average based on the mode values of the corresponding partitions of the sequences. Processing continues at block 714 with finding the new scaling factors as explained previously. If the sign of the scaling factors has changed the processing continues at block 716. Otherwise, if the sign of the scaling factors has not changed, the average is stored, and processing returns to block 708 or 710. At block 716, the stored average which is the medoid is used as the new average for the partition. Once the processing in block 730 is repeated for every partition, processing continues at block 718 with concatenating the partition averages together to generate the new average sequence and processing continues at block 720.
- processing continues at block 702 to perform another iteration.
- the medoid average sequence, out of the averages from each initial medoid is located and used as the final average. In this manner, the medoid of these averages when compared to the set of sequences is found and that average is used going forward in the algorithm.
- an average sequence is chosen from a list by selecting the medoid one (the optimization sections in DBA and ADBA and at the end of the algorithm).
- the sequence with the lowest Levenshtein distance when compared to the data set is used. This is a common distance measure when comparing two lists of letters, as our phase data is.
- 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.
- entropy is calculated for each phase, or segment, in the aligned workflows to determine the entropy, or variation, across the data at each point in the workflow.
- entropy is calculated for each phase, or segment, in the aligned workflows to determine the entropy, or variation, across the data at each point in the workflow.
- phases that have been stretched into multiple phases there will be an entropy value for each phase in the stretched phase, and multiple phases in the resulting aligned workflows may correspond to a single phase in the average workflow. This can be confusing for some users as some phases are stretched out, and may also result in potentially misleading entropy values during these stretched phases.
- FIG. 9 an example of a visualization 900 of variation over surgery when the aligned workflows are longer than the average workflow is generally shown in accordance with one or more aspects.
- a set of workflows 902 are aligned to average workflow 908 to generate aligned workflows 904.
- phases in the aligned workflows 904 are stretched to include all phases in the workflows 902 and to make all the of the aligned workflows 904 the same length so that they are easily comparable with each other.
- the length of the aligned workflows 904 shown in FIG. 9 is nine, which is longer than the length of the average workflow 908 shown in FIG. 9 which is seven.
- phase in the average workflow 908 may take up multiple columns in the visualization of the aligned workflows 904 while other phases may only take up one column.
- the entropy value 906 is calculated on the stretched aligned workflows 904 resulting in a visualization that depicts more entropy values 906 than phases in the average workflow 908.
- aligned workflow compression is implemented to provide a single entropy value for each phase in the average workflow.
- each of the additional phases (if any) added during the alignment process are associated with a phase in the average workflow.
- One entropy value that includes data from all of the phases associated with each phase in the average workflow are calculated. This may be easier for users to understand what the variation is at this point.
- the entropy is then calculated as before, but based on these phase counts, resulting in one entropy value per phase in the average. This may result in a smoother and/or clearer surgical variation output.
- FIG. 10 a block diagram 1000 of a compression and entropy calculation of aligned workflows, and a visualization of the results are generally shown in accordance with one or more aspects.
- each of the phases in the aligned workflows 904 of FIG. 9 are aligned to one phase in the average workflow 908.
- the first two phases of the aligned workflows 904 are associated with the first phase in the average workflow 908.
- This ratio is shown in the first phase of compressed aligned workflows 1004, where 3/10 of the column is shaded to indicate a phase of type “D” and 7/10 of the column is shaded to indicate a phase of type “A.”
- the calculation of the entropy is based on the values of all of the phases in each of the combined phases, and one entropy value is calculated for each phase in the average workflow 908. Entropy is calculated based on the proportion of times each phase occurs, so it is not impacted by differences in the total number of phases in each set.
- a visualization of the compressed aligned workflows 1004 and a visualization of the entropy values 1002 for the compressed aligned workflows is shown in FIG. 10.
- FIG. 11 depicts the aligned workflows 904 of FIG. 9 and their corresponding entropy values 906 in graph form as shown in FIG. 9.
- the number of phases in the visualization is more than the number of phases in the average workflow 908.
- an entropy value 906 is calculated and displayed for each of phases in the aligned workflows 904.
- FIG. 11 also depicts the compressed aligned workflows 1004 of FIG. 10 along with their corresponding entropy values 1002 in graph form.
- the aligned workflows 904 have been compressed so that the number of phases in each of the aligned workflows 1004 is the same as the number of phases in the average workflow 908.
- the entropy value 1002, in graph form that is calculated and displayed for each of phases in the average workflow 908.
- the visualization of the compressed aligned workflow 1004 depicts one column and one entropy value 1002 for each phase in the average workflow 908. In this manner, how often each phase occurs at each point of the surgery is shown in an easy to understand format.
- FIG. 12 a block diagram 1200 of a multi-dimensional workflow is generally shown in accordance with one or more aspects.
- a machine learning model(s) such as machine learning models 330 of FIG. 3, can characterize, or segment, surgical data along multiple-dimensions as shown in block 1202.
- Block 1202 shows two-dimensions of data including surgical phase and surgical tool.
- the sequence of the identified surgical phases in block 1202 includes Phase A, Phase B, and Phase C.
- the sequence of the identified tools in block 1202 includes Tool A, Tool B, Tool C, Tool B, Tool C, Tool A, Tool C, and None.
- the identified surgical phases and surgical tools are overlaid in time and used to generate the two-dimensional- workflow 1204 shown in FIG. 12.
- the sequence of the phases shown in the two- dimensional workflow 1204 include (Phase A, Tool A), (Phase A, Tool B), (Phase A, Tool C), (Phase A, Tool B), (Phase B, Tool B), (Phase B, Tool C), (Phase B, Tool A), (Phase C, Tool A), (Phase C, Tool C), and (Phase C, Tool None).
- FIG. 13 a block diagram 1300 of multi-dimensional workflow alignment is generally shown in accordance with one or more aspects.
- the block diagram 1300 includes multi-dimensional workflows 1302, an average multi-dimensional workflow 1306, and aligned multi-dimensional workflows 1304.
- the aligned multi-dimensional workflows 1304 can be used to calculate the surgical variation in the same way as previously described.
- the techniques for onedimensional data can be extended into multiple dimensions so that an average is calculated based on multiple dimensions, alignment is carried out, and entropy is calculated.
- the counts of how often each tool occurs at each point is also used.
- the distance is found between them to give a cost value of each potential alignment. For example, in the example shown in FIG. 13, the cost increases by .5 if the surgical phases are different and the cost increases by .5 if the surgical tools are different.
- the maximum possible value is calculated based on the possible values of all surgical phases and tools. For example, for one dimensional data, the distance between a first sequence A, B, C and a second sequence A, D, C is 1 as there is one phase that is different. For multidimensional data, the distance between a sequence (A,D), (B,D), (C,D) and (A,D), (D,D), (C,D) is .5. The average and alignment can be calculated using this variation in the distance scores between workflows.
- the average multi-dimensional workflow 1306 is mostly the mode surgical phase and mode surgical tool at each point, or segment. Some differences are due to the alignment as the multi-dimensional workflows 1302 are of different lengths.
- the surgical phase and tool variation are calculated separately to give users a view on how they vary in their surgical phase workflow and on how they vary in their tooling workflow.
- FIG. 14 an example of a visualization 1400 of workflow standardization is generally shown in accordance with one or more aspects.
- the visualization 1400 shown in FIG. 14 shows the average entropy of a surgery each month with the shaded sections corresponding to the error bands of the calculation. This shows workflow variation over time as well as the potential error of the entropy calculation based on the number of surgeries carried out each month.
- FIG. 15 an example of a visualization 1500 of variation over surgery is generally shown in accordance with one or more aspects. This shows the entropy throughout a surgery from the start point 0 on the left to the end of the surgery at point 1 on the right. The entropy throughout the surgery is shown for a particular surgeon in blue compared to the relevant department in pink. This allows users to compare their variation with that of their department to determine whether their variation is in line with their peers.
- FIG. 16 an example of a visualization 1600 of aligned sequences is generally shown in accordance with one or more aspects.
- a graph showing an entropy valued scaled between zero (no variation, all workflows have the same value) and one (every workflow has a unique value) is shown for each of the elements in the aligned sequences.
- the blue shaded area corresponds to the error bands for the calculation.
- the colored bars below show the aligned sequences with each color representing a different phase in the surgery and one row corresponding to one recorded surgery. This can be used to show the amount of variation in the surgical procedure over time for the set of videos that were analyzed.
- the visualizations 1400 1500 1600 shown in FIG. 14, FIG. 15, and FIG. 16 are examples of the type of data that may be generated and displayed to a user.
- a graphical representation of the identified surgical approaches is output for display on a display device.
- User input may be received via a user interface of the graphical representation and a second graphical representation including for example, providers that use one or more of the identified surgical approaches, may be output for display on the display device.
- the visualization is interactive and can be modified based on input from a user.
- any number of different visualizations containing different data and in different formats can be provided by the surgical variation visualization module 406 of FIG. 4 based on contents of the surgical workflow data for output to display device 410 of FIG. 4.
- the computer system 1700 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 1700 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 1700 may be, for example, a server, desktop computer, laptop computer, tablet computer, or smartphone.
- computer system 1700 may be a cloud computing node.
- Computer system 1700 may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer system.
- 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 1700 may be practiced in distributed cloud computing environments where tasks are performed by remote processing devices that are linked through a communications network.
- program modules may be located in both local and remote computer system storage media, including memory storage devices.
- the computer system 1700 has one or more central processing units (CPU(s)) 1701a, 1701b, 1701c, etc. (collectively or generically referred to as processor(s) 1701).
- the processors 1701 can be a single-core processor, multi-core processor, computing cluster, or any number of other configurations.
- the processors 1701 also referred to as processing circuits, are coupled via a system bus 1702 to a system memory 1703 and various other components.
- the system memory 1703 can include one or more memory devices, such as read-only memory (ROM) 1704 and a random-access memory (RAM) 1705.
- ROM read-only memory
- RAM random-access memory
- the ROM 1704 is coupled to the system bus 1702 and may include a basic input/output system (BIOS), which controls certain basic functions of the computer system 1700.
- BIOS basic input/output system
- the RAM is read-write memory coupled to the system bus 1702 for use by the processors 1701.
- the system memory 1703 provides temporary memory space for operations of said instructions during operation.
- the system memory 1703 can include random access memory (RAM), read-only memory, flash memory, or any other suitable memory systems.
- the computer system 1700 comprises an input/output (I/O) adapter 1706 and a communications adapter 1707 coupled to the system bus 1702.
- the I/O adapter 1706 may be a small computer system interface (SCSI) adapter that communicates with a hard disk 1708 and/or any other similar component.
- SCSI small computer system interface
- the I/O adapter 1706 and the hard disk 1708 are collectively referred to herein as a mass storage 1710.
- Software 1711 for execution on the computer system 1700 may be stored in the mass storage 1710.
- the mass storage 1710 is an example of a tangible storage medium readable by the processors 1701, where the software 1711 is stored as instructions for execution by the processors 1701 to cause the computer system 1700 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 1707 interconnects the system bus 1702 with a network 1712, which may be an outside network, enabling the computer system 1700 to communicate with other such systems.
- a portion of the system memory 1703 and the mass storage 1710 collectively store an operating system, which may be any appropriate operating system to coordinate the functions of the various components shown in FIG. 17.
- Additional input/output devices are shown as connected to the system bus 1702 via a display adapter 1715 and an interface adapter 1716 and.
- the adapters 1706, 1707, 1715, and 1716 may be connected to one or more I/O buses that are connected to the system bus 1702 via an intermediate bus bridge (not shown).
- a display 1719 e.g., a screen or a display monitor
- a display adapter 1715 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 1702 via the interface adapter 1716, 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).
- PCI Peripheral Component Interconnect
- the computer system 1700 includes processing capability in the form of the processors 1701, and storage capability including the system memory 1703 and the mass storage 1710, input means such as the buttons, touchscreen, and output capability including the speaker 1723 and the display 1719.
- the communications adapter 1707 can transmit data using any suitable interface or protocol, such as the internet small computer system interface, among others.
- the network 1712 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 1700 through the network 1712.
- an external computing device may be an external web server or a cloud computing node.
- FIG. 17 is not intended to indicate that the computer system 1700 is to include all of the components shown in FIG. 17. Rather, the computer system 1700 can include any appropriate fewer or additional components not illustrated in FIG. 17 (e.g., additional memory components, embedded controllers, modules, additional network interfaces, etc.). Further, the aspects described herein with respect to computer system 1700 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 application-specific integrated circuit, among others), software (e.g., an application, among others), firmware, or any suitable combination of hardware, software, and firmware, in various aspects.
- suitable hardware e.g., a processor, an embedded controller, or an application-specific integrated circuit, among others
- software e.g., an application, among others
- firmware e.g., an application, among others
- 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
- 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.
- RAM random access memory
- ROM read-only memory
- EPROM or Flash memory erasable programmable read-only memory
- SRAM static random access memory
- CD-ROM compact disc read-only memory
- DVD digital versatile disk
- memory stick a floppy disk
- mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon
- a computer-readable storage medium 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.
- 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.
- 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.
- 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++, 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.
- 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).
- 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.
- 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.
- 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.
- 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).
- the functions noted in the blocks may occur out of the order noted in the Figures.
- 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.
- 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.
- connection may include both an indirect “connection” and a direct “connection.”
- 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).
- processors such as one or more digital signal processors (DSPs), general-purpose microprocessors, application-specific integrated circuits (ASICs), field programmable logic arrays (FPGAs), or other equivalent integrated or discrete logic circuitry.
- DSPs digital signal processors
- ASICs application-specific integrated circuits
- FPGAs field programmable logic arrays
- processors 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.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Medical Treatment And Welfare Office Work (AREA)
Abstract
Un aspect comprend un procédé mis en œuvre par ordinateur qui quantifie des variations dans des approches chirurgicales pour des procédures médicales. Des vidéos chirurgicales documentant de multiples cas d'une procédure médicale sont analysées pour identifier des variations dans des approches chirurgicales utilisées par des fournisseurs de services lors de la réalisation de la procédure médicale. Selon certains aspects, la variation dans les approches chirurgicales est quantifiée.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202263404239P | 2022-09-07 | 2022-09-07 | |
US63/404,239 | 2022-09-07 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024052458A1 true WO2024052458A1 (fr) | 2024-03-14 |
Family
ID=88016560
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/EP2023/074575 WO2024052458A1 (fr) | 2022-09-07 | 2023-09-07 | Compression de flux de travail alignée et alignement de flux de travail multidimensionnel |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2024052458A1 (fr) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190362834A1 (en) * | 2018-05-23 | 2019-11-28 | Verb Surgical Inc. | Machine-learning-oriented surgical video analysis system |
-
2023
- 2023-09-07 WO PCT/EP2023/074575 patent/WO2024052458A1/fr unknown
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190362834A1 (en) * | 2018-05-23 | 2019-11-28 | Verb Surgical Inc. | Machine-learning-oriented surgical video analysis system |
Non-Patent Citations (1)
Title |
---|
FORESTIER GERMAIN ET AL: "Non-linear temporal scaling of surgical processes", ARTIFICIAL INTELLIGENCE IN MEDICINE, vol. 62, no. 3, 1 November 2014 (2014-11-01), NL, pages 143 - 152, XP055937904, ISSN: 0933-3657, DOI: 10.1016/j.artmed.2014.10.007 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10878966B2 (en) | System and method for analysis and presentation of surgical procedure videos | |
US20240169579A1 (en) | Prediction of structures in surgical data using machine learning | |
WO2024105050A1 (fr) | Réseau spatio-temporel pour segmentation sémantique de vidéo dans des vidéos chirurgicales | |
US20240153269A1 (en) | Identifying variation in surgical approaches | |
US20230326207A1 (en) | Cascade stage boundary awareness networks for surgical workflow analysis | |
US20240161497A1 (en) | Detection of surgical states and instruments | |
US20240206989A1 (en) | Detection of surgical phases and instruments | |
US20240161934A1 (en) | Quantifying variation in surgical approaches | |
US20240037949A1 (en) | Surgical workflow visualization as deviations to a standard | |
WO2024052458A1 (fr) | Compression de flux de travail alignée et alignement de flux de travail multidimensionnel | |
EP4430823A1 (fr) | Adaptateurs de communication multimédia dans un environnement chirurgical | |
EP4430487A1 (fr) | Interrogation de cas similaires sur la base d'informations vidéo | |
EP4258274A1 (fr) | Dé-identification de données obtenues à partir de microphones | |
WO2023084258A1 (fr) | Compression de catalogue de vidéo chirurgicale | |
WO2024100286A1 (fr) | Mappage de flux de travaux chirurgicaux comprenant une fusion de modèles | |
WO2023021144A1 (fr) | Réseaux de graphes temporels sensibles à la position destinés à la reconnaissance de phase chirurgicale sur des vidéos laparoscopiques | |
US20240252263A1 (en) | Pose estimation for surgical instruments | |
WO2024110547A1 (fr) | Tableau de bord d'analyse vidéo pour examen de cas | |
EP4430488A1 (fr) | Élimination de données redondantes dans un catalogue de vidéos chirurgicales | |
WO2024105054A1 (fr) | Segmentation hiérarchique de scènes chirurgicales | |
CN117121066A (zh) | 识别手术方法的变化 | |
WO2024100287A1 (fr) | Segmentation d'action avec représentation partagée-privée de multiples sources de données | |
WO2024189115A1 (fr) | Matrices de transition de markov pour identifier des points d'écart pour des procédures chirurgicales | |
WO2024213771A1 (fr) | Tableau de bord de données chirurgicales | |
WO2023084259A1 (fr) | Compression de vidéo chirurgicale dépendant des caractéristiques |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23768255 Country of ref document: EP Kind code of ref document: A1 |