KR20180136707A - Apparatus and method for volume rendering - Google Patents

Apparatus and method for volume rendering Download PDF

Info

Publication number
KR20180136707A
KR20180136707A KR1020170075788A KR20170075788A KR20180136707A KR 20180136707 A KR20180136707 A KR 20180136707A KR 1020170075788 A KR1020170075788 A KR 1020170075788A KR 20170075788 A KR20170075788 A KR 20170075788A KR 20180136707 A KR20180136707 A KR 20180136707A
Authority
KR
South Korea
Prior art keywords
voxel
voxels
feature
volume rendering
volume
Prior art date
Application number
KR1020170075788A
Other languages
Korean (ko)
Other versions
KR102012828B1 (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 KR1020170075788A priority Critical patent/KR102012828B1/en
Publication of KR20180136707A publication Critical patent/KR20180136707A/en
Application granted granted Critical
Publication of KR102012828B1 publication Critical patent/KR102012828B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/08Volume rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)

Abstract

According to an embodiment of the present invention, a volume rendering method performed in a volume rendering device for a three-dimensional object dividable into a plurality of parts, includes: a first step of obtaining a plurality of two-dimensional images obtained by photographing the object; a second step of restoring a three-dimensional image of the object from the two-dimensional images and dividing the three-dimensional image into N voxels (N is a natural number equal to or greater than 2); a third step of representing the object in an approximate way by using a plurality of sparse codes and a plurality of feature filters representing features of the object; and a fourth step of classifying whether each of the voxels belongs to which part based on the feature filters and the scarce codes. The present invention allows a user to observe the detail of an object in close proximity to the fact.

Description

볼륨 렌더링 장치 및 방법 {APPARATUS AND METHOD FOR VOLUME RENDERING}[0001] APPARATUS AND METHOD FOR VOLUME RENDERING [0002]

본 발명은 볼륨 렌더링(volume rendering)을 수행함에 있어서, 렌더링의 대상이 되는 객체가 포함하는 각 복셀(voxel)을 분류하는 과정을 정확하면서도 효율적으로 수행하기 위한 장치 및 방법에 관한 것이다. The present invention relates to an apparatus and method for accurately and efficiently performing a process of classifying voxels included in an object to be rendered in performing volume rendering.

볼륨 렌더링이란, 렌더링의 대상이 되는 객체를 촬영한 복수의 2차원 영상을 이용하여, 상기 객체를 특정 방향에서 바라본다고 가정할 경우에 상기 객체가 보이는 모습을 3차원적으로 복원하기 위한 기술이다. 이와 같은 볼륨 렌더링 기술은 자연과학과 응용과학의 다양한 분야에서 그 중요성이 증대되고 있다. 특히 최근에는, 컴퓨터 단층 촬영(computer tomography, CT) 등을 통해 얻은 2차원 영상으로부터 대상 객체의 3차원적인 형상을 실제에 가깝도록 복원하여 관찰할 필요가 있는 의학 분야에서 주목받고 있다.Volume rendering is a technique for three-dimensionally restoring the appearance of the object when it is assumed that the object is viewed from a specific direction by using a plurality of two-dimensional images of an object to be rendered. Such volume rendering techniques are becoming increasingly important in various fields of natural and applied sciences. In recent years, attention has been paid to a medical field in which it is necessary to reconstruct a three-dimensional shape of a target object from a two-dimensional image obtained through a computer tomography (CT) or the like so as to be close to an actual one.

도 1은 볼륨 렌더링에 대해 개념적으로 설명하기 위한 도면이다. 도 1을 참조하면, 볼륨 렌더링의 대상이 되는 객체의 서로 다른 단면을 각각 촬영한 복수의 2차원 영상(11)을 이용하여, 객체를 특정 방향에서 바라볼 경우에 보이게 되는 결과 영상(12)을 생성할 수 있다.1 is a diagram for conceptually illustrating volume rendering. Referring to FIG. 1, a plurality of two-dimensional images 11, each of which photographs different cross-sections of objects to be subjected to volume rendering, are used to obtain a result image 12 that is visible when an object is viewed from a specific direction Can be generated.

이와 같은 볼륨 렌더링은, 대상 객체 표면의 시각적 정보만을 고려하는 일반적인 렌더링 과정과 달리, 기본적으로 객체를 구성하는 모든 복셀(voxel)이 객체의 시각적 표현에 고려된다는 특징을 갖는다. 예컨대, 상기 객체 표면에 정의된 임의의 영역을 시각적으로 표현할 경우, 객체에 포함된 복셀들 중 상기 임의의 영역을 바라보는 시선의 연장선상에 있는 모든 복셀들의 시각적 특성(예컨대, 색상 혹은 투명도 등)이 종합적으로 고려되어 상기 임의의 영역의 시각적 특성이 결정된다. 이러한 과정을 통해, 입체감과 질감 등이 표현되어 사실에 가깝게 묘사된 객체의 3차원적 영상이 획득될 수 있다.This volume rendering is characterized in that all the voxels constituting the object are considered in the visual representation of the object, unlike a general rendering process that considers only the visual information of the object surface. For example, when an arbitrary region defined on the object surface is visually represented, the visual characteristics (e.g., color or transparency) of all the voxels on the extension line of the line of sight of the arbitrary region among the voxels included in the object, The visual characteristics of the arbitrary region are determined. Through this process, a three-dimensional image of an object depicted in close proximity to a real object can be obtained by expressing three-dimensional feeling and texture.

또한, 상기 대상 객체는 복수의 부분(도 1의 예시에 따르면 잎, 줄기, 화분 등)으로 구획될 수 있는데, 상기 부분 중 사용자가 보고자 하는 특정 부분을 제외한 나머지 부분에 속하는 복셀을 볼륨 렌더링 과정에서 투명하게 설정할 수 있다. 그러면 사용자는 상기 보고자 하는 특정 부분만을 나머지 부분의 방해 없이 상세히 관찰할 수 있다.In addition, the target object may be divided into a plurality of parts (leaves, stems, pollen, etc. according to the example of FIG. 1). In the volume rendering process, a voxel belonging to the remaining part, Can be set to transparent. Then, the user can observe only the specific portion to be viewed in detail without disturbing the remaining portions.

이와 같은 볼륨 렌더링을 통해 대상 객체의 전부 혹은 일부를 실감나게 관찰하기 위해서는, 객체에 포함된 각 복셀들이 객체를 구성하는 복수의 부분 중 어느 부분에 속하는지에 따라, 상기 각 복셀들을 분류(classification)할 필요가 있다.In order to realistically observe all or a part of a target object through such volume rendering, it is necessary to classify each of the voxels according to which part of the plurality of parts constituting the object each voxel included in the object There is a need.

상기 분류를 수행하기 위한 방법으로서 지금까지 다양한 방법이 고안되었다. 그 예로서, 2차원 영상으로부터 추출된 각 복셀의 특징 정보에 기초한 확률적 분류 방법, 머신 러닝 기법을 활용한 분류 방법 등을 들 수 있다. 하지만 이러한 종래의 방법들은 잡음(noise)에 취약하며, 복잡한 구조를 갖는 객체에 대해서는 분류의 정확도가 떨어지는 등의 문제를 갖는다.Various methods have been devised so far as a method for performing the classification. For example, a probabilistic classification method based on feature information of each voxel extracted from a two-dimensional image, and a classification method using a machine learning technique. However, these conventional methods are vulnerable to noise, and have a problem that classification accuracy is low for objects having a complicated structure.

특허문헌: 대한민국 공개특허 제 10-2000-0067384호 (2000.11.15. 공개)Patent Document: Korean Patent Publication No. 10-2000-0067384 (published on November 15, 2000)

본 발명이 해결하고자 하는 과제는, 볼륨 렌더링의 대상이 되는 객체가 포함하는 각 복셀을 분류하는 과정을 정확하면서도 효율적으로 수행함으로써, 사용자가 객체에서 원하는 부분을 사실에 가깝도록 상세하게 관찰할 수 있도록 하기 위한 장치 및 방법에 관한 것이다.SUMMARY OF THE INVENTION It is an object of the present invention to provide a method and apparatus for accurately and efficiently performing a process of classifying voxels included in an object as a volume rendering object so that a user can observe a desired portion of the object in detail And more particularly,

다만, 본 발명의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지는 않았으나 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있는 목적을 포함할 수 있다.It is to be understood, however, that the scope of the present invention is not limited to the above-mentioned objects, and may be embodied from the following description, which may be understood by those skilled in the art to which the present invention belongs. have.

본 발명의 일 실시예에 따른, 복수의 부분으로 구획 가능한 3차원 객체에 대하여, 볼륨 렌더링(volume rendering) 장치 상에서 수행되는 볼륨 렌더링 방법은, 상기 객체를 촬영하여 얻어지는 복수의 2차원 영상을 획득하는 제 1 단계, 상기 2차원 영상으로부터 상기 객체의 3차원 영상을 복원하고, 상기 3차원 영상을 N(N은 2 이상의 자연수)개의 복셀(voxel)로 분할하는 제 2 단계, 상기 객체의 특징을 나타내는 복수의 특징 필터(filter) 및 복수의 희소 코드(sparse code)를 이용하여 상기 객체를 근사적으로 표현하는 제 3 단계 및 상기 특징 필터 및 상기 희소 코드에 기초하여, 상기 복셀 각각이 상기 복수의 부분 중 어떤 부분에 속하는지 분류하는 제 4 단계를 포함할 수 있다.According to an embodiment of the present invention, a volume rendering method performed on a volume rendering device for a plurality of segmentable three-dimensional objects includes acquiring a plurality of two-dimensional images obtained by photographing the object A second step of reconstructing a three-dimensional image of the object from the two-dimensional image, and dividing the three-dimensional image into N (N is a natural number of 2 or more) voxels; A third step of approximately expressing the object using a plurality of feature filters and a plurality of sparse codes; and a third step of, based on the feature filter and the sparse code, And a fourth step of classifying which portion belongs.

또한, 상기 방법은, 상기 복셀 중에서, 상기 복수의 부분 중 사용자로부터의 입력에 기초하여 선택된 부분 혹은 출력될 부분으로서 기 정해진 부분에 속한 복셀만을 시각적으로 출력하는 제 5 단계를 더 포함할 수 있다.The method may further include a fifth step of visually outputting only the voxel belonging to the predetermined portion or the predetermined portion as the portion to be output based on the input from the user among the plurality of portions in the voxel.

