KR101579112B1 - 이미지 처리 방법 및 장치 - Google Patents

이미지 처리 방법 및 장치 Download PDF

Info

Publication number
KR101579112B1
KR101579112B1 KR1020140057950A KR20140057950A KR101579112B1 KR 101579112 B1 KR101579112 B1 KR 101579112B1 KR 1020140057950 A KR1020140057950 A KR 1020140057950A KR 20140057950 A KR20140057950 A KR 20140057950A KR 101579112 B1 KR101579112 B1 KR 101579112B1
Authority
KR
South Korea
Prior art keywords
stencil mask
velocity field
mask area
pixel value
obtaining
Prior art date
Application number
KR1020140057950A
Other languages
English (en)
Other versions
KR20150027679A (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 US14/477,314 priority Critical patent/US9384574B2/en
Publication of KR20150027679A publication Critical patent/KR20150027679A/ko
Application granted granted Critical
Publication of KR101579112B1 publication Critical patent/KR101579112B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour
    • 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
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/603D [Three Dimensional] animation of natural phenomena, e.g. rain, snow, water or plants
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/802D [Two Dimensional] animation, e.g. using sprites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/24Fluid dynamics

Abstract

현재 프레임에 대한 적어도 하나의 스텐실 마스크 영역을 획득하고, 스텐실 마스크 영역에서 스텐실 마스크 영역의 중심 지점에서 방사형으로 퍼지는 벡터값을 가지는 제1 속도장을 획득하고, 제1 속도장에 기초하여 스텐실 마스크 영역에 대한 최종 속도장을 획득하고, 획득된 최종 속도장에 기초하여 스텐실 마스크 영역에 포함된 각 픽셀값을 결정하고, 결정된 픽셀값에 따라 현재 프레임을 표시하는 이미지 처리 방법이 개시된다.

Description

이미지 처리 방법 및 장치{Method and apparatus for processing image}
본 발명은 이미지를 처리하는 방법 및 장치에 대한 것이다.
일상에서 접할 수 있는 유체의 움직임은 대부분 비압축성 유체 유동(incompressible fluid flow), 예를 들면 액체의 이동으로 볼 수 있다. CG 분야 및 전산 유체 역학(Computational fluid dynamics; CFD) 분야에서는 비압축성 유체 유동을 해석하기 위해 나비에-스톡스 방정식(Navier-stokes)이 사용되고 있다. 나비에-스톡스 방정식은 여러가지 형태의 편미분 방정식이 하나의 식으로 결합되어 있어 해석적인 해(analytic solution)가 존재하지 않는다.
이미지 처리 장치는 유체의 계산 영역을 격자(grid) 형태의 유한 요소로 분할하고, 나비에-스톡스 방정식을 연산하여 각 프레임(frame) 별로 격자의 속도장을 산출함으로써 시간에 따른 유체 시뮬레이션을 구현할 수 있으나, 나비에-스톡스 방정식에 따라 연산하는 것은 상당한 계산량이 요구되는 문제점이 있다.
본 발명은 이미지를 처리하는 방법 및 장치에 관한 것이다. 구체적으로, 입력 신호에 따라 유체 시뮬레이션에 의한 시각 효과를 주기 위하여 표시된 이미지를 처리하여 표시하는 방법 및 장치에 관한 것이다.
본 발명의 일 실시 예에 의한 이미지 처리 방법은 현재 프레임에 대한 적어도 하나의 스텐실 마스크 영역을 획득하고, 상기 스텐실 마스크 영역에서 상기 스텐실 마스크 영역의 중심 지점에서 방사형으로 퍼지는 벡터값을 가지는 제1 속도장을 획득하고, 상기 제1 속도장에 기초하여 상기 스텐실 마스크 영역에 대한 최종 속도장을 획득하고, 상기 획득된 최종 속도장에 기초하여 상기 스텐실 마스크 영역에 포함된 각 픽셀값을 결정하고, 상기 결정된 픽셀값에 따라 상기 현재 프레임을 표시하는 단계를 포함하는 것을 특징으로 한다.
더하여, 상기 최종 속도장을 획득하는 단계는 소정 이미지로부터 제2 속도장을 획득하는 단계; 상기 제1 속도장 및 제2 속도장에 기초하여 상기 스텐실 마스크 영역에 대한 최종 속도장을 획득하는 단계를 포함하는 것을 특징으로 한다.
더하여, 상기 소정 이미지는 임의의 노이즈 이미지이고, 상기 제1 속도장을 획득하는 단계는 상기 노이즈 이미지에 대해 컬(curl) 연산을 수행함으로써 상기 제1 속도장을 획득하는 단계를 포함하는 것을 특징으로 한다.
더하여, 상기 스텐실 마스크 영역을 결정하는 단계는 상기 중심 지점에서 입력이 수신된 시점과 상기 현재 프레임이 표시되는 시점 간의 차이에 따라 상기 스텐실 마스크 영역의 크기를 결정하는 단계를 포함하는 것을 특징으로 한다.
더하여, 상기 각 픽셀값을 결정하는 단계는 상기 각 픽셀값과 대응되는 속도 벡터를 상기 최종 속도장으로부터 획득하는 단계; 상기 획득된 속도 벡터를 이용하여 상기 각 픽셀과 대응되는 이전 위치의 픽셀을 결정하는 단계; 상기 결정된 이전 위치의 픽셀값에 기초하여 상기 각 픽셀값을 결정하는 단계를 포함하는 것을 특징으로 한다.
더하여, 상기 적어도 하나의 스텐실 마스크 영역을 획득하는 단계는 상기 이전 프레임에 대한 스텐실 마스크 영역이 존재하는 경우, 상기 이전 프레임에 대한 스텐실 마스크 영역의 표시 시간을 획득하는 단계; 상기 표시 시간이 기준 시간보다 작은 경우, 상기 이전 프레임에 대한 스텐실 마스크 영역을 현재 프레임에 대한 적어도 하나의 스텐실 마스크 영역으로 획득하는 단계를 포함하는 것을 특징으로 한다.
더하여, 상기 적어도 하나의 스텐실 마스크 영역을 획득하는 단계는 상기 표시 시간이 기준 시간보다 같거나 큰 경우, 상기 이전 이미지에 대한 스텐실 마스크 영역에 관한 정보를 메모리에서 삭제하는 단계를 포함하는 것을 특징으로 한다.
더하여, 상기 현재 이미지를 표시하는 단계는 상기 결정된 픽셀값의 채도 및 명도 중 적어도 하나를 소정 크기 이상 증가시키는 단계; 상기 채도 및 명도 중 적어도 하나가 증가된 픽셀값에 따라 상기 현재 프레임을 표시하는 단계를 포함하는 것을 특징으로 한다.
본 발명의 일 실시 예에 의한 단말 장치는 현재 프레임에 대한 적어도 하나의 스텐실 마스크 영역을 획득하고, 상기 스텐실 마스크 영역에서 상기 스텐실 마스크 영역의 중심 지점에서 방사형으로 퍼지는 벡터값을 가지는 제1 속도장을 획득하고, 상기 제1 속도장에 기초하여 상기 스텐실 마스크 영역에 대한 최종 속도장을 획득하고, 상기 획득된 최종 속도장에 기초하여 상기 스텐실 마스크 영역에 포함된 각 픽셀값을 결정하는 제어부; 상기 결정된 픽셀값에 따라 상기 현재 프레임을 표시하는 디스플레이부를 포함하는 것을 특징으로 한다.
도 1은 본 발명의 일 실시 예에 의한 단말 장치의 내부 구성을 나타낸 블록도이다.
도 2는 본 발명의 일 실시 예에 의한 단말 장치(100)의 내부 구성을 나타낸 블록도이다.
도 3은 본 발명의 일 실시 예에 의한 단말 장치의 소프트웨어 구성을 나타내는 블록도이다.
도 4는 본 발명의 일 실시 예에 의한 이미지 처리 방법을 나타낸 순서도이다.
도 5는 본 발명의 일 실시 예에 의한 스텐실 마스크 영역의 일 예를 나타낸 예시도이다.
도 6은 본 발명의 일 실시 예에 의한 세미-라그랑지안 방식에 따라 픽셀값을 결정하는 일 예를 나타낸 예시도이다.
도 7은 본 발명의 일 실시 예에 있어서 입력 신호에 따른 이미지 처리 방법을 나타낸 순서도이다.
도 8은 본 발명의 일 실시 예에 의한 제2 속도장을 획득하는 일 예를 나타낸 예시도이다.
도 9는 본 발명의 일 실시 예에 의한 이미지 처리 방법을 나타낸 순서도이다.
도 10은 본 발명의 일 실시 예에 따른 이미지 처리 방법에 따라 표시될 수 있는 이미지의 일 예를 나타낸 예시도이다.
이하 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.
이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시 예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시 예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.
첨부 도면에 있어서 일부 구성요소는 과장되거나 생략되거나 또는 개략적으로 도시되었으며, 각 구성요소의 크기는 실제 크기를 전적으로 반영하는 것이 아니다. 본 발명은 첨부한 도면에 그려진 상대적인 크기나 간격에 의해 제한되어지지 않는다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
아래에서는 첨부한 도면을 참고하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 설명한다.
도 1은 본 발명의 일 실시 예에 의한 단말 장치의 내부 구성을 나타낸 블록도이다.
본 발명의 일 실시 예에 의한 단말 장치(100)는 후술될 디스플레이부(120)에 표시되어 있는 이미지를 입력 신호에 따라 처리하여 처리된 이미지를 표시할 수 있다. 구체적으로, 단말 장치(100)는 입력 신호에 따라 이미지에 유체의 흐름과 같이 보이는 시각 효과, 즉 수채화 효과(watercolor effect)를 적용시키기 위하여 해당 이미지를 처리하여 표시할 수 있다. 이미지에 수채화 효과가 적용되면, 이미지의 일부 영역의 색들이 물에 섞여 입력 신호에 따라 유체의 흐름과 같이 움직이는 것처럼 표시될 수 있다.
단말 장치(100)는 각 프레임 별로 이미지를 처리하여 순서대로 표시할 수 있으며, 현재 프레임의 픽셀값은 이전 프레임의 픽셀값에 기초하여 결정될 수 있다. 상술된 '프레임'이란, 시간 순서에 따라 표시됨으로써 움직이는 이미지를 구성할 수 있는 각각의 정지된 이미지들을 의미할 수 있다.
특히, 단말 장치(100)는 입력 신호에 따라 표시된 이미지에 대한 스텐실 마스크 영역을 설정하고, 설정된 스텐실 마스크 영역에 포함된 픽셀들을 처리할 수 있다. 스텐실 마스크 영역은 입력 신호에 따라 수채화 효과를 적용하기 위해 이미지가 처리될 수 있는 영역을 포함할 수 있다. 스텐실 마스크 영역은 입력 신호에 따라 생성될 수 있으며, 시간 경과에 따라 스텐실 마스크 영역의 크기가 변화될 수 있다. 예를 들면, 스텐실 마스크 영역은 시간 경과에 따라 입력 신호가 발생된 지점을 중심으로 점점 확대될 수 있다. 따라서, 단말 장치(100)는 이미지의 전체 영역 대신 스텐실 마스크 영역에 포함된 픽셀값들만 처리함으로써 이미지 처리시 발생될 수 있는 부하를 최소화할 수 있다.
그리고, 단말 장치(100)는 스텐실 마스크 영역에 포함된 영역에 대하여 이미지가 입력 신호에 따라 수채화 효과를 주기 위해 다른 이미지로부터 획득된 속도장(velocity field)과 입력 신호에 따라 획득된 속도장을 이용하여 유체의 움직임을 표시하기 위해 이미지를 처리할 수 있다. 일반적으로 유체 흐름을 시뮬레이션하기 위해서는 계산량이 많은 나비에-스톡스 방정식이 이용될 수 있으나, 본 발명의 일 실시 예에 의한 단말 장치(100)는 나비에-스톡스 방정식을 이용하지 않고, 유체 흐름을 시뮬레이션하기 위한 속도장을 획득할 수 있다. 즉, 단말 장치(100)는 상술된 나비에-스톡스 방정식을 이용하지 않고, 다른 이미지로부터 획득된 속도장 및 입력 신호에 따라 획득된 속도장 중 적어도 하나를 이용함으로써, 계산량을 줄일 수 있다.
비압축성 유체란 유체 흐름 중 밀도가 일정하게 유지되는 유체로 일반적으로 기체는 압축성 유체이고, 액체는 비압축성 유체로 분류될 수 있다. 본 발명의 일 실시 예에 있어서, 이미지는 수채화 효과가 적용됨에 따라 액체의 흐름과 같이 표시될 수 있는 점에서, 단말 장치(100)는 이미지를 처리하기 위해 비압축성 유체의 특성을 가지는 속도장을 이용할 수 있다. 단말 장치(100)는 나비에-스톡스 방정식에 따라 유체 시뮬레이션을 통해 속도장을 획득하는 대신 비압축성 유체 특성을 가지는 미리 획득된 속도장을 이용함으로써, 입력 신호에 따라 유체가 이동하는 시각 효과를 표현할 수 있다.
또한, 이미지는 입력 신호에 따라 변화되는 이미지가 표시될 수 있도록 입력 신호에 따른 속도장에 의해 처리될 수 있다. 입력 신호에 따라 획득될 수 있는 속도장은, 예를 들면, 입력 신호가 발생된 지점을 중심으로 방사형으로 퍼지는 벡터 값을 가지는 속도장일 수 있다.
단말 장치(100)는 상술된 적어도 하나의 속도장을 이용하여 최종 속도장을 구하고, 최종 속도장에 따라 각 픽셀을 이류(advection)시킴으로써 각 픽셀값을 결정할 수 있다. 이류란, 유체의 움직임을 의미하는 것으로, 구체적으로는, 단말 장치(100)는 최종 속도장에 따른 유체의 움직임에 의한 각 픽셀값을 결정할 수 있다.
도 1을 참조하면, 본 발명의 일 실시 예에 의한 단말 장치(100)는 제어부(110) 및 디스플레이부(120)를 포함할 수 있다.
제어부(110)는 디스플레이부(120)의 동작을 전체적으로 제어할 수 있다. 구체적으로, 제어부(110)는 현재 프레임에 대한 스텐실 마스크 영역 및 스텐실 마스크 영역에 대한 최종 속도장을 결정하고, 최종 속도장에 기초하여 스텐실 마스크 영역에 포함된 각 픽셀값을 결정할 수 있다. 최종 속도장에 기초하여 유체 흐름을 표현할 수 있는 수식에 따라서 각 픽셀값이 결정될 수 있다. 그리고, 제어부(110)는 결정된 픽셀값에 따라 현재 프레임을 표시하도록 디스플레이부(120)를 제어함으로써 수채화 효과가 적용된 이미지를 표시할 수 있다.
디스플레이부(120)는 제어부(110)의 제어에 따라 현재 프레임을 표시할 수 있다. 구체적으로, 디스플레이부(120)는 제어부(110)에 의해 적어도 하나의 픽셀값이 결정된 이미지의 각 프레임들을 시간 순서대로 표시할 수 있다. 즉, 디스플레이부(120)는 제어부(110)에 의해 수채화 효과가 적용된 프레임들을 시간 순서대로 표시할 수 있다.
이하 도 2 및 도 3을 참조하여, 단말 장치(100)의 구체적인 구성을 예를 들어 설명하기로 한다.
도 2는 본 발명의 일 실시 예에 의한 단말 장치(100)의 내부 구성을 나타낸 블록도이다. 도 2의 제어부(170) 및 디스플레이부(110)는 도 1의 제어부(110) 및 디스플레이부(120)와 대응될 수 있다.
도 2에 도시된 단말 장치(100)의 구성은, 예를 들어, 휴대폰, 태블릿 PC, PDA, MP3 플레이어, 키오스크, 전자 액자, 네비게이션 장치, 디지털 TV, 스마트 TV, 손목 시계(Wrist watch) 또는 HMD(Head-Mounted Display)와 같은 웨어러블 기기(Wearable device) 등과 같은 다양한 유형의 장치에 적용될 수 있다.
도 2를 참조하면, 단말 장치(100)는 디스플레이부(110), 제어부(170), 메모리(120), GPS 칩(125), 통신부(130), 비디오 프로세서(135), 오디오 프로세서(140), 사용자 입력부(145), 마이크부(150), 촬상부(155), 스피커부(160), 움직임 감지부(165) 중 적어도 하나를 포함 할 수 있다. 도 1b의 제어부(170) 및 디스플레이부(110)는 도 1a의 제어부(110) 및 디스플레이부(120)와 각각 대응될 수 있다.
도 2에 따르면, 디스플레이부(110)는 표시패널(111) 및 표시 패널(111)을 제어하는 컨트롤러(미도시)를 포함할 수 있다. 표시패널(111)에는 LCD(Liquid Crystal Display), OLED(Organic Light Emitting Diodes) 디스플레이, AM-OLED(Active-Matrix Organic Light-Emitting Diode), PDP(Plasma Display Panel) 등과 같은 다양한 형태의 디스플레이로 구현될 수 있다. 표시패널(111)은 유연하게(flexible), 투명하게(transparent) 또는 착용할 수 있게(wearable) 구현될 수 있다. 디스플레이부(110)는 사용자 입력부(145)의 터치 패널(147)과 결합되어 터치 스크린(미도시)으로 제공될 수 있다. 예를 들어, 터치 스크린(미도시)은 표시 패널(111)과 터치 패널(147)이 적층 구조로 결합된 일체형의 모듈을 포함할 수 있다.
본 발명의 일 실시 예에 의한 디스플레이부(110)는 제어부(170)에 의해 수채화 효과가 적용된 프레임들을 순서대로 표시할 수 있다.
메모리(120)는 내장 메모리(Internal Memory)(미도시) 및 외장 메모리(External Memory)(미도시) 중 적어도 하나를 포함할 수 있다.
내장 메모리는, 예를 들어, 휘발성 메모리(예를 들면, DRAM(Dynamic RAM), SRAM(Static RAM), SDRAM(Synchronous Dynamic RAM) 등), 비휘발성 메모리(예를 들면, OTPROM(One Time Programmable ROM), PROM(Programmable ROM), EPROM(Erasable and Programmable ROM), EEPROM(Electrically Erasable and Programmable ROM), Mask ROM, Flash ROM 등), 하드 디스크 드라이브(HDD) 또는 솔리드 스테이트 드라이브(SSD) 중 적어도 하나를 포함할 수 있다. 일 실시 예에 따르면, 제어부(170)는 비휘발성 메모리 또는 다른 구성요소 중 적어도 하나로부터 수신한 명령 또는 데이터를 휘발성 메모리에 로드(load)하여 처리할 수 있다. 또한, 제어부(170)는 다른 구성요소로부터 수신하거나 생성된 데이터를 비휘발성 메모리에 보존할 수 있다.
외장 메모리는, 예를 들면, CF(Compact Flash), SD(Secure Digital), Micro-SD(Micro Secure Digital), Mini-SD(Mini Secure Digital), xD(extreme Digital) 및 Memory Stick 중 적어도 하나를 포함할 수 있다.
메모리(120)는 단말 장치(100)의 동작에 사용되는 각종 프로그램 및 데이터를 저장할 수 있다. 예를 들어, 메모리(120)는 음성 인식을 수행하기 위한 프로그램, 음성 인식 히스토리 목록 및 음성 인식에 따라 실행될 수 있는 각종 프로그램을 저장할 수 있다.
제어부(170)는 메모리(120)에 저장된 음성 인식 히스토리 목록이 디스플레이부(110)에 표시되도록 디스플레이부(110)를 제어할 수 있다. 다시 말하자면, 제어부(170)는 메모리(120)에 저장된 음성 인식 히스토리 목록을 디스플레이부(110)에 표시할 수 있다. 또는, 제어부(170)는 디스플레이부(110)의 일 영역, 예를 들어 음성 인식 히스토리 목록이 표시된 제1 윈도우 영역에서 사용자 제스처가 이루어지면, 사용자의 제스처에 대응되는 제어 동작을 수행할 수 있다. 예를 들면, 음성 인식 히스토리 목록에 포함된 음성 인식 정보 및 응답 정보 중 적어도 하나의 정보가 사용자 제스처에 따라 선택되면, 제어부(170)는 선택된 정보와 대응되는 응답 정보를 갱신하여 표시하도록 디스플레이부(110)를 제어할 수 있다.
제어부(170)는 RAM(171), ROM(172), CPU(173), GPU(Graphic Processing Unit)(174) 및 버스(175) 중 적어도 하나를 포함 할 수 있다. RAM(171), ROM(172), CPU(173) 및 GPU(174) 등은 버스(175)를 통해 서로 연결될 수 있다.
CPU(173)는 메모리(120)에 액세스하여, 메모리(120)에 저장된 O/S를 이용하여 부팅을 수행한다. 그리고, 메모리(120)에 저장된 각종 프로그램, 컨텐츠, 데이터 등을 이용하여 다양한 동작을 수행한다.
ROM(172)에는 시스템 부팅을 위한 명령어 세트 등이 저장된다. 예로, 휴대 단말기(100)는 턴온 명령이 입력되어 전원이 공급되면, CPU(173)가 ROM(172)에 저장된 명령어에 따라 메모리(120)에 저장된 O/S를 RAM(171)에 복사하고, O/S를 실행시켜 시스템을 부팅시킬 수 있다. 부팅이 완료되면, CPU(173)는 메모리(120)에 저장된 각종 프로그램을 RAM(171)에 복사하고, RAM(171)에 복사된 프로그램을 실행시켜 각종 동작을 수행한다. GPU(174)는 단말 장치(100)의 부팅이 완료되면, 디스플레이부(110)의 영역에 UI 화면을 디스플레이한다. 구체적으로는, GPU(174)는 컨텐츠, 아이콘, 메뉴 등과 같은 다양한 객체를 포함하는 전자문서가 표시된 화면을 생성할 수 있다. GPU(174)는 화면의 레이아웃에 따라 각 객체들이 표시될 좌표값, 형태, 크기, 컬러 등과 같은 속성 값을 연산한다. 그리고, GPU(174)는 연산된 속성값에 기초하여 객체를 포함하는 다양한 레이아웃의 화면을 생성할 수 있다. GPU(174)에서 생성된 화면은 디스플레이부(110)로 제공되어, 디스플레이부(110)의 각 영역에 각각 표시될 수 있다.
GPS 칩(125)은 GPS(Grobal Positioning System) 위성으로부터 GPS 신호를 수신하여, 단말 장치(100)의 현재 위치를 산출할 수 있다. 제어부(170)는 네비게이션 프로그램을 이용할 때나 그 밖에 사용자의 현재 위치가 필요할 경우에, GPS 칩(125)을 이용하여 사용자 위치를 산출할 수 있다.
통신부(130)는 다양한 유형의 통신방식에 따라 다양한 유형의 외부 기기와 통신을 수행할 수 있다. 통신부(130)는 와이파이칩(131), 블루투스 칩(132), 무선 통신 칩(133), NFC 칩(134) 중 적어도 하나를 포함할 수 있다. 제어부(170)는 통신부(130)를 이용하여 각종 외부 기기와 통신을 수행할 수 있다.
와이파이 칩(131), 블루투스 칩(132)은 각각 WiFi 방식, 블루투스 방식으로 통신을 수행할 수 있다. 와이파이 칩(131)이나 블루투스 칩(132)을 이용하는 경우에는 SSID 및 세션 키 등과 같은 각종 연결 정보를 먼저 송수신하여, 이를 이용하여 통신 연결한 후 각종 정보들을 송수신할 수 있다. 무선 통신 칩(133)은 IEEE, 지그비, 3G(3rd Generation), 3GPP(3rd Generation Partnership Project), LTE(Long Term Evoloution) 등과 같은 다양한 통신 규격에 따라 통신을 수행하는 칩을 의미한다. NFC 칩(134)은 135kHz, 13.56MHz, 433MHz, 860~960MHz, 2.45GHz 등과 같은 다양한 RF-ID 주파수 대역들 중에서 13.56MHz 대역을 사용하는 NFC(Near Field Communication) 방식으로 동작하는 칩을 의미한다.
비디오 프로세서(135)는 통신부(130)를 통해 수신된 컨텐츠 또는, 메모리(120)에 저장된 컨텐츠에 포함된 비디오 데이터를 처리할 수 있다. 비디오 프로세서(135)에서는 비디오 데이터에 대한 디코딩, 스케일링, 노이즈 필터링, 프레임 레이트 변환, 해상도 변환 등과 같은 다양한 이미지 처리를 수행할 수 있다.
오디오 프로세서(140)는 통신부(130)를 통해 수신된 컨텐츠 또는, 메모리(120)에 저장된 컨텐츠에 포함된 오디오 데이터를 처리할 수 있다. 오디오 프로세서(140)에서는 오디오 데이터에 대한 디코딩이나 증폭, 노이즈 필터링 등과 같은 다양한 처리가 수행될 수 있다.
제어부(170)는 멀티미디어 컨텐츠에 대한 재생 프로그램이 실행되면 비디오 프로세서(135) 및 오디오 프로세서(140)를 구동시켜, 해당 컨텐츠를 재생할 수 있다. 스피커부(160)는 오디오 프로세서(140)에서 생성한 오디오 데이터를 출력할 수 있다.
사용자 입력부(145)는 사용자로부터 다양한 명령어를 입력 받을 수 있다. 사용자 입력부(145)는 키(146), 터치 패널(147) 및 펜 인식 패널(148) 중 적어도 하나를 포함할 수 있다. 본 발명의 일 실시예에 의하면, 디스플레이부(110)에서 사용자 입력이 수신된 지점을 중심으로 스텐실 마스크 영역 및 사용자 입력에 따른 속도장이 결정될 수 있고, 결정된 스텐실 마스크 영역 및 속도장에 따라 각 픽셀값이 결정됨으로써 수채화 효과가 적용된 이미지들이 표시될 수 있다.
키(146)는 단말 장치(100)의 본체 외관의 전면부나 측면부, 배면부 등의 다양한 영역에 형성된 기계적 버튼, 휠 등과 같은 다양한 유형의 키를 포함할 수 있다.
터치 패널(147)은 사용자의 터치 입력을 감지하고, 감지된 터치 신호에 해당하는 터치 이벤트 값을 출력할 수 있다. 터치 패널(147)이 표시 패널(111)과 결합하여 터치 스크린(미도시)을 구성한 경우, 터치 스크린은 정전식이나, 감압식, 압전식 등과 같은 다양한 유형의 터치 센서로 구현될 수 있다. 정전식은 터치 스크린 표면에 코팅된 유전체를 이용하여, 사용자의 신체 일부가 터치 스크린 표면에 터치되었을 때 사용자의 인체로 야기되는 미세 전기를 감지하여 터치 좌표를 산출하는 방식이다. 감압식은 터치 스크린에 내장된 두 개의 전극 판을 포함하여, 사용자가 화면을 터치하였을 경우, 터치된 지점의 상하 판이 접촉되어 전류가 흐르게 되는 것을 감지하여 터치 좌표를 산출하는 방식이다. 터치 스크린에서 발생하는 터치 이벤트는 주로 사람의 손가락에 의하여 생성될 수 있으나, 정전 용량 변화를 가할 수 있는 전도성 재질의 물체에 의해서도 생성될 수 있다.
펜 인식 패널(148)은 사용자의 터치용 펜(예컨대, 스타일러스 펜(stylus pen), 디지타이저 펜(digitizer pen))의 운용에 따른 펜의 근접 입력 또는 터치 입력을 감지하고 감지된 펜 근접 이벤트 또는 펜 터치 이벤트를 출력할 수 있다. 펜 인식 패널(148)은, 예로, EMR 방식으로 구현될 수 있으며, 펜의 근접 또는 터치에 의한 전자기장의 세기 변화에 따라 터치 또는 근접 입력을 감지할 수 있다. 상세하게는 펜 인식 패널(148)은 그리드 구조를 가지는 전자 유도 코일 센서(미도시)와 전자 유도 코일 센서의 각 루프 코일에 순차적으로 소정의 주파수를 가지는 교류 신호를 제공하는 전자 신호 처리부(미도시)를 포함하여 구성될 수 있다. 이러한 펜 인식 패널(148)의 루프 코일 근방에 공진회로를 내장하는 펜이 존재하면, 해당 루프 코일로부터 송신되는 자계가 펜 내의 공진회로에 상호 전자 유도에 기초한 전류를 발생시킨다. 이 전류를 기초로 하여, 펜 내의 공진 회로를 구성하는 코일로부터 유도 자계가 발생하게 되고, 펜 인식 패널(148)은 이 유도 자계를 신호 수신 상태에 있는 루프 코일에서 검출하게 되어 펜의 접근 위치 또는 터치 위치가 감지될 수 있다. 펜 인식 패널(148)은 표시 패널(111)의 하부에 일정 면적, 예를 들어, 표시 패널(111)의 표시 영역을 커버할 수 있는 면적을 가지고 마련될 수 있다.
마이크부(150)는 사용자 음성이나 기타 소리를 입력 받아 오디오 데이터로 변환할 수 있다. 제어부(170)는 마이크 부(150)를 통해 입력되는 사용자 음성을 음성 인식 동작에서 이용하거나, 오디오 데이터로 변환하여 메모리(120)에 저장할 수 있다.
촬상부(155)는 사용자의 제어에 따라 정지 영상 또는 동영상을 촬상할 수 있다. 촬상부(155)는 전면 카메라, 후면 카메라와 같이 복수 개로 구현될 수도 있다.
촬상부(155) 및 마이크부(150)가 마련된 경우, 제어부(170)는 마이크부(150)를 통해 입력되는 사용자 음성이나 촬상부(155)에 의해 인식되는 사용자 모션에 따라 제어 동작을 수행할 수도 있다. 예컨대, 단말 장치(100)는 모션 제어 모드나 음성 제어 모드로 동작할 수 있다. 모션 제어 모드로 동작하는 경우, 제어부(170)는 촬상부(155)를 활성화시켜 사용자를 촬상하고, 사용자의 모션 변화를 추적하여 그에 대응되는 제어 동작을 수행할 수 있다. 음성 제어 모드로 동작하는 경우 제어부(170)는 마이크부(150)를 통해 입력된 사용자 음성을 분석하고, 분석된 사용자 음성에 따라 제어 동작을 수행하는 음성 인식 모드로 동작할 수 있다.
움직임 감지부(165)는 단말 장치(100)의 본체 움직임을 감지할 수 있다. 단말 장치(100)는 다양한 방향으로 회전되거나 기울어질 수 있다. 이 때, 움직임 감지부(165)는 지자기 센서, 자이로 센서, 가속도 센서 등과 같은 다양한 센서들 중 적어도 하나를 이용하여 회전 방향 및 각도, 기울기 등과 같은 움직임 특성을 감지할 수 있다.
그 밖에, 도 2에 도시하지는 않았으나, 실시예에는, 단말 장치(100) 내에 USB 커넥터가 연결될 수 있는 USB 포트나, 헤드셋, 마우스, LAN 등과 같은 다양한 외부 단자와 연결하기 위한 다양한 외부 입력 포트, DMB(Digital Multimedia Broadcasting) 신호를 수신하여 처리하는 DMB 칩, 다양한 센서 등을 더 포함할 수 있다.
전술한 단말 장치(100)의 구성 요소들의 명칭은 달라질 수 있다. 또한, 본 발명의 일 실시 예에 따른 단말 장치(100)는 전술한 구성요소들 중 적어도 하나를 포함하여 구성될 수 있으며, 일부 구성요소가 생략되거나 또는 추가적인 다른 구성요소를 더 포함할 수 있다.
도 3은 본 발명의 일 실시 예에 의한 단말 장치의 소프트웨어 구성을 나타내는 블록도이다.
도 3에 따르면, 메모리(120)는 단말 장치(100)의 자원을 제어하는 운영체제 및 어플리케이션의 동작을 위한 응용 프로그램 등을 저장할 수 있다. 운영체제는 커널, 미들웨어, API 등을 포함할 수 있다. 운영체제로는, 예를 들어, 안드로이드(Android), iOS, 윈도우즈(Windows), 심비안(Symbian), 타이젠(Tizen) 또는 바다(Bada) 운영 체제 등이 있을 수 있다.
커널(121)은 자원을 관리할 수 있는 디바이스 드라이버(121-1) 또는 시스템 리소스 매니저(121-2) 중 적어도 하나를 포함할 수 있다. 디바이스 드라이버(121-1)는 단말 장치(100)의 하드웨어들을 소프트웨어적으로 접근하여 제어하도록 할 수 있다. 이를 위하여, 디바이스 드라이버(121-1)는, 인터페이스와 각 하드웨어 업체가 제공하는 개별 드라이버 모듈로 구분될 수 있다. 디바이스 드라이버(121-1)는, 예로, 디스플레이 드라이버, 카메라 드라이버, 블루투스 드라이버, 공유 메모리 드라이버, USB 드라이버, 키패드 드라이버, WiFi 드라이버, 오디오 드라이버 또는 IPC (inter-process communication) 드라이버 중 적어도 하나를 포함할 수 있다. 시스템 리소스 매니저(121-2)는 프로세스 관리부, 메모리 관리부 또는 파일 시스템 관리부 중 적어도 하나를 포함할 수 있다. 시스템 리소스 메니저(121-2)는 시스템 리소스의 제어, 할당 또는 회수 등의 기능을 수행할 수 있다.
미들웨어(122)는 다양한 어플리케이션들에서 공통적으로 요구되는 기능을 제공하기 위해 미리 구현해 놓은 복수의 모듈들을 포함할 수 있다. 미들웨어(122)는 어플리케이션(124)이 단말 장치 내부의 자원을 효율적으로 사용할 수 있도록 API(123)를 통해 기능을 제공할 수 있다. 미들웨어(122)는, 예컨대, 어플리케이션 매니저(122-1), 윈도우 매니저(122-2), 멀티미디어 매니저(122-3), 리소스 매니저(122-4), 파워 매니저(122-5), 데이터베이스 매니저(122-6), 패키지 매니저(122-7), 연결 매니저(122-8), 통지 매니저(122-9), 위치 매니저(122-10), 그래픽 매니저(122-11) 또는 보안 매니저(122-12) 등의 복수의 모듈들 중 적어도 하나 이상을 포함할 수 있다.
어플리케이션 매니저(122-1)는 어플리케이션(124) 중 적어도 하나의 어플리케이션의 생명 주기(life cycle)를 관리할 수 있다. 윈도우 매니저(122-2)는 화면에서 사용하는 GUI 자원을 관리할 수 있다. 멀티미디어 매니저(122-3)는 다양한 미디어 파일들의 재생에 포맷을 파악하고, 해당 포맷에 맞는 코덱(codec)을 이용하여 미디어 파일의 인코딩(encoding) 또는 디코딩(decoding)을 수행할 수 있다. 리소스 매니저(122-4)는 어플리케이션(124) 중 적어도 어느 하나의 어플리케이션의 소스 코드, 메모리 또는 저장 공간 등의 자원을 관리할 수 있다. 파워 매니저(122-5)는 바이오스(BIOS) 등과 함께 동작하여 배터리(battery) 또는 전원을 관리하고, 동작에 전력 정보 등을 제공할 수 있다. 데이터베이스 매니저(122-6)는 어플리케이션(124) 중 적어도 하나의 어플리케이션에서 사용할 데이터베이스를 생성, 검색 또는 변경할 수 있도록 관리할 수 있다. 패키지 매니저(122-7)은 패키지 파일의 형태로 배포되는 어플리케이션의 설치 또는 업데이트를 관리할 수 있다. 연결 매니저(122-8)는, 예로, WiFi 또는 블루투스 등의 무선 연결을 관리할 수 있다. 통지 매니저(122-9)는 도착 메시지, 약속, 근접성 알림 등의 사건(event)을 사용자에게 방해되지 않는 방식으로 표시 또는 통지할 수 있다. 위치 매니저(122-10)는 단말 장치(100)의 위치 정보를 관리할 수 있다. 그래픽 매니저(122-11)는 사용자에게 제공될 그래픽 효과 및 이와 관련된 사용자 인터페이스를 관리할 수 있다. 보안 매니저(122-12)는 시스템 보안 또는 사용자 인증 등에 요구되는 제반 보안 기능을 제공할 수 있다. 사용자 단말 장치(100)가 전화 기능을 구비한 경우에는, 미들웨어(122)는 사용자의 음성 또는 영상 통화 기능을 관리하기 위한 통화 매니저(미도시)를 더 포함할 수 있다.
미들웨어(122)는 런타임 라이브러리(122-13) 또는 다른 라이브러리 모듈들(미도시)를 더 포함할 수 있다. 런타임 라이브러리(122-13)는 어플리케이션이 실행되는 동안에 프로그래밍 언어를 통해 새로운 기능을 추가하기 위해 컴파일러가 사용하는 라이브러리 모듈이다. 예컨대, 런타임 라이브러리(122-13)는 입출력, 메모리 관리 또는 산술 함수에 대한 기능 등을 수행할 수 있다. 미들웨어(122)는 전술한 내부 구성요소 모듈들의 다양한 기능 조합을 통해 새로운 미들웨어 모듈을 생성하여 사용할 수 있다. 미들웨어(122)는 차별화된 기능을 제공하기 위해 운영체제의 종류별로 특화된 모듈을 제공할 수 있다. 미들웨어(122)는 동적으로 기존의 구성요소를 일부 삭제하거나 새로운 구성요소들을 추가할 수 있다. 본 개시의 실시 예에 기재된 구성요소를 일부 생략하거나 다른 구성요소를 더 구비하거나, 또는 유사한 기능을 수행하는 다른 명칭을 갖는 구성요소로 대체할 수 있다.
API(123)는 API 프로그래밍 함수들의 집합으로써 운영체제에 따라 다른 구성으로 제공될 수 있다. 안드로이드 또는 iOS의 경우, 예를 들면, 플랫폼 별로 하나의 API 셋을 제공할 수 있으며, 타이젠(Tizen)의 경우, 예를 들면, 두 개 이상의 API 셋을 제공할 수 있다.
어플리케이션(124)은, 디폴트로 설치되어 있는 프리로드 어플리케이션(preloaded Application) 또는 사용자가 사용 과정에서 설치하여 사용할 수 있는 제 3자 어플리케이션(third party application)을 포함할 수 있다. 어플리케이션(124)은, 예를 들어, 홈 화면으로 돌아가기 위한 홈 어플리케이션(124-1), 상대방과 전화 통화를 할 수 있는 다이얼러(dialer) 어플리케이션(124-2), 전화번호로 식별되는 상대방으로부터 메시지를 수신하는 문자 메시지 어플리케이션(124-3), IM(Instant Message) 어플리케이션(124-4), 브라우저(Browser) 어플리케이션(124-5), 카메라 어플리케이션(124-6), 알람 어플리케이션(124-7), 상대방의 전화번호 또는 주소를 관리하는 폰 북(Phone-Book) 어플리케이션(124-8), 사용자의 통화 로그, 문자 메시지의 수/발신 로그 또는 부재 중 전화 로그 등을 관리하는 콜 로그 어플리케이션(124-9), 이메일(E-mail)로 식별되는 상대방으로부터 메시지를 수신하는 이메일 어플리케이션(124-10), 달력 어플리케이션(124-11), 미디어 플레이어(Media Player) 어플리케이션(124-12), 앨범 어플리케이션(124-13) 또는 시계 어플리케이션(124-14) 중 적어도 하나를 포함할 수 있다.
본 개시에 따른 소프트웨어의 전술한 구성요소들의 명칭은 운영체제의 종류에 달라질 수 있다. 또한, 본 개시에 따른 소프트웨어는 전술한 구성요소들 중 적어도 하나 이상을 포함하거나, 일부가 생략되거나, 또는 추가적인 다른 구성요소를 더 포함할 수 있다.
도 4는 본 발명의 일 실시 예에 의한 이미지 처리 방법을 나타낸 순서도이다.
도 4를 참조하면, 단계 410에서, 단말 장치(100)는 이미지의 현재 프레임에 대한 적어도 하나의 스텐실 마스크 영역을 획득할 수 있다. 스텐실 마스크 영역은 입력 신호에 따라 생성되어 기준 시간이 경과되면 소멸될 수 있다. 스텐실 마스크 영역은 시간이 경과함에 따라 그 크기가 점점 확대될 수 있어, 사용자 입력에 따라 수채화 효과가 적용되는 범위가 점점 확대되도록 이미지가 표시될 수 있다. 단말 장치(100)는 입력 신호에 의해 생성된 스텐실 마스크 영역 또는 이전 프레임에서 생성되어 아직 소멸되지 않은 스텐실 마스크 영역을 획득할 수 있다.
단계 420에서, 단말 장치(100)는 단계 410에서 획득한 스텐실 마스크 영역에서, 스텐실 마스크 영역의 중심 지점에서 방사형으로 퍼지는 벡터값을 가지는 제1 속도장을 획득할 수 있다. 스텐실 마스크 영역의 중심 지점은 사용자 입력이 입력된 지점과 대응될 수 있다. 속도장이란, 각 점에서 입자가 움직이는 방향 및 크기를 나타낸 것으로, 제1 속도장은 중심 지점을 기준으로 하는 방사형의 벡터들을 포함할 수 있다.
단계 430에서, 단말 장치(100)는 단계 420에서 획득한 제1 속도장에 기초하여 스텐실 마스크 영역에 적용시킬 최종 속도장을 획득할 수 있다. 단말 장치(100)는 제1 속도장에 더하여 스텐실 마스크 영역에 적용시키고자 하는 속도장이 존재하는 경우, 제1 속도장 및 다른 속도장을 더 이용하여 최종 속도장을 획득할 수 있다. 예를 들면, 단말 장치(100)는 제1 속도장뿐만 아니라 와류나 난류 흐름과 같이 유체 특성을 나타내는 제2 속도장을 더 이용하여 최종 속도장을 획득할 수 있다.
단계 440에서, 단말 장치(100)는 단계 430에서 획득된 최종 속도장에 기초하여 스텐실 마스크 영역에 포함된 각 픽셀값을 결정할 수 있다.
최종 속도장이 격자를 기반으로 하는 속도장인 경우, 최종 속도장은 각 격자의 기점마다 입자의 속도 정보, 즉 입자의 이동 방향 및 크기 정보를 가질 수 있다. 격자 기반의 최종 속도장에 따라 픽셀값이 결정되면, 일부 격자점에 대하여 픽셀값이 결정되지 않을 수 있어 빈 공간(hole)이 발생될 수 있다. 즉, 일부 격자점이 입자들의 움직임에 따른 각 입자의 이동된 위치로 결정되지 않는 경우, 빈 공간이 발생될 수 있다. 본 발명의 일 실시 예에 의한 단말 장치(100)는 세미-라그랑지안(semi-lagrangian) 기법에 따라 픽셀값을 결정함으로써 빈 공간이 생기지 않도록 픽셀값을 결정할 수 있다. 일 예로 단말 장치(100)는 빈 공간이 발생된 격자점에 대하여 세미-라그랑지안 기법에 따라 픽셀값을 결정할 수 있다.
세미-라그랑지안 방식은 단위 부피의 유체가 현재 가진 속도로 일정한 시간을 되돌아 갔을 때의 예전 위치에서의 물리량이 현재 시점의 유체가 가지는 물리량과 같음을 이용하여 픽셀값을 결정하는 방식이다. 세미-라그랑지안 방식에 의하면, 현재 픽셀 값은 최종 속도장에 따라 현재 픽셀이 되돌아간 위치에서의 픽셀값으로 결정될 수 있다. 단말 장치(100)는 세미-라그랑지안 방식에 따라 최종 속도장을 이용하여 각 스텐실 마스크 영역에 속하는 픽셀값을 결정할 수 있다.
단계 450에서, 단말 장치(100)는 단계 440에서 결정된 픽셀값을 포함하는 현재 프레임을 표시할 수 있다.
이하, 도 5 및 도 6을 참조하여, 상술된 스텐실 마스크 영역 및 세미 라그랑지안 방식에 관해 더 자세히 설명하기로 한다.
도 5는 본 발명의 일 실시 예에 의한 스텐실 마스크 영역의 일 예를 나타낸 예시도이다.
도 5를 참조하면, 스텐실 마스크 영역(510,520) 및 각 스텐실 마스크 영역의 제1 속도장이 도시되어 있다.
스텐실 마스크 영역(510,520)은 도 5에 도시된 바와 같이 사용자 입력이 수신된 지점에서 수채 물감이 원형으로 퍼져 나가는 효과를 구현하기 위하여 시간 경과에 따라 그 크기가 점점 확대될 수 있다. 각 스텐실 마스크 영역의 제1 속도장은 스텐실 마스크 영역의 중심 지점을 기준으로 하는 방사형의 벡터들을 포함할 수 있다. 제1 속도장 및 스텐실 마스크 영역은 사용자 입력에 따라 생성될 수 있는 것으로, 제1 속도장은 사용자 입력에 따라 입자가 방사형으로 흐르는 것처럼 보이기 위함이다.
단말 장치(100)는 사용자 입력이 수신된 지점 주변에만 수채 물감이 이미 표시되어 있던 이미지를 덮으며 원형으로 퍼져 나가는 모습을 구현하기 위해 물감이 퍼져 나가는 영역을 '스텐실 마스크 영역'으로 설정할 수 있다. 설정된 '스텐실 마스크 영역'은 시간 경과에 따라 그 크기가 변할 수 있고, 단말 장치(100)는 스텐실 마스크 영역에 대하여만 시각 효과를 적용시키기 위한 이미지 처리를 수행할 수 있다.
스텐실 마스크 영역(510,520)의 경계는 자연스러운 수채화 효과를 구현하기 위해 도 5에 도시된 바와 같이 불규칙적인 모양을 가질 수 있고, 테두리는 원 안의 영역보다 어둡게 표시됨으로써 시각 효과가 적용된 스텐실 마스크 영역이 쉽게 구분될 수 있도록 구현될 수 있다.
단말 장치(100)는 미리 저장된 도 5에 도시된 스텐실 마스크 영역과 같은 모양의 이미지 파일을 사용자 입력이 들어온 시점에 로딩하고, 로딩된 이미지 파일을 이용하여 화면상 사용자 입력이 수신된 지점을 중심으로 스텐실 마스크 영역을 설정할 수 있다.
도 6은 본 발명의 일 실시 예에 의한 세미-라그랑지안 방식에 따라 픽셀값을 결정하는 일 예를 나타낸 예시도이다.
도 6을 참조하면, 이전 위치를 추적하는 단계(610)에서, 단말 장치(100)는 현재 픽셀(611)의 픽셀값을 결정하기 위하여 현재 픽셀(611)에 대한 최종 속도장에 따른 속도값(613)을 이용하여 이전 시점에서의 위치(612)를 구할 수 있다. 즉, 단말 장치(100)는 속도값(613)에 따라 일정 시간 동안 되돌아갔을 때의 현재 픽셀의 이전 시점에서의 위치(612)를 구할 수 있다.
이전 위치의 색을 보간하는 단계(620)에서, 단말 장치(100)는 이전 위치의 픽셀값(621)을 알 수 없는 경우, 주변의 픽셀값들(622, 623, 624, 625)을 이용하여 이전 위치의 픽셀값(621)을 구할 수 있다. 현재 픽셀의 이전 위치의 픽셀값(621)은 이전 시점의 프레임에 포함된 현재 픽셀의 이전 시점에서의 픽셀값일 수 있다. 단말 장치(100)는 주변의 픽셀들과 이전 위치의 픽셀간 거리에 따라 각 주변 픽셀의 픽셀값에 가중치가 적용된 값을 이용하여 이전 위치의 픽셀값(621)을 구할 수 있다.
현재 픽셀 값을 결정하는 단계(630)에서, 단말 장치(100)는 현재 픽셀값(631)을 이전 단계(620)에서 구한 이전 위치의 픽셀값(621)으로 결정할 수 있다.
현재 픽셀의 픽셀값은 연속 방정식인 이하 수학식 1을 이용하여 획득될 수 있다. 수학식 1은 질량 보존의 법칙에 따라 현재 픽셀의 픽셀값이 이전 위치에서의 픽셀값과 동일함을 나타내는 유체 동역학에서의 연속 방정식에 해당된다.
[수학식 1]
Figure 112014045414614-pat00001
도 7은 본 발명의 일 실시 예에 있어서 입력 신호에 따른 이미지 처리 방법을 나타낸 순서도이다.
도 7을 참조하면, 단계 705에서, 단말 장치(100)가 입력을 수신하는 경우, 단계 710에서 입력이 수신된 지점을 중심점으로 하는 현재 프레임에 대한 스텐실 마스크 영역을 생성할 수 있다. 즉, 단말 장치(100)는 사용자 입력이 수신됨에 따라 스텐실 마스크 영역을 생성하여 수채화 효과를 적용할 영역을 결정할 수 있다.
사용자 입력이 화면상에 여러 번 수신된 경우, 각 입력 신호마다 스텐실 마스크가 다수 생성될 수 있다. 단말 장치(100)는 이미지 크기만한 메모리(frame buffer object)를 한번만 할당하고, 할당된 메모리 상에 적어도 하나의 스텐실 마스크 영역이 서로 겹치지 않도록 기록할 수 있다.
단계 705에서, 현재 프레임에 대한 입력이 수신되지 않는 경우, 단계 715에서, 단말 장치(100)는 스텐실 마스크가 존재하는지 여부를 판단할 수 있다. 현재 프레임 처리 시 존재하는 스텐실 마스크는 이전 프레임에서 입력 신호에 따라 생성되어 아직 소멸되지 않은 것일 수 있다.
단계 720에서, 단말 장치(100)는 현재 존재하는 스텐실 마스크 각각의 표시 시간이 기준 시간보다 짧은지 여부를 판단하여, 표시 시간이 기준 시간과 같거나 더 긴 경우, 수명이 다한 것으로 보고, 단계 730에서 스텐실 마스크를 삭제할 수 있다. 표시 시간은 스텐실 마스크가 단말 장치(100)에서 표시된 시간, 즉, 스텐실 마스크 영역에 포함된 픽셀들이 수채화 효과가 적용되어 표시된 시간을 의미할 수 있다. 상술된 표시 시간 또는 기준 시간은 프레임 개수나 시간 단위로 결정될 수 있다.
단계 715에서의 판단 결과, 스텐실 마스크가 존재하지 않거나 단계 730에서 모두 삭제되어 현재 프레임에 대한 스텐실 마스크가 존재하지 않는 경우, 단말 장치(100)는 단계 735로 분기할 수 있다. 단계 735에서, 단말 장치(100)는 수채화 효과를 적용시킬 수 있는 스텐실 마스크 영역이 존재하지 않으므로, 수채화 효과가 적용되지 않은 현재 프레임을 그대로 표시할 수 있다.
한편, 단계 720에서, 단말 장치(100)는 스텐실 마스크의 표시 시간이 기준 시간보다 짧은 경우, 단계 725에서, 스텐실 마스크의 영역 크기를 결정할 수 있다. 스텐실 마스크의 영역 크기는 표시 시간에 따라 결정될 수 있고, 일 예로, 스텐실 마스크의 영역 크기는 표시 시간이 길어짐에 따라 점점 커질 수 있다.
스텐실 마스크의 영역은 매 프레임마다 영역의 크기가 바뀌므로 매 프레임마다 단말 장치(100)는 메모리인 프레임 버퍼 오브젝트(frame buffer object)에 저장되어 있는 스텐실 마스크 이미지를 지우고, 단계 725에서 결정된 크기로 스케일링(scaling)된 스텐실 마스크 영역 이미지를 메모리에 기록할 수 있다.
단계 740에서, 단말 장치(100)는 현재 프레임에 대한 적어도 하나의 스텐실 마스크 영역을 획득할 수 있다. 단말 장치(100)는 메모리로부터 현재 프레임에 대한 스텐실 마스크 영역 이미지를 로딩함으로써 적어도 하나의 스텐실 마스크 영역을 획득할 수 있다. 단계 740에서 획득될 수 있는 스텐실 마스크 영역은 단계 710에서 생성된 스텐실 마스크 영역 및 단계 725에서 크기가 결정된 스텐실 마스크 영역 중 적어도 하나를 포함할 수 있다. 단계 740에서 획득된 적어도 하나의 스텐실 마스크 영역은 단계 740 이하의 단계에서 각각 독립적으로 처리되어 현재 프레임에서 표시될 수 있다.
단계 745에서, 단말 장치(100)는 각 스텐실 마스크 영역에서 스텐실 마스크 영역의 중심 지점에서 방사형으로 퍼지는 벡터 값을 가지는 제1 속도장을 획득할 수 있다.
단계 750에서, 단말 장치(100)는 임의의 이미지로부터 제2 속도장을 획득할 수 있다. 제2 속도장은 와류 및 난류를 표현하기 위한 벡터 값을 가질 수 있으며, 임의의 이미지는 펄린(perlin) 노이즈, 가우시안(Gaussian) 노이즈 등과 같은 노이즈 이미지 중 하나일 수 있다. 제2 속도장은 단계 740에서 획득된 적어도 하나의 스텐실 마스크 영역에 대하여 공통적으로 적용될 수 있다. 제2 속도장을 획득하는 방법과 관련하여 이하 도 8에서 더 자세히 설명하기로 한다.
단계 755에서, 단말 장치(100)는 단계 745 및 750에서 획득한 제1 속도장 및 제2 속도장에 기초하여 각 스텐실 마스크 영역에 대한 최종 속도장을 획득할 수 있다. 최종 속도장은 일 예로, 제1 속도장 및 제2 속도장을 단순히 합하는 연산으로부터 획득될 수 있다. 최종 속도장을 합하는 방법은 이에 한하지 않고 실시 예에 달라질 수 있다.
최종 속도장에 포함된 각 스텐실 마스크 영역의 격자점들의 속도 벡터들은 다음 프레임에서 픽셀값을 구하기 위해 사용될 수 있는데, 단말 장치(100)는 속도 벡터 값들을 이미지의 각 픽셀에 저장해두고, 다음 프레임 처리를 위한 하드웨어 요소로 전달할 수 있다. 구체적으로, 이미지의 각 픽셀에 대한 정보를 전달하기 위한 채널은 R, G, B, A의 총 4개로 구성될 수 있는데, R은 픽셀의 x 방향 속도, G는 픽셀의 y방향 속도, B는 픽셀에 시각 효과가 적용된 누적 시간 정보, A: 픽셀에 시각 효과가 적용되는지 여부를 나타내는 알파값을 저장할 수 있다.
단계 760에서, 단말 장치(100)는 단계 755에서 획득된 최종 속도장에 기초하여 각 스텐실 마스크 영역에 포함된 픽셀값들을 결정할 수 있다. 단말 장치(100)는 상술된 세미-라그랑지안 방식에 따라 최종 속도장으로부터 픽셀값들을 결정할 수 있다. 일 예로, 알파값이 0보다 큰 것은 스텐실 마스크 영역에 포함되어 시각 효과를 위한 처리가 수행될 수 있는 픽셀임을 의미할 수 있으므로, 단말 장치(100)는 A 채널에 저장된 알파값이 0보다 큰 픽셀에 대하여만 최종 속도장에 따라 픽셀값을 결정할 수 있다.
단말 장치(100)는 사용자 입력이 수신된 이후에도 유체가 퍼지는 효과가 몇 초 동안은 지속되도록 구현하기 위해서 최종 속도장에 따라 이류시켜 결정된 이전 프레임의 픽셀값을 이후 프레임에 대한 픽셀값을 구할 때 이용할 수 있다. 이전 프레임의 픽셀값들이 이후 단계에서 사용되기 위해 이전에 결정된 픽셀값이 저장된 메모리와 현재 시점에서 결정된 픽셀값이 저장될 메모리간의 데이터가 동기화되어 전달되도록 핑퐁(ping-pong) 기법이 이용될 수 있다. 핑퐁 기법에 의하면, 이전에 결정된 픽셀값이 저장된 메모리와 현재 시점에서 결정된 픽셀값이 저장될 메모리가 매 프레임마다 바뀌어(swapping) 저장될 수 있다. 핑퐁 기법에 따르면, 단말 장치(100)는 이전 프레임의 픽셀값을 이용하여 이후 프레임에 대한 픽셀값을 결정하고, 결정된 값을 이전 프레임의 픽셀값이 저장된 메모리와 다른 메모리에 저장할 수 있다. 따라서, 동일한 메모리에 이전에 결정된 픽셀값과 현재 결정된 픽셀값이 저장됨으로써 발생될 수 있는 오류를 방지할 수 있다.
단계 765에서, 단말 장치(100)는 단계 760에서 결정된 픽셀값들을 포함하는 현재 프레임을 디스플레이부(120)에 표시할 수 있다. 단말 장치(100)는 스텐실 마스크 영역 및 나머지 영역을 합성하여 표시할 때, 시각적으로 자연스럽게 보이도록 하기 위해 단계 760에서 결정된 픽셀값들의 채도 및 명도 중 적어도 하나의 값을 변경시킬 수 있다. 더하여, 스텐실 마스크 영역의 테두리 부분을 희미하게(blur) 처리할 수 있다. 일 예로, 단말 장치(100)는 스텐실 마스크 영역 내 픽셀값들을 채도 및 명도 값을 나머지 영역보다 높게 결정하여 시각적으로 자연스럽게 나머지 영역과 연결될 수 있도록 이미지를 표시할 수 있다.
도 8은 본 발명의 일 실시 예에 의한 제2 속도장을 획득하는 일 예를 나타낸 예시도이다.
도 8을 참조하면, 노이즈 이미지(810)로부터 제2 속도장(820)이 획득될 수 있다. 단말 장치(100)는 노이즈 이미지(810)의 한 채널 또는 각 채널의 평균값으로 노이즈 이미지(810)를 스칼라 장(scalar field)처럼 이용할 수 있다. 단말 장치(100)가 스칼라 장에 컬(curl) 연산을 수행하면 폐곡선 내의 회전량의 크기와 방향을 나타내는 벡터 장(vector field)을 획득할 수 있다. 노이즈 이미지(810)로부터 획득된 벡터 장은 노이즈 이미지(810)의 형태와 비슷하게 군데군데 소용돌이를 포함하는 도 8에 도시된 제2 속도장(820)과 같이 나타낼 수 있다. 더하여, 제2 속도장(820)은 유한 차분법(FDM; finite differential method)에 따라 격자 속도장에서의 벡터값들을 포함할 수 있다.
한편, 도 8에도 도시된 수학식 2는 컬 연산을 나타낸 것으로 컬 연산을 의미하는 ∇×ψ에 다이버젼스(divergence)를 적용하면 회전의 발산(divergence of a curl)이 되어 0이 되므로 수학식 2와 같이 나타낼 수 있다.
[수학식 2]
Figure 112014045414614-pat00002
컬 연산에 따라 획득된 제2 속도장(820)은 유체의 특성인 비압축성을 만족할 수 있다. 비압축성을 수식으로 표현하면, ∇·(벡터)=0 이고, 수학식 2에서, ∇×ψ는 컬 연산에 따라 획득된 벡터 값이므로 컬 연산은 비압축성을 나타내는 수식에 해당될 수 있어 컬 연산에 따라 획득된 제2 속도장(820)은 비압축성을 만족할 수 있다.
따라서, 임의의 이미지에 컬 연산이 수행됨으로써 획득된 벡터장은 유체의 특성인 비압축성을 만족할 수 있으므로, 유체의 움직임을 표현하기 위한 속도장으로 사용될 수 있다.
도 9는 본 발명의 일 실시 예에 의한 이미지 처리 방법을 나타낸 순서도이다. 도 9에 도시된 순서도는 도 4 및 도 7과는 달리 매 프레임마다 반복되는 단계와 매 프레임마다 반복되지 않는 단계를 구분하여 나타낸 순서도이다.
도 9를 참조하면, 단계 910에서 단말 장치(100)는 처리하고자 하는 이미지를 획득할 수 있다. 단계 910에서 획득된 이미지는 입력 신호에 따라 수채화 효과가 적용될 수 있도록 처리되어 표시될 수 있다.
단계 920에서, 단말 장치(100)는 임의의 이미지로부터 제2 속도장을 획득할 수 있다. 제2 속도장은 임의의 이미지에 컬 연산을 수행함으로써 획득된 벡터장일 수 있다. 제2 속도장은 임의의 이미지로부터 획득될 수 있어, 시간 경과에 따라 변하지 않으므로 이미지 처리가 시작될 때 획득된 후, 매 프레임마다 이미지 처리가 수행될 때 사용될 수 있다.
단계 910 내지 920은 매 프레임마다 반복되지 않고, 단계 930 이하를 수행하기 전에 수행된 후, 단말 장치(100)에 걸리는 부하를 최소화하기 위해 다시 수행되지 않을 수 있다. 다만 이에 한하지 않고, 단계 910 내지 920은 사용자 입력이나 설정에 따라 반복 수행되거나 이미지 처리 과정 중에 수행될 수도 있다.
단계 930이하(970)에서는, 단말 장치(100)는 단계 910에서 획득된 대상 이미지에 대해 현재 시점에서 표시될 수 있는 현재 프레임에 대한 이미지 처리 과정을 포함할 수 있다. 단계 930 이하의 과정들(970)은 매 프레임마다 반복 수행될 수 있다.
단계 930에서, 단말 장치(100)는 현재 프레임에 대한 적어도 하나의 스텐실 마스크 영역을 획득하고, 각 스텐실 마스크 영역에서 스텐실 마스크 영역의 중심 지점에서 방사형으로 퍼지는 벡터값을 가지는 제1 속도장을 획득할 수 있다.
단계 940에서, 단말 장치(100)는 단계 920에서 획득한 제1 속도장 및 단계 930에서 획득한 제2 속도장에 기초하여 각 스텐실 마스크 영역에 대한 최종 속도장을 결정할 수 있다.
단계 950에서, 단말 장치(100)는 단계 940에서 결정된 최종 속도장에 기초하여 각 스텐실 마스크 영역에 포함된 픽셀값을 결정할 수 있다. 단말 장치(100)는 상술한 바와 같이 세미-라그랑지안 방식에 따라 최종 속도장을 이용하여 픽셀값들을 결정할 수 있다.
단계 960에서, 단말 장치(100)는 단계 950에서 결정된 픽셀값에 따라 현재 프레임을 디스플레이부(120)에 표시할 수 있다.
도 10은 본 발명의 일 실시 예에 따른 이미지 처리 방법에 따라 표시될 수 있는 이미지의 일 예를 나타낸 예시도이다.
이미지(1010) 내지 이미지(1040)를 참조하면, 사용자 입력 방향, 즉 우측 하단 방향으로 시간 경과에 따라 수채화 효과가 적용된 이미지 영역이 표시될 수 있다.
본 발명의 일 실시 예에 의하면, 수채화 효과가 적용된 이미지를 표시하기 위하여 미리 연산한 제1 속도장을 사용하고, 수채화 효과를 적용하고자 하는 영역에 대해서만 연산함으로써 메모리 및 연산량을 절감할 수 있다.
본 발명의 일 실시 예에 의하면, 세미-라그랑지안 방식을 사용하여 이미지의 픽셀값들에 대해 이류 연산을 수행함으로써 빈 곳(hole)이 없는 이미지를 표시할 수 있다.
본 발명의 일 실시 예에 의한 방법은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터(정보 처리 기능을 갖는 장치를 모두 포함한다)가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 장치의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장 장치 등이 있다.
비록 상기 설명이 다양한 실시예들에 적용되는 본 발명의 신규한 특징들에 초점을 맞추어 설명되었지만, 본 기술 분야에 숙달된 기술을 가진 사람은 본 발명의 범위를 벗어나지 않으면서도 상기 설명된 장치 및 방법의 형태 및 세부 사항에서 다양한 삭제, 대체, 및 변경이 가능함을 이해할 것이다. 따라서, 본 발명의 범위는 상기 설명에서보다는 첨부된 특허청구범위에 의해 정의된다. 특허청구범위의 균등 범위 안의 모든 변형은 본 발명의 범위에 포섭된다.

Claims (16)

  1. 현재 프레임에 대한 적어도 하나의 스텐실 마스크 영역을 획득하는 단계;
    상기 스텐실 마스크 영역에서 상기 스텐실 마스크 영역의 중심 지점에서 방사형으로 퍼지는 벡터값을 가지는 제1 속도장을 획득하는 단계;
    상기 제1 속도장에 기초하여 상기 스텐실 마스크 영역에 대한 최종 속도장을 획득하는 단계;
    상기 획득된 최종 속도장에 기초하여 상기 스텐실 마스크 영역에 포함된 각 픽셀값을 결정하는 단계;
    상기 결정된 픽셀값에 따라 상기 현재 프레임을 표시하는 단계를 포함하고,
    상기 스텐실 마스크 영역을 결정하는 단계는
    상기 중심 지점에서 입력이 수신된 시점과 상기 현재 프레임이 표시되는 시점 간의 차이에 따라 상기 스텐실 마스크 영역의 크기를 결정하는 단계를 포함하는 것을 특징으로 하는 이미지 처리 방법.
  2. 제1항에 있어서, 상기 최종 속도장을 획득하는 단계는
    소정 이미지로부터 제2 속도장을 획득하는 단계;
    상기 제1 속도장 및 제2 속도장에 기초하여 상기 스텐실 마스크 영역에 대한 최종 속도장을 획득하는 단계를 포함하는 것을 특징으로 하는 이미지 처리 방법.
  3. 제2항에 있어서, 상기 소정 이미지는
    임의의 노이즈 이미지이고,
    상기 제1 속도장을 획득하는 단계는
    상기 노이즈 이미지에 대해 컬(curl) 연산을 수행함으로써 상기 제1 속도장을 획득하는 단계를 포함하는 것을 특징으로 하는 이미지 처리 방법.
  4. 삭제
  5. 제1항에 있어서, 상기 각 픽셀값을 결정하는 단계는
    상기 각 픽셀값과 대응되는 속도 벡터를 상기 최종 속도장으로부터 획득하는 단계;
    상기 획득된 속도 벡터를 이용하여 상기 각 픽셀과 대응되는 이전 프레임에서의 위치의 픽셀을 결정하는 단계;
    상기 결정된 이전 프레임에서의 위치의 픽셀값에 기초하여 상기 각 픽셀값을 결정하는 단계를 포함하는 것을 특징으로 하는 이미지 처리 방법.
  6. 제1항에 있어서, 상기 적어도 하나의 스텐실 마스크 영역을 획득하는 단계는
    이전 프레임에 대한 스텐실 마스크 영역이 존재하는 경우, 이전 프레임에 대한 스텐실 마스크 영역의 표시 시간을 획득하는 단계;
    상기 표시 시간이 기준 시간보다 작은 경우, 이전 프레임에 대한 스텐실 마스크 영역을 현재 프레임에 대한 적어도 하나의 스텐실 마스크 영역으로 획득하는 단계를 포함하는 것을 특징으로 하는 이미지 처리 방법.
  7. 제6항에 있어서, 상기 적어도 하나의 스텐실 마스크 영역을 획득하는 단계는
    상기 표시 시간이 기준 시간보다 같거나 큰 경우, 상기 이전 프레임에 대한 스텐실 마스크 영역에 관한 정보를 메모리에서 삭제하는 단계를 포함하는 것을 특징으로 하는 이미지 처리 방법.
  8. 제1항에 있어서, 상기 현재 이미지를 표시하는 단계는
    상기 결정된 픽셀값의 채도 및 명도 중 적어도 하나를 소정 크기 이상 증가시키는 단계;
    상기 채도 및 명도 중 적어도 하나가 증가된 픽셀값에 따라 상기 현재 프레임을 표시하는 단계를 포함하는 것을 특징으로 하는 이미지 처리 방법.
  9. 현재 프레임에 대한 적어도 하나의 스텐실 마스크 영역을 획득하고, 상기 스텐실 마스크 영역에서 상기 스텐실 마스크 영역의 중심 지점에서 방사형으로 퍼지는 벡터값을 가지는 제1 속도장을 획득하고, 상기 제1 속도장에 기초하여 상기 스텐실 마스크 영역에 대한 최종 속도장을 획득하고, 상기 획득된 최종 속도장에 기초하여 상기 스텐실 마스크 영역에 포함된 각 픽셀값을 결정하는 제어부;
    상기 결정된 픽셀값에 따라 상기 현재 프레임을 표시하는 디스플레이부를 포함하고,
    상기 제어부는, 상기 중심 지점에서 입력이 수신된 시점과 상기 현재 프레임이 표시되는 시점 간의 차이에 따라 상기 스텐실 마스크 영역의 크기를 결정하는 것을 특징으로 하는 단말 장치.
  10. 제9항에 있어서, 상기 제어부는
    소정 이미지로부터 제2 속도장을 획득하고, 상기 제1 속도장 및 제2 속도장에 기초하여 상기 스텐실 마스크 영역에 대한 최종 속도장을 획득하는 것을 특징으로 하는 단말 장치.
  11. 제10항에 있어서, 상기 소정 이미지는 임의의 노이즈 이미지이고,
    상기 제어부는 상기 노이즈 이미지에 대해 컬(curl) 연산을 수행함으로써 상기 제1 속도장을 획득하는 것을 특징으로 하는 단말 장치.
  12. 삭제
  13. 제9항에 있어서, 상기 제어부는
    상기 각 픽셀값과 대응되는 속도 벡터를 상기 최종 속도장으로부터 획득하고, 상기 획득된 속도 벡터를 이용하여 상기 각 픽셀과 대응되는 이전 프레임에서의 위치의 픽셀을 결정하고, 상기 결정된 이전 프레임에서의 위치의 픽셀값에 기초하여 상기 각 픽셀값을 결정하는 것을 특징으로 하는 단말 장치.
  14. 제9항에 있어서, 상기 제어부는
    이전 프레임에 대한 스텐실 마스크 영역이 존재하는 경우, 이전 프레임에 대한 스텐실 마스크 영역의 표시 시간을 획득하고, 상기 표시 시간이 기준 시간보다 작은 경우, 이전 프레임에 대한 스텐실 마스크 영역을 현재 프레임에 대한 적어도 하나의 스텐실 마스크 영역으로 획득하는 것을 특징으로 하는 단말 장치.
  15. 제14항에 있어서, 상기 제어부는
    상기 표시 시간이 기준 시간보다 같거나 큰 경우, 상기 이전 프레임에 대한 스텐실 마스크 영역에 관한 정보를 메모리에서 삭제하는 것을 특징으로 하는 단말 장치.
  16. 제9항에 있어서, 상기 디스플레이부는
    상기 결정된 픽셀값의 채도 및 명도 중 적어도 하나를 소정 크기 이상 증가시키고, 상기 채도 및 명도 중 적어도 하나가 증가된 픽셀값에 따라 상기 현재 프레임을 표시하는 것을 특징으로 하는 단말 장치.
KR1020140057950A 2013-09-04 2014-05-14 이미지 처리 방법 및 장치 KR101579112B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/477,314 US9384574B2 (en) 2013-09-04 2014-09-04 Image processing method and apparatus therefor

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201361873531P 2013-09-04 2013-09-04
US201361873558P 2013-09-04 2013-09-04
US61/873,531 2013-09-04
US61/873,558 2013-09-04

Publications (2)

Publication Number Publication Date
KR20150027679A KR20150027679A (ko) 2015-03-12
KR101579112B1 true KR101579112B1 (ko) 2016-01-04

Family

ID=53022954

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140057950A KR101579112B1 (ko) 2013-09-04 2014-05-14 이미지 처리 방법 및 장치

Country Status (1)

Country Link
KR (1) KR101579112B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004334550A (ja) 2003-05-08 2004-11-25 Sgi Japan Ltd 立体画像処理方法
JP2004334694A (ja) 2003-05-09 2004-11-25 Nippon Telegr & Teleph Corp <Ntt> 映像生成方法、装置、プログラム及び該プログラムを記録した記録媒体
JP2007293526A (ja) 2006-04-24 2007-11-08 Nippon Telegr & Teleph Corp <Ntt> 画像生成方法、画像生成装置及び画像生成プログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101022491B1 (ko) * 2009-06-24 2011-03-16 (주)에프엑스기어 유체 유동 렌더링 시스템 및 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004334550A (ja) 2003-05-08 2004-11-25 Sgi Japan Ltd 立体画像処理方法
JP2004334694A (ja) 2003-05-09 2004-11-25 Nippon Telegr & Teleph Corp <Ntt> 映像生成方法、装置、プログラム及び該プログラムを記録した記録媒体
JP2007293526A (ja) 2006-04-24 2007-11-08 Nippon Telegr & Teleph Corp <Ntt> 画像生成方法、画像生成装置及び画像生成プログラム

Also Published As

Publication number Publication date
KR20150027679A (ko) 2015-03-12

Similar Documents

Publication Publication Date Title
US10429905B2 (en) Electronic apparatus having a hole area within screen and control method thereof
CN106708181B (zh) 电子装置及配置该电子装置的显示器的方法
KR102318610B1 (ko) 모바일 디바이스 및 모바일 디바이스의 디스플레이 방법
CN110476189B (zh) 用于在电子装置中提供增强现实功能的方法和设备
KR102003255B1 (ko) 다중 입력 처리 방법 및 장치
EP2916208B1 (en) Portable terminal and method of enlarging and displaying contents
US10671258B2 (en) Electronic device having hole area and method of controlling hole area thereof
CN107037966B (zh) 感测输入的压力的电子设备和用于操作电子设备的方法
US10481790B2 (en) Method and apparatus for inputting information by using on-screen keyboard
US10592099B2 (en) Device and method of controlling the device
KR102249886B1 (ko) 웹 페이지 전환 방법 및 이를 이용하는 휴대 단말기, 이 방법을 실행하기 위한 프로그램이 기록되어 있는 비휘발성 기록매체
KR20160049455A (ko) 스크롤바를 이용한 이미지 디스플레이 방법 및 이를 위한 장치
KR20160026670A (ko) 이미지를 디스플레이하는 디바이스 및 방법
US20150220205A1 (en) User input method and apparatus in electronic device
CN109416615A (zh) 处理触摸事件的方法和适用于该方法的电子装置
KR20160020892A (ko) 문자 입력 방법 및 장치
KR20150128406A (ko) 음성 인식 정보를 표시하는 방법 및 장치
KR102616793B1 (ko) 전자 장치 및 전자 장치의 화면 제공 방법
KR101579112B1 (ko) 이미지 처리 방법 및 장치
KR102360177B1 (ko) 사용자 입력을 수신함에 따라 애플리케이션의 실행 결과를 디스플레이하는 방법 및 디바이스
US9384574B2 (en) Image processing method and apparatus therefor
KR101985888B1 (ko) 전자 게시판 제공 방법 및 장치
US9910832B2 (en) Selecting user interface elements to display linked documents with a linking document
US11327538B2 (en) Electronic apparatus having a hole area within screen and control method thereof
KR20170009688A (ko) 전자 장치 및 이의 제어 방법

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

Payment date: 20181129

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20191128

Year of fee payment: 5