KR102255188B1 - 부드러운 실루엣 표현을 위한 대상 개체를 모델링하는 방법 및 장치 - Google Patents

부드러운 실루엣 표현을 위한 대상 개체를 모델링하는 방법 및 장치 Download PDF

Info

Publication number
KR102255188B1
KR102255188B1 KR1020140137655A KR20140137655A KR102255188B1 KR 102255188 B1 KR102255188 B1 KR 102255188B1 KR 1020140137655 A KR1020140137655 A KR 1020140137655A KR 20140137655 A KR20140137655 A KR 20140137655A KR 102255188 B1 KR102255188 B1 KR 102255188B1
Authority
KR
South Korea
Prior art keywords
target object
modeling
silhouette
particles
distance information
Prior art date
Application number
KR1020140137655A
Other languages
English (en)
Other versions
KR20160043366A (ko
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 KR1020140137655A priority Critical patent/KR102255188B1/ko
Priority to US14/879,273 priority patent/US10121253B2/en
Publication of KR20160043366A publication Critical patent/KR20160043366A/ko
Application granted granted Critical
Publication of KR102255188B1 publication Critical patent/KR102255188B1/ko

Links

Images

Classifications

    • G06T5/70
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/12Edge-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/529Depth or shape recovery from texture
    • 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/20024Filtering details
    • G06T2207/20028Bilateral filtering

Abstract

대상 객체를 입자들(particles)로 표현(represent)한 영상으로부터 깊이 정보를 획득하고, 영상에서 서로 인접한 입자들 간의 거리 정보를 획득하며, 깊이 정보와 거리 정보에 기초하여 대상 객체의 실루엣(Silhouette)을 검출하는, 대상 객체를 모델링하는 방법을 제공할 수 있다.

Description

부드러운 실루엣 표현을 위한 대상 개체를 모델링하는 방법 및 장치{MODELING METHOD AND MODELING APPARATUS OF TARGET OBJECT TO REPRESENT SMOOTH SILHOUETTE}
아래의 실시예들은 입자를 기반으로 부드러운 실루엣 표현을 위한 대상 개체를 모델링하는 방법 및 장치에 관한 것이다.
컴퓨터 그래픽스(Computer Graphics; CG) 분야, 특히 시각 효과(Visual Effects; VFX) 분야의 유체 시뮬레이션과 관련하여, 유체의 유동을 수치적으로 풀어내려는 연구가 계속 진행되고 있다.
유체는 매우 작은 입자들(particles)로 표현될 수 있으며, 일반적으로 입자에 기반하여 유체를 시각화할 때 입자를 표현하는 데에 구(sphere) 형태를 사용하므로 시각화된 유체는 경계면 등의 부자연스럽게 표현될 수 있다.
일실시예에 따르면, 대상 객체를 모델링하는 방법은, 대상 객체를 입자들(particles)로 표현(represent)한 영상으로부터 깊이 정보를 획득하는 단계; 상기 영상에서 서로 인접한 입자들 간의 거리 정보를 획득하는 단계; 및 상기 깊이 정보와 상기 거리 정보에 기초하여 상기 대상 객체의 실루엣(Silhouette)을 검출하는 단계를 포함한다.
상기 실루엣을 검출하는 단계는, 상기 거리 정보가 미리 설정된 임계치 이상인지 여부를 판단하는 단계; 및 상기 거리 정보가 상기 임계치보다 작은 경우, 상기 깊이 정보를 기초로상기 대상 객체의 실루엣을 검출하는 단계를 포함할 수 있다.
상기 실루엣을 검출하는 단계는, 상기 거리 정보가 미리 설정된 임계치 이상인지 여부를 판단하는 단계; 및 상기 거리 정보가 상기 임계치 이상인 경우, 상기 깊이 정보 및 상기 거리 정보에 기초하여 상기 대상 객체의 실루엣을 검출하는 단계를 포함할 수 있다.
상기 미리 설정된 임계치는, 상기 입자들의 반지름의 2배일 수 있다.
상기 실루엣을 검출하는 단계는, 상기 깊이 정보를 이용하여 상기 실루엣을 검출하는 단계; 및 상기 검출된 실루엣을 상기 거리 정보에 기초하여 보정하는 단계를 포함할 수 있다.
상기 거리 정보를 획득하는 단계는, 상기 깊이 정보를 기초로, 상기 영상에서 상기 거리 정보를 획득할 대상 영역을 정의하는 단계; 및 상기 대상 영역에 포함된 상기 인접한 입자들 간의 상기 거리 정보를 획득하는 단계를 포함할 수 있다.
상기 대상 영역을 정의하는 단계는, 상기 영상에서 서로 인접하는 입자들 간의 상기 깊이 정보의 차이에 기초하여 상기 대상 영역을 정의하는 단계를 포함할 수 있다.
상기 깊이 정보를 획득하는 단계는, 상기 입자들을 스프라이트(sprite)로 시각화 하는 단계; 및 상기 시각화된 입자들로부터 상기 깊이 정보를 연산하는 단계를 포함할 수 있다.
상기 시각화 하는 단계는, 상기 대상 객체의 움직임을 계산하여 상기 입자들을 시각화 하는 단계를 포함할 수 있다.
상기 영상에서 상기 실루엣을 포함하는 주변 영역을 스무딩(smoothing)하는 단계를 더 포함할 수 있다.
상기 스무딩하는 단계는, 양방향 필터(bilateral filter)를 이용하여 상기 주변 영역을 스무딩하는 단계를 포함할 수 있다.
상기 대상 객체는, 유체(fluid) 또는 변형체(Deformable Body) 중 적어도 하나를 포함할 수 있다.
일실시예에 따르면, 대상 객체를 모델링하는 장치는, 상기 대상 객체를 모델링하는 장치의 동작을 제어하는 프로그램을 기록하는 메모리; 및 상기 프로그램을 구동시키는 하나 이상의 프로세서를 포함하고, 상기 프로그램은, 대상 객체를 입자들로 표현한 영상으로부터 깊이 정보를 획득하고, 상기 영상에서 서로 인접한 입자들 간의 거리 정보를 획득하며, 상기 깊이 정보와 상기 거리 정보에 기초하여 상기 대상 객체의 실루엣을 검출할 수 있다.
상기 프로그램은, 상기 거리 정보가 미리 설정된 임계치 이상인지 여부를 판단하고, 상기 거리 정보가 상기 임계치보다 작은 경우, 상기 깊이 정보를 기초로 상기 대상 객체의 실루엣을 검출하고, 상기 거리 정보가 상기 임계치 이상인 경우, 상기 깊이 정보 및 상기 거리 정보에 기초하여 상기 대상 객체의 실루엣을 검출할 수 있다.
상기 프로그램은, 상기 깊이 정보를 이용하여 상기 실루엣을 검출하고, 상기 검출된 실루엣을 상기 거리 정보에 기초하여 보정할 수 있다.
상기 미리 설정된 임계치는, 상기 입자들의 반지름의 2배일 수 있다.
상기 프로그램은, 상기 깊이 정보를 기초로, 상기 영상에서 상기 거리 정보를 획득할 대상 영역을 정의하고, 상기 대상 영역에 포함된 상기 인접한 입자들 간의 상기 거리 정보를 획득할 수 있다.
상기 프로그램은, 상기 영상에서 서로 인접하는 입자들 간의 상기 깊이 정보의 차이에 기초하여 상기 대상 영역을 정의할 수 있다.
상기 프로그램은, 상기 영상에서 상기 실루엣을 포함하는 주변 영역을 스무딩할 수 있다.
도 1은 일실시예에 따른 대상 객체를 모델링하는 방법을 나타낸 플로우차트이다.
도 2는 다른 실시예에 따른 대상 객체를 모델링하는 방법을 나타낸 플로우차트이다.
도 3은 일실시예에 따른 대상 객체를 모델링하는 방법에 따라 대상 객체를 입자들로 시각화한 것을 나타낸 도면이다.
도 4는 일실시예에 따른 대상 객체를 모델링하는 방법에 따라 시각화된 입자들로부터 획득한 깊이 정보를 나타낸 도면이다.
도 5는 일실시예에 따른 대상체를 모델링하는 방법에 따라 검출된 실루엣을 나타낸 도면이다.
도 6은 일실시예에 따른 대상 객체를 모델링하는 방법에 따라 대상 객체의 실루엣을 검출하는 방법을 설명하기 위한 도면이다.
도 7은 일실시예에 따른 대상 객체를 모델링하는 방법에 따라 스무딩된 깊이 맵을 나타낸 도면이다.
도 8은 일실시예에 따른 대상 객체를 모델링하는 방법에 따라 렌더링 이미지(rendering image)를 생성하는 방법을 나타낸 플로우차트이다.
도 9는 일실시예에 따른 대상 객체를 모델링하는 장치의 블록도이다.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
아래 설명하는 실시예들에는 다양한 변경이 가해질 수 있다. 아래 설명하는 실시예들은 실시 형태에 대해 한정하려는 것이 아니며, 이들에 대한 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
실시예에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 실시예를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 1은 일실시예에 따른 대상 객체를 모델링하는 방법을 나타낸 플로우차트이다.
도 1을 참조하면, 일실시예에 따른 대상 객체를 모델링하는 장치(이하, '모델링 장치')는 대상 객체를 입자들(particles)로 표현(represent)한 영상으로부터 깊이 정보를 획득한다(110). 단계(110)에서, 모델링 장치는 대상 객체의 움직임을 계산하여 입자들을 스프라이트(sprite)로 시각화하고, 시각화된 입자들로부터 깊이 정보를 연산할 수 있다. 깊이 정보는, 예를 들어, 깊이 맵(depth map)의 형태를 가질 수 있다.
모델링 장치는 영상에서 서로 인접한 입자들 간의 거리 정보를 획득한다(130).
단계(130)에서, 모델링 장치는 단계(110)에서 획득한 깊이 정보를 기초로, 영상에서 입자들 간의 거리 정보를 획득할 대상 영역을 정의하고, 대상 영역에 포함된 인접한 입자들 간의 거리 정보를 획득할 수 있다. 일실시예에서 획득되는 인접한 입자들 간의 거리 정보에 대하여는 도 6을 참조하여 설명한다.
모델링 장치는, 단계(110)에서 획득한 깊이 정보와 단계(130)에서 획득한 거리 정보에 기초하여 대상 객체의 실루엣(Silhouette)을 검출한다(150). 대상 객체의 실루엣(Silhouette) 또는 능선(ridge) 등은 깊이 정보의 차이가 클 때 발생할 수 있다. 단계(150)에서, 모델링 장치는 깊이 정보의 차이가 클 때 발생하는 실루엣을 보다 정확히 검출하기 위하여, 입자들 간의 거리 정보가 미리 설정된 임계치 이상인지 여부를 판단하고, 판단 결과에 기초하여 대상 객체의 실루엣을 검출할 수 있다. 미리 설정된 임계치는 입자들의 반지름의 2배(2r)일 수 있다.
이때, 검출된 실루엣은 아래의 도 5에 도시된 바와 같이 유체(바닷물)와 배경의 경계선 부분 및 유체가 융기하여 산등성이 모양을 형성하는 부분 등을 포함할 수 있다. 모델링 장치가 대상 객체의 실루엣을 검출하는 구체적인 방법을 도 6을 참조하여 설명한다.
실시예에 따라서, 모델링 장치는 깊이 정보를 이용하여 실루엣을 검출하고, 영상에서 서로 인접한 입자들 간의 거리 정보에 기초하여 검출된 실루엣을 보정할 수도 있다. 다시 말해, 모델링 장치는 깊이 맵으로 실루엣을 찾은 다음, 입자의 크기에 기반한 입자들 간의 거리 정보에 의해 실루엣이 보다 자연스러운 형태로 표현되도록 보정할 수 있다.
도 2는 다른 실시예에 따른 대상 객체를 모델링하는 방법을 나타낸 플로우차트이다.
도 2를 참조하면, 다른 실시예에 따른 모델링 장치는 대상 객체의 움직임을 계산하여 입자들을 시각화할 수 있다(210). 모델링 장치는 예를 들어, 도 3과 같은 형태로 대상 객체를 입자들로 표현할 수 있다.
모델링 장치는 시각화한 입자들로부터 깊이 정보를 연산할 수 있다(220). 이때, 대상 객체는 유체(fluid) 또는 변형체(Deformable Body)이거나 유체와 변형체가 결합된 형태일 수 있다. 깊이 정보는 예를 들어, 도 4에 도시된 것과 같은 깊이 맵(depth map)의 형태일 수 있다.
모델링 장치는 단계(220)에서 연산한 깊이 정보를 기초로, 영상에서 입자들 간의 거리 정보를 획득할 대상 영역을 정의할 수 있다(230).
모델링 장치는 모든 입자에 대하여 인접 입자들 간의 거리 정보를 계산하는 것이 아니라, 입자들 간의 거리 정보를 계산하기에 앞서 1차적으로 깊이 정보를 기반으로 대상 영역을 대략적으로 선택하고, 대상 영역에서 입자들 간의 거리 정보를 획득할 수 있다.
실시예에 따라서, 모델링 장치는 영상에서 서로 인접하는 입자들 간의 깊이 정보의 차이에 기초하여 대상 영역을 정의할 수도 있다. 모델링 장치는 영상의 깊이 맵에서 명암 차가 큰 영역(예를 들어, 입자들 간의 깊이 정보의 차이가 0.5 이상인 영역)을 인접 입자들 간의 거리 정보를 획득하는 대상 영역으로 정의할 수 있다.
모델링 장치는, 단계(230)에서 정의된 대상 영역에 포함된 인접한 입자들 간의 거리 정보를 획득하고(240), 단계(240)에서 획득한 입자들 간의 거리 정보가 미리 설정된 임계치 이상인지 여부를 판단할 수 있다(250).
단계(250)에서, 획득한 입자들 간의 거리 정보가 임계치 이상이라고 판단된 경우, 모델링 장치는 깊이 정보 및 입자들 간의 거리 정보에 기초하여 대상 객체의 실루엣을 검출할 수 있다(260). 이때, 모델링 장치는 예를 들어, 도 5와 같은 형태로 실루엣을 검출할 수 있다.
모델링 장치는 영상에서 실루엣을 포함하는 주변 영역을 스무딩(smoothing)할 수 있다(270). 이때, 모델링 장치는 예를 들어, 양방향 필터(bilateral filter)를 이용하여 실루엣을 포함하는 주변 영역을 스무딩할 수 있다. 양방향 필터는 이미지 영역에서 스무딩에 사용되는 전통적인 필터 중 하나로서, 두 픽셀은 공간 영역에서 서로 인접해 있고, 이들은 서로 유사한 근처값을 갖는다는 개념에 기반한다.
모델링 장치는 실루엣을 포함하는 주변 영역에서 깊이 정보에 대한 필터링을 수행하여 경계(boundary)는 살리면서도 실루엣, 능선(ridge) 등은 부드럽게 표현할 수 있다.
단계(250)에서, 입자들 간의 거리 정보가 임계치보다 작다고 판단된 경우, 모델링 장치는 깊이 정보만을 기초로 대상 객체의 실루엣을 검출하고(280), 검출된 실루엣을 포함하는 주변 영역을 제외한 바깥 영역은 스무딩하지 않는다.
도 3은 일실시예에 따른 대상 객체를 모델링하는 방법에 따라 대상 객체들을 입자들로 시각화한 것을 나타낸 도면이다.
도 3을 참조하면, 대상 객체(예를 들어, 파도가 요동치는 바다)가 구(sphere) 모양의 입자(310)들로 표현된 영상이 도시된다.
일실시예에 따른 모델링 장치는 바다(유체)의 움직임을 계산하여 바다를 구성하는 (유체) 입자들(310)을 원 또는 타원 등과 같은 스프라이트(sprite)로 시각화 할 수 있다. 이때, 도 3에 도시된 입자(310)들은 사용자의 눈으로부터의 거리에 따라, 가까이 있는 것은 크게 보이고, 멀리 있는 것은 작게 보일 뿐, 실제 그 입자의 크기는 사용자의 눈과의 거리에 상관없이 동일하다.
도 4는 일실시예에 따른 대상 객체를 모델링하는 방법에 따라 시각화된 입자들로부터 획득한 깊이 정보를 나타낸 도면이다.
도 4를 참조하면, 대상 객체를 입자들로 표현한 영상으로부터 획득된 깊이 맵이 도시된다.
깊이 맵에서 각 입자는 흰색부터 검정색까지 다양한 명암으로 표현될 수 있다.
깊이 맵에서 흰색으로 표현된 부분(410)은 사용자의 눈으로부터 멀리 있는 입자들에 대응되고, 검정색으로 표현된 부분(430)은 사용자의 눈으로부터 가까이 있는 입자들에 대응될 수 있다. 깊이 맵에 표현된 입자의 색이 검정색(430)에서 흰색(410)으로 갈수록 해당 입자와 사용자의 눈과의 거리는 멀어지게 된다.
예를 들어, 깊이 맵에서 흰색으로 표현된 입자에 대한 대한 깊이 정보를 '1'이라 하면, 검정색으로 표현된 입자에 대한 깊이 정보는 '0'이 될 수 있다.
일실시예에서는 대상 객체를 입자로 구성하므로 영상에 대한 깊이 맵을 생성하는 경우에 유체와 배경의 경계선 부분(450) 또는 유체가 융기하여 산등성이 모양으로 형성된 능선(ridge) 부분(460) 등이 울퉁불퉁하게 표현될 수 있다.
도 5는 일실시예에 따른 대상 객체를 모델링하는 방법에 따라 검출된 실루엣을 나타낸 도면이다.
도 5에서 검출된 실루엣은 굵은 실선(510)으로 표시되었고, 도 4의 깊이 맵에서 유체와 배경의 경계선 부분과 능선 부분에 해당하는 영역 또한 부드럽게 표현된 것을 볼 수 있다. 이하, 도 6에서는 일실시예에 따라 대상 객체를 입자들로 표현한 영상에 대하여 실루엣을 부드럽게 표현하는 방법을 설명한다.
도 6은 일실시예에 따른 대상 객체를 모델링하는 방법에 따라 대상 객체의 실루엣을 검출하는 방법을 설명하기 위한 도면이다.
도 6을 참조하면, 깊이 정보에 기초하여 검출된 대상 객체의 실루엣(610) 및 깊이 정보 및 거리 정보에 기초하여 검출된 실루엣(635)이 도시된다.
앞서 언급한 바와 같이, 대상 객체를 입자들로 표현한 영상으로부터 획득된 깊이 맵은 그 구성 입자의 형태(구(sphere) 형태)가 경계선 부분 또는 능선(ridge) 부분에 그대로 드러나므로 실루엣이 610과 같이 울퉁불퉁하게 표현될 수 있다.
일실시예에서는 영상에서 서로 인접한 입자들 간의 거리 정보 및 깊이 정보를 함께 이용하여 실루엣을 부드럽게 표현할 수 있다.
모델링 장치는 입자들 간의 거리 정보가 미리 설정된 임계치보다 작은 경우, 실루엣이 아닌 것으로 판단하여 스무딩을 수행하지 않을 수 있다. 또한, 모델링 장치는 입자들 간의 거리 정보가 미리 설정된 임계치 이상인 경우, 깊이 정보 및 입자들 간의 거리 정보 둘 다에 기초하여 대상 객체의 실루엣을 검출할 수 있다. 미리 설정된 임계치는 640과 같이 입자(들)의 반지름의 2배, 다시 말해 입자의 지름일 수 있다.
여기서, 입자들 간의 거리 정보가 입자의 반지름의 2배 이상이라는 것은 어느 하나의 입자와 인접한 다른 입자가 최소한 서로 맞닿아 있거나 서로 떨어져 있다는 것을 의미한다. 또한, 이는 서로 인접한 인자들 간의 거리는 630과 같이 깊이 맵에서 인접한 입자들 간의 깊이 정보의 차이로도 해석할 수 있다.
모델링 장치는 이와 같이 입자들이 서로 맞닿거나 떨어져 있는 영역, 다시 말해 어느 정도의 깊이 정보의 차이를 가지는 영역에서 획득한 입자들 간의 거리 정보 및 깊이 정보에 의해 635와 같이 실루엣을 검출할 수 있다.
모델링 장치는 1차적으로 가지고 있는 깊이 정보를 기반으로 추가로 입자들 간의 거리 정보를 이용하여 실루엣을 검출할 수 있다.
도 7은 일실시예에 따른 대상 객체를 모델링하는 방법에 따라 스무딩된 깊이 맵을 나타낸 도면이다.
도 7을 참조하면, 도 5에서 530 영역을 스무딩한 결과가 도시된다.
일실시예에서 모델링 장치는 영상에서 실루엣을 포함하는 주변 영역을 스무딩(smoothing)할 수 있다. 이때, 모델링 장치는 예를 들어, 양방향 필터(bilateral filter)를 이용한 Bilateral Filtered smoothing 알고리즘, Naively Smoothing 알고리즘, Laplacian smoothing 알고리즘 등과 같이 일반적인 영상 처리 분야에서 사용하는 다양한 스무딩 기술들을 이용하여 실루엣을 포함하는 주변 영역을 스무딩할 수 있다.
도 8은 일실시예에 따른 대상 객체를 모델링하는 방법에 따라 렌더링 이미지(rendering image)를 생성하는 방법을 나타낸 플로우차트이다.
도 8을 참조하면, 일실시예에 따른 모델링 장치는 대상 객체를 촬영하는 카메라의 위치, 방향, 카메라로 포착하는 장면의 시야인 화각(field of view) 등과 같이 깊이 정보를 획득하는 데에 필요한 정보를 수신할 수 있다(810).
모델링 장치는 대상 객체를 구성하는 입자들을 스프라이트(sprite)로 시각화할 수 있다(820).
모델링 장치는 시각화된 입자들로부터 깊이 정보 및 입자들 간의 거리 정보를 획득할 수 있다(830).
모델링 장치는 단계(830)에서 획득한 깊이 정보와 입자들 간의 거리 정보에 기초하여 대상 객체의 실루엣(Silhouette)을 검출할 수 있다(840).
모델링 장치는 실루엣을 포함하는 주변 영역을 스무딩(smoothing)할 수 있다(850). 이때, 모델링 장치는 깊이 맵(깊이 정보)에서 실루엣을 포함하는 일정 영역을 필터링하여 스무딩할 수 있다. 모델링 장치는 필터링에 예를 들어, 양방향 필터(bilateral filter)를 이용할 수 있다. 스무딩은 전역 스무딩과 실루엣 스무딩으로 나눌 수 있다. 전역 스무딩은 예를 들어, 물의 표면을 부드럽게 표현할 수 있고, 실루엣 스무딩은 경계를 부드럽게 표현할 수 있다. 일실시예에 따른 모델링 장치는 전역 스무딩과 실루엣 스무딩을 선택적으로 혹은 함께 사용할 수 있다.
스무딩에 의해 깊이 맵에서 표면(surfece)과 능선(ridge)은 입자의 형태인 구형이 아니라 평평하게 표현될 수 있다. 스무딩에 의한 경계는 모델링 장치가 사용하는 필터(filter)에 따라 명확하게 표현될 수도 있고, 흐리거나 부드럽게 표현될 수도 있다. 예를 들어, 모델링 장치가 양방향 필터(bilateral filter)를 사용하는 경우, 경계는 명확하게 표현되고, 가우시안 필터(gaussian filter)를 사용하는 경우, 경계는 흐리거나 부드럽게 표현될 수도 있다.
모델링 장치는 실루엣이 부드럽게 표현하기 위해 실루엣으로부터 일정 거리 내에 있는 영역을 선택적으로 스무딩할 수 있다.
모델링 장치는 단계(850)에서 필터링된 깊이 정보 값을 이용하여 노말 정보(normal information)를 계산할 수 있다(860). 이때, 노말 정보는 예를 들어, 텍스쳐를 이용한 음영 등을 세부 묘사하여 연산 효율을 높이는 노말 맵(normal map)일 수 있다.
모델링 장치는 시각화 요소들을 계산할 수 있다(870). 모델링 장치는 단계(860)에서 계산한 노말 정보 및 단계(850)에서 필터링된 깊이 정보를 이용하여 대상 객체의 반사, 굴절, 그림자, 투명도 등의 시각화 요소들을 계산할 수 있다.
모델링 장치는 단계(870)에서 계산한 시각화 요소들을 결합하여 최종적인 렌더링 이미지를 생성할 수 있다(880).
도 9는 일실시예에 따른 대상 객체를 모델링하는 장치의 블록도이다.
도 9를 참조하면, 일실시예에 따른 모델링 장치(900)는 메모리(910) 및 프로세서(930)를 포함한다. 또한, 모델링 장치(900)는 통신부(950)를 포함할 수 있다.
메모리(910)는 대상 객체를 모델링하는 장치의 동작을 제어하는 프로그램을 기록한다.
프로세서(930)는 메모리(910)에 저장된 프로그램을 구동시킨다. 프로세서(930)는 하나 또는 복수 개일 수 있다.
프로그램은 대상 객체를 입자들(particles)로 표현(represent)한 영상으로부터 깊이 정보를 획득하고, 영상에서 서로 인접한 입자들 간의 거리 정보를 획득한다. 프로그램은 깊이 정보와 입자들 간의 거리 정보에 기초하여 대상 객체의 실루엣(Silhouette)을 검출한다.
프로그램은 입자들 간의 거리 정보가 미리 설정된 임계치 이상인지 여부를 판단한다. 프로그램은 입자들 간의 거리 정보가 임계치보다 작은 경우, 깊이 정보를 기초로 대상 객체의 실루엣을 검출하고, 입자들 간의 거리 정보가 임계치 이상인 경우, 깊이 정보 및 입자들 간의 거리 정보에 기초하여 대상 객체의 실루엣을 검출할 수 있다. 여기서, 미리 설정된 임계치는 입자들의 반지름의 2배일 수 있다.
프로그램은 깊이 정보를 이용하여 실루엣을 검출하고, 검출된 실루엣을 거리 정보에 기초하여 보정할 수 있다.
프로그램은 깊이 정보를 기초로, 영상에서 입자들 간의 거리 정보를 획득할 대상 영역을 정의하고, 대상 영역에 포함된 인접한 입자들 간의 거리 정보를 획득할 수 있다.
프로그램은 영상에서 서로 인접하는 입자들 간의 깊이 정보의 차이에 기초하여 대상 영역을 정의할 수 있다.
프로그램은 영상에서 실루엣을 포함하는 주변 영역을 스무딩(smoothing)할 수 있다.
통신부(950)는 예를 들어, 대상 객체를 촬영하는 카메라의 위치, 방향, 카메라로 포착하는 장면의 시야인 화각(field of view) 등과 같이 깊이 정보를 획득하는 데에 필요한 정보를 수신할 수 있다.
이상에서 설명된 장치는 하드웨어 구성 요소, 소프트웨어 구성 요소, 및/또는 하드웨어 구성 요소 및 소프트웨어 구성 요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성 요소는, 예를 들어, 프로세서, 컨트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
900: 모델링 장치
910: 메모리
930: 프로세서
950: 통신부

Claims (20)

  1. 대상 객체를 입자들(particles)로 표현(represent)한 영상으로부터 깊이 정보를 획득하는 단계;
    상기 영상에서 서로 인접한 입자들 간의 거리 정보를 획득하는 단계; 및
    상기 깊이 정보와 상기 거리 정보에 기초하여 상기 대상 객체의 실루엣(Silhouette)을 검출하는 단계
    를 포함하고,
    상기 실루엣을 검출하는 단계는,
    상기 거리 정보가 미리 설정된 임계치 이상인지 여부를 판단하는 단계; 및
    상기 거리 정보가 상기 임계치 이상인 경우, 상기 깊이 정보 및 상기 거리 정보에 기초하여 상기 대상 객체의 실루엣을 검출하는 단계
    를 포함하는, 대상 객체를 모델링하는 방법.
  2. 제1항에 있어서,
    상기 실루엣을 검출하는 단계는,
    상기 거리 정보가 미리 설정된 임계치 이상인지 여부를 판단하는 단계; 및
    상기 거리 정보가 상기 임계치보다 작은 경우, 상기 깊이 정보를 기초로 상기 대상 객체의 실루엣을 검출하는 단계
    를 포함하는, 대상 객체를 모델링하는 방법.
  3. 삭제
  4. 제2항에 있어서,
    상기 미리 설정된 임계치는
    상기 입자들의 반지름의 2배인, 대상 객체를 모델링하는 방법.
  5. 제1항에 있어서,
    상기 실루엣을 검출하는 단계는,
    상기 깊이 정보를 이용하여 상기 실루엣을 검출하는 단계; 및
    상기 검출된 실루엣을 상기 거리 정보에 기초하여 보정하는 단계
    를 포함하는, 대상 객체를 모델링하는 방법.
  6. 제1항에 있어서,
    상기 거리 정보를 획득하는 단계는,
    상기 깊이 정보를 기초로, 상기 영상에서 상기 거리 정보를 획득할 대상 영역을 정의하는 단계; 및
    상기 대상 영역에 포함된 상기 인접한 입자들 간의 상기 거리 정보를 획득하는 단계
    를 포함하는, 대상 객체를 모델링하는 방법.
  7. 제6항에 있어서,
    상기 대상 영역을 정의하는 단계는,
    상기 영상에서 서로 인접하는 입자들 간의 상기 깊이 정보의 차이에 기초하여 상기 대상 영역을 정의하는 단계
    를 포함하는, 대상 객체를 모델링하는 방법.
  8. 제1항에 있어서,
    상기 깊이 정보를 획득하는 단계는,
    상기 입자들을 스프라이트(sprite)로 시각화 하는 단계; 및
    상기 시각화된 입자들로부터 상기 깊이 정보를 연산하는 단계
    를 포함하는, 대상 객체를 모델링하는 방법.
  9. 제8항에 있어서,
    상기 시각화 하는 단계는,
    상기 대상 객체의 움직임을 계산하여 상기 입자들을 시각화 하는 단계
    를 포함하는, 대상 객체를 모델링하는 방법.
  10. 제1항에 있어서,
    상기 영상에서 상기 실루엣을 포함하는 주변 영역을 스무딩(smoothing)하는 단계
    를 더 포함하는, 대상 객체를 모델링하는 방법.
  11. 제10항에 있어서,
    상기 스무딩하는 단계는
    양방향 필터(bilateral filter)를 이용하여 상기 주변 영역을 스무딩하는 단계
    를 포함하는, 대상 객체를 모델링하는 방법.
  12. 제1항에 있어서,
    상기 대상 객체는
    유체(fluid) 또는 변형체(Deformable Body) 중 적어도 하나를 포함하는, 대상 객체를 모델링하는 방법.
  13. 제1항 내지 제2항, 제4항 내지 제12항 중에서 어느 하나의 항의 방법을 실행시키기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록 매체.
  14. 대상 객체를 모델링하는 장치에 있어서,
    상기 대상 객체를 모델링하는 장치의 동작을 제어하는 프로그램을 기록하는 메모리; 및
    상기 프로그램을 구동시키는 하나 이상의 프로세서
    를 포함하고,
    상기 프로그램은,
    대상 객체를 입자들(particles)로 표현(represent)한 영상으로부터 깊이 정보를 획득하고, 상기 영상에서 서로 인접한 입자들 간의 거리 정보를 획득하며, 상기 거리 정보가 미리 설정된 임계치 이상인지 여부를 판단하고, 상기 거리 정보가 상기 임계치보다 작은 경우에 상기 깊이 정보를 기초로 상기 대상 객체의 실루엣을 검출하고, 상기 거리 정보가 상기 임계치 이상인 경우에 상기 깊이 정보와 상기 거리 정보에 기초하여 상기 대상 객체의 실루엣(Silhouette)을 검출하는, 대상 객체를 모델링하는 장치.
  15. 삭제
  16. 제14항에 있어서,
    상기 프로그램은,
    상기 깊이 정보를 이용하여 상기 실루엣을 검출하고, 상기 검출된 실루엣을 상기 거리 정보에 기초하여 보정하는, 대상 객체를 모델링하는 장치.
  17. 제14항에 있어서,
    상기 미리 설정된 임계치는
    상기 입자들의 반지름의 2배인, 대상 객체를 모델링하는 장치.
  18. 제14항에 있어서,
    상기 프로그램은,
    상기 깊이 정보를 기초로, 상기 영상에서 상기 거리 정보를 획득할 대상 영역을 정의하고, 상기 대상 영역에 포함된 상기 인접한 입자들 간의 상기 거리 정보를 획득하는, 대상 객체를 모델링하는 장치.
  19. 제18항에 있어서,
    상기 프로그램은,
    상기 영상에서 서로 인접하는 입자들 간의 상기 깊이 정보의 차이에 기초하여 상기 대상 영역을 정의하는, 대상 객체를 모델링하는 장치.
  20. 제14항에 있어서,
    상기 프로그램은,
    상기 영상에서 상기 실루엣을 포함하는 주변 영역을 스무딩(smoothing)하는, 대상 객체를 모델링하는 장치.
KR1020140137655A 2014-10-13 2014-10-13 부드러운 실루엣 표현을 위한 대상 개체를 모델링하는 방법 및 장치 KR102255188B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140137655A KR102255188B1 (ko) 2014-10-13 2014-10-13 부드러운 실루엣 표현을 위한 대상 개체를 모델링하는 방법 및 장치
US14/879,273 US10121253B2 (en) 2014-10-13 2015-10-09 Method and apparatus for modeling target object to represent smooth silhouette

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140137655A KR102255188B1 (ko) 2014-10-13 2014-10-13 부드러운 실루엣 표현을 위한 대상 개체를 모델링하는 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20160043366A KR20160043366A (ko) 2016-04-21
KR102255188B1 true KR102255188B1 (ko) 2021-05-24

Family

ID=55655807

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140137655A KR102255188B1 (ko) 2014-10-13 2014-10-13 부드러운 실루엣 표현을 위한 대상 개체를 모델링하는 방법 및 장치

Country Status (2)

Country Link
US (1) US10121253B2 (ko)
KR (1) KR102255188B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108647770A (zh) * 2018-04-19 2018-10-12 东华大学 一种基于粒子群算法的多无人机救灾搜索路径的优化方法
CN112819878B (zh) * 2021-01-28 2023-01-31 北京市商汤科技开发有限公司 一种深度检测方法、装置、计算机设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6181838B1 (en) 1997-03-10 2001-01-30 Quickbuy, Inc. Mechanism for the capture of graphical representations
KR100963114B1 (ko) 2008-12-23 2010-06-15 고려대학교 산학협력단 유체형상 표현장치 및 방법
US20130336583A1 (en) 2011-02-25 2013-12-19 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Determining model parameters based on transforming a model of an object
US8947430B1 (en) 2010-02-26 2015-02-03 Nvidia Corporation System and method for rendering a particle-based fluid surface

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4333889B2 (ja) 1999-06-30 2009-09-16 株式会社バンダイナムコゲームス 画像生成システム及び情報記憶媒体
US6744435B2 (en) 2001-04-26 2004-06-01 Mitsubishi Electric Research Laboratories, Inc. Rendering discrete sample points projected to a screen space with a continuous resampling filter
KR100388897B1 (ko) 2001-06-08 2003-06-25 현대하이스코 주식회사 가공성, 내식성이 뛰어난 고윤활크롬-프리 내지문 강판
EP1665815A2 (de) 2003-09-15 2006-06-07 Armin Grasnick Verfahren zum erstellen einer raumbildvorlage für abbildungsverfahren mit rumlichen tiefenwirkungen und vorrichtung zum anzeigen einer raumbildvorlage
US20050219249A1 (en) * 2003-12-31 2005-10-06 Feng Xie Integrating particle rendering and three-dimensional geometry rendering
US20080246759A1 (en) 2005-02-23 2008-10-09 Craig Summers Automatic Scene Modeling for the 3D Camera and 3D Video
KR101214903B1 (ko) * 2011-03-04 2012-12-24 (주)에프엑스기어 입자간의 상호 작용을 이용한 유체 시뮬레이션 시스템 및 방법
KR101244826B1 (ko) * 2011-03-04 2013-03-19 (주)에프엑스기어 격자와 입자의 상호 작용을 이용한 유체 시뮬레이션 시스템 및 방법
KR101307232B1 (ko) * 2011-11-30 2013-09-11 한국수자원공사 하천홍수 상황인지시스템 및 컴퓨터로 판독 가능한 기록매체
KR101319996B1 (ko) * 2011-12-30 2013-10-18 세종대학교산학협력단 유체 시뮬레이션 방법
KR20160024552A (ko) * 2014-08-26 2016-03-07 삼성전자주식회사 입자로 구성된 변형체를 모델링하는 방법 및 장치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6181838B1 (en) 1997-03-10 2001-01-30 Quickbuy, Inc. Mechanism for the capture of graphical representations
KR100963114B1 (ko) 2008-12-23 2010-06-15 고려대학교 산학협력단 유체형상 표현장치 및 방법
US8947430B1 (en) 2010-02-26 2015-02-03 Nvidia Corporation System and method for rendering a particle-based fluid surface
US20130336583A1 (en) 2011-02-25 2013-12-19 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Determining model parameters based on transforming a model of an object

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Muller, Matthias, et al. "Interaction of fluids with deformable solids." Computer Animation and Virtual Worlds vol.15.(2004.07.31.)*

Also Published As

Publication number Publication date
KR20160043366A (ko) 2016-04-21
US10121253B2 (en) 2018-11-06
US20160104319A1 (en) 2016-04-14

Similar Documents

Publication Publication Date Title
US10482656B2 (en) 3D face modeling methods and apparatuses
CN109671115B (zh) 使用深度值估计的图像处理方法和装置
CN106683199B (zh) 3d图形渲染方法和设备
KR102137264B1 (ko) 카메라 포즈 추정 장치 및 방법
CN112465938A (zh) 三维3d渲染方法和装置
US8743114B2 (en) Methods and systems to determine conservative view cell occlusion
US10019848B2 (en) Edge preserving color smoothing of 3D models
KR102255188B1 (ko) 부드러운 실루엣 표현을 위한 대상 개체를 모델링하는 방법 및 장치
JPWO2019012632A1 (ja) 認識処理装置、認識処理方法及びプログラム
CN108122250B (zh) 用于立体匹配的方法和设备
US9196050B2 (en) Image-based bridge identification and boundary detection
JP7033369B2 (ja) サーフェス・ベースのオブジェクト識別
KR102151127B1 (ko) 3차원 영상 생성 장치 및 방법
KR102281180B1 (ko) 영상 처리 장치 및 방법
US11176678B2 (en) Method and apparatus for applying dynamic effect to image
JP5473096B2 (ja) イメージベースドビジュアルハルにおける凹状表面のモデリング
WO2014164230A1 (en) Hair surface reconstruction from wide-baseline camera arrays
KR102029428B1 (ko) 기계학습 장치 및 방법
KR101906142B1 (ko) 영상 처리 장치 및 방법
US20150103071A1 (en) Method and apparatus for rendering object and recording medium for rendering
US10026216B2 (en) Graphics data processing method and apparatus
KR20140109185A (ko) 영상 처리 장치 및 방법
CN112381823B (zh) 用于图像的几何特征的提取方法和相关产品
US9721151B2 (en) Method and apparatus for detecting interfacing region in depth image
Bresson A Short Guide on a Fast Global Minimization Algorithm for Active Contour Models

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