또한, 상기 특징 필터의 개수 및 상기 희소 코드의 개수를 각각 K라 할 때, 상기 제 3 단계는, 상기 특징 필터 중 k(k는 0 이상 K 미만의 정수)번째 특징 필터와 상기 희소 코드 중 k번째 희소 코드 간의 컨볼루션(convolution) 연산을 수행하여 얻어지는 반응 맵(response map)을 각 k에 대해 각 k에 대해 구하는 단계 및 상기 각 k에 대한 반응 맵을 모두 더한 결과와, 상기 객체 간의 차이가 최소가 되도록, 상기 특징 필터 및 상기 희소 코드를 산출하는 단계를 포함할 수 있다.In addition, when the number of the feature filters and the number of the rare codes are K, the third step is characterized in that k (k is an integer of 0 or more and less than K) feature filter among the feature filters and k (K) for each k and a response map for each k, and a result obtained by adding all of the reaction maps to k And calculating the feature filter and the sparse code so that the feature filter is minimized.

또한, 상기 제 4 단계는, 상기 복셀 중 소정의 일부 복셀에 대해, 사용자로부터의 입력에 기초하여, 상기 소정의 일부 복셀 각각이 상기 복수의 부분 중 어떤 부분에 속하는지 분류하는 단계 및 상기 소정의 일부 복셀에 대한 분류 결과에 기초하여, 상기 복셀 중 상기 소정의 일부 복셀을 제외한 나머지 복셀 각각을 분류하는 단계를 포함할 수 있다.The fourth step may include classifying, based on an input from a user, for a predetermined portion of the voxels, which portion of the plurality of portions each of the predetermined voxels belongs to, And classifying each of the remaining voxels except for the predetermined part of the voxels based on the result of classification for some voxels.

또한, 상기 제 4 단계는, SVM(support vector machine) 기법, CNN(connected neural network) 기법 및 랜덤 트리(random tree) 기법 중 적어도 하나를 이용하여 상기 복셀 각각을 분류하는 단계를 포함할 수 있다.The fourth step may include classifying each of the voxels using at least one of a support vector machine (SVM) technique, a connected neural network (CNN) technique, and a random tree technique.

또한, 상기 제 3 단계는, 상기 각 k에 대한 반응 맵을 모두 더한 결과의 특징을 나타내는 제 2 특징 필터 및 복수의 제 2 희소 코드를 이용하여, 상기 각 k에 대한 반응 맵을 모두 더한 결과를 근사적으로 표현하는 단계를 더 포함하며, 상기 제 4 단계는, 상기 제 2 특징 필터 및 상기 제 2 희소 코드에 기초하여, 상기 복셀 각각을 분류하는 단계를 포함할 수 있다.In the third step, a result obtained by adding all of the reaction maps for each k using the second feature filter and the plurality of second rare codes showing the feature of the result of addition of the reaction maps for each k And the fourth step may include classifying each of the voxels based on the second feature filter and the second sparse code.

또한, 상기 제 2 특징 필터는, 상기 특징 필터와 다른 크기(dimension)를 갖도록 설정될 수 있다.In addition, the second feature filter may be set to have a different dimension from the feature filter.

또한, 상기 제 4 단계는, 상기 특징 필터 및 상기 희소 코드에 기초하여, 상기 복셀 각각이 상기 복수의 부분 중 어느 한 부분에 속할 확률을 상기 복수의 부분 각각에 대해 산출하는 단계 및 상기 확률에 기초하여 상기 복셀 각각을 분류하는 단계를 포함할 수 있다.The fourth step may further include a step of calculating, based on the feature filter and the rare code, a probability that each of the voxels belongs to one of the plurality of parts for each of the plurality of parts, And classifying each of the voxels.

또한, 상기 방법은, 상기 복셀 각각을 시각적으로 출력하되, 상기 복수의 부분의 개수를 M이라 할 때, 상기 복셀 중 n번째 복셀이 상기 복수의 부분 중 m(m은 0 이상 M 미만의 정수)번째 부분에 속할 경우의 시각적 특성에, 상기 n번째 복셀이 상기 m번째 부분에 속할 확률을 곱한 값을, 각 m에 대하여 모두 구한 결과의 총합이 상기 n번째 복셀의 시각적 특성이 되도록 하는 제 5 단계를 더 포함하며, 상기 시각적 특성은, 색상 및 투명도 중 적어도 하나를 포함할 수 있다.The method may further include the step of visually outputting each of the voxels, wherein when the number of the plurality of sections is M, the nth voxel of the voxel is m (m is an integer of 0 or more and less than M) Of the n-th voxel is the visual characteristic of the n-th voxel, and the sum of the results obtained by multiplying the visual characteristic of the n-th voxel by the probability that the n-th voxel belongs to the m- And the visual characteristic may include at least one of color and transparency.

또한, 상기 복수의 2차원 영상은, 상기 객체의 서로 다른 단면을 촬영함으로써 얻어진 영상일 수 있다.Further, the plurality of two-dimensional images may be images obtained by photographing different cross-sections of the object.

본 발명의 일 실시예에 따른, 복수의 부분으로 구획 가능한 3차원 객체에 대한 볼륨 렌더링(volume rendering)을 수행하기 위한 장치는, 상기 객체를 촬영하여 얻어지는 복수의 2차원 영상을 획득하는 입력부, 상기 2차원 영상으로부터 상기 객체의 3차원 영상을 복원하고, 상기 3차원 영상을 N(N은 2 이상의 자연수)개의 복셀(voxel)로 분할하는 분할 연산부, 상기 객체의 특징을 나타내는 복수의 특징 필터(filter) 및 복수의 희소 코드(sparse code)를 이용하여 상기 객체를 근사적으로 표현하는 사전 학습부 및 상기 특징 필터 및 상기 희소 코드에 기초하여, 상기 복셀 각각이 상기 복수의 부분 중 어떤 부분에 속하는지 분류하는 복셀 분류부를 포함할 수 있다.According to an embodiment of the present invention, an apparatus for performing volume rendering of a three-dimensional object that can be divided into a plurality of parts includes an input unit for acquiring a plurality of two-dimensional images obtained by photographing the object, A division operation unit for reconstructing the three-dimensional image of the object from the two-dimensional image, and dividing the three-dimensional image into N voxels (N is a natural number of 2 or more); a plurality of feature filters A dictionary learning unit for approximating the object using a plurality of sparse codes and a learning unit for determining, based on the feature filter and the sparse code, which part of the plurality of parts each of the voxels belongs to And a voxel classifier for classifying the voxels.

본 발명의 일 실시예에 의하면, 볼륨 렌더링의 대상이 되는 객체가 포함하는 각 복셀을 표현하기 위해 사전 학습(dictionary learning) 기법과 합성곱 희소 코드(convolutional sparse code) 기법을 도입하고, 상기 기법들을 이용하여 산출된 특징 사전 및 희소 코드를 통해 표현되는 각 복셀의 특징에 기초하여 복셀 분류를 수행할 수 있다. 이에 따라, 복잡한 구조를 갖는 객체에 대한 복셀 분류를, 종래 기술에 비해 정확하면서도 효율적으로 수행할 수 있게 된다.According to an embodiment of the present invention, a dictionary learning technique and a convolutional sparse code technique are introduced to express each voxel included in an object to be subjected to volume rendering, The voxel classification can be performed on the basis of the feature of each voxel expressed through the feature dictionary and the rare code calculated using the feature dictionary. Accordingly, it is possible to perform voxel classification for an object having a complicated structure more accurately and efficiently than the prior art.

도 1은 볼륨 렌더링에 대해 개념적으로 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시예에 따른 사전 학습(dictionary learning) 및 합성곱 희소 코딩(convolution sparse coding, CSC)에 대해 개념적으로 설명하기 위한 도면이다.
도 3은 본 발명의 일 실시예에 따른 볼륨 렌더링 장치의 구성을 도시한 도면이다.
도 4는 본 발명의 일 실시예에 따른 볼륨 렌더링 방법의 순서를 도시한 도면이다.
도 5a 및 5b는 본 발명의 일 실시예에 따른 볼륨 렌더링 방법에 대해 구체적으로 설명하기 위한 도면이다.
도 6은 본 발명의 일 실시예에 따른 볼륨 렌더링의 결과를 예시적으로 설명하기 위한 도면이다.
1 is a diagram for conceptually illustrating volume rendering.
2 is a conceptual illustration of dictionary learning and convolutional sparse coding (CSC) according to an embodiment of the present invention.
3 is a diagram illustrating a configuration of a volume rendering apparatus according to an embodiment of the present invention.
4 is a flowchart illustrating a volume rendering method according to an embodiment of the present invention.
5A and 5B are views for explaining a volume rendering method according to an embodiment of the present invention.
FIG. 6 is a diagram for explaining a result of volume rendering according to an embodiment of the present invention.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention and the manner of achieving them will become apparent with reference to the embodiments described in detail below with reference to the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. To fully disclose the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims.

본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear. The following terms are defined in consideration of the functions in the embodiments of the present invention, which may vary depending on the intention of the user, the intention or the custom of the operator. Therefore, the definition should be based on the contents throughout this specification.

도 2는 본 발명의 일 실시예에 따른 사전 학습(dictionary learning) 및 합성곱 희소 코딩(convolution sparse coding, CSC)에 대해 개념적으로 설명하기 위한 도면이다. 도 3 내지 6을 참조하여 본 발명의 일 실시예에 따른 볼륨 렌더링 방법에 대해 설명하기 전에, 도 2를 참조하여 영상의 특징을 나타내는 특징 필터의 집합인 특징 사전 및 희소 코드를 이용하여 영상을 근사적으로 표현하는 합성곱 희소 코딩에 대해 살펴보도록 한다.2 is a conceptual illustration of dictionary learning and convolutional sparse coding (CSC) according to an embodiment of the present invention. 3 to 6, a volume rendering method according to an embodiment of the present invention will be described with reference to FIG. 2, and a feature dictionary and a sparse code, which are a set of feature filters representing features of an image, Let's take a look at the synthesis squared coding,

도 2를 참조하면, 원본 영상(21)은 픽셀 수로 표현되는 소정의 해상도(여기에서는 가로 256픽셀, 세로 256픽셀)를 가질 수 있다. 또한, 원본 영상(21)을 흑백 영상이라 가정할 때, 원본 영상(21)의 각 픽셀의 값(명도)는 정수의 값으로 표현될 수 있다. 예컨대, 각 픽셀의 값은 0(검정)부터 255(흰색)까지의 256가지 값 중 하나로 표현될 수 있다. 이와 같은 원본 영상(21)은 K(K는 자연수)개의 필터(d)와 K개의 희소 코드(sparse code, x)를 이용하여 근사적으로 표현될 수 있다. 2, the original image 21 may have a predetermined resolution (here, 256 pixels in the horizontal direction and 256 pixels in the vertical direction) represented by the number of pixels. Also, assuming that the original image 21 is a monochrome image, the value (brightness) of each pixel of the original image 21 can be expressed by an integer value. For example, the value of each pixel can be represented by one of 256 values from 0 (black) to 255 (white). Such an original image 21 can be approximated by using K (K is a natural number) filters d and K sparse codes (x).

각 필터(d)는 원본 영상(21)의 특징을 표현하는 일종의 이미지로, 일반적으로는 원본 영상(21)에 비해 적은 수의 픽셀(여기에서는 가로 11픽셀, 세로 11픽셀)을 포함할 수 있다. 이와 같은 필터의 집합을 사전(dictionary, 31)이라 정의할 수 있다. 즉, 사전(31)은 원본 영상(21)에 대한 정보의 집합이라 볼 수 있다.Each filter d is an image representing a feature of the original image 21 and may include a smaller number of pixels (here, 11 pixels in the horizontal direction and 11 pixels in the vertical direction) in comparison with the original image 21 . A set of such filters can be defined as a dictionary (31). That is, the dictionary 31 can be regarded as a set of information about the original image 21.

희소 코드(x) 역시 일종의 이미지라 볼 수 있는데, 일반적으로는 원본 영상(21)과 같거나 유사한 수의 픽셀(여기에서는 가로 256픽셀, 세로 256픽셀)을 포함할 수 있다. 희소 코드(x)에서는 대부분의 픽셀의 값이 0이고, 매우 적은 수의 픽셀만이 0이 아닌 값을 갖는다. 즉, 희소 코드(x)에 의하면 영상의 특정 부분을 제외한 모든 부분이 0이 되므로, 이러한 희소 코드(x)를 이용하여 영상의 특정 부분의 특징을 효과적으로 추출하는 것이 가능하다. 또한, 희소 코드(x)의 연산량이 감소될 수 있다는 이점 역시 아울러 갖는다.The sparse code (x) can also be regarded as an image, which may generally include a number of pixels equal to or similar to the original image 21 (256 pixels in this case and 256 pixels in height). In the sparse code (x), the value of most pixels is zero, and only a very small number of pixels have non-zero values. That is, according to the sparse code (x), all parts except the specific part of the image are zero, and it is possible to extract the characteristic of the specific part of the image effectively by using the sparse code (x). It also has the advantage that the amount of computation of the sparse code (x) can be reduced.

전술한 바와 같이 필터(d)와 희소 코드(x)의 개수가 각각 K개라 할 때, k(k는 0 이상 K 미만의 정수)번째 필터(d)와 k번째 희소 코드(x) 간의 합성곱 연산, 즉 컨볼루션(convolution) 연산을 각 k에 대해 수행한 결과를 모두 더하여 얻어진 근사 영상이 원본 영상(21)과 최대한 유사하도록, 즉 근사 영상과 원본 영상(21) 간의 차이가 최소화되도록, K개의 각 필터(d) 및 희소 코드(x)를 정의할 수 있다. 여기서 영상 간의 차이라 함은, 예컨대 차이를 구하고자 하는 두 영상에서 서로 위치가 같은 픽셀 간의 값의 차이를, 모든 픽셀에 대해 더한 값이 될 수 있다.As described above, when the number of the filter (d) and the number of the sparse codes (x) are K, the product product of the kth (k is an integer of not less than 0 and less than K) filter d and the kth rare code (K) so that the approximated image obtained by adding all the results of performing the convolution operation to each k is as close as possible to the original image 21, that is, the difference between the approximated image and the original image 21 is minimized. (D) and the sparse code (x) can be defined. Here, the difference between images may be a value obtained by adding, for example, a difference between values of pixels having the same positions in two images to be searched for all pixels.

이와 같이 원본 영상(21)을 가장 잘 나타낼 수 있는 K개의 각 필터(d) 및 희소 코드(x)는, 다음의 수학식 1을 만족하는 필터(d) 및 희소 코드(x)가 된다. 참고로, K의 값은 사용자로부터의 입력 혹은 볼륨 렌더링 장치(100)가 구현된 시스템의 성능에 기초하여 정해질 수 있다.Thus, each of the K filters d and the sparse code x that can best represent the original image 21 becomes a filter d and a sparse code x that satisfy the following expression (1). For reference, the value of K may be determined based on the input from the user or the performance of the system in which the volume rendering apparatus 100 is implemented.

Figure pat00001
Figure pat00001

상기 수학식 1에서 S는 원본 영상(21)을 나타내고, dk 및 xk는 각각 k번째 필터(d) 및 k번째 희소 코드(x)를 나타내며, α 및 λ는 임의의 상수로서 실험을 통해 최적화된 값이다. 즉, 수학식 1을 만족하는 해로서의 필터(d) 및 희소 코드(x)를 구하는 것은, 원본 영상(21)에 가장 가까운 근사 영상을 구하는 것과 사실상 같은 의미를 갖는다. In Equation (1), S represents the original image 21, d k and x k represent the k-th filter (d) and the k-th rare code (x), respectively. It is an optimized value. That is, obtaining the filter (d) and the sparse code (x) as a solution satisfying the expression (1) has substantially the same meaning as that of obtaining an approximate image closest to the original image (21).

참고로, "min"이라는 기호 및 그 아래의 "d, x"라는 인자는, min 기호 오른쪽의 식이 최소가 되도록 필터(d)와 희소 코드(x)의 값(보다 구체적으로는, 각 dk 및 xk의 값)을 결정한다는 뜻이다. 또한 "s.t"은 "such that"의 약자로, 이는 구해진 해가 "s.t."의 오른쪽에 서술된 조건(수학식 1에서는

Figure pat00002
) 역시 만족하여야 한다는 뜻이다. 이러한 기호 및 인자에 관한 설명은 아래의 다른 수학식들에도 유사하게 적용될 수 있다.For reference, "min" of symbols and is the factor of "d, x" below, min sign to the value of the filter (d) with rare code (x) such that expression is at least on the right side (more specifically, each d k And the value of x k ). The term " st "is an abbreviation of " such that "
Figure pat00002
) Must also be satisfied. The description of these symbols and factors can be applied similarly to the other mathematical formulas below.

전술한 바와 같은 사전 학습 및 합성곱 희소 코드를 이용하여 원본 데이터를 근사하는 기법은, 아래에서 도 3 내지 6을 참조하여 설명할 본 발명의 일 실시예에 따른 볼륨 렌더링 방법에도 적용될 수 있다. 다만 위에서는 2차원 영상을 예로 들어 설명하였으나, 본 발명의 일 실시예에 따른 볼륨 렌더링 방법은 3차원 객체를 그 대상으로 하기 때문에, 특징 사전 및 희소 코드 역시 2차원이 아닌 3차원 데이터로서 표현될 수 있다.The technique of approximating the original data using the pre-learning and synthesized product sparse code as described above can also be applied to the volume rendering method according to an embodiment of the present invention to be described with reference to FIGS. 3 to 6 below. However, since the volume rendering method according to an embodiment of the present invention targets a three-dimensional object, the feature dictionary and the sparse code are also expressed as three-dimensional data instead of two-dimensional data .

도 3은 본 발명의 일 실시예에 따른 볼륨 렌더링 장치의 구성을 도시한 도면이다. 도 3의 볼륨 렌더링 장치(100)는 입력부(110), 분할 연산부(120), 사전 학습부(130), 복셀 분류부(140), 출력부(150) 및 저장부(160)를 포함할 수 있다. 단, 도 3의 볼륨 렌더링 장치(100)는 본 발명의 일 실시예에 불과하므로, 도 3에 의해 본 발명의 사상이 제한 해석되는 것은 아니다.3 is a diagram illustrating a configuration of a volume rendering apparatus according to an embodiment of the present invention. 3 may include an input unit 110, a division unit 120, a pre-learning unit 130, a voxel classifier 140, an output unit 150, and a storage unit 160 have. However, since the volume rendering apparatus 100 of FIG. 3 is only an embodiment of the present invention, the concept of the present invention is not limited to FIG. 3.

입력부(110)는 볼륨 렌더링의 대상이 되는 3차원 객체를 촬영하여 얻어지는 복수의 2차원 영상을 획득할 수 있다. 상기 2차원 영상은 객체의 서로 다른 단면을 촬영함으로써 얻어진 영상일 수 있음은 앞서 설명한 바와 같다. 이와 같은 2차원 영상은 컴퓨터 단층 촬영 장치 혹은 자기 공명 영상(magnetic resonance imaging, MRI) 장치 등을 통해 촬영될 수 있다. The input unit 110 may acquire a plurality of two-dimensional images obtained by photographing a three-dimensional object to be subjected to volume rendering. The two-dimensional image may be an image obtained by photographing different cross-sections of the object as described above. Such a two-dimensional image can be photographed through a computer tomography apparatus or a magnetic resonance imaging (MRI) apparatus.

입력부(110)는 미리 촬영된 2차원 영상을 볼륨 렌더링 장치(100)의 외부로부터 획득할 수 있으며, 이 경우 볼륨 렌더링 장치(100)의 외부와 통신하기 위한 데이터 버스 혹은 통신 모듈 등의 하드웨어 구성을 포함할 수 있다. 이와 달리, 입력부(110)는 컴퓨터 단층 촬영 장치와 같은 영상 촬영 장치를 직접 포함함으로써, 대상 객체를 직접 촬영하여 상기 2차원 영상을 얻을 수도 있다. The input unit 110 can acquire a previously captured two-dimensional image from the outside of the volume rendering apparatus 100. In this case, a hardware configuration such as a data bus or a communication module for communicating with the outside of the volume rendering apparatus 100 . Alternatively, the input unit 110 can directly acquire a two-dimensional image by directly photographing a target object by directly including an image photographing apparatus such as a computer tomography apparatus.

또한, 입력부(110)는 볼륨 렌더링 장치(100)의 사용자로부터의 입력을 수신할 수 있으며, 상기 입력은 객체의 특정 복셀을 선택 및 분류하기 위한 입력, 혹은 객체를 구성하는 부분 중 시각적으로 출력할 특정 부분을 선택하기 위한 입력 등이 될 수 있다. 따라서 입력부(110)는 입력부(110)는 키보드(keyboard), 마우스(mouse), 터치 스크린(touch screen), 터치 패드(touch pad) 등 사용자로부터의 입력을 수신하기 위한 다양한 입력 장치를 포함할 수 있다.The input unit 110 may receive an input from a user of the volume rendering apparatus 100. The input may be an input for selecting and classifying a specific voxel of an object, An input for selecting a specific part, and the like. Accordingly, the input unit 110 may include various input devices for receiving input from a user such as a keyboard, a mouse, a touch screen, and a touch pad. have.

분할 연산부(120)는 입력부(110)를 통해 입력된 2차원 영상으로부터 대상 객체의 3차원 영상을 복원한 후, 상기 3차원 영상을 복수의 복셀(voxel)로 분할할 수 있다. 복셀은 2차원 영상의 픽셀(pixel)에 대응되는 개념으로, 미소(微小)한 체적을 갖는 3차원의 단위 객체이다. 분할 연산부(120)에 의해 생성될 상기 복셀의 크기(체적)는 상기 2차원 영상의 해상도 및 영상 획득을 위한 단면 간의 간격에 따라 정해질 수 있다. 분할 연산부(120)는 그 동작의 특성상 마이크로프로세서(microprocessor)를 포함하는 연산 장치에 의해 구현될 수 있으며, 이는 후술할 사전 학습부(130) 및 복셀 분류부(140)에 대해서도 같다.The division operation unit 120 may reconstruct a three-dimensional image of a target object from the two-dimensional image input through the input unit 110, and then divide the three-dimensional image into a plurality of voxels. A voxel is a concept corresponding to a pixel of a two-dimensional image, and is a three-dimensional unit object having a minute volume. The size (volume) of the voxel to be generated by the division operator 120 may be determined according to the resolution of the two-dimensional image and the interval between the sections for image acquisition. The partitioning unit 120 may be implemented by a computing device including a microprocessor due to the nature of its operation, and this is the same for the pre-learning unit 130 and the voxel classifying unit 140, which will be described later.

사전 학습부(130)는 대상 객체를 근사적으로 표현하기 위한 특징 사전 및 희소 코드를 산출할 수 있다. 특징 사전은 대상 객체의 특징을 나타내는 특징 필터의 집합으로, 객체에 포함된 복셀 모두에 의해 공유될 수 있다. 희소 코드는 각 복셀에 각각의 특징 필터가 기여하는 정도를 나타내는 데이터로서, 기본적으로 대상 객체와 같은 크기(볼륨)를 가질 수 있다. 즉, 3차원적으로 정의된 희소 코드의 각 위치에서의 값은, 객체 내에서 해당 위치와 동일한 위치에 존재하는 복셀에 관한 정보를 나타낼 수 있다. 상기 사전 학습부(130)가 특징 사전 및 희소 코드를 이용하여 객체를 표현하는 구체적인 과정에 대해서는 후술한다.The pre-learning unit 130 can calculate the feature dictionary and the rare code for approximating the target object. A feature dictionary is a collection of feature filters that represent the characteristics of a target object and can be shared by all of the voxels contained in the object. The sparse code is data indicating the degree to which each feature filter contributes to each voxel, and basically it can have the same size (volume) as the target object. That is, the value at each position of the three-dimensionally defined sparse code can represent information about a voxel existing at the same position as the corresponding position in the object. A concrete procedure for the object to be represented by the dictionary learning unit 130 using the feature dictionary and the rare code will be described later.

복셀 분류부(140)는 사전 학습부(130)에 의해 산출된 특징 사전 및 희소 코드에 기초하여, 대상 객체에 포함된 각 복셀이 대상 객체를 이루는 각 부분 중 어떤 부분에 속하는지를 결정할 수 있다. 이와 같은 분류가 수행되고 나면, 상기 부분들 중 특정 부분을 제외한 다른 부분에 속하는 복셀을 투명하게 처리하거나 다소 흐릿하게 처리함으로써 상기 특정 부분만을 선택적으로 관찰하는 것이 가능해진다. 이와 같은 복셀 분류부(140)의 자세한 동작에 대해서는 후술하도록 한다.The voxel classifying unit 140 can determine which part of each part of the target object each voxel included in the target object belongs to, based on the feature dictionary and the rare code calculated by the pre-learning unit 130. [ Once such classification is performed, it becomes possible to selectively observe only the specific portion by processing the voxel belonging to another portion except for a specific portion of the portions transparently or slightly blurred. The detailed operation of the voxel classifying unit 140 will be described later.

출력부(150)는 객체에 대한 볼륨 렌더링의 결과를 출력할 수 있다. 예컨대, 출력부(150)는 상기 객체를 특정 방향에서 바라본다고 가정할 경우에 상기 객체가 보이는 모습을 3차원적으로 표현하여 사용자에게 출력할 수 있다. 또한, 출력부(150)는 객체를 구성하는 복수의 부분 중 사용자가 보고자 하는 부분만을 선택적으로 표현할 수도 있다. 이와 같은 기능의 수행을 위해, 출력부(150)는 프린터(printer), 플로터(plotter), 디스플레이(display), 혹은 볼륨 렌더링 장치(100) 외부로의 데이터 전송을 위한 데이터 버스 등의 인터페이스 등을 포함하도록 구현될 수 있다.The output unit 150 may output the result of the volume rendering for the object. For example, when it is assumed that the object is viewed from a specific direction, the output unit 150 may represent the object in a three-dimensional manner and output it to a user. In addition, the output unit 150 may selectively represent only a portion of a plurality of portions constituting the object that the user wants to view. The output unit 150 may include a printer, a plotter, a display, an interface such as a data bus for transferring data to the outside of the volume rendering apparatus 100, and the like As shown in FIG.

저장부(160)는 볼륨 렌더링 장치(100)가 필요로 하는 정보를 저장할 수 있다. 이러한 필요 정보의 예로서는 입력부(110)를 통해 입력된 2차원 영상 혹은 사용자로부터 입력된 정보, 사전 학습부(130)에 의해 산출된 특징 사전 및 희소 코드 등이 될 수 있다. 물론 저장부(160)가 저장하는 정보는 위와 같은 예시로 한정되는 것은 아니고, 볼륨 렌더링 장치(100)의 동작에 필요한 정보라면 어떤 것이든 될 수 있다. The storage unit 160 may store information required by the volume rendering apparatus 100. Examples of such necessary information may be a two-dimensional image input through the input unit 110 or information input from a user, a feature dictionary calculated by the dictionary learning unit 130, and a rare code. Of course, the information stored in the storage unit 160 is not limited to the above example, and may be any information necessary for the operation of the volume rendering apparatus 100.

상기 저장부(160)는 구체적으로 컴퓨터 판독 기록 매체로서 구현될 수 있으며, 이러한 컴퓨터 판독 기록 매체의 예로는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 플래시 메모리(flash memory)와 같은 프로그램 명령어들을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 들 수 있다.The storage unit 160 may be embodied as a computer readable recording medium. Examples of the computer readable recording medium include a magnetic medium such as a hard disk, a floppy disk, and a magnetic tape, a CD-ROM, a DVD, Hardware devices that are specially configured to store and execute program instructions such as optical memory, magneto-optical media such as a floppy disk, flash memory, .

도 4는 본 발명의 일 실시예에 따른 볼륨 렌더링 방법의 순서를 도시한 도면이다. 도 4의 볼륨 렌더링 방법은 도 3을 참조하여 설명한 볼륨 렌더링 장치(100)에 의해 수행될 수 있다. 단, 도 4에 도시된 방법은 본 발명의 일 실시예에 불과하므로 도 4에 의해 본 발명의 사상이 한정 해석되는 것은 아니며, 도 4에 도시된 방법의 각 단계는 경우에 따라 도면에 도시된 바와 그 순서를 달리하여 수행될 수 있음은 물론이다.4 is a flowchart illustrating a volume rendering method according to an embodiment of the present invention. The volume rendering method of FIG. 4 may be performed by the volume rendering apparatus 100 described with reference to FIG. However, since the method shown in FIG. 4 is only an embodiment of the present invention, the concept of the present invention is not limited to FIG. 4, and each step of the method shown in FIG. And may be performed in a different order of the bar and the order.

우선, 입력부(110)가 볼륨 렌더링의 대상이 되는 3차원 객체의 2차원 영상을 획득할 수 있다(S110). 이와 같은 2차원 영상은 상기 객체의 서로 다른 단면을 촬영한 복수의 영상이 될 수 있음은 앞서 설명한 바와 같다.First, the input unit 110 may acquire a two-dimensional image of a three-dimensional object to be subjected to volume rendering (S110). The two-dimensional image can be a plurality of images of different cross-sections of the object, as described above.

다음으로, 분할 연산부(120)가 상기 2차원 영상으로부터 복원된 상기 객체의 3차원 영상을 N(N은 2 이상의 자연수)개의 복셀로 분할할 수 있다(S120). 이들 각 복셀의 특징(예컨대, 색상이나 명도 등)은 상기 2차원 영상으로부터 획득될 수 있다. 즉, 특정 복셀의 위치 정보에 대응되는 2차원 영상의 부분(예컨대, 특정 픽셀)으로부터 상기 특정 복셀의 특징을 추출할 수 있는 것이다.Next, the division operation unit 120 may divide the three-dimensional image of the object reconstructed from the two-dimensional image into N (N is a natural number of 2 or more) voxels (S120). The characteristics (e.g., hue, brightness, etc.) of each of these voxels can be obtained from the two-dimensional image. That is, the feature of the specific voxel can be extracted from a portion (e.g., a specific pixel) of the two-dimensional image corresponding to the specific voxel position information.

분할 연산부(120)의 분할 작업이 완료되면, 사전 학습부(130)가 대상 객체를 근사적으로 표현하기 위한 특징 사전과 복수의 희소 코드를 산출할 수 있다(S130). 여기서, 특징 사전은 복수의 특징 필터를 포함할 수 있음은 앞서 말한 바와 같다. 이와 같은 특징 사전 및 복셀은 아래와 같은 수학식 2를 통해 결정될 수 있다.When the division operation of the division operation unit 120 is completed, the pre-learning unit 130 can calculate a feature dictionary and a plurality of rare codes for approximating a target object (S130). Here, the feature dictionary may include a plurality of feature filters as described above. Such feature dictionary and voxel can be determined by Equation (2) below.

Figure pat00003
Figure pat00003

v는 대상 객체를 의미하며, 대상 객체의 정보는 2차원 영상으로부터 획득될 수 있다. dk는 특징 사전 내의 K(예컨대, 24)개의 필터 중 k(k는 0 이상 K 미만의 정수)번째 필터를, xk는 N개의 복셀 중에서 n(n은 0 이상 N 미만의 정수)번째 복셀을 위한 K개의 희소 코드 중 k번째 희소 코드를 각각 나타낸다. 즉, 수학식 2를 푼다는 것은 상기 수학식 2를 만족하는 특징 사전 및 희소 코드 집합을 구한다는 것을 의미한다. α 및 λ는 임의의 상수로서 실험을 통해 최적화된 값이 될 수 있으며, 아래첨자로서의 1 및 2는 각각 l1 norm 및 l2 norm을 나타낸다. v denotes a target object, and the information of the target object can be obtained from the two-dimensional image. d k is of K (for example, 24) number of filters in the feature dictionary k (k is an integer of less than 0 K) th filter, x k are n (n is an integer of less than 0 N) among the N number of voxels second voxels And the kth scarce code among the K scarce codes. That is, solving Equation (2) means finding a feature dictionary and a rare code set satisfying Equation (2). α and λ can be arbitrary constants and can be optimized through experimentation, and 1 and 2 as subscripts denote l1 norm and l2 norm, respectively.

한편, 상기 K의 값 및 필터의 크기(dimension, 구체적으로는 3차원 형상을 갖는 필터의 가로, 세로, 높이의 각 크기)는 입력부(110)를 통한 사용자로부터의 입력 혹은 볼륨 렌더링 장치(100)가 구현된 시스템의 성능에 기초하여 정해질 수 있다. 일반적으로는 K의 값이 클수록, 즉 필터의 가짓수가 풍부할수록 보다 정확한 결과를 얻을 수 있겠으나, 시스템 성능에 비해 지나치게 큰 K의 값은 비효율을 야기할 수 있다.The value of K and the size of the filter (specifically, the size of the horizontal, vertical, and height of the filter having the three-dimensional shape) may be input from the user through the input unit 110, Can be determined based on the performance of the implemented system. In general, the larger the value of K, that is, the greater the number of filters, the more accurate the result, but the excessively large value of K compared to the system performance may cause inefficiency.

상기 수학식 2의 첫 번째 항은 k번째 특징 필터와 k번째 희소 코드 간의 컨볼루션(convolution) 연산을 수행하여 얻어지는 반응 맵(response map)을 각 k에 대해 구한 후, 각 k에 대한 반응 맵을 모두 더한 결과와, 상기 객체 간의 차이가 최소가 되도록, 특징 사전 및 희소 코드를 구하라는 의미로 해석될 수 있다. 수학식 2의 두 번째 항은 희소 코드들의 희소성(sparsity)을 보장하기 위한 항이다. The first term of Equation (2) is obtained by obtaining a response map obtained by performing a convolution operation between the kth feature filter and the kth rare code, for each k, and then generating a response map for each k It can be interpreted to mean that both the result of addition and the feature dictionary and the rare code are obtained so that the difference between the objects is minimized. The second term in Equation (2) is a term for ensuring the sparsity of the rare codes.

결론적으로, 상기 수학식 2를 풀면 대상 객체를 가장 근사적으로 표현할 수 있는 특징 사전 및 희소 코드를 구할 수 있게 된다. 한편, 여기서 "차이의 최소화"라는 것은 현실적으로는 "차이가 소정의 상수 미만이 됨"을 의미할 수 있으며, 이러한 현실적인 의미는 본 명세서의 다른 부분의 설명에 대해서도 적용될 수 있다. 물론 소정의 상수는 그 크기가 0에 가까울 정도로 충분히 작은 상수로 정해질 수 있을 것이다.As a result, solving Equation (2), it is possible to obtain a feature dictionary and a rare code that can represent the object most approximate. Here, the term "minimizing the difference" may actually mean "the difference is less than a predetermined constant ", and such a practical meaning may be applied to the description of other portions of the present specification. Of course, a given constant may be set to a sufficiently small constant such that its magnitude is close to zero.

상기 수학식 2를 통해, 사전 학습부(130)는 대상 객체의 각 복셀에 대응되는 특성 벡터를 구할 수 있다. 즉, 각각의 특성 벡터는 자신에게 대응되는 복셀의 특징을 나타내는 벡터라 할 수 있다. 이러한 특성 벡터의 각 원소의 값은, 특징 사전(dk), 희소 코드(xk), 반응 맵(dk * xk) 및 특성 맵(dk * v) 및 복셀의 공간 상에서의 위치 정보(x, y, z) 등에 기초하여 정해질 수 있다.Through the above Equation (2), the pre-learning unit 130 can obtain a characteristic vector corresponding to each voxel of the target object. That is, each feature vector may be a vector representing the feature of the voxel corresponding to itself. The value of each element of such a feature vector is determined by the feature dictionary ( dk ), the sparse code ( xk ), the reaction map ( dk * xk ) and the characteristic map ( dk * v) (x, y, z), and the like.

상기 각 인자들의 물리적 의미에 대해 간단히 설명하면 다음과 같다. 우선, 희소 코드는 각 복셀마다 각각의 특징 필터가 얼마나 기여하는지를 나타낼 수 있다. 이러한 희소 코드는 대상 객체와 같은 크기(dimension)를 가질 수 있다. 반응 맵은 특징 사전의 각 특징 필터와 희소 코드를 합성곱(convolution) 연산한 것으로, 각각의 특징 필터가 각 복셀에 미치는 영향을 나타낼 수 있다. 특성 맵은 특징 사전의 각 특징 필터와 본래의 대상 객체를 합성곱 연산한 것으로, 각각의 특징 필터가 나타내는 특징이 대상 객체의 특징과 얼마나 일치하는지의 정도를 나타낼 수 있다. 위치 정보는 각 복셀의 공간 상에서의 좌표를 말한다.The physical meaning of each factor will be briefly described as follows. First, the sparse code can indicate how much each feature filter contributes to each voxel. This sparse code can have the same dimensions as the target object. The reaction map is a convolution operation of each feature filter and a sparse code in the feature dictionary, and can show the effect of each feature filter on each voxel. The feature map is a composite product of each feature filter in the feature dictionary and the original target object, and can represent the degree to which the feature represented by each feature filter coincides with the feature of the target object. The position information refers to the coordinates of each voxel in space.

상기 희소 코드, 반응 맵, 특성 맵 등은 기본적으로 대상 객체와 같은 크기(볼륨)을 가질 수 있다. 이에 따라, 3차원적으로 정의된 상기 희소 코드, 반응 맵, 특성 맵의 특정 위치에서의 값은, 객체 내에서 해당 특정 위치에 존재하는 복셀의 특징을 나타내며, 상기 특정 위치에서의 값을 이용하여 각 복셀의 특성 벡터를 산출할 수 있다.The sparse code, reaction map, property map, etc. can basically have the same size (volume) as the target object. Accordingly, the value at the specific position of the sparse code, the reaction map, and the characteristic map defined three-dimensionally indicates the characteristic of the voxel existing at the specific position in the object, and using the value at the specific position The characteristic vector of each voxel can be calculated.

이와 같은 다양한 정보들을 이용하여 각 복셀을 위한 다차원의 특성 벡터를 구함으로써, 각 복셀의 특징을 보다 구체적이고 자세하게 나타낼 수 있다. 도 5a는 전술한 바와 같은 대상 객체(210)에 대한 사전 학습부(130)의 동작을 개념적으로 나타내고 있다.The characteristics of each voxel can be described in more detail and detail by obtaining a multidimensional feature vector for each voxel using the various information. 5A conceptually shows the operation of the pre-learning unit 130 for the target object 210 as described above.

지금까지 설명한 바와 같은 과정을 거쳐 각 복셀을 위한 특성 벡터가 산출되면, 복셀 분류부(140)는 각 복셀들이 객체를 이루는 복수의 부분 중 어느 부분에 속하는지 분류할 수 있다. 본 발명의 일 실시예에 따르면, 볼륨 렌더링 장치(100)의 사용자는 복셀들 중 소정의 일부 복셀에 대해, 상기 소정의 일부 복셀 각각이 상기 복수의 부분 중 어떤 부분에 속하는지를 입력부(110)를 통해 지정할 수 있다. 그러면, 복셀 분류부(140)는 상기 사용자의 지정에 기초하여 우선 상기 소정의 일부 복셀 각각에 대한 분류를 수행하고, 상기 소정의 일부 복셀에 대한 분류 결과에 기초하여, 상기 복셀 중 상기 소정의 일부 복셀을 제외한 나머지 복셀 각각에 대한 분류를 수행할 수 있다. 즉, 복셀 분류부(140)는 사용자의 지정에 기초한 일부 복셀에 대한 분류 결과를 학습함으로써, 나머지 복셀에 대한 분류를 수행할 수 있는 것이다. 이와 같은 학습에 의한 분류에는 다양한 머신 러닝 기법이 이용될 수 있는데, 그 중에서도 랜덤 트리(random tree) 기법이 사용될 수 있다. When the characteristic vector for each voxel is calculated through the process as described above, the voxel classifier 140 can classify which part of the plurality of parts constituting the object each voxel belongs to. According to an embodiment of the present invention, the user of the volume rendering apparatus 100 may determine, for a certain partial voxel among the voxels, which part of the plurality of partials the partial voxel belongs to, . Then, the voxel classifying unit 140 classifies each of the predetermined partial voxels based on the designation of the user, and based on the result of classification for the predetermined partial voxel, It is possible to classify each of the remaining voxels except for the voxel. That is, the voxel classifying unit 140 can classify the remaining voxels by learning classification results for some voxels based on the user's designation. A variety of machine learning techniques can be used to classify such learning, among which a random tree technique can be used.

랜덤 트리는 일종의 의사 결정 트리이며, 랜덤 트리 내에는 특정 질문에 대한 응답(예컨대, 예 혹은 아니오)에 따른 여러 갈림길이 존재한다. 따라서, 답을 알고 싶은 문제와 관련하여 여러 질문에 응답하며 선택된 응답에 대응되는 길을 따라가다 보면 종국적으로는 문제의 답을 알 수 있게 된다. 이러한 랜덤 트리를 생성하는 과정은 결국 랜덤 트리 내의 질문들을 결정하는 과정이라 말할 수 있으며, 랜덤 트리 내의 질문들은 다양한 경우의 입력 데이터 및 해당 입력 데이터에 따른 결과를 학습함으로써 결정될 수 있다.The random tree is a kind of decision tree, and there are various branches in the random tree according to a response to a specific question (for example, yes or no). Thus, responding to questions about the problem you want to know, and following the path to the selected answer, you will eventually know the answer to the problem. The process of generating the random tree can be said to be a process of determining the questions in the random tree, and the questions in the random tree can be determined by learning the input data in various cases and the result according to the input data.

다만, 위에서 설명한 랜덤 트리 기법은 하나의 예시에 불과할 뿐이며, 랜덤 트리 기법 외에도 일반적으로 알려진 머신 러닝 기법이라면 어떤 것이든 이용될 수 있다. 예컨대, SVM(support vector machine) 기법, CNN(connected neural network) 기법 등 다양한 머신 러닝 기법 역시 적용 가능하며, 이들 예시 외에도 다른 기법의 적용도 물론 가능하다.However, the above-described random tree method is merely an example, and in addition to the random tree method, any known machine learning technique can be used. For example, various machine learning techniques such as a support vector machine (SVM) technique and a connected neural network (CNN) technique can be applied.

전술한 바와 같은 학습 과정을 거쳐, 복셀 분류부(140)는 상기 복셀 각각이 대상 객체를 이루는 복수의 부분 중 어느 한 부분에 속할 확률을 상기 복수의 부분 각각에 대해 산출할 수 있으며, 상기 확률에 기초하여 복셀 분류를 수행할 수 있다. 이에 따라, 각 복셀은 상기 복수의 부분 중 속할 확률이 가장 높은 부분에 속하도록 분류될 수 있을 것이다.After the learning process described above, the voxel classifier 140 can calculate the probability that each of the voxels belongs to any one of the plurality of parts constituting the object object, for each of the plurality of parts, It is possible to perform the voxel classification on the basis of the voxel classification. Accordingly, each voxel may be classified so as to belong to the highest probability of belonging to the plurality of parts.

또한, 본 발명의 또 다른 실시예로서, 원본 대상 객체로부터 특징 사전, 희소 코드 및 반응 맵을 한 번 생성하는 데 그치지 않고, 반응 맵을 통해 대상 객체를 모사한 결과, 즉 모든 k에 대한 반응 맵의 합(220)에 대해 한 번 더 특징 사전, 희소 코드 및 반응 맵을 생성하는 과정을 거칠 수 있다. 이와 같은 추가적인 과정을 거쳐 생성된 특징 사전, 희소 코드 및 반응 맵을 각각 제 2 특징 사전, 제 2 희소 코드 및 제 2 반응 맵이라 칭할 수 있으며, 제 2 특징 사전은 복수의 제 2 특징 필터를 포함할 수 있다.In addition, as another embodiment of the present invention, instead of generating the feature dictionary, the rare code, and the reaction map once from the original target object, the result of simulating the target object through the reaction map, that is, , A feature dictionary, a sparse code, and a reaction map once more for the sum 220 of FIG. The feature dictionary, the rare code, and the reaction map generated through the additional process may be referred to as a second feature dictionary, a second rare code, and a second reaction map, respectively, and the second feature dictionary includes a plurality of second feature filters can do.

상기 실시예는 도 5b에 도시된 바를 통해 보다 구체적으로 파악될 수 있다. 도 5b를 참조하면, 대상 객체로부터 특징 사전, 희소 코드 및 반응 맵을 생성하는 과정과 유사하게, 반응 맵의 합(220)으로부터도 제 2 특징 필터(d2k)로 구성되는 제 2 특징 사전, 제 2 희소 코드(x2k), 제 2 반응 맵(d2k * x2k) 및 제 2 특성 맵(d2k * ?U(d2k * x2k)) 등을 산출할 수 있다. 이와 같이 반응 맵의 합(200)으로부터 산출된 2차 데이터들도 객체로부터 산출된 데이터들과 함께 각 복셀의 특성 벡터를 구성함으로써, 복셀 분류에 이용될 수 있다.The above embodiment can be more specifically grasped through that shown in FIG. 5B. Referring to FIG. 5B, similar to the process of generating a feature dictionary, a sparse code, and a reaction map from a target object, a second feature dictionary consisting of a second feature filter d 2k from the sum 220 of reaction maps, (X 2k ), the second reaction map (d 2k x 2k ), and the second characteristic map (d 2k *? U (d 2k x 2k )). The secondary data calculated from the sum 200 of the reaction maps can be used for voxel classification by constructing characteristic vectors of respective voxels together with data calculated from the object.

한편, 제 2 특징 필터(d2k)의 크기(dimension)는 특징 필터(dk)의 크기와 달리 설정될 수도 있다. 도 5b를 보면, 특징 필터(dk)는 7×7×7의 크기를 가지나, 제 2 특징 필터(d2k)는 15×15×15의 크기를 가짐을 볼 수 있다. 이와 같이 다양한 크기의 필터를 다층적으로 적용함으로써, 보다 효과적으로 객체의 특징을 반영하여 객체에 포함된 각 복셀을 분류하는 것이 가능해진다. 또한, 전술한 바에 따른 과정을 여러 번 적용하여, 제 2 반응 맵(d2k * x2k)으로부터 제 3 반응 맵을 구하는 것도 가능하며, 그보다 더 차수가 높은 데이터들을 산출하는 것 역시 가능하다.On the other hand, the dimension of the second feature filter d 2k may be set different from the size of the feature filter d k . Referring to FIG. 5B, it can be seen that the feature filter d k has a size of 7 × 7 × 7, while the second feature filter d 2k has a size of 15 × 15 × 15. By applying the filters of various sizes in this manner, it becomes possible to classify each voxel included in the object more effectively by reflecting the characteristics of the object. It is also possible to obtain the third reaction map from the second reaction map (d 2k * x 2k ) by applying the process described above several times, and it is also possible to calculate data with a higher order.

지금까지 설명한 과정에 의해 복셀의 분류가 완료되면, 출력부(150)는 상기 분류에 기초하여 볼륨 렌더링을 수행하고, 그 결과로서의 객체의 모습을 시각적으로 출력할 수 있다(S150). 이러한 시각적 출력에는 특성 벡터에 의해 표현되는 각 복셀의 특성을 각 복셀의 시각적 정보(예컨대, 시각적 출력 시의 각 복셀의 색상 혹은 투명도 등)로 변환하는 전이 함수(transfer function)가 이용될 수 있으며, 이에 대해서는 통상의 기술자에게 자명하게 이해될 수 있으므로 더 이상의 자세한 설명은 생략한다.When the classification of the voxels is completed by the process described above, the output unit 150 performs volume rendering based on the classification, and visually outputs the result of the volume rendering (S150). In this visual output, a transfer function may be used that converts the characteristics of each voxel represented by the characteristic vector into the visual information of each voxel (e.g., the color or transparency of each voxel at the time of visual output) It will be understood by those skilled in the art that further details are not provided herein.

사용자는 대상 객체를 이루는 복수의 부분 중, 보고 싶은 부분만을 선택하여 관찰하는 것도 가능하다. 예컨대, 도 1의 예시에서 사용자는 화분이나 잎 부분을 제외하고 줄기 부분만을 선택하여 관찰할 수 있다. 이와 관련하여, 출력부(150)는 상기 복셀 중에서, 사용자가 입력부(110)를 통해 선택한 부분에 속하는 복셀만이 시각적으로 출력되도록 할 수 있다. 이를 위해, 선택되지 않은 부분의 복셀은 투명하게 보이도록 투명도가 조절될 수 있다.It is also possible for the user to select and observe only a portion of a plurality of portions constituting a target object. For example, in the example of FIG. 1, the user can select and observe only the stem portion except the pollen or leaf portion. In this regard, the output unit 150 can visually output only the voxels belonging to the portion selected by the user through the input unit 110 among the voxels. For this purpose, the transparency can be adjusted so that the voxels of the unselected portions are made transparent.

도 6은 본 발명의 일 실시예에 따른 볼륨 렌더링의 결과를 예시적으로 설명하기 위한 도면이다. 도 6을 참조하면, 사람의 몸통 부분을 본 발명의 실시예에 따라 볼륨 렌더링한 영상(310) 및 상기 영상(310)으로부터 뼈에 해당하는 부분만을 표현한 영상(320)을 확인할 수 있다. 물론, 상기 영상(310, 320) 각각의 특정 부분을 확대한 영상(311, 321)을 통해, 객체(사람)를 보다 세밀하게 관찰하는 것 역시 가능하다.FIG. 6 is a diagram for explaining a result of volume rendering according to an embodiment of the present invention. Referring to FIG. 6, it is possible to identify an image 310 in which a human body portion is volume-rendered according to an embodiment of the present invention and an image 320 in which only a portion corresponding to a bone is expressed from the image 310. Of course, it is also possible to observe the object (person) more finely through the images 311 and 321 obtained by enlarging a specific portion of each of the images 310 and 320.

한편, 본 발명의 또 다른 실시예로서, 출력부(150)는 복셀 각각을 시각적으로 표현함에 있어 복셀이 대상 객체의 각 부분에 속할 확률을 고려할 수 있다. 구체적으로, 상기 복수의 부분의 개수를 M이라 할 때, 상기 복셀 중 n번째 복셀이 상기 복수의 부분 중 m(m은 0 이상 M 미만의 정수)번째 부분에 속할 경우의 시각적 특성에, n번째 복셀이 m번째 부분에 속할 확률을 곱한 값을, 각 m에 대하여 모두 구한 결과의 총합이 n번째 복셀의 시각적 특성이 되도록 할 수 있다. 여기서, 시각적 특성이라 함은 복셀의 색상이나 투명도 등이 될 수 있다.Meanwhile, as another embodiment of the present invention, the output unit 150 may consider the probability that the voxel belongs to each part of the target object in the visual representation of each of the voxels. Specifically, when the number of the plurality of sections is M, the n-th voxel of the voxel belongs to the m-th part of the plurality of parts (m is an integer of 0 or more and less than M) The sum of the results obtained by multiplying the probability that the voxel belongs to the m-th portion is obtained for each m can be the visual characteristic of the n-th voxel. Here, the visual characteristic may be the color or transparency of the voxel.

상기 실시예는 다음과 같은 점에서 의의가 있다. 예컨대, 제 1 부분과 제 2 부분으로 구획될 수 있는 대상 객체에 있어서, 특정 복셀이 제 1 부분에 속할 확률과 제 2 부분에 속할 확률이 각각 51%와 49%라 가정할 수 있다. 이 때, 보다 확률이 높은 제 1 부분에 상기 특정 복셀이 속한 것으로 취급하고 시각적 특성을 부여할 수 있겠으나, 제 2 부분에 속할 확률 역시 제 1 부분에 속할 확률과 거의 비등하기 때문에, 확정적으로 제 1 부분에 속한 것으로 취급하는 것은 다소 불합리할 수 있다. The above embodiment is significant in the following points. For example, for a target object that can be partitioned into a first part and a second part, it can be assumed that the probability that a particular voxel belongs to the first part and the probability that it belongs to the second part are 51% and 49%, respectively. At this time, the first part having a higher probability can be treated as having the specific voxel and given a visual characteristic, but since the probability of belonging to the second part is also almost equal to the probability belonging to the first part, 1, it may be somewhat unreasonable.

이에 따라, 본 실시예에서는 확률적 기법을 도입하여, 상기 특정 복셀이 제 1 부분에 속한다 가정할 경우의 시각적 특성과 제 2 부분에 속한다 가정할 경우의 시각적 특성을 51:49의 비율로 가중평균하여 상기 특정 복셀에 시각적 특성을 부여할 수 있다. 이와 같은 실시예에 따르면, 전술한 바와 같은 확정적인 취급에 따른 문제점을 해결할 수 있다.Accordingly, in the present embodiment, by introducing a stochastic technique, the visual characteristic of assuming that the specific voxel belongs to the first part and the visual characteristic of assuming that it belongs to the second part are weighted by a ratio of 51:49 Thereby giving visual characteristics to the specific voxel. According to this embodiment, it is possible to solve the problem caused by the definite handling as described above.

지금까지 설명한 바와 같은 본 발명의 일 실시예에 따른 볼륨 렌더링 방법에 의하면, 사전 학습 및 합성곱 희소 코드 기법을 이용하여 고차원의 특성 벡터를 추출하는 것이 가능함에 따라, 각 복셀의 특징을 보다 풍부하게 확보할 수 있다. 이에 따라, 복잡한 구조를 갖는 객체에 대한 복셀 분류를, 종래 기술에 비해 정확하면서도 효율적으로 수행할 수 있다.According to the volume rendering method according to an embodiment of the present invention as described above, it is possible to extract a high-dimensional feature vector using the pre-learning and the composite squared sparse code technique, . Accordingly, the voxel classification for an object having a complicated structure can be performed more accurately and efficiently than the prior art.

본 발명에 첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.Combinations of each step of the flowchart and each block of the block diagrams appended to the present invention may be performed by computer program instructions. These computer program instructions may be loaded into a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus so that the instructions, which may be executed by a processor of a computer or other programmable data processing apparatus, And means for performing the functions described in each step are created. These computer program instructions may also be stored in a computer usable or computer readable memory capable of directing a computer or other programmable data processing apparatus to implement the functionality in a particular manner so that the computer usable or computer readable memory It is also possible for the instructions stored in the block diagram to produce a manufacturing item containing instruction means for performing the functions described in each block or flowchart of the block diagram. Computer program instructions may also be stored on a computer or other programmable data processing equipment so that a series of operating steps may be performed on a computer or other programmable data processing equipment to create a computer- It is also possible that the instructions that perform the processing equipment provide the steps for executing the functions described in each block of the block diagram and at each step of the flowchart.

또한, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.Also, each block or each step may represent a module, segment, or portion of code that includes one or more executable instructions for executing the specified logical function (s). It should also be noted that in some alternative embodiments, the functions mentioned in the blocks or steps may occur out of order. For example, two blocks or steps shown in succession may in fact be performed substantially concurrently, or the blocks or steps may sometimes be performed in reverse order according to the corresponding function.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 품질에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 균등한 범위 내에 있는 모든 기술사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely illustrative of the technical idea of the present invention, and various modifications and changes may be made by those skilled in the art without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are intended to illustrate rather than limit the scope of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be construed according to the following claims, and all technical ideas within the scope of equivalents thereof should be construed as falling within the scope of the present invention.

100: 볼륨 렌더링 장치
110: 입력부
120: 영상 획득부
130: 분할 연산부
140: 사전 학습부
150: 출력부
160: 저장부
100: Volume rendering device
110: input unit
120:
130:
140:
150:
160:

Claims (22)

복수의 부분으로 구획 가능한 3차원 객체에 대하여, 볼륨 렌더링(volume rendering) 장치 상에서 수행되는 볼륨 렌더링 방법에 있어서,
상기 객체를 촬영하여 얻어지는 복수의 2차원 영상을 획득하는 제 1 단계;
상기 2차원 영상으로부터 상기 객체의 3차원 영상을 복원하고, 상기 3차원 영상을 N(N은 2 이상의 자연수)개의 복셀(voxel)로 분할하는 제 2 단계;
상기 객체의 특징을 나타내는 복수의 특징 필터(filter) 및 복수의 희소 코드(sparse code)를 이용하여 상기 객체를 근사적으로 표현하는 제 3 단계; 및
상기 특징 필터 및 상기 희소 코드에 기초하여, 상기 복셀 각각이 상기 복수의 부분 중 어떤 부분에 속하는지 분류하는 제 4 단계를 포함하는
볼륨 렌더링 방법.
A volume rendering method performed on a volume rendering device for a three-dimensional object that can be partitioned into a plurality of portions,
A first step of acquiring a plurality of two-dimensional images obtained by photographing the object;
A second step of restoring a three-dimensional image of the object from the two-dimensional image, and dividing the three-dimensional image into N (N is a natural number of 2 or more) voxels;
A third step of approximating the object by using a plurality of feature filters and a plurality of sparse codes that characterize the object; And
And a fourth step of classifying, based on the feature filter and the rare code, which part of the plurality of parts each of the voxels belongs to
How to render a volume.
제 1 항에 있어서,
상기 복셀 중에서, 상기 복수의 부분 중 사용자로부터의 입력에 기초하여 선택된 부분 혹은 출력될 부분으로서 기 정해진 부분에 속한 복셀만을 시각적으로 출력하는 제 5 단계를 더 포함하는
볼륨 렌더링 방법.
The method according to claim 1,
And a fifth step of visually outputting only a portion selected from among the plurality of portions based on an input from the user or a voxel belonging to a predetermined portion as a portion to be output,
How to render a volume.
제 1 항에 있어서,
상기 특징 필터의 개수 및 상기 희소 코드의 개수를 각각 K라 할 때, 상기 제 3 단계는,
상기 특징 필터 중 k(k는 0 이상 K 미만의 정수)번째 특징 필터와 상기 희소 코드 중 k번째 희소 코드 간의 컨볼루션(convolution) 연산을 수행하여 얻어지는 반응 맵(response map)을 각 k에 대해 각 k에 대해 구하는 단계; 및
상기 각 k에 대한 반응 맵을 모두 더한 결과와, 상기 객체 간의 차이가 최소가 되도록, 상기 특징 필터 및 상기 희소 코드를 산출하는 단계를 포함하는
볼륨 렌더링 방법.
The method according to claim 1,
When the number of feature filters and the number of sparse codes are K, respectively,
A response map obtained by performing a convolution operation between k feature filters (k is an integer equal to or greater than 0 and less than K) feature filter and a kth rare code among the rare codes, k; And
Calculating the feature filter and the sparse code such that the sum of all the reaction maps for each k is summed and the difference between the objects is minimized;
How to render a volume.
제 1 항에 있어서, 상기 제 4 단계는,
상기 복셀 중 소정의 일부 복셀에 대해, 사용자로부터의 입력에 기초하여, 상기 소정의 일부 복셀 각각이 상기 복수의 부분 중 어떤 부분에 속하는지 분류하는 단계; 및
상기 소정의 일부 복셀에 대한 분류 결과에 기초하여, 상기 복셀 중 상기 소정의 일부 복셀을 제외한 나머지 복셀 각각을 분류하는 단계를 포함하는
볼륨 렌더링 방법.
The method as claimed in claim 1,
Classifying, for a given portion of the voxels, which portion of the plurality of portions each of the predetermined voxels belongs to, based on an input from a user; And
Classifying each of the remaining voxels except for the predetermined partial voxel among the voxels based on the classification result for the predetermined partial voxel
How to render a volume.
제 1 항에 있어서,
상기 제 4 단계는, SVM(support vector machine) 기법, CNN(connected neural network) 기법 및 랜덤 트리(random tree) 기법 중 적어도 하나를 이용하여 상기 복셀 각각을 분류하는 단계를 포함하는
볼륨 렌더링 방법.
The method according to claim 1,
The fourth step may include classifying each of the voxels using at least one of a support vector machine (SVM) technique, a connected neural network (CNN) technique, and a random tree technique
How to render a volume.
제 3 항에 있어서,
상기 제 3 단계는, 상기 각 k에 대한 반응 맵을 모두 더한 결과의 특징을 나타내는 제 2 특징 필터 및 복수의 제 2 희소 코드를 이용하여, 상기 각 k에 대한 반응 맵을 모두 더한 결과를 근사적으로 표현하는 단계를 더 포함하며,
상기 제 4 단계는, 상기 제 2 특징 필터 및 상기 제 2 희소 코드에 기초하여, 상기 복셀 각각을 분류하는 단계를 포함하는
볼륨 렌더링 방법.
The method of claim 3,
Wherein the third step is a step of calculating the sum of the reaction maps for each k by using the second feature filter and the plurality of second rare codes showing the feature of the result obtained by adding the reaction maps for each k to the approximate , ≪ / RTI >
Wherein said fourth step comprises classifying each of said voxels based on said second feature filter and said second sparse code
How to render a volume.
제 6 항에 있어서,
상기 제 2 특징 필터는, 상기 특징 필터와 다른 크기(dimension)를 갖도록 설정되는
볼륨 렌더링 방법.
The method according to claim 6,
The second feature filter is set to have a different dimension from the feature filter
How to render a volume.
제 1 항에 있어서, 상기 제 4 단계는,
상기 특징 필터 및 상기 희소 코드에 기초하여, 상기 복셀 각각이 상기 복수의 부분 중 어느 한 부분에 속할 확률을 상기 복수의 부분 각각에 대해 산출하는 단계; 및
상기 확률에 기초하여 상기 복셀 각각을 분류하는 단계를 포함하는
볼륨 렌더링 방법.
The method as claimed in claim 1,
Calculating, for each of the plurality of portions, a probability that each of the plurality of portions belongs to one of the plurality of portions, based on the feature filter and the rare code; And
And classifying each of the voxels based on the probability
How to render a volume.
제 8 항에 있어서,
상기 복셀 각각을 시각적으로 출력하되, 상기 복수의 부분의 개수를 M이라 할 때, 상기 복셀 중 n번째 복셀이 상기 복수의 부분 중 m(m은 0 이상 M 미만의 정수)번째 부분에 속할 경우의 시각적 특성에, 상기 n번째 복셀이 상기 m번째 부분에 속할 확률을 곱한 값을, 각 m에 대하여 모두 구한 결과의 총합이 상기 n번째 복셀의 시각적 특성이 되도록 하는 제 5 단계를 더 포함하며,
상기 시각적 특성은, 색상 및 투명도 중 적어도 하나를 포함하는
볼륨 렌더링 방법.
9. The method of claim 8,
Wherein when the nth voxel of the voxel belongs to the m-th part of the plurality of parts (m is an integer of 0 or more and less than M) of the plurality of parts, when the number of the plurality of parts is M, Further comprising a fifth step of causing the visual characteristic to be a visual characteristic of the n-th voxel when the sum of the results obtained by multiplying the visual characteristic by the probability that the n-th voxel belongs to the m-
Wherein the visual characteristic comprises at least one of color and transparency
How to render a volume.
제 1 항에 있어서,
상기 복수의 2차원 영상은, 상기 객체의 서로 다른 단면을 촬영함으로써 얻어진 영상인
볼륨 렌더링 방법.
The method according to claim 1,
Wherein the plurality of two-dimensional images are images obtained by photographing different cross-sections of the object
How to render a volume.
복수의 부분으로 구획 가능한 3차원 객체에 대한 볼륨 렌더링(volume rendering)을 수행하기 위한 장치에 있어서,
상기 객체를 촬영하여 얻어지는 복수의 2차원 영상을 획득하는 입력부;
상기 2차원 영상으로부터 상기 객체의 3차원 영상을 복원하고, 상기 3차원 영상을 N(N은 2 이상의 자연수)개의 복셀(voxel)로 분할하는 분할 연산부;
상기 객체의 특징을 나타내는 복수의 특징 필터(filter) 및 복수의 희소 코드(sparse code)를 이용하여 상기 객체를 근사적으로 표현하는 사전 학습부; 및
상기 특징 필터 및 상기 희소 코드에 기초하여, 상기 복셀 각각이 상기 복수의 부분 중 어떤 부분에 속하는지 분류하는 복셀 분류부를 포함하는
볼륨 렌더링 장치.
An apparatus for performing volume rendering on a three-dimensional object that can be partitioned into a plurality of parts,
An input unit for acquiring a plurality of two-dimensional images obtained by photographing the object;
A division operation unit for reconstructing the three-dimensional image of the object from the two-dimensional image and dividing the three-dimensional image into N (N is a natural number of 2 or more) voxels;
A pre-learning unit that approximates the object using a plurality of feature filters and a plurality of sparse codes that characterize the object; And
And a voxel classifier for classifying, based on the feature filter and the rare code, which part of the plurality of parts each of the voxels belongs to
Volume rendering device.
제 11 항에 있어서,
상기 입력부는, 상기 볼륨 렌더링 장치의 사용자로부터의 입력을 수신하며,
상기 복셀 중에서, 상기 복수의 부분 중 상기 사용자로부터의 입력에 기초하여 선택된 부분 혹은 출력될 부분으로서 기 정해진 부분에 속한 복셀만을 시각적으로 출력하는 출력부를 더 포함하는
볼륨 렌더링 장치.
12. The method of claim 11,
Wherein the input receives input from a user of the volume rendering device,
And an output unit for visually outputting only a portion selected from among the plurality of portions based on an input from the user or a voxel belonging to a predetermined portion as a portion to be output
Volume rendering device.
제 11 항에 있어서,
상기 특징 필터의 개수 및 상기 희소 코드의 개수를 각각 K라 할 때,
상기 사전 학습부는, 상기 특징 필터 중 k(k는 0 이상 K 미만의 정수)번째 특징 필터와 상기 희소 코드 중 k번째 희소 코드 간의 컨볼루션(convolution) 연산을 수행하여 얻어지는 반응 맵(response map)을 각 k에 대해 구한 후, 상기 각 k에 대한 반응 맵을 모두 더한 결과와, 상기 객체 간의 차이가 최소가 되도록, 상기 특징 필터 및 상기 희소 코드를 산출하는
볼륨 렌더링 장치.
12. The method of claim 11,
When the number of the feature filters and the number of the rare codes are K,
The pre-learning unit may generate a response map obtained by performing a convolution operation between k feature filters (k is an integer of 0 or more and less than K) feature filter and a kth rare code of the rare code Calculates the characteristic filter and the sparse code so as to minimize the difference between the result of summing up the reaction maps for each k and the object after calculating for each k
Volume rendering device.
제 11 항에 있어서,
상기 입력부는, 상기 볼륨 렌더링 장치의 사용자로부터의 입력을 수신하며,
상기 복셀 분류부는, 상기 복셀 중 소정의 일부 복셀에 대해, 상기 사용자로부터의 입력에 기초하여, 상기 소정의 일부 복셀 각각이 상기 복수의 부분 중 어떤 부분에 속하는지 분류하고, 상기 소정의 일부 복셀에 대한 분류 결과에 기초하여, 상기 복셀 중 상기 소정의 일부 복셀을 제외한 나머지 복셀 각각을 분류하는
볼륨 렌더링 장치.
12. The method of claim 11,
Wherein the input receives input from a user of the volume rendering device,
Wherein the voxel classifier classifies, based on an input from the user, a part of the plurality of voxels and a part of the plurality of parts of the voxel, And classifying the remaining voxels except for the predetermined partial voxel among the voxels
Volume rendering device.
제 11 항에 있어서,
상기 복셀 분류부는, SVM(support vector machine) 기법, CNN(connected neural network) 기법 및 랜덤 트리(random tree) 기법 중 적어도 하나를 이용하여 상기 복셀 각각을 분류하는
볼륨 렌더링 장치.
12. The method of claim 11,
The voxel classifier classifies each of the voxels using at least one of a support vector machine (SVM) technique, a connected neural network (CNN) technique, and a random tree technique
Volume rendering device.
제 13 항에 있어서,
상기 사전 학습부는, 상기 각 k에 대한 반응 맵을 모두 더한 결과의 특징을 나타내는 제 2 특징 필터 및 복수의 제 2 희소 코드를 이용하여, 상기 각 k에 대한 반응 맵을 모두 더한 결과를 근사적으로 표현하며,
상기 복셀 분류부는, 상기 제 2 특징 필터 및 상기 제 2 희소 코드에 기초하여, 상기 복셀 각각을 분류하는
볼륨 렌더링 장치.
14. The method of claim 13,
The pre-learning unit may approximate a result obtained by adding all of the reaction maps for k by using the second feature filter and the plurality of second rare codes showing the feature of the result obtained by adding all of the reaction maps for each k Express,
Wherein the voxel classifier classifies each of the voxels based on the second feature filter and the second sparse code
Volume rendering device.
제 16 항에 있어서,
상기 제 2 특징 필터는, 상기 특징 필터와 다른 크기(dimension)를 갖도록 설정되는
볼륨 렌더링 장치.
17. The method of claim 16,
The second feature filter is set to have a different dimension from the feature filter
Volume rendering device.
제 11 항에 있어서,
상기 복셀 분류부는, 상기 특징 필터 및 상기 희소 코드에 기초하여, 상기 복셀 각각이 상기 복수의 부분 중 어느 한 부분에 속할 확률을 상기 복수의 부분 각각에 대해 산출하고, 상기 확률에 기초하여 상기 복셀 각각을 분류하는
볼륨 렌더링 장치.
12. The method of claim 11,
Wherein the voxel classifying section calculates a probability that each of the voxels belongs to any one of the plurality of parts on the basis of the feature filter and the rare code for each of the plurality of parts, To classify
Volume rendering device.
제 18 항에 있어서,
상기 복셀 각각을 시각적으로 출력하되, 상기 복수의 부분의 개수를 M이라 할 때, 상기 복셀 중 n번째 복셀이 상기 복수의 부분 중 m(m은 0 이상 M 미만의 정수)번째 부분에 속할 경우의 시각적 특성에, 상기 n번째 복셀이 상기 m번째 부분에 속할 확률을 곱한 값을, 각 m에 대하여 모두 구한 결과의 총합이 상기 n번째 복셀의 시각적 특성이 되도록 하는 출력부를 더 포함하며,
상기 시각적 특성은, 색상 및 투명도 중 적어도 하나를 포함하는
볼륨 렌더링 장치.
19. The method of claim 18,
Wherein when the nth voxel of the voxel belongs to the m-th part of the plurality of parts (m is an integer of 0 or more and less than M) of the plurality of parts, when the number of the plurality of parts is M, Further comprising an output unit for multiplying the visual characteristic by multiplying a probability that the n-th voxel belongs to the m-th part to a visual characteristic of the n-th voxel,
Wherein the visual characteristic comprises at least one of color and transparency
Volume rendering device.
제 11 항에 있어서,
상기 복수의 2차원 영상은, 상기 객체의 서로 다른 단면을 촬영함으로써 얻어진 영상인
볼륨 렌더링 장치.
12. The method of claim 11,
Wherein the plurality of two-dimensional images are images obtained by photographing different cross-sections of the object
Volume rendering device.
제 1 항 내지 제 10 항 중 어느 한 항에 기재된 방법에 따른 각각의 단계를 수행하는, 컴퓨터 판독 가능 기록매체에 저장된 애플리케이션 프로그램. 11. An application program stored on a computer-readable medium for performing the respective steps according to the method of any one of claims 1 to 10. 제 1 항 내지 제 10 항 중 어느 한 항에 기재된 방법에 따른 각각의 단계를 수행하는 명령어를 포함하는 프로그램이 기록된 컴퓨터 판독 가능 기록매체.11. A computer-readable medium having stored thereon instructions for performing the respective steps according to the method of any one of claims 1 to 10.
KR1020170075788A 2017-06-15 2017-06-15 Apparatus and method for volume rendering KR102012828B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170075788A KR102012828B1 (en) 2017-06-15 2017-06-15 Apparatus and method for volume rendering

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170075788A KR102012828B1 (en) 2017-06-15 2017-06-15 Apparatus and method for volume rendering

Publications (2)

Publication Number Publication Date
KR20180136707A true KR20180136707A (en) 2018-12-26
KR102012828B1 KR102012828B1 (en) 2019-08-21

Family

ID=65006596

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170075788A KR102012828B1 (en) 2017-06-15 2017-06-15 Apparatus and method for volume rendering

Country Status (1)

Country Link
KR (1) KR102012828B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113808111A (en) * 2021-09-18 2021-12-17 广州幻境科技有限公司 Three-dimensional virtual reconstruction method and system for medical image

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102565826B1 (en) 2020-12-29 2023-08-16 한양대학교 산학협력단 3D object recognition method and apparatus that improves the speed of convolution operation through data reuse
KR20230097977A (en) 2021-12-24 2023-07-03 한양대학교 산학협력단 Sparse data based convolution calculate method and apparatus using artificial neural network
KR20240100152A (en) 2022-12-22 2024-07-01 한양대학교 산학협력단 Sparse data based convolution calculate method and apparatus using artificial neural network

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000067384A (en) 1999-04-28 2000-11-15 윤덕용 volume rendering method using shear-warp factorization

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000067384A (en) 1999-04-28 2000-11-15 윤덕용 volume rendering method using shear-warp factorization

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
C. Johnso et al., "Overview of Volume Rendering", Chapter for The Visualization Handbook. Academic Press, 2005.* *
Koray Kavukcuoglu et al., "Learning Convolutional Feature Hierarchies forVisual Recognition", Neural Information Processing Systems (NIPS), 2010.* *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113808111A (en) * 2021-09-18 2021-12-17 广州幻境科技有限公司 Three-dimensional virtual reconstruction method and system for medical image

Also Published As

Publication number Publication date
KR102012828B1 (en) 2019-08-21

Similar Documents

Publication Publication Date Title
CN109522874B (en) Human body action recognition method and device, terminal equipment and storage medium
Weiss et al. Volumetric isosurface rendering with deep learning-based super-resolution
Bovik The essential guide to image processing
Romeny Front-end vision and multi-scale image analysis: multi-scale computer vision theory and applications, written in mathematica
Toriwaki et al. Fundamentals of three-dimensional digital image processing
JP5645842B2 (en) Image processing apparatus and method using scale space
US20210383534A1 (en) System and methods for image segmentation and classification using reduced depth convolutional neural networks
KR20180136707A (en) Apparatus and method for volume rendering
Akl et al. A survey of exemplar-based texture synthesis methods
US11257276B2 (en) Appearance synthesis of digital faces
Argudo et al. Single-picture reconstruction and rendering of trees for plausible vegetation synthesis
US20090309877A1 (en) Soft shadow rendering
EP4092629A2 (en) Method and apparatus for displaying objects, and storage medium
CN114863002A (en) Virtual image generation method and device, terminal equipment and computer readable medium
Bastanfard et al. Toward image super-resolution based on local regression and nonlocal means
CN115797561A (en) Three-dimensional reconstruction method, device and readable storage medium
Liu et al. Facial image inpainting using attention-based multi-level generative network
Gilani et al. Skin lesion analysis using generative adversarial networks: A review
Schoor et al. VR based visualization and exploration of plant biological data
Song et al. Vector regression functions for texture compression
CN116883770A (en) Training method and device of depth estimation model, electronic equipment and storage medium
CN114119923A (en) Three-dimensional face reconstruction method and device and electronic equipment
Agus et al. Split-Voxel: A Simple Discontinuity-Preserving Voxel Representation for Volume Rendering.
EP3276577B1 (en) Hölder adaptive image synthesis
CN110570417A (en) Pulmonary nodule classification method and device and image processing equipment

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant