KR20180017097A - 반자동 이미지 세그먼트화 - Google Patents

반자동 이미지 세그먼트화 Download PDF

Info

Publication number
KR20180017097A
KR20180017097A KR1020187000532A KR20187000532A KR20180017097A KR 20180017097 A KR20180017097 A KR 20180017097A KR 1020187000532 A KR1020187000532 A KR 1020187000532A KR 20187000532 A KR20187000532 A KR 20187000532A KR 20180017097 A KR20180017097 A KR 20180017097A
Authority
KR
South Korea
Prior art keywords
segmentation
background
foreground
image
pixels
Prior art date
Application number
KR1020187000532A
Other languages
English (en)
Other versions
KR101989756B1 (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 소니 주식회사
Publication of KR20180017097A publication Critical patent/KR20180017097A/ko
Application granted granted Critical
Publication of KR101989756B1 publication Critical patent/KR101989756B1/ko

Links

Images

Classifications

    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2415Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
    • G06F18/24155Bayesian classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/40Software arrangements specially adapted for pattern recognition, e.g. user interfaces or toolboxes therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • G06K9/00234
    • G06K9/6253
    • G06K9/6278
    • G06K9/6857
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/143Segmentation; Edge detection involving probabilistic approaches, e.g. Markov random field [MRF] modelling
    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/94Hardware or software architectures specially adapted for image or video understanding
    • G06V10/945User interactive design; Environments; Toolboxes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/24Character recognition characterised by the processing or recognition method
    • G06V30/248Character recognition characterised by the processing or recognition method involving plural approaches, e.g. verification by template match; Resolving confusion among similar patterns, e.g. "O" versus "Q"
    • G06V30/2504Coarse or fine approaches, e.g. resolution of ambiguities or multiscale approaches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/162Detection; Localisation; Normalisation using pixel segmentation or colour matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • 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/20016Hierarchical, coarse-to-fine, multiscale or multiresolution image processing; Pyramid transform
    • 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/20076Probabilistic 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
    • 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/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • G06T2207/30201Face
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30232Surveillance

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Human Computer Interaction (AREA)
  • General Health & Medical Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

반자동(즉각적인) 컬러 이미지 세그먼트화는 사용자에 의해 주어진 포인트(예컨대, 터치 스크린 접촉)에 가까이 위치되는 객체에 대한 입력 이미지에 대해 수행된다. 사용자 선택 포인트의 둘레에 있는(그것의 주위에 있거나 그것을 둘러싸고 있는) 목표 객체의 크기, 형상, 및 컬러들의 수가 결정되고, 픽셀들이 속하는 어느 영역이 전경 또는 배경인지에 대한 결정들이 이루어진다. 그 객체를 둘러싸는 재료를 제거하는 것, 또는 마스크를 반전시켜 객체의 재료를 제거하는 것을 위해 이용될 수 있는 이진 객체 마스크가 생성된다.

Description

반자동 이미지 세그먼트화
관련 출원들에 대한 상호 참조
해당사항 없음
연방정부 후원 연구 또는 개발에 관한 진술
해당사항 없음
컴퓨터 프로그램 부록의 참조에 의한 포함
해당사항 없음
저작권 보호를 받는 자료의 공지
본 특허 문서의 자료의 일부는 미국 및 다른 국가들의 저작권법 하에서 저작권 보호를 받는다. 저작권 권리의 소유자는, 특허 문서 또는 특허 개시내용의 타인에 의한 팩시밀리 복사가 미국 특허청의 공개적으로 입수가능한 파일이나 기록에 나타나는 경우라면 이의가 없지만, 그렇지 않다면 모든 저작권 권리를 보유한다. 이로써, 저작권 소유자는, 37 C.F.R. § 1.14에 따른 그 권리를 제한 없이 포함하여, 본 특허 문서를 비밀로 유지할 그 어떠한 권리도 포기하지 않는다.
기술분야
본 발명은 일반적으로 이미지 프로세싱에 관한 것으로, 더 구체적으로는 반자동 컬러 이미지 세그먼트화에 관한 것이다.
이미지 세그먼트화는 컬러 이미지를 영역들로 구획하는 프로세스이다. 가장 단순한 경우는 알려진 특성들을 갖는 전경 객체(foreground object)를 배경으로부터 분리시키는 것을 수반한다.
객체의 이미지 영역을 그것의 주변으로부터 세그먼트화하기 위한 상이한 접근법들이 시도되어 왔다. 가장 단순한 접근법은 아마도 임계화에 기초한 것이다. 예를 들어, 사용자 선택 포인트가 주어진다면, 세그먼트화된 객체는 특정 범위 내의 사용자 선택 포인트에서의 컬러 값(중심(centroid))과 유사한 컬러 값들을 갖는 인접한 픽셀들의 집합(collection)일 것이다. 이러한 방법은 단색 객체들에 대해서만 기능하고, 그렇지 않으면 사용자는 다수의 중심 값들을 선택하고, 다색 객체들의 세그먼트화를 위해 수동으로 컬러 범위들을 선택하여, 선택된 객체의 모든 요소들을 획득하는 것이 요구될 것이다.
'그랩-컷(grab-cut)' 접근법은 회색-스케일 이미지 세그먼트화를 위한 '그래프-컷(graph-cuts)' 방법의 수정된 버전인 다른 컬러 이미지 세그먼트화 방법인데, 여기서 2개의 클래스들, 즉, 전경 및 배경에 대한 회색 범위들이 전경 또는 배경 픽셀들의 분산(variance)에 의해 자동으로 선택된다. 그랩-컷에서, 각각의 전경 또는 배경 클래스는 다색 객체들을 다루기 위해 몇몇 서브-클래스들로 추가로 분할된다. 각각의 서브-클래스는, 벡터 값의 픽셀(즉, 적색, 녹색, 및 청색)로 인해, 중심 컬러 값 및 공분산 행렬로 표현된다. 고전적인 의미에서, 그러한 모델은 혼합 모델이라고 지칭된다.
종종, 컬러 픽셀들의 확률 밀도 함수는 중심들 및 공분산 행렬들로 파라미터화된 가우스 함수들의 가중 선형 결합에 의해 근사화되고, 그것은 그 후에 가우스 혼합 모델(Gaussian mixture model)(GMM)이라고 불린다. GMM을 사용하면, 비표지된 픽셀(unlabeled pixel)이 가장 가까운 클래스들로 분류되는데, 여기서 비표지된 픽셀과 각각의 클래스 사이의 거리는 중심 및 공분산 행렬로 계산된다. 이 접근법은 단지 고전적인 베이즈 분류기(Bayes classifier)일 뿐이다. 그랩-컷의 신규성은 거리 측정을 위한 보정 항(correction term)(또는 평활화 항)이다. 비표지된 픽셀 주위의 로컬 그래디언트들의 분석이 고려되고, 그것은 그랩-컷이 임계 접근법보다 더 양호하게 수행되는 하나의 이유이다. 그러나, 그랩-컷은 사용자에게 관심있는 객체 주위에 박스를 입력할 것을 요구한다. 사실상 이러한 박스는 객체의 위치뿐만 아니라 비정밀한(rough) 크기를 제공한다. 세그먼트화된 객체의 작은 보정을 위해 추가의 사용자 입력들이 요구된다.
그러나, 상술된 바와 같이, 적절한 이미지 세그먼트화는 전형적으로 적절한 세그먼트화 결과들에 도달하기 위해 상당한 사용자 입력을 수반한다.
따라서, 종래의 세그먼트화 방법들의 결점들을 극복하면서, 반자동 이미지 세그먼트화를 가능하게 하기 위해 충분히 정확한 이미지 세그먼트화 방법에 대한 필요성이 존재한다.
본 개시내용에서, 사용자에 의해 주어진 포인트에 가까이 위치되는 객체를 반자동으로(즉각적으로) 세그먼트화하는 것을 목표로 하는 컬러 이미지가 수신된다. 이전의 접근법들은, 강건성, 평활화 항으로 인한 계산 복잡성, 및 사용자 입력들의 단순성의 관점에서, 이러한 레벨의 반자동 세그먼트화를 수행하기에는 부적절하다.
도 1a 및 도 1b는 반자동 이미지 세그먼트화의 예시적인 실시예를 예시한다. 도 1a에서, 사용자가 이미지 내의 객체를 선택하는 것이 도시된다. 터치 입력이 예시되어 있지만, 터치 입력(접촉 및 비접촉), 객체로의 커서 이동, 및 세그먼트화될 객체가 표면상 위치되는 이미지 내의 특정 위치를 가리키는 유사한 수단을 포함하지만 이들로 제한되지 않는 다른 사용자 선택 입력들이 유사하게 이용될 수 있다는 것을 이해해야 한다. 이미지 객체 내의 포인팅 시에, 그 객체와 연관된 픽셀들은 도 1b에 도시되는 것으로 자동으로 세그먼트화된다. 이 예는 객체를 자체적으로 세그먼트화하는 것(배경을 폐기하는 것)을 예시하지만, 대안적으로, 객체가 이미지의 나머지로부터 제거될 수 있거나, 또는 본 개시내용의 교시로부터 벗어남이 없이 세그먼트화가 다른 방식으로 이용될 수 있다는 것을 이해해야 한다.
이러한 세그먼트화 프로세스를 정확히 수행하기 위해 어떠한 추가적인 사용자 입력들도 요구되지 않는다. 그에 따라, 개시된 방법은 사용자 선택 포인트의 둘레에 있는(그것의 주위에 있거나 그것을 둘러싸고 있는) 목표 객체의 크기, 형상, 및 컬러들의 수를 반자동으로 추정하도록 구성된다. 일단 세그먼트화가 시작된다면, 이 방법은 픽셀들이 속하는 어느 영역이 전경 또는 배경인지를 자체적으로 판정한다. 사용자 선택은 설명된 프로세스의 유일한 비자동화된 부분이지만, 본 발명의 교시로부터 벗어남이 없이 다른 단계들(예컨대, 파라미터 선택, 검증 단계, 세그먼트화의 객체의 선택 등)이 덜 바람직하게 추가될 수 있다. 본 개시내용은 반자동 이미지 세그먼트화 시스템의 일반적인 프레임워크를 나타낸다.
본 명세서의 하기 부분들에서 본 발명의 추가의 양태들이 드러날 것이며, 상세한 설명은 제한을 두는 일 없이 본 발명의 선호되는 실시예들을 완전히 개시할 목적을 위한 것이다.
본 발명은 예시 목적들만을 위한 하기 도면들을 참조하여 더 완전히 이해될 것이다:
도 1a 및 도 1b는 본 개시내용의 실시예에 따라 수행되는 바와 같은 객체의 사용자 선택(도 1a) 및 그것의 주변으로부터 세그먼트화된 선택된 객체(도 1b)를 도시하는 이미지들이다.
도 2a 및 도 2b는 본 개시내용의 실시예에 따른 반자동 세그먼트화의 흐름도이다.
도 3은 본 개시내용의 실시예에 따른 반자동의 알려진 객체 세그먼트화의 흐름도이다.
도 4는 본 개시내용의 실시예에 따른 반자동의 알려지지 않은 객체 세그먼트화의 흐름도이다.
도 5는 본 개시내용의 실시예에 따른 기대치 최대화(expectation-maximization)(EM)를 사용하는 반자동 세그먼트화의 흐름도이다.
도 6은 본 개시내용의 실시예에 따른 반자동 이미지 세그먼트화 동안의 홀 복구(hole recovery)의 흐름도이다.
도 7a 내지 도 7f는 본 개시내용의 실시예에 따른 반자동 이미지 세그먼트화 프로세스에서의 단계들을 상세화한 이미지들이다.
1. 도입부.
본 개시내용(시스템/방법/장치)은 세그먼트화의 배경 기술에서 발견된 문제들을 극복하기 위해 컬러 히스토그램 콘트라스트(color histogram contrast)에 의한 돌출부 검출의 다수의 요소들을 이용한다.
1.1. 반자동 세그먼트화
본 개시내용은 2개의 타입의 객체들: 본 명세서에서 인간 객체들로서 예시된 알려진 객체들, 및 본 명세서에서 비-인간 객체들로서 예시된 알려지지 않은 객체들을 고려하도록 구성된다. 이러한 상이한 객체 타입들에 대해 2개의 상이하지만 유사한 방법들이 이용된다.
1.2 EM 방법
싱글-터치 세그먼트화 문제는, 특히 객체의 크기 및 형상, 컬러들(즉, 클래스 파라미터들)의 수를 포함하는 중요한 정보가, 예컨대 사용자 입력에 응답하여, 시스템에 제공되지 않는다는 점에서, 도전과제로 된다. 클래스 정보(파라미터들)가 없는 분류 문제는 무감독 분류 문제라고 지칭된다. 세그먼트화 문제를 해결함에 있어서, 시스템은 픽셀들을 분류하고 동시에 클래스 파라미터들을 추정하도록 구성된다. 이 문제를 해결하기 위한 하나의 접근법은 기대치 최대화(EM) 알고리즘이라고 불린다. 이는 본 개시내용이 본 개시내용의 실시예에 따른 조인트 베이즈 분류기(joint Bayes classifier)를 사용하여 클래스 파라미터들 및 객체 마스크를 추정하기 위해 이용된다.
1.3 멀티-스케일 스킴
세그먼트화 프로세스의 안정성을 개선시키고 계산 비용을 감소시키기 위해, 멀티-스케일 스킴에 의존한다. 이러한 멀티-스케일 프로세스에서, 마스크는 비정밀한 해상도에서 추정된 후에, 보다 정밀한 해상도에서 점차적으로 세밀화된다. 16분의 1(1/16) 해상도로 다운스케일링(downscaling)하기 위한 예들이 주어지는 한편, 본 개시내용의 실시예들은 또한 입력 이미지를 64분의 1(1/64) 해상도로 다운스케일링하도록 구성된다. 본 개시내용은 본 개시내용의 교시로부터 벗어남이 없이 임의의 실제 레벨로의 다운스케일링을 이용할 수 있다는 것을 이해해야 한다.
1.4 알려진 객체들의 구별
실제 세그먼트화를 수행하기 전에, 시스템은 주어진 이미지에 존재할 수 있는 임의의 얼굴을 발견하기 위한 얼굴 검출 프로세스(방법)로 본 명세서에서 인간 객체들에 대해 예시되는 알려진 객체 검출 프로세스를 수행한다. 검출된 얼굴들을 사용하여, 연관된 인간 객체들이 사전 세그먼트화된다(pre-segmented). 그 후에, 사용자 선택 포인트가 인간 객체들 중 임의의 인간 객체의 영역 내에 있는지가 결정된다. 선택 포인트가 이러한 인간 객체들 중 하나의 인간 객체 내에 있는 경우, 그러면 객체 마스크가 사전 세그먼트화된 결과들을 사용하여 초기화되고, 객체 마스크가 그 후에 보다 정밀한 해상도에서 세밀화된다. 본 개시내용의 적어도 하나의 실시예에서, 보행자(전신 인간) 검출 또는 다른 객체 검출 방법들의 프로세스가 특정 객체들의 위치들 및 크기들을 식별하기 위해 이용될 수 있다. 얼굴 검출 프로세스는 단지 예이지만, 본 기술분야의 통상의 기술자는 차량 검출, 보행자(전신 인간) 등을 포함하지만 이들로 제한되지 않는 객체 검출의 다른 형태들이 본 개시내용으로부터 벗어남이 없이 이용가능하고 유사하게 이용될 수 있다는 것을 이해할 것이라는 것을 이해해야 한다.
1.5 알려지지 않은 객체들의 구별
알려지지 않은 객체들의 경우, 이 방법은 세그먼트화 프로세스에서 일부 중단 기준들이 설정된 이진 탐색 방법(binary search method)에 의해 원형 초기 마스크의 최상의 크기를 우선 탐색한다. EM 방법이 수렴(converge)할 때에만, 세그먼트화가 성공적으로 종료된다. 세그먼트화 프로세스가 어떻게 종료되는지에 기초하여, 초기 마스크의 최적의 크기가 결정된다.
2. 기술적인 세부사항들 및 실시예들.
도 2a 및 도 2b는 본 개시내용에 따른 반자동 세그먼트화 프로세스의 예시적인 실시예(10)를 예시한다. 이미지 다운샘플링의 다수의 스테이지들을 수행하는 이미지 피라미드 구축(image pyramid building)(14)을 위해 제공되는(13) 사용자 선택 포인트(x, y 이미지 좌표), 및 바람직하게는 그것의 깊이 맵 및 히스토그램 콘트라스트를 갖는 컬러 이미지와 같은 오리지널 입력 데이터(12)가 수신된다. 제1 다운샘플링(18)이 수행되고 오리지널 해상도의 4분의 1(¼), 즉, 수평 및 수직 방향들 각각에서의 2분의 1(½) 해상도의 감소인 것으로서 예시되는 바와 같은 보다 낮은 해상도에서 이미지를 출력한다(18). 제2 다운샘플링이 그 후에 수행되어(20), 여기서 오리지널 이미지 해상도의 16분의 1(1/16)로서 도시된 훨씬 더 낮은 해상도를 출력한다(22). 특정 실시예들에서, 이미지는 스테이지 당 다운샘플링의 양을 증가시키는 것, 또는 다운샘플링 스테이지들의 수를 증가시키는 것에 의해 보다 큰 범위로 다운샘플링될 수 있다. 증가된 레벨들의 다운샘플링은 입력 이미지가 매우 높은 픽셀 카운트(예컨대, 고해상도 또는 큰 이미지 크기)를 가질 때 특히 유용하다. 알려진 객체 세그먼트화(24)는 다운스케일링된 이미지 상에서 수행된다. 이러한 세그먼트화는, 본 명세서에서 인간 객체들을 고려하여 예시되는, 알려진 객체들의 사전 세그먼트화이다. 사용자가 후속 세그먼트화 판정에서 이미지의 상이한 위치를 선택하는 경우에, 사전 세그먼트화 결과들이 메모리에 저장된다. 사용자 선택 포인트가 알려진 객체들 중 임의의 것 내측에 있는지의 결정이 이루어진다(26). 예(yes)인 경우(36), 그러면 사용자 선택 객체의 세그먼트화 마스크가 사전 세그먼트화된 결과들로부터 픽업되는 객체 마스크 생성(38)이 수행되고, 객체 마스크가 생성된다(40). 객체가 알려진 객체가 아닌 경우(28)(사용자가 알려지지 않은 타입의 객체를 선택함(예컨대, 터치함)), 그러면, 도 4에 도시된 바와 같이, 알려지지 않은 객체 세그먼트화 프로세스(30)가 수행된다. 알려지지 않은 객체 세그먼트화가 실패하는 경우(32), 그러면 사용자 선택의 포인트 둘레의 주어진 영역을 둘러싸는 원형 마스크와 같은 디폴트 마스크가 리턴된다. 그렇지 않으면, 알려지지 않은 객체에 대해 객체 마스크가 생성된다(34). 그 후에, 객체 마스크는, 알려진 객체에 대한 것이든 또는 알려지지 않은 객체에 대한 것이든 간에, 예컨대 최근린 방법(nearest neighbor method)에 의해 업스케일링되어(42) 마스크(44)를 출력한다. 마스크는 여전히 낮아진 해상도로, 예컨대 이러한 예에 따른 4분의 1(¼) 해상도로 있다는 것에 유의해야 한다.
그 후에, 객체 마스크(44) 및 감소된 해상도 이미지(18)를 다루는 세그먼트화가 보다 정밀한 이미지 해상도에서 수행된다(46). 이러한 스테이지에서, 시스템은 보다 낮은 이미지 해상도에서 추정된 양호한 마스크를 이미 갖고 있다. 그 후에, 이 방법은 도 5에서 설명된 것과 같은 동일한 세그먼트화 방법을 사용하여 업스케일링된 객체 마스크를 세밀화한다. 이러한 세그먼트화 동안 실패가 발생하는 경우(48), 그러면 세그먼트화 프로세스가 중단되고 업스케일링된 유효 마스크가 최종 결과로서 리턴된다. 그렇지 않으면, 성공적인 세그먼트화를 위해, 예컨대 여기서는 4분의 1(3/4) 해상도로서 보여지는 이러한 낮아진 해상도에서 마스크가 출력된다(50). 그 후에, 성공적인 객체 마스크에 대해 업스케일링(52)이 수행되어, 오리지널 해상도에서의 초기 마스크(54)를 생성한다. 일반적으로, 이러한 세그먼트화 및 업스케일링 프로세스는 이미지가 다운샘플링될 때까지 다수 회 반복된다는 것을 이해해야 한다. 그 후에, 오리지널 이미지 해상도에서 세그먼트화가 수행된다(56). 실패가 검출되는 경우(58), 그러면 세그먼트화 프로세스가 중단되고 업스케일링된 유효 마스크가 최종 결과로서 리턴된다. 성공적인 세그먼트화는 오리지널 해상도에서 홀들이 없는 마스크를 생성하여(80) 홀 복구 프로세스(62)에 의해 수신된다. 홀 복구가 실패하는 경우(64), 그러면 프로세스가 중단되고 오리지널 해상도에서 홀들이 없는 마스크가 리턴된다. 마침내, 예컨대 도 6에서 설명된 방법을 사용하여, 추정된 객체 마스크에 홀 복구 프로세스가 적용되어 객체의 홀을 복구하여, 추정된 객체 마스크를 출력한다(66).
이러한 도면 및 다른 도면들에 도시된, 개시된 시스템/장치/방법은 프로세서에 의해 실행될 때 본 개시내용의 텍스트 및 도면들 전반에 걸쳐 설명된 이미징 프로세싱 단계들을 수행하는 명령어들을 저장하기 위한 적어도 하나의 메모리(89b)에 커플링되는 적어도 하나의 프로세서(89a)를 포함하는 것과 같은 컴퓨터 프로세싱(68)에 의해 바람직하게 수행되는 이미지 프로세싱의 사용을 수반한다는 것을 이해해야 한다. 예시의 단순화를 위해, 프로세싱 블록은 각각의 도면에 도시되지 않는다.
도 3은 본 개시내용에 따른 알려진 객체 세그먼트화의 예시적인 실시예(70)를 예시한다. 얼굴 검출 프로세스(72)에 의해 임의의 얼굴 위치들 및 이들의 비정밀한 크기들을 우선 발견함으로써 비정밀한 인간 객체 세그먼트화가 수행된다. 이러한 얼굴들 각각에 대해(74), 예컨대 얼굴 주위의 가능한 모발 부분에 대한 경계(예컨대, 직사각형), 및 초기 배경 영역에 대한 모발 경계 주위의 다른 경계(예컨대, 직사각형)를 드로잉함으로써, 초기 마스크가 생성되고(76), 그 후에 얼굴 및 모발 경계들을 초기 전경 영역으로 하는 세그먼트화(78)를 시작한다. 이러한 초기 세그먼트화(78)는 바람직하게는 다운스케일링된 이미지, 깊이 및 히스토그램 콘트라스트(80)를 이용하도록 구성된다. 예로서, 오리지널의 1/16의 해상도가 이용될 수 있다. 그 후에, 인간 객체 마스크가 저장된다(82). 루프가 다음 얼굴(84)로 계속되고, 검출된 얼굴들 각각과 연관된 인간 객체들의 모든 초기 세그먼트화가 수행될 때까지 더 많은 인간 객체 세그먼트화를 위해 블록 76으로 다시 리턴된다. 본 명세서에서 인간 객체들로서 예시된 알려진 객체들을 구별함에 있어서 다양한 접근법들이 개별적으로 또는 임의의 원하는 조합으로 이용될 수 있다는 것을 이해해야 한다. 일단 이러한 프로세스가 완료된다면, 그 후에 추정된 인간 객체 마스크들이 리턴된다(86).
깊이 맵 및 히스토그램 콘트라스트 맵은 본 특허 출원의 대상이 아닌 별개의 출원들에 의해 제공된다. 깊이 맵 추정치들은 예를 들어 상이한 포커스 설정들로 캡처된 일련의 이미지들로부터 획득될 수 있다. 히스토그램 콘트라스트 맵은 세그먼트화 프로세스에 앞서 계산된다.
세그먼트화 프로세스는 전경 또는 배경으로의 픽셀들의 분류로서 간주될 수 있다. 개시된 세그먼트화에서, 픽셀 컬러 값들(예컨대, 적색, 녹색, 청색)을 이용하는 것에 더하여, 각각의 픽셀에 대한 깊이 및 히스토그램 콘트라스트를 포함하는 벡터 X가 X = [적색, 녹색, 청색, 깊이, 히스토그램 콘트라스트]로서 형성된다. 이에 응답하여, 전경은 5 x 1 벡터들을 분류함으로써 세그먼트화된다.
도 4는 본 개시내용에 따른 알려지지 않은 객체 세그먼트화의 예시적인 실시예(90)를 예시한다. 이 프로세스는 최적의 초기 마스크 크기의 이진 탐색에 응답하여 수행된다. 최소 및 최대 마스크 직경들, 즉, dmin 및 dmax는 이진 탐색 알고리즘에 대한 최대 수(94)의 반복들(N)을 위해 초기화된다(92).
이전 시도로부터 배경 영역이 추가되는 사용자 선택 포인트(98) 주위에 설정된 직경 d = (dmax - dmin)/2를 갖는 초기 원형 객체 마스크가 생성된다(96). 제1 패스(pass)에서, 초기 배경에 대해 전경 영역 주위에서 약간 보다 큰 원이 선택된다. 세그먼트화 프로세스(100)가 다운스케일링된 이미지, 깊이 및 히스토그램 콘트라스트(102)(예컨대, 1/16 해상도)로 시작된다. 세그먼트화가 성공적인지의 결정이 이루어진다(104). 세그먼트화가 성공적으로 종료되는 경우, 그러면 프로세스가 중단되는데, 이때 탐색이 추정된 객체 마스크를 리턴한다(106). 그렇지 않으면, 실패한 세그먼트화(108)에 대해 프로세싱(110)이 수행된다. 시간이 소진되었기 때문에, 또는 반복들의 최대 수가 세그먼트화 함수에 도달되었기 때문에, 또는 객체 마스크 크기가 최대 크기를 초과하였기 때문에 세그먼트화가 실패한 경우, 그러면 110의 dmax가 d만큼 업데이팅되는데, 예컨대 dmax = (dmax - dmin)/2이다. 또는 객체 크기가 너무 작아졌기 때문에 세그먼트화가 실패한 경우, 그러면 dmin은 d만큼 업데이팅되는데, 예컨대 dmin = (dmax - dmin)/2이고, 이때 원형 마스크가 출력되고(112), 다음 n이 선택되고(114) 루프 임계치(n > N)에 대해 체크된다(116). N에 도달되지 않은 경우(118), 블록 94로의 리턴이 이루어진다. 그렇지 않으면, n > N인 경우, 직경 d를 갖는 원형 마스크가 리턴된다(120).
도 5는 본 개시내용에 따른 기대치 최대화(EM)를 사용하는 세그먼트화의 예시적인 실시예(130)를 예시한다. 이미지, 그것의 깊이, 히스토그램 콘트라스트, 및 그것의 초기 마스크를 포함하는 정보(132)가 주어진다면, 이러한 방법은 평균 제곱 오차(mean square error)들에 기초하여 각각의 전경 또는 배경에 대한 최적의 클래스 수를 우선 추정하고(134), 전경 또는 배경 픽셀들을 단순 양자화기(예컨대, 최소 분산 분류기)에 의해 양자화하여 전경 및/또는 배경 영역들에 대한 초기 클래스들을 생성한다. 입력 이미지는 사용자의 카메라 또는 모바일 디바이스와 같은 이미지 캡처 디바이스에 의해 캡처된다는 것에 유의할 것이다. 깊이 맵은 본 기술분야에 알려져 있는 바와 같이 카메라 또는 모바일 디바이스 상에서 실행되는 별개의 애플리케이션에 의해 추정된다.
평가 포인트들이 그 후에 이미지에서 발견되는데(136), 이때 이 방법은 전경-배경 경계에 가까이 위치되는 포인트들만을 평가하여 계산 비용을 감소시킨다. 그 후에, 클래스 파라미터들이 현재 클래스들에 기초하여 업데이팅(또는 생성)되고(138)(E-단계), 그 다음에 본 개시내용에 따른 조인트 베이즈 분류기를 사용하여 픽셀들을 평가하고 평가 포인트들에서 픽셀들을 분류한다(140)(M-단계). 그 후에, 홀들이 전경 영역 내에서 제거된다(142). 임의의 픽셀들이 이동되었는지의 결정이 이루어진다(144). 전경 클래스들 내지 배경 클래스들 사이에서 어떠한 픽셀들도 이동되지 않은 경우(146), 단계 150으로 진행하기 전에, 전경 픽셀들 다음에 비표지된 픽셀들이 추가된다(148). 그렇지 않으면, 픽셀들이 이동된 경우 실행 경로(158)가 후속된다. 새로운 영역들이 추가되었는지의 결정(150)이 이루어진다. 어떠한 새로운 영역들도 추가되지 않은 경우, 그러면 세그먼트화는 성공적으로 완료되었고, 객체 마스크는 리턴되고(152), 그렇지 않으면 새로운 영역이 있게 된다(154).
임의의 픽셀들이 이동되었거나, 또는 임의의 새로운 영역들이 추가된 경우, 그러면 중단 기준들이 평가된다. 마스크가 너무 작은지의 결정(158), 마스크가 너무 큰지의 결정(160), 최대 반복들에 도달되었는지의 결정(162), 실행 시간 값에 도달되었는지의 결정(164)을 포함하는 중단 기준이 순서대로 체크된다. 이러한 중단 조건들 중 임의의 것이 충족되는 경우, 그러면 세그먼트화가 실패하였지만 초기 세그먼트화 마스크를 리턴한다는 것, 그리고 적어도 하나의 선호되는 실시예에서는 세그먼트화 실패의 원인을 또한 리턴한다는 것을 나타내는 리턴(165)이 이루어진다. 세그먼트화 실패의 원인을 리턴하는 것은 초기 객체 크기의 이진 탐색을 위해 사용된다는 것을 이해해야 한다. 중단 조건들 중 어느 것도 충족되지 않는 경우, 그러면 프로세스가 사용자에 의해 취소/차단되었는지를 결정하기 위해 블록 186이 실행된다. 사용자에 의해 프로세스가 취소된 경우, 그러면 클린업(clean up) 및 종료(168)가 수행되고, 그렇지 않으면 단계 134로 진행하는 다른 세그먼트화 시도가 이루어진다.
도 6은 본 개시내용에 따른 기대치 최대화(EM) 방법에 의한 홀 복구의 예시적인 실시예(170)를 예시한다. 이미지, 그것의 깊이, 히스토그램 콘트라스트, 및 그것의 초기 마스크를 포함하는 정보(172)가 주어진다면, 이러한 방법은 평균 제곱 오차들에 기초하여 각각의 전경 또는 배경에 대한 최적의 적응 클래스 수(adaptive class number)를 우선 추정하고(174), 전경 또는 배경 픽셀들을 단순 양자화기(예컨대, 최소 분산 분류기)에 의해 양자화하여 이러한 전경 또는 배경 영역들에 대한 초기 클래스들을 생성한다. 전경 픽셀들이 가장 가까운 배경 클래스에 얼마나 가까운지를 나타내는 신뢰도 맵이 생성된다(178). 그 후에, 평가 포인트들이 발견된다(178). 이러한 실시예는 단지 낮은 신뢰도 값들을 갖는 전경 픽셀들만을 평가한다는 것에 유의할 것이다. 그 후에, 클래스 파라미터들의 업데이팅(또는 생성)이 현재 클래스들에 기초하여 수행된다(180)(E-단계). 그 후에, 평가 포인트들에서 픽셀들을 분류하는 조인트 베이즈 분류기(182)를 사용하여 픽셀들이 평가된다(182)(M-단계). 조인트 베이즈 분류기는 본 출원의 대상이 아닌 별개의 출원이라는 것을 이해해야 한다.
임의의 픽셀들이 이동되었는지의 결정이 이루진다(184). 전경 클래스들 내지 배경 클래스들 사이에서 어떠한 픽셀들도 이동하지 않은 경우, 그러면 세그먼트화가 성공적으로 종료되고(186), 이때 추정된 객체 마스크가 리턴된다. 그렇지 않으면, 임의의 픽셀들이 이동된 경우(188), 그러면 다수의 중단 기준이 순서대로 평가되고, 임의의 중단 조건들이 충족되는 경우, 그러면 세그먼트화가 실패하고(197) 초기 마스크가 리턴된다. 이러한 중단 기준은 마스크가 너무 작은지 여부(190), 마스크가 너무 큰지(192), 반복들의 최대 수에 도달되었는지(194), 그리고 실행 시간 기준에 도달/초과되었는지(198)의 결정들을 포함한다. 중단 기준 중 어느 것도 충족되지 않는 경우, 그러면 프로세스가 취소되었는지를 우선 체크한 후에(198) 프로세스가 계속된다. 프로세스가 취소된 경우(200), 그러면 클린업이 수행되고 종료가 이루어지고, 그렇지 않으면 루프의 상단에서의 단계 174로의 리턴이 이루어진다.
3. 반자동 세그먼트화의 결과들
도 7a 내지 도 7f는 본 개시내용에 따른 인간 객체들에 대한 반자동 세그먼트화의 예를 예시한다. 도 7a에서, 제1 단계가 인간 객체에 대한 초기 배경(210)의 선택으로 도시된다. 그 후에, 얼굴 검출에 응답하여, 박스가 얼굴(212) 주위에, 그리고 배경 영역에 대한 모발 영역(214) 주위에 드로잉된다. 도 7b에는, 초기 이진 세그먼트화 마스크를 생성하는 제2 단계가 도시되는데, 여기서 회색(218)은 배경이고, 백색(220)은 얼굴 및 모발 영역(전경)인 한편, 흑색 영역(216)은 관심있는 영역의 외측이다. 도 7c에는, 본 개시내용의 조인트 베이즈 분류기(JBC)를 사용하여 초기 이진 세그먼트화 마스크를 세밀화하는 제3 단계가 도시된다. 관심있는 영역(region of interest)(ROI)은 전경 영역들이 현재 ROL의 에지에 도달하거나 또는 그에 너무 가까워지는 곳에서/때에, 좌측, 우측, 상향, 및 하향으로 확장되는 것으로 도시된다. 확장된 객체 영역은 도 7d에 도시되고, 그 자체가 추가로 확장될 수 있다. 도 7e에는 중단 기준 중 하나가 만족될 때 세그먼트화가 종료되는 제4 단계가 도시된다. 도 7f는 추정된 세그먼트화 마스크를 이진화하는 것에 응답하여 인간 객체를 분리시키기 위해 생성된 객체 마스크를 도시한다.
4. 적용 영역들
상술된 바와 같이, 본 개시내용의 반자동 세그먼트화 프로세스는 디지털 카메라들, 또는 이미지들을 프로세싱하도록 구성된 다른 컴퓨터 디바이스들 내에서 적용될 수 있다. 히스토그램 콘트라스트를 계산하는 기능은 개시된 세그먼트화 구현에서 이용된다. 깊이는 별개의 애플리케이션에 의해 추정되고, 깊이 정보가 이용가능하지 않은 경우, 본 개시내용의 적어도 하나의 실시예는 깊이 정보 없이 객체 마스크를 추정하기 위해 진행한다. 배경으로부터 객체들을, 또는 선택된 객체로부터 배경을 세그먼트화하는 것 외에도, 본 개시내용은 로봇 산업에서의 머신 비전, 및 비디오 감시의 분야들에서와 같은 다른 애플리케이션들에서 이용될 수 있다.
5. 컴퓨터 프로세서 상에서 실행되는 방법 단계들
제시된 기술에서 설명된 향상들은 다양한 이미지 프로세싱 시스템들 내에서 쉽게 구현될 수 있다. 특히, 프로세싱 오버헤드 요건들은, 디스플레이 및 사용자 인터페이스를 갖는, 디지털 카메라 디바이스 또는 셀룰러 폰 디바이스 내에서 방법이 수행되게 하도록 충분히 낮다. 디지털 카메라들 및 셀룰러 폰들은, 다른 이미지 프로세싱 디바이스들과 함께, 바람직하게는 하나 이상의 컴퓨터 프로세서 디바이스들(예컨대, CPU, 마이크로프로세서, 마이크로제어기, 컴퓨터 가능 ASIC 등) 및 연관된 메모리(예컨대, RAM, DRAM, NVRAM, FLASH, 컴퓨터 판독가능 매체들 등)를 포함하도록 구현됨으로써 메모리에 저장되고 프로세서 상에서 실행가능한 프로그래밍이 본 명세서에서 설명된 다양한 프로세스 방법들의 단계들을 수행한다는 것을 또한 이해해야 한다. 제시된 기술은 메모리 및 컴퓨터 판독가능 매체들과 관련하여, 이들이 비일시적이어서 그에 따라 일시적 전자 신호를 구성하지 않는 한 비제한적이다.
본 발명의 실시예들은 컴퓨터 프로그램 제품들로서 또한 구현될 수 있는 알고리즘들, 공식들, 또는 다른 계산 표시들, 및/또는 본 발명의 실시예들에 따른 방법들 및 시스템들의 플로우차트 예시들을 참조하여 설명될 수 있다. 이와 관련하여, 플로우차트, 알고리즘, 공식, 또는 계산 표시의 각각의 블록 또는 단계, 및 플로우차트, 알고리즘, 공식, 또는 계산 표현에서의 블록들(및/또는 단계들)의 조합들은 컴퓨터 판독가능 프로그램 코드 로직으로 구현된 하나 이상의 컴퓨터 프로그램 명령어들을 포함하는 하드웨어, 펌웨어, 및/또는 소프트웨어와 같은 다양한 수단에 의해 구현될 수 있다. 이해되는 바와 같이, 임의의 그러한 컴퓨터 프로그램 명령어들은 범용 컴퓨터 또는 특수 목적 컴퓨터를 제한 없이 포함하는 컴퓨터, 또는 머신을 생성하기 위한 다른 프로그래밍가능 프로세싱 장치에 로딩되어, 컴퓨터 또는 다른 프로그래밍가능 프로세싱 장치 상에서 실행되는 컴퓨터 프로그램 명령어들이 플로우차트(들)의 블록(들)에 특정된 기능들을 구현하기 위한 수단을 생성하도록 할 수 있다.
이에 따라, 플로우차트들, 알고리즘들, 공식들, 또는 계산 표시들의 블록들은 특정된 기능들을 수행하기 위한 수단들의 조합들, 특정된 기능들을 수행하기 위한 단계들의 조합들, 및 특정된 기능들을 수행하기 위한 컴퓨터 판독가능 프로그램 코드 로직 수단으로 구현된 것과 같은 컴퓨터 프로그램 명령어들을 지원한다. 본 명세서에서 설명된 플로우차트 예시들, 알고리즘들, 공식들, 또는 계산 표시들의 각각의 블록 및 이들의 조합들은 특정된 기능들 또는 단계들을 수행하는 특수 목적 하드웨어 기반 컴퓨터 시스템들, 또는 특수 목적 하드웨어 및 컴퓨터 판독가능 프로그램 코드 로직 수단의 조합들에 의해 구현될 수 있다는 것을 또한 이해할 것이다.
게다가, 컴퓨터 판독가능 프로그램 코드 로직으로 구현된 것과 같은 이러한 컴퓨터 프로그램 명령어들은 컴퓨터 또는 다른 프로그래밍가능 프로세싱 장치가 특정 방식으로 기능하도록 지시할 수 있는 컴퓨터 판독가능 메모리에 또한 저장되어, 컴퓨터 판독가능 메모리에 저장된 명령어들이 플로우차트(들)의 블록(들)에 특정된 기능을 구현하는 명령어 수단을 포함하는 제조 물품을 생성하도록 할 수 있다. 컴퓨터 프로그램 명령어들은 또한, 컴퓨터 또는 다른 프로그래밍가능 프로세싱 장치에 로딩되어 컴퓨터 또는 다른 프로그래밍가능 프로세싱 장치 상에서 일련의 동작 단계들이 수행되게 하여, 컴퓨터 또는 다른 프로그래밍가능 프로세싱 장치 상에서 실행되는 명령어들이 플로우차트(들), 알고리즘(들), 공식(들), 또는 계산 표시(들)의 블록(들)에 특정된 기능들을 구현하기 위한 단계들을 제공하도록 하는 컴퓨터 구현 프로세스를 생성할 수 있다.
본 명세서에서 사용되는 바와 같이 "프로그래밍"은 본 명세서에서 설명된 바와 같은 기능을 수행하기 위해 프로세서에 의해 실행될 수 있는 하나 이상의 명령어들을 지칭한다는 것을 추가로 이해할 것이다. 프로그래밍은 소프트웨어로, 펌웨어로, 또는 소프트웨어와 펌웨어의 조합으로 구현될 수 있다. 프로그래밍은 디바이스에 국지적으로 비일시적 매체들에 저장될 수 있거나, 또는 예컨대 서버에 원격적으로 저장될 수 있거나, 또는 프로그래밍의 전부 또는 일부가 국지적으로 그리고 원격적으로 저장될 수 있다. 원격적으로 저장된 프로그래밍은 사용자 개시에 의해, 또는 하나 이상의 인자들에 기초하여 자동으로 디바이스에 다운로드(푸시)될 수 있다. 본 명세서에서 사용되는 바와 같이, 프로세서, 중앙 프로세싱 유닛(CPU), 및 컴퓨터와 같은 용어들은 입/출력 인터페이스들 및/또는 주변 디바이스들과의 통신 및 프로그래밍을 실행하는 것이 가능한 디바이스를 나타내기 위해 동의어로 사용된다는 것을 추가로 이해할 것이다.
본 명세서에서의 설명으로부터, 본 개시내용은 하기 내용을 포함하지만 이에 제한되지 않는 다수의 실시예들을 포괄한다는 것을 이해할 것이다:
1. 이미지 객체를 이미지의 나머지로부터 반자동으로 세그먼트화하기 위한 장치로서, (a) 캡처된 컬러 디지털 이미지들을 이미지 프로세싱하고, 세그먼트화가 적용되어야 하는 객체를 식별하기 위해 상기 컬러 이미지 내의 사용자 선택 위치로서 사용자 선택 입력을 수신하도록 구성되는 프로세서; (b) 명령어들을 저장하는 메모리를 포함하고, (c) 상기 명령어들은, 프로세서에 의해 실행될 때, (c)(i) 객체의 세그먼트화의 시작 시에 상기 컬러 이미지를 다운스케일링하고, 세그먼트화가 진행됨에 따라 하나 이상의 보다 정밀한 해상도들을 선택하는 것; (c)(ii) 각각의 픽셀에 대한 픽셀 컬러 값들을 이용하는 것에 응답하여, 인근 픽셀들을 전경 또는 배경으로서 분류하고 동시에 객체에 대한 객체 마스크 및 클래스 파라미터들을 추정하기 위해 조인트 베이즈 분류기로 기대치 최대화(EM)를 수행하는 것; (c)(iii) 객체의 상기 세그먼트화를 수행하는 동안 초기 마스크의 최상의 크기를 결정하고 객체의 상기 세그먼트화 동안 중단 기준들을 체크하기 위한 이진 탐색을 수행하는 것 - EM 수렴에 응답하여 성공적인 세그먼트화가 완료됨 -; 및 (d) 객체에 대한 객체 마스크를 생성하는 것을 포함하는, 상기 컬러 이미지에서 전경으로서의 객체를 그것의 배경으로부터 세그먼트화하는 것을 수행한다.
2. 임의의 선행하는 실시예의 장치로서, 상기 명령어들은, 프로세서에 의해 실행될 때, 전경의 이미지 객체를 배경으로부터 분리시키기 위한 세그먼트화를 수행하도록 구성된다.
3. 임의의 선행하는 실시예의 장치로서, 상기 명령어들은, 프로세서에 의해 실행될 때, 깊이 정보, 또는 히스토그램 콘트라스트 정보, 또는 이들의 조합을 포함하는 추가의 정보에 응답하여 조인트 베이즈 분류기로 기대치 최대화(EM)를 수행하도록 구성된다.
4. 임의의 선행하는 실시예의 장치로서, 상기 명령어들은, 프로세서에 의해 실행될 때, 이미지 객체가 알려진 객체의 적어도 일부를 배경으로부터 구별하기 위해 사용되는 알려진 특성들을 갖는 알려진 객체일 때 사전 세그먼트화 프로세스를 수행하도록 추가로 구성된다.
5. 임의의 선행하는 실시예의 장치로서, 상기 알려진 객체는 인간 객체 특성들을 갖는 인간이다.
6. 임의의 선행하는 실시예의 장치로서, 상기 명령어들은, 프로세서에 의해 실행될 때, 인간 객체를 배경으로부터 사전 세그먼트화하는 것을 돕기 위해 얼굴 검출 프로세스에서 상기 인간 객체 특성들을 이용하도록 구성된다.
7. 임의의 선행하는 실시예의 장치로서, 상기 명령어들은, 프로세서에 의해 실행될 때, 각각의 검출된 얼굴 주위의 모발 부분에 대해 결정되는 경계, 및 초기 배경 영역으로서 모발 경계를 넘어서 결정되는 다른 경계에 따라, 각각의 검출된 얼굴에 대한 초기 전경 마스크를 생성함으로써 상기 사전 세그먼트화를 수행하도록 구성된다.
8. 임의의 선행하는 실시예의 장치로서, 상기 명령어들은, 프로세서에 의해 실행될 때, 세그먼트화가 적용되어야 하는 객체를 식별하기 위해, 객체에 대한 크기 또는 객체를 둘러싸는 경계를 사용자에게 입력할 것을 또는 그렇지 않으면 정의할 것을 요구하지 않고서, 상기 사용자 선택 위치에 기초하여 이미지의 상기 세그먼트화를 수행하도록 구성된다.
9. 임의의 선행하는 실시예의 장치로서, 상기 명령어들은, 프로세서에 의해 실행될 때, 평균 제곱 오차들에 기초하여 전경 및/또는 배경 픽셀들에 대한 최적의 적응 클래스 수를 추정하고, 양자화기에 의해 전경 및/또는 배경 픽셀들을 양자화하는 것을 수행하여 전경 및/또는 배경 영역들에 대한 초기 클래스들을 생성하여, 그로부터 전경 픽셀들이 가장 가까운 배경 클래스에 얼마나 가까운지를 나타내는 신뢰도 맵이 생성되고, 클래스 파라미터들이 현재 클래스들에 기초하여 평가 및 업데이팅되고(E-단계), 그 다음에 조인트 베이즈 분류기를 사용하여 픽셀들이 평가되어 평가 포인트들에서 픽셀들을 분류함(M-단계)으로써, 조인트 베이즈 분류기로 기대치 최대화(EM)를 수행하도록 구성된다.
10. 임의의 선행하는 실시예의 장치로서, 상기 명령어들은, 프로세서에 의해 실행될 때, 상기 컬러 이미지가 디스플레이되는 스크린 상의 터치 입력을 포함하는 상기 사용자 선택 위치에 기초하여 상기 세그먼트화를 수행하도록 구성된다.
11. 이미지 객체를 이미지의 나머지로부터 반자동으로 세그먼트화하기 위한 장치로서, (a) 캡처된 컬러 디지털 이미지들을 이미지 프로세싱하고, 세그먼트화가 적용되어야 하는 객체를 식별하기 위해 상기 컬러 이미지 내의 사용자 선택 위치로서 사용자 선택 입력을 수신하도록 구성되는 프로세서; (b) 명령어들을 저장하는 메모리를 포함하고, (c) 상기 명령어들은, 프로세서에 의해 실행될 때, (c)(i) 객체의 세그먼트화의 시작 시에 상기 컬러 이미지를 다운스케일링하고, 세그먼트화가 진행됨에 따라 하나 이상의 보다 정밀한 해상도들을 선택하는 것; (c)(ii) 각각의 픽셀에 대한 픽셀 컬러 값들, 깊이, 및 히스토그램 콘트라스트를 이용하는 것에 응답하여, 상기 사용자 선택 위치 인근의 픽셀들을 전경 또는 배경으로서 분류하고 동시에 객체에 대한 객체 마스크 및 클래스 파라미터들을 추정하기 위해 조인트 베이즈 분류기로 기대치 최대화(EM)를 수행하는 것; (c)(iii) 객체의 상기 세그먼트화를 수행하는 동안 초기 마스크의 최상의 크기를 결정하고 객체의 상기 세그먼트화 동안 중단 기준들을 체크하기 위한 이진 탐색을 수행하는 것 - EM 수렴에 응답하여 성공적인 세그먼트화가 완료됨 -; 및 (d) 사용자에 의해 선택된 객체에 대한 객체 마스크를 생성하는 것을 포함하는, 상기 컬러 이미지에서 전경으로서의 객체를 그것의 배경으로부터 세그먼트화하는 것을 수행한다.
12. 임의의 선행하는 실시예의 장치로서, 상기 명령어들은, 프로세서에 의해 실행될 때, 이미지 객체가 알려진 객체의 적어도 일부를 배경 픽셀들로부터 구별하기 위해 사용되는 알려진 특성들을 갖는 알려진 객체일 때 사전 세그먼트화 프로세스를 수행하도록 추가로 구성된다.
13. 임의의 선행하는 실시예의 장치로서, 상기 알려진 객체는 인간 객체 특성들을 갖는 인간이다.
14. 임의의 선행하는 실시예의 장치로서, 상기 명령어들은, 프로세서에 의해 실행될 때, 인간 객체를 배경으로부터 사전 세그먼트화하는 것을 돕기 위해 얼굴 검출 프로세스에서 상기 인간 객체 특성들을 이용하도록 구성된다.
15. 임의의 선행하는 실시예의 장치로서, 상기 명령어들은, 프로세서에 의해 실행될 때, 각각의 검출된 얼굴 주위의 모발 부분에 대해 결정되는 경계, 및 초기 배경 영역으로서 모발 경계를 넘어서 결정되는 다른 경계에 따라, 각각의 검출된 얼굴에 대한 초기 전경 마스크를 생성함으로써 상기 사전 세그먼트화를 수행하도록 구성된다.
16. 임의의 선행하는 실시예의 장치로서, 상기 명령어들은, 프로세서에 의해 실행될 때, 세그먼트화가 적용되어야 하는 객체를 식별하기 위해, 객체에 대한 크기 또는 객체를 둘러싸는 경계를 사용자에게 입력할 것을 또는 그렇지 않으면 정의할 것을 요구하지 않고서, 상기 사용자 선택 위치에 기초하여 이미지의 상기 세그먼트화를 수행하도록 구성된다.
17. 임의의 선행하는 실시예의 장치로서, 상기 명령어들은, 프로세서에 의해 실행될 때, 평균 제곱 오차들에 기초하여 전경 및/또는 배경 픽셀들에 대한 최적의 적응 클래스 수를 추정하고, 양자화기에 의해 전경 및/또는 배경 픽셀들을 양자화하여 전경 및/또는 배경 영역들에 대한 초기 클래스들을 생성하여, 그로부터 전경 픽셀들이 가장 가까운 배경 클래스에 얼마나 가까운지를 나타내는 신뢰도 맵이 생성되고, 클래스 파라미터들이 현재 클래스들에 기초하여 평가 및 업데이팅되고(E-단계), 그 다음에 조인트 베이즈 분류기를 사용하여 픽셀들이 평가되어 평가 포인트들에서 픽셀들을 분류함(M-단계)으로써, 조인트 베이즈 분류기로 기대치 최대화(EM)를 수행하도록 구성된다.
18. 임의의 선행하는 실시예의 장치로서, 상기 명령어들은, 프로세서에 의해 실행될 때, 상기 컬러 이미지가 디스플레이되는 스크린 상의 터치 입력을 포함하는 상기 사용자 선택 위치에 기초하여 상기 세그먼트화를 수행하도록 구성된다.
19. 이미지 객체를 이미지의 나머지로부터 반자동으로 세그먼트화하는 방법으로서, (a) 이미지 프로세싱 기능들을 수행하도록 구성되는 이미지 프로세싱 디바이스 내에서 컬러 이미지를 수신하는 단계; (b) 세그먼트화가 적용되어야 하는 객체를 식별하기 위해 상기 컬러 이미지 내의 사용자 선택 위치로서 사용자 선택 입력을 수신하는 단계; (c) 상기 컬러 이미지에서 전경으로서의 객체를 그것의 배경으로부터 세그먼트화하는 단계를 포함하고, 단계 (c)는, (c)(i) 객체의 세그먼트화의 시작 시에 상기 컬러 이미지를 다운스케일링하고, 세그먼트화가 진행됨에 따라 하나 이상의 보다 정밀한 해상도들을 선택하는 단계; (c)(ii) 사용자 선택 위치에 근접하거나 사용자 선택 위치를 둘러싸고 있는 객체의 크기, 형상, 및 컬러들의 수를 추정하고, 인근 픽셀들이 속하는 어느 영역이 전경 또는 배경인지를 판정하는 단계; (c)(iii) 인근 픽셀들을 전경 또는 배경으로서 분류하고 동시에 객체에 대한 객체 마스크 및 클래스 파라미터들을 추정하기 위해 조인트 베이즈 분류기로 기대치 최대화(EM)를 수행하는 단계; (c)(iv) 객체의 상기 세그먼트화를 수행하는 동안 초기 원형 마스크의 최상의 크기를 결정하고 객체의 상기 세그먼트화 동안 중단 기준들을 체크하기 위한 이진 탐색을 수행하는 단계 - EM 수렴에 응답하여 성공적인 세그먼트화가 완료됨 -; 및 (d) 사용자에 의해 선택된 객체에 대한 객체 마스크를 생성하는 단계를 포함한다.
20. 임의의 선행하는 실시예의 방법으로서, 상기 세그먼트화는 전경의 이미지 객체를 배경으로부터 분리시키도록 구성된다.
21. 임의의 선행하는 실시예의 방법으로서, 세그먼트화의 정확도의 증가를 향해 전경을 배경으로부터 구별하기 위한 세그먼트화를 수행할 때 각각의 픽셀에 대해 깊이 정보, 또는 히스토그램 콘트라스트 정보, 또는 이들의 조합을 이용하는 단계를 더 포함한다.
22. 임의의 선행하는 실시예의 방법으로서, 상기 이미지 객체는 알려진 객체의 적어도 일부를 배경 픽셀들로부터 구별하는 사전 세그먼트화 프로세스에서 이용되는 알려진 특성들을 갖는 알려진 객체이다.
23. 임의의 선행하는 실시예의 방법으로서, 상기 알려진 객체는 인간 객체 특성들을 갖는 인간이다.
24. 임의의 선행하는 실시예의 방법으로서, 인간 객체를 배경으로부터 사전 세그먼트화하는 것을 돕기 위해 얼굴 검출 프로세스가 이용된다.
25. 임의의 선행하는 실시예의 방법으로서, 객체가 인간 객체인 경우, 각각의 검출된 얼굴 주위의 모발 부분에 대해 결정되는 경계, 및 초기 배경 영역으로서 모발 경계를 넘어서 결정되는 다른 경계에 따라, 각각의 검출된 얼굴에 대해 생성되는 초기 전경 마스크를 이용하여 사전 세그먼트화 프로세스를 수행하는 단계를 더 포함한다.
26. 임의의 선행하는 실시예의 방법으로서, 세그먼트화가 적용되어야 하는 객체를 식별하기 위한 상기 컬러 이미지 내의 상기 사용자 선택 위치는, 객체에 대한 크기 또는 객체를 둘러싸는 경계를 사용자에게 입력할 것을 또는 그렇지 않으면 정의할 것을 요구하지 않는다.
27. 임의의 선행하는 실시예의 방법으로서, 조인트 베이즈 분류기로 기대치 최대화(EM)를 수행하는 동안, 평균 제곱 오차들에 기초하여 전경 및/또는 배경 픽셀들에 대한 최적의 적응 클래스 수의 추정들이 이루어지고, 양자화기에 의해 전경 및/또는 배경 픽셀들에 대한 양자화가 수행되어 전경 및/또는 배경 영역들에 대한 초기 클래스들을 생성하여, 그로부터 전경 픽셀들이 가장 가까운 배경 클래스에 얼마나 가까운지를 나타내는 신뢰도 맵이 생성되고, 클래스 파라미터들이 현재 클래스들에 기초하여 평가 및 업데이팅되고(E-단계), 그 다음에 조인트 베이즈 분류기를 사용하여 픽셀들이 평가되어 평가 포인트들에서 픽셀들을 분류한다(M-단계).
28. 임의의 선행하는 실시예의 방법으로서, 상기 사용자 선택 위치는 상기 컬러 이미지가 디스플레이되는 스크린 상의 터치 입력을 포함한다.
본 명세서에서의 설명이 많은 상세들을 포함하지만, 이들은 본 개시내용의 범주를 제한하는 것으로 해석되어서는 안되고, 현재 선호되는 실시예들 중 일부 실시예들의 예시들을 단지 제공할 뿐인 것으로 해석되어야 한다. 따라서, 본 개시내용의 범주는 본 기술분야의 통상의 기술자에게 명백해질 수 있는 다른 실시예들을 완전히 포괄한다는 것을 이해할 것이다.
청구범위에서, 단수로의 요소의 언급은 명시적으로 기술되지 않는 한 "단 하나(one and only one)"를 의미하도록 의도된 것이 아니라, 오히려 "하나 이상"을 의미하도록 의도된다. 본 기술분야의 통상의 기술자에게 공지된 개시된 실시예들의 요소들에 대한 모든 구조적 및 기능적 등가물들은 본 명세서에 참조로 명백히 포함되고 본 청구범위에 의해 포괄되도록 의도된다. 게다가, 본 개시내용 내의 어떠한 요소, 컴포넌트, 또는 방법 단계도, 그 요소, 컴포넌트, 또는 방법 단계가 청구범위에서 명시적으로 인용되는지 여부에 관계없이 공중에 헌정되도록 의도된 것이 아니다. 본 명세서에서 어떠한 청구항 요소도, 그 요소가 어구 "~하는 수단"을 사용하여 명백히 인용되지 않는 한 "수단 플러스 기능(means plus function)"으로서 해석되어서는 안된다. 본 명세서에서 어떠한 청구항 요소도, 그 요소가 어구 "~하는 단계"를 사용하여 명백히 인용되지 않는 한 "단계 플러스 기능(step plus function)"으로서 해석되어서는 안된다.

Claims (28)

  1. 이미지 객체를 이미지의 나머지로부터 반자동으로 세그먼트화하기 위한 장치로서,
    (a) 캡처된 컬러 디지털 이미지들을 이미지 프로세싱하고, 세그먼트화가 적용되어야 하는 객체를 식별하기 위해 상기 컬러 이미지 내의 사용자 선택 위치로서 사용자 선택 입력을 수신하도록 구성되는 프로세서; 및
    (b) 명령어들을 저장하는 메모리
    를 포함하고,
    (c) 상기 명령어들은, 상기 프로세서에 의해 실행될 때,
    (i) 상기 객체의 세그먼트화의 시작 시에 상기 컬러 이미지를 다운스케일링(downscaling)하고, 세그먼트화가 진행됨에 따라 하나 이상의 보다 정밀한 해상도들을 선택하는 것;
    (ii) 각각의 픽셀에 대한 픽셀 컬러 값들을 이용하는 것에 응답하여, 인근 픽셀들을 전경 또는 배경으로서 분류하고 동시에 상기 객체에 대한 객체 마스크 및 클래스 파라미터들을 추정하기 위해 조인트 베이즈 분류기(joint Bayes classifier)로 기대치 최대화(expectation-maximization)(EM)를 수행하는 것;
    (iii) 상기 객체의 상기 세그먼트화를 수행하는 동안 초기 마스크의 최상의 크기를 결정하고 상기 객체의 상기 세그먼트화 동안 중단 기준들을 체크하기 위한 이진 탐색(binary search)을 수행하는 것 - EM 수렴(convergence)에 응답하여 성공적인 세그먼트화가 완료됨 -; 및
    (iv) 상기 객체에 대한 객체 마스크를 생성하는 것
    을 포함하는, 상기 컬러 이미지에서 전경으로서의 상기 객체를 그것의 배경으로부터 세그먼트화하는 것을 수행하는, 장치.
  2. 제1항에 있어서,
    상기 명령어들은, 상기 프로세서에 의해 실행될 때, 상기 전경의 상기 이미지 객체를 상기 배경으로부터 분리시키기 위한 세그먼트화를 수행하도록 구성되는, 장치.
  3. 제1항에 있어서,
    상기 명령어들은, 상기 프로세서에 의해 실행될 때, 깊이 정보, 또는 히스토그램 콘트라스트 정보(histogram contrast information), 또는 이들의 조합을 포함하는 추가의 정보에 응답하여 조인트 베이즈 분류기로 기대치 최대화(EM)를 수행하도록 구성되는, 장치.
  4. 제1항에 있어서,
    상기 명령어들은, 상기 프로세서에 의해 실행될 때, 상기 이미지 객체가 알려진 객체의 적어도 일부를 상기 배경으로부터 구별하기 위해 사용되는 알려진 특성들을 갖는 알려진 객체일 때 사전 세그먼트화 프로세스(pre-segmentation process)를 수행하도록 추가로 구성되는, 장치.
  5. 제4항에 있어서,
    상기 알려진 객체는 인간 객체 특성들을 갖는 인간인, 장치.
  6. 제5항에 있어서,
    상기 명령어들은, 상기 프로세서에 의해 실행될 때, 상기 인간 객체를 상기 배경으로부터 사전 세그먼트화하는 것을 돕기 위해 얼굴 검출 프로세스에서 상기 인간 객체 특성들을 이용하도록 구성되는, 장치.
  7. 제6항에 있어서,
    상기 명령어들은, 상기 프로세서에 의해 실행될 때, 각각의 검출된 얼굴 주위의 모발 부분에 대해 결정되는 경계, 및 초기 배경 영역으로서 모발 경계를 넘어서 결정되는 다른 경계에 따라, 각각의 검출된 얼굴에 대한 초기 전경 마스크를 생성함으로써 상기 사전 세그먼트화를 수행하도록 구성되는, 장치.
  8. 제1항에 있어서,
    상기 명령어들은, 상기 프로세서에 의해 실행될 때, 세그먼트화가 적용되어야 하는 객체를 식별하기 위해, 객체에 대한 크기 또는 객체를 둘러싸는 경계를 사용자에게 입력할 것을 또는 그렇지 않으면 정의할 것을 요구하지 않고서, 상기 사용자 선택 위치에 기초하여 이미지의 상기 세그먼트화를 수행하도록 구성되는, 장치.
  9. 제1항에 있어서,
    상기 명령어들은, 상기 프로세서에 의해 실행될 때, 평균 제곱 오차(mean square error)들에 기초하여 전경 및/또는 배경 픽셀들에 대한 최적의 적응 클래스 수(adaptive class number)를 추정하고, 양자화기에 의해 전경 및/또는 배경 픽셀들을 양자화하는 것을 수행하여 전경 및/또는 배경 영역들에 대한 초기 클래스들을 생성하여, 그로부터 전경 픽셀들이 가장 가까운 배경 클래스에 얼마나 가까운지를 나타내는 신뢰도 맵이 생성되고, 클래스 파라미터들이 현재 클래스들에 기초하여 평가 및 업데이팅되고(E-단계), 그 다음에 조인트 베이즈 분류기를 사용하여 픽셀들이 평가되어 평가 포인트들에서 픽셀들을 분류함(M-단계)으로써, 조인트 베이즈 분류기로 기대치 최대화(EM)를 수행하도록 구성되는, 장치.
  10. 제1항에 있어서,
    상기 명령어들은, 상기 프로세서에 의해 실행될 때, 상기 컬러 이미지가 디스플레이되는 스크린 상의 터치 입력을 포함하는 상기 사용자 선택 위치에 기초하여 상기 세그먼트화를 수행하도록 구성되는, 장치.
  11. 이미지 객체를 이미지의 나머지로부터 반자동으로 세그먼트화하기 위한 장치로서,
    (a) 캡처된 컬러 디지털 이미지들을 이미지 프로세싱하고, 세그먼트화가 적용되어야 하는 객체를 식별하기 위해 상기 컬러 이미지 내의 사용자 선택 위치로서 사용자 선택 입력을 수신하도록 구성되는 프로세서; 및
    (b) 명령어들을 저장하는 메모리
    를 포함하고,
    (c) 상기 명령어들은, 상기 프로세서에 의해 실행될 때,
    (i) 상기 객체의 세그먼트화의 시작 시에 상기 컬러 이미지를 다운스케일링하고, 세그먼트화가 진행됨에 따라 하나 이상의 보다 정밀한 해상도들을 선택하는 것;
    (ii) 각각의 픽셀에 대한 픽셀 컬러 값들, 깊이, 및 히스토그램 콘트라스트를 이용하는 것에 응답하여, 상기 사용자 선택 위치 인근의 픽셀들을 전경 또는 배경으로서 분류하고 동시에 상기 객체에 대한 객체 마스크 및 클래스 파라미터들을 추정하기 위해 조인트 베이즈 분류기로 기대치 최대화(EM)를 수행하는 것;
    (iii) 상기 객체의 상기 세그먼트화를 수행하는 동안 초기 마스크의 최상의 크기를 결정하고 상기 객체의 상기 세그먼트화 동안 중단 기준들을 체크하기 위한 이진 탐색을 수행하는 것 - EM 수렴에 응답하여 성공적인 세그먼트화가 완료됨 -; 및
    (iv) 상기 사용자에 의해 선택된 상기 객체에 대한 객체 마스크를 생성하는 것
    을 포함하는, 상기 컬러 이미지에서 전경으로서의 상기 객체를 그것의 배경으로부터 세그먼트화하는 것을 수행하는, 장치.
  12. 제11항에 있어서,
    상기 명령어들은, 상기 프로세서에 의해 실행될 때, 상기 이미지 객체가 알려진 객체의 적어도 일부를 상기 배경 픽셀들로부터 구별하기 위해 사용되는 알려진 특성들을 갖는 알려진 객체일 때 사전 세그먼트화 프로세스를 수행하도록 추가로 구성되는, 장치.
  13. 제12항에 있어서,
    상기 알려진 객체는 인간 객체 특성들을 갖는 인간인, 장치.
  14. 제13항에 있어서,
    상기 명령어들은, 상기 프로세서에 의해 실행될 때, 상기 인간 객체를 상기 배경으로부터 사전 세그먼트화하는 것을 돕기 위해 얼굴 검출 프로세스에서 상기 인간 객체 특성들을 이용하도록 구성되는, 장치.
  15. 제14항에 있어서,
    상기 명령어들은, 상기 프로세서에 의해 실행될 때, 각각의 검출된 얼굴 주위의 모발 부분에 대해 결정되는 경계, 및 초기 배경 영역으로서 모발 경계를 넘어서 결정되는 다른 경계에 따라, 각각의 검출된 얼굴에 대한 초기 전경 마스크를 생성함으로써 상기 사전 세그먼트화를 수행하도록 구성되는, 장치.
  16. 제11항에 있어서,
    상기 명령어들은, 상기 프로세서에 의해 실행될 때, 세그먼트화가 적용되어야 하는 객체를 식별하기 위해, 객체에 대한 크기 또는 객체를 둘러싸는 경계를 사용자에게 입력할 것을 또는 그렇지 않으면 정의할 것을 요구하지 않고서, 상기 사용자 선택 위치에 기초하여 이미지의 상기 세그먼트화를 수행하도록 구성되는, 장치.
  17. 제11항에 있어서,
    상기 명령어들은, 상기 프로세서에 의해 실행될 때, 평균 제곱 오차들에 기초하여 전경 및/또는 배경 픽셀들에 대한 최적의 적응 클래스 수를 추정하고, 양자화기에 의해 전경 및/또는 배경 픽셀들을 양자화하여 전경 및/또는 배경 영역들에 대한 초기 클래스들을 생성하여, 그로부터 전경 픽셀들이 가장 가까운 배경 클래스에 얼마나 가까운지를 나타내는 신뢰도 맵이 생성되고, 클래스 파라미터들이 현재 클래스들에 기초하여 평가 및 업데이팅되고(E-단계), 그 다음에 조인트 베이즈 분류기를 사용하여 픽셀들이 평가되어 평가 포인트들에서 픽셀들을 분류함(M-단계)으로써, 조인트 베이즈 분류기로 기대치 최대화(EM)를 수행하도록 구성되는, 장치.
  18. 제11항에 있어서,
    상기 명령어들은, 상기 프로세서에 의해 실행될 때, 상기 컬러 이미지가 디스플레이되는 스크린 상의 터치 입력을 포함하는 상기 사용자 선택 위치에 기초하여 상기 세그먼트화를 수행하도록 구성되는, 장치.
  19. 이미지 객체를 이미지의 나머지로부터 반자동으로 세그먼트화하는 방법으로서,
    (a) 이미지 프로세싱 기능들을 수행하도록 구성되는 이미지 프로세싱 디바이스 내에서 컬러 이미지를 수신하는 단계;
    (b) 세그먼트화가 적용되어야 하는 객체를 식별하기 위해 상기 컬러 이미지 내의 사용자 선택 위치로서 사용자 선택 입력을 수신하는 단계;
    (c) 상기 컬러 이미지에서 전경으로서의 상기 객체를 그것의 배경으로부터 세그먼트화하는 단계
    를 포함하고,
    단계 (c)는,
    (i) 상기 객체의 세그먼트화의 시작 시에 상기 컬러 이미지를 다운스케일링하고, 세그먼트화가 진행됨에 따라 하나 이상의 보다 정밀한 해상도들을 선택하는 단계;
    (ii) 상기 사용자 선택 위치에 근접하거나 상기 사용자 선택 위치를 둘러싸고 있는 상기 객체의 크기, 형상, 및 컬러들의 수를 추정하고, 인근 픽셀들이 속하는 어느 영역이 전경 또는 배경인지를 판정하는 단계;
    (iii) 인근 픽셀들을 전경 또는 배경으로서 분류하고 동시에 상기 객체에 대한 객체 마스크 및 클래스 파라미터들을 추정하기 위해 조인트 베이즈 분류기로 기대치 최대화(EM)를 수행하는 단계; 및
    (iv) 상기 객체의 상기 세그먼트화를 수행하는 동안 초기 원형 마스크의 최상의 크기를 결정하고 상기 객체의 상기 세그먼트화 동안 중단 기준들을 체크하기 위한 이진 탐색을 수행하는 단계 - EM 수렴에 응답하여 성공적인 세그먼트화가 완료됨 -; 및
    (v) 상기 사용자에 의해 선택된 상기 객체에 대한 객체 마스크를 생성하는 단계
    를 포함하는, 방법.
  20. 제19항에 있어서,
    상기 세그먼트화는 상기 전경의 상기 이미지 객체를 상기 배경으로부터 분리시키도록 구성되는, 방법.
  21. 제19항에 있어서,
    세그먼트화 정확도의 증가를 향해 상기 전경을 상기 배경으로부터 구별하기 위한 세그먼트화를 수행할 때 각각의 픽셀에 대해 깊이 정보, 또는 히스토그램 콘트라스트 정보, 또는 이들의 조합을 이용하는 단계를 더 포함하는, 방법.
  22. 제19항에 있어서,
    상기 이미지 객체는 알려진 객체의 적어도 일부를 배경 픽셀들로부터 구별하는 사전 세그먼트화 프로세스에서 이용되는 알려진 특성들을 갖는 알려진 객체인, 방법.
  23. 제22항에 있어서,
    상기 알려진 객체는 인간 객체 특성들을 갖는 인간인, 방법.
  24. 제23항에 있어서,
    상기 인간 객체를 상기 배경으로부터 사전 세그먼트화하는 것을 돕기 위해 얼굴 검출 프로세스가 이용되는, 방법.
  25. 제19항에 있어서,
    상기 객체가 인간 객체인 경우, 각각의 검출된 얼굴 주위의 모발 부분에 대해 결정되는 경계, 및 초기 배경 영역으로서 모발 경계를 넘어서 결정되는 다른 경계에 따라, 각각의 검출된 얼굴에 대해 생성되는 초기 전경 마스크를 이용하여, 사전 세그먼트화 프로세스를 수행하는 단계를 더 포함하는, 방법.
  26. 제19항에 있어서,
    세그먼트화가 적용되어야 하는 객체를 식별하기 위한 상기 컬러 이미지 내의 상기 사용자 선택 위치는 객체에 대한 크기 또는 객체를 둘러싸는 경계를 사용자에게 입력할 것을 또는 그렇지 않으면 정의할 것을 요구하지 않는, 방법.
  27. 제19항에 있어서,
    조인트 베이즈 분류기로 기대치 최대화(EM)를 수행하는 동안, 평균 제곱 오차들에 기초하여 전경 및/또는 배경 픽셀들에 대한 최적의 적응 클래스 수의 추정들이 이루어지고, 양자화기에 의해 전경 및/또는 배경 픽셀들에 대한 양자화가 수행되어 전경 및/또는 배경 영역들에 대한 초기 클래스들을 생성하여, 그로부터 전경 픽셀들이 가장 가까운 배경 클래스에 얼마나 가까운지를 나타내는 신뢰도 맵이 생성되고, 클래스 파라미터들이 현재 클래스들에 기초하여 평가 및 업데이팅되고(E-단계), 그 다음에 조인트 베이즈 분류기를 사용하여 픽셀들이 평가되어 평가 포인트들에서 픽셀들을 분류하는(M-단계), 방법.
  28. 제19항에 있어서,
    상기 사용자 선택 위치는 상기 컬러 이미지가 디스플레이되는 스크린 상의 터치 입력을 포함하는, 방법.
KR1020187000532A 2015-07-21 2016-07-15 반자동 이미지 세그먼트화 KR101989756B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/804,433 US9443316B1 (en) 2015-07-21 2015-07-21 Semi-automatic image segmentation
US14/804,433 2015-07-21
PCT/US2016/042510 WO2017015117A1 (en) 2015-07-21 2016-07-15 Semi-automatic image segmentation

Publications (2)

Publication Number Publication Date
KR20180017097A true KR20180017097A (ko) 2018-02-20
KR101989756B1 KR101989756B1 (ko) 2019-06-14

Family

ID=56881404

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187000532A KR101989756B1 (ko) 2015-07-21 2016-07-15 반자동 이미지 세그먼트화

Country Status (6)

Country Link
US (1) US9443316B1 (ko)
EP (1) EP3332356B1 (ko)
JP (1) JP6547990B2 (ko)
KR (1) KR101989756B1 (ko)
CN (1) CN107710228B (ko)
WO (1) WO2017015117A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220006657A (ko) * 2019-07-15 2022-01-17 구글 엘엘씨 깊이를 사용한 비디오 배경 제거
WO2022186426A1 (ko) * 2021-03-04 2022-09-09 주식회사 스누아이랩 자동 세그먼트 분류를 위한 영상처리장치 및 그 장치의 구동방법

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103489107B (zh) * 2013-08-16 2015-11-25 北京京东尚科信息技术有限公司 一种制作虚拟试衣模特图像的方法和装置
KR102161052B1 (ko) * 2013-08-27 2020-09-29 삼성전자주식회사 영상에서 객체를 분리하는 방법 및 장치.
WO2015113895A1 (en) * 2014-01-28 2015-08-06 Ventana Medical Systems, Inc. Adaptive classification for whole slide tissue segmentation
US10091435B2 (en) * 2016-06-07 2018-10-02 Disney Enterprises, Inc. Video segmentation from an uncalibrated camera array
US10692220B2 (en) * 2017-10-18 2020-06-23 International Business Machines Corporation Object classification based on decoupling a background from a foreground of an image
CN109993824B (zh) * 2017-12-29 2023-08-04 深圳市优必选科技有限公司 图像处理方法、智能终端及具有存储功能的装置
US10515463B2 (en) * 2018-04-20 2019-12-24 Sony Corporation Object segmentation in a sequence of color image frames by background image and background depth correction
KR102673817B1 (ko) * 2018-07-30 2024-06-10 삼성전자주식회사 3차원 영상 표시 장치 및 영상 처리 방법
CN110889851B (zh) * 2018-09-11 2023-08-01 苹果公司 针对深度和视差估计的语义分割的稳健用途
CN111223118A (zh) * 2018-11-27 2020-06-02 富士通株式会社 图像处理装置、图像处理方法及计算机可读记录介质
US10839517B2 (en) * 2019-02-21 2020-11-17 Sony Corporation Multiple neural networks-based object segmentation in a sequence of color image frames
CN113490842A (zh) * 2019-02-28 2021-10-08 索尼集团公司 信息处理装置、信息处理方法和信息处理系统
US11631234B2 (en) 2019-07-22 2023-04-18 Adobe, Inc. Automatically detecting user-requested objects in images
US11468550B2 (en) 2019-07-22 2022-10-11 Adobe Inc. Utilizing object attribute detection models to automatically select instances of detected objects in images
US11107219B2 (en) 2019-07-22 2021-08-31 Adobe Inc. Utilizing object attribute detection models to automatically select instances of detected objects in images
KR20210027894A (ko) * 2019-09-03 2021-03-11 삼성전자주식회사 주행 보조 시스템, 전자 장치 및 그 동작 방법
CN110992384B (zh) * 2019-11-15 2023-04-11 五邑大学 半自动化图像数据标注方法、电子装置及存储介质
CN111028261B (zh) * 2019-11-15 2023-03-17 五邑大学 高精度半自动化图像数据标注方法、电子装置及存储介质
US11468110B2 (en) 2020-02-25 2022-10-11 Adobe Inc. Utilizing natural language processing and multiple object detection models to automatically select objects in images
US11055566B1 (en) 2020-03-12 2021-07-06 Adobe Inc. Utilizing a large-scale object detector to automatically select objects in digital images
CN111833239B (zh) 2020-06-01 2023-08-01 北京百度网讯科技有限公司 图像的翻译方法和装置、图像翻译模型的训练方法和装置
CN112215769B (zh) * 2020-10-09 2024-06-28 深圳开立生物医疗科技股份有限公司 一种超声图像处理方法、装置及超声设备和存储介质
CN112529914B (zh) * 2020-12-18 2021-08-13 北京中科深智科技有限公司 一种实时头发分割方法和系统
US11587234B2 (en) 2021-01-15 2023-02-21 Adobe Inc. Generating class-agnostic object masks in digital images
US11972569B2 (en) * 2021-01-26 2024-04-30 Adobe Inc. Segmenting objects in digital images utilizing a multi-object segmentation model framework

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100014097A (ko) * 2008-07-31 2010-02-10 삼성전자주식회사 물체의 궤적에 기초한 원을 그리는 움직임 검출 방법 및 시스템
US7813528B2 (en) * 2007-04-05 2010-10-12 Mitsubishi Electric Research Laboratories, Inc. Method for detecting objects left-behind in a scene
US20140111662A1 (en) * 2012-10-19 2014-04-24 Csr Technology Inc. Method for creating automatic cinemagraphs on an imaging device

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7203360B2 (en) 2003-04-09 2007-04-10 Lee Shih-Jong J Learnable 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
CN101588459B (zh) * 2009-06-26 2011-01-05 北京交通大学 一种视频抠像处理方法
CN101814183B (zh) * 2010-01-08 2012-03-28 清华大学 用于图像分割的方法及系统
GB201209382D0 (en) 2012-05-25 2012-07-11 Poikos Ltd Body measurement
CN102663757A (zh) * 2012-04-20 2012-09-12 西安电子科技大学 基于核传递的半自动图像分割方法
CN104063876B (zh) * 2014-01-10 2017-02-01 北京理工大学 一种交互式图像分割方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7813528B2 (en) * 2007-04-05 2010-10-12 Mitsubishi Electric Research Laboratories, Inc. Method for detecting objects left-behind in a scene
KR20100014097A (ko) * 2008-07-31 2010-02-10 삼성전자주식회사 물체의 궤적에 기초한 원을 그리는 움직임 검출 방법 및 시스템
US20140111662A1 (en) * 2012-10-19 2014-04-24 Csr Technology Inc. Method for creating automatic cinemagraphs on an imaging device

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220006657A (ko) * 2019-07-15 2022-01-17 구글 엘엘씨 깊이를 사용한 비디오 배경 제거
US11727577B2 (en) 2019-07-15 2023-08-15 Google Llc Video background subtraction using depth
WO2022186426A1 (ko) * 2021-03-04 2022-09-09 주식회사 스누아이랩 자동 세그먼트 분류를 위한 영상처리장치 및 그 장치의 구동방법

Also Published As

Publication number Publication date
JP2018524732A (ja) 2018-08-30
JP6547990B2 (ja) 2019-07-24
EP3332356A1 (en) 2018-06-13
EP3332356B1 (en) 2021-04-21
US9443316B1 (en) 2016-09-13
KR101989756B1 (ko) 2019-06-14
WO2017015117A1 (en) 2017-01-26
EP3332356A4 (en) 2019-03-20
CN107710228B (zh) 2021-11-12
CN107710228A (zh) 2018-02-16

Similar Documents

Publication Publication Date Title
KR101989756B1 (ko) 반자동 이미지 세그먼트화
CN110717489B (zh) Osd的文字区域的识别方法、装置及存储介质
US9269155B2 (en) Region growing method for depth map/color image
US8923564B2 (en) Face searching and detection in a digital image acquisition device
JP5763965B2 (ja) 情報処理装置、情報処理方法、及びプログラム
US8798373B2 (en) Image restoration system, image restoration method, and image restoration program
EP3048579B1 (en) Structure analysis method for recovering missing structures in an image after object removal
US8599257B2 (en) Vehicle detection device, vehicle detection method, and vehicle detection program
JP4905931B2 (ja) 人体領域抽出方法および装置並びにプログラム
US8934669B2 (en) Self-adaptive image-based obstacle detection method
US9245198B2 (en) Object recognition by comparison of patterns against map of image
US20170111576A1 (en) Image processing apparatus, method, and medium for extracting feature amount of image
Wang et al. Car license plate detection based on MSER
JP2000339457A (ja) 顔画像処理装置
Gilly et al. A survey on license plate recognition systems
KR20160037643A (ko) 객체 인식을 위한 객체 후보영역 설정방법 및 장치
EP2821935B1 (en) Vehicle detection method and device
JPWO2012046426A1 (ja) 物体検出装置、物体検出方法および物体検出プログラム
JP2013080389A (ja) 消失点推定方法、消失点推定装置及びコンピュータプログラム
JP5952942B2 (ja) 情報処理装置、情報処理方法、及びプログラム
US9437008B1 (en) Image segmentation using bayes risk estimation of scene foreground and background
JP2015187769A (ja) 物体検出装置、物体検出方法及びプログラム
Tanyeri et al. Canny edge detector with half entropy
JP6688091B2 (ja) 車両距離導出装置および車両距離導出方法
Allebosch et al. Edge based Foreground Background Estimation with Interior/Exterior Classification.

Legal Events

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