KR101830583B1 - Wsi 스트리밍 방법 - Google Patents

Wsi 스트리밍 방법 Download PDF

Info

Publication number
KR101830583B1
KR101830583B1 KR1020170102076A KR20170102076A KR101830583B1 KR 101830583 B1 KR101830583 B1 KR 101830583B1 KR 1020170102076 A KR1020170102076 A KR 1020170102076A KR 20170102076 A KR20170102076 A KR 20170102076A KR 101830583 B1 KR101830583 B1 KR 101830583B1
Authority
KR
South Korea
Prior art keywords
tile
wsi
cache buffer
normalized
level
Prior art date
Application number
KR1020170102076A
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 주식회사 인피니트헬스케어
Priority to KR1020170102076A priority Critical patent/KR101830583B1/ko
Priority to US15/685,675 priority patent/US10438375B2/en
Application granted granted Critical
Publication of KR101830583B1 publication Critical patent/KR101830583B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234309Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/40Tree coding, e.g. quadtree, octree
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N33/00Investigating or analysing materials by specific methods not covered by groups G01N1/00 - G01N31/00
    • G01N33/48Biological material, e.g. blood, urine; Haemocytometers
    • G01N33/50Chemical analysis of biological material, e.g. blood, urine; Testing involving biospecific ligand binding methods; Immunological testing
    • G01N33/52Use of compounds or compositions for colorimetric, spectrophotometric or fluorometric investigation, e.g. use of reagent paper and including single- and multilayer analytical elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0007Image acquisition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/232Content retrieval operation locally within server, e.g. reading video streams from disk arrays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2362Generation or processing of Service Information [SI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8146Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics
    • H04N21/8153Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics comprising still images, e.g. texture, background image
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object

Abstract

본 발명에 따른 WSI 스트리밍 방법은, 웹 클라이언트가 디지털 병리학 벤더 별로 서로 다른 영상 압축 포맷 및 타일 크기를 가지는 WSI를 디지털 병리학 서버로부터 스트리밍 받는 방법에 있어서, 상기 디지털 병리학 서버로부터 WSI을 획득하는 WSI 획득 단계;를 포함하되, 상기 WSI 획득 단계는, 시간 비용이 최소인 정규화된 타일을 정의하는 정규화 타일 정의 단계; 정규화 타일과의 비교하는 판단 단계; 및 정규화된 타일로의 최적화 변환을 실행하는 변환 단계;를 포함한다.

Description

WSI 스트리밍 방법{METHOD OF STREAMING WSI}
본 발명은 WSI(Whole Slide Image) 스트리밍 방법에 관한 것으로, 보다 상세하게는, 디지털 병리학의 스캐너 벤더 별로 다양한 영상 압축 포맷 및 타일 크기를 가지고 있어 WSI 영상 스트리밍 시 웹 환경에서 일정한 성능을 내기 힘들기 때문에, 영상 획득시 변환을 통한 타일 이미지 정규화로 벤더에 따른 성능 저하를 개선하고, 타일 이미지 정규화시에는 시간 비용을 최소화하는 타일로 정규화한 WSI 스트리밍 방법에 관한 것이다.
디지털 병리학(digital pathology)은 디지털 슬라이드로부터 생성되는 정보를 관리하는 컴퓨터 기술로 구현된 영상 기반 정보 환경을 말하는 것으로, 부분적으로는 현미경으로 영상을 촬영하여 컴퓨터 네트워크로 전달하는 가상 현미경 관찰(virtual microscopy)에 의해서 구현된다.
최근 디지털 병리학은 전 세계적으로 가장 유망한 진단 의학의 한 분야로 인식되고 있다. 이와 같이 유망한 진단 의학의 한 분야로 각광받기 시작하였으나, 그 연구개발의 단계는 아직 초기에 불과한 상태이다. 국내에서는, 디지털 병리(학) 시스템(digital pathology system)에 대한 연구개발이 일천하고 관련 제품이 하나로 없는 상태이며, 외국에서조차 주요 진단(primary diagnosis)용으로는 미국 FDA에서 승인된 디지털 병리학 시스템이 아직 없는 상태라는 점만 보아도 현재의 연구개발 단계를 짐작할 수 있다.
본 출원인은 이와 같은 디지털 병리학 시스템에서는 디지털 슬라이드 이미지(WSI, Whole Slide Image), 즉 다양한 벤더의 WSI 영상을 열어서 보면 각 벤더마다 영상을 열거나 탐색하는 속도가 매우 다른 문제가 있다고 생각하였다. 이점에 대해서 동종 업계에서는 이와 같은 문제 의식을 전혀 가지고 있지 않았다.
또한, 웹 클라이언트로 영상을 열고 탐색할 경우 대부분 서버에서 영상을 변환을 수행하여 영상 로딩 속도가 느렸던 문제가 있었다. 또한, JPIP를 이용할 경우엔 웹 클라이언트의 브라우저에서 j2k를 직접적으로 지원하지 못하기 때문에 웹 브라우저에서 j2k 디코딩을 Javascript로 처리해야 되어 속도가 저하되는 문제점을 가지고 있었다.
대한민국 특허 제1559798호(2015년 10월 6일 등록, 발명의 명칭 : 디지털 병리학의 이미지 표준화 방법{method for normalizing image in digital pathology})
본 발명은 상술한 문제점을 해결하기 위하여 창출된 것으로, 본 발명의 목적은 디지털 병리학 스캐너 벤더 별로 다양한 영상 압축 포맷 및 타일 크기를 가지고 있어 WSI 영상 스트리밍 시 웹 환경에서 일정한 성능을 내기 힘들기 때문에, 영상 획득시 변환을 통한 타일 이미지 정규화로 벤더에 따른 성능 저하를 개선하고, 타일 이미지 정규화시에는 시간 비용을 최소화하는 타일로 정규화한 WSI 스트리밍 방법을 제공하는 것에 있다. 나아가, 반복되는 잦은 타일 데이터 요청 시에 영역(Region) 및 접근 빈도 기반의 캐싱(Caching)을 통한 반응성 및 시간 비용을 개선하는 것이 가능한, WSI 스트리밍 방법을 제공하는 것에 있다.
상기의 목적을 달성하기 위한 본 발명에 따른 WSI 스트리밍 방법은, 웹 클라이언트가 디지털 병리학 스캐너 벤더 별로 서로 다른 영상 압축 포맷 및 타일 크기를 가지는 WSI를 디지털 병리학 서버로부터 스트리밍 받는 방법에 있어서, 상기 디지털 병리학 서버로부터 WSI을 획득하는 WSI 획득 단계;를 포함하고, 상기 WSI 획득 단계는, 썸 네일 레벨을 포함한 네비게이션 레벨에서 동일한 영역을 보는데 소요되는 시간인 시간 비용이 최소인 정규화된 타일을 정의하고, 베이스 레벨에서 시간 비용이 최소인 정규화된 타일을 정의하는 정규화 타일 정의 단계; 상기 WSI의 베이스 레벨 타일 및 상기 WSI의 네비게이션 레벨 타일 모두 상기 정규화된 타일로의 최적화 변환이 필요없는 경우인 제 1 경우에 해당하는지, 상기 베이스 레벨 타일은 그대로 사용하고 상기 네비게이션 레벨 타일만을 상기 정규화된 타일로의 최적화 변환이 필요한 경우인 제 2 경우에 해당하는지, 상기 베이스 레벨 타일 및 상기 네비게이션 레벨 타일 모두 상기 정규화된 타일로의 최적화 변환이 필요한 경우인 제 3 경우에 해당하는지를 판단하는 비교 판단 단계; 및 상기 제 1 경우인 때에는, 상기 WSI의 베이스 레벨 타일 및 상기 WSI의 네비게이션 레벨 타일 모두 상기 정규화된 타일로의 최적화 변환을 하지 않고, 상기 제 2 경우인 때에는, 상기 베이스 레벨 타일은 그대로 사용하고 상기 네비게이션 레벨 타일만을 상기 정규화된 타일로의 최적화 변환을 실행하고, 상기 제 3 경우인 때에는, 상기 베이스 레벨 타일 및 상기 네비게이션 레벨 타일 모두 상기 정규화된 타일로의 최적화 변환을 실행하는 변환 단계;를 포함한다.
또한, 상기 시간 비용은, (Basic Service Response Time + Tile Load Time + Tile Transfer Time)×(Tile 숫자)에 비례한다.
또한, 상기 WSI 획득 단계 이후에, 상기 획득된 WSI를 JPEG으로 트랜스코딩(transcoding)을 하고, 블록 서치 및 로드(Block search and load)를 하고, JPEG 이미지 블록 트랜스퍼(JPEG image Block Transfer)를 하고, JPEG 디코딩(Decoding)을 하고, 블록 업데이트 및 디스플레이(Block Update and Display)를 하는 단계를 포함한다.
여기서, 상기 블록은 상기 정규화된 타일을 나타낸다.
또한, 상기 웹 클라이언트는 제 1 영역 캐시 버퍼를 포함하고, 상기 디지털 병리학 서버는 제 2 영역 캐시 버퍼 및 로우 캐시 버퍼(Raw cache buffer)를 포함하여, 상기 웹 클라이언트의 사용자가 보고 있는 영역인 view region에 인접한 타일들의 정보를 상기 제 1 영역 캐시 버퍼에서 버퍼링하는 단계; 상기 웹 클라이언트의 사용자가 보고 있는 영역인 view region에 인접한 타일들의 정보를 상기 제 2 영역 캐시 버퍼에서 버퍼링하는 단계; 및 상기 로우 캐시 버퍼는 적중률에 기초하여, 상기 적중률이 높은 타일의 순서대로 버퍼링하는 단계;를 포함한다.
또한, 상기 제 1 영역 캐시 버퍼는 상기 제 2 영역 캐시 버퍼로부터 백그라운드 로딩을 하는 단계;를 더 포함한다.
여기서, 상기 적중률은, 타일에 대한 열람 요청 빈도나, 최근 접근 시간 총량, 최근의 단위 시간 당 얼마나 자주 해당 타일을 요청한 것인지 정보에 기초하여 계산한 값이다.
또한, 상기 로우 캐시 버퍼는 상기 제 2 영역 캐시 버퍼와 동일한 타일에 대한 정보를 버퍼링하고 있는 경우에는, 해당 동일한 정보를 저장하지 않고 해당 정보를 가지고 있는 상기 제 2 영역 캐시 버퍼의 인덱스만 가지고 있는 것이 바람직하다.
또한, 상기 웹 클라이언트는 현재 뷰 크기에서 다운 샘플링(down sampling) 가능한 최소의 레벨을 계산하는 단계; 상기 계산된 최소의 레벨에 기초하여 상기 웹 클라이언트는 뷰 영역과 겹쳐진 모든 타일의 목록을 생성하여, 생성된 상기 타일의 목록 중 i번째 타일 이미지를 상기 디지털 병리학 서버에 요청하는 단계; 및 상기 디지털 병리학 서버는 i번째 타일 이미지를 상기 웹 클라이언트로 반환하는 단계;를 더 포함하고, 여기서는 i는 1부터 상기 모든 타일 목록의 개수인 n까지의 자연수이다.
본 발명에 따른 WSI 스트리밍 방법에 의하면,
첫째, 디지털 병리학 벤더 별로 다양한 영상 압축 포맷 및 타일 크기를 가지고 있어 WSI 영상 스트리밍 시 웹 환경에서 일정한 성능을 내기 힘들기 때문에, 영상 획득시 변환을 통한 타일 이미지 정규화로 벤더에 따른 성능 저하를 개선하고, 타일 이미지 정규화시에는 시간 비용을 최소화하는 타일로 정규화하는 것이 가능하다.
둘째, 반복되는 잦은 타일 데이터 요청 시에 영역(Region) 및 접근 빈도 기반의 캐싱(Caching)을 통해, 반응성(response) 및 시간 비용을 개선하는 것이 가능하다.
도 1은 WSI 타입(type)을 도시한 도면,
도 2는 타일 규격 및 이미지 포맷 최적화가 필요한 경우를 도시한 도면,
도 3은 네비게이션 레이어(navigation layer)만 최적화가 필요한 경우를 도시한 도면,
도 4는 베이스 레벨 및 네비게이션 레벨 모두 최적화가 필요 없는 경우를 도시한 도면,
도 5는 영상 압축 포맷 별로 시간 비용이 서로 다른 것을 나타낸 도면,
도 6은 본 발명에 따른 WSI 스트리밍 방법에서의 캐싱에 대한 설명을 나타낸 도면이다.
이하 첨부된 도면을 참조하면서 본 발명에 따른 바람직한 실시예를 상세히 설명하기로 한다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여, 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다.
따라서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.
도 1은 WSI 타입을 도시한 도면이다. 각 벤더가 제공하는 WSI의 타입에 따라서, 동일한 영역(region)을 보는데 소요되는 시간이 서로 다름을 표 1을 통해서 알 수 있다. 본 명세서에서는 동일한 영역을 보는데 소요되는 시간을 시간 비용이라고 용어를 사용하여 표현하기로 한다. 즉, 시간 비용은 (Basic Service Response Time + Tile Load Time + Tile Transfer Time)×(Tile 숫자)에 비례한다.
구분 Tile Size (KB) Basic Service Response Time(ms) Tile Load Time (ms) Tile Transfer Time (ms) View Tile Time (ms) View Region Time (ms)
Type1 100 2 20 20 42 42×4=168
Type2 40 2 15 10 27 27×7=189
Type3 30 2 14 9 25 25×6=150
Type4 15 2 12 5 19 19×20=380
종래 동종 업계에서 전혀 위와 같은 문제 의식조차 없었는 것에서 벗어나, 본 출원인은 시간 비용(time cost) 관점에서 가장 최적인 Type으로 WSI의 타일을 정규화하는 것을 고려하였다. 나아가 벤더 별로 다양한 영상 압축 포맷 및 타일 크기를 가지고 있어 WSI 영상 스트리밍 시 웹 환경에서 일정한 성능을 내기 힘들기 때문에, 영상 획득시 변환을 통한 타일 이미지 정규화로 벤더에 따른 성능 저하를 개선하였다.
도 2는 타일 규격 및 이미지 포맷 최적화가 필요한 경우를 도시한 도면이다. 도 2에 도시된 바와 같이, 베이스 레벨 타일(base level tile)을 시간 비용이 최소화되는 타일로 정규화하여 재생성하며, 재생성된 베이스 레벨에 대응되게 네비게이션 레벨 타일(navigation level tile)을 재생성하는 것을 나타낸다.
도 3은 네비게이션 레이어(navigation layer)만 최적화가 필요한 경우를 도시한 도면이다. 도 3에 도시된 바와 같이, 베이스 레벨 타일은 원본을 그대로 사용하고, 네비게이션 레벨 타일만을 재생성하는 것을 나타낸다.
도 4는 베이스 레벨 및 네비게이션 레벨 모두 최적화가 필요 없는 경우를 도시한 도면이다. 베이스 레벨 타일 및 네비게이션 레벨 타일을 모두 원본 그대로 사용하는 것을 알 수 있다.
도 2 내지 도 4에 도시된 바와 같이, 본 발명에 따른 WSI 스트리밍 방법에서는, 베이스 레벨 및 네비게이션 레벨(썸 네일 레벨(thumbnail level) 포함)에서 시간 비용을 최소화하는 정규화된 타일을 설정하고, 디지털 병리학 벤더별로 다양한 영상 압축 포맷 및 타일 크기를 가지고 있는 경우, 상기 정규화된 타일과 비교하여, 도 2 내지 도 4에 도시된 것처럼, 각 경우에 따라 베이스 레벨 및 네비게이션 레벨 모두 최적화가 필요 없는 경우(도 4 도시)인지, 베이스 레벨 타일은 그대로 사용하고, 네비게이션 레벨만 최적화(정규화)가 필요한 경우(도 3)인지, 베이스 레벨 타일 및 네비게이션 레벨 타일 모두 최적화 내지 정규화가 필요한 경우(도 2)인지를 판단하여, 각각에 대응되게 베이스 레벨 및 네비게이션 레벨(썸 네일 레벨(thumbnail level) 포함)에서 시간 비용을 최소화하는 정규화된 타일로 변환한다.
도 5는 영상 압축 포맷 별로 시간 비용이 서로 다른 것을 나타낸 도면이다. 도 5에 도시된 바와 같이, 도 1 내지 도 4를 통해서 설명한 영상 획득(aquisition) 단계 이후, JPEG으로 트랜스코딩(transcoding)을 하고, 블록 서치 및 로드(Block search and load), JPEG 이미지 블록 트랜스퍼(JPEG image Block Transfer), JPEG 디코딩(Decoding), 볼록 업데이트 및 디스플레이(Block Update and Display) 단계를 거치게 된다. JPIP를 이용할 경우에는 웹 클라이언트의 브라우저에서 J2k를 직접적으로 지원하지 못하기 때문에 웹 브라우저에서 j2k 디코딩을 javascript로 처리해야 되어 속도가 저하되는 것을 확인할 수 있다. 여기서의 블록이라는 것은 도 1 내지 도 4에서 설명한 정규화된 타일을 의미한다.
도 6은 본 발명에 따른 WSI 스트리밍 방법에서의 캐싱에 대한 설명을 나타낸 도면이다. 도 6의 영역 캐시 버퍼(region cache buffer)는 웹 클라이언트 및/또는 디지털 병리학 서버에 위치할 수 있으며, 로우 캐시 버퍼(Raw cache buffer)는 디지털 병리학 서버에 위치할 수 있다. 최적인 경우는, 웹 클라이언트에 제 1 영역 캐시 버퍼가 위치하고, 제 2 영역 캐시 버퍼가 디지털 병리학 서버에 위치하고, 로우 캐시 버퍼(Raw cache buffer)는 디지털 병리학 서버에 위치하는 경우이다.
제 1 영역 캐시 버퍼는 현재 사용자가 보고 있는 영역인 view region에 인접한 타일들의 정보를 웹 클라이언트에서 버퍼링하고 있다. 제 2 영역 캐시 버퍼는 현재 사용자가 보고 있는 영역인 view region에 인접한 타일들의 정보를 디지털 병리학 서버에서 버퍼링하고 있다. 제 1 영역 캐시 버퍼는 제 2 영역 캐시 버퍼에 저장된 정보를 백그라운드로 로딩해 두어서 시간 비용을 줄일 수 있다.
한편, 로우 캐시 버퍼는 요청 빈도나, 최근 접근 시간, 최근의 단위 시간당 얼마나 요청된 것인지 정보를 이용한 적중률을 기초로 하여, 적중률이 높은 타일 순서대로 디지털 병리학 서버의 로우 캐시 버퍼에 버퍼링하고, 로우 캐시 버퍼 용량을 초과하는 타일의 경우에는 로우 캐시 버퍼에서 삭제된다. 로우 캐시 버퍼는 제 2 영역 캐시 버퍼와 동일한 타일에 대한 정보를 버퍼링하고 있는 경우에는, 동일한 정보를 저장하지 않고 해당 정보를 가지고 있는 제 2 영역 캐시 버퍼의 인덱스만 가지고 있을 수 있다.
한편, JPEG 블록 스트리밍을 할 때, 높은 응답성(high response)을 위해 영상 품질 제어를 하게 된다. WSI 가운데 썸 네일 이미지를 먼저 로딩하고, 다음 레벨의 블록을 전송해서 로딩하고, 마지막으로 필요한 경우 베이스 레벨의 블록을 전송해서 로딩하게 된다.
또한, 웹 클라이언트는 현재 뷰 크기에서 다운 샘플링(down sampling) 가능한 최소의 레벨을 계산한다. 상기 계산된 최소의 레벨에 기초하여 웹 클라이언트는 뷰 영역과 겹쳐진 모든 타일의 목록을 생성하여, 타일 목록 중 i번째 타일 이미지를 요청하고, 디지털 병리학 서버는 i번째 타일 이미지를 반환하게 된다. 여기서는 i는 1부터 타일 목록의 개수인 n까지의 자연수이다.
이상과 같이, 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 이것에 의해 한정되지 않으며 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 본 발명의 기술 사상과 아래에 기재될 청구범위의 균등 범위 내에서 다양한 수정 및 변형이 가능함은 물론이다.

Claims (9)

  1. 웹 클라이언트가 디지털 병리학 스캐너 벤더 별로 서로 다른 영상 압축 포맷 및 타일 크기를 가지는 WSI를 디지털 병리학 서버로부터 스트리밍 받는 방법에 있어서,
    상기 디지털 병리학 서버로부터 WSI을 획득하는 WSI 획득 단계;를 포함하고,
    상기 WSI 획득 단계는,
    썸 네일 레벨을 포함한 네비게이션 레벨에서 동일한 영역을 보는데 소요되는 시간인 시간 비용이 최소인 정규화된 타일을 정의하고, 베이스 레벨에서 시간 비용이 최소인 정규화된 타일을 정의하는 정규화 타일 정의 단계;
    상기 WSI의 베이스 레벨 타일 및 상기 WSI의 네비게이션 레벨 타일 모두 상기 정규화된 타일로의 최적화 변환이 필요없는 경우인 제 1 경우에 해당하는지, 상기 베이스 레벨 타일은 그대로 사용하고 상기 네비게이션 레벨 타일만을 상기 정규화된 타일로의 최적화 변환이 필요한 경우인 제 2 경우에 해당하는지, 상기 베이스 레벨 타일 및 상기 네비게이션 레벨 타일 모두 상기 정규화된 타일로의 최적화 변환이 필요한 경우인 제 3 경우에 해당하는지를 판단하는 비교 판단 단계; 및
    상기 제 1 경우인 때에는, 상기 WSI의 베이스 레벨 타일 및 상기 WSI의 네비게이션 레벨 타일 모두 상기 정규화된 타일로의 최적화 변환을 하지 않고, 상기 제 2 경우인 때에는, 상기 베이스 레벨 타일은 그대로 사용하고 상기 네비게이션 레벨 타일만을 상기 정규화된 타일로의 최적화 변환을 실행하고, 상기 제 3 경우인 때에는, 상기 베이스 레벨 타일 및 상기 네비게이션 레벨 타일 모두 상기 정규화된 타일로의 최적화 변환을 실행하는 변환 단계;를 포함하는,
    WSI 스트리밍 방법.
  2. 제 1 항에 있어서,
    상기 시간 비용은, (Basic Service Response Time + Tile Load Time + Tile Transfer Time)×(Tile 숫자)에 비례하는,
    WSI 스트리밍 방법.
  3. 제 2 항에 있어서,
    상기 WSI 획득 단계 이후에,
    상기 획득된 WSI를 JPEG으로 트랜스코딩(transcoding)을 하고, 블록 서치 및 로드(Block search and load)를 하고, JPEG 이미지 블록 트랜스퍼(JPEG image Block Transfer)를 하고, JPEG 디코딩(Decoding)을 하고, 블록 업데이트 및 디스플레이(Block Update and Display)를 하는 단계를 포함하는,
    WSI 스트리밍 방법.
  4. 제 3 항에 있어서,
    상기 블록은 상기 정규화된 타일을 나타내는,
    WSI 스트리밍 방법.
  5. 제 4 항에 있어서,
    상기 웹 클라이언트는 제 1 영역 캐시 버퍼를 포함하고, 상기 디지털 병리학 서버는 제 2 영역 캐시 버퍼 및 로우 캐시 버퍼(Raw cache buffer)를 포함하여,
    상기 웹 클라이언트의 사용자가 보고 있는 영역인 view region에 인접한 타일들의 정보를 상기 제 1 영역 캐시 버퍼에서 버퍼링하는 단계;
    상기 웹 클라이언트의 사용자가 보고 있는 영역인 view region에 인접한 타일들의 정보를 상기 제 2 영역 캐시 버퍼에서 버퍼링하는 단계; 및
    상기 로우 캐시 버퍼는 적중률에 기초하여, 상기 적중률이 높은 타일의 순서대로 버퍼링하는 단계;를 포함하는,
    WSI 스트리밍 방법.
  6. 제 5 항에 있어서,
    상기 제 1 영역 캐시 버퍼는 상기 제 2 영역 캐시 버퍼로부터 백그라운드 로딩을 하는 단계;를 더 포함하는,
    WSI 스트리밍 방법.
  7. 제 6 항에 있어서,
    상기 적중률은, 타일에 대한 열람 요청 빈도나, 최근 접근 시간 총량, 최근의 단위 시간 당 얼마나 자주 해당 타일을 요청한 것인지 정보에 기초하여 계산한 값인,
    WSI 스트리밍 방법.
  8. 제 7 항에 있어서,
    상기 로우 캐시 버퍼는 상기 제 2 영역 캐시 버퍼와 동일한 타일에 대한 정보를 버퍼링하고 있는 경우에는, 해당 동일한 정보를 저장하지 않고 해당 정보를 가지고 있는 상기 제 2 영역 캐시 버퍼의 인덱스만 가지고 있는,
    WSI 스트리밍 방법.
  9. 제 8 항에 있어서,
    상기 웹 클라이언트는 현재 뷰 크기에서 다운 샘플링(down sampling) 가능한 최소의 레벨을 계산하는 단계;
    상기 계산된 최소의 레벨에 기초하여 상기 웹 클라이언트는 뷰 영역과 겹쳐진 모든 타일의 목록을 생성하여, 생성된 상기 타일의 목록 중 i번째 타일 이미지를 상기 디지털 병리학 서버에 요청하는 단계; 및
    상기 디지털 병리학 서버는 i번째 타일 이미지를 상기 웹 클라이언트로 반환하는 단계;를 더 포함하고,
    여기서는 i는 1부터 상기 모든 타일 목록의 개수인 n까지의 자연수인,
    WSI 스트리밍 방법.
KR1020170102076A 2017-08-11 2017-08-11 Wsi 스트리밍 방법 KR101830583B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020170102076A KR101830583B1 (ko) 2017-08-11 2017-08-11 Wsi 스트리밍 방법
US15/685,675 US10438375B2 (en) 2017-08-11 2017-08-24 WSI streaming method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170102076A KR101830583B1 (ko) 2017-08-11 2017-08-11 Wsi 스트리밍 방법

Publications (1)

Publication Number Publication Date
KR101830583B1 true KR101830583B1 (ko) 2018-02-20

Family

ID=61394664

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170102076A KR101830583B1 (ko) 2017-08-11 2017-08-11 Wsi 스트리밍 방법

Country Status (2)

Country Link
US (1) US10438375B2 (ko)
KR (1) KR101830583B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220089004A (ko) 2020-12-21 2022-06-28 주식회사 인피니트헬스케어 다이콤 서비스 기반 디지털 병리 스캐닝 방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022544705A (ja) * 2019-08-23 2022-10-20 メモリアル スローン ケタリング キャンサー センター ユニバーサルスライドビューア

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015521913A (ja) 2012-06-27 2015-08-03 キャンプレックス インコーポレイテッド 手術可視化システム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4937457B2 (ja) * 2001-03-01 2012-05-23 オリンパス株式会社 顕微鏡制御装置、顕微鏡制御システム、顕微鏡の制御方法、プログラム、及び記録媒体
KR101559798B1 (ko) 2009-12-22 2015-10-13 엘지전자 주식회사 디지털 병리학의 이미지 표준화 방법
US8611620B2 (en) * 2010-07-01 2013-12-17 Ardia Medical Products Ltd. Advanced digital pathology and provisions for remote diagnostics
WO2012065151A1 (en) * 2010-11-14 2012-05-18 University Of Utah Research Foundation Ultrasonic method and system for determining tissue pathology
AU2012245628B2 (en) * 2011-04-18 2016-09-22 Diamir, Llc Methods of using miRNA from bodily fluids for early detection and monitoring of Mild Cognitive Impairment (MCI) and Alzheimer's Disease (AD)
JP5705096B2 (ja) * 2011-12-02 2015-04-22 キヤノン株式会社 画像処理装置及び画像処理方法
US10049450B2 (en) * 2015-12-03 2018-08-14 Case Western Reserve University High-throughput adaptive sampling for whole-slide histopathology image analysis
KR101849458B1 (ko) * 2016-07-11 2018-04-17 주식회사 인피니트헬스케어 디지털 병리 시스템의 영상 압축 방법
US10489633B2 (en) * 2016-09-27 2019-11-26 Sectra Ab Viewers and related methods, systems and circuits with patch gallery user interfaces

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015521913A (ja) 2012-06-27 2015-08-03 キャンプレックス インコーポレイテッド 手術可視化システム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Jodogne, Sébastien, et al. "Open Implementation of DICOM for Whole-Slide Microscopic Imaging." VISIGRAPP (6: VISAPP). 2017.(2017.03.01.)
Storage, Breast Projection X-Ray Image, and S. O. P. Class. "Digital Imaging and Communications in Medicine (DICOM)." Breast 165: 8.,(2010.08.24.)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220089004A (ko) 2020-12-21 2022-06-28 주식회사 인피니트헬스케어 다이콤 서비스 기반 디지털 병리 스캐닝 방법

Also Published As

Publication number Publication date
US20190051018A1 (en) 2019-02-14
US10438375B2 (en) 2019-10-08

Similar Documents

Publication Publication Date Title
US9723036B2 (en) Viewing digital slides
US8140708B2 (en) System and method for the serving of extended bit depth high resolution images
AU2010202800B2 (en) Cache system and method for generating uncached objects from cached and stored object components
US20090044128A1 (en) Adaptive publishing of content
US8432413B2 (en) System and method for the display of extended bit depth high resolution images
US20110169860A1 (en) Information Display Device
US20120039547A1 (en) Variable resolution images
US20090006978A1 (en) Adaptive artwork for bandwidth- and/or memory- limited devices
US20120089901A1 (en) High performance cross platform document viewing
WO2020233483A1 (zh) 视频编码方法和视频解码方法
KR101830583B1 (ko) Wsi 스트리밍 방법
US9754350B2 (en) Systems and methods of automatic image sizing
US20030105880A1 (en) Distributed processing, storage, and transmision of multimedia information
US10757346B1 (en) Systems and methods for video extraction and insertion
US6211881B1 (en) Image format conversion with transparency color adjustment
US9153208B2 (en) Systems and methods for image data management
CN108184097B (zh) 一种远程医疗中图像的实时查看方法
EP2317424A1 (en) Information display device
US7800629B2 (en) Image processing apparatus and method for preventing degradation of image quality when bit format of image is converted
CN107450860A (zh) 一种基于分布式存储的地图文件预读方法
WO2019136858A1 (zh) 一种图片生成的方法、装置及计算机设备
CN113961844B (zh) 彩色dicom图像的显示方法、用户设备及介质
Kim et al. MPEG-DASH SRD based 360 VR tiled streaming system for foveated rendering
US20230022878A1 (en) Cache-based warp engine
JP3590534B2 (ja) 表示用画像データ生成装置および記録媒体

Legal Events

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