KR102161052B1 - 영상에서 객체를 분리하는 방법 및 장치. - Google Patents

영상에서 객체를 분리하는 방법 및 장치. Download PDF

Info

Publication number
KR102161052B1
KR102161052B1 KR1020130101999A KR20130101999A KR102161052B1 KR 102161052 B1 KR102161052 B1 KR 102161052B1 KR 1020130101999 A KR1020130101999 A KR 1020130101999A KR 20130101999 A KR20130101999 A KR 20130101999A KR 102161052 B1 KR102161052 B1 KR 102161052B1
Authority
KR
South Korea
Prior art keywords
image
information
pixels
model
area
Prior art date
Application number
KR1020130101999A
Other languages
English (en)
Other versions
KR20150024719A (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 KR1020130101999A priority Critical patent/KR102161052B1/ko
Priority to US14/469,406 priority patent/US9478040B2/en
Priority to EP14182426.8A priority patent/EP2846309B1/en
Publication of KR20150024719A publication Critical patent/KR20150024719A/ko
Priority to US15/269,388 priority patent/US10235761B2/en
Application granted granted Critical
Publication of KR102161052B1 publication Critical patent/KR102161052B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/162Segmentation; Edge detection involving graph-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • 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/20072Graph-based image processing
    • 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/20092Interactive image processing based on input by user
    • 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/20092Interactive image processing based on input by user
    • G06T2207/20101Interactive definition of point of interest, landmark or seed
    • 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/20112Image segmentation details

Abstract

영상에서 객체를 분리하는 방법은 객체를 포함하는 제 1 영상을 획득하는 단계; 상기 제 1 영상 내의 소정의 위치 정보를 포함하는 입력 신호를 수신하는 단계; 상기 위치 정보에 기초하여 상기 제 1 영상에 포함된 픽셀들 중 적어도 하나 이상을 선택하는 단계; 상기 선택된 픽셀들을 이용하여, 상기 제 1 영상이 적어도 하나 이상의 영역들로 구분된 제 2 영상을 생성하는 단계; 및 상기 제 1 영상 및 상기 제 2 영상을 이용하여 상기 제 1 영상에서 상기 객체를 분리(segmentation)하는 단계;를 포함한다.

Description

영상에서 객체를 분리하는 방법 및 장치. {Method and appratus for segmenting an object in an image}
영상에서 객체를 분리하는 방법 및 장치에 관한다.
영상 분할(segmentation)은 입력 영상을 동질의 속성을 가진 영역들로 나누는 것으로, 분할된 영역들은 서로 겹치지 않아야 한다. 또한, 분할된 영역들의 합집합은 입력 영상과 동일하여야 한다. 이러한 영상 분할을 수행하는 기법은 컴퓨터 비전이나 영상 처리 분야에서 객체 추적 및 인식(object tracking and recognition), 영상 검색(image retrieval), 얼굴 추출 및 인식(face detection and recognition) 등 다양한 응용 분야를 위한 전처리 단계로써 매우 중요하다.
한편, 자동 객체 분할 기술은 모바일 폰, 태블릿 PC, 스마트 TV와 같은 단말기에 적용될 기술로서 최근 주목받고 있다. 기존의 객체 분할 기술은 질감이나 색상 등의 특징이 유사한 영역을 검출하여 분할하였으나, 최근의 객체 분할 기술은 사전에 설정한 의미 있는 영역인 관심 객체를 분할할 수 있다. 그러나 색상, 모양, 움직임 및 질감 등과 같은 관심 객체의 다양한 특징 때문에 이를 정확히 분할하는 데는 어려움이 따른다.
영상에서 객체를 분리하는 방법 및 장치를 제공한다. 또한, 상기 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는 데 있다. 해결하려는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
본 발명의 일 측면에 따른 영상에서 객체를 분리하는 방법은 객체를 포함하는 제 1 영상을 획득하는 단계; 상기 제 1 영상 내의 소정의 위치 정보를 포함하는 입력 신호를 수신하는 단계; 상기 위치 정보에 기초하여 상기 제 1 영상에 포함된 픽셀들 중 적어도 하나 이상을 선택하는 단계; 상기 선택된 픽셀들을 이용하여, 상기 제 1 영상이 적어도 하나 이상의 영역들로 구분된 제 2 영상을 생성하는 단계; 및 상기 제 1 영상 및 상기 제 2 영상을 이용하여 상기 제 1 영상에서 상기 객체를 분리(segmentation)하는 단계;를 포함한다.
본 발명의 다른 측면에 따른 상기된 객체를 분리하는 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
본 발명의 또 다른 측면에 따른 영상에서 객체를 분리하는 장치는 객체를 포함하는 제 1 영상을 획득하고, 상기 제 1 영상 내의 소정의 위치 정보를 포함하는 입력 신호를 수신하는 인터페이스부; 상기 위치 정보에 기초하여 상기 제 1 영상에 포함된 픽셀들 중 적어도 하나 이상을 선택하고, 상기 선택된 픽셀들을 이용하여 상기 제 1 영상이 적어도 하나 이상의 영역들로 구분된 제 2 영상을 생성하는 영상 생성부; 및 상기 제 1 영상 및 상기 제 2 영상을 이용하여 상기 제 1 영상에서 상기 객체를 분리(segmentation)하는 분리부;를 포함한다.
상술한 바에 따르면, 영상에서 객체를 분리하는 방법은 알고리즘을 반복적으로 적용함으로써 입력 영상에서 정확하게 객체를 나타내는 영상을 분리할 수 있다. 또한, 사용자와의 상호 작용(interaction)을 반영하여 객체를 나타내는 영상을 분리함으로써 사용자의 의도에 대응하여 객체를 나타내는 영상을 분리할 수 있다.
또한, 입력 영상에서 객체를 나타내는 영상을 분리한 후에 배경 영상에 다양한 효과를 적용할 수 있어, 자유로운 영상 편집이 가능하다.
도 1은 본 발명의 일 실시예에 따른 영상 처리 장치의 일 예를 도시한 구성도이다.
도 2a 내지 도 2h는 본 발명의 일 실시예에 따른 영상 생성부가 제 2 영상을 생성하는 일 예를 설명하기 위한 도면이다.
도 3은 본 발명의 일 실시예에 따른 분리부의 일 예를 도시한 구성도이다.
도 4는 본 발명의 일 실시예에 따른 분리부가 동작하는 일 예를 나타내는 흐름도이다.
도 5는 본 발명의 일 실시예에 따른 영상 처리 장치의 다른 예를 도시한 구성도이다.
도 6은 본 발명의 일 실시예에 따른 객체를 분리하는 방법의 일 예를 나타내는 흐름도이다.
도 7은 본 발명의 일 실시예에 따른 분리된 객체에 존재하는 결점의 일 예를 도시한 도면이다.
도 8은 본 발명의 일 실시예에 따른 전처리부가 가중치 λ를 최적화하는 일 예를 설명하기 위한 흐름도이다.
이하에서는 도면을 참조하여 본 발명의 실시예들을 상세히 설명한다. 본 발명의 하기 실시예는 본 발명을 구체화하기 위한 것일 뿐 본 발명의 권리 범위를 제한하거나 한정하지 않는다. 또한, 본 발명의 상세한 설명 및 실시예로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 용이하게 유추할 수 있는 것은 본 발명의 권리범위에 속하는 것으로 해석된다.
도 1은 본 발명의 일 실시예에 따른 영상 처리 장치의 일 예를 도시한 구성도이다.
도 1을 참조하면, 영상 처리 장치(100)는 인터페이스부(110), 영상 생성부(120) 및 분리부(130)를 포함한다. 도 1에 도시된 영상 처리 장치(100)에는 본 실시예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 1에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 본 실시예와 관련된 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다.
또한, 도 1에 도시된 영상 처리 장치(100)의 인터페이스부(110), 영상 생성부(120) 및 분리부(130)들은 각각 독립적인 장치로 존재할 수도 있음을 본 발명과 관련된 기술 분야에서 통상의 지식을 가진 자라면 알 수 있다.
또한, 도 1에 도시된 영상 처리 장치(100)의 인터페이스부(110), 영상 생성부(120) 및 분리부(130)들은 하나 또는 복수 개의 프로세서에 해당할 수 있다. 프로세서는 다수의 논리 게이트들의 어레이로 구현될 수도 있고, 범용적인 마이크로 프로세서와 이 마이크로 프로세서에서 실행될 수 있는 프로그램이 저장된 메모리의 조합으로 구현될 수도 있다. 또한, 다른 형태의 하드웨어로 구현될 수도 있음을 본 실시예가 속하는 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다.
인터페이스부(110)는 객체를 포함하는 제 1 영상을 획득하고, 제 1 영상 내의 소정의 위치 정보를 포함하는 입력 신호를 수신한다.
여기에서, 입력 신호는 사용자가 자신의 신체 또는 전자 펜 등을 이용하여 단말기 화면상의 소정의 위치에 입력하는 제스쳐(gesture)를 의미한다. 예를 들어, 사용자는 제스쳐를 통하여 단말기 화면상에 폐 루프(closed loop)나 직선을 그리거나 또는 단말기 화면의 일정 지점을 터치(touch)할 수도 있다. 그러나, 이에 한정되지 않는다.
또한, 제 1 영상은 객체를 포함하는 전경(foreground) 영상 및 전경 영상을 제외한 나머지 영상을 의미하는 배경(background) 영상으로 구성된다. 이하에서 제 1 영상에 포함된 객체는 하나인 것으로 가정하여 설명하겠으나, 이에 한정되지 않는다. 다시 말해, 제 1 영상에 복수의 객체들이 포함되어 있다면, 후술할 방법을 이용하여 복수의 객체들을 제 1 영상으로부터 순차적으로 또는 동시에 분리할 수 있다. 또한, 제 1 영상은 단말기 화면에 포함된 복수의 픽셀들의 컬러 값(예를 들어, RGB 값)들로 표현된 컬러 영상을 의미할 수 있으나, 이에 한정되지 않는다. 예를 들어, 제 1 영상에는 그레이 스케일 영상(grayscale image) 또는 플레인 배경 영상(plain background image)을 의미할 수 있다.
인터페이스부(110)는 외부 장치로부터 제 1 영상을 획득하는 통신 인터페이스부의 역할 및 사용자의 입력 신호를 수신하는 사용자 인터페이스부의 역할을 모두 수행할 수 있다. 예를 들어, 통신 인터페이스부는 네트워크 망과의 접속을 위한 네트워크 모듈, 이동식 저장 매체와의 데이터 이동 채널 형성을 위한 USB 호스트 모듈 등을 모두 포함할 수 있다. 또한, 사용자 인터페이스부는 디스플레이 패널, 마우스, 키보드, 터치 화면, 모니터, 스피커 등의 입출력 장치 및 이들을 구동하기 위한 소프트웨어 모듈을 모두 포함할 수 있다.
영상 생성부(120)는 위치 정보에 기초하여 제 1 영상에 포함된 픽셀들 중 적어도 하나 이상을 선택하고, 선택된 픽셀들을 이용하여 제 2 영상을 생성한다.
여기에서, 제 2 영상은 제 1 영상이 적어도 하나 이상의 영역들로 구분된 영상을 의미한다. 예를 들어, 영상 생성부(120)는 인터페이스부(110)로부터 수신한 위치 정보에 기초하여 제 1 영상을 서로 다른 영역들로 구분하고, 영역들로 구분된 영상을 제 2 영상으로 생성한다. 여기에서, 영역들은 전경 영역(이하, 제 1 영역이라고 함), 전경 영역이 될 가능성이 있는 영역(이하, 제 2 영역이라고 함), 배경 영역(이하, 제 3 영역이라고 함), 배경 영역이 될 가능성이 있는 영역(이하, 제 4 영역이라고 함) 및 전경 영역인지 배경 영역인지 알 수 없는 영역(이하, 제 5 영역이라고 함)을 포함한다.
이하, 도 2a 내지 도 2h를 참조하여, 영상 생성부(120)가 제 2 영상을 생성하는 구체적인 방법을 설명한다.
도 2a 내지 도 2h는 본 발명의 일 실시예에 따른 영상 생성부가 제 2 영상을 생성하는 일 예를 설명하기 위한 도면이다. 도 2a 내지 도 2h를 참조하면, 좌측의 도면은 제 1 영상의 일 예를 나타내고, 우측의 도면은 제 2 영상의 일 예를 나타낸다.
도 2a는 사용자가 단말기 화면상에 폐 루프(220)를 입력한 경우, 영상 생성부(120)가 제 2 영상을 생성하는 일 예를 도시한 도면이다.
도 2a의 좌측 도면을 참조하면, 사용자는 객체(210)를 포함하는 제 1 영상이 표시된 단말기 화면상에 폐 루프(220)를 입력할 수 있다. 예를 들어, 사용자는 제 1 영상에서 객체(210)를 포함하는 부분에 폐 루프(220)를 입력할 수 있다. 인터페이스부(110)는 제 1 영상 및 사용자의 입력 신호를 수신하고, 사용자의 입력 신호를 영상 생성부(120)로 전송한다.
영상 생성부(120)는 사용자의 입력 신호에 포함된 위치 정보에 기초하여, 제 1 영상에 포함된 픽셀들 중 적어도 하나 이상을 선택한다. 구체적으로, 사용자가 입력한 폐 루프(220)가 단말기 화면에 포함된 픽셀들 중 어느 픽셀들을 지정하는 것인지를 판단하고, 판단된 픽셀들을 선택한다. 여기에서, 선택된 픽셀들은 제 1 영상의 영역을 구분하는 기초로 사용된다.
도 2a의 우측 도면을 참조하면, 영상 생성부(120)는 제 1 영상이 적어도 하나 이상의 영역들로 구분된 제 2 영상을 생성한다. 이하, 영상 생성부(120)가 제 3 영역(231), 제 5 영역(232) 및 제 2 영역(233)으로 구분된 제 2 영상을 생성하는 일 예를 설명한다.
먼저, 영상 생성부(120)는 사용자가 입력한 폐 루프(220)의 바깥 영역을 제 3 영역(231)으로 지정한다.
다음으로, 영상 생성부(120)는 폐 루프(220)의 안쪽으로 일정 범위에 위치하는 픽셀들을 제 5 영역(232)로 지정한다. 구체적으로, 영상 생성부(120)는 폐 루프(220)에 대응하는 픽셀들(즉, 선택된 픽셀들)로부터 10 픽셀의 폭에 해당되는 영역을 제 5 영역(232)로 지정할 수 있다. 그러나, 영상 생성부(120)가 제 5 영역(232)를 지정하는 기준은 반드시 10 픽셀의 폭에 한정되지 않는다.
다음으로, 영상 생성부(120)는 제 1 영상에서 제 3 영역(231) 및 제 5 영역(232)에 해당되지 않는 영역을 제 2 영역(233)으로 지정한다. 다시 말해, 제 1 영상에서 객체(210)는 제 2 영역(233)에 포함될 가능성이 있음을 의미한다.
다시 도 1을 참조하면, 영상 생성부(120)는 생성된 제 2 영상을 분리부(130)로 전송한다.
도 2b는 도 2a를 참조하여 상술한 동작에 이어서 사용자가 다른 스트로크(stroke)를 입력한 경우, 영상 생성부(120)가 제 2 영상을 생성하는 일 예를 도시한 도면이다. 다시 말해, 도 2b는 도 2a를 참조하여 상술한 동작이 수행되었음을 전제로 하여, 그 이후에 인터페이스부(110)가 사용자로부터 입력 신호를 수신한 경우를 의미한다.
도 2b의 좌측 도면을 참조하면, 사용자는 객체(210)를 포함하는 제 1 영상이 표시된 단말기 화면상에 스크로크(stroke)(222)를 입력할 수 있다. 여기에서, 스트로크는 단말기 화면상에서 인접한 복수의 픽셀들을 연속적으로 잇는 입력이라면, 형태에 제한 없이 해당될 수 있다. 다시 말해, 스트로크는 직선 또는 곡선의 형태를 갖는 입력을 의미한다.
사용자는 제 1 영상에서 배경에 해당되는 부분임을 의미하는 스트로크(222)를 입력한다. 여기에서, 배경에 해당되는 부분임을 의미하는 스트로크(222)는 사용자가 단말기 화면상의 소정의 UI(user interface)(미도시)를 선택한 후에, 스트로크(222)를 입력함으로써 구현될 수 있다. 인터페이스부(110)는 제 1 영상 및 사용자의 입력 신호를 수신하고, 사용자의 입력 신호를 영상 생성부(120)로 전송한다.
영상 생성부(120)는 사용자의 입력 신호에 포함된 위치 정보에 기초하여, 제 1 영상에 포함된 픽셀들 중 적어도 하나 이상을 선택한다. 구체적으로, 사용자가 입력한 스트로크(222)가 단말기 화면에 포함된 픽셀들 중 어느 픽셀들을 지정하는 것인지를 판단하고, 판단된 픽셀들을 선택한다. 여기에서, 선택된 픽셀들은 제 1 영상의 영역을 구분하는 기초로 사용된다.
도 2b의 우측 도면을 참조하면, 영상 생성부(120)는 제 1 영상이 적어도 하나 이상의 영역들로 구분된 제 2 영상을 생성한다. 다시 말해, 영상 생성부(120)는 도 2a를 참조하여 상술한 바와 같이 결정된 영역들(즉, 제 3 영역(231), 제 5 영역(232) 및 제 2 영역(233))을 보정(refinement)함으로써 새로운 제 2 영상을 생성한다.
도 2a를 참조하여 상술한 바에 따르면, 폐 루프(221) 안의 영역은 제 1 영상에서 객체(210)가 포함될 가능성이 있는 영역(즉, 제 2 영역(233))을 의미한다. 따라서, 제 2 영역(233)에 포함된 픽셀들 중에서 일부는 배경에 포함될 픽셀에 해당될 수도 있다.
영상 생성부(120)는 사용자가 선택한 소정의 UI(user interface)(미도시)에 따라 스트로크(222)가 배경에 해당되는 부분임을 의미하는 것으로 결정할 수 있다. 따라서, 영상 생성부(120)는 제 2 영역(233)에 포함된 픽셀들 중에서 스트로크(222)에 대응하는 영역을 제 3 영역(234)으로 보정함으로써, 새로운 제 2 영상을 생성할 수 있다.
다시 도 1을 참조하면, 영상 생성부(120)는 생성된 제 2 영상을 분리부(130)로 전송한다.
도 2c는 도 2b와는 달리, 제 1 영상에서 전경에 해당되는 부분임을 의미하는 스트로크(223)가 입력된 경우를 도시한 도면이다. 따라서, 도 2c는 도 2a를 참조하여 상술한 동작이 수행되었음을 전제로 하여, 그 이후에 인터페이스부(110)가 사용자로부터 입력 신호를 수신한 경우를 의미한다.
도 2c의 좌측 도면을 참조하면, 사용자는 제 1 영상에서 전경에 해당되는 부분임을 의미하는 스트로크(223)를 입력한다. 여기에서, 전경에 해당되는 부분임을 의미하는 스트로크(223)는 사용자가 단말기 화면상의 소정의 UI(user interface)(미도시)를 선택한 후에, 스트로크(223)를 입력함으로써 구현될 수 있다.
도 2c의 우측 도면을 참조하면, 영상 생성부(120)는 제 1 영상이 적어도 하나 이상의 영역들로 구분된 제 2 영상을 생성한다. 다시 말해, 영상 생성부(120)는 도 2a를 참조하여 상술한 바와 같이 결정된 영역들(즉, 제 3 영역(231), 제 5 영역(232) 및 제 2 영역(233))을 보정(refinement)함으로써 새로운 제 2 영상을 생성한다.
영상 생성부(120)는 사용자가 선택한 소정의 UI(미도시)에 따라 스트로크(223)가 전경에 해당되는 부분임을 의미하는 것으로 결정할 수 있다. 따라서, 영상 생성부(120)는 제 2 영역(233)에 포함된 픽셀들 중에서 스트로크(223)에 대응하는 영역을 제 1 영역(235)으로 지정함으로써, 새로운 제 2 영상을 생성할 수 있다.
다시 도 1을 참조하면, 영상 생성부(120)는 생성된 제 2 영상을 분리부(130)로 전송한다.
도 2d 및 도 2e는 도 2b 및 도 2c와는 달리, 다른 폐 루프(224 또는 225)가 입력된 경우를 도시한 도면이다. 다시 말해, 도 2d 및 도 2e는 도 2a를 참조하여 상술한 동작이 수행되었음을 전제로 하여, 그 이후에 인터페이스부(110)가 사용자로부터 입력 신호(폐 루프(224 또는 225))를 수신한 경우를 의미한다.
구체적으로, 도 2d의 좌측 도면은 사용자가 제 4 영역(236)을 의미하는 폐 루프(224)를 입력한 경우를 도시한 도면이고, 도 2e의 우측 도면은 사용자가 제 2 영역(237)을 의미하는 폐 루프(225)를 입력한 경우를 도시한 도면이다. 여기에서, 영상 생성부(120)는 사용자가 선택한 소정의 UI(미도시)에 따라 폐 루프(224 또는 225) 내부의 픽셀들이 제 4 영역(236)인지 또는 제 2 영역(237)인지를 결정할 수 있다.
따라서, 영상 생성부(120)는 결정된 영역의 종류(236 또는 237)를 반영하여, 도 2a를 참조하여 상술한 바와 같이 결정된 영역들(즉, 제 3 영역(231), 제 5 영역(232) 및 제 2 영역(233))을 보정(refinement)함으로써 새로운 제 2 영상을 생성할 수 있다.
다시 도 1을 참조하면, 영상 생성부(120)는 생성된 제 2 영상을 분리부(130)로 전송한다.
도 2b 내지 도 2e를 참조하여 상술한 바와 같이, 영상 생성부(120)는 사용자의 추가적인 입력 신호에 따라 기 생성된 제 2 영상을 보정할 수 있다. 다시 말해, 도 2a를 참조하여 상술한 바와 같이, 영상 생성부(120)는 사용자가 입력한 최초 입력 신호에 포함된 위치 정보에 기초하여 제 2 영상을 생성할 수 있다. 또한, 도 2b 내지 도 2e를 참조하여 상술한 바와 같이, 영상 생성부(120)는 사용자의 추가적인 입력 신호에 포함된 위치 정보를 반영하여 기 생성된 제 2 영상이 보정된 새로운 제 2 영상을 생성할 수도 있다. 따라서, 영상 처리 장치(100)는 사용자와의 반복적인 상호 작용(interaction)을 통하여 제 1 영상에서 객체를 보다 정밀하게 분리할 수 있다.
도 2f는 사용자가 단말기 화면상의 일 지점을 터치(226)한 경우, 영상 생성부(120)가 제 2 영상을 생성하는 일 예를 도시한 도면이다.
도 2f의 좌측 도면을 참조하면, 사용자는 객체(210)를 포함하는 제 1 영상이 표시된 단말기 화면의 일 지점을 터치(226)하는 입력을 수행할 수 있다. 예를 들어, 사용자는 제 1 영상에서 객체(210)에 해당하는 일 지점을 터치(226)할 수 있다. 인터페이스부(110)는 제 1 영상 및 사용자의 입력 신호를 수신하고, 사용자의 입력 신호를 영상 생성부(120)로 전송한다.
영상 생성부(120)는 사용자의 입력 신호에 포함된 위치 정보에 기초하여, 제 1 영상에 포함된 픽셀들 중 터치된 지점에 대응하는 픽셀을 선택한다. 여기에서, 선택된 픽셀은 제 1 영상의 영역을 구분하는 기초로 사용된다.
도 2f의 우측 도면을 참조하면, 영상 생성부(120)는 제 1 영상이 적어도 하나 이상의 영역들로 구분된 제 2 영상을 생성한다. 이하, 영상 생성부(120)가 제 1 영역(311), 제 2 영역(312), 제 5 영역(313) 및 제 4 영역(314)으로 구분된 제 2 영상을 생성하는 일 예를 설명한다.
먼저, 영상 생성부(120)는 사용자가 터치(226)한 지점에 대응되는 픽셀을 제 1 영역(311)으로 지정한다.
다음으로, 영상 생성부(120)는 제 1 영역(311)로 지정된 픽셀을 중심으로 반경 100 픽셀에 해당되는 모든 픽셀들을 제 2 영역(312)으로 지정한다. 그러나, 영상 생성부(120)가 제 2 영역(312)를 지정하는 기준은 반드시 100 픽셀의 폭에 한정되지 않는다.
다음으로, 영상 생성부(120)는 제 1 영역(311)로 지정된 픽셀을 중심으로 반경 400 픽셀에 해당되는 픽셀들 중 제 2 영역(232)에 포함된 픽셀들을 제외한 나머지 픽셀들을 제 5 영역(313)으로 지정한다. 그러나, 영상 생성부(120)가 제 5 영역(313)를 지정하는 기준은 반드시 400 픽셀의 폭에 한정되지 않는다.
다음으로, 영상 생성부(120)는 제 1 영상에서 제 1 영역(311), 제 2 영역(312) 및 제 5 영역(313)에 해당되지 않는 영역을 제 4 영역(314)으로 지정한다.
다시 도 1을 참조하면, 영상 생성부(120)는 생성된 제 2 영상을 분리부(130)로 전송한다.
도 2f는 사용자가 단말기 화면상의 일 지점을 터치(226)한 경우, 영상 생성부(120)가 제 2 영상을 생성하는 일 예를 도시한 도면이다.
도 2f의 좌측 도면을 참조하면, 사용자는 객체(210)를 포함하는 제 1 영상이 표시된 단말기 화면의 일 지점을 터치(226)하는 입력을 수행할 수 있다. 예를 들어, 사용자는 제 1 영상에서 객체(210)에 해당하는 일 지점을 터치(226)할 수 있다. 인터페이스부(110)는 제 1 영상 및 사용자의 입력 신호를 수신하고, 사용자의 입력 신호를 영상 생성부(120)로 전송한다.
영상 생성부(120)는 사용자의 입력 신호에 포함된 위치 정보에 기초하여, 제 1 영상에 포함된 픽셀들 중 터치된 지점에 대응하는 픽셀을 선택한다. 여기에서, 선택된 픽셀은 제 1 영상의 영역을 구분하는 기초로 사용된다.
도 2f의 우측 도면을 참조하면, 영상 생성부(120)는 제 1 영상이 적어도 하나 이상의 영역들로 구분된 제 2 영상을 생성한다. 이하, 영상 생성부(120)가 제 1 영역(311), 제 2 영역(312), 제 5 영역(313) 및 제 4 영역(314)으로 구분된 제 2 영상을 생성하는 일 예를 설명한다.
먼저, 영상 생성부(120)는 사용자가 터치(226)한 지점에 대응되는 픽셀을 제 1 영역(311)으로 지정한다.
다음으로, 영상 생성부(120)는 제 1 영역(311)로 지정된 픽셀을 중심으로 반경 100 픽셀에 해당되는 모든 픽셀들을 제 2 영역(312)으로 지정한다. 그러나, 영상 생성부(120)가 제 2 영역(312)를 지정하는 기준은 반드시 100 픽셀의 폭에 한정되지 않는다.
다음으로, 영상 생성부(120)는 제 1 영역(311)로 지정된 픽셀을 중심으로 반경 400 픽셀에 해당되는 픽셀들 중 제 2 영역(232)에 포함된 픽셀들을 제외한 나머지 픽셀들을 제 5 영역(313)으로 지정한다. 그러나, 영상 생성부(120)가 제 5 영역(313)를 지정하는 기준은 반드시 400 픽셀의 폭에 한정되지 않는다.
다음으로, 영상 생성부(120)는 제 1 영상에서 제 1 영역(311), 제 2 영역(312) 및 제 5 영역(313)에 해당되지 않는 영역을 제 4 영역(314)으로 지정한다.
다시 도 1을 참조하면, 영상 생성부(120)는 생성된 제 2 영상을 분리부(130)로 전송한다.
도 2g 및 도 2h는 사용자가 단말기 화면상에 스트로크(227 또는 228)를 입력한 경우, 영상 생성부(120)가 제 2 영상을 생성하는 일 예를 도시한 도면들이다.
사용자가 소정의 UI(미도시)를 선택함으로써, 영상 생성부(120)는 사용자가 입력한 스트로크(227 또는 228)가 전경을 나타내는 영역을 의미하는 것인지 또는 배경을 나타내는 영역을 의미하는 것인지를 결정할 수 있음은 도 2b 내지 도 2c를 참조하여 상술한 바와 같다. 다만, 도 2b 내지 도 2c와 도 2g 내지 도 2h와의 차이는, 기 생성된 제 2 영상이 존재하는지 여부에 있다.
다시 말해, 도 2b 또는 도 2c를 참조하여 상술한 일 예는 1차적으로 폐 루프가 입력된 상태에서 2차적으로 스트로크가 입력됨으로써, 영상 생성부(120)가 제 2 영상을 생성하는 방법에 해당된다. 이에 반하여, 도 2g 또는 도 2h를 참조하여 후술할 일 예는 1차적으로 폐 루프가 입력되지 않은 상태에서 스트로크가 입력됨으로써, 영상 생성부(120)가 제 2 영상을 생성하는 방법에 해당된다. 즉, 도 2g 또는 도 2h를 참조하여 후술할 일 예는 객체(210)를 포함하는 제 1 영상이 표시된 단말기 화면상에 최초로 입력된 사용자의 스트로크에 기초하여, 제 2 영상이 생성되는 방법에 해당된다.
도 2g를 참조하면, 영상 생성부(120)는 최초로 입력된 스트로크(227)가 배경을 나타내는 영역을 의미하는 것일 경우, 스트로크(227)에 대응되는 픽셀들을 제 3 영역(315)로 지정하고, 나머지 픽셀들을 제 5 영역(316)으로 지정한다.
도 2h를 참조하면, 영상 생성부는 최초로 입력된 스트로크(228)가 전경을 나타내는 영역을 의미하는 것일 경우, 스트로크(228)에 대응되는 픽셀들을 제 1 영역(317)로 지정하고, 나머지 픽셀들을 제 5 영역(318)으로 지정한다.
다시 도 1을 참조하면, 영상 생성부(120)는 생성된 제 2 영상을 분리부(130)로 전송한다.
본 발명의 일 실시예에 따르면, 폐 루프 또는 스트로크가 입력되는 순서가 한정되지 않는다. 다시 말해, 최초로 입력된 폐 루프에 기초하여 1차적으로 제 2 영상을 생성하고, 이후에 입력된 스트로크에 기초하여 2차적으로 제 2 영상을 생성할 수 있다. 또한, 최초로 입력된 스트로크에 기초하여 1차적으로 제 2 영상을 생성하고, 이후에 입력된 폐 루프에 기초하여 2차적으로 제 2 영상을 생성할 수도 있다. 또한, 최초로 입력된 폐 루프에 기초하여 1차적으로 제 2 영상을 생성하고, 이후에 입력된 폐 루프에 기초하여 2차적으로 제 2 영상을 생성할 수도 있다. 또한, 또한, 최초로 입력된 스트로크에 기초하여 1차적으로 제 2 영상을 생성하고, 이후에 입력된 스트로크에 기초하여 2차적으로 제 2 영상을 생성할 수 있다.
한편, 본 발명의 일 실시예에 따르면, 폐 루프 또는 스트로크가 입력되는 횟수가 제한되지 않는다. 다시 말해, 사용자는 제 1 영상이 표시된 단말기 화면상에 횟수의 제한 없이 폐 루프 또는 스트로크를 입력함으로써, 세밀하게 영역들이 분리된 제 2 영상이 생성될 수 있다.
도 2a 내지 도 2h를 참조하여 상술한 바에 따르면, 영상 생성부(120)는 사용자의 입력 신호(예를 들어, 폐 루프 또는 스트로크)에 대응하여 제 2 영상을 생성하는 것(매뉴얼 모드)으로 설명하였다. 그러나, 이에 한정되지 않는다.
다시 말해, 영상 생성부(120)는 사용자의 입력 신호에 기초하여 제 1 영상에서 전경과 배경을 구분하는 경계선을 자동으로 설정함으로써 제 2 영상을 생성할 수도 있다(오토매틱 모드). 구체적으로, 영상 생성부(120)는 사용자의 입력 신호에 기초하여 객체의 외곽선에 대응하는 픽셀들을 자동적으로 선택한다. 그리고, 영상 생성부(120)는 선택된 픽셀들을 기준으로 하여, 객체가 포함된 영역을 제 1 영역 또는 제 2 영역으로 지정하고, 객체가 포함되지 않은 영역을 제 3 영역 또는 제 4 영역으로 지정할 수 있다.
분리부(130)는 제 1 영상 및 제 2 영상을 이용하여 제 1 영상에서 객체를 분리(segmentation)한다. 구체적으로, 분리부(130)는 인터페이스부(110)로부터 수신한 제 1 영상 및 영상 생성부(120)로부터 수신한 제 2 영상을 이용하여, 제 1 영상에서 객체를 분리한다. 이하, 도 3 내지 도 4를 참조하여 분리부(130)가 제 1 영상에서 객체를 분리하는 구체적인 방법을 설명한다.
도 3은 본 발명의 일 실시예에 따른 분리부의 일 예를 도시한 구성도이다.
도 3을 참조하면, 분리부(130)는 전처리부(131), 갱신부(132) 및 제어부(133)를 포함한다.
도 3에 도시된 분리부(130)에는 본 실시예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 3에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 본 실시예와 관련된 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다.
또한, 도 3에 도시된 전처리부(131), 갱신부(132) 및 제어부(133)들은 각각 독립적인 장치로 존재할 수도 있음을 본 발명과 관련된 기술 분야에서 통상의 지식을 가진 자라면 알 수 있다.
또한, 도 3에 도시된 분리부(130)의 전처리부(131), 갱신부(132) 및 제어부(133)들은 하나 또는 복수 개의 프로세서에 해당할 수 있다. 프로세서는 다수의 논리 게이트들의 어레이로 구현될 수도 있고, 범용적인 마이크로 프로세서와 이 마이크로 프로세서에서 실행될 수 있는 프로그램이 저장된 메모리의 조합으로 구현될 수도 있다. 또한, 다른 형태의 하드웨어로 구현될 수도 있음을 본 실시예가 속하는 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다.
전처리부(131)는 제 1 영상에 포함된 픽셀들의 컬러 정보 및 제 2 영상에 포함된 영역들의 정보에 기초하여 제 1 영상에서 객체를 분리한다. 여기에서, 컬러 정보는 각각의 픽셀들의 컬러 값(즉, RGB 값)을 의미하고, 제 2 영상에 포함된 영역들의 정보는 각각의 영역에 포함된 픽셀들의 위치 값을 의미한다.
갱신부(132)는 분리된 객체에 대한 정보를 이용하여 갱신된 영역들의 정보 및 컬러 정보에 기초하여 분리된 객체에 대한 정보를 갱신한다. 여기에서, 분리된 객체에 대한 정보는 전처리부(131)에서 1차로 분리한 객체에 대한 정보를 의미하며, 분리된 객체에 포함된 픽셀들의 컬러 값 또는 위치 값을 포함한다. 또한, 갱신부(132)가 수행하는 분리된 객체에 대한 정보를 갱신하는 것은, 전처리부(131)에서 1차로 분리한 객체에 대한 정보에 기초하여 2차로 객체 분리를 수행하는 것을 의미한다.
제어부(133)는 갱신부(132)가 수행하는 동작을 소정의 횟수만큼 반복시킨다. 다시 말해, 제어부(133)는, 전처리부(131)에서 1차로 분리한 객체에 대한 정보에 기초하여 갱신부(132)가 2차로 객체의 분리를 수행하는 동작을 소정의 횟수만큼 반복시킨다.
본 발명의 일 실시예에 따르면 제어부(133)가 갱신부(132)의 동작을 소정의 횟수만큼 반복시킴으로써, 분리부(130)가 보다 정밀하게 제 1 영상에서 객체를 분리할 수 있다.
이하, 도 4를 참조하여 분리부(130)의 동작을 구체적으로 설명한다.
도 4는 본 발명의 일 실시예에 따른 분리부가 동작하는 일 예를 나타내는 흐름도이다.
도 4를 참조하면, 식별번호 410에 포함된 단계들은 전처리부(131)에서 수행되는 동작을 의미하고, 식별번호 420에 포함된 단계들은 갱신부(132) 및 제어부(133)에서 수행되는 동작을 의미한다. 보다 상세하게는, 갱신부(132)는 식별번호 420에 포함된 421 단계 내지 425 단계를 수행하고, 제어부(133)는 425 단계에서 다시 421 단계로 피드백되는 과정을 소정의 횟수만큼 반복하도록 갱신부(132)를 제어한다. 여기에서, 소정의 횟수는 사용자에 의하여 결정될 수도 있고, 영상 처리 장치(100)에 기 설정된 횟수를 의미할 수도 있다.
411 단계에서, 전처리부(131)는 영상 생성부(120)로부터 제 2 영상에 관한 정보를 수신한다. 또한, 411 단계에 기재되지 않았으나, 전처리부(131)는 인터페이스부(110)로부터 제 1 영상에 관한 정보를 수신한다.
412 단계에서, 전처리부(131)는 제 1 영상에 관한 정보 및 제 2 영상에 관한 정보를 이용하여 모델을 생성한다. 구체적으로, 전처리부(131)는 제 1 영상에 포함된 픽셀들의 컬러 정보 및 제 2 영상에 포함된 영역들의 정보에 기초하여 전경 모델 및 배경 모델을 생성한다.
전처리부(131)는 제 2 영상에 포함된 영역들 중에서 제 1 영역 및 제 2 영역에 해당되는 픽셀들의 픽셀 값(즉, RGB 값)들을 이용하여 전경 모델을 생성한다. 또한, 전처리부(131)는 제 2 영상에 포함된 영역들 중에서 제 3 영역 및 제 4 영역에 해당되는 픽셀들의 픽셀 값들을 이용하여 배경 모델을 생성한다.
여기에서, 전처리부(131)가 전경 모델과 배경 모델을 생성하는 방법은 동일하다. 따라서, 이하에서는 전처리부(131)가 배경 모델을 생성하는 방법을 구체적으로 설명하고, 전경 모델을 생성하는 방법은 생략하기로 한다.
한편, 컬러 영상은 적색(red color), 녹색(green color), 청색(blue color) 중 어느 하나를 나타내는 픽셀들이 조합됨으로써 형성된다. 따라서, 본 발명의 일 실시예에 따른 배경 모델은 적색 컬러 모델, 녹색 컬러 모델 및 청색 컬러 모델로 구성된다. 이는 전경 모델도 동일하다.
이하에서 전처리부(131)가 배경 모델을 생성하는 방법은 배경 모델을 구성하는 3 종류의 모델들 중 어느 하나를 생성하는 방법에 해당된다. 전처리부(131)가 배경 모델을 구성하는 나머지 모델들을 생성하는 방법도 동일하다. 또한, 전처리부(131)가 전경 모델을 구성하는 3 종류의 모델들을 생성하는 방법도 동일하다.
전처리부(131)는 제 2 영상에 관한 정보로부터 제 3 영역 및 제 4 영역에 해당되는 픽셀들의 위치 값들을 획득한다. 그리고, 전처리부(131)는 획득된 위치 값들에 따라 제 1 영상에 관한 정보로부터 픽셀 값들을 획득한다.
그 후에, 전처리부(131)는 K-평균 군집화 방법(K-means clustering method)를 이용하여 제 3 영역 및 제 4 영역에 해당되는 픽셀들을 소정의 개수의 그룹들로 군집화한다. 여기에서, 소정의 개수는 5개가 될 수 있으나, 이에 한정되지 않는다.
그 후에, 전처리부(131)는 군집화된 그룹들 각각에 대하여 가우시안 혼합 모델(Gaussian mixture model, GMM)을 적용함으로써 배경 모델의 파라미터를 획득한다. 여기에서, 배경 모델의 파라미터는 각각의 그룹에 포함된 픽셀 값들의 평균(mean) 값을 갖는 픽셀들의 개수에 의존하는 가중치, 가우시안 평균(mean) 및 공분산(covariance)를 의미한다.
본 발명의 일 실시예에 따르면, 전처리부(131)는 군집화된 그룹들 각각에 대하여 가우시안 혼합 모델을 적용할 때, 적절한 가우시안의 개수를 결정할 수 있다.
일반적으로, 가우시안 혼합 모델의 경우 이용되는 가우시안의 개수가 고정되어 있다. 다시 말해, 소정의 대상에 적용되는 가우시안 혼합 모델은 5 개의 가우시안을 이용하는 식으로 가우시안의 개수가 고정되어 있는 것이 일반적이다. 그러나, 가우시안 혼합 모델에 이용되는 가우시안의 적절한 개수는 영상의 종류에 따라 달라질 수 있다. 예를 들어, 복잡한 배경 위에 객체가 위치하는 영상과 순백색의 배경 위에 객체가 위치하는 영상의 경우 적절한 가우시안의 개수는 서로 달라질 수 있다.
따라서, 전처리부(131)는 입력된 제 1 영상의 종류에 따라 가우시안 혼합 모델에 이용되는 가우시안의 개수를 적응적으로(adaptively) 결정할 수 있다. 또한, 전처리부(131)는 배경 모델의 파라미터를 생성하는 과정에서 적용되는 가우시안 혼합 모델과 전경 모델의 파라미터를 생성하는 과정에서 적용되는 가우시안 혼합 모델 각각에 대하여 서로 독립적으로 가우시안의 개수를 결정할 수 있다.
전처리부(131)는 배경 모델(즉, 배경 모델에 포함된 3 종류의 모델들)을 생성한 과정과 동일한 과정을 수행함으로써, 제 1 영역 및 제 2 영역에 해당되는 픽셀들의 픽셀 값들을 이용하여 전경 모델(즉, 전경 모델에 포함된 3 종류의 모델들)을 생성(즉, 전경 모델의 파라미터를 획득)한다.
412 단계를 참조하여 상술한 과정은 제 1 영상이 컬러 영상(color image)인 경우에 전처리부(131)가 배경 모델 및 전경 모델을 생성하는 일 예를 설명한 것이다. 한편, 제 1 영상이 그레이 스케일 영상(grayscale image)인 경우에는 전처리부(131)은 상술한 방법과 다른 방법을 이용하여 배경 모델 및 전경 모델을 생성할 수 있다.
구체적으로, 제 1 영상이 그레이 스케일 영상인 경우에는 전처리부(131)가 배경 모델 및 전경 모델을 컬러 모델로 생성하는 것이 효과적이지 않을 수 있다. 구체적으로, 제 1 영상이 그레이 스케일 영상인 경우에는 제 1 영상을 구성하는 각각의 픽셀들이 적색, 녹색 및 청색을 나타내지 않는다. 따라서, 전처리부(131)는 배경 모델 및 전경 모델을 컬러 모델로 생성하는 것은 효용성이 떨어질 수 있다.
이하에서, 제 1 영상이 그레이 스케일 영상인 경우 전처리부(131)가 배경 모델을 생성하는 일 예를 구체적으로 설명한다. 제 1 영상이 그레이 스케일 영상인 경우 전처리부(131)가 배경 모델을 생성하는 방법도 동일하다.
제 1 영상이 그레이 스케일 영상인 경우, 배경 모델은 그레이 스케일 강도(gray scale intensity), 제 1 텍스쳐 파라미터(texture parameter) 및 제 2 텍스쳐 파라미터로 구성될 수 있다. 다시 말해, 제 1 영상이 컬러 영상인 경우에 배경 모델은 적색 컬러 모델, 녹색 컬러 모델 및 청색 컬러 모델로 구성되었던 것에 비하여, 제 1 영상이 그레이 스케일 영상인 경우에는 배경 모델은 그레이 스케일 강도, 제 1 텍스쳐 파라미터 및 제 2 텍스쳐 파라미터로 구성된다. 전처리부(131)가 그레이 스케일 강도, 제 1 텍스쳐 파라미터 및 제 2 텍스쳐 파라미터를 획득하는 방법은 아래와 같다.
전처리부(131)는 제 2 영상에 관한 정보로부터 제 3 영역 및 제 4 영역에 해당되는 픽셀들의 위치 값들을 획득한다. 그리고, 전처리부(131)는 획득된 위치 값들에 따라 제 1 영상에 관한 정보로부터 그레이 스케일 강도 값들을 획득한다.
전처리부(131)는 제 1 영상에서 제 3 영역 및 제 4 영역에 해당되는 픽셀들의 가로 방향의 텍스쳐(horizontal texture)를 획득한다. 그리고, 전처리부(131)는 획득된 가로 방향의 텍스쳐를 제 1 텍스쳐 파라미터로 결정한다.
전처리부(131)는 제 1 영상에서 제 3 영역 및 제 4 영역에 해당되는 픽셀들의 세로 방향의 텍스쳐(vertival texture)를 획득한다. 그리고, 전처리부(131)는 획득된 세로 방향의 텍스쳐를 제 2 텍스쳐 파라미터로 결정한다.
전처리부(131)는 배경 모델(즉, 배경 모델에 포함된 그레이 스케일 강도, 제 1 텍스쳐 파라미터 및 제 2 텍스쳐 파라미터)을 생성한 과정과 동일한 과정을 수행함으로써, 제 1 영역 및 제 2 영역에 해당되는 픽셀들의 픽셀 값들을 이용하여 전경 모델(즉, 전경 모델에 포함된 그레이 스케일 강도, 제 1 텍스쳐 파라미터 및 제 2 텍스쳐 파라미터)을 생성한다.
413 단계에서, 전처리부(131)는 생성된 모델들을 이용하여 그래프를 구성한다. 구체적으로, 전처리부(131)는 제 1 영상에 포함된 픽셀들 간의 유사도를 나타내는 데이터 항(color term) 및 이웃하는 픽셀 간의 유사도를 나타내는 스무드 항(smoothness term)을 조합하여, 제 1 영상에 포함된 픽셀들의 에너지 함수를 나타내는 그래프(graph)를 구성(construction)한다.
구체적으로, 전처리부(131)는 아래의 수학식 1을 연산함으로써, 제 1 영상에 포함된 픽셀들 각각의 에너지 값(
Figure 112013078256219-pat00001
, edge value)을 계산할 수 있다.
Figure 112013078256219-pat00002
상기 수학식 1에서
Figure 112013078256219-pat00003
는 데이터 항을 의미하며, 픽셀 p의 컬러 값이 전경 모델 및 배경 모델과 얼마나 유사한지를 나타낸다. 구체적으로, 제 1 영상(P)에 포함된 픽셀 p가 fp에 대한 사전 정보와 유사하면
Figure 112013078256219-pat00004
는 낮은 비용(cost)이 할당되며, 유사하지 않으면 높은 비용이 할당된다. 여기에서, fp는 전경 모델 또는 배경 모델을 의미한다.
상기 수학식 1에서
Figure 112013078256219-pat00005
는 스무드 항을 의미하며, 이웃하는 픽셀의 밝기(intensity)에 기초하여 결정된다. 구체적으로, 스무드 항은 유사한 밝기를 갖는 픽셀들 사이에서 불연속(discontinuity)을 생성하기 위한 기준과 같은 역할을 한다. 다시 말해, 스무드 항은 이웃하는 픽셀과의 연속성(continuity)을 나타내며, 이웃하는 두 픽셀들(p 및 q)이 서로 유사하면
Figure 112013078256219-pat00006
는 높은 비용이 할당되며, 유사하지 않으면 낮은 비용이 할당된다. 여기에서, fp 및 fq는 각각 전경 모델 및 배경 모델을 의미한다.
상기 수학식 1에서 λ는 데이터 항과 스무드 항의 상대적인 중요도를 나타내는 가중치이고, N은 제 1 영상의 인접한 이웃 픽셀 쌍의 집합으로서 n-links(neighborhood links)를 나타낸다.
본 발명의 일 실시예에 따르면, 전처리부(131)는 가중치 λ를 변경할 수 있다. 일반적으로, 상기 수학식 1을 이용하여 그래프를 구성하는 경우, 가중치 λ는 불변의 값을 의미한다. 다시 말해, 그래프를 구성하는데 이용되는 상기 수학식 1은, 제 1 영상의 해상도의 차이, 제 1 영상에 포함된 노이즈의 많고 적음 등에 관계없이, 일반적으로 불변의 가중치 λ가 적용된다.
그러나, 본 발명의 일 실시예에 따르면, 전처리부(131)는 제 1 영상에서 객체가 분리될 가능성에 따라 기 설정된 가중치 λ를 변경하거나, 서로 다른 3 이상의 후보 가중치들을 이용하여 가중치 λ를 최적화함으로써 기 설정된 가중치 λ를 다른 값으로 변경할 수 있다. 다시 말해, 제 1 영상의 해상도 또는 노이즈의 많고 적음에 따라 제 1 영상에서 객체가 분리될 가능성이 달라질 수 있다. 예를 들어, 제 1 영상의 해상도가 높을수록 제 1 영상에서 객체가 분리될 확률이 높아질 수 있고, 제 1 영상의 해상도가 낮을수록 제 1 영상에서 객체가 분리될 확률이 낮아질 수 있다. 따라서, 본 발명의 일 실시예에 따른 전처리부(131)는 제 1 영상에서 객체가 분리될 가능성에 따라 기 설정된 가중치 λ를 변경하거나, 서로 다른 3 이상의 후보 가중치들을 이용하여 가중치 λ를 최적화함으로써 기 설정된 가중치 λ를 다른 값으로 변경할 수 있다.
먼저, 전처리부(131)는 후술할 415 단계에서 그래프에 그래프 컷 알고리즘을 적용하고, 그 결과로서 제 1 영상에서 객체를 분리할 수 없다고 판단한 경우에는 기 설정된 가중치 λ를 다른 값으로 변경할 수 있다. 다시 말해, 전처리부(131)가 제 1 영상에서 객체를 분리할 수 없다고 판단한 경우에는 가중치 λ를 다르느 값으로 변경 할 수 있다. 여기에서, 가중치가 변경될 수 있는 값들은 영상 처리 장치(100)에 미리 설정되어 있을 수 있다.
본 발명의 일 실시예에 따르면, 전처리부(131)가 제 1 영상에서 객체를 분리할 수 없다고 판단한 경우에만 기 설정된 가중치 λ를 다른 값으로 변경함으로써, 과도한 연산 시간을 소요하지 않고, 제 1 영상에서 객체를 정확하게 분리할 수 있다.
또한, 전처리부(131)는 서로 다른 3 이상의 후보 가중치들을 이용하여 가중치 λ를 최적화함으로써 기 설정된 가중치 λ를 다른 값으로 변경할 수 있다. 전처리부(131)가 가중치 λ를 최적화하여 기 설정된 가중치 λ를 변경하는 구체적인 방법은 도 8을 참조하여 후술한다.
도 8은 본 발명의 일 실시예에 따른 전처리부가 가중치 λ를 최적화하는 일 예를 설명하기 위한 흐름도이다.
811 단계 내지 813 단계에서, 전처리부(131)은 서로 다른 3개의 후보 가중치들(λlow, λoptimal, λhigh)에 기초하여 생성한 그래프에 그래프 컷 알고리즘을 적용함으로써, 제 1 영상에서 객체를 분리한다. 다시 말해, 전처리부(131)는 상술한 수학식 1에 서로 다른 3개의 후보 가중치들(λlow, λoptimal, λhigh)를 각각 적용한다. 그리고, 전처리부(131)는 3개의 후보 가중치들(λlow, λoptimal, λhigh)를 각각 적용하여 계산된 3가지 타입의 에너지 값(
Figure 112013078256219-pat00007
)들 각각에 그래프 컷 알고리즘을 적용함으로써, 제 1 영상에서 객체를 분리한다.
여기에서, 후보 가중치들(λlow, λoptimal, λhigh)은 영상 처리 장치(100)에 기 설정된 값들일 수 있다. 또한, 앞에서 전처리부(131)는 서로 다른 3개의 후보 가중치들(λlow, λoptimal, λhigh)에 기초하여 그래프 컷 알고리즘을 적용하는 것으로 설명하였으나, 후보 가중치들의 개수에 제한되지 않는다. 다시 말해, 영상 처리 장치(100)의 성능 또는 제 1 영상의 상태에 따라 더 많은 수의 후보 가중치들이 설정될 수 있다.
820 단계에서, 전처리부(131)는 교환 기준(switching criteria)을 이용하여 제 1 영상에서 객체가 분리된 결과를 테스트한다. 다시 말해, 전처리부(131)는 811 단계 내지 813 단계 각각의 수행 결과를 교환 기준을 이용하여 테스트한다.
여기에서, 교환 기준의 일 예로서, 전처리부(131)는 경계 박스 테스트(boundary box test)를 사용할 수 있다. 구체적으로, 전처리부(131)는 811 단계 내지 813 단계 각각의 수행 결과로 획득된 객체의 외곽선과 최초 입력된 폐루프의 가까운 정도를 측정한다. 예를 들어, 전처리부(131)는 객체의 외곽선과 최초 입력된 폐루프의 가까운 정도를 수치로서 계산할 수 있다.
그리고, 전처리부(131)는 측정된 결과를 소정의 임계값과 비교함으로써 교환 기준을 만족하였는지 여부를 판단한다. 예를 들어, 전처리부(131)는 임계값보다 높은 수치를 나타내는 경우를 교환 기준을 만족하였다고 판단할 수 있으나, 이에 한정되지 않는다. 교환 기준을 만족한 경우가 적어도 하나 이상 발견된 경우(830 단계)에는 831 단계로 진행하고, 그렇지 않은 경우(840 단계)에는 841 단계로 진행한다.
831 단계에서, 전처리부(131)는 교환 기준을 만족한 후보 가중치들 중에서 가장 높은 값을 갖는 후보 가중치를 선택한다. 그리고 전처리부(131)는 기 설정된 가중치 λ를 선택된 후보 가중치로 변경한다.
841 단계에서, 전처리부(131)는 제 1 영상에서 객체가 분리된 결과를 분석한다. 다시 말해, 전처리부(131)는 상술한 811 단계 내지 813 단계를 통하여 제 1 영상에서 객체가 분리된 결과들을 분석한다. 예를 들어, 전처리부(131)는 후보 가중치의 값이 작을수록 제 1 영상에서 객체가 분리된 영역이 증가하는지 여부를 검토한다. 만약, 후보 가중치의 값이 작을수록 제 1 영상에서 객체가 분리된 영역이 증가하는 경우에는 842 단계로 진행하고, 그렇지 않은 경우에는 843 단계로 진행한다.
842 단계에서, 전처리부(131)는 후보 가중치들 중에서 가장 낮은 값을 갖는 후보 가중치(λvery low)를 선택한다. 그리고 전처리부(131)는 기 설정된 가중치 λ를 선택된 후보 가중치(λvery low)로 변경한다.
843 단계에서, 전처리부(131)는 후보 가중치들에는 원하는 결과가 없다고 판단한다. 따라서, 전처리부(131)는 후보 가중치들과는 다른 값을 갖는 가중치(λfail -safe)를 설정하고, 기 설정된 가중치 λ를 설정된 가중치(λfail - safe)로 변경한다.
본 발명의 일 실시예에 따르면, 전처리부(131)가 후보 가중치들에 기초하여 가중치를 최적화한 결과를 이용하여 기 설정된 가중치 λ를 다른 값으로 변경함으로써, 제 1 영상에서 객체를 정확하게 분리할 수 있다.
414 단계에서, 전처리부(131)는 형상 사전 정보(shape prior)를 구성된 그래프에 추가한다. 다만, 414 단계는 선택적인 단계로서, 영상 처리 장치(100)가 외부 입력 신호를 수신한 경우에만 수행된다. 여기에서, 외부 입력 신호는 전경 영역 내의 소정의 위치 정보를 포함하는 입력 신호를 의미하며, 사용자가 전경 영역 내의 위치에 대하여 입력한 스트로크가 해당 될 수 있다.
본 발명의 일 실시예에 따르면, 전처리부(131)는 형상 사전 정보를 그래프에 추가하고, 제어부(133)는 갱신부(132)의 동작을 반복적으로 수행시킴으로써 제 1 영상에서 객체를 보다 정밀하게 분리할 수 있다. 이하, 전처리부(131)가 형상 사전 정보를 그래프에 추가하는 과정을 상세하게 설명한다.
다시 도 1을 참조하면, 인터페이스부(110)는 제 2 영상에 포함된 영역들 중 전경 영역 내의 소정의 위치 정보를 포함하는 입력 신호(예를 들어, 스트로크)를 수신한다. 그리고, 인터페이스부(110)는 입력 신호를 분리부(130)(구체적으로, 전처리부(131))로 전송한다. 전처리부(131)는 입력 신호에 기초하여, 형상 사전 정보를 획득한다.
다시 도 4를 참조하면, 414 단계에서, 전처리부(131)는 입력 신호에 포함된 위치 정보에 기초하여, 전경 영역에 포함된 픽셀들 중 적어도 하나 이상을 선택한다. 다시 말해, 전처리부(131)는 전경 영역에 포함된 픽셀들 중에서 스트로크의 경로 상에 존재하는 픽셀들을 선택한다.
그 후에, 전처리부(131)는 선택된 픽셀들 중에서 최초로 선택된 픽셀을 결정한다. 다시 말해, 전처리부(131)는 스트로크의 시작점에 대응되는 픽셀을 결정한다.
그 후에, 전처리부(131)는 상기 결정된 픽셀로부터 객체를 나타내는 픽셀들의 가시성(visibility)을 연산한다. 구체적으로, 전처리부(131)는 상기 결정된 픽셀을 지오데식 스타 센터(geodesic star center)로 결정한다. 그리고, 전처리부(131)는 최단 지오데식 경로(shortest geodesic path)를 이용하여, 전경 영역에 포함된 모든 픽셀들을 지오데식 스타 센터와 연결한다. 즉, 전처리부(131)는 지오데식 포레스트(geodesic forest)를 구성한다.
그 후에, 전처리부(131)는 지오데식 포레스트를 이용하여 가시성을 연산하고, 연산된 가시성을 이용하여 형상 사전 정보를 획득한다. 그리고, 전처리부(131)는 획득한 형상 사전 정보를 그래프에 추가한다.
형상 사전 정보가 추가된 경우에, 전처리부(131)는 아래의 수학식 2를 연산함으로써, 제 1 영상에 포함된 픽셀들 각각의 에너지 값(
Figure 112013078256219-pat00008
, edge value)을 계산할 수 있다.
Figure 112013078256219-pat00009
상기 수학식 2에서,
Figure 112013078256219-pat00010
,
Figure 112013078256219-pat00011
및 λ는 수학식 1을 참조하여 상술한 바와 같다. 또한, 수학식 2에서
Figure 112013078256219-pat00012
는 형상 사전 정보에 해당된다. 또한, 전처리부(131)가 기 설정된 가중치 λ를 변경하거나, 서로 다른 3 이상의 후보 가중치들을 이용하여 가중치 λ를 최적화함으로써 기 설정된 가중치 λ를 다른 값으로 변경할 수 있음은, 413 단계 및 도 8을 참조하여 상술한 바와 같다.
상술한 바와 같이, 전처리부(131)는 형상 사전 정보를 추가하여 그래프를 구성함으로써, 영상 처리 장치(100)는 제 1 영상으로부터 정밀하게 객체를 분리할 수 있다. 또한, 사용자와의 상호 작용의 결과를 그래프의 구성 과정에 반영함으로써, 영상 처리 장치(100)는 사용자의 의도에 따라 제 1 영상에서 객체를 분리할 수 있다.
415 단계에서, 전처리부(131)는 구성된 그래프에 그래프 컷 알고리즘(graph cut algorithm)을 적용함으로써, 제 1 영상에서 객체를 분리한다. 다시 말해, 전처리부(131)는 413 단계에서 구성된 그래프 또는 414 단계에서 구성된 그래프에 그래프 컷 알고리즘을 적용함으로써, 제 1 영상에서 객체를 1차로 분리한다. 여기에서, 그래프 컷 알고리즘은 역치 값을 이용하여 그래프를 구분함(cut)으로써, 제 1 영상에 포함된 픽셀들을 객체에 해당되는 픽셀들과 객체에 해당되지 않은 픽셀들로 분리하는 알고리즘을 의미한다.
또한, 전처리부(131)는 분리된 객체에 적어도 하나 이상의 결점들이 존재하는 경우, 결점들을 제거한다. 전처리부(131)가 분리된 객체에 존재하는 결점을 제거하는 구체적인 방법은 도 7을 참조하여 후술한다.
도 7은 본 발명의 일 실시예에 따른 분리된 객체에 존재하는 결점의 일 예를 도시한 도면이다.
도 7(a)를 참조하면, 제 1 영상에서 분리된 객체(710)가 도시되어 있다. 그러나, 도 7(b)를 참조하면, 분리된 객체(710) 내에 결점(720)들이 존재한다. 여기에서, 결점(720)은 분리된 객체(710) 내에 존재하는 픽셀들의 고립된 섬(isolated islands)을 의미한다.
전처리부(131)가 그래프에 그래프 컷 알고리즘을 적용함으로써, 제 1 영상에서 객체를 분리하는 경우 분리된 객체(710) 내에 결점(720)들이 존재할 수 있다. 다시 말해, 전처리부(131)가 그래프에 그래프 컷 알고리즘을 적용하는 과정에서, 분리된 객체(710) 내에 작은 폐곡선들이 나타날 수 있다. 이는, 전경 영역 내에 잘못 구분된 배경 픽셀들이 존재하는 경우 발생될 수 있다. 또한, 배경 영역 내에 잘 못 구분된 전경 픽셀들이 존재하는 경우에도 발생될 수 있다.
전처리부(131)는 분리된 객체(710) 내에 적어도 하나 이상의 결점(720)들이 존재하는 경우, 결점들을 제거한다. 따라서, 전처리부(131)가 415 단계를 수행함으로써 분리된 객체의 품질이 향상될 수 있다.
다시 도 4를 참조하면, 421 단계에서, 갱신부(132)는 전처리부(131)가 1차로 분리한 객체에 대한 정보를 이용하여, 제 2 영상을 갱신한다. 구체적으로, 갱신부(132)는 1차로 분리한 객체에 대한 정보를 이용하여, 제 2 영상에 포함된 제 2 영역 및 제 4 영역의 픽셀들을 갱신한다. 다시 말해, 갱신부(132)는 이전의 제 2 영상에서의 제 2 영역 또는 제 4 영역의 일부 영역이 객체로 분리된 경우, 객체로 분리된 영역을 제 2 영역 또는 제 4 영역에서 제외한다.
422 단계에서, 갱신부(132)는 제 1 영상에 관한 정보 및 갱신된 제 2 영상에 관한 정보를 이용하여 모델을 갱신한다. 구체적으로, 갱신부(132)는 제 1 영상에 포함된 픽셀들의 컬러 정보 및 갱신된 제 2 영상에 포함된 영역들의 정보에 기초하여 기 생성된 전경 모델 및 배경 모델을 갱신한다.
갱신부(132)는 갱신된 제 2 영상에 포함된 영역들 중에서 제 1 영역 및 제 2 영역에 해당되는 픽셀들의 픽셀 값(즉, RGB 값)들을 이용하여 전경 모델을 갱신한다. 또한, 갱신부(132)는 갱신된 제 2 영상에 포함된 영역들 중에서 제 3 영역 및 제 4 영역에 해당되는 픽셀들의 픽셀 값들을 이용하여 배경 모델을 갱신한다.
여기에서, 갱신부(132)가 전경 모델과 배경 모델을 생성하는 방법은 동일하다. 따라서, 이하에서는 갱신부(132)가 배경 모델을 생성하는 방법을 구체적으로 설명하고, 전경 모델을 생성하는 방법은 생략하기로 한다.
갱신부(132)는 갱신된 제 2 영상에 관한 정보로부터 제 3 영역 및 제 4 영역에 해당되는 픽셀들의 위치 값들을 획득한다. 그리고, 갱신부(132)는 획득된 위치 값들에 따라 제 1 영상에 관한 정보로부터 픽셀 값들을 획득한다.
그 후에, 갱신부(132)는 412 단계에서 전처리부(131)가 군집화한 그룹들에 픽셀들을 할당한다. 즉, 갱신부(132)는 제 3 영역 및 제 4 영역에 해당되는 픽셀들을 전처리부(131)가 군집화한 그룹들에 할당한다. 다시 말해, 갱신부(132)는 제 3 영역 및 제 4 영역에 해당되는 픽셀들을 새롭게 군집화할 필요 없이, 전처리부(131)가 군집화한 그룹들을 이용한다.
그 후에, 갱신부(132)는 군집화된 그룹들 각각에 대하여 가우시안 혼합 모델(Gaussian mixture model, GMM)을 적용함으로써 배경 모델의 파라미터를 갱신한다. 여기에서, 배경 모델의 파라미터는 각각의 그룹에 포함된 픽셀 값들의 평균(mean) 값을 갖는 픽셀들의 개수에 의존하는 가중치, 가우시안 평균(mean) 및 공분산(covariance)를 의미한다.
한편, 갱신부(132)는 입력된 제 1 영상의 종류에 따라 가우시안 혼합 모델에 이용되는 가우시안의 개수를 적응적으로(adaptively) 결정할 수 있다. 갱신부(132)가 가우시안의 개수를 적응적으로 결정하는 방법은 412 단계를 참조하여 상술한 바와 같다.
갱신부(132)는 배경 모델을 생성한 과정과 동일한 과정을 수행함으로써, 제 1 영역 및 제 2 영역에 해당되는 픽셀들의 픽셀 값들을 이용하여 전경 모델을 갱신(즉, 전경 모델의 파라미터를 갱신)한다.
한편, 제 1 영상이 그레이 스케일 영상인 경우, 갱신부(132)는 배경 모델에 포함된 그레이 스케일 강도(gray scale intensity), 제 1 텍스쳐 파라미터(texture parameter) 및 제 2 텍스쳐 파라미터를 갱신함으로써, 배경 모델을 갱신할 수 있다. 또한, 갱신부(132)는 배경 모델을 갱신하는 방법과 동일한 방법을 이용하여 전경 모델을 갱신할 수 있다.
423 단계에서, 갱신부(132)는 갱신된 모델들을 이용하여 그래프를 재구성(reconstruction)한다. 구체적으로, 전처리부(131)는 제 1 영상에 포함된 픽셀들 간의 유사도를 나타내는 데이터 항(color term) 및 이웃하는 픽셀 간의 유사도를 나타내는 스무드 항(smoothness term)을 조합하여, 제 1 영상에 포함된 픽셀들의 에너지 함수를 나타내는 그래프(graph)를 재구성한다. 갱신부(132)가 그래프를 재구성하는 방법은 413 단계를 참조하여 상술한 바와 같다. 또한, 갱신부(132)는 가중치 λ를 변경할 수 있다. 여기에서, 갱신부(132)가 가중치 λ를 변경하는 구체적인 방법은 413 단계를 참조하여 상술한 바와 같다.
424 단계에서, 갱신부(132)는 형상 사전 정보(shape prior)를 재구성된 그래프에 추가한다. 다만, 424 단계는 선택적인 단계로서, 영상 처리 장치(100)가 외부 입력 신호를 수신한 경우에만 수행된다. 여기에서, 외부 입력 신호는 전경 영역 내의 소정의 위치 정보를 포함하는 입력 신호를 의미하며, 사용자가 전경 영역 내의 위치에 대하여 입력한 스트로크가 해당 될 수 있다.
갱신부(132)는 전처리부(131)가 획득한 형상 사전 정보를 재구성된 그래프에 추가한다. 여기에서, 전처리부(131)가 형상 사전 정보를 획득하는 방법 및 갱신부(132)가 형상 사전 정보를 재구성된 그래프에 추가하는 방법은 414 단계를 참조하여 상술한 바와 같다. 또한, 갱신부(132)는 가중치 λ를 변경할 수 있음은 423 단계를 참조하여 상술한 바와 같다.
425 단계에서, 갱신부(132)는 재구성된 그래프에 그래프 컷 알고리즘(graph cut algorithm)을 적용함으로써, 제 1 영상에서 객체를 분리한다. 다시 말해, 전처리부(131)는 423 단계에서 재구성된 그래프 또는 424 단계에서 재구성된 그래프에 그래프 컷 알고리즘을 적용함으로써, 제 1 영상에서 객체를 2차로 분리한다. 여기에서, 그래프 컷 알고리즘은 역치 값을 이용하여 그래프를 구분함(cut)으로써, 제 1 영상에 포함된 픽셀들을 객체에 해당되는 픽셀들과 객체에 해당되지 않은 픽셀들로 분리하는 알고리즘을 의미한다.
또한, 갱신부(132)는 분리된 객체에 적어도 하나 이상의 결점들이 존재하는 경우, 결점들을 제거한다. 갱신부(132)가 분리된 객체에 존재하는 결점을 제거하는 구체적인 방법은 415 단계를 참조하여 상술한 바와 같다.
제어부(133)는 갱신부(132)의 동작을 소정의 횟수만큼 반복시킨다. 구체적으로, 제어부(133)는 425 단계에서 다시 421 단계로 피드백되는 과정을 소정의 횟수만큼 반복하도록 갱신부(132)를 제어한다.
430 단계에서, 갱신부(132)가 소정의 횟수만큼 반복하여 동작한 후, 최종적으로 분리된 객체가 출력된다.
본 발명의 일 실시예에 따르면, 갱신부(132)가 최종적으로 분리된 객체를 출력할 때, 객체의 외곽선(즉, 객체와 배경 사이의 경계선)에 해당되는 영역에 대하여 그래프를 재구성하고, 재구성된 그래프에 그래프 컷 알고리즘을 적용할 수 있다.
일반적으로, 영상에서 객체를 분리하는 경우에, 연산 시간을 줄이기 위하여 영상을 작은 사이즈로 조정하고, 사이즈가 조정된 영상에 분리 알고리즘(segmentation algorithm)을 적용한다. 그리고, 객체가 분리된 영상에 대하여, 조정된 사이즈를 다시 회복(즉, 원래의 사이즈로 복귀)시켜 출력한다. 이때, 영상의 작아진 사이즈를 업 스케일링(upscaling)함으로써, 분리된 객체의 외곽선이 고르게 나타나지 못할 수 있다.
갱신부(132)는 최종적으로 분리된 객체를 출력할 때, 객체의 외곽선에 대하여 그래프를 재구성하고, 재구성된 그래프에 그래프 컷 알고리즘을 적용함으로써, 매끄럽고 명확한 외곽선을 출력할 수 있다. 따라서, 갱신부(132)는 보다 명확하게 분리된 객체를 출력할 수 있다.
다시 도 3을 참조하면, 갱신부(132)는 421 단계에서 425 단계가 수행됨으로써 분리된 객체를 저장부(미도시)에 저장할 수 있다. 예를 들어, 갱신부(132)가 5회 반복하여 421 단계에서 425 단계를 수행하였다고 가정하면, 각각의 횟수에 대응하여 분리된 객체들(즉, 총 5개의 객체들)이 저장부(미도시)에 저장될 수 있다. 따라서, 사용자는 단말기 화면에 표시된 복귀(undo) 또는 재수행(redo) 버튼을 이용하여, 저장부(미도시)에 저장된 객체들을 선택적으로 출력할 수 있다.
도 5는 본 발명의 일 실시예에 따른 영상 처리 장치의 다른 예를 도시한 구성도이다.
도 5를 참조하면, 영상 처리 장치(100)는 인터페이스부(110), 영상 생성부(120), 분리부(130), 효과 적용부(150) 및 출력부(140)를 포함한다. 도 5에 도시된 영상 처리 장치(100)에는 본 실시예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 5에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 본 실시예와 관련된 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다.
또한, 도 5에 도시된 영상 처리 장치(100)의 인터페이스부(110), 영상 생성부(120), 분리부(130), 효과 적용부(150) 및 출력부(140)들은 각각 독립적인 장치로 존재할 수도 있음을 본 발명과 관련된 기술 분야에서 통상의 지식을 가진 자라면 알 수 있다.
또한, 도 5에 도시된 영상 처리 장치(100)의 인터페이스부(110), 영상 생성부(120), 분리부(130), 효과 적용부(150) 및 출력부(140)들은 하나 또는 복수 개의 프로세서에 해당할 수 있다. 프로세서는 다수의 논리 게이트들의 어레이로 구현될 수도 있고, 범용적인 마이크로 프로세서와 이 마이크로 프로세서에서 실행될 수 있는 프로그램이 저장된 메모리의 조합으로 구현될 수도 있다. 또한, 다른 형태의 하드웨어로 구현될 수도 있음을 본 실시예가 속하는 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다.
또한, 도 5에 도시된 인터페이스부(110), 영상 생성부(120) 및 분리부(130)는 도 1을 참조하여 상술한 바와 동일하므로, 이하 자세한 설명은 생략한다.
효과 적용부(150)는 분리된 객체를 포함하지 않는 영역을 나타내는 픽셀들에 소정의 효과를 적용한다. 구체적으로, 효과 적용부(150)는 분리부(130)로부터 전송받은 배경 영역을 나타내는 픽셀들에 소정의 효과를 적용할 수 있다.
여기에서, 소정의 효과는 배경 열화(background blur), 움직임 열화(motion blur), 모서리 필터(edge filter), 배경 스워핑(backgound swapping), 흑백 배경(black and white background) 처리 등을 의미한다.
출력부(140)는 분리된 객체를 나타내는 영역과 분리된 객체를 포함하지 않는 영역이 구별된 영상을 출력한다. 구체적으로, 출력부(140)는 분리부(130)로부터 전송받은 객체를 나타내는 영역과 객체를 나타내지 않는 영역이 구별된 영상을 출력할 수 있다. 여기에서, 구별된 영상은 객체의 외곽선을 따라 구별되는 라인 등을 표시한 영상이 될 수 있으나, 이에 한정되지 않는다
또한, 출력부(140)는 분리된 객체를 나타내는 영역과 효과가 적용된 영역이 포함된 영상을 출력할 수 있다. 구체적으로, 출력부(140)는 효과 적용부(150)로부터 전송받은 객체를 나타내는 영역과 효과가 적용된 영역이 포함된 영상을 출력할 수 있다.
도 6은 본 발명의 일 실시예에 따른 객체를 분리하는 방법의 일 예를 나타내는 흐름도이다.
도 6을 참조하면, 객체를 분리하는 방법은 도 1 및 도 5에 도시된 영상 처리 장치(100)에서 시계열적으로 처리되는 단계들로 구성된다. 따라서, 이하에서 생략된 내용이라 하더라도 도 1 및 도 5에 도시된 영상 처리 장치(100)에 관하여 이상에서 기술된 내용은 도 6의 객체를 분리하는 방법에도 적용됨을 알 수 있다.
610 단계에서, 인터페이스부(110)는 객체를 포함하는 제 1 영상을 획득한다.
620 단계에서, 인터페이스부(110)는 제 1 영상 내의 소정의 위치 정보를 포함하는 입력 신호를 수신한다.
630 단계에서, 영상 생성부(120)는 위치 정보에 기초하여 제 1 영상에 포함된 픽셀들 중 적어도 하나 이상을 선택한다.
640 단계에서, 영상 생성부(120)는 선택된 픽셀들을 이용하여, 제 1 영상이 적어도 하나 이상의 영역들로 구분된 제 2 영상을 생성한다.
650 단계에서, 분리부(130)는 제 1 영상 및 제 2 영상을 이용하여 제 1 영상에서 객체를 분리한다. 구체적으로, 분리부(130)는 제 1 영상에서 객체를 분리하는 과정을 반복적으로 수행함으로써, 제 1 영상으로부터 정밀하게 객체 분리를 수행한다.
상술한 바에 따르면, 영상에서 객체를 분리하는 방법은 알고리즘을 반복적으로 적용함으로써 입력 영상에서 정확하게 객체를 나타내는 영상을 분리할 수 있다. 또한, 사용자와의 상호 작용(interaction)을 반영하여 객체를 나타내는 영상을 분리함으로써 사용자의 의도에 대응하여 객체를 나타내는 영상을 분리할 수 있다.
또한, 입력 영상에서 객체를 나타내는 영상을 분리한 후에 배경 영상에 다양한 효과를 적용할 수 있어, 자유로운 영상 편집이 가능하다.
한편, 상술한 방법은 객체가 고정된 정지 영상뿐만 아니라, 객체가 실시간으로 움직이는 동적 영상에도 적용 가능하다. 구체적으로, 제 1 영상이 동적 영상인 경우에도, 영상 처리 장치(100)는 제 1 영상에서 움직이는 객체를 실시간으로 분리할 수 있다.
예를 들어, 영상 처리 장치(100)는 제 1 영상으로부터 가장 최근의 프레임을 캡쳐하고, 캡쳐된 프레임에서 객체를 분리한다. 그리고, 영상 처리 장치(100)는 분리된 객체를 출력한다. 그 후에, 영상 처리 장치(100)는 제 1 영상으로부터 가장 최근의 프레임을 다시 캡쳐하고, 캡쳐된 프레임에서 객체를 다시 분리한다. 그리고, 영상 처리 장치(100)는 분리된 객체를 출력한다.
영상 처리 장치(100)가 상술한 과정을 반복하여 수행함으로써, 제 1 영상이 동적 영상인 경우에도, 영상 처리 장치(100)는 제 1 영상에서 움직이는 객체를 실시간으로 분리할 수 있다.
한편, 상술한 방법은 컴퓨터에서 실행될 수 있는 프로그램으로 작성 가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 또한, 상술한 방법에서 사용된 데이터의 구조는 컴퓨터로 읽을 수 있는 기록매체에 여러 수단을 통하여 기록될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 램, USB, 플로피 디스크, 하드 디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등), PC 인터페이스(PC Interface)(예를 들면, PCI, PCI-express, Wifi 등)와 같은 저장매체를 포함한다.
본 실시예와 관련된 기술 분야에서 통상의 지식을 가진 자는 상기된 기재의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 방법들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
100: 영상 처리 장치
110: 인터페이스부
120: 영상 생성부
130: 분리부

Claims (42)

  1. 객체를 포함하는 제 1 영상을 획득하는 단계;
    상기 제 1 영상 내의 소정의 위치 정보를 포함하는 입력 신호를 수신하는 단계;
    상기 위치 정보에 기초하여 상기 제 1 영상에 포함된 픽셀들 중 적어도 하나 이상을 선택하는 단계;
    상기 선택된 적어도 하나 이상의 픽셀들을 이용하여, 상기 제 1 영상을 전경 영역, 전경 가능성이 있는 영역, 배경 영역, 배경 가능성이 있는 영역, 및 어느 영역인지 알 수 없는 영역들로 구분하는 단계;
    사용자의 추가 입력에 기초하여, 상기 구분된 각각의 영역들을 보정함으로써 제 2 영상을 생성하는 단계; 및
    상기 제 1 영상 및 상기 제 2 영상을 이용하여 상기 제 1 영상에서 상기 객체를 분리(segmentation)하는 단계;를 포함하는 영상에서 객체를 분리하는 방법.
  2. 제 1 항에 있어서,
    상기 객체를 분리하는 단계는
    상기 제 1 영상에 포함된 픽셀들의 컬러 정보 및 상기 제 2 영상에 포함된 상기 영역들의 정보에 기초하여 상기 제 1 영상에서 상기 객체를 분리하는 단계; 및
    상기 분리된 객체에 대한 정보를 이용하여 갱신된 상기 영역들의 정보 및 상기 컬러 정보에 기초하여 상기 분리된 객체에 대한 정보를 갱신하는 단계;를 포함하는 방법.
  3. 제 2 항에 있어서,
    상기 갱신하는 단계를 소정의 횟수만큼 반복하는 단계;를 더 포함하는 방법.
  4. 제 2 항에 있어서,
    상기 분리하는 단계는
    상기 컬러 정보 및 상기 영역들의 정보에 기초하여 전경(foreground) 모델 및 배경(background) 모델을 생성하는 단계;
    상기 제 1 영상에 포함된 픽셀들 간의 유사도를 나타내는 데이터 항(data term) 및 이웃하는 픽셀 간의 유사도를 나타내는 스무드 항(smoothness term)을 조합하여 상기 제 1 영상에 포함된 픽셀들의 에너지 함수를 나타내는 그래프(graph)를 구성(construction)하는 단계; 및
    상기 구성된 그래프에 그래프 컷(graph cut) 알고리즘을 적용하여 상기 제 1 영상에서 상기 객체를 분리하는 단계;를 포함하는 방법.
  5. 제 2 항에 있어서,
    상기 갱신하는 단계는
    상기 분리된 객체에 대한 정보를 이용하여 상기 제 2 영상에 포함된 상기 영역들의 정보를 갱신하는 단계;
    상기 컬러 정보 및 상기 갱신된 영역들의 정보에 기초하여 기 생성된 전경 모델 및 기 생성된 배경 모델을 갱신하는 단계;
    상기 제 1 영상에 포함된 픽셀들 간의 유사도를 나타내는 데이터 항 및 이웃하는 픽셀 간의 유사도를 나타내는 스무드 항을 조합하여 상기 제 1 영상에 포함된 픽셀들의 에너지 함수를 나타내는 그래프를 재구성(reconstruction)하는 단계; 및
    상기 재구성된 그래프에 그래프 컷 알고리즘을 적용하여 상기 분리된 객체에 대한 정보를 갱신하는 단계;를 포함하는 방법.
  6. 제 2 항에 있어서,
    상기 전경 영역 내의 소정의 위치 정보를 포함하는 입력 신호를 수신하는 단계; 및
    상기 입력 신호에 기초하여, 형상 사전 정보(shape prior)를 획득하는 단계;를 더 포함하고,
    상기 분리하는 단계는 상기 형상 사전 정보를 더 포함하여 상기 제 1 영상에서 상기 객체를 분리하는 방법.
  7. 제 6 항에 있어서,
    상기 획득하는 단계는
    상기 위치 정보에 기초하여 상기 전경 영역에 포함된 픽셀들 중 적어도 하나 이상을 선택하는 단계;
    상기 선택된 픽셀들 중 최초로 선택된 픽셀로부터 상기 객체를 나타내는 픽셀들의 가시성(visibility)을 연산하는 단계; 및
    상기 연산된 가시성을 이용하여 상기 형상 사전 정보를 획득하는 단계;를 포함하는 방법.
  8. 제 6 항에 있어서,
    상기 갱신하는 단계는 상기 형상 사전 정보를 더 포함하여 상기 분리된 객체에 대한 정보를 갱신하는 방법.
  9. 제 1 항에 있어서,
    상기 분리된 객체를 나타내는 영역과 상기 분리된 객체를 포함하지 않는 영역이 구별된 영상을 출력하는 단계;를 더 포함하는 방법.
  10. 제 1 항에 있어서,
    상기 분리된 객체를 포함하지 않는 영역을 나타내는 픽셀들에 소정의 효과를 적용하는 단계; 및
    상기 분리된 객체를 나타내는 영역과 상기 효과가 적용된 영역이 포함된 영상을 출력하는 단계;를 더 포함하는 방법.
  11. 제 10 항에 있어서,
    상기 소정의 효과는 배경 열화(background blur), 움직임 열화(motion blur), 모서리 필터(edge filter), 배경 스워핑(backgound swapping), 흑백 배경(black and white background) 처리 중 어느 하나인 방법.
  12. 제 1 항에 있어서,
    상기 입력 신호는 폐 루프(closed loop)에 대응하는 신호, 스트로크(stroke)에 대응하는 신호 및 상기 제 1 영상 내의 소정의 위치를 지정하는 신호 중 적어도 어느 하나를 포함하는 방법.
  13. 제 1 항에 있어서,
    상기 수신하는 단계는 상기 제 1 영상 내의 소정의 위치에 폐 루프를 그리는 사용자 입력을 수신하는 단계이고,
    상기 선택하는 단계는 상기 사용자 입력에 기초하여 상기 제 1 영상에 포함된 픽셀들 중 상기 폐 루프의 궤적에 대응하는 픽셀들을 선택하는 단계인 방법.
  14. 제 1 항에 있어서,
    상기 수신하는 단계는 상기 제 1 영상 내의 소정의 위치에 스트로크를 그리는 사용자 입력을 수신하는 단계이고,
    상기 선택하는 단계는 상기 사용자 입력에 기초하여 상기 제 1 영상에 포함된 픽셀들 중 상기 스트로크의 궤적에 대응하는 픽셀들을 선택하는 단계인 방법.
  15. 제 1 항에 있어서,
    상기 수신하는 단계는 상기 제 1 영상 내에 소정의 위치를 지정하는 사용자 입력을 수신하는 단계이고,
    상기 선택하는 단계는 상기 사용자 입력에 기초하여 상기 제 1 영상에 포함된 픽셀들 중 상기 지정된 위치에 대응하는 픽셀을 선택하는 단계인 방법.
  16. 제 1 항에 있어서,
    상기 제 2 영상을 생성하는 단계는
    상기 수신된 입력 신호에 기초하여 선택된 상기 제 1 영상에 포함된 픽셀들을 이용하여, 상기 제 2 영상을 생성하는 단계; 및
    상기 수신된 입력 신호에 기초하여 선택된 상기 제 1 영상에 포함된 픽셀들을 이용하여, 상기 제 2 영상을 보정하는 단계;를 포함하고,
    상기 입력 신호는 사용자가 입력한 폐 루프에 대응하는 신호, 스트로크(stroke)에 대응하는 신호 및 상기 제 1 영상 내의 소정의 위치를 지정하는 신호 중 적어도 어느 하나를 포함하는 방법.
  17. 제 16 항에 있어서,
    상기 보정하는 단계는
    상기 입력 신호가 수신되는 횟수에 대응하여 상기 제 2 영상을 반복하여 보정하는 방법.
  18. 제 4 항에 있어서,
    상기 그래프를 구성하는 단계는 상기 데이터 항과 상기 스무드 항의 상대적인 중요도를 나타내는 가중치를 더 포함하여 상기 그래프를 구성하고,
    상기 가중치는 적어도 2 이상의 후보 가중치들을 이용하여 결정되는 방법.
  19. 제 18 항에 있어서,
    상기 가중치는 상기 제 1 영상에서 상기 객체를 분리할 수 있는지에 대한 판단 결과에 기초하여 결정되는 방법.
  20. 제 4 항에 있어서,
    상기 모델을 생성하는 단계는 상기 전경 모델 및 상기 배경 모델 각각에 대하여 적색 컬러 모델, 녹색 컬러 모델 및 청색 컬러 모델을 생성하는 방법.
  21. 제 4 항에 있어서,
    상기 모델을 생성하는 단계는 상기 전경 모델 및 상기 배경 모델 각각에 대하여 그레이 스케일 강도(gray scale intensity), 제 1 텍스쳐(texture) 파라미터 및 제 2 텍스쳐 파라미터를 생성하는 방법.
  22. 제 4 항에 있어서,
    상기 모델을 생성하는 단계는 가우시안 혼합 모델(Gaussian mixture model, GMM)을 이용하여 상기 전경 모델 및 상기 배경 모델을 생성하고,
    상기 가우시안 혼합 모델에 포함된 가우시안의 개수는 상기 제 1 영상에 대응하여 적응적으로 결정되는 방법.
  23. 제 1 항 내지 제 22 항 중 어느 한 항의 방법을 컴퓨터에서 수행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  24. 객체를 포함하는 제 1 영상을 획득하고, 상기 제 1 영상 내의 소정의 위치 정보를 포함하는 입력 신호를 수신하는 인터페이스부;
    상기 위치 정보에 기초하여 상기 제 1 영상에 포함된 픽셀들 중 적어도 하나 이상을 선택하고, 상기 선택된 적어도 하나 이상의 픽셀들을 이용하여 상기 제 1 영상을 전경 영역, 전경 가능성이 있는 영역, 배경 영역, 배경 가능성이 있는 영역, 및 어느 영역인지 알 수 없는 영역들로 구분하고, 상기 구분된 각각의 영역들을 사용자의 추가 입력에 기초하여 보정함으로써 제 2 영상을 생성하는 영상 생성부; 및
    상기 제 1 영상 및 상기 제 2 영상을 이용하여 상기 제 1 영상에서 상기 객체를 분리(segmentation)하는 분리부;를 포함하는 영상에서 객체를 분리하는 장치.
  25. 제 24 항에 있어서,
    상기 분리부는
    상기 제 1 영상에 포함된 픽셀들의 컬러 정보 및 상기 제 2 영상에 포함된 상기 영역들의 정보에 기초하여 상기 제 1 영상에서 상기 객체를 분리하는 전처리부;
    상기 분리된 객체에 대한 정보를 이용하여 갱신된 상기 영역들의 정보 및 상기 컬러 정보에 기초하여 상기 분리된 객체에 대한 정보를 갱신하는 갱신부; 및
    상기 갱신부의 동작을 소정의 횟수만큼 반복시키는 제어부;를 포함하는 장치.
  26. 제 25 항에 있어서,
    상기 전처리부는
    상기 컬러 정보 및 상기 영역들의 정보에 기초하여 전경(foreground) 모델 및 배경(background) 모델을 생성하고,
    상기 제 1 영상에 포함된 픽셀들 간의 유사도를 나타내는 데이터 항(data term) 및 이웃하는 픽셀 간의 유사도를 나타내는 스무드 항(smoothness term)을 조합하여 상기 제 1 영상에 포함된 픽셀들에 대한 에너지 함수를 나타내는 그래프(graph)를 구성(construction)하고,
    상기 구성된 그래프에 그래프 컷(graph cut) 알고리즘을 적용하여 상기 제 1 영상에서 상기 객체를 분리하는 장치.
  27. 제 25 항에 있어서,
    상기 갱신부는
    상기 분리된 객체에 대한 정보를 이용하여 상기 제 2 영상에 포함된 상기 영역들의 정보를 갱신하고,
    상기 컬러 정보 및 상기 갱신된 영역들의 정보에 기초하여 기 생성된 전경 모델 및 배경 모델을 갱신하고,
    상기 제 1 영상에 포함된 픽셀들 간의 유사도를 나타내는 데이터 항 및 이웃하는 픽셀 간의 유사도를 나타내는 스무드 항을 조합하여 상기 제 1 영상에 포함된 픽셀들에 대한 에너지 함수를 나타내는 그래프를 재구성(reconstruction)하고,
    상기 재구성된 그래프에 그래프 컷 알고리즘을 적용하여 상기 분리된 객체에 대한 정보를 갱신하는 장치.
  28. 제 25 항에 있어서,
    상기 인터페이스부는 상기 전경 영역 내의 소정의 위치 정보를 포함하는 입력 신호를 수신하고,
    상기 전처리부는
    상기 입력 신호에 기초하여, 형상 사전 정보(shape prior)를 획득하고,
    상기 형상 사전 정보를 더 포함하여 상기 제 1 영상에서 상기 객체를 분리하는 장치.
  29. 제 28 항에 있어서,
    상기 전처리부는
    상기 위치 정보에 기초하여 상기 전경 영역에 포함된 픽셀들 중 적어도 하나 이상을 선택하고,
    상기 선택된 픽셀들 중 최초로 선택된 픽셀로부터 상기 객체를 나타내는 픽셀들의 가시성(visibility)을 연산하고,
    상기 연산된 가시성을 이용하여 상기 형상 사전 정보를 획득하는 장치.
  30. 제 28 항에 있어서,
    상기 갱신부는 상기 형상 사전 정보를 더 포함하여 상기 분리된 객체에 대한 정보를 갱신하는 장치.
  31. 제 24 항에 있어서,
    상기 분리된 객체를 포함하지 않는 영역을 나타내는 픽셀들에 소정의 효과를 적용하는 효과 적용부; 및
    상기 분리된 객체를 나타내는 영역과 상기 효과가 적용된 영역이 포함된 영상을 출력하는 출력부;를 더 포함하는 장치.
  32. 제 24 항에 있어서,
    상기 입력 신호는 폐 루프(closed loop)에 대응하는 신호, 스트로크(stroke)에 대응하는 신호 및 상기 제 1 영상 내의 소정의 위치를 지정하는 신호 중 적어도 어느 하나를 포함하는 장치.
  33. 제 24 항에 있어서,
    상기 인터페이스부는 상기 제 1 영상 내의 소정의 위치에 폐 루프를 그리는 사용자 입력을 수신하고,
    상기 영상 생성부는 상기 사용자 입력에 기초하여 상기 제 1 영상에 포함된 픽셀들 중 상기 폐 루프의 궤적에 대응하는 픽셀들을 선택하는 단계인 장치.
  34. 제 24 항에 있어서,
    상기 인터페이스부는 상기 제 1 영상 내의 소정의 위치에 스트로크를 그리는 사용자 입력을 수신하고,
    상기 영상 생성부는 상기 사용자 입력에 기초하여 상기 제 1 영상에 포함된 픽셀들 중 상기 스트로크의 궤적에 대응하는 픽셀들을 선택하는 장치.
  35. 제 24 항에 있어서,
    상기 인터페이스부는 상기 제 1 영상 내에 소정의 위치를 지정하는 사용자 입력을 수신하고,
    상기 영상 생성부는 상기 사용자 입력에 기초하여 상기 제 1 영상에 포함된 픽셀들 중 상기 지정된 위치에 대응하는 픽셀을 선택하는 장치.
  36. 제 24 항에 있어서,
    상기 영상 생성부는
    상기 수신된 입력 신호에 기초하여 선택된 상기 제 1 영상에 포함된 픽셀들을 이용하여 상기 제 2 영상을 생성하고, 상기 수신된 입력 신호에 기초하여 선택된 상기 제 1 영상에 포함된 픽셀들을 이용하여 상기 제 2 영상을 보정하고,
    상기 입력 신호는 사용자가 입력한 폐 루프에 대응하는 신호, 스트로크(stroke)에 대응하는 신호 및 상기 제 1 영상 내의 소정의 위치를 지정하는 신호 중 적어도 어느 하나를 포함하는 장치.
  37. 제 36 항에 있어서,
    상기 영상 생성부는 상기 입력 신호가 수신되는 횟수에 대응하여 상기 제 2 영상을 반복하여 보정하는 장치.
  38. 제 26 항에 있어서,
    상기 전처리부는 상기 데이터 항과 상기 스무드 항의 상대적인 중요도를 나타내는 가중치를 더 포함하여 상기 그래프를 구성하고,
    상기 가중치는 적어도 2 이상의 후보 가중치들을 이용하여 결정되는 장치.
  39. 제 38 항에 있어서,
    상기 가중치는 상기 제 1 영상에서 상기 객체를 분리할 수 있는지에 대한 판단 결과에 기초하여 결정되는 장치.
  40. 제 26 항에 있어서,
    상기 전처리부는 상기 전경 모델 및 상기 배경 모델 각각에 대하여 적색 컬러 모델, 녹색 컬러 모델 및 청색 컬러 모델을 생성하는 장치.
  41. 제 26 항에 있어서,
    상기 전처리부는 상기 전경 모델 및 상기 배경 모델 각각에 대하여 그레이 스케일 강도(gray scale intensity), 제 1 텍스쳐(texture) 파라미터 및 제 2 텍스쳐 파라미터를 생성하는 장치.
  42. 제 26 항에 있어서,
    상기 전처리부는 가우시안 혼합 모델(Gaussian mixture model, GMM)을 이용하여 상기 전경 모델 및 상기 배경 모델을 생성하고,
    상기 가우시안 혼합 모델에 포함된 가우시안의 개수는 상기 제 1 영상에 대응하여 적응적으로 결정되는 장치.
