WO2019164274A1 - Training data generation method and device - Google Patents

Training data generation method and device Download PDF

Info

Publication number
WO2019164274A1
WO2019164274A1 PCT/KR2019/002092 KR2019002092W WO2019164274A1 WO 2019164274 A1 WO2019164274 A1 WO 2019164274A1 KR 2019002092 W KR2019002092 W KR 2019002092W WO 2019164274 A1 WO2019164274 A1 WO 2019164274A1
Authority
WO
WIPO (PCT)
Prior art keywords
surgical
information
image
surgery
polygon
Prior art date
Application number
PCT/KR2019/002092
Other languages
French (fr)
Korean (ko)
Inventor
이종혁
형우진
양훈모
김호승
허성환
최민국
이재준
Original Assignee
(주)휴톰
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1020180122454A external-priority patent/KR102014351B1/en
Application filed by (주)휴톰 filed Critical (주)휴톰
Publication of WO2019164274A1 publication Critical patent/WO2019164274A1/en

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B34/00Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B34/00Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
    • A61B34/10Computer-aided planning, simulation or modelling of surgical operations
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B34/00Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
    • A61B34/20Surgical navigation systems; Devices for tracking or guiding surgical instruments, e.g. for frameless stereotaxis
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B34/00Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
    • A61B34/30Surgical robots
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B90/00Instruments, implements or accessories specially adapted for surgery or diagnosis and not covered by any of the groups A61B1/00 - A61B50/00, e.g. for luxation treatment or for protecting wound edges
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image

Definitions

  • the present invention relates to a method and apparatus for generating learning data.
  • Laparoscopic surgery refers to surgery performed by medical staff to see and touch the part to be treated.
  • Minimally invasive surgery is also known as keyhole surgery, and laparoscopic surgery and robotic surgery are typical.
  • laparoscopic surgery a small hole is made in a necessary part without opening, and a laparoscopic with a special camera is attached and a surgical tool is inserted into the body and observed through a video monitor.
  • Microsurgery is performed using a laser or a special instrument.
  • robot surgery is to perform minimally invasive surgery using a surgical robot.
  • radiation surgery refers to surgical treatment with radiation or laser light outside the body.
  • Deep learning is defined as a set of machine learning algorithms that attempts to achieve high levels of abstraction (summarizing key content or functions in large amounts of data or complex data) through a combination of several nonlinear transformations. Deep learning can be seen as a field of machine learning that teaches computers how people think in a large framework.
  • the surgery is performed using a variety of methods as well as the case where the medical staff directly perform the surgery.
  • a robotic surgery system using a surgical robot a virtual surgery system that provides simulation of virtual surgery by providing the same virtual environment as in actual surgery, and a remote surgery system that can guide surgery remotely during surgery. Method can be used. Accordingly, there is a need for a method that allows the operation process to proceed by using various methods during actual surgery.
  • the problem to be solved by the present invention is to provide a surgical information construction method and apparatus.
  • the problem to be solved by the present invention is to provide an artificial data generating method and apparatus.
  • An object of the present invention is to provide a method and apparatus for generating artificial data from an actual surgical image.
  • the problem to be solved by the present invention is to provide a method and apparatus for generating artificial data close to the actual surgical image through learning.
  • An object of the present invention is to provide a method and apparatus for generating learning data based on a surgical image.
  • An object of the present invention is to provide a method and apparatus for recognizing various surgical information included in a surgical image and expressing a relationship between the recognized surgical information.
  • the problem to be solved by the present invention is to provide a method and apparatus for generating training data based on each surgical information recognized from the surgical image, and to build a learning model using the generated training data.
  • An object of the present invention is to provide a method and apparatus for providing blood vessel information using a blood vessel model.
  • the problem to be solved by the present invention is to provide a method and apparatus for constructing the training data using the polygon information in the 3D blood vessel model and learning to classify blood vessels.
  • the problem to be solved by the present invention is to provide a method and apparatus for identifying the vessel type and vascular hierarchy for the vessel information of the new patient through the vessel classification learning model.
  • the relay server for constructing surgery information while relaying the communication between the client, receives the actual surgery information generated based on the actual surgery image from the first client, the received actual surgery information Transmits the virtual surgery information generated by performing a virtual surgery based on the actual surgery information from the second client, and transmits the virtual surgery information to the first client.
  • a method of generating artificial data performed by a computer includes obtaining a background image and an object image, and generating artificial data by combining the background image and the object image.
  • the background image includes a specific area inside the body taken by the endoscope camera, and the object image includes a surgical tool or blood, and the artificial data includes a surgical tool or blood in the object image, and the It is characterized in that it is generated to approximate the actual surgical image based on the arrangement relationship between specific regions within the body in the background image.
  • a method for generating training data based on a surgical image performed by a computer may include obtaining a surgical image including a plurality of image frames, and performing surgery recognition information from each of the plurality of image frames. Recognizing, and generating, for each of the plurality of image frames, relational representation information representing a relationship between surgical elements included in the surgical recognition information based on the surgical recognition information. Include.
  • the method may include obtaining vessel vessel polygons constituting a vessel in a vessel model, the vessel vessel information and connection information of the vessel vessel. Comprising the learning data based on the step, and classifying the blood vessels based on the learning data.
  • surgical information can be collected from various clients in real time at the time of an actual operation, so that surgical medical staff can effectively proceed with the surgical procedure.
  • surgical medical staff can effectively proceed with the surgical procedure.
  • since the operation can be performed through a variety of surgical information and surgical system as compared to the case of performing the operation only by the surgical medical staff, it is possible to perform a more accurate operation.
  • the surgical information can be transmitted and received to each other through the relay server.
  • each client since each client only needs to perform communication through a relay server, even if the number of clients increases, communication between each other can be easily performed, and an additional load does not occur. Thus, increasing the number of clients does not affect performance.
  • artificial data close to the actual surgical image can be generated through learning.
  • learning data can be constructed using artificial data.
  • a sufficient learning effect can be obtained by providing artificially generated surgical images together with actual surgical images, such as artificial intelligence, deep learning, and machine learning, which require a large amount of learning data.
  • an artificially generated surgical image including various surgical information that cannot be obtained during actual surgery can be secured.
  • the present invention it is possible to obtain more meaningful information through the image frame by defining various surgical elements that can be recognized from the image frame, and grasping the relationship information between the surgical elements as well as the information on each surgical element itself. .
  • the present invention rather than generating training data for building one learning model, it provides the basis data for building various learning models.
  • the learning data may be increased to obtain more improved learning results.
  • the present invention it is possible to accurately grasp geometric and hierarchical information of blood vessels by building a learning model for classifying blood vessels.
  • the simulation is performed using this, more accurate surgical simulation is possible because the vessel information about the arteries and veins located in the surgical target and the surroundings can be accurately provided.
  • the present invention is effective to classify blood vessels and stratify blood vessels by constructing training data based on connection information between one polygon and an adjacent polygon.
  • the present invention by using the position information of the polygon derived based on the reference vessel point and the reference organ, it is possible to build a more accurate vessel classification learning model, through which a higher recognition rate can be obtained.
  • FIG. 1 is a schematic diagram of a system capable of performing robot surgery according to an embodiment of the present invention.
  • FIG. 2 is a view schematically showing the configuration of a surgical information building system according to an embodiment of the present invention.
  • FIG. 3 is a flowchart illustrating a method of building surgery information using a relay server according to an embodiment of the present invention.
  • FIG. 4 is a diagram schematically showing the configuration of an apparatus 300 for performing surgery information construction according to an embodiment of the present invention.
  • FIG. 5 is a flowchart illustrating a method of generating artificial data according to an embodiment of the present invention.
  • FIG. 6 is a view for explaining a method of generating artificial data based on learning according to an embodiment of the present invention.
  • FIGS. 7 to 10 are diagrams for explaining embodiments of a method for generating artificial data based on learning according to an embodiment of the present invention.
  • FIG. 11 is a schematic diagram of a system capable of performing robot surgery according to an embodiment of the present invention.
  • FIG. 12 is a diagram schematically showing the configuration of an apparatus 700 for performing a method of generating artificial data according to an embodiment of the present invention.
  • FIG. 13 is a schematic diagram of a system capable of performing robot surgery according to an embodiment of the present invention.
  • FIG. 14 is a flowchart schematically illustrating a method of generating learning data based on a surgical image according to an embodiment of the present invention.
  • 15 is a diagram illustrating a process of generating relationship expression information by recognizing surgical recognition information from an image frame according to an embodiment of the present invention.
  • 16 is a diagram illustrating relationship expression information generated for a plurality of image frames in a surgical image according to an embodiment of the present invention.
  • 17 is a diagram illustrating an example of a process of performing learning based on relationship expression information generated for a plurality of image frames in a surgical image according to an embodiment of the present invention.
  • FIG. 18 is a diagram schematically illustrating a configuration of an apparatus 400 for performing a method for generating learning data based on a surgical image according to an embodiment of the present invention.
  • 19 is a flowchart schematically illustrating a method of providing blood vessel information using a blood vessel model according to an embodiment of the present invention.
  • 20 and 21 are diagrams for explaining a process of deriving connection information between a vascular polygon and an adjacent polygon according to an embodiment of the present invention.
  • 22 is a diagram illustrating a process of calculating the midpoint of the OBB.
  • FIG. 23 is a diagram illustrating a learning process for classifying blood vessel types according to one embodiment of the present invention.
  • 24 and 25 are diagrams showing an example of blood vessel classification derived as a learning result according to an embodiment of the present invention.
  • FIG. 26 is a diagram schematically illustrating a configuration of an apparatus 200 for performing a method of providing blood vessel information using a blood vessel model according to an embodiment of the present invention.
  • a “part” or “module” refers to a hardware component such as software, FPGA, or ASIC, and the “part” or “module” plays certain roles. However, “part” or “module” is not meant to be limited to software or hardware.
  • the “unit” or “module” may be configured to be in an addressable storage medium or may be configured to play one or more processors.
  • a “part” or “module” may include components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, Procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables. Functions provided within components and “parts” or “modules” may be combined into smaller numbers of components and “parts” or “modules” or into additional components and “parts” or “modules”. Can be further separated.
  • a computer includes all the various devices capable of performing arithmetic processing to provide a result to a user.
  • a computer can be a desktop PC, a notebook, as well as a smartphone, a tablet PC, a cellular phone, a PCS phone (Personal Communication Service phone), synchronous / asynchronous The mobile terminal of the International Mobile Telecommunication-2000 (IMT-2000), a Palm Personal Computer (PC), a Personal Digital Assistant (PDA), and the like may also be applicable.
  • a head mounted display (HMD) device includes a computing function
  • the HMD device may be a computer.
  • the computer may correspond to a server that receives a request from a client and performs information processing.
  • FIG. 1 is a schematic diagram of a system capable of performing robot surgery according to an embodiment of the present invention.
  • the robotic surgical system includes a medical imaging apparatus 10, a server 100, a control unit 30 provided in an operating room, a display 32, and a surgical robot 34.
  • the medical imaging apparatus 10 may be omitted in the robot surgery system according to the disclosed embodiment.
  • surgical robot 34 includes imaging device 36 and surgical instrument 38.
  • the robot surgery is performed by the user controlling the surgical robot 34 using the control unit 30. In one embodiment, the robot surgery may be automatically performed by the controller 30 without the user's control.
  • the server 100 is a computing device including at least one processor and a communication unit.
  • the controller 30 includes a computing device including at least one processor and a communication unit.
  • the control unit 30 includes hardware and software interfaces for controlling the surgical robot 34.
  • the imaging device 36 includes at least one image sensor. That is, the imaging device 36 includes at least one camera device and is used to photograph an object, that is, a surgical site. In one embodiment, the imaging device 36 includes at least one camera coupled with a surgical arm of the surgical robot 34.
  • the image photographed by the photographing apparatus 36 is displayed on the display 340.
  • surgical robot 34 includes one or more surgical tools 38 that can perform cutting, clipping, fixing, grabbing operations, and the like, of the surgical site.
  • Surgical tool 38 is used in conjunction with the surgical arm of the surgical robot 34.
  • the controller 30 receives information necessary for surgery from the server 100 or generates information necessary for surgery and provides the information to the user. For example, the controller 30 displays the information necessary for surgery, generated or received, on the display 32.
  • the user performs the robot surgery by controlling the movement of the surgical robot 34 by manipulating the control unit 30 while looking at the display 32.
  • the server 100 generates information necessary for robotic surgery using medical image data of an object previously photographed from the medical image photographing apparatus 10, and provides the generated information to the controller 30.
  • the controller 30 displays the information received from the server 100 on the display 32 to provide the user, or controls the surgical robot 34 by using the information received from the server 100.
  • the means that can be used in the medical imaging apparatus 10 is not limited, for example, other various medical image acquisition means such as CT, X-Ray, PET, MRI may be used.
  • the surgical image obtained by the imaging device 36 is transmitted to the controller 30.
  • the relay server may mean the server 100 of FIG. 1 or may be separately installed and operate in conjunction with the server 100 of FIG. 1.
  • the medical staff may perform the surgery by various methods such as using a surgical robot or a simulator or guiding the operation remotely, as well as performing the surgery directly in the operating room. Accordingly, there is a need for a method of connecting various devices used during surgery and transmitting and receiving information therebetween to provide a more effective and optimized surgery to the patient during surgery. Therefore, the present invention is to provide a method for connecting each device using a relay server and through this to collect and utilize information.
  • FIG. 2 is a view schematically showing the configuration of a surgical information building system according to an embodiment of the present invention.
  • the surgical information building system may include a relay server 200 and a plurality of clients.
  • the first client 210, the second client 220, and the third client 230 are described as one example.
  • the present invention is not limited thereto. .
  • it can be configured to include fewer or more clients than shown in FIG.
  • the relay server 200 is a device that relays communication between a plurality of clients, and may perform a function such as, for example, a chat server.
  • the relay server 200 may relay a surgery by connecting a robot surgery system using a surgery robot, a virtual surgery system using a simulator, a remote system that guides the surgery remotely during surgery, and the like.
  • the relay server 200 may build learning data in response to receiving various surgical information from a plurality of clients.
  • the relay server 200 may perform learning based on the learning data and calculate an optimized surgical process, or may provide the learning data to an external server.
  • the external server may calculate the optimized surgical process by performing the learning based on the learning data provided from the relay server 200.
  • the first client 210 may be an apparatus for acquiring an actual surgery image and generating actual surgery information.
  • the first client 210 may be a device provided in the operating room (operating site).
  • it may correspond to the surgical robot 34 or the control unit 30 shown in FIG. 1, or may be provided in the operating room as a separate device and connected to the surgical robot 34 or the control unit 30.
  • the first client 210 may access the relay server 200 and transmit the actual surgery information generated at the time of operation to the relay server 200. In addition, the first client 210 may receive various information generated by another client from the relay server 200.
  • the actual surgery image may mean data obtained as the actual medical staff performs the surgery.
  • it may be an image of an actual surgical scene actually performed by the surgical robot 34.
  • the actual surgical image is data recorded on the surgical site and the operation during the actual surgical procedure.
  • the actual surgery information is information obtained from an actual surgery image, and may include, for example, surgical site information of a patient, surgical tool information, and information about a camera.
  • the surgical site refers to a body part of the patient where the actual surgery is performed, and may be, for example, an organ or a blood vessel.
  • the surgical tool may be a tool used during surgery, for example, a tool required for performing a robotic operation or a consumable used during surgery.
  • the camera is a device for photographing an actual surgical scene.
  • the camera may be installed in an operating room to photograph a surgical scene, or may be provided in an endoscope that enters a patient's body when performing a robotic surgery to photograph an internal body.
  • the first client 210 acquires a real surgery image from a camera or an external device included in a surgical robot, recognizes a surgical site, a surgical tool, and a camera from the acquired real surgery image, and based on the actual surgery information. Can be generated. That is, the first client 210 may generate the type and position information of the surgical site, the type, position, direction, and movement information of the surgical tool, the position and movement direction of the camera, and the like from the actual surgical image. Thereafter, the first client 210 may transmit the generated actual surgery information to the relay server 200, and provide the generated actual surgery information to other clients connected to the relay server 200.
  • the second client 220 may be an apparatus for generating virtual surgery information by performing virtual surgery.
  • the second client 220 may be a device provided in an operating room (operating site) or a remote location, for example, rehearsing or simulating a virtual body model modeled the same as the patient (ie, a patient). It may be a simulator capable of performing an action.
  • the virtual surgery refers to a virtual surgery that performs rehearsal or simulation on a virtual body model that is implemented in the same manner as the physical state based on the medical image data (eg, CT, MRI, PET images, etc.) of the subject.
  • the virtual surgery information is information obtained based on the image data on which the rehearsal or simulation is performed on the virtual body model in the virtual space, and may include simulation data.
  • the simulation data may include surgical site information, surgical tool information, and information about a camera of a surgical subject. That is, the virtual surgery information may include all the information included in the data recorded for the surgical operation performed on the virtual body model.
  • the virtual body model may be 3D modeling data generated based on medical image data previously photographed inside the body of the subject.
  • the model may be modeled in accordance with the body of the surgical subject, and may be corrected to the same state as the actual surgical state.
  • the second client 220 may access the relay server 200 and transmit the virtual surgery information generated by performing the virtual surgery to the relay server 200.
  • the second client 220 may receive various information generated by another client from the relay server 200.
  • the second client 220 receives the actual surgery information generated by the first client 210 from the relay server 200 and performs virtual surgery based on the received actual surgery information to perform virtual surgery information. Can be generated.
  • the second client 220 receives the actual surgery information (eg, position, direction, and movement information of the surgical tool) obtained by performing the actual surgery on the first client 210 through the relay server 200. Since it can be transmitted in real time, the second client 220 can provide the surgical medical staff with more accurate virtual surgery information reflecting the actual surgery information in real time. Therefore, since the surgical medical staff can use both the information of the first client 210 and the second client 220 through the relay server 200, it is possible to effectively perform the actual surgery for the surgical subject.
  • the actual surgery information eg, position, direction, and movement information of the surgical tool
  • the third client 230 may be a device for generating surgery guide information corresponding to the actual surgery image.
  • the third client 230 may be a device provided in the operating room (operation site) or a remote location, for example, when a specific event occurs during the operation may generate the surgical guide information in response thereto.
  • another medical staff may access the third client 230 at the request of the medical staff performing the surgery in the operating room (operation site). In this case, by performing communication between the third client 230 through the relay server 200, other medical staff can provide information about the surgery to the medical staff performing the surgery in the operating room (operation site) in real time.
  • the third client 230 may access the relay server 200 to transmit the surgical guide information generated by the third client 230 to the relay server 200, and receive various information generated from other clients from the relay server 200. .
  • the third client 230 may monitor the surgical situation according to the information (ie, actual surgery information and virtual surgery information) provided by the other clients 210 and 220 from the relay server 200. .
  • the third client 230 may recognize whether a specific event occurs during the surgery based on the monitoring, and generate surgery guide information corresponding thereto.
  • the third client 230 may automatically recognize whether a specific event occurs and generate surgery guide information determined according to the specific event.
  • the medical staff may monitor the actual surgical situation through the third client 230 to recognize that a specific event occurs, and input surgery guide information corresponding thereto.
  • Relay server 200 in addition to the above-described first, second, third client (210, 220, 230) can additionally connect the necessary client in accordance with the operation, and transmit and receive information between these clients It can play a role in controlling it.
  • the relay server 200 serves to relay the communication between the client, the intermediate intervention through the relay server 200 during the actual operation to perform Can be.
  • the relay server 200 may monitor the actual surgical process in real time.
  • the relay server 200 since the relay server 200 can obtain the surgical information from all the clients, it is possible to derive information about the entire surgical procedure. Accordingly, the relay server 200 may record the entire surgical procedure in order through such surgical information to form historical information about the corresponding surgery.
  • FIG. 3 is a flowchart illustrating a method of building surgery information using a relay server according to an embodiment of the present invention. The method of FIG. 3 may be performed in the surgical information building system shown in FIG. 2.
  • the relay server 200 may generate at least one client required as a group in operation.
  • the relay server 200 may generate clients required for actual surgery as a group based on a specific patient, or may receive a group request signal directly from a client and create a group in response thereto.
  • the relay server 200 may automatically determine whether the relay server belongs to the corresponding group and process the client to access the group.
  • the relay server 200 may transmit and receive information between clients in the group as the surgery proceeds. A detailed operation process thereof will be described below.
  • the first client 210 may acquire an actual surgery image and generate real surgery information corresponding to the obtained actual surgery image (S100).
  • the first client 210 obtains a real surgery image from a camera or an external device included in the surgical robot, and recognizes a surgical site, a surgical tool, and a camera from the acquired real surgery image, based on the actual surgery.
  • Information can be generated.
  • the actual surgical information may include surgical site information (e.g., type and location information of the surgical site), surgical tool information (e.g., type, position, direction, and movement information of the surgical tool), and camera information (e.g., camera). Location and motion information), and the like.
  • the first client 210 may transmit the actual surgery information to the relay server 200 (S105), and the relay server 200 may store the actual surgery information received from the first client 210 in the database ( S110).
  • the relay server 200 may transmit the actual surgery information to at least one client (eg, the second client 220 or / and the third client 230) in the same group (S115).
  • at least one client eg, the second client 220 or / and the third client 230
  • the second client 220 may perform virtual surgery to generate virtual surgery information (S120).
  • the second client 220 receives the actual surgery information generated by the first client 210 through the relay server 200 and performs virtual surgery based on the received actual surgery information to perform virtual surgery. Information can be generated.
  • the second client 220 may transmit the virtual surgery information to the relay server 200 (S125), and the relay server 200 may store the virtual surgery information received from the second client 220 in a database ( S130).
  • the relay server 200 may transmit the virtual surgery information to at least one client (eg, the first client 210 or / and the third client 230) in the same group (S135).
  • the third client 230 may monitor the surgery situation based on the surgery information on the surgery subject received through the relay server 200, and may generate the surgery guide information based on the monitoring result (S140).
  • the third client 230 generates a specific event during the surgery based on the actual surgery information of the first client 210 and the virtual surgery information of the second client 220 received from the relay server 200. Whether or not, and generate surgical guide information corresponding thereto.
  • the third client 230 may acquire the actual surgical image through the relay server 200 and provide the same to the medical staff to directly generate the surgical guide information corresponding to the actual surgical image. In this case, the third client 230 may receive the surgical guide information from the medical staff, and transmit it to the relay server 200.
  • the third client 230 may transmit the surgical guide information to the relay server 200 (S145), the relay server 200 may store the surgical guide information received from the third client 230 in the database ( S150).
  • the relay server 200 may transmit the surgical guide information to at least one client (eg, the first client 210 or / and the second client 220) in the same group (S155).
  • at least one client eg, the first client 210 or / and the second client 220
  • the relay server 200 acts as a relay to transmit and receive information between the clients belonging to the group as the operation performed on the operation target object, and stores the transmitted and received information in the database Can be.
  • the relay server 200 may perform learning to build learning data and provide an optimized surgical process by using various surgical information on the operation targets stored in the database.
  • the relay server 200 may generate cue sheet data about a surgical procedure of a surgery target subject based on various surgery information received from a client (S160).
  • the relay server 200 may include at least one of actual surgery information of the first client 210, virtual surgery information of the second client 220, and surgery guide information of the third client 230. Based on the cue sheet data for the surgical procedure of the surgical subject can be generated.
  • the cue sheet data may refer to data recorded in order by dividing a specific surgical procedure into detailed surgical operations.
  • the detailed surgical operation may be a minimum operation unit constituting the surgical process, and may be divided by various criteria.
  • the detailed operation may include the type of surgery (e.g., laparoscopic surgery, robotic surgery, etc.), the anatomical body area on which the surgery is performed, the surgical tools used, the number of surgical tools, the direction or location of the surgical tools on the screen. This may be based on the movement of the surgical tool (e.g., forward / retract, etc.).
  • the relay server 200 can grasp the information on the criteria for dividing the detailed operation through the actual surgery information, the virtual surgery information, the operation guide information, and the like stored in the database, the cue sheet data corresponding to the actual surgery of the patient Can be built accurately.
  • the relay server 200 may form a history of the entire surgical procedure by simply generating the cue sheet data.
  • the relay server 200 may perform step S165.
  • the relay server 200 may calculate the optimized cue sheet data corresponding to the surgical process of the surgical subject by performing the learning based on the cue sheet data (S165).
  • the relay server 200 may configure the actual surgery information, virtual surgery information, surgery guide information, and the like stored in the database as the training data, or may configure the cue sheet data itself as the training data. Thereafter, the relay server 200 may perform learning based on the learning data and calculate an optimized surgical process for the surgical target.
  • the learning method may be a machine learning method such as supervised learning, unsupervised learning, reinforcement learning, for example, deep learning learning method.
  • the relay server 200 may store the optimized cuesheet data in a database and provide the optimized cuesheet data to at least one client in the group. Accordingly, the at least one client may use the surgical subject's surgery based on the received optimized cuesheet data.
  • the relay server 200 calculates the optimized cue sheet data by performing the learning based on the training data, but according to the embodiment, the relay server 200 stores the actual surgical information and the virtual surgery stored in the database.
  • Information, surgery guide information, etc. ie, learning data
  • learning data may be provided to an external server, and learning may be performed based on the learning data in the external server.
  • the embodiment of the present invention may implement a virtual body model of the surgical subject based on the cue sheet data for the surgical subject generated in step S160 or / and step S165, or conversely the operation of the surgery performed on the surgical subject You can also implement an image.
  • surgical information can be collected from various clients in real time at the time of an actual operation, so that surgical medical staff can effectively proceed with the surgical procedure.
  • surgical medical staff can effectively proceed with the surgical procedure.
  • since the operation can be performed through a variety of surgical information and surgical system as compared to the case of performing the operation only by the surgical medical staff, it is possible to perform a more accurate operation.
  • the surgical information can be transmitted and received to each other through the relay server.
  • each client since each client only needs to perform communication through a relay server, even if the number of clients increases, communication between each other can be easily performed, and an additional load does not occur. Thus, increasing the number of clients does not affect performance.
  • FIG. 4 is a diagram schematically showing the configuration of an apparatus 300 for performing surgery information construction according to an embodiment of the present invention.
  • the processor 310 may include a connection passage (for example, a bus or the like) that transmits and receives signals with one or more cores (not shown) and a graphic processor (not shown) and / or other components. ) May be included.
  • a connection passage for example, a bus or the like
  • the processor 310 executes one or more instructions stored in the memory 320 to perform the surgery information construction method described with reference to FIGS. 2 and 3.
  • the processor 310 receives the actual surgery information on the actual surgery image from the first client, transmits the actual surgery information to the second client by executing one or more instructions stored in the memory 320, and the second client.
  • the virtual surgery information generated based on the actual surgery information may be received from the client, and the actual surgery information and the virtual surgery information may be stored.
  • the processor 310 may read random access memory (RAM) and read-only memory (ROM) for temporarily and / or permanently storing a signal (or data) processed in the processor 310. , Not shown) may be further included.
  • the processor 310 may be implemented in the form of a system on chip (SoC) including at least one of a graphic processor, a RAM, and a ROM.
  • SoC system on chip
  • the memory 320 may store programs (one or more instructions) for processing and controlling the processor 310. Programs stored in the memory 320 may be divided into a plurality of modules according to their functions.
  • the surgical information building method according to an embodiment of the present invention described above may be implemented as a program (or an application) and stored in a medium to be executed in combination with a computer which is hardware.
  • a computer includes all the various devices capable of performing arithmetic processing to provide a result to a user.
  • a computer can be a desktop PC, a notebook, as well as a smartphone, a tablet PC, a cellular phone, a PCS phone (Personal Communication Service phone), synchronous / asynchronous The mobile terminal of the International Mobile Telecommunication-2000 (IMT-2000), a Palm Personal Computer (PC), a Personal Digital Assistant (PDA), and the like may also be applicable.
  • a head mounted display (HMD) device includes a computing function
  • the HMD device may be a computer.
  • the computer may correspond to a server that receives a request from a client and performs information processing.
  • FIG. 5 is a flowchart illustrating a method of generating artificial data according to an embodiment of the present invention.
  • the method of FIG. 5 is described as being performed by a computer for the convenience of description, the subject of each step is not limited to a specific device but may be used to encompass a device capable of performing computing processing. That is, in the present embodiment, the computer may mean an apparatus capable of performing the artificial data generating method according to the embodiment of the present invention.
  • obtaining a background image and an object image (S100), and combining the background image and an object image to generate artificial data (S110). ) May be included.
  • S100 a background image and an object image
  • S110 an object image to generate artificial data
  • the computer may acquire a background image and an object image (S100).
  • the background image and the object image may be part or the entire image area included in the actual surgery image.
  • the actual surgery image may be data obtained by the actual medical staff performing the surgery.
  • medical staff may perform surgery directly on a patient, or perform minimally invasive surgery using a surgical robot, a laparoscope, an endoscope, or the like.
  • an actual surgical image obtained by photographing organs, surgical instruments, and the like in the body may be obtained in a surgical procedure, or data recorded on a surgical operation performed in the surgical procedure may be acquired.
  • the background image may include a specific area inside the body taken by the endoscope camera.
  • the image data may be image data obtained by photographing a specific region including organs (eg, liver, heart, uterus, brain, breast, abdomen, etc.), blood vessels, and tissues in the body.
  • the object image may be image data including surgical instruments or blood (including bleeding out of the blood vessels due to blood vessel damage).
  • the computer may acquire an object image or a background image from an actual surgical image including an object and a background (ie, a background including a specific area inside the body).
  • the computer may acquire the object image from the actual surgical image including only the object or the background image from the actual surgical image including only the background.
  • the computer may generate various artificial data using the object image or the background image obtained from the actual surgical image. Specific embodiments thereof will be described with reference to FIGS. 7 to 10.
  • the computer may acquire the actual surgical image in units of frames or in units of sequences, which are sets of consecutive frames.
  • the computer may generate an artificial data by acquiring an actual surgical image by one frame and extracting an object image including the surgical tool therefrom. have.
  • the computer acquires an actual surgical image in a sequence unit consisting of a plurality of frames and extracts an object image including blood or bleeding from the artificial data. Can be generated.
  • the computer inputs the actual surgical image including the object image in sequence units (ie, continuous frames) to the generator to be described later, and accordingly, the generator inputs artificial data in sequence units (ie, continuous frames). Can be generated and printed.
  • artificial data may be generated in units of frames or sequences according to the type of object.
  • object images are acquired in sequence units as in the case of generating artificial data including blood or bleeding. Artificial data can be generated.
  • artificial data may be generated by acquiring an actual surgical image in a frame unit or a sequence unit as a change of an object occurs.
  • the computer acquires a real surgery image that changes in a specific object, for example, to acquire a real surgery image performing a specific surgery operation according to the movement of the surgical tool or the surgical tool in a continuous frame
  • the computer may continuously extract an object image including a specific object (eg, a surgical tool) from consecutive frames to generate artificial data reflecting a change in movement of the specific object (eg, a surgical tool).
  • the artificial data may be generated in a continuous frame according to a change of a specific object.
  • the computer may extract a background image from the actual surgical image in response to the movement change of a specific object (eg, a surgical tool).
  • a specific object eg, a surgical tool
  • the computer continuously extracts the object image and the background image according to the change of the movement of a specific object (for example, a surgical tool), and generates continuous artificial data by sequentially combining the continuous object image and the background image. You may. Therefore, by extracting and reflecting the background image corresponding to the change of the object, it is possible to generate more artificial data.
  • the computer may generate artificial data by combining the background image and the object image (S110).
  • the computer is based on the placement relationship between objects in the object image (e.g. surgical instruments, blood, bleeding, etc.) and specific areas within the body (e.g. organs, blood vessels, tissues, etc.) within the background image.
  • objects in the object image e.g. surgical instruments, blood, bleeding, etc.
  • specific areas within the body e.g. organs, blood vessels, tissues, etc.
  • artificial data may be generated by combining the object image and the background image to approximate the actual surgical image.
  • the arrangement relationship may be information derived based on information such as a shape, a location, a direction or a camera photographing direction, a type and a number of backgrounds and objects in each image.
  • the computer may generate artificial data through learning by using a generator and a discriminator. This will be described in detail with reference to FIG. 6.
  • FIG. 6 is a view for explaining a method of generating artificial data based on learning according to an embodiment of the present invention.
  • the computer in generating artificial data by combining the object and the background based on the arrangement relationship between the object in the object image and the background in the background image, the computer may generate the artificial data closer to the actual surgical image. Learning can be done.
  • the computer may perform the learning by using the generator 200 and the discriminator 210.
  • the generator 200 and the discriminator 210 may operate by competing with each other using a generative adversarial network (GAN) based learning scheme.
  • GAN generative adversarial network
  • the generator 200 trains a generation model using a real surgery image, and based on the trained generation model, artificial data close to the actual input data (actual surgery image) 220. And 230.
  • the generator 200 may generate artificial data by combining a background image and an object image obtained from each actual surgical image using a generation model.
  • the discriminator 210 trains a discrimination model to discriminate whether the artificial data 230 generated by the generator 200 is real data or artificial data. At this time, the discriminator 210 may train the discrimination model to discriminate the authenticity of the artificial data 230 based on the actual surgical image 240 corresponding to the artificial data. The discriminator 210 may retrain the generated model based on the learned discrimination model.
  • the discriminator 210 may determine whether the artificial data 230 generated by the generator 200 is real data or artificial data using the discrimination model. If the discriminator 210 determines that the artificial data is not real, that is, the generator 200 does not deceive the discriminator 210, the generator 200 may not deceive the discriminator 210. You can retrain the generation model in a way that reduces. The generator 200 may generate improved artificial data through relearning the generation model. On the contrary, in the case where it is determined that the discriminator 210 is the actual data, that is, when the discriminator 210 is deceived by the generator 200, the discriminator 210 reduces the discrimination model in the direction of reducing the error rate (error). You can relearn. This process is repeated in the generator 200 and the discriminator 210, thereby making artificial data close to reality.
  • the computer may construct a training data set for learning a learning model for recognizing a surgical image. .
  • Surgical images can only be obtained through actual surgical procedures, and often contain only limited scenes.
  • surgery is performed on a specific surgical site, and since surgery is performed using a surgical tool determined according to the surgical site or the surgical purpose, it is difficult to secure a surgical image including various surgical tools or surgical sites. . Therefore, when learning is performed using such a surgical image, it is difficult to construct sufficient learning data using only the actual surgical image obtained during the actual surgery.
  • the present invention by generating artificial data almost no difference from the actual surgical image, it can be provided as the learning data of the learning model to perform the learning using the surgical image.
  • FIGS. 7 to 10 are diagrams for explaining embodiments of a method for generating artificial data based on learning according to an embodiment of the present invention.
  • FIG. 7 illustrates a first embodiment of generating artificial data using first and second actual surgical images including an object and a background.
  • the computer may acquire a first real surgery image 300 including an object and a background, and a second real surgery image 310 including an object and a background.
  • the computer may extract the object image or the background image included in each of the first real surgery image 300 and the second real surgery image 310, and combine them to generate artificial data.
  • the computer may extract the background image in the first real surgery image 300 and the object image in the second real surgery image 310.
  • the computer may generate artificial data 330 close to the actual surgical image by using the generated model (ie, the generator) 320 to extract the extracted background image and the object image.
  • the computer may use the background in the background image (ie, organs, blood vessels, tissues, etc., present in a specific area of the body) and the objects in the object image (ie, surgical instruments). Background image and object image can be combined based on the arrangement relationship between the blood, blood, and bleeding.
  • the computer may provide an object segmentation 311 in the second real surgery image 310 to the generation model 320 together with the second real surgery image 310 as a correct answer. Since the generation model 320 is trained through the object segmentation 311 which is the correct answer, it is possible to generate artificial data closer to the actual surgical image.
  • the computer may provide the artificial data 330 generated by the generation model 320 to the discrimination model (ie, the discriminator) 350.
  • the differential model 350 may determine the authenticity of the artificial data 330 based on the actual surgical image 340 corresponding to the artificial data 330.
  • the computer may additionally provide the object segmentation 331 in the artificial data 330 and the object segmentation 341 in the actual surgical image 340 to learn the differential model 350.
  • the computer may relearn the generation model 320 or the differential model 350 according to the determination result of the differential model 350. For example, when it is determined that the artificial data 330 is artificial data rather than actual data, the computer may relearn the generated model 320. On the contrary, when it is determined that the artificial data 330 is real data, the computer may relearn the differential model 350.
  • the computer may extract the object image in the first real surgery image 300, extract the background image in the second real surgery image 310, and generate artificial data. Since a detailed process thereof is similar to that described with reference to FIG. 7, the description thereof will be omitted.
  • artificial data is generated by using an actual surgical image including different objects, which is performed on rare objects (eg, surgical instruments, blood or bleeding) that do not appear well at the time of surgery. You can accumulate images. In addition, manual labeling can replace expensive segmentation data with artificial data, thereby saving costs.
  • rare objects eg, surgical instruments, blood or bleeding
  • FIG. 8 is a second embodiment of generating artificial data using a first real surgery image including only an object and a second real surgery image including both an object and a background.
  • the computer may acquire a first real surgery image 400 including only an object and a second real surgery image 410 including both an object and a background.
  • the computer may extract the object image from the first real surgery image 400 and the background image from the second real surgery image 410.
  • the computer may generate artificial data 430 close to the actual surgical image by using the generation model (ie, the generator) 420 of the extracted background image and the object image.
  • the computer may use the background in the background image (ie, organs, blood vessels, tissues, etc., present in a specific area of the body) and the objects in the object image (ie, surgical instruments). Background image and object image can be combined based on the arrangement relationship between the blood, blood, and bleeding.
  • the background in the background image ie, organs, blood vessels, tissues, etc., present in a specific area of the body
  • the objects in the object image ie, surgical instruments. Background image and object image can be combined based on the arrangement relationship between the blood, blood, and bleeding.
  • the computer may provide the artificial data 430 generated by the generation model 420 to the discrimination model (ie, the discriminator) 450.
  • the differential model 450 may determine the authenticity of the artificial data 430 based on the actual surgical image 440 corresponding to the artificial data 430.
  • the computer may additionally provide the object segmentation 431 in the artificial data 430 and the object segmentation 441 in the actual surgical image 440 to learn the differential model 450.
  • the computer may relearn the generation model 420 or the differential model 450 according to the determination result of the differential model 450. For example, when it is determined that the artificial data 430 is artificial data rather than real data, the computer may relearn the generated model 320. On the contrary, when it is determined that the artificial data 430 is real data, the computer may relearn the differential model 450.
  • flexibility for generating artificial data can be increased, and surgical images for various objects can be accumulated.
  • various types of surgical tool images, surgical images with different positions, directions, and arrangements of surgical tools can be obtained.
  • FIG. 9 is a third embodiment of generating artificial data using a first real surgery image including only a background and a second real surgery image including both an object and a background.
  • the computer may acquire a first real surgery image 500 including only a background and a second real surgery image 510 including both an object and a background.
  • the computer may extract the background image from the first real surgery image 500 and the object image from the second real surgery image 510.
  • the computer may generate artificial data 530 close to the actual surgical image by using the generated model (ie, generator) 520 of the extracted background image and the object image.
  • the computer may use the background in the background image (ie, organs, blood vessels, tissues, etc., present in a specific area of the body) and the objects in the object image (ie, surgical instruments). Background image and object image can be combined based on the arrangement relationship between the blood, blood, and bleeding.
  • the background in the background image ie, organs, blood vessels, tissues, etc., present in a specific area of the body
  • the objects in the object image ie, surgical instruments. Background image and object image can be combined based on the arrangement relationship between the blood, blood, and bleeding.
  • the computer may provide the object segmentation 511 in the second actual surgery image 510 with the second actual surgery image 510 as a correct answer to the generation model 520. Since the generation model 520 is trained through the object segmentation 511 which is the correct answer, the generation model 520 may generate artificial data closer to the actual surgical image.
  • the computer may provide the artificial data 530 generated by the generation model 520 to the discrimination model (ie, discriminator) 550.
  • the differential model 550 may determine the authenticity of the artificial data 530 based on the actual surgical image 540 corresponding to the artificial data 530.
  • the computer may additionally provide an object segmentation 531 in the artificial data 530 and an object segmentation 541 in the actual surgical image 540 to learn the differential model 550.
  • the computer may relearn the generation model 520 or the differential model 550 according to the determination result of the differential model 550. For example, when it is determined that the artificial data 530 is artificial data rather than actual data, the computer may relearn the generated model 520. On the contrary, if it is determined that the artificial data 530 is real data, the computer may relearn the differential model 550.
  • FIG. 10 is a fourth embodiment of generating artificial data using a first real surgery image including only a background and a second real surgery image including only an object.
  • the computer may acquire a first real surgery image 600 including only a background and a second real surgery image 610 including only an object.
  • the computer may extract the background image from the first real surgery image 600 and the object image from the second real surgery image 610.
  • the computer may generate artificial data 630 close to the actual surgical image by using the generated model (ie, generator) 620 of the extracted background image and the object image.
  • the computer may use the background in the background image (ie, organs, blood vessels, tissues, etc., present in a specific area of the body) and the objects in the object image (ie, surgical instruments). Background image and object image can be combined based on the arrangement relationship between the blood, blood, and bleeding.
  • the background in the background image ie, organs, blood vessels, tissues, etc., present in a specific area of the body
  • the objects in the object image ie, surgical instruments. Background image and object image can be combined based on the arrangement relationship between the blood, blood, and bleeding.
  • the computer may provide the artificial data 630 generated by the generation model 620 to the discrimination model (ie, discriminator) 650.
  • the differential model 650 may determine the authenticity of the artificial data 630 based on the actual surgical image 640 corresponding to the artificial data 630.
  • the computer may additionally provide the object segmentation 631 in the artificial data 630 and the object segmentation 641 in the actual surgical image 640 to learn the differential model 650.
  • the computer may relearn the generation model 620 or the differential model 650 according to the determination result of the differential model 650. For example, when it is determined that the artificial data 630 is artificial data rather than real data, the computer may relearn the generated model 620. On the contrary, when it is determined that the artificial data 630 is real data, the computer may relearn the differential model 650.
  • a surgical image including various objects and various internal body spaces may be acquired.
  • various types of surgical images may be obtained by freely arranging information on necessary surgical tools or organs, blood vessels, tissues, and the like.
  • the artificial data is generated by acquiring an actual surgical image (background image) including only a background.
  • the actual surgical image including only the background does not include an object such as a surgical tool and includes only a background image.
  • the computer may acquire image frames photographed at a specific position inside the body by the endoscope camera, and remove the object image such as a surgical tool from the image frames to generate a background image including only the background area.
  • the computer may use an image frame obtained by the endoscope entering the body during the operation using the endoscope. In this case, an image frame having only a background image not including an object such as a surgical tool may be obtained.
  • the computer may extract an image frame including only a background from an image frame obtained by a camera entering the body during minimally invasive surgery such as laparoscopic or robotic surgery.
  • minimally invasive surgery the operation of the first area is completed and the camera and the surgical tool are also moved from the first area to the second area when the operation is performed by moving to the second area.
  • the surgical tool does not move when the camera moves due to the nature of the surgery. Accordingly, when moving from the first area to the second area, the camera moves first and then the surgical tool moves, so that the camera moved first to the second area may acquire an image frame without the surgical tool.
  • the computer may construct the training data using artificial data generated from the above embodiments.
  • artificial data may be used as training data for training a training model for image recognition. Therefore, according to an embodiment of the present invention, by providing artificial surgical images generated with artificial surgery, deep learning, machine learning, etc. which requires a large amount of learning data together with the actual surgical images, sufficient learning effects can be obtained.
  • FIG. 11 is a schematic diagram of a system capable of performing robot surgery according to an embodiment of the present invention.
  • the robotic surgical system includes a medical imaging apparatus 10, a server 100, a control unit 30 provided in an operating room, a display 32, and a surgical robot 34.
  • the medical imaging apparatus 10 may be omitted in the robot surgery system according to the disclosed embodiment.
  • surgical robot 34 includes imaging device 36 and surgical instrument 38.
  • the robot surgery is performed by the user controlling the surgical robot 34 using the control unit 30. In one embodiment, the robot surgery may be automatically performed by the controller 30 without the user's control.
  • the server 100 is a computing device including at least one processor and a communication unit.
  • the controller 30 includes a computing device including at least one processor and a communication unit.
  • the control unit 30 includes hardware and software interfaces for controlling the surgical robot 34.
  • the imaging device 36 includes at least one image sensor. That is, the imaging device 36 includes at least one camera device and is used to photograph an object, that is, a surgical site. In one embodiment, the imaging device 36 includes at least one camera coupled with a surgical arm of the surgical robot 34.
  • the image photographed by the photographing apparatus 36 is displayed on the display 340.
  • surgical robot 34 includes one or more surgical tools 38 that can perform cutting, clipping, fixing, grabbing operations, and the like, of the surgical site.
  • Surgical tool 38 is used in conjunction with the surgical arm of the surgical robot 34.
  • the controller 30 receives information necessary for surgery from the server 100 or generates information necessary for surgery and provides the information to the user. For example, the controller 30 displays the information necessary for surgery, generated or received, on the display 32.
  • the user performs the robot surgery by controlling the movement of the surgical robot 34 by manipulating the control unit 30 while looking at the display 32.
  • the server 100 generates information necessary for robotic surgery using medical image data of an object previously photographed from the medical image photographing apparatus 10, and provides the generated information to the controller 30.
  • the controller 30 displays the information received from the server 100 on the display 32 to provide the user, or controls the surgical robot 34 by using the information received from the server 100.
  • the means that can be used in the medical imaging apparatus 10 is not limited, for example, other various medical image acquisition means such as CT, X-Ray, PET, MRI may be used.
  • data including various surgical information may be acquired in a surgical image photographed in a surgical process or a control process of a surgical robot.
  • artificial data may be generated by acquiring the object image or the background image as described above based on the surgical information (ie, the surgical image) obtained in the robot surgery.
  • the surgical information ie, the surgical image
  • utilizing the surgical image obtained in the robot surgery process is just one example, the present invention is not limited thereto.
  • minimally invasive surgery using a laparoscope, endoscope, or the like, and a surgical image obtained when a medical staff directly operates on a patient may also be used to generate artificial data.
  • FIG. 12 is a diagram schematically showing the configuration of an apparatus 700 for performing a method of generating artificial data according to an embodiment of the present invention.
  • the processor 710 may include a connection passage (eg, a bus or the like) that transmits and receives a signal with one or more cores (not shown) and a graphic processor (not shown) and / or other components. ) May be included.
  • a connection passage eg, a bus or the like
  • the processor 710 executes one or more instructions stored in the memory 720 to perform the artificial data generation method described with reference to FIGS. 5 to 10.
  • the processor 710 may acquire a background image and an object image by executing one or more instructions stored in the memory 720, and generate artificial data by combining the background image and the object image.
  • the processor 710 may include random access memory (RAM) and read-only memory (ROM) for temporarily and / or permanently storing a signal (or data) processed in the processor 710. , Not shown) may be further included.
  • the processor 710 may be implemented in the form of a system on chip (SoC) including at least one of a graphic processor, a RAM, and a ROM.
  • SoC system on chip
  • the memory 720 may store programs (one or more instructions) for processing and controlling the processor 710. Programs stored in the memory 720 may be divided into a plurality of modules according to their functions.
  • the artificial data generation method according to an embodiment of the present invention described above may be implemented as a program (or an application) and stored in a medium to be executed in combination with a computer which is hardware.
  • a computer includes all the various devices capable of performing arithmetic processing to provide a result to a user.
  • a computer can be a desktop PC, a notebook, as well as a smartphone, a tablet PC, a cellular phone, a PCS phone (Personal Communication Service phone), synchronous / asynchronous The mobile terminal of the International Mobile Telecommunication-2000 (IMT-2000), a Palm Personal Computer (PC), a Personal Digital Assistant (PDA), and the like may also be applicable.
  • a head mounted display (HMD) device includes a computing function
  • the HMD device may be a computer.
  • the computer may correspond to a server that receives a request from a client and performs information processing.
  • FIG. 13 is a schematic diagram of a system capable of performing robot surgery according to an embodiment of the present invention.
  • the robotic surgical system includes a medical imaging apparatus 10, a server 100, a control unit 30 provided in an operating room, a display 32, and a surgical robot 34.
  • the medical imaging apparatus 10 may be omitted in the robot surgery system according to the disclosed embodiment.
  • surgical robot 34 includes imaging device 36 and surgical instrument 38.
  • the robot surgery is performed by the user controlling the surgical robot 34 using the control unit 30. In one embodiment, the robot surgery may be automatically performed by the controller 30 without the user's control.
  • the server 100 is a computing device including at least one processor and a communication unit.
  • the controller 30 includes a computing device including at least one processor and a communication unit.
  • the control unit 30 includes hardware and software interfaces for controlling the surgical robot 34.
  • the imaging device 36 includes at least one image sensor. That is, the imaging device 36 includes at least one camera device and is used to photograph an object, that is, a surgical site. In one embodiment, the imaging device 36 includes at least one camera coupled with a surgical arm of the surgical robot 34.
  • the image photographed by the photographing apparatus 36 is displayed on the display 340.
  • surgical robot 34 includes one or more surgical tools 38 that can perform cutting, clipping, fixing, grabbing operations, and the like, of the surgical site.
  • Surgical tool 38 is used in conjunction with the surgical arm of the surgical robot 34.
  • the controller 30 receives information necessary for surgery from the server 100 or generates information necessary for surgery and provides the information to the user. For example, the controller 30 displays the information necessary for surgery, generated or received, on the display 32.
  • the user performs the robot surgery by controlling the movement of the surgical robot 34 by manipulating the control unit 30 while looking at the display 32.
  • the server 100 generates information necessary for robotic surgery using medical image data of an object previously photographed from the medical image photographing apparatus 10, and provides the generated information to the controller 30.
  • the controller 30 displays the information received from the server 100 on the display 32 to provide the user, or controls the surgical robot 34 by using the information received from the server 100.
  • the means that can be used in the medical imaging apparatus 10 is not limited, for example, other various medical image acquisition means such as CT, X-Ray, PET, MRI may be used.
  • Computer performs a method of generating learning data based on a surgical image according to an embodiment disclosed herein.
  • Computer may mean the server 100 or the controller 30 of FIG. 13, but is not limited thereto.
  • the term "computer” may be used to mean a device capable of performing computing processing.
  • the computer may be a computing device provided separately from the device shown in FIG. 13.
  • the embodiments disclosed below may not be applicable only in connection with the robotic surgery system illustrated in FIG. 13, but may be applied to all kinds of embodiments that may acquire and utilize a surgical image in a surgical procedure.
  • it can be applied in connection with minimally invasive surgery such as laparoscopic surgery or endoscopic surgery.
  • FIG. 14 is a flowchart schematically illustrating a method of generating learning data based on a surgical image according to an embodiment of the present invention.
  • acquiring a surgical image including a plurality of image frames (S100), each of the plurality of image frames Recognizing surgical recognition information from the step (S200), and for each of the plurality of image frames, a relational expression representing a relationship between the surgical element (surgical element) included in the surgical recognition information based on the surgical recognition information (Relational) Representation) may include the step of generating (S300).
  • the computer may acquire a surgical image including a plurality of image frames (S100).
  • the medical staff may perform the actual surgery on the patient directly, as well as laparoscopes or endoscopes, including the surgical robot as described in FIG. Minimally invasive surgery may be performed.
  • the computer may acquire a surgical image photographing a scene including a surgical operation performed in the surgical procedure, a surgical tool related thereto, a surgical site, and the like.
  • the computer may acquire a surgical image photographing a scene including a surgical site and a surgical tool that is currently undergoing surgery from a camera entering the patient's body.
  • the surgical image may include one or more image frames.
  • Each image frame may represent a scene in which a surgical operation is performed, including a surgical site, a surgical tool, and the like of a surgical subject.
  • the surgical image may be composed of image frames in which a surgical operation is recorded for each scene (scene) according to time during the surgical procedure.
  • the surgical image may be composed of image frames that record each surgical scene according to the spatial movement such as the surgical site or the position of the camera during the surgery.
  • the surgical image may be composed of all image frames including the entire surgical procedure, or may be in the form of at least one video clip divided according to a specific classification criterion.
  • the computer may acquire a surgical image in the form of a video clip, or may obtain a surgical image including all or part of a surgical procedure and divide the surgical image into at least one video clip.
  • the computer may acquire a surgical image including all or part of a surgical procedure and divide the surgical image into at least one video clip according to a specific classification criterion.
  • the computer may divide the surgical image according to the time course of the surgery, or may divide the surgical image according to the position or state change of the surgical site based on the surgical site during the surgery.
  • the computer may segment the surgical image based on the position of the camera or the moving range of the camera during the operation, or divide the surgical image based on the change (eg replacement) of the surgical tool during the operation. You may.
  • the computer may segment the surgical image based on image frames formed of a series of surgical operations in relation to the surgical operation.
  • each operation may be predetermined surgery stages classified according to a specific classification criteria. In this case, the computer may segment the surgical image based on the surgical stage.
  • the computer may recognize surgical recognition information from each of the plurality of image frames in the acquired surgical image (S200).
  • each image frame in the surgical image includes surgery related information.
  • it includes various surgical-related information such as surgical instruments, surgical operations, surgical sites (ie, body parts such as organs, blood vessels, tissues), and bleeding. Therefore, in the present invention, each element that can be recognized as surgery related information from an image frame is defined as a surgical element.
  • the surgical element may be a concept corresponding to the object, but in the present invention, a wide concept encompassing not only an object but also information such as an operation, a function, and a state related to the object.
  • the computer may extract surgical recognition information determined as a surgical element from each of the plurality of image frames.
  • the surgical recognition information refers to the surgical element information recognized from the image frame, for example, surgical instruments, surgical operations, body parts, bleeding, surgical stages, surgery time (eg, remaining surgery time, surgery time, etc.), and camera It may include at least one surgical element of information (eg, camera position, angle, direction, movement, etc.).
  • the computer may derive the position information of the surgical element in the surgical recognition information extracted from each of the plurality of image frames.
  • the position information of the surgical element may be region information where the surgical element is located on the image frame.
  • the position information of the surgical element may be calculated based on the coordinate information on the 2D space or the coordinate information on the 3D space in the image frame.
  • the computer may generate relational representation information indicating a relationship between surgical elements included in each surgical recognition information based on the surgical recognition information recognized for each of the plurality of image frames (S300).
  • the computer may include the first image based on the plurality of surgical elements extracted from the first image frame among the plurality of image frames (eg, the first to nth image frames) and the position information on the plurality of surgical elements. It may be determined whether a correlation exists between a plurality of surgical elements in the frame. Next, the computer may generate relationship expression information for the first image frame based on the correlation between the plurality of surgical elements. The computer generates relationship expression information for not only the first image frame but also the second to nth image frames in the surgical image in the same manner.
  • the computer may determine whether or not there is a correlation between the plurality of surgical elements based on the relationship information on the predefined surgical elements.
  • the relationship information on the predefined surgical element may be information set based on at least one of the type of surgical element, location information of the surgical element, state information of the surgical element, and operation information of the surgical element.
  • surgical tools, surgical operations, body parts, bleeding status, surgical steps, surgery time, camera information, etc. can be defined as a surgical element.
  • Each defined surgical element may further include additional information such as location information, state information, and operation information according to the type of surgical element.
  • the type of surgical tool can be determined according to the surgical site, and the operation can be determined according to each surgical tool operating state information such as open (close), energy (close), the presence of energy, contact, etc. have. Whether or not bleeding may have color information based on the bleeding point.
  • the computer may preset, as relational information, each surgical element and additional information determined according to the type of each surgical element. Accordingly, the computer may recognize each surgical element from the first image frame and grasp relationship information about each recognized surgical element.
  • the computer when the computer extracts the surgical tool and the surgical site from the first image frame, the computer identifies correlation information between the specific surgical tool and the specific surgical site based on the predefined relationship information, and the correlation between the two surgical elements. Can be determined to exist.
  • the computer extracts the surgical tool from the first image frame
  • the correlation between the surgical tool and the surgical operation exists by grasping the relationship information on the specific surgical tool and its operation based on the predefined relationship information. You can judge.
  • the computer may determine that there is a correlation between the plurality of surgical elements. For example, if the computer extracts the body organs and surgical instruments from the first image frame, and recognizes that the extracted body organs and surgical instruments are present at the same location, a positional correlation exists between the two surgical elements. You can judge.
  • the computer may determine that the positional correlation exists, for example, when the surgical tool is exerting a specific motion on the corresponding organ or when the surgical tool is in contact with the organ.
  • the computer may generate relationship expression information for the first image frame based on whether there is a correlation between a plurality of surgical elements recognized from the first image frame.
  • the computer may generate relational expression information by mapping each surgical element and information about each surgical element.
  • the relational expression information may be generated in the form of a matrix.
  • Each surgical element may be arranged corresponding to a row and a column, and information derived based on a correlation between each surgical element may be represented as an element of a matrix.
  • the computer may generate relational expression information for the second to nth image frames in the surgical image in the same manner as the first image frame as described above.
  • FIG. 15 is a diagram illustrating a process of generating relationship expression information by recognizing surgical recognition information from an image frame according to an embodiment of the present invention.
  • FIG. 15 illustrates a process of recognizing surgical recognition information from the first image frame 200 in the surgical image and generating it as the relational expression information 300.
  • the computer may recognize each surgical element by applying an image recognition technology using deep learning from the first image frame 200.
  • the computer may apply various individual recognition techniques according to the characteristics of each surgical element. For example, the computer extracts feature information (eg, a feature map) from the first image frame 200, and uses a body feature (eg, texture feature information that expresses color or texture). Body organs such as liver, stomach, and blood vessels) and bleeding.
  • the computer may recognize a surgical instrument, a surgical operation, or the like using the feature information about the shape.
  • the computer may recognize the operation by using the location feature information between the surgical elements.
  • the computer may recognize camera information (eg, motion information such as camera angle and movement), a surgery step, a surgery operation, a surgery time, and the like by using feature information between the plurality of image frames.
  • the computer may derive position information on each surgical element recognized from the first image frame 200.
  • the computer may divide the first image frame 200 into at least one region, and calculate position information of each surgical element based on a region where each surgical element exists among the divided regions.
  • the computer may divide the space in the first image frame 200 into at least one region based on two-dimensional or three-dimensional coordinate information, and for each divided region, a specific coordinate value (for example, a center point of each region) ) Or index value to use as location information of each area.
  • the computer may divide the first image frame 200 into nine regions and assign index values of 0 to 8 to each divided region to use the position information. .
  • the computer determines that the surgical element 'gauze' recognized from the first image frame 200 is located in the index 0, 1 region among the divided regions, and then the position information of the surgical element 'gauze' based on the index 0, 1 Can be calculated.
  • Position information of each surgical element may be calculated in the same manner with respect to other surgical elements (for example, two surgical instruments and surgical regions) recognized from the first image frame 200.
  • the computer may generate the relationship expression information 300 based on each surgical element recognized from the first image frame 200 and position information of each surgical element.
  • the computer may configure the relational expression information 300 in a matrix form. Each surgical element may be arranged in each row and each column, and relationship information between corresponding surgical elements may be represented in each component value of the matrix.
  • the relationship expression information 300 of the first image frame 200 may be represented by a matrix.
  • each row and each column may be arranged from surgical element a to surgical element s.
  • the operation element a is the operation stage
  • the surgical elements b to h surgical instruments the surgical elements i to l body parts
  • the surgical elements m to q surgical operation the surgical element r is bleeding
  • the surgical element s is camera information, etc. It can be defined as.
  • the i th column of the i th row of the matrix may represent position information of a corresponding surgical element (eg, a surgical element, b surgical element, etc.).
  • the j th column of the i th row of the matrix may represent relationship information between the surgical elements arranged in the i th row and the surgical elements arranged in the j th column.
  • the specific surgical tool the surgical tool defined as the surgical element b, for example, 'Harmonics'
  • the specific surgical operation the surgical element m are defined.
  • Information about a surgical operation for example, open / grap.
  • other specific values may be assigned to the components of the matrix to represent the relationship information. For example, when an event related to a surgical element occurs or implies such an event, such as camera information or an operation step, the matrix component for the corresponding surgical element is used instead of the position information or relationship information of the corresponding surgical element. Information related to the event may be given.
  • the computer may repeatedly perform the process as described with reference to FIG. 15 for each image frame in the surgical image. That is, the computer may recognize a surgical element for each image frame in the surgical image and generate relational expression information based on the recognized surgical element.
  • 16 is a diagram illustrating relationship expression information generated for a plurality of image frames in a surgical image according to an embodiment of the present invention.
  • the computer may generate relationship expression information for each of a plurality of image frames in a surgical image.
  • each relationship expression information since each relationship expression information expresses the relationship information between a plurality of surgical elements at the same time, it may have tensor information.
  • the computer may generate the relation expression information generated from the plurality of image frames in the form of a tensor.
  • the computer may express a relationship between the plurality of image frames by grouping the plurality of image frames based on a temporal size of the tensor.
  • relational expression information based on a plurality of image frames such as camera information or a surgical step
  • the computer when it is necessary to generate relational expression information based on a plurality of image frames, such as camera information or a surgical step, the computer generates a group of a specific number of image frames and generates each relational expression information in the form of a tensor, and the camera information.
  • information related to the surgical stage may be related to image frames and may be represented by a tensor.
  • the relation expression information may be generated for each image frame in the surgical image, and the learning data may be constructed based on the generated relation expression information.
  • learning may be performed to derive a specific learning result based on the learning data constructed as described above.
  • 17 is a diagram illustrating an example of a process of performing learning based on relationship expression information generated for a plurality of image frames in a surgical image according to an embodiment of the present invention.
  • the computer may generate relational expression information for each image frame in the surgical image, and construct learning data based on the generated relational expression information (S400).
  • the labeling learning in constructing the learning data by generating the relationship expression information for each image frame in the surgical image, may be performed by a medical staff, or the labeling learning may be automatically performed by a computer.
  • semi-supervised learning may be performed.
  • the computer may label each image frame by applying various individual recognition techniques (eg, body organ recognition, surgical tool recognition, bleeding recognition, surgical motion recognition, camera movement recognition, etc.) according to the characteristics of each surgical element as described above. Extracted information and relationship expression information can be generated based on the extracted information.
  • the computer may derive a specific learning result by performing learning based on the learning data (S500).
  • the specific learning result is a specific learning model by constructing a specific learning model by performing learning using the learning data generated according to an embodiment of the present invention as an input value, and obtaining a result of the learning that can be obtained as an output value of the specific learning model.
  • the computer may determine that the learning result is to derive the relationship expression information according to the embodiment of the present invention. That is, the computer may learn about the newly input image frame based on the previously constructed learning data (relational expression information), and acquire the relationship expression information on the newly input image frame as a result of the learning.
  • the computer may perform learning by using the learning data generated according to an embodiment of the present invention as an input value to acquire a variety of learning results such as recognizing a surgical procedure through a surgical image or recognizing the meaning of a surgical operation. Can be.
  • the computer may use image frames as an input value for deriving a specific learning result together with the learning data generated according to the embodiment of the present invention.
  • the computer may learn a plurality of image frames in the surgical image by using a convolutional neural network (CNN), and may acquire feature information of each image frame (S410).
  • the computer may generate the relationship expression information for the plurality of image frames in the surgical image to obtain the training data (S400).
  • the computer may finally perform the learning based on the feature information and the relationship expression information of each image frame, and may obtain a specific output value as a result of the learning (S500).
  • the present invention it is possible to obtain more meaningful information through the image frame by defining various surgical elements that can be recognized from the image frame, and grasping the relationship information between the surgical elements as well as the information on each surgical element itself. .
  • the present invention rather than generating learning data for building a learning model, it provides the basis data for building a variety of learning models. In addition, by providing such basic learning data, the learning data may be increased to obtain more improved learning results.
  • FIG. 18 is a diagram schematically illustrating a configuration of an apparatus 400 for performing a method for generating learning data based on a surgical image according to an embodiment of the present invention.
  • the processor 410 may include a connection passage (for example, a bus or the like) that transmits and receives signals with one or more cores (not shown) and a graphics processor (not shown) and / or other components. ) May be included.
  • a connection passage for example, a bus or the like
  • the processor 410 executes one or more instructions stored in the memory 420 to perform a method of generating learning data based on the surgical image described with reference to FIGS. 14 to 17.
  • the processor 410 may acquire a surgical image including a plurality of image frames by executing one or more instructions stored in the memory 420, recognizing surgical recognition information from each of the plurality of image frames, and For each of the plurality of image frames, generating relational representation information representing a relationship between surgical elements included in the surgical recognition information based on the surgical recognition information.
  • the processor 410 may include random access memory (RAM) and read-only memory (ROM) for temporarily and / or permanently storing a signal (or data) processed in the processor 410. , Not shown) may be further included.
  • the processor 210 may be implemented in the form of a system on chip (SoC) including at least one of a graphic processor, a RAM, and a ROM.
  • SoC system on chip
  • the memory 420 may store programs (one or more instructions) for processing and controlling the processor 410. Programs stored in the memory 420 may be divided into a plurality of modules according to their functions.
  • the method for generating learning data based on the surgical image according to the exemplary embodiment of the present invention described above may be implemented as a program (or an application) and stored in a medium to be executed in combination with a computer which is hardware.
  • a computer includes all the various devices capable of performing arithmetic processing to provide a result to a user.
  • a computer can be a desktop PC, a notebook, as well as a smartphone, a tablet PC, a cellular phone, a PCS phone (Personal Communication Service phone), synchronous / asynchronous The mobile terminal of the International Mobile Telecommunication-2000 (IMT-2000), a Palm Personal Computer (PC), a Personal Digital Assistant (PDA), and the like may also be applicable.
  • a head mounted display (HMD) device includes a computing function
  • the HMD device may be a computer.
  • the computer may correspond to a server that receives a request from a client and performs information processing.
  • 19 is a flowchart schematically illustrating a method of providing blood vessel information using a blood vessel model according to an embodiment of the present invention.
  • the subject of each step is not limited to a specific device but may be used to encompass a device capable of performing computing processing. That is, in the present embodiment, the computer may mean an apparatus capable of performing the method of providing blood vessel information using the blood vessel model according to the embodiment of the present invention.
  • a method of providing blood vessel information using a blood vessel model may include obtaining a blood vessel polygon constituting a blood vessel in a blood vessel model (S100), the blood vessel polygon information, and the Comprising the step of configuring the training data based on the connection information of the vascular polygon (S200), and classifying the blood vessels based on the learning data (S300).
  • S100 blood vessel polygon constituting a blood vessel in a blood vessel model
  • S200 the blood vessel polygon information
  • S300 the learning data
  • the computer may acquire a blood vessel polygon constituting a blood vessel in the blood vessel model (S100).
  • the computer may generate a 3D blood vessel model based on medical image data of the inside of the body of the object (eg, the patient).
  • the medical image data is a medical image photographed by a medical image photographing apparatus and includes all medical images that can be implemented as a three-dimensional model of the body of the object.
  • the medical image data may include a computed tomography (CT) image, a magnetic resonance imaging (MRI), a positron emission tomography (PET) image, and the like.
  • CT computed tomography
  • MRI magnetic resonance imaging
  • PET positron emission tomography
  • the computer may extract the blood vessel of the patient from the medical image data and 3D model the extracted blood vessel.
  • the computer may sequentially extract arteries and veins from the medical image data, and 3D model the vessel models including the arteries and the vessel models including the veins, respectively, and then match them.
  • the blood vessel model may be a polygon model of 3D modeling by constructing at least one polygon of blood vessels extracted from the medical image data.
  • the computer can obtain at least one polygon constituting the vessel from the 3D vessel model.
  • Polygon refers to a polygon, which is the smallest unit used to express a three-dimensional shape of an object in 3D computer graphics, and polygons may be gathered to represent a 3D object (ie, a blood vessel).
  • the computer may obtain a 3D blood vessel model pre-built for the subject and obtain at least one polygon constituting the blood vessel therefrom.
  • the computer may construct and store the 3D blood vessel model in advance, or may acquire and use a 3D blood vessel model generated by another device.
  • the computer may obtain at least one vascular polygon constituting the blood vessel from the 3D modeled vascular model using the polygon.
  • the computer may configure learning data for each of the acquired at least one vascular polygon based on the vascular polygon information and the connection information of the vascular polygon (S200).
  • the computer may construct training data based on its own information about each vascular polygon in the 3D vascular model and connection information with adjacent polygons connected thereto.
  • the vascular polygon information may include a position vector of the vascular polygon and blood vessel information of the vascular polygon.
  • the connection information of the vascular polygon may include adjacent polygons adjacent to the vascular polygon, and position vector difference information between the adjacent polygon and the vascular polygon.
  • the computer can obtain the vascular polygon itself information from the vascular polygon.
  • the computer may derive the position vector and vessel information of the vessel polygon.
  • the computer may calculate a position vector of the vascular polygon based on a predetermined reference vessel point in the 3D vessel model. For example, the computer may set a representative branching point or an easily distinguishable vessel of a vessel, such as a celiac trunk or a celiac axis, in the 3D vessel model as a reference vessel point. The computer may set the set reference vessel point as a reference point (eg, an origin point) in the coordinate space, and calculate a position vector of the vessel polygon relative to the reference vessel point. At this time, the computer may calculate a position vector with respect to the midpoint in the vascular polygon. The midpoint of the vascular polygon can be calculated using the inner core, outer core, center of gravity, and the like.
  • the computer may derive the vessel information of the vessel polygon based on the predetermined artery and vein classification information. For example, the computer may use the vessel information classified in detail for the predefined arteries and veins as shown in Table 1 below to determine what the vessel types of the vessel polygon are. For example, the computer can obtain vascular information such as artery 'Aorta' or vein 'PV' for vascular polygons.
  • the computer may determine what the types of blood vessels of the blood vessel polygon are by using the color code information of the blood vessels to which the color information is assigned to the predefined arteries and veins as shown in Table 2 below.
  • the blood vessel classification result derived as a learning result about the blood vessel polygon may be confirmed by color information.
  • the computer can obtain the connection information from the vascular polygon to the adjacent polygon connected thereto.
  • the computer may acquire adjacent polygons adjacent to the vascular polygon and derive the position vector difference information with the adjacent polygons as connection information.
  • each vascular polygon may be a triangular polygon, and each triangular polygon may be considered a node.
  • the vascular polygon of node 2 since node 1 is adjacent to node 2, in the case of the vascular polygon of node 1, the vascular polygon of node 2 may be acquired as an adjacent polygon. In the case of the vascular polygon of the second node, the vascular polygons of the first and third nodes may be acquired as adjacent polygons.
  • the computer may derive the position vector difference from the vascular polygon as connection information by using the acquired position vector of the adjacent polygon.
  • the position vector of the adjacent polygon may be calculated with respect to the midpoint of the adjacent polygon based on the reference blood vessel point as described above.
  • the computer when deriving a position vector difference for a polygon centered on Y, acquires adjacent polygons adjacent thereto and calculates a position vector (X, Z, Q position vector) of each adjacent polygon. can do.
  • the computer may then calculate a difference vector between the position vectors (X, Z, Q position vectors) of the respective polygons and the position vectors of the polygons centered on Y. This may be calculated as in Equation 1 below.
  • the computer may derive connection information with major organs and use it as learning data.
  • the computer may acquire at least one reference organ, and derive the distance information between the obtained reference organ and the vascular polygon to construct the learning data.
  • the computer can acquire fixed-position organs, such as liver, heart, spleen, lung, kidney, etc., as reference organs.
  • the reference organ may be composed of 3D modeled polygons.
  • the computer may then place reference organs based on a predetermined reference vessel point in the 3D vessel model as a reference (eg, origin).
  • the computer may calculate a position vector for the reference organ based on the reference vessel point.
  • the computer may derive the distance information between the reference organ and the vascular polygon based on the calculated position vector of the reference organ and the position vector of the vascular polygon.
  • the computer For example, if the position vector of the reference organ is (x 1 , y 1 , z 1 ) and the position vector of the vascular polygon is (x 2 , y 2 , z 2 ), the computer generates distance information as shown in Equation 2 below. (d) can be calculated.
  • the position vector (x 2 , y 2 , z 2 ) of the vascular polygon may be the midpoint of the polygon.
  • the position vector (x 1 , y 1 , z 1 ) of a reference organ may be the center of the OBB when a cubic Oriented Bounding Box (OBB) is placed on the reference organ.
  • 22 is a diagram illustrating a process of calculating the midpoint of the OBB. Referring to FIG. 22, a computer may cover a hexahedron OBB corresponding to the organ.
  • the computer uses the two positions of the cube V1 (x 1 , y 1 , z 1 ) and V2 (x 2 , y 2 , z 2 ) As shown in Equation 3, the midpoint M (x 3 , y 3 , z 3 ) of the OBB can be calculated.
  • the computer may include the position vector of the vascular polygon, the vessel information of the vascular polygon (ie, the vessel type), the position vector of the adjacent polygon, the difference vector information between the adjacent polygon and the vascular polygon, and the distance information between the reference organ and the vascular polygon. At least one may be derived, and learning data may be constructed based on the at least one.
  • the computer may classify blood vessels based on the learning data (S300).
  • the computer may generate a vessel classification learning model for classifying vessels by performing learning based on the training data.
  • a computer can learn learning data through machine learning.
  • a map such as a decision tree, a K-nearest neighbor, a neural network, and a support vector machine (SVM) can be used. You can use learning. That is, the computer may generate a blood vessel classification learning model by performing supervised learning for classifying blood vessels based on the training data generated based on the blood vessel polygon.
  • the computer may perform learning to classify blood vessel types based on the learning data as described above.
  • the computer may derive the structure of the blood vessel as shown in FIG. 24 to be described later as a learning result, and may specify the type of blood vessel to which the blood vessel polygon belongs on the structure of the blood vessel.
  • FIG. 23 is a diagram illustrating a learning process for classifying blood vessel types according to one embodiment of the present invention.
  • FIG. 23 is a diagram illustrating types of hepatic artery (type 10, for example) according to shape.
  • the computer may use, as learning data, information classified by type of hepatic artery as shown in FIG. 23. In this case, the computer can perform the learning based on the shape of these vessels.
  • the computer may derive a hierarchical structure of blood vessels as shown in FIG. 25 to be described later as a learning result, and specify a hierarchy of blood vessels to which a vascular polygon belongs on the blood vessel hierarchy.
  • the computer may generate a blood vessel classification learning model by performing a learning process for classifying blood vessel types and a learning process for classifying blood vessel types, respectively.
  • the computer may generate a blood vessel classification learning model by simultaneously performing a learning process for classifying blood vessel types and a learning process for classifying blood vessel types.
  • the computer may perform the learning using the additional learning data.
  • the computer may acquire a 2D projection image of projecting a blood vessel corresponding to a blood vessel polygon in the 3D blood vessel model in a 2D space, and use the additional learning data.
  • the computer may extract 3D vessels corresponding to the vascular polygons in the 3D vessel model, and project the extracted 3D vessels in a two-dimensional space to a specific view to obtain a two-dimensional projection image.
  • the computer may obtain at least one two-dimensional projection image by projecting the extracted 3D blood vessel onto a two-dimensional space for at least one viewpoint corresponding to a predetermined range based on a specific viewpoint.
  • the computer may perform learning (eg, CNN) using the acquired two-dimensional projection image set as learning data. For example, the computer can learn what the vessel types are by using a two-dimensional projection image set.
  • the computer may obtain a new vascular polygon model and classify the blood vessels in the new vascular polygon model through the vascular classification learning model.
  • the computer may extract at least one vascular polygon from the new vascular polygon model.
  • the computer may obtain at least one of the extracted vector of the vascular polygon, the position vector of the vascular polygon, the adjacent polygon adjacent to the vascular polygon, the position vector of the adjacent polygon, and the distance information from the reference organ.
  • the computer may input information about the vascular polygon obtained in the vessel classification learning model, and may derive at least one of blood vessel type and vascular hierarchy information corresponding to the vascular polygon as a result of the output.
  • 24 and 25 are diagrams showing an example of blood vessel classification derived as a learning result according to an embodiment of the present invention.
  • Figure 24 (a) shows the structure of the main vein vessels
  • Figure 24 (b) shows the structure of the major arterial vessels
  • 25 shows the hierarchical structure of the aorta and its detailed arterial vessels.
  • the artery or vein type to which the vascular polygon belongs may be specified as a learning result through the vascular classification learning model.
  • the type of blood vessel to which the corresponding blood vessel polygon belongs in the blood vessel structure as shown in FIG. 24 (a) or FIG. 24 (b).
  • the type of blood vessel ie, the type of artery or vein
  • the hierarchical structure of blood vessels as shown in FIG. 25 may specify a hierarchy of blood vessels to which the corresponding blood vessel polygon belongs.
  • the present invention it is possible to accurately grasp geometric and hierarchical information of blood vessels by building a learning model for classifying blood vessels.
  • the simulation is performed using this, more accurate surgical simulation is possible because the vessel information about the arteries and veins located in the surgical target and the surroundings can be accurately provided.
  • the present invention is effective to classify blood vessels and stratify blood vessels by constructing training data based on connection information between one polygon and an adjacent polygon.
  • the present invention by using the position information of the polygon derived based on the reference vessel point and the reference organ, it is possible to build a more accurate vessel classification learning model, through which a higher recognition rate can be obtained.
  • FIG. 26 is a diagram schematically illustrating a configuration of an apparatus 200 for performing a method of providing blood vessel information using a blood vessel model according to an embodiment of the present invention.
  • the processor 210 may include a connection passage (eg, a bus or the like) that transmits and receives a signal with one or more cores (not shown) and a graphic processor (not shown) and / or other components. ) May be included.
  • a connection passage eg, a bus or the like
  • the processor 210 executes one or more instructions stored in the memory 220 to perform a method of providing blood vessel information using the blood vessel model described with reference to FIGS. 19 to 25.
  • the processor 210 acquires a blood vessel polygon constituting a blood vessel in a blood vessel model by executing one or more instructions stored in the memory 220, based on the blood vessel polygon information and connection information of the blood vessel polygon. And organizing the learning data, and classifying blood vessels by performing learning based on the learning data.
  • the processor 210 is a random access memory (RAM) and a ROM (Read-Only Memory) for temporarily and / or permanently storing signals (or data) processed in the processor 210. , Not shown) may be further included.
  • the processor 210 may be implemented in the form of a system on chip (SoC) including at least one of a graphic processor, a RAM, and a ROM.
  • SoC system on chip
  • the memory 220 may store programs (one or more instructions) for processing and controlling the processor 210. Programs stored in the memory 220 may be divided into a plurality of modules according to their functions.
  • the blood vessel information providing method using the blood vessel model according to the above-described embodiment of the present invention may be implemented as a program (or an application) to be executed by being combined with a computer which is hardware and stored in a medium.
  • the program may be read by the computer's processor (CPU) through the device interface of the computer in order for the computer to read the program and execute the methods implemented as the program.
  • Code that is coded in a computer language such as C, C ++, JAVA, or machine language.
  • Such code may include functional code associated with a function or the like that defines the necessary functions for executing the methods, and includes control procedures related to execution procedures necessary for the computer's processor to execute the functions according to a predetermined procedure. can do.
  • the code may further include memory reference code for additional information or media required for the computer's processor to execute the functions at which location (address address) of the computer's internal or external memory should be referenced. have.
  • the code may be used to communicate with any other computer or server remotely using the communication module of the computer. It may further include a communication related code for whether to communicate, what information or media should be transmitted and received during communication.
  • the stored medium is not a medium for storing data for a short time such as a register, a cache, a memory, but semi-permanently, and means a medium that can be read by the device.
  • examples of the storage medium include, but are not limited to, a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like. That is, the program may be stored in various recording media on various servers to which the computer can access or various recording media on the computer of the user. The media may also be distributed over network coupled computer systems so that the computer readable code is stored in a distributed fashion.
  • RAM random access memory
  • ROM read only memory
  • EPROM erasable programmable ROM
  • EEPROM electrically erasable programmable ROM
  • flash memory hard disk, removable disk, CD-ROM, or It may reside in any form of computer readable recording medium well known in the art.

Abstract

A relay server for constructing surgical information is provided. The relay server is for relaying communication between clients, and receives actual surgical information generated on the basis of an actual surgical image from a first client, transmits the received actual surgical information to a second client, receives virtual surgical information generated by performing a virtual surgery on the basis of the actual surgical information from the second client, and transmits the virtual surgical information to the first client.

Description

학습데이터 생성 방법 및 장치Method and device for generating learning data
본 발명은 학습데이터를 생성하는 방법 및 장치에 관한 것이다. The present invention relates to a method and apparatus for generating learning data.
의료수술은 개복수술(open surgery), 복강경 수술 및 로봇 수술을 포함하는 최소침습수술(MIS: Minimally Invasive Surgery), 방사선수술(radio surgery) 등으로 분류할 수 있다. 개복수술은 치료되어야 할 부분을 의료진이 직접 보고 만지며 시행하는 수술을 말하며, 최소침습수술은 키홀 수술(keyhole surgery)이라고도 하는데 복강경 수술과 로봇 수술이 대표적이다. 복강경 수술은 개복을 하지 않고 필요한 부분에 작은 구멍을 내어 특수 카메라가 부착된 복강경과 수술 도구를 몸속에 삽입하여 비디오 모니터를 통해서 관측하며 레이저나 특수기구를 이용하여 미세수술을 한다. 또한, 로봇수술은 수술로봇을 이용하여 최소 침습수술을 수행하는 것이다. 나아가 방사선 수술은 체외에서 방사선이나 레이저 광으로 수술 치료를 하는 것을 말한다.Medical surgery can be classified into open surgery, laparoscopic surgery, minimally invasive surgery (MIS) including radio surgery, radio surgery, and the like. Laparoscopic surgery refers to surgery performed by medical staff to see and touch the part to be treated. Minimally invasive surgery is also known as keyhole surgery, and laparoscopic surgery and robotic surgery are typical. In laparoscopic surgery, a small hole is made in a necessary part without opening, and a laparoscopic with a special camera is attached and a surgical tool is inserted into the body and observed through a video monitor. Microsurgery is performed using a laser or a special instrument. In addition, robot surgery is to perform minimally invasive surgery using a surgical robot. Furthermore, radiation surgery refers to surgical treatment with radiation or laser light outside the body.
이러한 의료수술의 경우, 실제 수술시 수술영상을 획득하여 이를 기초로 수술을 수행하는 경우가 많다. 따라서, 수술시에 획득되는 수술영상을 통해서 다양한 정보를 제공하여 주는 것이 중요하다. In the case of such a medical operation, a surgical image is often obtained at the time of the actual operation and the surgery is performed based on this. Therefore, it is important to provide a variety of information through the surgical image obtained at the time of surgery.
또한, 수술과정에서 의사의 수술을 보조하기 위한 정보를 제공할 수 있는 기술들의 개발이 요구되고 있다. 수술을 보조하기 위한 정보를 제공하기 위해서는, 수술과정에서 행해지는 수술행위나 다양한 수술정보를 인식하고 인식된 정보의 의미를 파악하는 것이 중요하다. 따라서, 컴퓨터가 수술영상으로부터 수술행위나 다양한 수술정보를 인식할 수 있는 기술의 개발이 요구된다. In addition, the development of technologies that can provide information to assist the surgeon in the surgery process is required. In order to provide information to assist the operation, it is important to recognize the operation performed in the operation process or various surgical information and to understand the meaning of the recognized information. Therefore, the development of a technology that allows the computer to recognize the operation or a variety of surgical information from the surgical image is required.
또한, 최근에는 의료영상의 분석에 딥 러닝이 널리 이용되고 있다. 딥 러닝은 여러 비선형 변환기법의 조합을 통해 높은 수준의 추상화(abstractions, 다량의 데이터나 복잡한 자료들 속에서 핵심적인 내용 또는 기능을 요약하는 작업)를 시도하는 기계학습 알고리즘의 집합으로 정의된다. 딥 러닝은 큰 틀에서 사람의 사고방식을 컴퓨터에게 가르치는 기계학습의 한 분야로 볼 수 있다.In recent years, deep learning has been widely used to analyze medical images. Deep learning is defined as a set of machine learning algorithms that attempts to achieve high levels of abstraction (summarizing key content or functions in large amounts of data or complex data) through a combination of several nonlinear transformations. Deep learning can be seen as a field of machine learning that teaches computers how people think in a large framework.
이러한 딥러닝, 기계학습 등을 이용하여 학습을 수행하는 경우, 대량의 학습 데이터가 필요하다. 그러나, 수술영상의 경우는 실제 수술과정에서 획득되기 때문에 데이터의 양이 적고 다양한 유형의 수술영상을 확보하기 힘들다.When learning using such deep learning and machine learning, a large amount of learning data is required. However, since the surgical image is obtained during the actual surgical procedure, the amount of data is small and it is difficult to secure various types of surgical images.
한편, 최근에는 의료진이 직접 수술을 수행하는 경우뿐만 아니라 다양한 방법을 활용하여 수술이 수행되고 있다. 예를 들어, 수술 로봇을 이용하는 로봇수술 시스템, 실제 수술 시와 동일한 가상 환경을 제공하여 가상수술을 시뮬레이션할 수 있도록 하는 가상수술 시스템, 수술 중에 원격으로 수술을 가이드할 수 있도록 하는 원격 수술 시스템 등 다양한 방법을 이용할 수 있다. 이에 따라, 실제 수술 시에 다양한 방법을 활용하여 수술과정을 진행할 수 있도록 하는 방법이 필요하다. On the other hand, in recent years, the surgery is performed using a variety of methods as well as the case where the medical staff directly perform the surgery. For example, a robotic surgery system using a surgical robot, a virtual surgery system that provides simulation of virtual surgery by providing the same virtual environment as in actual surgery, and a remote surgery system that can guide surgery remotely during surgery. Method can be used. Accordingly, there is a need for a method that allows the operation process to proceed by using various methods during actual surgery.
또한, 기존에는 수술 프로세스를 최적화 하기 위한 시나리오 구상을 위해서는 사전에 촬영된 의료영상을 참고하거나 매우 숙련된 의사의 자문을 받았으나, 의료영상만으로는 불필요한 프로세스의 판단이 어려웠으며 숙련된 의사의 자문은 특정 환자에 맞는 자문을 받기에 어려운 문제점이 있었다. 따라서, 의료영상이나 숙련된 의사의 자문은 수술대상 환자에 대한 수술 프로세스의 최적화를 위한 보조 용도로는 활용되기 어려운 점이 많았다.In addition, conventional scenarios for optimizing the surgical process were referred to previously taken medical images or consulted by highly skilled doctors, but medical images alone made it difficult to judge unnecessary processes. It was difficult to get the right advice. Therefore, medical imaging and the advice of an experienced doctor were often difficult to use as an aid for the optimization of the surgical process for the patient.
이에, 3차원 의료영상(예를 들어, 3차원 수술도구 움직임 및 도구의 움직임으로 인해 발생하는 장기 내부의 변화에 대한 가상영상)을 이용하여 수술을 행하는데 있어서 불필요한 프로세스를 최소화하여 수술 프로세스를 최적화하고, 이에 기반한 수술보조 정보를 제공할 수 있는 방법에 대한 개발이 요구된다. Thus, by optimizing the surgical process by minimizing unnecessary processes in performing surgery using a three-dimensional medical image (for example, a virtual image of the internal movement caused by the movement of the three-dimensional surgical instruments and tools) And, there is a need for the development of a method that can provide surgical assistance information based on this.
특히, 혈관을 포함하는 3차원 의료영상의 경우, 각 혈관의 위치 및 종류를 정확하게 제공함으로써, 혈관의 전체 계층구조 및 혈류의 흐름 등을 파악할 수 있도록 하여 수술 시나 시뮬레이션 시에 최적화된 수술 정보를 제공하는 방법이 필요하다. In particular, in the case of a three-dimensional medical image including blood vessels, by accurately providing the location and type of each blood vessel, it is possible to grasp the overall hierarchy of blood vessels and the flow of blood flow, etc. to provide optimized surgical information during surgery or simulation. How to do it.
본 발명이 해결하고자 하는 과제는 수술정보 구축 방법 및 장치를 제공하는 것이다.The problem to be solved by the present invention is to provide a surgical information construction method and apparatus.
본 발명이 해결하고자 하는 과제는 인공데이터 생성 방법 및 장치를 제공하는 것이다.The problem to be solved by the present invention is to provide an artificial data generating method and apparatus.
본 발명이 해결하고자 하는 과제는 실제수술영상으로부터 인공데이터를 생성하는 방법 및 장치를 제공하는 것이다. An object of the present invention is to provide a method and apparatus for generating artificial data from an actual surgical image.
본 발명이 해결하고자 하는 과제는 학습을 통해 실제수술영상과 가까운 인공데이터를 생성하는 방법 및 장치를 제공하는 것이다. The problem to be solved by the present invention is to provide a method and apparatus for generating artificial data close to the actual surgical image through learning.
본 발명이 해결하고자 하는 과제는 수술영상을 기초로 학습데이터를 생성하는 방법 및 장치를 제공하는 것이다.An object of the present invention is to provide a method and apparatus for generating learning data based on a surgical image.
본 발명이 해결하고자 하는 과제는 수술영상 내 포함된 다양한 수술정보를 인식하고, 인식한 수술정보 간의 관계를 표현하는 방법 및 장치를 제공하는 것이다.An object of the present invention is to provide a method and apparatus for recognizing various surgical information included in a surgical image and expressing a relationship between the recognized surgical information.
본 발명이 해결하고자 하는 과제는 수술영상으로부터 인식된 각 수술정보를 기초로 학습데이터를 생성하고, 생성된 학습데이터를 이용하여 학습 모델을 구축하는 방법 및 장치를 제공하는 것이다.The problem to be solved by the present invention is to provide a method and apparatus for generating training data based on each surgical information recognized from the surgical image, and to build a learning model using the generated training data.
본 발명이 해결하고자 하는 과제는 혈관 모델을 이용한 혈관 정보 제공 방법 및 장치를 제공하는 것이다.An object of the present invention is to provide a method and apparatus for providing blood vessel information using a blood vessel model.
본 발명이 해결하고자 하는 과제는 3D 혈관 모델 내 폴리곤 정보를 이용하여 학습데이터를 구성하고 혈관을 분류하는 학습을 수행하는 방법 및 장치를 제공하는 것이다.The problem to be solved by the present invention is to provide a method and apparatus for constructing the training data using the polygon information in the 3D blood vessel model and learning to classify blood vessels.
본 발명이 해결하고자 하는 과제는 혈관 분류 학습 모델을 통해 새로운 환자의 혈관 정보에 대해 혈관 종류 및 혈관 계층 구조를 파악하는 방법 및 장치를 제공하는 것이다. The problem to be solved by the present invention is to provide a method and apparatus for identifying the vessel type and vascular hierarchy for the vessel information of the new patient through the vessel classification learning model.
본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.Problems to be solved by the present invention are not limited to the above-mentioned problems, and other problems not mentioned will be clearly understood by those skilled in the art from the following description.
본 발명의 일 실시예에 따른 수술정보를 구축하는 중계서버는, 클라이언트 사이의 통신을 중계하되, 제1 클라이언트로부터 실제수술영상을 기반으로 생성된 실제수술정보를 수신하고, 상기 수신된 실제수술정보를 제2 클라이언트로 송신하고, 상기 제2 클라이언트로부터 상기 실제수술정보를 기반으로 가상수술을 수행하여 생성된 가상수술정보를 수신하고, 상기 가상수술정보를 상기 제1 클라이언트로 송신한다. The relay server for constructing surgery information according to an embodiment of the present invention, while relaying the communication between the client, receives the actual surgery information generated based on the actual surgery image from the first client, the received actual surgery information Transmits the virtual surgery information generated by performing a virtual surgery based on the actual surgery information from the second client, and transmits the virtual surgery information to the first client.
본 발명의 일 실시예에 따른 컴퓨터가 수행하는 인공데이터를 생성하는 방법은, 배경이미지 및 객체이미지를 획득하는 단계, 및 상기 배경이미지 및 상기 객체이미지를 결합하여 인공데이터를 생성하는 단계를 포함하며, 상기 배경이미지는, 내시경 카메라에 의해 촬영된 신체내부의 특정 영역을 포함하며, 상기 객체이미지는, 수술도구 또는 혈액을 포함하며, 상기 인공데이터는, 상기 객체이미지 내 수술도구 또는 혈액, 및 상기 배경이미지 내 신체내부의 특정 영역 사이의 배치 관계를 기반으로 실제수술영상과 근사하게 생성되는 것을 특징으로 한다. A method of generating artificial data performed by a computer according to an embodiment of the present invention includes obtaining a background image and an object image, and generating artificial data by combining the background image and the object image. The background image includes a specific area inside the body taken by the endoscope camera, and the object image includes a surgical tool or blood, and the artificial data includes a surgical tool or blood in the object image, and the It is characterized in that it is generated to approximate the actual surgical image based on the arrangement relationship between specific regions within the body in the background image.
본 발명의 일 실시예에 따른 컴퓨터가 수행하는 수술영상을 기초로 학습데이터를 생성하는 방법은, 복수의 영상프레임을 포함하는 수술영상을 획득하는 단계, 상기 복수의 영상프레임 각각으로부터 수술인식정보를 인식하는 단계, 및 상기 복수의 영상프레임 각각에 대해, 상기 수술인식정보를 기초로 상기 수술인식정보에 포함된 수술요소(surgical element) 간의 관계를 나타내는 관계표현(Relational Representation) 정보를 생성하는 단계를 포함한다.According to an embodiment of the present invention, a method for generating training data based on a surgical image performed by a computer may include obtaining a surgical image including a plurality of image frames, and performing surgery recognition information from each of the plurality of image frames. Recognizing, and generating, for each of the plurality of image frames, relational representation information representing a relationship between surgical elements included in the surgical recognition information based on the surgical recognition information. Include.
본 발명의 일 실시예에 따른 컴퓨터가 수행하는 혈관 모델을 이용한 혈관 정보 제공 방법은, 혈관 모델 내 혈관을 구성하는 혈관 폴리곤(polygon)을 획득하는 단계, 상기 혈관 폴리곤 정보 및 상기 혈관 폴리곤의 연결 정보를 기초로 학습데이터를 구성하는 단계, 및 상기 학습데이터를 기초로 하여 혈관을 분류하는 단계를 포함한다. In a method of providing blood vessel information using a vessel model performed by a computer according to an embodiment of the present invention, the method may include obtaining vessel vessel polygons constituting a vessel in a vessel model, the vessel vessel information and connection information of the vessel vessel. Comprising the learning data based on the step, and classifying the blood vessels based on the learning data.
본 발명의 실시예에 따르면, 실제 수술 시에 실시간으로 여러 클라이언트로부터 수술정보를 수집할 수 있어서 수술 의료진들이 효과적으로 수술과정을 진행할 수 있다. 또한, 본 발명의 실시예에 따르면, 수술 의료진에 의해서만 수술을 수행하는 경우에 비해서 보다 다양한 수술정보 및 수술 시스템을 통해 수술을 수행할 수 있으므로, 보다 정확한 수술을 집도할 수 있게 된다. According to an embodiment of the present invention, surgical information can be collected from various clients in real time at the time of an actual operation, so that surgical medical staff can effectively proceed with the surgical procedure. In addition, according to an embodiment of the present invention, since the operation can be performed through a variety of surgical information and surgical system as compared to the case of performing the operation only by the surgical medical staff, it is possible to perform a more accurate operation.
본 발명의 실시예에 따르면, 각 클라이언트별로 수술정보를 송수신하는 것이 아니라, 중계서버를 통해 상호 간의 수술 정보를 송수신할 수 있기 때문에 통신 부하를 줄일 수 있다. 또한, 각 클라이언트는 중계서버를 통해 통신을 수행하면 되므로, 클라이언트 수가 증가하더라도 용이하게 상호 간의 통신이 가능하고 추가적인 부하가 발생하지 않는 효과가 있다. 따라서, 클라이언트의 수가 증가하더라도 성능에 영향을 미치지 않는다. According to the embodiment of the present invention, rather than transmitting and receiving the surgical information for each client, it is possible to reduce the communication load because the surgical information can be transmitted and received to each other through the relay server. In addition, since each client only needs to perform communication through a relay server, even if the number of clients increases, communication between each other can be easily performed, and an additional load does not occur. Thus, increasing the number of clients does not affect performance.
본 발명의 실시예에 따르면, 중계서버를 통해 모든 수술 정보를 구축할 수 있으므로, 차후 학습 데이터로서 활용할 수 있다.According to the embodiment of the present invention, since all the surgical information can be constructed through the relay server, it can be used as learning data later.
본 발명에 따르면, 학습을 통해 실제수술영상과 가까운 인공데이터를 생성할 수 있다. According to the present invention, artificial data close to the actual surgical image can be generated through learning.
본 발명에 따르면, 인공데이터를 이용하여 학습 데이터를 구축할 수 있다. According to the present invention, learning data can be constructed using artificial data.
본 발명에 따르면, 대량의 학습 데이터가 필요한 인공지능, 딥러닝, 기계학습 등에 실제수술영상과 함께 인공으로 생성된 수술영상을 제공함으로써, 충분한 학습 효과를 얻을 수 있도록 한다.According to the present invention, a sufficient learning effect can be obtained by providing artificially generated surgical images together with actual surgical images, such as artificial intelligence, deep learning, and machine learning, which require a large amount of learning data.
본 발명에 따르면, 실제 수술 시에는 획득할 수 없는 다양한 수술 정보를 포함하는 인공으로 생성된 수술영상을 확보할 수 있다.According to the present invention, an artificially generated surgical image including various surgical information that cannot be obtained during actual surgery can be secured.
본 발명에 따르면, 영상프레임으로부터 인식될 수 있는 다양한 수술요소를 정의하고, 각 수술요소 자체에 대한 정보뿐만 아니라 수술요소들 간의 관계 정보를 파악함으로써 영상프레임을 통해 보다 의미있는 정보를 획득할 수 있다.According to the present invention, it is possible to obtain more meaningful information through the image frame by defining various surgical elements that can be recognized from the image frame, and grasping the relationship information between the surgical elements as well as the information on each surgical element itself. .
본 발명에 따르면, 하나의 학습 모델을 구축하기 위한 학습데이터를 생성하는 것이 아니라, 다양한 학습 모델을 구축할 수 있도록 하는 기저 데이터를 제공해 준다. 또한, 이러한 기저 학습용 데이터를 제공함으로써 학습데이터가 증가되어 보다 향상된 학습 결과를 얻을 수 있다. According to the present invention, rather than generating training data for building one learning model, it provides the basis data for building various learning models. In addition, by providing such basic learning data, the learning data may be increased to obtain more improved learning results.
본 발명에 따르면, 관계표현 정보를 통해 수술 시에 필요한 다양한 정보를 학습 목적에 맞게 유연하게 정의할 수 있고, 이에 따라 효과적인 학습을 수행할 수 있다.According to the present invention, it is possible to flexibly define various information necessary at the time of surgery through the relationship expression information according to the learning purpose, thereby performing effective learning.
본 발명에 따르면, 혈관 분류를 위한 학습 모델을 구축함으로써 혈관의 기하학적 정보 및 계층적 정보를 정확하게 파악할 수 있다. 또한, 이를 이용하여 시뮬레이션을 수행하는 경우, 수술 대상 및 주변에 위치하는 동맥 및 정맥에 대한 혈관 정보를 정확하게 제공해 줄 수 있으므로 보다 정밀한 수술 시뮬레이션이 가능하다. According to the present invention, it is possible to accurately grasp geometric and hierarchical information of blood vessels by building a learning model for classifying blood vessels. In addition, when the simulation is performed using this, more accurate surgical simulation is possible because the vessel information about the arteries and veins located in the surgical target and the surroundings can be accurately provided.
본 발명에 따르면, 하나의 폴리곤과 그에 인접한 인접 폴리곤과의 연결 정보를 기초로 학습데이터를 구성함으로써 혈관을 분류하고 혈관을 계층화하는데 효과적이다. According to the present invention, it is effective to classify blood vessels and stratify blood vessels by constructing training data based on connection information between one polygon and an adjacent polygon.
본 발명에 따르면, 기준 혈관 지점 및 기준 장기를 기초로 도출된 폴리곤의 위치 정보를 이용함으로써 보다 정확한 혈관 분류 학습 모델을 구축할 수 있고, 이를 통해 보다 인식률이 높은 학습 결과를 얻을 수 있다. According to the present invention, by using the position information of the polygon derived based on the reference vessel point and the reference organ, it is possible to build a more accurate vessel classification learning model, through which a higher recognition rate can be obtained.
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.Effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the following description.
도 1은 본 발명의 일 실시예에 따라 로봇수술을 수행할 수 있는 시스템을 간략하게 도식화한 도면이다.1 is a schematic diagram of a system capable of performing robot surgery according to an embodiment of the present invention.
도 2는 본 발명의 일 실시예에 따른 수술정보 구축 시스템의 구성을 개략적으로 나타내는 도면이다.2 is a view schematically showing the configuration of a surgical information building system according to an embodiment of the present invention.
도 3은 본 발명의 일 실시예에 따른 중계서버를 이용하여 수술정보를 구축하는 방법을 설명하기 위해 도시한 흐름도이다.3 is a flowchart illustrating a method of building surgery information using a relay server according to an embodiment of the present invention.
도 4는 본 발명의 일 실시예에 따른 수술정보 구축을 수행하는 장치(300)의 구성을 개략적으로 나타내는 도면이다.4 is a diagram schematically showing the configuration of an apparatus 300 for performing surgery information construction according to an embodiment of the present invention.
도 5는 본 발명의 일 실시예에 따른 인공데이터를 생성하는 방법을 도시한 흐름도이다. 5 is a flowchart illustrating a method of generating artificial data according to an embodiment of the present invention.
도 6은 본 발명의 일 실시예에 따른 학습을 기반으로 인공데이터를 생성하는 방법을 설명하기 위한 도면이다. 6 is a view for explaining a method of generating artificial data based on learning according to an embodiment of the present invention.
도 7 내지 도 10은 본 발명의 일 실시예에 따른 학습을 기반으로 인공데이터를 생성하는 방법의 실시예들을 설명하기 위해 도시된 도면이다. 7 to 10 are diagrams for explaining embodiments of a method for generating artificial data based on learning according to an embodiment of the present invention.
도 11은 본 발명의 일 실시예에 따라 로봇수술을 수행할 수 있는 시스템을 간략하게 도식화한 도면이다. 11 is a schematic diagram of a system capable of performing robot surgery according to an embodiment of the present invention.
도 12는 본 발명의 일 실시예에 따른 인공데이터 생성 방법을 수행하는 장치(700)의 구성을 개략적으로 나타내는 도면이다. 12 is a diagram schematically showing the configuration of an apparatus 700 for performing a method of generating artificial data according to an embodiment of the present invention.
도 13은 본 발명의 일 실시예에 따라 로봇수술을 수행할 수 있는 시스템을 간략하게 도식화한 도면이다.FIG. 13 is a schematic diagram of a system capable of performing robot surgery according to an embodiment of the present invention. FIG.
도 14는 본 발명의 일 실시예에 따른 수술영상을 기초로 학습데이터를 생성하는 방법을 개략적으로 도시한 흐름도이다. 14 is a flowchart schematically illustrating a method of generating learning data based on a surgical image according to an embodiment of the present invention.
도 15는 본 발명의 일 실시예에 따른 영상프레임으로부터 수술인식정보를 인식하여 관계표현 정보를 생성하는 과정을 설명하기 위해 도시한 도면이다.15 is a diagram illustrating a process of generating relationship expression information by recognizing surgical recognition information from an image frame according to an embodiment of the present invention.
도 16은 본 발명의 일 실시예에 따른 수술영상 내 복수의 영상프레임에 대해 생성된 관계표현 정보를 나타낸 도면이다.16 is a diagram illustrating relationship expression information generated for a plurality of image frames in a surgical image according to an embodiment of the present invention.
도 17은 본 발명의 일 실시예에 따른 수술영상 내 복수의 영상프레임에 대해 생성된 관계표현 정보를 기초로 학습을 수행하는 과정의 일례를 나타낸 도면이다.17 is a diagram illustrating an example of a process of performing learning based on relationship expression information generated for a plurality of image frames in a surgical image according to an embodiment of the present invention.
도 18은 본 발명의 일 실시예에 따른 수술영상을 기초로 학습데이터를 생성하는 방법을 수행하는 장치(400)의 구성을 개략적으로 나타내는 도면이다.18 is a diagram schematically illustrating a configuration of an apparatus 400 for performing a method for generating learning data based on a surgical image according to an embodiment of the present invention.
도 19는 본 발명의 일 실시예에 따른 혈관 모델을 이용한 혈관 정보 제공 방법을 개략적으로 도시한 흐름도이다.19 is a flowchart schematically illustrating a method of providing blood vessel information using a blood vessel model according to an embodiment of the present invention.
도 20 및 도 21은 본 발명의 일 실시예에 따른 혈관 폴리곤과 인접 폴리곤 사이의 연결 정보를 도출하는 과정을 설명하기 위해 도시된 도면이다. 20 and 21 are diagrams for explaining a process of deriving connection information between a vascular polygon and an adjacent polygon according to an embodiment of the present invention.
도 22는 OBB의 중점을 산출하는 과정을 설명하기 위해 도시된 도면이다.22 is a diagram illustrating a process of calculating the midpoint of the OBB.
도 23은 본 발명의 일 실시예에 따라 혈관 형태를 분류하는 학습 과정을 설명하기 위해 도시된 도면이다.FIG. 23 is a diagram illustrating a learning process for classifying blood vessel types according to one embodiment of the present invention.
도 24 및 도 25는 본 발명의 일 실시예에 따라 학습 결과로 도출되는 혈관 분류의 일례를 나타낸 도면이다. 24 and 25 are diagrams showing an example of blood vessel classification derived as a learning result according to an embodiment of the present invention.
도 26은 본 발명의 일 실시예에 따른 혈관 모델을 이용한 혈관 정보 제공 방법을 수행하는 장치(200)의 구성을 개략적으로 나타내는 도면이다.FIG. 26 is a diagram schematically illustrating a configuration of an apparatus 200 for performing a method of providing blood vessel information using a blood vessel model according to an embodiment of the present invention.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야의 통상의 기술자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.Advantages and features of the present invention and methods for achieving them will be apparent with reference to the embodiments described below in detail with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but can be embodied in various different forms, and the present embodiments only make the disclosure of the present invention complete, and those of ordinary skill in the art to which the present invention belongs. It is provided to fully inform the skilled worker of the scope of the invention, which is defined only by the scope of the claims.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. In this specification, the singular also includes the plural unless specifically stated otherwise in the phrase. As used herein, "comprises" and / or "comprising" does not exclude the presence or addition of one or more other components in addition to the mentioned components. Like reference numerals refer to like elements throughout, and "and / or" includes each and all combinations of one or more of the mentioned components. Although "first", "second", etc. are used to describe various components, these components are of course not limited by these terms. These terms are only used to distinguish one component from another. Therefore, of course, the first component mentioned below may be a second component within the technical spirit of the present invention.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless otherwise defined, all terms used in the present specification (including technical and scientific terms) may be used in a sense that can be commonly understood by those skilled in the art. In addition, terms that are defined in a commonly used dictionary are not ideally or excessively interpreted unless they are specifically defined clearly.
명세서에서 사용되는 "부" 또는 “모듈”이라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, "부" 또는 “모듈”은 어떤 역할들을 수행한다. 그렇지만 "부" 또는 “모듈”은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부" 또는 “모듈”은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부" 또는 “모듈”은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부" 또는 “모듈”들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부" 또는 “모듈”들로 결합되거나 추가적인 구성요소들과 "부" 또는 “모듈”들로 더 분리될 수 있다.As used herein, the term "part" or "module" refers to a hardware component such as software, FPGA, or ASIC, and the "part" or "module" plays certain roles. However, "part" or "module" is not meant to be limited to software or hardware. The “unit” or “module” may be configured to be in an addressable storage medium or may be configured to play one or more processors. Thus, as an example, a "part" or "module" may include components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, Procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables. Functions provided within components and "parts" or "modules" may be combined into smaller numbers of components and "parts" or "modules" or into additional components and "parts" or "modules". Can be further separated.
이하에서는 도 1 내지 도 4를 참조하여, 본 발명의 실시예에 따른 수술정보를 구축하는 중계서버 및 중계서버에 의해 수행되는 수술정보 구축 방법에 관해 상세히 설명한다. Hereinafter, with reference to Figures 1 to 4, it will be described in detail with respect to the operation information building method performed by the relay server and the relay server for establishing the surgical information according to an embodiment of the present invention.
본 명세서에서 "컴퓨터"는 연산처리를 수행하여 사용자에게 결과를 제공할 수 있는 다양한 장치들이 모두 포함된다. 예를 들어, 컴퓨터는 데스크 탑 PC, 노트북(Note Book) 뿐만 아니라 스마트폰(Smart phone), 태블릿 PC, 셀룰러폰(Cellular phone), 피씨에스폰(PCS phone; Personal Communication Service phone), 동기식/비동기식 IMT-2000(International Mobile Telecommunication-2000)의 이동 단말기, 팜 PC(Palm Personal Computer), 개인용 디지털 보조기(PDA; Personal Digital Assistant) 등도 해당될 수 있다. 또한, 헤드마운트 디스플레이(Head Mounted Display; HMD) 장치가 컴퓨팅 기능을 포함하는 경우, HMD장치가 컴퓨터가 될 수 있다. 또한, 컴퓨터는 클라이언트로부터 요청을 수신하여 정보처리를 수행하는 서버가 해당될 수 있다.As used herein, the term "computer" includes all the various devices capable of performing arithmetic processing to provide a result to a user. For example, a computer can be a desktop PC, a notebook, as well as a smartphone, a tablet PC, a cellular phone, a PCS phone (Personal Communication Service phone), synchronous / asynchronous The mobile terminal of the International Mobile Telecommunication-2000 (IMT-2000), a Palm Personal Computer (PC), a Personal Digital Assistant (PDA), and the like may also be applicable. In addition, when a head mounted display (HMD) device includes a computing function, the HMD device may be a computer. Also, the computer may correspond to a server that receives a request from a client and performs information processing.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명의 일 실시예에 따라 로봇수술을 수행할 수 있는 시스템을 간략하게 도식화한 도면이다.1 is a schematic diagram of a system capable of performing robot surgery according to an embodiment of the present invention.
도 1에 따르면, 로봇수술 시스템은 의료영상 촬영장비(10), 서버(100) 및 수술실에 구비된 제어부(30), 디스플레이(32) 및 수술로봇(34)을 포함한다. 실시 예에 따라서, 의료영상 촬영장비(10)는 개시된 실시 예에 따른 로봇수술 시스템에서 생략될 수 있다.According to FIG. 1, the robotic surgical system includes a medical imaging apparatus 10, a server 100, a control unit 30 provided in an operating room, a display 32, and a surgical robot 34. According to an embodiment, the medical imaging apparatus 10 may be omitted in the robot surgery system according to the disclosed embodiment.
일 실시 예에서, 수술로봇(34)은 촬영장치(36) 및 수술도구(38)를 포함한다.In one embodiment, surgical robot 34 includes imaging device 36 and surgical instrument 38.
일 실시 예에서, 로봇수술은 사용자가 제어부(30)를 이용하여 수술용 로봇(34)을 제어함으로써 수행된다. 일 실시 예에서, 로봇수술은 사용자의 제어 없이 제어부(30)에 의하여 자동으로 수행될 수도 있다.In one embodiment, the robot surgery is performed by the user controlling the surgical robot 34 using the control unit 30. In one embodiment, the robot surgery may be automatically performed by the controller 30 without the user's control.
서버(100)는 적어도 하나의 프로세서와 통신부를 포함하는 컴퓨팅 장치이다.The server 100 is a computing device including at least one processor and a communication unit.
제어부(30)는 적어도 하나의 프로세서와 통신부를 포함하는 컴퓨팅 장치를 포함한다. 일 실시 예에서, 제어부(30)는 수술용 로봇(34)을 제어하기 위한 하드웨어 및 소프트웨어 인터페이스를 포함한다.The controller 30 includes a computing device including at least one processor and a communication unit. In one embodiment, the control unit 30 includes hardware and software interfaces for controlling the surgical robot 34.
촬영장치(36)는 적어도 하나의 이미지 센서를 포함한다. 즉, 촬영장치(36)는 적어도 하나의 카메라 장치를 포함하여, 대상체, 즉 수술부위를 촬영하는 데 이용된다. 일 실시 예에서, 촬영장치(36)는 수술로봇(34)의 수술 암(arm)과 결합된 적어도 하나의 카메라를 포함한다.The imaging device 36 includes at least one image sensor. That is, the imaging device 36 includes at least one camera device and is used to photograph an object, that is, a surgical site. In one embodiment, the imaging device 36 includes at least one camera coupled with a surgical arm of the surgical robot 34.
일 실시 예에서, 촬영장치(36)에서 촬영된 영상은 디스플레이(340)에 표시된다.In an embodiment, the image photographed by the photographing apparatus 36 is displayed on the display 340.
일 실시 예에서, 수술로봇(34)은 수술부위의 절단, 클리핑, 고정, 잡기 동작 등을 수행할 수 있는 하나 이상의 수술도구(38)를 포함한다. 수술도구(38)는 수술로봇(34)의 수술 암과 결합되어 이용된다.In one embodiment, surgical robot 34 includes one or more surgical tools 38 that can perform cutting, clipping, fixing, grabbing operations, and the like, of the surgical site. Surgical tool 38 is used in conjunction with the surgical arm of the surgical robot 34.
제어부(30)는 서버(100)로부터 수술에 필요한 정보를 수신하거나, 수술에 필요한 정보를 생성하여 사용자에게 제공한다. 예를 들어, 제어부(30)는 생성 또는 수신된, 수술에 필요한 정보를 디스플레이(32)에 표시한다.The controller 30 receives information necessary for surgery from the server 100 or generates information necessary for surgery and provides the information to the user. For example, the controller 30 displays the information necessary for surgery, generated or received, on the display 32.
예를 들어, 사용자는 디스플레이(32)를 보면서 제어부(30)를 조작하여 수술로봇(34)의 움직임을 제어함으로써 로봇수술을 수행한다.For example, the user performs the robot surgery by controlling the movement of the surgical robot 34 by manipulating the control unit 30 while looking at the display 32.
서버(100)는 의료영상 촬영장비(10)로부터 사전에 촬영된 대상체의 의료영상데이터를 이용하여 로봇수술에 필요한 정보를 생성하고, 생성된 정보를 제어부(30)에 제공한다. The server 100 generates information necessary for robotic surgery using medical image data of an object previously photographed from the medical image photographing apparatus 10, and provides the generated information to the controller 30.
제어부(30)는 서버(100)로부터 수신된 정보를 디스플레이(32)에 표시함으로써 사용자에게 제공하거나, 서버(100)로부터 수신된 정보를 이용하여 수술로봇(34)을 제어한다.The controller 30 displays the information received from the server 100 on the display 32 to provide the user, or controls the surgical robot 34 by using the information received from the server 100.
일 실시 예에서, 의료영상 촬영장비(10)에서 사용될 수 있는 수단은 제한되지 않으며, 예를 들어 CT, X-Ray, PET, MRI 등 다른 다양한 의료영상 획득수단이 사용될 수 있다. In one embodiment, the means that can be used in the medical imaging apparatus 10 is not limited, for example, other various medical image acquisition means such as CT, X-Ray, PET, MRI may be used.
개시된 실시 예에서, 촬영장치(36)에서 획득되는 수술영상은 제어부(30)로 전달된다.In the disclosed embodiment, the surgical image obtained by the imaging device 36 is transmitted to the controller 30.
이하에서는, 클라이언트 사이의 정보를 송수신하도록 중계하는 중계서버를 이용하여 수술정보를 구축하는 과정에 대해 설명하도록 한다. 중계서버는 도 1의 서버(100)를 의미할 수도 있고, 또는 이와는 별도로 구축되어 도 1의 서버(100)와 연동하여 동작할 수도 있다. Hereinafter, a description will be given of the process of establishing the surgical information by using a relay server for transmitting and receiving information between the clients. The relay server may mean the server 100 of FIG. 1 or may be separately installed and operate in conjunction with the server 100 of FIG. 1.
최근에는 의료진이 수술실에서 직접 수술을 수행하는 경우뿐만 아니라, 수술 로봇이나 시뮬레이터를 이용하거나, 원격으로 수술을 가이드하는 등 여러가지 방법으로 수술을 수행할 수 있다. 이에 따라, 수술 시에 환자에게 보다 효과적이고 최적화된 수술을 제공하기 위해서 수술 시에 이용되는 여러가지 장치들을 연결하고 이들 사이의 정보를 송수신할 수 있도록 하는 방안이 필요하다. 따라서, 본 발명에서는 중계서버를 이용하여 각 장치들을 연결하고 이를 통해서 정보를 수집하고 활용하는 방법을 제공하고자 한다. In recent years, the medical staff may perform the surgery by various methods such as using a surgical robot or a simulator or guiding the operation remotely, as well as performing the surgery directly in the operating room. Accordingly, there is a need for a method of connecting various devices used during surgery and transmitting and receiving information therebetween to provide a more effective and optimized surgery to the patient during surgery. Therefore, the present invention is to provide a method for connecting each device using a relay server and through this to collect and utilize information.
도 2는 본 발명의 일 실시예에 따른 수술정보 구축 시스템의 구성을 개략적으로 나타내는 도면이다. 2 is a view schematically showing the configuration of a surgical information building system according to an embodiment of the present invention.
도 2를 참조하면, 본 발명의 일 실시예에 따른 수술정보 구축 시스템은 중계서버(200) 및 복수의 클라이언트를 포함할 수 있다. 일 실시예로, 도 2에서는 제1 클라이언트(210), 제2 클라이언트(220), 및 제3 클라이언트(230)를 포함하는 것으로 설명하나, 이는 하나의 예시일 뿐이며 본 발명이 이에 한정되는 것은 아니다. 물론, 도 2에 도시된 것보다 더 적거나 더 많은 수의 클라이언트를 포함하여 구성될 수 있다. 2, the surgical information building system according to an embodiment of the present invention may include a relay server 200 and a plurality of clients. As an example, in FIG. 2, the first client 210, the second client 220, and the third client 230 are described as one example. However, the present invention is not limited thereto. . Of course, it can be configured to include fewer or more clients than shown in FIG.
중계서버(200)는 복수의 클라이언트 사이의 통신을 중계하는 역할을 하는 장치로서, 예컨대 채팅 서버와 같은 기능을 수행할 수 있다. 예를 들어, 중계서버(200)는 수술 로봇을 이용하는 로봇수술 시스템, 시뮬레이터를 이용하는 가상수술 시스템, 수술 중에 원격으로 수술을 가이드 하는 원격 시스템 등을 연결하여 수술을 중계할 수 있다. The relay server 200 is a device that relays communication between a plurality of clients, and may perform a function such as, for example, a chat server. For example, the relay server 200 may relay a surgery by connecting a robot surgery system using a surgery robot, a virtual surgery system using a simulator, a remote system that guides the surgery remotely during surgery, and the like.
또한, 중계서버(200)는 복수의 클라이언트로부터 다양한 수술정보를 수신함에 따라 학습 데이터를 구축할 수 있다. 실시예에 따라, 중계서버(200)는 학습 데이터를 기초로 학습을 수행하고 최적화된 수술프로세스를 산출할 수도 있고, 또는 학습 데이터를 외부 서버로 제공하여 줄 수도 있다. 이 경우, 외부 서버가 중계서버(200)로부터 제공받은 학습 데이터를 기초로 학습을 수행하여 최적화된 수술프로세스를 산출할 수 있다. In addition, the relay server 200 may build learning data in response to receiving various surgical information from a plurality of clients. According to an embodiment, the relay server 200 may perform learning based on the learning data and calculate an optimized surgical process, or may provide the learning data to an external server. In this case, the external server may calculate the optimized surgical process by performing the learning based on the learning data provided from the relay server 200.
제1 클라이언트(210)는 실제수술영상을 획득하여 실제수술정보를 생성하는 장치일 수 있다. 일 실시예로, 제1 클라이언트(210)는 수술실(수술현장)에 구비된 장치일 수 있다. 예를 들어, 도 1에 도시된 수술 로봇(34)이나 제어부(30)에 상응할 수 있으며, 또는 이와는 별도의 장치로서 수술실에 구비되어 수술 로봇(34)이나 제어부(30)와 연결될 수도 있다. The first client 210 may be an apparatus for acquiring an actual surgery image and generating actual surgery information. In one embodiment, the first client 210 may be a device provided in the operating room (operating site). For example, it may correspond to the surgical robot 34 or the control unit 30 shown in FIG. 1, or may be provided in the operating room as a separate device and connected to the surgical robot 34 or the control unit 30.
제1 클라이언트(210)는 중계서버(200)에 접속하여, 수술 시에 생성된 실제수술정보를 중계서버(200)로 송신할 수 있다. 또한, 제1 클라이언트(210)는 중계서버(200)로부터 다른 클라이언트에서 생성된 다양한 정보를 수신할 수 있다. The first client 210 may access the relay server 200 and transmit the actual surgery information generated at the time of operation to the relay server 200. In addition, the first client 210 may receive various information generated by another client from the relay server 200.
여기서, 실제수술영상은 실제 의료진이 수술을 수행함에 따라 획득되는 데이터를 의미할 수있다. 예를 들어, 수술로봇(34)에 의하여 실제로 수행된 실제 수술 장면을 촬영한 영상일 수 있다. 즉, 실제수술영상은 실제 수술과정에서의 수술부위 및 수술동작에 대해 기록된 데이터이다. Here, the actual surgery image may mean data obtained as the actual medical staff performs the surgery. For example, it may be an image of an actual surgical scene actually performed by the surgical robot 34. In other words, the actual surgical image is data recorded on the surgical site and the operation during the actual surgical procedure.
실제수술정보는 실제수술영상으로부터 획득되는 정보로서, 예컨대 환자의 수술부위 정보, 수술도구 정보, 카메라에 대한 정보를 포함할 수 있다. 이때, 수술부위는 실제 수술이 수행되고 있는 환자의 신체부위를 말하며, 예컨대 장기, 혈관 등일 수 있다. 수술도구는 수술 시에 이용되는 도구일 수 있으며, 예컨대 로봇 수술 수행 시에 필요한 도구나 수술 시에 사용되는 소모품 등일 수 있다. 카메라는 실제 수술 장면을 촬영하는 장치로서, 예컨대 수술실에 설치되어 수술 장면을 촬영할 수도 있고 로봇 수술 수행 시에 환자의 신체내부로 진입하는 내시경 등에 구비되어 신체내부를 촬영할 수도 있다. The actual surgery information is information obtained from an actual surgery image, and may include, for example, surgical site information of a patient, surgical tool information, and information about a camera. In this case, the surgical site refers to a body part of the patient where the actual surgery is performed, and may be, for example, an organ or a blood vessel. The surgical tool may be a tool used during surgery, for example, a tool required for performing a robotic operation or a consumable used during surgery. The camera is a device for photographing an actual surgical scene. For example, the camera may be installed in an operating room to photograph a surgical scene, or may be provided in an endoscope that enters a patient's body when performing a robotic surgery to photograph an internal body.
예를 들어, 제1 클라이언트(210)는 수술 로봇에 포함된 카메라 또는 외부 장치로부터 실제수술영상을 획득하고, 획득된 실제수술영상에서 수술부위, 수술도구, 카메라를 인식하여 이를 기초로 실제수술정보를 생성할 수 있다. 즉, 제1 클라이언트(210)는 실제수술영상으로부터 수술부위의 종류 및 위치 정보, 수술도구의 종류, 위치, 방향, 및 움직임 정보, 카메라의 위치 및 이동 방향 정보 등을 생성할 수 있다. 이후, 제1 클라이언트(210)는 생성된 실제수술정보를 중계서버(200)로 송신하고, 이를 중계서버(200)와 연결되어 있는 다른 클라이언트들에게 제공할 수 있다. For example, the first client 210 acquires a real surgery image from a camera or an external device included in a surgical robot, recognizes a surgical site, a surgical tool, and a camera from the acquired real surgery image, and based on the actual surgery information. Can be generated. That is, the first client 210 may generate the type and position information of the surgical site, the type, position, direction, and movement information of the surgical tool, the position and movement direction of the camera, and the like from the actual surgical image. Thereafter, the first client 210 may transmit the generated actual surgery information to the relay server 200, and provide the generated actual surgery information to other clients connected to the relay server 200.
제2 클라이언트(220)는 가상수술을 수행하여 가상수술정보를 생성하는 장치일 수 있다. 일 실시예로, 제2 클라이언트(220)는 수술실(수술현장) 혹은 이와 떨어진 원격지에 구비된 장치일 수 있으며, 예컨대 수술 대상자(즉, 환자)와 동일하게 모델링된 가상신체모델에 대해 리허설 또는 시뮬레이션 행위를 수행할 수 있는 시뮬레이터일 수 있다.The second client 220 may be an apparatus for generating virtual surgery information by performing virtual surgery. In one embodiment, the second client 220 may be a device provided in an operating room (operating site) or a remote location, for example, rehearsing or simulating a virtual body model modeled the same as the patient (ie, a patient). It may be a simulator capable of performing an action.
여기서, 가상수술은 수술 대상자의 의료영상데이터(예: CT, MRI, PET 영상 등)를 기반으로 실제 신체 상태와 동일하게 구현된 가상신체모델에 대해 리허설 또는 시뮬레이션 행위를 수행하는 가상의 수술을 말한다. 가상수술정보는 가상공간에서 가상신체모델에 대해 리허설 또는 시뮬레이션이 수행된 영상데이터를 기반으로 획득되는 정보로서, 시뮬레이션 데이터를 포함할 수 있다. 예컨대, 시뮬레이션 데이터는 수술 대상자의 수술부위 정보, 수술도구 정보, 카메라에 대한 정보를 포함할 수 있다. 즉, 가상수술정보는 가상신체모델에 대해 수행된 수술동작에 대해 기록된 데이터 내 포함된 모든 정보를 포함할 수 있다. Here, the virtual surgery refers to a virtual surgery that performs rehearsal or simulation on a virtual body model that is implemented in the same manner as the physical state based on the medical image data (eg, CT, MRI, PET images, etc.) of the subject. . The virtual surgery information is information obtained based on the image data on which the rehearsal or simulation is performed on the virtual body model in the virtual space, and may include simulation data. For example, the simulation data may include surgical site information, surgical tool information, and information about a camera of a surgical subject. That is, the virtual surgery information may include all the information included in the data recorded for the surgical operation performed on the virtual body model.
또한, 가상신체모델은 사전에 수술 대상자의 신체내부를 촬영한 의료영상데이터를 기반으로 생성된 3D 모델링 데이터일 수 있다. 예컨대, 수술 대상자의 신체와 부합하게 모델링된 것으로서, 실제 수술 상태와 동일한 상태로 보정된 것일 수도 있다. In addition, the virtual body model may be 3D modeling data generated based on medical image data previously photographed inside the body of the subject. For example, the model may be modeled in accordance with the body of the surgical subject, and may be corrected to the same state as the actual surgical state.
제2 클라이언트(220)는 중계서버(200)에 접속하여, 가상수술을 수행함에 따라 생성된 가상수술정보를 중계서버(200)로 송신할 수 있다. 또한, 제2 클라이언트(220)는 중계서버(200)로부터 다른 클라이언트에서 생성된 다양한 정보를 수신할 수 있다. The second client 220 may access the relay server 200 and transmit the virtual surgery information generated by performing the virtual surgery to the relay server 200. In addition, the second client 220 may receive various information generated by another client from the relay server 200.
예를 들어, 제2 클라이언트(220)는 중계서버(200)로부터 제1 클라이언트(210)에서 생성된 실제수술정보를 수신하고, 수신된 실제수술정보를 기반으로 가상수술을 수행하여 가상수술정보를 생성할 수 있다. For example, the second client 220 receives the actual surgery information generated by the first client 210 from the relay server 200 and performs virtual surgery based on the received actual surgery information to perform virtual surgery information. Can be generated.
가상수술의 경우, 수술 대상자에 대한 실제 수술 상태와 동일한 가상수술 상태를 제공하는 것이 중요하다. 이에, 본 발명에서는 중계서버(200)를 통해 제1 클라이언트(210)에서 실제 수술을 수행하여 획득된 실제수술정보(예컨대, 수술도구의 위치, 방향, 움직임 정보 등)를 제2 클라이언트(220)에게 실시간으로 전송해 줄 수 있으므로, 제2 클라이언트(220)는 실시간으로 실제수술정보를 반영한 보다 정확한 가상수술정보를 수술 의료진들에게 제공해 줄 수 있다. 따라서, 수술 의료진들은 중계서버(200)를 통해 제1 클라이언트(210)와 제2 클라이언트(220)의 정보를 모두 이용할 수 있기 때문에, 수술 대상자에 대한 실제 수술을 효과적으로 수행할 수 있다. In the case of virtual surgery, it is important to provide a virtual surgical condition that is identical to the actual surgical condition for the subject. Accordingly, in the present invention, the second client 220 receives the actual surgery information (eg, position, direction, and movement information of the surgical tool) obtained by performing the actual surgery on the first client 210 through the relay server 200. Since it can be transmitted in real time, the second client 220 can provide the surgical medical staff with more accurate virtual surgery information reflecting the actual surgery information in real time. Therefore, since the surgical medical staff can use both the information of the first client 210 and the second client 220 through the relay server 200, it is possible to effectively perform the actual surgery for the surgical subject.
제3 클라이언트(230)는 실제수술영상에 대응하는 수술 가이드 정보를 생성하는 장치일 수 있다. 일 실시예로, 제3 클라이언트(230)는 수술실(수술현장) 혹은 이와 떨어진 원격지에 구비된 장치일 수 있으며, 예컨대 수술 중에 특정 이벤트가 발생하면 이에 대응하여 수술 가이드 정보를 생성할 수 있다. 또는, 수술실(수술현장)에서 수술을 수행하고 있는 의료진의 요청에 의해 다른 의료진이 제3 클라이언트(230)로 접속할 수 있다. 이 경우 중계서버(200)를 통해 제3 클라이언트(230) 간의 통신을 수행함으로써 수술실(수술현장)에서 수술을 수행하고 있는 의료진에게 타 의료진이 수술에 대한 정보를 실시간으로 제공할 수 있다.The third client 230 may be a device for generating surgery guide information corresponding to the actual surgery image. In one embodiment, the third client 230 may be a device provided in the operating room (operation site) or a remote location, for example, when a specific event occurs during the operation may generate the surgical guide information in response thereto. Alternatively, another medical staff may access the third client 230 at the request of the medical staff performing the surgery in the operating room (operation site). In this case, by performing communication between the third client 230 through the relay server 200, other medical staff can provide information about the surgery to the medical staff performing the surgery in the operating room (operation site) in real time.
제3 클라이언트(230)는 중계서버(200)에 접속하여 자신이 생성한 수술 가이드 정보를 중계서버(200)로 송신하고, 다른 클라이언트에서 생성된 다양한 정보를 중계서버(200)로부터 수신할 수 있다.The third client 230 may access the relay server 200 to transmit the surgical guide information generated by the third client 230 to the relay server 200, and receive various information generated from other clients from the relay server 200. .
예를 들어, 제3 클라이언트(230)는 중계서버(200)로부터 다른 클라이언트(210, 220)가 제공한 정보(즉, 실제수술정보 및 가상수술정보)를 수신함에 따라 수술 상황을 모니터링할 수 있다. 또한, 제3 클라이언트(230)는 모니터링을 기초로 수술 도중 특정 이벤트가 발생하는지 여부를 인지하고, 이에 대응하는 수술 가이드 정보를 생성할 수 있다. 실시예에 따라, 제3 클라이언트(230)가 자동으로 특정 이벤트가 발생하는지 여부를 인지하고, 특정 이벤트에 따라 정해진 수술 가이드 정보를 생성할 수 있다. 또는, 의료진이 제3 클라이언트(230)를 통해 실제 수술 상황을 모니터링하여 특정 이벤트가 발생함을 인지하고, 이에 대응하는 수술 가이드 정보를 입력할 수도 있다. For example, the third client 230 may monitor the surgical situation according to the information (ie, actual surgery information and virtual surgery information) provided by the other clients 210 and 220 from the relay server 200. . In addition, the third client 230 may recognize whether a specific event occurs during the surgery based on the monitoring, and generate surgery guide information corresponding thereto. According to an embodiment, the third client 230 may automatically recognize whether a specific event occurs and generate surgery guide information determined according to the specific event. Alternatively, the medical staff may monitor the actual surgical situation through the third client 230 to recognize that a specific event occurs, and input surgery guide information corresponding thereto.
본 발명의 실시예에 따른 중계서버(200)는, 상술한 제1, 2, 3 클라이언트(210, 220, 230) 이외에도 수술에 따라 필요한 클라이언트를 추가적으로 연결할 수 있으며, 이들 클라이언트 사이의 정보를 송수신할 수 있도록 제어하는 역할을 할 수 있다. Relay server 200 according to an embodiment of the present invention, in addition to the above-described first, second, third client (210, 220, 230) can additionally connect the necessary client in accordance with the operation, and transmit and receive information between these clients It can play a role in controlling it.
한편, 중계서버(200)를 통하지 않고 클라이언트들 사이에 직접 수술정보를 송수신하는 경우, 직접적으로 통신이 이루어지는 클라이언트들 간에만 수술정보를 공유하게 되므로 타 클라이언트가 수술 과정에 대한 정보를 얻을 수 없게 된다. 이에 따라, 타 클라이언트가 수술 도중에 중간 개입을 하기 어려우며 수술과정을 실시간으로 확인할 수 없는 문제점이 있다.On the other hand, when directly transmitting and receiving the surgical information between the client without passing through the relay server 200, since the surgical information is shared only between the client directly communicates with other clients can not obtain information about the operation process . Accordingly, there is a problem that other clients are difficult to intervene in the middle of the operation and cannot confirm the operation process in real time.
이러한 문제점을 해결하고자 본 발명의 실시예에서는 상술한 바와 같이, 중계서버(200)가 클라이언트 사이의 통신을 중계하는 역할을 함으로써, 실제 수술을 수행하는 도중에 중계서버(200)를 통해서 중간 개입을 할 수 있다. 또한 중계서버(200)를 통해서 실제 수술 과정을 실시간으로 모니터링할 수 있다. 또한, 중계서버(200)는 모든 클라이언트로부터 수술정보를 얻을 수 있기 때문에, 수술 과정 전체에 대한 정보를 도출할 수 있게 된다. 따라서, 중계서버(200)는 이러한 수술정보를 통해서 수술 과정 전체를 순서대로 기록하여 해당 수술에 대한 이력 정보를 형성할 수도 있다. In the embodiment of the present invention to solve this problem, as described above, the relay server 200 serves to relay the communication between the client, the intermediate intervention through the relay server 200 during the actual operation to perform Can be. In addition, the relay server 200 may monitor the actual surgical process in real time. In addition, since the relay server 200 can obtain the surgical information from all the clients, it is possible to derive information about the entire surgical procedure. Accordingly, the relay server 200 may record the entire surgical procedure in order through such surgical information to form historical information about the corresponding surgery.
도 3은 본 발명의 일 실시예에 따른 중계서버를 이용하여 수술정보를 구축하는 방법을 설명하기 위해 도시한 흐름도이다. 도 3의 방법은 도 2에 도시된 수술정보 구축 시스템에서 수행될 수 있다.3 is a flowchart illustrating a method of building surgery information using a relay server according to an embodiment of the present invention. The method of FIG. 3 may be performed in the surgical information building system shown in FIG. 2.
실시예에 따라, 먼저 중계서버(200)는 수술에 따라 필요한 적어도 하나의 클라이언트를 그룹으로 생성할 수 있다. 예를 들어, 중계서버(200)는 특정 환자를 기준으로 실제 수술 시에 필요한 클라이언트들을 하나의 그룹으로 생성할 수도 있고, 직접 클라이언트로부터 그룹 요청 신호를 수신하여 그에 대한 응답으로 그룹을 생성할 수도 있다. 또는, 중계서버(200)는 클라이언트로부터 접속 요청을 수신하면 자동으로 해당 그룹에 속하는지 판단하여 클라이언트가 자신의 그룹에 접속할 수 있도록 처리할 수도 있다. According to an embodiment, first, the relay server 200 may generate at least one client required as a group in operation. For example, the relay server 200 may generate clients required for actual surgery as a group based on a specific patient, or may receive a group request signal directly from a client and create a group in response thereto. . Alternatively, when the relay server 200 receives an access request from the client, the relay server 200 may automatically determine whether the relay server belongs to the corresponding group and process the client to access the group.
이후, 중계서버(200)는 수술이 진행됨에 따라 그룹 내 클라이언트 간의 정보를 송수신할 수 있도록 한다. 이에 대한 구체적인 동작 과정은 이하에서 설명하도록 한다. Subsequently, the relay server 200 may transmit and receive information between clients in the group as the surgery proceeds. A detailed operation process thereof will be described below.
도 3을 참조하면, 제1 클라이언트(210)는 실제수술영상을 획득하고, 획득된 실제수술영상에 대응하는 실제수술정보를 생성할 수 있다(S100).Referring to FIG. 3, the first client 210 may acquire an actual surgery image and generate real surgery information corresponding to the obtained actual surgery image (S100).
일 실시예로, 제1 클라이언트(210)는 수술 로봇에 포함된 카메라 또는 외부 장치로부터 실제수술영상을 획득하고, 획득된 실제수술영상에서 수술부위, 수술도구, 카메라를 인식하여 이를 기초로 실제수술정보를 생성할 수 있다. 실제수술정보는, 상술한 바와 같이 수술부위 정보(예: 수술부위의 종류 및 위치 정보), 수술도구 정보(예: 수술도구의 종류, 위치, 방향, 및 움직임 정보), 카메라 정보(예: 카메라의 위치 및 움직임 정보) 등을 포함할 수 있다. In one embodiment, the first client 210 obtains a real surgery image from a camera or an external device included in the surgical robot, and recognizes a surgical site, a surgical tool, and a camera from the acquired real surgery image, based on the actual surgery. Information can be generated. As described above, the actual surgical information may include surgical site information (e.g., type and location information of the surgical site), surgical tool information (e.g., type, position, direction, and movement information of the surgical tool), and camera information (e.g., camera). Location and motion information), and the like.
제1 클라이언트(210)는 실제수술정보를 중계서버(200)로 송신할 수 있고(S105), 중계서버(200)는 제1 클라이언트(210)로부터 수신한 실제수술정보를 데이터베이스에 저장할 수 있다(S110). The first client 210 may transmit the actual surgery information to the relay server 200 (S105), and the relay server 200 may store the actual surgery information received from the first client 210 in the database ( S110).
또한, 중계서버(200)는 실제수술정보를 동일한 그룹 내 적어도 하나의 클라이언트(예컨대, 제2 클라이언트(220) 또는/및 제3 클라이언트(230))에게 송신할 수 있다(S115).In addition, the relay server 200 may transmit the actual surgery information to at least one client (eg, the second client 220 or / and the third client 230) in the same group (S115).
제2 클라이언트(220)는 가상수술을 수행하여 가상수술정보를 생성할 수 있다(S120).The second client 220 may perform virtual surgery to generate virtual surgery information (S120).
일 실시예로, 제2 클라이언트(220)는 중계서버(200)를 통해 제1 클라이언트(210)에서 생성된 실제수술정보를 수신하고, 수신된 실제수술정보를 기초로 가상수술을 수행하여 가상수술정보를 생성할 수 있다.In an embodiment, the second client 220 receives the actual surgery information generated by the first client 210 through the relay server 200 and performs virtual surgery based on the received actual surgery information to perform virtual surgery. Information can be generated.
제2 클라이언트(220)는 가상수술정보를 중계서버(200)로 송신할 수 있고(S125), 중계서버(200)는 제2 클라이언트(220)로부터 수신한 가상수술정보를 데이터베이스에 저장할 수 있다(S130).The second client 220 may transmit the virtual surgery information to the relay server 200 (S125), and the relay server 200 may store the virtual surgery information received from the second client 220 in a database ( S130).
또한, 중계서버(200)는 가상수술정보를 동일한 그룹 내 적어도 하나의 클라이언트(예컨대, 제1 클라이언트(210) 또는/및 제3 클라이언트(230))에게 송신할 수 있다(S135).In addition, the relay server 200 may transmit the virtual surgery information to at least one client (eg, the first client 210 or / and the third client 230) in the same group (S135).
제3 클라이언트(230)는 중계서버(200)를 통해서 수신된 수술 대상자에 대한 수술정보를 기반으로 수술 상황을 모니터링하고, 또한 모니터링 결과를 기초로 수술 가이드 정보를 생성할 수 있다(S140).The third client 230 may monitor the surgery situation based on the surgery information on the surgery subject received through the relay server 200, and may generate the surgery guide information based on the monitoring result (S140).
일 실시예로, 제3 클라이언트(230)는 중계서버(200)로부터 수신된 제1 클라이언트(210)의 실제수술정보 및 제2 클라이언트(220)의 가상수술정보를 기초로 수술 도중 특정 이벤트가 발생하는지 여부를 인지하고, 이에 대응하는 수술 가이드 정보를 생성할 수 있다. 다른 실시예로, 제3 클라이언트(230)는 실제수술영상을 중계서버(200)를 통해 획득하고, 이를 의료진들에게 제공함으로써 의료진들이 직접 실제수술영상에 대응하는 수술 가이드 정보를 생성할 수 있다. 이 경우, 제3 클라이언트(230)는 의료진들로부터 수술 가이드 정보를 입력받고, 이를 중계서버(200)로 송신할 수 있다.In an embodiment, the third client 230 generates a specific event during the surgery based on the actual surgery information of the first client 210 and the virtual surgery information of the second client 220 received from the relay server 200. Whether or not, and generate surgical guide information corresponding thereto. In another embodiment, the third client 230 may acquire the actual surgical image through the relay server 200 and provide the same to the medical staff to directly generate the surgical guide information corresponding to the actual surgical image. In this case, the third client 230 may receive the surgical guide information from the medical staff, and transmit it to the relay server 200.
제3 클라이언트(230)는 수술 가이드 정보를 중계서버(200)로 송신할 수 있고(S145), 중계서버(200)는 제3 클라이언트(230)로부터 수신한 수술 가이드 정보를 데이터베이스에 저장할 수 있다(S150).The third client 230 may transmit the surgical guide information to the relay server 200 (S145), the relay server 200 may store the surgical guide information received from the third client 230 in the database ( S150).
또한, 중계서버(200)는 수술 가이드 정보를 동일한 그룹 내 적어도 하나의 클라이언트(예컨대, 제1 클라이언트(210) 또는/및 제2 클라이언트(220))에게 송신할 수 있다(S155).In addition, the relay server 200 may transmit the surgical guide information to at least one client (eg, the first client 210 or / and the second client 220) in the same group (S155).
상술한 단계 S100~S155에서 설명한 바와 같이, 중계서버(200)는 수술 대상자에 대해 수술을 수행함에 따라 그룹 내 속한 클라이언트들 간의 정보를 송수신하도록 중계 역할을 하고, 이에 따라 송수신된 정보를 데이터베이스에 저장할 수 있다. 또한, 중계서버(200)는 데이터베이스에 저장된 수술 대상자에 대한 다양한 수술 정보를 이용하여 학습 데이터를 구축하고 최적화된 수술 프로세스를 제공하기 위한 학습을 수행할 수 있다. As described in the above steps S100 ~ S155, the relay server 200 acts as a relay to transmit and receive information between the clients belonging to the group as the operation performed on the operation target object, and stores the transmitted and received information in the database Can be. In addition, the relay server 200 may perform learning to build learning data and provide an optimized surgical process by using various surgical information on the operation targets stored in the database.
중계서버(200)는 클라이언트로부터 수신한 다양한 수술 정보를 기초로 수술 대상자의 수술과정에 대한 큐시트데이터를 생성할 수 있다(S160).The relay server 200 may generate cue sheet data about a surgical procedure of a surgery target subject based on various surgery information received from a client (S160).
일 실시예로, 중계서버(200)는 데이터베이스에 저장된 제1 클라이언트(210)의 실제수술정보, 제2 클라이언트(220)의 가상수술정보, 및 제3 클라이언트(230)의 수술 가이드 정보 중 적어도 하나를 기초로 수술 대상자의 수술과정에 대한 큐시트데이터를 생성할 수 있다. In an embodiment, the relay server 200 may include at least one of actual surgery information of the first client 210, virtual surgery information of the second client 220, and surgery guide information of the third client 230. Based on the cue sheet data for the surgical procedure of the surgical subject can be generated.
여기서, 큐시트데이터는 특정한 수술과정을 세부수술동작으로 분할하여 순서대로 기록한 데이터를 의미할 수 있다. 세부수술동작은 수술프로세스를 구성하는 최소 동작 단위일 수 있으며, 여러 기준에 의해 나누어질 수 있다. 예를 들어, 세부수술동작은 수술유형(예: 복강경 수술, 로봇수술 등), 수술이 수행되는 해부학적 신체부위, 사용되는 수술도구, 수술도구의 개수, 화면상에 수술도구가 나타나는 방향 또는 위치, 수술도구의 움직임(예: 전진/후퇴 등) 등을 기준으로 나누어질 수 있다. 중계서버(200)는 세부수술동작을 분할하는 기준에 대한 정보를 데이터베이스에 저장된 실제수술정보, 가상수술정보, 수술 가이드 정보 등을 통해서 파악할 수 있으므로, 수술 대상자의 실제 수술과정에 상응하는 큐시트데이터를 정확하게 구축할 수 있다. 본 발명의 실시예에 따르면, 중계서버(200)가 큐시트데이터를 생성하는 것만으로 전체 수술과정의 이력을 형성할 수 있다. 또한, 본 발명의 실시예에 따라서는 중계서버(200)가 단계 S165를 수행할 수도 있다. Here, the cue sheet data may refer to data recorded in order by dividing a specific surgical procedure into detailed surgical operations. The detailed surgical operation may be a minimum operation unit constituting the surgical process, and may be divided by various criteria. For example, the detailed operation may include the type of surgery (e.g., laparoscopic surgery, robotic surgery, etc.), the anatomical body area on which the surgery is performed, the surgical tools used, the number of surgical tools, the direction or location of the surgical tools on the screen. This may be based on the movement of the surgical tool (e.g., forward / retract, etc.). Since the relay server 200 can grasp the information on the criteria for dividing the detailed operation through the actual surgery information, the virtual surgery information, the operation guide information, and the like stored in the database, the cue sheet data corresponding to the actual surgery of the patient Can be built accurately. According to an embodiment of the present invention, the relay server 200 may form a history of the entire surgical procedure by simply generating the cue sheet data. In addition, according to an embodiment of the present invention, the relay server 200 may perform step S165.
중계서버(200)는 큐시트데이터를 기반으로 학습을 수행하여 수술 대상자의 수술과정에 대응하는 최적화된 큐시트데이터를 산출할 수 있다(S165).The relay server 200 may calculate the optimized cue sheet data corresponding to the surgical process of the surgical subject by performing the learning based on the cue sheet data (S165).
일 실시예로, 중계서버(200)는 데이터베이스에 저장된 실제수술정보, 가상수술정보, 수술 가이드 정보 등을 학습 데이터로 구성하거나, 또는 큐시트데이터 자체를 학습 데이터로 구성할 수 있다. 이후, 중계서버(200)는 학습 데이터를 기반으로 학습을 수행하고, 수술 대상자에 대한 최적화된 수술프로세스를 산출할 수 있다. 여기서, 학습 방법은 지도학습, 비지도학습, 강화학습 등의 기계학습 방법을 사용할 수 있으며, 예컨대 딥러닝 학습 방법을 이용할 수 있다.In one embodiment, the relay server 200 may configure the actual surgery information, virtual surgery information, surgery guide information, and the like stored in the database as the training data, or may configure the cue sheet data itself as the training data. Thereafter, the relay server 200 may perform learning based on the learning data and calculate an optimized surgical process for the surgical target. Here, the learning method may be a machine learning method such as supervised learning, unsupervised learning, reinforcement learning, for example, deep learning learning method.
중계서버(200)는 최적화된 큐시트데이터를 데이터베이스에 저장할 수 있고, 최적화된 큐시트데이터를 그룹 내 적어도 하나의 클라이언트에게 제공할 수 있다. 이에 따라, 적어도 하나의 클라이언트는 수신한 최적화된 큐시트데이터를 기초로 수술 대상자의 수술 시에 이용할 수 있다. The relay server 200 may store the optimized cuesheet data in a database and provide the optimized cuesheet data to at least one client in the group. Accordingly, the at least one client may use the surgical subject's surgery based on the received optimized cuesheet data.
본 실시예에서는 중계서버(200)가 학습 데이터를 기반으로 학습을 수행하여 최적화된 큐시트데이터를 산출하는 것으로 설명하였으나, 실시예에 따라서는 중계서버(200)가 데이터베이스에 저장된 실제수술정보, 가상수술정보, 수술 가이드 정보 등(즉, 학습 데이터)을 외부 서버로 제공하고, 외부 서버에서 학습 데이터를 기초로 학습을 수행할 수도 있다. In this embodiment, the relay server 200 calculates the optimized cue sheet data by performing the learning based on the training data, but according to the embodiment, the relay server 200 stores the actual surgical information and the virtual surgery stored in the database. Information, surgery guide information, etc. (ie, learning data) may be provided to an external server, and learning may be performed based on the learning data in the external server.
또한, 본 발명의 실시예에서는 단계 S160 또는/및 단계 S165에서 생성된 수술 대상자에 대한 큐시트데이터를 기초로 수술 대상자의 가상신체모델을 구현할 수도 있고, 또는 역으로 수술 대상자에 대해 수행된 수술의 수술영상을 구현해낼 수도 있다.In addition, the embodiment of the present invention may implement a virtual body model of the surgical subject based on the cue sheet data for the surgical subject generated in step S160 or / and step S165, or conversely the operation of the surgery performed on the surgical subject You can also implement an image.
본 발명의 실시예에 따르면, 실제 수술 시에 실시간으로 여러 클라이언트로부터 수술정보를 수집할 수 있어서 수술 의료진들이 효과적으로 수술과정을 진행할 수 있다. 또한, 본 발명의 실시예에 따르면, 수술 의료진에 의해서만 수술을 수행하는 경우에 비해서 보다 다양한 수술정보 및 수술 시스템을 통해 수술을 수행할 수 있으므로, 보다 정확한 수술을 집도할 수 있게 된다. According to an embodiment of the present invention, surgical information can be collected from various clients in real time at the time of an actual operation, so that surgical medical staff can effectively proceed with the surgical procedure. In addition, according to an embodiment of the present invention, since the operation can be performed through a variety of surgical information and surgical system as compared to the case of performing the operation only by the surgical medical staff, it is possible to perform a more accurate operation.
본 발명의 실시예에 따르면, 각 클라이언트별로 수술정보를 송수신하는 것이 아니라, 중계서버를 통해 상호 간의 수술 정보를 송수신할 수 있기 때문에 통신 부하를 줄일 수 있다. 또한, 각 클라이언트는 중계서버를 통해 통신을 수행하면 되므로, 클라이언트 수가 증가하더라도 용이하게 상호 간의 통신이 가능하고 추가적인 부하가 발생하지 않는 효과가 있다. 따라서, 클라이언트의 수가 증가하더라도 성능에 영향을 미치지 않는다. According to the embodiment of the present invention, rather than transmitting and receiving the surgical information for each client, it is possible to reduce the communication load because the surgical information can be transmitted and received to each other through the relay server. In addition, since each client only needs to perform communication through a relay server, even if the number of clients increases, communication between each other can be easily performed, and an additional load does not occur. Thus, increasing the number of clients does not affect performance.
본 발명의 실시예에 따르면, 중계서버를 통해 모든 수술 정보를 구축할 수 있으므로, 차후 학습 데이터로서 활용할 수 있다. According to the embodiment of the present invention, since all the surgical information can be constructed through the relay server, it can be used as learning data later.
도 4는 본 발명의 일 실시예에 따른 수술정보 구축을 수행하는 장치(300)의 구성을 개략적으로 나타내는 도면이다. 4 is a diagram schematically showing the configuration of an apparatus 300 for performing surgery information construction according to an embodiment of the present invention.
도 4를 참조하면, 프로세서(310)는 하나 이상의 코어(core, 미도시) 및 그래픽 처리부(미도시) 및/또는 다른 구성 요소와 신호를 송수신하는 연결 통로(예를 들어, 버스(bus) 등)를 포함할 수 있다.Referring to FIG. 4, the processor 310 may include a connection passage (for example, a bus or the like) that transmits and receives signals with one or more cores (not shown) and a graphic processor (not shown) and / or other components. ) May be included.
일 실시예에 따른 프로세서(310)는 메모리(320)에 저장된 하나 이상의 인스트럭션을 실행함으로써, 도 2 및 도 3과 관련하여 설명된 수술정보 구축 방법을 수행한다.The processor 310 according to an embodiment executes one or more instructions stored in the memory 320 to perform the surgery information construction method described with reference to FIGS. 2 and 3.
예를 들어, 프로세서(310)는 메모리(320)에 저장된 하나 이상의 인스트럭션을 실행함으로써 제1 클라이언트로부터 실제수술영상에 대한 실제수술정보를 수신하고, 실제수술정보를 제2 클라이언트로 송신하고, 제2 클라이언트로부터 실제수술정보를 기반으로 생성된 가상수술정보를 수신하고, 실제수술정보 및 가상수술정보를 저장할 수 있다.For example, the processor 310 receives the actual surgery information on the actual surgery image from the first client, transmits the actual surgery information to the second client by executing one or more instructions stored in the memory 320, and the second client. The virtual surgery information generated based on the actual surgery information may be received from the client, and the actual surgery information and the virtual surgery information may be stored.
한편, 프로세서(310)는 프로세서(310) 내부에서 처리되는 신호(또는, 데이터)를 일시적 및/또는 영구적으로 저장하는 램(RAM: Random Access Memory, 미도시) 및 롬(ROM: Read-Only Memory, 미도시)을 더 포함할 수 있다. 또한, 프로세서(310)는 그래픽 처리부, 램 및 롬 중 적어도 하나를 포함하는 시스템온칩(SoC: system on chip) 형태로 구현될 수 있다.Meanwhile, the processor 310 may read random access memory (RAM) and read-only memory (ROM) for temporarily and / or permanently storing a signal (or data) processed in the processor 310. , Not shown) may be further included. In addition, the processor 310 may be implemented in the form of a system on chip (SoC) including at least one of a graphic processor, a RAM, and a ROM.
메모리(320)에는 프로세서(310)의 처리 및 제어를 위한 프로그램들(하나 이상의 인스트럭션들)을 저장할 수 있다. 메모리(320)에 저장된 프로그램들은 기능에 따라 복수 개의 모듈들로 구분될 수 있다.The memory 320 may store programs (one or more instructions) for processing and controlling the processor 310. Programs stored in the memory 320 may be divided into a plurality of modules according to their functions.
이상에서 전술한 본 발명의 일 실시예에 따른 수술정보 구축 방법은, 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 어플리케이션)으로 구현되어 매체에 저장될 수 있다.The surgical information building method according to an embodiment of the present invention described above may be implemented as a program (or an application) and stored in a medium to be executed in combination with a computer which is hardware.
이하에서는 도 5 내지 도 12를 참조하여, 본 발명의 실시예에 따른 인공데이터를 생성하는 방법 및 장치에 관해 상세히 설명한다. Hereinafter, a method and apparatus for generating artificial data according to an embodiment of the present invention will be described in detail with reference to FIGS. 5 to 12.
본 명세서에서 "컴퓨터"는 연산처리를 수행하여 사용자에게 결과를 제공할 수 있는 다양한 장치들이 모두 포함된다. 예를 들어, 컴퓨터는 데스크 탑 PC, 노트북(Note Book) 뿐만 아니라 스마트폰(Smart phone), 태블릿 PC, 셀룰러폰(Cellular phone), 피씨에스폰(PCS phone; Personal Communication Service phone), 동기식/비동기식 IMT-2000(International Mobile Telecommunication-2000)의 이동 단말기, 팜 PC(Palm Personal Computer), 개인용 디지털 보조기(PDA; Personal Digital Assistant) 등도 해당될 수 있다. 또한, 헤드마운트 디스플레이(Head Mounted Display; HMD) 장치가 컴퓨팅 기능을 포함하는 경우, HMD장치가 컴퓨터가 될 수 있다. 또한, 컴퓨터는 클라이언트로부터 요청을 수신하여 정보처리를 수행하는 서버가 해당될 수 있다.As used herein, the term "computer" includes all the various devices capable of performing arithmetic processing to provide a result to a user. For example, a computer can be a desktop PC, a notebook, as well as a smartphone, a tablet PC, a cellular phone, a PCS phone (Personal Communication Service phone), synchronous / asynchronous The mobile terminal of the International Mobile Telecommunication-2000 (IMT-2000), a Palm Personal Computer (PC), a Personal Digital Assistant (PDA), and the like may also be applicable. In addition, when a head mounted display (HMD) device includes a computing function, the HMD device may be a computer. Also, the computer may correspond to a server that receives a request from a client and performs information processing.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 5는 본 발명의 일 실시예에 따른 인공데이터를 생성하는 방법을 도시한 흐름도이다. 5 is a flowchart illustrating a method of generating artificial data according to an embodiment of the present invention.
도 5의 방법은 설명의 편의를 위하여 컴퓨터에 의하여 수행되는 것으로 서술하나, 각 단계의 수행주체가 특정 장치에 제한되는 것은 아니고 컴퓨팅 처리를 수행할 수 있는 장치를 포괄하는 의미로 사용될 수 있다. 즉, 본 실시예에서 컴퓨터는 본 발명의 실시예에 따른 인공데이터 생성 방법을 수행할 수 있는 장치를 의미할 수 있다.Although the method of FIG. 5 is described as being performed by a computer for the convenience of description, the subject of each step is not limited to a specific device but may be used to encompass a device capable of performing computing processing. That is, in the present embodiment, the computer may mean an apparatus capable of performing the artificial data generating method according to the embodiment of the present invention.
도 5를 참조하면, 본 발명의 일 실시예에 따른 인공데이터 생성 방법은, 배경이미지 및 객체이미지를 획득하는 단계(S100)와, 배경이미지 및 객체이미지를 결합하여 인공데이터를 생성하는 단계(S110)를 포함할 수 있다. 이하, 각 단계에 대한 상세한 설명을 기재한다.Referring to FIG. 5, in the method of generating artificial data according to an embodiment of the present invention, obtaining a background image and an object image (S100), and combining the background image and an object image to generate artificial data (S110). ) May be included. Hereinafter, a detailed description of each step will be described.
컴퓨터는 배경이미지 및 객체이미지를 획득할 수 있다(S100). The computer may acquire a background image and an object image (S100).
배경이미지 및 객체이미지는 실제수술영상에 포함된 일부 또는 전체 이미지 영역일 수 있다. 실제수술영상은 실제 의료진이 수술을 수행함에 따라 획득되는 데이터일 수 있다. 예를 들어, 의료진들은 환자에 대해 직접 수술을 수행할 수도 있고, 수술로봇, 복강경, 내시경 등을 이용하는 최소침습수술을 수행할 수도 있다. 이때, 이러한 수술 과정에서 행해진 수술동작이나 수술동작과 관련된 수술도구, 수술부위 등에 관한 다양한 정보를 얻을 수 있다. 예컨대, 수술과정에서 수술부위를 중심으로 신체내부의 장기, 수술도구 등을 촬영한 실제수술영상을 획득할 수도 있고, 수술과정에서 수행된 수술동작에 대해 기록된 데이터를 획득할 수도 있다. The background image and the object image may be part or the entire image area included in the actual surgery image. The actual surgery image may be data obtained by the actual medical staff performing the surgery. For example, medical staff may perform surgery directly on a patient, or perform minimally invasive surgery using a surgical robot, a laparoscope, an endoscope, or the like. At this time, it is possible to obtain a variety of information about the surgical operation performed in such a surgical process or surgical instruments, surgical sites related to the surgical operation. For example, an actual surgical image obtained by photographing organs, surgical instruments, and the like in the body may be obtained in a surgical procedure, or data recorded on a surgical operation performed in the surgical procedure may be acquired.
일 실시예로, 배경이미지는 내시경 카메라에 의해 촬영된 신체내부의 특정 영역을 포함할 수 있다. 예를 들어, 신체내부의 장기(예: 간, 심장, 자궁, 뇌, 유방, 복부 등), 혈관, 조직 등을 포함하는 특정 영역을 촬영한 영상데이터일 수 있다. In one embodiment, the background image may include a specific area inside the body taken by the endoscope camera. For example, the image data may be image data obtained by photographing a specific region including organs (eg, liver, heart, uterus, brain, breast, abdomen, etc.), blood vessels, and tissues in the body.
일 실시예로, 객체이미지는 수술도구 또는 혈액(혈관 손상에 의해 혈액이 혈관 밖으로 나와 있는 출혈을 포함)을 포함하는 영상데이터일 수 있다. In one embodiment, the object image may be image data including surgical instruments or blood (including bleeding out of the blood vessels due to blood vessel damage).
실시예에 따라, 컴퓨터는 객체 및 배경(즉, 신체내부의 특정 영역을 포함하는 배경)을 포함하는 실제수술영상으로부터 객체이미지 또는 배경이미지를 획득할 수 있다. 또는, 컴퓨터는 객체만 포함하고 있는 실제수술영상으로부터 객체이미지를 획득하거나, 배경만 포함하고 있는 실제수술영상으로부터 배경이미지를 획득할 수 있다. 이후, 컴퓨터는 실제수술영상으로부터 획득된 객체이미지 또는 배경이미지를 이용하여 다양한 인공데이터를 생성할 수 있다. 이에 대한 구체적인 실시예는 도 7 내지 도 10을 참조하여 설명하도록 한다. According to an embodiment, the computer may acquire an object image or a background image from an actual surgical image including an object and a background (ie, a background including a specific area inside the body). Alternatively, the computer may acquire the object image from the actual surgical image including only the object or the background image from the actual surgical image including only the background. Thereafter, the computer may generate various artificial data using the object image or the background image obtained from the actual surgical image. Specific embodiments thereof will be described with reference to FIGS. 7 to 10.
또한 실시예에 따라, 컴퓨터는 실제수술영상을 프레임 단위로 획득할 수도 있고, 또는 연속된 프레임들의 집합인 시퀀스 단위로 획득할 수도 있다. 예를 들어, 수술도구를 포함하는 객체에 대한 인공데이터를 생성하는 경우, 컴퓨터는 하나의 프레임 단위로 실제수술영상을 획득하고 이로부터 수술도구를 포함하는 객체이미지를 추출하여 인공데이터를 생성할 수 있다. 또는, 혈액이나 출혈을 포함하는 객체에 대한 인공데이터를 생성하는 경우, 컴퓨터는 복수개의 프레임들로 이루어지는 시퀀스 단위로 실제수술영상을 획득하고 이들로부터 혈액이나 출혈을 포함하는 객체이미지를 추출하여 인공데이터를 생성할 수 있다. 이 경우, 컴퓨터는 후술할 생성기에 시퀀스 단위(즉, 연속된 프레임들)로 객체이미지를 포함하는 실제수술영상을 입력하고, 이에 따라 생성기에서는 시퀀스 단위(즉, 연속된 프레임들)로 인공데이터를 생성하여 출력할 수 있다. 혈액이나 출혈과 같은 객체의 경우에는 하나의 프레임 영상만 보고 객체의 의미를 파악하기 힘들기 때문에, 하나의 프레임이 아닌 연속된 프레임의 집합으로 생성되어야 의미를 가질 수 있다. 이에, 본 발명에서는 객체의 종류에 따라 프레임 단위 또는 시퀀스 단위로 인공데이터를 생성할 수 있다. 또한, 본 발명에 따르면 특정 수술동작(예: 자르기, 잡기 등)에 대응하는 인공데이터를 생성할 경우에도 혈액이나 출혈을 포함하는 인공데이터를 생성하는 경우와 동일하게 시퀀스 단위로 객체이미지를 획득하고 인공데이터를 생성할 수 있다.In addition, according to an embodiment, the computer may acquire the actual surgical image in units of frames or in units of sequences, which are sets of consecutive frames. For example, when generating artificial data about an object including a surgical tool, the computer may generate an artificial data by acquiring an actual surgical image by one frame and extracting an object image including the surgical tool therefrom. have. Alternatively, when generating artificial data about an object including blood or bleeding, the computer acquires an actual surgical image in a sequence unit consisting of a plurality of frames and extracts an object image including blood or bleeding from the artificial data. Can be generated. In this case, the computer inputs the actual surgical image including the object image in sequence units (ie, continuous frames) to the generator to be described later, and accordingly, the generator inputs artificial data in sequence units (ie, continuous frames). Can be generated and printed. In the case of an object such as blood or bleeding, it is difficult to see the meaning of the object by looking at only one frame image, and thus it may be meaningful to be generated as a set of consecutive frames instead of one frame. Accordingly, in the present invention, artificial data may be generated in units of frames or sequences according to the type of object. In addition, according to the present invention, even when generating artificial data corresponding to a specific surgical operation (for example, cutting, grabbing, etc.), object images are acquired in sequence units as in the case of generating artificial data including blood or bleeding. Artificial data can be generated.
또한, 본 발명에서는 객체의 변화가 발생함에 따라 프레임 단위 또는 시퀀스 단위로 실제수술영상을 획득하여 인공데이터를 생성할 수도 있다. 일 실시예로, 컴퓨터가 특정 객체에 변화가 발생하는 실제수술영상을 획득할 경우, 예컨대 수술도구의 움직임이나 수술도구의 움직임에 따라 특정 수술동작을 수행하는 실제수술영상을 연속된 프레임으로 획득하는 경우, 컴퓨터는 연속된 프레임으로부터 특정 객체(예: 수술도구)를 포함하는 객체이미지를 연속적으로 추출하여 특정 객체(예: 수술도구)의 움직임 변화를 반영한 인공데이터를 생성할 수 있다. 이때, 인공데이터는 특정 객체의 변화에 따라 연속된 프레임으로 생성된 것일 수 있다. 또한, 컴퓨터는 특정 객체(예: 수술도구)의 움직임 변화에 대응하여 실제수술영상으로부터 배경이미지를 추출할 수 있다. 예컨대, 컴퓨터는 특정 객체(예: 수술도구)의 움직임 변화에 따라 추출된 객체이미지와 이에 따라 배경이미지도 연속적으로 추출하여, 연속된 객체이미지와 배경이미지를 순차적으로 결합하여 연속된 인공데이터를 생성할 수도 있다. 따라서, 객체의 변화에 대응하여 배경이미지도 추출하여 반영함으로써 보다 실제에 가까운 인공데이터를 생성할 수 있다.In addition, according to the present invention, artificial data may be generated by acquiring an actual surgical image in a frame unit or a sequence unit as a change of an object occurs. In one embodiment, when the computer acquires a real surgery image that changes in a specific object, for example, to acquire a real surgery image performing a specific surgery operation according to the movement of the surgical tool or the surgical tool in a continuous frame In this case, the computer may continuously extract an object image including a specific object (eg, a surgical tool) from consecutive frames to generate artificial data reflecting a change in movement of the specific object (eg, a surgical tool). In this case, the artificial data may be generated in a continuous frame according to a change of a specific object. In addition, the computer may extract a background image from the actual surgical image in response to the movement change of a specific object (eg, a surgical tool). For example, the computer continuously extracts the object image and the background image according to the change of the movement of a specific object (for example, a surgical tool), and generates continuous artificial data by sequentially combining the continuous object image and the background image. You may. Therefore, by extracting and reflecting the background image corresponding to the change of the object, it is possible to generate more artificial data.
컴퓨터는 배경이미지 및 객체이미지를 결합하여 인공데이터를 생성할 수 있다(S110). The computer may generate artificial data by combining the background image and the object image (S110).
일 실시예로, 컴퓨터는 객체이미지 내 객체(예: 수술도구, 혈액, 출혈 등)와 배경이미지 내 신체내부의 특정 영역(예: 신체내부의 장기, 혈관, 조직 등) 사이의 배치 관계를 기반으로, 실제수술영상과 근사하게 객체이미지 및 배경이미지를 결합하여 인공데이터를 생성할 수 있다. In one embodiment, the computer is based on the placement relationship between objects in the object image (e.g. surgical instruments, blood, bleeding, etc.) and specific areas within the body (e.g. organs, blood vessels, tissues, etc.) within the background image. As such, artificial data may be generated by combining the object image and the background image to approximate the actual surgical image.
배치 관계는 각각의 이미지 내 배경과 객체가 배치된 형태, 위치, 방향이나 카메라 촬영 방향, 각각의 이미지 내 배경과 객체의 종류, 개수 등의 정보를 기초로 도출되는 정보일 수 있다. The arrangement relationship may be information derived based on information such as a shape, a location, a direction or a camera photographing direction, a type and a number of backgrounds and objects in each image.
인공데이터를 생성함에 있어서, 컴퓨터는 생성기(Generator) 및 감별기(Discriminator)를 이용하여 학습을 통해 인공데이터를 생성할 수 있다. 이에 관해서는 도 6을 참조하여 구체적으로 설명하도록 한다. In generating artificial data, the computer may generate artificial data through learning by using a generator and a discriminator. This will be described in detail with reference to FIG. 6.
도 6은 본 발명의 일 실시예에 따른 학습을 기반으로 인공데이터를 생성하는 방법을 설명하기 위한 도면이다. 6 is a view for explaining a method of generating artificial data based on learning according to an embodiment of the present invention.
일 실시예로, 객체이미지 내 객체와 배경이미지 내 배경 사이의 배치 관계를 기초로 객체와 배경을 결합하여 인공데이터를 생성함에 있어서, 컴퓨터는 인공데이터가 보다 실제수술영상에 근접하게 생성될 수 있도록 학습을 수행할 수 있다. 이때, 컴퓨터는 생성기(200) 및 감별기(210)를 이용하여 학습을 수행할 수 있다. 예를 들어, 생성기(200) 및 감별기(210)는 생성적 적대 신경망(GAN; Generative Adversarial Network) 기반의 학습 방식을 이용하여 상호 간의 경쟁을 통해 동작할 수 있다. In an embodiment, in generating artificial data by combining the object and the background based on the arrangement relationship between the object in the object image and the background in the background image, the computer may generate the artificial data closer to the actual surgical image. Learning can be done. In this case, the computer may perform the learning by using the generator 200 and the discriminator 210. For example, the generator 200 and the discriminator 210 may operate by competing with each other using a generative adversarial network (GAN) based learning scheme.
도 6을 참조하면, 생성기(200)는 실제수술영상을 이용하여 생성모델(Generative Model)을 학습시키고, 학습된 생성모델을 기반으로 입력 데이터(실제수술영상)(220)를 실제에 가까운 인공데이터(230)로 생성할 수 있다. Referring to FIG. 6, the generator 200 trains a generation model using a real surgery image, and based on the trained generation model, artificial data close to the actual input data (actual surgery image) 220. And 230.
일 실시예로, 생성기(200)는 생성모델을 이용하여 각각의 실제수술영상으로부터 획득된 배경이미지 및 객체이미지를 결합하여 인공데이터를 생성할 수 있다. In an embodiment, the generator 200 may generate artificial data by combining a background image and an object image obtained from each actual surgical image using a generation model.
감별기(210)는 생성기(200)에 의해 생성된 인공데이터(230)가 실제데이터인지 인공데이터인지를 감별하도록 감별모델(Discriminative Model)을 학습시킨다. 이 때, 감별기(210)는 인공데이터에 대응하는 실제수술영상(240)을 기반으로 인공데이터(230)의 진위여부를 감별하도록 감별모델을 학습시킬 수 있다. 감별기(210)는 학습된 감별모델을 기반으로 생성모델을 다시 학습시킬 수 있다. The discriminator 210 trains a discrimination model to discriminate whether the artificial data 230 generated by the generator 200 is real data or artificial data. At this time, the discriminator 210 may train the discrimination model to discriminate the authenticity of the artificial data 230 based on the actual surgical image 240 corresponding to the artificial data. The discriminator 210 may retrain the generated model based on the learned discrimination model.
일 실시예로, 감별기(210)는 감별모델을 이용하여 생성기(200)에 의해 생성된 인공데이터(230)가 실제데이터인지 인공데이터인지를 판단할 수 있다. 감별기(210)의 판단 결과 실제가 아닌 인공데이터인 것으로 판단한 경우, 즉 생성기(200)가 감별기(210)를 속이지 못한 경우, 생성기(200)는 감별기(210)를 속이지 못한만큼의 에러를 줄이는 방향으로 생성모델을 다시 학습시킬 수 있다. 생성기(200)는 생성모델의 재학습을 통해 개선된 인공데이터를 생성할 수 있도록 한다. 이와 반대로, 감별기(210)의 판단 결과 실제데이터인 것으로 판단한 경우, 즉 감별기(210)가 생성기(200)에게 속은 경우, 감별기(210)는 오답률(에러)을 줄이는 방향으로 감별모델을 다시 학습시킬 수 있다. 생성기(200)와 감별기(210)에서 이러한 과정이 반복되면서 실제에 가까운 인공데이터를 만들 수 있다. In one embodiment, the discriminator 210 may determine whether the artificial data 230 generated by the generator 200 is real data or artificial data using the discrimination model. If the discriminator 210 determines that the artificial data is not real, that is, the generator 200 does not deceive the discriminator 210, the generator 200 may not deceive the discriminator 210. You can retrain the generation model in a way that reduces. The generator 200 may generate improved artificial data through relearning the generation model. On the contrary, in the case where it is determined that the discriminator 210 is the actual data, that is, when the discriminator 210 is deceived by the generator 200, the discriminator 210 reduces the discrimination model in the direction of reducing the error rate (error). You can relearn. This process is repeated in the generator 200 and the discriminator 210, thereby making artificial data close to reality.
따라서, 컴퓨터는 생성기(200)와 감별기(210) 간의 상호 학습을 통해 실제수술영상에 근사한 인공데이터가 생성되면 이를 기초로 수술영상 인식을 위한 학습모델을 학습시킬 학습 데이터 세트를 구성할 수 있다. Therefore, when the artificial data approximating the actual surgical image is generated through the mutual learning between the generator 200 and the discriminator 210, the computer may construct a training data set for learning a learning model for recognizing a surgical image. .
수술영상은 실제 수술과정을 통해서만 획득될 수 있고, 그 특성 상 제한적인 장면만 포함하고 있는 경우가 많다. 실제 수술시에는 특정 수술부위를 대상으로 수술을 수행하며, 또한 수술부위나 수술목적에 따라 정해진 수술도구를 이용해서 수술을 수행하게 되므로, 다양한 수술도구나 수술부위를 포함하고 있는 수술영상을 확보하기 힘들다. 따라서, 이러한 수술영상을 이용하여 학습을 수행하는 경우, 실제 수술시에 획득되는 실제수술영상만으로는 충분한 학습 데이터를 구축하기 힘들다. 이에, 본 발명에서는 실제수술영상과 거의 차이가 없는 인공데이터를 생성함으로써, 수술영상을 이용하여 학습을 수행하는 학습모델의 학습 데이터로 제공할 수 있다. Surgical images can only be obtained through actual surgical procedures, and often contain only limited scenes. In actual operation, surgery is performed on a specific surgical site, and since surgery is performed using a surgical tool determined according to the surgical site or the surgical purpose, it is difficult to secure a surgical image including various surgical tools or surgical sites. . Therefore, when learning is performed using such a surgical image, it is difficult to construct sufficient learning data using only the actual surgical image obtained during the actual surgery. Thus, in the present invention, by generating artificial data almost no difference from the actual surgical image, it can be provided as the learning data of the learning model to perform the learning using the surgical image.
도 7 내지 도 10은 본 발명의 일 실시예에 따른 학습을 기반으로 인공데이터를 생성하는 방법의 실시예들을 설명하기 위해 도시된 도면이다. 7 to 10 are diagrams for explaining embodiments of a method for generating artificial data based on learning according to an embodiment of the present invention.
도 7 내지 도 10을 참조하여, 컴퓨터가 배경이미지 및 객체이미지를 획득하여 인공데이터를 생성하는 다양한 실시예들을 설명한다. 7 to 10, various embodiments in which a computer acquires a background image and an object image to generate artificial data will be described.
도 7은 객체 및 배경을 포함하는 제1, 2 실제수술영상을 이용하여 인공데이터를 생성하는 제1 실시예이다. FIG. 7 illustrates a first embodiment of generating artificial data using first and second actual surgical images including an object and a background.
도 7을 참조하면, 컴퓨터는 객체 및 배경을 포함하는 제1 실제수술영상(300)과, 객체 및 배경을 포함하는 제2 실제수술영상(310)을 획득할 수 있다. 이때, 컴퓨터는 제1 실제수술영상(300)과 제2 실제수술영상(310) 각각에 포함된 객체이미지 또는 배경이미지를 추출하고, 이들을 조합하여 인공데이터를 생성할 수 있다. Referring to FIG. 7, the computer may acquire a first real surgery image 300 including an object and a background, and a second real surgery image 310 including an object and a background. In this case, the computer may extract the object image or the background image included in each of the first real surgery image 300 and the second real surgery image 310, and combine them to generate artificial data.
일 실시예로, 컴퓨터는 제1 실제수술영상(300) 내 배경이미지를 추출하고, 제2 실제수술영상(310) 내 객체이미지를 추출할 수 있다. 컴퓨터는 추출한 배경이미지 및 객체이미지를 생성모델(즉, 생성기)(320)을 이용하여 실제수술영상에 가까운 인공데이터(330)를 생성할 수 있다. 예를 들어, 컴퓨터는 생성모델(320)에서의 학습을 바탕으로 배경이미지 내 배경(즉, 신체내부의 특정 영역에 존재하는 장기, 혈관, 조직 등)과, 객체이미지 내 객체(즉, 수술도구, 혈액, 출혈 등) 간의 배치 관계를 기초로 배경이미지와 객체이미지를 결합시킬 수 있다. 이때, 컴퓨터는 제2 실제수술영상(310)과 함께 제2 실제수술영상(310) 내 객체 세그먼테이션(segmentation)(311)을 정답으로서 생성모델(320)에 제공할 수 있다. 생성모델(320)은 정답인 객체 세그먼테이션(311)을 통해 학습되므로, 보다 실제수술영상에 가까운 인공데이터를 생성할 수 있다. In an embodiment, the computer may extract the background image in the first real surgery image 300 and the object image in the second real surgery image 310. The computer may generate artificial data 330 close to the actual surgical image by using the generated model (ie, the generator) 320 to extract the extracted background image and the object image. For example, based on the learning in the generation model 320, the computer may use the background in the background image (ie, organs, blood vessels, tissues, etc., present in a specific area of the body) and the objects in the object image (ie, surgical instruments). Background image and object image can be combined based on the arrangement relationship between the blood, blood, and bleeding. In this case, the computer may provide an object segmentation 311 in the second real surgery image 310 to the generation model 320 together with the second real surgery image 310 as a correct answer. Since the generation model 320 is trained through the object segmentation 311 which is the correct answer, it is possible to generate artificial data closer to the actual surgical image.
컴퓨터는 생성모델(320)에 의해 생성된 인공데이터(330)를 감별모델(즉, 감별기)(350)에 제공할 수 있다. 감별모델(350)은 인공데이터(330)에 대응하는 실제수술영상(340)을 기반으로 인공데이터(330)의 진위여부를 판단할 수 있다. 이때, 컴퓨터는 감별모델(350)의 학습을 위해 인공데이터(330) 내 객체 세그먼테이션(331)과, 실제수술영상(340) 내 객체 세그먼테이션(341)을 추가적으로 제공할 수 있다. The computer may provide the artificial data 330 generated by the generation model 320 to the discrimination model (ie, the discriminator) 350. The differential model 350 may determine the authenticity of the artificial data 330 based on the actual surgical image 340 corresponding to the artificial data 330. In this case, the computer may additionally provide the object segmentation 331 in the artificial data 330 and the object segmentation 341 in the actual surgical image 340 to learn the differential model 350.
컴퓨터는 감별모델(350)의 판단 결과에 따라 생성모델(320) 또는 감별모델(350)을 재학습시킬 수 있다. 예를 들어, 감별모델(350)의 판단 결과, 인공데이터(330)가 실제가 아닌 인공데이터인 것으로 판단된 경우, 컴퓨터는 생성모델(320)을 다시 학습시킬 수 있다. 이와 반대로, 인공데이터(330)가 실제데이터인 것으로 판단된 경우, 컴퓨터는 감별모델(350)을 다시 학습시킬 수 있다. The computer may relearn the generation model 320 or the differential model 350 according to the determination result of the differential model 350. For example, when it is determined that the artificial data 330 is artificial data rather than actual data, the computer may relearn the generated model 320. On the contrary, when it is determined that the artificial data 330 is real data, the computer may relearn the differential model 350.
다른 실시예로, 컴퓨터는 제1 실제수술영상(300) 내 객체이미지를 추출하고, 제2 실제수술영상(310) 내 배경이미지를 추출하여, 인공데이터를 생성할 수 있다. 이에 대한 구체적인 과정은 도 7을 참조하여 설명한 바와 유사하므로, 본 실시예에서는 설명을 생략하도록 한다. In another embodiment, the computer may extract the object image in the first real surgery image 300, extract the background image in the second real surgery image 310, and generate artificial data. Since a detailed process thereof is similar to that described with reference to FIG. 7, the description thereof will be omitted.
상술한 실시예에 따르면, 서로 다른 객체가 포함된 실제수술영상을 활용하여 인공데이터를 생성하는 것으로, 이는 수술시에 잘 등장하지 않는 희귀한 객체(예컨대, 수술도구, 혈액이나 출혈)에 대한 수술영상을 축적할 수 있다. 또한, 수동으로 레이블링을 수행하는 경우 비용이 비싼 세그먼테이션 데이터를 인공데이터로 대체할 수 있으므로, 비용을 절약할 수 있다. According to the above-described embodiment, artificial data is generated by using an actual surgical image including different objects, which is performed on rare objects (eg, surgical instruments, blood or bleeding) that do not appear well at the time of surgery. You can accumulate images. In addition, manual labeling can replace expensive segmentation data with artificial data, thereby saving costs.
도 8은 객체만 포함하는 제1 실제수술영상과 객체 및 배경을 모두 포함하는 제2 실제수술영상을 이용하여 인공데이터를 생성하는 제2 실시예이다. FIG. 8 is a second embodiment of generating artificial data using a first real surgery image including only an object and a second real surgery image including both an object and a background.
도 8을 참조하면, 컴퓨터는 객체만 포함하는 제1 실제수술영상(400)과, 객체 및 배경을 모두 포함하는 제2 실제수술영상(410)을 획득할 수 있다. 이때, 컴퓨터는 제1 실제수술영상(400)에서는 객체이미지를 추출하고, 제2 실제수술영상(410)에서는 배경이미지를 추출할 수 있다. 컴퓨터는 추출한 배경이미지 및 객체이미지를 생성모델(즉, 생성기)(420)을 이용하여 실제수술영상에 가까운 인공데이터(430)를 생성할 수 있다.Referring to FIG. 8, the computer may acquire a first real surgery image 400 including only an object and a second real surgery image 410 including both an object and a background. In this case, the computer may extract the object image from the first real surgery image 400 and the background image from the second real surgery image 410. The computer may generate artificial data 430 close to the actual surgical image by using the generation model (ie, the generator) 420 of the extracted background image and the object image.
예를 들어, 컴퓨터는 생성모델(420)에서의 학습을 바탕으로 배경이미지 내 배경(즉, 신체내부의 특정 영역에 존재하는 장기, 혈관, 조직 등)과, 객체이미지 내 객체(즉, 수술도구, 혈액, 출혈 등) 간의 배치 관계를 기초로 배경이미지와 객체이미지를 결합시킬 수 있다.For example, based on the training in the generation model 420, the computer may use the background in the background image (ie, organs, blood vessels, tissues, etc., present in a specific area of the body) and the objects in the object image (ie, surgical instruments). Background image and object image can be combined based on the arrangement relationship between the blood, blood, and bleeding.
컴퓨터는 생성모델(420)에 의해 생성된 인공데이터(430)를 감별모델(즉, 감별기)(450)에 제공할 수 있다. 감별모델(450)은 인공데이터(430)에 대응하는 실제수술영상(440)을 기반으로 인공데이터(430)의 진위여부를 판단할 수 있다. 이때, 컴퓨터는 감별모델(450)의 학습을 위해 인공데이터(430) 내 객체 세그먼테이션(431)과, 실제수술영상(440) 내 객체 세그먼테이션(441)을 추가적으로 제공할 수 있다. The computer may provide the artificial data 430 generated by the generation model 420 to the discrimination model (ie, the discriminator) 450. The differential model 450 may determine the authenticity of the artificial data 430 based on the actual surgical image 440 corresponding to the artificial data 430. In this case, the computer may additionally provide the object segmentation 431 in the artificial data 430 and the object segmentation 441 in the actual surgical image 440 to learn the differential model 450.
컴퓨터는 감별모델(450)의 판단 결과에 따라 생성모델(420) 또는 감별모델(450)을 재학습시킬 수 있다. 예를 들어, 감별모델(450)의 판단 결과, 인공데이터(430)가 실제가 아닌 인공데이터인 것으로 판단된 경우, 컴퓨터는 생성모델(320)을 다시 학습시킬 수 있다. 이와 반대로, 인공데이터(430)가 실제데이터인 것으로 판단된 경우, 컴퓨터는 감별모델(450)을 다시 학습시킬 수 있다. The computer may relearn the generation model 420 or the differential model 450 according to the determination result of the differential model 450. For example, when it is determined that the artificial data 430 is artificial data rather than real data, the computer may relearn the generated model 320. On the contrary, when it is determined that the artificial data 430 is real data, the computer may relearn the differential model 450.
상술한 실시예에 따르면, 인공데이터 생성에 대한 유연성을 높일 수 있고, 다양한 객체에 대한 수술영상을 축적할 수 있다. 예컨대 다양한 유형의 수술도구 영상, 수술도구의 위치, 방향, 배치 등을 각기 다르게 설정한 수술영상 등을 확보할 수 있다. According to the embodiment described above, flexibility for generating artificial data can be increased, and surgical images for various objects can be accumulated. For example, various types of surgical tool images, surgical images with different positions, directions, and arrangements of surgical tools can be obtained.
도 9는 배경만 포함하는 제1 실제수술영상과 객체 및 배경을 모두 포함하는 제2 실제수술영상을 이용하여 인공데이터를 생성하는 제3 실시예이다. 9 is a third embodiment of generating artificial data using a first real surgery image including only a background and a second real surgery image including both an object and a background.
도 9를 참조하면, 컴퓨터는 배경만 포함하는 제1 실제수술영상(500)과, 객체 및 배경을 모두 포함하는 제2 실제수술영상(510)을 획득할 수 있다. 이때, 컴퓨터는 제1 실제수술영상(500)에서는 배경이미지를 추출하고, 제2 실제수술영상(510)에서는 객체이미지를 추출할 수 있다. 컴퓨터는 추출한 배경이미지 및 객체이미지를 생성모델(즉, 생성기)(520)을 이용하여 실제수술영상에 가까운 인공데이터(530)를 생성할 수 있다.Referring to FIG. 9, the computer may acquire a first real surgery image 500 including only a background and a second real surgery image 510 including both an object and a background. In this case, the computer may extract the background image from the first real surgery image 500 and the object image from the second real surgery image 510. The computer may generate artificial data 530 close to the actual surgical image by using the generated model (ie, generator) 520 of the extracted background image and the object image.
예를 들어, 컴퓨터는 생성모델(520)에서의 학습을 바탕으로 배경이미지 내 배경(즉, 신체내부의 특정 영역에 존재하는 장기, 혈관, 조직 등)과, 객체이미지 내 객체(즉, 수술도구, 혈액, 출혈 등) 간의 배치 관계를 기초로 배경이미지와 객체이미지를 결합시킬 수 있다.For example, based on the learning in the generation model 520, the computer may use the background in the background image (ie, organs, blood vessels, tissues, etc., present in a specific area of the body) and the objects in the object image (ie, surgical instruments). Background image and object image can be combined based on the arrangement relationship between the blood, blood, and bleeding.
이때, 컴퓨터는 제2 실제수술영상(510)과 함께 제2 실제수술영상(510) 내 객체 세그먼테이션(511)을 정답으로서 생성모델(520)에 제공할 수 있다. 생성모델(520)은 정답인 객체 세그먼테이션(511)을 통해 학습되므로, 보다 실제수술영상에 가까운 인공데이터를 생성할 수 있다. In this case, the computer may provide the object segmentation 511 in the second actual surgery image 510 with the second actual surgery image 510 as a correct answer to the generation model 520. Since the generation model 520 is trained through the object segmentation 511 which is the correct answer, the generation model 520 may generate artificial data closer to the actual surgical image.
컴퓨터는 생성모델(520)에 의해 생성된 인공데이터(530)를 감별모델(즉, 감별기)(550)에 제공할 수 있다. 감별모델(550)은 인공데이터(530)에 대응하는 실제수술영상(540)을 기반으로 인공데이터(530)의 진위여부를 판단할 수 있다. 이때, 컴퓨터는 감별모델(550)의 학습을 위해 인공데이터(530) 내 객체 세그먼테이션(531)과, 실제수술영상(540) 내 객체 세그먼테이션(541)을 추가적으로 제공할 수 있다. The computer may provide the artificial data 530 generated by the generation model 520 to the discrimination model (ie, discriminator) 550. The differential model 550 may determine the authenticity of the artificial data 530 based on the actual surgical image 540 corresponding to the artificial data 530. In this case, the computer may additionally provide an object segmentation 531 in the artificial data 530 and an object segmentation 541 in the actual surgical image 540 to learn the differential model 550.
컴퓨터는 감별모델(550)의 판단 결과에 따라 생성모델(520) 또는 감별모델(550)을 재학습시킬 수 있다. 예를 들어, 감별모델(550)의 판단 결과, 인공데이터(530)가 실제가 아닌 인공데이터인 것으로 판단된 경우, 컴퓨터는 생성모델(520)을 다시 학습시킬 수 있다. 이와 반대로, 인공데이터(530)가 실제데이터인 것으로 판단된 경우, 컴퓨터는 감별모델(550)을 다시 학습시킬 수 있다. The computer may relearn the generation model 520 or the differential model 550 according to the determination result of the differential model 550. For example, when it is determined that the artificial data 530 is artificial data rather than actual data, the computer may relearn the generated model 520. On the contrary, if it is determined that the artificial data 530 is real data, the computer may relearn the differential model 550.
상술한 실시예에 따르면, 인공데이터 생성에 대한 유연성을 높일 수 있고, 특정 객체(예컨대, 수술도구)에 대해서 다양한 유형의 신체내부 장기, 혈관, 조직 등을 수술하는 영상을 확보할 수 있다. 예컨대, 하나의 수술도구에 대해 각기 다른 신체부위를 수술하고 있는 수술영상을 확보할 수 있다. According to the above-described embodiments, it is possible to increase flexibility for generating artificial data and to obtain an image of operating various types of internal organs, blood vessels, tissues, etc. on a specific object (eg, a surgical tool). For example, it is possible to obtain a surgical image for operating different body parts for one surgical tool.
도 10은 배경만 포함하는 제1 실제수술영상과 객체만 포함하는 제2 실제수술영상을 이용하여 인공데이터를 생성하는 제4 실시예이다.FIG. 10 is a fourth embodiment of generating artificial data using a first real surgery image including only a background and a second real surgery image including only an object.
도 10을 참조하면, 컴퓨터는 배경만 포함하는 제1 실제수술영상(600)과, 객체만 포함하는 제2 실제수술영상(610)을 획득할 수 있다. 이때, 컴퓨터는 제1 실제수술영상(600)에서는 배경이미지를 추출하고, 제2 실제수술영상(610)에서는 객체이미지를 추출할 수 있다. 컴퓨터는 추출한 배경이미지 및 객체이미지를 생성모델(즉, 생성기)(620)을 이용하여 실제수술영상에 가까운 인공데이터(630)를 생성할 수 있다.Referring to FIG. 10, the computer may acquire a first real surgery image 600 including only a background and a second real surgery image 610 including only an object. In this case, the computer may extract the background image from the first real surgery image 600 and the object image from the second real surgery image 610. The computer may generate artificial data 630 close to the actual surgical image by using the generated model (ie, generator) 620 of the extracted background image and the object image.
예를 들어, 컴퓨터는 생성모델(620)에서의 학습을 바탕으로 배경이미지 내 배경(즉, 신체내부의 특정 영역에 존재하는 장기, 혈관, 조직 등)과, 객체이미지 내 객체(즉, 수술도구, 혈액, 출혈 등) 간의 배치 관계를 기초로 배경이미지와 객체이미지를 결합시킬 수 있다.For example, based on the learning in the generation model 620, the computer may use the background in the background image (ie, organs, blood vessels, tissues, etc., present in a specific area of the body) and the objects in the object image (ie, surgical instruments). Background image and object image can be combined based on the arrangement relationship between the blood, blood, and bleeding.
컴퓨터는 생성모델(620)에 의해 생성된 인공데이터(630)를 감별모델(즉, 감별기)(650)에 제공할 수 있다. 감별모델(650)은 인공데이터(630)에 대응하는 실제수술영상(640)을 기반으로 인공데이터(630)의 진위여부를 판단할 수 있다. 이때, 컴퓨터는 감별모델(650)의 학습을 위해 인공데이터(630) 내 객체 세그먼테이션(631)과, 실제수술영상(640) 내 객체 세그먼테이션(641)을 추가적으로 제공할 수 있다. The computer may provide the artificial data 630 generated by the generation model 620 to the discrimination model (ie, discriminator) 650. The differential model 650 may determine the authenticity of the artificial data 630 based on the actual surgical image 640 corresponding to the artificial data 630. In this case, the computer may additionally provide the object segmentation 631 in the artificial data 630 and the object segmentation 641 in the actual surgical image 640 to learn the differential model 650.
컴퓨터는 감별모델(650)의 판단 결과에 따라 생성모델(620) 또는 감별모델(650)을 재학습시킬 수 있다. 예를 들어, 감별모델(650)의 판단 결과, 인공데이터(630)가 실제가 아닌 인공데이터인 것으로 판단된 경우, 컴퓨터는 생성모델(620)을 다시 학습시킬 수 있다. 이와 반대로, 인공데이터(630)가 실제데이터인 것으로 판단된 경우, 컴퓨터는 감별모델(650)을 다시 학습시킬 수 있다. The computer may relearn the generation model 620 or the differential model 650 according to the determination result of the differential model 650. For example, when it is determined that the artificial data 630 is artificial data rather than real data, the computer may relearn the generated model 620. On the contrary, when it is determined that the artificial data 630 is real data, the computer may relearn the differential model 650.
상술한 실시예에 따르면, 다양한 객체 및 다양한 신체내부 공간을 포함하는 수술영상을 획득할 수 있다. 예컨대, 필요한 수술도구 또는 필요한 신체내부의 장기, 혈관, 조직 등에 대한 정보를 자유롭게 배치하여 다양한 유형의 수술영상을 확보할 수 있다. According to the above-described embodiment, a surgical image including various objects and various internal body spaces may be acquired. For example, various types of surgical images may be obtained by freely arranging information on necessary surgical tools or organs, blood vessels, tissues, and the like.
상술한 도 9 및 도 10의 실시예에서는, 배경만 포함하는 실제수술영상(배경이미지)을 획득하여 인공데이터를 생성한다. 이때, 배경만 포함하는 실제수술영상에는 수술도구 등과 같은 객체를 포함하지 않고 단지 배경이미지만 포함하고 있다. 이 경우, 컴퓨터는 내시경 카메라에 의해 신체 내부의 특정 위치에서 촬영된 영상프레임들을 획득하고, 이 영상프레임들로부터 수술도구 등과 같은 객체이미지를 제거하여 배경 영역만 포함하는 배경이미지를 생성할 수 있다. 또는, 컴퓨터는 내시경을 이용한 수술 시에 신체 내부로 진입하는 내시경에 의해 획득된 영상프레임을 사용할 수 있다. 이 경우, 수술도구 등의 객체를 포함하지 않는 배경이미지만 존재하는 영상프레임을 획득할 수 있다. 또는, 컴퓨터는 복강경이나 로봇수술과 같은 최소침습수술 시에 신체내부로 진입하는 카메라에 의해 획득된 영상프레임으로부터 배경만 포함하는 영상프레임을 추출할 수 있다. 최소침습수술의 경우, 제1 영역의 수술동작이 완료되고 제2 영역으로 이동하여 수술을 수행할 시에 카메라와 수술도구도 제1 영역에서 제2 영역으로 이동하게 된다. 이때, 수술의 특성상 카메라가 이동할 때 수술도구는 움직이지 않는 제약사항이 있다. 따라서, 제1 영역에서 제2 영역으로 이동할 때, 카메라가 먼저 이동을 한 다음 수술도구가 이동하게 되므로, 제2 영역으로 먼저 이동한 카메라가 수술도구 없는 영상프레임을 획득할 수 있다. 9 and 10, the artificial data is generated by acquiring an actual surgical image (background image) including only a background. In this case, the actual surgical image including only the background does not include an object such as a surgical tool and includes only a background image. In this case, the computer may acquire image frames photographed at a specific position inside the body by the endoscope camera, and remove the object image such as a surgical tool from the image frames to generate a background image including only the background area. Alternatively, the computer may use an image frame obtained by the endoscope entering the body during the operation using the endoscope. In this case, an image frame having only a background image not including an object such as a surgical tool may be obtained. Alternatively, the computer may extract an image frame including only a background from an image frame obtained by a camera entering the body during minimally invasive surgery such as laparoscopic or robotic surgery. In the case of minimally invasive surgery, the operation of the first area is completed and the camera and the surgical tool are also moved from the first area to the second area when the operation is performed by moving to the second area. At this time, there is a constraint that the surgical tool does not move when the camera moves due to the nature of the surgery. Accordingly, when moving from the first area to the second area, the camera moves first and then the surgical tool moves, so that the camera moved first to the second area may acquire an image frame without the surgical tool.
컴퓨터는 상술한 실시예들로부터 생성된 인공데이터를 이용하여 학습 데이터를 구축할 수 있다. 예를 들어, 영상인식을 위한 학습모델을 학습시키기 위한 학습 데이터로 인공데이터를 활용할 수 있다. 따라서, 본 발명의 실시예에 따르면 대량의 학습 데이터가 필요한 인공지능, 딥러닝, 기계학습 등에 실제수술영상과 함께 인공으로 생성된 수술영상을 제공함으로써, 충분한 학습 효과를 얻을 수 있도록 한다. The computer may construct the training data using artificial data generated from the above embodiments. For example, artificial data may be used as training data for training a training model for image recognition. Therefore, according to an embodiment of the present invention, by providing artificial surgical images generated with artificial surgery, deep learning, machine learning, etc. which requires a large amount of learning data together with the actual surgical images, sufficient learning effects can be obtained.
도 11은 본 발명의 일 실시예에 따라 로봇수술을 수행할 수 있는 시스템을 간략하게 도식화한 도면이다. 11 is a schematic diagram of a system capable of performing robot surgery according to an embodiment of the present invention.
도 11에 따르면, 로봇수술 시스템은 의료영상 촬영장비(10), 서버(100) 및 수술실에 구비된 제어부(30), 디스플레이(32) 및 수술로봇(34)을 포함한다. 실시 예에 따라서, 의료영상 촬영장비(10)는 개시된 실시 예에 따른 로봇수술 시스템에서 생략될 수 있다.According to FIG. 11, the robotic surgical system includes a medical imaging apparatus 10, a server 100, a control unit 30 provided in an operating room, a display 32, and a surgical robot 34. According to an embodiment, the medical imaging apparatus 10 may be omitted in the robot surgery system according to the disclosed embodiment.
일 실시 예에서, 수술로봇(34)은 촬영장치(36) 및 수술도구(38)를 포함한다.In one embodiment, surgical robot 34 includes imaging device 36 and surgical instrument 38.
일 실시 예에서, 로봇수술은 사용자가 제어부(30)를 이용하여 수술용 로봇(34)을 제어함으로써 수행된다. 일 실시 예에서, 로봇수술은 사용자의 제어 없이 제어부(30)에 의하여 자동으로 수행될 수도 있다.In one embodiment, the robot surgery is performed by the user controlling the surgical robot 34 using the control unit 30. In one embodiment, the robot surgery may be automatically performed by the controller 30 without the user's control.
서버(100)는 적어도 하나의 프로세서와 통신부를 포함하는 컴퓨팅 장치이다.The server 100 is a computing device including at least one processor and a communication unit.
제어부(30)는 적어도 하나의 프로세서와 통신부를 포함하는 컴퓨팅 장치를 포함한다. 일 실시 예에서, 제어부(30)는 수술용 로봇(34)을 제어하기 위한 하드웨어 및 소프트웨어 인터페이스를 포함한다.The controller 30 includes a computing device including at least one processor and a communication unit. In one embodiment, the control unit 30 includes hardware and software interfaces for controlling the surgical robot 34.
촬영장치(36)는 적어도 하나의 이미지 센서를 포함한다. 즉, 촬영장치(36)는 적어도 하나의 카메라 장치를 포함하여, 대상체, 즉 수술부위를 촬영하는 데 이용된다. 일 실시 예에서, 촬영장치(36)는 수술로봇(34)의 수술 암(arm)과 결합된 적어도 하나의 카메라를 포함한다.The imaging device 36 includes at least one image sensor. That is, the imaging device 36 includes at least one camera device and is used to photograph an object, that is, a surgical site. In one embodiment, the imaging device 36 includes at least one camera coupled with a surgical arm of the surgical robot 34.
일 실시 예에서, 촬영장치(36)에서 촬영된 영상은 디스플레이(340)에 표시된다.In an embodiment, the image photographed by the photographing apparatus 36 is displayed on the display 340.
일 실시 예에서, 수술로봇(34)은 수술부위의 절단, 클리핑, 고정, 잡기 동작 등을 수행할 수 있는 하나 이상의 수술도구(38)를 포함한다. 수술도구(38)는 수술로봇(34)의 수술 암과 결합되어 이용된다.In one embodiment, surgical robot 34 includes one or more surgical tools 38 that can perform cutting, clipping, fixing, grabbing operations, and the like, of the surgical site. Surgical tool 38 is used in conjunction with the surgical arm of the surgical robot 34.
제어부(30)는 서버(100)로부터 수술에 필요한 정보를 수신하거나, 수술에 필요한 정보를 생성하여 사용자에게 제공한다. 예를 들어, 제어부(30)는 생성 또는 수신된, 수술에 필요한 정보를 디스플레이(32)에 표시한다.The controller 30 receives information necessary for surgery from the server 100 or generates information necessary for surgery and provides the information to the user. For example, the controller 30 displays the information necessary for surgery, generated or received, on the display 32.
예를 들어, 사용자는 디스플레이(32)를 보면서 제어부(30)를 조작하여 수술로봇(34)의 움직임을 제어함으로써 로봇수술을 수행한다.For example, the user performs the robot surgery by controlling the movement of the surgical robot 34 by manipulating the control unit 30 while looking at the display 32.
서버(100)는 의료영상 촬영장비(10)로부터 사전에 촬영된 대상체의 의료영상데이터를 이용하여 로봇수술에 필요한 정보를 생성하고, 생성된 정보를 제어부(30)에 제공한다. The server 100 generates information necessary for robotic surgery using medical image data of an object previously photographed from the medical image photographing apparatus 10, and provides the generated information to the controller 30.
제어부(30)는 서버(100)로부터 수신된 정보를 디스플레이(32)에 표시함으로써 사용자에게 제공하거나, 서버(100)로부터 수신된 정보를 이용하여 수술로봇(34)을 제어한다.The controller 30 displays the information received from the server 100 on the display 32 to provide the user, or controls the surgical robot 34 by using the information received from the server 100.
일 실시 예에서, 의료영상 촬영장비(10)에서 사용될 수 있는 수단은 제한되지 않으며, 예를 들어 CT, X-Ray, PET, MRI 등 다른 다양한 의료영상 획득수단이 사용될 수 있다. In one embodiment, the means that can be used in the medical imaging apparatus 10 is not limited, for example, other various medical image acquisition means such as CT, X-Ray, PET, MRI may be used.
상술한 바와 같이 로봇수술을 수행할 경우, 수술 과정에서 촬영된 수술영상 또는 수술로봇의 제어과정에서 다양한 수술정보를 포함하는 데이터를 획득할 수 있다. 일 실시예로, 본 발명에서는 이와 같은 로봇수술 과정에서 획득된 수술정보(즉, 수술영상)를 기초로 상술한 바와 같은 객체이미지 또는 배경이미지를 획득하여 인공데이터를 생성할 수 있다. 물론, 본 발명의 실시예에 따른 인공데이터를 생성함에 있어서, 로봇수술 과정에서 획득된 수술영상을 활용하는 것은 하나의 예시일 뿐이며, 본 발명이 이에 한정되는 것은 아니다. 다른 실시예로, 복강경, 내시경 등을 이용한 최소침습수술이나, 의료진들이 직접 환자에 대해 수술을 하는 경우 획득되는 수술영상 역시 인공데이터를 생성하는데 활용될 수 있다. As described above, when performing a robotic operation, data including various surgical information may be acquired in a surgical image photographed in a surgical process or a control process of a surgical robot. In one embodiment, in the present invention, artificial data may be generated by acquiring the object image or the background image as described above based on the surgical information (ie, the surgical image) obtained in the robot surgery. Of course, in generating artificial data according to an embodiment of the present invention, utilizing the surgical image obtained in the robot surgery process is just one example, the present invention is not limited thereto. In another embodiment, minimally invasive surgery using a laparoscope, endoscope, or the like, and a surgical image obtained when a medical staff directly operates on a patient may also be used to generate artificial data.
도 12는 본 발명의 일 실시예에 따른 인공데이터 생성 방법을 수행하는 장치(700)의 구성을 개략적으로 나타내는 도면이다. 12 is a diagram schematically showing the configuration of an apparatus 700 for performing a method of generating artificial data according to an embodiment of the present invention.
도 12를 참조하면, 프로세서(710)는 하나 이상의 코어(core, 미도시) 및 그래픽 처리부(미도시) 및/또는 다른 구성 요소와 신호를 송수신하는 연결 통로(예를 들어, 버스(bus) 등)를 포함할 수 있다.Referring to FIG. 12, the processor 710 may include a connection passage (eg, a bus or the like) that transmits and receives a signal with one or more cores (not shown) and a graphic processor (not shown) and / or other components. ) May be included.
일 실시예에 따른 프로세서(710)는 메모리(720)에 저장된 하나 이상의 인스트럭션을 실행함으로써, 도 5 내지 도 10과 관련하여 설명된 인공데이터 생성 방법을 수행한다.The processor 710 according to an embodiment executes one or more instructions stored in the memory 720 to perform the artificial data generation method described with reference to FIGS. 5 to 10.
예를 들어, 프로세서(710)는 메모리(720)에 저장된 하나 이상의 인스트럭션을 실행함으로써 배경이미지 및 객체이미지를 획득하고, 배경이미지 및 객체이미지를 결합하여 인공데이터를 생성할 수 있다.For example, the processor 710 may acquire a background image and an object image by executing one or more instructions stored in the memory 720, and generate artificial data by combining the background image and the object image.
한편, 프로세서(710)는 프로세서(710) 내부에서 처리되는 신호(또는, 데이터)를 일시적 및/또는 영구적으로 저장하는 램(RAM: Random Access Memory, 미도시) 및 롬(ROM: Read-Only Memory, 미도시)을 더 포함할 수 있다. 또한, 프로세서(710)는 그래픽 처리부, 램 및 롬 중 적어도 하나를 포함하는 시스템온칩(SoC: system on chip) 형태로 구현될 수 있다.Meanwhile, the processor 710 may include random access memory (RAM) and read-only memory (ROM) for temporarily and / or permanently storing a signal (or data) processed in the processor 710. , Not shown) may be further included. In addition, the processor 710 may be implemented in the form of a system on chip (SoC) including at least one of a graphic processor, a RAM, and a ROM.
메모리(720)에는 프로세서(710)의 처리 및 제어를 위한 프로그램들(하나 이상의 인스트럭션들)을 저장할 수 있다. 메모리(720)에 저장된 프로그램들은 기능에 따라 복수 개의 모듈들로 구분될 수 있다.The memory 720 may store programs (one or more instructions) for processing and controlling the processor 710. Programs stored in the memory 720 may be divided into a plurality of modules according to their functions.
이상에서 전술한 본 발명의 일 실시예에 따른 인공데이터 생성 방법은, 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 어플리케이션)으로 구현되어 매체에 저장될 수 있다.The artificial data generation method according to an embodiment of the present invention described above may be implemented as a program (or an application) and stored in a medium to be executed in combination with a computer which is hardware.
이하에서는 도 13 내지 도 18을 참조하여, 본 발명의 실시예에 따른 수술영상을 기초로 학습데이터를 생성하는 방법 및 장치에 관해 상세히 설명한다. Hereinafter, a method and apparatus for generating learning data based on a surgical image according to an embodiment of the present invention will be described in detail with reference to FIGS. 13 to 18.
본 명세서에서 "컴퓨터"는 연산처리를 수행하여 사용자에게 결과를 제공할 수 있는 다양한 장치들이 모두 포함된다. 예를 들어, 컴퓨터는 데스크 탑 PC, 노트북(Note Book) 뿐만 아니라 스마트폰(Smart phone), 태블릿 PC, 셀룰러폰(Cellular phone), 피씨에스폰(PCS phone; Personal Communication Service phone), 동기식/비동기식 IMT-2000(International Mobile Telecommunication-2000)의 이동 단말기, 팜 PC(Palm Personal Computer), 개인용 디지털 보조기(PDA; Personal Digital Assistant) 등도 해당될 수 있다. 또한, 헤드마운트 디스플레이(Head Mounted Display; HMD) 장치가 컴퓨팅 기능을 포함하는 경우, HMD장치가 컴퓨터가 될 수 있다. 또한, 컴퓨터는 클라이언트로부터 요청을 수신하여 정보처리를 수행하는 서버가 해당될 수 있다.As used herein, the term "computer" includes all the various devices capable of performing arithmetic processing to provide a result to a user. For example, a computer can be a desktop PC, a notebook, as well as a smartphone, a tablet PC, a cellular phone, a PCS phone (Personal Communication Service phone), synchronous / asynchronous The mobile terminal of the International Mobile Telecommunication-2000 (IMT-2000), a Palm Personal Computer (PC), a Personal Digital Assistant (PDA), and the like may also be applicable. In addition, when a head mounted display (HMD) device includes a computing function, the HMD device may be a computer. Also, the computer may correspond to a server that receives a request from a client and performs information processing.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 13은 본 발명의 일 실시예에 따라 로봇수술을 수행할 수 있는 시스템을 간략하게 도식화한 도면이다.FIG. 13 is a schematic diagram of a system capable of performing robot surgery according to an embodiment of the present invention. FIG.
도 13에 따르면, 로봇수술 시스템은 의료영상 촬영장비(10), 서버(100) 및 수술실에 구비된 제어부(30), 디스플레이(32) 및 수술로봇(34)을 포함한다. 실시 예에 따라서, 의료영상 촬영장비(10)는 개시된 실시 예에 따른 로봇수술 시스템에서 생략될 수 있다.According to FIG. 13, the robotic surgical system includes a medical imaging apparatus 10, a server 100, a control unit 30 provided in an operating room, a display 32, and a surgical robot 34. According to an embodiment, the medical imaging apparatus 10 may be omitted in the robot surgery system according to the disclosed embodiment.
일 실시 예에서, 수술로봇(34)은 촬영장치(36) 및 수술도구(38)를 포함한다.In one embodiment, surgical robot 34 includes imaging device 36 and surgical instrument 38.
일 실시 예에서, 로봇수술은 사용자가 제어부(30)를 이용하여 수술용 로봇(34)을 제어함으로써 수행된다. 일 실시 예에서, 로봇수술은 사용자의 제어 없이 제어부(30)에 의하여 자동으로 수행될 수도 있다.In one embodiment, the robot surgery is performed by the user controlling the surgical robot 34 using the control unit 30. In one embodiment, the robot surgery may be automatically performed by the controller 30 without the user's control.
서버(100)는 적어도 하나의 프로세서와 통신부를 포함하는 컴퓨팅 장치이다.The server 100 is a computing device including at least one processor and a communication unit.
제어부(30)는 적어도 하나의 프로세서와 통신부를 포함하는 컴퓨팅 장치를 포함한다. 일 실시 예에서, 제어부(30)는 수술용 로봇(34)을 제어하기 위한 하드웨어 및 소프트웨어 인터페이스를 포함한다.The controller 30 includes a computing device including at least one processor and a communication unit. In one embodiment, the control unit 30 includes hardware and software interfaces for controlling the surgical robot 34.
촬영장치(36)는 적어도 하나의 이미지 센서를 포함한다. 즉, 촬영장치(36)는 적어도 하나의 카메라 장치를 포함하여, 대상체, 즉 수술부위를 촬영하는 데 이용된다. 일 실시 예에서, 촬영장치(36)는 수술로봇(34)의 수술 암(arm)과 결합된 적어도 하나의 카메라를 포함한다.The imaging device 36 includes at least one image sensor. That is, the imaging device 36 includes at least one camera device and is used to photograph an object, that is, a surgical site. In one embodiment, the imaging device 36 includes at least one camera coupled with a surgical arm of the surgical robot 34.
일 실시 예에서, 촬영장치(36)에서 촬영된 영상은 디스플레이(340)에 표시된다.In an embodiment, the image photographed by the photographing apparatus 36 is displayed on the display 340.
일 실시 예에서, 수술로봇(34)은 수술부위의 절단, 클리핑, 고정, 잡기 동작 등을 수행할 수 있는 하나 이상의 수술도구(38)를 포함한다. 수술도구(38)는 수술로봇(34)의 수술 암과 결합되어 이용된다.In one embodiment, surgical robot 34 includes one or more surgical tools 38 that can perform cutting, clipping, fixing, grabbing operations, and the like, of the surgical site. Surgical tool 38 is used in conjunction with the surgical arm of the surgical robot 34.
제어부(30)는 서버(100)로부터 수술에 필요한 정보를 수신하거나, 수술에 필요한 정보를 생성하여 사용자에게 제공한다. 예를 들어, 제어부(30)는 생성 또는 수신된, 수술에 필요한 정보를 디스플레이(32)에 표시한다.The controller 30 receives information necessary for surgery from the server 100 or generates information necessary for surgery and provides the information to the user. For example, the controller 30 displays the information necessary for surgery, generated or received, on the display 32.
예를 들어, 사용자는 디스플레이(32)를 보면서 제어부(30)를 조작하여 수술로봇(34)의 움직임을 제어함으로써 로봇수술을 수행한다.For example, the user performs the robot surgery by controlling the movement of the surgical robot 34 by manipulating the control unit 30 while looking at the display 32.
서버(100)는 의료영상 촬영장비(10)로부터 사전에 촬영된 대상체의 의료영상데이터를 이용하여 로봇수술에 필요한 정보를 생성하고, 생성된 정보를 제어부(30)에 제공한다. The server 100 generates information necessary for robotic surgery using medical image data of an object previously photographed from the medical image photographing apparatus 10, and provides the generated information to the controller 30.
제어부(30)는 서버(100)로부터 수신된 정보를 디스플레이(32)에 표시함으로써 사용자에게 제공하거나, 서버(100)로부터 수신된 정보를 이용하여 수술로봇(34)을 제어한다.The controller 30 displays the information received from the server 100 on the display 32 to provide the user, or controls the surgical robot 34 by using the information received from the server 100.
일 실시 예에서, 의료영상 촬영장비(10)에서 사용될 수 있는 수단은 제한되지 않으며, 예를 들어 CT, X-Ray, PET, MRI 등 다른 다양한 의료영상 획득수단이 사용될 수 있다. In one embodiment, the means that can be used in the medical imaging apparatus 10 is not limited, for example, other various medical image acquisition means such as CT, X-Ray, PET, MRI may be used.
상술한 바와 같이, 로봇수술을 수행할 경우 수술 과정에서 촬영된 수술영상 또는 수술로봇의 제어과정에서 다양한 수술정보를 포함하는 데이터를 획득할 수 있다. 이에, 본 발명에서는 수술과정에서 획득할 수 있는 수술영상이나 수술데이터를 학습용 자료로 사용할 수 있도록 하고, 이러한 학습용 자료를 기초로 학습을 수행함으로써 수술과 관련된 다양한 정보를 추론해 낼 수 있는 학습모델을 구축할 수 있도록 하는 방안을 제공하고자 한다. As described above, when performing a robot operation, it is possible to obtain data including various surgical information in the surgical image taken during the surgical procedure or the control of the surgical robot. Thus, in the present invention, it is possible to use a surgical image or surgical data that can be obtained in the surgical process as a learning material, and by learning based on the learning data, a learning model that can infer a variety of information related to surgery. We want to provide a way to build it.
이하에서는 설명의 편의를 위해 "컴퓨터"가 본 명세서에서 개시되는 실시예에 따른 수술영상을 기초로 학습데이터를 생성하는 방법을 수행하는 것으로 설명한다. "컴퓨터"는 도 13의 서버(100) 또는 제어부(30)를 의미할 수 있으나, 이에 한정되는 것은 아니고 컴퓨팅 처리를 수행할 수 있는 장치를 포괄하는 의미로 사용될 수 있다. 예를 들어, 컴퓨터는 도 13에 도시된 장치와는 별도로 구비된 컴퓨팅 장치일 수도 있다. Hereinafter, for convenience of description, it will be described that a "computer" performs a method of generating learning data based on a surgical image according to an embodiment disclosed herein. "Computer" may mean the server 100 or the controller 30 of FIG. 13, but is not limited thereto. The term "computer" may be used to mean a device capable of performing computing processing. For example, the computer may be a computing device provided separately from the device shown in FIG. 13.
또한, 이하에서 개시되는 실시예들은 도 13에 도시된 로봇수술 시스템과 연관되어서만 적용될 수 있는 것은 아니고, 수술과정에서 수술영상을 획득하고 이를 활용할 수 있는 모든 종류의 실시예들에 적용될 수 있다. 예를 들어, 로봇수술 이외에도 복강경 수술이나 내시경을 이용한 수술 등과 같은 최소침습수술과 연관되어서 적용될 수 있다. In addition, the embodiments disclosed below may not be applicable only in connection with the robotic surgery system illustrated in FIG. 13, but may be applied to all kinds of embodiments that may acquire and utilize a surgical image in a surgical procedure. For example, in addition to robotic surgery, it can be applied in connection with minimally invasive surgery such as laparoscopic surgery or endoscopic surgery.
도 14는 본 발명의 일 실시예에 따른 수술영상을 기초로 학습데이터를 생성하는 방법을 개략적으로 도시한 흐름도이다. 14 is a flowchart schematically illustrating a method of generating learning data based on a surgical image according to an embodiment of the present invention.
도 14를 참조하면, 본 발명의 일 실시예에 따른 수술영상을 기초로 학습데이터를 생성하는 방법은, 복수의 영상프레임을 포함하는 수술영상을 획득하는 단계(S100), 상기 복수의 영상프레임 각각으로부터 수술인식정보를 인식하는 단계(S200), 및 상기 복수의 영상프레임 각각에 대해, 상기 수술인식정보를 기초로 상기 수술인식정보에 포함된 수술요소(surgical element) 간의 관계를 나타내는 관계표현(Relational Representation) 정보를 생성하는 단계(S300)를 포함할 수 있다. 이하, 각 단계에 대한 상세한 설명을 기재한다.Referring to FIG. 14, in the method of generating training data based on a surgical image according to an exemplary embodiment of the present disclosure, acquiring a surgical image including a plurality of image frames (S100), each of the plurality of image frames Recognizing surgical recognition information from the step (S200), and for each of the plurality of image frames, a relational expression representing a relationship between the surgical element (surgical element) included in the surgical recognition information based on the surgical recognition information (Relational) Representation) may include the step of generating (S300). Hereinafter, a detailed description of each step will be described.
컴퓨터는 복수의 영상프레임을 포함하는 수술영상을 획득할 수 있다(S100).The computer may acquire a surgical image including a plurality of image frames (S100).
환자에 대해 특정 수술(예컨대, 위암 수술, 대장암 수술 등)을 수행할 경우, 의료진들은 환자에 대해 직접 실제수술을 수행할 수도 있고, 도 1에서 설명한 바와 같은 수술로봇을 비롯하여 복강경이나 내시경 등을 이용한 최소침습수술을 수행할 수도 있다.When performing certain operations (eg, gastric cancer surgery, colorectal cancer surgery, etc.) on the patient, the medical staff may perform the actual surgery on the patient directly, as well as laparoscopes or endoscopes, including the surgical robot as described in FIG. Minimally invasive surgery may be performed.
이때, 컴퓨터는 수술과정에서 행해진 수술동작 및 이와 관련된 수술도구, 수술부위 등을 포함하는 장면을 촬영한 수술영상을 획득할 수 있다. 일 실시예로, 컴퓨터는 환자의 신체내부로 진입한 카메라로부터 현재 수술이 행해지고 있는 수술부위 및 수술도구를 포함하는 장면을 촬영한 수술영상을 획득할 수 있다. In this case, the computer may acquire a surgical image photographing a scene including a surgical operation performed in the surgical procedure, a surgical tool related thereto, a surgical site, and the like. In an embodiment, the computer may acquire a surgical image photographing a scene including a surgical site and a surgical tool that is currently undergoing surgery from a camera entering the patient's body.
수술영상은 하나 이상의 영상프레임들을 포함할 수 있다. 각 영상프레임은 수술 대상자의 수술부위, 수술도구 등을 포함하여 수술동작을 행하고 있는 하나의 장면을 나타낼 수 있다. 예를 들어, 수술영상은 수술과정에서 시간에 따른 수술동작을 각 장면(씬; scene)별로 기록한 영상프레임들로 구성될 수 있다. 또는 수술영상은 수술과정에서 수술부위나 카메라의 위치 등과 같은 공간상의 이동에 따라 각 수술장면을 기록한 영상프레임들로 구성될 수도 있다. The surgical image may include one or more image frames. Each image frame may represent a scene in which a surgical operation is performed, including a surgical site, a surgical tool, and the like of a surgical subject. For example, the surgical image may be composed of image frames in which a surgical operation is recorded for each scene (scene) according to time during the surgical procedure. Alternatively, the surgical image may be composed of image frames that record each surgical scene according to the spatial movement such as the surgical site or the position of the camera during the surgery.
또한, 수술영상은 전체 수술과정을 포함하는 전체 영상프레임들로 구성될 수도 있으나, 특정 분류 기준에 따라 분할된 적어도 하나의 비디오 클립 형태로 이루어질 수도 있다. In addition, the surgical image may be composed of all image frames including the entire surgical procedure, or may be in the form of at least one video clip divided according to a specific classification criterion.
실시예에 따라, 컴퓨터는 비디오 클립 형태의 수술영상을 획득할 수도 있고, 전체 또는 일부 수술과정을 포함하고 있는 수술영상을 획득하고 이를 적어도 하나의 비디오 클립 형태의 수술영상으로 분할할 수도 있다. According to an embodiment, the computer may acquire a surgical image in the form of a video clip, or may obtain a surgical image including all or part of a surgical procedure and divide the surgical image into at least one video clip.
일 실시예로, 컴퓨터는 전체 또는 일부 수술과정을 포함하고 있는 수술영상을 획득하고, 특정 분류 기준에 따라 적어도 하나의 비디오 클립 형태의 수술영상으로 분할할 수 있다. 예를 들어, 컴퓨터는 수술이 진행되는 시간 경과에 따라 수술영상을 분할하거나, 수술 시의 수술부위를 기준으로 수술부위의 위치나 상태 변화에 따라 수술영상을 분할할 수 있다. 또는, 컴퓨터는 수술이 진행되는 동안 카메라의 위치나 카메라의 이동 범위를 기준으로 수술영상을 분할할 수도 있고, 수술이 진행되는 동안 수술도구의 변화(예컨대, 교체 등)를 기준으로 수술영상을 분할할 수도 있다. 또는, 컴퓨터는 수술동작과 관련하여 일련의 수술동작으로 이루어진 영상프레임들을 기준으로 수술영상을 분할할 수도 있다. 또한, 각 수술마다 특정 분류 기준에 따라 분류된 수술단계가 미리 정해져 있을 수도 있다. 이 경우, 컴퓨터는 수술단계를 기준으로 수술영상을 분할할 수도 있다.In an embodiment, the computer may acquire a surgical image including all or part of a surgical procedure and divide the surgical image into at least one video clip according to a specific classification criterion. For example, the computer may divide the surgical image according to the time course of the surgery, or may divide the surgical image according to the position or state change of the surgical site based on the surgical site during the surgery. Alternatively, the computer may segment the surgical image based on the position of the camera or the moving range of the camera during the operation, or divide the surgical image based on the change (eg replacement) of the surgical tool during the operation. You may. Alternatively, the computer may segment the surgical image based on image frames formed of a series of surgical operations in relation to the surgical operation. In addition, each operation may be predetermined surgery stages classified according to a specific classification criteria. In this case, the computer may segment the surgical image based on the surgical stage.
컴퓨터는 획득된 수술영상 내 복수의 영상프레임 각각으로부터 수술인식정보를 인식할 수 있다(S200). The computer may recognize surgical recognition information from each of the plurality of image frames in the acquired surgical image (S200).
상술한 바와 같이, 수술영상 내 각 영상프레임은 수술 관련 정보를 포함하고 있다. 예를 들어, 수술도구, 수술동작, 수술부위(즉, 장기, 혈관, 조직 등과 같은 신체부위), 출혈여부 등의 여러가지 수술 관련 정보를 포함하고 있다. 따라서, 본 발명에서는 영상프레임으로부터 수술 관련 정보로서 인식될 수 있는 각 요소를 수술요소(surgical element)로서 정의한다. 수술요소는 객체에 대응하는 개념일 수 있으나, 본 발명에서는 객체뿐만 아니라 객체와 관련된 동작, 기능, 상태 등의 정보까지 포괄하는 넓은 개념을 말한다. As described above, each image frame in the surgical image includes surgery related information. For example, it includes various surgical-related information such as surgical instruments, surgical operations, surgical sites (ie, body parts such as organs, blood vessels, tissues), and bleeding. Therefore, in the present invention, each element that can be recognized as surgery related information from an image frame is defined as a surgical element. The surgical element may be a concept corresponding to the object, but in the present invention, a wide concept encompassing not only an object but also information such as an operation, a function, and a state related to the object.
일 실시예로, 컴퓨터는 복수의 영상프레임 각각으로부터 수술요소로서 판단되는 수술인식정보를 각각 추출할 수 있다. 여기서, 수술인식정보는 영상프레임으로부터 인식된 수술요소 정보를 말하며, 예컨대 수술도구, 수술동작, 신체부위, 출혈여부, 수술단계, 수술시간(예컨대, 잔여수술시간, 수술소요시간 등), 및 카메라 정보(예컨대, 카메라의 위치, 각도, 방향, 이동 등) 중 적어도 하나의 수술요소를 포함할 수 있다. In an embodiment, the computer may extract surgical recognition information determined as a surgical element from each of the plurality of image frames. Here, the surgical recognition information refers to the surgical element information recognized from the image frame, for example, surgical instruments, surgical operations, body parts, bleeding, surgical stages, surgery time (eg, remaining surgery time, surgery time, etc.), and camera It may include at least one surgical element of information (eg, camera position, angle, direction, movement, etc.).
또한, 컴퓨터는 복수의 영상프레임 각각으로부터 추출된 수술인식정보 내 수술요소의 위치 정보를 도출할 수 있다. 수술요소의 위치 정보는 영상프레임 상에서 수술요소가 위치한 영역 정보일 수 있다. 예를 들어, 영상프레임 내 2차원 공간 상에서의 좌표 정보 또는 3차원 공간상에서의 좌표 정보를 기초로 수술요소의 위치 정보를 산출할 수 있다. In addition, the computer may derive the position information of the surgical element in the surgical recognition information extracted from each of the plurality of image frames. The position information of the surgical element may be region information where the surgical element is located on the image frame. For example, the position information of the surgical element may be calculated based on the coordinate information on the 2D space or the coordinate information on the 3D space in the image frame.
컴퓨터는 복수의 영상프레임 각각에 대해 인식된 수술인식정보를 기초로, 각 수술인식정보 내 포함된 수술요소 간의 관계를 나타내는 관계표현(Relational Representation) 정보를 생성할 수 있다(S300). The computer may generate relational representation information indicating a relationship between surgical elements included in each surgical recognition information based on the surgical recognition information recognized for each of the plurality of image frames (S300).
일 실시예로, 컴퓨터는 복수의 영상프레임(예컨대, 제1 내지 제n 영상프레임) 중에서 제1 영상프레임으로부터 추출된 복수의 수술요소 및 복수의 수술요소에 대한 위치 정보를 기초로, 제1 영상프레임 내에서 복수의 수술요소 간의 상관관계가 존재하는지 여부를 판단할 수 있다. 다음으로, 컴퓨터는 복수의 수술요소 간의 상관관계를 기초로 제1 영상프레임에 대한 관계표현 정보를 생성할 수 있다. 컴퓨터는 제1 영상프레임뿐만 아니라, 동일한 방식으로 수술영상 내 제2 내지 제n 영상프레임에 대해서도 각각 관계표현 정보를 생성한다. In an embodiment, the computer may include the first image based on the plurality of surgical elements extracted from the first image frame among the plurality of image frames (eg, the first to nth image frames) and the position information on the plurality of surgical elements. It may be determined whether a correlation exists between a plurality of surgical elements in the frame. Next, the computer may generate relationship expression information for the first image frame based on the correlation between the plurality of surgical elements. The computer generates relationship expression information for not only the first image frame but also the second to nth image frames in the surgical image in the same manner.
복수의 수술요소 간의 상관관계를 판단함에 있어서, 컴퓨터는 미리 정의된 수술요소에 대한 관계정보를 기초로 복수의 수술요소 간의 상관관계가 존재하는지 여부를 판단할 수 있다. 여기서, 미리 정의된 수술요소에 대한 관계정보라 함은, 수술요소의 종류, 수술요소의 위치 정보, 수술요소의 상태 정보, 수술요소의 동작 정보 중 적어도 하나를 기초로 설정된 정보일 수 있다. In determining the correlation between the plurality of surgical elements, the computer may determine whether or not there is a correlation between the plurality of surgical elements based on the relationship information on the predefined surgical elements. Here, the relationship information on the predefined surgical element may be information set based on at least one of the type of surgical element, location information of the surgical element, state information of the surgical element, and operation information of the surgical element.
상술한 바와 같이, 수술도구, 수술동작, 신체부위, 출혈여부, 수술단계, 수술시간, 카메라 정보 등을 수술요소로 정의할 수 있다. 정의된 각 수술요소는 수술요소의 종류에 따라 위치 정보, 상태 정보, 동작 정보와 같은 추가 정보를 더 포함할 수 있다. 예를 들어, 수술도구는 수술부위에 따라 그 종류가 정해질 수 있고, 수술동작은 각 수술도구에 따라 열림(open)/닫힘(close), 에너지 유무, 접촉 등과 같은 동작 상태 정보가 정해질 수 있다. 출혈여부는 출혈지점을 기초로 색상 정보를 가질 수 있다. 즉, 컴퓨터는 각 수술요소 및 각 수술요소의 종류에 따라 정해진 추가 정보를 관계 정보로 미리 설정해 둘 수 있다. 따라서, 컴퓨터는 제1 영상프레임으로부터 각 수술요소를 인식하고, 인식된 각 수술요소에 대한 관계 정보를 파악할 수 있다. As described above, surgical tools, surgical operations, body parts, bleeding status, surgical steps, surgery time, camera information, etc. can be defined as a surgical element. Each defined surgical element may further include additional information such as location information, state information, and operation information according to the type of surgical element. For example, the type of surgical tool can be determined according to the surgical site, and the operation can be determined according to each surgical tool operating state information such as open (close), energy (close), the presence of energy, contact, etc. have. Whether or not bleeding may have color information based on the bleeding point. In other words, the computer may preset, as relational information, each surgical element and additional information determined according to the type of each surgical element. Accordingly, the computer may recognize each surgical element from the first image frame and grasp relationship information about each recognized surgical element.
예를 들어, 컴퓨터는 제1 영상프레임으로부터 수술도구와 수술부위를 추출한 경우, 미리 정의된 관계 정보에 기초하여 특정 수술도구와 그에 따른 특정 수술부위에 대한 관계 정보를 파악하여 두 수술요소 간의 상관관계가 존재하는 것으로 판단할 수 있다. For example, when the computer extracts the surgical tool and the surgical site from the first image frame, the computer identifies correlation information between the specific surgical tool and the specific surgical site based on the predefined relationship information, and the correlation between the two surgical elements. Can be determined to exist.
또는, 컴퓨터는 제1 영상프레임으로부터 수술도구를 추출할 경우, 미리 정의된 관계 정보에 기초하여 특정 수술도구와 그에 따른 동작에 대한 관계 정보를 파악하여 수술도구와 수술동작 간의 상관관계가 존재하는 것으로 판단할 수 있다. Or, when the computer extracts the surgical tool from the first image frame, the correlation between the surgical tool and the surgical operation exists by grasping the relationship information on the specific surgical tool and its operation based on the predefined relationship information. You can judge.
또한, 컴퓨터는 제1 영상프레임으로부터 동일하거나 유사한 위치 정보를 가지는 복수의 수술요소들을 추출한 경우, 복수의 수술요소들 간의 상관관계가 존재하는 것으로 판단할 수 있다. 예를 들어, 컴퓨터는 제1 영상프레임으로부터 신체장기 및 수술도구를 추출하고, 추출된 신체장기와 수술도구가 동일 위치에 존재하는 것으로 인식한 경우, 두 수술요소 간의 위치적 상관관계가 존재하는 것으로 판단할 수 있다. 컴퓨터는 해당 수술도구가 해당 신체장기에 대해 특정 동작을 가하고 있는 경우이거나, 수술도구와 신체장기가 접촉된 상태인 경우 등으로 위치적 상관관계가 존재하는 것으로 파악할 수 있다.Also, when the plurality of surgical elements having the same or similar location information are extracted from the first image frame, the computer may determine that there is a correlation between the plurality of surgical elements. For example, if the computer extracts the body organs and surgical instruments from the first image frame, and recognizes that the extracted body organs and surgical instruments are present at the same location, a positional correlation exists between the two surgical elements. You can judge. The computer may determine that the positional correlation exists, for example, when the surgical tool is exerting a specific motion on the corresponding organ or when the surgical tool is in contact with the organ.
컴퓨터는 제1 영상프레임으로부터 인식된 복수의 수술요소 간의 상관관계가 존재하는지 여부를 기초로 제1 영상프레임에 대한 관계표현 정보를 생성할 수 있다. The computer may generate relationship expression information for the first image frame based on whether there is a correlation between a plurality of surgical elements recognized from the first image frame.
일 실시예로, 컴퓨터는 각 수술요소 및 각 수술요소에 대한 정보를 매핑하여 관계표현 정보를 생성할 수 있다. 예를 들어, 행렬과 같은 형태로 관계표현 정보를 생성할 수 있다. 각 수술요소를 행과 열에 대응하게 배열하되, 각 수술요소 간의 상관관계를 기초로 도출된 정보는 행렬의 성분(entry)으로 나타낼 수 있다. In an embodiment, the computer may generate relational expression information by mapping each surgical element and information about each surgical element. For example, the relational expression information may be generated in the form of a matrix. Each surgical element may be arranged corresponding to a row and a column, and information derived based on a correlation between each surgical element may be represented as an element of a matrix.
컴퓨터는 상술한 바와 같은 제1 영상프레임과 동일한 방식으로 수술영상 내 제2 내지 제n 영상프레임에 대해서도 각각 관계표현 정보를 생성할 수 있다.The computer may generate relational expression information for the second to nth image frames in the surgical image in the same manner as the first image frame as described above.
도 15는 본 발명의 일 실시예에 따른 영상프레임으로부터 수술인식정보를 인식하여 관계표현 정보를 생성하는 과정을 설명하기 위해 도시한 도면이다. 일례로, 도 15는 수술영상 내의 제1 영상프레임(200)으로부터 수술인식정보를 인식하고, 이를 관계표현 정보(300)로 생성하는 과정을 나타내고 있다. 15 is a diagram illustrating a process of generating relationship expression information by recognizing surgical recognition information from an image frame according to an embodiment of the present invention. For example, FIG. 15 illustrates a process of recognizing surgical recognition information from the first image frame 200 in the surgical image and generating it as the relational expression information 300.
일 실시예로, 컴퓨터는 제1 영상프레임(200)으로부터 딥러닝을 이용한 이미지 인식 기술을 적용하여 각 수술요소를 인식할 수 있다. 각 수술요소를 인식함에 있어서, 컴퓨터는 각 수술요소의 특징에 따라 다양한 개별 인식 기술을 적용할 수 있다. 예를 들어, 컴퓨터는 제1 영상프레임(200)으로부터 특징(feature) 정보(예컨대, 특징 맵)를 추출하되, 색상이나 질감 등을 표현하는 텍스처(texture) 특징 정보를 이용하여 신체부위(예컨대, 간, 위, 혈관 등의 신체장기)나 출혈여부 등을 인식할 수 있다. 또는, 컴퓨터는 형상에 관한 특징 정보를 이용하여 수술도구나 수술동작 등을 인식할 수 있다. 또는, 컴퓨터는 수술요소 간의 위치 특징 정보를 이용하여 수술동작을 인식할 수도 있다. 또는, 컴퓨터는 복수의 영상프레임 간의 특징 정보를 이용하여 카메라 정보(예컨대, 카메라의 각도, 이동 등의 움직임 정보), 수술단계, 수술동작, 수술시간 등을 인식할 수도 있다. In an embodiment, the computer may recognize each surgical element by applying an image recognition technology using deep learning from the first image frame 200. In recognizing each surgical element, the computer may apply various individual recognition techniques according to the characteristics of each surgical element. For example, the computer extracts feature information (eg, a feature map) from the first image frame 200, and uses a body feature (eg, texture feature information that expresses color or texture). Body organs such as liver, stomach, and blood vessels) and bleeding. Alternatively, the computer may recognize a surgical instrument, a surgical operation, or the like using the feature information about the shape. Alternatively, the computer may recognize the operation by using the location feature information between the surgical elements. Alternatively, the computer may recognize camera information (eg, motion information such as camera angle and movement), a surgery step, a surgery operation, a surgery time, and the like by using feature information between the plurality of image frames.
상술한 바와 같이, 컴퓨터가 각 수술요소의 특징 정보를 기초로 제1 영상프레임(200)에 대해 수술인식정보를 인식한 결과, 도 3에 도시된 것과 같이 2개의 수술도구, 2개의 수술도구의 동작상태, 거즈, 수술부위 등을 수술요소로 인식하였다. As described above, as a result of the computer recognizing the surgical recognition information for the first image frame 200 based on the characteristic information of each surgical element, as shown in FIG. Operation status, gauze, surgical site, etc. were recognized as surgical elements.
또한, 컴퓨터는 제1 영상프레임(200)으로부터 인식된 각 수술요소에 대한 위치 정보를 도출할 수 있다. 일 실시예로, 컴퓨터는 제1 영상프레임(200)을 적어도 하나의 영역으로 분할하고, 분할된 영역 중에서 각 수술요소가 존재하는 영역을 기초로 각 수술요소의 위치 정보를 산출할 수 있다. 이때, 컴퓨터는 제1 영상프레임(200) 내의 공간을 2차원 또는 3차원 좌표 정보를 기반으로 적어도 하나의 영역으로 분할할 수 있고, 분할된 각 영역에 대해 특정 좌표값(예컨대, 각 영역의 중심점)을 부여하거나 인덱스 값을 부여하여 각 영역의 위치 정보로 사용할 수 있다. In addition, the computer may derive position information on each surgical element recognized from the first image frame 200. In an embodiment, the computer may divide the first image frame 200 into at least one region, and calculate position information of each surgical element based on a region where each surgical element exists among the divided regions. In this case, the computer may divide the space in the first image frame 200 into at least one region based on two-dimensional or three-dimensional coordinate information, and for each divided region, a specific coordinate value (for example, a center point of each region) ) Or index value to use as location information of each area.
예를 들어, 도 15에 도시된 것처럼, 컴퓨터는 제1 영상프레임(200)을 9개의 영역으로 분할하고, 분할된 각 영역에 대해 0부터 8까지의 인덱스 값을 부여하여 위치 정보로 사용할 수 있다. 컴퓨터는 제1 영상프레임(200)으로부터 인식된 수술요소 '거즈'가 분할된 영역 중에서 인덱스 0, 1 영역에 위치한다는 것을 판단한 다음, 인덱스 0, 1을 기초로 수술요소 '거즈'에 대한 위치 정보를 산출할 수 있다. 제1 영상프레임(200)으로부터 인식된 다른 수술요소들(예컨대, 2개의 수술도구, 수술부위)에 대해서도 상기와 같은 방식으로 각 수술요소의 위치 정보를 산출할 수 있다. For example, as illustrated in FIG. 15, the computer may divide the first image frame 200 into nine regions and assign index values of 0 to 8 to each divided region to use the position information. . The computer determines that the surgical element 'gauze' recognized from the first image frame 200 is located in the index 0, 1 region among the divided regions, and then the position information of the surgical element 'gauze' based on the index 0, 1 Can be calculated. Position information of each surgical element may be calculated in the same manner with respect to other surgical elements (for example, two surgical instruments and surgical regions) recognized from the first image frame 200.
컴퓨터는 제1 영상프레임(200)으로부터 인식된 각 수술요소 및 각 수술요소의 위치 정보를 기초로 관계표현 정보(300)를 생성할 수 있다. 일 실시예로, 컴퓨터는 관계표현 정보(300)를 행렬 형태로 구성할 수 있다. 각 행과 각 열에는 각 수술요소를 배열하고, 행렬의 각 성분 값에는 해당 수술요소 간의 관계 정보를 나타낼 수 있다. The computer may generate the relationship expression information 300 based on each surgical element recognized from the first image frame 200 and position information of each surgical element. In an embodiment, the computer may configure the relational expression information 300 in a matrix form. Each surgical element may be arranged in each row and each column, and relationship information between corresponding surgical elements may be represented in each component value of the matrix.
예를 들어, 도 15에 도시된 것처럼, 제1 영상프레임(200)의 관계표현 정보(300)는 행렬로 표현될 수 있다. 일례로, 각 행 및 각 열은 수술요소 a부터 수술요소 s까지 배열될 수 있다. 이때, 수술요소 a는 수술단계, 수술요소 b부터 h까지는 수술도구, 수술요소 i부터 l까지는 신체부위, 수술요소 m부터 q까지는 수술동작, 수술요소 r은 출혈여부, 수술요소 s는 카메라 정보 등으로 정의될 수 있다. 또한, 행렬의 i번째 행의 i번째 열은 해당 수술요소(예컨대, a 수술요소, b 수술요소 등)의 위치 정보를 나타낼 수 있다. 행렬의 i번째 행의 j번째 열은 i번째 행에 배열된 수술요소와 j번째 열에 배열된 수술요소 간의 관계 정보를 나타낼 수 있다. 예컨대, 행렬의 수술요소 b에 해당하는 행 및 수술요소 m에 해당하는 열에는, 특정 수술도구(수술요소 b로 정의된 수술도구, 예: 'Harmonics') 및 특정 수술동작(수술요소 m으로 정의된 수술동작, 예: open/grap)에 대한 정보를 나타낼 수 있다. 수술요소에 따라서는, 행렬의 성분에 다른 특정 값을 부여하여 관계정보를 나타낼 수도 있다. 예를 들어, 카메라 정보나 수술단계와 같이 영상프레임 전역에서 수술요소와 관련된 이벤트가 발생하거나 이러한 이벤트를 내포하고 있는 경우, 해당 수술요소에 대한 행렬의 성분에는 해당 수술요소의 위치 정보나 관계 정보 대신 해당 이벤트와 관련된 정보를 부여할 수도 있다.For example, as shown in FIG. 15, the relationship expression information 300 of the first image frame 200 may be represented by a matrix. In one example, each row and each column may be arranged from surgical element a to surgical element s. In this case, the operation element a is the operation stage, the surgical elements b to h surgical instruments, the surgical elements i to l body parts, the surgical elements m to q surgical operation, the surgical element r is bleeding, the surgical element s is camera information, etc. It can be defined as. In addition, the i th column of the i th row of the matrix may represent position information of a corresponding surgical element (eg, a surgical element, b surgical element, etc.). The j th column of the i th row of the matrix may represent relationship information between the surgical elements arranged in the i th row and the surgical elements arranged in the j th column. For example, in the row corresponding to the surgical element b of the matrix and the column corresponding to the surgical element m, the specific surgical tool (the surgical tool defined as the surgical element b, for example, 'Harmonics') and the specific surgical operation (the surgical element m are defined). Information about a surgical operation, for example, open / grap). Depending on the surgical element, other specific values may be assigned to the components of the matrix to represent the relationship information. For example, when an event related to a surgical element occurs or implies such an event, such as camera information or an operation step, the matrix component for the corresponding surgical element is used instead of the position information or relationship information of the corresponding surgical element. Information related to the event may be given.
컴퓨터는 도 15를 참조하여 설명한 바와 같은 과정을 수술영상 내 각 영상프레임에 대해서 반복적으로 수행할 수 있다. 즉, 컴퓨터는 수술영상 내 각 영상프레임에 대해서 수술요소를 인식하고, 인식한 수술요소를 기초로 관계표현 정보를 생성할 수 있다.The computer may repeatedly perform the process as described with reference to FIG. 15 for each image frame in the surgical image. That is, the computer may recognize a surgical element for each image frame in the surgical image and generate relational expression information based on the recognized surgical element.
도 16은 본 발명의 일 실시예에 따른 수술영상 내 복수의 영상프레임에 대해 생성된 관계표현 정보를 나타낸 도면이다. 16 is a diagram illustrating relationship expression information generated for a plurality of image frames in a surgical image according to an embodiment of the present invention.
도 16을 참조하면, 컴퓨터는 수술영상 내 복수의 영상프레임 각각에 대해 관계표현 정보를 생성할 수 있다. 이때, 각각의 관계표현 정보는 복수의 수술요소 간의 관계 정보를 동시에 표현한 것이므로, 텐서(tensor) 정보를 가질 수 있다. 일 실시예로, 컴퓨터는 복수의 영상프레임으로부터 생성된 각 관계표현 정보를 텐서 형태로 생성할 수도 있다. 또한, 컴퓨터는 텐서의 시간축 크기(temporal size)를 기초로 복수의 영상프레임을 그룹화하여 복수의 영상프레임 간의 관계를 표현할 수도 있다. 예를 들어, 카메라 정보나 수술단계와 같이 복수의 영상프레임을 기초로 관계표현 정보를 생성해야 할 경우, 컴퓨터는 특정한 개수의 영상프레임들을 그룹화하여 텐서 형태로 각 관계표현 정보를 생성하고, 카메라 정보 또는 수술단계와 관련된 정보를 영상프레임 간의 관계로 연관지어 텐서로 표현할 수 있다. Referring to FIG. 16, the computer may generate relationship expression information for each of a plurality of image frames in a surgical image. In this case, since each relationship expression information expresses the relationship information between a plurality of surgical elements at the same time, it may have tensor information. In an embodiment, the computer may generate the relation expression information generated from the plurality of image frames in the form of a tensor. In addition, the computer may express a relationship between the plurality of image frames by grouping the plurality of image frames based on a temporal size of the tensor. For example, when it is necessary to generate relational expression information based on a plurality of image frames, such as camera information or a surgical step, the computer generates a group of a specific number of image frames and generates each relational expression information in the form of a tensor, and the camera information. Alternatively, information related to the surgical stage may be related to image frames and may be represented by a tensor.
본 발명의 실시예에 따르면, 상술한 바와 같이 수술영상 내 각 영상프레임에 대해 관계표현 정보를 생성하고, 생성된 각각의 관계표현 정보를 기초로 학습데이터를 구축할 수 있다. 또한, 이와 같이 구축된 학습데이터를 기초로 특정 학습 결과를 도출하기 위해 학습을 수행할 수 있다. According to an embodiment of the present invention, as described above, the relation expression information may be generated for each image frame in the surgical image, and the learning data may be constructed based on the generated relation expression information. In addition, learning may be performed to derive a specific learning result based on the learning data constructed as described above.
도 17은 본 발명의 일 실시예에 따른 수술영상 내 복수의 영상프레임에 대해 생성된 관계표현 정보를 기초로 학습을 수행하는 과정의 일례를 나타낸 도면이다. 17 is a diagram illustrating an example of a process of performing learning based on relationship expression information generated for a plurality of image frames in a surgical image according to an embodiment of the present invention.
도 17을 참조하면, 컴퓨터는 수술영상 내 각 영상프레임에 대해 관계표현 정보를 생성하고, 생성된 각각의 관계표현 정보를 기초로 학습데이터를 구축할 수 있다(S400). Referring to FIG. 17, the computer may generate relational expression information for each image frame in the surgical image, and construct learning data based on the generated relational expression information (S400).
일 실시예로, 수술영상 내 각 영상프레임에 대해 관계표현 정보를 생성하여 학습데이터를 구축함에 있어서, 의료진에 의해 레이블링 학습이 수행될 수도 있고, 컴퓨터에 의해 자동적으로 레이블링 학습이 수행될 수도 있다. 또한, 컴퓨터에 의해 자동으로 학습이 수행될 경우, 준지도(semi-supervised) 학습을 수행할 수도 있다. 예컨대, 컴퓨터는 상술한 바와 같이 각 수술요소의 특징에 따라 다양한 개별 인식 기술(예컨대, 신체장기 인식, 수술도구 인식, 출혈 인식, 수술동작 인식, 카메라 이동 인식 등)을 적용하여 각 영상프레임으로부터 레이블링된 정보를 추출하고 이를 기초로 관계표현 정보를 생성할 수 있다. In one embodiment, in constructing the learning data by generating the relationship expression information for each image frame in the surgical image, the labeling learning may be performed by a medical staff, or the labeling learning may be automatically performed by a computer. In addition, when learning is automatically performed by a computer, semi-supervised learning may be performed. For example, the computer may label each image frame by applying various individual recognition techniques (eg, body organ recognition, surgical tool recognition, bleeding recognition, surgical motion recognition, camera movement recognition, etc.) according to the characteristics of each surgical element as described above. Extracted information and relationship expression information can be generated based on the extracted information.
컴퓨터는 학습데이터를 기초로 학습을 수행하여 특정 학습 결과를 도출할 수 있다(S500).The computer may derive a specific learning result by performing learning based on the learning data (S500).
여기서, 특정 학습 결과란, 본 발명의 실시예에 따라 생성된 학습데이터를 입력값으로 이용하여 학습을 수행함으로써 특정 학습 모델을 구축하고, 이러한 특정 학습 모델의 출력값으로 획득할 수 있는 학습의 결과를 말한다. Here, the specific learning result is a specific learning model by constructing a specific learning model by performing learning using the learning data generated according to an embodiment of the present invention as an input value, and obtaining a result of the learning that can be obtained as an output value of the specific learning model. Say.
예를 들어, 컴퓨터는 본 발명의 실시예에 따른 관계표현 정보를 도출하는 것을 학습 결과로 정할 수 있다. 즉, 컴퓨터는 미리 구축되어 있는 학습데이터(관계표현 정보)를 기초로 새로 입력된 영상프레임에 대해 학습을 수행하고, 그 학습 결과로 새로 입력된 영상프레임에 대한 관계표현 정보를 획득할 수 있다. For example, the computer may determine that the learning result is to derive the relationship expression information according to the embodiment of the present invention. That is, the computer may learn about the newly input image frame based on the previously constructed learning data (relational expression information), and acquire the relationship expression information on the newly input image frame as a result of the learning.
또는, 컴퓨터는 수술영상을 통해서 수술과정을 인식하거나 수술동작이 의미하는 바를 인식하거나 등의 다양한 학습 결과를 획득하고자 본 발명의 실시예에 따라 생성된 학습데이터를 입력값으로 이용하여 학습을 수행할 수 있다. Alternatively, the computer may perform learning by using the learning data generated according to an embodiment of the present invention as an input value to acquire a variety of learning results such as recognizing a surgical procedure through a surgical image or recognizing the meaning of a surgical operation. Can be.
실시예에 따라, 컴퓨터는 본 발명의 실시예에 따라 생성된 학습데이터와 함께 영상프레임들을 특정 학습 결과를 도출하기 위한 입력값으로 이용할 수도 있다. 일 실시예로, 컴퓨터는 수술영상 내 복수의 영상프레임을 CNN(Convolutional Neural Network)을 이용하여 학습을 수행하고, 각 영상프레임에 대한 특징(feature) 정보를 획득할 수 있다(S410). 또한, 컴퓨터는 수술영상 내 복수의 영상프레임에 대해 관계표현 정보를 생성하여 학습데이터를 획득할 수 있다(S400). 컴퓨터는 최종적으로 각 영상프레임에 대한 특징 정보 및 관계표현 정보를 기초로 학습을 수행하고, 이에 대한 학습 결과로 특정 출력값을 얻을 수 있다(S500). According to an embodiment, the computer may use image frames as an input value for deriving a specific learning result together with the learning data generated according to the embodiment of the present invention. In an embodiment, the computer may learn a plurality of image frames in the surgical image by using a convolutional neural network (CNN), and may acquire feature information of each image frame (S410). In addition, the computer may generate the relationship expression information for the plurality of image frames in the surgical image to obtain the training data (S400). The computer may finally perform the learning based on the feature information and the relationship expression information of each image frame, and may obtain a specific output value as a result of the learning (S500).
본 발명에 따르면, 영상프레임으로부터 인식될 수 있는 다양한 수술요소를 정의하고, 각 수술요소 자체에 대한 정보뿐만 아니라 수술요소들 간의 관계 정보를 파악함으로써 영상프레임을 통해 보다 의미있는 정보를 획득할 수 있다.According to the present invention, it is possible to obtain more meaningful information through the image frame by defining various surgical elements that can be recognized from the image frame, and grasping the relationship information between the surgical elements as well as the information on each surgical element itself. .
또한, 본 발명에 따르면, 하나의 학습 모델을 구축하기 위한 학습데이터를 생성하는 것이 아니라, 다양한 학습 모델을 구축할 수 있도록 하는 기저 데이터를 제공해 준다. 또한, 이러한 기저 학습용 데이터를 제공함으로써 학습데이터가 증가되어 보다 향상된 학습 결과를 얻을 수 있다. In addition, according to the present invention, rather than generating learning data for building a learning model, it provides the basis data for building a variety of learning models. In addition, by providing such basic learning data, the learning data may be increased to obtain more improved learning results.
또한, 본 발명에 따르면, 관계표현 정보를 통해 수술 시에 필요한 다양한 정보를 학습 목적에 맞게 유연하게 정의할 수 있고, 이에 따라 효과적인 학습을 수행할 수 있다. In addition, according to the present invention, it is possible to flexibly define a variety of information necessary for the operation through the relationship expression information according to the learning purpose, thereby performing effective learning.
도 18은 본 발명의 일 실시예에 따른 수술영상을 기초로 학습데이터를 생성하는 방법을 수행하는 장치(400)의 구성을 개략적으로 나타내는 도면이다. 18 is a diagram schematically illustrating a configuration of an apparatus 400 for performing a method for generating learning data based on a surgical image according to an embodiment of the present invention.
도 18을 참조하면, 프로세서(410)는 하나 이상의 코어(core, 미도시) 및 그래픽 처리부(미도시) 및/또는 다른 구성 요소와 신호를 송수신하는 연결 통로(예를 들어, 버스(bus) 등)를 포함할 수 있다.Referring to FIG. 18, the processor 410 may include a connection passage (for example, a bus or the like) that transmits and receives signals with one or more cores (not shown) and a graphics processor (not shown) and / or other components. ) May be included.
일 실시예에 따른 프로세서(410)는 메모리(420)에 저장된 하나 이상의 인스트럭션을 실행함으로써, 도 14 내지 도 17과 관련하여 설명된 수술영상을 기초로 학습데이터를 생성하는 방법을 수행한다.The processor 410 according to an exemplary embodiment executes one or more instructions stored in the memory 420 to perform a method of generating learning data based on the surgical image described with reference to FIGS. 14 to 17.
일례로, 프로세서(410)는 메모리(420)에 저장된 하나 이상의 인스트럭션을 실행함으로써 복수의 영상프레임을 포함하는 수술영상을 획득하는 단계, 상기 복수의 영상프레임 각각으로부터 수술인식정보를 인식하는 단계, 및 상기 복수의 영상프레임 각각에 대해, 상기 수술인식정보를 기초로 상기 수술인식정보에 포함된 수술요소(surgical element) 간의 관계를 나타내는 관계표현(Relational Representation) 정보를 생성하는 단계를 수행할 수 있다.For example, the processor 410 may acquire a surgical image including a plurality of image frames by executing one or more instructions stored in the memory 420, recognizing surgical recognition information from each of the plurality of image frames, and For each of the plurality of image frames, generating relational representation information representing a relationship between surgical elements included in the surgical recognition information based on the surgical recognition information.
한편, 프로세서(410)는 프로세서(410) 내부에서 처리되는 신호(또는, 데이터)를 일시적 및/또는 영구적으로 저장하는 램(RAM: Random Access Memory, 미도시) 및 롬(ROM: Read-Only Memory, 미도시)을 더 포함할 수 있다. 또한, 프로세서(210)는 그래픽 처리부, 램 및 롬 중 적어도 하나를 포함하는 시스템온칩(SoC: system on chip) 형태로 구현될 수 있다.Meanwhile, the processor 410 may include random access memory (RAM) and read-only memory (ROM) for temporarily and / or permanently storing a signal (or data) processed in the processor 410. , Not shown) may be further included. In addition, the processor 210 may be implemented in the form of a system on chip (SoC) including at least one of a graphic processor, a RAM, and a ROM.
메모리(420)에는 프로세서(410)의 처리 및 제어를 위한 프로그램들(하나 이상의 인스트럭션들)을 저장할 수 있다. 메모리(420)에 저장된 프로그램들은 기능에 따라 복수 개의 모듈들로 구분될 수 있다.The memory 420 may store programs (one or more instructions) for processing and controlling the processor 410. Programs stored in the memory 420 may be divided into a plurality of modules according to their functions.
이상에서 전술한 본 발명의 일 실시예에 따른 수술영상을 기초로 학습데이터를 생성하는 방법은, 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 어플리케이션)으로 구현되어 매체에 저장될 수 있다.The method for generating learning data based on the surgical image according to the exemplary embodiment of the present invention described above may be implemented as a program (or an application) and stored in a medium to be executed in combination with a computer which is hardware.
이하에서는 도 19 내지 도 26을 참조하여, 본 발명의 실시예에 따른 혈관 모델을 이용한 혈관 정보 제공 방법 및 장치에 관해 상세히 설명한다. Hereinafter, a method and apparatus for providing blood vessel information using a blood vessel model according to an embodiment of the present invention will be described in detail with reference to FIGS. 19 to 26.
본 명세서에서 "컴퓨터"는 연산처리를 수행하여 사용자에게 결과를 제공할 수 있는 다양한 장치들이 모두 포함된다. 예를 들어, 컴퓨터는 데스크 탑 PC, 노트북(Note Book) 뿐만 아니라 스마트폰(Smart phone), 태블릿 PC, 셀룰러폰(Cellular phone), 피씨에스폰(PCS phone; Personal Communication Service phone), 동기식/비동기식 IMT-2000(International Mobile Telecommunication-2000)의 이동 단말기, 팜 PC(Palm Personal Computer), 개인용 디지털 보조기(PDA; Personal Digital Assistant) 등도 해당될 수 있다. 또한, 헤드마운트 디스플레이(Head Mounted Display; HMD) 장치가 컴퓨팅 기능을 포함하는 경우, HMD장치가 컴퓨터가 될 수 있다. 또한, 컴퓨터는 클라이언트로부터 요청을 수신하여 정보처리를 수행하는 서버가 해당될 수 있다.As used herein, the term "computer" includes all the various devices capable of performing arithmetic processing to provide a result to a user. For example, a computer can be a desktop PC, a notebook, as well as a smartphone, a tablet PC, a cellular phone, a PCS phone (Personal Communication Service phone), synchronous / asynchronous The mobile terminal of the International Mobile Telecommunication-2000 (IMT-2000), a Palm Personal Computer (PC), a Personal Digital Assistant (PDA), and the like may also be applicable. In addition, when a head mounted display (HMD) device includes a computing function, the HMD device may be a computer. Also, the computer may correspond to a server that receives a request from a client and performs information processing.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 19는 본 발명의 일 실시예에 따른 혈관 모델을 이용한 혈관 정보 제공 방법을 개략적으로 도시한 흐름도이다. 19 is a flowchart schematically illustrating a method of providing blood vessel information using a blood vessel model according to an embodiment of the present invention.
도 19의 방법은 설명의 편의를 위하여 컴퓨터에 의하여 수행되는 것으로 서술하나, 각 단계의 수행주체가 특정 장치에 제한되는 것은 아니고 컴퓨팅 처리를 수행할 수 있는 장치를 포괄하는 의미로 사용될 수 있다. 즉, 본 실시예에서 컴퓨터는 본 발명의 실시예에 따른 혈관 모델을 이용한 혈관 정보 제공 방법을 수행할 수 있는 장치를 의미할 수 있다.Although the method of FIG. 19 is described as being performed by a computer for the convenience of description, the subject of each step is not limited to a specific device but may be used to encompass a device capable of performing computing processing. That is, in the present embodiment, the computer may mean an apparatus capable of performing the method of providing blood vessel information using the blood vessel model according to the embodiment of the present invention.
도 19를 참조하면, 본 발명의 일 실시예에 따른 혈관 모델을 이용한 혈관 정보 제공 방법은, 혈관 모델 내 혈관을 구성하는 혈관 폴리곤(polygon)을 획득하는 단계(S100), 상기 혈관 폴리곤 정보 및 상기 혈관 폴리곤의 연결 정보를 기초로 학습데이터를 구성하는 단계(S200), 및 상기 학습데이터를 기초로 하여 혈관을 분류하는 단계(S300)를 포함할 수 있다. 이하, 각 단계에 대한 상세한 설명을 기재한다. Referring to FIG. 19, a method of providing blood vessel information using a blood vessel model according to an embodiment of the present disclosure may include obtaining a blood vessel polygon constituting a blood vessel in a blood vessel model (S100), the blood vessel polygon information, and the Comprising the step of configuring the training data based on the connection information of the vascular polygon (S200), and classifying the blood vessels based on the learning data (S300). Hereinafter, a detailed description of each step will be described.
컴퓨터는 혈관 모델 내 혈관을 구성하는 혈관 폴리곤(polygon)을 획득할 수 있다(S100).The computer may acquire a blood vessel polygon constituting a blood vessel in the blood vessel model (S100).
일 실시예로, 컴퓨터는 대상체(예컨대, 환자)의 신체 내부를 촬영한 의료영상데이터를 기반으로 3D 혈관 모델을 생성할 수 있다. 여기서, 의료영상데이터는 의료영상 촬영장비로 촬영되는 의료영상으로서, 대상체의 신체를 3차원 모델로 구현 가능한 모든 의료영상을 포함한다. 예컨대, 의료영상데이터는 컴퓨터 단층촬영(Computed Tomography; CT) 영상, 자기공명영상(Magnetic Resonance Imaging; MRI), 양전자 단층촬영(Positron Emission Tomography; PET) 영상 등을 포함할 수 있다. 컴퓨터는 이와 같은 의료영상데이터로부터 환자의 혈관을 추출하고, 추출된 혈관을 3D 모델링할 수 있다. 예를 들어, 컴퓨터는 의료영상데이터로부터 동맥과 정맥을 순차적으로 추출하고, 동맥을 포함하는 혈관 모델과 정맥을 포함하는 혈관 모델을 각각 3D 모델링한 다음 정합시킬 수 있다. 이때, 혈관 모델은 의료영상데이터로부터 추출된 혈관을 적어도 하나의 폴리곤으로 구성하여 3D 모델링한 폴리곤 모델일 수 있다. 따라서, 컴퓨터는 3D 혈관 모델로부터 혈관을 구성하는 적어도 하나의 폴리곤을 획득할 수 있다. 폴리곤이라 함은, 3D 컴퓨터그래픽에서 물체의 입체형상을 표현할 때 사용하는 가장 작은 단위인 다각형을 말하며, 폴리곤이 모여서 3D 오브젝트(즉, 혈관)를 표현할 수 있다.In one embodiment, the computer may generate a 3D blood vessel model based on medical image data of the inside of the body of the object (eg, the patient). Here, the medical image data is a medical image photographed by a medical image photographing apparatus and includes all medical images that can be implemented as a three-dimensional model of the body of the object. For example, the medical image data may include a computed tomography (CT) image, a magnetic resonance imaging (MRI), a positron emission tomography (PET) image, and the like. The computer may extract the blood vessel of the patient from the medical image data and 3D model the extracted blood vessel. For example, the computer may sequentially extract arteries and veins from the medical image data, and 3D model the vessel models including the arteries and the vessel models including the veins, respectively, and then match them. In this case, the blood vessel model may be a polygon model of 3D modeling by constructing at least one polygon of blood vessels extracted from the medical image data. Thus, the computer can obtain at least one polygon constituting the vessel from the 3D vessel model. Polygon refers to a polygon, which is the smallest unit used to express a three-dimensional shape of an object in 3D computer graphics, and polygons may be gathered to represent a 3D object (ie, a blood vessel).
다른 실시예로, 컴퓨터는 대상체에 대해 미리 구축된 3D 혈관 모델을 획득하고, 이로부터 혈관을 구성하는 적어도 하나의 폴리곤을 획득할 수도 있다. 이때, 컴퓨터가 3D 혈관 모델을 미리 구축하여 저장하여 둘 수도 있고, 다른 장치에서 생성한 3D 혈관 모델을 획득하여 이용할 수도 있다. In another embodiment, the computer may obtain a 3D blood vessel model pre-built for the subject and obtain at least one polygon constituting the blood vessel therefrom. In this case, the computer may construct and store the 3D blood vessel model in advance, or may acquire and use a 3D blood vessel model generated by another device.
즉, 컴퓨터는 폴리곤을 이용하여 3D 모델링된 혈관 모델로부터 혈관을 구성하고 있는 적어도 하나의 혈관 폴리곤을 획득할 수 있다. That is, the computer may obtain at least one vascular polygon constituting the blood vessel from the 3D modeled vascular model using the polygon.
컴퓨터는 획득된 적어도 하나의 혈관 폴리곤 각각에 대해, 혈관 폴리곤 정보 및 혈관 폴리곤의 연결 정보를 기초로 학습데이터를 구성할 수 있다(S200). 다시 말해, 컴퓨터는 3D 혈관 모델 내 각 혈관 폴리곤에 대한 자체 정보와 이와 연결된 인접 폴리곤과의 연결 정보를 기초로 학습데이터를 구축할 수 있다.The computer may configure learning data for each of the acquired at least one vascular polygon based on the vascular polygon information and the connection information of the vascular polygon (S200). In other words, the computer may construct training data based on its own information about each vascular polygon in the 3D vascular model and connection information with adjacent polygons connected thereto.
여기서, 혈관 폴리곤 정보는 혈관 폴리곤의 위치 벡터, 혈관 폴리곤의 혈관 정보를 포함할 수 있다. 혈관 폴리곤의 연결 정보는 혈관 폴리곤에 인접하는 인접 폴리곤, 인접 폴리곤과 혈관 폴리곤 간의 위치 벡터 차이 정보를 포함할 수 있다. Here, the vascular polygon information may include a position vector of the vascular polygon and blood vessel information of the vascular polygon. The connection information of the vascular polygon may include adjacent polygons adjacent to the vascular polygon, and position vector difference information between the adjacent polygon and the vascular polygon.
먼저, 컴퓨터는 혈관 폴리곤으로부터 혈관 폴리곤 자체 정보를 획득할 수 있다. 일 실시예로, 컴퓨터는 혈관 폴리곤의 위치 벡터 및 혈관 정보를 도출할 수 있다. First, the computer can obtain the vascular polygon itself information from the vascular polygon. In one embodiment, the computer may derive the position vector and vessel information of the vessel polygon.
컴퓨터는 3D 혈관 모델 내 기설정된 기준 혈관 지점을 기준으로 혈관 폴리곤의 위치 벡터를 산출할 수 있다. 예를 들어, 컴퓨터는 3D 혈관 모델 내에서 복강동맥(celiac trunk 또는 celiac axis)과 같이 혈관의 대표 분기점이거나 구분이 용이한 혈관을 기준 혈관 지점으로 설정할 수 있다. 그리고, 컴퓨터는 설정된 기준 혈관 지점을 좌표 공간 상에서 기준점(예컨대, 원점)으로 정하고, 이 기준 혈관 지점을 기준으로 상대적으로 혈관 폴리곤의 위치 벡터를 산출할 수 있다. 이때, 컴퓨터는 혈관 폴리곤 내 중점에 대해 위치 벡터를 산출할 수 있다. 혈관 폴리곤의 중점은 내심, 외심, 무게중심 등을 이용하여 산출될 수 있다. The computer may calculate a position vector of the vascular polygon based on a predetermined reference vessel point in the 3D vessel model. For example, the computer may set a representative branching point or an easily distinguishable vessel of a vessel, such as a celiac trunk or a celiac axis, in the 3D vessel model as a reference vessel point. The computer may set the set reference vessel point as a reference point (eg, an origin point) in the coordinate space, and calculate a position vector of the vessel polygon relative to the reference vessel point. At this time, the computer may calculate a position vector with respect to the midpoint in the vascular polygon. The midpoint of the vascular polygon can be calculated using the inner core, outer core, center of gravity, and the like.
또한, 컴퓨터는 기설정된 동맥 및 정맥 분류정보를 기초로 혈관 폴리곤의 혈관 정보를 도출할 수 있다. 예를 들어, 컴퓨터는 아래 표 1과 같이 미리 정의된 동맥 및 정맥에 대해 세부적으로 분류된 혈관 정보를 이용하여, 혈관 폴리곤의 혈관 종류가 무엇인지 파악할 수 있다. 예컨대, 컴퓨터는 혈관 폴리곤에 대해서 동맥 'Aorta' 또는 정맥 'PV'와 같이 혈관 정보를 획득할 수 있다. In addition, the computer may derive the vessel information of the vessel polygon based on the predetermined artery and vein classification information. For example, the computer may use the vessel information classified in detail for the predefined arteries and veins as shown in Table 1 below to determine what the vessel types of the vessel polygon are. For example, the computer can obtain vascular information such as artery 'Aorta' or vein 'PV' for vascular polygons.
[표 1]TABLE 1
Figure PCTKR2019002092-appb-I000001
Figure PCTKR2019002092-appb-I000001
다른 예로, 컴퓨터는 아래 표 2와 같이 미리 정의된 동맥 및 정맥에 대해 색상 정보를 부여한 혈관의 색상코드정보를 이용하여, 혈관 폴리곤의 혈관 종류가 무엇인지 파악할 수 있다. 이 경우, 혈관 폴리곤에 대한 학습 결과로 도출되는 혈관 분류 결과는 색상 정보로 확인할 수 있다. As another example, the computer may determine what the types of blood vessels of the blood vessel polygon are by using the color code information of the blood vessels to which the color information is assigned to the predefined arteries and veins as shown in Table 2 below. In this case, the blood vessel classification result derived as a learning result about the blood vessel polygon may be confirmed by color information.
[표 2]TABLE 2
Figure PCTKR2019002092-appb-I000002
Figure PCTKR2019002092-appb-I000002
다음으로, 컴퓨터는 혈관 폴리곤으로부터 이와 연결되어 있는 인접 폴리곤과의 연결 정보를 획득할 수 있다. 일 실시예로, 컴퓨터는 혈관 폴리곤과 인접해 있는 인접 폴리곤을 획득하고, 인접 폴리곤과의 위치 벡터 차이 정보를 연결 정보로 도출할 있다. Next, the computer can obtain the connection information from the vascular polygon to the adjacent polygon connected thereto. In an embodiment, the computer may acquire adjacent polygons adjacent to the vascular polygon and derive the position vector difference information with the adjacent polygons as connection information.
컴퓨터는 도 20에 도시된 것과 같은 적어도 하나의 혈관 폴리곤을 획득한 경우, 각 혈관 폴리곤과 이에 인접한 인접 폴리곤과의 연결 정보를 아래 표 3과 같이 도출할 수 있다. 예를 들어, 각 혈관 폴리곤은 삼각형의 폴리곤일 수 있고, 각 삼각형의 폴리곤은 노드로 간주할 수 있다. When the computer acquires at least one vascular polygon as shown in FIG. 20, the computer may derive connection information between each vascular polygon and an adjacent polygon adjacent thereto as shown in Table 3 below. For example, each vascular polygon may be a triangular polygon, and each triangular polygon may be considered a node.
[표 3]TABLE 3
Figure PCTKR2019002092-appb-I000003
Figure PCTKR2019002092-appb-I000003
표 3에 따르면, 1번 노드는 2번 노드와 인접하고 있으므로, 1번 노드의 혈관 폴리곤의 경우는 2번 노드의 혈관 폴리곤을 인접 폴리곤으로 획득할 수 있다. 2번 노드의 혈관 폴리곤의 경우는 1, 3번 노드의 혈관 폴리곤들을 인접 폴리곤으로 획득할 수 있다. According to Table 3, since node 1 is adjacent to node 2, in the case of the vascular polygon of node 1, the vascular polygon of node 2 may be acquired as an adjacent polygon. In the case of the vascular polygon of the second node, the vascular polygons of the first and third nodes may be acquired as adjacent polygons.
또한, 컴퓨터는 획득한 인접 폴리곤의 위치 벡터를 이용하여 혈관 폴리곤과의 위치 벡터 차이를 연결 정보로 도출할 수 있다. 이때, 인접 폴리곤의 위치 벡터는 상술한 바와 같이 기준 혈관 지점을 기준으로 하여 인접 폴리곤의 중점에 대해 산출될 수 있다.In addition, the computer may derive the position vector difference from the vascular polygon as connection information by using the acquired position vector of the adjacent polygon. In this case, the position vector of the adjacent polygon may be calculated with respect to the midpoint of the adjacent polygon based on the reference blood vessel point as described above.
도 21을 예로 들어 설명하면, Y를 중점으로 하는 폴리곤에 대한 위치 벡터 차이를 도출할 경우, 컴퓨터는 이와 인접한 인접 폴리곤들을 획득하고 각 인접 폴리곤들의 위치 벡터(X, Z, Q 위치 벡터)를 산출할 수 있다. 그리고, 컴퓨터는 각 인접 폴리곤들의 위치 벡터(X, Z, Q 위치 벡터)와 Y를 중점으로 하는 폴리곤의 위치 벡터 사이의 차이 벡터를 산출할 수 있다. 이는 아래 수학식 1과 같이 산출될 수 있다.Referring to FIG. 21 as an example, when deriving a position vector difference for a polygon centered on Y, the computer acquires adjacent polygons adjacent thereto and calculates a position vector (X, Z, Q position vector) of each adjacent polygon. can do. The computer may then calculate a difference vector between the position vectors (X, Z, Q position vectors) of the respective polygons and the position vectors of the polygons centered on Y. This may be calculated as in Equation 1 below.
[수학식 1][Equation 1]
Figure PCTKR2019002092-appb-I000004
Figure PCTKR2019002092-appb-I000004
실시예에 따라, 컴퓨터는 주요 장기들과의 연결 정보를 도출하고 이를 학습데이터로 사용할 수 있다. 일 실시예로, 컴퓨터는 적어도 하나의 기준 장기를 획득하고, 획득된 기준 장기와 혈관 폴리곤 간의 거리 정보를 도출하여 학습데이터를 구성할 수 있다. According to an embodiment, the computer may derive connection information with major organs and use it as learning data. In one embodiment, the computer may acquire at least one reference organ, and derive the distance information between the obtained reference organ and the vascular polygon to construct the learning data.
컴퓨터는 간장, 심장, 비장, 폐장, 신장 등과 같이 위치가 고정적이고 구분이 용이한 장기를 기준 장기로 획득할 수 있다. 이때, 기준 장기는 3D 모델링된 폴리곤들로 이루어질 수 있다. 그리고, 컴퓨터는 3D 혈관 모델 내 기설정된 기준 혈관 지점을 기준(예컨대, 원점)으로 하여 기준 장기를 배치할 수 있다. 따라서, 컴퓨터는 기준 혈관 지점을 기준으로 기준 장기에 대한 위치 벡터를 산출할 수 있다. 컴퓨터는 산출된 기준 장기의 위치 벡터와 혈관 폴리곤의 위치 벡터를 기초로, 기준 장기와 혈관 폴리곤 간의 거리 정보를 도출할 수 있다. 예를 들어, 기준 장기의 위치 벡터가 (x1, y1, z1)이고 혈관 폴리곤의 위치 벡터가 (x2, y2, z2)인 경우, 컴퓨터는 아래 수학식 2와 같이 거리 정보(d)를 산출할 수 있다. The computer can acquire fixed-position organs, such as liver, heart, spleen, lung, kidney, etc., as reference organs. In this case, the reference organ may be composed of 3D modeled polygons. The computer may then place reference organs based on a predetermined reference vessel point in the 3D vessel model as a reference (eg, origin). Thus, the computer may calculate a position vector for the reference organ based on the reference vessel point. The computer may derive the distance information between the reference organ and the vascular polygon based on the calculated position vector of the reference organ and the position vector of the vascular polygon. For example, if the position vector of the reference organ is (x 1 , y 1 , z 1 ) and the position vector of the vascular polygon is (x 2 , y 2 , z 2 ), the computer generates distance information as shown in Equation 2 below. (d) can be calculated.
[수학식 2][Equation 2]
Figure PCTKR2019002092-appb-I000005
Figure PCTKR2019002092-appb-I000005
여기서, 혈관 폴리곤의 위치 벡터 (x2, y2, z2)는 해당 폴리곤의 중점일 수 있다. 기준 장기의 위치 벡터 (x1, y1, z1)는 해당 기준 장기에 대해 육면체 OBB(Oriented Bounding Box)를 씌운 경우 OBB의 중점일 수 있다. 도 22는 OBB의 중점을 산출하는 과정을 설명하기 위해 도시된 도면이다. 도 22를 참조하면, 컴퓨터는 해당 장기에 대응하는 육면체 OBB를 씌울 수 있다. 이때, 육면체 OBB의 중점은 대각선을 이용하여 산출할 수 있으므로, 컴퓨터는 육면체의 두 위치 벡터 V1(x1, y1, z1) 및 V2(x2, y2, z2)를 이용하여 아래 수학식 3과 같이 OBB의 중점 M(x3, y3, z3)을 계산할 수 있다.Here, the position vector (x 2 , y 2 , z 2 ) of the vascular polygon may be the midpoint of the polygon. The position vector (x 1 , y 1 , z 1 ) of a reference organ may be the center of the OBB when a cubic Oriented Bounding Box (OBB) is placed on the reference organ. 22 is a diagram illustrating a process of calculating the midpoint of the OBB. Referring to FIG. 22, a computer may cover a hexahedron OBB corresponding to the organ. In this case, since the midpoint of the cube OBB can be calculated using a diagonal line, the computer uses the two positions of the cube V1 (x 1 , y 1 , z 1 ) and V2 (x 2 , y 2 , z 2 ) As shown in Equation 3, the midpoint M (x 3 , y 3 , z 3 ) of the OBB can be calculated.
[수학식 3][Equation 3]
Figure PCTKR2019002092-appb-I000006
Figure PCTKR2019002092-appb-I000006
상술한 바와 같이, 컴퓨터는 혈관 폴리곤의 위치 벡터, 혈관 폴리곤의 혈관 정보(즉, 혈관 종류), 인접 폴리곤의 위치 벡터, 인접 폴리곤과 혈관 폴리곤 간의 차이 벡터 정보, 기준 장기와 혈관 폴리곤 간의 거리 정보 중 적어도 하나를 도출하고, 이를 기초로 학습데이터를 구성할 수 있다. As described above, the computer may include the position vector of the vascular polygon, the vessel information of the vascular polygon (ie, the vessel type), the position vector of the adjacent polygon, the difference vector information between the adjacent polygon and the vascular polygon, and the distance information between the reference organ and the vascular polygon. At least one may be derived, and learning data may be constructed based on the at least one.
컴퓨터는 학습데이터를 기초로 하여 혈관을 분류할 수 있다(S300).The computer may classify blood vessels based on the learning data (S300).
일 실시예로, 컴퓨터는 학습데이터를 기초로 학습을 수행하여 혈관을 분류하는 혈관 분류 학습 모델을 생성할 수 있다. 예를 들어, 컴퓨터는 기계학습을 통해 학습데이터를 학습시킬 수 있으며, 예컨대 의사결정 트리(Decision Tree), KNN(K-nearest neighbor), 신경망(Neural Network), SVM(Support Vector Machine) 등과 같은 지도학습을 사용할 수 있다. 즉, 컴퓨터는 혈관 폴리곤을 기초로 생성된 학습데이터에 대해 혈관을 분류하기 위한 지도학습을 수행하여, 혈관 분류 학습 모델을 생성할 수 있다. In an embodiment, the computer may generate a vessel classification learning model for classifying vessels by performing learning based on the training data. For example, a computer can learn learning data through machine learning. For example, a map such as a decision tree, a K-nearest neighbor, a neural network, and a support vector machine (SVM) can be used. You can use learning. That is, the computer may generate a blood vessel classification learning model by performing supervised learning for classifying blood vessels based on the training data generated based on the blood vessel polygon.
예를 들어, 컴퓨터는 상술한 바와 같은 학습데이터를 기초로 혈관 종류를 분류하는 학습을 수행할 수 있다. 컴퓨터는 학습 결과로 후술할 도 24에 도시된 바와 같은 혈관의 구조를 도출할 수 있으며, 혈관의 구조 상에서 혈관 폴리곤이 속하는 혈관의 종류를 특정할 수 있다. For example, the computer may perform learning to classify blood vessel types based on the learning data as described above. The computer may derive the structure of the blood vessel as shown in FIG. 24 to be described later as a learning result, and may specify the type of blood vessel to which the blood vessel polygon belongs on the structure of the blood vessel.
또한, 컴퓨터는 학습데이터를 기초로 혈관 형태를 분류하는 학습을 수행할 수 있다. 이때, 학습데이터는 혈관 정보로서 혈관 형태를 입력 정보로 이용할 수 있다. 도 23은 본 발명의 일 실시예에 따라 혈관 형태를 분류하는 학습 과정을 설명하기 위해 도시된 도면이다. 일례로, 도 23은 간장동맥(hepatic artery)을 형태에 따라 타입(예컨대, 10개의 타입)을 분류하여 도시한 도면이다. 컴퓨터는 도 23에 도시된 바와 같은 간장동맥의 형태를 타입별로 분류한 정보를 학습데이터로 사용할 수 있다. 이 경우, 컴퓨터는 이러한 혈관의 형태를 기초로 학습을 수행할 수 있다. 컴퓨터는 학습 결과로 후술할 도 25에 도시된 바와 같은 혈관의 계층 구조를 도출할 수 있으며, 혈관의 계층 구조 상에서 혈관 폴리곤이 속하는 혈관의 계층을 특정할 수 있다.In addition, the computer may perform learning to classify blood vessel types based on the learning data. In this case, the learning data may use blood vessel types as input information as blood vessel information. FIG. 23 is a diagram illustrating a learning process for classifying blood vessel types according to one embodiment of the present invention. For example, FIG. 23 is a diagram illustrating types of hepatic artery (type 10, for example) according to shape. The computer may use, as learning data, information classified by type of hepatic artery as shown in FIG. 23. In this case, the computer can perform the learning based on the shape of these vessels. The computer may derive a hierarchical structure of blood vessels as shown in FIG. 25 to be described later as a learning result, and specify a hierarchy of blood vessels to which a vascular polygon belongs on the blood vessel hierarchy.
학습데이터를 기초로 혈관을 분류함에 있어서, 컴퓨터는 혈관 종류를 분류하는 학습 과정과 혈관 형태를 분류하는 학습 과정을 각각 수행하여, 혈관 분류 학습 모델을 생성할 수도 있다. 또는, 컴퓨터는 혈관 종류를 분류하는 학습 과정과 혈관 형태를 분류하는 학습 과정을 동시에 수행하여, 혈관 분류 학습 모델을 생성할 수도 있다. In classifying blood vessels based on the training data, the computer may generate a blood vessel classification learning model by performing a learning process for classifying blood vessel types and a learning process for classifying blood vessel types, respectively. Alternatively, the computer may generate a blood vessel classification learning model by simultaneously performing a learning process for classifying blood vessel types and a learning process for classifying blood vessel types.
또한 실시예에 따라, 혈관 분류 학습 모델의 인식률을 향상시키기 위해, 컴퓨터는 추가 학습데이터를 이용하여 학습을 수행할 수 있다. 일 실시예로, 컴퓨터는 3D 혈관 모델 내 혈관 폴리곤에 대응하는 혈관을 2차원 공간으로 투영(projection)한 2차원 투영 이미지를 획득하고, 이를 추가 학습데이터를 사용할 수 있다.In addition, according to an embodiment, in order to improve the recognition rate of the blood vessel classification learning model, the computer may perform the learning using the additional learning data. In an embodiment, the computer may acquire a 2D projection image of projecting a blood vessel corresponding to a blood vessel polygon in the 3D blood vessel model in a 2D space, and use the additional learning data.
예를 들어, 컴퓨터는 3D 혈관 모델 내에서 혈관 폴리곤에 대응하는 3D 혈관을 추출하고, 추출된 3D 혈관을 특정 시점(view)으로 2차원 공간 상으로 투영하여 2차원 투영 이미지를 획득할 수 있다. 그리고, 컴퓨터는 특정 시점을 기초로 소정의 범위에 해당하는 적어도 하나의 시점에 대해, 추출된 3D 혈관을 2차원 공간 상으로 투영하여 적어도 하나의 2차원 투영 이미지를 획득할 수 있다. 컴퓨터는 획득된 2차원 투영 이미지 셋을 학습데이터로 하여 학습(예컨대, CNN)을 수행할 수 있다. 예컨대, 컴퓨터는 2차원 투영 이미지 셋을 이용하여 혈관 종류가 무엇인지 학습할 수 있다.For example, the computer may extract 3D vessels corresponding to the vascular polygons in the 3D vessel model, and project the extracted 3D vessels in a two-dimensional space to a specific view to obtain a two-dimensional projection image. The computer may obtain at least one two-dimensional projection image by projecting the extracted 3D blood vessel onto a two-dimensional space for at least one viewpoint corresponding to a predetermined range based on a specific viewpoint. The computer may perform learning (eg, CNN) using the acquired two-dimensional projection image set as learning data. For example, the computer can learn what the vessel types are by using a two-dimensional projection image set.
본 발명의 실시예에 있어서, 컴퓨터는 새로운 혈관 폴리곤 모델을 획득할 수 있고, 혈관 분류 학습 모델을 통해 새로운 혈관 폴리곤 모델 내 혈관을 분류할 수 있다. In an embodiment of the present invention, the computer may obtain a new vascular polygon model and classify the blood vessels in the new vascular polygon model through the vascular classification learning model.
일 실시예로, 컴퓨터는 새로운 혈관 폴리곤 모델로부터 적어도 하나의 혈관 폴리곤을 추출할 수 있다. 그리고, 컴퓨터는 추출된 적어도 하나의 혈관 폴리곤 각각에 대해, 혈관 폴리곤의 위치 벡터, 혈관 폴리곤과 인접하는 인접 폴리곤, 인접 폴리곤의 위치 벡터, 기준 장기와의 거리 정보 중 적어도 하나를 획득할 수 있다. 컴퓨터는 혈관 분류 학습 모델에 상기에서 획득된 혈관 폴리곤에 대한 정보를 입력하고, 그 출력 결과로 혈관 폴리곤에 대응하는 혈관 종류 및 혈관 계층 정보 중 적어도 하나를 도출할 수 있다. In one embodiment, the computer may extract at least one vascular polygon from the new vascular polygon model. The computer may obtain at least one of the extracted vector of the vascular polygon, the position vector of the vascular polygon, the adjacent polygon adjacent to the vascular polygon, the position vector of the adjacent polygon, and the distance information from the reference organ. The computer may input information about the vascular polygon obtained in the vessel classification learning model, and may derive at least one of blood vessel type and vascular hierarchy information corresponding to the vascular polygon as a result of the output.
도 24 및 도 25는 본 발명의 일 실시예에 따라 학습 결과로 도출되는 혈관 분류의 일례를 나타낸 도면이다. 24 and 25 are diagrams showing an example of blood vessel classification derived as a learning result according to an embodiment of the present invention.
도 24의 (a)는 주요 정맥 혈관의 구조를 나타낸 것이고, 도 24의 (b)는 주요 동맥 혈관의 구조를 나타낸 것이다. 도 25는 대동맥과 그 세부 동맥 혈관의 계층 구조를 나타낸 것이다. Figure 24 (a) shows the structure of the main vein vessels, Figure 24 (b) shows the structure of the major arterial vessels. 25 shows the hierarchical structure of the aorta and its detailed arterial vessels.
상술한 바와 같이, 새로운 혈관 폴리곤 모델을 입력하면, 혈관 분류 학습 모델을 통한 학습 결과로서 해당 혈관 폴리곤이 속하는 동맥 또는 정맥 종류를 특정할 수 있다. 예컨대, 도 24의 (a) 또는 도 24의 (b)에 도시된 것과 같은 혈관 구조 내에서 해당 혈관 폴리곤이 속하는 혈관의 종류를 파악할 수 있게 된다. 나아가, 혈관 분류 학습 모델을 통한 학습 결과로서 해당 혈관 폴리곤이 속하는 혈관의 형태(즉, 동맥 또는 정맥의 타입)를 특정할 수 있다. 예컨대, 도 25에 도시된 바와 같은 혈관의 계층적 구조 상에서 해당 혈관 폴리곤이 속하는 혈관의 계층을 특정할 수도 있다. As described above, when a new vascular polygon model is input, the artery or vein type to which the vascular polygon belongs may be specified as a learning result through the vascular classification learning model. For example, it is possible to grasp the type of blood vessel to which the corresponding blood vessel polygon belongs in the blood vessel structure as shown in FIG. 24 (a) or FIG. 24 (b). Furthermore, as a result of learning through the blood vessel classification learning model, the type of blood vessel (ie, the type of artery or vein) to which the corresponding blood vessel polygon belongs may be specified. For example, the hierarchical structure of blood vessels as shown in FIG. 25 may specify a hierarchy of blood vessels to which the corresponding blood vessel polygon belongs.
본 발명에 따르면, 혈관 분류를 위한 학습 모델을 구축함으로써 혈관의 기하학적 정보 및 계층적 정보를 정확하게 파악할 수 있다. 또한, 이를 이용하여 시뮬레이션을 수행하는 경우, 수술 대상 및 주변에 위치하는 동맥 및 정맥에 대한 혈관 정보를 정확하게 제공해 줄 수 있으므로 보다 정밀한 수술 시뮬레이션이 가능하다. According to the present invention, it is possible to accurately grasp geometric and hierarchical information of blood vessels by building a learning model for classifying blood vessels. In addition, when the simulation is performed using this, more accurate surgical simulation is possible because the vessel information about the arteries and veins located in the surgical target and the surroundings can be accurately provided.
본 발명에 따르면, 하나의 폴리곤과 그에 인접한 인접 폴리곤과의 연결 정보를 기초로 학습데이터를 구성함으로써 혈관을 분류하고 혈관을 계층화하는데 효과적이다. According to the present invention, it is effective to classify blood vessels and stratify blood vessels by constructing training data based on connection information between one polygon and an adjacent polygon.
본 발명에 따르면, 기준 혈관 지점 및 기준 장기를 기초로 도출된 폴리곤의 위치 정보를 이용함으로써 보다 정확한 혈관 분류 학습 모델을 구축할 수 있고, 이를 통해 보다 인식률이 높은 학습 결과를 얻을 수 있다. According to the present invention, by using the position information of the polygon derived based on the reference vessel point and the reference organ, it is possible to build a more accurate vessel classification learning model, through which a higher recognition rate can be obtained.
도 26은 본 발명의 일 실시예에 따른 혈관 모델을 이용한 혈관 정보 제공 방법을 수행하는 장치(200)의 구성을 개략적으로 나타내는 도면이다. FIG. 26 is a diagram schematically illustrating a configuration of an apparatus 200 for performing a method of providing blood vessel information using a blood vessel model according to an embodiment of the present invention.
도 26을 참조하면, 프로세서(210)는 하나 이상의 코어(core, 미도시) 및 그래픽 처리부(미도시) 및/또는 다른 구성 요소와 신호를 송수신하는 연결 통로(예를 들어, 버스(bus) 등)를 포함할 수 있다.Referring to FIG. 26, the processor 210 may include a connection passage (eg, a bus or the like) that transmits and receives a signal with one or more cores (not shown) and a graphic processor (not shown) and / or other components. ) May be included.
일 실시예에 따른 프로세서(210)는 메모리(220)에 저장된 하나 이상의 인스트럭션을 실행함으로써, 도 19 내지 도 25와 관련하여 설명된 혈관 모델을 이용한 혈관 정보 제공 방법을 수행한다.The processor 210 according to an embodiment executes one or more instructions stored in the memory 220 to perform a method of providing blood vessel information using the blood vessel model described with reference to FIGS. 19 to 25.
일례로, 프로세서(210)는 메모리(220)에 저장된 하나 이상의 인스트럭션을 실행함으로써 혈관 모델 내 혈관을 구성하는 혈관 폴리곤(polygon)을 획득하는 단계, 상기 혈관 폴리곤 정보 및 상기 혈관 폴리곤의 연결 정보를 기초로 학습데이터를 구성하는 단계, 및 상기 학습데이터를 기초로 학습을 수행하여 혈관을 분류하는 단계를 수행할 수 있다. In one example, the processor 210 acquires a blood vessel polygon constituting a blood vessel in a blood vessel model by executing one or more instructions stored in the memory 220, based on the blood vessel polygon information and connection information of the blood vessel polygon. And organizing the learning data, and classifying blood vessels by performing learning based on the learning data.
한편, 프로세서(210)는 프로세서(210) 내부에서 처리되는 신호(또는, 데이터)를 일시적 및/또는 영구적으로 저장하는 램(RAM: Random Access Memory, 미도시) 및 롬(ROM: Read-Only Memory, 미도시)을 더 포함할 수 있다. 또한, 프로세서(210)는 그래픽 처리부, 램 및 롬 중 적어도 하나를 포함하는 시스템온칩(SoC: system on chip) 형태로 구현될 수 있다.On the other hand, the processor 210 is a random access memory (RAM) and a ROM (Read-Only Memory) for temporarily and / or permanently storing signals (or data) processed in the processor 210. , Not shown) may be further included. In addition, the processor 210 may be implemented in the form of a system on chip (SoC) including at least one of a graphic processor, a RAM, and a ROM.
메모리(220)에는 프로세서(210)의 처리 및 제어를 위한 프로그램들(하나 이상의 인스트럭션들)을 저장할 수 있다. 메모리(220)에 저장된 프로그램들은 기능에 따라 복수 개의 모듈들로 구분될 수 있다.The memory 220 may store programs (one or more instructions) for processing and controlling the processor 210. Programs stored in the memory 220 may be divided into a plurality of modules according to their functions.
이상에서 전술한 본 발명의 일 실시예에 따른 혈관 모델을 이용한 혈관 정보 제공 방법은, 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 어플리케이션)으로 구현되어 매체에 저장될 수 있다.The blood vessel information providing method using the blood vessel model according to the above-described embodiment of the present invention may be implemented as a program (or an application) to be executed by being combined with a computer which is hardware and stored in a medium.
한편 상기에서 설명된 본 발명의 실시예들에서, 프로그램은, 컴퓨터가 프로그램을 읽어 들여 프로그램으로 구현된 상기 방법들을 실행시키기 위하여, 상기 컴퓨터의 프로세서(CPU)가 상기 컴퓨터의 장치 인터페이스를 통해 읽힐 수 있는 C, C++, JAVA, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다. 이러한 코드는 상기 방법들을 실행하는 필요한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Functional Code)를 포함할 수 있고, 상기 기능들을 상기 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수 있다. 또한, 이러한 코드는 상기 기능들을 상기 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 상기 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조되어야 하는지에 대한 메모리 참조관련 코드를 더 포함할 수 있다. 또한, 상기 컴퓨터의 프로세서가 상기 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 상기 컴퓨터의 통신 모듈을 이용하여 원격에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수 있다.Meanwhile, in the embodiments of the present invention described above, the program may be read by the computer's processor (CPU) through the device interface of the computer in order for the computer to read the program and execute the methods implemented as the program. Code that is coded in a computer language such as C, C ++, JAVA, or machine language. Such code may include functional code associated with a function or the like that defines the necessary functions for executing the methods, and includes control procedures related to execution procedures necessary for the computer's processor to execute the functions according to a predetermined procedure. can do. In addition, the code may further include memory reference code for additional information or media required for the computer's processor to execute the functions at which location (address address) of the computer's internal or external memory should be referenced. have. Also, if the processor of the computer needs to communicate with any other computer or server remotely in order to execute the functions, the code may be used to communicate with any other computer or server remotely using the communication module of the computer. It may further include a communication related code for whether to communicate, what information or media should be transmitted and received during communication.
상기 저장되는 매체는, 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상기 저장되는 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있지만, 이에 제한되지 않는다. 즉, 상기 프로그램은 상기 컴퓨터가 접속할 수 있는 다양한 서버 상의 다양한 기록매체 또는 사용자의 상기 컴퓨터상의 다양한 기록매체에 저장될 수 있다. 또한, 상기 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장될 수 있다.The stored medium is not a medium for storing data for a short time such as a register, a cache, a memory, but semi-permanently, and means a medium that can be read by the device. Specifically, examples of the storage medium include, but are not limited to, a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like. That is, the program may be stored in various recording media on various servers to which the computer can access or various recording media on the computer of the user. The media may also be distributed over network coupled computer systems so that the computer readable code is stored in a distributed fashion.
본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.The steps of a method or algorithm described in connection with an embodiment of the present invention may be implemented directly in hardware, in a software module executed by hardware, or by a combination thereof. Software modules may include random access memory (RAM), read only memory (ROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), flash memory, hard disk, removable disk, CD-ROM, or It may reside in any form of computer readable recording medium well known in the art.
이상, 첨부된 도면을 참조로 하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다.In the above, embodiments of the present invention have been described with reference to the accompanying drawings, but those skilled in the art to which the present invention pertains may realize the present invention in other specific forms without changing the technical spirit or essential features thereof. I can understand that. Therefore, it should be understood that the embodiments described above are exemplary in all respects and not restrictive.

Claims (41)

  1. 수술정보를 구축하는 중계서버에 있어서,In the relay server for building the surgical information,
    클라이언트 사이의 통신을 중계하되,Relay communications between clients,
    제1 클라이언트로부터 실제수술영상을 기반으로 생성된 실제수술정보를 수신하고, 상기 수신된 실제수술정보를 제2 클라이언트로 송신하고, Receiving actual surgery information generated based on the actual surgery image from the first client, transmitting the received actual surgery information to the second client,
    상기 제2 클라이언트로부터 상기 실제수술정보를 기반으로 가상수술을 수행하여 생성된 가상수술정보를 수신하고, 상기 가상수술정보를 상기 제1 클라이언트로 송신하는 것을 특징으로 하는 중계서버. And receiving virtual surgery information generated by performing virtual surgery based on the actual surgery information from the second client, and transmitting the virtual surgery information to the first client.
  2. 제1항에 있어서,The method of claim 1,
    상기 중계서버는,The relay server,
    상기 제1 클라이언트로부터 수신된 상기 실제수술정보 및 상기 제2 클라이언트로부터 수신된 상기 가상수술정보를 저장하는 것을 특징으로 하는 중계서버. And storing the actual surgery information received from the first client and the virtual surgery information received from the second client.
  3. 제1항에 있어서,The method of claim 1,
    상기 중계서버는,The relay server,
    상기 실제수술정보 및 상기 가상수술정보를 기반으로 수술과정에 대한 큐시트데이터를 생성하는 것을 특징으로 하는 중계서버. Relay server, characterized in that for generating a cue sheet data on the surgical procedure based on the actual surgery information and the virtual surgery information.
  4. 제3항에 있어서,The method of claim 3,
    상기 큐시트데이터는, The cue sheet data,
    상기 실제수술영상에 대응하는 수술과정을 분할하여 생성된 복수의 세부수술동작을 포함하는 것을 특징으로 하는 중계서버. And a plurality of detailed surgery operations generated by dividing a surgery procedure corresponding to the actual surgery image.
  5. 제3항에 있어서,The method of claim 3,
    상기 중계서버는,The relay server,
    상기 큐시트데이터를 기반으로 학습을 수행하여 상기 실제수술영상에 대응하는 최적화된 큐시트데이터를 산출하는 것을 특징으로 하는 중계서버. And performing the learning based on the cue sheet data to calculate optimized cue sheet data corresponding to the actual surgical image.
  6. 제1항에 있어서,The method of claim 1,
    상기 중계서버는,The relay server,
    제3 클라이언트로부터 수술 가이드 정보를 수신하고, 상기 수신된 수술 가이드 정보를 상기 제1 클라이언트 또는 상기 제2 클라이언트로 송신하며,Receiving surgery guide information from a third client, transmitting the received surgery guide information to the first client or the second client,
    상기 제3 클라이언트는,The third client,
    상기 실제수술정보 및 상기 가상수술정보를 상기 중계서버로부터 수신하여, 상기 실제수술영상에 대응하는 수술 가이드 정보를 생성하는 것을 특징으로 하는 중계서버. And receiving the actual surgery information and the virtual surgery information from the relay server and generating surgery guide information corresponding to the actual surgery image.
  7. 제1항에 있어서,The method of claim 1,
    상기 실제수술정보는,The actual surgery information,
    상기 실제수술영상으로부터 획득되는 카메라 정보, 수술부위 정보, 및 수술도구 정보 중 적어도 하나를 포함하며, At least one of the camera information, surgical site information, and surgical instrument information obtained from the actual surgical image,
    상기 가상수술정보는,The virtual surgery information,
    상기 가상수술을 수행함에 따라 생성된 시뮬레이션 데이터를 포함하는 것을 특징으로 하는 중계서버. Relay server, characterized in that it comprises a simulation data generated by performing the virtual surgery.
  8. 중계서버에 의해 수행되는 수술정보 구축 방법에 있어서,In the surgery information construction method performed by the relay server,
    제1 클라이언트로부터 실제수술영상에 대한 실제수술정보를 수신하는 단계; Receiving actual surgery information on the actual surgery image from the first client;
    상기 실제수술정보를 제2 클라이언트로 송신하는 단계;Transmitting the actual surgical information to a second client;
    상기 제2 클라이언트로부터 상기 실제수술정보를 기반으로 생성된 가상수술정보를 수신하는 단계; 및Receiving virtual surgery information generated based on the actual surgery information from the second client; And
    상기 실제수술정보 및 상기 가상수술정보를 저장하는 단계를 포함하는 것을 특징으로 하는 수술정보 구축 방법.Surgical information construction method comprising the step of storing the actual surgery information and the virtual surgery information.
  9. 하드웨어인 컴퓨터와 결합되어, 제8항의 방법을 수행할 수 있도록 컴퓨터에서 독출가능한 기록매체에 저장된 컴퓨터프로그램.A computer program, coupled to a computer, which is hardware, stored on a recording medium readable by a computer to perform the method of claim 8.
  10. 컴퓨터가 수행하는 인공데이터를 생성하는 방법에 있어서,In the method for generating artificial data performed by a computer,
    배경이미지 및 객체이미지를 획득하는 단계; 및Obtaining a background image and an object image; And
    상기 배경이미지 및 상기 객체이미지를 결합하여 인공데이터를 생성하는 단계를 포함하며, Generating artificial data by combining the background image and the object image;
    상기 배경이미지는, 내시경 카메라에 의해 촬영된 신체내부의 특정 영역을 포함하며, The background image includes a specific area inside the body taken by the endoscope camera,
    상기 객체이미지는, 수술도구 또는 혈액을 포함하며, The object image includes a surgical instrument or blood,
    상기 인공데이터는, 상기 객체이미지 내 수술도구 또는 혈액, 및 상기 배경이미지 내 신체내부의 특정 영역 사이의 배치 관계를 기반으로 실제수술영상과 근사하게 생성되는 것을 특징으로 하는 인공데이터 생성 방법.The artificial data is artificial data generation method, characterized in that generated on the basis of the relationship between the surgical tool or blood in the object image, and the specific region of the body in the background image approximating the actual surgical image.
  11. 제10항에 있어서,The method of claim 10,
    상기 인공데이터를 생성하는 단계는,Generating the artificial data,
    실제수술영상을 기초로 학습된 생성모델(Generative Model)을 이용하여 상기 인공데이터를 생성하는 것을 특징으로 하는 인공데이터 생성 방법.Artificial data generation method characterized in that to generate the artificial data using a generation model (Generative Model) learned based on the actual surgical image.
  12. 제11항에 있어서,The method of claim 11,
    상기 인공데이터를 생성하는 단계는,Generating the artificial data,
    실제데이터인지 인공데이터인지 감별하도록 학습된 감별모델(Discriminative Model)을 이용하여 상기 인공데이터가 실제데이터인지 인공데이터인지를 판단하는 단계; 및Determining whether the artificial data is real data or artificial data by using a discrimination model trained to discriminate whether the actual data is artificial data or artificial data; And
    상기 판단 결과에 따라 상기 생성모델을 다시 학습시키는 단계를 포함하는 것을 특징으로 하는 인공데이터 생성 방법.And re-learning the generation model according to the determination result.
  13. 제12항에 있어서,The method of claim 12,
    상기 감별모델은,The differentiation model,
    상기 인공데이터 및 상기 인공데이터에 대응하는 실제수술영상 내 객체 세그먼테이션(segmentation)을 이용하여 학습되는 것을 특징으로 하는 인공데이터 생성 방법.The artificial data generation method characterized in that the learning using the artificial data and the object segmentation (segmentation) in the actual surgical image corresponding to the artificial data.
  14. 제12항에 있어서,The method of claim 12,
    상기 다시 학습된 생성모델로부터 생성된 새로운 인공데이터를 기초로 수술영상 인식을 위한 학습 데이터 세트를 구성하는 단계를 더 포함하는 것을 특징으로 하는 인공데이터 생성 방법.And constructing a training data set for surgical image recognition based on the new artificial data generated from the retrained generation model.
  15. 제10항에 있어서,The method of claim 10,
    상기 배경이미지 및 상기 객체이미지를 획득하는 단계는,Acquiring the background image and the object image,
    객체 및 배경을 포함하는 제1 실제수술영상으로부터 상기 객체이미지를 획득하고, 객체 및 배경을 포함하는 제2 실제수술영상으로부터 상기 배경이미지를 획득하는 것을 특징으로 하는 인공데이터 생성 방법.And obtaining the object image from the first real surgical image including an object and a background, and obtaining the background image from a second real surgical image including an object and a background.
  16. 제10항에 있어서,The method of claim 10,
    상기 배경이미지 및 상기 객체이미지를 획득하는 단계는,Acquiring the background image and the object image,
    객체를 포함하는 제1 실제수술영상으로부터 상기 객체이미지를 획득하고, 객체 및 배경을 포함하는 제2 실제수술영상으로부터 상기 배경이미지를 획득하는 것을 특징으로 하는 인공데이터 생성 방법.And obtaining the object image from the first real surgical image including an object, and obtaining the background image from a second real surgical image including an object and a background.
  17. 제10항에 있어서,The method of claim 10,
    상기 배경이미지 및 상기 객체이미지를 획득하는 단계는,Acquiring the background image and the object image,
    객체 및 배경을 포함하는 제1 실제수술영상으로부터 상기 객체이미지를 획득하고, 배경을 포함하는 제2 실제수술영상으로부터 상기 배경이미지를 획득하는 것을 특징으로 하는 인공데이터 생성 방법.And obtaining the object image from the first real surgery image including an object and a background, and obtaining the background image from a second real surgery image including a background.
  18. 제10항에 있어서,The method of claim 10,
    상기 배경이미지 및 상기 객체이미지를 획득하는 단계는,Acquiring the background image and the object image,
    객체를 포함하는 제1 실제수술영상으로부터 상기 객체이미지를 획득하고, 배경을 포함하는 제2 실제수술영상으로부터 상기 배경이미지를 획득하는 것을 특징으로 하는 인공데이터 생성 방법.And obtaining the object image from the first real surgical image including an object, and obtaining the background image from the second real surgical image including a background.
  19. 하나 이상의 인스트럭션을 저장하는 메모리; 및Memory for storing one or more instructions; And
    상기 메모리에 저장된 상기 하나 이상의 인스트럭션을 실행하는 프로세서를 포함하며,A processor for executing the one or more instructions stored in the memory,
    상기 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써,The processor executes the one or more instructions,
    배경이미지 및 객체이미지를 획득하는 단계; 및Obtaining a background image and an object image; And
    상기 배경이미지 및 상기 객체이미지를 결합하여 인공데이터를 생성하는 단계를 수행하되, Performing artificial data by combining the background image and the object image;
    상기 배경이미지는, 내시경 카메라에 의해 촬영된 신체내부의 특정 영역을 포함하며, The background image includes a specific area inside the body taken by the endoscope camera,
    상기 객체이미지는, 수술도구 또는 혈액을 포함하며, The object image includes a surgical instrument or blood,
    상기 인공데이터는, 상기 객체이미지 내 수술도구 또는 혈액, 및 상기 배경이미지 내 신체내부의 특정 영역 사이의 배치 관계를 기반으로 실제수술영상과 근사하게 생성되는 것을 특징으로 하는 장치.The artificial data may be generated based on an arrangement relationship between a surgical tool or blood in the object image and a specific region within the body in the background image.
  20. 하드웨어인 컴퓨터와 결합되어, 제10항의 방법을 수행할 수 있도록 컴퓨터에서 독출가능한 기록매체에 저장된 컴퓨터프로그램.A computer program, coupled to a computer, which is hardware, stored on a recording medium readable by a computer so as to perform the method of claim 10.
  21. 컴퓨터가 수행하는 수술영상을 기초로 학습데이터를 생성하는 방법에 있어서, In the method for generating training data based on a surgical image performed by a computer,
    복수의 영상프레임을 포함하는 수술영상을 획득하는 단계;Acquiring a surgical image comprising a plurality of image frames;
    상기 복수의 영상프레임 각각으로부터 수술인식정보를 인식하는 단계; 및Recognizing surgical recognition information from each of the plurality of image frames; And
    상기 복수의 영상프레임 각각에 대해, 상기 수술인식정보를 기초로 상기 수술인식정보에 포함된 수술요소(surgical element) 간의 관계를 나타내는 관계표현(Relational Representation) 정보를 생성하는 단계를 포함하는 것을 특징으로 하는 수술영상을 기초로 학습데이터를 생성하는 방법. For each of the plurality of image frames, generating relational representation information representing a relationship between surgical elements included in the surgical recognition information based on the surgical recognition information. How to generate learning data based on the surgical image.
  22. 제21항에 있어서,The method of claim 21,
    상기 수술인식정보는,The surgery recognition information,
    수술도구, 수술동작, 신체부위, 출혈여부, 수술단계, 수술시간, 및 카메라 정보 중 적어도 하나의 수술요소를 포함하는 것을 특징으로 하는 수술영상을 기초로 학습데이터를 생성하는 방법. Method for generating learning data based on the surgical image, characterized in that it comprises at least one of the surgical elements, surgical operation, body parts, bleeding status, operation stage, operation time, and camera information.
  23. 제21항에 있어서,The method of claim 21,
    상기 수술인식정보를 인식하는 단계는,Recognizing the surgical recognition information,
    상기 복수의 영상프레임 각각으로부터 수술요소로서 판단되는 상기 수술인식정보를 추출하는 단계; 및Extracting the surgical recognition information determined as a surgical element from each of the plurality of image frames; And
    상기 복수의 영상프레임 각각으로부터 추출된 상기 수술인식정보 내 수술요소의 위치 정보를 도출하는 단계를 포함하는 것을 특징으로 하는 수술영상을 기초로 학습데이터를 생성하는 방법. And deriving position information of a surgical element in the surgical recognition information extracted from each of the plurality of image frames.
  24. 제23항에 있어서,The method of claim 23, wherein
    상기 수술요소의 위치 정보를 도출하는 단계는,Deriving the position information of the surgical element,
    상기 복수의 영상프레임 각각을 적어도 하나의 영역으로 분할하는 단계; 및Dividing each of the plurality of image frames into at least one area; And
    상기 분할된 영역 중에서 상기 수술요소가 존재하는 영역을 기초로 상기 수술요소의 위치 정보를 도출하는 단계를 포함하는 것을 특징으로 하는 수술영상을 기초로 학습데이터를 생성하는 방법. And deriving position information of the surgical element based on an area in which the surgical element exists among the divided regions.
  25. 제23항에 있어서,The method of claim 23, wherein
    상기 관계표현 정보를 생성하는 단계는,Generating the relationship expression information,
    상기 복수의 영상프레임 중 제1 영상프레임으로부터 추출된 복수의 수술요소 및 상기 복수의 수술요소의 위치 정보를 기초로 상기 제1 영상프레임 내에서 상기 복수의 수술요소 간의 상관관계가 존재하는지 여부를 판단하는 단계; 및It is determined whether there is a correlation between the plurality of surgical elements in the first image frame based on the plurality of surgical elements extracted from the first image frame among the plurality of image frames and the position information of the plurality of surgical elements. Making; And
    상기 복수의 수술요소 간의 상관관계를 기초로 상기 제1 영상프레임에 대한 관계표현 정보를 생성하는 단계를 포함하는 것을 특징으로 하는 수술영상을 기초로 학습데이터를 생성하는 방법. And generating relationship expression information for the first image frame based on the correlation between the plurality of surgical elements.
  26. 제25항에 있어서,The method of claim 25,
    상기 복수의 수술요소 간의 상관관계가 존재하는지 여부를 판단하는 단계는,Determining whether there is a correlation between the plurality of surgical elements,
    미리 정의된 수술요소에 대한 관계정보를 기초로 상기 복수의 수술요소 간의 상관관계가 존재하는지 여부를 판단하며, It is determined whether a correlation exists between the plurality of surgical elements based on the relationship information on a predefined surgical element,
    상기 미리 정의된 수술요소에 대한 관계정보는,The relationship information for the predefined surgical element,
    수술요소의 종류, 수술요소의 위치 정보, 수술요소의 상태 정보, 및 수술요소의 동작 정보 중 적어도 하나를 기초로 설정된 정보인 것을 특징으로 하는 수술영상을 기초로 학습데이터를 생성하는 방법. Method for generating learning data based on the surgical image, characterized in that the information set on the basis of at least one of the type of operation element, the position information of the operation element, the state information of the operation element, the operation information of the operation element.
  27. 제21항에 있어서,The method of claim 21,
    상기 복수의 영상프레임 각각에 대해 생성된 상기 관계표현 정보를 기초로 학습데이터를 구축하는 단계를 더 포함하는 것을 특징으로 하는 수술영상을 기초로 학습데이터를 생성하는 방법. And constructing learning data based on the relationship expression information generated for each of the plurality of image frames.
  28. 제27항에 있어서,The method of claim 27,
    특정 학습 결과를 도출하기 위해 상기 학습데이터를 기초로 학습을 수행하는 단계를 더 포함하는 것을 특징으로 하는 수술영상을 기초로 학습데이터를 생성하는 방법. And learning based on the surgical data to derive a specific learning result.
  29. 하나 이상의 인스트럭션을 저장하는 메모리; 및Memory for storing one or more instructions; And
    상기 메모리에 저장된 상기 하나 이상의 인스트럭션을 실행하는 프로세서를 포함하며,A processor for executing the one or more instructions stored in the memory,
    상기 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써,The processor executes the one or more instructions,
    복수의 영상프레임을 포함하는 수술영상을 획득하는 단계;Acquiring a surgical image comprising a plurality of image frames;
    상기 복수의 영상프레임 각각으로부터 수술인식정보를 인식하는 단계; 및Recognizing surgical recognition information from each of the plurality of image frames; And
    상기 복수의 영상프레임 각각에 대해, 상기 수술인식정보를 기초로 상기 수술인식정보에 포함된 수술요소(surgical element) 간의 관계를 나타내는 관계표현(Relational Representation) 정보를 생성하는 단계를 수행하는 것을 특징으로 하는 장치. For each of the plurality of image frames, generating relational representation information representing a relationship between surgical elements included in the surgical recognition information based on the surgical recognition information. Device.
  30. 하드웨어인 컴퓨터와 결합되어, 제21항의 방법을 수행할 수 있도록 컴퓨터에서 독출가능한 기록매체에 저장된 컴퓨터프로그램.A computer program, coupled to a computer, which is hardware, stored on a recording medium readable by a computer to perform the method of claim 21.
  31. 컴퓨터가 수행하는 혈관 모델을 이용한 혈관 정보 제공 방법에 있어서,In the blood vessel information providing method using a vessel model performed by a computer,
    혈관 모델 내 혈관을 구성하는 혈관 폴리곤(polygon)을 획득하는 단계;Obtaining a vascular polygon constituting a blood vessel in the vascular model;
    상기 혈관 폴리곤 정보 및 상기 혈관 폴리곤의 연결 정보를 기초로 학습데이터를 구성하는 단계; 및Constructing training data based on the vascular polygon information and the connection information of the vascular polygon; And
    상기 학습데이터를 기초로 하여 혈관을 분류하는 단계를 포함하는 것을 특징으로 하는 혈관 모델을 이용한 혈관 정보 제공 방법. Vessel information providing method using a vessel model, characterized in that it comprises the step of classifying the vessel on the basis of the learning data.
  32. 제31항에 있어서,The method of claim 31, wherein
    상기 혈관 폴리곤 정보는, The vascular polygon information,
    상기 혈관 폴리곤의 위치 벡터, 및 상기 혈관 폴리곤의 혈관 정보를 포함하며, Location vector of the vascular polygon, and vessel information of the vascular polygon;
    상기 혈관 폴리곤의 연결 정보는,The connection information of the vascular polygon is
    상기 혈관 폴리곤에 인접하는 인접 폴리곤, 및 상기 인접 폴리곤과 상기 혈관 폴리곤 간의 위치 벡터 차이 정보를 포함하는 것을 특징으로 하는 혈관 모델을 이용한 혈관 정보 제공 방법. And a vessel vector adjacent to the vessel polygon, and position vector difference information between the neighbor polygon and the vessel polygon.
  33. 제32항에 있어서,33. The method of claim 32,
    상기 혈관 폴리곤의 위치 벡터는,The position vector of the vascular polygon is
    상기 혈관 모델 내 기설정된 기준 혈관 지점을 기준으로 상기 혈관 폴리곤의 중점에 대한 위치 벡터이며,A position vector of a midpoint of the vascular polygon with respect to a predetermined reference vessel point in the vessel model,
    상기 혈관 폴리곤의 혈관 정보는,Blood vessel information of the vascular polygon,
    기설정된 동맥 및 정맥 분류정보를 기초로 결정된 혈관의 종류인 것을 특징으로 하는 혈관 모델을 이용한 혈관 정보 제공 방법. Method of providing blood vessel information using a blood vessel model, characterized in that the type of blood vessels determined based on the predetermined artery and vein classification information.
  34. 제31항에 있어서,The method of claim 31, wherein
    적어도 하나의 기준 장기를 획득하는 단계를 더 포함하며, Obtaining at least one reference organ,
    상기 학습데이터를 구성하는 단계는,Comprising the learning data,
    상기 기준 장기와 상기 혈관 폴리곤 간의 거리 정보를 도출하여 상기 학습데이터를 구성하는 것을 특징으로 하는 혈관 모델을 이용한 혈관 정보 제공 방법. Method for providing blood vessel information using a blood vessel model, characterized in that for constructing the learning data by deriving the distance information between the reference organ and the blood vessel polygon.
  35. 제34항에 있어서,The method of claim 34, wherein
    상기 기준 장기를 획득하는 단계는,Acquiring the reference organs,
    상기 혈관 모델 내 기설정된 기준 혈관 지점을 기준으로 상기 기준 장기를 배치하는 단계; 및Placing the reference organ based on a predetermined reference vessel point in the vessel model; And
    상기 기준 혈관 지점을 기준으로 상기 기준 장기에 대한 위치 벡터를 도출하는 단계를 포함하며, Deriving a position vector for the reference organ based on the reference vessel point,
    상기 기준 장기와 상기 혈관 폴리곤 간의 거리 정보는,Distance information between the reference organ and the vascular polygon,
    상기 기준 장기의 위치 벡터와 상기 혈관 폴리곤의 위치 벡터를 기초로 도출되는 것을 특징으로 하는 혈관 모델을 이용한 혈관 정보 제공 방법. The vessel information providing method using the vessel model, which is derived based on the position vector of the reference organ and the position vector of the vascular polygon.
  36. 제31항에 있어서,The method of claim 31, wherein
    상기 혈관을 분류하는 단계는,The step of classifying the blood vessels,
    상기 학습데이터를 기초로 학습을 수행하여 혈관을 분류하는 혈관 분류 학습 모델을 생성하는 것을 특징으로 하는 혈관 모델을 이용한 혈관 정보 제공 방법. A vessel information providing method using a vessel model, characterized in that to generate a vessel classification learning model for classifying vessels by performing learning based on the learning data.
  37. 제31항에 있어서,The method of claim 31, wherein
    상기 혈관 폴리곤에 대응하는 혈관을 2차원 공간으로 투영(projection)한 2차원 투영 이미지를 획득하는 단계; 및Obtaining a two-dimensional projection image of projecting a blood vessel corresponding to the blood vessel polygon into a two-dimensional space; And
    상기 2차원 투영 이미지를 추가 학습데이터로 사용하여 학습을 수행하는 단계를 더 포함하는 것을 특징으로 하는 혈관 모델을 이용한 혈관 정보 제공 방법. And performing learning using the two-dimensional projection image as additional learning data.
  38. 제31항에 있어서,The method of claim 31, wherein
    새로운 혈관 폴리곤 모델을 획득하는 단계를 더 포함하며,Obtaining a new vascular polygon model,
    상기 혈관을 분류하는 단계는,The step of classifying the blood vessels,
    상기 학습데이터를 기초로 하여 상기 새로운 혈관 폴리곤 모델 내 혈관을 분류하는 것을 특징으로 하는 혈관 모델을 이용한 혈관 정보 제공 방법. Vessel information providing method using a vessel model, characterized in that to classify the vessel in the new vessel polygon model based on the learning data.
  39. 제38항에 있어서,The method of claim 38,
    상기 새로운 혈관 폴리곤 모델을 획득하는 단계는,Acquiring the new blood vessel polygon model,
    상기 새로운 혈관 폴리곤 모델 내 적어도 하나의 혈관 폴리곤을 추출하는 단계; 및Extracting at least one vascular polygon in the new vascular polygon model; And
    상기 적어도 하나의 혈관 폴리곤의 위치 벡터, 상기 적어도 하나의 혈관 폴리곤에 인접하는 인접 폴리곤, 상기 인접 폴리곤의 위치 벡터, 및 기준 장기와의 거리 정보 중 적어도 하나를 획득하는 단계를 포함하며,Obtaining at least one of a position vector of the at least one vascular polygon, an adjacent polygon adjacent to the at least one vascular polygon, a position vector of the adjacent polygon, and distance information with a reference organ,
    상기 혈관을 분류하는 단계는,The step of classifying the blood vessels,
    상기 학습데이터를 기초로 하여 상기 적어도 하나의 혈관 폴리곤에 대응하는 혈관 종류 및 혈관 계층 정보 중 적어도 하나를 도출하는 것을 특징으로 하는 혈관 모델을 이용한 혈관 정보 제공 방법. And at least one of a vessel type and vessel hierarchy information corresponding to the at least one vessel polygon based on the learning data.
  40. 하나 이상의 인스트럭션을 저장하는 메모리; 및Memory for storing one or more instructions; And
    상기 메모리에 저장된 상기 하나 이상의 인스트럭션을 실행하는 프로세서를 포함하며,A processor for executing the one or more instructions stored in the memory,
    상기 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써, The processor executes the one or more instructions,
    혈관 모델 내 혈관을 구성하는 혈관 폴리곤(polygon)을 획득하는 단계;Obtaining a vascular polygon constituting a blood vessel in the vascular model;
    상기 혈관 폴리곤 정보 및 상기 혈관 폴리곤의 연결 정보를 기초로 학습데이터를 구성하는 단계; 및Constructing training data based on the vascular polygon information and the connection information of the vascular polygon; And
    상기 학습데이터를 기초로 하여 혈관을 분류하는 단계를 수행하는 것을 특징으로 하는 장치. And classifying blood vessels based on the learning data.
  41. 하드웨어인 컴퓨터와 결합되어, 제31항의 방법을 수행할 수 있도록 컴퓨터에서 독출가능한 기록매체에 저장된 컴퓨터프로그램.A computer program, coupled with a computer, which is hardware, stored on a recording medium readable by a computer to perform the method of claim 31.
PCT/KR2019/002092 2018-02-20 2019-02-20 Training data generation method and device WO2019164274A1 (en)

Applications Claiming Priority (14)

Application Number Priority Date Filing Date Title
KR20180019867 2018-02-20
KR20180019866 2018-02-20
KR10-2018-0019867 2018-02-20
KR10-2018-0019868 2018-02-20
KR10-2018-0019866 2018-02-20
KR20180019868 2018-02-20
KR1020180122454A KR102014351B1 (en) 2018-02-20 2018-10-15 Method and apparatus for constructing surgical information
KR10-2018-0122454 2018-10-15
KR1020180122949A KR102013806B1 (en) 2018-02-20 2018-10-16 Method and apparatus for generating artificial data
KR10-2018-0122949 2018-10-16
KR10-2018-0143367 2018-11-20
KR1020180143367A KR102013857B1 (en) 2018-02-20 2018-11-20 Method and apparatus for generating learning data based on surgical video
KR10-2018-0149293 2018-11-28
KR1020180149293A KR102013848B1 (en) 2018-02-20 2018-11-28 Method and apparatus for providing blood vessel information using blood vessel model

Publications (1)

Publication Number Publication Date
WO2019164274A1 true WO2019164274A1 (en) 2019-08-29

Family

ID=67686856

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2019/002092 WO2019164274A1 (en) 2018-02-20 2019-02-20 Training data generation method and device

Country Status (1)

Country Link
WO (1) WO2019164274A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021206517A1 (en) * 2020-04-10 2021-10-14 (주)휴톰 Intraoperative vascular navigation method and system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101049507B1 (en) * 2009-02-27 2011-07-15 한국과학기술원 Image-guided Surgery System and Its Control Method
KR20120046439A (en) * 2010-11-02 2012-05-10 서울대학교병원 (분사무소) Method of operation simulation and automatic operation device using 3d modelling
KR101175065B1 (en) * 2011-11-04 2012-10-12 주식회사 아폴로엠 Method for bleeding scanning during operation using image processing apparatus for surgery
KR101302595B1 (en) * 2012-07-03 2013-08-30 한국과학기술연구원 System and method for predict to surgery progress step
KR20150000450A (en) * 2011-08-26 2015-01-02 이비엠 가부시키가이샤 Blood-vessel bloodstream simulation system, method therefor, and computer software program
JP2016039874A (en) * 2014-08-13 2016-03-24 富士フイルム株式会社 Endoscopic image diagnosis support device, system, method, and program

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101049507B1 (en) * 2009-02-27 2011-07-15 한국과학기술원 Image-guided Surgery System and Its Control Method
KR20120046439A (en) * 2010-11-02 2012-05-10 서울대학교병원 (분사무소) Method of operation simulation and automatic operation device using 3d modelling
KR20150000450A (en) * 2011-08-26 2015-01-02 이비엠 가부시키가이샤 Blood-vessel bloodstream simulation system, method therefor, and computer software program
KR101175065B1 (en) * 2011-11-04 2012-10-12 주식회사 아폴로엠 Method for bleeding scanning during operation using image processing apparatus for surgery
KR101302595B1 (en) * 2012-07-03 2013-08-30 한국과학기술연구원 System and method for predict to surgery progress step
JP2016039874A (en) * 2014-08-13 2016-03-24 富士フイルム株式会社 Endoscopic image diagnosis support device, system, method, and program

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021206517A1 (en) * 2020-04-10 2021-10-14 (주)휴톰 Intraoperative vascular navigation method and system
KR20210126243A (en) * 2020-04-10 2021-10-20 (주)휴톰 Method and system for navigating vascular during surgery
KR102457585B1 (en) * 2020-04-10 2022-10-21 (주)휴톰 Method and system for navigating vascular during surgery

Similar Documents

Publication Publication Date Title
WO2019164275A1 (en) Method and device for recognizing position of surgical instrument and camera
WO2010110560A2 (en) Surgical robot system using augmented reality, and method for controlling same
WO2017188706A1 (en) Mobile robot and mobile robot control method
WO2018048054A1 (en) Method for producing virtual reality interface on the basis of single-camera 3d image analysis, and device for producing virtual reality interface on the basis of single-camera 3d image analysis
WO2020138624A1 (en) Apparatus for noise canceling and method for the same
WO2019216593A1 (en) Method and apparatus for pose processing
WO2017039348A1 (en) Image capturing apparatus and operating method thereof
WO2021006366A1 (en) Artificial intelligence device for adjusting color of display panel, and method therefor
WO2021230708A1 (en) Image processing method, electronic device and readable storage medium
EP3740936A1 (en) Method and apparatus for pose processing
WO2019135621A1 (en) Video playback device and control method thereof
WO2014200289A2 (en) Apparatus and method for providing medical information
WO2022154457A1 (en) Action localization method, device, electronic equipment, and computer-readable storage medium
WO2015102391A1 (en) Image generating method for analyzing golf swing posture of user through depth image analysis, and method and device for analyzing golf swing posture using same
WO2020196962A1 (en) Artificial intelligence cleaner and operation method thereof
WO2011040769A2 (en) Surgical image processing device, image-processing method, laparoscopic manipulation method, surgical robot system and an operation-limiting method therefor
WO2019164271A1 (en) Virtual body model generation method and device
WO2021210966A1 (en) Method and device for automatically detecting feature points of three-dimensional medical image data using deep learning, method for automating position alignment of dental three-dimensional data, method for automatically detecting landmarks in dental three-dimensional scan data, method for determining matching accuracy of three-dimensional dental ct image and three-dimensional digital impression model, and computer-readable recording medium in which program for executing methods in computer is recorded
WO2021137345A1 (en) Artificial intelligence refrigerator and operating method therefor
WO2021029457A1 (en) Artificial intelligence server and method for providing information to user
WO2020138564A1 (en) Electronic device
WO2019164274A1 (en) Training data generation method and device
EP3381180A1 (en) Photographing device and method of controlling the same
WO2014200265A1 (en) Method and apparatus for providing medical information
WO2021040156A1 (en) Body measurement device and control method therefor

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: 19758259

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19758259

Country of ref document: EP

Kind code of ref document: A1