KR102567428B1 - Method and apparatus for providing a user interface that controls volume rendering transfer function for material of interest and boundary enhancement - Google Patents
Method and apparatus for providing a user interface that controls volume rendering transfer function for material of interest and boundary enhancement Download PDFInfo
- Publication number
- KR102567428B1 KR102567428B1 KR1020200179596A KR20200179596A KR102567428B1 KR 102567428 B1 KR102567428 B1 KR 102567428B1 KR 1020200179596 A KR1020200179596 A KR 1020200179596A KR 20200179596 A KR20200179596 A KR 20200179596A KR 102567428 B1 KR102567428 B1 KR 102567428B1
- Authority
- KR
- South Korea
- Prior art keywords
- histogram
- clustering
- volume data
- user interface
- user
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/08—Volume rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/40—Image enhancement or restoration by the use of histogram techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/24—Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
Abstract
관심 물질 및 경계면 강조를 위한 전이 함수를 제어하는 사용자 인터페이스 제공 방법 및 장치가 개시된다. 일 실시예에 따른 사용자 인터페이스 제공 방법은 불륨 데이터의 물질들의 영역이 구분되어 표현된 군집화 히스토그램을 포함하는 사용자 인터페이스 화면을 제공하는 동작; 상기 사용자 인터페이스 화면 상에서 상기 군집화 히스토그램에 대한 사용자의 입력을 수신하는 동작; 및 상기 사용자의 입력에 응답하여 상기 볼륨 데이터의 물질 및 물질 간의 경계 중 하나 이상에 대해서 시각적 특성을 다르게 부여하여 상기 볼륨 데이터를 렌더링한 시각화 이미지를 출력하는 동작을 포함할 수 있다.A method and apparatus for providing a user interface for controlling a material of interest and a transition function for boundary enhancement are disclosed. A method of providing a user interface according to an embodiment includes providing a user interface screen including a clustering histogram in which regions of substances of volume data are divided and expressed; receiving a user's input for the clustering histogram on the user interface screen; and outputting a visualization image obtained by rendering the volume data by differently assigning visual characteristics to at least one of materials of the volume data and boundaries between materials in response to the user's input.
Description
아래 개시는 관심 물질 및 경계면 강조를 위한 전이 함수를 제어하는 사용자 인터페이스 제공 방법 및 장치에 관한 것이다.The disclosure below relates to a method and apparatus for providing a user interface for controlling a material of interest and a transition function for boundary enhancement.
볼륨 데이터는 2차원 공간 상에서 값이 정의되어 있는 2차원 이미지를 수직으로 쌓아 3차원으로 만든 데이터이다. 볼륨 데이터는 3차원 공간 상에서 값이 정의되어 있는 데이터로서, 예로는 CT나 MRI 영상과 같은 의료 영상 등이 있다.Volume data is data made into three dimensions by vertically stacking two-dimensional images in which values are defined in a two-dimensional space. Volume data is data whose values are defined in a 3D space, and examples include medical images such as CT and MRI images.
전통적으로 컴퓨터 그래픽스 분야에서 사용되는 꼭지점, 변, 면 정보로 구성된 메쉬 데이터와는 달리, 볼륨 데이터는 3차원의 격자 형태로 이루어져 있고 각 격자에는 스칼라 값이 저장되어 있다. 이러한 격자는 볼륨과 픽셀을 합한 단어인 복셀이라 칭한다. 일반적으로 볼륨 데이터의 절단면을 앞, 뒤로 이동시키는 방식으로 볼륨 데이터를 탐색하며, 컴퓨터 그래픽스 기술의 발달로 볼륨 렌더링이라는 시각화 방법을 통해 3차원적인 구조를 한눈에 살펴볼 수 있게 되었다.Unlike mesh data composed of vertex, edge, and face information traditionally used in the field of computer graphics, volume data is composed of a three-dimensional lattice form, and scalar values are stored in each lattice. Such a lattice is called a voxel, a combination of volume and pixel. In general, volume data is explored by moving the cutting plane of the volume data forward and backward, and with the development of computer graphics technology, a visualization method called volume rendering has made it possible to examine the 3-dimensional structure at a glance.
볼륨 렌더링은 볼륨 데이터를 시각화하기 위해 3차원 데이터인 볼륨 데이터를 2차원 이미지로 투사(또는 투영)시키는 것을 의미한다. 볼륨 렌더링은 간접 볼륨 렌더링(indirect volume rendering) 및 직접 볼륨 렌더링(direct volume rendering) 두 종류로 분류할 수 있다.Volume rendering means projecting (or projecting) volume data, which is 3D data, into a 2D image in order to visualize the volume data. Volume rendering can be classified into two types: indirect volume rendering and direct volume rendering.
간접 볼륨 렌더링은 볼륨 데이터로부터 표면을 도출하여 그 표면을 렌더링하는 방식이다. 직접 볼륨 렌더링은 표면의 추출 없이 볼륨 데이터를 곧바로 렌더링하는 방식이다. 직접 볼륨 렌더링은 간접 볼륨 렌더링에 비해 구현이 까다롭지만, 볼륨 데이터의 특성을 효과적으로 시각화 할 수 있다. 직접 볼륨 렌더링은 3차원인 볼륨 데이터의 스칼라 값으로부터 이미지를 만들기 때문에 메쉬 데이터를 이용하여 이미지를 생성하는 기하 렌더링 기법과는 다르게 사용자가 반영하고자 하는 물체의 특정 내부 정보를 최종 시각 렌더링 결과에 반영할 수 있다.Indirect volume rendering is a method of deriving a surface from volume data and rendering the surface. Direct volume rendering is a method of directly rendering volume data without surface extraction. Direct volume rendering is more difficult to implement than indirect volume rendering, but it can effectively visualize the characteristics of volume data. Since direct volume rendering creates an image from scalar values of three-dimensional volume data, unlike geometric rendering techniques that create images using mesh data, specific internal information of an object that the user wants to reflect can be reflected in the final visual rendering result. can
레이 캐스팅(ray casting)은 직접 볼륨 렌더링 방법 중 하나로, 각 픽셀마다 볼륨을 향해 레이(광선)를 쏘아, 광선이 지나가는 복셀의 값에 따라 사용자가 정의한 전이 함수를 통해 색상과 투명값(예: 투명도)을 계산하여 픽셀 값으로 표현한다.Ray casting is one of the direct volume rendering methods. Rays (rays) are fired toward the volume for each pixel, and color and transparency values (eg transparency ) is calculated and expressed as a pixel value.
전이 함수는 복셀의 특징에 따라 색 및/또는 투명도와 같은 광학 성질을 부여하는 함수를 말한다. 이미지의 스칼라 값 만을 사용하는 1차원 전이 함수나 이미지의 스칼라 값과 그라디언트 값을 사용하는 2차원 전이 함수를 주로 사용한다. 이러한 기본적인 전이 함수는 원하는 이미지를 만들기까지 시행착오가 많이 필요하기 때문에 많은 사람들이 효율적인 전이 함수를 만드는데 노력해 왔다. The transition function refers to a function that gives optical properties such as color and/or transparency according to characteristics of a voxel. A one-dimensional transfer function using only the image scalar value or a two-dimensional transfer function using the image scalar value and gradient value is mainly used. Since these basic transition functions require a lot of trial and error to create a desired image, many people have tried to create an efficient transition function.
실시예들은 볼륨 데이터의 물질 정보를 추출하여 사용자가 관심 있는 물질에 특성을 손쉽게 부여할 수 있는 전이 함수를 제어하는 기술을 제공할 수 있다.Embodiments may provide a technique for controlling a transition function by which a user can easily assign characteristics to a material of interest by extracting material information from volume data.
다만, 기술적 과제는 상술한 기술적 과제들로 한정되는 것은 아니며, 또 다른 기술적 과제들이 존재할 수 있다.However, the technical challenges are not limited to the above-described technical challenges, and other technical challenges may exist.
일 실시예에 따른 사용자 인터페이스 제공 방법은 불륨 데이터의 물질들의 영역이 구분되어 표현된 군집화 히스토그램을 포함하는 사용자 인터페이스 화면을 제공하는 동작; 상기 사용자 인터페이스 화면 상에서 상기 군집화 히스토그램에 대한 사용자의 입력을 수신하는 동작; 및 상기 사용자의 입력에 응답하여 상기 볼륨 데이터의 물질 및 물질 간의 경계 중 하나 이상에 대해서 시각적 특성을 다르게 부여하여 상기 볼륨 데이터를 렌더링한 시각화 이미지를 출력하는 동작을 포함할 수 있다.A method of providing a user interface according to an embodiment includes providing a user interface screen including a clustering histogram in which regions of substances of volume data are divided and expressed; receiving a user's input for the clustering histogram on the user interface screen; and outputting a visualization image obtained by rendering the volume data by differently assigning visual characteristics to at least one of materials of the volume data and boundaries between materials in response to the user's input.
상기 시각화 이미지는 상기 사용자 인터페이스 화면 상에 디스플레이될 수 있다.The visualization image may be displayed on the user interface screen.
상기 제공하는 동작은, 상기 볼륨 데이터의 히스토그램을 생성하는 동작; 상기 히스토그램 상에서 물질을 나타내는 중심점들을 물질별로 추출하는 동작; 상기 히스토그램 상에서 물질별로 영역을 구분하여 물질 그룹 정보를 생성하는 동작; 및 중심점들에 대한 중심점 정보 및 상기 물질 그룹 정보에 기초하여 상기 히스토그램을 군집화하는 동작을 포함할 수 있다.The providing may include generating a histogram of the volume data; extracting center points representing substances on the histogram for each substance; generating material group information by dividing regions for each material on the histogram; and clustering the histogram based on center point information about center points and the material group information.
상기 볼륨 데이터의 히스토그램은 LH 히스토그램일 수 있다.The histogram of the volume data may be an LH histogram.
상기 추출하는 동작과 상기 물질 그룹 정보를 생성하는 동작은 병렬적으로 수행되는 것일 수 있다.The extraction operation and the operation of generating the material group information may be performed in parallel.
상기 출력하는 동작은, 상기 사용자의 입력에 따른 명령을 구분하는 동작; 상기 명령에 따라 상기 군집화 히스토그램에 대한 히스토그램 군집화 정보를 수정하는 동작; 수정된 히스토그램 군집화 정보에 기초하여 상기 볼륨 데이터의 복셀들을 군집화하여 복셀 군집화 정보를 생성하는 동작; 및 상기 볼륨 데이터 및 상기 복셀 군집화 정보에 기초하여 렌더링을 수행하는 동작을 포함할 수 있다.The outputting may include: distinguishing a command according to the user's input; modifying histogram clustering information for the clustering histogram according to the command; generating voxel clustering information by clustering voxels of the volume data based on the modified histogram clustering information; and performing rendering based on the volume data and the voxel clustering information.
상기 렌더링은 직접 볼륨 렌더링일 수 있다.The rendering may be direct volume rendering.
상기 사용자 인터페이스 화면은 상기 시각적 특성을 제어하는 도구 인터페이스를 포함할 수 있다.The user interface screen may include a tool interface for controlling the visual characteristics.
상기 시각적 특성은 물질의 색, 색 텍스처, 투명도, 및 투명도 텍스처를 포함할 수 있다.The visual characteristics may include material color, color texture, transparency, and transparency texture.
일 실시예에 따른 시각화 장치는 불륨 데이터의 물질들의 영역이 구분되어 표현된 군집화 히스토그램을 포함하는 사용자 인터페이스 화면을 제공하는 그래픽 렌더러; 및 상기 사용자 인터페이스 화면 상에서 상기 군집화 히스토그램에 대한 사용자의 입력을 수신하는 사용자 입력 처리기를 포함하고, 상기 그래픽 렌더러는, 상기 사용자의 입력에 응답하여 상기 볼륨 데이터의 물질 및 물질 간의 경계 중 하나 이상에 대해서 시각적 특성을 다르게 부여하여 상기 볼륨 데이터를 렌더링한 시각화 이미지를 출력할 수 있다.A visualization device according to an embodiment includes a graphic renderer for providing a user interface screen including a clustering histogram in which regions of substances of volume data are divided and expressed; and a user input processor receiving a user's input for the clustering histogram on the user interface screen, wherein the graphic renderer, in response to the user's input, for at least one of substances and boundaries between substances of the volume data A visualized image obtained by rendering the volume data with different visual characteristics may be output.
상기 그래픽 렌더러는, 상기 시각화 이미지를 상기 사용자 인터페이스 화면 상에 디스플레이할 수 있다.The graphic renderer may display the visualization image on the user interface screen.
상기 그래픽 렌더러는, 상기 볼륨 데이터의 히스토그램을 생성하고, 상기 히스토그램 상에서 물질을 나타내는 중심점들을 물질별로 추출하고, 상기 히스토그램 상에서 물질별로 영역을 구분하여 물질 그룹 정보를 생성하고, 중심점들에 대한 중심점 정보 및 상기 물질 그룹 정보에 기초하여 상기 히스토그램을 군집화할 수 있다.The graphic renderer generates a histogram of the volume data, extracts center points representing materials on the histogram for each material, classifies areas for each material on the histogram to generate material group information, and center point information for center points and The histogram may be clustered based on the material group information.
상기 볼륨 데이터의 히스토그램은 LH 히스토그램일 수 있다.The histogram of the volume data may be an LH histogram.
상기 그래픽 렌더러는, 상기 중심점들을 추출하는 동작과 상기 물질 그룹 정보를 생성하는 동작을 병렬적으로 수행할 수 있다.The graphic renderer may perform operations of extracting the center points and generating the material group information in parallel.
상기 사용자 입력 처리기는, 상기 사용자의 입력에 따른 명령을 구분하고, 상기 명령에 따라 상기 군집화 히스토그램에 대한 히스토그램 군집화 정보를 수정하며, 상기 그래픽 렌더러는, 수정된 히스토그램 군집화 정보에 기초하여 상기 볼륨 데이터의 복셀들을 군집화하여 복셀 군집화 정보를 생성하고, 상기 볼륨 데이터 및 상기 복셀 군집화 정보에 기초하여 렌더링을 수행할 수 있다.The user input processor classifies a command according to the user's input, modifies histogram clustering information for the clustering histogram according to the command, and the graphic renderer, based on the corrected histogram clustering information, determines the volume data. Voxels may be clustered to generate voxel clustering information, and rendering may be performed based on the volume data and the voxel clustering information.
상기 렌더링은 직접 볼륨 렌더링일 수 있다.The rendering may be direct volume rendering.
상기 사용자 인터페이스 화면은 상기 시각적 특성을 제어하는 도구 인터페이스를 포함할 수 있다.The user interface screen may include a tool interface for controlling the visual characteristics.
상기 시각적 특성은 물질의 색, 색 텍스처, 투명도, 및 투명도 텍스처를 포함할 수 있다.The visual characteristics may include material color, color texture, transparency, and transparency texture.
도 1은 일 실시예에 따른 데이터 시각화 시스템의 일 예를 나타낸다.
도 2는 도 1에 도시된 시각화 장치의 개략적인 블록도의 일 예를 나타낸다.
도 3은 시각화 장치의 동작을 설명하기 위한 도면이다.
도 4는 시각화 장치가 전이 함수 수정을 위해 제공하는 사용자 인터페이스 화면의 일 예를 나타낸다.
도 5는 군집화 히스토그램의 일 예를 설명하기 위한 도면이다.
도 6은 볼륨 데이터를 전처리하여 히스토그램을 생성하는 동작을 설명하기 위한 도면이다.
도 7은 중심점을 추출하여 중심점 정보를 생성하는 동작을 설명하기 위한 도면이다.
도 8은 물질별로 영역을 구분하여 물질 그룹 정보를 생성하는 동작을 설명하기 위한 도면이다.
도 9는 수정 도구 인터페이스를 통해 전이 함수를 수정하는 예들을 설명하는 도면이다.
도 10은 일 실시예에 따른 시각화 장치의 개략적인 블록도의 다른 예를 나타낸다.1 shows an example of a data visualization system according to an embodiment.
FIG. 2 shows an example of a schematic block diagram of the visualization device shown in FIG. 1 .
3 is a diagram for explaining the operation of the visualization device.
4 illustrates an example of a user interface screen provided by the visualization device to modify a transition function.
5 is a diagram for explaining an example of a clustering histogram.
6 is a diagram for explaining an operation of generating a histogram by pre-processing volume data.
7 is a diagram for explaining an operation of generating center point information by extracting a center point.
8 is a diagram for explaining an operation of generating material group information by dividing an area for each material.
9 is a diagram illustrating examples of modifying a transition function through a modification tool interface.
10 shows another example of a schematic block diagram of a visualization device according to an embodiment.
실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 구현될 수 있다. 따라서, 실제 구현되는 형태는 개시된 특정 실시예로만 한정되는 것이 아니며, 본 명세서의 범위는 실시예들로 설명한 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.Specific structural or functional descriptions of the embodiments are disclosed for illustrative purposes only, and may be changed and implemented in various forms. Therefore, the form actually implemented is not limited only to the specific embodiments disclosed, and the scope of the present specification includes changes, equivalents, or substitutes included in the technical idea described in the embodiments.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.Although terms such as first or second may be used to describe various components, such terms should only be construed for the purpose of distinguishing one component from another. For example, a first element may be termed a second element, and similarly, a second element may be termed a first element.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.It should be understood that when an element is referred to as being “connected” to another element, it may be directly connected or connected to the other element, but other elements may exist in the middle.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Singular expressions include plural expressions unless the context clearly dictates otherwise. In this specification, terms such as "comprise" or "have" are intended to designate that the described feature, number, step, operation, component, part, or combination thereof exists, but one or more other features or numbers, It should be understood that the presence or addition of steps, operations, components, parts, or combinations thereof is not precluded.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with the meaning in the context of the related art, and unless explicitly defined in this specification, it should not be interpreted in an ideal or excessively formal meaning. don't
이하, 실시예들을 첨부된 도면들을 참조하여 상세하게 설명한다. 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고, 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. In the description with reference to the accompanying drawings, the same reference numerals are given to the same components regardless of reference numerals, and overlapping descriptions thereof will be omitted.
도 1은 일 실시예에 따른 데이터 시각화 시스템의 일 예를 나타낸다.1 shows an example of a data visualization system according to an embodiment.
데이터 시각화 시스템(10)은 입력 장치(100), 출력 장치(200), 및 시각화 장치(300)를 포함할 수 있다. 데이터 시각화 시스템(10)은 물체(예: 객체, 대상체)에 대한 불륨 데이터를 렌더링하여 3차원 영상을 디스플레이할 수 있다.The
물체는 영상이 나타내고자 하는 생물 또는 무생물일 수 있다. 물체는 신체의 일부를 의미할 수 있고, 물체에는 신체의 어는 한 단면이 포함될 수 있다. 예를 들어, 물체는 인체의 근육 및 뼈 등을 포함하는 조직, 심장, 간 및 뇌 등을 포함하는 장기를 포함할 수 있으니, 반드시 이에 한정되는 것은 아니다. 볼륨 데이터는 복수의 복셀들로 이루어진 데이터일 수 있다. 물체에 대한 볼륨 데이터는 물체에 대한 공간 정보, 물체 내에 포함된 조직 또는 장기의 해부학적 형태와 같은 임상 정보를 포함할 수 있다. 예를 들어, 물체에 대한 볼륨 데이터는 물체를 향하여 소정의 신호를 조사하고, 조사된 신호가 물체로부터 반사된 신호 또는 투과된 신호로부터 획득된 데이터일 수 있다.The object may be an animate object or an inanimate object to be displayed in the image. An object may refer to a part of a body, and an object may include any cross-section of the body. For example, the object may include tissues including muscles and bones of the human body, and organs including heart, liver, and brain, but is not necessarily limited thereto. Volume data may be data composed of a plurality of voxels. Volume data of an object may include spatial information about the object and clinical information such as the anatomical shape of a tissue or organ included in the object. For example, the volume data of an object may be data obtained from a signal transmitted by irradiating a predetermined signal toward the object and reflecting the irradiated signal from the object.
입력 장치(100)는 사용자의 입력(예: 중심점 수정, 물질 그룹 수정, 물질(물질 그룹) 시각화 및 물질 특성 수정)을 수신하고, 사용자의 입력을 시각화 장치(300)로 전달할 수 있다. 입력 장치(100)는 사용자의 입력을 수신할 수 있는 하나 이상의 입력 인터페이스 장치를 포함할 수 있다. 예를 들어, 입력 인터페이스 장치는 키보드, 마우스, 트랙볼, 키패드, 터치 패널, 터치 스크린, 조그 스위치, 음성 인식 센서, 제스처 인식 센서, 깊이 센서, 및 거리 센서 등을 포함할 수 있다.The
출력 장치(200)는 시각화 장치(300)에 의해서 생성된 시각 정보(예: 사용자 인터페이스 화면)를 제공(예: 디스플레이)할 수 있다. 출력 장치(200)는 디스플레이를 포함할 수 있다.The
시각화 장치(300)는 볼륨 데이터의 데이터 속성(예: 스칼라 값 및 그래디언트 크기)에서 광학 속성(예: 색상, 투명도)으로의 매핑 관계를 정의하는 전이 함수를 제어(예: 수정, 변경)하는 사용자 인터페이스 화면(예: 도 4의 사용자 인터페이스 화면)을 사용자에게 제공할 수 있다. 사용자 인터페이스 화면은 볼륨 데이터의 물질들의 영역이 구분되어 표현된 군집화 히스토그램(예: 도 4의 제1 화면에 디스플레이된 군집화 히스토그램, 도 5의 군집화 히스토그램)을 포함할 수 있다. 사용자는 출력 장치(200)로 디스플레이되는 사용자 인터페이스 화면을 이용하여 입력 장치(100)를 통해 전이 함수를 제어하기 위한 사용자 입력을 시각화 장치(300)로 전달할 수 있다.The
시각화 장치(300)는 볼륨 데이터를 렌더링하여 시각화 이미지(예: 2차원 이미지, 3차원 이미지)를 생성할 수 있다. 또한, 시각화 장치(300)는 사용자 입력에 응답하여 볼륨 데이터의 물질 및 물질 간의 경계 중 하나 이상에 대해서 시각적 특성을 다르게 부여하여 볼륨 데이터를 렌더링한 시각화 이미지를 출력할 수도 있다.The
사용자는 시각화 장치(300)에서 제공하는 사용자 인터페이스 화면으로 전이 함수를 수정함으로써 볼륨 데이터를 렌더링한 시각화 이미지에서 사용자가 관심 있는 물질이나 물질 간 경계를 강조할 수 있다.A user may emphasize a material of interest to the user or a boundary between materials in a visualization image in which volume data is rendered by modifying a transition function with a user interface screen provided by the
도 2는 도 1에 도시된 시각화 장치의 개략적인 블록도의 일 예를 나타내고, 도 3은 시각화 장치의 동작을 설명하기 위한 도면이고, 도 4는 시각화 장치가 전이 함수 수정을 위해 제공하는 사용자 인터페이스 화면의 일 예를 나타내고, 도 5는 군집화 히스토그램의 일 예를 설명하기 위한 도면이다.2 shows an example of a schematic block diagram of the visualization device shown in FIG. 1, FIG. 3 is a diagram for explaining the operation of the visualization device, and FIG. 4 is a user interface provided by the visualization device to modify the transfer function. An example of a screen is shown, and FIG. 5 is a diagram for explaining an example of a clustering histogram.
시각화 장치(300)는 데이터 스토리지(310), 사용자 입력 처리기(330), 복셀 군집화 계산기(350), 및 그래픽 처리기(370)를 포함할 수 있다.The
데이터 스토리지(310)는 사용자가 시각화 할 볼륨 데이터를 저장할 수 있다. 볼륨 데이터는 2차원 공간 상에서 값이 정의되어 있는 2차원 이미지를 수직으로 쌓아 3차원으로 만든 데이터일 수 있다. 볼륨 데이터는 복셀들을 포함할 수 있다. 또한, 데이터 스토리지(310)는 히스토그램 군집화 정보(예: 히스토그램, 그룹 배열 정보, 물질 특성 정보)를 저장할 수 있다. 히스토그램 군집화 정보는 볼륨 데이터의 히스토그램에 대해 군집화(예: 히스토그램 군집화)가 수행되어 생성된 결과를 포함할 수 있다.The
사용자 입력 처리기(330)는 사용자의 입력에 따른 명령을 구분하고, 명령에 따라 데이터 스토리지(310)에 저장된 히스토그램 군집화 정보(예: 그룹 배열 정보, 물질 특성 정보)를 수정할 수 있다. 명령은 중심점 수정, 물질 그룹 수정, 물질(물질 그룹) 시각화 및 물질 특성 수정 중에서 하나 이상을 포함할 수 있다.The
복셀 군집화 계산기(350)는 데이터 스토리지(310)로부터 볼륨 데이터를 수신하고(예: 로딩), 볼륨 데이터를 전처리할 수 있다. 복셀 군집화 계산기(350)는 볼륨 데이터를 전처리하여 볼륨 데이터의 히스토그램을 생성할 수 있다. 히스토그램은 LH 히스토그램으로, 2차원 히스토그램일 수 있다.The
복셀 군집화 계산기(350)는 히스토그램 상에서 물질을 나타내는 중심점들을 물질별로 추출하여 중심점 정보를 생성할 수 있다. 복셀 군집화 계산기(350)는 히스토그램의 극대 값(예: 특정 L과 특정 H 값을 갖는 복셀의 개수)을 갖는 점들을 중심점들로 추출하고, 추출된 중심점들의 주변 부분을 포함하는 영역을 물질(예: 동일 물질) 및 경계(예: 경계면)로 삼을 수 있다. 중심점은 물질 그룹 등의 수정을 위한 사용자 인터랙션을 위한 것일 수 있다.The
복셀 군집화 계산기(350)는 히스토그램 상에서 물질별로 영역을 구분하여 물질 그룹 정보를 생성할 수 있다. 복셀 군집화 계산기(350)는 히스토그램 상에서 임의의 한 점(예: 특정 L과 특정 H 값을 갖는 임의의 점)을 중심으로 주변 점들을 따라 영역을 확장시켜 이어져 있는 점들을 그룹화할 수 있다.The
복셀 군집화 계산기(350)는 중심점 정보 생성 동작과 물질 그룹 생성 동작을 병렬적으로 수행할 수 있다.The
복셀 군집화 계산기(350)는 중심점 정보 및 물질 그룹 정보에 기초하여 히스토그램에 대해 군집화(예: 히스토그램 군집화)를 수행할 수 있다. 복셀 군집화 계산기(350)는 군집화를 수행한 결과인 히스토그램 군집화 정보를 데이터 스토리지(310) 및 그래픽 렌더러(370)로 출력할 수 있다. 군집화는 물질별로 추출한 중심점(들)에 물질별로 생성한 물질 그룹 정보를 할당(또는 부여)하는 것일 수 있다.The
히스토그램 군집화 정보는 데이터 스토리지(310)에 저장될 수 있다. 히스토그램 군집화 정보는 히스토그램, 중심점 정보, 물질 그룹 정보, 및 그룹 배열 정보 중에서 하나 이상을 포함할 수 있다. 그룹 배열 정보는 중심점 정보 및 물질 그룹 정보가 반영된 정보로서, 어느 물질 그룹에 어느 중심점들이 포함되어 있는지를 나타내는 정보일 수 있다. 히스토그램 군집화 정보는 물질의 특성(예: 투명도, 색깔(색상))을 나타내는 물질 특성 정보를 더 포함할 수 있다.Histogram clustering information may be stored in the
복셀 군집화 계산기(350)는 사용자의 입력에 응답하여 데이터 스토리지(310)에 수정된 히스토그램 군집화 정보로 볼륨 데이터의 복셀들을 군집하여 복셀 군집화 정보를 생성할 수 있다.The
그래픽 렌더러(370)는 히스토그램 군집화 정보를 수신할 수 있다. 그래픽 렌더러(370)는 중심점 정보 및 물질 그룹 정보에 기초하여 추출된 중심점들(예: 물질과 경계면 점들)을 기준으로 히스토그램을 군집화하여 히스토그램에 물질별로 영역이 구분되고 구분된 영역에 중심점들이 할당된 군집화 히스토그램을 생성할 수 있다. 군집화 히스토그램은 히스토그램 상에 물질별로 영역이 구분되어 표현되고, 구분된 영역에 중심점들이 표현된 것일 수 있다. 군집화 히스토그램은 도 5에 도시된 히스토그램과 같을 수 있다.The
그래픽 렌더러(370)는 군집화 히스토그램을 포함하는 사용자 인터페이스 화면을 생성할 수 있다. 그래픽 렌더러(370)는 사용자 인터페이스 화면을 출력 장치(200)로 출력할 수 있다.The
그래픽 렌더러(370)는 볼륨 데이터와 복셀 군집화 정보에 기초하여 렌더링(예: 직접 볼륨 렌더링)을 수행하여 시각화 이미지를 출력할 수 있다. 시각화 이미지는 사용자 인터페이스 화면의 제3 화면에 디스플레이될 수 있다. 시각화 이미지는 사용자가 수정 도구 인터페이스를 통해 입력한 사용자 입력에 따라 수정된 전이 함수가 볼륨 데이터에 반영되어 렌더링된 것일 수 있다.The
도 4는 출력 장치(200)를 통해 사용자에게 제공되는 사용자 인터페이스 화면을 나타내는 것일 수 있다. 사용자 인터페이스 화면은 군집화 히스토그램이 디스플레이되는 제1 화면(예: 부 화면) 및 전이함수를 수정할 수 있는 수정 도구 인터페이스가 디스플레이되는 제2 화면(예: 수정 도구 화면), 및 볼륨 데이터가 렌더링된 시각화 이미지가 디스플레이되는 제3 화면(예: 주 화면)을 포함할 수 있다. 사용자 인터페이스 화면은 볼륨 데이터가 렌더링되기 전까지는 제1 화면과 제2 화면으로 구성되어 디스플레이될 수 있다.4 may represent a user interface screen provided to the user through the
사용자는 사용자 인터페이스 화면에서 수정 도구 인터페이스를 이용하여 전이 함수를 수정할 수 있다. 수정 도구 인터페이스를 통해 전이 함수를 수정하는 것은 중심점, 물질 그룹, 및 물질의 특성을 수정하여 물질 및 물질 간의 경계 중 하나 이상에 대해서 시각적 특성을 다르게 부여하는 것을 포함할 수 있다. 사용자는 볼륨 데이터를 렌더링한 시각화 이미지에서 사용자가 관심 있는 물질이나 물질 간 경계의 시각적 특성을 다르게 부여하여 강조할 수 있다.The user can modify the transition function using the edit tool interface on the user interface screen. Modifying the transition function through the modification tool interface may include giving different visual characteristics to one or more of materials and boundaries between materials by modifying properties of a center point, a material group, and a material. The user can emphasize by assigning different visual characteristics of the material or the boundary between the materials that the user is interested in in the visualization image in which the volume data is rendered.
사용자 인터페이스 화면에서 수정 도구 인터페이스는 중심점 수정 기능(예: 중심점의 위치 이동, 중심점 추가/삭제), 물질 그룹 수정 기능(예: 물질 그룹의 추가(add), 분할(split), 병합(merge), 해제), 물질 시각화 기능(예: 물질 그룹을 시각화하거나 시각화하지 않음), 및 물질 특성 수정 기능(예: 물질의 특성 부여(지정))을 포함할 수 있다. 중심점 수정 기능은 해당 중심점을 포함하는 물질 그룹을 수정하기 위한 것으로, 물질 그룹의 영역 범위(예: 모양, 넓이 등) 등을 변경할 수 있다. 물질 특성 수정 기능을 통해 전이 함수에 부여할 수 있는 물질의 특성은 색, 색 텍스처, 투명도, 투명도 텍스처 등을 포함할 수 있다. 사용자가 입력하기 편하게 하기 위해 대표 색과 색 텍스쳐, 대표 투명도와 투명도 텍스쳐를 선택할 수 있다.In the user interface screen, the edit tool interface includes functions for modifying center points (e.g. move the position of center points, add/delete center points), modify functions for material groups (e.g. add, split, merge, release), material visualization capabilities (eg, visualize or not visualize a group of substances), and material property modification capabilities (eg, assign (assign) the properties of a substance). The center point modification function is for modifying the material group including the corresponding center point, and the area range (eg shape, width, etc.) of the material group can be changed. Material properties that can be assigned to the transition function through the material property modification function may include color, color texture, transparency, transparency texture, and the like. In order to make input easier for the user, representative colors and color textures, representative transparency and transparency textures can be selected.
도 6은 볼륨 데이터를 전처리하여 히스토그램을 생성하는 동작을 설명하기 위한 도면이다.6 is a diagram for explaining an operation of generating a histogram by pre-processing volume data.
복셀 군집화 계산기(350)는 각 복셀 위치에서 L 값 및 H값을 찾은 후 동일한 [L, H] 좌표로 복셀을 누적하여 LH 히스토그램을 생성할 수 있다. LH 히스토그램은 축이 L(예: FL) 및 H(예: FH)에 해당하는 2D 히스토그램일 수 있다. L축은 x축을 의미하고, H축은 y축을 의미할 수 있다. LH 히스토그램의 영역은 볼륨 데이터의 스팬 공간(Span Space)의 영역과 동일할 수 있다. 볼륨 데이터의 모든 복셀은 물질 내부 또는 두 물질 사이의 경계(예: 경계면)에 있을 수 있다. 각 복셀은 L값 및 H값을 가질 수 있다. 복셀이 물질의 내부에 있는 경우는 L값과 H값 모두 복셀의 intensity 값을 동일하게 갖고, 경계를 이루는 두 물질의 경우는 두 물질의 복셀 값(예: intensity) 중 높은 값을 H값으로, 낮은 값을 L값으로로 정의할 수 있다.The
도 6의 (a)에 도시된 바와 같이, 경계를 이루는 두 물질의 경우에는 기울기(gradient)를 따라 양쪽(예: FL 및 FH)으로 수렴할 때까지 이동하다 보면 물질들에 다다르게 될 수 있다. 도 6의 (b)에서는 볼륨 데이터의 히스토그램을 보여주는데, 배경, 흰색, 연회색, 진회색의 4가지 물질이 있으며, 이는 L값과 H값이 같으므로 대각선의 네 점에 분포하게 되는 것을 확인할 수 있다. 이물질들의 경계는 두 물질의 intensity에 따라 L, H 값이 정해져 히스토그램이 도6의 (b)와 같이 생성될 수 있다. 뼈나 장기와 같은 볼륨 데이터의 물질은 히스토그램의 대각선에 점으로 나타나고, 경계면은 대각선 위의 점으로 위치하게 될 수 있다.As shown in (a) of FIG. 6, in the case of two materials forming a boundary, moving until convergence to both sides (eg, F L and F H ) along the gradient can lead to the materials. there is. In (b) of FIG. 6, the histogram of the volume data is shown. There are four materials: background, white, light gray, and dark gray, and since the L value and H value are the same, it can be seen that they are distributed at four points on the diagonal. The boundary of the foreign substances is determined by the L and H values according to the intensities of the two substances, and a histogram can be generated as shown in (b) of FIG. Materials of volume data, such as bones or organs, appear as points on the diagonal of the histogram, and the boundary can be located as a point on the diagonal.
도 7은 중심점을 추출하여 중심점 정보를 생성하는 동작을 설명하기 위한 도면이다.7 is a diagram for explaining an operation of generating center point information by extracting a center point.
복셀 군집화 계산기(350)는 무게 중심 기반 알고리즘(예: K-means clustering, Mean shift clustering)을 통해 중심점들을 추출할 수 있다. 복셀 군집화 계산기(350)는 일정 간격을 두고 격자 형태로 임의의 점들을 히스토그램 내부에 고르게 분포시킨 뒤, 히스토그램의 극대 값을 향하여 임의의 방향으로 이동하는 동작을 반복할 수 있다. 복셀 군집화 계산기(350)는 일정 거리 이항의 점들을 하나의 점으로 합치고 더 이상 이동하지 않을 때까지 반복하면 최종 중심점을 찾을 수 있다.The
도 8은 물질별로 영역을 구분하여 물질 그룹 정보를 생성하는 동작을 설명하기 위한 도면이다.8 is a diagram for explaining an operation of generating material group information by dividing an area for each material.
복셀 군집화 계산기(350)는 밀도 기반의 알고리즘(예: DBSCAN(Density-based spatial clustering of application with noise))을 통해 물질별로 영역을 분리할 수 있다. 복셀 군집화 계산기(350)는 우선 임의의 한 점을 중심으로 일정 거리 떨어진 점들의 수를 계산하고, 계산된 수가 충분히 많을 경우(예: 밀도가 큰 경우) 하나의 그룹으로 그룹화할 수 있다. 복셀 군집화 계산기(350)는 그룹화되어 추가된 다른 점들에 대해서도 상술한 동작을 반복하면 일정 밀도 이상의 점들을 하나의 그룹으로 그룹화할 수 있다. 복셀 군집화 계산기(350)는 히스토그램 상의 모든 점들에 대해서 상술한 동작을 반복하여 히스토그램 상에서 물질별로 모든 그룹을 찾을 수 있다.The
도 9는 수정 도구 인터페이스를 통해 전이 함수를 수정하는 예들을 설명하는 도면이다.9 is a diagram illustrating examples of modifying a transition function through a modification tool interface.
사용자는 사용자 인터페이스 화면에서 수정 도구 인터페이스를 통해 전이 함수를 수정하기 위한 사용자 입력을 입력할 수 있다.A user may input a user input for modifying the transition function through a correction tool interface on the user interface screen.
사용자는 중심점 수정 기능(예: 중심점 추가(Add point)을 통해 물질을 추가할 수 있다. 시각화 장치(300)는 중심점 수정에 응답하여 자주색 아래에 연보라색의 물질을 추가하여 손의 볼륨 데이터의 혈관 부분을 추가로 시각화할 수 있다.The user can add a material through a center point correction function (eg, Add point). The
사용자는 물질 시각화 기능(예: 물질 시각화(Show class))을 통해 원하는 물질을 시각화 할 수 있다. 시각화 장치(300)는 물질 시각화에 응답하여 노란색 물질을 시각화하여 피부(일부)에 해당되는 물질임을 확인시킬 수 있다.A user can visualize a desired material through a material visualization function (eg, material visualization (Show class)). The
사용자는 물질 그룹 수정 기능(예: 그룹 분할(Split group)을 통해 물질을 세분화할 수 있다. 시각화 장치(300)는 세 개의 중심점(예: 도 5 참조)을 기준으로 기존 물질 그릅을 세개로 세분화할 수 있다.The user may subdivide the material through a material group modification function (eg, split group). The
사용자는 볼륨 데이터를 물질별로 시각적인 특징을 다르게 부여할 수 있으며, 시각화 장치(300)는 이를 통해 3차원 볼륨 데이터의 특징을 빠르고 직관적으로 제공할 수 있게 된다. 실시예들은 물질 정보를 제공하기 때문에 사용자가 원하는 물질을 시각화하는데 도움을 줄 수 있다. 해당 분야에 사전 지식이 없는 비전문가들까지 직접 전이함수를 수정해가며 3차원 데이터의 정보를 탐색할 수 있게 한다.The user may assign different visual characteristics to the volume data for each material, and the
도 1 내지 도 9를 참조하여 상술한 바와 같이, 실시예들의 히스토그램은 볼륨 데이터의 물질과 경계를 표현하는 LH 히스토그램으로, 뼈나 장기와 같은 볼륨 데이터의 물질은 히스토그램의 대각선에 점으로 나타나고, 경계면은 대각선 위의 점으로 위치하게 될 수 있다. 물질과 경계면 점들을 중심점으로 잡아 히스토그램을 군집화하면 같은 물질, 같은 경계면끼리 분리할 수 있어, 실시예들은 이를 통해 사용자가 물질과 경계면의 시각적인 특징을 부여할 수 있는 전이 함수를 수정할 수 있다.As described above with reference to FIGS. 1 to 9, the histogram of the embodiments is an LH histogram representing the material and the boundary of the volume data, and the material of the volume data, such as bones or organs, appears as a dot on the diagonal of the histogram, and the boundary is It can be located as a point on the diagonal. By clustering the histogram by taking the material and interface points as center points, it is possible to separate the same material and the same interface, and through this, the user can modify the transition function to give the visual characteristics of the material and the interface.
도 10은 일 실시예에 따른 시각화 장치의 개략적인 블록도의 다른 예를 나타낸다.10 shows another example of a schematic block diagram of a visualization device according to an embodiment.
시각화 장치(1000)는 도 1 내지 도 9을 참조하여 설명한 시각화 장치(30)와 실질적으로 동일할 수 있다. 시각화 장치(1000)는 제1 메모리(1010), 제2 메모리(1030), 프로세서(1050), 및 이미지 프로세서(1070)를 포함할 수 있다.The
제1 메모리(1010)는 프로세서(1050, 1070)에 의해 실행가능한 인스트럭션들(또는 프로그램)을 저장할 수 있다. 예를 들어, 인스트럭션들은 프로세서(1050, 1070)의 동작 및/또는 프로세서(1050, 1070)의 각 구성의 동작을 실행하기 위한 인스트럭션들을 포함할 수 있다.The
제2 메모리(1030)는 도 1 내지 도 9의 데이터 스토리지(310)와 실질적으로 동일할 수 있다. 도 10에서는 제2 메모리(1030)가 제1 메모리(1010)와 구별되는 별도의 메모리로 구현된 것으로 도시하고 있지만, 이에 반드시 한정되는 것은 아니며, 제2 메모리(1030)는 제1 메모리(1010)와 동일한 메모리로 구현될 수도 있다.The
프로세서(1050, 1070)는 제1 메모리(1010)에 저장된 데이터를 처리할 수 있다. 프로세서(1050, 1070)는 제1 메모리(1010)에 저장된 컴퓨터로 읽을 수 있는 코드(예를 들어, 소프트웨어) 및 프로세서(1050, 1070)에 의해 유발된 인스트럭션(instruction)들을 실행할 수 있다.The
프로세서(1050)는 목적하는 동작들(desired operations)을 실행시키기 위한 물리적인 구조를 갖는 회로를 가지는 하드웨어로 구현된 데이터 처리 장치일 수 있다. 예를 들어, 목적하는 동작들은 프로그램에 포함된 코드(code) 또는 인스트럭션들(instructions)을 포함할 수 있다.The
예를 들어, 하드웨어로 구현된 데이터 처리 장치는 마이크로프로세서(microprocessor), 중앙 처리 장치(central processing unit), 프로세서 코어(processor core), 멀티-코어 프로세서(multi-core processor), 멀티프로세서(multiprocessor), ASIC(Application-Specific Integrated Circuit), FPGA(Field Programmable Gate Array)를 포함할 수 있다.For example, a data processing unit implemented in hardware includes a microprocessor, a central processing unit, a processor core, a multi-core processor, and a multiprocessor. , Application-Specific Integrated Circuit (ASIC), and Field Programmable Gate Array (FPGA).
프로세서(1050)에 의해 수행되는 동작은 도 1 내지 도 9를 참조하여 설명한 사용자 입력 처리기(330)의 동작과 실질적으로 동일하다. 일 예로, 도 1 내지 도 9를 참조하여 설명한 사용자 입력 처리기(330)는 프로세서(1050)에 의해서 실행될 수 있다. 이에, 상세한 설명은 생략하도록 한다.An operation performed by the
이미지 프로세서(1070)는 목적하는 동작들(desired operations)을 실행시키기 위한 물리적인 구조를 갖는 회로를 가지는 하드웨어로 구현된 데이터 처리 장치일 수 있다. 예를 들어, 목적하는 동작들은 프로그램에 포함된 코드(code) 또는 인스트럭션들(instructions)을 포함할 수 있다.The
이미지 프로세서(1070)는 GPU(graphic processing unit)일 수 있다. 이미지 프로세서(1070)에 의해 수행되는 동작은 도 1 내지 도 9를 참조하여 설명한 복셀 군집화 계산기(350) 및 그래픽 렌더러(370)의 동작과 실질적으로 동일하다. 일 예로, 도 1 내지 도 9를 참조하여 설명한 복셀 군집화 계산기(350) 및 그래픽 렌더러(370)는 이미지 프로세서(1070)에 의해서 실행될 수 있다. 이에, 상세한 설명은 생략하도록 한다.The
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The embodiments described above may be implemented as hardware components, software components, and/or a combination of hardware components and software components. For example, the devices, methods and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate (FPGA). array), programmable logic units (PLUs), microprocessors, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and software applications running on the operating system. A processing device may also access, store, manipulate, process, and generate data in response to execution of software. For convenience of understanding, there are cases in which one processing device is used, but those skilled in the art will understand that the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that it can include. For example, a processing device may include a plurality of processors or a processor and a controller. Other processing configurations are also possible, such as parallel processors.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.Software may include a computer program, code, instructions, or a combination of one or more of the foregoing, which configures a processing device to operate as desired or processes independently or collectively. You can command the device. Software and/or data may be any tangible machine, component, physical device, virtual equipment, computer storage medium or device, intended to be interpreted by or provide instructions or data to a processing device. , or may be permanently or temporarily embodied in a transmitted signal wave. Software may be distributed on networked computer systems and stored or executed in a distributed manner. Software and data may be stored on computer readable media.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 저장할 수 있으며 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer readable medium. A computer readable medium may store program instructions, data files, data structures, etc. alone or in combination, and program instructions recorded on the medium may be specially designed and configured for the embodiment or may be known and usable to those skilled in the art of computer software. there is. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. - includes hardware devices specially configured to store and execute program instructions, such as magneto-optical media, and ROM, RAM, flash memory, and the like. Examples of program instructions include high-level language codes that can be executed by a computer using an interpreter, as well as machine language codes such as those produced by a compiler.
위에서 설명한 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 또는 복수의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The hardware device described above may be configured to operate as one or a plurality of software modules to perform the operations of the embodiments, and vice versa.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 이를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described with limited drawings, those skilled in the art can apply various technical modifications and variations based on this. For example, the described techniques may be performed in an order different from the method described, and/or components of the described system, structure, device, circuit, etc. may be combined or combined in a different form than the method described, or other components may be used. Or even if it is replaced or substituted by equivalents, appropriate results can be achieved.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents of the claims are within the scope of the following claims.
Claims (19)
상기 사용자 인터페이스 화면 상에서 상기 군집화 히스토그램에 대한 사용자의 입력을 수신하는 동작; 및
상기 사용자의 입력에 응답하여 상기 볼륨 데이터의 물질 및 물질 간의 경계 중 하나 이상에 대해서 시각적 특성을 다르게 부여하여 상기 볼륨 데이터를 렌더링한 시각화 이미지를 출력하는 동작
을 포함하고,
상기 제공하는 동작은,
상기 볼륨 데이터의 히스토그램을 생성하는 동작;
상기 히스토그램 상에서 물질을 나타내는 중심점들을 물질별로 추출하는 동작;
상기 히스토그램 상에서 물질별로 영역을 구분하여 물질 그룹 정보를 생성하는 동작; 및
중심점들에 대한 중심점 정보 및 상기 물질 그룹 정보에 기초하여 상기 히스토그램을 군집화하는 동작
을 포함하고,
상기 군집화 히스토그램은 상기 볼륨 데이터의 복셀을 군집화하기 위한 것인,
사용자 인터페이스 제공 방법.
providing a user interface screen including a clustering histogram in which regions of materials of the volume data are divided and expressed;
receiving a user's input for the clustering histogram on the user interface screen; and
Outputting a visualization image obtained by rendering the volume data by giving different visual characteristics to at least one of materials of the volume data and boundaries between materials in response to the user's input.
including,
The provided operation is
generating a histogram of the volume data;
extracting center points representing substances on the histogram for each substance;
generating material group information by classifying regions for each material on the histogram; and
Clustering the histogram based on center point information about center points and the material group information
including,
The clustering histogram is for clustering voxels of the volume data.
How to present the user interface.
상기 시각화 이미지는 상기 사용자 인터페이스 화면 상에 디스플레이되는, 사용자 인터페이스 제공 방법.
According to claim 1,
The visualization image is displayed on the user interface screen, the user interface providing method.
상기 볼륨 데이터의 히스토그램은 LH 히스토그램인, 사용자 인터페이스 제공 방법.
According to claim 1,
The histogram of the volume data is an LH histogram, a user interface providing method.
상기 추출하는 동작과 상기 물질 그룹 정보를 생성하는 동작은 병렬적으로 수행되는 것인, 사용자 인터페이스 제공 방법.
According to claim 1,
The method of providing a user interface, wherein the extraction operation and the operation of generating the material group information are performed in parallel.
상기 출력하는 동작은,
상기 사용자의 입력에 따른 명령을 구분하는 동작;
상기 명령에 따라 상기 군집화 히스토그램에 대한 히스토그램 군집화 정보를 수정하는 동작;
수정된 히스토그램 군집화 정보에 기초하여 상기 볼륨 데이터의 복셀들을 군집화하여 복셀 군집화 정보를 생성하는 동작; 및
상기 볼륨 데이터 및 상기 복셀 군집화 정보에 기초하여 렌더링을 수행하는 동작
을 포함하는, 사용자 인터페이스 제공 방법.
According to claim 1,
The outputting operation is
distinguishing a command according to the user's input;
modifying histogram clustering information for the clustering histogram according to the command;
generating voxel clustering information by clustering voxels of the volume data based on the modified histogram clustering information; and
Performing rendering based on the volume data and the voxel clustering information
Including, a user interface providing method.
상기 렌더링은 직접 볼륨 렌더링인, 사용자 인터페이스 제공 방법.
According to claim 6,
The method of providing a user interface, wherein the rendering is direct volume rendering.
상기 사용자 인터페이스 화면은 상기 시각적 특성을 제어하는 도구 인터페이스를 포함하는, 사용자 인터페이스 제공 방법.
According to claim 1,
The user interface screen includes a tool interface for controlling the visual characteristics.
상기 시각적 특성은,
물질의 색, 색 텍스처, 투명도, 및 투명도 텍스처를 포함하는, 사용자 인터페이스 제공 방법.
According to claim 1,
The visual characteristics are
A method for providing a user interface, including material color, color texture, transparency, and transparency texture.
A computer program stored in a computer readable recording medium to be combined with hardware to execute the method of any one of claims 1, 2, and 4 to 9.
상기 사용자 인터페이스 화면 상에서 상기 군집화 히스토그램에 대한 사용자의 입력을 수신하는 사용자 입력 처리기
를 포함하고,
상기 그래픽 렌더러는,
상기 볼륨 데이터의 히스토그램을 생성하고, 상기 히스토그램 상에서 물질을 나타내는 중심점들을 물질별로 추출하고, 상기 히스토그램 상에서 물질별로 영역을 구분하여 물질 그룹 정보를 생성하고, 중심점들에 대한 중심점 정보 및 상기 물질 그룹 정보에 기초하여 상기 히스토그램을 군집화하고,
상기 사용자의 입력에 응답하여 상기 볼륨 데이터의 물질 및 물질 간의 경계 중 하나 이상에 대해서 시각적 특성을 다르게 부여하여 상기 볼륨 데이터를 렌더링한 시각화 이미지를 출력하고,
상기 군집화 히스토그램은 상기 볼륨 데이터의 복셀을 군집화하기 위한 것인,
시각화 장치.
a graphic renderer that provides a user interface screen including a clustering histogram in which regions of substances of volume data are divided and expressed; and
A user input processor receiving a user's input for the clustering histogram on the user interface screen
including,
The graphic renderer,
A histogram of the volume data is generated, center points representing materials are extracted for each material on the histogram, material group information is generated by dividing an area for each material on the histogram, and center point information for center points and the material group information are generated. clustering the histogram based on;
In response to the user's input, visual characteristics are differently assigned to at least one of materials of the volume data and boundaries between materials to output a visualization image obtained by rendering the volume data;
The clustering histogram is for clustering voxels of the volume data.
visualization device.
상기 그래픽 렌더러는,
상기 시각화 이미지를 상기 사용자 인터페이스 화면 상에 디스플레이하는, 시각화 장치.
According to claim 11,
The graphic renderer,
A visualization device that displays the visualization image on the user interface screen.
상기 볼륨 데이터의 히스토그램은 LH 히스토그램인, 시각화 장치.
According to claim 11,
The histogram of the volume data is an LH histogram, the visualization device.
상기 그래픽 렌더러는,
상기 중심점들을 추출하는 동작과 상기 물질 그룹 정보를 생성하는 동작을 병렬적으로 수행하는, 시각화 장치.
According to claim 11,
The graphic renderer,
A visualization device that performs an operation of extracting the center points and an operation of generating the material group information in parallel.
상기 사용자 입력 처리기는,
상기 사용자의 입력에 따른 명령을 구분하고, 상기 명령에 따라 상기 군집화 히스토그램에 대한 히스토그램 군집화 정보를 수정하며,
상기 그래픽 렌더러는,
수정된 히스토그램 군집화 정보에 기초하여 상기 볼륨 데이터의 복셀들을 군집화하여 복셀 군집화 정보를 생성하고, 상기 볼륨 데이터 및 상기 복셀 군집화 정보에 기초하여 렌더링을 수행하는, 시각화 장치.
According to claim 11,
The user input processor,
Classifying a command according to the user's input, modifying histogram clustering information for the clustering histogram according to the command,
The graphic renderer,
The visualization device, which generates voxel clustering information by clustering voxels of the volume data based on modified histogram clustering information, and performs rendering based on the volume data and the voxel clustering information.
상기 렌더링은 직접 볼륨 렌더링인, 시각화 장치.
According to claim 16,
The rendering is a direct volume rendering, the visualization device.
상기 사용자 인터페이스 화면은 상기 시각적 특성을 제어하는 도구 인터페이스를 포함하는, 시각화 장치.
According to claim 11,
The user interface screen includes a tool interface for controlling the visual characteristics, the visualization device.
상기 시각적 특성은,
물질의 색, 색 텍스처, 투명도, 및 투명도 텍스처를 포함하는, 시각화 장치.According to claim 11,
The visual characteristics are
A visualization device, including a material's color, color texture, transparency, and transparency texture.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200179596A KR102567428B1 (en) | 2020-12-21 | 2020-12-21 | Method and apparatus for providing a user interface that controls volume rendering transfer function for material of interest and boundary enhancement |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200179596A KR102567428B1 (en) | 2020-12-21 | 2020-12-21 | Method and apparatus for providing a user interface that controls volume rendering transfer function for material of interest and boundary enhancement |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220089189A KR20220089189A (en) | 2022-06-28 |
KR102567428B1 true KR102567428B1 (en) | 2023-08-17 |
Family
ID=82268690
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200179596A KR102567428B1 (en) | 2020-12-21 | 2020-12-21 | Method and apparatus for providing a user interface that controls volume rendering transfer function for material of interest and boundary enhancement |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102567428B1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013537445A (en) * | 2010-07-26 | 2013-10-03 | ケイジャヤ、エルエルシー | Visualization adapted for direct use by physicians |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100419999B1 (en) * | 2001-04-26 | 2004-03-02 | 주식회사 인피니트테크놀로지 | Method for providing a graphic user interface for a volume rendering image |
KR102104534B1 (en) * | 2013-06-12 | 2020-04-27 | 삼성전자주식회사 | X-ray imaging apparatus and x-ray imaging apparatus control method |
-
2020
- 2020-12-21 KR KR1020200179596A patent/KR102567428B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013537445A (en) * | 2010-07-26 | 2013-10-03 | ケイジャヤ、エルエルシー | Visualization adapted for direct use by physicians |
Also Published As
Publication number | Publication date |
---|---|
KR20220089189A (en) | 2022-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11100683B2 (en) | Image color adjustment method and system | |
US7529396B2 (en) | Method, computer program product, and apparatus for designating region of interest | |
JP7324268B2 (en) | Systems and methods for real-time rendering of complex data | |
EP3545500B1 (en) | System and method for rendering complex data in a virtual reality or augmented reality environment | |
US20080107318A1 (en) | Object Centric Data Reformation With Application To Rib Visualization | |
US9830735B2 (en) | Medical image processing device and image processing method | |
US9224236B2 (en) | Interactive changing of the depiction of an object displayed using volume rendering | |
JP6560745B2 (en) | Visualizing volumetric images of anatomy | |
EP4033451A1 (en) | Interactive image editing using signed distance fields | |
Tan et al. | An approach for pulmonary vascular extraction from chest CT images | |
US20130135306A1 (en) | Method and device for efficiently editing a three-dimensional volume using ray casting | |
EP2960870B1 (en) | A visualization method for a human skeleton from a medical scan | |
AU2019431568B2 (en) | Method and product for processing of vrds 4d medical images | |
KR102567428B1 (en) | Method and apparatus for providing a user interface that controls volume rendering transfer function for material of interest and boundary enhancement | |
Ruikar et al. | A systematic review of 3D imaging in biomedical applications | |
EP3493159B1 (en) | Method and system for evaluation of tumor tissue by unfolding morphological and texture properties | |
AU2019430258B2 (en) | VRDS 4D medical image-based tumor and blood vessel ai processing method and product | |
Kumar et al. | 3D reconstruction of facial structures from 2D images for cosmetic surgery | |
Adeshina et al. | CAHECA: computer aided hepatocellular carcinoma therapy planning | |
KR102479703B1 (en) | 3D morphological or anatomical landmark detection method and apparatus by multi-stage deep reinforcement learning | |
US20230115322A1 (en) | Incision simulation device, incision simulation method, and program | |
AU2019430854B2 (en) | VRDS 4D medical image-based artery and vein Ai processing method and product | |
EP4322111A1 (en) | Volumetric peeling method for monte carlo path tracing | |
JP2022155215A (en) | Incision simulation device, incision simulation method and program | |
Cheng et al. | A flexible Java GPU-enhanced visualization framework and its applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right |