KR20210052516A - 디지털 병리학을 위한 시선 추적 이미지 뷰어 - Google Patents

디지털 병리학을 위한 시선 추적 이미지 뷰어 Download PDF

Info

Publication number
KR20210052516A
KR20210052516A KR1020217009468A KR20217009468A KR20210052516A KR 20210052516 A KR20210052516 A KR 20210052516A KR 1020217009468 A KR1020217009468 A KR 1020217009468A KR 20217009468 A KR20217009468 A KR 20217009468A KR 20210052516 A KR20210052516 A KR 20210052516A
Authority
KR
South Korea
Prior art keywords
user
gaze
digital slide
slide image
orientation
Prior art date
Application number
KR1020217009468A
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 KR20210052516A publication Critical patent/KR20210052516A/ko

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H30/00ICT specially adapted for the handling or processing of medical images
    • G16H30/40ICT specially adapted for the handling or processing of medical images for processing medical images, e.g. editing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0485Scrolling or panning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/18Eye characteristics, e.g. of the iris
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H30/00ICT specially adapted for the handling or processing of medical images
    • G16H30/20ICT specially adapted for the handling or processing of medical images for handling medical images, e.g. DICOM, HL7 or PACS
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/60ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices
    • G16H40/67ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices for remote operation
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/20ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Epidemiology (AREA)
  • Medical Informatics (AREA)
  • Public Health (AREA)
  • Primary Health Care (AREA)
  • Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
  • Radiology & Medical Imaging (AREA)
  • Biomedical Technology (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Ophthalmology & Optometry (AREA)
  • Multimedia (AREA)
  • User Interface Of Digital Computer (AREA)
  • Position Input By Displaying (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

시선 추적기를 사용하여 디지털 병리학적 이미지를 보여주는 것으로서, 일실시예에서, 매크로 뷰 내의 디지털 슬라이드 이미지의 적어도 일부를 포함하는 그래픽 유저 인터페이스 상의 사용자 시선의 위치는 시선 추적 장치로부터의 출력에 기초하여 검출된다. 그래픽 유저 인터페이스 상의 제 1 위치로부터 제 2 위치로의 사용자 시선의 변화를 검출한 후에, 매크로 뷰 내의 디지털 슬라이드 이미지의 뷰는 제 2 위치에 기초하여 자동적으로 패닝되어, 매크로 뷰의 중심을 향하는 그래픽 유저 인터페이스 상의 제 2 위치에 대응하는 디지털 슬라이드 이미지 상의 위치를 이동시키게 된다.

Description

디지털 병리학을 위한 시선 추적 이미지 뷰어
본 출원은 그 전체가 본원에 참조로 편입되는 2018년 12월 19일에 출원된 미국 특허 가출원인 미국 특허 제 62/782,191 호에 대하여 우선권을 주장한다.
본 명세서에 설명된 실시예는 일반적으로 디지털 병리에 관한 것이며, 보다 구체적으로는 디지털 병리 슬라이드 이미지를 보는 동안 시선 추적하는 것에 관한 것이다.
디지털 병리학에서는 현미경 슬라이드를 매우 높은 해상도로 스캔하여 매우 높은 해상도의 디지털 슬라이드 이미지를 얻는다. 디지털 슬라이드 이미지는 일반적으로 병리학자가 컴퓨터 디스플레이에서 볼 수 있다. 일반적으로 병리학자는 키보드, 마우스, 트랙볼, 터치 패드 또는 기타 터치 센서 또는 기타 수동 입력 장치를 사용하여 디스플레이의 디지털 슬라이드 이미지 영역들 간에 탐색을 수행한다. 또한, 디지털 슬라이드 이미지의 픽셀 수가 일반적으로 디스플레이의 픽셀보다 훨씬 크기 때문에(예: 이미지의 기가 픽셀 대 디스플레이의 메가 픽셀), 디지털 슬라이드 이미지의 영역만 한 번에 고해상도(예: 기본 해상도)로 볼 수 있다. 따라서 병리학자는 디지털 슬라이드 이미지 내의 관심 영역을 고배율로 보기 위해, 수동 입력 장치를 사용하여 표시되는 디지털 슬라이드 이미지를 확대, 축소 및 이동해야 한다.
수동 입력 장치의 예로 마우스를 사용하여 병리학자는 디지털 슬라이드 이미지의 영역을 마우스로 클릭한 다음, 마우스 스크롤(예: 마우스의 스크롤 휠을 통해)을 사용하여 현재 배율에서 확대(배율을 증가) 또는 축소(배율을 감소)한다. 디지털 슬라이드 이미지의 새로운 영역으로 이동하기 위해, 병리학자는 디지털 슬라이드의 다른 영역에서 디지털 슬라이드 이미지의 보기를 중앙에 맞추기 위해 마우스 드래그를 수행할 수 있다(예: 마우스를 이동하는 동안 마우스 버튼을 누른 상태로 유지). 병리학자는 디지털 슬라이드 이미지의 썸네일을 마우스로 클릭하여 디지털 슬라이드 이미지의 한 영역에서 디지털 슬라이드 이미지의 새로운 영역으로 디지털 슬라이드 이미지 보기를 이동하거나 마우스 클릭이나 마우스 드래그를 하여 디지털 슬라이드 이미지의 보기 배율을 변환시키도록 입력(예를 들어 버튼, 슬라이드 등)하는 등 마우스 조작(예를 들어 확대 또는 축소, 미리 설정된 배율의 선택 등)을 필요로 한다. 어떤 경우에는 병리학자가 키보드 단축키를 사용하여 동일하거나 유사한 작업을 수행할 수도 있다.
사용되는 특정 수동 입력 장치에 관계없이, 디지털 슬라이드 이미지를 보기 위해 필요한 손 활동량은 상당히 크다. 결과적으로 병리학자들은 이러한 방식으로 디지털 슬라이드 이미지를 검토하는 데 상당한 시간을 소비한다. 이러한 수동 입력 장치의 사용은 지루하고 번거롭고 시간이 많이 걸리며 반복적 인 동작 통증이나 부상을 초래할 수 있다.
따라서, 디지털 슬라이드 이미지를 검토하기 위해 시선 추적 장치를 사용하기 위한 시스템, 방법 및 비-일시적 컴퓨터 판독 가능 매체가 개시된다. 시선 추적 장치는 컴퓨터 디스플레이에 장착되거나 컴퓨터 디스플레이에 통합되거나 사용자가 착용하는 장비(예: 일반 안경, 스마트 안경, 가상 현실(VR) 헤드셋 등)에 장착되거나 통합될 수 있으며, 컴퓨터 디스플레이에서 사용자의 시선 위치를 실시간으로 검출하도록 구성될 수 있다. 유리하게는, 손으로 작동하는 입력 장치(예를 들어, 마우스, 키보드, 터치 센서 등)에 의해 현재 수행되는 잠재적으로 모든 보기 관련 기능을 포함하여 하나 이상을 대체하기 위해 시선 추적 장치의 출력에 기초하여 기능이 실행될 수 있어서, 디지털 슬라이드 이미지를 검토하는 동안(예를 들어, 디지털 병리학에서) 수동 입력 장치의 필요성을 줄이거나 제거한다.
일 실시예에서, 적어도 하나의 하드웨어 프로세서를 사용하여: 시선 추적 장치로부터의 출력에 기초하여 그래픽 유저 인터페이스에서 사용자의 시선 위치를 반복적으로 검출하는 단계를 포함하는 방법이 개시되며, 여기서 그래픽 유저 인터페이스는 매크로 보기 내의 디지털 슬라이드 이미지의 적어도 일부를 포함하고; 그래픽 유저 인터페이스상의 제 1 위치에서 제 2 위치로의 사용자 시선의 변화를 검출한 후, 매크로 뷰의 중심을 향하여 그래픽 유저 인터페이스 상의 제 2 위치에 대응하는 디지털 슬라이드 이미지상에서 위치를 이동시키기 위하여 제 2 위치에 기초하여 매크로 보기 내에서 디지털 슬라이드 이미지의 보기를 자동적으로 패닝한다. 이러한 자동 패닝은 제 1 위치와 제 2 위치 사이의 거리가 임계 값보다 크다는 것을 검출하는 것에 응답하여 수행될 수 있다. 임계 값은 0보다 클 수 있다. 상기 방법은 그래픽 유저 인터페이스상의 제 2 위치에 대응하는 디지털 슬라이드 이미지상의 위치가 매크로 뷰의 중심 내에 있게 될 때까지 뷰를 자동으로 패닝하기 위해 적어도 하나의 하드웨어 프로세서를 사용하는 단계를 더 포함할 수 있다. 상기 방법은 사용자의 시선의 검출된 위치가 매크로 뷰의 중심 내에 있을 때까지 뷰를 자동으로 패닝하기 위해 적어도 하나의 하드웨어 프로세서를 사용하는 단계를 더 포함할 수 있다. 상기 방법은 적어도 하나의 하드웨어 프로세서를 사용하여: 시선 추적 장치로부터의 출력에 기초하여 사용자의 머리의 방향을 검출하고; 사용자 머리에 대한 하나 이상의 검출된 방향에 기초하여 미리 결정된 시작 제스처를 검출하되; 여기서, 상기 자동 패닝은 미리 결정된 상기 시작 제스처를 검출하는 것에 응답하여 수행된다. 상기 방법은 적어도 하나의 하드웨어 프로세서를 사용하여: 사용자 머리의 하나 이상의 검출된 방향에 기초하여 미리 결정된 정지 제스처를 검출하고; 미리 결정된 중지 제스처를 검출하는 것에 응답하여, 매크로 뷰 내에서 디지털 슬라이드 이미지의 뷰의 패닝을 자동으로 중지하는 것을 포함한다. 상기 그래픽 유저 인터페이스는 디지털 슬라이드 이미지의 썸네일 이미지를 포함할 수 있으며, 상기 방법은 적어도 하나의 하드웨어 프로세서를 사용하여: 사용자의 시선의 검출된 위치가 썸네일 이미지 내에 있는지 여부를 결정하고; 사용자의 시선 위치가 썸네일 이미지 내에 있음을 검출한 것에 응답하여, 썸네일 이미지 내의 위치에 대응하는 디지털 슬라이드 이미지상의 위치를 결정하고, 디지털 이미지 슬라이드상의 결정된 위치가 매크로 뷰의 중심 내에 있도록 매크로 뷰를 업데이트하는 것을 포함한다. 매크로 뷰를 업데이트하는 것은 디지털 슬라이드 이미지상의 결정된 위치를 매크로 뷰의 중앙으로 이동시키기 위해 디지털 슬라이드 이미지 뷰를 자동으로 패닝하는 것을 포함할 수 있다. 상기 방법은 제 1 위치와 제 2 위치 사이의 거리를 계산하기 위해 적어도 하나의 하드웨어 프로세서를 사용하는 단계를 더 포함할 수 있으며, 여기서 자동 패닝의 속도는 계산된 거리에 기초한다.
일 실시예에서, 적어도 하나의 하드웨어 프로세서를 사용하여: 시선 추적 장치로부터의 출력에 기초하여 그래픽 유저 인터페이스에서 사용자의 시선 위치를 반복적으로 검출하는 단계를 포함하는 방법이 개시되며, 여기서 그래픽 유저 인터페이스는 매크로 뷰 내의 디지털 슬라이드 이미지의 일부와 적어도 하나 이상의 입력을 포함하고; 사용자의 시선 위치가 하나 이상의 입력 중 하나 내에 있음을 검출할 때, 시선 추적 장치의 출력에 기초하여 복수의 가능한 방향 중에서 사용자의 머리 방향을 검출하고, 하나의 입력 및 검출된 방향과 메모리에 연결된 함수(function)를 특정(identify)하고, 특정된 함수와 관련된 방향 검출에 기초하여 함수를 시작한다. 이 함수는 매크로 뷰 내에서 디지털 슬라이드 이미지의 확대 레벨을 변경하는 것을 포함할 수 있다. 하나의 입력은 매크로 뷰 내에서 디지털 슬라이드 이미지의 확대 레벨을 변경하기위한 입력을 포함할 수 있으며, 여기서 복수의 가능한 방향은 제 1 배향 및 제 2 배향을 포함하며, 여기서 제 1 배향은 확대 레벨을 증가시키는 함수를 가진 메모리에 연계되며, 상기 제 2 배향은 확대 레벨을 감소시키는 함수를 가진 메모리에 연계된다. 상기 제 1 배향은 제 1 방향으로의 헤드 경사를 포함할 수 있고, 상기 제 2 배향은 제 1 방향과 반대 인 제 2 방향으로의 헤드 경사를 포함할 수 있다. 상기 방법은, 함수를 시작한 후, 사용자의 시선의 위치가 더 이상 하나의 입력 내에 없다는 것을 검출할 때, 기능을 중지하는 단계를 더 포함할 수 있다.
일 실시예에서, 적어도 하나의 하드웨어 프로세서를 사용하여: 시선 추적 장치로부터의 출력에 기초하여 그래픽 유저 인터페이스에서 사용자의 시선 위치를 반복적으로 검출하는 단계를 포함하는 방법이 개시되며, 여기서 그래픽 유저 인터페이스는 매크로 뷰 내의 디지털 슬라이드 이미지의 일부와 적어도 하나 이상의 입력을 포함하고; 사용자의 시선 위치가 하나 이상의 입력 중 하나 내에 있음을 검출할 때, 시선 추적 장치의 출력을 기반으로 사용자의 머리의 방향을 검출하고, 하나 이상의 검출된 사용자 머리의 방향을 기반으로 미리 결정된 시작 제스처를 검출하고, 미리 결정된 시작 제스처를 검출하는 것에 기초하여 하나의 입력과 관련된 함수를 시작한다. 상기 함수는 매크로 뷰 내에서 디지털 슬라이드 이미지의 확대 레벨을 변경하는 것을 포함할 수 있다. 상기 방법은, 함수를 시작한 후, 사용자의 시선의 위치가 더 이상 하나의 입력 내에 없다는 것을 검출할 때, 함수를 중지하는 단계를 더 포함할 수 있다. 미리 결정된 시작 제스처는 사용자 머리의 반복적인 움직임을 포함할 수 있다. 하나 이상의 입력은 복수의 입력 중 임의의 다른 기능과 각각 다른 기능과 연관된 복수의 입력을 포함할 수 있으며, 미리 결정된 시작 제스처는 복수의 입력 각각에 대해 동일하다.
일 실시예에서, 적어도 하나의 하드웨어 프로세서를 사용하여; 하나 이상의 제 1 디지털 슬라이드 이미지에 대해, 시선 추적 장치로부터의 출력에 기초하여 그래픽 유저 인터페이스에서 사용자의 시선 위치 및 머리 방향을 반복적으로 검출하되, 여기서, 상기 그래픽 유저 인터페이스는 매크로 뷰 내의 제 1 디지털 슬라이드 이미지의 적어도 일부를 포함하고; 사용자의 시선 또는 머리 배향이 검출될 때 보여지는 제 1 디지털 슬라이드 이미지의 일부에 관련된 머리 배향 및 사용자 시선의 각각의 위치를 포함하는 보여주기 이력을 저장하고; 사용자에 의해 보여지게 되는 적어도 하나의 제 2 디지털 슬라이드 이미지의 다음 부분을 예상하도록 머신 러닝 알고리즘을 트레이닝하고; 사용자에 의해 보여졌던 적어도 하나의 제 2 디지털 슬라이드 이미지의 과거 일부에 기초하여 사용자에 의해 보여지게 될 적어도 하나의 제 2 디지털 슬라이드 이미지의 다음 일부를 예상하는 트레이닝된 머신 러닝 알고리즘을 사용하고; 사용자의 개입없이 트레이닝된 머신 러닝 알고리즘에 의해 예상되는 바에 따라 보여지게 되는 적어도 하나의 제 2 디지털 슬라이드 이미지의 다음 부분을 자동적으로 패닝하는; 것을 포함하는 방법이 개시된다.
개시된 방법 중 임의의 것은 서버와 같은 프로세서 기반 시스템의 실행 가능한 소프트웨어 모듈 및/또는 비-일시적 컴퓨터 판독 가능 매체에 저장된 실행 가능한 명령어로 구현될 수 있다.
본 발명의 구조 및 작동에 관한 세부 사항은 첨부된 도면을 참조하여 부분적으로 수집될 수 있으며, 여기서 동일한 참조 번호는 동일한 부분을 나타낸다.
도 1은 일 실시예에 따른, 본 명세서에 설명된 하나 이상의 처리가 실행될 수 있는 예시적인 처리 시스템을 도시한다.
도 2는 일 실시예에 따른 디지털 슬라이드 이미지의 썸네일 이미지 및 매크로 뷰를 갖는 예시적인 디스플레이를 도시한다.
도 3a 및 3b는 실시예에 따른 시선 추적 장치의 출력을 사용하여 디지털 슬라이드 이미지를 패닝하기 위한 예시적인 프로세스를 도시한다.
도 4a 내지 도 4c는 실시예에 따른 줌과 같은 이미지-뷰 기능을 수행하기 위한 예시적인 프로세스를 도시한다.
일 실시예에서, 디지털 슬라이드 이미지를 검토하기 위해 시선 추적 장치를 사용하는 시스템, 방법 및 비-일시적 컴퓨터 판독 가능 매체가 개시된다. 이 설명을 읽은 후, 다양한 대안적인 실시예 및 대안적인 적용례에서 본 발명을 구현하는 방법이 당해 기술분야의 통상의 기술자에게 명백할 것이다. 그러나, 본 발명의 다양한 실시예가 여기에 설명될 것이지만, 이들 실시예는 단지 예시 및 예시로서 제시된 것이며 제한적인 것이 아님을 이해해야한다. 이와 같이, 다양한 실시예에 대한 이러한 상세한 설명은 첨부된 청구 범위에 기재된 본 발명의 범위 또는 폭을 제한하는 것으로 해석되어서는 안된다.
1. 시스템 개요
1.1. 예시적인 처리 장치
도 1은 본 명세서에 설명된 다양한 실시예들과 관련하여 사용될 수 있는 예시적인 유선 또는 무선 시스템(100)을 예시하는 블록도이다. 예를 들어, 시스템(100)은 본 명세서에 설명된 하나 이상의 기능, 프로세스 또는 방법(예를 들어, 애플리케이션 또는 애플리케이션의 하나 이상의 소프트웨어 모듈을 저장 및/또는 실행하기 위해)으로서 또는 이와 함께 사용될 수 있다. 시스템(100)은 서버, 개인용 컴퓨터, 디지털 슬라이드 스캐닝 장치, 또는 유선 또는 무선 데이터 통신이 가능한 다른 프로세서 가능 장치일 수 있다. 통상의 기술자에게 명백한 바와 같이 다른 컴퓨터 시스템 및/또는 아키텍처가 또한 사용될 수 있다.
시스템(100)은 바람직하게는 중앙 처리 장치(CPU)를 포함할 수 있는 프로세서(110)와 같은 하나 이상의 프로세서를 포함한다. 그래픽 처리 장치(GPU), 입력/출력을 관리하는 보조 프로세서, 부동 소수점 수학 연산을 수행하는 보조 프로세서, 신호 처리 알고리즘의 빠른 실행에 적합한 아키텍처를 가진 특수 목적의 마이크로 프로세서와 같은 추가 프로세서(예를 들어, 디지털 신호 프로세서), 주 처리 시스템에 종속된 슬레이브 프로세서(예: 백단(back end) 프로세서), 이중 또는 다중 프로세서 시스템을 위한 추가 마이크로 프로세서 또는 컨트롤러, 및/또는 코-프로세서와 같은 추가적인 프로세서가 제공된다. 이러한 보조 프로세서는 개별 프로세서이거나 프로세서(110)와 통합될 수 있다. 시스템(100)과 함께 사용될 수 있는 프로세서의 예는 제한없이 펜티엄® 프로세서, 코어i7® 프로세서 및 제온® 프로세서를 포함하며, 이들 모두는 캘리포니아 소재의 산타클라라의 인텔사로부터 이용 가능하다.
프로세서(110)는 바람직하게 통신 버스(105)에 연결된다. 통신 버스(105)는 저장 장치와 시스템(100)의 다른 주변 구성 요소 사이의 정보 전송을 용이하게하기 위한 데이터 채널을 포함할 수 있다. 또한, 통신 버스(105)는 통신에 사용되는 신호 세트를 데이터 버스, 주소 버스 및/또는 제어 버스(도시되지 않음)를 포함하는 프로세서(110)에 제공한다. 통신 버스(105)는 예를 들어 산업 표준 아키텍처(ISA), 확장된 산업 표준 아키텍처(EISA), 마이크로 채널 아키텍처(MCA), 주변 부품 상호 연결(PCI) 로컬 버스, IEEE 488 GPIB(범용 인터페이스 버스), IEEE 696/S-100 등을 포함하여 IEEE(Institute of Electrical and Electronics Engineers)에서 발표한 표준과 호환되는 버스 아키텍처와 같은 임의의 표준 또는 비표준 버스 아키텍처를 포함할 수 있다.
시스템(100)은 바람직하게는 주 메모리(115)를 포함하고 또한 보조 메모리(120)를 포함할 수 있다. 주 메모리(115)는 본 명세서에서 논의된 하나 이상의 기능 및/또는 모듈과 같은 프로세서(110)에서 실행되는 프로그램에 대한 명령 및 데이터의 저장을 제공한다. 메모리에 저장되고 프로세서(110)에 의해 실행되는 프로그램은 C/C ++, Java, JavaScript, Perl, Visual Basic, .NET 등을 포함 하나 이에 국한되지 않는 임의의 적절한 언어에 따라 작성 및/또는 컴파일 될 수 있음을 이해해야한다. 주 메모리(115)는 일반적으로 동적 랜덤 액세스 메모리(DRAM) 및/또는 정적 랜덤 액세스 메모리(SRAM)와 같은 반도체 기반 메모리이다. 다른 반도체 기반 메모리 유형에는 예를 들어 동기식 동적 랜덤 액세스 메모리(SDRAM), Rambus 동적 랜덤 액세스 메모리(RDRAM), 강-유전성 랜덤 액세스 메모리(FRAM) 등이 포함되며, 읽기 전용 메모리(ROM)를 포함한다.
보조 메모리(120)는 선택적으로 내부 매체(125) 및/또는 이동식 매체(130)를 포함할 수 있다. 이동식 매체(130)는 임의의 잘 알려진 방식으로 판독 및/또는 기록된다. 이동식 저장 매체(130)는 예를 들어 자기 테이프 드라이브, CD(콤팩트 디스크) 드라이브, DVD(Digital Versatile Disc) 드라이브, 기타 광학 드라이브, 플래시 메모리 드라이브 등일 수 있다.
보조 메모리(120)는 컴퓨터 실행 가능한 코드(예를 들어, 공개된 소프트웨어 모듈) 및/또는 그 위에 저장된 다른 데이터를 갖는 비-일시적 컴퓨터 판독 가능 매체이다. 보조 메모리(120)에 저장된 컴퓨터 소프트웨어 또는 데이터는 프로세서(110)에 의한 실행을 위해 주 메모리(115)로 판독된다.
대안적인 실시예에서, 보조 메모리(120)는 컴퓨터 프로그램 또는 다른 데이터 또는 명령이 시스템(100)에 로딩되도록 허용하는 다른 유사한 수단을 포함할 수 있다. 이러한 수단은 예를 들어 소프트웨어 및 데이터가 외부 저장 매체(145)로부터 시스템(100)으로 전송되는 것을 허용하는 통신 인터페이스(140)를 포함할 수 있다. 외부 저장 매체(145)의 예는 외부 하드 디스크 드라이브, 외부 광 드라이브, 외부 광 자기 드라이브 등을 포함할 수 있다. 보조 메모리(120)의 다른 예는 프로그램 가능 읽기 전용 메모리(PROM), 삭제 가능 프로그램 가능 읽기 전용 메모리(EPROM), 전기적으로 소거 가능한 읽기 전용 메모리(EEPROM) 및 플래시 메모리(EEPROM과 유사한 블록 지향된 메모리)와 같은 반도체 기반 메모리를 포함할 수 있다.
전술한 바와 같이, 시스템(100)은 통신 인터페이스(140)를 포함할 수 있다. 통신 인터페이스(140)는 소프트웨어 및 데이터가 시스템(100)과 외부 장치(예를 들어, 프린터), 네트워크, 또는 다른 정보 소스 사이에서 전송될 수 있도록 한다. 예를 들어, 컴퓨터 소프트웨어 또는 실행 가능한 코드는 통신 인터페이스(140)를 통해 네트워크 서버로부터 시스템(100)으로 전송될 수 있다. 통신 인터페이스(140)의 예는 내장 네트워크 어댑터, 네트워크 인터페이스 카드(NIC), 개인용 컴퓨터 메모리 카드 국제 협회(Personal Computer Memory Card International Association: PCMCIA) 네트워크 카드, 카드 버스 네트워크 어댑터, 무선 네트워크 어댑터, USB(범용 직렬 버스) 네트워크 어댑터, 모뎀, 무선 데이터 카드, 통신 포트, 적외선 인터페이스, IEEE 1394 파이어 와이어 및 네트워크 또는 다른 컴퓨팅 장치와 시스템(100) 인터페이싱할 수 있는 다른 장치를 포함한다. 통신 인터페이스(140)는 바람직하게 이더넷 IEEE 802 표준, 파이버 채널, 디지털 가입자 회선(DSL), 비동기 디지털 가입자 회선(ADSL), 프레임 릴레이, 비동기 전송 모드(ATM), 통합 디지털 서비스 네트워크(ISDN), 개인 통신 서비스(PCS), 전송 제어 프로토콜/인터넷 프로토콜(TCP/IP), 직렬 회선 인터넷 프로토콜/지점 간 프로토콜(SLIP/PPP) 등과 같은 업계에서 발표 한 프로토콜 표준을 구현하지만, 사용자 지정 또는 비 표준 인터페이스 프로토콜도 구현한다.
통신 인터페이스(140)를 통해 전송되는 소프트웨어 및 데이터는 일반적으로 전기 통신 신호(155)의 형태이다. 이러한 신호(155)는 통신 채널(150)을 통해 통신 인터페이스(140)에 제공 될 수 있다. 일 실시예에서, 통신 채널(150)은 유선 또는 무선 네트워크 또는 기타 다양한 통신 링크. 통신 채널(150)은 신호(155)를 전달하고, 유선 또는 케이블, 광섬유, 기존의 전화선, 휴대폰 링크, 무선 데이터 통신 링크, 무선 주파수("RF") 링크 또는 적외선 링크를 포함한 다양한 유선 또는 무선 통신 수단을 사용하여 구현될 수 있다.
컴퓨터 실행 코드(예를 들어, 개시된 소프트웨어 모듈과 같은 컴퓨터 프로그램)는 주 메모리(115) 및/또는 보조 메모리(120)에 저장된다. 컴퓨터 프로그램은 또한 통신 인터페이스(140)를 통해 수신되고 주 메모리(115) 및/또는 보조 메모리(120)에 저장 될 수 있다. 실행될 때, 이러한 컴퓨터 프로그램은 시스템(100)이 본 명세서의 다른 곳에서 설명된 개시된 실시예들의 다양한 기능들을 수행할 수 있게 한다.
본 명세서에서, "컴퓨터 판독 가능 매체"라는 용어는 컴퓨터 실행 가능 코드 및/또는 기타 데이터를 시스템(100)에 제공하기 위해 사용되는 임의의 비-일시적 컴퓨터 판독 가능 저장 매체를 지칭하기 위해 사용된다. 이러한 매체의 예는 주 메모리(115), 보조 메모리(120)(내부 메모리(125), 이동식 매체(130) 및 외부 저장 매체(145) 포함), 및 통신 인터페이스(140)와 통신 가능하게 결합된 임의의 주변 장치(네트워크 정보 서버 또는 다른 네트워크 장치 포함)를 포함한다. 이러한 비-일시적 컴퓨터 판독 가능 매체는 실행 가능한 코드, 프로그래밍 명령, 소프트웨어 및/또는 기타 데이터를 시스템(100)에 제공하기 위한 수단이다.
소프트웨어를 사용하여 구현되는 실시예에서, 소프트웨어는 컴퓨터 판독 가능 매체에 저장될 수 있고 제거 가능한 매체(130), I/O 인터페이스(135) 또는 통신 인터페이스(140)를 통해 시스템(100)에 로딩될 수 있다. 이러한 실시예에서 소프트웨어는 전기 통신 신호(155)의 형태로 시스템(100)에 로딩된다. 소프트웨어는 프로세서(110)에 의해 실행될 때 바람직하게는 프로세서(110)가 본 명세서의 다른 곳에서 설명된 프로세스 및 기능 중 하나 이상을 수행하게 한다.
일 실시예에서, I/O 인터페이스(135)는 시스템(100)의 하나 이상의 구성 요소와 하나 이상의 입력 및/또는 출력 장치 사이의 인터페이스를 제공한다. 예시적인 입력 장치는 제한없이 시선 추적 장치, 센서, 키보드, 터치 스크린 또는 기타 터치 검출 장치, 생체 인식 검출 장치, 컴퓨터 마우스, 트랙볼, 펜 기반 포인팅 장치 등을 포함한다. 출력 장치의 예로는 기타 처리 장치, 음극선 관(CRT), 플라즈마 디스플레이, 발광 다이오드(LED) 디스플레이, 액정 디스플레이(LCD), 프린터, 진공 형광 디스플레이(VFD), 표면- 전도 전자 방출 디스플레이(SED), 전계 방출 디스플레이(FED), 웨어러블 장치(예를 들어, 스마트 안경, VR 헤드셋 등), 및/또는 이와 유사한 것을 포함한다. 일부 경우에, 입력 및 출력 장치는 터치 패널 디스플레이의 경우에서처럼 결합될 수 있다(예를 들어, 스마트 폰, 태블릿 또는 기타 모바일 장치).
예시된 실시예에서, I/O 인터페이스(135)는 적어도 디스플레이(180) 및 시선 추적 장치(190)와 인터페이스하여, 프로세서(110)는 디스플레이(180)에 표시될 데이터를 렌더링하고 시선 추적 장치(190)에 의해 검출된 데이터를 수신할 수 있다. 시선 추적 장치(190)에 의해 검출된 데이터는 시스템(100)의 사용자의 눈이 현재 향하고있는 디스플레이(180)상의 시선 위치를 나타낼 수 있고 프로세서(110)에 의해 반복적으로 수신될 수 있다(예를 들어, 일정한 간격으로 및/또는 언제든지 시선 위치 변경). 일 실시예에서, 디스플레이(180) 및 시선 추적 장치(190)는 컴퓨터 모니터, 스마트 안경, VR 헤드셋 등과 같은 단일 장치에 통합될 수 있다.
시스템(100)은 또한 음성 네트워크 및/또는 데이터 네트워크를 통한 무선 통신을 용이하게하는 선택적 무선 통신 구성 요소를 포함할 수 있다. 무선 통신 구성 요소는 안테나 시스템(170), 무선 시스템(165) 및 기저 대역 시스템(160)을 포함한다. 시스템(100)에서, 무선 주파수(RF) 신호는 무선 시스템(165)의 관리하에 안테나 시스템(170)에 의해 무선으로 송수신된다.
일 실시예에서, 안테나 시스템(170)은 안테나 시스템(170)에 송신 및 수신 신호 경로를 제공하기 위해 스위칭 기능을 수행하는 하나 이상의 안테나 및 하나 이상의 멀티플렉서(미도시)를 포함할 수 있다. 수신 경로에서, 수신된 RF 신호는 멀티플렉서로부터 수신된 RF 신호를 증폭하고 증폭된 신호를 무선 시스템(165)으로 전송하는 저잡음 증폭기(도시되지 않음)로 결합될 수 있다.
대안적인 실시예에서, 라디오 시스템(165)은 다양한 주파수를 통해 통신하도록 구성된 하나 이상의 라디오를 포함할 수 있다. 일 실시예에서, 무선 시스템(165)은 하나의 집적 회로(IC)에서 복조기(미도시) 및 변조기(미도시)를 결합할 수 있다. 복조기와 변조기는 별도의 구성 요소가 될 수도 있다. 입력 경로에서, 복조기는 무선 시스템(165)에서 기저 대역 시스템(160)으로 전송되는 기저 대역 수신 오디오 신호를 남기고 RF 캐리어 신호를 제거한다.
수신된 신호에 오디오 정보가 포함된 경우, 기저 대역(base band) 시스템(160)은 신호를 디코딩하여 아날로그 신호로 변환한다. 그런 다음 신호가 증폭되어 스피커로 전송된다. 기저 대역 시스템(160)은 또한 마이크로폰으로부터 아날로그 오디오 신호를 수신한다. 이러한 아날로그 오디오 신호는 디지털 신호로 변환되고 기저 대역 시스템(160)에 의해 인코딩된다. 기저 대역 시스템(160)은 또한 전송을 위해 디지털 신호를 인코딩하고 무선 시스템(165)의 변조기 부분으로 라우팅되는 기저 대역 전송 오디오 신호를 생성한다. 변조기는 기저 대역 전송 오디오 신호를 안테나 시스템(170)으로 라우딩되고 전력 증폭기(미도시)를 통과하게 되는 RF 전송 신호를 생성하는 RF 캐리어 신호와 혼합한다. 전력 증폭기는 RF 전송 신호를 증폭하고, 이를 안테나 시스템(170)으로 라우팅하며, 여기서 신호는 전송을 위해 안테나 포트로 전환된다.
기저 대역 시스템(160)은 또한 프로세서(110)와 통신 가능하게 결합된다. 프로세서(110)는 데이터 저장 영역(115 및 120)에 액세스할 수 있다. 프로세서(110)는 바람직하게는 주 메모리(115) 또는 보조 메모리(120)에 저장되는 명령(즉, 개시된 애플리케이션 또는 소프트웨어 모듈과 같은 컴퓨터 프로그램)을 실행하도록 구성된다. 컴퓨터 프로그램은 또한 기저 대역 프로세서(160)로부터 수신되어 주 메모리(110) 또는 보조 메모리(120)에 저장되거나 수신시 실행될 수 있다. 이러한 컴퓨터 프로그램은 실행될 때 시스템(100)이 개시된 실시예의 다양한 기능을 수행할 수 있게 한다.
1.2. 시선 추적 장치(Eye-Tracking Device)
위에서 논의된 바와 같이, 일 실시예에서, 시스템(100)은 시선 추적 장치(190)를 포함한다. 시선 추적 장치(190)는 디스플레이(180)에 장착되거나 디스플레이(180)에 통합될 수 있다. 일 실시예에서, 시선 추적 장치(190) 및 디스플레이(180)는 컴퓨터 모니터, 스마트 안경, VR 헤드셋 등과 같은 단일 장치에 통합될 수 있다. 대안적으로, 시선 추적 장치(190)는 디스플레이(180)와 분리될 수 있다. 임의의 경우에, 시선 추적 장치(190)는 디스플레이(180)에 대한 사용자의 시선을 검출하도록 장착되거나 그렇지 않으면 위치되어야 한다.
일 실시예에서, 시선 추적 장치(190)는 사용자의 시선을 추적하는 데 전용 될 수 있다. 대안적으로, 시선 추적 장치(190)는 시스템(100)의 사용자의 사진 또는 비디오 캡처(예를 들어, 소셜 미디어, 웹캠, 화상 회의를 위한)와 같은 보다 통상적인 이미징에도 사용되는 카메라(예를 들어, 디스플레이(180)에 장착되거나 통합됨)를 포함할 수 있다.
시선 추적 장치(190)는 임의의 소비자 등급, 상업용 기성 시선 추적기를 포함할 수 있다. 비-제한적인 예로 스웨덴에 본사를 둔 Tobii Group ??이 판매하는 Tobii Eye Tracker 4C ?? 또는 기타 제품이 있다. 이러한 시선 추적기는 시선 추적 장치가 디스플레이에 사용자 시선의 현재 위치를 표시하는 게임 애플리케이션에서 가장 많이 사용된다. 이를 통해 사용자는 디스플레이에서 물체를 보고 버튼이나 키를 눌러 물체에 대한 작업을 수행할 수 있다(예: 물체를 선택하거나 촬영하기 위해). 이러한 시선 추적기는 수동 상호 작용없이 게임 내에서 탐색(예: 다른 방향으로 이동)하는 데에도 사용될 수 있다.
이러한 시선 추적 장치를 위한 소프트웨어 개발 키트(SDK)도 사용할 수 있다. 개발자는 이러한 SDK를 사용하여 시선 추적 장치의 출력을 활용하여 디스플레이에서 사용자의 응시점, 디스플레이와 각 사용자의 눈 사이의 거리, 사용자 머리의 위치 또는 방향을 동적으로 검출하는 소프트웨어를 개발할 수 있다. 이러한 정보는 소프트웨어에 의해 해석되어 사용자가 수행한 시선 "제스처"를 식별하고 식별된 제스처에 응답할 수 있다. 또한 일부 운영 체제(예: Windows ?? 10)에는 장애가 있는 사용자가 물리적 마우스나 키보드를 조작하지 않고도 마우스 및 키보드 기능을 사용할 수 있도록 지원하는 통합 시선 추적 소프트웨어가 있다. 그러나 디지털 병리학에서 디지털 슬라이드 이미지를 보기 위한 유사한 기능은 아직 제공되지 않았다.
2. 프로세스 개요
이제, 디지털 슬라이드 이미지를 검토하기 위해 시선 추적 장치(190)를 활용하는 프로세스의 실시예가 상세히 설명될 것이다. 설명된 프로세스는 하나 이상의 하드웨어 프로세서(예를 들어, 프로세서(110))에 의해 실행되는 하나 이상의 소프트웨어 모듈에서 구현될 수 있다는 것을 이해해야 한다. 설명된 프로세스는 소스 코드, 객체 코드 및/또는 기계 코드로 표현된 명령어로 구현될 수 있다. 이들 명령어는 하드웨어 프로세서(들)(110)에 의해 직접 실행될 수 있거나, 대안적으로, 객체 코드와 하드웨어 프로세서(들)(110) 사이에서 동작하는 가상 머신에 의해 실행될 수 있다.
대안으로, 설명된 프로세스는 하드웨어 구성 요소(예: 범용 프로세서, 집적 회로(IC), 주문형 집적 회로(ASIC), 디지털 신호 프로세서(DSP), 필드 프로그래밍 가능 게이트 어레이(FPGA) 또는 기타 프로그래밍 가능 논리 장치, 개별 게이트 또는 트랜지스터 논리 등), 하드웨어 구성 요소의 조합 또는 하드웨어와 소프트웨어 구성 요소의 조합으로 구현될 수 있다. 하드웨어와 소프트웨어의 호환성을 명확하게 설명하기 위해, 다양한 예시적인 구성 요소, 블록, 모듈, 회로 및 단계가 일반적으로 기능 측면에서 설명된다. 이러한 기능이 하드웨어 또는 소프트웨어로 구현되는지 여부는 전체 시스템에 부과된 특정 응용 프로그램 및 설계 제약에 따라 다르다. 통상의 기술자는 각각의 특정 애플리케이션에 대해 다양한 방식으로 설명된 기능을 구현할 수 있지만, 그러한 구현 결정은 본 발명의 범위를 벗어나는 것으로 해석되어서는 안된다. 또한 구성 요소, 블록, 모듈, 회로 또는 단계 내의 기능 그룹은 설명을 쉽게 하기 위한 것이다. 특정 기능 또는 단계는 본 발명에서 벗어나지 않고 하나의 구성 요소, 블록, 모듈, 회로 또는 단계에서 다른 단계로 이동할 수 있다.
도 2의 예시적인 디스플레이(180)를 참조하여 과정을 설명한다. 도 2는 일 실시예에 따른 디지털 슬라이드 이미지의 썸네일 이미지(215) 및 디지털 슬라이드 이미지의 매크로 뷰(220)를 갖는 예시적인 디스플레이(180)를 도시한다. 전체 디지털 슬라이드 이미지의 작은 저해상도 버전인 썸네일 이미지(215)는 매크로 뷰(220)에서 더 높은 배율로 현재 보고있는 관심 영역을 강조하는 프레임(215)을 포함한다. 예시된 실시예에서, 썸네일 이미지(215)는 매크로 뷰(220) 상에 오버레이된다. 그러나, 대안적인 실시예에서 썸네일 이미지(215)는 매크로 뷰(220)의 측면에 위치할 수 있거나 완전히 생략될 수 있다.
디스플레이(180)의 그래픽 유저 인터페이스는 도 2에 도시된 것보다 추가 영역 및 구성 요소를 포함할 수 있다. 예를 들어, 디스플레이(180)는 또한 썸네일 이미지(215)의 배율보다 높지만 매크로의 배율보다 낮은 중간 배율에서 관심 영역 및/또는 관심 영역을 둘러싼 영역을 보여주는 중간 뷰를 포함할 수 있다. 또한, 그래픽 유저 인터페이스는 뷰를 관리하기위한 입력(예를 들어, 확대 또는 축소, 왼쪽, 오른쪽, 위, 아래 및/또는 대각선을 따라 이동, 사용자의 선호도에 맞게 뷰를 사용자 정의하는 것 등), 이미지 처리 도구 사용(예를 들어, 개체 식별 및/또는 계수 등과 같은 디지털 슬라이드 이미지의 내용을 분석하기 위해)를 사용하는 것, 및/또는 기타를 위한 입력을 포함한다.
2.1. 패닝(Panning)
도 3a 및 3b는 실시예에 따른 시선 추적 장치(190)의 출력을 사용하여 디지털 슬라이드 이미지를 패닝하기 위한 예시적인 프로세스를 도시한다. 프로세스(300A 및 300B) 각각이 특정 배열 및 단계의 순서로 예시되어 있지만, 각각의 프로세스(300A 및 300B)는 더 적거나, 더 많거나, 상이한 단계 및 상이한 배열 및/또는 단계의 순서로 구현 될 수 있다. 또한, 프로세스(300A 및 300B)는 둘 다 사용자에 의해 사용될 수 있는 한 쌍의 대체 기능으로서 동일한 시스템(100)에서 구현될 수 있다. 대안적으로, 프로세스(300A 및 300B) 중 하나만이 임의의 특정 시스템(100)에서 구현될 수 있다. 임의의 경우에, 프로세스(300A 및 300B)는 하나 이상의 프로세서(110)에 의해 실행될 수 있다.
프로세서(300A)에서, 디스플레이(180)상의 사용자의 시선 위치는 시선 추적 장치(190)를 사용하여 단계(305A)에서 반복적으로 검출된다. 구체적으로, 프로세서(110)는 일정한 시간 간격(예를 들어, 약 밀리 초 수준)으로 및/또는 시선 추적 장치(190)가 사용자의 시선의 변화를 검출할 때마다, 시선 추적 장치(190)의 출력을 반복적으로 수신할 수 있다. 프로세서(110)가 시선 추적 장치(190)로부터 이 출력을 수신할 때마다, 프로세서(110)는 수신된 출력에 기초하여 디스플레이(180)에 대한 사용자의 시선 위치를 결정할 수 있다.
단계(310)에서, 프로세서(110)는 단계(305A)에서 검출된 사용자의 시선 위치를 현재 디스플레이(180) 상에 디스플레이되고 있는 그래픽 유저 인터페이스 내의 위치와 상관시킨다. 썸네일 이미지(210)를 이용하는 실시예에서, 단계(310)에서, 프로세서(110)는 현재 그래픽 유저 인터페이스 내의 사용자의 시선 위치가 썸네일 이미지(210) 또는 매크로 뷰(220) 내에 있는지를 결정한다. 사용자의 시선 위치가 매크로 뷰(220)(즉, 단계(310)에서 "매크로 뷰") 내에 있는 경우, 프로세스(300A)는 다음 단계(315)로 진행한다. 그렇지 않으면, 사용자의 시선 위치가 썸네일 이미지(210)(즉, 단계(310)에서 "썸네일") 내에 있으면, 프로세스(300A)는 단계(330)로 진행한다. 그래픽 유저 인터페이스가 썸네일 이미지(210) 및 매크로 뷰(220)보다 많은 것을 포함하는 실시예에서, 사용자의 시선 위치는 썸네일 이미지(210) 및 매크로 뷰(220) 모두의 밖에 있을 수 있다. 이 경우(즉, 단계(310)에서 "둘 중 어느 것도 아닌" 경우), 프로세스(300A)는 단계(305A)로 복귀한다.
단계(315)에서, 프로세서(110)는 단계(305A)에서 검출된 사용자 시선의 현재 위치가 사용자 시선의 이전 위치에서 변경되었는지 여부를 판단한다. 예를 들어, 프로세서(110)는 메모리(예를 들어, 주 메모리(115) 또는 보조 메모리(120))에 사용자의 시선의 하나 이상의 과거 위치를 저장할 수 있고, 사용자의 시선의 현재 위치를 사용자의 시선의 가장 최근 과거 위치와 비교하여 현재 위치가 가장 최근의 과거 위치와 다른지 여부를 결정할 수 있다. 또한, 프로세서(110)는 현재 위치와 과거 위치 사이의 거리를 계산하고, 거리가 임계 값보다 큰지 여부를 결정할 수 있다. 임계값은 0이 아닌 거리 값이거나, 일 구현에서 단순히 0 일 수 있다. 임계값이 0이면, 프로세서(110)는 현재 위치가 과거 위치와 다른지 여부를 결정하기만 하면 된다. 어느 경우에서도, 위치 변경이 임계 값보다 크면(즉, 단계(315)에서 "예"인 경우), 프로세스(300A)는 단계(320)으로 진행한다. 그렇지 않으면, 위치 변경이 임계값보다 크지 않으면(즉, 단계(315)에서 "아니오"), 프로세스(300A)는 단계(305A)로 복귀한다. 즉, 사용자의 시선이 미리 정해진 임계값보다 큰 거리를 이동할 때까지 패닝이 발생하지 않고, 사용자의 시선이 미리 정해진 임계값보다 큰 거리를 이동할 때마다 패닝이 발생한다. 미리 정해진 임계 값이 0 인 경우, 사용자의 시선이 움직일 때마다 패닝이 발생한다.
단계(315)의 대안적인 실시예에서, 프로세서(110)는 사용자의 시선의 현재 위치가 매크로 뷰(220) 내의 영역(225) 밖에 있는지 여부를 결정할 수 있다. 영역(225)은 더 작은 매크로 뷰(220)의 중심 주변 영역을 포함한다. 영역(225)의 위치는 매크로 뷰(220) 내에서 패닝이 발생하더라도 영역(225)의 위치가 절대 변경되지 않도록 디스플레이(180)에 대해 고정되어 있음을 이해해야 한다. 직사각형으로 도시되어 있지만, 영역(225)은 대신에 정사각형, 원(예를 들어, 반경에 의해 정의 됨) 또는 다른 형상일 수 있다. 단계(305A)에서 검출된 사용자의 시선 위치가 영역(225) 내에 있으면(예를 들어, 단계(315)에서 "아니오"와 유사 함), 프로세스(300A)는 단계(305A)로 돌아갈 수 있다. 그렇지 않으면, 단계(305A)에서 검출된 사용자의 시선 위치가 영역(225) 외부에 있으면(예를 들어, 단계(315)에서 "예"와 유사 함), 프로세스(300A)는 단계(320)로 진행할 수 있다. 즉, 패닝은 사용자의 시선은 영역(225) 내에 남아 있으며 사용자의 시선이 영역(225) 밖으로 이동할 때마다 발생한다.
단계(320)에서, 프로세서(110)는 디스플레이(180)상의 사용자 시선의 현재 위치를 매크로 뷰(220)에서 현재 보고있는 디지털 슬라이드 이미지의 부분 상의 위치와 연관시킨다. 예를 들어, 프로세서(110)는 현재 위치를 연관시킬 수 있다. 디스플레이(180)상의 사용자의 시선은 그래픽 유저 인터페이스 내의 매크로 뷰(220)상의 위치에 대한 다음, 매크로 뷰(220)상의이 위치를 기본 디지털 슬라이드 이미지상의 위치에 상관시킨다.
단계(325)에서, 프로세서(110)는 기본 디지털 슬라이드 이미지를 패닝하여 단계(320)에서 결정된 디지털 슬라이드 이미지의 위치를 매크로 뷰(220) 내에서 중앙에 위치시킨다. 즉, 매크로 뷰(220)는 매크로 뷰(220) 내에서 중심에 있는, 단계(320)에서 검출된, 위치와 함께 디지털 슬라이드 이미지의 관심 영역으로 구성되도록 업데이트 된다. 매크로 이미지(220)를 업데이트할 때, 프로세서(110)는 매크로 뷰(220) 내에서 새로운 위치를 다시 중앙에 맞추기 위해 디지털 슬라이드 이미지를 자동으로 "슬라이드"할 수 있다. 따라서, 사용자는 단계(320)에서 결정된 디지털 슬라이드 이미지상의 위치가 매크로 뷰(220)의 중심으로 이동함에 따라 패닝되는 디지털 슬라이드 이미지를 볼 수 있다. 일 실시예에서 패닝 속도는 매크로 뷰(220) 내에서 이전에 중앙에 있던 디지털 슬라이드 이미지상의 새로운 위치와 이전 위치 사이의 거리(즉, 패닝되어야하는 거리)이 함수이다. 예를 들어, 단계(325)에서 패닝을 수행할 때마다, 프로세서(110)는 이러한 패닝 거리를 계산하고, 더 긴 거리에 대해서는 더 빠른 속도로 더 짧은 거리에 대해서는 더 낮은 속도로 매크로 뷰(220) 내에서 디지털 슬라이드 이미지를 패닝할 수 있다. 매크로 뷰(220)가 새로운 위치에 다시 중심이 되면, 프로세스(300A)는 단계(305A)로 돌아 간다.
단계(330)에서, 프로세서(110)는 디스플레이(180)상의 사용자 시선의 현재 위치를 썸네일 이미지(210)상의 위치와 연관시킨다. 또한, 프로세서(110)는 썸네일 이미지(210)상의 위치를 매크로 뷰(220)에서 보이는 기본(underlying) 디지털 슬라이드 이미지상의 위치에 연관시킨다.
단계(335)에서, 프로세서(110)는 매크로 뷰(220) 내에서 단계(330)에서 결정된 디지털 슬라이드 이미지의 위치를 중심으로 하기 위해 기본 디지털 슬라이드 이미지를 패닝한다. 즉, 사용자는 썸네일 이미지(210)상의 위치를 응시하여 관심 영역을 선택하고, 프로세서(110)는 매크로 뷰(220)를 그 관심 영역에 자동으로 중앙에 배치하여, 사용자가 더 높은 배율로 관심 영역을 볼 수 있다. 단계(335)는 전술한 단계(325)와 동일하거나 유사할 수 있다. 매크로 뷰(220)가 새로운 위치에 다시 중심이 되면, 프로세스(300A)는 단계(305A)로 돌아 간다. 이러한 방식으로 새로운 관심 영역이 선택될 때마다, 프로세서(110)는 썸네일 이미지(210) 내의 새로운 관심 영역을 강조하기 위해 프레임(215)을 업데이트한다는 것을 이해해야 한다.
단계(300B)에서, 디스플레이(180)상의 사용자의 시선 위치는 시선 추적 장치(190)를 사용하여 단계(305B)에서 반복적으로 검출된다. 단계(305B)는 전술 한 단계(305A)와 동일하거나 유사할 수 있다. 사용자의 시선에 더하여, 사용자의 머리 방향도 단계(305B)에서 검출될 수 있다. 예를 들어, 사용자의 머리 방향은 디스플레이(180)상의 사용자의 시선 위치 또는 다른 수단(예를 들어, 사용자의 머리상의 물체 인식)에 의해 결정되는 바와 같이 사용자의 시선 방향에 기초하여 결정될 수 있다. 그것이 어떻게 검출되는지에 관계없이, 프로세서(110)는 사용자의 머리의 현재 방향을 사용자의 머리의 하나 이상의 과거 방향과 비교하여 머리 기반 제스처(예를 들어, 위로 기울이기 동작, 아래로 기울이기 동작, 머리 끄덕임, 머리 흔들기 등)를 식별할 수 있다.
단계(350)에서 프로세서(110)는 기 설정된 시작 제스처가 검출되었는지 여부를 판단한다. 기 설정된 시작 제스처는 디지털 슬라이드 이미지를 가로 질러 팬을 시작하기 위해 미리 정해진 머리 제스처를 포함할 수 있다. 예를 들어, 시작 제스처는 고개를 끄덕이는 것일 수 있다(예를 들어, 고개를 아래로 이동, 고개를 위로 이동, 또는 적어도 미리 정의된 횟수 동안 또는 미리 정의된 시간 동안 고개를 아래로 및 위로 이동). 그러나, 다른 시작 제스처도 고려된다(예를 들어, 머리를 좌우로 흔들림). 사용되는 특정 시작 제스처에 관계없이, 시작 제스처가 검출되면(즉, 단계(350)에서 "예"), 프로세스(300B)는 단계(355)로 진행하며, 여기서 시작 제스처의 검출은 사용자의 현재 시선 위치를 향하는 방향으로 패닝을 시작하기 위한 표시로 사용된다. 그렇지 않으면, 특정 시작 제스처가 검출되지 않으면(즉, 단계(350)에서 "아니오"), 프로세스(300B)는 단계(305B)로 복귀한다.
단계(355)에서 프로세서(110)는 매크로 뷰(220)의 중심으로부터 디스플레이(180)상의 사용자 시선의 현재 위치까지의 방향을 결정한다. 그리고, 단계(360)에서 프로세서(110)는 단계(355)에서 결정된 방향에 따라 매크로 뷰(220) 내에서 디지털 슬라이드 이미지를 패닝하기 시작한다. 예를 들어, 사용자의 시선의 현재 위치가 매크로 뷰(220)의 중심의 오른쪽에 있다고 판단되면, 프로세서(110)는 매크로 뷰(220) 내에서 디지털 슬라이드 이미지를 반대 방향(즉, 좌측으로)으로 이동하기 시작하여, 매크로 뷰(220)의 중심을 향해 사용자의 시선의 현재 위치를 이동시킨다.
단계(365)에서 프로세서(110)는 기 설정된 정지 제스처가 검출되었는지 여부를 판단한다. 미리 결정된 정지 제스처는 디지털 슬라이드 이미지를 가로 질러 팬을 정지시키기 위해 미리 정의된 머리 제스처를 포함할 수 있다. 일 실시예에서, 중지 제스처는 단계(350에서 검출된 시작 제스처(예를 들어, 고개를 끄덕임)와 동일할 수 있다. 또는 중지 제스처는 시작 제스처와 다를 수 있다. 중지 제스처가 검출되면(즉, 단계(365)에서 "예"), 프로세스(300B)는 단계(370)로 진행한다. 그렇지 않으면, 특정 중지 제스처가 검출되지 않으면(즉, 단계(365)에서 "아니오"), 프로세스(300B)는 단계(355)로 돌아간다.
일 실시예에서, 프로세서(110)는 단계(305B)에서와 동일한 방식으로 단계(355-365)를 통해 디스플레이(180)상의 사용자의 시선의 현재 위치를 계속 모니터링할 수 있다. 또한, 프로세서(110)는 단계(355) 및 단계(360)에서 사용자 시선의 현재 위치가 변경됨에 따라 계속해서 패닝 방향을 업데이트할 수 있다. 따라서, 사용자는 자신의 시선 위치를 변경하여 실시간으로 임의의 방향으로 패닝하고 패닝 방향을 변경할 수 있다. 예를 들어, 사용자 시선의 초기 위치가 매크로 뷰(220)의 중심의 오른쪽에 있는 것으로 결정되면, 프로세서(110)는 매크로 뷰(220) 내에서 디지털 슬라이드 이미지를 반대 방향(즉, 왼쪽)으로 이동하기 시작하여, 사용자의 시선 위치의 현재 위치를 매크로 뷰(220)의 중심을 향해 이동한다. 사용자가 이후에 매크로 뷰(220) 내에서 자신의 시선을 위로 이동하여, 사용자의 시선 위치는 이제 위와 매크로 뷰(220)의 중심을 통해 대각선 축을 따라 매크로 뷰(220)의 중심의 오른쪽에 있게 되면, 프로세서(110)는 시선 위치의 이러한 변화를 검출하고 이에 대응하여 매크로 뷰(220) 내의 디지털 슬라이드 이미지를 대각선 축을 따라 반대 방향으로 이동하기 시작하여, 사용자의 시선의 현재 위치를 매크로 뷰(220)의 중심쪽으로 이동한다. 패닝은 계속해서 계속될 수 있고, 중지 제스처가 단계(365)에서 검출될 때까지 임의의 수의 방향 변경을 포함할 수 있음을 이해해야한다.
단계(370)에서, 단계(365)에서의 중지 제스처의 검출에 응답하여, 프로세서(110)는 매크로 뷰(220) 내에서 패닝 프로세스를 중지한다. 즉, 디지털 슬라이드 이미지는 매크로 뷰(220) 내에서 스크롤링을 중지하고 매크로 뷰(220)가 고정되는 상태로 복귀한다. 그 후, 프로세스(300B)는 단계(305B)로 복귀한다. 유리하게는, 프로세스(300B)는 프로세스(300A)에서 발생할 수 있는 원치 않는 패닝을 제거하거나 줄일 수 있다(예를 들어, 사용자가 그 위치로 패닝할 의도없이 영역(225) 외부의 위치로 시선을 일시적으로 이동할 때).
2.2. 확대/축소 및 기타 기능
도 4a-4c는 실시예에 따른 줌과 같은 이미지-뷰잉 기능을 수행하기위한 예시적인 프로세스를 도시한다. 각각의 프로세스(400 및 450)가 특정 배열 및 단계의 순서로 예시되어 있지만, 각각의 프로세스(400 및 450)는 더 적거나, 더 많거나, 상이한 단계 및 상이한 배열 및/또는 단계의 순서로 구현될 수 있다. 프로세스(400 및 450)는 하나 이상의 프로세서(110)에 의해 실행될 수 있다.
프로세스(400)에서, 디스플레이(180)상의 사용자의 시선의 위치는 시선 추적 장치(190)를 사용하여 단계(405)에서 반복적으로 검출된다. 단계(405)는 도 3a 및 도 3b에 각각 설명된 단계(305A 및 305B)와 각각 동일하거나 유사할 수 있다.
단계(410)에서, 프로세서(110)는 단계(405)에서 검출된 사용자 시선의 현재 위치가 현재 디스플레이(180)에 디스플레이되고 있는 그래픽 유저 인터페이스 내의 입력 위치에 대응하는지 여부를 결정한다. 예를 들어, 프로세서(110)는 디스플레이(180)상의 사용자의 시선 위치를 그래픽 유저 인터페이스상의 위치와 상관시킨 다음, 그래픽 유저 인터페이스상의 그 위치가 그래픽 유저 인터페이서 내에서 입력(예를 들어, 아이콘, 버튼 등)의 경계 내에 있는지 여부를 결정할 수 있다. 사용자 시선의 현재 위치가 입력에 해당하면(즉, 단계(410)에서 "예"), 프로세스(400)는 단계(420)로 진행한다. 그렇지 않으면, 사용자의 시선의 현재 위치가 입력에 해당하지 않는 경우(즉, 단계(410)에서 "아니오"), 프로세스(400)은 단계(430)으로 진행한다.
단계(420)에서, 프로세서(110)는 사용자의 시선의 현재 위치에 대응하는 입력을 식별하고, 그 특정 입력에 대한 프로세스(450)(예를 들어, 실시예에 따라 또는 입력에 따라 프로세스(450A 또는 450B))를 시작한다. 예를 들어, 입력은 매크로 뷰(220)의 배율을 변경하기위한 줌 버튼을 포함할 수 있다. 대안적으로, 입력은 다른 이진 함수(예를 들어, 매크로 뷰(220)의 밝기 변경)를 수행하기 위한 입력 또는 비-이진 함수를 포함할 수 있다.
단계(430)에서, 프로세서(110)는 단계(420)에서 특정 입력에 대해 이전에 시작된 모든 프로세스(450)를 중지한다. 입력에 대해 현재 실행중인 프로세스(450)가 없는 경우, 단계(430)은 생략된다. 어느 경우든, 프로세스(400)는 단계(405)로 돌아간다.
프로세스(450A)에서, 프로세서(110)는 시선 추적 장치(190)를 사용하여 검출된 바와 같이 사용자의 시선에 기초하여 단계(455A)에서 사용자의 머리의 현재 방향을 검출한다. 예를 들어, 사용자의 머리의 방향은 상향 경사, 하향 경사, 측면 경사 등을 포함할 수 있다.
단계(460)에서, 프로세서(110)는 사용자 머리의 현재 방향이 제 1 방향과 일치하는지 여부를 판단한다. 예를 들어, 제 1 배향은 하향 경사일 수 있다. 현재 배향이 제 1 배향과 일치하면(즉, 단계(460)에서 "예"), 프로세스(450A)는 단계(465)로 진행한다. 단계(465)에서, 프로세서(110)는 제 1 배향과 관련된 제 1 함수를 시작한다. 예를 들어, 입력, 제 1 배향 및 제 1 함수 간의 관계에서, 시스템(100)의 메모리에(예를 들어, 주 메모리(115) 또는 보조 메모리(120)의 테이블에) 제 1 함수가 저장될 수 있다. 반면에, 현재 배향이 제 1 배향과 일치하지 않는 경우(즉, 단계(460)에서 "아니오"), 프로세스(450A)는 단계(470)로 진행한다.
단계(470)에서 프로세서(110)는 사용자 머리의 현재 배향이 제 2 배향과 일치하는지 여부를 판단한다. 예를 들어, 제 2 배향은 상향 경사일 수 있다. 현재 배향이 제 2 배향과 일치하면(즉, 단계(470)에서 "예"), 프로세스(450A)는 단계(475)로 진행한다. 단계(475)에서, 프로세서(110)는 제 2 배향과 관련된 제 2 함수를 시작한다. 예를 들어, 입력, 제 2 배향 및 제 2 함수 간의 관계에서, 시스템(100)의 메모리에(예를 들어, 주 메모리(115) 또는 보조 메모리(120)의 테이블) 제 2 함수가 저장될 수 있다. 반면에, 현재 배향이 제 2 배향과 일치하지 않는 경우(즉, 단계(470)에서 "아니오"), 프로세스(450A)는 단계(480A)로 진행한다.
단계(480A)에서, 프로세서(110)는 단계(465 또는 단계 475)에서 시작된 임의의 함수를 중지하고 단계(455A)로 복귀한다. 임의의 주어진 입력에 대해 추가적인 배향이 정의될 수 있으며, 추가 함수가 이러한 배향 및 해당 입력과 연관될 수 있음을 이해해야 한다. 예를 들어, 단계(460 및 465) 또는 단계(470 및 475)는 제 3 함수와 연관된 제 3 배향(예를 들어, 왼쪽 기울기), 제 4 함수와 연관된 제 4 배향(예를 들어, 오른쪽 기울기) 등에 대해 동일하게 적용될 수 있다.
프로세스(450A)의 구체적인 예로서, 제 1 배향은 사용자 머리의 하향 경사를 포함할 수 있고, 제 1 함수는 축소(zooming out)(즉, 매크로 뷰(220)의 배율 감소)를 포함할 수 있으며, 제 2 배향은 사용자의 머리의 상향 경사를 포함하고, 제 2 함수는 확대(zooming in)(즉, 매크로 뷰(220)의 배율을 증가시키는 것)를 포함할 수 있다. 따라서, 사용자는 그래픽 유저 인터페이스 내의 줌 입력을 응시할 수 있고, 줌 입력을 응시하면서 그의 머리를 아래로 기울여 매크로 뷰(220)의 배율을 감소 시키거나 위로 기울여 매크로 뷰(220)의 배율을 증가시킬 수 있다. 대안적인 실시예에서, 제 1 함수는 확대를 포함할 수 있고, 제 2 기능은 축소를 포함할 수 있다는 것을 이해해야 한다. 두 경우 모두 사용자는 단순히 머리를 기울이거나 줌 입력의 외부를 응시하여 줌 함수를 중지할 수 있다.
일 실시예에서, 프로세서(110)는 사용자의 머리 방향 각도의 정도에 기초하여 함수 수행 속도를 결정할 수 있다. 위의 확대/축소 예를 사용하면, 더 큰 하향 경사는 프로세서(110)가 더 작은 하향 경사보다 더 빨리 축소되도록 할 수 있고, 더 큰 상향 경사는 프로세서(110)가 더 작은 상향 경사보다 더 빠르게 줌인하게 할 수 있다.
일 실시예에서, 적어도 하나의 입력은 오직 하나의 가능한 기능에만 연관 될 수 있다. 예를 들어, 그래픽 유저 인터페이스는 매크로 뷰(220) 내에서 확대 및 축소하기 위한 별도의 입력, 매크로 뷰(220) 내에서 왼쪽, 오른쪽, 위 또는 아래로 패닝하기 위한 별도의 입력 등을 포함할 수 있다. 이 경우, 입력을 위해 프로세서(450A) 대신에 프로세스(450B)가 사용될 수 있다.
프로세스(450B)에서, 프로세서(110)는 시선 추적 장치(190)를 사용하여 검출된 사용자의 시선에 기초하여 단계(455B)에서 사용자의 머리의 현재 배향을 검출한다. 단계(455B)는 단계(455A)와 동일하거나 유사할 수 있다. 또한, 프로세서(110)는 머리 기반 제스처(예를 들어, 상향 경사, 하향 경사, 고개 끄덕임, 머리 흔들림 등)를 식별하기 위해 사용자 머리의 현재 배향을 사용자 머리의 하나 이상의 과거 배향과 비교할 수 있다.
단계(490)에서, 프로세서(110)는 사용자가 프로세스(400)의 단계(410)에서 식별된 입력을 응시하는 동안, 미리 결정된 제스처가 검출되었는지 여부를 결정한다. 미리 결정된 제스처는 입력에 대해 또는 일반적으로 모든 입력에 대해 미리 정의된 머리 제스처를 포함할 수 있다. 예를 들어, 제스처는 고개를 끄덕이는 것일 수 있다(예를 들어, 고개를 아래로 이동, 고개를 위로 이동, 또는 적어도 미리 정의된 횟수 또는 미리 정의된 시간 동안 고개를 아래로 및 위로 이동). 그러나 다른 제스처(예: 머리 흔들림)도 고려된다. 사용되는 특정 제스처에 관계없이, 제스처가 검출되면(즉, 단계(490)에서 "예"), 프로세스(450B)는 단계(495)로 진행한다. 단계(495)에서, 프로세서(110)는 입력과 관련된 기능을 시작한다. 한편, 특정 제스처가 검출되지 않으면(즉, 단계(490)에서 "아니오"), 프로세스(450B)는 단계(480B)로 진행한다.
단계(480B)에서 프로세서(110)는 단계(495)에서 시작된 모든 함수를 중지하고 단계(455B)로 복귀한다. 단계(480B)는 단계(480A)와 동일하거나 유사할 수 있다.
단계(450B)의 구체적인 예로서, 입력은 확대, 축소, 미리 설정된 확대 레벨 선택 기능과 관련된 버튼일 수 있으며, 제스처는 고개를 끄덕이는 것일 수 있다. 따라서, 사용자는 그래픽 유저 인터페이스 내의 버튼을 응시할 수 있고, 버튼을 응시하면서 버튼과 관련된 기능을 수행하기 위해 머리를 끄덕인다. 확대되는 함수의 경우, 프로세서(110)는 사용자가 고개를 끄덕이는 동안 매크로 뷰(220)의 배율을 증가시키고 사용자가 고개를 끄덕임을 중지하자마자 확대를 중지할 수 있다. 축소되는 함수의 경우, 프로세서(110)는 사용자가 고개를 끄덕이는 동안 매크로 뷰(220)의 배율을 감소시키고 사용자가 고개를 끄덕이는 즉시 축소를 중단할 수 있다. 미리 설정된 배율 레벨을 선택하는 함수의 경우, 프로세서(110)는 끄덕임이 검출되는 즉시 매크로 뷰(220)의 배율을 미리 설정된 배율 레벨로 변경할 수 있으며, 더 이상 끄덕임은 추가적인 효과가 없을 수 있다.
2.3. 제스처
본 명세서에 설명된 다수의 프로세스는 시선 추적 장치(190)에 의해 검출된 사용자의 시선에 기초한 제스처 검출을 이용한다. 다수의 제스처는 시선 추적 장치(190)로부터 이용 가능한 출력의 독립적인 조합으로 정의될 수 있다. 시선 추적 장치(190)는 3 개의 축(예를 들어, 상하 경사, 좌우 경사, 좌우 회전)을 따라 머리 배향의 변화를 검출하고 출력하도록 구성될 수 있다. 특히, 사람은 이 세 가지 각도에 관계없이 디지털 슬라이드 이미지에서 동일한 지점을 볼 수 있다. 따라서, 시선 추적 장치(190)는 사용자의 시선 위치와 무관하게 머리 배향의 변화를 검출하고 출력할 수 있다. 일 실시예에서, 각각의 제스처는 다른 제스처를 정의하는 시퀀스와 혼동을 일으킬 정도로 유사하지 않은 둘 이상의 단순하고 자연스러운 움직임(예를 들어, 상향 경사, 하향 경사, 왼쪽 경사, 오른쪽 경사, 왼쪽 회전, 오른쪽 회전 등)의 시퀀스를 포함한다. 다시 말해서, 쉽게 식별할 수 있는 복수의 기본 동작으로부터 선택된 복수의 고유한 기본 동작 시퀀스가 정의될 수 있으며, 각각의 고유 시퀀스는 서로 다른 제스처를 나타낸다.
2.4. 기타 입력 장치
본 명세서에 설명된 시선 추적 함수는 다른 입력 수단을 배제하거나 다른 입력 수단과 함께 사용될 수 있음을 이해해야 한다. 시선 추적 함수가 다른 입력 수단과 함께 사용되는 일 실시예에서, 시선 추적 함수는 마우스 및 키보드와 같은 수동 입력 장치를 통해 전통적인 입력에 대한 대안을 제공한다. 예를 들어, 시선 추적 장치(190) 및 그 관련 기능을 사용하는 것 외에도, 사용자는 확대 및 축소를 위해 키보드 단축키 및/또는 마우스 휠을 사용할 수도 있다.
따라서, 사용자는 키보드 단축키를 누르거나 마우스 휠을 스크롤하여 특정 지점을 확대 또는 축소하면서 디스플레이(180)상의 특정 지점을 응시할 수 있다. 이 경우, 프로세서(110)는 시선 추적 장치(190)의 출력을 기반으로 시선의 위치를 검출하고, 키보드 또는 마우스의 출력을 기반으로 디지털 슬라이드 이미지의 배율을 얼마나 증가 또는 감소시킬지 검출할 수 있다. 이러한 방식으로, 사용자는 손으로 작동하는 입력 장치의 일부 기능(예를 들어, 줌을 위한 중심점을 탐색하거나 선택하는 것)을 대체하기 위해 시선 추적 장치(190)를 사용하지만, 손으로 작동하는 입력 장치의 모든 기능(예: 확대/축소)을 대체하는 것은 아니다.
따라서, 각각의 특정 사용자는 개시된 실시예에 의해 구현된 시선 추적 기능을 얼마나 활용하거나 활용하지 않을지를 결정할 수 있다. 이를 통해 사용자는 시선 추적 기능 사용을 자신의 욕구와 편안함 수준에 맞게 조정할 수 있다.
2.5. 해석학
일 실시예에서, 프로세서(110) 및/또는 외부 시스템(예를 들어, 원격 서버)은 각 사용자(예를 들어, 병리학자)가 각각의 디지털 슬라이드 이미지를 검토하는 방법과 관련된 통계를 수집하고 저장할 수 있다. 예를 들어, 각 시스템(100)은 시선 추적 장치(190)로부터 획득된 시선 데이터를 수집 및 저장할 수 있고, 하나 이상의 네트워크를 통해 이 시선 데이터를 집계를 위해 원격 서버로 주기적으로 전송할 수 있다. 그 후 원격 서버는 복수의 시스템(100)으로부터 수집된 집계된 시선 데이터를 분석하기 위해 원격 서버의 적어도 하나의 프로세서를 사용할 수 있다.
시선 데이터는 각 병리학자가 본 디지털 슬라이드 이미지 영역, 각 영역에 대한 체류 시간(즉, 각 병리학자가 해당 영역을 본 시간), 각 병리학자가 해당 영역을 본 순서, 등을 포함할 수 있다. 일 실시예에서, 통합된 시선 데이터는 병리학자가 디지털 슬라이드 이미지를 어떻게 보거나 "분석"하는지 이해하기 위해 하나 이상의 머신 러닝 알고리즘을 훈련시키는 데 사용될 수 있다. 이러한 훈련된 머신 러닝 알고리즘은 예측 보기(predictive viewing)와 같은 다른 애플리케이션에 사용될 수 있다. 예측 보기는 보고있는 디지털 슬라이드 이미지의 현재 영역 및/또는 병리학자가 본 디지털 슬라이드 이미지의 과거 영역에 기초하여 병리학자가 다음에 볼 디지털 슬라이드 이미지의 영역을 예측하는 것을 포함할 수 있다. 그 다음 이미지 보기 애플리케이션은 이 정보를 사용하여 예측된 다음 보기 영역을 메모리로 자동 검색 및/또는 로딩할 수 있고(예를 들어, 더 빠른 검색을 위해 2 차 메모리(120)에서 주 메모리(115)로 예측된 다음 영역에 대한 이미지 데이터 로딩), 디지털 슬라이드 이미지의 뷰(예를 들어, 매크로 뷰(220))를 예측된 다음 뷰 영역으로 이동하는 등의 작업을 수행할 수 있다.
개시된 실시예에 의해 가능해진 예측 보기를 위한 머신 러닝 알고리즘은 디지털 슬라이드 이미지를 보기 위한 제스처의 사용을 대체할 수 있다. 머신 러닝 알고리즘은 특정 사용자의 시청 습관에 대해 훈련될 수 있으므로 디지털 슬라이드 이미지를 보면서 사용자의 의도를 예측할 수 있다. 예를 들어, 훈련 데이터 세트는 그 시선 위치 및/또는 머리 방향에서보고 있던 픽셀 데이터를 따라 사용자의 시선 위치 및/또는 머리 방향을 포함하는 사용자의 시선 추적 데이터의 히스토리를 포함할 수 있다. 그런 다음, 머신 러닝 알고리즘을 이러한 데이터 세트에서 훈련하여 사용자의 시청 습관을 모델링하고 디지털 슬라이드 이미지에서 다음으로 이동 및 확대/축소할 위치를 예측할 수 있다. 따라서 훈련된 머신 러닝 알고리즘은 디스플레이를 구동하여 사용자의 시청 경험을 관리하여 프로세스(300, 400 및 450)에 대한 필요성을 대체할 수 있다. 예를 들어, 사용자가 본 디지털 슬라이드 이미지의 과거 부분을 기반으로, 훈련된 머신 러닝 알고리즘은 볼 디지털 슬라이드 이미지의 다음 부분을 실시간으로 예측할 수 있고, 프로세서(110)는 자동으로 다음 부분으로 이동할 수 있다(예를 들어, 의식적인 제스처없이). 대안적으로, 프로세서(110)는 볼 디지털 슬라이드 이미지의 다음 부분을 제안할 수 있고, 사용자는 제안을 수락할 수 있으며, 이 경우 프로세서(110)는 그 다음 부분으로 패닝하거나 제안을 거절할 수 있으며, 이 경우 프로세서(110)는 다음 부분으로 패닝하지 않는다.
개시된 실시예에 대한 상기 설명은 통상의 기술자가 본 발명을 제조 또는 사용할 수 있도록 제공된다. 이들 실시예에 대한 다양한 수정은 통상의 기술자에게 쉽게 명백할 것이며, 여기에 설명된 일반적인 원리는 본 발명의 사상 또는 범위를 벗어나지 않고 다른 실시예에 적용될 수 있다. 따라서, 여기에 제시된 설명 및 도면은 본 발명의 현재 바람직한 실시예를 나타내며, 따라서 본 발명에 의해 광범위하게 고려되는 주제를 대표하는 것으로 이해되어야 한다. 또한, 본 발명의 범위는 통상의 기술자에게 명백할 수 있는 다른 실시예를 완전히 포함하고 본 발명의 범위는 이에 따라 제한되지 않는 것으로 이해된다.
"A, B 또는 C 중 하나 이상", "A, B 또는 C 중 하나 이상", "A, B 및 C 중 하나 이상", " A, B 및 C 중 하나 이상 "및"A, B, C 또는 이들의 임의 조합 "은 A, B 및/또는 C의 임의의 조합을 포함하고, A의 배수, B의 배수 또는 특히, "A, B 또는 C 중 하나 이상", "A, B 또는 C 중 하나 이상", "A, B 및 C 중 하나 이상", "하나 이상"과 같은 조합 A, B 및 C 중 하나 이상 " 및 "A, B, C 또는 이들의 임의 조합 "은 A 만, B 만, C 만, A와 B, A와 C, B와 C, 또는 A와 B와 C, 그리고 이러한 조합은 하나 이상의 구성 성분 A, B 및/또는 C를 포함할 수 있다. 예를 들어, A와 B의 조합은 하나의 A와 여러 B, 여러 A와 하나의 B, 여러 A와 어려 B를 포함할 수 있다.
100: 시스템 105: 통신 버스
110: 프로세서 115: 주 메모리
120: 보조 메모리 125: 내부 매체
130: 이동식 매체 180: 디스플레이
190: 시선 추적기

Claims (23)

  1. 적어도 하나의 하드웨어 프로세서를 사용하여,
    시선 추적 장치로부터의 출력에 기초하여 매크로 뷰 내에 디지털 슬라이드 이미지의 적어도 일부를 포함하는 그래픽 유저 인터페이스 상의 사용자의 시선의 위치를 반복적으로 검출하고;
    그래픽 유저 인터페이스상의 제 1 위치에서 제 2 위치로의 사용자 시선의 변화를 검출한 후, 매크로 뷰의 중심을 향하여 그래픽 유저 인터페이스 상의 제 2 위치에 대응하는 디지털 슬라이드 이미지 상의 위치를 이동시키기 위하여, 제 2 위치에 기초하여 매크로 뷰 내에서 디지털 슬라이드 이미지의 뷰를 자동적으로 패닝(pan)하는; 것을 특징으로 하는 방법.
  2. 제 1 항에 있어서,
    자동적으로 패닝하는 것은 상기 제 1 위치와 상기 제 2 위치 사이의 거리가 임계값보다 큰 것을 검출하는 것에 대응하여 행해지는 것을 특징으로 하는 방법.
  3. 제 2 항에 있어서,
    상기 임계값은 0 보다 큰 것을 특징으로 하는 방법.
  4. 제 1 항에 있어서,
    적어도 하나의 하드웨어 프로세서를 사용하여, 상기 그래픽 유저 인터페이스 상의 제 2 위치에 대응하는 디지털 슬라이드 이미지 상의 위치가 매크로 뷰의 중심 내에 있게 될 때까지 뷰를 자동적으로 패닝하는 것을 추가로 포함하는 것을 특징으로 하는 방법.
  5. 제 1 항에 있어서,
    적어도 하나의 하드웨어 프로세서를 사용하여, 사용자의 시선의 검출된 위치가 매크로 뷰의 중심 내에 있게 될 때까지 뷰를 자동적으로 패닝하는 것을 추가로 포함하는 것을 특징으로하는 방법.
  6. 제 1 항에 있어서,
    적어도 하나의 하드웨어 프로세서를 사용하여,
    상기 시선 추적 장치로부터의 출력에 기초하여 사용자의 머리의 배향(orientation)을 검출하고,
    사용자의 머리의 하나 이상의 검출된 배향에 기초하여 미리 결정된 시작 제스처를 검출하되,
    자동으로 패닝하는 것은 미리 결정된 시작 제스처를 검출하는 것에 응답하여 행해지는 것을 특징으로 하는 방법.
  7. 제 6 항에 있어서,
    적어도 하나의 하드웨어 프로세서를 사용하여,
    사용자의 머리의 하나 이상의 검출된 배향에 기초하여 미리 결정된 정지 제스처를 검출하고,
    미리 결정된 정지 제스처를 검출하는 것에 응답하여, 매크로 뷰 내에서 디지털 슬라이드 이미지의 뷰를 패닝하는 것을 자동적으로 중단하는 것을 추가로 포함하는 것을 특징으로 하는 방법.
  8. 제 1 항에 있어서,
    상기 그래픽 유저 인터페이스는 디지털 슬라이드 이미지의 썸네일 이미지를 추가로 포함하며,
    상기 방법은, 적어도 하나의 하드웨어 프로세서를 사용하여,
    사용자 시선의 검출된 위치가 상기 썸네일 이미지 내에 있는지 여부를 검출하고;
    사용자 시선의 위치가 썸네일 이미지 내에 있는 것을 검출하는 것에 응답하여,
    상기 썸네일 이미지 내의 위치에 대응하는 디지털 슬라이드 이미지 상의 위치를 결정하고,
    상기 디지털 슬라이드 이미지 상의 결정된 위치가 매크로 뷰의 중심 내에 있도록 매크로 뷰를 업데이트 하는 것을 추가로 포함하는 것을 특징으로 하는 방법.
  9. 제 8 항에 있어서,
    상기 매크로 뷰를 업데이트 하는 것은 상기 디지털 슬라이드 이미지 상의 결정된 위치를 매크로 뷰의 중심으로 이동시키기 위하여, 상기 디지털 슬라이드 이미지의 뷰를 자동적으로 패닝하는 것을 포함하는 것을 특징으로 하는 방법.
  10. 제 1 항에 있어서,
    적어도 하나의 하드웨어 프로세서를 사용하여, 상기 제 1 위치와 상기 제 2 위치 사이의 거리를 계산하되, 자동적으로 패닝하는 속력은 계산된 거리에 기초하는 것을 특징으로 하는 방법.
  11. 적어도 하나의 하드웨어 프로세서를 사용하여,
    시선 추적 장치로부터의 출력에 기초하여 매크로 뷰 내에 디지털 슬라이드 이미지의 일부와 적어도 하나의 입력을 포함하는 그래픽 유저 인터페이스 상의 사용자의 시선의 위치를 반복적으로 검출하고,
    사용자의 시선의 위치가 하나 이상의 입력 중 하나 내에 있는 것이 검출될 때,
    시선 추적 장치로부터의 출력에 기초하여 다수의 가능한 배향 중에서 사용자의 머리의 배향을 검출하고;
    하나의 입력 및 검출된 배향을 가진 메모리에 관련하여 함수(function)를 특정(identify)하고;
    특정된 함수에 관련된 배향을 검출하는 것에 기초하여 상기 함수를 시작하는 것을 특징으로 하는 방법.
  12. 제 11 항에 있어서,
    상기 함수는 상기 매크로 뷰 내에서 디지털 슬라이드 이미지의 배율 레벨을 가변시키는 것을 포함하는 것을 특징으로 하는 방법.
  13. 제 12 항에 있어서,
    하나의 입력은 상기 매크로 뷰 내에서 디지털 슬라이드 이미지의 배율 레벨을 가변하기 위한 입력을 포함하되, 다수의 가능한 배향은 제 1 배향 및 제 2 배향을 포함하고, 상기 제 1 배향은 배율 레벨을 증가시키는 함수를 가진 메모리에 관련되며, 상기 제 2 배향은 배율 레벨을 감소시키는 함수를 가진 메모리에 관련되는 것을 특징으로 하는 방법.
  14. 제 13 항에 있어서,
    상기 제 1 배향은 제 1 방향으로의 머리 경사를 포함하며,
    상기 제 2 배향은 상기 제 1 방향에 반대 반향인 제 2 방향으로의 머리 경사를 포함하는 것을 특징으로 하는 방법.
  15. 제 11 항에 있어서,
    상기 함수를 시작한 후에, 사용자의 시선의 위치가 더이상 하나의 입력 내에 있지 않은 것이 검출될 때, 상기 함수를 중단하는 것을 특징으로 하는 방법.
  16. 적어도 하나의 하드웨어 프로세서를 사용하여,
    시선 추장 정치로부터의 출력에 기초하여 매크로 뷰 내에 디지털 슬라이드 이미지의 일부 및 적어도 하나의 입력을 포함하는 그래픽 유저 인터페이스 상의 사용자의 시선의 위치를 반복적으로 검출하고;
    사용자의 시선의 위치가 하나 이상의 입력 중 하나 내에 있는 것이 검출될 때,
    시선 추적 장치로부터의 출력에 기초하여 사용자의 머리의 배향을 검출하고;
    사용자의 머리의 하나 이상의 검출된 배향에 기초하여 미리 결정된 시작 제스처를 검출하고,
    미리 결정된 시작 제스처를 검출하는 것에 응답하여, 하나의 입력과 관련한 함수를 시작하는 것을 특징으로 하는 방법.
  17. 제 16 항에 있어서,
    상기 함수는 상기 매크로 뷰 내의 디지털 슬라이드 이미지의 배율 레벨을 가변시키는 것을 포함하는 것을 특징으로 하는 방법.
  18. 제 16 항에 있어서,
    상기 함수를 시작한 후에, 사용자의 시선의 위치가 더 이상 하나의 입력 내에 있지 않은 것을 검출할 때, 상기 함수를 중단하는 것을 특징으로 하는 방법.
  19. 제 16 항에 있어서,
    미리 결정된 시작 제스처는 사용자의 머리의 반복적인 움직임을 포함하는 것을 특징으로 하는 방법.
  20. 제 16 항에 있어서,
    하나 이상의 입력은 다수의 입력 중 다른 하나와는 다른 함수에 각각 관련된 다수의 입력을 포함하며, 미리 결정된 시작 제스처는 다수의 입력의 각각에 대하여 동일한 것을 특징으로 하는 방법.
  21. 하나 이상의 제 1 디지털 슬라이드 이미지에 대하여, 적어도 하나의 하드웨어 프로세서를 사용하여,
    시선 추장 정치로부터의 출력에 기초하여 매크로 뷰 내에 디지털 슬라이드 이미지의 적어도 일부를 포함하는 그래픽 유저 인터페이스 상의 사용자의 시선의 위치 및 머리 배향을 반복적으로 검출하고;
    사용자의 시선 또는 머리 배향이 검출될 때, 보여지는 제 1 디지털 슬라이드 이미지의 일부와 관련된 사용자의 시선 및 머리 배향의 검출된 각각의 위치를 포함하는 뷰 히스토리를 저장하고;
    하나 이상의 제 1 디지털 슬라이드 이미지에 대하여 저장된 뷰 히스토리에 기초하여, 사용자가 보게 되는 적어도 하나의 제 2 디지털 슬라이드 이미지의 다음 부분을 예측하는 머신 러닝 알고리즘을 훈련시키고;
    훈련된 상기 머신 러닝 알고리즘을 사용하여, 사용자가 본 적어도 하나의 제 2 디지털 슬라이드 이미지의 과거 위치에 기초하여 사용자가 볼 적어도 하나의 제 2 디지털 슬라이드 이미지의 다음 위치를 예측하고, 사용자의 개입 없이, 훈련된 상기 머신 러닝 알고리즘에 의해 예상되는 바에 따라 보여질 적어도 하나의 제 2 디지털 슬라이드 이미지의 다음 부분으로 자동적으로 패닝되는 것을 특징으로 하는 방법.
  22. 적어도 하나의 하드웨어 프로세서; 및
    적어도 하나의 상기 하드웨어 프로세서에 의해 실행시에, 제 1 항의 방법을 수행하는 적어도 하나의 소프트웨어 모듈을 포함하는 것을 특징으로 하는 시스템.
  23. 프로세서에 의해 실행시에, 상기 프로세서가 제 1 항의 방법을 수행하도록 하는 명령어를 저장한 비-일시적인 컴퓨터 판독 가능 매체.
KR1020217009468A 2018-12-19 2019-12-19 디지털 병리학을 위한 시선 추적 이미지 뷰어 KR20210052516A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862782191P 2018-12-19 2018-12-19
US62/782,191 2018-12-19
PCT/US2019/067665 WO2020132358A1 (en) 2018-12-19 2019-12-19 Eye-tracking image viewer for digital pathology

Publications (1)

Publication Number Publication Date
KR20210052516A true KR20210052516A (ko) 2021-05-10

Family

ID=71102293

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217009468A KR20210052516A (ko) 2018-12-19 2019-12-19 디지털 병리학을 위한 시선 추적 이미지 뷰어

Country Status (6)

Country Link
US (2) US11385713B2 (ko)
EP (1) EP3844600A4 (ko)
JP (1) JP7119224B2 (ko)
KR (1) KR20210052516A (ko)
CN (1) CN112805670B (ko)
WO (1) WO2020132358A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112805670B (zh) * 2018-12-19 2024-02-09 徕卡生物系统成像股份有限公司 用于数字病理学的眼睛跟踪的图像查看器
JP2021131443A (ja) * 2020-02-19 2021-09-09 キヤノン株式会社 電子機器
US20220286741A1 (en) * 2021-03-04 2022-09-08 Arris Enterprises Llc Providing enhanced viewing experience using user gaze detection and video casting

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0822385A (ja) * 1994-02-22 1996-01-23 Nippon Hoso Kyokai <Nhk> 視線対応表示方法及び装置
JPH07265289A (ja) * 1994-03-28 1995-10-17 Toshiba Corp デジタルx線診断装置
JP2000089884A (ja) * 1998-09-09 2000-03-31 Hitachi Business Solution Kk 情報処理システム
US6603491B2 (en) * 2000-05-26 2003-08-05 Jerome H. Lemelson System and methods for controlling automatic scrolling of information on a display or screen
JP2006023953A (ja) * 2004-07-07 2006-01-26 Fuji Photo Film Co Ltd 情報表示システム
JP2007029248A (ja) * 2005-07-25 2007-02-08 Hitachi Medical Corp 比較読影支援装置及び画像処理プログラム
US8155479B2 (en) 2008-03-28 2012-04-10 Intuitive Surgical Operations Inc. Automated panning and digital zooming for robotic surgical systems
US8463741B2 (en) * 2009-09-04 2013-06-11 Omnyx, LLC Digital pathology system
JP5601218B2 (ja) * 2011-01-24 2014-10-08 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
WO2013033842A1 (en) * 2011-09-07 2013-03-14 Tandemlaunch Technologies Inc. System and method for using eye gaze information to enhance interactions
US20170235360A1 (en) * 2012-01-04 2017-08-17 Tobii Ab System for gaze interaction
US9864498B2 (en) 2013-03-13 2018-01-09 Tobii Ab Automatic scrolling based on gaze detection
KR20140143623A (ko) * 2013-06-07 2014-12-17 삼성전자주식회사 휴대 단말기에서 컨텐츠를 표시하는 장치 및 방법
US9898077B2 (en) 2013-09-18 2018-02-20 Booktrack Holdings Limited Playback system for synchronised soundtracks for electronic media content
US20150113454A1 (en) * 2013-10-21 2015-04-23 Motorola Mobility Llc Delivery of Contextual Data to a Computing Device Using Eye Tracking Technology
JP6183188B2 (ja) * 2013-12-02 2017-08-23 富士通株式会社 表示装置,プログラム及び表示方法
GB2526515A (en) * 2014-03-25 2015-12-02 Jaguar Land Rover Ltd Image capture system
WO2015154882A1 (en) * 2014-04-11 2015-10-15 The Eye Tribe Aps Systems and methods of eye tracking calibration
US10564714B2 (en) * 2014-05-09 2020-02-18 Google Llc Systems and methods for biomechanically-based eye signals for interacting with real and virtual objects
US10048749B2 (en) * 2015-01-09 2018-08-14 Microsoft Technology Licensing, Llc Gaze detection offset for gaze tracking models
US10338677B2 (en) * 2015-10-28 2019-07-02 Microsoft Technology Licensing, Llc Adjusting image frames based on tracking motion of eyes
US20170195562A1 (en) * 2016-01-05 2017-07-06 360fly, Inc. Dynamic field of view adjustment for panoramic video content using eye tracker apparatus
CN112805670B (zh) * 2018-12-19 2024-02-09 徕卡生物系统成像股份有限公司 用于数字病理学的眼睛跟踪的图像查看器

Also Published As

Publication number Publication date
EP3844600A1 (en) 2021-07-07
JP2022515304A (ja) 2022-02-18
US11385713B2 (en) 2022-07-12
US20220342479A1 (en) 2022-10-27
CN112805670A (zh) 2021-05-14
EP3844600A4 (en) 2022-05-25
JP7119224B2 (ja) 2022-08-16
US11747900B2 (en) 2023-09-05
US20220019281A1 (en) 2022-01-20
CN112805670B (zh) 2024-02-09
WO2020132358A1 (en) 2020-06-25

Similar Documents

Publication Publication Date Title
US11747900B2 (en) Eye-tracking image viewer for digital pathology
US10075653B2 (en) Method and electronic device for image processing
US10564806B1 (en) Gesture actions for interface elements
US9922179B2 (en) Method and apparatus for user authentication
US8532346B2 (en) Device, method and computer program product
US8957857B2 (en) Device and method for controlling mouse pointer
CN110443794B (zh) 一种基于病理图像的图像状态确定方法、装置以及系统
US10642348B2 (en) Display device and image display method
US20100214321A1 (en) Image object detection browser
EP2905680B1 (en) Information processing apparatus, information processing method, and program
KR20180099026A (ko) 외부 전자 장치를 이용한 촬영 방법 및 이를 지원하는 전자 장치
US9538086B2 (en) Method of performing previewing and electronic device for implementing the same
US20160349972A1 (en) Data browse apparatus, data browse method, and storage medium
CN112578971B (zh) 页面内容展示方法、装置、计算机设备及存储介质
KR20160052309A (ko) 전자 장치 및 전자 장치에서 얼굴 정보를 분석하는 방법
WO2019187487A1 (ja) 情報処理装置、情報処理方法、およびプログラム
CN112073764A (zh) 一种显示设备
JP6208910B1 (ja) 動画像処理装置、動画像処理システム、動画像処理方法及び動画像処理プログラム
CN111093035B (zh) 图像处理方法、电子设备及存储介质
CN113613053B (zh) 视频推荐方法、装置、电子设备及存储介质
US20200257396A1 (en) Electronic device and control method therefor
US20210072827A1 (en) Line-of-sight input device, method of line-of-sight input, and line-of-sight input system
KR102094944B1 (ko) 시선 추적 방법 및 이를 수행하기 위한 단말
CN115728950A (zh) 显示方法、装置、头戴显示设备及存储介质
KR20150087664A (ko) 비 접촉식 입력 인터페이스 구현 방법 및 그 장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal