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

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

Info

Publication number
KR20210058638A
KR20210058638A KR1020200108091A KR20200108091A KR20210058638A KR 20210058638 A KR20210058638 A KR 20210058638A KR 1020200108091 A KR1020200108091 A KR 1020200108091A KR 20200108091 A KR20200108091 A KR 20200108091A KR 20210058638 A KR20210058638 A KR 20210058638A
Authority
KR
South Korea
Prior art keywords
image
sub
transformation
result
determining
Prior art date
Application number
KR1020200108091A
Other languages
English (en)
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 US17/095,784 priority Critical patent/US11645756B2/en
Publication of KR20210058638A publication Critical patent/KR20210058638A/ko
Priority to US18/126,042 priority patent/US11900610B2/en

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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06K9/00624
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/149Segmentation; Edge detection involving deformable models, e.g. active contour models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/593Depth or shape recovery from multiple images from stereo images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • 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/10028Range image; Depth image; 3D point clouds
    • 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/20021Dividing image into blocks, subimages or windows

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Multimedia (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Image Analysis (AREA)

Abstract

본 개시는 장면의 깊이 이미지를 포함하는 처리될 이미지를 획득하고, 깊이 이미지에 기초하여 깊이 이미지에 대응하는 3차원 포인트 클라우드 데이터를 결정하고, 3차원 포인트 클라우드 데이터에 기초하여 장면에 포함된 객체를 추출한 결과인 객체 추출 결과를 획득하는 이미지 처리 장치 및 방법에 관한 것이다.

Description

이미지 처리 장치 및 방법{APPARATUS AND METHOD FOR IMAGE PROCESSING}
본 개시는 이미지 처리 기술 분야에 관한 것으로, 특히 이미지 처리 장치 및 방법에 관한 것이다
종래 기술에서, 이미지에 포함된 객체의 영역을 추출한 결과인 객체의 추출 결과, 즉 이미지에서 객체를 포함하는 영역을 결정하기 위해, 일반적으로 깊이 이미지의 3 차원 복셀(3-dimensional voxel)을 사용해서 객체의 추출 결과를 획득하곤 한다. 하지만, 3차원 복셀에 기초하여 객체의 추출 결과를 얻는 방안은 대량의 저장 공간 및 컴퓨팅 자원을 소비하여, 알고리즘을 비효율적으로 만든다.
그 외에 이미지에서 객체의 영역을 추출하는 것은 다음과 같은 방법으로 실현될 수 있다.
첫 번째 방법은 이미지의 2 차원 이미지 특징에 기초하여 객체의 추출 결과를 얻는 방법이다. 이는 컬러 이미지의 객체 검출 결과에 기초하여, 컬러 이미지 상의 객체의 바운딩 박스를 결정하고, 깊이 포인트 클라우드 데이터에서 원뿔(cone)을 절취하고, 절취된 포인트 클라우드에 기초하여, 3D 객체 분할 및 3D 바운딩 박스와 포즈 추정을 진행할 수 있다.
두 번째 방법은 훈련된 모델을 기반으로 컬러 이미지에서 객체의 이미지 영역과 2D 바운딩 박스를 추출하고, 해당 모델은 샘플 이미지에서 객체의 이미지 영역과 2D 바운딩 박스를 기준으로 훈련한 것이다. 이는, 2차원 이미지의 이미지 영역과 2D 바운딩 박스를 결정하는데 사용되고, 컬러 이미지의 특징과 깊이 이미지의 특징을 기반으로 객체에 대응하는 3 차원 복셀을 획득하고, 3차원 복셀에 기초하여 객체의 자세 추정 결과를 얻을 수 있다.
세 번째 방법은 객체의 외관 이미지 특징과 구조 정보에 기초하여, 단일 이미지에서 객체의 포즈를 추정할 수 있다.
네 번째 방법은 객체의 3차원 모델과 이미지의 객체를 정렬하고, 이미지의 객체의 형상 스타일에 기초하여 이와 매칭되는 3차원 모델을 검색할 수 있고, 카메라에 대한 해당 3차원 모델의 시야각을 추정할 수 있다.
상술한 종래 방법들을 통해 객체의 이미지 영역, 2D 바운딩 박스 및 객체의 포즈 등의 객체의 추출 결과를 획득할 수 있으나 다음과 같은 기술적 문제가 존재한다.
첫 번째 방법은 컬러 이미지에서 객체를 추출하는 것에만 적합하며, 객체의 3차원 특징을 누락하여 객체의 추출 결과가 부정확할 수 있다.
두 번째 방법은 컬러 이미지의 객체의 추출에만 적합하고, 깊이 이미지의 객체의 추출에는 적합하지 않으며, 3차원 복셀에 기초하여 객체의 추출 결과를 얻는 방안은 대량의 저장 공간 및 컴퓨팅 자원을 소비하여, 알고리즘을 비효율적으로 만들 수 있다.
세 번째 방법은 컬러 이미지에서 객체를 추출하는 것에만 적합하고, 깊이 이미지의 객체를 추출하는 것에는 적합하지 않는 문제가 있다.
네 번째 방법은 해당 방안은 객체의 구조적 특징을 기반으로 객체의 추출 결과를 결정하는 방안으로, 객체의 구조적 특징은 객체의 세부 특징을 반영할 수 없어, 객체의 추출이 정확하지 않은 문제가 있다.
본 개시는 저장 공간을 절약하고, 알고리즘 효율을 향상시키는 이미지 처리 장치 및 방법을 제공하는 것에 관한 것이다.
일 실시예에 따른 이미지 처리 방법은, 장면(scene)의 깊이 이미지(depth image)를 포함하는 처리될 이미지를 획득하는 단계; 상기 깊이 이미지에 기초하여, 상기 깊이 이미지에 대응하는 3차원 포인트 클라우드 데이터(3D point clouds data)를 결정하는 단계; 및 상기 3차원 포인트 클라우드 데이터에 기초하여, 상기 장면에 포함된 객체(object)를 추출한 결과인 객체 추출 결과를 획득하는 단계를 포함한다.
이때, 상기 3차원 포인트 클라우드 데이터에 기초하여, 상기 장면에 포함된 객체를 추출한 결과인 객체 추출 결과를 획득하는 단계는, 상기 3차원 포인트 클라우드 데이터를 매트릭스(matrix)로 변환하는 단계; 상기 매트릭스에 기초하여, 제1 특징 맵(feature map)을 결정하는 단계; 및 상기 제1 특징 맵에 기초하여, 상기 장면에 포함된 상기 객체 추출 결과를 획득하는 단계를 포함할 수 있다.
이때, 상기 3차원 포인트 클라우드 데이터를 매트릭스로 변환하는 단계는, 상기 3차원 포인트 클라우드 데이터에서 객체에 속하는 포인트 클라우드 데이터를 결정하는 단계; 및 상기 3차원 포인트 클라우드 데이터에서 객체에 속하는 포인트 클라우드 데이터에 기초하여, 상기 3차원 포인트 클라우드 데이터에 대응하는 상기 매트릭스를 결정하는 단계를 포함할 수 있다.
이때, 상기 처리될 이미지는 상기 장면의 컬러 이미지(color image)를 더 포함하고, 상기 이미지 처리 방법은 상기 컬러 이미지에서 특징을 추출하여 제2 특징 맵을 획득하는 단계를 더 포함하고, 상기 제1 특징 맵에 기초하여, 상기 장면에 포함된 상기 객체 추출 결과를 획득하는 단계는, 상기 제1 특징 맵 및 상기 제2 특징 맵에 기초하여, 상기 장면에 포함된 상기 객체 추출 결과를 획득하는 단계를 포함할 수 있다.
이때, 상기 제1 특징 맵 및 상기 제2 특징 맵에 기초하여, 상기 장면에 포함된 상기 객체 추출 결과를 획득하는 단계는, 상기 제1 특징 맵 및 제2 특징 맵을 융합하여, 상기 처리될 이미지에 대응하는 제3 특징 맵을 획득하는 단계; 및 상기 제3 특징 맵에 기초하여, 상기 장면에 포함된 상기 객체 추출 결과를 획득하는 단계를 포함할 수 있다.
이때, 상기 제3 특징 맵에 기초하여, 상기 장면에 포함된 상기 객체 추출 결과를 획득하는 단계는, 상기 처리될 이미지를 분할하여, 적어도 2개의 서브 이미지를 획득하는 단계; 각 서브 이미지에 대응하는 제3 특징 맵 및/또는 각 서브 이미지의 인접 서브 이미지에 대응하는 제3 특징 맵에 기초하여, 각 서브 이미지에 대응하는 객체의 추출 결과를 결정하는 단계; 및 각 서브 이미지에 대응하는 객체의 추출 결과를 융합하여, 상기 장면에 포함된 상기 객체 추출 결과를 획득하는 단계를 포함할 수 있다.
이때, 각 서브 이미지에 대응하는 제3 특징 맵 및/또는 각 서브 이미지의 인접 서브 이미지에 대응하는 제3 특징 맵에 기초하여, 각 서브 이미지에 대응하는 객체의 추출 결과를 결정하는 단계는, 각 서브 이미지의 가중치(weight)를 결정하는 단계; 및 각 서브 이미지에 대응하는 제3 특징 맵 및/또는 각 서브 이미지의 인접 서브 이미지에 대응하는 제3 특징 맵 및 각 서브 이미지에 대응하는 가중치에 기초하여, 상기 각 서브 이미지에 대응하는 객체의 추출 결과를 결정하는 단계를 포함할 수 있다.
이때, 상기 각 서브 이미지의 가중치를 결정하는 단계는, 각 서브 이미지에 대응하는 서브 특징 맵에 기초하여, 각 서브 이미지의 가중치를 결정하는 단계; 및 상기 처리될 이미지의 후보 포인트를 결정하고, 상기 각 서브 이미지에 대응하는 후보 포인트 또는 상기 각 서브 이미지의 후보 포인트에 대응하는 서브 특징 맵에 기초하여, 각 서브 이미지에 대응하는 가중치를 결정하는 단계 중에서 어느 하나를 포함할 수 있다.
이때, 상기 각 서브 이미지에 대응하는 후보 포인트에 기초하여, 각 서브 이미지에 대응하는 가중치를 결정하는 단계는, 각 서브 이미지에 대응하는 후보 포인트에 대해, 해당 후보 포인트와 그 인접 서브 이미지의 후보 포인트 사이의 유사 관계를 결정하고, 각 후보 포인트와 그 인접 서브 이미지의 후보 포인트 사이의 유사 관계에 기초하여, 각 서브 이미지에 대응하는 가중치를 결정하는 단계; 및 상기 각 서브 이미지에 대응하는 서브 특징 맵에 기초하여, 각 서브 이미지의 가중치를 결정하는 단계를 포함할 수 있다.
이때, 상기 각 서브 이미지에 대응하는 서브 특징 맵에 기초하여, 각 서브 이미지의 가중치를 결정하는 단계는, 각 서브 이미지에 대해, 해당 서브 이미지의 중심 위치에 대응하는 제1 특징 벡터 및 해당 서브 이미지에 대응하는 서브 특징 맵에 대응하는 제2 특징 벡터를 결정하고, 각 서브 이미지에 대응하는 상기 제1 특징 벡터 및 상기 제2 특징 벡터에 기초하여, 각 서브 이미지의 가중치를 결정하는 단계; 및 각 서브 이미지에 대응하는 서브 특징 맵에 대해, 해당 서브 특징 맵은 적어도 하나의 확률값에 대응하고, 각 확률값은 해당 서브 특징 맵이 대응하는 객체에 속하는 확률을 나타내고, 적어도 하나의 객체에 대응하는 각 확률값에서의 최대 확률값을 해당 서브 이미지의 가중치로 결정하는 단계 중에서 어느 하나를 포함할 수 있다.
이때, 이미지 처리 방법은 상기 객체 추출 결과에 기초하여, 상기 처리될 이미지에 포함된 객체의 3차원 검출 결과를 결정하는 단계를 더 포함하고, 상기 3차원 검출 결과는 3차원 포즈 결과 및 3차원 분할 결과 중에서 적어도 하나를 포함할 수 있다.
이때, 상기 객체 추출 결과에 기초하여, 상기 처리될 이미지에 포함된 객체의 3차원 검출 결과를 결정하는 단계는, 상기 객체 추출 결과에 대응하는 3차원 포인트 클라우드 특징 및 2차원 이미지 특징을 추출하는 단계; 상기 3차원 포인트 클라우드 특징과 상기 2차원 이미지 특징을 스플라이싱하여 제4 특징 맵을 획득하는 단계; 및 상기 제4 특징 맵에 기초하여, 상기 처리될 이미지에 포함된 객체의 3차원 검출 결과를 결정하는 단계를 포함할 수 있다.
이때, 상기 객체 추출 결과에 기초하여, 상기 처리될 이미지에 포함된 객체의 3차원 검출 결과를 결정하는 단계는, 상기 객체 추출 결과에 기초하여, 상기 처리될 이미지에 포함된 객체의 초기 3차원 검출 결과를 결정하는 단계; 상기 처리될 이미지에 포함된 객체에 대응하는 원본 이미지를 결정하는 단계; 각 객체의 초기 3차원 검출 결과 및 대응하는 원본 이미지에 기초하여, 각 객체의 초기 3차원 검출 결과에 대응하는 차이 정보를 결정하는 단계; 및 상기 각 객체의 초기 3차원 검출 결과에 대응하는 차이 정보에 기초하여, 대응하는 객체의 초기 3차원 검출 결과를 업데이트하여, 상기 처리될 이미지에 포함된 각 객체의 3차원 검출 결과를 획득하는 단계를 포함할 수 있다.
다른 플묀 灐 이미지 처리 방법은, 처리될 이미지에 포함된 실제 객체에 대한 가상 객체의 변형 정보를 획득하는 단계; 및 상기 변형 정보에 기초하여, 상기 처리될 이미지의 상기 실제 객체를 변형하여 변형 후의 상기 처리될 이미지를 획득하는 단계를 포함한다.
이때, 상기 변형 정보에 기초하여, 상기 실제 객체를 변형하여 변형 후의 상기 처리될 이미지를 획득하는 단계는, 상기 실제 객체에 대응하는 원본 이미지를 결정하는 단계; 상기 실제 객체에 대응하는 3차원 포즈 결과, 상기 변형 정보 및 상기 실제 객체에 대응하는 상기 원본 이미지에 기초하여, 상기 실제 객체에 대응하는 변형 후의 이미지와 변형 전의 이미지 사이의 변환 관계를 결정하는 단계; 상기 변환 관계 및 상기 변형 전의 이미지에 기초하여, 상기 실제 객체에 대응하는 변형 후의 이미지를 결정하는 단계; 및 상기 실제 객체에 대응하는 변형 후의 이미지에 기초하여, 변형 후의 상기 처리될 이미지를 결정하는 단계를 포함하고, 상기 변형 전의 이미지는 상기 처리될 이미지에 포함된 상기 실제 객체에 대응하는 이미지일 수 있다.
이때, 상기 실제 객체에 대응하는 3차원 포즈 결과, 상기 변형 정보 및 상기 실제 객체에 대응하는 상기 원본 이미지에 기초하여, 상기 실제 객체에 대응하는 변형 후의 이미지와 변형 전의 이미지 사이의 변환 관계를 결정하는 단계는, 상기 실제 객체의 원본 이미지, 상기 변형 정보 및 대응 관계에 기초하여, 상기 원본 이미지에서 상기 실제 객체에 대응하는 변형 후의 변형점을 결정하는 단계; 및 상기 실제 객체에 대응하는 변형 후의 변형점, 상기 실제 객체의 변형 전의 변형점 및 상기 실제 객체에 대응하는 3차원 포즈 결과에 기초하여, 상기 실제 객체에 대응하는 변형 후의 이미지와 변형 전의 이미지 사이의 변환 관계를 결정하는 단계를 포함하고, 상기 대응 관계는 샘플 이미지에서 상이한 변형 정보 하에서, 변형 전후에 객체가 대응하는 변형점에 기초하여 확립할 수 있다.
이때, 상기 실제 객체에 대응하는 변형 후의 변형점, 상기 실제 객체의 변형 전의 변형점 및 상기 실제 객체에 대응하는 3차원 포즈 결과에 기초하여, 상기 실제 객체에 대응하는 변형 후의 이미지와 변형 전의 이미지 사이의 변환 관계를 결정하는 단계는, 상기 실제 객체에 대응하는 각각의 변형점의 가중치를 결정하는 단계; 및 각 변형점의 가중치, 상기 변형될 객체에 대응하는 변형 후의 변형점, 상기 실제 객체의 변형 전의 변형점 및 상기 실제 객체에 대응하는 3차원 포즈 결과에 기초하여, 상기 실제 객체에 대응하는 변형 후의 이미지와 변형 전의 이미지 사이의 변환 관계를 결정하는 단계를 포함할 수 있다.
이때, 상기 실제 객체에 대응하는 변형 후의 이미지에 기초하여, 변형 후의 상기 처리될 이미지를 결정하는 단계는, 상기 처리될 이미지에 포함된 상기 실제 객체의 변형 전의 이미지를 상기 실제 객체에 대응하는 변형 후의 이미지로 교체하여, 변형 후의 상기 처리될 이미지를 획득하는 단계; 및 상기 실제 객체에 대응하는 변형 후의 이미지 및 상기 실제 객체에 대응하는 변형 전의 이미지에 기초하여, 차분 이미지를 결정하고, 상기 차분 이미지에 기초하여, 변형 후의 상기 처리될 이미지를 결정하는 단계 중에서 적어도 하나를 포함할 수 있다.
Figure pat00001
플묀 灐 이미지 처리 장치는, 장면의 깊이 이미지를 포함하는 처리될 이미지를 획득하는 이미지 획득 모듈; 상기 깊이 이미지에 기초하여, 상기 깊이 이미지에 대응하는 3차원 포인트 클라우드 데이터를 결정하는 3D 포인트 클라우드 데이터 결정 모듈; 및 상기 3차원 포인트 클라우드 데이터에 기초하여, 상기 장면에 포함된 객체를 추출한 결과인 객체 추출 결과를 획득하는 3차원 검출 결과 결정 모듈을 포함한다.
이때, 이미지 처리 장치는 상기 처리될 이미지에 포함된 실제 객체에 대한 가상 객체의 변형 정보를 획득하는 변형 정보 획득 모듈; 및 상기 변형 정보에 기초하여, 상기 실제 객체를 변형하여 변형 후의 상기 처리될 이미지를 획득하는 이미지 변형 모듈을 더 포함할 수 있다.
도 1은 일 실시 예에 따른 이미지 처리 방법에 대한 흐름도이다.
도 2는 일 실시 예에 따른 이미지 처리 방법에서 서브 이미지에 기초하여 객체의 추출 결과를 결정하는 방법에 대한 흐름도이다.
도 3은 일 실시 예에 따른 이미지 처리 방법에서 단일 격자의 정보에 기초하여 해당 격자의 가중치를 추론하는 흐름도이다.
도 4a는 5개의 인접 격자의 분포에 대한 예시도이다.
도 4b는 각 인접 격자들 사이의 의존 관계에 대한 예시도이다.
도 4c는 일 실시예에 따라 제공한 각 인접 격자들 사이의 다른 의존 관계에 대한 예시도이다.
도 5는 일 실시 예에 따른 이미지 처리 방법에서 인접 격자 사이의 관계에 따라 격자의 가중치를 추론하는 흐름도이다.
도 6은 일 실시 예에 따른 이미지 처리 방법에서 컬러 이미지 및 깊이 이미지에 기초하여 객체의 추출 결과를 결정하는 방법에 대한 흐름도이다.
도 7은 일 실시 예에 따른 이미지 처리 방법에서 컬러 이미지 및 깊이 이미지에 기초하여 객체의 추출 결과를 결정하는 다른 방법에 대한 흐름도이다.
도 8은 일 실시 예에 따른 형상 완성 방법에 대한 흐름도이다.
도 9는 다른 실시 예에 따른 형상 완성 방법에 대한 흐름도이다.
도 10은 일 실시 예에 따른 공간 손실 함수에 기초한 훈련 모델 방법에 대한 흐름도이다.
도 11은 인접한 2개의 3차원 객체의 3차원 바운딩 박스의 공간 위치 관계도이다.
도 12는 인접한 2개의 3차원 객체의 다른 3차원 바운딩 박스의 공간 위치 관계도이다.
도 13은 일 실시 예에 따른 3차원 검출 결과를 세분화하는 방법에 대한 흐름도이다.
도 14는 일 실시 예에 따른 3차원 검출 결과를 세분화하는 다른 방법에 대한 흐름도이다.
도 15는 일 실시 예에 따른 컬러 이미지 및 깊이 이미지에 기초하여 객체의 3차원 검출 결과를 결정하는 방법에 대한 흐름도이다.
도 16은 일 실시 예에 따른 객체를 변형하는 이미지 처리 방법에 대한 흐름도이다.
도 17은 일 실시 예에 따른 가상 객체에 의해 처리될 이미지에 포함된 변형될 객체를 변형시키는 방법에 대한 흐름도이다.
도 18은 일 실시 예에 따른 가상 객체에 의해 처리될 이미지에 포함된 변형될 객체를 변형시키는 예에 대한 흐름도이다.
도 19a는 가상 객체에 의해 처리될 이미지에 포함된 소파를 변형시키는 효과가 적용 전의 개략도이다.
도 19b는 가상 객체에 의해 처리될 이미지에 포함된 소파를 변형시키는 효과가 적용 후의 개략도이다.
도 20은 일 실시 예에 따른 이미지 처리 장치의 구조에 대한 예시도이다.
도 21은 일 실시 예에 따른 객체를 변형하는 이미지 처리 장치의 구조에 대한 예시도이다.
도 22는 일 실시 예에 따른 전자 장치의 구조에 대한 예시도이다.
본 개시의 목적, 특징 및 장점을 보다 명확하고 이해하기 쉽게 하기 위해, 이하, 첨부 도면과 함께 본 개시의 실시예의 기술 방안에 대해 명확하고 완전하게 설명한다. 설명되는 실시예는 본 개시의 실시예의 일부일 뿐, 모든 실시예가 아님은 자명하다. 본 개시의 실시예에 기초하여, 해당 기술분야에서의 통상의 지식을 가진 자가 창조적 노력 없이 획득한 다른 모든 실시예는 모두 본 개시의 보호범위에 속한다.
이하, 본 개시의 실시예에 대해 상세하게 설명한다. 해당 실시예의 예시는 첨부 도면에 도시되며, 처음부터 끝까지 동일하거나 유사한 부호는 동일하거나 유사한 요소 또는 동일하거나 유사한 기능을 갖는 요소를 나타낸다. 첨부 도면을 참조하여 아래에 설명된 실시예는 예시적인 것으로, 단지 본 개시를 설명하기 위한 것이며, 본 개시를 제한하는 것으로 해석되어서는 안 된다.
해당 기술분야에서의 통상의 지식을 가진 자는, 구체적으로 언급하지 않는 이상, 본 명세서에서 사용된 단수 형태의 '하나' 및 '해당'은 복수 형태도 포함할 수 있음을 이해할 수 있다. 본 개시의 명세서에서 사용된 용어'포함하다'는 특징, 정수, 단계, 동작, 요소 및/또는 구성 요소의 존재를 지칭하지만, 하나 이상의 다른 특징, 정수, 단계, 동작, 요소, 구성 요소 및/또는 이들의 조합의 존재 또는 추가를 배제하지는 않는다는 것을 이해해야 한다. 요소가 다른 요소에 '연결' 또는 '결합'한 것으로 언급할 때, 다른 요소에 직접 연결되거나 결합될 수 있고, 또는 중간 요소가 존재할 수도 있음을 이해해야 한다. 또한, 본 명세서에서 사용한 '연결' 또는 '결합'은 무선 연결 또는 무선 결합을 포함할 수 있다. 본문에서 사용한 용어 '및/또는'은 하나 이상의 연관된 나열 항목의 모든 또는 임의의 단위 및 모든 조합을 포함한다
본 개시의 방안을 더 잘 이해하고 설명하기 위해, 본 개시에서 언급된 일부 기술적 용어에 대해 간략하게 설명한다.
복셀(voxel)은 볼륨(volume) 요소의 약칭으로, 3차원 공간 분할 상에서 가장 작은 디지털 데이터 단위이며, 2차원 공간에서의 가장 작은 단위인 픽셀과 유사하다.
3차원 기하학적 특징은 3차원 요소의 기하학적 표현이다. 여기서 요소는 포인트 클라우드, 메쉬일 수 있고, 포인트 클라우드의 포인트, 메쉬의 정점 또는 면일 수도 있다.
3차원 포인트 클라우드 데이터는 복수의 3차원 이산 포인트로 구성된 포인트 세트로, 3차원 포인트 클라우드 데이터는 객체의 3차원 기하학적 특징을 포함할 수 있다.
깊이 이미지는 시점의 장면 객체의 표면의 거리와 관련된 정보의 이미지 또는 이미지 채널을 포함한다. 그중, 깊이 이미지의 각 픽셀의 그레이 스케일 값은 장면의 특정 지점과 카메라 사이의 거리를 나타내는데 사용할 수 있다.
특징 맵(Feature map)은 이미지와 필터의 컨볼루션으로 얻은 특징 맵으로, 특징 맵은 필터와 결합하여 컨볼루션을 통해 새로운 특징 맵을 생성할 수 있다.
신경망(NN; Neural Network)은 동물 신경망의 행동 특징을 모방하고 분포식 병렬 정보 처리를 수행하는 알고리즘 수학 모델이다. 이러한 종류의 네트워크는 시스템의 복잡성에 의존하고, 내부의 다량의 노드 사이의 상호연결 관계를 조정하여 정보 처리의 목적을 달성한다.
다층 퍼셉트론(MLP: Multilayer Perceptron)은 인공 신경망(ANN; Artificial Neural Network)이라고도 하며, 입력 및 출력 레이어 외에도, 중간에 여러 개의 숨겨진 레이어가 있을 수 있다.
캐드(CAD; Computer Aided Design)는 컴퓨터와 그래픽 장비를 사용하여 설계자가 설계 작업을 수행하는데 도움이 되는 대화식 도면 시스템을 뜻한다.
상술한 문제에 대해, 본 개시는 처리될 이미지를 획득한 후, 처리될 이미지 중에서 깊이 이미지에 대응하는 3차원 포인트 클라우드 데이터를 결정하고, 3차원 포인트 클라우드 데이터에 기초하여 장면에 포함된 객체를 추출한 결과인 객체 추출 결과를 얻을 수 있다. 3차원 포인트 클라우드 데이터는 복수의 3차원 이산 포인트로 구성된 포인트 세트를 나타내므로, 그 데이터 양은 3차원 복셀에 대응하는 데이터 양보다 적다. 따라서, 3차원 포인트 클라우드 데이터에 기초하여 장면 중에서 객체의 추출 결과를 획득하는 것은, 저장 공간을 절약하고 데이터 작업량을 줄이고 알고리즘의 작업 효율을 향상시킬 수 있다. 동시에, 3차원 포인트 클라우드 데이터는 객체의 3차원 구조 특징을 기술할 수 있고, 3차원 포인트 클라우드 데이터에 기초한 객체 추출 결과는 보다 정확하다. 또한, MLP 인코더는 3차원 포인트 클라우드 데이터의 특징 추출에 사용되며, 3차원 포인트 클라우드 데이터를 매트릭스로 변환하여 데이터 처리량을 더욱 줄이고 알고리즘의 효율성을 향상시킬 수 있다.
이하, 구체적인 실시예를 통해 본 개시의 기술 방안이 상술한 기술적 문제를 어떻게 해결할 수 있는지에 대해 상세히 설명한다. 아래의 특정 실시예는 서로 결합될 수 있으며, 동일하거나 유사한 개념 또는 프로세스에 대해선 일부 실시예에서 다시 설명하지 않을 수 있다. 이하, 첨부된 도면과 함께 본 개시의 실시 예에 대해 설명한다.
도 1은 일 실시 예에 따른 이미지 처리 방법에 대한 흐름도이다.
도 1을 참조하면, 이미지 처리 방법은 110단계에서 130단계를 포함할 수 있다.
110단계는 장면의 깊이 이미지를 포함하는 처리될 이미지를 획득한다.
이때, 처리될 이미지는 그중 객체의 추출 결과를 결정해야 하는 이미지를 의미하고, 처리될 이미지는 깊이 이미지 촬영 기능을 갖는 단말 장치에 의해 캡처된 깊이 이미지거나, 컬러 이미지에 기초하여 처리함으로써 획득된 깊이 이미지일 수 있다. 장면에 포함된 객체는 사람, 동물 등 객체를 포함하나 이에 제한되지 않는다. 하나 이상의 객체가 동시에 장면에 포함될 수 있다.
120단계는 깊이 이미지에 기초하여, 깊이 이미지에 대응하는 3차원 포인트 클라우드 데이터를 결정한다.
구체적으로, 깊이 이미지에 기초하여, 깊이 이미지에 대응하는 3차원 포인트 클라우드 데이터를 결정하는 한 가지 방법은, 깊이 이미지의 2차원 이미지 좌표 및 깊이 정보를 이미지 좌표계로부터 월드 좌표계로 변환하는 것이다. 3차원 포인트 클라우드 데이터는 3차원 공간에서 객체의 3차원 구조적 특징, 즉 3차원 기하학적 특징을 기술할 수 있고, 깊이 이미지 후방 투영으로부터 3차원 공간으로 변환된 각각의 3차원 포인트는 원본 깊이 이미지의 각 픽셀에 대응한다.
130단계는 3차원 포인트 클라우드 데이터에 기초하여, 장면에 포함된 객체를 추출한 결과인 객체 추출 결과를 획득한다.
이때, 객체 추출 결과는 처리될 이미지에서 객체의 영역을 나타낸다. 장면이 복수의 객체를 포함하는 경우, 객체 추출 결과는 처리될 이미지에 포함된 각 객체에 대응하는 객체 영역을 나타낸다. 객체 추출 결과는 객체 영역 식별을 갖는 이미지일 수 있고, 객체 영역 식별은 마커 박스일 수 있고, 해당 마커 박스에 의해 선택된 영역은 객체 영역이다.
본 개시의 이미지 처리 방법에서, 처리될 이미지를 획득한 후, 처리될 이미지 중에서 장면의 깊이 이미지에 기초하여, 깊이 이미지에 대응하는 3차원 포인트 클라우드 데이터를 결정할 수 있다. 그리고, 3차원 포인트 클라우드 데이터에 기초하여, 장면 중에서 객체의 추출 결과를 획득할 수 있다. 이때, 3차원 포인트 클라우드 데이터는 복수의 3차원 이산 포인트로 구성된 포인트 세트를 나타내므로, 그 데이터 양은 3차원 복셀에 대응하는 데이터 양보다 적다. 따라서, 3차원 포인트 클라우드 데이터에 기초하여 장면 중에서 객체의 추출 결과를 획득하는 것은, 저장 공간을 절약하고 데이터 작업량을 줄이고 알고리즘의 작업 효율을 향상시킬 수 있다.
130단계는 3차원 포인트 클라우드 데이터에 기초하여, 3차원 포인트 클라우드 데이터에 대응하는 매트릭스를 결정하고, 매트릭스에 기초하여 제1 특징 맵을 결정하고, 제1 특징 맵에 기초하여 장면에 포함된 객체의 추출한 결과인 객체 추출 결과를 획득할 수 있다.
구체적으로, 3차원 포인트 클라우드 데이터에 대해 특징을 추출할 때, 먼저 3차원 포인트 클라우드 데이터를 매트릭스로 변환하여 데이터 처리량을 줄일 수 있다. 3차원 포인트 클라우드 데이터 특징 추출 시, MLP 인코더를 사용할 수 있고, MLP 인코더는 데이터의 특징 추출 시, 먼저 데이터를 매트릭스로 변환한 다음 매트릭스에 대해 후속 처리하여 해당 데이터에 대응하는 특징 맵을 획득한다. 예를 들어, 3차원 포인트 클라우드 데이터는 N개의 포인트를 포함하고, 3차원 포인트 클라우드 데이터에 대응하는 매트릭스는 Nx3의 매트릭스로 표현한다.
본 개시의 이미지 처리 방법에서, MLP 인코더는 특징 추출을 위해 사용되고, MLP 인코더는 다음과 같은 방식으로 훈련되어 얻을 수 있다.
1) 샘플 이미지를 획득한다. 각 샘플 이미지는 장면의 깊이 이미지를 포함하고, 각 샘플 이미지에는 각 객체의 라벨 결과가 표시되며, 라벨 결과는 샘플 이미지에서 각 객체의 3차원 검출 결과를 나타낸다.
2) 각 샘플 이미지에 대응하는 깊이 이미지에 기초하여, 초기 네트워크 모델의 손실 함수가 수렴될 때까지 초기 네트워크 모델을 훈련하고, 훈련이 종료될 때의 모델을 MLP 인코더로 사용한다. 이때, 손실 함수는 각 샘플 이미지의 예측 결과와 라벨 결과의 차이 정도를 나타낸다.
3차원 검출 결과는 3 차원 객체 프레임, 3차원 키 포인트, 3차원 객체 분할 결과 등을 포함할 수 있고, 대응하는 예측 결과는 3차원 검출 결과에 대응한다. 3차원 검출 결과가 훈련 중에 결합되어 사용될 수 있음을 이해할 수 있다. 3차원 검출 결과를 통해, 훈련된 MLP 인코더가 추출한 특징의 정확 여부를 결정한다.
본 개시의 이미지 처리 방법에서, 3차원 포인트 클라우드 데이터에 기초하여, 3차원 포인트 클라우드 데이터에 대응하는 매트릭스를 결정하는 것은, 3차원 포인트 클라우드 데이터에서 객체에 속하는 포인트 클라우드 데이터를 결정하고, 3차원 포인트 클라우드 데이터에서 객체에 속하는 포인트 클라우드 데이터에 기초하여 3차원 포인트 클라우드 데이터에 대응하는 매트릭스를 결정할 수 있다.
이때, 3차원 포인트 클라우드 데이터의 특징 추출 전에, 3차원 포인트 클라우드 데이터에서 객체에 속하는 포인트 클라우드 데이터를 먼저 결정하여, 특징 추출 시, 3차원 포인트 클라우드 데이터에서 객체에 속하는 포인트 클라우드 데이터에 대해서만 특징을 추출하고, 객체에 속하지 않은 포인트 클라우드 데이터에 대해서는 특징을 추출하지 않아, 데이터 처리량을 줄일 수 있다. 이때, 객체에 속하지 않는 포인트 클라우드 데이터는 이미지의 배경에 해당하는 포인트 클라우드 데이터일 수 있다.
본 개시의 이미지 처리 방법에서, 처리될 이미지가 장면의 컬러 이미지 또한 포함한다면, 깊이 이미지는 컬러 이미지에 기초하여 결정될 수도 있다.
일부 장면들에서, 깊이 이미지를 획득하기 쉽지 않다면, 동일한 장면에 대응하는 컬러 이미지에 기초하여 대응하는 깊이 이미지가 획득할 수 있다.
컬러 이미지에 기초하여 깊이 이미지를 얻는 실현 가능한 방법 중에서 하나는 컬러 이미지에 기초하여, 깊이 이미지 예측 모델을 통해 해당 컬러 이미지에 대응하는 깊이 이미지를 예측할 수 있다. 이때, 해당 깊이 이미지 예측 모델의 입력은 장면의 컬러 이미지고, 출력은 해당 장면의 깊이 이미지다. 해당 모델은 샘플 이미지를 기반으로 초기 모델을 훈련하여 얻을 수 있고, 샘플 이미지는 동일한 장면에 속하는 컬러 이미지 및 대응하는 깊이 이미지를 포함한다.
본 개시의 이미지 처리 방법은 처리될 이미지에 장면의 컬러 이미지를 더 포함하면, 컬러 이미지에서 특징을 추출하여 제2 특징 맵을 획득하고, 제1 특징 맵 및 제2 특징 맵에 기초하여, 장면에 포함된 객체 추출 결과를 획득할 수 있다.
이때, 장면의 컬러 이미지가 처리될 이미지에 또한 포함되고, 객체의 2차원 특징이 컬러 이미지에 반영될 수 있다면, 제1 특징 맵(3차원 특징)에 기초하여 장면에 포함된 객체 추출 결과를 획득할 수 있고, 제1 특징 맵에 기초하여, 컬러 이미지의 2차원 특징(제2 특징 맵)을 결합하여 객체 추출 결과를 보다 정확하게 할 수 있다.
이때, 컬러 이미지의 특징 추출 방법은 컨볼루션 신경망과 같은 기존 기술의 특징 추출 방법에 의해 실현될 수 있다.
깊이 이미지가 컬러 이미지 예측에 기초하여 획득한 것이 아닌 경우, 이는 동일한 장면에 대해 촬영된 2개의 이미지고, 2개의 이미지의 차이를 최소화하기 위해, 해당 2개의 이미지에 대해 미리 정렬 처리할 수 있다. 예를 들어, 2개의 이미지를 동일 각도의 이미지로 변환하거나 2개의 이미지를 같은 조명의 이미지로 변환한다. 2개의 이미지의 시차로 인한 영향을 피하기 위해, 정렬된 깊이 이미지 및 컬러 이미지의 각 픽셀에 대해 하나씩 대응한다. 이미지의 정렬 처리는 종래 기술의 방법에 의해 실현될 수 있으며, 여기서 더는 반복하지 않는다.
본 개시의 이미지 처리 방법에서, 제1 특징 맵 및 제2 특징 맵에 기초하여, 장면에 포함된 객체 추출 결과를 획득하는 것은, 제1 특징 맵 및 제2 특징 맵을 융합하여 처리될 이미지에 대응하는 제3 특징 맵을 획득하고, 제3 특징 맵에 기초하여 장면에 포함된 객체 추출 결과를 획득할 수 있다.
이때, 제1 특징 맵 및 제2 특징 맵에 기초하여 객체 추출 결과를 얻을 때, 먼저 2개의 특징 맵을 하나의 특징 맵(제3 특징 맵)으로 융합할 수 있다. 제3 특징 맵은 제1 특징 맵에서의 3차원 기하학적 특징을 포함하고, 제2 특징 맵에서의 2차원 픽셀 특징을 더 포함한다.
본 개시에서, 포인트 클라우드 데이터의 포인트는 이미지의 형태이고, 제1 특징 맵 및 제2 특징 맵을 직렬 연결하여 제3 특징 맵을 획득할 수 있다.
본 개시에서, 제3 특징 맵에 기초하여 장면에 포함된 객체 추출 결과를 획득하는 것은 신경망 모델의 출력에 의해 얻어질 수 있고, 신경망 모델은 다음과 같은 방식으로 훈련되어 얻을 수 있다. 1) 샘플 이미지를 획득한다. 각 샘플 이미지는 동일한 장면의 깊이 이미지와 컬러 이미지를 포함하고, 각 샘플 이미지에는 각 대상의 라벨 결과가 표시되며, 라벨 결과는 샘플 이미지에서 각 객체의 3차원 검출 결과를 나타낸다. 2) 각 샘플 이미지에 대응하는 컬러 이미지의 제2 특징 맵과 깊이 이미지에 대응하는 제1 특징 맵에 기초하여, 각 샘플 이미지에 대응하는 제3 특징 맵을 결정한다. 3) 각 샘플 이미지에 대응하는 제3 특징 맵에 기초하여, 초기 네트워크 모델의 손실 함수가 수렴될 때까지 초기 네트워크 모델을 훈련하고, 훈련이 종료될 때의 모델을 신경망 모델로 사용한다. 그중, 손실 함수는 각 샘플 이미지의 예측 결과와 라벨 결과의 차이 정도를 나타낸다.
신경망 모델을 훈련할 때, 실제 요구에 기초하여 신경망 모델을 훈련할 수 있음을 이해할 수 있다. 예를 들어, 라벨 결과가 이미지의 각 객체에 대응하는 영역 이미지, 2차원 이미지 영역 분할 결과, 바운딩 박스 또는 키 포인트 중에서 하나 이상을 포함하면, 그에 대응하여, 신경망 모델의 출력은 처리될 이미지에 포함된 각 객체에 대응하는 영역 이미지, 바운딩 박스, 또는 키 포인트 중에서 하나 이상을 포함할 수 있다. 신경망 모델의 출력에 기초하여, 모든 객체의 추출 결과를 얻을 수 있다.
본 개시에서, 제3 특징 맵에 기초하여, 장면에 포함된 객체 추출 결과를 획득하는 것은, 제3 특징 맵에 대응하는 처리될 이미지를 분할하여, 복수개의 서브 이미지를 획득하고, 각 서브 이미지에 대응하는 제3 특징 맵 및/또는 각 서브 이미지의 인접 서브 이미지에 대응하는 제3 특징 맵에 기초하여 각 서브 이미지에 대응하는 객체의 추출 결과를 결정하고, 각 서브 이미지에 대응하는 객체의 추출 결과를 융합하여 장면에 포함된 객체 추출 결과를 획득할 수 있다.
이때, 처리될 이미지의 일부 이미지 영역(서브 이미지)은 대응하는 서브 특징 맵을 가질 수 있고, 각 서브 이미지는 장면에 포함된 객체의 추출 결과, 즉 각 서브 특징 맵에 대응하는 객체의 추출 결과에 대응한다. 본 개시에서, 이미지가 복수의 객체를 포함하는 경우, 각 서브 이미지는 상이한 객체에 대응하는 서브 이미지일 수 있고, 각 서브 이미지에서, 복수의 서브 이미지에 대응하는 객체의 추출 결과는 동일한 객체에 대응할 수도 있고, 상이한 객체에 대응할 수도 있다.
제3 특징 맵에 대해, 처리될 이미지의 각 객체는 모두 대응하는 서브 특징 맵을 가질 수 있으며, 즉 서브 특징 맵은 제3 특징 맵의 일부 특징 맵이다. 따라서, 서브 이미지에 대응하는 객체의 추출 결과는 해당 서브 이미지에 대응하는 서브 특징 맵에 대응하는 객체의 추출 결과를 나타낼 수 있다. 서브 특징 맵은 제3 특징 맵에서의 부분 특징 맵을 지칭하고, 모든 서브 특징 맵이 완전한 제3 특징 맵에 대응하는 경우, 각 서브 이미지에 대응하는 객체의 추출 결과를 융합하여 처리될 이미지에서 객체 추출 결과를 얻을 수 있다(장면에 포함된 객체 추출 결과).
본 개시에서, 제1 특징 맵에 기초하여 장면에 포함된 객체 추출 결과를 결정하는 경우, 서브 이미지는 제1 특징 맵에 기초하여 결정된다는 것을 이해할 수 있다. 제2 특징 맵에 기초하여 장면에 포함된 객체 추출 결과를 결정하는 경우, 서브 이미지는 제2 특징 맵에 기초하여 결정된다.
본 개시에서, 각 서브 이미지에 대응하는 제3 특징 맵 및/또는 각 서브 이미지의 인접 서브 이미지에 대응하는 제3 특징 맵에 기초하여, 각 서브 이미지에 대응하는 객체의 추출 결과를 결정하는 것은, 각 서브 이미지의 가중치를 결정하고, 각 서브 이미지에 대응하는 제3 특징 맵 및/또는 각 서브 이미지의 인접 서브 이미지에 대응하는 제3 특징 맵 및 각 서브 이미지에 대응하는 가중치에 기초하여 각 서브 이미지에 대응하는 객체의 추출 결과를 결정할 수 있다.
이때, 객체의 경우, 각 서브 이미지가 해당 객체에 속하는지 여부의 가능성은 가중치로 표현될 수 있는데, 즉 가중치가 클수록 해당 서브 이미지가 해당 객체일 가능성이 높다. 그리고, 각 서브 이미지에 대응하는 객체의 추출 결과를 융합할 때, 각 서브 이미지의 대응 가중치를 고려하여, 결정된 각 서브 이미지에 대응하는 객체의 추출 결과를 보다 정확하게 할 수 있다.
결정된 각 서브 이미지에 대응하는 가중치는 신경망 모델에 의해 결정될 수 있고, 즉, 모델 훈련 과정에서, 각 서브 이미지에 대응하는 객체의 추출 결과 및 대응하는 가중치에 기초하여, 모델을 훈련할 수 있고, 각 서브 이미지의 가중치는 훈련된 모델에 기초하여 결정될 수 있다.
본 개시에서, 각 서브 이미지의 가중치를 결정하는 것은, 아래의 3가지 방안 중에서 어느 하나를 포함할 수 있다.
첫째 방안, 각 서브 이미지에 대응하는 서브 특징 맵에 기초하여, 각 서브 이미지의 가중치를 결정할 수 있다.
이때, 각 서브 이미지에 대응하는 서브 특징 맵의 특징에 따라 해당 서브 이미지의 가중치를 결정할 수 있다. 서브 이미지에 대응하는 서브 특징 맵에서, 해당 서브 특징 맵의 각 특징은 각 객체에 속할 가능성이 상이하다. 따라서, 각 서브 이미지 자체의 특징에 기초하여 해당 서브 이미지의 가중치가 결정될 수 있고, 해당 서브 이미지가 어떤 객체에 속할 가능성은 가중치로 표시된다.
둘째 방안, 처리될 이미지의 후보 포인트를 결정하고, 각 서브 이미지에 대응하는 후보 포인트에 기초하여, 각 서브 이미지에 대응하는 가중치를 결정할 수 있다.
이때, 후보 포인트는 객체의 위치를 나타낼 수 있고, 후보 포인트를 통해 이미지에서의 객체의 위치를 결정할 수 있다. 각 후보 포인트가 각 객체에 속할 가능성은 상이하기 때문에, 각 서브 이미지에 대응하는 후보 포인트에 기초하여 해당 서브 이미지의 가중치를 결정할 수 있고, 해당 서브 이미지가 어떤 객체에 속할 가능성은 가중치로 표시된다.
셋째 방안, 각 서브 이미지에 대응하는 후보 포인트에 대응하는 서브 특징 맵에 기초하여, 각 서브 이미지에 대응하는 가중치를 결정할 수 있다.
이때, 각 서브 특징 맵이 각 객체에 속할 가능성이 상이하며, 후보 포인트에 대응하는 서브 특징 맵에 기초하여, 대응하는 서브 이미지의 가중치 또한 결정할 수 있다.
본 개시에서, 처리될 이미지의 후보 포인트를 결정하는 방안은 아래의 3가지 방안 중에서 어느 하나를 포함할 수 있다.
첫째 방안, 처리될 이미지의 각 픽셀 포인트를 처리될 이미지의 후보 포인트로 간주한다.
이때, 픽셀 포인트에 기초하여 처리될 이미지에서의 객체의 위치를 *?*정확하게 반영할 수 있고, 후보 포인트로서의 픽셀 포인트를 통해 객체의 추출 결과를 정확하게 결정할 수 있다.
둘째 방안, 각 서브 이미지에 대응하는 픽셀 포인트에 기초하여, 각 서브 이미지에 대응하는 후보 포인트를 결정한다.
이때, 각 서브 특징 이미지에 대응하는 픽셀 포인트에 기초하여, 각 서브 특징 맵에 대응하는 후보 포인트를 결정할 수 있고, 후보 포인트는 복수의 픽셀 포인트 또는 하나의 픽셀 포인트에 대응할 수 있다.
서브 이미지에 대응하는 픽셀 포인트를 예로 들어, 해당 서브 이미지에 대응하는 픽셀 포인트에 기초하여, 해당 서브 이미지에 대응하는 후보 포인트를 결정하기 위한 구현 방법은 해당 서브 이미지에 대응하는 픽셀 포인트 중에서 중간 위치에 있는 픽셀 포인트를 해당 서브 이미지의 후보 포인트로 간주할 수 있다. 또한, 중간 위치 외에도 특정 위치의 픽셀 포인트를 후보 포인트로 간주할 수도 있고, 그외의 다른 방법으로 계산된 픽셀 포인트를 후보 포인트로 간주할 수도 있다.
셋째 방안, 처리될 이미지에 대해 적어도 2개의 샘플링 포인트를 획득하고, 적어도 2개의 샘플링 포인트에 따라 처리될 이미지를 분할하여 적어도 2개의 대응하는 서브 이미지를 획득하고, 각 서브 이미지에 대응하는 샘플링 포인트를 후보 포인트로 간주한다.
이때, 샘플링 포인트는 픽셀 포인트일 수 있으며, N개의 픽셀 포인트 간격으로 한 번 샘플링하는 것과 같이 설정된 샘플링 규칙에 따라 샘플링할 수 있다. 샘플링 규칙은 실제 규칙에 기초하여 설정할 수 있으며, 본 개시는 샘플링 규칙 중에서 하나에 제한되지 않는다.
이때, 복수개의 서브 이미지에는 다음 상황이 포함될 수 있다.
첫 번째 경우, 복수의 샘플링 포인트는 하나의 서브 이미지에 대응한다. 예를 들어, 적어도 2개의 샘플링 포인트에서, 인접한 2개의 샘플링 포인트 사이의 거리는 설정값보다 작으며, 이는 해당 2개의 샘플링 포인트가 동일한 객체에 대응할 수 있고, 해당 2개의 샘플링 포인트가 대응하는 영역이 서브 이미지로 고려될 수 있음을 의미한다.
두 번째 경우, 하나의 샘플링 포인트는 하나의 서브 이미지에 대응한다. 즉, 샘플링에 의해 획득된 적어도 2개의 샘플링 포인트의 개수에 따라, 상응하는 개수의 서브 이미지를 획득한다.
이때, 첫 번째 경우에, 서브 이미지에 대응하는 복수의 샘플링 포인트 중에서 임의의 샘플링 포인트를 해당 서브 이미지의 후보 포인트로 간주할 수 있다. 두 번째 경우에, 하나의 샘플링 포인트는 하나의 서브 이미지에 대응하기 때문에, 해당 서브 이미지에 대응하는 샘플링 포인트는 후보 포인트로서 직접 사용할 수 있다.
본 개시에서, 각 서브 이미지에 대응하는 후보 포인트에 기초하여, 각 서브 이미지에 대응하는 가중치를 결정하는 것은, 각 서브 이미지에 대응하는 후보 포인트에 대해, 해당 후보 포인트와 그 인접 서브 이미지의 후보 포인트 사이의 유사 관계를 결정하고, 각 후보 포인트와 그 인접 서브 이미지의 후보 포인트 사이의 유사 관계에 기초하여, 각 서브 이미지에 대응하는 가중치를 결정할 수 있다.
이때, 인접 서브 이미지에 대해, 인접 서브 이미지가 동일한 객체에 대응할 수 있다는 것을 고려하면, 인접 서브 이미지에 대응하는 객체들 간의 유사 관계에 기초하여 각 서브 이미지에 대응하는 가중치를 결정할 수 있다. 인접 서브 이미지에 대응하는 객체들 간의 유사 관계는 인접 서브 이미지 중에서 각 서브 이미지에 대응하는 후보 포인트 간의 유사 관계에 의해 표현될 수 있다.
본 개시에서, 각 후보 포인트는 벡터로 표현될 수 있고, 후보 포인트와 그 인접 후보 포인트 사이의 유사 관계는 벡터의 내적에 의해 표현될 수 있다. 벡터의 내적 값이 임계값보다 큰 경우, 2개의 후보 포인트는 유사함을 의미하고, 반대로 2개의 벡터의 내적 값이 임계값보다 작은 경우, 2개의 후보 포인트는 유사하지 않음을 의미한다. 후보 포인트 및 그 인접 후보 포인트에 대해, 각 후보 포인트에 대응하는 유사한 후보 포인트의 개수가 결정된다. 상이한 개수는 상이한 가중치에 해당하고, 개수가 많을수록 해당 후보 포인트가 특정 종류의 객체에 속할 가능성이 커지며, 대응하는 가중치 또한 커진다. 후보 포인트 및 그 인접 후보 포인트 중에서 각 후보 포인트에 대응하는 가중치를 결정한 후, 이들 가중치는 융합될 수 있고(예를 들어, 평균값을 구함), 융합된 가중치는 후보 포인트에 대응하는 가중치로서 사용될 수 있다. 따라서, 서브 이미지에 대응하는 가중치를 결정할 때, 해당 서브 이미지와 그 인접 서브 이미지 사이의 유사 관계가 고려되므로, 해당 서브 이미지의 가중치가 보다 정확하게 결정될 수 있다.
본 개시에서, 각 후보 포인트는 분수에 해당할 수 있고, 해당 분수는 해당 후보 포인트가 특정 종류의 객체에 속할 확률을 나타내고, 확률이 클수록 해당 종류의 객체에 속할 가능성이 크다.
본 개시의 선택적 방안에서, 해당 확률값에 대해 추가로 정규화 처리하여, 정규화 결과를 통해 해당 후보 포인트가 해당 종류의 객체에 속하는지 여부를 식별할 수 있다. 예를 들어, 설정된 확률값보다 큰 후보 포인트의 정규화 결과가 1이면, 해당 후보 포인트는 해당 종류의 객체에 속하고, 설정된 확률값보다 크지 않은 후보 포인트의 정규화 결과가 0이면, 해당 후보 포인트는 해당 종류의 객체에 속하지 않음을 의미할 수 있다.
일 예로서, 서브 이미지 A에 대응하는 가중치를 결정하는 예를 들면, 해당 서브 이미지 A의 인접 서브 이미지는 서브 이미지 B 및 서브 이미지 C이고, 서브 이미지 A에 대응하는 후보 포인트는 후보 포인트 A이고, 서브 이미지 B에 대응하는 후보 포인트는 후보 포인트 B이고, 서브 이미지 C에 대응하는 후보 포인트는 후보 포인트 C이다. 각 후보 포인트는 벡터에 대응하고, 후보 포인트 a에 대응하는 벡터는 x이고, 후보 포인트 b에 대응하는 벡터는 y이고, 후보 포인트 c에 대응하는 벡터는 z이고, 각 두 후보 포인트 사이의 벡터의 내적을 각각 계산한다. 후보 포인트 a에 대응하는 유사 후보 포인트가 2개인 경우, 즉, 후보 포인트 b 및 후보 포인트 c가 모두 후보 포인트 a의 유사 후보 포인트인 경우, 후보 포인트 b에 대응하는 유사 후보 포인트는 1개이고, 즉 후보 포인트 a이고, 후보 포인트 c에 대응하는 유사 후보 포인트 1개, 즉 후보 포인트 a이다. 2 개의 유사 후보 포인트가 대응하는 가중치는 w1이고, 1개의 유사 후보 포인트가 대응하는 가중치는 w2이며, 후보 포인트 a에 대응하는 서브 이미지 A의 가중치는 (w1+w2+w1)/3이다. 같은 원리로, 다른 서브 이미지의 가중치는 또한 상술한 방법에 기초하여 결정되며, 여기서 더는 반복하지 않는다.
상술한 방법을 포함한 신경망을 훈련할 때, 각 후보 포인트는 손실에 대응하고, 각 서브 이미지의 평가는 또한 손실에 대응한다. 그래디언트 역(쾀) 전파 과정에서, 각 서브 이미지에 대응하는 그래디언트는 너무 큰 그래디언트를 피하기 위해 제한된다. 이때, 한 가지 제한 방법은 그래디언트에 1보다 작은 계수를 곱하는 것이다.
본 개시에서, 서브 이미지(앵커라고 할 수 있음)의 중심점 특징(서브 이미지의 중심 위치에 대응하는 특징)에 기초하여 객체의 카테고리 및 위치를 예측할 수 있지만, 자연 장면의 객체는 폐색 및 변형과 같은 다양한 문제를 겪게된다. 이전의 앵커 기반의 단일 단계의 방법은 앵커 중심의 특징을 사용하여 객체의 카테고리와 위치를 예측하고, 전체 객체의 외관을 암시적으로 표현하여 예측에 사용하였다. 훈련 데이터는 모든 반 폐색를 포함하기 어렵기 때문에, 훈련된 모델이 모든 경우의 외관을 배우는 것은 어렵다. 객체 특징이 폐색 영역에 있는 경우, 검출 정확도는 떨어진다. 이러한 문제를 해결하기 위해, 특정 앵커마다 여러 개의 인접한 격자(서브 이미지라고 할 수 있음)를 사용하여 예측하였다. 각 인접한 격자는 주로 객체의 부분적 특징(서브 특징 맵이라고 할 수 있음), 즉 부분에 초점을 둔 객체의 외관을 나타낸다. 비 폐색 영역의 예측을 통해, 여전히 강력한 검출을 얻을 수 있다. 본 개시의 모델은 RefineDet을 기반으로 한다. 그러나 RefineDet은 하나의 앵커에 대해 한 번의 예측만 하는 반면, 본 개시의 방법은 여러 번의 예측을 한다. 이런한 방식으로, 본 개시의 방법은 부분 폐색에 대해 더 강력할 수 있다.
도 2는 일 실시 예에 따른 이미지 처리 방법에서 서브 이미지에 기초하여 객체의 추출 결과를 결정하는 방법에 대한 흐름도이다.
도 2를 참조하면, 객체의 추출 결과를 결정하는 방법은 앵커 업데이트 모듈(220)을 통해서 처리될 이미지(210)에서 다음 특징 맵(P3, P4, P5, P6)(221, 222, 223, 224)을 검출하고, 4개의 특징 맵(221, 222, 223, 224)의 각각에 대해, 다중 예측 방법을 사용하여 예측을 진행한다. 훈련 단계에서, 다중 예측은 다중 예측 손실을 제공한다. 테스트 단계에서, 각 격자의 가중치에 따라 여러 예측 결과를 최종 예측 결과(객체 추출 결과라고 할 수 있음)로 결합한다.
도 2의 방법은 4 개의 특징 맵에서, P3, P4, P5, p6(221, 222, 223, 224) 각각은 다중 영역 예측을 이용하여 최종 예측 결과 검출한다. 업데이트된 각 앵커에 대해, 카테고리의 라벨 및 위치는 벡터로 표시된다. 카테고리 라벨과 위치는 동시에 예측된다. 위치 민감의 예측을 얻기 위해, 각 앵커에 대해, 중간 격자뿐만 아니라 인접 격자도 사용한다. 본문에서는 편의상 중간 격자와 주변 격자 모두 인접 격자라고 한다. 각 앵커에 대해, P3(221)와 같은 결합된 특징 맵을 얻은 후, 복수의 격자의 예측을 통해 그의 예측을 통계하여 얻을 수 있다.
도 2에 도시된 바와 같이, 다중 영역 예측 모듈(230, 240, 250, 260)을 통해 각 특징 맵(221, 222, 223, 224)에 대응하는 예측을 얻는다. 각각의 다중 영역 예측 모듈(230, 240, 250, 260)에서, P3(221)와 같은 특징 맵에 대해, K개의 예측기(231, 200)에서 오프셋 컨볼루션을 수행하여 K 개의 인접 격자의 예측 출력을 얻는다. 동시에, 격자 가중치 추론 모듈(234)을 사용하여 각 격자의 가중치를 얻는다. 그 후, 이러한 정보는 예측 융합 모듈(235)에 의해 융합되고, 최종 예측 출력을 얻는다. 각 격자의 예측은 손실에 대응한다. 동시에, 융합 예측 모듈(235)의 출력 또한 손실에 대응한다. 이를 통해 과도한 피팅을 줄일 수 있다.
해당 예시에서, 정의된 카테고리의 수는 N이고, 인접 격자의 수는 K이다. 특징 레이어에 앵커가 M개 있다고 가정한다. 이러한 방식으로, 레이어의 예측 출력의 차원은
Figure pat00002
이다. 여기에서의 위치는 4차원 벡터로 표시한다. 본 개시에서는 5개의 인접 격자를 사용하지만, 다른 개수의 격자를 사용할 수도 있다. 격자마다 신뢰성이 다를 수 있고, 격자 신뢰성을 추론하는 2가지 방법을 제공한다. 이러한 신뢰성에 따라 예측 융합 모듈(235)은 각기 다른 격자의 예측 결과를 결합한다.
Figure pat00003
를 격자 k의 가중치로 정의하고, k = 1, ... K, PK는 격자 k에 대응하는 특징 맵이고, s.t.는 제약 조건의 충족을 나타내고, s.t는 satisfy to에 만족하거나 straint to로 기울어진 것에 대한 약어이고, 이를 결합한 후의 예측 결과
Figure pat00004
는 다음과 <수학식 1>과 같이 정의된다.
[수학식 1]
Figure pat00005
여기서,
Figure pat00006
로 결합된 예측 결과에 기초하여, 맵에서의 최종 객체의 바운딩 박스는 최대 억제가 아닌 것에 의해 획득될 수 있다.
이 K개의 인접 격자 각각에 대해 예측기(231, 233)를 정의한다. 각 예측기(231, 233)는 해당 격자의 정보만 해석한다. 예를 들어, 상부 격자의 예측기는 상부 격자 주위의 특징 정보만을 사용한다. 다른 격자 예측기도 마찬가지다. 일반적으로 영역 특징을 사용하여 전체 정보를 추론할 수 있다. 예를 들어, 머리의 영역이 주어지면, 전체 객체의 위치를 *?*추론할 수 있다. 따라서, 인접 격자의 예측기는 중앙 격자에서 객체의 정보를 추론할 수 있다. 또한, 일부 영역이 폐색된 경우에도 다른 영역의 예측을 통해 강력한 예측을 얻을 수 있다. 이 K 개의 격자는 동일한 앵커에 대응한다. 다시 말해, 이들은 위치(x,y), 너비 및 높이를 포함한 동일한 앵커 매개 변수를 갖는다.
앵커는 크기가 다르며, 큰 앵커의 경우 인접 격자가 객체 영역에 빠지는 경향이 있다. 그 후, 인접 격자는 객체 일부 정보를 나타내는 경향이 있다. 다시 말해, 본 개시의 방법은 객체의 분할과 유사하다. 이런 경우 객체의 일부가 폐색된 경우에도 다른 부분을 통해 전체 객체를 검출할 수 있다. 작은 앵커의 경우 인접 격자는 객체의 일부 외관과 주변 환경 정보 또한 포함하는 경향이 있다. 환경 정보는 작은 객체를 구별하는 데 매우 유용하기 때문에, 이러한 전략은 작은 객체를 검출하는 데 매우 효과적이다.
본 개시에서 손실 함수는 분류 손실
Figure pat00007
과 위치 손실
Figure pat00008
의 2가지 손실 함수가 있다. 전체 손실 함수 L은 다음 <수학식 2>와 같이 정의된다.
[수학식 2]
Figure pat00009
여기서, 여기서
Figure pat00010
는 모든 앵커의 위치 손실을 나타내고,
Figure pat00011
는 모든 앵커의 분류 손실을 나타낸다.
Figure pat00012
의 경우, soft-max 손실 함수를 사용하고,
Figure pat00013
에 대해 smooth L1을 사용한다. 훈련 단계에서, 각 인접 격자 예측기에 대해, 독립된 손실을 정의한다. 따라서, K 개의 인접 격자에는 K개의 손실이 있다. 이 결합된 예측은 또한 손실에 대응한다. i번째 특징 맵 및 k번째 인접 격자 예측기의 경우,
Figure pat00014
Figure pat00015
는 각각 그 분류 및 위치 손실을 정의한다.
Figure pat00016
Figure pat00017
는 각각 i번째 특징 맵의 분류 및 위치 손실을 정의한다. F는 예측에 사용되는 특징 맵 세트를 정의한다. 분류 손실 및 위치 손실은 다음 <수학시 3>과 <수학식 4>와 같이 정의된다.
[수학식 3]
Figure pat00018
[수학식 4]
Figure pat00019
다중 손실 정의를 통해, 본 개시는 더 많은 제약 조건을 추가하였고, 이를 통해 과도한 피팅을 줄일 수 있다.
본 개시에서, 격자의 가중치를 추론하기 위한 2가지 방안을 제안한다. 하나는 격자 자체의 정보를 기반으로 하고, 다른 하나는 격자 사이의 관계를 기반으로 한다.
첫째 방안은 격자 자체의 정보에 따라 각 서브의 가중치를 결정하는 것이다. 격자의 가중치는 격자의 특징에 의해 영향을 받는다. 예를 들어, 격자 특징이 더 구별적일 때, 예측을 위해 더 많은 신뢰성을 제공하는 경향이 있다. 반대로, 이 특징이 차단되거나 잡음이 많으면 예측에 대한 신뢰성이 떨어진다. 격자 특징에 기초하고 학습 방법을 사용하여 최적의 격자 가중치를 얻는다. 다시 말해, 컨볼루션 방식을 통해 격자의 가중치를 얻을 수 있다.
도 3에 도시된 바와 같이, P3과 같은 특징 맵(310)이 주어지면, 그 카테고리 및 위치 예측은 오프셋 컨볼루션(320)에 의해 획득되고, 동시에 그 가중치는 다른 오프셋 컨볼루션(330) 및 Sigmoid(340)에 의해 획득된다. 각 격자의 예측 및 가중치는 예측 융합(350)에 입력되어 융합되고, 최종 예측 출력이 획득된다.
이때, 격자 k의 경우,
Figure pat00020
는 컨볼루션 후의 가중치를 정의한다. 그 후, sigmoid 함수를 적용하여
Figure pat00021
를 획득하고, 최종 가중치
Figure pat00022
를 다음 <수학식 5>와 같이 얻을 수 있다.
이때, i=1, ..., K 각각에 대해서 <수학식 5>를 수행함으로써 <수학식 1>의 제약이 충족될 수 있다. 상술한 방안에 따라, 보다 안정적인 격자는 더 많은 가중치를 얻을 수 있다.
둘째 방안은 격자 사이의 관계에 따라 격자의 가중치를 추론하는 것이다. 첫 번째 전략에서는 객자 간에 정보를 사용하지 않지만, 이러한 정보는 매우 유용하다. 격자의 가중치를 추론하는 데 사용할 수 있는 격자 간의 관계에는 3가지 종류가 있다.
도 4a에 도시된 바와 같이, 격자 a에서의 앵커에 대해, 5개의 인접 격자가 존재한다.
도 4b에 도시된 바와 같이, 격자 B를 예로 들어, 3가지 종류의 관계는, 1) 인접 격자의 특징 세트
Figure pat00023
, 2) B에서의 앵커 예측
Figure pat00024
, 3) A에 대한 B의 인접 앵커 예측
Figure pat00025
을 포함한다. 이러한 관계에 따라, A에서 앵커 B의 가중치 예측은 다음 <수학식 6>과 같이 정의된다.
[수학식 6]
Figure pat00026
여기서,
Figure pat00027
는 인접 격자의 객체 관계를 나타낸다. 예를 들어, 이미지에 말을 탄 사람이 있다. 말과 사람이 동시에 나타난다. 격자가 말인 것으로 판단될 때, 그 위의 격자는 사람을 포함할 가능성이 높다. 그러나 도4(b)에서 도시한 바와 같이, A에서 앵커의 카테고리 정보를 예측할 때,
Figure pat00028
를 알아야 하고,
Figure pat00029
의 추론은
Figure pat00030
에 의존한다. 따라서, 다음과 같은 특징 맵이 주어지면, 이러한 연관 관계는 전체 특징 맵에서 맵 구조를 구성한다. 이 맵 구조는 확률 맵 모델로 해결할 수 있다. 이 문제를 해결하기 위해, 신뢰 전파 방식을 사용하여 격자의 가중치를 추론해야 한다. 이는 모델을 엔드 투 엔드로 훈련하기가 어렵다.
이러한 문제를 해결하기 위해, 본 개시에서는
Figure pat00031
를 고려하지 않고, 다음 <수학식 7>과 같이 정의한다:
[수학식 7]
Figure pat00032
이러한 방식을 통해, 엔드 투 엔드 훈련을 진행할 수 있다. 이러한 새로운 관계는 도 4(c)에 도시되어 있으며, 도 4(c)는
Figure pat00033
를 고려하지 않을 때 격자 사이의 관계를 나타낸다. 도 4(c)에서, 원은 격자를 나타내고, 격자 사이의 연결은 격자 가중치를 추론할 때 두 격자가 이웃이라는 것을 나타낸다. 도 4(c)에서, 각 격자에는 4개의 변이 있고 다른 격자와 연결되며, 상이한 격자의 가중치는 상이한 특징으로 획득한다.
도 5는 일 실시 예에 따른 이미지 처리 방법에서 인접 격자 사이의 관계에 따라 격자의 가중치를 추론하는 흐름도이다.
도 5를 참조하면, 주어진 특징 맵(310)에 대해, K개의 오프셋 컨볼루션(520, 530)을 통해 각 격자의 예측을 얻는다. 이러한 예측은 스플라이싱되어 하나의 특징 맵을 얻는다. 동시에, 이 특징 맵은 오프셋 컨볼루션(540) 및 컨볼루션(550)에 의해 획득된다. 이 2개의 특징 맵(560, 570)을 스플라이싱(splicing)하여, 격자 사이의 관계를 나타내고, 스플라이싱된 특징 맵은 컨볼루션 및 sigmoid 컨볼루션(580)을 통해 각 격자의 가중치를 얻는다. 그런 다음, 이러한 정보는 예측 융합(590)을 통해 융합되고, 최종 예측 출력을 얻는다. 즉, K개의 인접 격자의 카테고리 예측과 특징을 결합하여 특징 맵를 얻은 다음, 해당 특징 맵에 대해 컨볼루션 및 sigmoid 연산을 수행하여 각 격자의 가중치를 얻는다.
이때, 본 개시에서, K개의 인접 격자는 공통된 앵커를 사용하여 오프셋 컨벌루션을 예측한다. 효율성을 계산하기 위해, 서로 다른 인접 격자에 대해 컨볼루션하는 새로운 레이어를 제안한다. 이 레이어에서, 특정 앵커에 대해 상단의 격자의 수신 필드는 수직 방향을 따라 -1로 오프셋된다. 다른 인접 격자의 경우, 수신 필드의 오프셋은 동일한 방식을 채택한다. 두 번째 격자 가중치의 추론 방법에서, 5개의 격자를 수신 필드로 선택한다. 이러한 방식으로, 다중 예측의 결합 및 손실 함수의 계산 과정이 보다 더 편리해질 수 있다.
컨볼루션 브랜치의 그래디언트를 제한한다. 그래디언트 역 전파 시, K개의 인접 격자의 그래디언트가 합산되어 역 전파된다. 이는 그래디언트에 K배를 곱한 것으로 볼 수 있다. 때로는 이로 인해 기울기 발산이 발생한다. 이 문제를 해결하기 위해 그래디언트에 10 진수를 곱할 수 있다.
본 개시에서, 각 서브 이미지에 대응하는 서브 특징 맵에 기초하여, 각 서브 이미지의 가중치를 결정하는 것은 다음 중에서 어느 하나를 포함할 수 있다.
첫째, 각 서브 이미지에 대해, 해당 서브 이미지의 중심 위치에 대응하는 제1 특징 벡터 및 해당 서브 이미지에 대응하는 서브 특징 맵에 대응하는 제2 특징 벡터를 결정하고, 각 서브 이미지에 대응하는 제1 특징 벡터 및 제2 특징 벡터에 기초하여, 각 서브 이미지의 가중치를 결정한다.
이때, 각 서브 이미지의 중심 위치에 대응하는 특징은 특정 종류의 객체에 속할 가능성이 높고, 해당 중심 위치에 대응하는 특징은 특징 벡터(제1 특징 벡터)로 표현될 수 있다. 각 서브 이미지에 대응하는 서브 특징 맵을 통해, 해당 서브 특징 맵이 특정 종류의 객체에 속할 가능성을 결정할 수 있고, 서브 특징 맵은 또한 특징 벡터(제1 특징 벡터)로 표현될 수 있다. 동일한 서브 이미지에 대해, 제1 특징 벡터와 제2 특징 벡터 사이의 내적에 기초하여 해당 서브 이미지의 가중치로 사용하고, 해당 가중치를 통해 해당 서브 이미지가 특정 종류의 객체에 속할 가능성을 나타내며, 이는 해당 서브 이미지의 가중치 결정을 보다 정확하게 할 수 있다. 이때, 제2 특징 벡터는 신경망 모델에 의해 결정될 수 있다.
둘째, 각 서브 이미지에 대응하는 서브 특징 맵에 대해, 해당 서브 특징 맵은 적어도 하나의 확률값에 대응하고, 각 확률값은 해당 서브 특징 맵이 대응하는 객체에 속하는 확률을 나타내고, 대응하는 객체들의 확률값에서의 최대 확률값을 해당 서브 이미지의 가중치로 한다.
이때, 각 서브 이미지는 서브 특징 맵에 대응하고, 각 서브 특징 맵에 대해, 각 객체에 속하는 경우 모두 대응하는 확률값이 있고, 각 서브 특징 맵은 적어도 하나의 확률값에 대응할 수 있고, 확률값은 해당 서브 특징 맵이 특정 종류의 객체에 속할 확률을 나타내고, 최대 확률값은 해당 서브 특징 맵이 특정 종류의 객체에 속할 가능성이 가장 높음을 나타내며, 해당 최대 확률값은 해당 서브 특징 맵의 가중치로 사용할 수 있다.
이하, 도 6 및 도 7을 결합하여, 상기 깊이 이미지 및 컬러 이미지에 기초하여 객체의 추출 결과를 획득하는 방안에 대해 추가로 설명한다.
도 6은 일 실시 예에 따른 이미지 처리 방법에서 컬러 이미지 및 깊이 이미지에 기초하여 객체의 추출 결과를 결정하는 방법에 대한 흐름도이다.
도 7은 일 실시 예에 따른 이미지 처리 방법에서 컬러 이미지 및 깊이 이미지에 기초하여 객체의 추출 결과를 결정하는 다른 방법에 대한 흐름도이다.
도 6에 도시된 바와 같이, 모델 예측(610) 및 모델 훈련(620) 두 부분으로 나뉜다. 모델 훈련(620) 부분은 주로 처리될 이미지에 기초하여 처리될 이미지에 포함된 객체의 추출 결과를 결정하는 방식에 대해 설명한다. 그중, 처리될 이미지는 동일한 장면에 대응하는 깊이 이미지(611) 및 컬러 이미지(614)를 포함한다. 훈련 부분은 주로 MLP 인코더(621)를 훈련하는 방식을 설명하는데, 훈련에 기초한 MLP 인코더(621)는 3차원 포인트 클라우드 데이터(도 6에 도시된 3D 포인트 클라우드(612))를 추출하는데 사용될 수 있다.
본 개시에서, MLP 인코더(613, 621) 및 신경망 모델(615, 617, 618)이 먼저 훈련되어야하고, 특정 훈련 과정은 위에서 설명되었으므로, 여기서 반복하지 않는다. MLP 인코더(621)의 훈련 과정에서, 전술한 바와 같이, MLP 인코더(621)의 매개 변수는 샘플 이미지의 3차원 검출 결과에 기초하여 조정될 수 있다. 구체적 MLP 인코더(621)의 조정 과정은 다음과 같다. 예측 결과(샘플 이미지의 예측된 3차원 검출 결과)와 라벨 결과(샘플 이미지의 라벨이 달린 3차원 검출 결과)를 비교하여, 예측 결과와 라벨 결과 사이의 차이가 수렴 조건을 충족하지 않는 경우, MLP 인코더(621)의 매개 변수를 예측 결과와 라벨 결과 사이의 차이가 수렴 조건을 충족할 때까지 조정한다. 이 때, 훈련된 모델은 MLP 인코더(613)로 사용된다.
상술한 예측 결과는 3차원 객체 프레임(도 7의 3차원 박스 검출(722)), 3차원 키 포인트(도 7의 3D 키 포인트 추정(723)) 및 3차원 객체 분할 결과(도 7에 도시된 3차원 형상 분할(721))를 포함할 수 있다. 상기 3차원 검출 결과는 훈련 시 결합되어 사용할 수 있음을 이해할 수 있다. 3 차원 검출 결과를 통해, 훈련된 MLP 인코더(621)가 추출한 특징의 정확 여부를 결정한다.
신경망 모델은 도 6에 도시된 컨볼루션 신경망(615, 617) 및 객체 추출 신경망(618)을 포함한다. 훈련된 신경망 모델에 기초하여, 처리될 이미지에 포함된 객체의 추출 결과는 제3 특징 맵에 기초하여 획득될 수 있다(도 6에 도시된 객체 추출 결과(619)).
컬러 이미지(614)의 경우, 컨볼루션 신경망(615)을 통해 컬러 이미지(614)의 특징을 추출하고, 제2 특징 맵을 얻는다. 제2 특징 맵은 픽셀별 이미지 특징, 즉 2차원 특징이다.
깊이 이미지(611)의 경우, 먼저 깊이 이미지(611)를 3차원 포인트 클라우드 데이터(도 6에 도시된 3D 포인트 클라우드(612))로 변환한 후, 훈련된 MLP 인코더(613)를 통해 3D 포인트 클라우드에 대해 특징을 추출하여 제1 특징 맵을 획득한다. 제1 특징 맵은 포인트별 3차원 특징이며, 해당 3차원 특징은 3차원 공간에서의 객체의 3차원 구조 특징을 설명할 수 있다.
제1 특징 맵 및 제2 특징 맵을 융합(616)하여 제3 특징 맵을 획득한다. 제3 특징 맵은 컨볼루션 신경망(617)에 입력된다. 컨볼루션 신경망(617)을 통해 해당 제3 특징 맵에 대해 추가 처리한 후, 컨볼루션 신경망(617)의 출력을 객체 추출 신경망(618)에 입력하고, 객체 추출 신경망(618)을 통해 객체 추출 결과(619)를 획득한다. 도 7에 도시된 바와 같이, 객체 추출 신경망(618)의 출력은 처리될 이미지에 포함된 객체에 대응하는 영역 이미지(도 7에 도시된 객체 영역 추출(711)), 바운딩 박스, 2차원 이미지 영역 분할 결과(712) 또는 키 포인트 (도 7에 도시된 시맨틱 키 포인트 추정(713))중에서 하나 이상을 포함할 수 있다. 객체 제어 신경망(618)의 출력에 기초하여, 객체 추출 결과(619)를 결정할 수 있다.
처리될 이미지는 깊이 이미지(611) 및 컬러 이미지(614)를 포함하기 때문에, 객체 추출 결과(619)가 객체 영역 식별을 갖는 이미지인 경우, 깊이 이미지(611) 및 컬러 이미지(614)는 각각 하나의 객체 추출 결과에 대응한다. 즉, 깊이 이미지(611)에 대응하는 객체 추출 결과는 객체 영역 식별을 갖는 깊이 이미지고, 컬러 이미지(614)에 대응하는 객체 추출 결과는 객체 영역 식별을 갖는 컬러 이미지다.
본 개시의 이미지 처리 방법은, 객체 추출 결과에 기초하여, 처리될 이미지에 포함된 객체의 3차원 검출 결과를 결정하고, 3차원 검출 결과는 3차원 포즈 결과 및 3차원 분할 결과 중에서 하나 이상을 포함할수 있다.
이때, 처리될 이미지에 포함된 객체의 추출 결과를 결정한 후, 해당 객체 추출 결과에 기초하여 추가적인 처리를 수행할 수 있다. 예를 들어, 해당 객체 추출 결과에 기초하여, 처리될 이미지에 포함된 객체의 3차원 검출 결과를 결정할 수 있다. 이때, 3차원 포즈 결과는 이미지에서 객체의 회전 각도 및 평행 거리와 같은 이미지에서 객체의 포즈를 나타낸다. 3차원 분할 결과는 이미지에서 이미지가 분할되지 않았음을 의미한다. 예를 들어, 이미지가 침대 및 소파를 포함하는 경우, 3차원 분할 결과는 이미지에서 침대 및 소파를 각각 분할하고, 해당 분할 결과는 3차원인 것을 의미한다. 즉, 객체의 3차원 기하학적 특징을 디스플레이할 수 있다.
본 개시에서, 객체 추출 결과에 기초하여, 처리될 이미지에 포함된 객체의 3차원 검출 결과를 결정하는 것은, 객체 추출 결과에 대응하는 3차원 포인트 클라우드 특징 및 2차원 이미지 특징을 추출하고, 3차원 포인트 클라우드 특징과 2차원 이미지 특징을 스플라이싱하여 제4 특징 맵을 획득하고, 제4 특징 맵에 기초하여, 처리될 이미지에 포함된 객체의 3차원 검출 결과를 결정할 수 있다.
객체의 3차원 검출 결과를 결정할 때, 객체 추출 결과에 대해 특징을 추출할 수 있고, 객체 추출 결과는 깊이 이미지 및 컬러 이미지에 기초하기 때문에, 객체 추출 결과로부터 3차원 포인트 클라우드 특징(깊이 이미지에 대응하는 특징) 및 2차원 이미지 특징(컬러 이미지에 대응하는 특징)을 추출하여 얻을 수 있고, 해당 3차원 포인트 클라우드 특징과 2차원 이미지 특징에 기초하여 객체의 3차원 검출 결과를 보다 정확하게 결정할 수 있다.
본 개시에서, 3차원 검출 결과가 3차원 분할 결과를 포함하고, 처리될 이미지가 불완전한 형상의 객체를 포함하는 경우, 3차원 포인트 클라우드 데이터에 기초하여, 장면에 포함된 객체의 추출 결과를 획득할 수 있다.
즉, 본 개시의 이미지 처리 방법은 불완전한 형상의 객체에 기초하여 불완전한 형상의 객체에 대응하는 3차원 포인트 클라우드 데이터를 완성하여, 완성된 3차원 포인트 클라우드 데이터를 획득하고, 완성된 3차원 포인트 클라우드 데이터에 기초하여, 장면에 포함된 객체의 추출 결과를 획득할 수 있다.
이미지 촬영 시, 촬영 사유 또는 기타 이유로 인해 이미지의 객체가 완전히 촬영되지 않을 수 있다. 예를 들어, 깊이 이미지는 깊이 센서에 기초하여 촬영되고, 폐색 또는 객체 표면의 반사로 인해 촬영된 이미지에 포함된 어떤 객체의 형상이 불완전할 수 있고, 누락되는 부분이 있을 수 있다. 본 개시의 이미지 처리 방법은 객체의 추출 결과 중에서 대응하는 객체가 완전한 형상의 객체가 되도록, 불완전한 형상의 객체에 대해 형상을 완성할 수 있다.
본 개시는 MLP 인코더 및 MLP 디코더에 의해 구성된 객체의 3차원 형상 완성 네트워크에 기초하여, 불완전한 형상의 객체에 대응하는 3차원 포인트 클라우드 데이터의 형상을 완성할 수 있다. 객체의 3차원 형상 완료 네트워크의 입력은 불완전한 형상의 객체에 대응하는 3차원 포인트 클라우드 데이터이고, 출력은 완성 후의 3차원 포인트 클라우드 데이터이다. 객체의 3차원 형상 완성 네트워크는 완전한 형상 객체에 대응하는 3차원 포인트 클라우드 데이터 및 불완전한 형상의 객체에 대응하는 3차원 포인트 클라우드 데이터에 기초하여 초기 모델을 훈련하여 획득한다. 예측 결과와 라벨 결과(완전한 형상의 객체에 대응하는 3차원 포인트 클라우드 데이터) 사이의 차이를 손실 함수로 하고, 손실 함수가 수렴될 때, 대응하는 초기 모델은 객체의 3차원 형상 완성 네트워크이다. 이때, 예측 결과에 대응하는 특징점과 라벨 결과에 대응하는 특징점 사이의 EMD 거리(Earth Mover's Distance)는 예측 결과와 라벨 결과 사이의 차이를 나타내고, EMD 거리가 설정 거리보다 작은 경우는 손실 함수가 수렴된다는 것을 의미하고, EMD 거리가 설정 거리보다 작지 않은 경우는 손실 함수가 수렴되지 않음을 의미한다.
도 8은 일 실시 예에 따른 형상 완성 방법에 대한 흐름도이다.
도 8은 3차원 형상 완성 네트워크의 테스트 과정이다. 3차원 형상 완료 네트워크의 테스트 과정에서, 객체 추출 결과(810)는 객체 영역을 포함하는 이미지고, 컬러 이미지의 객체 추출 결과는 제1 이미지(812)이고, 깊이 이미지의 객체 추출 결과는 제2 이미지(811)이다. 제1 이미지(812) 및 제2 이미지(812)에 기초하여, 제2 이미지(811)를 3차원 포인트 클라우드 데이터(821)로 변환하고, 이후 3차원 포인트 클라우드 데이터(821)에 대해 3차원 객체 분할(823)을 진행하여 3차원 포인트 클라우드 데이터 중에서 객체에 속하는 포인트를 분할하고, 이어서 MLP 인코더(824)를 통해 3차원 객체 분할 처리 후의 3차원 포인트 클라우드 데이터의 특징을 추출하여 제2 이미지(811)에 대응하는 특징 맵(3차원 포인트 클라우드 특징)을 획득한다. 해당 특징 맵에 기초하여, MLP 인코더(824) 및 MLP 디코더(830)에 의해 구성된 3차원 형상 완성 네트워크는 해당 특징 맵 중에서 불완전한 형상을 가진 객체에 대해 형상 완성(831)을 수행하고, 완성된 특징 맵은 예측 결과로서 해당 예측 결과와 해당 불완전한 형상의 객체에 대응하는 라벨 결과 사이의 차이를 결정한다. 해당 차이가 제1 설정값보다 작으면, 이는 손실 함수(도 8에 도시된 3차원 분할 손실 함수(832))가 수렴된다는 것을 의미하고, 해당 차이가 제1 설정값보다 작지 않으면, 이는 손실 함수가 수렴되지 않음을 의미하며, 해당 손실 함수가 수렴되도록 3차원 형상 완성 네트워크의 매개 변수를 조정해야 한다.
마찬가지로, 컨볼루션 신경망(825)을 통해 제1 이미지(812)에 대해 특징을 추출하여, 제1 이미지(812)에 대응하는 특징 맵(2차원 이미지 특징)을 획득하고, 제1 이미지(812)에 대응하는 특징 맵 및 제2 이미지(811)에 대응하는 특징 맵에 대해 특징 스플라이싱을 진행하여 융합(826)하고, 스플라이싱 후의 특징 맵(제4 특징 맵)을 획득한다. 해당 스플라이싱 후의 특징 맵은 컨볼루션 신경망(827)을 통해 불완전한 형상의 객체의 3차 포즈 결과(828)를 획득할 수 있다. 해당 3차원 포즈 결과(828)는 예측 결과로서, 해당 예측 결과와 해당 불완전한 형상의 객체에 대응하는 라벨 결과 사이의 차이를 결정한다. 해당 차이가 제1 설정값보다 작은 경우는 3차 포즈 추정 손실 함수(829)가 수렴된다는 것을 의미하고, 해당 차이가 제1 설정값보다 작지 않은 경우는 3차 포즈 추정 손실 함수(829)가 수렴되지 않음을 의미하며, 3차 포즈 추정 손실 함수(829)가 수렴되도록 3차원 형상 완성 네트워크의 매개 변수를 조정해야 한다.
상술한 3차원 형상 완성 네트워크 훈련 과정에서, 예측 결과로서 객체의 3차원 포즈 결과 외에도, 3차원 키 포인트 추정 결과, 형상 완성 결과 및 3차원 형상 매칭 결과 중에서 하나 이상을 취할 수 있다. 상기 예측 결과 및 대응하는 라벨 결과에 기초하여, 대응하는 손실 함수를 통해 3차원 형상 완성 네트워크의 매개 변수를 조정할 수 있다.
도 9는 다른 실시 예에 따른 형상 완성 방법에 대한 흐름도이다.
도 9에서 도시한 다른 예측 결과인 3차원 키 포인트 추정 결과(910) 및 3차원 형상 매칭 결과(920)를 사용하여 3차원 형상 완성 네트워크를 훈련할 수 있다. 이때, 3차원 키 포인트 추정 결과(910) 에 대응하는 손실 함수는 3D 유클리드 거리 손실 함수이고, 3차원 형상 매칭 결과(920)에 대응하는 손실 함수는 형상 매칭 손실 함수이다. 본 개시의 이미지 처리 방법은 예측 결과 중에서 임의의 하나 및 대응하는 손실 함수에 기초하여, 3차원 형상 완성 네트워크의 매개 변수를 조정할 수 있다.
본 개시에서, 제1 특징 맵에 기초하여 장면 중에서 객체의 추출 결과는 신경망 모델의 출력을 통해 획득하고, 신경망 모델은 다음과 같은 방식으로 훈련함으로써 획득할 수 있다.
샘플 이미지를 획득한다. 이때, 각 샘플 이미지는 장면의 깊이 이미지를 포함하고, 각 샘플 이미지에는 각 객체의 라벨 결과가 라벨로 표시되고, 라벨 결과는 샘플 이미지에 포함된 각 객체의 추출 결과를 나타낸다.
각 샘플 이미지에서 대응하는 깊이 이미지의 특징 맵에 기초하여, 초기 네트워크 모델의 손실 함수가 수렴될 때까지 초기 네트워크 모델을 훈련하고, 훈련이 종료될 때의 모델을 신경망 모델로 취한다. 이때, 손실 함수의 값은 각 샘플 이미지의 예측 결과와 라벨 결과의 차이 정도를 나타낸다.
이때, 제1 특징 맵에 기초하여, 획득된 장면에 포함된 객체의 추출 결과는 신경망 모델의 출력을 통해 획득될 수 있다. 즉 신경망 모델의 입력은 제1 특징 맵이고, 출력은 상술한 처리될 이미지에 포함된 객체에 대응하는 영역 이미지, 바운딩 박스, 2차원 이미지 영역 분할 결과 또는 키 포인트 중에서 적어도 하나일 수 있다. 신경망 모델의 출력에 기초하여, 처리될 이미지에 포함된 객체의 추출 결과를 획득할 수 있다.
상술한 제3 특징 맵에 기초한 장면에서의 객체의 추출 결과는 또한 신경망 모델의 출력으로부터 얻어질 수 있고, 신경망 모델의 입력은 제3 특징 맵이며, 출력은 객체의 추출 결과이다.
따라서, 신경망 모델의 훈련 또한 전술한 동일 방식으로 훈련함으로써 얻어질 수 있으며, 여기서 더는 반복하지 않는다.
본 개시에서, 샘플 이미지는 복수개의 객체를 포함하고, 라벨 결과는 또한 복수개의 객체 중에서 각 객체 쌍에서 각각의 객체 쌍 사이의 공간 위치 관계를 포함하고, 예측 결과는 복수개의 객체 중에서 각 객체의 추출 결과 및 복수개의 객체 중에서 각 객체 쌍에서 각각의 객체 쌍 사이의 공간 위치 관계를 포함하고, 각 객체 쌍은 인접한 객체를 포함하고, 공간 위치 관계는 인접한 객체 사이의 중첩 볼륨(volume)을 나타낸다.
초기 네트워크 모델의 손실 함수는 제1 손실 함수 및 제2 손실 함수를 포함한다. 제1 손실 함수의 값은 샘플 이미지에서 각 객체의 예측 결과와 각 객체에 대응하는 라벨 결과 사이의 차이 정도를 나타내고, 제2 손실 함수의 값은 적어도 복수개의 객체 중에서 각 객체 쌍에서 각각의 객체 쌍에 대응하는 예측 결과 및 대응하는 라벨 결과 사이의 차이 정도를 나타낸다.
이때, 인접한 객체가 장면에 나타날 수 있고, 인접한 2개의 객체 간에는 겹치거나 겹치지 않을 수 있다. 2개의 객체 간의 위치 관계는 객체의 추출 결과에 영향을 줄 수 있고, 예를 들어, 장면에서 의자의 일부가 테이블 아래에 놓이면, 즉, 의자와 테이블 사이에 볼륨이 겹친다. 테이블과 의자의 추출 결과를 각각 결정할 때, 두 객체 사이의 3차원 위치 관계를 고려하면, 객체 추출 결과가 더 정확할 수 있다.
이를 바탕으로, 신경망 모델 훈련 과정에서, 손실 함수는 개별 객체의 예측 결과와 각 객체에 대응하는 라벨 결과 사이의 차이 정도를 포함할 뿐만 아니라, 각 객체 쌍의 각각의 객체 쌍에 대응하는 예측 결과와 대응하는 라벨 결과 사이의 차이 정도 또한 고려한다. 이때, 공간 위치 관계는 객체 쌍의 각 객체의 3차원 바운딩 박스에 기초하여 결정될 수 있고, 2개의 객체가 각자 대응하는 3차원 바운딩 박스에 기초하여, 해당 2개의 객체가 이전에 겹치는 볼륨이 있었는지 여부를 결정할 수 있다.
일 선택적 방안에서, 제2 손실 함수는 아래의 <수학식 8>로 표현할 수 있다.
[수학식 8]
loss_s=(1-s)overlap(3Dbox_1, 3Dbox_2)+s*margin(1-t)
이때, loss_s는 제2 손실 함수이고, 3Dbox_1은 객체의 3차원 바운딩 박스를 나타내고, 3Dbox_2는 다른 객체의 3차원 바운딩 박스를 나타내고, overlap(3Dbox_1, 3Dbox_2)는 이 2개의 객체 사이의 겹치는 볼륨을 나타낸다. S는 실측자료GT(Ground truth)이고, 즉 두 객체에 대응하는 라벨 결과이다. 그리고, s∈{0, 1}, margin은 0보다 큰 상수이며, 실제 요구에 따라 구성할 수 있다. 예를 들어, 모든 가능한 겹치는 영역의 볼륨값보다 큰 최대값일 수 있다. 제2 손실 함수가 margin과 같은 경우는 제2 손실 함수가 수렴되지 않음을 의미하고, 제2 손실 함수가 0과 같은 경우는 제2 손실 함수가 수렴됨을 의미한다.
Overlap(3Dbox_1, 3Dbox_2)>0이면, t=1이고, overlap(3Dbox_1, 3Dbox_2)=0이면, t=0이다. 1은 두 객체 간에 겹침이 있음을 나타내고, 0은 두 객체 간에 겹침이 없음을 나타낸다.
<수학식 8>의 제2 손실 함수에서 알 수 있듯이, overlap(3Dbox_1, 3Dbox_2)>0, t=1일 때, loss_s=(1-s)overlap(3Dbox_1, 3Dbox_2)이고, overlap(3Dbox_1, 3Dbox_2)=0, t=0일 때, loss_s=s*margin(1-t)이다.
S=1일 때, 두 객체 간에 겹침이 있음을 나타낸다. 이때, 예측 결과가 overlap(3Dbox_1, 3Dbox_2)>0, t=1에 대응하는 손실 함수이면, loss_s=(1-s)overlap(3Dbox_1, 3Dbox_2)=0, loss_s=0은 예측 결과와 라벨 결과 사이에 차이가 없고, 제2 손실 함수가 수렴됨을 나타낸다. 반대로, 예측 결과가 대응하는 것이 overlap(3Dbox_1, 3Dbox_2)=0에 대응하는 손실 함수이면, loss_s=s*margin(1-t)=margin, loss_s=margin이고, 이때, 제2 손실 함수는 수렴되지 않는다.
마찬가지로, s=0일 때, 두 객체 간에 겹침이 없음을 나타낸다. 이때, 예측 결과가 overlap(3Dbox_1, 3Dbox_2)=0, t=0에 대응하는 손실 함수이면, loss_s=s*margin(1-t)=0, loss_s=0은 예측 결과와 라벨 결과 사이에 차이가 없고, 제2 손실 함수가 수렴됨을 나타낸다. 예측 결과가 overlap(3Dbox_1, 3Dbox_2)>0, t=1에 대응하는 손실 함수이면, loss_s=(1-s)overlap(3Dbox_1, 3Dbox_2)=overlap(3Dbox_1, 3Dbox_2)>0은 제2 손실 함수는 수렴되지 않음을 나타낸다.
모델의 훈련 과정에서, 인접한 객체의 추출 결과로부터 획득된 한 쌍의 객체의 3차원 포즈 결과에 대응하여, 상기 방법에 기초하여 제2 손실 함수를 계산할 수 있다.
도 10은 일 실시 예에 따른 공간 손실 함수에 기초한 훈련 모델 방법에 대한 흐름도이다.
도 10에 도시된 바와 같이, 제2 손실 함수는 훈련 과정에서 역 전파를 통해 모델의 매개 변수를 업데이트하고, 이를 통해 모델은 3차원 공간에서 인접한 객체의 공간 관계를 사용하는 능력을 학습할 수 있다. 구체적으로 도 10에 도시된 제2 손실 함수를 기반으로 한 모델 훈련의 예시도와 같이, 2개의 인접한 객체의 추출 결과에 기초하여, 객체 추출 결과1(1010)과 객체 추출 결과2(1020)가 각각 도 10에 도시되고, 이 2개의 객체 추출 결과에 기초하여, 대응하는 객체의 3차원 포즈를 각각 결정한다. 3차원 포즈의 결정 과정은 위의 도 8에서 3차원 포즈를 결정하는 과정과 동일하며, 여기서 더는 반복하지 않는다. 획득한 2개의 3 차원 포즈를 예측 결과로서, 객체 추출 결과1(1010)에 대응하는 예측 결과와 대응하는 라벨 결과 사이의 차이 정도 및 객체 추출 결과2(1020)에 대응하는 예측 결과와 대응하는 라벨 결과 사이의 차이 정도를 결정하고, 이 2개의 차이 정도와 제2 손실 함수(도 10에 도시된 공간 손실 함수(1030))에 기초하여, 모델의 매개 변수를 업데이트하고, 이를 통해 모델은 3차원 공간에서 인접한 객체의 공간 관계를 사용하는 능력을 학습할 수 있다.
도 11은 인접한 2개의 3차원 객체의 3차원 바운딩 박스의 공간 위치 관계도이다.
도 11에 도시된 2개의 이미지 간의 공간 위치 관계와 같이, 상황1은 3Dbox_1에 대응하는 객체와 3Dbox_2에 대응하는 객체 사이에 겹치는 볼륨이 있음을 나타낸다. 이때, S=1이고, 상황2는 3Dbox_1에 대응하는 객체와 3Dbox_2에 대응하는 객체 사이에 겹치는 볼륨이 없음을 나타낸다. 이때, S=0이다.
도 12는 인접한 2개의 3차원 객체의 다른 3차원 바운딩 박스의 공간 위치 관계도이다.
도 12에 도시된 바와 같이, 도 12는 3개의 객체에 대응하는 3차원 바운딩 박스를 도시하였고, 해당 3개의 바운딩 박스는 3개의 서로 다른 객체에 각각 대응하고, 3개의 바운딩 박스 사이에는 겹침이 없고, 도 11의 상황2에 대응된다.
신경망 모델 훈련 과정에서, 제1 손실 함수가 3차원 포즈 추정 손실 함수인 경우, 해당 초기 모델의 손실 함수는 도 9에 도시된 3차원 포즈 추정 손실 함수 및 공간 손실 함수(829)임을 이해할 수 있다.
본 개시에서, 객체 추출 결과에 기초하여, 처리될 이미지에 포함된 객체의 3차원 검출 결과를 결정하는 것은, 객체 추출 결과에 기초하여, 처리될 이미지에 포함된 객체의 초기 3차원 검출 결과를 결정하고, 처리될 이미지에 포함된 객체에 대응하는 원본 이미지를 결정하고, 이때, 원본 이미지는 객체가 기준 포즈일 때 대응하는 이미지고, 각 객체의 초기 3차원 검출 결과 및 대응하는 원본 이미지에 기초하여, 각 객체의 초기 3차원 검출 결과에 대응하는 차이 정보를 결정하고, 각 객체의 초기 3차원 검출 결과에 대응하는 차이 정보에 기초하여, 대응하는 객체의 초기 3차원 검출 결과를 업데이트하여, 처리될 이미지에 포함된 각 객체의 3차원 검출 결과를 획득할 수 있다.
이때, 객체 추출 결과에 기초하여 처리될 이미지에 포함된 각 객체의 3차원 검출 결과를 결정하는 과정에서, 3차원 검출 결과의 정확성을 향상시키기 위해, 각 객체에 대응하는 원본 이미지에 기초하여 초기 3차원 검출 결과를 조정할 수 있다. 즉 원본 이미지에 기초하여, 초기 3차원 검출 결과를 세분화하여 보다 정확하게 만들 수 있다. 초기 3차원 검출 결과에 대응하는 차이 정보를 통해 초기 3차원 검출 결과의 정확 여부를 나타낼 수 있다. 초기 3차원 검출 결과에 대응하는 차이 정보가 설정된 조건을 만족하는 경우는 해당 초기 3차원 검출 결과는 비교적 정확하고 업데이트할 필요가 없음을 나타낸다. 해당 초기 3차원 검출 결과에 대응하는 차이 정보가 설정된 조건을 만족하지 않는 경우는 해당 초기 3차원 검출 결과가 충분히 정확하지 않으며 업데이트할 필요가 있음을 나타낸다. 이때, 실제 필요에 따라 설정 조건을 구성할 수 있다.
이때, 원본 이미지는 객체의 CAD 모델에서의 이미지일 수 있고, 기준 포즈는 객체의 임의의 포즈일 수 있으며, 기준 포즈는 정면 포즈일 수 있다.
객체 추출 결과에 기초하여 처리될 이미지에 포함된 객체의 3차원 검출 결과는 또한 신경망 모델을 통해 실현될 수 있음을 이해할 수 있다. 신경망 모델의 훈련 과정 중, 초기 3차원 검출 결과에 대응하는 차이 정보에 기초하여, 대응하는 객체의 초기 3차원 검출 결과를 업데이트하는 방식에 따라, 신경망 모델의 매개 변수를 업데이트할 수 있다. 즉, 차이 정보가 설정 조건을 만족하지 못할 경우, 모델 매개 변수를 업데이트하고, 업데이트된 초기 3차원 검출 결과에 대응하는 차이 정보가 설정 조건을 만족하면 모델 매개 변수에 대한 업데이트를 중지한다. 이 때 얻어진 신경망 모델에 기초하여, 보다 정확한 3차원 검출 결과를 얻을 수 있다.
본 개시에서 처리될 이미지에 포함된 객체에 대응하는 원본 이미지를 결정하는 것은, 각 객체의 초기 3차원 분할 결과에 기초하여, 각 객체의 객체 카테고리를 결정하고, 각 객체의 객체 카테고리에 기초하여, 각 객체에 대응하는 원본 이미지를 결정할 수 있다.
이때, 상이한 객체는 상이한 객체 카테고리를 가지기 때문에, 객체 카테고리를 통해 객체에 대응하는 원본 이미지를 보다 정확하게 결정할 수 있다. 원본 이미지는 3차원 CAD 이미지일 수 있다.
본 개시에서, 초기 3차원 검출 결과는 초기 3차원 포즈 결과를 포함하고, 각 객체의 초기 3차원 검출 결과 및 대응하는 원본 이미지에 기초하여, 각 객체의 초기3차원 검출 결과에 대응하는 차이 정보를 결정하는 것은, 각 객체의 초기 3차원 포즈 결과에 기초하여, 대응하는 원본 이미지에 대해 포즈 변환을 진행하여, 각 객체에 대응하는 변환된 이미지를 획득하고, 각 객체의 초기 3차원 검출 결과 및 대응하는 변환된 이미지에 기초하여, 각 객체의 초기 3차원 검출 결과에 대응하는 차이 정보를 결정할 수 있다.
이때, 각 객체의 초기 3차원 검출 결과 및 대응하는 원본 이미지에 기초하여, 정렬 추정 방식을 통해 각 객체의 초기 3차원 검출 결과에 대응하는 차이 정보를 결정할 수 있다. 구체적으로, 각 객체의 초기 3차원 검출 결과는 각 객체에 대응하는 포즈 정보, 즉 초기 3차원 포즈 결과를 포함한다. 이미지 처리 방법은 각 객체의 포즈 정보에 기초하여, 변환된 이미지의 객체가 초기 3차원 포즈 결과에 대응하는 객체와 동일한 포즈를 갖도록 대응하는 원본 이미지에 대해 포즈 변환을 진행한다. 그리고, 이미지 처리 방법은 변환된 이미지 및 대응하는 초기 3차원 검출 결과에 기초하여, 각 객체와 변환된 이미지 사이의 차이 정보, 즉 각 객체의 초기 3차원 검출 결과에 대응하는 차이 정보를 결정할 수 있다. 해당 차이 정보는 초기 3차원 포즈 결과에 대응하는 차이 정보, 또는 초기 3차원 분할 결과에 대응하는 차이 정보 중에서 적어도 하나를 포함할 수 있다. 다시 말해, 이미지 처리 방법은 결정된 차이 정보가 초기 3차원 포즈 결과에 대응하는 차이 정보인 경우, 해당 차이 정보에 기초하여 대응되는 초기 3차원 포즈 결과를 업데이트할 수 있다. 또한, 이미지 처리 방법은 결정된 차이 정보가 초기 3차원 분할 결과에 대응하는 차이 정보인 경우, 해당 차이 정보에 기초하여 대응하는 초기 3차원 분할 결과를 업데이트할 수 있다.
이때, 차이 정보는 초기 3차원 분할 결과 중에서 누락된 포인트, 오차 포인트 및 초기 3차원 포즈 결과에 대응하는 3차원 포즈 오차 포인트를 포함할 수 있다.
본 개시의 이미지 처리 방법은 각 객체의 초기 3차원 검출 결과 및 대응하는 원본 이미지에 기초하여 각 객체의 초기 3차원 검출 결과에 대응하는 차이 정보를 결정하는 과정 중, 각 객체의 초기 3차원 검출 결과에 대응하는 3차원 포인트 클라우드 데이터 및 대응하는 원본 이미지에 대응하는 3차원 포인트 클라우드 데이터에 기초하여, 각 객체의 초기 3차원 검출 결과에 대응하는 차이 정보를 결정할 수 있다.
또한, 이미지 처리 방법은 선택적으로, 각 객체의 초기 3차원 검출 결과에 대응하는 3차원 포인트 클라우드 데이터 및 대응하는 원본 이미지에 대응하는 3차원 포인트 클라우드 데이터에 기초하여, 각 객체의 초기 3차원 검출 결과에 대응하는 차이 정보를 결정하는 과정 중, 처리를 용이하게 하기 위해, 먼저 초기 3차원 검출 결과에 대응하는 3차원 포인트 클라우드 데이터 및 대응하는 원본 이미지에 대응하는 3차원 포인트 클라우드 데이터에 대해 정규화 처리하고, 정규화 처리 후의 원본 이미지에 대응하는 3차원 포인트 클라우드 데이터 및 정규화된 초기 3차원 검출 결과에 대응하는 3차원 포인트 클라우드 데이터에 기초하여, 각 객체의 초기 3차원 검출 결과에 대응하는 차이 정보를 결정할 수 있다.
이때, 정규화 처리 방식은 원본 이미지에 대응하는 3차원 포인트 클라우드 데이터를 샘플링하여, 원본 이미지에 대응하는 3차원 포인트 클라우드 데이터와 초기 3차원 검출 결과에 대응하는 3차원 포인트 클라우드 데이터가 동일한 포인트 클라우드 밀도를 갖도록 할 수 있다.
도 13은 일 실시 예에 따른 3차원 검출 결과를 세분화하는 방법에 대한 흐름도이다.
도 13을 참조하면, 도 13의 이미지 처리 방법은 컬러 이미지 및 깊이 이미지(도 13에 도시된 컬러 깊이 입력(1310))에 기초한다. 이미지 처리 방법은
상술한 이미지에서 객체의 추출 결과를 결정하는 방식에 기초하여, 객체 추출 결과를 결정(1311)한다. 이때, 객체 추출 결과는 깊이 이미지에서 추출된 객체 추출 결과 및 컬러 이미지에서 추출된 객체 추출 결과를 포함한다.
이미지 처리 방법은 객체 추출 결과에 기초하여, 초기 3차원 검출 결과에 해당하는 3차원 분할 및 포즈 추정을 결정(1312)한다.
이미지 처리 방법은 초기 3차원 분할 결과에 기초하여, 이미지에 포함된 객체의 객체 카테고리 및 객체에 대응하는 포인트 클라우드 데이터(도 13의 분할된 객체 포인트 클라우드(1314)에 해당함)를 결정하고, 초기 3차원 포즈 결과에 기초하여, 객체의 3차원 포즈를 결정한다.
이미지 처리 방법은 객체 카테고리(1313)에 기초하여, 해당 객체 카테고리에 대응하는 원본 이미지(도 13에 도시된 객체 CAD 모델 <검색>(1316)에 해당함)를 CAD 데이터베이스로(1317)부터 검색한다.
그리고 이미지 처리 방법은 객체의 3차원 포즈(1315)에 기초하여, 원본 이미지의 객체의 포즈와 3차원 포즈가 일치하도록 원본 이미지에 대해 포즈 변환을 진행하여 변환된 이미지를 획득한다.
그리고, 이미지 처리 방법은 변환된 이미지의 3차원 포인트 클라우드 데이터와 3차원 분할 결과에 대응하는 객체의 3차원 포인트 클라우드 데이터에 대해 정렬 추정(도 13의 CAD-포인트 클라우드 포즈 정렬 추정(1318)에 해당함)하여, 정렬 오차(차이 정보)를 얻는다.
본 개시에서, 설정 조건은 임계값으로 설정되고, 차이 정보가 설정 조건을 만족하는 것은 정렬 오차가 설정 임계값보다 작음을 의미한다. 마찬가지로, 차이 정보가 설정 조건을 만족하지 않는 것은 정렬 오차가 설정 임계값보다 작지 않음을 의미한다.
이를 바탕으로, 이미지 처리 방법은 해당 정렬 오차를 설정된 임계값과 비교(1319)한다. 해당 정렬 오차가 설정된 임계값보다 작으면, 해당 정렬 오차가 충분히 적어 초기 3차원 검출 결과를 업데이트할 필요가 없음을 의미하고, 초기 3차원 검출 결과는 최종 3차원 검출 결과로서, 최종 3차원 포즈(1322) 및 최종 3차원 분할(1323)을 포함한다. 반대로, 해당 정렬 오차가 설정된 임계값보다 작지 않으면, 해당 정렬 오차가 충분히 적지 않아 상술한 초기 3차원 검출 결과를 업데이트할 필요가 있음을 의미한다. 정렬 오차가 오차 포인트 및 누락 포인트에 대응하는 오차인 경우, 초기 3차원 분할 결과에 대해서만 업데이트(1321)할 수 있고, 업데이트된 3차원 분할 결과에 대응하는 정렬 오차가 설정된 임계값보다 작게 되면, 이 때의 3차원 분할 결과를 최종 3차원 분할 결과(1323)로 취한다. 정렬 오차가 포즈 오차인 경우, 초기 3차원 포즈 결과에 대해서만 업데이트(1320)할 수 있고, 업데이트된 3차원 포즈 결과에 대응하는 정렬 오차가 설정된 임계값보다 작게 되면, 이 때의 3차원 포즈 결과를 최종 3차원 포즈 결과(1322)로 취한다.
본 개시의 이미지 처리 방법은 2개의 MLP 네트워크를 통해 각 객체의 초기 3차원 검출 결과에 대응하는 차이 정보를 결정할 수도 있다.
도 14는 일 실시 예에 따른 3차원 검출 결과를 세분화하는 다른 방법에 대한 흐름도이다.
도 14를 참조하면, 초기 3차원 검출 결과(1410)는 초기 3차원 분할 결과 및 초기 3차원 포즈 결과를 포함한다. 이미지 처리 방법은 초기 3차원 분할 결과(1410)에 대응하는 3차원 포인트 클라우드 데이터에 대해 포인트 클라우드 정규화(1411)하고, MLP 인코더(1412)를 통해 정규화된 3차원 포인트 클라우드 데이터에 대해 특징을 추출하여 제1 특징을 획득한다. 객체에 대응하는 원본 이미지는 CAD 모델에서 결정된다. 이미지 처리 방법은 초기 3차원 포즈 결과(도 13에 도시된 3차원 포즈(1315))에 기초하여, 해당 원본 이미지의 포즈를 변환하고, 변환된 이미지(1420)를 얻는다. 이미지 처리 방법은 변환된 이미지(1420) 중에서 객체에 대응하는 3차원 포인트 클라우드 데이터에 대해 포인트 클라우드 정규화(1421)하고, 동일하게 MLP 인코더(1422)를 통해 해당 정규화된 3차원 포인트 클라우드 데이터에 대해 특징을 추출하여 제2 특징을 획득한다.
이미지 처리 방법은 제1 특징 및 제2 특징에 기초하여, 다시 MLP 인코더(1430)를 통해 제1 특징 중에서 객체의 초기 3차원 검출 결과에 대응하는 차이 정보를 결정할 수 있다. 이때, 해당 차이 정보는 초기 3차원 분할 결과에 대응하는 오차 포인트(1431)와 누락 포인트(1432) 및 초기 3차원 포즈 결과에 대응하는 포즈 오차(1433)를 포함한다. 마지막으로, 이미지 처리 방법은 오차 포인트(1431) 및 누락 포인트(1432)에 기초하여 초기 3차원 분할 결과를 업데이트(1440) 할 수 있다. 그리고, 이미지 처리 방법은 포즈 오차(1433)에 기초하여 초기 3차원 포즈 결과를 업데이트(1450) 할 수 있다. 그리고, 이미지 처리 방법은 업데이트된 각 객체의 3차원 검출 결과에 대응하는 차이 정보가 설정된 조건을 충족하면, 업데이트를 중지하고, 최종 3차원 검출 결과를 획득할 수 있다.
도 15는 일 실시 예에 따른 컬러 이미지 및 깊이 이미지에 기초하여 객체의 3차원 검출 결과를 결정하는 방법에 대한 흐름도이다.
도 15를 참조하면, 이미지 처리 방법은 깊이 이미지(1511) 및 컬러 이미지(1512)에 기초하여, 이미지에 포함된 객체의 추출 결과를 결정(1513)한다. 그리고, 이미지 처리 방법은 해당 객체 추출 결과에 기초하여, 3차원 분할 결과 및 3차원 포즈 결과를 포함하는 객체의 3차원 검출 결과를 결정(1514)한다.
그리고, 이미지 처리 방법은 해당 3차원 검출 결과에 기초하여, 객체에 대응하는 원본 이미지(객체 3차원 형상 정보(1515))에 대응하여 3차원 분할 결과 및 3차원 포즈 결과에 대한 세분화(1516)할 수 있다.
이미지 처리 방법은 세분화된 3차원 검출 결과 객체 3차원 분할 및 객체 3차원 포즈를 얻을 수 있다.
도 16은 일 실시 예에 따른 객체를 변형하는 이미지 처리 방법에 대한 흐름도이다.
도 16을 참조하면, 이미지 처리 방법은 처리될 이미지에 포함된 실제 객체(변형될 객체라고도 할 수 있음)에 대한 가상 객체의 변형 정보를 획득한다(1610).
그리고, 이미지 처리 방법은 변형 정보에 기초하여, 실제 객체를 변형하여 변형 후의 처리될 이미지를 획득한다(1620). 이때, 이미지 처리 방법은 변형 정보에 기초하여, 가상 객체와 실제 객체 사이에 상호 작용이 발생하도록, 처리될 이미지에 포함된 실제 객체를 변형할 수 있다.
본 개시에서, 변형 정보에 기초하여, 실제 객체를 변형하여 변형 후의 처리될 이미지를 획득하는 것은 실제 객체에 대응하는 원본 이미지를 결정하고, 실제 객체에 대응하는 3차원 포즈 결과, 상기 변형 정보 및 상기 실제 객체에 대응하는 상기 원본 이미지에 기초하여, 상기 실제 객체에 대응하는 변형 후의 이미지와 변형 전의 이미지 사이의 변환 관계를 결정하고, 변환 관계 및 변형 전의 이미지에 기초하여, 실제 객체에 대응하는 변형 후의 이미지를 결정하고, 실제 객체에 대응하는 변형 후의 이미지에 기초하여, 변형 후의 처리될 이미지를 결정할 수 있다. 이때, 변형 전의 이미지는 처리될 이미지에 포함된 상기 실제 객체에 대응하는 이미지다.
변형되는 실제 객체(변형될 객체)는 침대, 소파 등 변형 가능한 객체를 의미한다. 변형 요청은 실제 객체에 대해 변형을 요청하는 것을 의미하며, 해당 요청은 사용자가 사용자 인터페이스에서 지정된 식별자를 통해 트리거할 수 있다. 본 개시의 이미지 처리 방법에서 처리될 이미지가 가상 객체를 포함하는 경우, 해당 가상 객체는 증강 현실 기술에 의해 실현되는 가상 객체일 수 있고, 또한 변형되는 실제 객체에 대한 해당 가상 객체의 모션 정보에 기초하여 변형 요청을 트리거할 수 있다. 이때, 이미지 처리 방법은 모션 정보에 기초하여 변형 정보를 결정할 수 있다. 여기서, 변형 정보는 객체의 변형 방향 및 변형 변위를 포함한다.
각 변형 요청에서의 변형 정보는 상이하거나 동일할 수 있다. 해당 변형 정보는 미리 구성될 수 있다. 예를 들어, 변형될 객체의 객체 카테고리에 기초하여, 상이한 객체 카테고리의 객체에 대응하는 변형 정보는 상이하다.
이미지 처리 방법은 변형 정보에 기초하여 변형될 객체를 변형하기 위해, 먼저 변형 정보에 기초하여 변형 관계를 결정할 수 있다. 해당 변환 관계는 변형될 객체에 대응하는 변형 후의 이미지와 변형 전의 이미지 간의 대응 관례를 나타낸다. 즉, 처리될 이미지에서 해당 변형될 객체에 대응하는 이미지는 변형 전의 이미지고, 변형 정보에 기초하여 변형하여 얻은 이미지는 변형 후의 이미지다.
이미지 처리 방법은 해당 변환 관계에 기초하여, 변형 전의 이미지에 기초해 변형 후의 이미지를 획득할 수 있다. 변형될 객체는 처리될 이미지에서 대응하는 포즈(3차원 포즈 결과에 대응하는 포즈)를 갖는다 따라서, 이미지 처리 방법은변환 관계를 결정할 때, 변형될 객체의 3차원 포즈 결과를 결합하여 결정된 변환 관계를 더 정확하게 할 수 있다.
처리될 이미지는 도 1에 도시된 방안의 처리될 이미지일 수 있고, 3차원 포즈 결과 또한 전술한 방안에 기초한 3차원 포즈 결과일 수 있음을 이해할 수 있다.
본 개시에서, 변형되는 실제 객체(변형될 객체)는 처리될 이미지의 3차원 분할 결과에 기초하여 결정된다.
이때, 처리될 이미지의 각 객체는 모두 대응하는 3차원 분할 결과를 갖고, 변형될 객체는 처리될 이미지에 포함된 임의의 객체이다. 이미지 처리 방법은 3차원 분할 결과에 기초하여 처리될 이미지에 포함된 각 객체를 구별할 수 있고, 3차원 분할 결과에 기초하여 처리될 이미지에 포함된 변형될 객체를 정확하게 결정할 수 있다. 처리될 이미지는 깊이 이미지 및 컬러 이미지를 포함하기 때문에, 처리될 이미지에서 해당 변형될 객체에 대응하는 이미지는 컬러 이미지일 수도, 깊이 이미지일 수도 있다.
본 개시에서, 3차원 검출 결과는 3차원 분할 결과를 포함한다. 그리고, 변형될 객체에 대응하는 원본 이미지를 결정하는 것은, 변형될 객체의 3차원 분할 결과에 기초하여, 변형될 객체의 객체 카테고리를 결정하고, 변형될 객체의 객체 카테고리에 기초하여, 변형될 객체에 대응하는 원본 이미지를 결정할 수 있다. 이때, 물리적 카테고리가 다른 객체는 서로 다른 원본 이미지에 대응하고, 객체 카테고리를 통해 객체에 대응하는 원본 이미지를 보다 정확하게 결정할 수 있다.
본 개시에서, 변형될 객체(실제 객체)에 대응하는 3차원 포즈 결과, 변형 정보 및 변형될 객체에 대응하는 원본 이미지에 기초하여, 변형될 객체에 대응하는 변형 후의 이미지와 변형 전의 이미지 사이의 변환 관계를 결정하는 것은, 변형될 객체의 원본 이미지, 변형 정보 및 대응 관계에 기초하여, 원본 이미지의 변형될 객체에 대응하는 변형 후의 변형점을 결정하고, 변형될 객체에 대응하는 변형 후의 변형점, 변형될 객체의 변형 전의 변형점 및 변형될 객체에 대응하는 3차원 포즈 결과에 기초하여, 변형될 객체에 대응하는 변형 후의 이미지와 변형 전의 이미지 사이의 변환 관계를 결정할 수 있다. 이때, 대응 관계는 샘플 이미지에서 상이한 변형 정보 하에서, 변형 전후에 객체가 대응하는 변형점에 기초하여 확립할 수 있다.
그리고, 대응 관계는 샘플 이미지에 기초하여 미리 확립할 수 있고, 샘플 이미지의 객체 또한 변형 가능한 객체이며, 샘플 이미지는 원본 이미지일 수 있다. 원본 이미지의 객체에 대해, 상이한 변형 정보에 기초하여 변형 전후의 상이한 객체의 변형점 사이의 대응 관계를 결정할 수 있다. 이미지 처리 방법은 해당 대응 관계에 기초하여, 상이한 변형 정보 하에서, 변형될 객체의 변형 후의 변형점을 결정할 수 있다. 이미지 처리 방법은 원본 이미지의 변형될 객체에 대응하는 변형 후의 변형점을 결정한 후, 변형될 객체의 변형 전의 변형점 및 변형될 객체에 대응하는 3차원 포즈 결과를 결합하여, 변형 관계를 결정할 수 있다.
이미지 처리 방법의 선택적인 방안으로 원본 이미지의 변형될 객체에 대응하는 변형 후의 변형점을 결정한 후, 변환 관계가 결정되기 전, 3차원 데이터를 2차원 데이터로 변환할 수 있고, 2차원 데이터에 기초하여 획득한 변환 관계를 획득할 수도 있다. 이때, 3차원 데이터는 3차원 데이터와 2차원 데이터 간의 투영 관계에 기초하여 2차원 데이터로 변환될 수 있다.
본 개시에서, 변형 후의 이미지와 변형 전의 이미지 사이의 변환 관계를 결정하는 것은, 변형될 객체에 대응하는 각 변형점 중에서 각각의 변형점의 가중치를 결정하고, 각 변형점의 가중치, 변형될 객체에 대응하는 변형 후의 변형점, 변형될 객체의 변형 전의 변형점 및 변형될 객체에 대응하는 3차원 포즈 결과에 기초하여, 변형될 객체에 대응하는 변형 후의 이미지와 변형 전의 이미지 사이의 변환 관계를 결정할 수 있다.
이때, 변형될 객체에 대응하는 변형점에 대해, 변형될 객체의 변형 효과는 각 변형점의 변형 효과에 대응한다. 각 변형점의 변형 효과에 대해, 실제 적용에서, 변형될 객체의 응력점 또는 힘 적용 객체(예, 가상 객체)로 인해, 변형될 객체의 각 변형점은 상이한 변형 강도의 변형 효과에 대응할 수 있다. 예를 들어, 객체의 응력점에 대응하는 변형 강도는 응력점 주위의 다른 점에 대응하는 변형 강도보다 크기 때문에, 객체의 변형 효과를 보다 현실적으로 만들 수 있다.
변형될 객체의 변형 효과를 보다 현실적으로 만들기 위해, 변형될 객체의 변형 전에, 변형될 객체에 대응하는 각 변형점에서의 각각의 변형점의 가중치를 결정할 수 있다. 가중치의 크기는 변형점의 변형 강도를 나타내고, 가중치가 클수록 변형 강도가 크다는 것을 의미하므로, 각 변형점에 대응하는 상이한 가중치에 기초하여, 변형될 객체를 변형할 때 보다 현실적인 변형 효과를 얻을 수 있다.
본 개시에서, 변형될 객체에 대응하는 변형 후의 이미지에 기초하여, 변형 후의 처리될 이미지를 결정하는 것은, 처리될 이미지에 포함된 변형 전의 이미지에서 변형될 객체에 대응하는 변형 후의 이미지로 교체하여, 변형 후의 처리될 이미지를 결정하는 첫째 방안과 변형될 객체에 대응하는 변형 후의 이미지 및 변형될 객체에 대응하는 변형 전의 이미지에 기초하여, 차분 이미지를 결정하고, 차분 이미지에 기초하여, 변형 후의 처리될 이미지를 결정하는 둘제 방안 중에서 하나 또는 모드를 포함할 수 있다.
이때, 첫째 방안은 이미지 교체 방식으로, 변형 전의 이미지를 변형 후의 이미지로 교체하는 것이다. 즉, 이미지에 포함된 변형 전의 객체를 변형 후의 객체로 교체한다.
둘째 방안, 이미지 융합 방식으로, 변형 전의 이미지와 변형 후의 이미지에 기초하여 차분 이미지를 결정하고, 차분 이미지는 변형 전후 처리될 이미지의 대응하는 변화를 반영할 수 있다. 해당 차분 이미지에 기초하여, 변형 전의 처리될 이미지에 대해 처리하여 변형 후의 처리될 이미지를 바로 획득할 수 있다.
본 개시에서, 처리될 이미지가 비디오 내의 이미지인 경우, 처리될 이미지에서 변형될 객체의 처리 방식에 기초하여, 비디오에서 해당 변형될 객체의 관련 프레임 이미지에 대해 동일한 방식으로 처리하여, 관련 프레임 이미지에서 해당 변형될 객체 또한 상응하는 변형 효과를 갖도록 할 수 있다. 상술한 처리에 기초하여, 비디오에서의 변형될 객체의 변형 효과를 획득할 수 있다.
본 개시에서, 처리될 이미지가 비디오 내의 이미지인 경우, 처리될 이미지에서 변형될 객체에 대한 변형 요청을 획득하는 것은, 변형될 객체에 대한 비디오에서 가상 객체의 모션 정보에 기초하여, 모션 정보에 대응하는 이미지 및 변형 정보를 결정하고, 모션 정보에 대응하는 이미지 및 변형 정보에 기초하여, 모션 정보에 대응하는 이미지에 대한 변형 요청을 생성할 수 있다.
이때, 모션 정보에 대응하는 이미지는 비디오에서 연속된 복수의 프레임을 포함할 수 있고, 모션 정보는 가상 객체의 모션 방향, 모션 강도 등의 정보이다. 이미지 처리 방법은 가상 객체의 모션 정보에 기초하여, 변형될 객체의 변형 정보를 결정할 수 있다. 가상 객체의 볼륨이 클수록, 대응하는 모션 강도 또한 커지고, 가상 객체와 변형될 객체 사이의 거리가 커질수록, 대응하는 모션 강도 또한 커진다. 모션 강도가 클수록, 대응하는 변형 강도 또한 커진다.
앞서 상술한 이미지 처리 방법을 보다 더 잘 이해하기 위해, 특정 응용 장면의 예시와 상세히 설명한다.
도 17은 일 실시 예에 따른 가상 객체에 의해 처리될 이미지에 포함된 변형될 객체를 변형시키는 방법에 대한 흐름도이다.
도 17을 참조하면, 처리될 이미지는 컬러 이미지 및 깊이 이미지를 포함하고, 전술한 방법에 기초하여, 처리될 이미지 중에서 깊이 이미지(1710)에서 객체를 검출(1711)하여 3차원 분할 결과를 획득하고, 객체 3차원 포즈 추정(1712)한다.
사용자는 증강 현실 AR(Augmented Reality) 컨트롤러(1730)를 통해 처리될 이미지에 포함된 변형될 객체의 변형 요청을 트리거하고, 구체적으로 처리될 이미지에 대응하는 장면에서 가상 객체에 기초하여 변형 요청을 트리거할 수 있다. 해당 변형 요청은 변형 정보를 포함한다.
이미지 처리 방법은 변형될 객체의 3차원 분할 결과인 객체 검출(1711)에 기초하여, 해당 변형될 객체의 객체 카테고리를 결정한다.
이미지 처리 방법은 변형될 객체의 객체 카테고리에 기초하여, 해당 변형될 객체에 대응하는 원본 이미지를 3차원 CAD 모델로부터 검색(1721)한다.
이미지 처리 방법은 변형 정보, 변형될 객체에 대응하는 원본 이미지 및 대응 관계에 기초하여 원본 이미지에서 해당 변형될 객체의 변형 후의 변형점을 결정(1722)한다. 이때, 대응 관계는 샘플 이미지의 상이한 변형 정보 하에서, 변형 전후에 객체가 대응하는 변형점에 기초하여 확립하는 대응 관계이고, t0에서의 변형 가능한 표면 제어점은 변형 전의 변형점이고, t1에서의 변형 가능한 표면 제어점은 변형 후의 변형점이고, 변형 전후의 변형점을 기반으로 대응 관계(도 17에 도시된 변형 가능한 모델 메시 생성(1723)에 해당함)를 확립할 수 있다.
이미지 처리 방법은 변형 후, 변형될 객체의 3차원 포즈 결과에 기초하여, 원본 이미지에서 해당 변형될 객체의 변형 후의 변형점의 포즈를 변형하여, 변형 후의 원본 이미지에서 변형될 객체와 3차원 포즈 결과에 대응하는 포즈가 동일하도록 한다.
이미지 처리 방법은 원본 이미지는 3차원 이미지고, 3차원 포즈 결과는 3차원 데이터이므로, 3차원 데이터와 3차원 이미지는 3차원 데이터와 2차원 데이터 간의 투영 관계를 통해 2차원 데이터로 변환(1742)된다.
이미지 처리 방법은 포즈 변환 후의 원본 이미지에서 해당 변형될 객체의 변형 후의 변형점 및 변형될 객체의 변형 전의 변형점에 기초하여, 변형될 객체에 대응하는 변형 후의 이미지와 변형 전의 이미지 사이의 변형 관계를 결정(1725)한다.
이미지 처리 방법은 해당 변형 관계에 기초하여, 변형될 객체의 변형 전의 이미지에 기초하여, 해당 변형될 객체의 변형 후의 이미지를 결정할 수 있다. 이미지 처리 방법은 처리될 이미지에 대해, 먼저 변형될 객체에 기초하여, 컬러 이미지로부터 해당 변형될 객체에 대응하는 이미지를 절취(1740)하고, 확립된 변환 관계에 기초하여, 변형될 객체에 대응하는 이미지에 대해 이미지 변형(1741)을 진행하여 변형 후의 컬러 이미지(1742)를 획득한다.
이미지 처리 방법은 변형될 객체에 대응하는 변형 후의 이미지에 기초하여, 변형 후의 처리될 이미지를 결정하는 2가지 방법은 다음과 같다.
첫 번째 방법은, 변형 후의 이미지에 기초하여, 비디오 전송의 원리(해당 원리는 AR 시스템(1743)에 적용됨)를 통해 처리될 이미지에서의 변형 전의 변형될 객체를 변형 후의 객체(도 17에 도시된 비디오에서의 객체 대체(1744)에 해당함)로 대체할 수 있다. 여기서, 처리될 이미지는 비디오 내의 이미지 일 수 있다.
두 번째 방법은, 변형 후의 이미지 및 변형 전의 이미지(컬러 이미지에서 변형될 객체에 대응하는 이미지)에 기초하여 변형 전후 이미지의 차분 이미지를 결정(1751)하는 것이다. 그리고, 광 전송 기반의 AR 시스템(1752)를 기반으로, 차분 이미지에 기초하여 변형 후의 처리될 이미지를 결정할 수 있다. 구체적으로 증강 현실 광 경로에 차분 이미지를 추가(1753)하여, 처리될 이미지에 포함된 변형될 객체가 변형 효과를 갖도록 할 수 있다.
도 18은 일 실시 예에 따른 가상 객체에 의해 처리될 이미지에 포함된 변형될 객체를 변형시키는 예에 대한 흐름도이다.
도 18을 참조하면 처리될 이미지(1810)의 컬러 이미지 및 깊이 이미지에 대응하는 장면은 침실이고, 침실의 객체로 침대(bed), 소파(sofa), 베개(pillow), 커튼(curtain) 등이 있고, 그중, 침대, 소파, 베개 및 커튼은 변형 가능한 객체이며, 변형될 객체로서 사용될 수 있다.
깊이 이미지 및 컬러 이미지에 기초하여, 처리될 이미지(1810)에 포함된 각 객체의 3차원 검출 결과는 3차원 분할 및 포즈 추정(1820)을 통해서 결정될 수 있다. 3차원 검출 결과는 3차원 객체 분할(1821) 및 3차원 객체 포즈(1822)를 포함한다.
도 18의 3차원 객체 분할(1821)의 예에서 알 수 있듯이, 처리될 이미지에 포함된 침대, 소파, 베개 및 커튼은 모두 대응하는 분할 결과를 갖고, 3차원 객체 포즈(1822)의 예에서 알 수 있듯이, 처리될 이미지에 포함된 침대, 소파, 베개 및 커튼은 모두 대응하는 포즈 결과를 갖는다. 변형될 객체는 변형 가능한 표면 제어점, 즉 객체의 표면이 변형할 수 있는 변형점을 갖는다. 예를 들어, 분할 결과의 예시도에서, 각 변형될 객체에 대응하는 메쉬는 표면 변형 가능한 변형점일 수 있고, 예를 들어, 침대의 표면 변형 가능한 변형점은 침대의 상부 표면 상의 메쉬일 수 있다.
가상 객체가 처리될 이미지에 포함된 침대와 상호 작용(1840)할 때, 먼저 침대의 3차원 분할 결과에 기초하여, 객체의 CAD 모델(1830)으로부터 침대에 대응하는 원본 이미지를 결정한다. 도 18에 도시된 객체의 CAD 모델(1830)을 통해 알 수 있듯이, 해당 모델은 상이한 객체 카테고리에 대응하는 원본 이미지를 포함한다.
이미지 처리 방법은 침대에 대한 해당 가상 객체의 변형 정보 및 침대에 대응하는 원본 이미지에 기초하여, 전술한 방식으로 침대에 대응하는 이미지에 대해 변형(1841) 처리한다. 즉, 침대에 대응하는 3차원 메쉬의 변형 처리를 수행하고, 원본 이미지에서의 해당 침대의 변형 후의 변형점을 획득한다.
이미지 처리 방법은 해당 침대의 변형 후의 변형점은 3차원 데이터이므로, 3D-2D 투영을 통해, 침대의 변형 후의 3차원 데이터를 2차원 데이터로 변형(1842)한다. 즉, 변형 후, 침대의 3차원 포즈 결과에 기초하여, 원본 이미지에서 해당 침대의 변형 후의 변형점에 대해 포즈 변환을 수행하여, 변형 후의 원본 이미지에서의 침대와 3차원 포즈 결과의 침대의 포즈가 같도록 한다.
포즈 변환 후의 원본 이미지에서 해당 침대의 변형 전의 변형점과 변형 후의 변형점에 기초하여, 침대에 대응하는 변형 후의 이미지와 변형 전의 이미지 사이의 변환 관계를 결정한다. 해당 변환 관계에 기초하여, 2차원 이미지(처리될 이미지에 포함된 침대에 대응하는 이미지)를 변형하여, 침대에 대응하는 변형 후의 이미지를 획득하고, 최종적으로 침대에 대응하는 변형 후의 이미지에 기초하여, 변형 후의 처리될 이미지를 결정(1850)한다. 도 18에 도시된 AR 효과와 같이, 처리될 이미지에서, 가상 객체는 이미지의 침대를 변형시켜, 가상 객체와 처리될 이미지에서의 변형될 객체 사이의 상호 작용을 실현한다.
도 18에서 설명한 방안에 기초하여, 장면의 소파, 커튼 등과 같은 변형 가능한 객체에 대해서도 동일한 방식으로 처리할 수 있다.
도 19a는 가상 객체에 의해 처리될 이미지에 포함된 소파를 변형시키는 효과가 적용 전의 개략도이다.
도 19b는 가상 객체에 의해 처리될 이미지에 포함된 소파를 변형시키는 효과가 적용 후의 개략도이다.
도 19a와 도 19b를 참조하면, 도면에서 SAIT 글자가 적힌 둥근 모양은 가상 객체를 나타낸다. 도 19a를 통해, 소파의 표면은 평평한 상태로 변형이 일어나지 않았고, 즉 가상 객체가 소파와 상호 작용하지 않은 것을 알 수 있다. 도 19b를 통해, 소파의 표면에 변형이 일어나 오목한 상태가 되었음을 확인할 수 있다. 즉, 도 19b에서 가상 객체가 소파와 상호 작용하였음을 알 수 있다.
한편, 첨부된 도면의 흐름도에서, 각 단계는 화살표에 따라 순서대로 도시되어 있지만, 이러한 단계는 반드시 화살표로 표시된 순서대로 실행되는 것은 아님을 이해해야 한다. 본 개시에서 명시적으로 언급하지 않는 한, 이러한 단계의 실행에 대한 엄격한 순서 제한은 없으며, 다른 순서로 수행할 수 있다. 또한, 첨부된 도면의 흐름도에서, 단계의 적어도 일부는 복수의 서브 단계 또는 스텝을 포함할 수 있으며, 이는 반드시 동시에 완료될 필요가 없고, 상이한 시간에 실행될 수 있으며, 그 실행 순서 또한 반드시 순차적일 필요가 없고, 다른 단계 또는 다른 단계의 서브 단계 또는 스텝의 적어도 일부와 함께 교대로 또는 교차적으로 실행될 수 있다.
도 1에 도시된 방법과 동일한 원리에 기초하여, 본 개시의 실시예는 이미지 처리 장치(2000)를 더 제공한다.
도 20은 일 실시 예에 따른 이미지 처리 장치의 구조에 대한 예시도이다.
도 20에 도시된 바와 같이, 해당 이미지 처리 장치(2000)는 이미지 획득 모듈(2010), 3차원 포인트 클라우드 데이터 결정 모듈(2020) 및 객체 추출 결과 결정 모듈(2030)을 포함할 수 있고, 그중,
이미지 획득 모듈(2010)은 장면의 깊이 이미지를 포함하는 처리될 이미지를 획득하기 위해 사용된다.
3 차원 포인트 클라우드 결정 모듈(2020)은 깊이 이미지에 기초하여, 깊이 이미지에 대응하는 3차원 포인트 클라우드 데이터를 결정하기 위해 사용된다.
객체 추출 결과 결정 모듈(2030)은3차원 포인트 클라우드 데이터에 기초하여, 장면 중에서 객체의 추출 결과를 획득하기 위해 사용된다.
본 개시는 장면에 포함된 객체의 추출 결과를 획득할 때, 3차원 포인트 클라우드 데이터에 기초하는데 3차원 포인트 클라우드 데이터는 복수의 3차원 이산 포인트로 구성된 포인트 세트를 나타내므로, 그 데이터 양은 3차원 복셀에 대응하는 데이터 양보다 적은 특징을 가지기 때문에 저장 공간을 절약하고 데이터 작업량을 줄이고 알고리즘의 작업 효율을 향상시킬 수 있다
객체 추출 결과 결정 모듈(2030)은 3차원 포인트 클라우드 데이터에 기초하여 장면에 포함된 객체의 추출 결과를 획득할 때, 구체적으로, 3차원 포인트 클라우드 데이터에 기초하여, 3차원 포인트 클라우드 데이터를 매트릭스로 변환하고, 매트릭스에 기초하여, 제1 특징 맵을 결정하고, 제1 특징 맵에 기초하여, 장면 중에서 객체의 추출 결과를 획득할 수 있다.
객체 추출 결과 결정 모듈(2030)은 3차원 포인트 클라우드 데이터에 기초하여 3차원 포인트 클라우드 데이터에 대응하는 매트릭스를 결정할 때, 구체적으로, 3차원 포인트 클라우드 데이터에서 객체에 속하는 포인트 클라우드 데이터를 결정하고, 3차원 포인트 클라우드 데이터에서 객체에 속하는 포인트 클라우드 데이터에 기초하여, 3차원 포인트 클라우드 데이터에 대응하는 매트릭스를 결정할 수 있다.
한편, 처리될 이미지는 장면의 컬러 이미지를 더 포함하고, 이미지 처리 장치(2000)는 컬러 이미지에서 특징을 추출하여 제2 특징 맵을 획득하기 위해 사용되는 특징 추출 모듈을 더 포함할 수 있다.
그리고, 객체 추출 결과 결정 모듈(2030)은, 제1 특징 맵에 기초하여, 장면 중에서 객체의 추출 결과를 획득할 때, 구체적으로, 제1 특징 맵 및 제2 특징 맵에 기초하여, 장면 중에서 객체의 추출 결과를 획득할 수 있다.
객체 추출 결과 결정 모듈(2030)은, 제1 특징 맵 및 제2 특징 맵에 기초하여, 장면 중에서 객체의 추출 결과를 획득할 때, 구체적으로, 제1 특징 맵 및 제2 특징 맵을 융합하여, 처리될 이미지에 대응하는 제3 특징 맵을 획득하고, 제3 특징 맵에 기초하여, 장면에 포함된 객체의 추출 결과를 획득할 수 있다.
객체 추출 결과 결정 모듈(2030)은, 제3 특징 맵에 기초하여, 장면에 포함된 객체의 추출 결과를 획득할 때, 구체적으로, 처리될 이미지를 절단하여, 적어도 2개의 서브 이미지를 획득하고, 각 서브 이미지에 대응하는 제3 특징 맵 및/또는 각 서브 이미지의 인접 서브 이미지에 대응하는 제3 특징 맵에 기초하여, 각 서브 이미지에 대응하는 객체 추출 결과를 결정하고, 각 서브 이미지에 대응하는 객체 추출 결과를 융합하여, 장면에 포함된 객체의 추출 결과를 획득할 수 있다.
객체 추출 결과 결정 모듈(2030)은, 각 서브 이미지에 대응하는 제3 특징 맵 및/또는 각 서브 이미지의 인접 서브 이미지에 대응하는 제3 특징 맵에 기초하여, 각 서브 이미지에 대응하는 객체 추출 결과를 결정할 때, 구체적으로, 각 서브 이미지의 가중치를 결정하고, 각 서브 이미지에 대응하는 제3 특징 맵 및/또는 각 서브 이미지의 인접 서브 이미지에 대응하는 제3 특징 맵 및 각 서브 이미지에 대응하는 가중치에 기초하여, 각 서브 이미지에 대응하는 객체 추출 결과를 결정할 수 있다.
객체 추출 결과 결정 모듈(2030)은, 각 서브 이미지에 대응하는 서브 특징 맵에 기초하여, 각 서브 이미지의 가중치를 결정하거나, 또는, 처리될 이미지의 후보 포인트를 결정하는 방법 또는 각 서브 이미지에 대응하는 후보 포인트 또는 각 서브 이미지의 후보 포인트에 대응하는 서브 특징 맵에 기초하여, 각 서브 이미지에 대응하는 가중치를 결정하는 방법 중에서 하나를 이용해서 각 서브 이미지의 가중치를 결정할 수 있다.
객체 추출 결과 결정 모듈(2030)은, 각 서브 이미지에 대응하는 후보 포인트에 기초하여, 각 서브 이미지에 대응하는 가중치를 결정할 때, 구체적으로, 각 서브 이미지에 대응하는 후보 포인트에 대해, 해당 후보 포인트와 그 인접 서브 이미지의 후보 포인트 사이의 유사 관계를 결정하고, 각 후보 포인트와 그 인접 서브 이미지의 후보 포인트 사이의 유사 관계에 기초하여, 각 서브 이미지에 대응하는 가중치를 결정할 수 있다.
객체 추출 결과 결정 모듈(2030)은, 각 서브 이미지에 대응하는 서브 특징 맵에 기초하여, 각 서브 이미지의 가중치를 결정할 때, 다음 중 어느 한 방법을 통해 결정한다.
첫째 가중치 결정 방법은 각 서브 이미지에 대해, 해당 서브 이미지의 중심 위치에 대응하는 제1 특징 벡터 및 해당 서브 이미지에 대응하는 서브 특징 맵에 대응하는 제2 특징 벡터를 결정하고, 각 서브 이미지에 대응하는 제1 특징 벡터 및 제2 특징 벡터에 기초하여, 각 서브 이미지의 가중치를 결정할 수 있다.
둘째 가중치 결정 방법은 각 서브 이미지에 대응하는 서브 특징 맵에 대해, 해당 서브 특징 맵은 적어도 하나의 확률값에 대응하고, 각 확률값은 해당 서브 특징 맵이 대응하는 객체에 속하는 확률을 나타내고, 적어도 하나의 확률값에서의 최대 확률값을 해당 서브 이미지의 가중치로 할 수 있다.
이미지 처리 장치(2000)는, 객체 추출 결과에 기초하여, 처리될 이미지에 포함된 객체의 3차원 검출 결과를 결정하기 위해 사용되는 3차원 검출 결과 결정 모듈을 더 포함하고, 그중, 3차원 검출 결과는 3차원 포즈 결과 및 3차원 분할 결과 중에서 하나 이상을 포함한다.
이때, 3차원 검출 결과 결정 모듈은, 객체 추출 결과에 기초하여 처리될 이미지에 포함된 객체의 3차원 검출 결과를 결정할 때, 구체적으로, 객체 추출 결과에 대응하는 3차원 포인트 클라우드 특징 및 2차원 이미지 특징을 추출하고, 3차원 포인트 클라우드 특징과 2차원 이미지 특징을 스플라이싱하여 제4 특징 맵을 획득하고, 제4 특징 맵에 기초하여, 처리될 이미지에 포함된 객체의 3차원 검출 결과를 결정할 수 있다.
3차원 검출 결과 결정 모듈은, 객체 추출 결과에 기초하여 처리될 이미지에 포함된 객체의 3차원 검출 결과를 결정할 때, 구체적으로, 객체 추출 결과에 기초하여, 처리될 이미지에 포함된 객체의 초기 3차원 검출 결과를 결정하고, 처리될 이미지에 포함된 객체에 대응하는 원본 이미지를 결정하고, 각 객체의 초기 3차원 검출 결과 및 대응하는 원본 이미지에 기초하여, 각 객체의 초기 3차원 검출 결과에 대응하는 차이 정보를 결정하고, 각 객체의 초기 3차원 검출 결과에 대응하는 차이 정보에 기초하여, 대응하는 객체의 초기 3차원 검출 결과를 업데이트하여, 처리될 이미지에 포함된 각 객체의 3차원 검출 결과를 획득할 수 있다.
도 16에 도시된 방법과 동일한 원리에 기초하여, 본 개시는 이미지 처리 장치(2100)를 더 제공한다.
도 21은 일 실시 예에 따른 객체를 변형하는 이미지 처리 장치의 구조에 대한 예시도이다.
도 21에 도시된 바와 같이, 해당 이미지 처리 장치(2100)는 변형 정보 획득 모듈(2110)과 이미지 변형 모듈(2120)을 포함할 수 있다.
변형 정보 획득 모듈(2110)은 처리될 이미지에 포함된 실제 객체에 대한 가상 객체의 변형 정보를 획득하기 위해 사용된다.
이미지 변형 모듈(2120)은 변형 정보에 기초하여, 실제 객체를 변형하여 변형 후의 처리될 이미지를 획득하기 위해 사용된다.
이미지 변형 모듈(2120)은, 변형 정보에 기초하여 실제 객체를 변형하여 변형 후의 처리될 이미지를 획득할 때, 구체적으로, 실제 객체에 대응하는 원본 이미지를 결정하고, 실제 객체에 대응하는 3차원 포즈 결과, 변형 정보 및 실제 객체에 대응하는 원본 이미지에 기초하여, 실제 객체에 대응하는 변형 후의 이미지와 변형 전의 이미지 사이의 변환 관계를 결정하고, 변형 전의 이미지는 처리될 이미지에 포함된 실제 객체에 대응하는 이미지고, 변환 관계 및 실제 객체에 대응하는 이미지에 기초하여, 실제 객체에 대응하는 변형 후의 이미지를 결정하고, 실제 객체에 대응하는 변형 후의 이미지에 기초하여, 변형 후의 처리될 이미지를 결정할 수 있다.
이미지 변형 모듈(2120)은, 실제 객체(변형될 객체)에 대응하는 3차원 포즈 결과, 변형 정보 및 변형될 객체에 대응하는 원본 이미지에 기초하여, 변형될 객체에 대응하는 변형 후의 이미지와 변형 전의 이미지 사이의 변환 관계를 결정할 때, 구체적으로, 변형될 객체의 원본 이미지, 변형 정보 및 대응 관계에 기초하여, 원본 이미지에서 변형될 객체에 대응하는 변형 후의 변형점을 결정하고, 대응 관계는 샘플 이미지에서 상이한 변형 정보 하에서, 변형 전후에 객체가 대응하는 변형점에 기초하여 확립하고, 변형될 객체에 대응하는 변형 후의 변형점, 변형될 객체의 변형 전의 변형점 및 변형될 객체에 대응하는 3차원 포즈 결과에 기초하여, 변형될 객체에 대응하는 변형 후의 이미지와 변형 전의 이미지 사이의 변환 관계를 결정할 수 있다.
이미지 변형 모듈(2120)은, 변형될 객체에 대응하는 변형 후의 변형점, 변형될 객체의 변형 전의 변형점 및 변형될 객체에 대응하는 3차원 포즈 결과에 기초하여, 변형될 객체에 대응하는 변형 후의 이미지와 변형 전의 이미지 사이의 변환 관계를 결정할 때, 구체적으로, 변형될 객체에 대응하는 각각의 변형점의 가중치를 결정하고, 각 변형점의 가중치, 변형될 객체에 대응하는 변형 후의 변형점, 변형될 객체의 변형 전의 변형점 및 변형될 객체에 대응하는 3차원 포즈 결과에 기초하여, 변형될 객체에 대응하는 변형 후의 이미지와 변형 전의 이미지 사이의 변환 관계를 결정할 수 있다.
이미지 변형 모듈(2120)은, 변형될 객체에 대응하는 변형 후의 이미지에 기초하여, 변형 후의 처리될 이미지를 결정할 때, 다음 중 적어도 한 방법을 통해 결정할 수 있다.
첫째 변형 후의 처리될 이미지를 결정하는 방법은 처리될 이미지에 포함된 변형 전의 이미지에서 변형될 객체에 대응하는 변형 후의 이미지로 교체하여, 변형 후의 처리될 이미지를 획득할 수 있다.
첫째 변형 후의 처리될 이미지를 결정하는 방법은 변형될 객체에 대응하는 변형 후의 이미지 및 변형될 객체에 대응하는 변형 전의 이미지에 기초하여, 차분 이미지를 결정하고, 차분 이미지에 기초하여, 변형 후의 처리될 이미지를 결정할 수 있다.
도 20과 도 21의 이미지 처리 장치는 별도로 도시하였으나 하나의 장치로 구현될 수 있다.
본 개시에서 제공하는 이미지 처리 장치는 이미지 처리 방법을 수행할 수 있는 장치이기 때문에, 해당 기술분야에서의 통상의 지식을 가진 자는 본 개시의 실시예에 따른 이미지 처리 장치의 구체적 실현 방식 및 다양한 변형 형태를 이해할 수 있다. 따라서, 본 개시의 이미지 처리 장치가 이미지 처리 방법을 구현하는 방법은 더는 여기서 설명하지 않는다. 본 개시의 이미지 처리 방법을 구현하기 위해, 해당 기술분야에서의 통상의 지식을 가진 자에 의해 채택된 이미지 처리 장치는 모두 본 출원의 보호범위에 속한다.
본 개시에서 제공한 이미지 처리 방법과 이미지 처리 장치와 동일한 원리에 기초하여, 본 개시는 전자 장치를 더 제공한다. 해당 전자 장치는 프로세서 및 메모리를 포함한다. 그중, 메모리는 판독 가능한 명령을 저장하고, 판독 가능한 명령은 프로세서에 의해 로드 및 실행될 때, 본 개시에 따른 방법을 구현할 수 있다.
도 22는 일 실시 예에 따른 전자 장치의 구조에 대한 예시도이다.
도 22는 본 개시의 이미지 처리 방법이 적용될 수 있는 전자 장치(2200)의 구조로 해당 전자 장치(2200)는 프로세서(2010) 및 메모리(2030)를 포함할 수 있다. 그중, 프로세서(2210)는 메모리(2230)와 연결되고, 예를 들어, 버스(2220)를 통해 연결된다. 선택적으로, 전자 장치(2200)는 송수신기(2240)를 더 포함할 수 있다. 실제 응용에서, 송수신기는(2240)는 하나로 제한하지 않으며, 해당 전자 장치(2200)의 구조는 본 개시의 실시예를 제한하지 않는다.
프로세서(2210)는 CPU(Central Processing Unit, 중앙 처리 장치), 일반 프로세서, DSP(Digital Signal Processor, 디지털 신호 프로세서), ASIC(Application Specific Integrated Circuit, 애플리케이션 특정 집적 회로), FPGA(Field Programmable Gate Array, 필드 프로그램 가능 게이트 어레이) 또는 기타 프로그램 가능 논리 장치, 트랜지스터 논리 장치, 하드웨어 구성 요소 또는 이들의 임의의 조합일 수 있고, 본 출원의 개시와 관련하여 설명된 다양한 예시적인 논리 블록, 모듈 및 회로를 구현 또는 실행할 수 있다. 프로세서(2210)는 또한 하나 이상의 마이크로 프로세서 조합, DSP 및 마이크로 프로세서의 조합 등과 같은 컴퓨팅 기능을 실현하는 조합일 수 있다.
버스(2220)는 상기 컴포넌트 간의 정보를 전송하기 위한 경로를 포함할 수 있다. 버스(2220)는 PCI(Peripheral Component Interconnect, 주변 부품 상호 연결 표준) 버스 또는 EISA(Extended Industry Standard Architecture, 확장 기술 표준 구조) 버스 등일 수 있다. 버스(2220)는 주소 버스, 데이터 버스, 제어 버스 등으로 나눌 수 있다. 표현의 편의를 위해, 도 22에서는 하나의 선만 사용하지만, 이것이 버스가 하나만 있거나 버스 유형이 하나만 있는 것을 나타내지는 않는다.
메모리(2230)는 ROM(Read Only Memory, 읽기 전용 기억 장치) 또는 정적 정보 및 명령을 저장할 수 있는 다른 유형의 정적 저장 장치, RAM(Random Access Memory, 임의 추출 기억 장치) 또는 정보 및 명령을 저장할 수 있는 다른 유형의 동적 저장 장치일 수 있고, 또는 EEPROM(Electrically Erasable Programmable Read Only Memory, 소거 및 프로그램 가능 읽기용 기억 장치), CD-ROM (Compact Disc Read Only Memory, 읽기 전용 광 디스크) 또는 기타 광 디스크 저장 장치, 광 디스크 저장 장치 (콤팩트 디스크, 레이저 디스크, 광 디스크, 디지털 범용 광 디스크, 블루레이 디스크 등), 디스크 저장 매체 또는 다른 자기 저장 장치, 또는 명령 또는 데이터 구조의 형태로 원하는 프로그램 코드를 휴대 또는 저장하는데 사용되고 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체일 수 있으며, 이에 제한되지 않는다.
메모리(2230)는 본 개시의 방안을 실행하기 위한 애플리케이션 프로그램 코드를 저장하는데 사용되고, 실행은 프로세서(2210)에 의해 제어된다. 프로세서(2210)는 메모리(2230)에 저장된 애플리케이션 프로그램 코드를 실행하여 실시예에 도시된 상기 임의의 방법을 구현하는데 사용된다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (20)

  1. 장면의 깊이 이미지를 포함하는 처리될 이미지를 획득하는 단계;
    상기 깊이 이미지에 기초하여, 상기 깊이 이미지에 대응하는 3차원 포인트 클라우드 데이터를 결정하는 단계; 및
    상기 3차원 포인트 클라우드 데이터에 기초하여, 상기 장면에 포함된 객체를 추출한 결과인 객체 추출 결과를 획득하는 단계
    를 포함하는 이미지 처리 방법.
  2. 제1항에 있어서,
    상기 3차원 포인트 클라우드 데이터에 기초하여, 상기 장면에 포함된 객체를 추출한 결과인 객체 추출 결과를 획득하는 단계는,
    상기 3차원 포인트 클라우드 데이터를 매트릭스로 변환하는 단계;
    상기 매트릭스에 기초하여, 제1 특징 맵을 결정하는 단계; 및
    상기 제1 특징 맵에 기초하여, 상기 장면에 포함된 상기 객체 추출 결과를 획득하는 단계
    를 포함하는 이미지 처리 방법.
  3. 제2항에 있어서,
    상기 3차원 포인트 클라우드 데이터를 매트릭스로 변환하는 단계는,
    상기 3차원 포인트 클라우드 데이터에서 객체에 속하는 포인트 클라우드 데이터를 결정하는 단계; 및
    상기 3차원 포인트 클라우드 데이터에서 객체에 속하는 포인트 클라우드 데이터에 기초하여, 상기 3차원 포인트 클라우드 데이터에 대응하는 상기 매트릭스를 결정하는 단계
    를 포함하는 이미지 처리 방법.
  4. 제2항에 있어서,
    상기 처리될 이미지는,
    상기 장면의 컬러 이미지
    를 더 포함하고,
    상기 이미지 처리 방법은,
    상기 컬러 이미지에서 특징을 추출하여 제2 특징 맵을 획득하는 단계
    를 더 포함하고,
    상기 제1 특징 맵에 기초하여, 상기 장면에 포함된 상기 객체 추출 결과를 획득하는 단계는,
    상기 제1 특징 맵 및 상기 제2 특징 맵에 기초하여, 상기 장면에 포함된 상기 객체 추출 결과를 획득하는 단계
    를 포함하는 이미지 처리 방법.
  5. 제4항에 있어서,
    상기 제1 특징 맵 및 상기 제2 특징 맵에 기초하여, 상기 장면에 포함된 상기 객체 추출 결과를 획득하는 단계는,
    상기 제1 특징 맵 및 제2 특징 맵을 융합하여, 상기 처리될 이미지에 대응하는 제3 특징 맵을 획득하는 단계; 및
    상기 제3 특징 맵에 기초하여, 상기 장면에 포함된 상기 객체 추출 결과를 획득하는 단계
    를 포함하는 이미지 처리 방법.
  6. 제5항에 있어서,
    상기 제3 특징 맵에 기초하여, 상기 장면에 포함된 상기 객체 추출 결과를 획득하는 단계는,
    상기 처리될 이미지를 분할하여, 적어도 2개의 서브 이미지를 획득하는 단계;
    각 서브 이미지에 대응하는 제3 특징 맵 및/또는 각 서브 이미지의 인접 서브 이미지에 대응하는 제3 특징 맵에 기초하여, 각 서브 이미지에 대응하는 객체의 추출 결과를 결정하는 단계; 및
    각 서브 이미지에 대응하는 객체의 추출 결과를 융합하여, 상기 장면에 포함된 상기 객체 추출 결과를 획득하는 단계
    를 포함하는 이미지 처리 방법.
  7. 제6항에 있어서,
    각 서브 이미지에 대응하는 제3 특징 맵 및/또는 각 서브 이미지의 인접 서브 이미지에 대응하는 제3 특징 맵에 기초하여, 각 서브 이미지에 대응하는 객체의 추출 결과를 결정하는 단계는,
    각 서브 이미지의 가중치를 결정하는 단계; 및
    각 서브 이미지에 대응하는 제3 특징 맵 및/또는 각 서브 이미지의 인접 서브 이미지에 대응하는 제3 특징 맵 및 각 서브 이미지에 대응하는 가중치에 기초하여, 상기 각 서브 이미지에 대응하는 객체의 추출 결과를 결정하는 단계
    를 포함하는 이미지 처리 방법.
  8. 제7항에 있어서,
    상기 각 서브 이미지의 가중치를 결정하는 단계는,
    각 서브 이미지에 대응하는 서브 특징 맵에 기초하여, 각 서브 이미지의 가중치를 결정하는 단계; 및
    상기 처리될 이미지의 후보 포인트를 결정하고, 상기 각 서브 이미지에 대응하는 후보 포인트 또는 상기 각 서브 이미지의 후보 포인트에 대응하는 서브 특징 맵에 기초하여, 각 서브 이미지에 대응하는 가중치를 결정하는 단계
    중 어느 하나를 포함하는 이미지 처리 방법.
  9. 제8항에 있어서,
    상기 각 서브 이미지에 대응하는 후보 포인트에 기초하여, 각 서브 이미지에 대응하는 가중치를 결정하는 단계는,
    각 서브 이미지에 대응하는 후보 포인트에 대해, 해당 후보 포인트와 그 인접 서브 이미지의 후보 포인트 사이의 유사 관계를 결정하고, 각 후보 포인트와 그 인접 서브 이미지의 후보 포인트 사이의 유사 관계에 기초하여, 각 서브 이미지에 대응하는 가중치를 결정하는 단계; 및
    상기 각 서브 이미지에 대응하는 서브 특징 맵에 기초하여, 각 서브 이미지의 가중치를 결정하는 단계
    를 포함하는 이미지 처리 방법.
  10. 제8항에 있어서,
    상기 각 서브 이미지에 대응하는 서브 특징 맵에 기초하여, 각 서브 이미지의 가중치를 결정하는 단계는,
    각 서브 이미지에 대해, 해당 서브 이미지의 중심 위치에 대응하는 제1 특징 벡터 및 해당 서브 이미지에 대응하는 서브 특징 맵에 대응하는 제2 특징 벡터를 결정하고, 각 서브 이미지에 대응하는 상기 제1 특징 벡터 및 상기 제2 특징 벡터에 기초하여, 각 서브 이미지의 가중치를 결정하는 단계; 및
    각 서브 이미지에 대응하는 서브 특징 맵에 대해, 해당 서브 특징 맵은 적어도 하나의 확률값에 대응하고, 각 확률값은 해당 서브 특징 맵이 대응하는 객체에 속하는 확률을 나타내고, 적어도 하나의 객체에 대응하는 각 확률값에서의 최대 확률값을 해당 서브 이미지의 가중치로 결정하는 단계
    중 어느 하나를 포함하는 이미지 처리 방법.
  11. 제1항에 있어서,
    상기 객체 추출 결과에 기초하여, 상기 처리될 이미지에 포함된 객체의 3차원 검출 결과를 결정하는 단계
    를 더 포함하고,
    상기 3차원 검출 결과는,
    3차원 포즈 결과 및 3차원 분할 결과 중에서 적어도 하나를 포함하는
    이미지 처리 방법.
  12. 제11항에 있어서,
    상기 객체 추출 결과에 기초하여, 상기 처리될 이미지에 포함된 객체의 3차원 검출 결과를 결정하는 단계는,
    상기 객체 추출 결과에 대응하는 3차원 포인트 클라우드 특징 및 2차원 이미지 특징을 추출하는 단계;
    상기 3차원 포인트 클라우드 특징과 상기 2차원 이미지 특징을 스플라이싱하여 제4 특징 맵을 획득하는 단계; 및
    상기 제4 특징 맵에 기초하여, 상기 처리될 이미지에 포함된 객체의 3차원 검출 결과를 결정하는 단계
    를 포함하는 이미지 처리 방법.
  13. 제11항에 있어서,
    상기 객체 추출 결과에 기초하여, 상기 처리될 이미지에 포함된 객체의 3차원 검출 결과를 결정하는 단계는,
    상기 객체 추출 결과에 기초하여, 상기 처리될 이미지에 포함된 객체의 초기 3차원 검출 결과를 결정하는 단계;
    상기 처리될 이미지에 포함된 객체에 대응하는 원본 이미지를 결정하는 단계;
    각 객체의 초기 3차원 검출 결과 및 대응하는 원본 이미지에 기초하여, 각 객체의 초기 3차원 검출 결과에 대응하는 차이 정보를 결정하는 단계; 및
    상기 각 객체의 초기 3차원 검출 결과에 대응하는 차이 정보에 기초하여, 대응하는 객체의 초기 3차원 검출 결과를 업데이트하여, 상기 처리될 이미지에 포함된 각 객체의 3차원 검출 결과를 획득하는 단계
    를 포함하는 이미지 처리 방법.
  14. 처리될 이미지에 포함된 실제 객체에 대한 가상 객체의 변형 정보를 획득하는 단계; 및
    상기 변형 정보에 기초하여, 상기 처리될 이미지의 상기 실제 객체를 변형하여 변형 후의 상기 처리될 이미지를 획득하는 단계
    를 포함하는 이미지 처리 방법.
  15. 제14항에 있어서,
    상기 변형 정보에 기초하여, 상기 실제 객체를 변형하여 변형 후의 상기 처리될 이미지를 획득하는 단계는,
    상기 실제 객체에 대응하는 원본 이미지를 결정하는 단계;
    상기 실제 객체에 대응하는 3차원 포즈 결과, 상기 변형 정보 및 상기 실제 객체에 대응하는 상기 원본 이미지에 기초하여, 상기 실제 객체에 대응하는 변형 후의 이미지와 변형 전의 이미지 사이의 변환 관계를 결정하는 단계;
    상기 변환 관계 및 상기 변형 전의 이미지에 기초하여, 상기 실제 객체에 대응하는 변형 후의 이미지를 결정하는 단계; 및
    상기 실제 객체에 대응하는 변형 후의 이미지에 기초하여, 변형 후의 상기 처리될 이미지를 결정하는 단계
    를 포함하고,
    상기 변형 전의 이미지는,
    상기 처리될 이미지에 포함된 상기 실제 객체에 대응하는 이미지인
    이미지 처리 방법.
  16. 제15항에 있어서,
    상기 실제 객체에 대응하는 3차원 포즈 결과, 상기 변형 정보 및 상기 실제 객체에 대응하는 상기 원본 이미지에 기초하여, 상기 실제 객체에 대응하는 변형 후의 이미지와 변형 전의 이미지 사이의 변환 관계를 결정하는 단계는,
    상기 실제 객체의 원본 이미지, 상기 변형 정보 및 대응 관계에 기초하여, 상기 원본 이미지에서 상기 실제 객체에 대응하는 변형 후의 변형점을 결정하는 단계; 및
    상기 실제 객체에 대응하는 변형 후의 변형점, 상기 실제 객체의 변형 전의 변형점 및 상기 실제 객체에 대응하는 3차원 포즈 결과에 기초하여, 상기 실제 객체에 대응하는 변형 후의 이미지와 변형 전의 이미지 사이의 변환 관계를 결정하는 단계
    를 포함하고,
    상기 대응 관계는,
    샘플 이미지에서 상이한 변형 정보 하에서, 변형 전후에 객체가 대응하는 변형점에 기초하여 확립하는
    이미지 처리 방법.
  17. 제16항에 있어서,
    상기 실제 객체에 대응하는 변형 후의 변형점, 상기 실제 객체의 변형 전의 변형점 및 상기 실제 객체에 대응하는 3차원 포즈 결과에 기초하여, 상기 실제 객체에 대응하는 변형 후의 이미지와 변형 전의 이미지 사이의 변환 관계를 결정하는 단계는,
    상기 실제 객체에 대응하는 각각의 변형점의 가중치를 결정하는 단계; 및
    각 변형점의 가중치, 상기 변형될 객체에 대응하는 변형 후의 변형점, 상기 실제 객체의 변형 전의 변형점 및 상기 실제 객체에 대응하는 3차원 포즈 결과에 기초하여, 상기 실제 객체에 대응하는 변형 후의 이미지와 변형 전의 이미지 사이의 변환 관계를 결정하는 단계
    를 포함하는 이미지 처리 방법.
  18. 제15항에 있어서,
    상기 실제 객체에 대응하는 변형 후의 이미지에 기초하여, 변형 후의 상기 처리될 이미지를 결정하는 단계는,
    상기 처리될 이미지에 포함된 상기 실제 객체의 변형 전의 이미지를 상기 실제 객체에 대응하는 변형 후의 이미지로 교체하여, 변형 후의 상기 처리될 이미지를 획득하는 단계; 및
    상기 실제 객체에 대응하는 변형 후의 이미지 및 상기 실제 객체에 대응하는 변형 전의 이미지에 기초하여, 차분 이미지를 결정하고, 상기 차분 이미지에 기초하여, 변형 후의 상기 처리될 이미지를 결정하는 단계
    중 적어도 하나를 포함하는 이미지 처리 방법.
  19. 장면의 깊이 이미지를 포함하는 처리될 이미지를 획득하는 이미지 획득 모듈;
    상기 깊이 이미지에 기초하여, 상기 깊이 이미지에 대응하는 3차원 포인트 클라우드 데이터를 결정하는 3D 포인트 클라우드 데이터 결정 모듈; 및
    상기 3차원 포인트 클라우드 데이터에 기초하여, 상기 장면에 포함된 객체를 추출한 결과인 객체 추출 결과를 획득하는 3차원 검출 결과 결정 모듈
    을 포함하는 이미지 처리 장치.
  20. 제19항에 있어서,
    상기 처리될 이미지에 포함된 실제 객체에 대한 가상 객체의 변형 정보를 획득하는 변형 정보 획득 모듈; 및
    상기 변형 정보에 기초하여, 상기 실제 객체를 변형하여 변형 후의 상기 처리될 이미지를 획득하는 이미지 변형 모듈
    을 더 포함하는 이미지 처리 장치.
KR1020200108091A 2019-11-14 2020-08-26 이미지 처리 장치 및 방법 KR20210058638A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US17/095,784 US11645756B2 (en) 2019-11-14 2020-11-12 Image processing apparatus and method
US18/126,042 US11900610B2 (en) 2019-11-14 2023-03-24 Image processing apparatus and method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201911115151.0A CN112802202A (zh) 2019-11-14 2019-11-14 图像处理方法、装置、电子设备及计算机存储介质
CN201911115151.0 2019-11-14

Publications (1)

Publication Number Publication Date
KR20210058638A true KR20210058638A (ko) 2021-05-24

Family

ID=75803775

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200108091A KR20210058638A (ko) 2019-11-14 2020-08-26 이미지 처리 장치 및 방법

Country Status (2)

Country Link
KR (1) KR20210058638A (ko)
CN (1) CN112802202A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113689539A (zh) * 2021-07-06 2021-11-23 清华大学 基于隐式光流场的动态场景实时三维重建方法与装置

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113436273A (zh) * 2021-06-28 2021-09-24 南京冲浪智行科技有限公司 一种3d场景定标方法、定标装置及其定标应用

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113689539A (zh) * 2021-07-06 2021-11-23 清华大学 基于隐式光流场的动态场景实时三维重建方法与装置
CN113689539B (zh) * 2021-07-06 2024-04-19 清华大学 基于隐式光流场的动态场景实时三维重建方法

Also Published As

Publication number Publication date
CN112802202A (zh) 2021-05-14

Similar Documents

Publication Publication Date Title
US11763433B2 (en) Depth image generation method and device
US11645756B2 (en) Image processing apparatus and method
Shivakumar et al. Dfusenet: Deep fusion of rgb and sparse depth information for image guided dense depth completion
US10803546B2 (en) Systems and methods for unsupervised learning of geometry from images using depth-normal consistency
Kumar et al. Monocular fisheye camera depth estimation using sparse lidar supervision
US9171403B2 (en) Contour completion for augmenting surface reconstructions
CN111931787A (zh) 一种基于特征聚合的rgbd显著性检测方法
KR20210058683A (ko) 깊이 맵 생성 방법 및 장치
US20220138977A1 (en) Two-stage depth estimation machine learning algorithm and spherical warping layer for equi-rectangular projection stereo matching
CN109685095B (zh) 根据3d布置类型对2d图像进行分类
US11893690B2 (en) 3D reconstruction with smooth maps
US20230130281A1 (en) Figure-Ground Neural Radiance Fields For Three-Dimensional Object Category Modelling
US20240119697A1 (en) Neural Semantic Fields for Generalizable Semantic Segmentation of 3D Scenes
CN107851332A (zh) 经由拓扑知晓表面跟踪的一致细分
CN113850900A (zh) 三维重建中基于图像和几何线索恢复深度图的方法及系统
KR20210058638A (ko) 이미지 처리 장치 및 방법
CN113593033A (zh) 一种基于网格细分结构的三维模型特征提取方法
CN116385660A (zh) 室内单视图场景语义重建方法及系统
Liao et al. Adaptive depth estimation for pyramid multi-view stereo
Huang et al. A bayesian approach to multi-view 4d modeling
CN114494395A (zh) 基于平面先验的深度图生成方法、装置、设备及存储介质
Haji-Esmaeili et al. Large-scale Monocular Depth Estimation in the Wild
He et al. Manhattan‐world urban building reconstruction by fitting cubes
CN116433852B (zh) 数据处理方法、装置、设备及存储介质
US20230177722A1 (en) Apparatus and method with object posture estimating

Legal Events

Date Code Title Description
A201 Request for examination