KR101864380B1 - Surgical image data learning system - Google Patents

Surgical image data learning system Download PDF

Info

Publication number
KR101864380B1
KR101864380B1 KR1020180026572A KR20180026572A KR101864380B1 KR 101864380 B1 KR101864380 B1 KR 101864380B1 KR 1020180026572 A KR1020180026572 A KR 1020180026572A KR 20180026572 A KR20180026572 A KR 20180026572A KR 101864380 B1 KR101864380 B1 KR 101864380B1
Authority
KR
South Korea
Prior art keywords
learning
model
server
client
surgical
Prior art date
Application number
KR1020180026572A
Other languages
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
Application filed by (주)휴톰 filed Critical (주)휴톰
Priority to KR1020180055105A priority Critical patent/KR102298412B1/en
Application granted granted Critical
Publication of KR101864380B1 publication Critical patent/KR101864380B1/en
Priority to PCT/KR2018/010333 priority patent/WO2019132168A1/en

Links

Images

Classifications

    • G06N99/005
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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/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
    • A61B90/36Image-producing devices or illumination devices not otherwise provided for
    • 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
    • G06T3/0068
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/14Transformations for image registration, e.g. adjusting or mapping for alignment of images
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H30/00ICT specially adapted for the handling or processing of medical images
    • G16H30/20ICT specially adapted for the handling or processing of medical images for handling medical images, e.g. DICOM, HL7 or PACS
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/20ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the management or administration of healthcare resources or facilities, e.g. managing hospital staff or surgery rooms
    • 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
    • A61B2034/2046Tracking techniques
    • A61B2034/2065Tracking using image or pattern recognition
    • 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
    • A61B90/36Image-producing devices or illumination devices not otherwise provided for
    • A61B2090/364Correlation of different images or relation of image positions in respect to the body

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Surgery (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Public Health (AREA)
  • Biomedical Technology (AREA)
  • Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Molecular Biology (AREA)
  • Veterinary Medicine (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Animal Behavior & Ethology (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Primary Health Care (AREA)
  • Robotics (AREA)
  • Epidemiology (AREA)
  • General Business, Economics & Management (AREA)
  • Business, Economics & Management (AREA)
  • Pathology (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Radiology & Medical Imaging (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Image Analysis (AREA)

Abstract

Disclosed is a surgical image data learning system which includes a server for learning at least one model to provide surgical guide information and a client which stores the at least one model learned in the server, recognizes a surgical image obtained in a surgery using the stored model, and provides surgical guide information corresponding to the recognized surgical image. The client transmits first learning data, obtained from the surgical image obtained in the surgery, to the server, receives information for updating the stored model from the server, and updates the stored model based on the received information. Accordingly, the present invention can easily learn and update the model.

Description

수술영상데이터 학습시스템 {SURGICAL IMAGE DATA LEARNING SYSTEM}{SURGICAL IMAGE DATA LEARNING SYSTEM}

본 발명은 수술영상데이터 학습시스템에 관한 것이다. The present invention relates to a surgical image data learning system.

수술과정에서, 의사의 수술을 보조하기 위한 정보를 제공할 수 있는 기술들의 개발이 요구되고 있다. 수술을 보조하기 위한 정보를 제공하기 위해서는, 수술행위를 인식할 수 있어야 한다.In the surgical procedure, development of techniques capable of providing information for assisting the surgeon of the doctor is required. In order to provide information for assisting the operation, it is necessary to be able to recognize the operation.

따라서, 컴퓨터가 수술영상으로부터 수술행위를 인식할 수 있는 기술의 개발이 요구된다.Therefore, it is required to develop a technique in which a computer can recognize a surgical operation from a surgical image.

또한, 최근에는 의료영상의 분석에 딥 러닝이 널리 이용되고 있다. 딥 러닝은 여러 비선형 변환기법의 조합을 통해 높은 수준의 추상화(abstractions, 다량의 데이터나 복잡한 자료들 속에서 핵심적인 내용 또는 기능을 요약하는 작업)를 시도하는 기계학습 알고리즘의 집합으로 정의된다. 딥 러닝은 큰 틀에서 사람의 사고방식을 컴퓨터에게 가르치는 기계학습의 한 분야로 볼 수 있다.In recent years, deep learning has been widely used in the analysis of medical images. Deep learning is defined as a set of machine learning algorithms that try to achieve high levels of abstraction (a task that summarizes key content or functions in large amounts of data or complex data) through a combination of several nonlinear transformation techniques. Deep learning can be viewed as a field of machine learning that teaches computers how people think in a big way.

본 발명이 해결하고자 하는 과제는 수술영상데이터 학습시스템을 제공하는 것이다.A problem to be solved by the present invention is to provide a surgical image data learning system.

본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The problems to be solved by the present invention are not limited to the above-mentioned problems, and other problems which are not mentioned can be clearly understood by those skilled in the art from the following description.

상술한 과제를 해결하기 위한 본 발명의 일 면에 따른 수술영상데이터 학습시스템은, 수술 가이드 정보를 제공하는 하나 이상의 모델을 학습시키는 서버 및 상기 서버에서 학습된 적어도 하나의 모델을 저장하고, 상기 저장된 모델을 이용하여 수술 중에 획득되는 수술 영상을 인식하고, 인식된 수술 영상에 대응하는 수술 가이드 정보를 제공하는 클라이언트를 포함하고, 상기 클라이언트는, 상기 수술 중에 획득된 수술 영상으로부터 획득되는 제1 학습용 데이터를 상기 서버에 전송하고, 상기 서버로부터 상기 저장된 모델을 업데이트하기위한 정보를 수신하고, 상기 수신된 정보에 기초하여 상기 저장된 모델을 업데이트한다.According to one aspect of the present invention, there is provided a surgical image data learning system including a server for learning one or more models for providing surgical guide information, at least one model learned in the server, And a client for recognizing a surgical image obtained during the operation using the model and providing surgical guide information corresponding to the recognized surgical image, wherein the client includes: first learning data obtained from the surgical image acquired during the operation; To the server, receives information for updating the stored model from the server, and updates the stored model based on the received information.

또한, 상기 하나 이상의 모델은, 수술 영상을 분할(segmentation)하여 인식하는 제1 모델 및 최적화된 수술방법을 산출하는 제2 모델을 포함하고, 상기 제1 학습용 데이터는 상기 제1 모델 및 상기 제2 모델 중 적어도 하나를 학습시키는 데 이용되고, 상기 클라이언트에 저장되는 적어도 하나의 모델은 상기 제1 모델을 포함할 수 있다.The at least one model may include a first model for segmenting and recognizing a surgical image and a second model for calculating an optimized surgical method, and the first learning data may include at least one of a first model and a second model, And at least one model stored in the client may include the first model.

또한, 상기 클라이언트는, 상기 수술 중에 획득된 수술 영상을 하나 이상의 수술단계로 분할(segmentation)하고, 상기 분할된 하나 이상의 수술단계를 인식하고, 상기 인식 결과를 상기 제1 학습용 데이터로서 상기 서버에 전송할 수 있다.Further, the client may segment the surgical image acquired during the operation into one or more surgical steps, recognize the divided one or more surgical steps, and transmit the recognition result to the server as the first learning data .

또한, 상기 클라이언트는, 상기 분할된 하나 이상의 수술단계 각각에 대하여 기 설정된 코드를 부여하고, 상기 분할된 하나 이상의 수술단계 각각에 대하여 부여된 상기 기 설정된 코드를 상기 서버에 전송할 수 있다.Further, the client may assign a predetermined code to each of the divided one or more surgical steps, and may transmit the predetermined code assigned to each of the divided one or more surgical steps to the server.

또한, 상기 클라이언트는, 상기 클라이언트에 저장된 모델과 상기 서버에 저장된 모델을 비교하고, 상기 서버에 저장된 모델이 상기 클라이언트에 저장된 모델보다 업데이트된 모델인 경우, 상기 서버로부터 상기 클라이언트에 저장된 모델을 업데이트하기위한 정보를 수신하고, 상기 수신된 정보에 기초하여 상기 클라이언트에 저장된 모델을 업데이트할 수 있다.The client may compare the model stored in the client with the model stored in the server and update the model stored in the client from the server when the model stored in the server is an updated model than the model stored in the client And update the model stored in the client based on the received information.

또한, 상기 서버는, 하나 이상의 수술 영상 및 상기 하나 이상의 수술 영상을 분할하는 정보를 획득하고, 상기 획득된 정보를 이용하여 제2 학습용 데이터를 생성할 수 있다.In addition, the server may acquire information for dividing at least one surgical image and the at least one surgical image, and may generate second learning data using the obtained information.

또한, 상기 서버는, 학습조건을 입력받고, 상기 제2 학습용 데이터로부터 상기 입력된 학습조건에 대응하는 데이터셋을 추출하고, 상기 추출된 데이터셋을 이용하여 상기 적어도 하나의 모델에 대한 학습을 수행할 수 있다.The server receives the learning condition, extracts a data set corresponding to the input learning condition from the second learning data, and performs learning on the at least one model using the extracted data set can do.

또한, 상기 서버는, 상기 입력된 학습조건에 대응하는 테스트용 데이터셋을 생성하고, 상기 생성된 테스트용 데이터셋을 이용하여 상기 적어도 하나의 모델에 대한 학습 테스트를 수행하고, 상기 학습 테스트 수행결과에 따른 피드백을 제공할 수 있다.Also, the server may generate a test data set corresponding to the input learning condition, perform a learning test on the at least one model using the generated test data set, Lt; / RTI >

또한, 상기 서버는, 하나 이상의 새로운 제2 학습용 데이터를 수신하고, 적어도 하나의 상기 새로운 제2 학습용 데이터를 포함하는 데이터셋을 생성하고, 상기 생성된 데이터셋을 이용하여 상기 적어도 하나의 모델에 대한 학습을 수행할 수 있다.The server may also be configured to receive one or more new second learning data, to generate a data set that includes at least one new second learning data, and to use the generated data set for the at least one model Learning can be performed.

또한, 상기 서버는, 테스트용 데이터셋을 획득하고, 상기 테스트용 데이터셋을 이용하여 상기 생성된 데이터셋을 이용하여 학습된 상기 적어도 하나의 모델에 대한 학습 테스트를 수행하고, 상기 학습 테스트 수행결과에 따른 피드백을 제공할 수 있다.The server may also acquire a test data set and perform a learning test on the at least one model learned using the generated data set using the test data set, Lt; / RTI >

또한, 상기 서버는, 상기 새로운 제2 학습용 데이터 및 소정의 기준에 따라 선정된 기존 제2 학습용 데이터를 포함하는 상기 데이터셋을 생성하고, 상기 생성된 데이터셋을 이용하여 상기 적어도 하나의 모델에 대한 학습을 수행할 수 있다.Also, the server may generate the data set including the new second learning data and existing second learning data selected according to a predetermined criterion, and use the generated data set to generate the second learning data for the at least one model Learning can be performed.

상술한 과제를 해결하기 위한 본 발명의 일 면에 따른 수술영상데이터 학습방법은, 서버가 수술 가이드 정보를 제공하는 하나 이상의 모델을 학습시키는 단계, 클라이언트에 상기 학습된 적어도 하나의 모델에 대한 정보를 전송하는 단계, 상기 클라이언트가 수술 중에 획득한 수술 영상으로부터 획득되는 학습용 데이터를 상기 클라이언트로부터 수신하는 단계, 상기 학습된 하나 이상의 모델을 업데이트하는 단계 및 상기 클라이언트에 업데이트된 상기 적어도 하나의 모델에 대한 정보를 전송하는 단계를 포함한다.According to an aspect of the present invention, there is provided a method for learning surgical image data, the method comprising: learning one or more models of a server providing surgical guide information; Receiving training data obtained from a surgical image obtained during surgery by the client from the client, updating the learned one or more models, and transmitting information about the updated at least one model to the client To the mobile station.

상술한 과제를 해결하기 위한 본 발명의 일 면에 따른 서버는, 하나 이상의 인스트럭션을 저장하는 메모리 및 상기 메모리에 저장된 상기 하나 이상의 인스트럭션을 실행하는 프로세서를 포함하고, 상기 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써, 수술 가이드 정보를 제공하는 하나 이상의 모델을 학습시키는 단계, 클라이언트에 상기 학습된 적어도 하나의 모델에 대한 정보를 전송하는 단계, 상기 클라이언트가 수술 중에 획득한 수술 영상으로부터 획득되는 학습용 데이터를 상기 클라이언트로부터 수신하는 단계, 상기 학습된 하나 이상의 모델을 업데이트하는 단계 및 상기 클라이언트에 업데이트된 상기 적어도 하나의 모델에 대한 정보를 전송하는 단계를 수행한다.According to an aspect of the present invention, there is provided a server comprising a memory for storing one or more instructions and a processor for executing the one or more instructions stored in the memory, the processor executing the one or more instructions The method comprising the steps of: learning one or more models providing surgical guide information; transmitting information about the learned at least one model to a client; transmitting learning data, which is obtained from a surgical image acquired by the client during surgery, , Updating the learned one or more models, and transmitting information about the updated at least one model to the client.

상술한 과제를 해결하기 위한 본 발명의 일 면에 따라 하드웨어인 컴퓨터와 결합되어, 개시된 실시 예에 따른 수술영상데이터 학습방법을 수행할 수 있도록 컴퓨터에서 독출가능한 기록매체에 저장된 컴퓨터프로그램이 제공된다.According to an aspect of the present invention, there is provided a computer program stored in a recording medium readable by a computer, the computer program being capable of performing a surgical image data learning method according to an embodiment of the present invention in combination with a hardware computer.

본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Other specific details of the invention are included in the detailed description and drawings.

개시된 실시 예에 따르면, 서버 및 클라이언트 기반의 수술영상데이터 학습시스템을 제공함으로써, 수술 중에는 빠른 데이터 처리 및 수술가이드 정보 제공이 가능하게 하고, 수술이 수행되지 않을 때에는 서버와의 통신을 통해 학습데이터를 전송하고, 클라이언트에 저장된 모델을 업데이트할 수 있는 효과가 있다.According to the disclosed embodiments, it is possible to provide a surgical image data learning system based on a server and a client, so that it is possible to provide quick data processing and operation guide information during surgery, and, when the operation is not performed, And the model stored in the client can be updated.

또한, 개시된 실시 예에 따르면 사람의 지시 없이도 자동으로 학습계획을 수립하고, 학습을 수행하는 스케줄러가 제공되어, 모델의 학습과 업데이트를 용이하게 할 수 있는 효과가 있다.In addition, according to the disclosed embodiment, there is an advantage that a scheduler that establishes a learning plan automatically and instructs the learning is automatically provided without a human instruction, thereby facilitating learning and updating of the model.

본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to the above-mentioned effects, and other effects not mentioned can be clearly understood by those skilled in the art from the following description.

도 1은 개시된 실시 예에 따라 로봇수술을 수행할 수 있는 시스템을 간략하게 도식화한 도면이다.
도 2는 일 실시 예에 따른 수술영상데이터 학습시스템을 도시한 도면이다.
도 3은 일 실시 예에 따른 수술영상데이터 학습시스템의 동작을 간략히 도시한 흐름도이다.
도 4는 일 실시 예에 따른 수술영상데이터 학습시스템의 동작을 도시한 흐름도이다.
도 5는 일 실시 예에 따라 학습을 스케줄링하는 방법을 개념적으로 도시한 구성도이다.
도 6은 일 실시 예에 따른 서버의 구성도이다.
1 is a simplified schematic diagram of a system capable of performing robotic surgery in accordance with the disclosed embodiments.
2 is a diagram illustrating a surgical image data learning system according to an embodiment.
FIG. 3 is a flowchart briefly illustrating an operation of a surgical image data learning system according to an embodiment.
FIG. 4 is a flowchart illustrating an operation of a surgical image data learning system according to an embodiment.
5 is a block diagram conceptually illustrating a method of scheduling learning according to an embodiment.
6 is a configuration diagram of a server according to an embodiment.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야의 통상의 기술자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention, and the manner of achieving them, will be apparent from and elucidated with reference to the embodiments described hereinafter in conjunction with the accompanying drawings. It should be understood, however, that the invention is not limited to the disclosed embodiments, but may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein, Is provided to fully convey the scope of the present invention to a technician, and the present invention is only defined by the scope of the claims.

본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.The terminology used herein is for the purpose of illustrating embodiments and is not intended to be limiting of the present invention. In the present specification, the singular form includes plural forms unless otherwise specified in the specification. The terms " comprises "and / or" comprising "used in the specification do not exclude the presence or addition of one or more other elements in addition to the stated element. Like reference numerals refer to like elements throughout the specification and "and / or" include each and every combination of one or more of the elements mentioned. Although "first "," second "and the like are used to describe various components, it is needless to say that these components are not limited by these terms. These terms are used only to distinguish one component from another. Therefore, it goes without saying that the first component mentioned below may be the second component within the technical scope of the present invention.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless defined otherwise, all terms (including technical and scientific terms) used herein may be used in a sense that is commonly understood by one of ordinary skill in the art to which this invention belongs. In addition, commonly used predefined terms are not ideally or excessively interpreted unless explicitly defined otherwise.

명세서에서 사용되는 "부" 또는 “모듈”이라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, "부" 또는 “모듈”은 어떤 역할들을 수행한다. 그렇지만 "부" 또는 “모듈”은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부" 또는 “모듈”은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부" 또는 “모듈”은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부" 또는 “모듈”들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부" 또는 “모듈”들로 결합되거나 추가적인 구성요소들과 "부" 또는 “모듈”들로 더 분리될 수 있다.As used herein, the term "part" or "module" refers to a hardware component, such as a software, FPGA, or ASIC, and a "component" or "module" performs certain roles. However, "part" or " module " is not meant to be limited to software or hardware. A "module " or " module " may be configured to reside on an addressable storage medium and configured to play back one or more processors. Thus, by way of example, "a" or " module " is intended to encompass all types of elements, such as software components, object oriented software components, class components and task components, Microcode, circuitry, data, databases, data structures, tables, arrays, and variables, as used herein. Or " modules " may be combined with a smaller number of components and "parts " or " modules " Can be further separated.

이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1을 참조하면, 개시된 실시 예에 따라 로봇수술을 수행할 수 있는 시스템을 간략하게 도식화한 도면이 도시되어 있다.Referring to FIG. 1, there is shown a simplified schematic representation of a system capable of performing robotic surgery in accordance with the disclosed embodiments.

도 1에 따르면, 로봇수술 시스템은 의료영상 촬영장비(10), 서버(20) 및 수술실에 구비된 제어부(30), 디스플레이(32) 및 수술로봇(34)을 포함한다. 실시 예에 따라서, 의료영상 촬영장비(10)는 개시된 실시 예에 따른 로봇수술 시스템에서 생략될 수 있다.1, the robotic surgery system includes a medical imaging apparatus 10, a server 20, a control unit 30 provided in an operating room, a display 32, and a surgical robot 34. Depending on the embodiment, the medical imaging equipment 10 may be omitted from the robotic surgery system according to the disclosed embodiment.

일 실시 예에서, 수술로봇(34)은 촬영장치(36) 및 수술도구(38)를 포함한다.In one embodiment, the surgical robot 34 includes a photographing device 36 and a surgical tool 38.

일 실시 예에서, 로봇수술은 사용자가 제어부(30)를 이용하여 수술용 로봇(34)을 제어함으로써 수행된다. 일 실시 예에서, 로봇수술은 사용자의 제어 없이 제어부(30)에 의하여 자동으로 수행될 수도 있다.In one embodiment, robotic surgery is performed by the user controlling the surgical robot 34 using the control unit 30. [ In one embodiment, robot surgery may be performed automatically by the control unit 30 without user control.

서버(20)는 적어도 하나의 프로세서와 통신부를 포함하는 컴퓨팅 장치이다.The server 20 is a computing device including at least one processor and a communication unit.

제어부(30)는 적어도 하나의 프로세서와 통신부를 포함하는 컴퓨팅 장치를 포함한다. 일 실시 예에서, 제어부(30)는 수술용 로봇(34)을 제어하기 위한 하드웨어 및 소프트웨어 인터페이스를 포함한다.The control unit 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 photographing apparatus 36 includes at least one image sensor. That is, the photographing device 36 includes at least one camera device, and is used for photographing a body part of the object, that is, a surgical part. 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 one embodiment, the image photographed at the photographing device 36 is displayed on the display 340. [

일 실시 예에서, 수술로봇(34)은 수술부위의 절단, 클리핑, 고정, 잡기 동작 등을 수행할 수 있는 하나 이상의 수술도구(38)를 포함한다. 수술도구(38)는 수술로봇(34)의 수술 암과 결합되어 이용된다.In one embodiment, the surgical robot 34 includes one or more surgical tools 38 that can perform cutting, clipping, anchoring, grabbing, etc., of the surgical site. The surgical tool 38 is used in combination with the surgical arm of the surgical robot 34.

제어부(30)는 서버(20)로부터 수술에 필요한 정보를 수신하거나, 수술에 필요한 정보를 생성하여 사용자에게 제공한다. 예를 들어, 제어부(30)는 생성 또는 수신된, 수술에 필요한 정보를 디스플레이(32)에 표시한다.The control unit 30 receives information necessary for surgery from the server 20, or generates information necessary for surgery and provides the information to the user. For example, the control unit 30 displays on the display 32 information necessary for surgery, which is generated or received.

예를 들어, 사용자는 디스플레이(32)를 보면서 제어부(30)를 조작하여 수술로봇(34)의 움직임을 제어함으로써 로봇수술을 수행한다.For example, the user operates the control unit 30 while viewing the display 32 to perform the robot surgery by controlling the movement of the surgical robot 34.

서버(20)는 의료영상 촬영장비(10)로부터 사전에 촬영된 대상체(환자)의 의료영상데이터를 이용하여 로봇수술에 필요한 정보를 생성하고, 생성된 정보를 제어부(30)에 제공한다. The server 20 generates information necessary for robot surgery using the medical image data of the object (patient) photographed beforehand from the medical imaging apparatus 10, and provides the generated information to the control unit 30. [

제어부(30)는 서버(20)로부터 수신된 정보를 디스플레이(32)에 표시함으로써 사용자에게 제공하거나, 서버(20)로부터 수신된 정보를 이용하여 수술로봇(34)을 제어한다.The control unit 30 provides the information received from the server 20 to the user by displaying the information on the display 32 or controls the surgical robot 34 using the information received from the server 20. [

일 실시 예에서, 의료영상 촬영장비(10)에서 사용될 수 있는 수단은 제한되지 않으며, 예를 들어 CT, X-Ray, PET, MRI 등 다른 다양한 의료영상 획득수단이 사용될 수 있다. In one embodiment, the means that can be used in the medical imaging equipment 10 is not limited, and various other medical imaging acquiring means such as CT, X-Ray, PET, MRI and the like may be used.

개시된 실시 예에서, 촬영장치(36)에서 획득되는 수술영상은 제어부(30)로 전달된다.In the disclosed embodiment, the surgical image obtained in the photographing device 36 is transmitted to the control section 30. [

일 실시 예에서, 제어부(30)는 수술 중에 획득되는 수술영상을 실시간으로 분할(segmentation)할 수 있다.In one embodiment, the control unit 30 may segment the surgical image obtained during the operation in real time.

일 실시 예에서, 제어부(30)는 수술 중 또는 수술이 완료된 후 수술영상을 서버(20)에 전송한다.In one embodiment, the control unit 30 transmits a surgical image to the server 20 during or after surgery.

서버(20)는 수술영상을 분할하여 분석할 수 있다.The server 20 can divide and analyze the surgical image.

도 2는 일 실시 예에 따른 수술영상데이터 학습시스템을 도시한 도면이다.2 is a diagram illustrating a surgical image data learning system according to an embodiment.

도 2를 참조하면, 수술영상데이터 학습시스템은 클라이언트(100) 및 서버(200)를 포함한다.Referring to FIG. 2, the surgical image data learning system includes a client 100 and a server 200.

일 실시 예에서, 클라이언트(100) 및 서버(200)는 적어도 하나의 프로세서를 포함하는 컴퓨팅 장치이다.In one embodiment, client 100 and server 200 are computing devices that include at least one processor.

일 실시 예에서, 클라이언트(100)는 수술실(수술현장)에 구비된 컴퓨팅 장치일 수 있다. 예를 들어, 클라이언트(100)는 도 1에 도시된 제어부(30)에 대응할 수 있다. 다른 예로, 클라이언트(100)는 제어부(30)와 별도의 컴퓨팅 장치로서 수술실에 구비되고, 제어부(30)와 연결될 수 있다. 본 명세서에서, 연결은 물리적 연결뿐 아니라 전자적인 연결 개념을 포함하며, 서로 통신가능한 상태에 놓이는 것 또한 연결의 개념으로 이해될 수 있다. 예를 들어, 클라이언트(100)는 제어부(30)와 유선 또는 무선으로 연결될 수 있고, 근거리 무선 통신이나 네트워크 통신을 이용하여 상호 통신가능한 상태가 될 수 있다.In one embodiment, the client 100 may be a computing device in an operating room (surgical site). For example, the client 100 may correspond to the control unit 30 shown in FIG. As another example, the client 100 may be provided in the operating room as a separate computing device from the control unit 30, and may be connected to the control unit 30. In this specification, a connection includes not only a physical connection but also an electronic connection concept, and it can also be understood as a concept of connection that the communication state is mutually communicable. For example, the client 100 may be connected to the control unit 30 by wire or wireless, and may be in a state where they can communicate with each other using short-range wireless communication or network communication.

일 실시 예에서, 클라이언트(100)는 수술실에서 수술상황을 판단하고, 이에 대응하는 수술 가이드 정보를 제공한다. 클라이언트(100)는 수술상황을 판단하고, 이에 대응하는 수술 가이드 정보를 제공하기 위하여 학습된 모델을 이용한다.In one embodiment, the client 100 determines the surgical situation in the operating room and provides corresponding surgical guide information. The client 100 uses the learned model to determine the surgical situation and provide corresponding surgical guide information.

일 실시 예에서, 학습된 모델은 기계학습(머신러닝)을 이용하여 학습된 모델일 수 있다. 기계학습은 딥 러닝을 의미할 수 있으나, 이에 제한되지 않는다. In one embodiment, the learned model may be a learned model using machine learning. Machine learning can mean, but is not limited to, deep learning.

일 실시 예에서, 클라이언트(100)는 수술영상을 획득하고, 서버(200)는 획득된 수술영상을 이용하여 학습을 수행한다. 기계학습은 많은 리소스를 요하는 작업이므로, 클라이언트(100)에서는 수행되기 어려울 수 있다. 또한, 기계학습에는 많은 학습 데이터가 필요하므로, 클라이언트(100)에서 수집되는 정보만으로는 충분한 학습 데이터가 확보되기 어려울 수 있다.In one embodiment, the client 100 acquires a surgical image, and the server 200 performs learning using the acquired surgical image. Since machine learning is a task requiring a lot of resources, it may be difficult to perform in the client 100. Further, since a lot of learning data is required for the machine learning, it is difficult for sufficient learning data to be secured by the information collected by the client 100 alone.

따라서, 서버(200)는 서로 다른 출처로부터 수집되는 정보들을 이용하여 학습 데이터를 구성하고, 이에 기초하여 수술 상황을 판단하고, 수술 가이드 정보를 제공할 수 있는 모델을 학습시킨다.Accordingly, the server 200 constructs learning data using information collected from different sources, determines a surgical situation based on the learning data, and learns a model capable of providing surgical guide information.

클라이언트(100)는 수술상황을 실시간으로 판단하고, 필요한 수술 가이드 정보를 제공하여야 한다. 따라서, 서버(200)와의 통신에 필요한 시간을 절약하고, 통신 이상에 따른 오류를 방지하기 위하여, 서버(200)에서 학습된 모델에 대한 정보는 사전에 클라이언트(100)에 저장된다.The client 100 must determine the operation status in real time and provide necessary surgical guide information. Therefore, in order to save time required for communication with the server 200 and to prevent errors due to communication errors, the information about the model learned by the server 200 is stored in the client 100 in advance.

클라이언트(100)는 서버(200)로부터 획득되는 정보를 이용하여 서버(200)에서 학습된 모델을 복원하고, 이를 이용하여 실시간으로 수술 가이드 정보를 제공할 수 있다.The client 100 can restore the model learned in the server 200 using the information obtained from the server 200 and provide the operation guide information in real time using the model.

도 3은 일 실시 예에 따른 수술영상데이터 학습시스템의 동작을 간략히 도시한 흐름도이다.FIG. 3 is a flowchart briefly illustrating an operation of a surgical image data learning system according to an embodiment.

도 2와 관련하여 설명된 클라이언트(100) 및 서버(200)는 도 3의 클라이언트(100) 및 서버(200)에 각각 대응한다.The client 100 and the server 200 described in connection with FIG. 2 correspond to the client 100 and the server 200 in FIG. 3, respectively.

단계 S210에서, 서버(200)는 수술 영상으로부터 획득되는 학습용 데이터를 이용하여 수술 가이드 정보를 제공하는 모델을 학습시킨다.In step S210, the server 200 learns a model for providing surgical guide information using the learning data obtained from the surgical image.

개시된 실시 예에서, 수술 가이드 정보를 제공하는 모델은, 수술 영상을 분할하여 인식하는 제1 모델과, 최적화된 수술방법을 산출하는 제2 모델을 포함한다.In the disclosed embodiment, the model providing the surgical guide information includes a first model for recognizing the surgical image in a divided manner, and a second model for calculating the optimized surgical method.

일 실시 예에서, 학습용 데이터는 수술 영상 자체를 의미할 수도 있고, 수술 영상을 분석함으로써 획득되는 데이터를 의미할 수도 있다. 예를 들어, 학습용 데이터는 수술 영상을 기 설정된 동작 단위로 분할한 데이터를 포함할 수 있다. 또한, 학습용 데이터는 수술 영상을 라벨링한 데이터를 포함할 수 있다. 학습용 데이터의 종류는 이에 제한되지 않는다.In one embodiment, the training data may refer to the surgical image itself, or may be data obtained by analyzing the surgical image. For example, the training data may include data obtained by dividing a surgical image into predetermined motion units. Further, the learning data may include data labeled with a surgical image. The type of learning data is not limited to this.

단계 S220에서, 서버(200)는 학습된 모델에 대한 정보를 클라이언트(100)에 전송한다. 예를 들어, 학습된 모델에 대한 정보는 학습된 신경망의 가중치에 대한 정보를 포함할 수 있다. 일 실시 예에서, 클라이언트(100)에 제공되는 정보는 수술 영상을 분할하여 인식하는, 상기 제1 모델에 대한 정보를 포함한다.In step S220, the server 200 transmits information about the learned model to the client 100. [ For example, the information about the learned model may include information about the weight of the learned neural network. In one embodiment, the information provided to the client 100 includes information about the first model, which divides and recognizes the surgical image.

일 실시 예에서, 서버(200)는 클라이언트(100)를 이용하는 수술이 수행되지 않을 때, 즉 클라이언트(100)가 수술을 보조하고 있지 않을 때 학습된 모델에 대한 정보를 클라이언트(100)에 전송한다. 즉, 수술이 수행되는 중에는 클라이언트(100)에 기 저장된 정보에 기초하여 수술 가이드 정보가 제공되며, 수술이 수행되지 않을 때(예를 들어, 수술이 수행되기 전) 수술 준비단계로서 학습된 모델에 대한 정보가 미리 서버(200)로부터 클라이언트(100)로 전달될 수 있다.In one embodiment, the server 200 transmits information about the learned model to the client 100 when the operation using the client 100 is not performed, i.e., when the client 100 is not assisting the operation . That is, during the operation, the operation guide information is provided based on the information pre-stored in the client 100, and when the operation is not performed (for example, before the operation is performed) May be transmitted from the server 200 to the client 100 in advance.

도 4를 참조하면, 서버(200)는 의료영상 촬영장비(10)로부터 환자의 수술부위를 포함하는 의료영상을 획득한다. 서버(200)는 획득된 의료영상에 기초하여 환자의 수술부위에 대한 3D 모델링을 수행한다(단계 S222).Referring to FIG. 4, the server 200 acquires a medical image including a surgical region of the patient from the medical image capturing apparatus 10. The server 200 performs 3D modeling on the surgical site of the patient based on the acquired medical image (step S222).

환자의 수술부위에 대한 3D 모델링 정보는 수술 중에 카메라의 각도에 따른 각 장기의 위치와 모양을 판단하고, 카메라로는 보이지 않는 신체부위에 대한 정보를 제공하는 데 이용된다.The 3D modeling information of the patient's surgical site is used to determine the position and shape of each organ according to the angle of the camera during surgery, and to provide information on the invisible body part by the camera.

서버(200)는 단계 S222에서 생성된 3D 모델링 정보를 클라이언트(100)에 전송한다(단계 S224). 클라이언트(100)는 서버(200)로부터 전송된 3D 모델링 정보를 저장한다. The server 200 transmits the 3D modeling information generated in step S222 to the client 100 (step S224). The client 100 stores the 3D modeling information transmitted from the server 200.

클라이언트(100)는 서버(200)로부터 전송된 정보에 기초하여 학습된 모델을 획득 및 저장한다. 단계 S110에서, 클라이언트(100)는 수술 중에 클라이언트(100)에 저장된 모델을 이용하여 수술 중에 획득되는 수술 영상에 대응하는 수술 가이드 정보를 제공한다. 예를 들어, 클라이언트(100)는 저장된 모델을 이용하여 수술영상을 분할 및 인식함으로써 수술상황을 판단하고, 이에 기초하여 수술 가이드 정보를 제공할 수 있다.The client 100 acquires and stores the learned model based on the information transmitted from the server 200. [ In step S110, the client 100 provides the operation guide information corresponding to the operation image acquired during the operation using the model stored in the client 100 during the operation. For example, the client 100 can determine the operation status by dividing and recognizing the surgical image using the stored model, and provide the surgical guide information based on the judgment.

일 실시 예에서, 서버(200)는 특정 환자에 대한 수술이 시작되기 전에 미리 클라이언트(100)에 해당 환자의 수술부위를 포함하는 3D 모델링 정보를 전송한다. 클라이언트(100)는 서버(200)로부터 전송된 3D 모델링 정보를 저장하고, 수술 중에는 클라이언트(100)에 저장된 3D 모델링 정보와, 학습된 모델에 대한 정보를 이용하여 수술 중에 획득되는 수술 영상에 대응하는 수술 가이드 정보를 제공한다.In one embodiment, the server 200 transmits 3D modeling information including the surgical site of the patient in advance to the client 100 before the surgery for a specific patient begins. The client 100 stores the 3D modeling information transmitted from the server 200 and uses the 3D modeling information stored in the client 100 and information about the learned model during the operation, Provide surgical guide information.

예를 들어, 수술 가이드 정보는 현재 수술상황에 대응하는 최적의 수술방법을 포함할 수 있다. 또한, 수술 가이드 정보는 카메라로 확인되지 않는(예를 들어, 다른 장기에 가려져 보이지 않는) 환자의 신체부위에 대한 정보를 포함할 수 있다. 또한, 수술 가이드 정보는 혈관이나 신경 등 수술과정에서 손상되지 않아야 하는 신체부위의 위치에 대한 정보를 포함할 수 있다. 또한, 수술 가이드 정보는 수술 중에 발생하는 이벤트 또는 수술오류(surgicalerror) 상황을 인식하고, 인식된 상황에 대한 정보 또는 인식된 상황에 따른 알림을 제공하는 정보를 포함할 수 있다.For example, the surgical guide information may include an optimal surgical procedure corresponding to the current surgical situation. In addition, the surgical guide information may include information about the body part of the patient that is not identified by the camera (e.g., hidden from view by another organ). In addition, the surgical guide information may include information on a position of a body part that should not be damaged during surgery such as a blood vessel or a nerve. In addition, the surgical guide information may include information on an event occurring during surgery or a surgical error, and information on a recognized situation or information on a recognized situation.

단계 S120에서, 클라이언트(100)는 수술이 종료된 후, 수술 중에 획득된 수술 영상으로부터 획득되는 학습용 데이터를 서버에 전송한다. 일 실시 예에서, 학습용 데이터는 수술 영상을 포함한다. 일 실시 예에서, 학습용 데이터는 수술 중에 획득되는 수술 영상을 하나 이상의 수술단계로 분할하고, 분할된 하나 이상의 수술단계를 인식한 정보를 포함한다.In step S120, after the operation is completed, the client 100 transmits the learning data obtained from the operation image acquired during the operation to the server. In one embodiment, the training data includes a surgical image. In one embodiment, the training data includes information that divides the surgical image acquired during surgery into one or more surgical steps and recognizes one or more surgical steps that have been split.

일 실시 예에서, 클라이언트(100)는 수술 중에 획득된 수술 영상을 하나 이상의 수술단계로 분할(segmentation)한다. 클라이언트(100)는 학습된 모델을 이용하여 수술 영상을 하나 이상의 기 설정된 수술단계로 분할할 수 있다. 예를 들어, 기 설정된 수술단계는 장기의 위치 및 변화와, 수술도구의 위치 및 움직임에 기초하여 수술에 포함된 각 동작들을 소정의 기준에 따라 분할하고, 분할된 각각의 동작에 대하여 표준화된 명칭이 부여된 것일 수 있다.In one embodiment, the client 100 segments the surgical image acquired during surgery into one or more surgical steps. The client 100 may segment the surgical image into one or more predetermined surgical steps using the learned model. For example, the predetermined operation step divides each operation included in the operation based on the position and the change of the organ and the position and movement of the surgical tool according to a predetermined criterion, and assigns a standardized name May be granted.

일 실시 예에서, 분할된 각각의 동작에 대해서 기 설정된 코드가 부여되어 있을 수 있다. 클라이언트(100)는 분할된 하나 이상의 수술단계 각각에 대하여 기 설정된 코드를 부여한다.In one embodiment, predetermined codes may be assigned to each of the divided operations. The client 100 grants a predetermined code for each of the one or more surgical steps that have been divided.

일 실시 예에서, 클라이언트(100)는 수술영상 대신 분할된 하나 이상의 수술단계 각각에 대하여 부여된 기 설정된 코드를 서버(100)에 전송할 수 있다. 서버(100)는 수신된 코드에 기초하여 각 수술단계 및 전체적인 수술동작의 순서에 대한 정보를 획득할 수 있다. 이 경우, 수술영상을 서버(200)에 전송하는 것에 비하여 데이터 전송량이 크게 감소한다. 따라서, 필요한 경우 수술 중에도, 즉 클라이언트(100)가 수술 가이드 정보를 제공하는 중에도(단계 S110) 실시간으로 학습용 데이터를 서버(200)로 전송하는 것(단계 S120)이 가능하다.In one embodiment, the client 100 may send to the server 100 predetermined codes assigned for each of the one or more surgical steps that were split instead of the surgical image. The server 100 may obtain information on the sequence of each surgical step and the overall surgical operation based on the received code. In this case, the amount of data transmission is greatly reduced compared with the case of transmitting the operation image to the server 200. [ Accordingly, it is possible to transmit learning data to the server 200 in real time (step S120) even during surgery, that is, while the client 100 provides the surgical guide information (step S110), if necessary.

단계 S230에서, 서버(200)는 클라이언트(100)로부터 수신된 정보에 기초하여 학습된 모델을 업데이트한다. 예를 들어, 서버(200)는 클라이언트(100)로부터 수신된 정보를 이용하여 모델을 다시 학습시키거나, 미세조정(fine tuning)할 수 있다. 일 실시 에에서, 서버(200)는 클라이언트(100)로부터 수신된 정보에 기초하여 최적화된 수술방법을 산출하는 제2 모델을 학습시킨다. 일 실시 예에서, 서버(200)는 클라이언트(100)로부터 수신된 정보에 기초하여 수술 영상을 분할하여 인식하는 제1 모델을 학습시킬 수 있다. 예를 들어, 서버(200)는 클라이언트(100)로부터 수신된 정보에 기초하여 수술 도구의 움직임을 인식하는 모델을 학습시킬 수 있다.In step S230, the server 200 updates the learned model based on the information received from the client 100. [ For example, the server 200 can re-learn the model using the information received from the client 100 or fine tuning the model. In one embodiment, the server 200 learns a second model that computes an optimized surgical procedure based on the information received from the client 100. In one embodiment, the server 200 may learn a first model that divides and recognizes a surgical image based on information received from the client 100. [ For example, the server 200 may learn a model for recognizing the movement of the surgical tool based on the information received from the client 100. [

또한, 서버(200)는 외부로부터 획득되는 하나 이상의 수술 영상 및 하나 이상의 수술 영상을 분할하는 정보에 기초하여 수술 영상을 분할하여 인식하는 제1 모델을 학습시킬 수 있다.In addition, the server 200 may learn a first model that divides and recognizes a surgical image based on information for dividing at least one surgical image and at least one surgical image obtained from the outside.

단계 S240에서, 서버(200)는 단계 S230을 통하여 업데이트된 모델을 클라이언트(100)에 전송한다. 클라이언트(100)는 수술이 수행되지 않을 때 서버(200)로부터 업데이트된 모델에 대한 정보, 즉 클라이언트(100)에 저장된 모델을 업데이트하기 위한 정보를 수신하고, 수신된 정보에 기초하여 클라이언트(100)에 저장된, 학습된 모델을 업데이트한다.In step S240, the server 200 transmits the updated model to the client 100 through step S230. The client 100 receives information on the updated model from the server 200 when the operation is not performed, i.e., information for updating the model stored in the client 100, and transmits the updated information to the client 100 based on the received information. Lt; RTI ID = 0.0 > stored < / RTI >

도 4를 참조하면, 클라이언트(100)는 서버(200)에 모델의 업데이트 상태를 확인한다(단계 S130).Referring to FIG. 4, the client 100 checks the update state of the model to the server 200 (step S130).

예를 들어, 클라이언트(100)는 클라이언트(100)에 저장된 학습된 모델과, 서버(200)에 저장된 학습된 모델을 비교하고, 서버(200)에 저장된, 학습된 모델이 클라이언트(100)에 저장된 학습된 모델보다 업데이트된 모델인 경우, 클라이언트(100)는 서버(200)로부터 학습된 모델을 업데이트하기위한 정보를 수신하고, 수신된 정보에 기초하여 클라이언트(100)에 저장된, 학습된 모델을 업데이트한다.For example, the client 100 compares the learned model stored in the client 100 with the learned model stored in the server 200, and the learned model stored in the server 200 is stored in the client 100 If the model is an updated model than the learned model, the client 100 receives information for updating the learned model from the server 200, and updates the learned model stored in the client 100 based on the received information do.

도 5는 일 실시 예에 따라 학습을 스케줄링하는 방법을 개념적으로 도시한 구성도이다.5 is a block diagram conceptually illustrating a method of scheduling learning according to an embodiment.

일 실시 예에서, 스케줄러(300), 데이터베이스(320), 학습부(330), 테스트부(340) 및 모델(350)은 각각 서버(200)에서 하드웨어 또는 소프트웨어적으로 구현되는 모듈, 하나 이상의 인스트럭션의 집합, 메모리에 저장되는 데이터 또는 서버(200)에 의하여 수행되는 동작을 개념적으로 도시한 것이다.In one embodiment, the scheduler 300, the database 320, the learning unit 330, the testing unit 340, and the model 350 may each comprise a module implemented in hardware or software in the server 200, one or more instructions The data stored in the memory, or the operations performed by the server 200. [0043] FIG.

일 실시 예에서, 학습정보 입력부(310)는 서버(200) 또는 서버(200)와 직간접적으로 통신할 수 있는 컴퓨팅 장치를 의미한다.In one embodiment, the learning information input unit 310 means a computing device capable of directly or indirectly communicating with the server 200 or the server 200.

예를 들어, 학습정보 입력부(310)는 서버(200)가 획득한 수술 영상을 분할하는 정보를 입력할 수 있다. 예를 들어, 학습정보 입력부(310)는 의사가 수술 영상을 보고 직접 수술 영상을 기 설정된 동작 단위로 분할하는 정보를 입력하는 컴퓨팅 장치일 수 있다. 학습에 이용되는 수술 영상의 출처는 제한되지 않는다. 서버(200)는 애플리케이션 또는 웹페이지를 이용하여 학습정보 입력부(310)가 수술 영상을 분할하는 정보를 입력하기 용이한 다양한 사용자 인터페이스를 제공할 수 있다.For example, the learning information input unit 310 may input information for dividing a surgical image acquired by the server 200. [ For example, the learning information input unit 310 may be a computing device that inputs information for a doctor to view a surgical image and directly divide a surgical image into predetermined operation units. The source of the surgical image used for the learning is not limited. The server 200 may provide various user interfaces through which the learning information input unit 310 can easily input information for dividing a surgical image by using an application or a web page.

수술영상 및 수술영상을 분할하는 정보는 데이터베이스(320)에 저장된다. The information that divides the surgical image and the surgical image is stored in the database 320. [

스케줄러(300)는 서버(200)의 학습과정을 제어하는 역할을 수행한다. 기존에는 개발자가 직접 학습용 데이터셋을 세팅하고, 학습명령을 하여 모델을 학습시키는 것이 일반적이었다. The scheduler 300 plays a role of controlling the learning process of the server 200. In the past, it was common for the developer to set the data set for learning directly and to learn the model by learning instruction.

개시된 실시 예에 따르면, 스케줄러(300)는 자동으로 학습용 데이터셋을 생성하고, 학습을 수행하며, 학습 결과를 테스트함으로써 자동으로 모델을 학습시키는 역할을 수행한다.According to the disclosed embodiment, the scheduler 300 automatically learns a model by automatically generating a learning data set, performing learning, and testing a learning result.

일 실시 예에서, 스케줄러(300)는 학습 계획을 설정하고, 학습의 진행수준에 따라 다음 학습의 계획여부를 결정할 수 있다.In one embodiment, the scheduler 300 may set a learning plan and determine whether to plan the next learning based on the progress level of the learning.

예를 들어, 스케줄러(300)는 소정의 학습용 데이터에 기초하여 학습을 수행하고, 학습 결과에 대한 테스트를 수행하여, 소정의 임계치(예를 들어, 80% 이상의 정확도) 이상의 학습이 완료되면, 학습을 종료하고 다음 학습을 계획할 수 있다. 예를 들어, 스케줄러(300)는 소정의 학습용 데이터에 대한 학습이 종료되면, 새롭게 획득되는 학습용 데이터에 기초하여 다음 학습을 계획 및 수행할 수 있다.For example, the scheduler 300 performs learning on the basis of predetermined learning data, performs a test on the learning results, and when the learning over a predetermined threshold (for example, accuracy of 80% or more) is completed, And plan the next lesson. For example, the scheduler 300 can plan and perform the next learning based on the learning data newly obtained when the learning on the predetermined learning data is finished.

데이터베이스(320)에 소정의 학습용 데이터가 저장되면, 스케줄러(300)는 데이터베이스(320)에 저장된 학습용 데이터로부터 학습용 데이터셋을 추출한다. 스케줄러(300)는 학습부(330)에 추출된 학습용 데이터셋을 입력하여, 학습을 수행한다.When predetermined learning data is stored in the database 320, the scheduler 300 extracts the learning data set from the learning data stored in the database 320. [ The scheduler 300 inputs the extracted learning data set to the learning unit 330 and performs learning.

일 실시 예에서, 스케줄러(300)는 학습을 위한 소정의 학습조건을 입력받고, 데이터베이스(320)에 저장된 학습용 데이터로부터 입력된 학습조건에 대응하는 학습용 데이터셋을 추출하고, 추출된 데이터셋을 학습부(330)에 입력하여 학습을 수행한다.In one embodiment, the scheduler 300 receives a predetermined learning condition for learning, extracts a learning data set corresponding to the learning condition input from the learning data stored in the database 320, Unit 330 to perform learning.

예를 들어, 학습조건은 학습대상 성별, 연령대, 질병의 종류 등을 포함할 수 있으나, 이에 제한되지 않는다.For example, the learning conditions may include, but are not limited to, gender, age group, type of disease, etc.

일 실시 예에서, 스케줄러(300)는 학습이 완료되면 테스트부(340)를 이용하여 학습된 모델을 테스트한다. 예를 들어, 스케줄러(300)는 소정의 테스트용 데이터셋을 생성하고, 생성된 테스트용 데이터셋을 이용하여 학습된 모델에 대한 학습 테스트를 수행한다. 스케줄러(300)는 학습 테스트 수행결과에 따른 피드백을 제공한다. 또한, 스케줄러(300)는 학습 결과에 따라 상술한 바와 같이 학습 종료여부 및 다음 학습의 계획여부를 결정한다.In one embodiment, the scheduler 300 tests the learned model using the test unit 340 when the learning is completed. For example, the scheduler 300 generates a predetermined test data set, and performs a learning test on the learned model using the generated test data set. The scheduler 300 provides feedback according to the results of the learning test. In addition, the scheduler 300 determines whether to finish the learning and whether to plan the next learning as described above according to the learning results.

예를 들어, 학습 테스트 결과 정확도가 소정의 기준값 이상이면 테스트를 통과한 것으로 하여, 학습된 모델(350)의 생성을 종료할 수 있다. 또한, 학습된 모델(350)에 대한 다음 학습을 계획 및 실행할 수 있다.For example, if the accuracy of the learning test result is equal to or greater than a predetermined reference value, the generation of the learned model 350 can be terminated by assuming that the test has passed. In addition, the next learning for the learned model 350 can be planned and executed.

또한, 학습 테스트 결과 정확도가 소정의 기준값 이하이면 테스트를 통과하지 못한 것으로 하여, 학습부(330)를 통해 다시 학습을 수행하도록 하거나, 학습조건을 재설정할 수 있다.Further, if the accuracy of the learning test result is less than the predetermined reference value, it is determined that the test is not passed, and the learning is again performed through the learning unit 330, or the learning condition can be reset.

다른 예로, 이미 학습된 모델에 새로운 데이터를 이용하여 추가 학습을 수행한 경우, 기존의 학습된 모델의 정확도와 새로운 데이터를 이용하여 추가 학습이 수행된 모델의 정확도를 비교할 수 있다. 추가 학습이 수행된 모델의 정확도가 더 높은 경우, 스케줄러(300)는 학습된 모델을 업데이트할 수 있다.As another example, when additional learning is performed using the new data in the already learned model, the accuracy of the already learned model can be compared with the accuracy of the model in which the additional learning is performed using the new data. If the accuracy of the model in which the additional learning is performed is higher, the scheduler 300 can update the learned model.

일 실시 예에서, 소정의 학습조건에 기초하여 학습이 수행된 경우, 테스트부(340)는 소정의 학습조건에 대응하는 테스트용 데이터셋을 생성하고, 생성된 테스트용 데이터셋을 이용하여 학습된 모델을 테스트한다.In one embodiment, when learning is performed based on a predetermined learning condition, the test unit 340 generates a test data set corresponding to a predetermined learning condition, Test the model.

일 실시 예에서, 스케줄러(300)는 서버(200)에 새로운 학습용 데이터가 수신되면, 새로운 학습용 데이터를 포함하는 학습용 데이터셋을 생성하고, 생성된 데이터셋을 학습부(330)에 입력하여 학습을 수행한다. In one embodiment, when the new learning data is received in the server 200, the scheduler 300 generates a learning data set including new learning data, inputs the generated data set to the learning unit 330, .

일 실시 예에서, 스케줄러(300)는 새로운 학습용 데이터가 수신될때마다 학습을 수행할 수도 있고, 학습용 데이터가 소정의 분량 이상 누적될때마다 학습용 데이터셋을 생성하여 학습을 수행할 수도 있으나, 이에 제한되는 것은 아니다.In one embodiment, the scheduler 300 may perform learning each time new learning data is received, and may generate learning data sets every time the learning data is accumulated over a predetermined amount to perform learning, It is not.

일 실시 예에서, 테스트부(340)는 새로운 학습용 데이터를 이용하여 학습된 모델을 테스트하기 위한 테스트용 데이터셋을 생성하고, 학습된 모델을 테스트할 수 있다. 새로운 학습용 데이터를 이용하여 학습된 모델의 정확도가 기존 모델의 정확도보다 높으면, 스케줄러(300)는 학습된 모델을 업데이트할 수 있다.In one embodiment, the test unit 340 can generate a test data set for testing the learned model using new learning data, and test the learned model. If the accuracy of the learned model is higher than the accuracy of the existing model using the new learning data, the scheduler 300 can update the learned model.

일 실시 예에서, 스케줄러(300)는 새로운 학습용 데이터를 포함하는 학습용 데이터셋을 생성하여 학습을 수행하되, 기존에 학습된 결과를 잊어버리지 않도록 하기 위한 규칙에 기초하여 학습을 수행할 수 있다.In one embodiment, the scheduler 300 may perform learning based on rules for generating a learning data set that includes new learning data, so as not to forget previously learned results.

예를 들어, 학습부(330)가 심층 신경망을 이용하는 학습을 수행하는 경우, 새로운 학습용 데이터를 이용하여 학습을 수행할 때, 기존 학습용 데이터를 이용하여 학습을 수행할 때에 비하여 심층 신경망의 결정경계가 달라지지 않도록 한다. For example, when the learning unit 330 performs learning using a neural network, when learning is performed using new learning data, compared to performing learning using existing learning data, Do not change.

또한, 새로운 학습용 데이터를 이용하여 학습된 모델을 이용하여 기존의 학습용 데이터로부터 추출되는 특징은, 기존의 학습된 모델을 이용하여 기존의 학습용 데이터로부터 추출되는 특징과 가깝도록 하여야 한다.In addition, the feature extracted from the existing learning data using the learned model using the new learning data should be close to the feature extracted from the existing learning data using the existing learned model.

일 실시 예에서, 스케줄러(300)는 새로운 학습용 데이터와, 소정의 기준에 따라 선정된 기존의 학습용 데이터를 포함하는 학습용 데이터셋을 생성하고, 생성된 학습용 데이터셋을 이용하여 학습부(330)를 학습시킨다. In one embodiment, the scheduler 300 generates a learning data set that includes new learning data and existing learning data selected in accordance with a predetermined criterion, and transmits the learning data set to the learning unit 330 using the generated learning data set Learning.

기존의 학습용 데이터를 선정할 때, 스케줄러(300)는 새로운 학습용 데이터셋에 의하여 학습된 모델이 기존에 학습된 정보를 잊지 않도록 할 수 있는 기존의 학습용 데이터를 선정한다.When selecting the existing learning data, the scheduler 300 selects the existing learning data that can prevent the model learned by the new learning data set from forgetting the previously learned information.

일 실시 예에서, 클라이언트(100)는 학습된 모델(350)을 클라이언트(100)에 저장된 모델과 비교하고, 학습된 모델(350)이 클라이언트(100)에 저장된 모델보다 업데이트된 모델인 경우, 학습된 모델(350)에 대한 정보를 수신하여 클라이언트(100)에 저장된 모델을 업데이트한다.In one embodiment, the client 100 compares the learned model 350 with the model stored in the client 100, and if the learned model 350 is an updated model than the model stored in the client 100, And updates the model stored in the client (100).

도 6은 일 실시 예에 따른 서버(200)의 구성도이다.FIG. 6 is a configuration diagram of a server 200 according to an embodiment.

프로세서(202)는 하나 이상의 코어(core, 미도시) 및 그래픽 처리부(미도시) 및/또는 다른 구성 요소와 신호를 송수신하는 연결 통로(예를 들어, 버스(bus) 등)를 포함할 수 있다.The processor 202 may include one or more cores (not shown) and a connection path (e.g., a bus, etc.) to transmit and receive signals to and / or from a graphics processing unit (not shown) .

일 실시예에 따른 프로세서(202)는 메모리(204)에 저장된 하나 이상의 인스트럭션을 실행함으로써, 도 1 내지 도 5와 관련하여 설명된 수술영상데이터 학습방법을 수행한다.The processor 202 in accordance with one embodiment performs the surgical video data learning method described with respect to Figures 1-5 by executing one or more instructions stored in the memory 204. [

예를 들어, 프로세서(202)는 메모리에 저장된 하나 이상의 인스트럭션을 실행함으로써 수술 가이드 정보를 제공하는 하나 이상의 모델을 학습시키고, 클라이언트에 상기 학습된 적어도 하나의 모델에 대한 정보를 전송하고, 상기 클라이언트가 수술 중에 획득한 수술 영상으로부터 획득되는 학습용 데이터를 상기 클라이언트로부터 수신하고, 상기 학습된 하나 이상의 모델을 업데이트하고, 상기 클라이언트에 업데이트된 상기 적어도 하나의 모델에 대한 정보를 전송한다. For example, the processor 202 may learn one or more models that provide surgical guide information by executing one or more instructions stored in memory, send information about the learned at least one model to a client, Receiving training data obtained from the surgical image acquired during surgery from the client, updating the learned one or more models, and transmitting information about the updated at least one model to the client.

한편, 프로세서(202)는 프로세서(202) 내부에서 처리되는 신호(또는, 데이터)를 일시적 및/또는 영구적으로 저장하는 램(RAM: Random Access Memory, 미도시) 및 롬(ROM: Read-Only Memory, 미도시)을 더 포함할 수 있다. 또한, 프로세서(202)는 그래픽 처리부, 램 및 롬 중 적어도 하나를 포함하는 시스템온칩(SoC: system on chip) 형태로 구현될 수 있다. The processor 202 may include a random access memory (RAM) (not shown) and a read-only memory (ROM) for temporarily and / or permanently storing signals (or data) , Not shown). In addition, the processor 202 may be implemented as a system-on-chip (SoC) including at least one of a graphics processing unit, a RAM, and a ROM.

메모리(204)에는 프로세서(202)의 처리 및 제어를 위한 프로그램들(하나 이상의 인스트럭션들)을 저장할 수 있다. 메모리(204)에 저장된 프로그램들은 기능에 따라 복수 개의 모듈들로 구분될 수 있다.The memory 204 may store programs (one or more instructions) for processing and control of the processor 202. The programs stored in the memory 204 may be divided into a plurality of modules according to functions.

이상에서 전술한 본 발명의 일 실시예에 따른 수술영상 분할방법은, 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 어플리케이션)으로 구현되어 매체에 저장될 수 있다.As described above, the surgical image segmentation method according to an embodiment of the present invention may be implemented as a program (or an application) to be executed in combination with a hardware computer and stored in a medium.

상기 전술한 프로그램은, 상기 컴퓨터가 프로그램을 읽어 들여 프로그램으로 구현된 상기 방법들을 실행시키기 위하여, 상기 컴퓨터의 프로세서(CPU)가 상기 컴퓨터의 장치 인터페이스를 통해 읽힐 수 있는 C, C++, JAVA, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다. 이러한 코드는 상기 방법들을 실행하는 필요한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Functional Code)를 포함할 수 있고, 상기 기능들을 상기 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수 있다. 또한, 이러한 코드는 상기 기능들을 상기 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 상기 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조되어야 하는지에 대한 메모리 참조관련 코드를 더 포함할 수 있다. 또한, 상기 컴퓨터의 프로세서가 상기 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 상기 컴퓨터의 통신 모듈을 이용하여 원격에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수 있다. The above-described program may be stored in a computer-readable medium such as C, C ++, JAVA, machine language, or the like that can be read by the processor (CPU) of the computer through the device interface of the computer, And may include a code encoded in a computer language of the computer. Such code may include a functional code related to a function or the like that defines necessary functions for executing the above methods, and includes a control code related to an execution procedure necessary for the processor of the computer to execute the functions in a predetermined procedure can do. Further, such code may further include memory reference related code as to whether the additional information or media needed to cause the processor of the computer to execute the functions should be referred to at any location (address) of the internal or external memory of the computer have. Also, when the processor of the computer needs to communicate with any other computer or server that is remote to execute the functions, the code may be communicated to any other computer or server remotely using the communication module of the computer A communication-related code for determining whether to communicate, what information or media should be transmitted or received during communication, and the like.

상기 저장되는 매체는, 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상기 저장되는 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있지만, 이에 제한되지 않는다. 즉, 상기 프로그램은 상기 컴퓨터가 접속할 수 있는 다양한 서버 상의 다양한 기록매체 또는 사용자의 상기 컴퓨터상의 다양한 기록매체에 저장될 수 있다. 또한, 상기 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장될 수 있다.The medium to be stored is not a medium for storing data for a short time such as a register, a cache, a memory, etc., but means a medium that semi-permanently stores data and is capable of being read by a device. Specifically, examples of the medium to be stored include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage, and the like, but are not limited thereto. That is, the program may be stored in various recording media on various servers to which the computer can access, or on various recording media on the user's computer. In addition, the medium may be distributed to a network-connected computer system so that computer-readable codes may be stored in a distributed manner.

본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 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 the embodiments of the present invention may be embodied directly in hardware, in software modules executed in hardware, or in a combination of both. The software module may be a random access memory (RAM), a read only memory (ROM), an erasable programmable ROM (EPROM), an electrically erasable programmable ROM (EEPROM), a flash memory, a hard disk, a removable disk, a CD- May reside in any form of computer readable recording medium known in the art to which the invention pertains.

이상, 첨부된 도면을 참조로 하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다.While the present invention has been described in connection with what is presently considered to be practical exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, You will understand. Therefore, it should be understood that the above-described embodiments are illustrative in all aspects and not restrictive.

100 : 클라이언트
200 : 서버
100: Client
200: Server

Claims (14)

수술 가이드 정보를 제공하는 하나 이상의 모델을 학습시키는 서버; 및
상기 서버에서 학습된 적어도 하나의 모델을 저장하고, 상기 저장된 모델을 이용하여 수술 중에 획득되는 수술 영상을 인식하고, 인식된 수술 영상에 대응하는 수술 가이드 정보를 제공하는 클라이언트; 를 포함하고,
상기 클라이언트는,
상기 수술 중에 획득된 수술 영상으로부터 획득되는 제1 학습용 데이터를 상기 서버에 전송하고, 상기 서버로부터 상기 저장된 모델을 업데이트하기위한 정보를 수신하고, 상기 수신된 정보에 기초하여 상기 저장된 모델을 업데이트하고,
상기 서버는,
학습조건을 입력받고, 상기 제1 학습용 데이터로부터 상기 입력된 학습조건에 대응하는 데이터셋을 추출하고, 상기 추출된 데이터셋을 이용하여 상기 적어도 하나의 모델에 대한 학습을 수행하고, 상기 입력된 학습조건에 대응하는 테스트용 데이터셋을 생성하고, 상기 생성된 테스트용 데이터셋을 이용하여 상기 적어도 하나의 모델에 대한 학습 테스트를 수행하고, 상기 학습 테스트 수행결과에 따른 피드백을 제공하는, 수술영상데이터 학습시스템.
A server that learns one or more models that provide surgical guide information; And
A client for storing at least one model learned in the server, recognizing a surgical image acquired during operation using the stored model, and providing surgical guide information corresponding to the recognized surgical image; Lt; / RTI >
The client includes:
Transmitting the first learning data obtained from the surgical image obtained during the operation to the server, receiving information for updating the stored model from the server, updating the stored model based on the received information,
The server comprises:
Extracting a data set corresponding to the input learning condition from the first learning data, performing learning on the at least one model using the extracted data set, A test data set corresponding to the condition, performing a learning test on the at least one model using the generated test data set, and providing feedback according to a result of the learning test, Learning system.
제1 항에 있어서,
상기 하나 이상의 모델은,
수술 영상을 분할(segmentation)하여 인식하는 제1 모델; 및
최적화된 수술방법을 산출하는 제2 모델; 을 포함하고,
상기 제1 학습용 데이터는 상기 제1 모델 및 상기 제2 모델 중 적어도 하나를 학습시키는 데 이용되고,
상기 클라이언트에는 상기 제1 모델이 저장되는, 수술영상데이터 학습시스템.
The method according to claim 1,
Wherein the one or more models comprise:
A first model for segmenting and recognizing a surgical image; And
A second model for calculating an optimized surgical procedure; / RTI >
Wherein the first learning data is used for learning at least one of the first model and the second model,
And the first model is stored in the client.
제1 항에 있어서,
상기 클라이언트는,
상기 수술 중에 획득된 수술 영상을 하나 이상의 수술단계로 분할(segmentation)하고,
상기 분할된 하나 이상의 수술단계를 인식하고,
상기 인식 결과를 상기 제1 학습용 데이터로서 상기 서버에 전송하는, 수술영상데이터 학습시스템.
The method according to claim 1,
The client includes:
Segmenting the surgical image acquired during the operation into one or more surgical steps,
Recognizing the divided one or more surgical steps,
And transmits the recognition result to the server as the first learning data.
제3 항에 있어서,
상기 클라이언트는,
상기 분할된 하나 이상의 수술단계 각각에 대하여 기 설정된 코드를 부여하고,
상기 분할된 하나 이상의 수술단계 각각에 대하여 부여된 상기 기 설정된 코드를 상기 서버에 전송하는, 수술영상데이터 학습시스템.
The method of claim 3,
The client includes:
A predetermined code is assigned to each of the divided one or more surgical steps,
And transmits the predetermined code assigned to each of the divided one or more surgical steps to the server.
제1 항에 있어서,
상기 클라이언트는,
상기 클라이언트에 저장된 모델과 상기 서버에 저장된 모델을 비교하고, 상기 서버에 저장된 모델이 상기 클라이언트에 저장된 모델보다 업데이트된 모델인 경우, 상기 서버로부터 상기 클라이언트에 저장된 모델을 업데이트하기위한 정보를 수신하고, 상기 수신된 정보에 기초하여 상기 클라이언트에 저장된 모델을 업데이트하는, 수술영상데이터 학습시스템.
The method according to claim 1,
The client includes:
Comparing the model stored in the client with the model stored in the server and receiving information for updating the model stored in the client from the server when the model stored in the server is an updated model than the model stored in the client, And updates the model stored in the client based on the received information.
제1 항에 있어서,
상기 서버는,
하나 이상의 수술 영상 및 상기 하나 이상의 수술 영상을 분할하는 정보를 획득하고,
상기 획득된 정보를 이용하여 제2 학습용 데이터를 생성하는, 수술영상데이터 학습시스템.
The method according to claim 1,
The server comprises:
Obtaining information for dividing at least one surgical image and the at least one surgical image,
And generates second learning data using the acquired information.
삭제delete 삭제delete 삭제delete 수술 가이드 정보를 제공하는 하나 이상의 모델을 학습시키는 서버; 및
상기 서버에서 학습된 적어도 하나의 모델을 저장하고, 상기 저장된 모델을 이용하여 수술 중에 획득되는 수술 영상을 인식하고, 인식된 수술 영상에 대응하는 수술 가이드 정보를 제공하는 클라이언트; 를 포함하고,
상기 클라이언트는,
상기 수술 중에 획득된 수술 영상으로부터 획득되는 제1 학습용 데이터를 상기 서버에 전송하고, 상기 서버로부터 상기 저장된 모델을 업데이트하기위한 정보를 수신하고, 상기 수신된 정보에 기초하여 상기 저장된 모델을 업데이트하고,
상기 서버는,
하나 이상의 새로운 제2 학습용 데이터를 수신하고, 적어도 하나의 상기 새로운 제2 학습용 데이터를 포함하는 데이터셋을 생성하고, 상기 생성된 데이터셋을 이용하여 상기 적어도 하나의 모델에 대한 학습을 수행하고, 테스트용 데이터셋을 획득하고, 상기 테스트용 데이터셋을 이용하여 상기 생성된 데이터셋을 이용하여 학습된 상기 적어도 하나의 모델에 대한 학습 테스트를 수행하고, 상기 학습 테스트 수행결과에 따른 피드백을 제공하는, 수술영상데이터 학습시스템.
A server that learns one or more models that provide surgical guide information; And
A client for storing at least one model learned in the server, recognizing a surgical image acquired during operation using the stored model, and providing surgical guide information corresponding to the recognized surgical image; Lt; / RTI >
The client includes:
Transmitting the first learning data obtained from the surgical image obtained during the operation to the server, receiving information for updating the stored model from the server, updating the stored model based on the received information,
The server comprises:
Receiving at least one new second learning data, generating a data set including at least one new second learning data, performing learning on the at least one model using the generated data set, Performing a learning test on the at least one model learned using the generated data set using the test data set and providing feedback based on the results of the learning test, Surgical Image Data Learning System.
제10 항에 있어서,
상기 서버는,
상기 새로운 제2 학습용 데이터 및 소정의 기준에 따라 선정된 기존 제2 학습용 데이터를 포함하는 상기 데이터셋을 생성하고, 상기 생성된 데이터셋을 이용하여 상기 적어도 하나의 모델에 대한 학습을 수행하는, 수술영상데이터 학습시스템.
11. The method of claim 10,
The server comprises:
Generating the data set including the new second learning data and existing second learning data selected according to a predetermined criterion and performing learning on the at least one model using the generated data set, Image data learning system.
서버가 수술 가이드 정보를 제공하는 하나 이상의 모델을 학습시키는 단계;
상기 서버가 클라이언트에 상기 학습된 적어도 하나의 모델에 대한 정보를 전송하는 단계;
상기 서버가, 학습용 데이터를 상기 클라이언트로부터 수신하되, 상기 학습용 데이터는 상기 클라이언트가 수술 중에 획득한 수술 영상으로부터 획득되는 것인, 단계;
상기 서버가, 상기 학습된 하나 이상의 모델을 업데이트하는 단계; 및
상기 서버가, 업데이트된 상기 적어도 하나의 모델에 대한 정보를 상기 클라이언트에 전송하는 단계; 를 포함하고,
상기 업데이트하는 단계는,
상기 서버가, 학습조건을 입력받는 단계;
상기 서버가, 상기 학습용 데이터로부터 상기 입력된 학습조건에 대응하는 데이터셋을 추출하는 단계;
상기 서버가, 상기 추출된 데이터셋을 이용하여 상기 적어도 하나의 모델에 대한 학습을 수행하는 단계;
상기 서버가, 상기 입력된 학습조건에 대응하는 테스트용 데이터셋을 생성하는 단계;
상기 서버가, 상기 생성된 테스트용 데이터셋을 이용하여 상기 적어도 하나의 모델에 대한 학습 테스트를 수행하는 단계; 및
상기 서버가, 상기 학습 테스트 수행결과에 따른 피드백을 제공하는 단계;
를 포함하는, 수술영상데이터 학습방법.
Allowing the server to learn one or more models to provide surgical guide information;
The server sending information about the learned at least one model to a client;
The server receiving training data from the client, wherein the training data is obtained from a surgical image acquired by the client during surgery;
The server updating the learned one or more models; And
The server sending information about the updated at least one model to the client; Lt; / RTI >
Wherein the updating comprises:
Receiving, by the server, a learning condition;
The server extracting a data set corresponding to the input learning condition from the learning data;
The server performing learning on the at least one model using the extracted data set;
The server generating a test data set corresponding to the input learning condition;
The server performing a learning test on the at least one model using the generated test data set; And
The server providing feedback according to the results of the learning test;
Wherein the method comprises the steps of:
하나 이상의 인스트럭션을 저장하는 메모리; 및
상기 메모리에 저장된 상기 하나 이상의 인스트럭션을 실행하는 프로세서를 포함하고,
상기 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써,
수술 가이드 정보를 제공하는 하나 이상의 모델을 학습시키는 단계;
클라이언트에 상기 학습된 적어도 하나의 모델에 대한 정보를 전송하는 단계;
학습용 데이터를 상기 클라이언트로부터 수신하되, 상기 학습용 데이터는 상기 클라이언트가 수술 중에 획득한 수술 영상으로부터 획득되는 것인, 단계;
상기 학습된 하나 이상의 모델을 업데이트하는 단계; 및
업데이트된 상기 적어도 하나의 모델에 대한 정보를 상기 클라이언트에 전송하는 단계; 를 포함하고,
상기 업데이트하는 단계는,
학습조건을 입력받는 단계;
상기 학습용 데이터로부터 상기 입력된 학습조건에 대응하는 데이터셋을 추출하는 단계;
상기 추출된 데이터셋을 이용하여 상기 적어도 하나의 모델에 대한 학습을 수행하는 단계;
상기 입력된 학습조건에 대응하는 테스트용 데이터셋을 생성하는 단계;
상기 생성된 테스트용 데이터셋을 이용하여 상기 적어도 하나의 모델에 대한 학습 테스트를 수행하는 단계; 및
상기 학습 테스트 수행결과에 따른 피드백을 제공하는 단계;
를 수행하는, 서버.
A memory for storing one or more instructions; And
And a processor executing the one or more instructions stored in the memory,
The processor executing the one or more instructions,
Learning one or more models that provide surgical guide information;
Transmitting information about the learned at least one model to a client;
Receiving learning data from the client, wherein the learning data is obtained from a surgical image acquired by the client during surgery;
Updating the learned one or more models; And
Transmitting information about the updated at least one model to the client; Lt; / RTI >
Wherein the updating comprises:
Receiving learning conditions;
Extracting a data set corresponding to the input learning condition from the learning data;
Performing learning on the at least one model using the extracted data set;
Generating a test data set corresponding to the input learning condition;
Performing a learning test on the at least one model using the generated test data set; And
Providing feedback according to the results of the learning test;
To do this, the server.
하드웨어인 컴퓨터와 결합되어, 제12 항의 방법을 수행할 수 있도록 컴퓨터에서 독출가능한 기록매체에 저장된 컴퓨터프로그램.A computer program stored in a computer readable recording medium in combination with a computer which is hardware and which is capable of performing the method of claim 12.
KR1020180026572A 2017-12-28 2018-03-06 Surgical image data learning system KR101864380B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020180055105A KR102298412B1 (en) 2017-12-28 2018-05-14 Surgical image data learning system
PCT/KR2018/010333 WO2019132168A1 (en) 2017-12-28 2018-09-05 System for learning surgical image data

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
KR1020170182900 2017-12-28
KR1020170182899 2017-12-28
KR20170182900 2017-12-28
KR20170182899 2017-12-28
KR1020170182898 2017-12-28
KR20170182898 2017-12-28
KR1020180013580 2018-02-02
KR1020180013580 2018-02-02

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020180055105A Division KR102298412B1 (en) 2017-12-28 2018-05-14 Surgical image data learning system

Publications (1)

Publication Number Publication Date
KR101864380B1 true KR101864380B1 (en) 2018-06-04

Family

ID=62628386

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020180026572A KR101864380B1 (en) 2017-12-28 2018-03-06 Surgical image data learning system
KR1020180026575A KR101864412B1 (en) 2017-12-28 2018-03-06 Data managing method, apparatus and program for machine learning
KR1020180061323A KR20190088376A (en) 2017-12-28 2018-05-29 Data managing method, apparatus and program for machine learning

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020180026575A KR101864412B1 (en) 2017-12-28 2018-03-06 Data managing method, apparatus and program for machine learning
KR1020180061323A KR20190088376A (en) 2017-12-28 2018-05-29 Data managing method, apparatus and program for machine learning

Country Status (2)

Country Link
KR (3) KR101864380B1 (en)
WO (2) WO2019132170A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020159276A1 (en) * 2019-02-01 2020-08-06 주식회사 아이버티 Surgical analysis apparatus, and system, method, and program for analyzing and recognizing surgical image
US10791301B1 (en) 2019-06-13 2020-09-29 Verb Surgical Inc. Method and system for synchronizing procedure videos for comparative learning
KR102273494B1 (en) * 2020-11-05 2021-07-06 주식회사 카비랩 System to automatically generate design of medical device for fracture surgery
KR102287762B1 (en) * 2020-11-05 2021-08-10 주식회사 카비랩 Ensemble learning based surgical simulator system for bone fracture and its driving method

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102150853B1 (en) 2018-10-11 2020-09-03 (주)제이엘케이 Apparatus for learning deep learning model for cancer region and method for the same
KR102243644B1 (en) 2018-12-07 2021-04-23 서울대학교 산학협력단 Apparatus and Method for Generating Medical Image Segmentation Deep-Learning Model, Medical Image Segmentation Deep-Learning Model Generated Therefrom
WO2020122606A1 (en) 2018-12-11 2020-06-18 시너지에이아이 주식회사 Method for measuring volume of organ by using artificial neural network, and apparatus therefor
KR102237009B1 (en) * 2018-12-11 2021-04-08 시너지에이아이 주식회사 Method for determine progress of polycystic kidney or polycystic liver and medical electronic device thereof
KR102189761B1 (en) * 2018-12-21 2020-12-11 주식회사 엘지씨엔에스 Method and server for learning deep learning
KR102186632B1 (en) * 2019-01-07 2020-12-02 재단법인대구경북과학기술원 Device for training analysis model of medical image and training method thereof
EP4020380A4 (en) * 2019-08-19 2023-05-10 LG Electronics Inc. Ai-based new learning model generation system for vision inspection on product production line
KR20210026623A (en) * 2019-08-30 2021-03-10 삼성전자주식회사 System and method for training artificial intelligence model
KR102542037B1 (en) * 2019-09-26 2023-06-12 주식회사 루닛 Training method for specializing artificial intelligence model in deployed institution, and apparatus for training the artificial intelligence model
KR102119056B1 (en) * 2019-10-08 2020-06-05 (주)제이엘케이 Method for learning medical image based on generative adversarial network and apparatus for the same
KR102168558B1 (en) * 2019-10-24 2020-10-21 서울대학교산학협력단 Training data selection method for active learning, training data selection device for active learning and image analysis method using active learning
KR102334923B1 (en) * 2019-11-06 2021-12-03 주식회사 에이젠글로벌 Loan expansion hypothesis testing system using artificial intelligence and method using the same
KR102328154B1 (en) * 2019-11-11 2021-11-18 주식회사 테서 Method and system for providing medical data collection and analyzing service based on machine learning
KR102379653B1 (en) * 2019-11-27 2022-03-28 구글 엘엘씨 Personalized data model using closed data
KR102272573B1 (en) * 2019-11-28 2021-07-05 한국전자기술연구원 Method for nonintrusive load monitoring of energy usage data
KR102356263B1 (en) * 2020-02-12 2022-01-28 한전케이디엔주식회사 Power facility management system and method
KR102296274B1 (en) * 2020-10-26 2021-09-01 주식회사 보고넷 Method for providing object recognition with deep learning using fine tuning by user
KR20220067732A (en) * 2020-11-18 2022-05-25 한국전자기술연구원 Mobile deep learning hardware device for retraining
KR102467047B1 (en) * 2020-11-18 2022-11-15 (주)휴톰 Method and Apparatus for Estimating Annotation
KR102336500B1 (en) * 2021-03-02 2021-12-07 국방과학연구소 Method and apparatus for generating pseudo-label data, method and apparatus for learning deep neural network using pseudo-label data
KR102692065B1 (en) * 2021-04-09 2024-08-05 주식회사 한국무역정보통신 Ai product name error verification and hs code recommendation system based on natural language processing system, method and computer readale medium storing the same
KR102515081B1 (en) * 2022-03-22 2023-03-29 한화시스템 주식회사 Apparatus and method for learning object detection software

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009237923A (en) * 2008-03-27 2009-10-15 Nec Corp Learning method and system
JP2010092266A (en) * 2008-10-08 2010-04-22 Nec Corp Learning device, learning method and program
KR101302595B1 (en) * 2012-07-03 2013-08-30 한국과학기술연구원 System and method for predict to surgery progress step
KR20160012537A (en) * 2014-07-24 2016-02-03 삼성전자주식회사 Neural network training method and apparatus, data processing apparatus

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3329202B2 (en) * 1996-08-07 2002-09-30 ケイディーディーアイ株式会社 Neural network learning method
DE60234571D1 (en) * 2001-01-23 2010-01-14 Health Discovery Corp COMPUTER-ASSISTED IMAGE ANALYSIS
JP4766560B2 (en) * 2006-08-11 2011-09-07 Kddi株式会社 Moving image topic segmentation device
JP2009075737A (en) * 2007-09-19 2009-04-09 Nec Corp Semi-supervised learning method, device, and program
KR100918361B1 (en) * 2008-02-26 2009-09-22 엔에이치엔(주) System and method for high-speed search modeling
KR101049507B1 (en) * 2009-02-27 2011-07-15 한국과학기술원 Image-guided Surgery System and Its Control Method
JP5881048B2 (en) * 2012-09-18 2016-03-09 株式会社日立製作所 Information processing system and information processing method
US9324022B2 (en) * 2014-03-04 2016-04-26 Signal/Sense, Inc. Classifying data with deep learning neural records incrementally refined through expert input
KR20160138174A (en) * 2014-03-21 2016-12-02 바이오레이즈, 인크. Dental laser interface system and method
US10223635B2 (en) * 2015-01-22 2019-03-05 Qualcomm Incorporated Model compression and fine-tuning
US20160358099A1 (en) * 2015-06-04 2016-12-08 The Boeing Company Advanced analytical infrastructure for machine learning
KR102601848B1 (en) * 2015-11-25 2023-11-13 삼성전자주식회사 Device and method of data recognition model construction, and data recognition devicce
JP6182242B1 (en) * 2016-06-13 2017-08-16 三菱電機インフォメーションシステムズ株式会社 Machine learning method, computer and program related to data labeling model

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009237923A (en) * 2008-03-27 2009-10-15 Nec Corp Learning method and system
JP2010092266A (en) * 2008-10-08 2010-04-22 Nec Corp Learning device, learning method and program
KR101302595B1 (en) * 2012-07-03 2013-08-30 한국과학기술연구원 System and method for predict to surgery progress step
KR20160012537A (en) * 2014-07-24 2016-02-03 삼성전자주식회사 Neural network training method and apparatus, data processing apparatus

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020159276A1 (en) * 2019-02-01 2020-08-06 주식회사 아이버티 Surgical analysis apparatus, and system, method, and program for analyzing and recognizing surgical image
US10791301B1 (en) 2019-06-13 2020-09-29 Verb Surgical Inc. Method and system for synchronizing procedure videos for comparative learning
WO2020251595A1 (en) * 2019-06-13 2020-12-17 Verb Surgical Inc. Method and system for synchronizing procedure videos for comparative learning
US11677909B2 (en) 2019-06-13 2023-06-13 Verb Surgical Inc. Method and system for synchronizing playback of two recorded videos of the same surgical procedure
US12120461B2 (en) 2019-06-13 2024-10-15 Verb Surgical, Inc. Method and system for synchronizing playback of two recorded videos of the same surgical procedure
KR102273494B1 (en) * 2020-11-05 2021-07-06 주식회사 카비랩 System to automatically generate design of medical device for fracture surgery
KR102287762B1 (en) * 2020-11-05 2021-08-10 주식회사 카비랩 Ensemble learning based surgical simulator system for bone fracture and its driving method

Also Published As

Publication number Publication date
WO2019132170A1 (en) 2019-07-04
KR101864412B1 (en) 2018-06-04
WO2019132168A1 (en) 2019-07-04
KR20190088376A (en) 2019-07-26

Similar Documents

Publication Publication Date Title
KR101864380B1 (en) Surgical image data learning system
KR20190088375A (en) Surgical image data learning system
KR102014385B1 (en) Method and apparatus for learning surgical image and recognizing surgical action based on learning
US11017695B2 (en) Method for developing a machine learning model of a neural network for classifying medical images
US20240225447A1 (en) Dynamic self-learning medical image method and system
KR102243830B1 (en) System for providing integrated medical diagnostic service and method thereof
EP3477589B1 (en) Method of processing medical image, and medical image processing apparatus performing the method
CN109492675B (en) Medical image recognition method and device, storage medium and electronic equipment
JP2021536057A (en) Lesion detection and positioning methods, devices, devices, and storage media for medical images
US20200226752A1 (en) Apparatus and method for processing medical image
KR101926123B1 (en) Device and method for segmenting surgical image
CN103985147A (en) Method and System for On-Site Learning of Landmark Detection Models for End User-Specific Diagnostic Medical Image Reading
US20230238109A1 (en) Method and program for providing feedback on surgical outcome
CA3110581C (en) System and method for evaluating the performance of a user in capturing an image of an anatomical region
KR102146672B1 (en) Program and method for providing feedback about result of surgery
CN113393417A (en) System and method for detecting laterality of medical images
CN113033581A (en) Method for positioning key points of skeletal anatomy in hip joint image, electronic device and medium
KR102276862B1 (en) Method, apparatus and program for controlling surgical image play
EP4040388A1 (en) Intuitive display for rotator cuff tear diagnostics
CN114187281A (en) Image processing method and device, electronic equipment and storage medium
EP4353178A1 (en) Artificial intelligence surgical system and control method therefor
KR20190133424A (en) Program and method for providing feedback about result of surgery

Legal Events

Date Code Title Description
A107 Divisional application of patent
E701 Decision to grant or registration of patent right
GRNT Written decision to grant