KR20220035867A - 슬라이드 스캐닝 시스템의 실시간 포커싱 - Google Patents

슬라이드 스캐닝 시스템의 실시간 포커싱 Download PDF

Info

Publication number
KR20220035867A
KR20220035867A KR1020217020382A KR20217020382A KR20220035867A KR 20220035867 A KR20220035867 A KR 20220035867A KR 1020217020382 A KR1020217020382 A KR 1020217020382A KR 20217020382 A KR20217020382 A KR 20217020382A KR 20220035867 A KR20220035867 A KR 20220035867A
Authority
KR
South Korea
Prior art keywords
focus
image
image stripes
frame
frames
Prior art date
Application number
KR1020217020382A
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 KR20220035867A publication Critical patent/KR20220035867A/ko

Links

Images

Classifications

    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B21/00Microscopes
    • G02B21/0004Microscopes specially adapted for specific applications
    • G02B21/002Scanning microscopes
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B21/00Microscopes
    • G02B21/24Base structure
    • G02B21/241Devices for focusing
    • G02B21/244Devices for focusing using image analysis techniques
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B21/00Microscopes
    • G02B21/24Base structure
    • G02B21/241Devices for focusing
    • G02B21/245Devices for focusing using auxiliary sources, detectors
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B21/00Microscopes
    • G02B21/36Microscopes arranged for photographic purposes or projection purposes or digital imaging or video purposes including associated control and data processing arrangements
    • G02B21/365Control or image processing arrangements for digital or video microscopes
    • G02B21/367Control or image processing arrangements for digital or video microscopes providing an output produced by processing a plurality of individual source images, e.g. image tiling, montage, composite images, depth sectioning, image comparison
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B7/00Mountings, adjusting means, or light-tight connections, for optical elements
    • G02B7/28Systems for automatic generation of focusing signals
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B7/00Mountings, adjusting means, or light-tight connections, for optical elements
    • G02B7/28Systems for automatic generation of focusing signals
    • G02B7/36Systems for automatic generation of focusing signals using image sharpness techniques, e.g. image processing techniques for generating autofocus signals
    • G02B7/38Systems for automatic generation of focusing signals using image sharpness techniques, e.g. image processing techniques for generating autofocus signals measured at different points on the optical axis, e.g. focussing on two or more planes and comparing image data
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B13/00Viewfinders; Focusing aids for cameras; Means for focusing for cameras; Autofocus systems for cameras
    • G03B13/32Means for focusing
    • G03B13/34Power focusing
    • G03B13/36Autofocus systems
    • 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/693Acquisition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/90Arrangement of cameras or camera modules, e.g. multiple cameras in TV studios or sports stadiums
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/70SSIS architectures; Circuits associated therewith
    • H04N25/701Line sensors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N3/00Scanning details of television systems; Combination thereof with generation of supply voltages
    • H04N3/02Scanning details of television systems; Combination thereof with generation of supply voltages by optical-mechanical means only
    • H04N3/06Scanning details of television systems; Combination thereof with generation of supply voltages by optical-mechanical means only having a moving lens or other refractor
    • H04N5/23212
    • H04N5/3692
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/56Cameras or camera modules comprising electronic image sensors; Control thereof provided with illuminating means
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/67Focus control based on electronic image sensor signals

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Multimedia (AREA)
  • Chemical & Material Sciences (AREA)
  • Analytical Chemistry (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Theoretical Computer Science (AREA)
  • Microscoopes, Condenser (AREA)
  • Automatic Focus Adjustment (AREA)
  • Studio Devices (AREA)

Abstract

슬라이드 스캐닝 시스템의 실시간 포커싱. 일 실시예에서, 포커스 포인트는 유리 슬라이드에서 샘플의 복수의 이미지 스트라이프들을 획득하는 동안 초기화된 포커스 맵에 추가된다. 각각의 이미지 스트라이프에 대해, 이미지 스트라이프를 집합적으로 나타내는 복수의 프레임들은 이미징 라인 스캔 카메라와 틸트된 포커싱 라인 스캔 카메라 모두를 사용하여 획득될 수 있다. 신뢰가능한 프레임에 대한 최적의 포커스 위치를 나타내는 포커스 포인트가 포커스 맵에 추가된다. 포커스 맵에서 외부 포커스 포인트가 제거된다. 경우에 따라 하나 이상의 이미지 스트라이프가 재획득될 수 있다. 마지막으로, 이미지 스트라이프가 샘플의 합성 이미지로 조합(또는, 조립)된다.

Description

슬라이드 스캐닝 시스템의 실시간 포커싱
관련 출원에 대한 상호 참조
본 출원은 2019년 8월 6일에 출원된 미국 가출원 62/883,525에 대한 우선권을 주장하며, 상기 문헌은 그 전문이 본 명세서에 참조로 포함된다.
또한, 본 출원은 다음 출원들과 관련되며, 상기 문헌들은 그 전문이 본 명세서에 참조로 포함된다.
2016년 9월 23일에 출원된 국제 특허 출원 PCT/US2016/053581; 2017년 4월 20일에 출원된 국제 특허 출원 PCT/US2017/028532; 2018년 11월 30일에 출원된 국제 특허 출원 PCT/US2018/063456; 2018년 11월 30일에 출원된 국제 특허 출원 PCT/US2018/063460; 2018년 11월 30일에 출원된 국제 특허 출원 PCT/US2018/063450; 2018년 11월 30일에 출원된 국제 특허 출원 PCT/US2018/063461; 2018년 11월 27일에 출원된 국제 특허 출원 PCT/US2018/062659; 2018년 11월 30일에 출원된 국제 특허 출원 PCT/US2018/063464; 2018년 10월 4일에 출원된 국제 특허 출원 PCT/US2018/054460; 2018년 11월 30일에 출원된 국제 특허 출원 PCT/US2018/063465; 2018년 10월 4일에 출원된 국제 특허 출원 PCT/US2018/054462; 2018년 11월 30일에 출원된 국제 특허 출원 PCT/US2018/063469; 2018년 10월 4일에 출원된 국제 특허 출원 PCT/US2018/054464; 2018년 8월 17일에 출원된 국제 특허 출원 PCT/US2018/046944; 2018년 10월 4일에 출원된 국제 특허 출원 PCT/US2018/054470; 2018년 9월 28일에 출원된 국제 특허 출원 PCT/US2018/053632; 2018년 9월 28일에 출원된 국제 특허 출원 PCT/US2018/053629; 2018년 9월 28일에 출원된 국제 특허 출원 PCT/US2018/053637; 2018년 11월 28일에 출원된 국제 특허 출원 PCT/US2018/062905; 2018년 11월 29일에 출원된 국제 특허 출원 PCT/US2018/063163; 2017년 12월 29일에 출원된 국제 특허 출원 PCT/US2017/068963; 2019년 3월 1일에 출원된 국제 특허 출원 PCT/US2019/020411; 2017년 12월 29일에 출원된 미국 특허 출원 29/631,492; 2017년 12월 29일에 출원된 미국 특허 출원 29/631,495; 2017년 12월 29일에 출원된 미국 특허 출원 29/631,499; 및 2017년 12월 29일에 출원된 미국 특허 출원 29/631,501.
발명 분야
본 명세서에 설명된 실시예들은 일반적으로 슬라이드 스캐닝 시스템(slide- scanning system)의 제어에 관한 것이며, 보다 자세하게는, 슬라이드 스캐닝 시스템의 실시간 포커싱에 관한 것이다.
관련 기술
디지털 병리학(digital pathology)은 물리적 슬라이드에서 생성된 정보를 관리할 수 있는 컴퓨터 기술을 통해 구현되는 이미지 기반 정보 환경이다. 디지털 병리학은 물리적 유리 슬라이드에서 표본을 스캔하고 컴퓨터 모니터에서 저장, 보기, 관리, 및 분석할 수 있는 디지털 슬라이드 이미지를 생성하는 가상 현미경 검사(virtual microscopy)를 통해 부분적으로 구현된다. 전체 유리 슬라이드를 이미지화할 수 있게 되면서 디지털 병리학 분야가 폭발적으로 성장했으며, 현재 암과 같은 중요한 질병의 진단, 예후, 및 예측을 보다 우수하고, 빠르고, 저렴하게 달성하기 위한 진단 의학의 가장 유망한 방법 중 하나로 여겨지고 있다.
디지털 병리학 산업의 주요 목표는 스캔 시간을 줄이는 것이다. 실제 스캐닝 중에 실시간 포커싱으로 전환하면 스캔 시간을 줄일 수 있다. 실제 스캐닝 중에 실시간 포커스를 사용하여 고품질 포커스 이미지 데이터를 얻으려면, 스캐닝 장치가 대물 렌즈(objective lens)의 다음 Z 값(next Z value)(예를 들어, 대물 렌즈와 표본 사이의 거리)을 결정할 수 있어야 한다. 따라서, 기존 시스템에서 볼 수 있는 실시간 포커싱의 중요한 문제점들을 극복할 수 있는 시스템과 방법이 필요하다.
슬라이드 스캐닝 시스템에서 실시간 포커싱을 위한 시스템, 방법, 및 비 일시적 컴퓨터 판독 가능 저장 매체(A non-transitory computer-readable storage medium)가 개시된다.
일 실시예에 있어서, 스캐닝 시스템의 적어도 하나의 하드웨어 프로세서를 사용하여 수행되는 방법은 포커스 맵을 초기화하는 단계; 유리 슬라이드 상의 샘플의 적어도 일부의 복수의 이미지 스트라이프들을 획득하는 동안 상기 포커스 맵에 포커스 포인트들을 추가하는 단계로서, 상기 복수의 이미지 스트라이프들 각각에 대하여, 이미징 라인 스캔 카메라(imaging line-scan camera)와 틸트된 포커싱 라인 스캔 카메라(tilted focusing line-scan camera)를 모두 이용하여 상기 이미지 스트라이프를 집합적으로 나타내는 복수의 프레임들 각각을 획득하는 단계, 및 상기 복수의 프레임들 중 신뢰가능한(trusted) 프레임들에 대한 최적의 포커스 위치를 나타내는 포커스 포인트들을 상기 포커스 맵에 추가하는 단계를 포함하는 단계; 상기 포커스 맵에서 외부 포커스 포인트들을 제거하는 단계; 상기 복수의 이미지 스트라이프들의 상기 복수의 프레임들 각각에 대한 포커스 오차에 기초하여 상기 복수의 이미지 스트라이프들 중 하나 이상을 재스트라이프(restripe)할지 여부를 결정하는 단계; 하나 이상의 이미지 스트라이프를 재스트라이프할 때, 하나 이상의 이미지 스트라이프를 재획득(reacquire)하는 단계; 및 상기 복수의 이미지 스트라이프들을 상기 샘플의 적어도 일부의 합성 이미지로 조립하는 단계를 포함할 수 있다.
상기 복수의 이미지 스트라이프들을 획득하는 동안 상기 포커스 맵에 포커스 포인트들을 추가하는 단계는, 획득될 상기 복수의 이미지 스트라이프들 중 마지막 이미지 스트라이프를 제외한 이미지 스트라이프들 각각에 대하여, 상기 이미지 스트라이프를 획득한 후 획득할 상기 이미지 스트라이프들 중 다음 이미지 스트라이프로부터 방향을 결정하는 단계를 더 포함할 수 있다. 상기 복수의 이미지 스트라이프들을 획득하는 단계는, 기준 스트라이프를 획득하는 단계; 상기 기준 스트라이프의 제1 측으로부터 상기 샘플의 스캔 영역의 제1 에지까지 순차적으로 이미지 스트라이프들을 획득하는 단계; 및 상기 기준 스트라이프의 상기 제1 측에 대향하는 상기 기준 스트라이프의 제2 측으로부터 상기 스캔 영역의 상기 제1 에지에 대향하는 상기 스캔 영역의 상기 제2 에지까지 순차적으로 이미지 스트라이프들을 획득하는 단계를 포함할 수 있다.
상기 방법은 상기 복수의 이미지 스트라이프들의 획득을 시작하기 전, 상기 포커스 맵에 복수의 매크로 포커스 포인트들을 추가하는 단계를 더 포함할 수 있다. 상기 방법은 상기 복수의 이미지 스트라이프들 중 하나 이상을 획득한 후, 상기 포커스 맵에 하나 이상의 매크로 포커스 포인트를 추가하는 단계를 더 포함할 수 있다.
상기 복수의 이미지 스트라이프들을 획득하는 동안 상기 포커스 맵에 포커스 포인트들을 추가하는 단계는, 상기 복수의 이미지 스트라이프들 각각의 상기 복수의 프레임들 각각에 대해 상기 프레임이 신뢰가능한지 여부를 결정하는 단계를 더 포함할 수 있다. 상기 프레임이 신뢰가능한지 여부를 결정하는 단계는, 상기 이미징 라인 스캔 카메라에 의해 획득된 상기 프레임의 각 열에 대한 평균 그레디언트 벡터(average gradient vector)를 포함하는 메인 그레디언트 벡터(main gradient vector)를 계산하는 단계; 상기 틸트된 포커싱 라인 스캔 카메라에 의해 획득된 상기 프레임의 각 열에 대한 평균 그레디언트 벡터를 포함하는 틸트 그레디언트 벡터(tilt gradient vector)를 계산하는 단계; 상기 메인 그레디언트 벡터에서 분석 가능한 열의 수를 결정하는 단계; 상기 메인 그레디언트 벡터 및 상기 틸트 그레디언트 벡터에 기초하여 비율 벡터(ratio vector)를 계산하는 단계; 상기 분석 가능한 열의 수 및 상기 비율 벡터에 기초하여 상기 프레임이 분석 가능한지 여부를 결정하는 단계; 상기 프레임이 분석 가능하지 않다고 결정할 때, 상기 프레임이 신뢰가능하지 않다고 결정하는 단계; 및 상기 프레임이 분석 가능하다고 결정할때, 상기 비율 벡터로 표현되는 비율 곡선에 적어도 하나의 가우스 함수(Gaussian function)를 피팅하고, 상기 가우스 함수의 피크를 최적의 포커스 위치로 식별하고, 상기 최적의 포커스 위치에서 상기 비율 벡터의 진폭을 최대 적합치(fit maximum)로 식별하고, 상기 최적의 포커스 위치 및 상기 최대 적합치에 기초하여 상기 프레임이 신뢰 가능한지 여부를 결정하고, 상기 프레임이 신뢰가능하지 않다고 결정할 때 상기 프레임은 신뢰되지 않는 것으로 결정하고, 상기 프레임이 신뢰가능하다고 결정할 때 상기 포커스 맵에 상기 최적의 포커스 위치를 추가하는 단계를 더 포함할 수 있다. 상기 분석 가능한 열의 수를 결정하는 단계는, 임계값을 초과하는 상기 메인 그레디언트 벡터의 열 수를 결정하는 단계를 포함할 수 있다. 상기 비율 벡터를 계산하는 단계는, 상기 틸트 그레디언트 벡터를 상기 메인 그레디언트 벡터로 나누는 단계를 포함할 수 있다. 상기 프레임이 분석 가능한지 여부를 결정하는 단계는, 상기 분석 가능한 열의 수가 미리 정의된 임계값 백분율을 초과하는지 여부를 결정하는 단계; 상기 이미징 라인 스캔 카메라와 초점 거리가 동일한 상기 틸트된 포커싱 라인 스캔 카메라의 한 지점인 동초점 위치(parfocal location)에서, 상기 비율 벡터의 값이 미리 정의된 범위 내에 있는지 여부를 결정하는 단계; 상기 분석 가능한 열의 수가 상기 미리 정의된 임계값을 초과하지 않거나 상기 동초점 위치에서 상기 비율 벡터의 값이 상기 미리 정의된 범위 내에 있지 않다고 판단되는 경우, 상기 프레임은 분석할 수 없다고 결정하는 단계; 및 상기 분석 가능한 열의 수가 상기 미리 정의된 임계값을 초과하고 상기 동초점 위치에서 상기 비율 벡터의 값이 상기 미리 정의된 범위 내에 있다고 판단되는 경우, 상기 프레임은 분석 가능하다고 결정하는 단계를 포함할 수 있다. 상기 비율 곡선에 적어도 하나의 가우스 함수를 피팅하는 단계는, 평균 값들의 범위 및 시그마 값들의 범위 내에서 복수의 가능한 가우스 함수들을 샘플링하는 단계; 및 상기 비율 곡선과 가장 작은 차이로 상기 최적의 포커스 위치를 식별하는 데 사용될 상기 복수의 가능한 가우스 함수들 중 하나를 선택하는 단계를 포함할 수 있다.
상기 포커스 맵에서 외부 포커스 포인트들을 제거하는 단계는, 상기 포커스 맵 내의 하나 이상의 샘플 포인트에 대하여, 네 개의 방향 각각에서, 상기 포커스 맵 내에서 상기 샘플 포인트로부터 떨어진 기울기를 계산하는 단계; 및 상기 계산된 기울기들의 최소값이 미리 정의된 임계값을 초과하는 경우, 상기 포커스 맵에서 상기 샘플 포인트를 제거하는 단계를 포함할 수 있다.
상기 복수의 이미지 스트라이프들 중 하나 이상을 재스트라이프할지 여부를 결정하는 단계는, 상기 포커스 맵에서 외부 포커스 포인트들을 제거한 후, 상기 복수의 이미지 스트라이프들 각각의 상기 복수의 프레임들 각각에 대하여, 상기 프레임을 획득하는 동안 대물 렌즈(objective lens)의 실제 위치를 상기 포커스 맵 내의 상기 프레임에 대한 최적의 포커스 위치로부터 감산하여 상기 포커싱 오차를 계산하는 단계; 및 상기 복수의 이미지 스트라이프들 각각에 대하여, 미리 정의된 임계값을 초과하는 포커스 오차를 갖는 상기 프레임의 수가 미리 정의된 임계값 백분율을 초과하는 경우 상기 이미지 스트라이프를 재스트라이프하는 것으로 결정하는 단계를 포함할 수 있다.
상기 방법은 서버와 같은 프로세서 기반 시스템의 실행 가능한 소프트웨어 모듈 및/또는 비 일시적 컴퓨터 판독 가능 매체(non-transitory computer- readable medium)에 저장된 실행 가능한 명령어로 구현될 수 있다.
본 명세서에 설명된 실시예들에 따르면, 슬라이드 스캐닝 시스템(slide- scanning system)을 제어할 수 있다.
구조 및 작동에 관한 본 발명의 세부 사항은 첨부된 도면들을 참조하여 부분적으로 파악될 수 있으며, 여기서 동일한 참조 번호는 동일한 부분을 나타낼 수 있다.
도 1a는 본 명세서에 설명된 다양한 실시예들과 관련하여 사용될 수 있는 프로세서 지원 장치(processor-enabled device)를 예시적으로 도시한다.
도 1b는 일 실시예에 따른 하나의 선형 어레이(single linear array)를 갖는 라인 스캔 카메라(line-scan camera)를 도시한다.
도 1c는 일 실시예에 따른 3개의 선형 어레이를 갖는 라인 스캔 카메라를 도시한다.
도 1d는 일 실시예에 따른 복수의 선형 어레이들을 갖는 라인 스캔 카메라를 도시한다.
도 1e는 일 실시예에 따른 스캐닝 시스템에서 라인 스캔 카메라의 구성을 예시적으로 도시하는 측면도이다.
도 1f는 일 실시예에 따른 이미징 광 경로(imaging optical path)에 대한 이미징 센서의 구성을 예시적으로 도시하는 평면도이다.
도 1g는 일 실시예에 따른 포커싱 광 경로(focusing optical path)에 대한 포커싱 센서의 구성을 예시적으로 도시하는 평면도이다.
도 1h는 일 실시예에 따른 포커싱 센서를 예시적으로 도시한다.
도 2는 일 실시예에 따른 계산된 매크로 포커스 오프셋(calculated macro focus offset)을 이용하여 오프셋 보정을 적용하기 전후의 포커스 오차를 예시적으로 도시한다.
도 3은 일 실시예에 따른 저역 통과 필터링된 신호(low-pass filtered signal)와 피팅(fitting)을 예시적으로 도시하는 그래프이다.
도 4는 일 실시예에 따른 동초점(parfocal) 계산을 도시한다.
도 5a 내지 도 5c는 일 실시예에 따른 유리 슬라이드 상의 샘플의 이미지를 스캐닝하는 과정을 예시적으로 도시한다.
도 6a 및 도 6b는 일 실시예에 따른 메인 이미징 센서와 틸트된(tilted) 포커싱 센서에 의해 각각 획득된 이미지 데이터의 프레임들을 예시적으로 도시한다.
도 7은 일 실시예에 따른 비율 벡터(ratio vector)를 계산하는 과정을 예시적으로 도시한다.
도 8a는 일 실시예에 따른 메인 이미징 센서와 틸트된 포커싱 센서에 대한 그레디언트(gradient) 벡터들을 예시적으로 도시한다.
도 8b는 일 실시예에 따른 도 8a의 2개의 그레디언트 벡터에 대한 비율 벡터를 예시적으로 도시한다.
도 9는 일 실시예에 따른 동초점으로부터 고정된 오프셋에서 스캔된 티슈 샘플(tissue sample)에 대한 비율 곡선들(ratio curves)을 예시적으로 도시한다.
도 10은 일 실시예에 따른 가우스 피팅 프로세스(Gaussian fitting process)를 예시적으로 도시한다.
도 11은 일 실시예에 따른 다른 평균 값들과 고정된 폭에 대한 가우스 테스트 함수들(Gaussian test functions)의 부분 집합(partial set)을 예시적으로 도시한다.
도 12는 일 실시예에 따른 비율 곡선이 2개의 피크를 갖는 가우스 피팅 프로세스를 예시적으로 도시한다.
도 13은 일 실시예에 따른 가우스 함수 세트들(sets of Gaussian functions)을 예시적으로 도시한다.
도 14는 일 실시예에 따른 최적의 가우스 함수의 최소 RMS 차이 값(RMS difference value)과 위치를 예시적으로 도시한다.
도 15는 일 실시예에 따른 오차 기울기(error slope) 계산을 예시적으로 도시한다.
도 16은 일 실시예에 따른 이상치 검출(outlier detection)을 예시적으로 도시한다.
도 17a 및 도 17b는 일 실시예에 따른 포커스 오차들을 나타내는 히트 맵들(heat maps)을 예시적으로 도시한다.
일 실시예에 있어서, 슬라이드 스캐닝 시스템에서 실시간 포커싱을 위한 시스템, 방법, 및 비 일시적 컴퓨터 판독 가능 매체가 개시된다. 설명을 읽고 나면, 다양한 대안적 실시예들 및 대안적 적용들에서 본 발명을 구현하는 방법이 통상의 기술자에게 명백할 것이다. 다만, 본 발명의 다양한 실시예들이 설명될 것이지만, 이러한 실시예들은 단지 예시 및 실례로서 제시된 것으로 이해되어야 하며 이에 제한되지 않는다. 이와 같이, 다양한 실시예들에 대한 상세한 설명은 첨부된 청구 범위에 기재된 바와 같이 본 발명의 범위 또는 폭을 제한하여 해석되어서는 안된다.
1. 스캐닝 시스템의 예(Example Scanning System)
도 1a는 본 명세서에 설명된 다양한 실시예들과 관련하여 사용될 수 있는 프로세서에서 이용 가능한 슬라이드 스캐닝 시스템(processor-enabled slide- scanning system)(100)을 예시적으로 도시하는 블록도이다. 통상의 기술자에 의해 이해되는 바와 같이 스캐닝 시스템(100)의 대체 형태들이 사용될 수도 있다. 도시된 실시예에서, 스캐닝 시스템(100)은 하나 이상의 프로세서(104), 하나 이상의 메모리(106), 하나 이상의 모션 컨트롤러(108), 하나 이상의 인터페이스 시스템(110), 하나 이상의 샘플(116)이 있는 하나 이상의 유리 슬라이드(114)를 각각 지지하는 하나 이상의 가동 스테이지(movable stage)(112), 샘플(116)을 비추는 하나 이상의 조명 시스템(118), 광축을 따라 이동하는 광 경로(122)를 각각 정의하는 하나 이상의 대물 렌즈(120), 하나 이상의 대물 렌즈 포지셔너(objective lens positioner)(124), 하나 이상의 선택적 에피-일루미네이션 시스템(epi-illumination system)(126)(예를 들어, 형광 스캐닝 실시예(fluorescence-scanning embodiment)에 포함됨), 하나 이상의 포커싱 광학 장치(focusing optics)(128), 하나 이상의 라인 스캔 카메라(130), 및/또는 하나 이상의 영역 스캔 카메라(132)를 포함하고, 각각 샘플(116) 및/또는 유리 슬라이드(114) 상의 별도의 시야(field of view)(134)를 정의하는 디지털 이미징 장치로서 제공된다. 스캐닝 시스템(100)의 다양한 요소들은 하나 이상의 통신 버스(communication bus)(102)를 통해 통신적으로 결합된다. 스캐닝 시스템(100)의 다양한 요소들 각각은 복수일 수 있지만, 다음 설명의 단순화를 위해, 이러한 요소들은 적절한 정보를 전달하기 위해 복수로 설명해야하는 경우를 제외하고는 단수로 설명될 것이다.
프로세서(104)는 예를 들어, 중앙 처리 장치(central processing unit, CPU)와 명령을 병렬로 처리할 수 있는 별도의 그래픽 처리 장치(graphics processing unit, GPU), 또는 명령을 병렬로 처리할 수 있는 멀티코어 프로세서(multicore processor)를 포함할 수 있다. 특정 구성 요소들을 제어하거나 이미지 처리와 같은 특정 기능을 수행하기 위해 별도의 추가 프로세서들이 제공될 수도 있다. 예를 들어, 추가 프로세서는 데이터 입력을 관리하는 보조 프로세서, 부동 소수점(floating-point) 수학적 연산을 수행하는 보조 프로세서, 신호 처리 알고리즘의 빠른 실행에 적합한 구성을 가진 특수 목적 프로세서(예를 들어, 디지털 신호 프로세서), 메인 프로세서에 종속된 슬레이브(slave) 프로세서(예를 들어, 백 엔드 프로세서), 라인 스캔 카메라(130), 스테이지(112), 대물 렌즈(120), 및/또는 디스플레이를 제어하기 위한 추가 프로세서(예를 들어, 스캐닝 시스템(100)에 통합된 터치 패널 디스플레이를 포함하는 콘솔(console))를 포함할 수 있다. 이러한 추가 프로세서는 별도의 개별 프로세서이거나 단일 프로세서에 통합될 수 있다.
메모리(106)는 프로세서(104)에 의해 실행될 수 있는 프로그램에 대한 데이터 및 명령을 저장한다. 메모리(106)는 데이터 및 명령을 저장하는 하나 이상의 휘발성 및/또는 비 휘발성 컴퓨터 판독 가능 저장 매체를 포함할 수 있다. 예를 들어, 이러한 매체는 랜덤 액세스 메모리(random-access memory, RAM), 읽기 전용 메모리(read-only memory, ROM), 하드 디스크 드라이브, 이동식 저장 드라이브(예를 들어, 플래시 메모리 포함) 등을 포함할 수 있다. 프로세서(104)는 메모리(106)에 저장된 명령을 실행하고, 스캐닝 시스템(100)의 전반적인 기능을 수행하기 위하여 통신 버스(102)를 통해 스캐닝 시스템(100)의 다양한 요소들과 통신하도록 구성된다.
통신 버스(102)는 아날로그 전기 신호 및/또는 디지털 데이터를 전달하도록 구성될 수 있다. 따라서, 통신 버스(102)를 통한 프로세서(104), 모션 컨트롤러(108), 및/또는 인터페이스 시스템(110)으로부터의 통신은 전기 신호 및 디지털 데이터를 모두 포함할 수 있다. 프로세서(104), 모션 컨트롤러(108), 및/또는 인터페이스 시스템(110)은 또한 무선 통신 링크(wireless communication link)를 통해 스캐닝 시스템(100)의 다양한 요소들 중 하나 이상과 통신하도록 구성될 수 있다.
모션 제어 시스템(또는, 모션 컨트롤러)(108)은 스테이지(112)의 X, Y, 및/또는 Z 이동(예를 들어, XY 평면 내에서), 대물 렌즈(120)의 X, Y, 및/또는 Z 이동(예를 들어, 대물 렌즈 포지셔너(124)를 통해 XY 평면에 직교하는 Z 축을 따라), 본 명세서의 다른 곳에서 설명된 캐러셀(carousel)의 회전 운동, 본 명세서의 다른 곳에서 설명된 푸시/풀 어셈블리(push/pull assembly)의 측면 이동, 및/또는 스캐닝 시스템(100)의 다른 이동 구성 요소를 정밀하게 제어하고 조정하도록 구성된다. 예를 들어, 에피-일루미네이션 시스템(126)을 포함하는 형광 스캐닝 실시예에서, 모션 제어 시스템(108)은 에피-일루미네이션 시스템(126)에서 광학 필터 등의 움직임을 조정하도록 구성될 수 있다.
인터페이스 시스템(110)은 스캐닝 시스템(100)이 다른 시스템 및 운용자(human operator)와 인터페이스할 수 있게 한다. 예를 들어, 인터페이스 시스템(110)은 그래픽 사용자 인터페이스를 통해 운영자에게 직접 정보를 제공, 및/또는 터치 센서를 통해 운영자로부터 직접 입력을 허용하는 콘솔(예를 들어, 터치 패널 디스플레이)을 포함할 수 있다. 인터페이스 시스템(110)은 또한 스캐닝 시스템(100)과, 스캐닝 시스템(100)에 직접적으로 연결된 하나 이상의 외부 장치(예를 들어, 프린터, 이동식 저장 매체 등) 및/또는 스캐닝 시스템(100)에 간접적으로 연결된 하나 이상의 외부 장치(예를 들어, 이미지 저장 시스템, SAM(Scanner Administration Manager) 서버 및/또는 기타 관리 서버, 운영자 스테이션, 사용자 스테이션 등) 간의 통신 및 데이터 전송을 용이하게 하도록 구성될 수 있다. 예를 들어, 상기 하나 이상의 외부 장치는 하나 이상의 네트워크를 통해 스캐닝 시스템(100)에 간접적으로 연결될 수 있다.
조명 시스템(118)은 샘플(116)의 적어도 일부를 조명하도록 구성된다. 예를 들어, 조명 시스템(118)은 하나 이상의 광원 및 조명 광학 장치를 포함할 수 있다. 광원(들)은 광 출력을 최대화하기 위한 오목 반사 미러(concave reflective mirror)와 열을 억제하기 위한 KG-1 필터(KG-1 filter)가 있는 가변 강도 할로겐 광원(variable intensity halogen light source)을 포함할 수 있다. 광원(들)은 임의의 유형의 아크등(arc-lamp), 레이저, 또는 기타 광원을 포함할 수 있다. 일 실시예에서, 조명 시스템(118)은 라인 스캔 카메라(130) 및/또는 영역 스캔 카메라(132)가 샘플(116)을 통해 전송되는 광학 에너지를 감지하도록 전송 모드에서 샘플(116)을 조명한다. 대안적으로 또는 추가적으로, 조명 시스템(118)은 라인 스캔 카메라(130) 및/또는 영역 스캔 카메라(132)가 샘플(116)로부터 반사된 광학 에너지를 감지하도록 반사 모드에서 샘플(116)을 조명하도록 구성될 수 있다. 조명 시스템(118)은 공지된 광학 현미경 모드에서 샘플(116)의 조사에 적합하도록 구성될 수 있다.
일 실시예에서, 스캐닝 시스템(100)은 형광 스캐닝(fluorescence scanning)을 위해 스캐닝 시스템(100)을 최적화하기 위한 에피-일루미네이션 시스템(126)을 포함한다. 형광 스캐닝이 스캐닝 시스템(100)에 의해 지원되지 않는 경우, 에피-일루미네이션 시스템(126)은 생략될 수 있음을 이해해야 한다. 형광 스캐닝은 특정 파장(즉, 여기(勵起))에서 빛을 흡수할 수 있는 광자에 민감한 분자(photon-sensitive molecule)인 형광 분자를 포함하는 샘플(116)을 스캔하는 것이다. 이러한 광자에 민감한 분자는 또한 더 높은 파장(즉, 방출)에서 빛을 방출한다. 광루미네선스(photoluminescence) 현상의 효율이 매우 낮기 때문에 방출되는 빛의 양이 매우 낮은 경우가 많다. 이러한 방출되는 빛의 적은 양은 전형적으로 샘플(116)을 스캐닝하고 디지털화하기 위한 종래의 기술(예를 들어, 투과 모드 현미경)을 방해한다.
유리하게는, 형광 스캐닝을 이용하는 스캐닝 시스템(100)의 실시예에서, 다중 선형 센서 어레이(예를 들어, TDI(time-delay-integration) 라인 스캔 카메라)를 포함하는 라인 스캔 카메라(130)의 사용은 라인 스캔 카메라(130)의 복수의 선형 센서 어레이들 각각에 샘플(116)의 동일 영역을 노출함으로써 라인 스캔 카메라(130)의 광에 대한 감도를 증가시킨다. 이러한 점은 방출되는 빛의 레벨이 낮은 희미한 형광 샘플을 스캔할 때 특히 유용하다. 따라서, 형광 스캐닝 실시예에서, 라인 스캔 카메라(130)는 바람직하게는 흑백(monochrome) TDI 라인 스캔 카메라이다. 흑백 이미지는 샘플(116)에 존재하는 다양한 채널의 실제 신호를 보다 정확하게 표현하기 때문에 형광 현미경 검사에서 이상적이다. 통상의 기술자에 의해 이해되는 바와 같이, 형광 샘플은 "채널(channels)"이라고도 하는 상이한 파장에서 빛을 방출하는 다중 형광 염료로 라벨될 수 있다.
또한, 다양한 형광 샘플들의 로우-엔드(low-end) 및 하이-엔드(high-end) 신호 레벨은 라인 스캔 카메라(130)가 감지할 수 있는 넓은 스펙트럼의 파장을 제공하기 때문에 라인 스캔 카메라(130)가 감지할 수 있는 로우-엔드 및 하이-엔드 신호 레벨도 유사하게 넓은 것이 바람직하다. 따라서, 형광 스캐닝 실시예에서, 라인 스캔 카메라(130)는 흑색 10 비트 64 선형 어레이 TDI 라인 스캔 카메라(monochrome 10-bit 64-linear-array TDI line-scan camera)를 포함할 수 있다. 라인 스캔 카메라(130)에 대한 다양한 비트 깊이(bit depths)가 이러한 실시예와 함께 사용될 수 있다는 점에 유의해야 한다.
가동 스테이지(112)는 프로세서(104) 또는 모션 컨트롤러(108)의 제어 하에 정확한 X-Y 이동을 위해 구성된다. 가동 스테이지(112)는 또한 프로세서(104) 또는 모션 컨트롤러(108)의 제어 하에 Z 이동을 위해 구성될 수 있다. 가동 스테이지(112)는 라인 스캔 카메라(130) 및/또는 영역 스캔 카메라(132)에 의한 이미지 데이터 캡처 동안 원하는 위치에 샘플(116)을 위치시키도록 구성된다. 가동 스테이지(112)는 또한 스캐닝 방향(scanning direction)으로 샘플(116)을 실질적으로 일정한 속도로 가속한 다음, 라인 스캔 카메라(130)에 의한 이미지 데이터 캡처 동안 실질적으로 일정한 속도를 유지하도록 구성된다. 일 실시예에서, 스캐닝 시스템(100)은 가동 스테이지(112) 상의 샘플(116)의 위치를 보조하기 위해 고정밀(high-precision)하고 긴밀(tightly)하게 조정된 X-Y 그리드를 사용할 수 있다. 일 실시예에서, 가동 스테이지(112)는 X 축 및 Y 축 모두에 사용되는 고정밀 인코더(high-precision encoder)를 갖는 선형 모터 기반 X-Y 스테이지(linear-motor-based X-Y stage)이다. 예를 들어, 매우 정밀한 나노미터 인코더(nanometer encoder)는 스캐닝 방향의 축과, 스캐닝 방향에 수직인 방향 및 스캐닝 방향과 동일한 평면에 있는 축에 사용될 수 있다. 스테이지(112)는 또한 샘플(116)이 배치되는 유리 슬라이드(114)를 지지하도록 구성된다.
샘플(116)은 광학 현미경으로 조사할 수 있는 모든 것이 될 수 있다. 예를 들어, 유리 현미경 슬라이드(114)는 티슈(또는, 조직)(tissues) 및 세포(cells), 염색체, DNA(deoxyribonucleic acid), 단백질, 혈액, 골수, 소변, 박테리아, 비드(beads), 생검 재료, 또는 기타 유형의 생물학적 물질을 포함하는 표본용 관찰 기질, 또는 죽었거나 살아있거나, 얼룩이 지거나 얼룩지지 않았거나, 라벨되거나 라벨되지 않은 물질로 자주 사용된다. 샘플(116)은 또한 상보적 DNA(cDNA) 또는 리보핵산(RNA)과 같은 모든 유형의 DNA 또는 DNA 관련 물질의 어레이, 또는 일반적으로 마이크로 어레이로 알려진 모든 샘플을 포함한 모든 유형의 슬라이드 또는 기타 기질에 증착되는 단백질일 수 있다. 샘플(116)은 마이크로티터 플레이트(microtiter plate)(예를 들어, 96-웰 플레이트(96-well plate))일 수 있다. 샘플(116)의 다른 예는 집적 회로 기판(integrated circuit board), 전기 영동 레코드(electrophoresis record), 페트리 디시(petri dish), 필름, 반도체 재료, 법의학 재료, 및 기계 부품을 포함한다.
대물 렌즈(120)는 대물 렌즈 포지셔너(124)에 장착되고, 일 실시예에서, 대물 렌즈 포지셔너(124)는 대물 렌즈(120)에 의해 정의된 광축(optical axis)을 따라 대물 렌즈(120)를 이동시키기 위해 매우 정밀한 선형 모터를 사용한다. 예를 들어, 대물 렌즈 포지셔너(124)의 선형 모터는 50 나노미터 인코더(fifty-nanometer encoder)를 포함할 수 있다. X, Y, 및/또는 Z 축에서 스테이지(112) 및 대물 렌즈(120)의 상대적 위치는 스캐닝 시스템(100)의 전반적인 작동을 위한 컴퓨터 실행 가능한 프로그램된 단계들(computer-executable programmed steps)을 포함하는 정보와 명령을 저장하기 위해 메모리(106)를 사용하는 프로세서(104)의 제어 하에 모션 컨트롤러(108)를 사용하여 폐루프 방식(closed-loop manner)으로 조정 및 제어된다.
일 실시예에서, 대물 렌즈(120)는 투과 모드 조명 현미경(transmission-mode illumination microscopy), 반사 모드 조명 현미경(reflection-mode illumination microscopy), 및/또는 에피-일루미네이션 모드 형광 현미경(epi-illumination-mode fluorescence microscopy)에 적합한 평면 무색 무한 보정 대물 렌즈(plan apochromatic ("APO") infinity-corrected objective lens)이다(예를 들어, Olympus 40X, 0.75NA 또는 20X, 0.75 NA). 유리하게는, 대물 렌즈(120)는 색 수차 및 구면 수차를 보정할 수 있다. 대물 렌즈(120)가 무한 보정되므로 포커싱 광학 장치(128)는 대물 렌즈(120) 상의 광 경로(122)에 배치될 수 있으며, 대물 렌즈(120)를 통과하는 광선(light beam)은 콜리메이트된 광선(collimated light beam)이 된다. 포커싱 광학 장치(128)는 대물 렌즈(120)에 의해 캡처된 광학 신호를 라인 스캔 카메라(130) 및/또는 영역 스캔 카메라(132)의 광 반응성 요소(light-responsive elements)에 초점을 맞추고, 필터, 배율 변경 렌즈(magnification changer lenses) 등과 같은 광학 부품을 포함할 수 있다. 포커싱 광학 장치(128)와 결합된 대물 렌즈(120)는 스캐닝 시스템(100)에 대한 총 배율을 제공한다. 일 실시예에서, 포커싱 광학 장치(128)는 튜브 렌즈(tube lens) 및 선택적인 2X 배율 변경기(optional 2X magnification changer)를 포함할 수 있다. 유리하게는, 상기 2X 배율 변경기는 네이티브 20X 대물 렌즈(120)가 40X 배율로 샘플(116)을 스캔할 수 있게 한다.
라인 스캔 카메라(130)는 적어도 하나의 선형 어레이의 화상 요소(142)("픽셀")를 포함한다. 라인 스캔 카메라(130)는 흑백 또는 컬러일 수 있다. 컬러 라인 스캔 카메라는 일반적으로 최소 3개의 선형 어레이를 갖는 반면, 흑백 라인 스캔 카메라는 단일 선형 어레이 또는 복수 선형 어레이를 가질 수 있다. 카메라의 일부로 패키지되거나 이미징 전자 모듈에 맞춤 통합된(custom-integrated) 모든 유형의 단수 또는 복수 선형 어레이도 사용될 수 있다. 예를 들어, 3개의 선형 어레이("레드-그린-블루" 또는 "RGB") 컬러 라인 스캔 카메라 또는 96개의 선형 어레이 흑백 TDI도 사용될 수 있다. TDI 라인 스캔 카메라는 일반적으로 통합 단계들(integration stages)의 숫자의 제곱근에 비례하여 신호 대 잡음비(signal-to-noise ratio)("SNR")를 증가시키면서 이전에 시료의 이미지화된 영역의 강도(intensity) 데이터를 합산하므로써 출력 신호에서 훨씬 더 나은 신호 대 잡음비(signal-to-noise ratio)("SNR")를 제공한다. TDI 라인 스캔 카메라는 여러 언이어 어레이들(multiple Unear arrays)을 포함한다. 예를 들어, TDI 라인 스캔 카메라는 24, 32, 48, 64, 96, 또는 그 이상의 선형 어레이와 함께 사용할 수 있다. 스캐닝 시스템(100)은 또한 일부는 512 픽셀, 일부는 1,024 픽셀, 다른 일부는 4,096 픽셀을 갖는 다양한 형식으로 제조된 선형 어레이를 지원한다. 유사하게, 다양한 픽셀 크기를 갖는 선형 어레이가 또한 스캐닝 시스템 (100)에서 사용될 수 있다. 임의의 유형의 라인 스캔 카메라(130)를 선택하기 위한 핵심적인 요건은 스테이지(112)의 움직임이 라인 스캔 카메라(130)의 라인 속도(또는, 비율)(line rate)와 동기화되어, 샘플(116)의 디지털 이미지 캡처 동안 스테이지(112)가 라인 스캔 카메라(130)에 대해 움직일 수 있도록 하는 것이다.
일 실시예에서, 라인 스캔 카메라(130)에 의해 생성된 이미지 데이터는 메모리(106)의 일부에 저장되고, 프로세서(104)에 의해 처리되어 샘플(116)의 적어도 일부의 연속 디지털 이미지를 생성한다. 연속 디지털 이미지는 프로세서(104)에 의해 추가로 처리될 수 있고, 처리된 연속 디지털 이미지는 또한 메모리(106)에 저장될 수 있다.
2개 이상의 라인 스캔 카메라(130)가 있는 실시예에서, 라인 스캔 카메라(130)들 중 적어도 하나는 이미징 센서(130A)로서 기능하도록 구성된 다른 라인 스캔 카메라(130)들 중 적어도 하나와 조합하여 작동하는 포커싱 센서로서 기능하도록 구성될 수 있다. 포커싱 센서는 이미징 센서(130A)와 동일한 광축 상에 논리적으로 위치될 수 있거나, 포커싱 센서는 스캐닝 시스템(100)의 스캐닝 방향에 대하여 이미징 센서(130A)의 전후에 논리적으로 위치될 수 있다. 포커싱 센서로서 기능하는 적어도 하나의 라인 스캔 카메라(130)를 갖는 실시예에서, 포커싱 센서에 의해 생성된 이미지 데이터는 메모리(160)의 일부에 저장되고, 포커스(또는, 초점) 정보를 생성하기 위해 프로세서(104)에 의해 처리되어 스캐닝 시스템(100)이 샘플(116)과 대물 렌즈(120) 사이의 상대적 거리를 조정하여 스캔하는 동안 샘플(116)에 초점을 유지하도록 한다. 추가로, 일 실시예에서, 포커싱 센서로서 기능하는 적어도 하나의 라인 스캔 카메라(130)는 포커싱 센서의 복수의 개별 픽셀들(142) 각각이 광 경로(122)를 따라 상이한 논리적 높이에 위치하도록 맞춰질 수 있다.
작동시, 스캐닝 시스템(100)의 다양한 구성 요소들 및 메모리(106)에 저장된 프로그래밍된 모듈들은 유리 슬라이드(114) 상에 배치된 샘플(116)의 자동 스캐닝 및 디지털화를 가능하게 한다. 유리 슬라이드(114)는 샘플(116)을 스캐닝하기 위해 스캐닝 시스템(100)의 가동 스테이지(112) 상에 안전하게 배치된다. 프로세서(104)의 제어 하에, 가동 스테이지(112)는 라인 스캔 카메라(130)에 의한 감지를 위해 샘플(116)을 실질적으로 일정한 속도로 가속시키며, 여기서 스테이지(112)의 속도는 라인 스캔 카메라(130)의 라인 속도와 동기화된다. 이미지 데이터의 스트라이프(stripe)를 스캔한 후, 가동 스테이지(112)는 감속하고, 샘플(116)을 실질적으로 완전히 정지시킨다. 그 다음, 가동 스테이지(112)는 이미지 데이터의 다음 스트라이프(subsequent stripe)(예를 들어, 인접한 스트라이프)의 스캐닝을 위해 샘플(116)을 위치시키기 위해 스캐닝 방향에 직각으로 이동한다. 추가 스트라이프들(additional stripes)은 샘플(116)의 전체 부분 또는 전체 샘플(116)이 스캔될 때까지 연속적으로 스캔된다.
예를 들어, 샘플(116)의 디지털 스캐닝 동안, 샘플(116)의 연속적인 디지털 이미지는 이미지 스트라이프를 형성하기 위해 함께 결합되는 복수의 연속적인 시야로 획득된다. 복수의 인접한 이미지 스트라이프들은 유사하게 함께 결합되어 일부 또는 전체 샘플(116)의 연속 디지털 이미지를 형성한다. 샘플(116)의 스캐닝은 수직 이미지 스트라이프들 또는 수평 이미지 스트라이프들을 획득하는 것을 포함할 수 있다. 샘플(116)의 스캐닝은 위에서 아래로, 아래에서 위로, 또는 둘 다(즉, 양방향(bi- directional))일 수 있으며 샘플(116)의 어느 지점에서나 시작할 수 있다. 다른 실시예로, 샘플(116)의 스캐닝은 왼쪽에서 오른쪽, 오른쪽에서 왼쪽, 또는 둘 다(즉, 양방향)일 수 있으며 샘플(116)의 어느 지점에서나 시작할 수 있다. 이미지 스트라이프들은 인접하거나 연속적으로 획득될 필요는 없다. 또한, 샘플(116)의 결과 이미지는 전체 샘플(116)의 이미지이거나 샘플(116)의 일부일 수 있다.
일 실시예에서, 컴퓨터 실행 가능한 명령들(예를 들어, 프로그램된 모듈 및 소프트웨어)은 메모리(106)에 저장되고, 실행될 때 스캐닝 시스템(100)이 설명된 다양한 기능들을 수행할 수 있게 한다(예를 들어, 그래픽 사용자 인터페이스를 표시하고, 개시된 프로세스를 실행하고, 스캐닝 시스템(100)의 구성 요소를 제어하는 등). 본 명세서에서, "컴퓨터 판독 가능 저장 매체"라는 용어는 프로세서(104)에 의한 실행을 위해 스캐닝 시스템(100)에 컴퓨터 실행 가능 명령을 저장하고 제공하는 데 사용되는 임의의 매체를 지칭하기 위해 사용된다. 이러한 매체의 예는 메모리(106), 및 스캐닝 시스템(100)과 직접(예를 들어, 범용 직렬 버스(USB), 무선 통신 프로토콜 등을 통해) 또는 간접적으로(예를 들어, 유선 및/또는 무선 네트워크를 통해) 통신적으로 연결된 임의의 이동식 또는 외부 저장 매체(미도시)를 포함한다.
도 1b는 전하 결합 장치(charge-coupled device)("CCD") 어레이로서 구현될 수 있는 단일 선형 어레이(140)를 갖는 라인 스캔 카메라(130)를 도시한다. 단일 선형 어레이(140)는 복수의 개별 픽셀(142)들을 포함한다. 도시된 실시예에서, 단일 선형 어레이(140)는 4,096개의 픽셀(142)을 갖는다. 다른 실시예에서, 선형 어레이(140)는 더 많거나 더 적은 픽셀들을 가질 수 있다. 예를 들어, 선형 어레이의 일반적인 형식에는 512, 1,024 및 4,096 픽셀들이 포함된다. 픽셀(142)들은 선형 어레이(140)에 대한 시야(field of view)(134)를 정의하기 위해 선형 방식으로 배열된다. 시야(134)의 크기는 스캐닝 시스템(100)의 배율에 따라 변한다.
도 1c는 각각 CCD 어레이로 구현될 수 있는 3개의 선형 어레이(140)를 갖는 라인 스캔 카메라(130)를 도시한다. 3개의 선형 어레이(140)는 결합하여 컬러 어레이(150)를 형성한다. 일 실시예에서, 컬러 어레이(150)의 각 개별 선형 어레이는 예를 들어, 적색, 녹색, 또는 청색을 포함하는 상이한 컬러 강도(intensity)를 검출한다. 컬러 어레이(150)의 각 개별 선형 어레이(140)로부터의 컬러 이미지 데이터는 컬러 이미지 데이터의 단일 시야(134)를 형성하도록 결합된다.
도 1d는 각각 CCD 어레이로 구현될 수 있는 복수의 선형 어레이(140)들을 갖는 라인 스캔 카메라(130)를 도시한다. 복수의 선형 어레이(140)들은 결합하여 TDI 어레이(160)를 형성한다. 유리하게는, TDI 라인 스캔 카메라는 이전에 시료의 이미지화된 영역의 강도 데이터를 합산하여 출력 신호에서 실질적으로 더 나은 SNR을 제공할 수 있으며, 이는 선형 어레이(140)의 개수의 제곱근에 비례하는 SNR을 증가시킬 수 있다(통합 단계(integration stages)라고도 함). TDI 라인 스캔 카메라는 더 많은 수의 선형 어레이(140)를 포함할 수 있다. 예를 들어, TDI 라인 스캔 카메라의 일반적인 형식에는 24, 32, 48, 64, 96, 120, 및 훨씬 더 많은 선형 어레이(140)가 포함된다.
도 1e는 일 실시예에 따른 스캐닝 시스템(100)에서 라인 스캔 카메라(130)의 측면도 구성을 예시적으로 도시한다. 도시된 실시예에서, 스캐닝 시스템(100)은 전동식 스테이지(112) 상에 배치되고 조명 시스템(118)에 의해 조명되고 스캐닝 방향(170)으로 이동되는 티슈(또는, 조직) 샘플(116)과 함께 유리 슬라이드(114)를 포함한다. 대물 렌즈(120)는 슬라이드(114)에서 훈련된(trained) 광학 시야(134)를 가지며, 슬라이드(114)에서 샘플(116)을 통과하고, 슬라이드(114)에서 샘플(116)에서 반사되고, 슬라이드(114)에서 샘플(116)로부터 형광을 내거나 그렇지 않으면 대물 렌즈(120)를 통과하는 조명 시스템(118)으로부터의 광에 대한 광 경로(122)를 제공한다. 광은 광 경로(122)를 통해 빔 스플리터(beam splitter)(174)로 이동하며, 빔 스플리터(174)는 광의 일부가 렌즈(176)를 통해 메인 이미징 센서(130A)로 통과하게 한다. 광은 도시된 바와 같이 미러(178)에 의해 선택적으로 구부러질 수 있다. 예를 들어, 이미징 센서(130A)는 라인 전하 결합 장치(CCD)일 수 있다.
다른 광은 빔 스플리터(174)에서 렌즈(180)를 통해 포커싱 센서(130B)로 이동한다. 예를 들어, 포커싱 센서(130B)는 라인 CCD일 수 있다. 이미징 센서(130A) 및 포커싱 센서(130B)로 이동하는 빛은 바람직하게는 대물 렌즈(120)로부터의 완전한 광학 시야(134)를 나타낸다. 스캐닝 시스템(100)의 이러한 구성에 기초하여, 슬라이드(114)의 스캐닝 방향(170)은 이미징 센서(130A) 및 포커싱 센서(130B)에 대해 논리적으로 지향하므로(oriented), 논리적 스캐닝 방향(172)은 대물 렌즈(120)의 광학 시야(134)가 각각의 이미징 센서(130A) 및 포커싱 센서(130B)를 통과하게 한다.
도 1f는 일 실시예에 따른 이미징 광 경로(122A)에 대한 이미징 센서(130A)의 평면도 구성을 예시적으로 도시한다. 유사하게, 도 1g는 일 실시예에 따른 포커싱 광 경로(122B)에 대한 포커싱 센서(130B)의 평면도 구성을 예시적으로 도시한다. 도 1g에서 볼 수 있는 바와 같이, 포커싱 센서(130B)는 포커싱 광 경로(122B)에 수직인 방향에 대해 각도(θ)로 기울어진다.
도 1h는 일 실시예에 따른 포커싱 센서(130B)를 예시적으로 도시한다. 도시된 실시예에서, 포커싱 센서(130B)는 티슈(또는, 조직) 샘플에 대한 포커싱 범위(d)(예를 들어, 20㎛) 내에서 복수의 센서 픽셀(142)들을 포함하고, 도시된 바와 같이 Z 축의 전체 포커싱 범위(d)가 광학에 의해 Y 축(X 축에 직교하는, 즉, 스캔 방향(170))의 전체 포커싱 센서(130B) 어레이로 전달되는 위치에 배치될 수 있다. 각 센서 픽셀(142)의 위치는 대물 렌즈(120)의 Z 위치와 직접적으로 상관된다. 도 1h에 도시된 바와 같이, 투영된 포커싱 범위(d)에 걸친 각 파선(dashed line)(즉, p1, p2, ... pi, ... pn)은 다른 포커스(또는, 초점) 값을 나타내며 대물 렌즈(120)의 초점 높이(즉, Z 높이)에 해당한다. 샘플(116)의 주어진 부분에 대한 최적의 포커스(또는, 초점)(예를 들어, 가장 높은 대조도(contrast metric))을 갖는 pi는 샘플(116)의 해당 부분에 대한 최적의 초점 높이를 결정하기 위해 스캐닝 시스템(100)에 의해 사용될 수 있다.
포커싱 센서(130B) 상의 투영된 포커싱 범위(d)와 샘플(116)의 포커싱 범위(z) 사이의 관계는 다음과 같다:
d = z * Mfocusing 2,
여기서, Mfocusing은 포커싱 경로의 광학 배율이다. 예를 들어, z = 20㎛, Mfocusing = 20이면 d = 8mm이다.
선형 어레이(140)를 포함하는 틸트된(tilted) 포커싱 센서(130B)에 의해 전체 투영된 포커싱 범위(d)를 커버하기 위해서는 경사각(θ)이 다음 관계를 따라야 한다:
sinθ = d/L,
여기서, L은 포커싱 센서(130B)의 선형 어레이(140)의 길이이다. d = 8mm, L = 20.48mm인 경우, θ = 23.0°이다. θ 및 L은 틸트된 포커싱 센서(130B)가 전체 포커싱 범위(d)를 커버하는 한 변할 수 있다.
포커싱 해상도, 또는 대물 렌즈 높이 움직임의 최소 단계(minimum step)(△z)는 센서 픽셀(142)의 크기(e=minimum(△L))에 따른 함수이다. 위의 식에서 파생된다:
△z = e * z/L.
예를 들어, e = 10㎛, L = 20.48mm, z = 20㎛이면 △z = 0.0097㎛ < 10nm이다.
초점 포인트(i)의 포커싱 센서(130B) 상에서 대물 렌즈 높이(Zi)와 포커스(또는, 초점) 위치(Li) 사이의 관계는 다음과 같다:
Li = Zi * Mfocusing 2 / sinθ
초점 높이가 L1에서 L2까지의 평균으로 결정되는 경우, 포커싱 센서(130B)의 데이터 분석에 따라 대물 렌즈(120)의 높이는 다음을 기반으로 Z1에서 Z2로 이동해야 한다.
Z2 = Z1 + (L2-L1) * sinθ/Mfocusing 2
포커싱 센서(130B)와 이미징 센서(130A)의 Y 축에서 시야(FOV)(134)는 다를 수 있지만, 두 센서들(130A, 130B)의 중심은 바람직하게는 Y 축을 따라 서로 정렬된다.
2. 프로세스 개요(Process Overview)
이하에서는 슬라이드 스캐닝 시스템에서 실시간 포커싱을 위한 과정의 실시예들을 상세히 설명한다. 설명된 프로세스는 스캐닝 시스템(100) 내에서 하나 이상의 하드웨어 프로세서(104)에 의해 실행되는 하나 이상의 소프트웨어 모듈로 구현될 수 있음을 이해해야 한다. 설명된 프로세스는 소스 코드(source code), 객체 코드(object code), 및/또는 기계 코드(machine code)로 표현된 명령들로 구현될 수 있다. 이러한 명령들은 하드웨어 프로세서(들)에 의해 직접 실행될 수 있거나, 대안적으로 객체 코드와 하드웨어 프로세서 사이에서 작동하는 가상의 기계에 의해 실행될 수 있다.
대안으로, 설명된 프로세스는 하드웨어 구성 요소(예를 들어, 범용 프로세서(general-purpose processor), 집적 회로(IC), 특정 용도용 집적 회로(application-specific integrated circuit, ASIC), 디지털 신호 프로세서(DSP), 필드 프로그래머블 게이트 어레이(field-programmable gate array, FPGA) 또는 기타 프로그래머블 로직 장치, 개별 게이트, 또는 트랜지스터 로직 등), 하드웨어 구성 요소들의 조합, 또는 하드웨어와 소프트웨어 구성 요소들의 조합으로 구현될 수 있다. 하드웨어와 소프트웨어의 호환성을 명확하게 설명하기 위해, 다양한 예시적인 구성 요소들, 블록, 모듈, 회로, 및 단계가 일반적으로 기능 측면에서 설명된다. 이러한 기능이 하드웨어 또는 소프트웨어로 구현되는지 여부는 전체 시스템에 부과된 특정 애플리케이션 및 설계 제한 조건(design constraints)에 따라 달라진다. 숙련된 기술자는 각각의 특정 애플리케이션에 대해 다양한 방식으로 설명된 기능을 구현할 수 있지만, 이러한 구현 결정이 본 발명의 범위를 벗어나는 것으로 해석되어서는 안된다. 또한, 구성 요소, 블록, 모듈, 회로, 또는 단계 내의 기능 그룹은 설명을 쉽게 하기 위한 것이다. 특정 기능 또는 단계는 본 발명에서 벗어나지 않고 하나의 구성 요소, 블록, 모듈, 회로, 또는 단계에서 다른 구성 요소로 이동할 수 있다.
게다가, 본 명세서에 설명된 프로세스는 단계의 특정 배열 및 순서로 설명되지만, 각 프로세스는 더 적거나, 더 많거나, 다른 단계와 다른 배열 및/또는 단계의 순서로 구현될 수 있다. 또한, 다른 단계의 완료에 의존하지 않는 모든 단계는 단계가 특정 순서로 설명되거나 설명되더라도 다른 독립 단계 이전, 이후 또는 병렬로 실행될 수 있음을 이해해야 한다.
일 실시예에서, 스캐닝 시스템(100)은 각 이미지 스트라이프의 스캐닝 동안 대물 렌즈(120)의 궤적을 예측하기 위해 포커스 맵을 사용한다. 포커스 맵의 포커스(또는, 초점) 값들은 (1) 매크로 포커스 포인트(macro focus point)("MFP") 방법 및 (2) 실시간 포커스(real- time focus)("RTF") 방법, 상기 두 가지 방법을 사용하여 측정할 수 있다. MFP 방법의 초점 값들은 스캐닝 전 및/또는 이미지 스트라이프 획득 사이에 계산되는 반면, RTF 방법의 초점 값들은 이미지 스트라이프 획득 중에 계산된다. 두 방법 모두 스캐닝 동안 대물 렌즈(120)의 초점 위치를 예측하는 데 사용되는 포커스 맵을 채우기 위해 조합하여 사용될 수 있다. 유리하게는, RTF 방법은 MFP 방법만 사용하는 것보다 포커스 맵에 더 많은 포커스 값을 제공하지만, 스캐닝 프로세스에 시간을 거의 추가하지 않는다.
RTF 방법은 또한 포커스(또는, 초점) 오차(focus error)의 실시간 측정을 제공한다. 이러한 포커스 오차 측정은 이미지 스트라이프가 스캔될 때 대물 렌즈(120)의 궤적을 수정하기 위해 샘플(116)의 스캐닝 동안 분석될 수 있다. 이는 포커스 맵에서 예측된 포커스 높이의 포커스 오차를 최소화한다.
2.1. MFP 방법(MFP Method)
일 실시예에서, MFP 방법은 스테이지(112)가 일정한 속도로 이동하는 동안 전체 Z 축을 따라(예를 들어, 대물 렌즈(120)를 이동시킴으로써) 이미지 데이터를 캡처하기 위해 라인 스캔 카메라(130)를 사용하는 것을 포함한다. 그 다음, 이미지 데이터 내에서 최대 대비(또는, 콘트라스트)(contrast)를 갖는 이미지 행이 식별되고, 시간 규약(timing formula)이 해당 행에 대한 대응하는 인코더 카운트(encoder count)(예를 들어, 대물 렌즈(120)에 대한)를 계산하는 데 사용된다. 노이즈 임계값을 나타내는 최소 대비 임계값을 사용하여 초점이 노이즈 임계값보다 높은지 확인할 수 있다. 역사적으로, 상기 최소 대비 임계값은 약 350이었다.
역사적으로, MFP 방법은 좋은 이미지 품질을 제공하기 위해 매크로 포커스 오프셋(macro focus offset)이 필요하다. 따라서, 일 실시예에서, MFP 방법이 정확하게 수행하는지 확인하기 위해 폐루프 측정에서 포커스 값을 테스트함으로써 매크로 포커스 오프셋이 계산된다. 설계 상 매크로 포커스 오프셋은 0이어야 한다. 그러나, 실제로는 미리 정해진 공식과 Z-스테이지 튜닝으로부터 계산된 바와 같이 대물 렌즈(120)의 Z 위치에 체계적인 오차가 있다.
매크로 포커스 오프셋은 티슈(또는, 조직)의 한 위치에 매크로 포커싱하고 대비 곡선과 최대 대비의 인코더 카운트를 기록하여 실험적으로 결정할 수 있다. 대물 렌즈(120)는 기록된 인코더 카운트로 이동될 수 있고(즉, Z 축에서), 이미지 데이터의 제2 버퍼가 대응하는 평균 대비(또는, 콘트라스트) 값과 함께 기록될 수 있다. 평균 대비 값은 기록된 대비 곡선과 비교할 수 있으며, 기록된 최대 대비 값에서 평균 대비 값의 거리는 매크로 포커스 오프셋으로 사용되는 Z 오프셋을 제공하기 위해 측정될 수 있다.
도 2는 일 실시예에 따라 계산된 매크로 포커스 오프셋을 사용하여 오프셋 보정을 적용하기 전후의 포커스 오차를 예시적으로 도시한다. 도시된 바와 같이, 평균 오차는 0.6에서 0.0 마이크론(microns)으로 감소했고, 최대 오차는 1.0에서 0.4 마이크론으로 감소했다. 이미지 품질에 미치는 영향은 재스트라이프(restripe) 속도(즉, 초점 불량으로 인해 이미지 스트라이프를 다시 획득해야하는 속도)의 감소였다. 오프셋 보정은 필요할 때 언제 어디서나 포커스 위치(또는, 포인트)를 추가할 수 있고 RTF 방법을 평가하기 위한 기초를 제공하기 때문에 중요하다.
일 실시예에서, MFP 파라미터들은 다음과 같이 정의되며, 예시적인 명목 값이 표시되고, 구성을 위해 스캐닝 시스템(100)에 의해 사용되는 구성 파일(예를 들어, 확장 가능한 마크업 언어(eXtensible Markup Language, XML)을 사용하여 정의된 "scanner.xml" 파일)에 저장될 수 있다:
Good_Focus_Threshold = 350. 매크로 포커스 포인트의 최대 대비 값이 임계값보다 작으면, 해당 매크로 포커스 포인트에 대한 포커스 시도가 실패한 것으로 간주되고 해당 매크로 포커스 포인트의 값은 삭제된다.
Retry_Count = 1. 매크로 포커스 포인트의 최대 대비 값이 Good_Focus_Threshold보다 작기 때문에, 포커스 시도가 실패할 때 다시 초점을 맞추려고 시도하는 횟수이다.
Macrofocus_Pos_Offset = +0.0006. 대물 렌즈(120)의 Z-모션 오차로 인해 계산된 매크로 포커스 오프셋 값(밀리미터)이다.
2.2. RTF 방법(RTF Method)
일 실시예에서, RTF 방법은 2개의 라인 스캔 카메라(130)를 사용한다: 메인 이미징 센서(130A)(예를 들어, 삼선형 RGB 카메라); 및 단일 채널 포커싱 센서(130B)(예를 들어, 흑백 카메라). 두 라인 스캔 카메라(130)들은 선형 어레이(140)가 샘플 (116)의 동일한 부분(예를 들어, 티슈(또는, 조직)를 포함할 수 있음)을 이미지화하도록 정렬된다. 예를 들어, 메인 이미징 센서(130A)는 샘플(116)의 평면에 평행할 수 있으며 Aperio ScanScope® 제품에 사용되는 삼선형 카메라와 동일한 방식으로 기능한다. 반면에, 포커싱 센서(130B)는 포커싱 센서(130B)의 선형 어레이(140)를 따라(예를 들어, 스캔 방향(170)에 수직) 광학 Z-축으로 기울어질 수 있다.
2.2.1. 디자인(Design)
라인 스캔 카메라들(130A, 130B)은 메인 이미징 센서(130A)가 최적의 초점에 있을 때 틸트된 포커싱 센서(130B)에 대한 최대 대비 포인트가 틸트된 선형 어레이(140)의 중심 근처에 있도록 서로 정렬될 수 있다. 포커싱 센서(130B)의 틸트된 선형 어레이(140)의 상기 포인트에서의 픽셀(142)은 동초점 위치(parfocal location)로 지칭된다. 대물 렌즈(120)가 최상의(또는, 최적의) 포커스 위치에 대해 상하로 이동함에 따라, 틸트된 포커싱 센서(130B)상의 최대 대비 포인트는 각각 동초점 위치의 우측 및 좌측으로 이동한다. 이것은 틸트된 포커싱 센서(130B)가 메인 이미징 센서(130A)에서 포커스 오차의 방향 및 양을 동적으로 결정하는 데 사용될 수 있게 한다. 측정된 포커스 오차는 대물 렌즈(120)의 위치를 실시간으로 조정하는 데 사용될 수 있으며, 따라서 메인 이미징 센서(130A)는 항상 초점이 맞춰진다.
다음 이슈들 중 하나 이상, 바람직하게는 모두가 RTF 방법의 일 실시예에서 해결될 수 있다.
선형 어레이에 걸친 티슈 대비의 변화(Changes in Tissue Contrast across Linear Array). 일 실시예에서, 틸트된 포커싱 센서(130B)는 최상의 포커스 위치를 결정하기 위해 단독으로 사용되지 않는데, 그 이유는 대비 변화가 선형 어레이(140)에 걸친 티슈(tissue) 특징의 변화로부터 발생하기 때문이다. 포커싱 센서(130B) 및 메인 이미징 센서(130A)로부터의 데이터는 비율 방법(ratio method)을 사용하여 티슈 효과를 제거하기 위해 결합될 수 있다. 비율 방법은 틸트된 포커싱 센서(130B)의 대비 함수(contrast function)를 메인 이미징 센서(130A)의 대비 함수로 나눈다. 정규화된 함수는 최적의 포커스 위치에서 최고점에 도달하고 티슈 의존적 효과(tissue-dependent effects)를 제거한다.
노이즈 및 카메라 정렬 오차(Noise and Camera Alignment Error). 일 실시예에서, 선형 어레이(140)는 0.25 마이크론의 노멀 이미지 픽셀 크기를 갖는 1 x 4,096 픽셀이다. 이 정밀도 수준에서, 메인 이미징 센서(130A)와 틸트된 포커싱 센서(130B)를 정확하게 정렬하는 것은 불가능하다. 또한, 배율은 광축에 대한 기울기로 인해 틸트된 포커싱 센서(130B)에서 약간 변화한다. 개별 픽셀(142)들의 대비 값들은 이웃 픽셀들(142) 사이의 값을 차분하여 계산되기 때문에 잡음이 있다. 이러한 효과를 줄이기 위해 공간 평균(spatial averaging)을 사용할 수 있다. 예를 들어, 일 실시예에서, 각 라인 스캔 카메라(130)의 출력은 이미지 스트라이프를 스캐닝할 때 연속적인 프레임들(consecutive frames)로 그룹화된다. 프레임은 1,000 라인 x 4,096 픽셀이다. 프레임의 픽셀 대비 값을 계산 한 후, 상기 선들은 단일 선으로 함께 평균화된다. 그런 다음, 박스카 필터(boxcar filter)(예를 들어, 100 픽셀 너비)가 상기 단일 선에 적용된다. 이러한 동작은 메인 이미징 센서(130A)와 틸트된 포커싱 센서(130B) 모두의 프레임들에 대해 수행된다. 이 두 가지 평균화 작업은 비율 방법에서 노이즈 및 정렬 오차의 영향을 크게 줄인다.
동초점 위치(Parfocal Location). 동초점 위치의 값은 별도로 알려지고 보정될 수 있다. 동초점 위치의 오차로 인해 RTF 방법이 최적의 초점이 아닌 위치로 구동된다. 동초점 위치를 계산하는 방법은 본 명세서의 다른 곳에서 설명된다.
스킵된 프레임들(Skipped Frames). 일 실시예에서, 이러한 프레임에 대한 데이터는 포커스 오차에 대해 분석되지 않기 때문에 다른 모든 프레임은 스킵된("skipped") 프레임이다. 스킵된 프레임을 획득하는 동안, 이전 프레임에 대한 데이터가 분석되고, 대물 렌즈(120)는 스킵되지 않은 다음 프레임에 대한 최상의 포커스 위치로 이동된다. 다른 말로, 대물 렌즈(120)는 스킵된 프레임을 획득하는 동안에만 이동하고 스킵되지 않은 프레임을 획득하는 동안에는 고정되어있다. 노멀 작동에서, 프레임 지연은 한 프레임이 될 것이다. 즉, 대물 렌즈(120) 아래의 현재 프레임(CFUO)은 분석 중인 프레임 다음 프레임임을 의미한다.
오버 프레이밍(Over-Framing). 오버 프레이밍은 프레임 지연이 한 프레임보다 큰 경우에 사용되는 용어이다. 일 실시예에서, 이미지 스트라이프의 스캔이 일정한 속도로 진행되기 때문에 소프트웨어 타이머가 구현되어 CFUO를 계산할 수 있다. RTF 방법은 차선의 포커스 위치를 결정할 때 CFUO를 확인한다. 일반적으로, CFUO는 분석 중인 프레임 다음에 스킵된 프레임이다. 그렇지 않은 경우, RTF 방법은 CFUO 다음의 첫 번째 스킵되지 않은 프레임(first non-skipped frame)에 대한 최적의 포커스 위치를 예측하고, 대물 렌즈(120)가 그 위치로 이동하도록 지시한다. 이러한 계획(또는, 전략)(strategy)을 사용하여, 대물 렌즈(120)는 항상 현재 실제 위치에 가장 적합한 위치로 이동된다. RTF 방법은 프레임 지연이 너무 크지 않으면 제대로 작동한다. 프레임 지연이 너무 커지면(즉, Frame_Lag_Stripe_Abort_Threshold 파라미터 값을 초과하는 경우), 이미지 스트라이프의 스캐닝이 중단되고 다시 스캔되는 구성 파라미터인 Frame_Lag_Stripe_Abort_Threshold가 제공될 수 있다.
비율 곡선 피팅(Fitting the Ratio Curve). 비율 방법은 최적의 포커스 위치에서 피크(peak)를 이루는 곡선을 생성한다. 일 실시예에서, 가우스 함수(Gaussian function)는 비율 곡선에 피트되고(fitted), 가우스 함수의 피크는 최적의 포커스 위치로 식별된다. 가우스 함수의 적합도는 일련의 메트릭스를 사용하여 평가되어 포커스 추정치를 신뢰가능한(trustable) 것으로 평가(qualify)할 수 있다. 신뢰가능한 포커스 값들만 포커스 맵에 추가된다.
티슈에만 포커스(Focus on Tissue Only). 포커스 맵에 추가된 포인트들은 이미지 데이터의 실제 티슈 위치들와 일치해야 한다. 이전 디자인에서는, 티슈 찾기 알고리즘(tissue-finding algorithm)을 사용하여 매크로 이미지에서 개연성있는 티슈 맵(probable tissue map)을 계산했으며 MFP 값들은 가능한 티슈의 위치들에만 추가되었다. 그러나, 유리 슬라이드(114) 상의 다양한 아티팩트(artifacts)(예를 들어, 커버 슬립 에지, 플러스 마크, 커버 슬립 상단의 파편 등)는 바람직하지 않게 티슈의 평면 외부에 초점을 맞출 수 있다. 일 실시예에서, 티슈 찾기 알고리즘으로부터의 개연성있는 티슈 맵은 RTF 방법에 입력될 수 있고, 선택적으로 RTF 방법에 의해 사용되는 포커스 포인트에 대한 허용 가능한 위치를 제한하는 데 사용될 수 있다. RTF 방법은 또한 각 프레임을 분석하여 티슈가 있는지 확인하고, 티슈가 있는 프레임들 상의 포커스 포인트들만 허용한다.
티슈의 간격(Gaps in Tissue). 포커스 오차의 신뢰가능한 추정을 위해서는, 충분한 대비의 티슈가 선형 어레이(140)에서 이용 가능해야 한다. 일 실시예에서, 메인 이미징 센서(130A)에 대한 콘트라스트(또는, 대비) 벡터(contrast vector)는 포커스 오차를 계산하기 위해 충분한 신호가 이용 가능한지 여부를 결정하는 데 사용된다. 이에 대한 구현 세부 사항은 본 명세서의 다른 부분에 설명되어 있다.
MFP 값 추가(Adding MFP Values). RTF 방법은 각 티슈 프레임에 대해 신뢰가능한 포커스 값을 항상 반환하지는 않는다. 이는 프레임의 티슈가 불충분할 뿐만 아니라 가우스 피팅 프로세스에 의해 신뢰할 수 없는 것으로 분류된 결과로 인해 발생할 수 있다. 일 실시예에서, 이미지 스트라이프를 스캐닝한 후, 티슈 프레임들이 순차적으로 고려되고, 가장 가깝고 신뢰가능한 포커스 값으로부터 규정된 거리(예를 들어, Rmin 파라미터에 값으로 저장됨)를 초과하는 프레임들은 MFP 방법으로 초점에 대해 식별된다. 이러한 포인트들은 다음 이미지 스트라이프를 스캔하기 전에 초점을 맞추고 포커스 맵에 추가될 수 있다.
이상치 제거(Rejecting Outliers). 일 실시예에서, 포커스 맵은 모든 이미지 스트라이프가 스캔된 후 검사되어 포커스 맵의 포커스 포인트들이 이상치인지를 결정한다. 본 명세서의 다른 곳에서 논의된 바와 같이, 스캔 품질을 평가하기 전에 이상치를 제거할 수 있다.
이미지 스트라이프 재스캐닝(Rescanning of Image Stripes). 일 실시예에서, 모든 이미지 스트라이프가 스캔되고 포커스 맵이 완료된 후, 각 티슈 프레임에 대한 실제 포커스 위치는 본 명세서의 다른 곳에서 논의된 재스트라이핑 프로세스(restriping process)에 설명된 바와 같이 포커스 맵으로부터의 최적의 포커스 위치와 비교된다. 프레임들의 5%에 규정된 임계값을 초과하는 포커스 오차가 있는 이미지 스트라이프들은 최종 포커스 맵을 생성하기 위해 다시 스캔될 수 있다.
스캔 초기화(Initializing the Scan). 일 실시예에서, 스캐닝을 위한 포커스 맵이 초기화된다. 티슈 찾기 알고리즘은 스캔을 시작하기 위해 기준 스트라이프(reference stripe)와 3개 이상의 MFP 값들을 식별할 수 있다. 티슈가 가장 많은 이미지 스트라이프를 기준 스트라이프로 선택할 수 있다. MFP 포커스 포인트는 양호한 티슈 범위(span)를 제공하도록 선택된 기준 스트라이프의 시작 부분과 2개 이상의 다른 위치에서 측정될 수 있다. 그런 다음, 스트라이프에 대한 시작 MFP 포커스 값을 사용하고 RTF 방법을 사용하여 포커스 위치를 업데이트하여 기준 스트라이프를 먼저 스캔한다. 기준 스트라이프를 스캔하면 일반적으로 초기 MFP 포커스 값과 함께 포커스 맵에 추가되는 많은 포커스 값들이 생성된다.
스캔 순서(Scan Order). 일 실시예에서, 포커스 맵을 초기화 한 후, 기준 스트라이프가 다시 스캔된다. 그런 다음, 스캔 영역의 해당 쪽(side)이 완료될 때까지 기준 스트라이프의 오른쪽 또는 왼쪽으로 스캔이 진행된다. 그런 다음, 기준 스트라이프의 다른 쪽에서 스캔 영역의 반대쪽 가장자리로 스캔이 진행된다. 이 순서는 첫 번째 패스에서 허용 가능한 초점을 얻을 가능성을 극대화하기 위해 스캔되는 이미지 스트라이프가 포커스 맵의 포커스 값에 최대한 가깝도록 선택된다.
2.2.2. 동초점 위치(Parfocal Location)
일 실시예에서, 동초점 위치를 결정하기 위해, 수직 론키 슬라이드(vertical Ronchi slide)는 일정한 속도로 대물 렌즈(120)의 Z-범위(range)를 스위핑(sweeping)함으로써 메인 이미징 센서(130A) 및 틸트된 포커싱 센서(130B)에 의해 동시에 이미징된다. 이러한 방식으로 한 쌍의 이미지 데이터 버퍼가 센서들(130A, 130B)에 대해 획득된다.
메인 이미징 센서(130A)의 경우, 버퍼의 각 행에 대해 평균 대비 값을 계산하고, 최대 대비의 행을 최적의 포커스 인덱스(the best focus index)로 한다. 메인 이미징 센서(130A)로부터의 이미지 데이터의 대비의 기울기에 기초하여 버퍼 쌍을 선별(qualify)하기 위해 추가 검사가 추가될 수 있다. 이 검사는 메인 이미징 센서(130A)로부터 이미지 데이터의 버퍼를 40개의 세그먼트(예를 들어, 각각 대략 100개의 열)로 분할하고, 각 세그먼트에 대한 최적의 포커스 인덱스를 계산함으로써 수행될 수 있다. 맨 왼쪽과 맨 오른쪽 세그먼트에 대한 인덱스 차이가 임계값(예를 들어, 4개)보다 작으면, 버퍼 쌍이 최소 기울기를 갖는 것으로 받아 들여지고 동초점 위치의 추정에 사용된다. 임계값에 대한 값 4는 0.5 마이크론/밀리미터(microns/millimeter)의 기울기에 해당하며, 이는 평탄도에 대한 시스템 요구 사항일 수 있다.
틸트된 포커싱 센서(130B)는 단일 최적 포커스 인덱스(즉, 행)를 갖지 않는다. 포커싱 센서(130B)로부터의 이미지 데이터의 버퍼 내의 열들은 그 열에 대응하는 픽셀(142)이 최적의 포커스에 있을 때 최대 콘트라스트를 가질 것이다. 포커스 버퍼의 과정은 각 행의 그레디언트(gradient)를 계산한 다음 각 열의 최대 값에 해당하는 행 인덱스를 찾는 것으로 진행된다. 이 데이터는 도 3의 저역 통과 필터링된 신호 및 피팅의 예시적인 그래프에 도시된 바와 같이 상당히 잡음이 있을 수 있다. 따라서, 잡음의 비대칭 특성으로 인해 잡음을 줄이기 위해 평균 필터를 통해 중앙값 필터를 사용할 수 있다. 그 다음, 도 3의 피트 라인(fit line)으로 도시된 바와 같이, 필터링된 인덱스 값에 대한 선형 피트(linear fit)가 구성된다. 메인 이미징 카메라에 의해 획득된 이미지 데이터로부터 선형 피트가 최대 인덱스 값과 교차하는 열은 틸트된 포커싱 센서(130B)에서 동초점 포인트이다.
선형 피트의 기울기는 픽셀 당 Z-거리의 변화에 대응하며, 대물 렌즈(120)를 동초점으로 이동시키기 위한 실제 거리를 계산하기 위해 필요하다. 그러나, 동초점 위치에서 좌측이 우측보다 경사가 더 큰 것으로 보인다. 따라서, 도 3에 도시된 바와 같이, 선형 피트는 동초점 위치의 좌측에 있는 데이터와 동초점 위치의 우측에 있는 데이터에 대해 별도로 계산된다. 이 두 가지 기울기는 좌측 및 우측 스케일링 계수(scaling factors)를 마이크론/픽셀 단위(units of micron/pixel)로 제공한다.
일 실시예에서, 동초점 계산의 출력은 동초점 위치, 좌측 스케일링 계수, 및 우측 스케일링 계수를 포함한다. 동초점 위치는 틸트된 포커싱 센서(130B) 상의 동초점 픽셀(142)의 위치이다. 좌측 스케일링 계수는 동초점 위치의 좌측에 있는 픽셀들(142)을 마이크론으로 변환하는 데 사용된다. 유사하게, 우측 스케일링 계수는 동초점 위치의 우측에 있는 픽셀들(142)을 마이크론으로 변환하는 데 사용된다.
도 4는 일 실시예에 따른 동초점 계산(400)을 도시한다. 동초점 계산(400)은 스캐닝 시스템의 프로세서(들)(104) 또는 외부 시스템에 의해 실행되는 소프트웨어 명령으로 구현될 수 있다. 405A 단계 및 405B 단계에서, 동기화된 버퍼들은 각각 틸트된 포커싱 센서(130B) 및 메인 이미징 센서(130A)로부터 수신된다. 일 실시예에서, 각 버퍼는 수직 론키 슬라이드의 스캐닝 동안 각각의 센서에 의해 획득된 이미지 데이터를 포함한다.
410A 단계 및 410B 단계에서, 미리 정의된 단계에 따라 각 버퍼의 각 행에 대한 콘트라스트 그레디언트(contrast gradient)가 계산된다. 기본적으로, 두 버퍼들에 대한 단계는 스킵되는 행이 없도록 하나의 행일 수 있다. 또는, 상기 단계는 하나의 행보다 클 수 있다.
415 단계에서, 포커싱 센서(130B)에 대한 콘트라스트 그레디언트의 최대값을 찾고, 그 최대값에 대응하는 열 인덱스(column index)를 식별한다. 그 다음, 420 단계에서, 중앙 필터(median filter)(예를 들어, 기본값=500)가 콘트라스트 그레디언트의 포인트에 적용된다. 425 단계에서, 중앙값 필터링된 포인트들에 대한 선형 피트가 발견된다. 이 선형 피트를 나타내는 라인은 465 단계에서 메인 이미징 센서(130A)로부터의 이미지 데이터의 버퍼에 대한 라인도 발견되었다고 가정하고 470 단계로 전달된다.
430 단계에서, 410B 단계에서 메인 이미징 센서(130A)의 버퍼로부터 계산된 콘트라스트 그레디언트는 각 행에 걸쳐 평균화된다. 그 다음, 435 단계에서, R, G, 및 B 컬러 채널들이 평균화된다. 440 단계에서, 콘트라스트 그레디언트가 분할된다(또는, 세그먼트화된다). 기본적으로, 440 단계에서 사용되는 세그먼트들의 수는 예를 들어 40일 수 있다.
445 단계에서, 440 단계의 가장 왼쪽 세그먼트는 440 단계의 가장 오른쪽 세그먼트와 비교된다. 특히, 가장 오른쪽 세그먼트는 가장 왼쪽 세그먼트에서 빼거나 그 반대로 뺄 수 있다. 차이의 절대값(absolute value)이 미리 결정된 임계값(T)보다 크거나 이와 같은 경우(즉, 450 단계에서 "아니오(No)"), 405 단계에서 수신된 버퍼 쌍은 455 단계에서 폐기될 수 있으며, 프로세스(400)가 새로운 버퍼 쌍을 사용하여 다시 시작될 수 있다. 이와 다르게, 차이의 절대값이 미리 결정된 임계값(T)보다 작은 경우(즉, 450 단계에서 "예(Yes)"), 프로세스(400)는 460 단계로 진행한다. 일 실시예에서, 미리 결정된 임계값(T)은 4와 같다.
460 단계에서, 430 단계 및 435 단계에서 계산된 평균의 최대값을 찾고, 그 최대값에 대응하는 행 인덱스(row index)를 식별한다. 그 다음, 465 단계에서, 상기 포인트에서 라인이 계산된다.
425 단계에서 포커싱 센서(130B)에 대한 라인이 발견되고 465 단계에서 이미징 센서(130A)에 대한 라인이 발견되면, 상기 두 라인들 사이의 교차로(intersection) 또는 교차점(crossing point)은 470 단계에서 발견된다. 상기 교차점은 동초점이다. 또한, 475 단계에서, 동초점으로부터 좌측 세그먼트와 우측 세그먼트 모두에 대해 독립적으로 선형 피트가 발견된다. 마지막으로, 480 단계에서, 좌측 피트 라인(left fit line)의 기울기를 좌측 스케일링 계수로 변환하고, 우측 피트 라인(right fit line)의 기울기를 우측 스케일링 계수로 변환한다.
2.2.3. RTF 방법 워크플로우(RTF Method Workflow)
도 5a 내지 도 5c는 일 실시예에 따른 유리 슬라이드(114) 상의 샘플(116)의 이미지를 스캐닝하기 위한 프로세스(500)를 예시적으로 도시한다. 도시된 단계들 중 다수는 본 명세서의 다른 곳에서 더 자세히 설명된다. 프로세스(500)는 스캐닝 시스템(100)의 프로세서(들)(104)에 의해 실행되는 소프트웨어 명령들로 구현될 수 있음을 이해해야 한다.
프로세스(500)는 510 단계에서 샘플(116)의 일부의 이미지 데이터를 나타내는 이미지 스트라이프의 획득으로 시작한다. 590 단계에서, 마지막 이미지 스트라이프가 획득되었는지 여부를 판단한다. 획득할 이미지 스트라이프들이 남아있는 경우(즉, 590 단계에서 "아니오(No)"), 다음 이미지 스트라이프가 510 단계의 또 다른 반복에서 획득된다. 이와 다르게, 획득할 이미지 스트라이프들이 남아있지 않는 경우(즉, 590 단계에서 "예(Yes)"), 프로세스(500)는 592 단계로 진행한다. 특히, 이미지 스트라이프들은 임의의 순서로 획득될 수 있다. 유리하게는, 임의의 순서로 이미지 스트라이프들을 획득하는 능력은 스캐닝 시스템(100)의 프로세서(104)가 스캐닝 동안 RTF 방법에 의해 획득된 포커스 값들을 사용하여 포커스 맵을 보다 효과적으로 구축할 수 있게 한다.
592 단계에서, 본 명세서의 다른 곳에서 더 상세히 논의된 바와 같이 이상치(outliers)가 제거된다. 594 단계에서, 본 명세서의 다른 곳에서 더 상세히 논의된 바와 같이, 임의의 이미지 스트라이프를 재스트라이프해야하는지(restriped) 여부가 결정된다. 재스트라이프해야할 이미지 스트라이프들이 없는 경우(즉, 594 단계에서 "아니오(No)"), 프로세스(500)는 샘플(116)의 적어도 일부의 완전한 이미지 스트라이프 세트(a complete set of image stripes)로 종료된다. 이와 다르게, 적어도 하나의 이미지 스트라이프가 재스트라이프되어야하는 경우(즉, 594 단계에서 "예(Yes)"), 상기 이미지 스트라이프(들)는 596 단계에서 다시 스캔되고, 그 다음 프로세스(500)는 샘플(116)의 적어도 일부의 완전한 이미지 스트라이프 세트로 종료된다. 완전한 이미지 스트라이프 세트가 획득되면, 스캐닝 시스템(100)의 프로세서(들)(104)는 이미지 스트라이프들을 얼라인(align)하고, 이미지 스트라이프들을 샘플(116)의 전체 스캔된 부분의 전체 합성 이미지로 결합할 수 있다. 또한, 프로세서(들)(104)는 임의의 알려진 압축 기술을 사용하여 합성 이미지를 압축할 수 있다.
510 단계의 실시예는 도 5b에서 더 상세하게 도시된다. 특히, 512 단계에서, 이미지 스트라이프의 프레임이 계산된 Z 위치에서 캡처된다. 그 다음, 520 단계에서, 캡처된 프레임은 다음 프레임에 대한 Z 위치를 결정하기 위해 처리된다. 획득될 프레임이 남아있는 경우(즉, 580 단계에서 "아니오(No)"), 다음 프레임은 520 단계에서 결정된 Z 위치에서 512 단계의 또 다른 반복으로 캡처된다. 이와 다르게, 이미지 스트라이프에 대해 획득될 프레임들이 남아있지 않는 경우(즉, 580 단계에서 "예(Yes)"), 프로세스(500)는 582 단계로 진행한다.
582 단계에서, 분석 가능하고 신뢰가능한 프레임들에 대해 최적의 포커스를 갖는 Z 위치들이 포커스 맵에 추가된다. 584 단계에서, 추가 매크로 포커스 포인트들이 요청된다. 586 단계에서, 스캔 방향이 설정된다. 즉, 프로세스(500)는 다음 이미지 스트라이프를 캡처하기 위해 현재 이미지 스트라이프의 좌측 또는 우측으로 이동할지 여부를 결정한다.
520 단계의 실시예는 도 5c에서 더 상세하게 도시된다. 522 단계에서, 메인 이미징 센서(130A) 및 틸트된 포커싱 센서(130B) 모두에 의해 캡처된 프레임을 각각 나타내는 이미지 데이터의 버퍼들은 틸트된 포커싱 센서(130B)의 버퍼에 대한 최대 위치, 메인 이미징 센서(130A)의 버퍼에 대한 평균 그레디언트 제곱, 메인 이미징 센서(130A)의 버퍼에 있는 분석 가능한 열의 총 개수, 메인 이미징 센서(130A)에 대한 가중치 벡터(weight vector), 및 비율 벡터(동초점에서의 비율)를 생성하도록 처리된다.
524 단계에서, 캡처된 프레임이 분석 가능한지 여부가 결정된다. 예를 들어, 본 명세서의 다른 곳에서 설명된 바와 같이, 상기 프레임이 가우스 피팅 프로세스를 수행하기에 충분한 티슈를 가질 때 상기 프레임은 분석 가능한 것으로 결정된다. 상기 프레임이 분석 가능한 경우(즉, 524 단계에서 "예(Yes)"), 프로세스(500)는 525 단계로 진행한다. 이와 다르게, 상기 프레임이 분석 가능하지 않은 경우(즉, 524 단계에서 "아니오(No)"), 프로세스(500)는 530 단계로 진행한다.
525 단계에서, 가우스 피트(Gaussian fit)가 수행된다. 526 단계에서, 가우스 피팅 프로세스(Gaussian fitting process)가 신뢰가능한지(즉, 좋은 피트(good fit)) 또는 신뢰할 수 없는지(즉, 나쁜 피트(bad fit)) 여부가 결정된다. 가우스 피팅 결과가 신뢰가능한 경우(즉, 526 단계에서 "예(Yes)"), 프로세스(500)는 결과 예측된 델타 Z(즉, 초점을 유지하기 위한 Z 값의 예측된 변화)를 528 단계에 제공한다. 이와 다르게, 가우스 피팅 결과가 신뢰할 수 없는 경우(즉, 526 단계에서 "아니오(No)"), 프로세스(500)는 상기 프레임을 분석할 수 없고 신뢰할 수 없는 것으로 설정하고 530 단계로 진행한다.
528 단계에서, 526 단계에서 가우스 피팅 프로세스에서 예측된 델타 Z와 현재 프레임의 Z 위치의 합으로 최적의 포커스 위치를 계산한다. 한편, 530 단계에서 최적 포커스 위치는 단순히 현재 프레임의 Z 위치로 설정된다. 어느 경우든, 532 단계에서, 다음 프레임에 대한 Z 위치가 계산된다.
2.2.4. 비율 방법(Ratio Method)
프로세스(500)와 관련하여 논의된 바와 같이, 일 실시예에서, 이미징 및 포커싱 센서들(130A, 130B)로부터의 이미지 데이터는 프레임들로 캡처된다. 단일 프레임은 2개의 버퍼를 포함한다: 하나는 메인 이미징 센서(130A)로부터의 데이터에 대응하고; 다른 하나는 틸트된 포커싱 센서(130B)로부터의 데이터에 대응한다. 도 6a는 일 실시예에 따른 메인 이미징 센서(130A)에 의해 획득된 이미지 데이터의 예시적인 버퍼를 도시한다. 도 6b는 일 실시예에 따른 틸트된 포커싱 센서(130B)에 의해 획득된 이미지 데이터의 예시적인 버퍼를 도시한다. 도시된 실시예에서, 각 프레임은 각각 1,000 라인 x 4,096 픽셀 폭인 2개의 버퍼로 구성된다.
도 7은 일 실시예에 따른 비율 벡터를 계산하기 위한 프로세스(700)를 예시적으로 도시한다. 프로세스(700)는 스캐닝 시스템(100)의 프로세서(104)에 의해 실행되는 소프트웨어 명령들로 구현될 수 있음을 이해해야 한다. 또한, 프로세스(700)는 프로세스(500)에서 522 단계 및/또는 524 단계의 적어도 일부를 나타낼 수 있다.
705A 단계 및 705B 단계에서, 이미지 데이터의 프레임은 각각 메인 이미징 센서(130A) 및 틸트된 포커싱 센서(130B)로부터 수신된다. 그 다음, 710 단계에서, 조명 보정(illumination correction)이 각각의 프레임 내의 이미지 픽셀들에 적용된다. 예를 들어, 조명 보정은 PRNU(Photo Response Non Uniformity) 및/또는 FPN(Fixed Pattern Noise) 기술을 활용할 수 있다. 715 단계에서, 메인 이미징 센서(130A)로부터의 프레임의 RGB 채널들은 개별적으로 보정된 다음, 그레이스케일 프레임(grayscale frame)에 동일한 가중치로 평균화된다.
720 단계에서, 그레디언트 제곱 연산자(gradient-square operator)가 각 그레이스케일 프레임(즉, 710A 단계에서 보정되고 715 단계에서 변환된 메인 이미징 프레임, 및 710B 단계에서 보정된 틸트된 포커싱 프레임)에 적용된다. 8개의 픽셀 간격(D8)으로, 두 수평 치수들의 중심 차이를 사용할 수 있다.
725 단계에서, 그레디언트 이미지들은 열을 따라 평균화된다. 이것은 각 프레임을 단일 벡터로 변환한다. 그 다음, 730 단계에서, 박스카 필터(boxcar filter)(예를 들어, 100개의 픽셀)가 각 벡터에 적용되어 잔여 노이즈를 감소시킨다. 마지막으로, 735 단계에서, 비율 벡터는 두 벡터들에 대한 픽셀 값들을 나눔으로써 계산된다.
일 실시예에서, 프로세스(700)는 스킵된 프레임을 포함하여 이미징 센서(130A) 및 포커싱 센서(130B)에 의해 캡처된 모든 프레임 세트에 대해 수행된다. 이러한 경우, 스킵되지 않은 프레임만 최적의 포커스 위치에 대해 분석되지만, 각 프레임에 티슈가 있는지 여부를 아는 것이 여전히 유용하다.
각 프레임 세트에 대한 그레디언트 벡터 및 비율 벡터 외에도, 틸트 그레디언트 벡터(tilt gradient vector)에서 최대 픽셀 위치, 및 메인 이미징 그레디언트 벡터(main imaging gradient vector)에서 분석 가능한 열의 총 개수를 계산할 수도 있다. 분석 가능한 열의 개수는 가우스 피팅 프로세스로 추가 분석을 허용하기에 충분한 신호가 존재하는지 여부를 결정하기 위해 (예를 들어, 프로세스(500)의 524 단계에서) 사용될 수 있다.
도 8a는 일 실시예에 따른, 메인 이미징 센서(130A)(상단에서 시작하고 끝나는 더 어두운 라인 그래프) 및 틸트된 포커싱 센서(130B)(하단에서 시작하고 끝나는 더 밝은 라인 그래프)에 대한 예시적인 그레디언트 벡터들을 도시한다. 틸트된 포커싱 센서(130B)의 구조는 프레임에 걸친 티슈 변화로 인해 불규칙적이다. 따라서, 포커싱 센서(130B)에 대한 그레디언트 벡터에서는 단일 피크를 식별할 수 없다.
도 8b는 일 실시예에 따른 도 8a의 2개의 그레디언트 벡터로부터의 예시적인 비율 벡터를 도시한다. 특히, 비율 벡터는 그레디언트 벡터보다 훨씬 스무스하다(또는, 부드럽다). 도시된 바와 같이, 가우스 함수(Gaussian function)는 피크(800)가 정확하게 식별될 수 있도록 비율 벡터에 맞춰질 수 있다(또는, 피트될 수 있다). 가우스 함수의 피크(800)는 상기 프레임에 대한 최적의 포커스 위치를 나타낸다.
일 실시예에서, 가우스 피팅 프로세스에 대한 입력을 나타내는 프로세스(700)에 의해 예시된 비율 방법의 출력은 다음 중 하나 이상을 포함할 수 있다:
메인 그레디언트 벡터(Main Gradient Vector). 메인 그레디언트 벡터는 메인 이미징 센서(130A)에 의해 캡처된 프레임의 각 열에 대한 평균 그레디언트 신호이다.
틸트 그레디언트 벡터(Tilt Gradient Vector). 틸트 그레디언트 벡터는 틸트된 포커싱 센서(130B)에 의해 캡처된 프레임의 각 열에 대한 평균 그레디언트 신호이다.
비율 벡터(Ratio Vector). 비율 벡터는 틸트 그레디언트 벡터의 각 열에 대한 비율을 메인 그레디언트 벡터로 나눈 값이다.
동초점에서의 비율(Ratio at Parfocal). 동초점에서의 비율은 동초점 위치에서 비율 벡터로 표시되는 비율 곡선의 값이다.
기준선에서의 비율(Ratio at Baseline). 기준선에서의 비율은 비율 벡터의 끝 부근에서 비율 벡터로 표시되는 비율 곡선의 평균 값이다.
분석 가능한 열의 개수(Number of Analyzable Columns). 분석 가능한 열의 개수는 메인 그레디언트 벡터가 임계값을 초과하는 메인 그레디언트 벡터의 열 수이다(예를 들어, MAIN_IMG_COLM_ANALYZABLE_THRESH = 50). 
가중치 벡터(Weight Vector). 메인 그레디언트 벡터는 단위 면적으로 정규화되고, 가우스 피팅을 위한 가중치 벡터로 사용된다. 티슈가 거의 없는(즉, 작은 그레디언트 값) 열(즉, 픽셀)은 비율 값이 상당히 노이즈가 많기 때문에, 상기 비율에 가우스 함수를 피팅하는 데 작은 중요성이 부여된다. 그레디언트 값이 클수록 신호가 많아지고, 이에 따라 비율의 노이즈가 줄어든다.
2.2.5. 가우스 피팅(Gaussian Fitting)
가우스 피팅 프로세스는 프로세스(500)에서 525 단계로 표현된다. 가우스 피팅 프로세스의 목적은 부드러운 가우스 함수를 비율 곡선에 피팅한 다음, 가우스 함수의 피크를 결정하는 것이다(예를 들어, 도 8b에서 피크(800)). 상기 피크는 계산된 최적의 포커스 위치를 나타낸다. 일 실시예에서, 가우스 피팅 프로세스는 충분한 티슈가 존재하고 비율 곡선이 동초점에서 허용 가능한 값을 갖는 경우에만 시도된다. 예를 들어, 동초점에서의 비율이 0.5와 1.5 사이이고 분석 가능한 열의 개수가 총 컬럼의 85%를 초과하는 경우(예를 들어, 프로세스(500)의 524 단계에서 "예(Yes)"), 가우스 피팅 프로세스가 수행된다.
비율 곡선에 가우스 함수를 피팅하는 것은 비선형 문제(nonlinear problem)이다. 일 실시예에서, 이를 해결하기 위한 접근 방식은 가능한 가우스 함수 세트를 샘플링하고, 비율 곡선에서 가장 작은 RMS(root-mean-square) 차이를 갖는 가우스 함수를 선택하는 것이다.
각 샘플 가우스 곡선(Gaussian curve)에는 진폭(피크), 중심(평균), 폭(시그마), 및 기준선(오프셋)의 4개의 파라미터가 있다. 진폭은 동초점으로부터의 거리 함수로 매개 변수화된다. 도 9는 동초점으로부터 고정된 오프셋에서 스캔된 티슈 샘플에 대한 비율 곡선을 예시적으로 도시한다. 일 예에서, 동초점은 1590 열(즉, 픽셀)에 있다. 특히, 동초점으로부터의 오프셋이 증가할수록 피크가 증가한다. 피크의 크기도 티슈에 따라 다르다. 따라서, 동초점으로부터의 피크 증가율은 각 프레임에 대해 추정될 수 있다.
일 실시예에서, 가우스 테스트 함수(Gaussian test functions)를 스케일링하기 위해, 틸트된 그레디언트 벡터에 대한 최대 위치는 도 10의 극좌의(leftmost) 그래프에 도시된 바와 같이 식별된다. 상기 위치에서의 비율 벡터 값과 동초점으로부터 상기 위치의 거리는 도 10의 극우의(rightmost) 그래프에 도시된 바와 같이 피팅 기울기를 정의하는 데 사용될 수 있다.
일 실시예에서, 가우스 테스트 함수는 피크가 동초점으로부터의 거리에 따라 피팅 기울기와 동일한 속도로 증가하도록 스케일링된다. 이러한 가우스 테스트 함수 중 하나는 도 10의 극우의 그래프에 비율 곡선에 근접한 매끄러운 선으로 도시되어 있다. 특히, 최적의 가우스 함수는 상기 피크가 반드시 중앙에 위치하는 것이 아니라 스케일링에만 사용되므로, 비율 곡선에서 가져온 피크 위치의 중앙에 배치할 필요가 없다. 도 10의 극우의 그래프에서 기준선에서의 비율은 약 3.5이다. 상기 값은 비율 곡선의 끝에서 추정되며, 가우스 테스트 함수를 적절한 수준으로 높이기 위해 가우스 테스트 함수에 적용되는 오프셋으로 사용된다.
일 실시예에서, 평균(means) 및 시그마(sigmas) 세트는 가우스 테스트 함수를 생성하는 데 사용된다. 평균 값은 100에서 3,996 사이(즉, 4,096-100) 범위에서 25씩 증가할 수 있다. 시그마 값은 500에서 1,200 사이 범위에서 100씩 증가할 수 있다. 도 11은 상이한 평균값 및 고정 폭에 대한 가우스 테스트 함수의 부분 세트를 예시적으로 도시한다.
수정된 가우스 함수의 두 번째 세트(단측(one-sided))도 상기 세트에 추가된다. 그 이유는 비율 곡선에 단일 피크에 대응하는 잘 정의된 단일 모양이 없는 경우가 있기 때문이다. 예를 들어, 비율 곡선은 도 12에 도시된 바와 같이 두 개의 피크로 더 넓어질 수 있다. 경험에 따르면 가장 오른쪽 피크에 초점을 맞출 때 주관적인 이미지 품질이 가장 좋다. 도 12에 도시된 경우, 이것은 또한 가장 크고 가장 눈에 띄는 피크이다. 대칭(symmetric) 가우스 함수의 문제는 가끔 두 피크들 사이에서 중앙에 넓게 배치되는 피크(broad peak)를 생성한다는 것이다. 이러한 경우, 어떤 기능도 초점이 맞지 않으며 이미지는 전체 프레임에서 "소프트(soft)"하고 초점이 맞지 않는 것으로 나타난다. 가장 오른쪽의 피크는 유리 슬라이드(114)로부터 멀어지는 방향을 나타내므로, 상기 가우스 함수 세트는 두 개의 가능한 포커스 깊이가 있을 때 티슈 섹션(tissue section)의 상위 특징에 초점을 맞추는 것을 선호한다.
도 13은 두 세트의 가우스 함수(즉, 대칭 및 단측)와 동초점 위치에 대응하는 평균을 보여준다. 가능한 솔루션을 구성하는 가우스 테스트 함수의 전체 보완은 위에 명시된 평균 및 시그마 값 세트에 있다. 이러한 각 가우스 함수는 위에서 설명한 바와 같이 진폭 및 기준선에 대해 정규화된다. 그런 다음, 비율 벡터에 대한 각 가우스 테스트 함수에 대해 RMS 차이가 계산된다. 최소 RMS 차이 값과 관련된 가우스 함수가 최적의 피팅 가우스 함수(the best fitting Gaussian function)로 선택된다. 도 14의 포인트(1400)는 최적의 피트 가우스 함수(the best-fit Gaussian function)의 최소 RMS 차이 값과 위치를 나타낸다.
일 실시예에서, 가우스 피팅 프로세스는 두 개의 숫자를 반환한다: 최적의 포커스 위치(best focus position), 및 최대 적합치(또는, 최대 피트)(fit maximum). 최적의 포커스 위치는 최적의 초점에 대응하는 열(즉, 픽셀)이다. 포커스 오차는 상기 값과 동초점의 차이에 비례한다. 최대 적합치는 최적의 포커스 위치에서 비율 벡터의 진폭이다.
일 실시예에서, 가우스 피팅 프로세스로부터의 반환 값은 신뢰가능한지 여부를 결정하기 위해 분석된다. 신뢰가능한 값만 포커스 맵에 추가되어 다음 이미지 스트라이프(subsequent image stripes)를 스캔하는 데 사용된다. 예를 들어, 오차 기울기가 계산되고, 가우스 피팅에 대해 위에서 정의된 피팅 기울기와 비교된다. 상기 두 기울기들은 신뢰가능한 반환 값에 대해 비교할 수 있어야 한다. 그렇지 않으면, 반환 값을 신뢰할 수 없다. 오차 기울기는 다음과 같이 계산될 수 있으며 도 15에 도시된다:
오차 기울기 = (최대 적합치(Fit Max) - 동초점에서의 비율(Ratio at Parfocal)) / (최적의 포커스 위치(Best Focus Position) - 동초점(Parfocal))
두 가지 가능한 경우가 있다:
사례 1: 오차 기울기와 피팅 기울기는 서로 다른 부호를 갖는다(즉, 동초점의 반대쪽). 이러한 경우, (최대 적합치(Fit Max) - 동초점에서의 비율(Ratio at Parfocal)) / (동초점에서의 비율(Ratio at Parfocal))의 절대 값이 0.20 미만이면, 반환 값들을 신뢰할 수 있다. 기울기는 동초점 근처에서 잡음이 많다. 따라서, 가우스 결과를 무효화하는 데 사용되지 않는다.
사례 2: 오차 기울기와 피팅 기울기가 같은 부호를 갖는다(즉, 동초점의 같은쪽). 이러한 경우, (피팅 기울기(Fitting Slope) - 오차 기울기(Error Slope)) / (피팅 기울기(Fitting Slope) + 오차 기울기(Error Slope))가 0.5 미만이면, 반환 값들을 신뢰할 수 있다. 기울기들의 차이는 두 기울기들의 평균과 비슷하다.
2.2.6. 프레임 분석 가능 스코어(Frame Analvzable Score)
일 실시예에서, 이미지 데이터의 각 프레임은 다음의 상태 스코어들 중 하나를 수신한다 (예를 들어, 프로세스(500)의 524 단계에서):
NonAnalyzable (예: =-2): 프레임에 티슈(또는, 조직)가 없다.
NonAnalyzableButHasTissue (예: = -1): 프레임에 티슈가 있지만 가우스 피팅 프로세스에 충분하지 않다. 일 실시예에서, 프레임은 메인 그레디언트 벡터에 대한 모든 열 평균이 MAlN_IMG_COLM_ANALYZABLE_THRESH 파라미터의 값(예를 들어, 50)보다 큰 경우 티슈를 갖는다.
AnalyzableButUntrustable (예: =0): 가우스 피팅 프로세스의 결과를 신뢰할 수 없다.
AnalyzableButSkipped (예: =1): 프레임에 가우스 피팅 프로세스를 위한 충분한 티슈가 있지만 스킵된 프레임이다.
AnalyzableAndTrustable (예: =2): 가우스 피팅 프로세스가 신뢰가능한 결과를 반환했다. 상기 포인트는 다음 이미지 스트라이프를 스캔할 때 포커싱하는 데 활용하기 위해 포커스 맵에 추가된다.
MFPFrame (예: =3): 프레임에 매크로 포커스 포인트가 있다. 일 실시예에서, 스캐닝 시작 전에 매크로 포커스 포인트를 수신하는 프레임들은 프레임 당 하나의 포커스 값만이 허용되기 때문에 RTF 값들을 수신하지 않을 것이다.
2.2.7. 이상치 배제(Outlier Rejection)
모든 이미지 스트라이프들이 스캔되면, 포커스 맵이 완성된다. 일 실시예에서, 상기 포인트에서, 포커스 맵의 포인트들(RTF 또는 MFP 포인트들 중 하나)이 이상치인지를 결정하기 위해 포커스 맵이 분석된다. 상기 결정(determination)은 프로세스(500)에서 592 단계로 표현된다.
샘플 포인트에서 떨어진 표면의 기울기를 고려하여 이상치를 식별할 수 있다. 상기 기울기는 각 샘플 포인트에서 떨어진 표면 상의 네 방향(위, 아래, 왼쪽, 및 오른쪽)으로 계산될 수 있다. 최소 기울기가 임계값을 초과하면, 해당 포인트가 이상치로 지정될 수 있다.
초점면(focal plane)의 옆에서 바라보는 관점의 예가 도 16에 도시되어 있다. 2개의 포인트(1610, 1620)는 이상치들로 식별되었다. 따라서, 이러한 2개의 포인트(1610, 1620)는 가능한 재스트라이핑을 위해 스트라이프를 테스트하기 전에 (예를 들어, 프로세스(500)의 594 단계에서) 포커스 맵으로부터 제거될 것이다(예를 들어, 프로세스(500)의 592 단계에서).
2.2.8. 재스트라이핑(Restriping)
일 실시예에서, 티슈를 포함하는 각 프레임에 대한 포커스 오차는 최종 포커스 맵으로부터 결정된 바와 같이 상기 프레임에 대한 최적의 포커스 위치로부터 프레임의 스캐닝 동안 대물 렌즈(120)의 실제 위치를 감산함으로써 계산된다. 이러한 계산(예를 들어, 프로세스(500)에서 594 단계로 표시됨)은 임의의 잠재적 이상치들이 포커스 맵에서 제거된 후에 수행된다(예를 들어, 프로세스(500)의 592 단계에서). 도 17a는 모든 이미지 스트라이프들이 제1 패스(first pass)에서 스캔된 후의 포커스 오차를 도시한다. 빨간색 및 진한 파란색 프레임은 각각 양수 및 음수 오차를 나타내는 반면, 녹색 프레임은 매우 작은 오차를 나타낸다. 스트라이프 세븐(Stripe Seven)은 진한 빨간색 영역으로 표시되므로, 상기 이미지 스트라이프는 재스트라이핑하기 위해 선택될 수 있다. 도 17b는 스트라이프 세븐(Stripe Seven)이 재스트라이프된 후의 포커스 오차를 도시한다. 재스트라이핑 후, 스트라이프 세븐(Stripe Seven)은 대부분 녹색이며, 이는 대물 렌즈(120)가 포커스 맵과 실질적으로 일치함을 나타낸다.
스킵된 프레임은 대물 렌즈(120)가 스킵되지 않은 프레임에 대해서만 단계적으로(in steps) 이동하기 때문에 일반적으로 재스트라이핑 후에 작은 포커스 오차를 갖는다. 재스트라이핑 후에도 큰 포커스 오차가 남아있는 경우, 이는 일반적으로 포커스가 좋지 않음을 나타내는 스캔 축을 따라 큰 기울기가 있음을 나타낸다. 최종 이미지 품질 평가는 재스트라이핑 후에 히트 맵(heat-map)(도 17b의 예에서 도시됨)에서 수행될 수 있다.
일 실시예에서, (예를 들어, 프로세스(500)의 594 단계에서) 재스트라이프할지 여부의 결정은 상기 이미지 스트라이프에 대한 포커스 오차의 수 및 크기에 기초하여 각 이미지 스트라이프에 대해 이루어진다. 예를 들어, 이미지 스트라이프에서 프레임의 5%가 정의된 임계값(예: Focus_Quality_Restripe_Threshold 파라미터로 저장됨)을 초과하면, 이미지 스트라이프는 재스트라이프된다. 상기 임계값은 사용자 선호도(user preference)와 일치하는 레벨로 조정될 수 있는 설정일 수 있다. 물론, 모든 이미지 스트라이프가 재스트라이프되면 최적의 이미지 품질을 얻을 수 있다. 그러나, 이러한 점은 또한 스캔 시간을 두 배로 늘린다.
2.2.9. 이미지 품질 스코어(Image Quality Score)
이미지 품질은 포커스 값이 아티팩트(artifacts)(예를 들어, 커버슬립 에지(coverslip edges), 버블(bubbles), 커버슬립 상단의 파편 등)가 아닌 실제 티슈에서 측정된 경우 주로 포커스 정확도의 함수이다. 일부 티슈는 기울어짐이 크므로, 전체 프레임의 포커스를 맞추기가 어렵다. 이로 인해 이미지 품질이 저하될 수 있지만, 이러한 문제를 해결하기 위해 많은 작업을 수행할 수는 없다.
일 실시예에서, 2진법의(binary) 이미지 품질 스코어가 각 스캔된 이미지에 제공된다: 통과(pass), 또는 실패(fail). "실패(Fail)"는 슬라이드(114)의 상당 부분에 대한 포커스가 매우 부족한 것과 같다. "실패(Fail)"의 이미지 품질 스코어는 다음 두 가지 메트릭스를 기반으로 할 수 있다.
불량 프레임의 백분율(Percentage of Bad Frames). 불량 프레임의 백분율이 Image_Quality_Bad_Frames_Threshold 파라미터를 초과하면 실패가 보고된다. 일 실시예에서, 불량 프레임의 백분율은 일반적으로 5% 미만일 것이다. 그 이유는 백분율이 5%보다 높을 때 개별 이미지 스트라이프가 재스트라이프되기 때문이다.
평균 기울기(Average Tilt). 평균 기울기는 포커스 맵에서 계산된다. 티슈 기울기가 밀리미터 당 1 마이크론(1 micron per millimeter) 미만인 슬라이드는 좋은 이미지 품질을 기대할 수 있다. 기울기가 Image_Quality_Tilt_Threshold 파라미터를 초과하면, 실패가 보고될 수 있다.
일 실시예에서, 통과 이미지 품질 스코어(passing image quality score)를 수신하는 이미지는 스캐닝 시스템(100)의 운영자(operator)에 의해 여전히 허용 불가능한 것으로 판단될 수 있다. Focus_Quality_Restripe_Threshold 파라미터를 줄이면 품질을 향상시킬 수 있지만, 품질 향상을 위해 더 많은 이미지 스트라이프를 다시 스캔하게 된다. 실패한 슬라이드와 운영자가 이미지 품질이 좋지 않다고 판단하는 모든 슬라이드는 포커싱 방법을 'ReScan'으로 설정하여 다시 스캔될 수 있다. ReScan 워크플로우(ReScan workflow)는 스캔 시작시 추가 MFP 포인트를 추가할 뿐 아니라, 모든 이미지 스트라이프를 재스트라이핑하므로 자연스럽게 더 많은 시간이 소요된다.
2.2.10. RTF 파라미터(RTF Parameters)
일 실시예에서, RTF 방법은 파라미터 세트를 사용하는데, 이들 중 일부는 성능을 개선하고 다양한 샘플(116) 및/또는 유리 슬라이드(114)를 수용하도록 조정될 수 있다. 이들 파라미터들 중 다수는 구성 설정 파일(configuration settings file)(예를 들어, 메모리(106)에 저장된 "scanner.xml" 또는 다른 파일)로부터 런 타임(run time)에 구성될 수 있는 반면, 다른 파라미터는 소프트웨어에서 고정될 수 있다. 두 가지 유형의 파라미터들에 대한 예가 아래에 식별되고 설명되어 있다.
2.2.10.1. 고정 파라미터(Fixed Parameters)
특정 파라미터 값은 소프트웨어 코드에서 고정될 수 있다. 이러한 파라미터 값은 테스트 슬라이드의 스캐닝 및 원하는(desired) 알고리즘 성능에 기초하여 결정될 수 있다. 이러한 고정 파라미터의 예시적이고 비제한적인 예가 아래에 설명되어 있다.
MAIN_IMG_COLM_ANALYZABLE_THRESH. 상기 임계값보다 큰 평균 메인 그레디언트 벡터 값은 티슈의 존재를 나타낸다. 예를 들어, 상기 파라미터 값은 50이다. 일 실시예에서, 메인 그레디언트 벡터의 열의 85%는 가우스 피팅 프로세스로 진행하기 위해 상기 값을 초과해야 한다.
동초점 임계값(Parfocal Threshold). 일 실시예에서, 동초점에서의 비율이 0.5보다 크고 1.5보다 작으면(즉, 0.5 < 동초점에서의 비율 <1.5), 프레임은 가우스 피팅 프로세스로 진행할 수 있다.
가우스 피팅에 대한 샘플 값(Sample Values for the Gaussian Fitting). 이는 최적의 피팅 가우스 함수의 후보로 테스트할 중심점(평균) 및 폭(시그마)이다. 일 실시예에서, 평균 값 범위는 25 단위로 100 내지 3,996 (4,096-100)이고, 시그마 값 범위는 100 단위로 500 내지 1,200이다.
2.2.10.2. 구성 가능한 파라미터(Configurable Parameters)
구성 가능한 파라미터 값은 작동을 위해 스캐닝 시스템(100)을 구성하는 데 필요한 다양한 파라미터들을 보유하는 데 사용되는 XML 파일(예를 들어, 메모리(106)에 저장된 "scanner.xml" 또는 다른 파일)에 저장될 수 있다. 이러한 구성 가능한 파라미터의 예시적이고 비제한적인 예는 공칭 값(nominal values)과 함께 아래에 설명되어 있다.
포커싱 방법(Focusing Method). 상기 파라미터는 다음 값들 중 하나로 설정될 수 있다.
RTF: 이것은 기본 방법이다. 포커싱 방법을 RTF 방법으로 설정하면, 특정 개수(예: 3개)의 매크로 포커스 포인트를 사용하여 스캔을 시작한 다음 RTF 방밥과 추가 매크로 포커스 포인트 값을 사용하여 스캔하는 동안 포커스 맵을 만든다. 티슈 찾기 알고리즘의 가능한 티슈 맵(tissue map)을 사용하여 포커스 포인트에 대해 허용 가능한 프레임을 식별할 수 있다. 또한, 이상치 포커스 포인트 값이 식별 및 제거되고, 재스트라이핑 임계값을 초과하는 이미지 스트라이프에 대해 재스트라이핑이 수행된다.
PointFocus: MFP 방법이 포커싱 방법으로 설정된 경우, 매크로 포커스 포인트만 포커스 맵을 채우는 데 사용된다. 이러한 포인트는 이미지 스트라이프가 획득되기 전에 평가되므로, 재스트라이핑이 수행되지 않는다.
ReScan: 이 방법은 시간이 많이 걸리지만, 기본 RTF 방법에 실패한 슬라이드(114)에 대해 좋은 이미지 품질을 제공하기위한 것이다. 사용 가능한 전체 스캔 영역이 스캔된다. 따라서, 티슈 찾기 알고리즘은 스캔 중 포커스 위치를 제한하는 데 사용되지 않는다. 상기 스캔은 매크로 포커스 포인트(PointFocus와 동일)의 전체 보완으로 시작되며 모든 이미지 스트라이프가 재스트라이프된다.
동초점(Parfocal). 상기 파라미터의 값은 메인 이미징 센서(130A)와의 동초점(parfocality)에 대응하는 틸트된 포커싱 센서(130B) 상의 픽셀 위치이다. 기본적으로, 상기 파라미터의 값은 1766으로 설정될 수 있다.
Stage_Tilt_Scan. 이는 나중에 사용할 수 있는 파라미터일 수 있으며 기본값은 0.0일 수 있다.
Stage_Tilt_Index. 이는 나중에 사용할 수 있는 파라미터일 수 있으며 기본값이 0.0 이상일 수 있다.
Image_Data_Number_Rows. 상기 파라미터의 값은 단일 프레임을 구성하는 행의 수이다. 기본적으로, 상기 파라미터의 값은 1000으로 설정될 수 있다.
Image_Data_Number_Columns. 상기 파라미터의 값은 단일 프레임을 구성하는 열의 수이며, 라인 스캔 카메라(130)의 픽셀(142)의 수보다 작거나 같아야 한다. 기본적으로, 상기 파라미터의 값은 4096으로 설정될 수 있다.
Image_Data_Number_Color_Channels. 상기 파라미터의 값은 색상 채널의 수이다. RGB 데이터의 경우, 상기 파라미터의 값은 항상 3개이며 적색, 녹색, 및 청색 세 가지 색상 채널을 나타낸다. 따라서, 기본적으로, 상기 파라미터의 값은 3으로 설정될 수 있다.
Z_Offset. 상기 파라미터의 값은 X/Y 방법(즉, MFP 및 RTF 방법 모두)으로 스캔할 때 포커스 값에 대한 오프셋이다. 이는 어떤 값이 가장 선명한 이미지를 제공하는지 보기 위하여, 일련의 값으로 슬라이드(114) 상의 티슈 샘플(116)을 스캔함으로써 실험적으로 조정될 수 있다. 또는, 테스트 스크립트(test script)를 사용하여 오프셋 값 시퀀스(sequence of offset values)로 작은 영역(예: 1mm × 1mm)을 스캔할 수 있으며, 시퀀스의 각 오프셋 값에 대해 평균 콘트라스트를 계산할 수 있다. 콘트라스트가 최대인 오프셋 값은 상기 파라미터의 최적 값(optimal value)에 대응한다. 설계 상, 상기 오프셋 값은 0이어야 한다. 그러나, 스테이지(112)가 정지(stationary)되어있을 때와 비교하여 스테이지(112)가 움직일 때 Z 위치에 계통 오차(systematic error)가 있을 수 있음이 밝혀졌다. 기본적으로, 상기 파라미터의 값은 0.0005mm로 설정될 수 있다.
Z_Scaling_Factor_Left. 상기 파라미터의 값은 픽셀 당 마이크론 단위로 0.01을 곱한 스케일링 팩터(scaling factor)이다. 스케일링 팩터는 마이크론 당 100 카운트(counts)의 경우 픽셀 당 인코더(encoder) 카운트의 단위를 갖는다(대물 렌즈(120)의 경우). 상기 파라미터는 틸트된 포커싱 센서(130B)를 따라 픽셀을 마이크론으로 변환하는 데 사용되며, 아래쪽 방향(즉, 유리 슬라이드(114) 쪽으로)의 Z 거리에 적용된다. 기본적으로, 상기 파라미터의 값은 0.38832로 설정될 수 있다.
Z_Scaling_Factor_Right. 상기 파라미터의 값은 픽셀 당 마이크론 단위로 0.01을 곱한 스케일링 팩터(scaling factor)이다. 스케일링 팩터는 마이크론 당 100 카운트(counts)의 경우 픽셀 당 인코더(encoder) 카운트의 단위를 갖는다(대물 렌즈(120)의 경우). 상기 파라미터는 틸트된 포커싱 센서(130B)를 따라 픽셀을 마이크론으로 변환하는 데 사용되며, 위쪽 방향(즉, 유리 슬라이드(114)로부터 멀어짐)의 Z 거리에 적용된다. 기본적으로, 상기 파라미터의 값은 0.31943으로 설정될 수 있다.
Issue_Move_Every_X_Frames_Modulo. 스캐닝 워크플로우(scanning workflow)는 특정(certain) 프레임에서만 대물 렌즈(120)를 움직이는 것을 포함한다. 대물 렌즈(120)의 움직임이 발생하지 않는 프레임은 RTF 방법으로 분석된다. 기본적으로, 상기 파라미터의 값은 2로 설정될 수 있으며, 이는 다른 모든 프레임을 스킵하는 것을 의미한다.
Frame_Lag_Stripe_Abort_Threshold. 상기 파라미터의 값은 RTF 프로세싱이 대물 렌즈(120)의 위치를 지연(lag)시키는 것이 허용되는 프레임의 수이다. 큰 값은 상기 특성(feature)을 효과적으로 비활성화(disable)한다. 프레임 지연이 상기 파라미터의 값을 초과하면, 이미지 스트라이프의 스캐닝이 중단되고, 이미지 스트라이프의 재스캔(rescan)이 시작된다. 기본적으로, 상기 파라미터의 값은 300으로 설정될 수 있다. 디버깅(Debugging). 상기 파라미터의 값은 불리언(Boolean)이다. 기본적으로, 상기 파라미터의 값은 거짓(false)으로 설정될 수 있다. 상기 파라미터의 값을 참(true)으로 설정하면, 실제 프레임 이미지 데이터가 출력된다.
Debug_Frame_Number. 상기 파라미터의 값은 디버깅(Debugging) 파라미터가 참(true)으로 설정된 경우 출력할 프레임의 수(number)이다. 기본적으로, 상기 파라미터의 값은 1로 설정될 수 있다.
Debug_Stripe_Number. 상기 파라미터의 값은 디버깅(Debugging) 파라미터가 참(true)으로 설정된 경우 출력할 이미지 스트라이프의 수(number)이다. 후속 RTF 프로세싱에 대한 간섭과 메모리에 정보를 기록함으로써 발생하는 정상 작동의 데이터 변경을 피하기 위해 단일 프레임만 출력될 수 있다. 기본적으로, 상기 파라미터의 값은 3으로 설정될 수 있다.
Focus_Quality_Restripe_Threshold. 상기 파라미터의 값은 인코더 카운트의 수(number of encoder counts)이다. 이미지 스트라이프에서 티슈가 있는 프레임의 특정 비율(예: 5%)에 상기 값을 초과하는 포커스 오차가 있는 경우, 이미지 스트라이프가 재스트라이프된다. 포커스 오차는 대물 렌즈(120)의 실제 Z 위치를 최종 포커스 맵과 비교하여 계산될 수 있다. 상기 파라미터를 높은 값으로 설정하면 재스트라이핑이 효과적으로 비활성화되는 반면, 상기 파라미터를 낮은 값으로 설정하면 티슈가 있는 모든 이미지 스트라이프들이 다시 스캔된다. 기본적으로, 상기 파라미터의 값은 90으로 설정될 수 있다.
Do_Restripe. 상기 파라미터의 값은 불리언(Boolean)이다. 상기 파라미터의 값이 참(true)이면, 재스트라이핑이 활성화(enabled)된다. 그렇지 않고, 상기 파라미터의 값이 거짓(false)이면, 재스트라이핑이 수행되지 않도록 재스트라이핑이 비활성화된다(예를 들어, 프로세스(500)의 594 단계 및 596 단계가 생략 됨). 또한, 상기 파라미터의 값이 거짓(false)이면, 다른 관련 기능(associated functions)(예를 들어, 프로세스(500)의 592 단계에서의 이상치 배제)도 스킵될 수 있다. 기본적으로, 상기 파라미터의 값은 참(true)으로 설정될 수 있다.
Do_Outlier_Rejection. 상기 파라미터의 값은 불리언(Boolean)이다. 상기 파라미터의 값이 참(true)이면, 포커스 맵은 이상치에 대해 분석된다(예를 들어, 프로세스(500)의 592 단계에서). 감지된 이상치들(detected outliers)은 모두 삭제되고 포커스 맵은 삭제된 이상치들 없이 다시 계산된다. 이것은 재스트라이핑을 수행할지 여부를 결정하기 전에 수행된다(예를 들어, 프로세스(500)의 594 단계에서). 상기 파라미터의 값이 거짓(false)이면, 포커스 맵은 이상치에 대해 분석되지 않고 이상치 배제가 수행되지 않는다(예를 들어, 프로세스(500)의 592 단계가 생략됨). 기본적으로, 상기 파라미터의 값은 참(true)으로 설정될 수 있다.
Outlier_Rejection_Threshold. 상기 파라미터의 값은 밀리미터 당 마이크론 단위이다. 프로세스(500)의 592 단계의 실시예에서, 포커스 맵의 각 포인트에 대해, 4개의 기울기(slope)가 표면을 따라 위, 아래, 오른쪽, 및 왼쪽에 대해 계산된다. 최소 기울기가 상기 파라미터의 값보다 크면, 상기 포인트는 이상치로 표시되고 이후 포커스 맵에서 사용되지 않는다. 이러한 아이디어는 외곽 포인트(outlying point)가 해당 포인트에서 모든 방향으로 큰 기울기를 가질 것이라는 것이다. 기본적으로, 상기 파라미터의 값은 2.0으로 설정될 수 있다.
Focus_On_Probable_Tissue. 상기 파라미터의 값은 불리언(Boolean)이다. 상기 파라미터의 값이 참(true)이면, 티슈 찾기 알고리즘(tissue-finding algorithm)의 개연성 있는(probable) 티슈 맵(tissue map)이 RTF 방법에서 허용되는 포커스 위치에 대한 마스크로 사용된다. RTF 방법은 티슈가 있는 프레임을 감지하는 데 매우 민감하므로, 실제로 티슈에 있지 않더라도 포커스 값이 포커스 맵에 추가될 수 있다. 개연성 있는 티슈 마스크(tissue mask)를 사용하면 이를 방지할 수 있다. 상기 파라미터의 값이 거짓(false)이면, 아마도 티슈 맵이 마스크로 사용되지 않는다. 기본적으로, 상기 파라미터의 값은 참(true)으로 설정될 수 있다.
Request_Additional_MFPs. 상기 파라미터의 값은 불리언(Boolean)이다. 상기 파라미터의 값이 참(true)이면, 각 이미지 스트라이프가 스캔된 후에 추가 매크로 포커스 포인트가 요청될 수 있다(예를 들어, 프로세스(500)의 584 단계에서). 이러한 추가(extra) 매크로 포커스 포인트는 RTF 방법이 안정적(reliably)으로 초점을 맞출 수 없는 경우 포커스 맵에 추가 포커스 값을 제공하는 데 사용된다. 상기 파라미터의 값이 거짓(false)이면, 각 이미지 스트라이프를 스캔한 후 추가 매크로 포커스 포인트가 요청되지 않는다. 기본적으로, 상기 파라미터의 값은 참(true)으로 설정될 수 있다.
Focus_Point_R_Min. 상기 파라미터의 값은 밀리미터 단위이다. Request_Additional_MFPs 파라미터의 값이 참(true)이고 티슈가 있는 프레임이 Focus_Point_R_Min 파라미터의 값보다 유효한(valid) 포커스 값에서 더 먼 경우, 프레임의 중앙에 대한 매크로 포커스 포인트가 요청된다(예를 들어, 프로세스(500)의 584 단계에서). 이러한 추가 매크로 포커스 포인트는 다음 이미지 스트라이프를 스캔하기 전에 초점이 맞춰지고 포커스 맵에 추가된다. 기본적으로, 상기 파라미터의 값은 2로 설정될 수 있다.
Enable_PredictedZ_Offset. 상기 파라미터의 값은 불리언(Boolean)이다. 상기 파라미터의 값이 참(true)이면, 포커스 맵에서 예측된 값이 RTF 방법으로 계산된 최적의 포커스 값에서 감산된다(또는, 빼진다). 결과 차이는 다음 프레임에 대해 예측되는 포커스 맵의 포커스 값에 추가된다. 이러한 기능(functionality)은 포커스 오차의 트렌드(trend)를 제거하고 재스트라이핑 비율(rate)을 줄여 초점 정확도(focus accuracy)를 개선하기 위한 것이다. 상기 파라미터의 값이 거짓(false)이면, 상기 기능이 비활성화된다. 기본적으로, 상기 파라미터의 값은 참(true)으로 설정될 수 있다.
Image_Quality_Bad_Frames_Threshold. 상기 파라미터의 값은 백분율이다. 불량 프레임의 백분율이 상기 파라미터의 값을 초과하면, 이미지 품질 스코어가 "실패(fail)"로 설정된다. 기본적으로, 상기 파라미터의 값은 10%로 설정될 수 있다.
lmage_Quality_Tilt_Threshold. 상기 파라미터의 값은 밀리미터 당 마이크론 단위이다. 티슈의 평균 기울기가 상기 파라미터의 값을 초과하면, 이미지 품질 스코어가 "실패(fail)"로 설정된다. 기본적으로, 상기 파라미터의 값은 5 마이크론/mm로 설정될 수 있다.
개시된 실시예에 대한 설명은 통상의 기술자가 본 발명을 제조하거나 사용할 수 있도록 제공된다. 이들 실시예에 대한 다양한 변경은 통상의 기술자에게 명백할 것이며, 여기에 설명된 일반적인 원리는 본 발명의 사상 또는 범위를 벗어나지 않고 다른 실시예에 적용될 수 있다. 따라서, 본 명세서에 제시된 설명 및 도면은 본 발명의 현재 바람직한 실시예를 나타내며, 따라서 본 발명에 의해 광범위하게 고려되는 주제를 대표하는 것으로 이해되어야 한다. 또한, 본 발명의 범위는 통상의 기술자에게 명백할 수 있는 다른 실시예를 완전히 포함하고, 본 발명의 범위는 이에 따라 제한되지 않는다고 이해된다.
본 명세서에서 설명된 "A, B 또는 C 중 적어도 하나", "A, B 또는 C 중 하나 이상", "A, B 및 C 중 적어도 하나", "A, B 및 C 중 하나 이상", 및 "A, B, C 또는 이들의 조합"과 같은 조합(Combination)은 A, B 및/또는 C의 임의의 조합을 포함하고 A의 배수, B의 배수 또는 C의 배수를 포함할 수 있다. 구체적으로, "A, B 또는 C 중 적어도 하나", "A, B 또는 C 중 하나 이상", "A, B 및 C 중 적어도 하나", "A, B 및 C 중 하나 이상", 및 "A, B, C 또는 이들의 조합"과 같은 조합(Combination)은 A만, B만, C만, A와 B, A와 C, B와 C, 또는 A와 B와 C를 조합할 수 있으며 이러한 조합에는 구성 A, B 및/또는 C의 하나 이상의 멤버(member)가 포함될 수 있다. 예를 들어, A와 B의 조합은 하나의 A와 여러 B, 여러 A와 하나의 B, 또는 여러 A와 여러 B를 포함할 수 있다.

Claims (15)

  1. 스캐닝 시스템의 적어도 하나의 하드웨어 프로세서를 사용하여 수행되는 방법에 있어서,
    포커스 맵을 초기화하는 단계;
    유리 슬라이드 상의 샘플의 적어도 일부의 복수의 이미지 스트라이프들을 획득하는 동안 상기 포커스 맵에 포커스 포인트들을 추가하는 단계로서, 상기 복수의 이미지 스트라이프들 각각에 대하여,
    이미징 라인 스캔 카메라(imaging line-scan camera)와 틸트된 포커싱 라인 스캔 카메라(tilted focusing line-scan camera)를 모두 이용하여 상기 이미지 스트라이프를 집합적으로 나타내는 복수의 프레임들 각각을 획득하는 단계, 및
    상기 복수의 프레임들 중 신뢰가능한(trusted) 프레임들에 대한 최적의 포커스 위치를 나타내는 포커스 포인트들을 상기 포커스 맵에 추가하는 단계를 포함하는 단계;
    상기 포커스 맵에서 외부(outlying) 포커스 포인트들을 제거하는 단계;
    상기 복수의 이미지 스트라이프들의 상기 복수의 프레임들 각각에 대한 포커스 오차에 기초하여 상기 복수의 이미지 스트라이프들 중 하나 이상을 재스트라이프(restripe)할지 여부를 결정하는 단계;
    하나 이상의 이미지 스트라이프를 재스트라이프할 때, 하나 이상의 이미지 스트라이프를 재획득(reacquire)하는 단계; 및
    상기 복수의 이미지 스트라이프들을 상기 샘플의 적어도 일부의 합성 이미지로 조립하는 단계를 포함하는 방법.
  2. 제1 항에 있어서,
    상기 복수의 이미지 스트라이프들을 획득하는 동안 상기 포커스 맵에 포커스 포인트들을 추가하는 단계는,
    획득될 상기 복수의 이미지 스트라이프들 중 마지막 이미지 스트라이프를 제외한 이미지 스트라이프들 각각에 대하여, 상기 이미지 스트라이프를 획득한 후 획득할 상기 이미지 스트라이프들 중 다음 이미지 스트라이프로부터 방향을 결정하는 단계를 더 포함하는 방법.
  3. 제2 항에 있어서,
    상기 복수의 이미지 스트라이프들을 획득하는 단계는,
    기준 스트라이프를 획득하는 단계;
    상기 기준 스트라이프의 제1 측으로부터 상기 샘플의 스캔 영역의 제1 에지까지 순차적으로 이미지 스트라이프들을 획득하는 단계; 및
    상기 기준 스트라이프의 상기 제1 측에 대향하는 상기 기준 스트라이프의 제2 측으로부터 상기 스캔 영역의 상기 제1 에지에 대향하는 상기 스캔 영역의 상기 제2 에지까지 순차적으로 이미지 스트라이프들을 획득하는 단계를 포함하는 방법.
  4. 제1 항에 있어서,
    상기 복수의 이미지 스트라이프들의 획득을 시작하기 전, 상기 포커스 맵에 복수의 매크로 포커스 포인트들을 추가하는 단계를 더 포함하는 방법.
  5. 제1 항에 있어서,
    상기 복수의 이미지 스트라이프들 중 하나 이상을 획득한 후, 상기 포커스 맵에 하나 이상의 매크로 포커스 포인트를 추가하는 단계를 더 포함하는 방법.
  6. 제1 항에 있어서,
    상기 복수의 이미지 스트라이프들을 획득하는 동안 상기 포커스 맵에 포커스 포인트들을 추가하는 단계는,
    상기 복수의 이미지 스트라이프들 각각의 상기 복수의 프레임들 각각에 대해 상기 프레임이 신뢰가능한지 여부를 결정하는 단계를 더 포함하는 방법.
  7. 제6 항에 있어서,
    상기 프레임이 신뢰가능한지 여부를 결정하는 단계는,
    상기 이미징 라인 스캔 카메라에 의해 획득된 상기 프레임의 각 열에 대한 평균 그레디언트 벡터(average gradient vector)를 포함하는 메인 그레디언트 벡터(main gradient vector)를 계산하는 단계;
    상기 틸트된 포커싱 라인 스캔 카메라에 의해 획득된 상기 프레임의 각 열에 대한 평균 그레디언트 벡터를 포함하는 틸트 그레디언트 벡터(tilt gradient vector)를 계산하는 단계;
    상기 메인 그레디언트 벡터에서 분석 가능한 열의 수를 결정하는 단계;
    상기 메인 그레디언트 벡터 및 상기 틸트 그레디언트 벡터에 기초하여 비율 벡터(ratio vector)를 계산하는 단계;
    상기 분석 가능한 열의 수 및 상기 비율 벡터에 기초하여 상기 프레임이 분석 가능한지 여부를 결정하는 단계;
    상기 프레임이 분석 가능하지 않다고 결정할 때, 상기 프레임이 신뢰가능하지 않다고 결정하는 단계; 및
    상기 프레임이 분석 가능하다고 결정할 때,
    상기 비율 벡터로 표현되는 비율 곡선에 적어도 하나의 가우스 함수(Gaussian function)를 피팅하고,
    상기 가우스 함수의 피크를 최적의 포커스 위치로 식별하고,
    상기 최적의 포커스 위치에서 상기 비율 벡터의 진폭을 최대 적합치(fit maximum)로 식별하고,
    상기 최적의 포커스 위치 및 상기 최대 적합치에 기초하여 상기 프레임이 신뢰 가능한지 여부를 결정하고,
    상기 프레임이 신뢰가능하지 않다고 결정할 때 상기 프레임은 신뢰되지 않는 것으로 결정하고,
    상기 프레임이 신뢰가능하다고 결정할 때 상기 포커스 맵에 상기 최적의 포커스 위치를 추가하는 단계를 더 포함하는 방법.
  8. 제7 항에 있어서,
    상기 분석 가능한 열의 수를 결정하는 단계는,
    임계값을 초과하는 상기 메인 그레디언트 벡터의 열 수를 결정하는 단계를 포함하는 방법.
  9. 제7 항에 있어서,
    상기 비율 벡터를 계산하는 단계는,
    상기 틸트 그레디언트 벡터를 상기 메인 그레디언트 벡터로 나누는 단계를 포함하는 방법.
  10. 제7 항에 있어서,
    상기 프레임이 분석 가능한지 여부를 결정하는 단계는,
    상기 분석 가능한 열의 수가 미리 정의된 임계값 백분율을 초과하는지 여부를 결정하는 단계;
    상기 이미징 라인 스캔 카메라와 초점 거리가 동일한 상기 틸트된 포커싱 라인 스캔 카메라의 한 지점인 동초점 위치(parfocal location)에서, 상기 비율 벡터의 값이 미리 정의된 범위 내에 있는지 여부를 결정하는 단계;
    상기 분석 가능한 열의 수가 상기 미리 정의된 임계값을 초과하지 않거나 상기 동초점 위치에서 상기 비율 벡터의 값이 상기 미리 정의된 범위 내에 있지 않다고 판단되는 경우, 상기 프레임은 분석할 수 없다고 결정하는 단계; 및
    상기 분석 가능한 열의 수가 상기 미리 정의된 임계값을 초과하고 상기 동초점 위치에서 상기 비율 벡터의 값이 상기 미리 정의된 범위 내에 있다고 판단되는 경우, 상기 프레임은 분석 가능하다고 결정하는 단계를 포함하는 방법.
  11. 제7 항에 있어서,
    상기 비율 곡선에 적어도 하나의 가우스 함수를 피팅하는 단계는,
    평균 값들의 범위 및 시그마 값들의 범위 내에서 복수의 가능한 가우스 함수들을 샘플링하는 단계; 및
    상기 비율 곡선과 가장 작은 차이로 상기 최적의 포커스 위치를 식별하는 데 사용될 상기 복수의 가능한 가우스 함수들 중 하나를 선택하는 단계를 포함하는 방법.
  12. 제1 항에 있어서,
    상기 포커스 맵에서 외부 포커스 포인트들을 제거하는 단계는,
    상기 포커스 맵 내의 하나 이상의 샘플 포인트에 대하여,
    네 개의 방향 각각에서, 상기 포커스 맵 내에서 상기 샘플 포인트로부터 떨어진 기울기를 계산하는 단계; 및
    상기 계산된 기울기들의 최소값이 미리 정의된 임계값을 초과하는 경우, 상기 포커스 맵에서 상기 샘플 포인트를 제거하는 단계를 포함하는 방법.
  13. 제1 항에 있어서,
    상기 복수의 이미지 스트라이프들 중 하나 이상을 재스트라이프할지 여부를 결정하는 단계는,
    상기 포커스 맵에서 외부 포커스 포인트들을 제거한 후,
    상기 복수의 이미지 스트라이프들 각각의 상기 복수의 프레임들 각각에 대하여, 상기 프레임을 획득하는 동안 대물 렌즈(objective lens)의 실제 위치를 상기 포커스 맵 내의 상기 프레임에 대한 최적의 포커스 위치로부터 감산하여 상기 포커싱 오차를 계산하는 단계; 및
    상기 복수의 이미지 스트라이프들 각각에 대하여, 미리 정의된 임계값을 초과하는 포커스 오차를 갖는 상기 프레임의 수가 미리 정의된 임계값 백분율을 초과하는 경우 상기 이미지 스트라이프를 재스트라이프하는 것으로 결정하는 단계를 포함하는 방법.
  14. 이미징 라인 스캔 카메라;
    틸트된 포커싱 라인 스캔 카메라;
    적어도 하나의 하드웨어 프로세서; 및
    상기 적어도 하나의 하드위에 프로세서에 의해 실행될 때,
    포커스 맵을 초기화하고,
    유리 슬라이드 상의 샘플의 적어도 일부의 복수의 이미지 스트라이프들을 획득하는 동안 상기 포커스 맵에 포커스 포인트들을 추가하고,
    상기 복수의 이미지 스트라이프들 각각에 대하여,
    이미징 라인 스캔 카메라(imaging line-scan camera)와 틸트된 포커싱 라인 스캔 카메라(tilted focusing line-scan camera)를 모두 이용하여 상기 이미지 스트라이프를 집합적으로 나타내는 복수의 프레임들 각각을 획득하고,
    상기 복수의 프레임들 중 신뢰가능한(trusted) 프레임들에 대한 최적의 포커스 위치를 나타내는 포커스 포인트들을 상기 포커스 맵에 추가하고,
    상기 포커스 맵에서 외부 포커스 포인트들을 제거하고,
    상기 복수의 이미지 스트라이프들의 상기 복수의 프레임들 각각에 대한 포커스 오차에 기초하여 상기 복수의 이미지 스트라이프들 중 하나 이상을 재스트라이프(restripe)할지 여부를 결정하고,
    하나 이상의 이미지 스트라이프를 재스트라이프할 때, 하나 이상의 이미지 스트라이프를 재획득(reacquire)하고,
    상기 복수의 이미지 스트라이프들을 상기 샘플의 적어도 일부의 합성 이미지로 조립하도록 구성되는 하나 이상의 소프트웨어 모듈을 포함하는 스캐닝 시스템.
  15. 명령어가 저장된 비 일시적 컴퓨터 판독 가능 저장 매체(A non-transitory computer-readable storage medium)에 있어서,
    스캐닝 시스템의 프로세서에 의해 실행될 때, 상기 명령어는 상기 프로세서가
    포커스 맵을 초기화하는 단계;
    유리 슬라이드 상의 샘플의 적어도 일부의 복수의 이미지 스트라이프들을 획득하는 동안 상기 포커스 맵에 포커스 포인트들을 추가하는 단계로서, 상기 복수의 이미지 스트라이프들 각각에 대하여,
    이미징 라인 스캔 카메라(imaging line-scan camera)와 틸트된 포커싱 라인 스캔 카메라(tilted focusing line-scan camera)를 모두 이용하여 상기 이미지 스트라이프를 집합적으로 나타내는 복수의 프레임들 각각을 획득하는 단계, 및
    상기 복수의 프레임들 중 신뢰가능한(trusted) 프레임들에 대한 최적의 포커스 위치를 나타내는 포커스 포인트들을 상기 포커스 맵에 추가하는 단계를 포함하는 단계;
    상기 포커스 맵에서 외부 포커스 포인트들을 제거하는 단계;
    상기 복수의 이미지 스트라이프들의 상기 복수의 프레임들 각각에 대한 포커스 오차에 기초하여 상기 복수의 이미지 스트라이프들 중 하나 이상을 재스트라이프할지 여부를 결정하는 단계;
    하나 이상의 이미지 스트라이프를 재스트라이프할 때, 하나 이상의 이미지 스트라이프를 재획득하는 단계; 및
    상기 복수의 이미지 스트라이프들을 상기 샘플의 적어도 일부의 합성 이미지로 조립하는 단계를 수행하도록 구성되는 비 일시적 컴퓨터 판독 가능 저장 매체.
KR1020217020382A 2019-08-06 2020-08-05 슬라이드 스캐닝 시스템의 실시간 포커싱 KR20220035867A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962883525P 2019-08-06 2019-08-06
US62/883,525 2019-08-06
PCT/US2020/045074 WO2021026278A1 (en) 2019-08-06 2020-08-05 Real-time focusing in a slide-scanning system

Publications (1)

Publication Number Publication Date
KR20220035867A true KR20220035867A (ko) 2022-03-22

Family

ID=72145514

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217020382A KR20220035867A (ko) 2019-08-06 2020-08-05 슬라이드 스캐닝 시스템의 실시간 포커싱

Country Status (6)

Country Link
US (2) US11863867B2 (ko)
EP (1) EP3884327B1 (ko)
JP (1) JP2022542625A (ko)
KR (1) KR20220035867A (ko)
CN (1) CN113366364A (ko)
WO (1) WO2021026278A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019210580A1 (de) * 2019-07-18 2021-01-21 Robert Bosch Gmbh Verfahren zum Ermitteln einer Position eines ersten Bildbereichs in einem Korrespondenz-Bild, SoC und Steuervorrichtung und System zur Durchführung des Verfahrens, sowie Computerprogramm
US20240019678A1 (en) * 2022-07-15 2024-01-18 Nanotronics Imaging, Inc. Autofocus system and method

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7668362B2 (en) * 2000-05-03 2010-02-23 Aperio Technologies, Inc. System and method for assessing virtual slide image quality
CN100377167C (zh) * 2006-03-17 2008-03-26 北京紫光捷通科技有限公司 一种用于二维码识别的二维码区域精确定位方法
JP4939827B2 (ja) * 2006-03-28 2012-05-30 シスメックス株式会社 標本分析装置
US9784568B2 (en) * 2011-05-20 2017-10-10 Universitat Politècnica De Catalunya Method and device for non-contact three dimensional object surface imaging
GB201113071D0 (en) * 2011-07-29 2011-09-14 Ffei Ltd Method and apparatus for image scanning
JP2013083925A (ja) * 2011-09-29 2013-05-09 Canon Inc 撮像装置及びその制御方法
BR112018005822A2 (pt) * 2015-09-24 2018-10-09 Leica Biosystems Imaging Inc focagem em tempo real em imageamento de varredura de linha
WO2018126138A1 (en) * 2016-12-30 2018-07-05 Leica Biosystems Imaging, Inc. Low resolution slide imaging and slide label imaging and high resolution slide imaging using dual optical paths and a single imaging sensor
CN114779459A (zh) * 2017-09-29 2022-07-22 徕卡生物系统成像股份有限公司 实时自动聚焦扫描

Also Published As

Publication number Publication date
CN113366364A (zh) 2021-09-07
EP3884327A1 (en) 2021-09-29
US20240064400A1 (en) 2024-02-22
US20220159171A1 (en) 2022-05-19
US11863867B2 (en) 2024-01-02
JP2022542625A (ja) 2022-10-06
WO2021026278A1 (en) 2021-02-11
EP3884327B1 (en) 2024-02-21

Similar Documents

Publication Publication Date Title
KR102411099B1 (ko) 실시간 오토포커스 스캐닝
US10823936B2 (en) Real-time autofocus focusing algorithm
US11422141B2 (en) Slide rack clamp apparatus
US20240064400A1 (en) Real-time focusing in a slide-scanning system

Legal Events

Date Code Title Description
A201 Request for examination