KR20230117244A - 반려동물의 암을 식별하기 위한 시스템 및 방법 - Google Patents

반려동물의 암을 식별하기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR20230117244A
KR20230117244A KR1020237024183A KR20237024183A KR20230117244A KR 20230117244 A KR20230117244 A KR 20230117244A KR 1020237024183 A KR1020237024183 A KR 1020237024183A KR 20237024183 A KR20237024183 A KR 20237024183A KR 20230117244 A KR20230117244 A KR 20230117244A
Authority
KR
South Korea
Prior art keywords
computer
slide image
biopsy
image
coordinates
Prior art date
Application number
KR1020237024183A
Other languages
English (en)
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 마아즈, 인코오포레이티드
Publication of KR20230117244A publication Critical patent/KR20230117244A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/69Microscopic objects, e.g. biological cells or cellular parts
    • G06V20/698Matching; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0012Biomedical image inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/69Microscopic objects, e.g. biological cells or cellular parts
    • G06V20/695Preprocessing, e.g. image segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10056Microscopic image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30004Biomedical image processing
    • G06T2207/30024Cell structures in vitro; Tissue sections in vitro
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30004Biomedical image processing
    • G06T2207/30096Tumor; Lesion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/03Recognition of patterns in medical or anatomical images

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Databases & Information Systems (AREA)
  • Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
  • Radiology & Medical Imaging (AREA)
  • Quality & Reliability (AREA)
  • Image Analysis (AREA)
  • Investigating Or Analysing Biological Materials (AREA)
  • Apparatus For Radiation Diagnosis (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Abstract

일 실시예에서, 본 개시는, 생검 슬라이드 이미지를 수신하는 단계와, 암 분류기로서 프로그래밍된 제1의 훈련된 머신 러닝 모델에 이미지를 입력하여 분류를 출력하게 하는 제1의 프로그래밍된 명령어를 실행하는 단계와, 분류에 기초하여 이미지가 추가 처리되어야 한다고 판정하는 단계와, 생검 슬라이드 이미지에 대해 조직 검출 알고리즘(tissue detection algorithm)을 실행하여 제1 좌표 세트를 출력하는 단계와, 이미지 분할을 위해 프로그래밍된 제2의 훈련된 머신 러닝 모델에 생검 슬라이드 이미지 및 제1 좌표 세트를 입력하여 이진 픽셀 마스크(binary pixel mask)를 출력하게 하는 제2의 프로그래밍된 명령어를 실행하는 단계와, 이진 픽셀 마스크를 사용하여 향상된 픽셀 마스크를 생성하도록 제3의 프로그래밍된 명령어를 실행하는 단계와, 향상된 픽셀 마스크에 의해 표시된 제2 좌표 세트를 컴퓨터 메모리에 디지털 방식으로 저장하는 단계를 포함하는 방법을 제공한다. 일 실시예에서는 10-고배율 필드(high-power field)가 생성되고 디지털 방식으로 저장될 수 있다.

Description

반려동물의 암을 식별하기 위한 시스템 및 방법
이익 주장
본 출원은 2021년 8월 16일에 제출된 가출원 63/233,674, 2021년 2월 24일에 제출된 가출원 63/153,308 및 2020년 12월 15일에 제출된 가출원 63/125,926의 35 U.S.C.§119 하에서의 이익을 주장하는데, 이들 가출원의 전체 내용은 본원에 완전히 명시된 것처럼 모든 목적을 위해 참조에 의해 본원에 통합된다.
기술 분야
본 발명은 일반적으로 동물 조직의 디지털 이미지로부터 암을 식별하기 위한 머신 러닝 시스템에 관한 것이다.
동물 또는 반려동물에서 암의 공격성을 정량화하는 한 가지 방법은 주어진 시간 동안 신체의 주어진 영역에서 유사분열을 겪는 세포의 수를 카운트하는 것이다. 유사분열 카운트는 개 비만 세포 종양, 개 연조직 육종, 개 멜라닌 세포 종양, 개 및 고양이 유방 종양 등과 같은 전통적인 등급 체계에서 역할을 할 수 있다. 신체의 주어진 영역에서 유사분열 세포의 증가된 밀도는 동물에 영향을 미치는 암 또는 기타 질병을 나타낼 수 있는데, 예를 들어, 이는 검출된 신생물이 양성인지 악성인지를 나타내거나 의사에게 귀중한 예후 정보를 제공할 수 있다. 그러나, 유사분열 세포의 증가된 밀도를 결정하기 위한 현재의 프로세스는, 동물 또는 반려동물의 주어진 영역의 의료용 이미지를 검토하는 것과, 임의의 관심 영역을 수동으로 식별하는 것을 수반한다. 이러한 검토 프로세스는 지루하고 시간이 많이 소요될 수 있으며, 다양한 부정확성 또는 관찰자 간 편차로 인해 어려움을 겪을 수 있다. 유사분열 세포의 밀도를 관찰하는 것은, 적어도 부분적으로, 관심 영역이 검토될 전체 이미지보다 훨씬 작을 수 있기 때문에 어려울 수 있다. 또한, 이미지의 특정 유사분열 영역의 열악한 해상도는 추가적인 문제를 제공할 수 있다. 서로 다른 관찰자, 심지어 유사한 방법으로 훈련을 받은 사람일지라도, 동일한 이미지를 검토할 때 서로 다른 결론에 도달할 수 있으므로, 서로 다른 관찰자 간에 일관성 없는 적용 및 변동이 발생할 수 있다. 이러한 관찰의 주관적인 특성은 오류를 초래할 수 있고, 유사분열 카운트의 전반적인 효율성을 감소시킨다.
결과적으로, 보다 일관되고 효율적이며 객관적인 유사분열 카운트를 제공하고, 다양한 해상도 및 크기의 의료용 이미지를 분석하는 프로세스를 자동화하여 유사분열 세포에 대한 임상적으로 신뢰할 수 있는 결정을 산출할 필요가 있다.
특정 비제한적 실시예는 머신 러닝 시스템을 사용하여 암을 식별하기 위한 시스템, 방법, 매체 및 이들의 조합을 제공한다. 예를 들어, 의료용 스캐닝 디바이스에 의해 자주 사용되는 타일형 SVS 형식 이미지 또는 임의의 다른 DICOM(digital imaging and communications in medicine) 이미지와 같은 디지털 생검 이미지는 하나 이상의 머신 러닝 모델 또는 툴을 사용하여 처리된다. 머신 러닝 모델 또는 툴은, 예를 들어, KNN(K-nearest neighbor), NB(naive Bayes), 결정 트리 또는 랜덤 포레스트, SVM(support vector machine), 컨볼루션 신경망(CNN), 지역 기반 CNN(RCNN), 1차원(1D) CNN, 순환 신경망(RNN)과 같은 딥 러닝 모델, 또는 임의의 다른 머신 러닝 모델 또는 기술일 수 있다. 머신 러닝 모델 또는 툴은 관련 이미지 또는 슬라이드를 식별하고 슬라이드 내에서 보여지는 유사분열 세포를 식별하도록 훈련될 수 있다.
특정 비제한적 실시예는 방법에 관한 것일 수 있다. 이 방법은, 컴퓨팅 디바이스에서 생검 슬라이드 이미지를 수신하는 단계와, 암 분류기로서 프로그래밍된 제1의 훈련된 머신 러닝 모델에 생검 슬라이드 이미지를 입력하여 생검 슬라이드 이미지의 분류를 출력하게 하는 제1의 프로그래밍된 명령어를 실행하는 단계와, 분류에 기초하여 생검 슬라이드 이미지가 추가 처리되어야 한다고 판정하는 단계와, 생검 슬라이드 이미지에 대해 조직 검출 알고리즘(tissue detection algorithm)을 실행하여 제1 좌표 세트를 출력하는 단계와, 이미지 분할을 위해 프로그래밍된 제2의 훈련된 머신 러닝 모델에 생검 슬라이드 이미지 및 제1 좌표 세트를 입력하여 이진 픽셀 마스크(binary pixel mask)를 출력하게 하는 제2의 프로그래밍된 명령어를 실행하는 단계와, 이진 픽셀 마스크를 사용하여 향상된 픽셀 마스크를 생성하도록 제3의 프로그래밍된 명령어를 실행하는 단계와, 향상된 픽셀 마스크에 의해 표시된 제2 좌표 세트를 컴퓨터 메모리에 디지털 방식으로 저장하는 단계 중 하나 이상을 포함할 수 있다.
일 실시예는, 향상된 픽셀 마스크에 기초하여 가장 많은 유사분열상(mitotic figures)을 갖는 필드를 출력하도록 KD-트리 기반 알고리즘(KD-tree based algorithm)을 구현하는 제4의 프로그래밍된 명령어를 실행하는 단계와, 컴퓨터 메모리에서 제2 좌표 세트를 갖는 파일에 필드를 디지털 방식으로 저장하는 단계를 포함한다.
일 실시예에서, 필드는 10-고배율 필드(high-power field)를 포함한다.
일 실시예는 디바이스 디스플레이 상에 필드를 디스플레이하는 단계를 포함한다.
일 실시예에서, 조직 검출 알고리즘은 생검 슬라이드 이미지의 저해상도 뷰에 대해 거친 조직 분할(coarse tissue segmentation)을 수행하는 것을 포함한다.
일 실시예에서, 제3의 프로그래밍된 명령어는, 유사분열상을 나타내는 이진 픽셀 마스크의 모든 연결된 좌표 세트에 대해 대응하는 회전된 직사각형을 결정하게 하고 ― 각각의 회전된 직사각형은 유사분열상의 근사 윤곽(approximated contour)을 둘러싸는 최소 면적을 가짐 ―, 컴퓨터 메모리에 디지털 방식으로 저장된 임계 폭보다 더 큰 각각의 폭을 갖는 회전된 직사각형과 연관된 좌표만을 포함하는 향상된 픽셀 마스크를 생성하게 하도록 프로그래밍된다.
일 실시예에서, 제3의 프로그래밍된 명령어는 또한, 컴퓨터 메모리에 저장된 유사분열 세포 극간 거리(mitotic cells inter-polar distance) 및 커널 크기(kernel size)에 비례하는 다수의 거듭된 확장 반복을 통해 이진 픽셀 마스크를 확장시키도록 프로그래밍된다.
일 실시예에서, 제2의 훈련된 머신 러닝 모델은 BCE(balanced-cross-entropy) 소프트-다이스-손실(soft-Dice-Loss) 함수 또는 소프트-다이스-손실 함수 중 적어도 하나를 최소화하도록 훈련된 스킵-연결(skip-connections)을 갖는 컨볼루션 신경망을 포함한다.
일 실시예에서, 제2의 훈련된 머신 러닝 모델은 ImageNet으로 사전 훈련된 U-Net 모델을 더 포함한다.
일 실시예에서, 생검 슬라이드 이미지는 동물 또는 반려동물 중 적어도 하나의 생검 이미지를 포함하고, 생검 이미지는 의료용 이미징 디바이스를 사용하여 생성된 것이다.
일 실시예에서, 생검 슬라이드 이미지는 전체 슬라이드 이미지(whole slide image: WSI)를 포함한다.
일 실시예는 생검 슬라이드 이미지 및 분류의 표현을 포함하는 출력 이미지를 디스플레이하는 단계를 포함한다.
일 실시예는 생검 슬라이드 이미지를 프로그래밍 방식으로 전처리하는 단계를 포함하는데, 이러한 전처리는 생검 슬라이드 이미지가 추가 처리될 수 있을 정도로 충분히 선명하다고 판정하는 것을 포함한다.
일 실시예에서, 생검 슬라이드 이미지는 전체 슬라이드 이미지를 포함하고, 전처리는 생검 슬라이드 이미지의 해상도가 컴퓨터 메모리에 저장된 임계 해상도를 초과한다고 판정하는 것 또는 전체 슬라이드 이미지에 포함된 슬라이드 이미지의 개수가 컴퓨터 메모리에 저장된 임계 개수를 초과한다고 판정하는 것 중 적어도 하나를 포함한다.
일 실시예는, 제2 좌표 세트를 사용하여 유사분열상 카운트(mitotic figure count)를 프로그래밍 방식으로 계산하는 단계와, 유사분열상 카운트를 컴퓨터 메모리에 디지털 방식으로 저장하는 단계를 포함한다.
일 실시예에서, 컴퓨팅 디바이스는 서버 컴퓨터를 포함하고, 생검 슬라이드 이미지는 클라이언트 컴퓨팅 디바이스로부터 수신된다.
일 실시예에서, 파일은 XML(extensible markup language) 파일을 포함한다.
일 실시예는, 서버 컴퓨터로부터 클라이언트 컴퓨팅 디바이스로, XML(extensible markup language) 파일로부터 렌더링되는 주석으로서 생검 슬라이드 이미지에 관한 정보를 전송하는 단계를 포함한다.
일 실시예는 확장 가능한 블록을 포함하는 분산된 탈중앙식 비동기 아키텍처(distributed, decentralized, and asynchronous architecture)를 사용하여 방법을 실행하는 단계를 포함하는데, 확장 가능한 블록은 관리 프로그램을 포함하며, 관리 프로그램은 도커 컨테이너(docker containers)를 사용하여 구현된다.
특정 비제한적 실시예는 하나 이상의 프로세서에 의해 실행될 때 시스템으로 하여금 본 명세서에 설명된 임의의 방법 또는 기술을 수행하게 하도록 작동 가능한 명령어를 포함하는 비일시적 컴퓨터 판독가능 저장 매체에 관한 것일 수 있다.
특정 비제한적 실시예는, 하나 이상의 프로세서와, 하나 이상의 프로세서 중 하나 이상에 결합되고, 하나 이상의 프로세서 중 하나 이상에 의해 실행될 때 시스템으로 하여금 본 명세서에 설명된 임의의 방법 또는 기술을 수행하게 하도록 작동 가능한 명령어를 포함하는 하나 이상의 비일시적 컴퓨터 판독가능 저장 매체를 포함할 수 있는 시스템에 관한 것일 수 있다.
특정 비제한적 실시예는 개시된 시스템 및 방법을 임상 설정에서 사용하기 위한 시스템 아키텍처에 관한 것일 수 있다. 예를 들어, 특정 실시예에서, 자원 효율을 증가시키기 위해 하나 이상의 전처리 단계 및/또는 후처리 단계가 사용될 수 있다. 이러한 단계들은, 지정된 기간 동안 새로운 스캔이 사용할 수 있게 될 경우 이들을 처리 대기열에 추가할 수 있는 풀 기반 비동기 아키텍처(pull-based asynchronous architecture)를 활용하는 시스템 아키텍처에 의해 실행될 수 있다.
본 명세서에 개시된 실시예는 단지 예일 뿐이며, 본 개시의 범위는 이에 제한되지 않는다. 특정 비제한적 실시예는 본 명세서에 개시된 실시예의 구성요소, 요소, 특징, 기능, 동작 또는 단계의 전부 또는 일부를 포함하거나 전혀 포함하지 않을 수 있다. 본 발명에 따른 실시예는, 특히, 방법, 저장 매체, 시스템 및 컴퓨터 프로그램 제품에 관한 첨부된 청구범위에 개시되는데, 하나의 청구 카테고리(예컨대, 방법)에서 언급된 임의의 특징은 다른 청구 카테고리(예컨대, 시스템)에서도 청구될 수 있다. 첨부된 청구범위에서의 종속성 또는 참조는 단지 형식적인 이유로 선택된다. 그러나, 임의의 이전 청구항에 대한 의도적인 참조(특히 복수의 종속성)로 인해 발생하는 임의의 청구대상이 또한 청구될 수 있으므로, 첨부된 청구항에서 선택된 종속성에 관계없이 청구항과 그 특징의 임의의 조합이 개시되고 청구될 수 있다. 청구될 수 있는 청구대상은 첨부된 청구범위에 기재된 특징의 조합뿐만 아니라 청구범위의 특징의 임의의 다른 조합을 포함하는데, 청구범위에 언급된 각 특징은 청구범위의 임의의 다른 특징 또는 다른 특징들의 조합과 조합될 수 있다. 또한, 본 명세서에서 설명되거나 도시된 실시예 및 특징 중 임의의 것은 개별 청구항으로 및/또는 본 명세서에서 설명되거나 도시된 임의의 실시예 또는 특징 또는 첨부된 청구범위의 임의의 특징과 임의의 조합으로 청구될 수 있다.
본 개시 및 그 특징 및 장점의 보다 완전한 이해를 위해, 이제 첨부된 도면과 함께 이해될 다음 설명을 참조한다.
도 1은 암을 식별하기 위해 유사분열상(mitotic figures)을 평가하는 예시적 7단계 프레임워크를 도시한다.
도 2는 특정 실시예에 따른 예시적 머신 러닝 모델을 도시한다.
도 3은 생검 슬라이드 분류 데이터 및 범주의 예시적 세트를 도시한다.
도 4는 특정 실시예에 따른 머신 러닝 모델의 예시적 구성요소를 도시한다.
도 5는 암을 식별하기 위해 머신 러닝 시스템을 사용하는 예시적 방법을 도시한다.
도 6은 특정 비제한적 실시예에 따른, 머신 러닝 툴를 사용하여 암의 진단을 용이하게 하는 데 사용되는 예시적 컴퓨터 시스템 또는 디바이스를 도시한다.
도 7은 특정 비제한적 실시예에 따른 예시적 생검 슬라이드 분류를 도시한다.
도 8은 특정 비제한적 실시예에 따른 배포된 분산 아키텍처의 예를 도시한다.
도 9는 특정 비제한적 실시예에 따른 푸아송 회귀 분석(Poisson regression analysis)의 조건부 λi를 도시한다.
도 10은 인공지능 없이, 인공지능의 지원으로, 인공지능 단독으로 수행된 예시적 유사분열 카운트의 결과를 도시한다.
본 명세서에서 사용되는 용어는 일반적으로 본 개시의 맥락 내에서 그리고 각 용어가 사용되는 특정 맥락에서 당업계에서의 통상적인 의미를 갖는다. 본 개시의 조성물 및 방법 및 이들을 제조하고 사용하는 방법을 설명할 때의 추가 지침을 제공하기 위해, 특정 용어들이 아래 또는 본 명세서의 다른 곳에서 논의된다.
명세서 및 첨부된 청구범위에서 사용될 때, 단수 형태 "a", "an" 및 "the"는 문맥상 명백하게 달리 지시하지 않는 한 복수 지시대상을 포함한다.
본 명세서에서 사용될 때, "포함한다", "포함하는"이라는 용어 또는 이들의 임의의 다른 변형은 비배타적인 포함을 포함하도록 의도되므로, 요소의 리스트를 포함하는 프로세스, 방법, 물품, 시스템 또는 장치는 해당 요소만을 포함하는 것이 아니라, 그러한 프로세스, 방법, 물품 또는 장치에 고유하거나 명시적으로 나열되지 않은 다른 요소를 포함할 수 있다.
본원에서 사용될 때, 본 개시에 따라 사용되는 "동물" 또는 "반려동물"이라는 용어는 애완용 개, 애완용 고양이, 말, 소, 흰족제비, 토끼, 돼지, 쥐, 생쥐, 게르빌루스쥐(gerbils), 햄스터, 염소 등를 포함하지만 이에 제한되지 않는 가축을 지칭한다. 애완용 개와 애완용 고양이는 반려동물의 특정 비제한적 예이다. 본 개시에 따라 사용되는 "동물" 또는 "반려동물"이라는 용어는 또한, 적절한 경우, 들소, 엘크, 사슴, 베니슨(venison), 오리, 가금류, 물고기 등을 포함하지만 이에 제한되지 않는 야생 동물을 지칭할 수 있다.
본 명세서에서 사용될 때, 이미지 또는 슬라이드의 "특징(feature)"은 이미지 또는 슬라이드의 하나 이상의 측정 가능한 특성에 기초하여 결정될 수 있다. 예를 들어, 특징은 생검 이미지에서 검출된 조밀한 조직 영역일 수 있다.
본 명세서의 상세한 설명에서, "실시예", "일 실시예", "다양한 실시예", "특정 실시예", "일부 실시예", "다른 실시예", "특정 다른 실시예" 등에 대한 언급은 설명된 실시예(들)가 특정 특징, 구조 또는 특성을 포함할 수 있지만 모든 실시예가 반드시 특정 특징, 구조 또는 특성을 포함하는 것은 아닐 수 있음을 나타낸다. 더욱이, 그러한 문구는 반드시 동일한 실시예를 지칭하는 것은 아니다. 또한, 특정한 특징, 구조 또는 특성이 실시예와 관련하여 설명될 때, 다른 실시예와 관련하여 이러한 특징, 구조 또는 특성에 영향을 미치는 것은 명시적으로 설명되는 아니든 당업자의 지식 내에 있음이 제시된다. 설명을 읽은 후, 관련 기술(들)의 당업자에게는 대안적 실시예에서 본 개시를 구현하는 방법이 명백할 것이다.
본 명세서에서 사용될 때, "디바이스"라는 용어는 컴퓨팅 시스템 또는 모바일 디바이스를 지칭한다. 예를 들어, "디바이스"라는 용어는 스마트폰, 태블릿 컴퓨터 또는 랩톱 컴퓨터를 포함할 수 있다. 특히, 컴퓨팅 시스템은, GPS 수신기, 나침반, 자이로스코프 또는 가속도계와 같이, 위치, 방향 또는 배향을 결정하는 기능을 포함할 수 있다. 클라이언트 디바이스는 또한, BLUETOOTH 통신, 근거리 통신(NFC) 또는 적외선(IR) 통신, 또는 무선 근거리 통신망(WLAN) 또는 셀룰러 전화 네트워크를 통한 통신과 같은 무선 통신 기능을 포함할 수 있다. 이러한 디바이스는 또한 하나 이상의 카메라, 스캐너, 터치스크린, 마이크 또는 스피커를 포함할 수 있다. 클라이언트 디바이스는 또한 게임, 웹 브라우저 또는 소셜 네트워킹 애플리케이션과 같은 소프트웨어 애플리케이션을 실행할 수 있다. 예를 들어, 클라이언트 디바이스는 사용자 장비, 스마트폰, 태블릿 컴퓨터, 랩톱 컴퓨터, 데스크톱 컴퓨터 또는 스마트워치를 포함할 수 있다.
예시적 프로세스 및 실시예는 모바일 애플리케이션 및 관련 그래픽 사용자 인터페이스("UX" 또는 "GUI")를 통해 컴퓨팅 시스템 또는 클라이언트 디바이스에 의해 행해지거나 수행될 수 있다. 특정 비제한적 실시예에서, 컴퓨팅 시스템 또는 클라이언트 디바이스는, 예를 들어, 스마트폰, 태블릿 컴퓨터 또는 랩톱 컴퓨터와 같은 모바일 컴퓨팅 시스템일 수 있다. 이러한 모바일 컴퓨팅 시스템은, GPS 수신기, 나침반, 자이로스코프 또는 가속도계와 같이, 위치, 방향 또는 배향을 결정하는 기능을 포함할 수 있다. 이러한 디바이스는 또한, BLUETOOTH 통신, 근거리 통신(NFC) 또는 적외선(IR) 통신, 또는 무선 근거리 통신망(WLAN), 3G, 4G, LTE, LTE-A, 5G, 사물 인터넷 또는 셀룰러 전화 네트워크를 통한 통신과 같은 무선 통신을 위한 기능을 포함할 수 있다. 이러한 디바이스는 또한, 하나 이상의 카메라, 스캐너, 터치스크린, 마이크 또는 스피커를 포함할 수 있다. 모바일 컴퓨팅 시스템은 또한, 게임, 웹 브라우저 또는 소셜 네트워킹 애플리케이션과 같은 소프트웨어 애플리케이션을 실행할 수 있다. 소셜 네트워킹 애플리케이션을 통해, 사용자는 자신의 소셜 네트워크 내의 다른 사용자와 연결하고 통신하고 정보를 공유할 수 있다.
일반적으로, 유사분열상 카운트는 종양(또는 유사체)의 복수의 슬라이드 절편에 걸쳐 가장 많은 유사분열 활성을 갖는 부위의 식별을 수반한다. 병리학 샘플의 크기(특정 예시적 실시예에서, 종양당 최대 20개의 슬라이드 포함함)로 인해, 부위 선택은 시간 소모적인 과정일 수 있다. 부위가 선택된 후, 특히 유사분열 활성이 높은 영역에서 유사분열상(mitotic figures)의 수를 정량적으로 평가하기 위해 추가적인 시간과 노력이 필요하다. 이 두 단계 모두에서 관찰자 간 변동 및 주관적 결정에 의해 야기되는 비효율성은 결과적인 유사분열상 카운트의 정확성을 감소시키고 귀중한 진단 및 치료 시간을 낭비한다.
조직병리학 분석 툴의 자동화는 개별 관찰자의 주관적인 결정에 의해 야기될 수 있는 오류 없이 유사분열상 카운트의 객관적인 결정을 허용할 것이므로 실행 기반 효율성에 대한 잠재력을 제공한다.
도 1은 암을 식별하기 위해 유사분열상을 평가하는 예시적 7단계 프로세스 프레임워크를 도시한다. 식별은 판정 또는 진단을 포함할 수 있다. 특히, 도 1에 도시된 프로세스는 주어진 이미지에서 유사분열 세포 또는 유사분열 세포를 포함하는 영역을 식별하는 데 사용되는 7개의 단계를 포함한다. 도 1에 도시된 프로세스는 7개의 단계를 사용하지만, 다른 실시예는 도 1에 식별된 단계들 중 하나 이상을 사용할 수 있고, 단계들은 나열된 순서 또는 임의의 다른 순서뿐만 아니라, 당업자에게 알려진 임의의 다른 단계로 수행될 수 있다. 실시예에서, 7개의 단계 모두는 본 명세서의 다른 섹션에서 추가로 설명되는 바와 같이 하나 이상의 저장된 명령어 프로그램, 방법, 기능, 또는 다른 소프트웨어 요소를 사용하여 컴퓨터로 구현된다.
제1 단계(110)에서, 도 6에 도시된 바와 같은 컴퓨터 구성요소뿐만 아니라 이미지를 적절하게 수신하고 처리할 수 있는 다른 구성요소를 포함할 수 있는 컴퓨터 시스템은 디지털 방식으로 저장된 생검 이미지를 수신한다. 일부 실시예에서, 각각의 생검 이미지는 생검 및 디지털 이미징, 스캐닝 또는 사진 촬영에서 수집된 조직으로부터 획득된 전체 슬라이드 이미지(whole slide image: "WSI")이다. 생검 이미지는 의료용 이미징 디바이스로부터의 하나 이상의 슬라이드 이미지를 포함할 수 있다. 슬라이드 이미지는 다양한 해상도, 예를 들어, 200,000 x 200,000 픽셀 이하를 가질 수 있다. 다른 비제한적 실시예에서, 제1 단계(110)는 임의의 다른 DICOM(digital imaging and Communications in Medicine) 이미지(들) 중 하나 이상을 수신하는 것을 수반할 수 있다. 이미지는, 이미지 저장소에 대한 데이터베이스 쿼리, API에 대한 프로그래밍 방식 호출, 이미지를 포함하는 폴더 또는 디렉터리의 네트워크 경로명을 수신한 후 파일을 반복적으로 여는 것, 또는 다른 프로그래밍 방식 기술을 사용하여, 클라우드 서버와 같은 서버로부터 또는 네트워크의 임의의 다른 컴퓨팅 또는 클라이언트 디바이스로부터 수신될 수 있다. 이미지는 임의의 알려진 의료용 이미징 디바이스로 촬영될 수 있다.
제2 단계(120)에서, 방법은 생검 이미지 내의 각각의 슬라이드를 분류하도록 프로그래밍된다. 단계(120)의 분류는, 예를 들어, 슬라이드가 암 세포를 갖는지 또는 유사분열상의 분석이 수행될 수 있을 정도로 충분히 선명한지 여부에 기초하여 슬라이드가 분석의 일부로 고려되어야 하는지 여부를 판정할 수 있다. 단계 120에서의 분류를 통해, 암세포가 없는 슬라이드는 예비 단계에서 분석에서 필터링 제거되어 추가 분석 대상이 되는 것이 방지될 수 있다. 따라서, 일 실시예에서, 단계 120은 분류에 기초하여 슬라이드가 암을 포함할 가능성이 높다고 판정하는 단계 및 그 판정에 기초하여 추가 처리를 위해 슬라이드를 전송하는 단계를 포함한다. 또한, 단계 120에서의 분류는 단계 130, 140, 150, 160, 170을 통해 진행될 필요가 없는 슬라이드를 제거하거나 탈락시킴으로써 시스템의 작업 부하를 줄이는 데 도움이 될 수 있다. 다른 비제한적 실시예에서, 제2 단계(120)에서는, 슬라이드의 해상도 및/또는 주어진 WSI 내에 포함된 슬라이드 이미지의 수를 포함하여 슬라이드의 임의의 다른 특성이 평가될 수 있다. 기본 임계값 기준을 충족시키지 않는 슬라이드는 거부될 수 있고, 기준을 위한 값은 구성 파일에 디지털 방식으로 저장되거나, 사용자 입력을 통해 수신되거나, 선언된 상수 또는 고정 값으로 하드 코딩될 수 있다. 특정 실시예에서, 분류 모델은 CNN을 사용하여 훈련될 수 있다. 예를 들어, 사전 훈련된(예컨대, ImageNet) 잔차 신경망(residual neural network: ResNet) 아키텍처가 디지털 생검 이미지 상에서의 특징 추출에 사용될 수 있으며, 그 다음에는 슬라이드가 암 세포를 가질 확률을 결정하는 데 사용할 수 있는 완전 접속 계층(fully connected layer) 및 소프트맥스 활성화 함수가 뒤따른다. 특정 실시예에서는 18층 깊이의 ResNet-18 아키텍처가 사용될 수 있다.
제3 단계(130)에서, 방법은 WSI에서 슬라이딩 윈도우 좌표를 계산하도록 프로그래밍된다. 생검 이미지의 큰 크기 및/또는 도 1의 프로세스 프레임워크를 구현하는 시스템의 잠재적인 메모리 제한으로 인해, 데이터의 슬라이딩 윈도우를 사용하여 각 슬라이드와 연관된 모든 데이터의 일부만이 한 번에 검사될 수 있다. 데이터의 슬라이딩 윈도우는 완전한 슬라이드의 데이터의 서브세트일 수 있으며, 주어진 기간에 메인 메모리에서 시스템이 관찰하고 처리할 수 있는 크기를 갖도록 프로그래밍된다. 일부 비제한적 실시예에서, 슬라이딩 윈도우는 슬라이드 이미지 내에 위치한 조직을 초기에 식별함으로써 결정될 수 있다. 예를 들어, 조직은 이미지에서 조직과 일반 배경 사이의 대비를 검출함으로써 식별될 수 있고, 대비 검출은 예를 들어 백라이트 유리(backlit glass)에 의해 생성된 밝은 흰색 배경을 구별할 수 있다. 일반 배경으로부터 조직을 식별 및/또는 분리하는 것은 조직 분할로 지칭될 수 있다. 이러한 방식으로 대비를 검출하면 잡음을 나타내는 것이 아니라 유용한 실질적인 결과를 생성할 가능성이 있는 데이터 윈도우에 방법을 신속히 집중시킴으로써 효율성을 향상시킬 수 있다.
제4 단계(140)에서, 방법은 식별된 각각의 슬라이딩 윈도우에서 데이터를 평가하도록 프로그래밍된다. 방법이 각 슬라이딩 윈도우를 평가한 후, 방법은 특정 윈도우 내에서 잠재적인 유사분열 세포를 식별하도록 프로그래밍된다. 식별된 유사분열 세포는 사용자 컴퓨팅 디바이스의 디스플레이 디바이스를 사용하여 사용자에게 디스플레이되고/되거나 단계 150으로 전송되는 이미지의 사본에서 강조 표시될 수 있다. 특정 비제한적 실시예에서는, 단계 140에서의 데이터 평가를 실행하기 위해 딥 러닝 네트워크가 사용될 수 있다. 예를 들어, CNN은 U-Net 및/또는 스킵-연결(skip-connection)을 포함하는 아키텍처 및 기술과 함께 사용될 수 있다. U-Net은 BatchNorm, DiceLoss, Tversky 손실, Mixup, Architecture Changes, Image Patching, GAN-Training, Bilinear Upsampling 및/또는 Residual ConvBlocks를 포함하지만 이에 제한되지 않는 다른 기술과 함께 사용될 수 있다. 다른 머신 러닝 모델, 기술 또는 아키텍처는, 하드 네거티브 마이닝(hard negative mining), 적극적 확대(aggressive augmentation), 혼합 손실(mixing losses), 앙상블링(ensembling), 마스킹(masking), 크기 조정 및/또는 분할 중 하나 이상을 통합할 수 있다. 시스템은 잠재적 유사분열상을 식별하기 위해 하나 이상의 이러한 기술을 사용한다.
특정 비제한적 실시예에서, 딥 러닝 네트워크는 U-Net을 따르는 CNN을 포함할 수 있다. 예를 들어, 딥 러닝 네트워크는 다음과 같은 손실 함수를 최소화하도록 훈련될 수 있다:
여기서, 는 손실 함수를 나타내고, α는 ∈ [0,1] 범위의 하이퍼 파라미터를 나타내고, 은 150 x 150 픽셀의 이미지 픽셀화를 나타내고, 은 600 x 600 픽셀의 이미지 픽셀화를 나타낸다. 일부 비제한적 예에서, 는 50 에포크(epochs)에서 훈련된 BCE-소프트-다이스-손실(BCE-soft-Dice-Loss) 및/또는 100 에포크에서 훈련된 소프트 다이스 손실(soft Dice Loss)로 설정될 수 있다. 특정 비제한적 실시예에서는 모델 훈련 시에, 는 다수의 에포크 동안 BCE-소프트-다이스-손실로 설정되고, 그런 다음 추가 에포크 동안 소프트 다이스 손실로 설정된다.
제5 단계(150)에서, 방법은 초기 출력 데이터로부터 거짓 양성(false positives)이 제거될 수 있는 후처리 단계를 실행하도록 프로그래밍된다. 거짓 양성은 하나 이상의 라벨링된 훈련 데이터 세트로 훈련된 머신 러닝 모델을 사용하여 결정될 수 있다. 이러한 라벨링된 훈련 데이터 세트는 생검 슬라이드의 복수의 이미지 및 복수의 각각 연관된 실측 라벨 또는 주석일 수 있다. 훈련 데이터에 표현된 예시적 관계는 조밀한 조직이 유사분열 세포를 나타낸다는 것일 수 있다. 이 관계는 수동으로 라벨링되거나 별도의 훈련된 머신 러닝 모델을 사용하여 라벨링된 지정된 디지털 이미지 세트를 포함하는 훈련 데이터로 표현될 수 있다. 여기에서는 모델 훈련이 보다 구체적으로 설명된다. 특정 비제한적 실시예에서는, 하나 이상의 유사분열 세포의 잠재적 응집체가 잘못 식별되거나 2회 카운트되는 경우를 식별하기 위해, 마스크 형태의 음성 훈련 데이터(negative training data)가 방법에 사용될 수 있다.
제6 단계(160)에서, 방법은 유사분열상을 나타내는 픽셀의 모든 좌표를 결정하고 유사분열상을 카운트하도록 프로그래밍된다. 유사분열상은 보다 특이적으로 본원에 설명된 바와 같이 카운트될 수 있다. 유사분열상의 모든 픽셀의 좌표는 디지털 방식으로 저장될 수 있다. 또한, 10-고배율 필드 하위 영역(10-high-power field subregion)과 같이 가장 많은 유사분열상을 갖는 필드가 결정되고 디지털 방식으로 저장될 수 있다.
제7 단계(170)에서, 결과는 추가 분석 또는 해석을 위해 병리학자 또는 다른 사람에게 전송될 수 있다. 그런 다음, 결과는 네트워크의 컴퓨팅 디바이스에 디스플레이될 수 있고/있거나 병리학자 또는 기타 관심 있는 당사자가 이를 볼 수 있다. 분석 및 해석에 관한 추가 정보가 또한 포함될 수 있다.
도 2는 상이한 형상, 크기 및/또는 배향을 갖는 해부학적 구조의 이미지 또는 이미지 데이터의 슬라이딩 윈도우를 비교하는 데 사용될 수 있는 머신 러닝 모델의 비제한적 실시예를 도시한다. 머신 러닝 모델을 훈련하는 데 사용되는 훈련 데이터 세트는, 적절한 평가 및 비교를 허용하기 위해 이미지를 뒤집고, 회전시키고, 형상을 재구성하도록 머신 러닝 모델을 훈련시키기 위해, 상이한 형상, 크기 및/또는 배향을 갖는 복수의 이미지를 포함할 수 있다. 도 2의 예에서, 머신 러닝 모델은 U-Net 아키텍처(200)를 사용한다. U-Net 아키텍처(200)는 계층을 사용하는 특정 인코더-디코더 방식을 포함한다. 인코더는 공간 차원을 감소시키고 채널을 증가시킨다. 디코더는 공간 차원을 증가시키고 채널을 감소시킨다. 결국, 공간 차원이 복원되어 입력 이미지의 각 픽셀에 대한 예측을 수행할 수 있다.
도 2에 도시된 예시적 U-Net(200)은 대칭 아키텍처를 따른다. (왼쪽에 있는) 인코더는 반복되는 3x3 컨볼루션 블록(201)으로 구성된다. 각 컨볼루션 다음에는 ReLU 및 배치 정규화가 뒤따를 수 있다. 3x3 컨볼루션 블록(201) 다음에는 공간 차원을 감소시키는 2x2 최대 풀링 블록(203)이 뒤따를 수 있다. (오른쪽에 있는) 디코더는 업샘플링 및 2x2 전치 컨볼루션 블록(204)을 포함하는데, 이는 특징 채널의 수를 절반으로 줄인다. 각각의 이러한 업샘플링 블록(204) 다음에는 반복된 3x3 컨볼루션 블록(201)이 뒤따를 수 있다(ReLU가 각각 뒤따름). 최종 계층에서는, 1x1 컨볼루션(205)을 사용하여 원하는 수의 클래스에 채널을 매핑할 수 있다. 특히, 도시된 U-Net(200)은 또한 모든 컨볼루션에서 경계 픽셀의 손실로 인해 필요할 수 있는 "복사 및 자르기" 블록(202)을 포함한다.
특정 실시예에서, U-Net(200)은 BatchNorm, DiceLoss, Tversky 손실, Mixup, Architecture Changes, Image Patching, GAN-Training, Bilinear Upsampling, 및/또는 Residual ConvBlocks를 포함하지만 이에 제한되지는 않는 다른 기술과 함께 사용될 수 있다.
일부 비제한적 실시예에서, 머신 러닝 프레임워크는 복수의 이미지로부터 수집된 훈련 데이터 및 대응하는 품질 및 분류 값으로부터 훈련된 컨볼루션 신경망(CNN) 구성요소를 포함할 수 있다. 예를 들어, 수집된 훈련 데이터는 클라이언트 디바이스에 의해 캡처된 하나 이상의 이미지일 수 있다. CNN은 하나 이상의 노드가 있는 하나 이상의 컨볼루션 및 서브샘플링 계층을 포함하는 일종의 인공 신경망이다. 하나 이상의 숨겨진 계층을 포함하는 하나 이상의 계층은 적층되어 CNN 아키텍처를 형성할 수 있다. 실시예에서, CNN은 많은 양의 라벨링된 훈련 데이터에 노출됨으로써 입력 이미지의 이미지 파라미터와 후속 분류 및 품질을 결정하는 방법을 학습하도록 구성된다. 일부 예에서 신경망은 모든 입력-출력 쌍에 대해 학습된 가중치를 훈련할 수 있지만, CNN은 또한 입력을 따라 훈련 가능한 고정 길이 커널 또는 필터를 컨볼루션하여 작고 원시적인 특징들을 인식하고 이들을 복잡한 방식으로 조합하는 방법을 학습할 수 있다. 도 2의 CNN은 라벨링된 특정 이미지의 합성 데이터 세트에 대해 훈련될 때 정확한 객체 분할 및 이미지 특징 분류를 허용하고 실제 이미지에서 가능한 특징의 예측을 허용한다. CNN은 감독되거나 감독되지 않을 수 있다.
특정 비제한적 실시예에서, 컨볼루션이 수행되는 차원에서 도 2의 CNN의 출력 크기를 감소시키기 위해 풀링(pooling), 패딩(padding) 및/또는 스트라이딩(striding)이 사용될 수 있으며, 이에 따라 계산 비용을 감소시키고 및/또는 과훈련 가능성을 낮출 수 있다. 스트라이딩은 필터 윈도우가 슬라이딩하는 단계의 크기 또는 수를 설명할 수 있는 반면, 패딩은 스트라이딩 전후에 데이터를 버퍼링하기 위해 데이터의 일부 영역을 0으로 채우는 것을 포함할 수 있다. 풀링은, 예를 들어, 컨볼루션 계층 또는 임의의 다른 계층에 의해 수집된 정보를 단순화하는 것과, 계층 내에 포함된 정보의 압축된 버전을 생성하는 것을 포함할 수 있다.
일부 예에서, 영역 기반 CNN(a region-based CNN: RCNN) 또는 1차원(1-D) CNN이 사용될 수 있다. RCNN은 선택적 검색을 사용하여 이미지에서 하나 이상의 관심 영역을 식별하는 것과, 분류를 위해 각 관심 영역으로부터 독립적으로 특징을 추출하는 것을 포함한다. 하나 이상의 실시예에서 사용되는 RCNN의 유형은 Fast RCNN, Faster RCNN 또는 Mask RCNN을 포함할 수 있다. 다른 예에서, 1-D CNN은 슬라이딩 윈도우로 생성된 고정 길이 시계열 세그먼트를 처리할 수 있다. 이러한 1-D CNN은 최종 CNN 계층의 출력을 연결하기 위해 풀링 및 스트라이딩을 사용하는 다대일 구성으로 실행될 수 있다. 그런 다음, 완전 연결 계층을 사용하여 하나 이상의 시간 단계에서 클래스 예측을 생성할 수 있다.
입력 신호를 따라 고정 길이 커널을 컨벌루션하는 1-D CNN과 달리, 순환 신경망(recurrent neural networks: RNN)은 각 시간 단계를 순차적으로 처리하므로, RNN 계층의 최종 출력은 모든 선행 시간 단계의 함수이다. 특정 실시예에서, 장단기 기억(long short-term memory: LSTM) 모델로 알려진 RNN 변형이 사용될 수 있다. LSTM은 긴 시퀀스에서 시간 종속성을 모델링하기 위해 메모리 셀 및/또는 하나 이상의 제어 게이트를 포함할 수 있다. 일부 예에서, LSTM 모델은 단방향일 수 있으며, 이는 모델이 기록되거나 수신된 순서대로 시계열을 처리하는 것을 의미한다. 또 다른 예에서, 전체 입력 시퀀스가 사용될 수 있는 경우, 두 개의 병렬 LSTM 모델은 시간상 앞뒤로 반대 방향으로 평가될 수 있다. 두 개의 병렬 LSTM 모델의 결과를 연결하여 양방향으로 시간 종속성을 모델링할 수 있는 양방향 LSTM(bi-LSTM)을 형성할 수 있다.
일부 실시예에서는, 하나 이상의 CNN 모델과 하나 이상의 LSTM 모델이 조합될 수 있다. 조합된 모델은 4개의 스트라이딩되지 않은 CNN 계층의 스택을 포함할 수 있으며, 그 다음에 2개의 LSTM 계층과 소프트맥스 분류기(softmax classifier)가 뒤따를 수 있다. 소프트맥스 분류기는 입력의 지수(exponentials)에 비례하는 다수의 확률을 포함하는 확률 분포를 정규화할 수 있다. 예를 들어 CNN에 대한 입력 신호는 패딩되지 않으므로, 계층이 스트라이딩되지 않더라도 각 CNN 계층은 시계열을 여러 샘플만큼 단축한다. LSTM 계층은 단방향성이므로, 최종 LSTM 출력에 해당하는 소프트맥스 분류는 훈련 및 평가에 사용될 수 있을뿐만 아니라 슬라이딩 윈도우 세그먼트로부터 출력 시계열을 재조립하는 데 사용할 수 있다. 그러나 조합된 모델은 다대일 구성으로 작동될 수 있다.
일부 실시예에서는 변환기 기반 모델이 이미지 세그먼트에서 관련 특징을 식별하는 데 사용될 수 있다. 이는 CNN과 같은 다른 네트워크와 추가로 조합될 수 있다.
일부 실시예에서, 도 2의 머신 러닝 모델은 복수의 단계를 통해 복수의 이전에 검증된 데이터를 사용하여 훈련될 수 있다. 훈련은 두 가지 유형의 훈련 데이터를 사용하는 두 단계로 발생할 수 있다. 제1 단계에서는 슬라이드 분류 데이터가 수집될 수 있으며, 머신 러닝 모델은 슬라이드에서 유사분열상이 카운트되어야 하는지 여부를 분류하도록 훈련될 수 있다. 제2 단계에서는 자동으로 또는 보드 인증 해부 병리학자(board-certified anatomic pathologists) 및 다른 전문가의 사용을 통해 유사분열상 데이터가 수집될 수 있다.
도 3은 생검 슬라이드 분류 데이터 및 범주의 예시적 세트를 도시한다. 특정 예시적 실시예에서는, 슬라이드 이미지가 유사분열상 카운트 프로세스에 포함되어야 하는지 여부를 판정하기 위해 복수의 WSI가 수동으로 또는 컴퓨터에 의해 수집되고 분석될 수 있다. 각각의 수집된 슬라이드는 카운트 슬라이드(310) 또는 카운트 없음(no-count) 슬라이드(320)로 범주화될 수 있는데, 카운트 슬라이드(310)는 유사분열상을 검출하거나 카운트하기 위해 추가로 분석될 수 있는 반면, 카운트 없음 슬라이드(320)는 유사분열상을 카운트하기 위해 추가로 분석되지 않을 것이다. 카운트 없음 슬라이드(320)로 범주화되는 것 외에도, 슬라이드는, 예컨대, "지방종(lipomas)", "비 종양성 병변(non-neoplastic lesion)", "피부 펀치 생검(skin punch biopsies)" 및/또는 "피부 및 피하 조직"을 전체적으로 또는 부분적으로 포함하여, 카운트 없음으로 분류되는 이유를 포함하도록 추가로 분류될 수 있다. 분석된 슬라이드는 훈련 그룹과 검증 그룹의 두 그룹으로 추가로 나뉠 수 있는데, 훈련 그룹 이미지는 머신 러닝 모델을 훈련하기 위해 선택되고, 검증 그룹은 머신 러닝 모델을 검증(즉, 테스트)하거나 또는 대안적으로 훈련 그룹 이미지의 범주 할당을 검증하는 데 사용된다.
슬라이드의 범주화에 추가하여, 훈련에 사용하기 위한 유사분열상 라벨링(mitotic figure labelling)에 관한 데이터가 또한 수집될 수 있다. 슬라이드 분류와 마찬가지로, 유사분열상 라벨링은 수동으로 진행되거나 컴퓨터에 의해 자동으로 진행될 수 있다. 또한, 이러한 라벨링된 상들은 머신 러닝 모델을 훈련하고/하거나 이전에 훈련된 모델을 테스트하는 데 모두 사용될 수 있다. 특정 예시적 실시예에서, 제1 복수의 유사분열상은 하나 이상의 WSI 상에서 및/또는 이에 걸쳐 라벨링될 수 있다. 한 실험에서는 11개의 WSI에 걸쳐 54개의 유사분열상이 라벨링되었다. 그런 다음, 이들 식별된 유사분열상은 복수의 이미지 패치로서 추출될 수 있는데, 이들 각각은 각각의 패치에 대해 유사분열상에 중심을 둔 대략 150x150 픽셀을 포함한다. 그런 다음, 이러한 추출된 이미지 패치의 각각은 제1 머신 러닝 모델을 훈련하는 데 사용될 수 있고, 그런 다음 제1 머신 러닝 모델은 복수의 WSI 상에서 또는 복수의 WSI에 걸쳐 제2의 복수의 유사분열상을 식별할 수 있다. 일 실시예에서, 제2의 복수의 유사분열상은 74개의 WSI에 걸쳐 인식되었다. 이 제2의 복수의 유사분열상으로부터, (수동으로 또는 머신 러닝 알고리즘의 사용을 통해) 서브세트가 샘플링될 수 있고, 제2의 복수의 이미지 패치가 준비된다. 이 프로세스는 머신 러닝 모델이 만족스럽게 훈련될 때까지 되풀이하여 반복될 수 있다. 또한, 예를 들어, 150x150 픽셀, 600x600 픽셀 및/또는 1200x1200 픽셀과 같은 다양한 크기의 이미지 패치가 사용될 수 있다. 이러한 패치는 정사각형일 필요가 없으며, 유사분열상이 각 패치의 중앙에 있을 필요도 없다.
적절한 라벨로 식별될 수 있는 유사분열의 상이한 단계에 대응하는 유사분열 세포의 특정 특징이 식별될 수 있다. 이러한 단계는 전기(염색질과 간상체(rod)의 원형 클러스터를 포함함), 중기(표면으로부터 간상체가 돌출된 채, 선형 판, 띠 및/또는 고리를 포함하는 적도에 정렬된 염색체를 포함함), 후기(스파이크 돌출부를 가지면서 일반적으로 선형인, 가변 거리로 떨어져 있는 2개의 분리된 응집체를 포함함)를 포함할 수 있다. 또한, 형태학적 필터를 사용하여 말기(세포의 반대쪽 끝에 있는 2개의 분리된 응집체와 그 사이에 위치한 절단 홈을 포함함)가 검출될 수 있다. 머신 러닝 알고리즘 훈련의 일환으로, 모델은 이러한 다양한 특징을 식별하고, 각 개별 슬라이드 프레임에 대응하는 입력 이미지 특징을 적절하게 라벨링하도록 훈련될 수 있다. 훈련된 머신 러닝 알고리즘은 (위 내용에 따라) 이전에 라벨링된 이미지에 대해 훈련된 후 이러한 분석을 수행할 수도 있다. 훈련된(또는 훈련중인) 머신 러닝 알고리즘에 의한 자동 식별 및 라벨링 외에도, 유사분열상은 보드 인증 해부 병리학자와 같은 자격을 갖춘 관찰자에 의해 식별되고 라벨링될 수도 있다. 이렇게 수동으로 라벨링된 이미지 및 특징은 머신 러닝 알고리즘을 훈련시키거나 또는 대안적으로 이전에 훈련된 알고리즘의 정확성을 확인하는 데 사용될 수도 있다.
(훈련된 또는 훈련중인) 모델에 의해 식별된 유사분열상을 나타내기 위해 주석이 달린 이미지를 제공함으로써 추가 훈련 데이터가 개발될 수 있다. 그런 다음, 해부 병리학자와 같은 연구원이거나 완전히 훈련된 모델일 수 있는 주석 작성자는 주석이 달린 상을 검사하고 적절한 라벨을 적용할 수 있다. 예를 들어, 식별된 유사분열상이 모두 정확하면, 이미지에 "정확함"이라는 라벨이 추가될 수 있다. 식별된 유사분열상이 모두 부정확한 경우 이미지에 "부정확함"이라는 라벨이 추가될 수 있다. 식별된 유사분열상이 정확한 것과 부정확한 것의 혼합인 경우, 이 단계에서는 유사분열상을 포함한 이미지의 부분을 포함하도록 상에 주석이 달릴 수 있다. 그런 다음, 도 4와 관련하여 본 명세서에 설명되는 바와 같이 이러한 마킹된 이미지에는 마스크가 적용될 수 있다. 일단 모든 이미지가 검토되고 적절하게 라벨링되면, 데이터가 수집되고 훈련 세트에 추가될 수 있다.
도 4는 특정 실시예에 따른 머신 러닝 모델의 예시적 구성요소를 도시한다. 특히, 도 4는 생성적 적대 신경망(generative adversarial network: "GAN")을 사용하여 훈련 데이터를 보강하는 예시적 방법을 도시한다. 이 예시적 방법에서는, 특정 형상 및 크기를 갖는 하나 이상의 실제 마스크 특징(410)이 입력 이미지(420)와 비교될 수 있다. 다시 말해, 특정 실시예에서, 머신 러닝 툴은 입력 이미지(420)를 마스킹된 특징(410)으로 변환할 수 있으며, 그런 다음, 마스킹된 특징(410)은 데이터베이스에 저장된 유사한 크기 및/또는 형상의 다른 이미지와 비교될 수 있다. 다른 특정 비제한적 실시예에서는, 다른 이미지(440)가 상이한 배향, 크기 및 형상의 조밀한 조직 영역을 포함하더라도, 단일 마스크 특징(430)이 이미지(440)와 비교될 수 있다. 따라서, 머신 러닝 툴에 의해 입력된 이미지는 크기, 형상 및/또는 배향이 상이한 이미지(440)와 비교될 수 있도록 조정 또는 조작될 수 있다. 다른 대안으로서, 마스크 특징(410, 430)은 훈련 또는 테스트를 위한 합성 데이터를 생성하는 데 사용될 수 있다. 마스크는 입력 이미지에 적용되어 마스크들 중 하나의 변환에 기초하여 유사분열을 갖는 이미지를 생성할 수 있다. 전술한 바와 같이, 마스크 특징은 또한 병리학자에 의해 수동으로 적용될 수 있거나(예컨대, 450), 또는 대안적으로 샘플 주석 이미지(예컨대, 460)가 추가 평가 및/또는 검증을 위해 병리학자에게 제시될 수 있다.
도 5는 머신 러닝 시스템을 사용하여 암을 식별하기 위한 예시적 방법(500)을 도시한다. 이 방법은 시스템이 의료용 이미징 디바이스로부터 하나 이상의 특징을 포함하는 반려동물의 이미지를 수신하는 제1 단계(510)에서 시작할 수 있다. 제2 단계(520)에서, 시스템은 이미지에 기초하여 하나 이상의 특징의 각각에 대한 대응하는 분류를 결정할 수 있는데, 분류는 머신 러닝 모델에 의해 생성되고, 분류는 하나 이상의 특징과 연관된다. 제3 단계(530)에서, 시스템은 결정된 분류에 기초하여 반려동물의 이미지에서 유사분열 세포를 결정할 수 있다. 개시된 청구대상에 따르면, 적절한 경우, 방법은 도 5의 방법의 하나 이상의 단계를 반복할 수 있다. 본 개시는 도 5의 방법의 특정 단계들을 특정 순서로 발생하는 것으로 설명하고 예시하지만, 본 개시는 임의의 적절한 순서로 발생하는 도 5의 방법의 임의의 적절한 단계를 고려한다. 또한, 본 개시는 도 5의 방법의 특정 단계를 포함하는 암을 식별하는 예시적 방법을 설명하고 예시하지만, 본 개시는, 적절한 경우, 도 5의 방법의 단계들의 전부 또는 일부를 포함하거나 전혀 포함하지 않을 수도 있는 임의의 적절한 단계를 포함하는 암을 식별하기 위한 임의의 적절한 방법을 고려한다. 또한, 본 개시는 도 5의 방법의 특정 단계를 수행하는 특정 구성요소, 디바이스 또는 시스템을 설명하고 예시하지만, 본 개시는 도 5의 방법의 임의의 적절한 단계를 수행하는 임의의 적절한 구성요소, 디바이스 또는 시스템의 임의의 적절한 조합을 고려한다.
도 6은 일부 비제한적 실시예에 따른, 머신 러닝 툴를 사용하여 유사분열 세포 식별을 용이하게 하는 데 사용되는 예시적 컴퓨터 시스템(600)을 도시한다. 특정 비제한적 실시예에서는, 하나 이상의 컴퓨터 시스템(600)이 본 명세서에서 설명되거나 예시된 하나 이상의 방법의 하나 이상의 단계를 수행한다. 다른 특정 비제한적 실시예에서, 하나 이상의 컴퓨터 시스템(600)은 본 명세서에서 설명되거나 예시된 기능을 제공한다. 특정 비제한적 실시예에서, 하나 이상의 컴퓨터 시스템(600) 상에서 실행되는 소프트웨어는 본 명세서에서 설명되거나 예시된 하나 이상의 방법의 하나 이상의 단계를 수행하거나 본 명세서에서 설명되거나 예시된 기능을 제공한다. 일부 비제한적 실시예는 하나 이상의 컴퓨터 시스템(600)의 하나 이상의 부분을 포함한다. 여기서, 적절한 경우, 컴퓨터 시스템에 대한 언급은 컴퓨팅 디바이스를 포함할 수 있으며, 그 반대도 가능하다. 또한, 적절한 경우, 컴퓨터 시스템에 대한 언급은 하나 이상의 컴퓨터 시스템을 포함할 수 있다.
본 개시는 임의의 적절한 수의 컴퓨터 시스템(600)을 고려한다. 본 개시는 임의의 적절한 물리적 형태를 취하는 컴퓨터 시스템(600)을 고려한다. 제한이 아닌 예로서, 컴퓨터 시스템(600)은, 임베디드 컴퓨터 시스템, 시스템 온 칩(SOC), 단일 보드 컴퓨터 시스템(SBC)(예컨대, 컴퓨터 온 모듈(COM) 또는 시스템 온 모듈(SOM)), 데스크톱 컴퓨터 시스템, 랩톱 또는 노트북 컴퓨터 시스템, 대화형 키오스크, 메인프레임, 컴퓨터 시스템의 메시, 휴대폰, PDA(personal digital assistant), 서버, 태블릿 컴퓨터 시스템, 증강/가상 현실 디바이스, 또는 이들 중 둘 이상의 조합일 수 있다. 적절한 경우, 컴퓨터 시스템(600)은 하나 이상의 컴퓨터 시스템(600)을 포함할 수 있거나, 단일형 또는 분산형일 수 있거나, 여러 위치에 걸쳐 있거나, 여러 머신에 걸쳐 있거나, 여러 데이터 센터에 걸쳐 있거나, 또는 하나 이상의 네트워크 내에 하나 이상의 클라우드 구성요소를 포함할 수 있는 클라우드에 상주할 수 있다. 적절한 경우, 하나 이상의 컴퓨터 시스템(600)은 실질적인 공간적 또는 시간적 제한 없이 본 명세서에서 설명되거나 예시된 하나 이상의 방법의 하나 이상의 단계를 수행할 수 있다. 제한이 아닌 예로서, 하나 이상의 컴퓨터 시스템(600)은 실시간으로 또는 배치 모드에서 본 명세서에 기술되거나 예시된 하나 이상의 방법의 하나 이상의 단계를 수행할 수 있다. 적절한 경우, 하나 이상의 컴퓨터 시스템(600)은 상이한 시간에 또는 상이한 위치에서 본 명세서에서 설명되거나 예시된 하나 이상의 방법의 하나 이상의 단계를 수행할 수 있다.
특정 비제한적 실시예에서, 컴퓨터 시스템(600)은 프로세서(602), 메모리(604), 저장소(606), 입력/출력(I/O) 인터페이스(608), 통신 인터페이스(610) 및 버스(612)를 포함한다. 본 개시는 특정 배열로 특정 개수의 특정 구성요소를 갖는 특정 컴퓨터 시스템을 설명하고 예시하지만, 본 개시는 임의의 적절한 배열로 임의의 적절한 수의 임의의 적절한 구성요소를 갖는 임의의 적절한 컴퓨터 시스템을 고려한다.
일부 비제한적 실시예에서, 프로세서(602)는 컴퓨터 프로그램을 구성하는 명령어와 같은 명령어를 실행하기 위한 하드웨어를 포함한다. 제한이 아닌 예로서, 명령어를 실행하기 위해, 프로세서(602)는 내부 레지스터, 내부 캐시, 메모리(604) 또는 저장소(606)로부터 명령어를 검색(또는 인출)할 수 있고, 이들을 디코딩 및 실행할 수 있고, 그런 다음, 하나 이상의 결과를 내부 레지스터, 내부 캐시, 메모리(604) 또는 저장소(606)에 기록할 수 있다. 특정 비제한적 실시예에서, 프로세서(602)는 데이터, 명령어 또는 주소에 대한 하나 이상의 내부 캐시를 포함할 수 있다. 본 개시는 적절한 경우 임의의 적절한 수의 임의의 적절한 내부 캐시를 포함하는 프로세서(602)를 고려한다. 제한이 아닌 예로서, 프로세서(602)는 하나 이상의 명령어 캐시, 하나 이상의 데이터 캐시, 및 하나 이상의 변환 색인 버퍼(translation lookaside buffers: TLB)를 포함할 수 있다. 명령어 캐시에 있는 명령어는 메모리(604) 또는 저장소(606)에 있는 명령어의 사본일 수 있으며, 명령어 캐시는 프로세서(602)에 의한 이러한 명령어의 검색의 속도를 높일 수 있다. 데이터 캐시에 있는 데이터는, 프로세서(602)에서 실행되는 명령어가 작동하는 메모리(604) 또는 저장소(606)에 있는 데이터, 프로세서(602)에서 실행되는 후속 명령어에 의한 액세스 또는 메모리(604) 또는 저장소(606)에의 기록을 위한 프로세서(602)에서 실행된 이전 명령어의 결과, 또는 다른 적절한 데이터의 사본일 수 있다. 데이터 캐시는 프로세서(602)에 의한 판독 또는 기록 동작의 속도를 높일 수 있다. TLB는 프로세서(602)에 대한 가상 주소 변환의 속도를 높일 수 있다. 일부 비제한적 실시예에서, 프로세서(602)는 데이터, 명령어 또는 주소에 대한 하나 이상의 내부 레지스터를 포함할 수 있다. 본 개시는 적절한 경우 임의의 적절한 수의 임의의 적절한 내부 레지스터를 포함하는 프로세서(602)를 고려한다. 적절한 경우, 프로세서(602)는 하나 이상의 산술 논리 유닛(arithmetic logic units: ALU)을 포함할 수 있거나, 멀티 코어 프로세서일 수 있거나, 또는 하나 이상의 프로세서(602)를 포함할 수 있다. 본 개시는 특정 프로세서를 설명하고 예시하지만, 본 개시는 임의의 적절한 프로세서를 고려한다.
일부 비제한적 실시예에서, 메모리(604)는 프로세서(602)가 실행할 명령어 또는 프로세서(602)가 작동할 데이터를 저장하기 위한 메인 메모리를 포함한다. 제한이 아닌 예로서, 컴퓨터 시스템(600)은 저장소(606) 또는 다른 소스(예컨대, 다른 컴퓨터 시스템(600))로부터 메모리(604)로 명령어를 로드할 수 있다. 그런 다음, 프로세서(602)는 메모리(604)로부터 내부 레지스터 또는 내부 캐시로 명령어를 로드할 수 있다. 명령어를 실행하기 위해, 프로세서(602)는 내부 레지스터 또는 내부 캐시로부터 명령어를 검색하고 이를 디코딩할 수 있다. 명령어의 실행 중에 또는 실행 후에 프로세서(602)는 하나 이상의 결과(중간 또는 최종 결과일 수 있음)를 내부 레지스터 또는 내부 캐시에 기록할 수 있다. 그런 다음, 프로세서(602)는 이러한 결과 중 하나 이상을 메모리(604)에 기록할 수 있다. 일부 비제한적인 실시예에서, 프로세서(602)는 (저장소(606) 또는 다른 곳이 아닌) 하나 이상의 내부 레지스터 또는 내부 캐시 또는 메모리(604) 내의 명령어만 실행하고, (저장소(606) 또는 다른 곳이 아닌) 하나 이상의 내부 레지스터 또는 내부 캐시 또는 메모리(604) 내의 데이터에 대해서만 작동한다. 하나 이상의 메모리 버스(주소 버스와 데이터 버스를 각각 포함할 수 있음)는 프로세서(602)를 메모리(604)에 결합할 수 있다. 버스(612)는 아래에 설명된 바와 같이 하나 이상의 메모리 버스를 포함할 수 있다. 특정 비제한적 실시예에서, 하나 이상의 메모리 관리 유닛(memory management units: MMU)은 프로세서(602)와 메모리(604) 사이에 존재하고, 프로세서(602)에 의해 요청된 메모리(604)에 대한 액세스를 용이하게 한다. 다른 특정 비제한적 실시예에서, 메모리(604)는 랜덤 액세스 메모리(RAM)를 포함한다. 이 RAM은 적절한 경우 휘발성 메모리일 수 있다. 적절한 경우, 이 RAM은 DRAM(dynamic RAM) 또는 SRAM(static RAM)일 수 있다. 또한 적절한 경우, 이 RAM은 단일 포트 또는 다중 포트 RAM일 수 있다. 본 개시는 임의의 적절한 RAM을 고려한다. 메모리(604)는 적절한 경우 하나 이상의 메모리(604)를 포함할 수 있다. 본 개시는 특정 메모리 구성요소를 설명하고 예시하지만, 본 개시는 임의의 적절한 메모리를 고려한다.
일부 비제한적 실시예에서, 저장소(606)는 데이터 또는 명령어를 위한 대용량 저장소를 포함한다. 제한이 아닌 예로서, 스토리지(606)는 하드 디스크 드라이브(HDD), 플로피 디스크 드라이브, 플래시 메모리, 광 디스크, 자기 광 디스크, 자기 테이프, 또는 범용 직렬 버스(USB) 드라이브 또는 이들 중 둘 이상의 조합을 포함할 수 있다. 저장소(606)는 적절한 경우 이동식 또는 비이동식(또는 고정식) 매체를 포함할 수 있다. 저장소(606)는 적절한 경우 컴퓨터 시스템(600)의 내부 또는 외부에 있을 수 있다. 특정 비제한적 실시예에서, 저장소(606)는 비휘발성 솔리드-스테이트 메모리이다. 일부 비제한적 실시예에서, 저장소(606)는 ROM(read-only memory)을 포함한다. 적절한 경우, 이 ROM은 마스크 프로그래밍 ROM, PROM(programmable ROM), EPROM(erasable PROM), EEPROM(electrically erasable PROM), EAROM(electrically alterable ROM), 또는 플래시 메모리, 또는 이들 중 둘 이상의 조합을 포함할 수 있다. 본 개시는 임의의 적절한 물리적 형태를 취하는 대용량 저장소(606)를 고려한다. 저장소(606)는 적절한 경우 프로세서(602)와 저장소(606) 사이의 통신을 용이하게 하는 하나 이상의 저장소 제어 유닛을 포함할 수 있다. 적절한 경우, 저장소(606)는 하나 이상의 저장소(606)를 포함할 수 있다. 본 개시는 특정 저장소를 설명하고 예시하지만, 본 개시는 임의의 적절한 저장소를 고려한다.
특정 비제한적 실시예에서, I/O 인터페이스(608)는, 컴퓨터 시스템(600)과 하나 이상의 I/O 디바이스 간의 통신을 위한 하나 이상의 인터페이스를 제공하는, 하드웨어, 소프트웨어 또는 둘 모두를 포함한다. 컴퓨터 시스템(600)은 적절한 경우 이러한 I/O 디바이스들 중 하나 이상을 포함할 수 있다. 이러한 I/O 디바이스들 중 하나 이상은 사람과 컴퓨터 시스템(600) 사이의 통신을 가능하게 할 수 있다. 제한이 아닌 예로서, I/O 디바이스는, 키보드, 키패드, 마이크, 모니터, 마우스, 프린터, 스캐너, 스피커, 스틸 카메라, 스타일러스, 태블릿, 터치 스크린, 트랙볼, 비디오 카메라, 다른 적절한 I/O 디바이스 또는 이들 중 둘 이상의 조합을 포함할 수 있다. I/O 디바이스는 하나 이상의 센서를 포함할 수 있다. 본 개시는 임의의 적절한 I/O 디바이스 및 이들을 위한 임의의 적절한 I/O 인터페이스(608)를 고려한다. 적절한 경우, I/O 인터페이스(608)는 프로세서(602)로 하여금 이러한 I/O 디바이스들 중 하나 이상을 구동할 수 있게 하는 하나 이상의 디바이스 또는 소프트웨어 드라이버를 포함할 수 있다. I/O 인터페이스(608)는 적절한 경우 하나 이상의 I/O 인터페이스(608)를 포함할 수 있다. 본 개시는 특정 I/O 인터페이스를 설명하고 예시하지만, 본 개시는 임의의 적절한 I/O 인터페이스를 고려한다.
일부 비제한적 실시예에서, 통신 인터페이스(610)는, 컴퓨터 시스템(600)과 하나 이상의 다른 컴퓨터 시스템 또는 하나 이상의 네트워크 사이의 통신(예컨대, 패킷 기반 통신)을 위한 하나 이상의 인터페이스를 제공하는, 하드웨어, 소프트웨어, 또는 둘 모두를 포함한다. 제한이 아닌 예로서, 통신 인터페이스(610)는, 이더넷 또는 다른 유선 기반 네트워크 또는 무선 NIC(WNIC)와 통신하기 위한 네트워크 인터페이스 제어기(network interface controller: NIC) 또는 네트워크 어댑터, 또는 WI-FI 네트워크와 같은 무선 네트워크와 통신하기 위한 무선 어댑터를 포함할 수 있다. 본 개시는 임의의 적절한 네트워크 및 이를 위한 임의의 적절한 통신 인터페이스(610)를 고려한다. 제한이 아닌 예로서, 컴퓨터 시스템(600)은, 애드혹 네트워크, 개인 영역 네트워크(personal area network: PAN), 근거리 네트워크(local area network: LAN), 광역 네트워크(wide area network: WAN), 대도시 영역 네트워크(metropolitan area network: MAN), 또는 인터넷의 하나 이상의 부분, 또는 이들 중 둘 이상의 조합과 통신할 수 있다. 하나 이상의 이러한 네트워크의 하나 이상의 부분은 유선 또는 무선일 수 있다. 예를 들어, 컴퓨터 시스템(600)은 무선 PAN(WPAN)(예컨대, BLUETOOTH WPAN), WI-FI 네트워크, WI-MAX 네트워크, 셀룰러 전화 네트워크(예컨대, GSM(Global System for Mobile Communications) 네트워크), 또는 다른 적절한 무선 네트워크, 또는 이들 중 둘 이상의 조합과 통신할 수 있다. 컴퓨터 시스템(600)은 적절한 경우 이들 네트워크 중 임의의 것을 위한 임의의 적절한 통신 인터페이스(610)를 포함할 수 있다. 통신 인터페이스(610)는 적절한 경우 하나 이상의 통신 인터페이스(610)를 포함할 수 있다. 본 개시는 특정 통신 인터페이스를 설명하고 예시하지만, 본 개시는 임의의 적절한 통신 인터페이스를 고려한다.
특정 비제한적 실시예에서, 버스(612)는, 컴퓨터 시스템(600)의 구성요소들을 서로 결합시키는 하드웨어, 소프트웨어, 또는 둘 모두를 포함한다. 제한이 아닌 예로서, 버스(612)는, AGP(Accelerated Graphics Port) 또는 다른 그래픽 버스, EISA(Enhanced Industry Standard Architecture) 버스, FSB(front-side bus), HT(HYPERTRANSPORT) 상호접속, ISA(Industry Standard Architecture) 버스, INFINIBAND 상호접속, LPC(Low-Pin-Count) 버스, 메모리 버스, MCA(Micro Channel Architecture) 버스, PCI(Peripheral Component Interconnect) 버스, PCI -Express(PCIe) 버스, SATA(Serial Advanced Technology Attachment) 버스, VLB(Video Electronics Standards Association local) 버스, 또는 다른 적절한 버스, 또는 이들 중 둘 이상의 조합을 포함한다. 버스(612)는 적절한 경우 하나 이상의 버스(612)를 포함할 수 있다. 본 개시는 특정 버스를 설명하고 예시하지만, 본 개시는 임의의 적절한 버스 또는 상호접속을 고려한다.
특정 비제한적 실시예는 개시된 시스템 및 방법을 임상 설정에서 사용하는 시스템 아키텍처에 관한 것이다. 그러한 비제한적인 실시예에서, 하나 이상의 딥 러닝 모델 또는 머신 러닝 모델이 사용되어 실시간으로 업로드된 하나 이상의 스캔에서 작동할 수 있다. 시스템 아키텍처의 리소스가 사용될 수 있는 경우, 하나 이상의 WSI가 장치로 다운로드될 수 있다. 예를 들어, WSI는 224 x 224 픽셀의 섬네일을 포함할 수 있다. 일부 비제한적 실시예에서, 생검 슬라이드 분류(Biopsy Slide Classification)가 실행될 수 있다. 분류자가 "카운트 없음"를 반환하면 프로세스가 중단될 수 있다. 분류자가 "카운트"를 반환하면 다음 단계가 수행될 수 있다. 다음 단계는 조직 검출 알고리즘을 실행하는 것을 포함할 수 있다. 조직 검출 알고리즘은 전경(foreground)을 검출하고, (모델 기반) 유사분열상 검출기를 위한 하나 이상의 좌표를 계산할 수 있다. 예를 들어, 알고리즘은 비-모델 기반 알고리즘일 수 있다. 유사분열상 검출기 모델은 계산된 모든 좌표에 대해 실행될 수 있다. 그런 다음, 픽셀 마스크가 예측될 수 있다. 예측 성능을 향상시키기 위해 임계화(thresholding) 및/또는 형태학적 필터 중 적어도 하나가 적용될 수 있다. 이러한 필터는 적절한 크기, 색상 또는 형상의 마스크를 포함하지 않는 이미지를 선택하여 유사분열 필터를 포함하지 않는 임의의 마킹된 픽셀을 제거할 수 있다.
일부 비제한적 실시예에서, 향상된 픽셀 마스크로부터 유사분열상의 좌표를 계산하기 위해 제2 비-모델 기반 알고리즘이 사용될 수 있다. 10-고배율 필드 하위 영역과 같은 유사분열 세포의 식별된 좌표를 사용하여 WSI의 하위 영역을 찾기 위해, k-차원 공간에서 포인트를 구성하기 위한 공간 분할식 효율적 이진 트리 데이터 구조일 수 있는 k-차원 트리(KD-tree)가 사용될 수 있다. 이 하위 영역은 WSI에서 가장 높은 유사분열 세포 농도를 나타낸다. 특정 실시예에서, 2차원 검색 공간 내의 KD-트리는 O(n log n)의 데이터 구조를 구축할 수 있고, O(√n + k)의 범위 보고 쿼리를 처리할 수 있는데, 여기서 n은 포인트의 총 수를 나타낼 수 있고, k는 보고된 포인트의 수를 나타낼 수 있으며, 각 포인트는 WSI의 2D 평면에서 고유한 유사분열 세포 중심 좌표를 지칭한다. 하나 이상의 유사분열상과 10-고배율 필드의 좌표는 XML(extensible markup language) 파일 또는 임의의 다른 데이터 파일에 기록될 수 있으며, 결과는 데이터베이스에 기록될 수 있다. 본 명세서에 기재된 이러한 특정 제2 비-모델 기반 알고리즘은 다수의 검색 하위 영역 형상 및 크기에 걸쳐 일반화되며 정사각형 형상에 의해 제한되지 않고, 이것은 L^p 공간의 공에 의해 경계가 정해진 형상을 취하는 가장 높은 농도의 임의의 하위 영역을 찾을 수 있는데, 여기서 L^p 공간은 주어진 두 포인트 사이의 거리에 대한 정의된 개념을 갖는 벡터 공간이다(예컨대, p = 2는 유클리드 노름 벡터 공간임). 이 알고리즘은 정사각형 형상[p = 무한대], 다이아몬드 형상[p = 1] 및 원형 형상[p = 2] 등과 같은 다른 형상으로 둘러싸인 가장 높은 유사분열 농도의 하위 영역을 식별하는 데 사용할 수 있다. 인용된 알고리즘은 또한 가장 높은 유사분열 농도의 하위 영역(즉, 사용 가능한 메모리에 의해 경계가 정해지는 10, 20 또는 50과 같은 다수의 고배율 필드)의 임의의 크기로 일반화된다.
본 명세서에서 설명된 모델들은 뷰어 워크플로에 통합될 수 있다. 예를 들어, 관찰자는 병리학자 및/또는 의료 전문가일 수 있다. 예를 들어, 병리학자는 XML 파일로부터 렌더링되는 주석으로서 하나 이상의 모델로부터의 정보를 수신할 수 있다. XML 파일은 임의의 알려진 WSI 뷰어를 사용하여 검토될 수 있다. 수신 후 뷰어는 추가 주석을 제공할 수 있다. 예를 들어 거짓 양성 및/또는 거짓 음성에 주석이 달릴 수 있다. 뷰어가 만든 주석은 데이터베이스에 저장될 수 있으며, 검출 모델을 미세 조정하거나 훈련하는 데 사용될 수 있다. 미세 조정 또는 검출 모델은 피드백 또는 주석의 양에 기초하여 수행될 수 있다.
특정 비제한적 실시예에서, 유사분열상의 카운트를 지원하기 위해 다양한 단계에서 비-모델 기반 알고리즘이 사용될 수 있다. 예를 들어, 조직 검출은 WSI의 저해상도 뷰에서 거친 조직 분할에 의해 수행될 수 있다. 저해상도 이미지는 유사분열상 검출기의 슬라이딩 윈도우 크기 및/또는 고해상도 이미지 크기 중 적어도 하나와 일치하도록 크기가 조정될 수 있다. 예를 들어, 유사분열상 검출기의 슬라이딩 윈도우는 고해상도 이미지 폭의 정수(whole number)일 수 있다. 그런 다음, 저해상도 이미지는 Lab 색공간 이미지로 변환될 수 있다. 오츠(Otsu) 임계 기술과 같은 임계값 검출 기술을 사용하여 이미지 L 채널에 이진 이미지 임계값이 적용될 수 있다. 그런 다음, 노이즈를 제거하고 조직 경계를 개선하기 위해, 이러한 변환된 이미지에 대해 생성된 이진 이미지 확장, 침식 및 블러링(blurring)이 수행될 수 있다.
전술한 바와 같이, 픽셀 마스크 예측을 수행하기 위해 비-모델 기반 알고리즘이 사용될 수 있다. 예를 들어, 추론 결과를 개선하고, 거짓 긍정을 줄이고, 및/또는 10-고배율 필드 영역 위치의 예측을 개선하기 위해, 기하학적 및/또는 형태학적 절차가 수행될 수 있다. 일부 비제한적 실시예에서, 주어진 이진 마스크의 연결된 구성요소들을 계산하고 연결된 픽셀들을 고유한 정수 라벨로 라벨링함으로써 유사분열상 인스턴스 분할이 수행될 수 있다. 이러한 방식으로, 특정 후보 유사분열상 인스턴스에 속하는 픽셀은 고유한 정수를 취득할 수 있다. 특정 비제한적 실시예에서, 비정상적으로 작은 크기의 유사분열상은 제외될 수 있다. 약 3 미크론의 크기는 유사분열상 폭을 따른 최소 허용가능 크기일 수 있다. 이 최소 허용가능 크기를 활용하기 위해, 알고리즘은 유사분열상 마스크의 근사 윤곽(approximated contour)을 둘러싸는 최소 영역의 회전된 직사각형을 결정할 수 있다. 그런 다음, 회전된 직사각형의 최대값(높이, 폭)으로서 폭이 측정될 수 있다. 그런 다음, 적절한 유사분열상이 제외될 수 있다. 그런 다음, 유사분열 후기 단계에서의 유사분열상이 카운트될 수 있다. 유사분열 후기 단계에서의 유사분열상들은 예를 들어 유사분열 과정에서 이들을 분리시키는 작은 거리로 인해 이중으로 카운트될 수 있다. 이러한 이중 카운트를 줄이기 위해, 커널 크기 및 유사분열 세포 극간 거리에 비례하는 다수의 거듭된 확장 반복을 통해 이진 픽셀 마스크를 확장시키는 알고리즘이 실행될 수 있으므로, 주어진 극간 거리 내의 유사분열상 인스턴트들은 단일 인스턴스로 카운트될 수 있다. 그런 다음, 연결된 구성요소들에는 고유한 유사분열상 식별이 할당될 수 있다.
특정 비제한적 실시예에서, 가장 높은 카운트의 유사분열상을 갖는 10-고배율 필드를 찾기 위해 KD-트리 기반 알고리즘(또는 다른 머신 러닝 알고리즘)이 사용될 수 있다. 유사분열 카운트를 보고하기 위한 정사각형 영역일 수 있는 10-고배율 필드(10 HPF)는 WSI svs 형식(또는 다른 의료용 이미징 파일 유형)을 사용하여 픽셀 크기로 변환될 수 있다. 예를 들어, 정사각형 영역은 2.37mm2 정사각형 영역일 수 있다. 유사분열상 중심의 주어진 좌표와 같이 최대 유사분열상 카운트를 갖는 10-고배율 필드를 찾기 위해, 범위 검색 내에서 알고리즘이 수행될 수 있으며, 특정 예에서 범위는 2차원일 수 있다. 알고리즘은 에 중심을 두고 10-고배율 필드 내의 모든 유사분열상을 찾고 카운트하도록 구성될 수 있는데, 여기서 S는 R2 내의 N개 포인트의 세트일 수 있고, R은 R2 내의 범위 패밀리일 수 있지만 다른 범위도 고려된다. 중심은 , i ∈ [1, N]을 사용하여 표현될 수 있는데, 여기서 N은 검출된 유사분열상의 총 수이다. 예를 들어 알고리즘은, 2차원 공간에서 두 포인트 P1과 P2 사이의 거리가 DChebyshev (P1,P2) = max(|XP1 - XP2 |,|YP1 - YP2 |)로 정의되도록, 거리 메트릭 놈(norm)(체비쇼프의 거리(Chebyshev's distance)라고도 함)을 사용하여 N개의 2차원 포인트(즉, 모든 검출된 유사분열상의 중심) 세트에 대한 KD-트리를 구축하는 것을 포함할 수 있다. 반지름이 r인 원으로 둘러싸인 유클리드 메트릭을 갖는 공간 내의 영역은 체비쇼프의 거리에서 변이 2*r인 정사각형으로 둘러싸인 영역일 수 있다. 그런 다음, 알고리즘은, N개의 2차원 포인트의 세트 내의 각 포인트에 대해, 반경 R = (HPF side )/2 내의 이웃에 대한 트리를 쿼리할 수 있는데, 여기서 HPF side 는 정사각형인 10 HPF 영역의 한 변의 길이를 나타낸다. 가능한 모든 10HPF 영역의 코너 세트는, MF 중심의 X와 Y 좌표 간의 조합으로부터 도출되거나 또는 MF 중심의 X와 Y 좌표 간의 데카르트 곱으로 도출된 세트일 수 있다. KD-트리 검색을 위한 포인트를 쿼리하기 위해, 가능한 모든 10 HPF 영역 코너는 10 HPF 반경을 추가함으로써 중심으로 변환될 수 있다. 제안된 각 10 HPF 중심에 대해, 10 HPF 반경의 모든 이웃에 대해 단계 1에서 구축된 KD-트리가 쿼리될 수 있다. 그런 다음, 알고리즘은 최대 이웃 수를 갖는 포인트를 보고할 수 있다.
도 7은 예시적 생검 슬라이드 분류 결과를 도시한다. "카운트" 슬라이드(710)는 생검 슬라이드 분류 알고리즘의 실행 동안 검출된 이미지 특징에 기초하여 슬라이드가 암을 포함할 가능성이 높은 것을 나타낼 수 있다. "카운트 없음" 슬라이드(720)는 생검 슬라이드 분류 알고리즘의 실행 중에 암이 검출되지 않았음을 나타낼 수 있다. 또한, 이 도면은 "카운트" 슬라이드(710)로 범주화되고 유사분열상(740)를 나타내기 위해 완전히 주석 달린 슬라이드(730)로 편집된 예시적 슬라이드를 보여준다. 이 주석은 수동으로, 또는 위에서 논의된 바와 같이, 또는 머신 러닝(또는 인공지능) 알고리즘에 의해 자동으로 수행될 수 있다. 확대된 부분에서 알 수 있는 바와 같이, 완전히 주석 달린 슬라이드(730)는 식별된 유사분열상(740)의 예를 보여준다.
도 8은 특정 비제한적 실시예를 구현하기 위한 배포된 분산형 아키텍처의 예를 도시한다. 탈중앙식(decentralized) 비동기 구조는 다양한 확장 가능한 블록을 포함할 수 있다. 이러한 확장 가능한 블록은 관리 프로그램, 예를 들어, 파이썬(Python) 대기열 관리 프로그램을 포함할 수 있다. 추가 실시예에서, 관리 프로그램은 다운로드 작업자(860), 추론 작업자(870) 및 후처리 작업자(880)와 같은 파이썬 "작업자" 프로그램을 포함할 수 있다. 다운로드 작업자(860)는 슬라이드(810)의 네트워크 풀로부터 슬라이드를 수신하는 다운로드 대기열(840)로부터 복수의 슬라이드를 다운로드할 수 있다. 다운로드 작업자(860)는 추론 대기열(830)로부터 추론 작업자(870)에 의해 액세스될 수 있는 슬라이드의 로컬 버퍼를 생성할 수 있다. 추론 작업자(870)는 슬라이드를 수신하고 이를 처리하여 유사분열상을 추출할 수 있다. 그러한 동작은 예를 들어 그래픽 처리 유닛(GPU) 가용성을 포함하는 다양한 요인에 기초하여 다수의 추론 작업자(870)에게 분산될 수 있다. 그런 다음, 후처리 작업자(880)는 후처리 대기열(820)로부터 슬라이드를 수신할 수 있고, 위에서 설명한 바와 같이 후처리 단계를 실행할 수 있으며, 최종 결과를 병리학자 뷰어(850)에게 제공할 수 있다. 각 유형의 작업자(860, 870, 880)는 자체 대기열(820, 830, 840)을 가질 수 있다. 각 작업자는 하나 이상의 도커 컨테이너를 포함할 수 있는데, 각 컨테이너는 자신의 기능에 특정적인 소프트웨어, 라이브러리 및 구성 파일의 개별 번들을 포함한다.
특정 비제한적 실시예에 따르면, 도 8에 도시된 아키텍처는, 훈련된 인공지능을 활용함으로써, 훈련된 인공지능 없이 수행된 유사분열 카운트보다 더 정확한 유사분열 카운트를 생성할 수 있다. 아래의 표 1에서 알 수 있듯이, 임의의 인공지능의 사용 없이 관찰자(즉, 병리학자)에 의해 달성될 수 있는 결과에 비해, 인공지능의 사용에 의해 유사분열상 카운트의 등급(즉, 순위)가 향상될 수 있다. 인공지능의 지원을 받는 병리학자도 지원을 받지 않는 병리학자보다 더 나은 결과를 달성할 수 있다.
각 방법 i(AI 지원 있음, AI 단독 및 지원 없음) 및 각 암 유형 j(아래 표 4 참조)에 대해 유사분열 카운트 yij는 푸아송 회귀(Poisson regression)를 사용하여 모델링될 수 있다:
여기서 λi는 유사분열 카운트를 찾는 데 사용된 방법에 대한 제어이고, βj는 암 유형들 간의 변동에 대한 조정이다. 표 2에서 계수 eλi는 암 유형을 제어한 후의 상대 유사분열 카운트를 나타낸다:
도 9에 도시된 바와 같이, 세 가지 주요 효과에 대한 전체 사후 확률(posterior)이 가독성을 위해 로그 스케일로 표시된다. 결과는 그러한 시스템이 높은 처리량의 다-부위 수의 진단 병리학 서비스(a high throughput multi-site veterinary diagnostic pathology service)의 작업 흐름 및 시간 제약 내에서 배포 가능함을 보여주고, 유사분열상 카운트의 자동화가 상당한 실험실 효율성을 가져올 뿐만 아니라 유사분열 카운트의 정확도를 향상시킨다는 것을 보여준다. 테스트 단계에서 하루 평균 3,323개의 전체 슬라이드 이미지에 대한 추론이 수행되었으며, 제시된 시스템의 확장성은 시스템의 능력에 따라 워크로드가 증가함을 나타낸다.
도 10은 본 명세서에 설명된 것과 같은 훈련된 인공지능 모델의 사용 및/또는 지원을 통해 달성될 수 있는 개(c) 및 고양이(F) 신생물의 유사분열 카운트 정확도의 예시적 개선을 보여주는 차트를 도시한다. 알 수 있듯이, 대부분의 사례 연구에서, 인공지능 단독은 인공지능 지원 있는 카운트 및 인공지능 지원 없는(즉, 개인이 수행한 것) 카운트보다 더 많은 유사분열상을 검출했다. 이들 카운트의 전체 결과는 아래의 표 3에 제시되어 있는데, 표 3은 종양 유형을 포함하지만 이에 제한되지 않는 다수의 요인에 따라 특정 실시예에서의 개선을 보여주는 복수의 예시적 테스트의 결과를 나타낸다. "위" 및 "아래" 화살표는 병리학자에 의한 AI 지원 없는 MC에 비해 AI 지원 있는 MC 평균이 증가했는지 또는 감소했는지를 나타낸다.
본 예시적 실시예에 따른 시스템 및 방법은 이전 방법에 대한 개선을 제공한다. 예를 들어, 아래의 표 4에 나타낸 바와 같이, 실시예에 따른 KD-트리 방법은 다른 무차별 대입 기법에 비해 더 효율적(즉, 시간 절약)일 수 있다. 이러한 이점은 이미지 내의 유사분열상의 수에 관계없이 존재하므로 유사분열상 카운트 기술을 개선시킬 수 있다.
여기서, 컴퓨터 판독가능 비일시적 저장 매체 또는 매체들은, 적절한 경우, 하나 이상의 반도체 기반 또는 다른 집적 회로(IC)(예컨대, FPGA(field-programmable gate arrays) 또는 ASIC(application-specific ICs)), 하드 디스크 드라이브(HDD), 하이브리드 하드 드라이브(HHD), 광 디스크, 광 디스크 드라이브(ODD), 광자기 디스크, 광자기 드라이브, 플로피 디스켓, 플로피 디스크 드라이브(FDD), 자기 테이프, 솔리드 스테이트 드라이브(SSD), RAM 드라이브, SECURE DIGITAL 카드 또는 드라이브, 임의의 다른 적절한 컴퓨터 판독가능 비일시적 저장 매체, 또는 이들 중 둘 이상의 임의의 적절한 조합을 포함할 수 있다. 컴퓨터 판독가능 비일시적 저장 매체는 휘발성, 비휘발성 또는 적절한 경우 휘발성과 비휘발성의 조합을 포함할 수 있다.
여기서 "또는"은 명시적으로 달리 표시되거나 문맥상 달리 표시되지 않는 한 포괄적이며 배타적이지 않다. 따라서, 본 명세서에서 "A 또는 B"는 명시적으로 달리 표시되거나 문맥상 달리 표시되지 않는 한 "A, B 또는 둘 모두"를 의미한다. 또한, "및"은 명시적으로 달리 표시되거나 문맥상 달리 표시되지 않는 한 합동적이고도 개별적이다. 따라서, 본 명세서에서 "A 및 B"는 명시적으로 달리 표시되거나 문맥상 달리 표시되지 않는 한 "A 및 B가 합동적으로 또는 개별적으로"를 의미한다.
본 개시의 범위는 당업자가 이해할 수 있는 본 명세서에 설명되거나 예시된 예시적 실시예에 대한 모든 변경, 대체, 변형, 개조 및 수정을 포함한다. 본 개시의 범위는 본 명세서에 설명되거나 예시된 예시적 실시예에 제한되지 않는다. 또한, 본 명세서에서 특정 구성요소, 요소, 특징, 기능, 동작 또는 단계를 포함하는 것으로서 각각의 실시예를 설명하고 예시하지만, 이들 실시예 중 임의의 것은 당업자가 이해할 수 있는 본 명세서의 임의의 곳에서 설명되거나 예시된 구성요소, 요소, 특징, 기능, 동작 또는 단계 중 임의의 것의 임의의 조합 또는 순열을 포함할 수 있다. 또한, 특정 기능을 수행하도록 조정되거나, 배열되거나, 가능하거나, 구성되거나, 활성화되거나, 작동 가능하거나, 작동되는 장치 또는 시스템, 또는 장치 또는 시스템의 구성요소에 대한 첨부된 청구범위에서의 언급은, 해당 장치, 시스템 또는 구성요소가 그와 같이 조정, 배열, 가능, 구성, 활성화, 작동 가능 또는 작동되는 한, 해당 장치, 시스템, 구성요소 또는 그 특정 기능이 활성화되거나 켜지거나 또는 잠금 해제되는지에 관계없이 이를 포함한다. 추가적으로, 본 개시는 특정 이점을 제공하는 것으로 특정 비제한적 실시예를 설명하거나 도시하지만, 특정 비제한적 실시예는 이러한 이점을 제공하지 않거나, 일부 또는 전부를 제공할 수 있다.
또한, 본 개시에서 흐름도로서 제시되고 설명된 방법의 실시예는 기술의 보다 완전한 이해를 제공하기 위해 예로서 제공된다. 개시된 방법은 본 명세서에 제시된 동작 및 논리적 흐름에 제한되지 않는다. 다양한 동작의 순서가 변경되고 더 큰 동작의 일부인 것으로 설명된 하위 작업이 독립적으로 수행되는 대안적인 실시예가 고려된다.
본 개시의 목적을 위해 다양한 실시예가 설명되었지만, 그러한 실시예는 본 개시의 교시를 그러한 실시예로 제한하는 것으로 간주되어서는 안 된다. 본 개시에 설명된 시스템 및 프로세스의 범위 내에 있는 결과를 얻기 위해 전술한 요소 및 동작에 대해 다양한 변경 및 수정이 이루어질 수 있다.
본 명세서에 개시된 실시예는 단지 예일 뿐이며, 본 개시의 범위는 이들에 제한되지 않는다. 특정 비제한적 실시예는 위에서 개시된 실시예의 구성요소, 요소, 특징, 기능, 동작 또는 단계 중 전부 또는 일부를 포함하거나 전혀 포함하지 않을 수 있다. 실시예는 특히, 방법, 저장 매체, 시스템 및 컴퓨터 프로그램 제품에 관한 첨부된 청구범위에 개시되는데, 하나의 청구 카테고리(예컨대, 방법)에서 언급된 임의의 특징은 다른 청구 카테고리(예컨대, 시스템)에서도 청구될 수 있다. 첨부된 청구범위에서의 종속성 또는 참조는 단지 형식적인 이유로 선택된다. 그러나, 임의의 이전 청구항에 대한 의도적인 참조(특히 복수의 종속성)로 인해 발생하는 임의의 청구대상이 또한 청구될 수 있으므로, 첨부된 청구항에서 선택된 종속성에 관계없이 청구항과 그 특징의 임의의 조합이 개시되고 청구될 수 있다. 청구될 수 있는 청구대상은 첨부된 청구범위에 기재된 특징의 조합뿐만 아니라 청구범위의 특징의 임의의 다른 조합을 포함하는데, 청구범위에 언급된 각 특징은 청구범위의 임의의 다른 특징 또는 다른 특징들의 조합과 조합될 수 있다. 또한, 본 명세서에서 설명되거나 도시된 실시예 및 특징 중 임의의 것은 개별 청구항으로 및/또는 본 명세서에서 설명되거나 도시된 임의의 실시예 또는 특징 또는 첨부된 청구범위의 임의의 특징과 임의의 조합으로 청구될 수 있다.
특정 실시예와 관련하여 전술한 바와 같이, 특정 구성요소, 예컨대 컴퓨터 시스템(500)은, 단일 컴퓨터 또는 다수의 컴퓨터, 프로세서, 네트워크, 모바일 디바이스, 클러스터, 서버, 또는 다양한 기능을 수행하는 다른 하드웨어를 포함할 수 있다. 또한, 개시된 청구대상의 특정 요소는, 컴퓨터 판독가능 매체에 저장될 수 있고 실행될 때 프로세서로 하여금 본 명세서에 설명된 특정 기능을 수행하게 할 수 있는 컴퓨터 판독가능 코드로 구현될 수 있다. 이러한 실시예에서, 컴퓨터 및/또는 다른 하드웨어는 의료용 이미지 기록을 디스플레이하기 위한 시스템 및 방법을 허용하는 데 중요한 역할을 한다. 예를 들어, 컴퓨터, 프로세서, 메모리, 저장소 및 네트워킹 하드웨어의 존재는 보다 효율적인 방식으로 의료용 이미지 기록을 디스플레이하는 능력을 제공한다. 또한, 디지털 기록을 저장하는 것은 그러한 정보가 네트워크를 통해 전자적인 형태로 수신되기 때문에 펜이나 종이를 통해 달성될 수 없다.
본 명세서에 설명된 청구대상 및 동작은 본 명세서에 개시된 구조 및 이들의 구조적 등가물을 포함하는 디지털 전자 회로, 또는 컴퓨터 소프트웨어, 펌웨어 또는 하드웨어로 구현될 수 있거나, 또는 이들 중 하나 이상의 조합으로 구현될 수 있다. 본 명세서에 설명된 청구대상의 실시예는 하나 이상의 컴퓨터 프로그램, 즉, 데이터 처리 장치에 의한 실행을 위해 또는 그 동작을 제어하기 위해 컴퓨터 저장 매체에 인코딩된 컴퓨터 프로그램 명령어의 하나 이상의 모듈로서 구현될 수 있다.
컴퓨터 저장 매체는 컴퓨터 판독가능 저장 디바이스, 컴퓨터 판독가능 저장 기판, 랜덤 또는 직렬 액세스 메모리 어레이 또는 디바이스, 또는 이들 중 하나 이상의 조합일 수 있거나 이에 포함될 수 있다. 또한, 컴퓨터 저장 매체는 전파된 신호가 아니지만, 컴퓨터 저장 매체는 인위적으로 생성된 전파 신호로 인코딩된 컴퓨터 프로그램 명령어의 소스 또는 목적지가 될 수 있다. 컴퓨터 저장 매체는 또한 하나 이상의 분리된 물리적 구성요소 또는 매체(예컨대, 다수의 CD, 디스크, 또는 다른 저장 디바이스)일 수 있거나 이에 포함될 수 있다.
프로세서라는 용어는 데이터를 처리하기 위한 모든 종류의 장치, 디바이스 및 머신을 포함하며, 예를 들어, 프로그래밍 가능한 프로세서, 컴퓨터, 시스템 온 칩, 또는 전술한 것들 중 다수의 것 또는 조합을 포함한다. 장치는 특수 목적 로직 회로(예컨대, FPGA 또는 ASIC)를 포함할 수 있다. 장치는 또한 하드웨어에 추가하여 해당 컴퓨터 프로그램에 대한 실행 환경을 생성하는 코드, 예컨대, 프로세서 펌웨어를 구성하는 코드, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제, 교차 플랫폼 런타임 환경, 가상 머신 또는 이들 중 하나 이상의 조합을 포함할 수 있다. 장치 및 실행 환경은 웹 서비스, 분산 컴퓨팅 및 그리드 컴퓨팅 인프라와 같은 다양한 상이한 컴퓨팅 모델 인프라를 실현할 수 있다.
컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 애플리케이션, 스크립트 또는 코드로도 알려짐)은 컴파일 또는 해석 언어, 선언적 또는 절차적 언어를 포함하는 임의의 형태의 프로그래밍 언어로 작성될 수 있으며, 독립형 프로그램 또는 모듈, 구성요소, 서브루틴, 객체, 또는 컴퓨팅 환경에서 사용하기에 적절한 다른 유닛을 포함하여 임의의 형태로 배포될 수 있다. 컴퓨터 프로그램은 파일 시스템의 파일에 대응할 수 있지만 반드시 그럴 필요는 없다. 프로그램은 다른 프로그램이나 데이터를 보유하는 파일의 일부(예컨대, 마크업 언어 문서에 저장된 하나 이상의 스크립트)에 저장되거나, 해당 프로그램에 전용되는 단일 파일에 저장되거나, 또는 다수의 조정 파일(예컨대, 하나 이상의 모듈, 하위 프로그램 또는 코드 부분을 저장하는 파일)에 저장될 수 있다. 컴퓨터 프로그램은 하나의 컴퓨터에서 실행되도록 배포될 수 있거나, 또는 한 사이트에 위치하거나 다수의 사이트 걸쳐 분산되어 통신 네트워크에 의해 상호접속된 다수의 컴퓨터에서 실행되도록 배포될 수 있다.
본 명세서에 설명된 프로세스 및 로직 흐름은 입력 데이터에 대해 동작하여 출력을 생성함으로써 동작을 수행하기 위해 하나 이상의 컴퓨터 프로그램을 실행하는 하나 이상의 프로그래밍 가능 프로세서에 의해 수행될 수 있다. 프로세스 및 로직 흐름은 또한 FPGA 또는 ASIC과 같은 특수 목적 로직 회로에 의해 수행될 수 있고 장치는 또한 특수 목적 로직 회로로서 구현될 수 있다.
컴퓨터 프로그램의 실행에 적합한 프로세서는 제한이 아닌 예로서 범용 및 특수 목적 마이크로프로세서 모두를 포함할 수 있다. 컴퓨터 프로그램 명령어 및 데이터를 저장하기에 적합한 디바이스는 모든 형태의 비휘발성 메모리, 매체 및 메모리 디바이스를 포함할 수 있으며, 제한이 아닌 예로서, 반도체 메모리 디바이스(예컨대, EPROM, EEPROM 및 플래시 메모리 디바이스), 자기 디스크(예컨대, 내부 하드 디스크 또는 이동식 디스크), 광자기 디스크, CD-ROM 및 DVD-ROM 디스크를 포함한다. 프로세서 및 메모리는 특수 목적 로직 회로에 의해 보완되거나 그에 통합될 수 있다.
또한, 특정 실시예와 관련하여 전술한 바와 같이, 특정 구성요소는 예를 들어 네트워크(예컨대, 근거리 통신망 또는 인터넷)를 통해 특정 다른 구성요소와 통신할 수 있다. 위에서 명시적으로 언급되지 않는 한, 개시된 청구대상은 송신 및 수신을 포함하여 각 트랜잭션의 양쪽 모두를 포함하도록 의도된다. 당업자는, 전술한 특징과 관련하여, 하나의 구성요소가 다른 구성요소에 송신 또는 전송하거나 다른 구성요소에서 사용가능하게 하는 경우, 명시적으로 언급되는지 여부에 관계없이 다른 구성요소는 수신하거나 획득할 것임을 쉽게 이해할 것이다.
하기에 청구된 특정 실시예에 더하여, 개시된 청구대상은 또한 하기에 청구된 종속적 특징 및 위에서 개시된 것의 임의의 다른 가능한 조합을 갖는 다른 실시예에 관한 것이다. 이와 같이, 종속항에 제시되고 위에서 개시된 특정 특징은 다른 가능한 조합으로 서로 조합될 수 있다. 따라서, 개시된 청구대상의 특정 실시예에 대한 전술한 설명은 예시 및 설명의 목적으로 제시되었다. 이는 배타적이거나 개시된 청구대상을 개시된 실시예로 제한하려는 의도가 아니다.
개시된 청구대상의 사상 또는 범위를 벗어나지 않므면서 개시된 청구대상의 방법 및 시스템에서 다양한 수정 및 변경이 이루어질 수 있음이 당업자에게 명백할 것이다. 따라서, 개시된 청구대상은 첨부된 청구범위 및 그 균등물의 범위 내에 있는 수정 및 변형을 포함하는 것으로 의도된다.

Claims (40)

  1. 컴퓨터로 구현되는 방법으로서,
    컴퓨팅 디바이스에서 생검 슬라이드 이미지를 수신하는 단계와,
    암 분류기로서 프로그래밍된 제1의 훈련된 머신 러닝 모델에 상기 생검 슬라이드 이미지를 입력하여 상기 생검 슬라이드 이미지의 분류를 출력하게 하는 제1의 프로그래밍된 명령어를 실행하는 단계와,
    상기 분류에 기초하여 상기 생검 슬라이드 이미지가 추가 처리되어야 한다고 판정하는 단계와,
    상기 생검 슬라이드 이미지에 대해 조직 검출 알고리즘(tissue detection algorithm)을 실행하여 제1 좌표 세트를 출력하는 단계와,
    이미지 분할을 위해 프로그래밍된 제2의 훈련된 머신 러닝 모델에 상기 생검 슬라이드 이미지 및 상기 제1 좌표 세트를 입력하여 이진 픽셀 마스크(binary pixel mask)를 출력하게 하는 제2의 프로그래밍된 명령어를 실행하는 단계와,
    상기 이진 픽셀 마스크를 사용하여 향상된 픽셀 마스크를 생성하도록 제3의 프로그래밍된 명령어를 실행하는 단계와,
    상기 향상된 픽셀 마스크에 의해 표시된 제2 좌표 세트를 컴퓨터 메모리에 디지털 방식으로 저장하는 단계를 포함하는,
    컴퓨터로 구현되는 방법.
  2. 제1항에 있어서,
    상기 향상된 픽셀 마스크에 기초하여 가장 많은 유사분열상(mitotic figures)을 갖는 필드를 출력하도록 KD-트리 기반 알고리즘(KD-tree based algorithm)을 구현하는 제4의 프로그래밍된 명령어를 실행하는 단계와,
    상기 컴퓨터 메모리에서 상기 제2 좌표 세트를 갖는 파일에 상기 필드를 디지털 방식으로 저장하는 단계를 더 포함하는,
    컴퓨터로 구현되는 방법.
  3. 제2항에 있어서,
    상기 필드는 10-고배율 필드(high-power field)를 포함하는,
    컴퓨터로 구현되는 방법.
  4. 제2항에 있어서,
    디바이스 디스플레이 상에 상기 필드를 디스플레이하는 단계를 더 포함하는,
    컴퓨터로 구현되는 방법.
  5. 제1항에 있어서,
    상기 조직 검출 알고리즘은 상기 생검 슬라이드 이미지의 저해상도 뷰에 대해 거친 조직 분할(coarse tissue segmentation)을 수행하는 것을 포함하는,
    컴퓨터로 구현되는 방법.
  6. 제1항에 있어서,
    상기 제3의 프로그래밍된 명령어는,
    유사분열상을 나타내는 상기 이진 픽셀 마스크의 모든 연결된 좌표 세트에 대해 대응하는 회전된 직사각형을 결정하게 하고 ― 각각의 회전된 직사각형은 상기 유사분열상의 근사 윤곽(approximated contour)을 둘러싸는 최소 면적을 가짐 ―,
    상기 컴퓨터 메모리에 디지털 방식으로 저장된 임계 폭보다 더 큰 각각의 폭을 갖는 회전된 직사각형과 연관된 좌표만을 포함하는 상기 향상된 픽셀 마스크를 생성하게 하도록 프로그래밍되는,
    컴퓨터로 구현되는 방법.
  7. 제6항에 있어서,
    상기 제3의 프로그래밍된 명령어는 또한, 상기 컴퓨터 메모리에 저장된 유사분열 세포 극간 거리(mitotic cells inter-polar distance) 및 커널 크기(kernel size)에 비례하는 다수의 거듭된 확장 반복을 통해 상기 이진 픽셀 마스크를 확장시키도록 프로그래밍되는,
    컴퓨터로 구현되는 방법.
  8. 제1항에 있어서,
    상기 제2의 훈련된 머신 러닝 모델은 BCE(balanced-cross-entropy) 소프트-다이스-손실(soft-Dice-Loss) 함수 또는 소프트-다이스-손실 함수 중 적어도 하나를 최소화하도록 훈련된 스킵-연결(skip-connections)을 갖는 컨볼루션 신경망을 포함하는,
    컴퓨터로 구현되는 방법.
  9. 제8항에 있어서,
    상기 제2의 훈련된 머신 러닝 모델은 ImageNet으로 사전 훈련된 U-Net 모델을 더 포함하는,
    컴퓨터로 구현되는 방법.
  10. 제1항에 있어서,
    상기 생검 슬라이드 이미지는 동물 또는 반려동물 중 적어도 하나의 생검 이미지를 포함하고, 상기 생검 이미지는 의료용 이미징 디바이스를 사용하여 생성된 것인,
    컴퓨터로 구현되는 방법.
  11. 제1항에 있어서,
    상기 생검 슬라이드 이미지는 전체 슬라이드 이미지(whole slide image: WSI)를 포함하는,
    컴퓨터로 구현되는 방법.
  12. 제1항에 있어서,
    상기 생검 슬라이드 이미지 및 상기 분류의 표현을 포함하는 출력 이미지를 디스플레이하는 단계를 더 포함하는,
    컴퓨터로 구현되는 방법.
  13. 제1항에 있어서,
    상기 생검 슬라이드 이미지를 프로그래밍 방식으로 전처리하는 단계를 더 포함하되, 상기 전처리는 상기 생검 슬라이드 이미지가 추가 처리될 수 있을 정도로 충분히 선명하다고 판정하는 것을 포함하는,
    컴퓨터로 구현되는 방법.
  14. 제13항에 있어서,
    상기 생검 슬라이드 이미지는 전체 슬라이드 이미지를 포함하고, 상기 전처리는 상기 생검 슬라이드 이미지의 해상도가 상기 컴퓨터 메모리에 저장된 임계 해상도를 초과한다고 판정하는 것 또는 상기 전체 슬라이드 이미지에 포함된 슬라이드 이미지의 개수가 상기 컴퓨터 메모리에 저장된 임계 개수를 초과한다고 판정하는 것 중 적어도 하나를 포함하는,
    컴퓨터로 구현되는 방법.
  15. 제1항에 있어서,
    상기 제2 좌표 세트를 사용하여 유사분열상 카운트(mitotic figure count)를 프로그래밍 방식으로 계산하는 단계와,
    상기 유사분열상 카운트를 상기 컴퓨터 메모리에 디지털 방식으로 저장하는 단계를 더 포함하는,
    컴퓨터로 구현되는 방법.
  16. 제1항에 있어서,
    상기 컴퓨팅 디바이스는 서버 컴퓨터를 포함하고, 상기 생검 슬라이드 이미지는 클라이언트 컴퓨팅 디바이스로부터 수신되는,
    컴퓨터로 구현되는 방법.
  17. 제16항에 있어서,
    상기 향상된 픽셀 마스크에 기초하여 가장 많은 유사분열상을 갖는 필드를 출력하도록 KD-트리 기반 알고리즘을 구현하는 제4의 프로그래밍된 명령어를 실행하는 단계와,
    상기 컴퓨터 메모리에서 상기 제2 좌표 세트를 갖는 파일에 상기 필드를 디지털 방식으로 저장하는 단계를 더 포함하는,
    컴퓨터로 구현되는 방법.
  18. 제17항에 있어서,
    상기 파일은 XML(extensible markup language) 파일을 포함하는,
    컴퓨터로 구현되는 방법.
  19. 제18항에 있어서,
    상기 서버 컴퓨터로부터 상기 클라이언트 컴퓨팅 디바이스로, 상기 XML(extensible markup language) 파일로부터 렌더링되는 주석으로서 상기 생검 슬라이드 이미지에 관한 정보를 전송하는 단계를 더 포함하는,
    컴퓨터로 구현되는 방법.
  20. 제1항에 있어서,
    확장 가능한 블록을 포함하는 분산된 탈중앙식 비동기 아키텍처(distributed, decentralized, and asynchronous architecture)를 사용하여 상기 방법을 실행하는 단계를 더 포함하되, 상기 확장 가능한 블록은 관리 프로그램을 포함하며, 상기 관리 프로그램은 도커 컨테이너(docker containers)를 사용하여 구현되는,
    컴퓨터로 구현되는 방법.
  21. 시스템으로서,
    하나 이상의 프로세서와,
    상기 하나 이상의 프로세서 중 하나 이상에 결합되고, 상기 하나 이상의 프로세서 중 하나 이상에 의해 실행될 때 상기 시스템으로 하여금 동작을 수행하게 하도록 작동 가능한 명령어를 포함하는 하나 이상의 비일시적 컴퓨터 판독가능 저장 매체를 포함하되, 상기 동작은,
    생검 슬라이드 이미지를 수신하는 것과,
    암 분류기로서 프로그래밍된 제1의 훈련된 머신 러닝 모델에 상기 생검 슬라이드 이미지를 입력하여 상기 생검 슬라이드 이미지의 분류를 출력하게 하는 제1의 프로그래밍된 명령어를 실행하는 것과,
    상기 분류에 기초하여 상기 생검 슬라이드 이미지가 추가 처리되어야 한다고 판정하는 것과,
    상기 생검 슬라이드 이미지에 대해 조직 검출 알고리즘을 실행하여 제1 좌표 세트를 출력하는 것과,
    이미지 분할을 위해 프로그래밍된 제2의 훈련된 머신 러닝 모델에 상기 생검 슬라이드 이미지 및 상기 제1 좌표 세트를 입력하여 이진 픽셀 마스크를 출력하게 하는 제2의 프로그래밍된 명령어를 실행하는 것과,
    상기 이진 픽셀 마스크를 사용하여 향상된 픽셀 마스크를 생성하도록 제3의 프로그래밍된 명령어를 실행하는 것과,
    상기 향상된 픽셀 마스크에 의해 표시된 제2 좌표 세트를 컴퓨터 메모리에 디지털 방식으로 저장하는 것을 포함하는,
    시스템.
  22. 제21항에 있어서,
    상기 명령어는 또한 실행될 때,
    상기 향상된 픽셀 마스크에 기초하여 가장 많은 유사분열상을 갖는 필드를 출력하도록 KD-트리 기반 알고리즘을 구현하는 제4의 프로그래밍된 명령어를 실행하는 것과,
    상기 컴퓨터 메모리에서 상기 제2 좌표 세트를 갖는 파일에 상기 필드를 디지털 방식으로 저장하는 것
    을 수행하게 하도록 작동 가능한,
    시스템.
  23. 제22항에 있어서,
    상기 필드는 10-고배율 필드를 포함하는,
    시스템.
  24. 제22항에 있어서,
    상기 명령어는 또한 실행될 때, 디바이스 디스플레이 상에 상기 필드를 디스플레이하는 것을 수행하게 하도록 작동 가능한,
    시스템.
  25. 제21항에 있어서,
    상기 조직 검출 알고리즘은 상기 생검 슬라이드 이미지의 저해상도 뷰에 대해 거친 조직 분할을 수행하는 것을 포함하는,
    시스템.
  26. 제21항에 있어서,
    상기 제3의 프로그래밍된 명령어는,
    유사분열상을 나타내는 상기 이진 픽셀 마스크의 모든 연결된 좌표 세트에 대해 대응하는 회전된 직사각형을 결정하게 하고 ― 각각의 회전된 직사각형은 상기 유사분열상의 근사 윤곽을 둘러싸는 최소 면적을 가짐 ―,
    상기 컴퓨터 메모리에 디지털 방식으로 저장된 임계 폭보다 더 큰 각각의 폭을 갖는 회전된 직사각형과 연관된 좌표만을 포함하는 상기 향상된 픽셀 마스크를 생성하게 하도록 프로그래밍되는,
    시스템.
  27. 제26항에 있어서,
    상기 제3의 프로그래밍된 명령어는 또한, 상기 컴퓨터 메모리에 저장된 유사분열 세포 극간 거리 및 커널 크기에 비례하는 다수의 거듭된 확장 반복을 통해 상기 이진 픽셀 마스크를 확장시키도록 프로그래밍되는,
    시스템.
  28. 제21항에 있어서,
    상기 제2의 훈련된 머신 러닝 모델은 BCE(balanced-cross-entropy) 소프트-다이스-손실 함수 또는 소프트-다이스-손실 함수 중 적어도 하나를 최소화하도록 훈련된 스킵-연결을 갖는 컨볼루션 신경망을 포함하는,
    시스템.
  29. 제28항에 있어서,
    상기 제2의 훈련된 머신 러닝 모델은 ImageNet으로 사전 훈련된 U-Net 모델을 더 포함하는,
    시스템.
  30. 제21항에 있어서,
    상기 생검 슬라이드 이미지는 동물 또는 반려동물 중 적어도 하나의 생검 이미지를 포함하고, 상기 생검 이미지는 의료용 이미징 디바이스를 사용하여 생성된 것인,
    시스템.
  31. 제21항에 있어서,
    상기 생검 슬라이드 이미지는 전체 슬라이드 이미지(WSI)를 포함하는,
    시스템.
  32. 제21항에 있어서,
    상기 생검 슬라이드 이미지 및 상기 분류의 표현을 포함하는 출력 이미지를 디스플레이하는 것를 더 포함하는,
    시스템.
  33. 제21항에 있어서,
    상기 명령어는 또한 실행될 때, 상기 생검 슬라이드 이미지를 프로그래밍 방식으로 전처리하는 것를 수행하게 하도록 작동 가능하고, 상기 전처리는 상기 생검 슬라이드 이미지가 추가 처리될 수 있을 정도로 충분히 선명하다고 판정하는 것을 포함하는,
    시스템.
  34. 제33항에 있어서,
    상기 생검 슬라이드 이미지는 전체 슬라이드 이미지를 포함하고, 상기 전처리는 상기 생검 슬라이드 이미지의 해상도가 상기 컴퓨터 메모리에 저장된 임계 해상도를 초과한다고 판정하는 것 또는 상기 전체 슬라이드 이미지에 포함된 슬라이드 이미지의 개수가 상기 컴퓨터 메모리에 저장된 임계 개수를 초과한다고 판정하는 것 중 적어도 하나를 포함하는,
    시스템.
  35. 제21항에 있어서,
    상기 명령어는 또한 실행될 때,
    상기 제2 좌표 세트를 사용하여 유사분열상 카운트를 프로그래밍 방식으로 계산하는 것과,
    상기 유사분열상 카운트를 상기 컴퓨터 메모리에 디지털 방식으로 저장하는 것
    을 수행하게 하도록 작동 가능한,
    시스템.
  36. 제21항에 있어서,
    상기 생검 슬라이드 이미지는 클라이언트 컴퓨팅 디바이스로부터 수신되는,
    시스템.
  37. 제36항에 있어서,
    상기 명령어는 또한 실행될 때,
    상기 향상된 픽셀 마스크에 기초하여 가장 많은 유사분열상을 갖는 필드를 출력하도록 KD-트리 기반 알고리즘을 구현하는 제4의 프로그래밍된 명령어를 실행하는 것과,
    상기 컴퓨터 메모리에서 상기 제2 좌표 세트를 갖는 파일에 상기 필드를 디지털 방식으로 저장하는 것
    을 수행하게 하도록 작동 가능한,
    시스템.
  38. 제37항에 있어서,
    상기 파일은 XML(extensible markup language) 파일을 포함하는,
    시스템.
  39. 제38항에 있어서,
    상기 명령어는 또한 실행될 때, 상기 XML(extensible markup language) 파일로부터 렌더링되는 주석으로서 상기 생검 슬라이드 이미지에 관한 정보를 상기 클라이언트 컴퓨팅 디바이스에 전송하는 것을 수행하게 하도록 작동 가능한,
    시스템.
  40. 제21항에 있어서,
    확장 가능한 블록을 포함하는 분산된 탈중앙식 비동기 아키텍처를 사용하여 방법을 실행하는 것를 더 포함하되, 상기 확장 가능한 블록은 관리 프로그램을 포함하며, 상기 관리 프로그램은 도커 컨테이너를 사용하여 구현되는,
    시스템.
KR1020237024183A 2020-12-15 2021-12-15 반려동물의 암을 식별하기 위한 시스템 및 방법 KR20230117244A (ko)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US202063125926P 2020-12-15 2020-12-15
US63/125,926 2020-12-15
US202163153308P 2021-02-24 2021-02-24
US63/153,308 2021-02-24
US202163233674P 2021-08-16 2021-08-16
US63/233,674 2021-08-16
PCT/US2021/063606 WO2022132966A1 (en) 2020-12-15 2021-12-15 Systems and methods for identifying cancer in pets

Publications (1)

Publication Number Publication Date
KR20230117244A true KR20230117244A (ko) 2023-08-07

Family

ID=82058266

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020237024183A KR20230117244A (ko) 2020-12-15 2021-12-15 반려동물의 암을 식별하기 위한 시스템 및 방법

Country Status (7)

Country Link
EP (1) EP4264484A1 (ko)
JP (1) JP2024503977A (ko)
KR (1) KR20230117244A (ko)
AU (1) AU2021403021A1 (ko)
CA (1) CA3200162A1 (ko)
MX (1) MX2023006806A (ko)
WO (1) WO2022132966A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117876370B (zh) * 2024-03-11 2024-06-07 南京信息工程大学 基于三维轴向Transformer模型的CT图像肾脏肿瘤分割***

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2073801A (en) * 1999-12-09 2001-06-18 Cellomics, Inc. A system for cell-based screening
MX2014004004A (es) * 2011-10-05 2015-01-14 Cireca Theranostics Llc Metodo y sistema para analizar especimenes biologicos por medio de imagenes espectrales.
US9194775B2 (en) * 2012-07-30 2015-11-24 Aspect Imaging Ltd. Guided slicing system for obtaining histological samples and methods thereof
US10049450B2 (en) * 2015-12-03 2018-08-14 Case Western Reserve University High-throughput adaptive sampling for whole-slide histopathology image analysis
US11103496B2 (en) * 2016-02-22 2021-08-31 The Trustees Of The University Of Pennsylvania Methods for enhancing liver regeneration
US10255693B2 (en) * 2017-05-02 2019-04-09 Techcyte, Inc. Machine learning classification and training for digital microscopy images
EP3432263B1 (en) * 2017-07-17 2020-09-16 Siemens Healthcare GmbH Semantic segmentation for cancer detection in digital breast tomosynthesis
IL272433B2 (en) * 2017-08-03 2024-02-01 Nucleai Ltd Systems and methods for tissue image analysis
US10565707B2 (en) * 2017-11-02 2020-02-18 Siemens Healthcare Gmbh 3D anisotropic hybrid network: transferring convolutional features from 2D images to 3D anisotropic volumes
CN110909756A (zh) * 2018-09-18 2020-03-24 苏宁 用于医学图像识别的卷积神经网络模型训练方法和装置
CA3061603A1 (en) * 2018-11-14 2020-05-14 Royal Bank Of Canada System and method for storing contract data structures on permissioned distributed ledgers
WO2020243090A1 (en) * 2019-05-24 2020-12-03 The Regents Of The University Of California Systems and methods for automated image analysis

Also Published As

Publication number Publication date
MX2023006806A (es) 2023-06-21
JP2024503977A (ja) 2024-01-30
AU2021403021A1 (en) 2023-07-06
CA3200162A1 (en) 2022-06-23
EP4264484A1 (en) 2023-10-25
WO2022132966A1 (en) 2022-06-23

Similar Documents

Publication Publication Date Title
Gupta et al. Deep learning in image cytometry: a review
Vang et al. Deep learning framework for multi-class breast cancer histology image classification
Motlagh et al. Breast cancer histopathological image classification: A deep learning approach
US20220237788A1 (en) Multiple instance learner for tissue image classification
KR102318959B1 (ko) 의료 영상을 해석하는 인공지능 모델을 이용한 폐암 발병 가능성 예측 방법 및 의료 영상 분석 장치
Porto et al. ML‐morph: A fast, accurate and general approach for automated detection and landmarking of biological structures in images
Smith et al. Developing image analysis pipelines of whole-slide images: Pre-and post-processing
JP7427080B2 (ja) 細胞検出およびセグメンテーションのための弱教師ありマルチタスク学習
Hipp et al. Spatially invariant vector quantization: a pattern matching algorithm for multiple classes of image subject matter including pathology
US20240054637A1 (en) Systems and methods for assessing pet radiology images
CN117015796A (zh) 处理组织图像的方法和用于处理组织图像的***
CN114445356A (zh) 基于多分辨率的全视野病理切片图像肿瘤快速定位方法
US20220301689A1 (en) Anomaly detection in medical imaging data
EP4290527A1 (en) Bladder lesion diagnosis method using neural network, and system thereof
KR20230117244A (ko) 반려동물의 암을 식별하기 위한 시스템 및 방법
CN114897764A (zh) 基于标准化通道注意力的肺结节假阳性排除方法及装置
Kanwal et al. Are you sure it’s an artifact? Artifact detection and uncertainty quantification in histological images
US20230411014A1 (en) Apparatus and method for training of machine learning models using annotated image data for pathology imaging
US20230281971A1 (en) Method and device for analyzing pathological slide image
Song et al. Weakly supervised AI for efficient analysis of 3D pathology samples
CN116547707A (zh) 用于识别宠物的癌症的***和方法
Jaber et al. A deep learning-based iterative digital pathology annotation tool
Haque Multiple myeloma. Detection from histological images using deep learning
Amine et al. Unlocking the Power of R: A High-Accuracy Method for Measuring DAB Staining on Immunohistochemical Slides
Galety et al. Deep Learning for Breast Cancer Diagnosis Using Histopathological Images