KR1020130101999A 2013-08-27 2013-08-27 영상에서 객체를 분리하는 방법 및 장치. KR102161052B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020130101999A KR102161052B1 (ko) 2013-08-27 2013-08-27 영상에서 객체를 분리하는 방법 및 장치.
US14/469,406 US9478040B2 (en) 2013-08-27 2014-08-26 Method and apparatus for segmenting object in image
EP14182426.8A EP2846309B1 (en) 2013-08-27 2014-08-27 Method and apparatus for segmenting object in image
US15/269,388 US10235761B2 (en) 2013-08-27 2016-09-19 Method and apparatus for segmenting object in image

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130101999A KR102161052B1 (ko) 2013-08-27 2013-08-27 영상에서 객체를 분리하는 방법 및 장치.

Publications (2)

Publication Number Publication Date
KR20150024719A KR20150024719A (ko) 2015-03-09
KR102161052B1 true KR102161052B1 (ko) 2020-09-29

Family

ID=51453620

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130101999A KR102161052B1 (ko) 2013-08-27 2013-08-27 영상에서 객체를 분리하는 방법 및 장치.

Country Status (3)

Country Link
US (2) US9478040B2 (ko)
EP (1) EP2846309B1 (ko)
KR (1) KR102161052B1 (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102161052B1 (ko) * 2013-08-27 2020-09-29 삼성전자주식회사 영상에서 객체를 분리하는 방법 및 장치.
US10885636B2 (en) 2017-11-07 2021-01-05 Electronics And Telecommunications Research Institute Object segmentation apparatus and method using Gaussian mixture model and total variation
CN111223118A (zh) * 2018-11-27 2020-06-02 富士通株式会社 图像处理装置、图像处理方法及计算机可读记录介质
US10878577B2 (en) * 2018-12-14 2020-12-29 Canon Kabushiki Kaisha Method, system and apparatus for segmenting an image of a scene
CN110276344B (zh) * 2019-06-04 2023-11-24 腾讯科技(深圳)有限公司 一种图像分割的方法、图像识别的方法以及相关装置
KR102230361B1 (ko) * 2019-09-18 2021-03-23 고려대학교 산학협력단 단일 이미지를 이용하는 배경이미지 복원장치 및 그 동작 방법
US11217020B2 (en) * 2020-03-16 2022-01-04 Snap Inc. 3D cutout image modification
CN111539993B (zh) * 2020-04-13 2021-10-19 中国人民解放军军事科学院国防科技创新研究院 基于分割的空间目标视觉跟踪方法
US11361152B2 (en) * 2020-07-20 2022-06-14 Labelbox, Inc. System and method for automated content labeling
CN113570678A (zh) * 2021-01-20 2021-10-29 腾讯科技(深圳)有限公司 基于人工智能的图像上色方法、装置、电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008052226A2 (en) 2006-10-20 2008-05-02 Microsoft Corporation Progressive cut: interactive object segmentation
US20110216976A1 (en) 2010-03-05 2011-09-08 Microsoft Corporation Updating Image Segmentation Following User Input

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69823116D1 (de) * 1997-08-05 2004-05-19 Canon Kk Bildverarbeitungsverfahren und -gerät
EP0901105A1 (en) * 1997-08-05 1999-03-10 Canon Kabushiki Kaisha Image processing apparatus
US6647146B1 (en) * 1997-08-05 2003-11-11 Canon Kabushiki Kaisha Image processing apparatus
US6349113B1 (en) * 1997-11-03 2002-02-19 At&T Corp. Method for detecting moving cast shadows object segmentation
US6975755B1 (en) * 1999-11-25 2005-12-13 Canon Kabushiki Kaisha Image processing method and apparatus
US7660473B2 (en) 2002-11-01 2010-02-09 Ricoh Co., Ltd. Error concealment using icons for JPEG and JPEG 2000 compressed images
US7660463B2 (en) 2004-06-03 2010-02-09 Microsoft Corporation Foreground extraction using iterated graph cuts
US7430339B2 (en) 2004-08-09 2008-09-30 Microsoft Corporation Border matting by dynamic programming
US20070165966A1 (en) * 2005-07-15 2007-07-19 Yissum Research Development Co. Closed form method and system for matting a foreground object in an image having a background
US7724952B2 (en) * 2006-05-15 2010-05-25 Microsoft Corporation Object matting using flash and no-flash images
US20080181507A1 (en) * 2007-01-29 2008-07-31 Intellivision Technologies Corp. Image manipulation for videos and still images
US7995841B2 (en) 2007-09-24 2011-08-09 Microsoft Corporation Hybrid graph model for unsupervised object segmentation
US7876947B2 (en) * 2007-10-10 2011-01-25 Siemens Medical Solutions Usa, Inc. System and method for detecting tagged material using alpha matting
US8175384B1 (en) * 2008-03-17 2012-05-08 Adobe Systems Incorporated Method and apparatus for discriminative alpha matting
JP2009276294A (ja) * 2008-05-16 2009-11-26 Toshiba Corp 画像処理方法
GB2478156A (en) * 2010-02-26 2011-08-31 Sony Corp Method and apparatus for generating a disparity map for stereoscopic images
US8498481B2 (en) 2010-05-07 2013-07-30 Microsoft Corporation Image segmentation using star-convexity constraints
US8625888B2 (en) * 2010-07-21 2014-01-07 Microsoft Corporation Variable kernel size image matting
US8386964B2 (en) 2010-07-21 2013-02-26 Microsoft Corporation Interactive image matting
JP5505164B2 (ja) * 2010-07-23 2014-05-28 ソニー株式会社 画像処理装置および方法、並びにプログラム
US8884980B2 (en) * 2010-09-24 2014-11-11 Taaz, Inc. System and method for changing hair color in digital images
US8855411B2 (en) * 2011-05-16 2014-10-07 Microsoft Corporation Opacity measurement using a global pixel set
US20130009989A1 (en) * 2011-07-07 2013-01-10 Li-Hui Chen Methods and systems for image segmentation and related applications
JP5947507B2 (ja) * 2011-09-01 2016-07-06 キヤノン株式会社 撮像装置及びその制御方法
KR101953306B1 (ko) 2012-02-08 2019-03-04 삼성전자주식회사 사용자 인터랙션에 기초하여 3d 영상을 생성하기 위한 방법 및 장치
EP2637139A1 (en) * 2012-03-05 2013-09-11 Thomson Licensing Method and apparatus for bi-layer segmentation
WO2013144418A1 (en) 2012-03-29 2013-10-03 Nokia Corporation Image segmentation
CN103177446B (zh) * 2013-03-13 2016-03-30 北京航空航天大学 基于邻域和非邻域平滑先验的图像前景精准提取方法
US9102055B1 (en) * 2013-03-15 2015-08-11 Industrial Perception, Inc. Detection and reconstruction of an environment to facilitate robotic interaction with the environment
KR102161052B1 (ko) * 2013-08-27 2020-09-29 삼성전자주식회사 영상에서 객체를 분리하는 방법 및 장치.
US9443316B1 (en) * 2015-07-21 2016-09-13 Sony Corporation Semi-automatic image segmentation
US20170039683A1 (en) * 2015-08-06 2017-02-09 Fuji Xerox Co., Ltd. Image processing apparatus, image processing method, image processing system, and non-transitory computer readable medium
US10540768B2 (en) * 2015-09-30 2020-01-21 Samsung Electronics Co., Ltd. Apparatus and method to segment object from image
US10089721B2 (en) * 2016-09-08 2018-10-02 Sony Corporation Image processing system and method for object boundary smoothening for image segmentation

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008052226A2 (en) 2006-10-20 2008-05-02 Microsoft Corporation Progressive cut: interactive object segmentation
US20110216976A1 (en) 2010-03-05 2011-09-08 Microsoft Corporation Updating Image Segmentation Following User Input

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"GrabCut" . Interactive Foreground Extraction using Iterated Graph Cuts, SIGGRAPH '04 ACM SIGGRAPH 2004.*
Star Shape Prior for Graph-Cut Image Segmentation, ECCV 2008: Computer Vision, 2008.10.12.*

Also Published As

Publication number Publication date
US10235761B2 (en) 2019-03-19
US20150063697A1 (en) 2015-03-05
US9478040B2 (en) 2016-10-25
EP2846309B1 (en) 2019-07-31
KR20150024719A (ko) 2015-03-09
US20170004628A1 (en) 2017-01-05
EP2846309A1 (en) 2015-03-11

Similar Documents

Publication Publication Date Title
KR102161052B1 (ko) 영상에서 객체를 분리하는 방법 및 장치.
US20200372622A1 (en) Utilizing an image exposure transformation neural network to generate a long-exposure image from a single short-exposure image
CN107077624B (zh) 跟踪手部/身体姿势
JP6188400B2 (ja) 画像処理装置、プログラム及び画像処理方法
US20170294000A1 (en) Sky editing based on image composition
US8669995B2 (en) Methods and apparatus for stroke grouping for high-level sketch editing
US20150248765A1 (en) Depth sensing using an rgb camera
EP2980755B1 (en) Method for partitioning area, and inspection device
WO2018017440A1 (en) Automatic generation of semantic-based cinemagraphs
JP2013125322A (ja) 学習装置、プログラム及び学習方法
US11915362B2 (en) UV mapping on 3D objects with the use of artificial intelligence
US11720745B2 (en) Detecting occlusion of digital ink
US11043027B2 (en) Three-dimensional graphics image processing
CN111832745A (zh) 数据增广的方法、装置及电子设备
US11276202B2 (en) Moving image generation apparatus, moving image generation method, and non-transitory recording medium
KR20120066462A (ko) 얼굴 인식 방법 및 시스템, 얼굴 인식을 위한 학습용 특징 벡터 추출 장치 및 테스트용 특징 벡터 추출 장치
US20230237777A1 (en) Information processing apparatus, learning apparatus, image recognition apparatus, information processing method, learning method, image recognition method, and non-transitory-computer-readable storage medium
US11468571B2 (en) Apparatus and method for generating image
Meng et al. Globally measuring the similarity of superpixels by binary edge maps for superpixel clustering
KR102572415B1 (ko) 레퍼런스 이미지의 검증을 통해 자연스러운 3차원 디지털 트윈을 생성하기 위한 방법 및 장치
KR101554421B1 (ko) 구조 기반 이미지 확장 방법 및 장치
CN115291864A (zh) 一种基于图神经网络的零碎图层检测方法及装置
US11748930B1 (en) Systems and methods for rigging a point cloud for animation
US20230169708A1 (en) Image and video matting
US11508083B2 (en) Image processing apparatus, image processing method, and non-transitory computer-readable storage medium

Legal Events

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