KR101028699B1 - 회화적 렌더링 장치 및 방법 - Google Patents

회화적 렌더링 장치 및 방법 Download PDF

Info

Publication number
KR101028699B1
KR101028699B1 KR1020090041389A KR20090041389A KR101028699B1 KR 101028699 B1 KR101028699 B1 KR 101028699B1 KR 1020090041389 A KR1020090041389 A KR 1020090041389A KR 20090041389 A KR20090041389 A KR 20090041389A KR 101028699 B1 KR101028699 B1 KR 101028699B1
Authority
KR
South Korea
Prior art keywords
stroke
motion vector
image frame
pixel
determined
Prior art date
Application number
KR1020090041389A
Other languages
English (en)
Other versions
KR20100122381A (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 KR1020090041389A priority Critical patent/KR101028699B1/ko
Publication of KR20100122381A publication Critical patent/KR20100122381A/ko
Application granted granted Critical
Publication of KR101028699B1 publication Critical patent/KR101028699B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/40Filling a planar surface by adding surface attributes, e.g. colour or texture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/269Analysis of motion using gradient-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/40Analysis of texture
    • G06T7/41Analysis of texture based on statistical description of texture
    • G06T7/44Analysis of texture based on statistical description of texture using image operators, e.g. filters, edge density metrics or local histograms

Abstract

회화적 렌더링 장치 및 방법이 개시된다. 움직임 벡터 산출부는 시간적으로 연속하는 복수의 영상프레임에 대해 인접한 두 개의 영상프레임 사이의 움직임 벡터인 복수의 개별 움직임 벡터를 산출하고, 복수의 개별 움직임 벡터의 평균에 의해 영상프레임 중에서 선택된 처리대상 영상프레임에 대한 움직임 벡터인 최종 움직임 벡터를 산출한다. 그라디언트 산출부는 처리대상 영상프레임을 구성하는 각 화소의 그라디언트 방향을 산출한다. 스트로크 방향 결정부는 처리대상 영상프레임 상에서 산출된 최종 움직임 벡터의 크기가 사전에 설정된 기준값보다 큰 영역에 대하여는 최종 움직임 벡터의 방향을 처리대상 영상프레임을 구성하는 각 화소에 적용되는 스트로크의 방향으로 결정하고, 최종 움직임 벡터의 크기가 기준값 이하인 영역에 대하여는 그라디언트 방향을 스트로크의 방향으로 결정한다. 렌더링부는 결정된 스트로크의 방향을 기초로 처리대상 영상프레임을 구성하는 각 화소에 스트로크를 적용하여 렌더링 영상을 생성한다. 본 발명에 따르면, 렌더링시 적용되는 스트로크의 방향을 결정할 때 움직임 벡터의 방향과 그라디언트 방향을 적절히 사용함으로써, 움직이는 객체가 존재하는 영역에 대하여는 방향성을 사실적으로 표현할 수 있고, 정지한 객체가 존재하는 영역에 대하여는 객체의 윤곽을 정확하게 표현할 수 있다.

Description

회화적 렌더링 장치 및 방법{Apparatus and method for painterly rendering}
본 발명은 회화적 렌더링 장치 및 방법에 관한 것으로서, 보다 상세하게는, 카메라로 촬영한 영상을 손으로 그린 듯한 회화적 느낌으로 표현하는 장치 및 그 방법에 관한 것이다.
회화적 렌더링(peinterly rendering)은 스트로크를 기본 단위로 사용하여 화가가 그림을 그린 것과 같은 과정 및 효과를 표현하는 렌더링을 의미한다. 이때 스트로크의 방향을 결정하는 방법에 관하여 다양한 연구가 진행되어 왔다.
초기에는 사용자 입력을 통하여 스트로크의 방향을 결정하는 방법이 사용되었다. 이 방법에서는 각 스트로크의 위치, 색상 및 방향을 사용자가 직접 입력하여 스트로크를 생성하였다. 이후의 연구에서는 주로 영상의 그래디언트(gradient)를 기반으로 하여 스트로크의 방향을 결정하였다. 영상의 그래디언트를 기반으로 결정된 스트로크의 방향은 객체의 윤곽선을 따르게 되므로 외형을 잘 표현할 수 있다.
리트비노비쯔(Litwinowicz)는 입력 영상의 그래디언트 정보에 기반하여 직선 스트로크를 사용하고, 에지 클리핑 기법을 적용하여 객체의 경계 부분을 잘 살렸 다. 또한 허쯔만(Hertzmann)은 영상의 그래디언트의 수직 방향으로 컨트롤 포인트를 지정하고, B-spline 기법을 적용하여 곡선 브러시를 표현하였다. 이와 같이 영상의 그래디언트에 기반한 스트로크의 방향은 객체의 경계 부분에서는 효과적으로 방향을 표현할 수 있지만, 주변의 스트로크 간에 일관된 방향성을 표현하기는 어렵다.
이러한 문제를 보완하기 위해 그래디언트 정보에 기반한 보간법이 제안되었다. 보간법은 주변의 강한 그래디언트 값들을 찾고, 이에 기반하여 주변의 그래디언트 값들을 일정한 방향으로 변형시킨다. 일관된 라인 드로잉(line drawing)을 위해 제안된 ETF 보간법은 기존의 보간법에서 문제된 소용돌이치는 방향의 한계를 극복하였으며, 매우 빠르게 방향 보간을 할 수 있다. 그래디언트 보간법에 의해 생성된 스트로크는 전체적으로 일관된 흐름을 갖도록 대상의 형태를 표현할 수 있다. 그러나 광범위하게 그래디언트 값이 없는 영역은 보간을 하여도 항상 안쪽의 그래디언트 값이 0이 되어 부적절하게 스트로크의 방향이 결정되었다. 또한 이러한 기법들도 그래디언트 값에 기반하기 때문에 객체의 사실적인 움직임을 표현하는 데에는 한계를 가진다.
그 밖에 반 고흐(Van Gogh)의 작품에서 볼 수 있는 소용돌이를 표현하기 위해 유체 시뮬레이션에 기반하여 스트로크의 방향성을 표현하는 방법이 제안되었으나, 사용자의 입력을 필요로 하며 주변의 형태를 고려하지 않고 방향성이 표현되는 한계가 존재하였다. 또한 포토 모자이크의 알고리즘을 응용하여 여러 장의 브러시 이미지를 데이터베이스로 가지고 그 중 최적의 브러시 모양을 선택하여 적용하는 방법 및 에러 변수를 설정하여 실제 사람이 그린 것과 같이 실수를 유발하는 렌더링 방법이 제안되었으나, 브러시 스트로크들 간의 방향성이 일관되게 표현되지 않는 문제를 가진다.
본 발명이 이루고자 하는 기술적 과제는 움직이는 객체가 존재하는 영상프레임에 대하여 객체의 방향성을 사실적으로 표현할 수 있는 회화적 렌더링 장치 및 방법을 제공하는 데 있다.
본 발명이 이루고자 하는 다른 기술적 과제는 움직이는 객체가 존재하는 영상프레임에 대하여 객체의 방향성을 사실적으로 표현할 수 있는 회화적 렌더링 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는 데 있다.
상기의 기술적 과제를 달성하기 위한, 본 발명에 따른 회화적 렌더링 장치는, 시간적으로 연속하는 복수의 영상프레임에 대해 인접한 두 개의 영상프레임 사이의 움직임 벡터인 복수의 개별 움직임 벡터를 산출하고, 상기 복수의 개별 움직임 벡터의 평균에 의해 상기 영상프레임 중에서 선택된 처리대상 영상프레임에 대한 움직임 벡터인 최종 움직임 벡터를 산출하는 움직임 벡터 산출부; 상기 처리대상 영상프레임을 구성하는 각 화소의 그라디언트 방향을 산출하는 그라디언트 산출부; 상기 처리대상 영상프레임 상에서 산출된 상기 최종 움직임 벡터의 크기가 사전에 설정된 기준값보다 큰 영역에 대하여는 상기 최종 움직임 벡터의 방향을 상기 처리대상 영상프레임을 구성하는 각 화소에 적용되는 스트로크의 방향으로 결정하고, 상기 최종 움직임 벡터의 크기가 상기 기준값 이하인 영역에 대하여는 상기 그 라디언트 방향을 상기 스트로크의 방향으로 결정하는 스트로크 방향 결정부; 및 상기 결정된 스트로크의 방향을 기초로 상기 처리대상 영상프레임을 구성하는 각 화소에 스트로크를 적용하여 렌더링 영상을 생성하는 렌더링부;를 구비한다.
상기의 다른 기술적 과제를 달성하기 위한, 본 발명에 따른 회화적 렌더링 방법은, 시간적으로 연속하는 복수의 영상프레임에 대해 인접한 두 개의 영상프레임 사이의 움직임 벡터인 복수의 개별 움직임 벡터를 산출하고, 상기 복수의 개별 움직임 벡터의 평균에 의해 상기 영상프레임 중에서 선택된 처리대상 영상프레임에 대한 움직임 벡터인 최종 움직임 벡터를 산출하는 움직임 벡터 산출단계; 상기 처리대상 영상프레임을 구성하는 각 화소의 그라디언트 방향을 산출하는 그라디언트 산출단계; 상기 처리대상 영상프레임 상에서 산출된 상기 최종 움직임 벡터의 크기가 사전에 설정된 기준값보다 큰 영역에 대하여는 상기 최종 움직임 벡터의 방향을 상기 처리대상 영상프레임을 구성하는 각 화소에 적용되는 스트로크의 방향으로 결정하고, 상기 최종 움직임 벡터의 크기가 상기 기준값 이하인 영역에 대하여는 상기 그라디언트 방향을 상기 스트로크의 방향으로 결정하는 스트로크 방향 결정단계; 및 상기 결정된 스트로크의 방향을 기초로 상기 처리대상 영상프레임을 구성하는 각 화소에 스트로크를 적용하여 렌더링 영상을 생성하는 렌더링단계;를 갖는다.
본 발명에 따른 회화적 렌더링 장치 및 방법에 의하면, 렌더링시 적용되는 스트로크의 방향을 결정할 때 움직임 벡터의 방향과 그라디언트 방향을 적절히 사용함으로써, 움직이는 객체가 존재하는 영역에 대하여는 방향성을 사실적으로 표현 할 수 있고, 정지한 객체가 존재하는 영역에 대하여는 객체의 윤곽을 정확하게 표현할 수 있다. 또한 최종 움직임 벡터의 방향에 대한 표준편차를 스트로크의 방향에 적용함으로써, 움직임 벡터의 방향 변화를 사실적으로 반영할 수 있다. 나아가 스트로크의 방향을 보간함으로써, 인접한 화소들이 일관된 방향성을 가져 자연스러운 렌더링 영상을 생성할 수 있다.
이하에서 첨부된 도면들을 참조하여 본 발명에 따른 회화적 렌더링 장치 및 방법의 바람직한 실시예에 대해 상세하게 설명한다.
도 1은 본 발명에 따른 회화적 렌더링 장치에 대한 바람직한 실시예의 구성을 도시한 블록도이다.
도 1을 참조하면, 본 발명에 따른 회화적 렌더링 장치는 움직임 벡터 산출부(110), 그라디언트 산출부(120), 스트로크 방향 결정부(130), 보간부(140) 및 렌더링부(150)를 구비한다.
움직임 벡터 산출부(110)는 시간적으로 연속하는 복수의 영상프레임에 대해 인접한 두 개의 영상프레임 사이의 움직임 벡터인 복수의 개별 움직임 벡터를 산출한다. 또한 복수의 개별 움직임 벡터의 평균에 의해 복수의 영상프레임 중에서 선택된 처리대상 영상프레임에 대한 움직임 벡터인 최종 움직임 벡터를 산출한다.
앞에서 설명한 바와 같이 영상의 각 화소에 적용되는 스트로크의 방향을 결정할 때 영상의 그라디언트 방향만을 이용하게 되면 객체의 사실적인 움직임을 표현하는 데 한계가 있다. 따라서 본 발명에서는 움직임 벡터 산출부(110)에 의해 산 출된 개별 움직임 벡터 및 최종 움직임 벡터를 스트로크의 방향 결정에 이용한다. 움직임 벡터는 영상프레임 내에서 객체의 시간에 따른 움직임을 나타내는 것이므로, 움직임 벡터를 산출하기 위해서는 시간적으로 연속하는 최소 두 개의 영상프레임을 필요로 한다. 따라서 본 발명에 따른 회화적 렌더링 장치는 움직임 벡터의 산출을 위해 실제 렌더링을 수행하고자 하는 처리대상 영상프레임에 대해 시간적으로 연속하는 복수의 영상프레임을 사용한다. 이때 정확한 움직임 벡터를 산출하기 위해서는 연속하는 복수의 영상프레임이 모두 동일한 시점(view)에서 촬영된 것이어야 한다.
일 예로서, 처리대상 영상프레임에 대한 움직임 벡터를 산출하기 위해 처리대상 영상프레임에 시간적으로 앞서는 수십 개의 영상프레임을 사용할 수 있다. 즉, 움직임 벡터의 산출을 위해 n개의 영상프레임을 사용한다면 n번째 영상프레임이 처리대상 영상프레임이 된다. 도 2는 움직임 벡터를 산출하기 위해 사용된 60개의 연속하는 영상프레임 중 일부를 나타낸 도면이다. 도 2를 참조하면, 시간의 흐름에 따라 구름은 왼쪽에서 오른쪽으로 움직이지만 선인장은 고정된 위치에서 거의 움직이지 않는다는 것을 확인할 수 있다. 따라서 처리대상 영상프레임인 60번째 영상프레임에 적용되는 스트로크의 방향을 결정하기 위해 60개의 영상프레임에 대해 산출된 개별 움직임 벡터를 사용하면 영상의 렌더링시 구름의 움직임을 효과적으로 표현할 수 있다.
개별 움직임 벡터는 연속하는 영상프레임들 중에서 서로 인접한 두 개의 영상프레임 사이의 움직임 벡터이다. 따라서 n개의 영상프레임으로부터 얻어지는 개 별 움직임 벡터는 n-1개가 된다. 개별 움직임 벡터는 종래 움직임 벡터를 산출할 때 사용되는 방법들에 의해 산출될 수 있으며, 그 중 하나로서 광류 흐름법(optical flow)이 사용될 수 있다. 광류 흐름법은 영상프레임 사이의 움직임 정보를 추출하는 대표적인 알고리즘으로, 회화적 렌더링 등의 비사실적 렌더링(Non-Photorealistic Rendering) 연구에서 사용되어 왔다. 움직임 벡터 산출부(110)에 의해 산출된 복수의 개별 움직임 벡터는 방향과 크기로 이루어지며, 영상프레임을 구성하는 복수의 화소 각각에 대한 움직임 벡터를 원소로 가지는 2차원 배열의 형태를 가진다.
복수의 영상프레임으로부터 산출된 개별 움직임 벡터가 두 개 이상이므로, 복수의 개별 움직임 벡터로부터 처리대상 영상프레임에 대한 최종 움직임 벡터를 산출하여야 한다. 움직임 벡터 산출부(110)는 복수의 개별 움직임 벡터의 방향으로부터 최종 움직임 벡터의 방향을 산출하고, 복수의 개별 움직임 벡터의 크기로부터 최종 움직임 벡터의 크기를 산출한다. 이때 개별 움직임 벡터가 2차원 배열의 형태를 가지므로, 최종 움직임 벡터 역시 처리대상 영상프레임을 구성하는 복수의 화소 각각에 대한 최종 움직임 벡터를 원소로 가지는 2차원 배열의 형태를 가진다.
처리대상 영상프레임에 대한 최종 움직임 벡터의 i번째 원소, 즉 처리대상 영상프레임의 i번째 화소에 대한 최종 움직임 벡터를
Figure 112009028473535-pat00001
라 하면,
Figure 112009028473535-pat00002
의 방향 및 크기는 아래와 같이 산출된다.
먼저 최종 움직임 벡터의 방향은 다음의 수학식 1과 같이 개별 움직임 벡터의 방향의 평균에 의해 산출된다. 이때 0˚와 360˚는 동일한 방향을 나타내므로 움직임 벡터의 방향은 원형으로(circularly) 산출된다. 따라서 0˚와 360˚의 평균은 180˚가 아닌 0˚이다. 수학식 1에 의해 산출된 움직임 벡터의 방향은 0°에서 360°의 값을 가진다.
Figure 112009028473535-pat00003
여기서,
Figure 112009028473535-pat00004
는 i번째 화소에 대한 최종 움직임 벡터의 방향, avg()는 평균을 구하기 위한 함수, n-1은 개별 움직임 벡터의 개수, 그리고
Figure 112009028473535-pat00005
는 i번째 화소에 대한 k번째 개별 움직임 벡터의 방향이다.
도 3은 도 2에 나타난 처리대상 영상프레임의 각 화소에 대하여 산출된 최종 움직임 벡터의 방향을 나타낸 도면이다. 도 3을 참조하면, 움직임이 거의 없는 선인장 부분에서는 움직임 벡터의 방향이 일정하지 않고, 움직이는 구름이 존재하는 하늘 부분에서는 일정한 방향의 움직임 벡터가 나타나는 것을 확인할 수 있다.
각 화소에 대한 최종 움직임 벡터의 크기는 다음의 수학식 2에 의해 산출된다. 이때 최종 움직임 벡터의 크기는 0 내지 1의 값을 가지도록 정규화된다.
Figure 112009028473535-pat00006
여기서,
Figure 112009028473535-pat00007
는 i번째 화소에 대한 최종 움직임 벡터의 크기, n-1은 개별 움직임 벡터의 개수, 그리고
Figure 112009028473535-pat00008
는 i번째 화소에 대한 k번째 개별 움직임 벡터의 방 향이다.
추가적으로 처리대상 영상프레임의 각 화소에 대한 최종 움직임 벡터의 크기를 평탄화하기 위해 각 화소에 대해 산출된 최종 움직임 벡터의 크기에 가우시안 필터(Gaussian filter)를 적용할 수 있다. 각 최종 움직임 벡터의 크기에 대한 가우시안 필터링은 다음의 수학식 3에 의해 수행된다. 또한 도 4에는 가우시안 커널의 크기가 3으로 설정되었을 때 처리대상 영상프레임을 구성하는 각 화소에 대응하는 최종 움직임 벡터의 크기 및 최종 움직임 벡터의 크기를 평탄화하기 위해 참조되는 화소의 범위에 대한 일 예가 도시되어 있다.
Figure 112009028473535-pat00009
여기서,
Figure 112009028473535-pat00010
는 i번째 화소에 대한 평탄화된 최종 움직임 벡터의 크기, Ω는 가우시안 커널에 포함되는 화소의 개수, σ는 가우시안 커널의 크기, i는 i번째 화소의 화소값, 그리고 k는 가우시안 커널에 포함되는 Ω개의 화소들 중 k번째 화소의 화소값이다.
도 5는 도 2에 나타난 처리대상 영상프레임의 각 화소에 대하여 산출된 최종 움직임 벡터의 크기를 나타낸 도면이다. 도 5를 참조하면, 선인장 부분은 움직임이 거의 나타나지 않으므로 어둡게 표시되고, 움직임이 많은 구름 부분은 밝게 표시되는 것을 확인할 수 있다.
그라디언트 산출부(120)는 처리대상 영상프레임을 구성하는 각 화소의 그라 디언트 방향을 산출한다. 그라디언트는 영상프레임에 위치하는 객체의 경계 또는 두드러진 부분을 나타내는 에지 부분을 검출할 때 사용된다. 처리대상 영상프레임에서 정지한 객체에 대한 렌더링을 수행할 때에는 방향성을 나타낼 필요가 없으므로 그라디언트가 사용된다. 영상의 그라디언트를 산출할 때에는 기존의 기법들을 이용할 수 있으며, 이는 널리 알려진 기법들이므로 상세한 설명을 생략한다.
도 6에는 처리대상 영상프레임으로부터 산출된 각 화소의 그라디언트 방향이 도시되어 있다. 도 6을 참조하면, 그라디언트는 하나의 영상프레임으로부터 산출되는 것이므로 객체의 윤곽은 정확하게 표현할 수 있으나, 여러 개의 영상프레임에 걸쳐 나타나는 움직이는 객체의 방향성은 표현할 수 없는 점을 확인할 수 있다.
스트로크 방향 결정부(130)는 처리대상 영상프레임 상에서 산출된 최종 움직임 벡터의 크기가 사전에 설정된 기준값보다 큰 영역에 대하여는 최종 움직임 벡터의 방향을 처리대상 영상프레임을 구성하는 각 화소에 적용되는 스트로크의 방향으로 결정하고, 최종 움직임 벡터의 크기가 상기 기준값 이하인 영역에 대하여는 그라디언트 방향을 스트로크의 방향으로 결정한다.
처리대상 영상프레임을 구성하는 각 화소에 적용될 스트로크의 방향을 결정할 때 모든 화소에 대하여 움직임 벡터의 방향만을 사용하면 정지한 객체에 대하여도 방향성이 나타나게 되어 객체의 윤곽을 정확하게 표현하기 어렵다. 또한 모든 화소에 대하여 그라디언트 방향을 스트로크의 방향으로 결정하면 움직이는 객체의 방향성을 나타내기 어렵다. 따라서 처리대상 영상프레임의 각 화소에 대해 개별적으로 스트로크의 방향을 결정하되, 움직임이 큰 영역에 위치하는 화소에 대하여는 움직임 벡터 산출부(110)에 의해 산출된 최종 움직임 벡터의 방향을 스트로크 방향으로 결정하고, 움직임이 작은 영역에 위치하는 화소에 대하여는 그라디언트 산출부(120)에 의해 산출된 그라디언트 방향을 스트로크 방향으로 결정하는 것이 바람직하다. 스트로크의 방향을 결정할 때에는 사전에 설정된 기준값이 사용되며, 스트로크 방향 결정부(130)는 최종 움직임 벡터의 크기와 기준값을 비교하여 처리대상 영상프레임의 각 화소에 움직임 벡터의 방향 또는 그라디언트 방향을 적용할 것인지 여부를 결정한다.
스트로크 방향 결정부(130)는 수학식 2에 의해 산출된 최종 움직임 벡터의 크기 대신 수학식 3에 의해 평탄화된 최종 움직임 벡터의 크기를 사용하여 평탄화된 최종 움직임 벡터의 크기가 기준값보다 크면 최종 움직임 벡터의 방향을 스트로크의 방향으로 결정하고, 그 크기가 기준값 이하이면 그라디언트 방향을 스트로크의 방향으로 결정할 수 있다.
스트로크의 방향을 결정하기 위해 설정된 기준값은 1-r의 형태로 표현할 수 있다. r=1이면 기준값은 0이 되고, 평탄화된 최종 움직임 벡터의 크기가 항상 기준값보다 크게 되므로 처리대상 영상프레임을 구성하는 모든 화소에 대해 최종 움직임 벡터의 방향이 스트로크의 방향으로 결정된다. 또한 r=0이면 기준값은 1이 되고, 평탄화된 최종 움직임 벡터의 크기가 항상 기준값 이하이므로 처리대상 영상프레임을 구성하는 모든 화소에 대해 그라디언트 방향이 스트로크의 방향으로 결정된다.
도 7a 내지 도 7d는 각각 r=0, r=0.3, r=0.9, 그리고 r=1일 때 처리대상 영 상프레임의 각 화소에 대해 결정된 스트로크의 방향을 나타낸 도면이다. 도 7a 내지 도 7d를 참조하면, r의 값이 작아질수록 그라디언트 방향이 스트로크의 방향으로 결정되는 화소의 비율이 증가하여 객체의 윤곽이 뚜렷해지고 방향성은 감소한다. 또한 r의 값이 커질수록 최종 움직임 벡터의 방향이 스트로크의 방향으로 결정되는 화소의 비율이 증가하여 객체의 윤곽이 흐릿해지고 방향성이 증가한다.
도 7a 내지 도 7d에 나타난 도면의 좌측 상단에 도시된 도면은 처리대상 영상프레임에서 스트로크의 방향을 결정하기 위해 최종 움직임 벡터의 방향이 사용된 화소와 그라디언트 방향이 사용된 화소의 비율을 나타낸 것이다. 적색으로 표시된 영역은 그라디언트 방향에 의해 스트로크의 방향이 결정된 화소들을 나타내며, 청색으로 표시된 영역은 최종 움직임 벡터의 방향에 의해 스트로크의 방향이 결정된 화소들을 나타낸다. 도 7a 내지 도 7d를 참조하면 r=0.9일 때, 즉 기준값이 0.1일 때 객체의 방향성과 윤곽을 동시에 효과적으로 나타낼 수 있음을 확인할 수 있다.
한편, 복수의 영상프레임 상에서 동일한 위치의 화소에 대해 움직임의 변화가 빈번하게 나타나는 경우에는 산출된 최종 움직임 벡터의 방향이 객체의 실제 움직임을 제대로 반영하지 못할 수 있다. 따라서 객체의 움직임을 더욱 효과적으로 표현하기 위해 스트로크의 방향에 객체의 움직임을 반영할 필요성이 있다. 이를 위해 움직임 벡터 산출부(110)는 최종 움직임 벡터의 방향과 각각의 개별 움직임 벡터의 방향 간의 차이값의 평균을 기초로 최종 움직임 벡터의 방향에 대한 표준편차를 산출하고, 스트로크 방향 결정부(130)는 산출된 표준편차를 스트로크의 방향에 합산한다.
먼저 움직임 벡터 산출부(110)는 다음의 수학식 4에 의해 표준편차를 산출한다. 표준편차 역시 최종 움직임 벡터와 개별 움직임 벡터로부터 산출된 것이므로 처리대상 영상프레임을 구성하는 각 화소에 대해 산출된 표준편차를 원소로 가지는 2차원 배열의 형태이며, 각 화소에 대한 표준편차는 0°내지 180˚의 값을 가진다.
Figure 112009028473535-pat00011
여기서,
Figure 112009028473535-pat00012
는 i번째 화소에 대한 표준편차, n-1은 개별 움직임 벡터의 개수,
Figure 112009028473535-pat00013
는 i번째 화소에 대한 k번째 개별 움직임 벡터의 방향, 그리고
Figure 112009028473535-pat00014
는 i번째 화소에 대한 최종 움직임 벡터의 방향이다.
위와 같이 산출된 표준편차는 개별 움직임 벡터의 방향이 복수의 영상프레임에 걸쳐 일관되면 작은 값을 가지며, 개별 움직임 벡터가 복수의 영상프레임 상에서 다양한 방향을 보이면 큰 값을 가진다.
도 8은 처리대상 영상프레임을 구성하는 각 화소에 대해 산출된 표준편차 값을 나타낸 도면이다. 도 8에서 표준편차의 값이 큰 화소는 밝은색으로, 표준편차 값이 작은 화소는 어두운색으로 표현되었다. 도 8을 참조하면, 움직임이 없는 선인장 부분은 어둡게 표현된 반면, 구름의 움직임이 많은 하늘 부분은 밝게 표현된 것을 확인할 수 있다.
다음으로 스트로크 방향 결정부(130)는 결정된 스트로크 방향에 표준편차를 합산하되, 합산되는 표준편차의 양을 조절할 수 있도록 가중치를 부여함으로써 역 동적인 방향성 또는 일관된 방향성을 표현할 수 있다. 구체적으로, 표준편차는 다음 수학식 5의 형태로 각 화소에 대해 결정된 스트로크의 방향에 더해진다.
Figure 112009028473535-pat00015
Figure 112009028473535-pat00016
여기서,
Figure 112009028473535-pat00017
는 i번째 화소에 대해 표준편차가 합산된 스트로크의 방향,
Figure 112009028473535-pat00018
는 i번째 화소에 대해 결정된 스트로크의 방향, wr은 0 내지 1의 값을 가지는 가중치로서 움직임의 정도에 따라 결정되는 값, 그리고 Rand()는 주어진 범위에서 하나의 값을 랜덤으로 선택하는 함수이다.
보간부(140)는 처리대상 영상프레임을 구성하는 각 화소에 대해 결정된 스트로크의 방향을 인접한 화소에 대해 결정된 스트로크의 방향에 의해 보간한다.
객체의 경계가 아닌 영역에 위치하는 화소들에 대해 결정된 스트로크의 방향이 일관되지 않는 경우 또는 연속적인 변화를 보이지 않는 경우에는 영상프레임 상에서 방향성을 정확하게 표현할 수 없다. 따라서 보간부(140)는 인접한 화소에 대해 결정된 스트로크의 방향을 고려하여 스트로크의 방향을 보간한다.
스트로크의 방향을 보간하기 위해 사용할 수 있는 한 가지 방법으로 ETF(edge tangent flow) 보간법이 있다. ETF 보간법은 영상프레임으로부터 에지를 검출하여 객체를 선으로 표현한 영상을 생성할 때, 생성된 영상의 품질을 높이기 위해 사용되는 방법이다. 영상을 구성하는 각 화소에 대해 산출된 벡터로 이루어진 벡터 필드는 다음의 세 가지 조건을 만족시켜야 한다. (1) 각 벡터의 방향은 인접한 영역의 두드러진 에지 탄젠트(edge tangent) 방향을 표현하여야 한다; (2) 이웃하는 벡터들은 선명한 코너 부분을 제외하고는 부드럽게 정렬되어야 한다; (3) 중요한 에지는 원래의 방향을 유지하여야 한다. 이러한 세 가지 조건을 만족하기 위해 ETF 보간법에서는 커널을 기반으로 하는 벡터 필드의 비선형 스무딩(nonlinear smoothing)을 사용한다. 결과적으로, 두드러진 에지 방향은 보존되고 약한 에지는 주변의 두드러진 에지 방향을 따르도록 방향이 보간된다.
한편, 움직임 벡터 산출부(110)에 의해 산출된 표준편차가 적용될 경우에는 다음의 수학식 6과 같이 스트로크 방향 결정부(130)에 의해 결정된 스트로크의 방향이 보간부(140)에 의해 보간되어 얻어진 최종적인 방향에 적용된다.
Figure 112009028473535-pat00019
Figure 112009028473535-pat00020
여기서,
Figure 112009028473535-pat00021
는 i번째 화소에 대해 보간되고 표준편차가 적용된 최종 스트로크의 방향,
Figure 112009028473535-pat00022
는 i번째 화소에 대해 결정된 스트로크의 방향, wr은 0 내지 1의 값을 가지는 가중치로서 움직임의 정도에 따라 결정되는 값, 그리고 Rand()는 주어진 범위에서 하나의 값을 랜덤으로 선택하는 함수이다.
렌더링부(150)는 스트로크 방향 결정부(130)에 의해 결정된 스트로크의 방향을 기초로 처리대상 영상프레임을 구성하는 각 화소에 스트로크를 적용하여 렌더링 영상을 생성한다.
회화적 렌더링을 수행하기 위해서는 스트로크의 방향 뿐 아니라 크기 및 색상 등의 다른 속성들도 결정하여야 한다. 렌더링부(150)는 스트로크의 속성을 결정하기 위해 처리대상 영상프레임에 존재하는 에지를 사용할 수 있다. 즉, 처리대상 영상프레임으로부터 에지를 검출하고, 에지 디스턴스 맵(edge distance map)을 생성한다. 에지 디스턴스 맵은 영상프레임의 임의의 점에서 가장 가까이에 있는 에지지점까지의 거리를 나타낸다. 스트로크가 적용될 위치는 레이어에 따라 에지 디스턴스의 범위를 조절함으로써 결정되고, 에지 클리핑(edge clipping)에 의해 객체의 형태가 유지된다. 도 9a 및 도 9b에는 각각 처리대상 영상프레임에 대한 에지 및 에지 디스턴스 맵이 도시되어 있다.
기존의 회화적 렌더링에서는 스트로크가 적용될 화소의 화소값을 해당 화소에 적용되는 스트로크의 색상값으로 사용하였다. 그러나 객체의 방향성을 보다 생동감있게 표현하기 위해 처리대상 영상프레임에 시간적으로 앞서는 영상프레임들을 참조하여 누적된 색상값을 사용하는 것이 바람직하다. 이를 위해 렌더링부(150)는 다음의 수학식 7에 의해 처리대상 영상프레임의 각 화소에 적용되는 스트로크의 색상값을 결정한다.
Figure 112009028473535-pat00023
여기서, Colori는 처리대상 영상프레임의 i번째 화소에 적용되는 스트로크의 색상값, wc는 색상을 결정하기 위한 가중치, n은 처리대상 영상프레임까지 연속하는 영상프레임의 개수, C(ni)는 처리대상 영상프레임의 i번째 화소의 화소값, 그리고 C(ki)는 처리대상 영상프레임에 시간적으로 앞서는 영상프레임들 중 k번째 영상프레임에서 i번째 화소의 화소값이다.
수학식 7에서 사용되는 가중치 wc의 값은 처리대상 영상프레임에서 움직임이 없는 영역에 속하는 화소에 대하여는 1로 결정되어 처리대상 영상프레임의 화소값만을 스트로크의 색상값으로 사용한다. 나머지 영역에서는 각 화소에 나타나는 움직임의 양에 따라 가중치 값이 서로 다른 값으로 결정된다.
도 10은 본 발명에 따른 회화적 렌더링 방법에 대한 바람직한 실시예의 수행과정을 도시한 흐름도이다.
도 10을 참조하면, 움직임 벡터 산출부(110)는 시간적으로 연속하는 복수의 영상프레임에 대해 인접한 두 개의 영상프레임 사이의 움직임 벡터인 개별 움직임 벡터를 산출하고, 복수의 개별 움직임 벡터의 평균에 의해 복수의 영상프레임 중에서 선택된 처리대상 영상프레임에 대한 움직임 벡터인 최종 움직임 벡터를 산출한다(S1010). 그라디언트 산출부(120)는 처리대상 영상프레임을 구성하는 각 화소의 그라디언트 방향을 산출한다(S1020). 이때 움직임 벡터의 방향 변화를 효과적으로 표현하기 위해 최종 움직임 벡터의 방향과 각각의 개별 움직임 벡터의 방향 간의 차이값의 평균을 기초로 산출한 표준편차를 그라디언트 방향에 적용할 수 있다.
스트로크 방향 결정부(130)는 최종 움직임 벡터의 크기가 사전에 설정된 기 준값보다 크면(S1030), 최종 움직임 벡터의 방향을 처리대상 영상프레임의 각 화소에 적용되는 스트로크의 방향으로 결정한다(S1040). 반면 최종 움직임 벡터의 크기가 기준값 이하이면(S1030), 그라디언트 방향을 처리대상 영상프레임의 각 화소에 적용되는 스트로크의 방향으로 결정한다(S1050). 이때 최종 움직임 벡터의 크기가 아닌 수학식 3에 의해 평탄화된 최종 움직임 벡터의 크기를 기준값과 비교하여 스트로크의 방향을 결정할 수도 있다.
스트로크의 방향 결정시 보간부(140)는 처리대상 영상프레임을 구성하는 각 화소에 대해 결정되니 스트로크의 방향을 각 화소에 인접한 복수의 화소에 대해 결정된 스트로크의 방향에 의해 보간할 수 있다. 마지막으로 렌더링부(150)는 결정된 스트로크의 방향을 기초로 처리대상 영상프레임을 구성하는 각 화소에 스트로크를 적용하여 렌더링 영상을 생성한다(S1060). 적용되는 스트로크의 색상값은 수학식 7에 의해 결정할 수 있다.
본 발명의 성능을 평가하기 위한 실험을 수행하였다. 최종적인 렌더링 영상을 얻는데 걸리는 시간은 영상프레임의 크기 및 사용되는 영상프레임의 수에 따라 달라지지만, 일반적으로 900×500의 해상도를 가지는 영상프레임을 사용할 경우 약 30초의 시간이 소요된다.
도 11은 본 발명에 따른 회화적 렌더링 장치 및 방법을 적용한 전체 과정을 도시한 도면이다. 본 발명에 따른 알고리즘을 적용할 때 연속하는 46개의 영상프레임들이 사용되었으며, 처리대상 영상프레임을 구성하는 화소 전체에 걸쳐 r=0.9, 즉 기준값은 0.1로 설정되었고, 그라디언트 방향에 표준편차를 적용할 때의 가중치 는 wr=0으로, 스트로크의 색상값을 결정할 때의 가중치는 wc=1로 설정되었다.
도 11의 (a)는 최종 움직임 벡터를 결정하기 위해 사용된 복수의 영상프레임을 나타낸 도면이고, 도 11의 (b)는 그라디언트 산출부(120)에 의해 산출된 그라디언트를 나타낸 도면, 그리고 도 11의 (c)는 적용되는 스트로크의 속성을 결정하기 위해 생성된 에지 디스턴스 맵을 나타낸 도면이다. 또한 도 11의 (d) 내지 (f)는 각각 움직임 벡터 산출부(110)에 의해 산출된 최종 움직임 벡터의 방향, 크기 및 표준편차를 나타낸 도면이다. 도 11의 (g)에서 적색으로 표시된 영역은 그라디언트 방향이 스트로크 방향으로 결정된 영역이고, 청색으로 표시된 영역은 최종 움직임 벡터의 방향이 스트로크 방향으로 결정된 영역이다. 도 11의 (h)에 나타난 스트로크의 방향을 참조하면, 배경 부분에는 한 방향으로의 움직임이 표현되었고, 객체 부분에는 움직임이 거의 없는 선인장의 형태가 잘 나타나 있다. 도 11의 (i)에는 최종적으로 생성된 렌더링 영상이 도시되어 있다. 스트로크의 적용 결과, 선인장 부분에는 정지한 객체의 특성이 잘 표현되었고, 하늘 부분에는 구름의 움직임이 사실적으로 표현되었다.
도 12a 내지 도 12g는 각각 최종 움직임 벡터를 산출하기 위해 사용된 연속하는 영상프레임의 개수가 4, 8, 12, 16, 26, 36 및 46개일 때 결정된 스트로크 방향 및 최종적으로 얻어진 렌더링 영상을 나타낸 도면이다. 도 12a 내지 도 12g의 첫번째 도면에서 적색으로 표시된 영역은 그라디언트 방향이 스트로크 방향으로 결정된 영역이고, 청색으로 표시된 영역은 최종 움직임 벡터의 방향이 스트로크 방향 으로 결정된 영역이다. 도 12a 내지 도 12g를 참조하면, 사용된 영상프레임의 개수가 많아질수록 최종 움직임 벡터의 방향이 스트로크의 방향으로 결정되는 비율이 증가하며, 움직이는 객체의 방향성과 정지한 객체의 윤곽을 모두 효과적으로 표현할 수 있다.
도 13a 내지 도 13d는 r값에 따른 최종적인 렌더링 영상을 나타낸 도면이다. 도 13a 내지 도 13d에서 r값은 각각 0, 0.3, 0.9 및 1로 설정되었다. 앞에서 설명한 바와 같이 r값이 커질수록 영상프레임에서 최종 움직임 벡터의 방향이 스트로크의 방향으로 결정되는 화소의 비율이 증가한다. 도 13a는 모든 화소에 대하여 그라디언트 방향을 스트로크의 방향으로 결정하여 움직이는 구름이 사실적으로 표현되지 않았다. 또한 도 13d는 모든 화소에 대하여 최종 움직임 벡터의 방향을 스트로크의 방향으로 결정하여 정지해 있는 선인장의 윤곽이 정확하게 표현되지 않았다. 도 13a 내지 도 13d를 참조하면, r=0.9로 설정되었을 때 정지한 객체의 형태와 움직이는 객체의 방향성을 모두 적절히 표현할 수 있음을 확인할 수 있다.
도 14a 내지 도 14d는 wr 값에 따른 최종 렌더링 영상을 나타낸 도면이다. 도 14a의 좌측 상단에 표시된 도면은 처리대상 영상프레임의 각 화소에 대해 산출된 표준편차를 나타낸 것이다. 처리대상 영상프레임을 구성하는 대부분의 화소가 밝게 표현되어 표준편차가 크다는 것을 알 수 있다. 도 14a 내지 도 14d를 참조하면, 처리대상 영상프레임까지의 복수의 영상프레임에 걸쳐 객체의 움직임 변화가 크기 때문에 표준편차를 많이 적용한 경우에 객체의 움직임을 보다 사실적으로 표 현할 수 있다.
도 15a 및 도 15b는 각각 wc 값이 1일 때와 0.3일 때 최종 렌더링 영상을 나타낸 도면이다. 도 15a 및 도 15b의 렌더링 영상을 생성하기 위해 모두 60개의 연속하는 영상프레임이 사용되었고, r=0.9, 그리고 wr 값은 0으로 설정되었다. 도 15a와 도 15b를 비교하면, 기차 이외의 배경 부분은 움직임이 없으므로 두 렌더링 영상에서 색상의 차이가 나타나지 않는다. 한편 기차 부분의 색상을 비교하면 누적된 화소값이 적용되지 않은 도 15a의 경우에는 기차가 정지해 있는 것처럼 보이지만, 누적된 화소값에 의해 색상값이 결정된 도 15b의 경우에는 기차의 움직임이 잘 표현된 것을 확인할 수 있다.
도 16a 내지 도 16d는 각각 r=0일 때 각 화소에 대해 결정된 스트로크의 방향, r=0.9일 때 각 화소에 대해 결정된 스트로크의 방향, r=0일 때 생성된 렌더링 영상, 그리고 r=0.9일 때 생성된 렌더링 영상을 나타낸 도면이다. 이때 70개의 연속하는 영상프레임이 사용되었고, wr=0.2, 그리고 wc=1로 설정되었다. r=0으로 설정된 도 16a 및 도 16c에서는 그라디언트 방향이 스트로크의 방향으로 결정되므로 객체의 윤곽이 뚜렷하게 나타나고 객체의 방향성은 표현되지 않는다. 반면, r=0.9로 설정된 도 16b 및 도 16d에서는 스트로크의 방향을 결정할 때 움직임 벡터의 방향도 고려하기 때문에 영상프레임 하단의 물의 흐름이 잘 표현되었고, 영상프레임 좌측의 나뭇잎의 움직임 및 다리 위에서 움직이는 인물의 방향성도 자연스럽게 표현되었다.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
이상에서 본 발명의 바람직한 실시예에 대해 도시하고 설명하였으나, 본 발명은 상술한 특정의 바람직한 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형 실시가 가능한 것은 물론이고, 그와 같은 변경은 청구범위 기재의 범위 내에 있게 된다.
도 1은 본 발명에 따른 회화적 렌더링 장치에 대한 바람직한 실시예의 구성을 도시한 블록도,
도 2는 움직임 벡터를 산출하기 위해 사용된 60개의 연속하는 영상프레임 중 일부를 나타낸 도면,
도 3은 도 2에 나타난 처리대상 영상프레임의 각 화소에 대하여 산출된 최종 움직임 벡터의 방향을 나타낸 도면,
도 4는 가우시안 커널의 크기가 3으로 설정되었을 때 처리대상 영상프레임을 구성하는 각 화소에 대응하는 최종 움직임 벡터의 크기 및 최종 움직임 벡터의 크기를 평탄화하기 위해 참조되는 화소의 범위에 대한 일 예를 도시한 도면,
도 5는 도 2에 나타난 처리대상 영상프레임의 각 화소에 대하여 산출된 최종 움직임 벡터의 크기를 나타낸 도면,
도 6은 처리대상 영상프레임으로부터 산출된 각 화소의 그라디언트 방향을 도시한 도면,
도 7a 내지 도 7d는 각각 r=0, r=0.3, r=0.9, 그리고 r=1일 때 처리대상 영상프레임의 각 화소에 대해 결정된 스트로크의 방향을 나타낸 도면,
도 8은 처리대상 영상프레임을 구성하는 각 화소에 대해 산출된 표준편차 값을 나타낸 도면,
도 9a 및 도 9b는 각각 처리대상 영상프레임에 대한 에지 및 에지 디스턴스 맵을 도시한 도면,
도 10은 본 발명에 따른 회화적 렌더링 방법에 대한 바람직한 실시예의 수행과정을 도시한 흐름도,
도 11은 본 발명에 따른 회화적 렌더링 장치 및 방법을 적용한 전체 과정을 도시한 도면,
도 12a 내지 도 12g는 각각 최종 움직임 벡터를 산출하기 위해 사용된 연속하는 영상프레임의 개수가 4, 8, 12, 16, 26, 36 및 46개일 때 결정된 스트로크 방향 및 최종적으로 얻어진 렌더링 영상을 나타낸 도면
도 13a 내지 도 13d는 r값에 따른 최종적인 렌더링 영상을 나타낸 도면,
도 14a 내지 도 14d는 wr 값에 따른 최종 렌더링 영상을 나타낸 도면,
도 15a 및 도 15b는 각각 wc 값이 1일 때와 0.3일 때 최종 렌더링 영상을 나타낸 도면, 그리고,
도 16a 내지 도 16d는 각각 r=0일 때 각 화소에 대해 결정된 스트로크의 방향, r=0.9일 때 각 화소에 대해 결정된 스트로크의 방향, r=0일 때 생성된 렌더링 영상, 그리고 r=0.9일 때 생성된 렌더링 영상을 나타낸 도면이다.

Claims (12)

  1. 시간적으로 연속하는 복수의 영상프레임에 대해 인접한 두 개의 영상프레임 사이의 움직임 벡터인 복수의 개별 움직임 벡터를 산출하고, 상기 복수의 개별 움직임 벡터의 평균에 의해 상기 영상프레임 중에서 선택된 처리대상 영상프레임에 대한 움직임 벡터인 최종 움직임 벡터를 산출하는 움직임 벡터 산출부;
    상기 처리대상 영상프레임을 구성하는 각 화소의 그라디언트 방향을 산출하는 그라디언트 산출부;
    상기 처리대상 영상프레임 상에서 산출된 상기 최종 움직임 벡터의 크기가 사전에 설정된 기준값보다 큰 영역에 대하여는 상기 최종 움직임 벡터의 방향을 상기 처리대상 영상프레임을 구성하는 각 화소에 적용되는 스트로크의 방향으로 결정하고, 상기 최종 움직임 벡터의 크기가 상기 기준값 이하인 영역에 대하여는 상기 그라디언트 방향을 상기 스트로크의 방향으로 결정하는 스트로크 방향 결정부; 및
    상기 결정된 스트로크의 방향을 기초로 상기 처리대상 영상프레임을 구성하는 각 화소에 스트로크를 적용하여 렌더링 영상을 생성하는 렌더링부;를 포함하는 것을 특징으로 하는 회화적 렌더링 장치.
  2. 제 1항에 있어서,
    상기 움직임 벡터 산출부는 상기 최종 움직임 벡터의 방향과 상기 각각의 개별 움직임 벡터의 방향 간의 차이값의 평균을 기초로 상기 최종 움직임 벡터의 방향에 대한 벡터 형태의 표준편차를 산출하고,
    상기 스트로크 방향 결정부는 상기 개별 움직임 벡터의 방향이 시간에 따라 변화하는 정도를 기초로 상기 벡터 형태의 표준편차의 방향을 상기 스트로크의 방향에 합산하여 상기 렌더링부에 의해 사용되는 스트로크의 방향으로 결정하는 것을 특징으로 하는 회화적 렌더링 장치.
  3. 제 2항에 있어서,
    상기 표준편차는 하기 수학식 A에 의해 상기 스트로크의 방향에 합산되는 것을 특징으로 하는 회화적 렌더링 장치:
    [수학식 A]
    Figure 112009028473535-pat00024
    Figure 112009028473535-pat00025
    여기서,
    Figure 112009028473535-pat00026
    는 상기 표준편차가 합산된 스트로크의 방향,
    Figure 112009028473535-pat00027
    는 상기 스트로크의 방향, wr은 0 내지 1의 값을 가지는 가중치로서 상기 개별 움직임 벡터의 방향이 변화하는 정도에 따라 결정되는 값,
    Figure 112009028473535-pat00028
    는 상기 표준편차, 그리고 Rand()는 주어진 범위에서 하나의 값을 랜덤으로 선택하는 함수이다.
  4. 제 1항 내지 제 3항 중 어느 한 항에 있어서,
    상기 개별 움직임 벡터 및 상기 최종 움직임 벡터는 상기 영상프레임을 구성하는 각 화소에 대한 움직임 벡터로 이루어진 2차원 배열이고,
    상기 스트로크 방향 결정부는 상기 처리대상 영상프레임을 구성하는 각각의 화소에 대해 상기 스트로크의 방향을 결정하는 것을 특징으로 하는 회화적 렌더링 장치.
  5. 제 1항 내지 제 3항 중 어느 한 항에 있어서,
    상기 처리대상 영상프레임을 구성하는 각 화소에 대해 결정된 스트로크의 방향을 상기 각 화소에 인접한 복수의 화소에 대해 결정된 스트로크의 방향에 의해 보간하는 보간부를 더 포함하는 것을 특징으로 하는 회화적 렌더링 장치.
  6. 제 1항 내지 제 3항 중 어느 한 항에 있어서,
    상기 스트로크 방향 결정부는 하기 수학식 B에 의해 평탄화된 최종 움직임 벡터의 크기를 상기 기준값과 비교하여 상기 스트로크의 방향을 결정하는 것을 특징으로 하는 회화적 렌더링 장치:
    [수학식 B]
    Figure 112009028473535-pat00029
    여기서,
    Figure 112009028473535-pat00030
    는 상기 처리대상 영상프레임의 i번째 화소에 대한 평탄화된 최종 움직임 벡터의 크기,
    Figure 112009028473535-pat00031
    는 상기 i번째 화소에 대한 최종 움직임 벡터의 크기, Ω는 상기 i번째 화소에 적용되는 가우시안 커널에 포함되는 화소의 개수, σ는 상기 가우시안 커널의 크기, i는 상기 i번째 화소의 화소값, 그리고 k는 상기 가우시 안 커널에 포함되는 Ω개의 화소들 중 k번째 화소의 화소값이다.
  7. 제 1항 내지 제 3항 중 어느 한 항에 있어서,
    상기 렌더링부는 하기 수학식 C에 의해 상기 처리대상 영상프레임의 각 화소에 적용되는 스트로크의 색상값을 결정하는 것을 특징으로 하는 회화적 렌더링 장치:
    [수학식 C]
    Figure 112009028473535-pat00032
    여기서, Colori는 상기 처리대상 영상프레임의 i번째 화소에 적용되는 스트로크의 색상값, wc는 색상을 결정하기 위한 가중치, n은 상기 처리대상 영상프레임을 포함하는 연속하는 영상프레임의 개수, C(ni)는 상기 처리대상 영상프레임의 i번째 화소의 화소값, 그리고 C(ki)는 상기 연속하는 영상프레임들 중 k번째 영상프레임에서 i번째 화소의 화소값이다.
  8. 시간적으로 연속하는 복수의 영상프레임에 대해 인접한 두 개의 영상프레임 사이의 움직임 벡터인 복수의 개별 움직임 벡터를 산출하고, 상기 복수의 개별 움직임 벡터의 평균에 의해 상기 영상프레임 중에서 선택된 처리대상 영상프레임에 대한 움직임 벡터인 최종 움직임 벡터를 산출하는 움직임 벡터 산출단계;
    상기 처리대상 영상프레임을 구성하는 각 화소의 그라디언트 방향을 산출하는 그라디언트 산출단계;
    상기 처리대상 영상프레임 상에서 산출된 상기 최종 움직임 벡터의 크기가 사전에 설정된 기준값보다 큰 영역에 대하여는 상기 최종 움직임 벡터의 방향을 상기 처리대상 영상프레임을 구성하는 각 화소에 적용되는 스트로크의 방향으로 결정하고, 상기 최종 움직임 벡터의 크기가 상기 기준값 이하인 영역에 대하여는 상기 그라디언트 방향을 상기 스트로크의 방향으로 결정하는 스트로크 방향 결정단계; 및
    상기 결정된 스트로크의 방향을 기초로 상기 처리대상 영상프레임을 구성하는 각 화소에 스트로크를 적용하여 렌더링 영상을 생성하는 렌더링단계;를 포함하는 것을 특징으로 하는 회화적 렌더링 방법.
  9. 제 8항에 있어서,
    상기 움직임 벡터 산출단계에서, 상기 최종 움직임 벡터의 방향과 상기 각각의 개별 움직임 벡터의 방향 간의 차이값의 평균을 기초로 상기 최종 움직임 벡터의 방향에 대한 벡터 형태의 표준편차를 산출하고,
    상기 스트로크 방향 결정단계에서, 상기 개별 움직임 벡터의 방향이 시간에 따라 변화하는 정도를 기초로 상기 벡터 형태의 표준편차의 방향을 상기 스트로크의 방향에 합산하여 상기 렌더링단계에서 사용되는 스트로크의 방향으로 결정하는 것을 특징으로 하는 회화적 렌더링 방법.
  10. 제 8항 또는 제 9항에 있어서,
    상기 개별 움직임 벡터 및 상기 최종 움직임 벡터는 상기 영상프레임을 구성하는 각 화소에 대한 움직임 벡터로 이루어진 2차원 배열이고,
    상기 스트로크 방향 결정단계에서, 상기 처리대상 영상프레임을 구성하는 각각의 화소에 대해 상기 스트로크의 방향을 결정하는 것을 특징으로 하는 회화적 렌더링 방법.
  11. 제 8항 또는 제 9항에 있어서,
    상기 스트로크 방향 결정단계 및 상기 렌더링단계의 사이에,
    상기 처리대상 영상프레임을 구성하는 각 화소에 대해 결정된 스트로크의 방향을 상기 각 화소에 인접한 복수의 화소에 대해 결정된 스트로크의 방향에 의해 보간하는 보간단계를 더 포함하며,
    상기 렌더링단계에서, 상기 보간된 스트로크의 방향을 기초로 상기 렌더링 영상을 생성하는 것을 특징으로 하는 회화적 렌더링 방법.
  12. 제 8항 또는 제 9항에 기재된 기재된 회화적 렌더링 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020090041389A 2009-05-12 2009-05-12 회화적 렌더링 장치 및 방법 KR101028699B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090041389A KR101028699B1 (ko) 2009-05-12 2009-05-12 회화적 렌더링 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090041389A KR101028699B1 (ko) 2009-05-12 2009-05-12 회화적 렌더링 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20100122381A KR20100122381A (ko) 2010-11-22
KR101028699B1 true KR101028699B1 (ko) 2011-04-14

Family

ID=43407338

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090041389A KR101028699B1 (ko) 2009-05-12 2009-05-12 회화적 렌더링 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101028699B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101191319B1 (ko) 2011-07-11 2012-10-16 중앙대학교 산학협력단 객체의 움직임 정보에 기반한 회화적 렌더링 장치 및 방법
WO2012144715A1 (ko) * 2011-04-19 2012-10-26 Park Deok-Eun 화가의 페인팅 절차에 기반한 회화적 렌더링 방법
US10885681B2 (en) 2015-09-11 2021-01-05 Samsung Electronics Co., Ltd. Method and apparatus for performing path stroking

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101701519B1 (ko) * 2011-01-20 2017-02-03 중앙대학교 산학협력단 영상프레임 간 일관성을 위한 동영상으로부터의 라인 애니메이션 생성장치 및 방법
KR101470497B1 (ko) * 2013-01-02 2014-12-09 대진대학교 산학협력단 방향 센서를 이용한 비실사 영상 생성 장치 및 그 방법
US11089320B2 (en) * 2019-03-27 2021-08-10 Nvidia Corp. Adaptive pixel sampling order for temporally dense rendering

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002012008A (ja) * 2000-06-28 2002-01-15 Satoru Murai 滑り止めの出てくる車輪
KR20080051008A (ko) * 2006-12-04 2008-06-10 한국전자통신연구원 3차원 공간에서 시간일관성을 이용한 실루엣 렌더링 장치및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002012008A (ja) * 2000-06-28 2002-01-15 Satoru Murai 滑り止めの出てくる車輪
KR20080051008A (ko) * 2006-12-04 2008-06-10 한국전자통신연구원 3차원 공간에서 시간일관성을 이용한 실루엣 렌더링 장치및 방법

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
박영섭, 윤경현, "다양한 에지를 이용한 모션영역 기반 회화적 애니메이션", 컴퓨터그래픽스학회논문지, 제14권 제1호, 2008.
박영섭, 윤경현, "회화적 애니메이션에서 브러시 스트로크의 시간적 일관성을 유지하기 위한 모션 맵 생성", 정보과학회지 제33권 제8호, pp. 536-546, 2006.08.

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012144715A1 (ko) * 2011-04-19 2012-10-26 Park Deok-Eun 화가의 페인팅 절차에 기반한 회화적 렌더링 방법
KR101191319B1 (ko) 2011-07-11 2012-10-16 중앙대학교 산학협력단 객체의 움직임 정보에 기반한 회화적 렌더링 장치 및 방법
US10885681B2 (en) 2015-09-11 2021-01-05 Samsung Electronics Co., Ltd. Method and apparatus for performing path stroking

Also Published As

Publication number Publication date
KR20100122381A (ko) 2010-11-22

Similar Documents

Publication Publication Date Title
US11386528B2 (en) Denoising filter
CA2745380C (en) Devices and methods for processing images using scale space
US9922443B2 (en) Texturing a three-dimensional scanned model with localized patch colors
US8374428B2 (en) Color balancing for partially overlapping images
KR101028699B1 (ko) 회화적 렌더링 장치 및 방법
US20110058748A1 (en) Method and Apparatus for Selecting an Object in an Image
WO2001026050A2 (en) Improved image segmentation processing by user-guided image processing techniques
US20140050392A1 (en) Method and apparatus for detecting and tracking lips
US20150227779A1 (en) Image processing device, image processing method, and program
JP5362130B2 (ja) イメージ処理方法及びそのための装置
KR101112142B1 (ko) 참조 이미지를 이용한 카툰 렌더링 장치 및 방법
KR101191319B1 (ko) 객체의 움직임 정보에 기반한 회화적 렌더링 장치 및 방법
KR20140024206A (ko) 입술 검출 및 추적을 위한 방법 및 장치
US20180158194A1 (en) Determining Optical Flow
Kim et al. Real-time human segmentation from RGB-D video sequence based on adaptive geodesic distance computation
Chen et al. Importance-driven composition of multiple rendering styles
Kang et al. Landscape painterly rendering based on observation
Čejka et al. Tackling problems of marker-based augmented reality under water
Sethi et al. Multi-Operator based Saliency Detection
Seo et al. Video Motion Analysis for Landscape Image Abstraction
KR101191317B1 (ko) 객체의 형태를 고려한 밝기 양자화에 의한 카툰 스타일 영상 생성 장치 및 방법
KR101155227B1 (ko) 원 영상의 형태 방향 정보를 반영한 영상 변환 장치 및 방법
Liarokapis Tackling Problems of Marker-Based Augmented Reality Under Water
Wu et al. Images’ Partially Blurred Part Location and Restoration based on the Calculation Model and GAN Algorithm
Balure et al. Depth image super-resolution with local medians and bilateral filtering

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
FPAY Annual fee payment

Payment date: 20140326

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150417

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160325

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee