KR20200067631A - 영상 처리 장치 및 그 동작방법 - Google Patents

영상 처리 장치 및 그 동작방법 Download PDF

Info

Publication number
KR20200067631A
KR20200067631A KR1020180154691A KR20180154691A KR20200067631A KR 20200067631 A KR20200067631 A KR 20200067631A KR 1020180154691 A KR1020180154691 A KR 1020180154691A KR 20180154691 A KR20180154691 A KR 20180154691A KR 20200067631 A KR20200067631 A KR 20200067631A
Authority
KR
South Korea
Prior art keywords
target
peripheral
region
feature
features
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
KR1020180154691A
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 KR1020180154691A priority Critical patent/KR20200067631A/ko
Priority to PCT/KR2019/013588 priority patent/WO2020116768A1/ko
Priority to US17/299,607 priority patent/US11921822B2/en
Publication of KR20200067631A publication Critical patent/KR20200067631A/ko
Priority to US18/427,442 priority patent/US12443679B2/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/759Region-based matching
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration using local operators
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

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

Abstract

영상 처리 장치에 관한 것으로, 하나 이상의 인스트럭션들을 저장하는 메모리, 및 메모리에 저장된 하나 이상의 인스트럭션들을 실행하는 프로세서를 포함하고, 프로세서는, 하나 이상의 컨볼루션 뉴럴 네트워크를 이용하여, 복수의 입력 영상들 각각에서 동일한 위치를 가지는, 타겟 영역들의 특징들과 제1 커널 세트의 컨볼루션 연산을 수행하여, 타겟 특징들을 추출하고, 복수의 입력 영상들에서 타겟 영역들의 주변에 위치하는, 주변 영역들의 특징들과 제2 커널 세트의 컨볼루션 연산을 수행하여, 주변 특징들을 추출하며, 타겟 특징들 및 주변 특징들에 기초하여, 출력 영상에서, 타겟 영역들에 대응되는 영역의 특징을 결정하는 영상 처리 장치가 개시된다.

Description

영상 처리 장치 및 그 동작방법{Image processing apparatus and operating method for the same}
다양한 실시예들은 컨볼루션 연산을 수행하는 영상 처리 장치 및 그 동작방법에 관한 것으로서, 더욱 상세하게는 컨볼루션 연산 수행 시, 영상의 디테일(detail)을 향상시킬 수 있는 영상 처리 장치 및 그 동작방법에 관한 것이다.
컴퓨터 기술의 발달과 함께 데이터 트래픽이 지수함수 형태로 증가하면서 인공지능은 미래 혁신을 주도하는 중요한 트랜드로 자리잡았다. 인공지능은 사람의 사고방식을 모방하는 방식이기 때문에 사실상 전 산업에 무한하게 응용이 가능하다. 인공지능의 대표적인 기술로는 패턴 인식, 기계 학습, 전문가 시스템, 뉴럴 네트워크, 자연어 처리 등이 있다.
뉴럴 네트워크는 인간의 생물학적 신경 세포의 특성을 수학적 표현에 의해 모델링한 것으로, 인간이 가지고 있는 학습이라는 능력을 모방한 알고리즘을 이용한다. 이 알고리즘을 통하여, 뉴럴 네트워크는 입력 데이터와 출력 데이터 사이의 사상(mapping)을 생성할 수 있고, 이러한 사상을 생성하는 능력은 뉴럴 네트워크의 학습 능력이라고 표현될 수 있다. 또한, 뉴럴 네트워크는 학습된 결과에 기초하여, 학습에 이용되지 않았던 입력 데이터에 대하여, 올바른 출력 데이터를 생성할 수 있는 일반화 능력을 가진다.
컨볼루션 뉴럴 네트워크(CNN: Convolution Neural Network) 등에서, 입력 영상(입력 특징 맵)과 커널의 컨볼루션 연산을 통해, 출력 영상이 생성되며, 이때, 입력 영상의 대응되는 영역(입력 영상에서 동일한 위치를 가지는 영역)의 특징을 참조하여, 출력 영상이 생성된다. 이에 따라, 입력 영상의 특정 영역에 대한 디테일이 손실된 경우, 출력 영상에서, 특정 영역에 대응하는 영역의 디테일의 생성이 어렵다는 문제점이 있다.
다양한 실시예들은, 입력 영상에 포함되는, 타겟 영역에 대한 타겟 특징과, 타겟 영역의 주변에 위치하는 주변 영역에 대한 주변 특징을 이용하여, 출력 영상을 생성함으로써, 출력 영상에서, 타겟 영역에 대응하는 영역의 디테일을 향상시킬 수 있는, 영상 처리 장치 및 그 동작방법을 제공할 수 있다.
일 실시예에 따른 영상 처리 장치는 하나 이상의 인스트럭션들을 저장하는 메모리 및 상기 메모리에 저장된 상기 하나 이상의 인스트럭션들을 실행하는 프로세서를 포함하고, 상기 프로세서는, 하나 이상의 컨볼루션 뉴럴 네트워크를 이용하여, 복수의 입력 영상들 각각에서 동일한 위치를 가지는, 타겟 영역들의 특징들과 제1 커널 세트의 컨볼루션 연산을 수행하여, 타겟 특징들을 추출하고, 상기 복수의 입력 영상들에서 상기 타겟 영역들의 주변에 위치하는, 주변 영역들의 특징들과 제2 커널 세트의 컨볼루션 연산을 수행하여, 주변 특징들을 추출하며, 상기 타겟 특징들 및 상기 주변 특징들에 기초하여, 출력 영상에서, 상기 타겟 영역들에 대응되는 영역의 특징을 결정할 수 있다.
일 실시예에 따른 복수의 입력 영상들은 제1 입력 영상 및 제2 입력 영상을 포함하며, 상기 타겟 영역들은, 상기 제1 입력 영상 및 상기 제2 입력 영상 각각에서 동일한 위치를 가지는, 제1 타겟 영역 및 제2 타겟 영역을 포함하고, 상기 주변 영역들은, 상기 제1 입력 영상에서 상기 제1 타겟 영역의 주변에 위치하는 제1 주변 영역 및 상기 제2 입력 영상에서, 상기 제2 타겟 영역의 주변에 위치하는 제2 주변 영역을 포함할 수 있다.
일 실시예에 따른 프로세서는, 상기 제1 입력 영상에서, 상기 제1 타겟 영역과의 거리가 기 설정된 거리 이내인 범위에서, 상기 제1 주변 영역을 추출하고, 상기 제2 입력 영상에서, 상기 제2 타겟 영역과의 거리가 상기 기 설정된 거리 이내인 범위에서, 상기 제2 주변 영역을 추출할 수 있다.
일 실시예에 따른 프로세서는, 상기 제1 입력 영상에 포함된 복수의 영역들 각각에 대하여, 상기 제1 타겟 영역과의 특징 유사성(feature similarity)을 결정하고, 상기 특징 유사성에 기초하여, 상기 제1 주변 영역을 결정하며, 상기 제2 입력 영상에 포함된 복수의 영역들 각각에 대하여, 상기 제2 타겟 영역과의 특징 유사성을 결정하고, 상기 특징 유사성에 기초하여, 상기 제2 주변 영역을 결정할 수 있다.
일 실시예에 따른 제1 주변 영역은, 상기 제1 입력 영상에 포함된 복수의 영역들 중 상기 제1 타겟 영역의 특징과 가장 유사한 특징을 가지는 영역이고, 상기 제2 주변 영역은, 상기 제2 입력 영상에 포함된 복수의 영역들 중 상기 제2 타겟 영역의 특징과 가장 유사한 특징을 가지는 영역일 수 있다.
일 실시예에 따른 프로세서는, 상기 제1 타겟 영역과 상기 제1 주변 영역과의 거리에 기초하여, 상기 제1 주변 영역에 적용되는 제1 가중치를 결정하고, 상기 제2 타겟 영역과 상기 제2 주변 영역과의 거리에 기초하여, 상기 제2 주변 영역에 적용되는 제2 가중치를 결정하며, 상기 제1 가중치 및 제2 가중치를 적용하여, 상기 주변 특징들을 추출할 수 있다.
일 실시예에 따른 프로세서는, 상기 제1 타겟 영역과 상기 제1 주변 영역과의 거리가 가까울수록, 상기 제1 가중치를 큰 값으로 결정하고, 상기 제2 타겟 영역과 상기 제2 주변 영역과의 거리가 가까울수록 상기 제2 가중치를 큰 값으로 결정할 수 있다.
일 실시예에 따른 프로세서는, 상기 제1 타겟 영역의 특징과 상기 제1 주변 영역의 특징 사이의 제1 유사도에 기초하여, 상기 제1 주변 영역에 적용되는 제1 가중치를 결정하고, 상기 제2 타겟 영역의 특징과 상기 제2 주변 영역의 특징 사이의 제2 유사도에 기초하여, 상기 제2 주변 영역에 적용되는 제2 가중치를 결정하며, 상기 제1 가중치 및 제2 가중치를 적용하여, 상기 주변 특징들을 추출할 수 있다.
일 실시예에 따른 프로세서는, 상기 제1 유사도가 클수록, 상기 제1 가중치를 큰 값으로 결정하고, 상기 제2 유사도가 클수록, 상기 제2 가중치를 큰 값으로 결정할 수 있다.
일 실시예에 따른 제1 커널 세트 및 제2 커널 세트 각각은 복수의 커널들을 포함하고, 상기 복수의 커널들의 개수는 상기 복수의 입력 영상들의 개수와 동일할 수 있다.
일 실시예에 따른 제1 커널 세트는 제1 커널 및 제2 커널을 포함하고, 상기 제2 커널 세트는 제3 커널 및 제4 커널을 포함하며, 상기 제1 타겟 영역과 상기 제1 커널의 컨볼루션 연산을 수행하여, 제1 타겟 특징을 추출하고, 상기 제2 타겟 영역과 상기 제2 커널의 컨볼루션 연산을 수행하여 제2 타겟 특징을 추출하며, 상기 제1 주변 영역과 상기 제3 커널의 컨볼루션 연산을 수행하여 제1 주변 특징을 추출하고, 상기 제2 주변 영역과 상기 제4 커널의 컨볼루션 연산을 수행하여 제2 주변 특징을 추출하며, 상기 제1 타겟 특징, 제2 타겟 특징, 제1 주변 특징 및 제2 주변 특징에 기초하여, 상기 출력 영상에서, 상기 제1 타겟 영역 및 상기 제2 타겟 영역에 대응하는 영역의 특징을 결정할 수 있다.
일 실시예에 따른 프로세서는, 상기 타겟 특징들 및 상기 주변 특징들과, 제3 커널과의 컨볼루션 연산을 수행함으로써, 상기 출력 영상에서, 상기 타겟 영역들에 대응하는 영역의 특징을 결정할 수 있다.
일 실시예에 따른 복수의 입력 영상들은, 상기 하나 이상의 컨볼루션 뉴럴 네트워크에 포함되는 복수의 컨볼루션 레이어들 중 어느 하나에 입력되는, 복수의 프레임 영상들 및 복수의 특징 맵들 중 적어도 하나를 포함할 수 있다.
일 실시예에 따른 영상 처리 장치의 동작방법은, 복수의 입력 영상들 각각에서 동일한 위치를 가지는, 타겟 영역들의 특징들과 제1 커널 세트의 컨볼루션 연산을 수행하여, 타겟 특징들을 추출하는 단계, 상기 복수의 입력 영상들에서 상기 타겟 영역들의 주변에 위치하는, 주변 영역들의 특징들과 제2 커널 세트의 컨볼루션 연산을 수행하여, 주변 특징들을 추출하는 단계, 및 상기 타겟 특징들 및 상기 주변 특징들에 기초하여, 출력 영상에서, 상기 타겟 영역들에 대응되는 영역의 특징을 결정하는 단계를 포함할 수 있다.
일 실시예에 따른 컴퓨터 프로그램 제품은, 복수의 입력 영상들 각각에서 동일한 위치를 가지는, 타겟 영역들의 특징들과 제1 커널 세트의 컨볼루션 연산을 수행하여, 타겟 특징들을 추출하는 단계, 상기 복수의 입력 영상들에서 상기 타겟 영역들의 주변에 위치하는, 주변 영역들의 특징들과 제2 커널 세트의 컨볼루션 연산을 수행하여, 주변 특징들을 추출하는 단계, 및 상기 타겟 특징들 및 상기 주변 특징들에 기초하여, 출력 영상에서, 상기 타겟 영역들에 대응되는 영역의 특징을 결정하는 단계를 수행하도록 하는 프로그램이 저장된 하나 이상의 컴퓨터로 읽을 수 있는 기록매체를 포함할 수 있다.
일 실시예에 따른 영상 처리 장치는, 입력 영상에서 디테일이 손실되거나 저하된 영역에 대한 디테일을 생성함으로써, 디테일이 향상된 출력 영상을 생성할 수 있다. 이에 따라, 영상 전체에 대한 디테일이 균일해질 수 있으며, 영상의 화질이 향상될 수 있다.
일 실시예에 따른 영상 처리 장치는, 하드웨어 복잡도를 크게 증가시키지 않고도, 영상의 디테일을 향상시킬 수 있다.
도 1은 일 실시예에 따른 영상 처리 장치가 컨볼루션 연산을 이용하여 영상을 생성하는 방법을 나타내는 도면이다.
도 2 및 도 3은 일반적인 컨볼루션 뉴럴 네트워크에서 컨볼루션 연산이 수행되는 과정을 설명하기 위해 참조되는 도면들이다.
도 4는 일 실시예에 따른 영상 처리 장치의 동작방법을 나타내는 흐름도이다.
도 5 내지 도 7은 일 실시예에 따른 영상 처리 장치가 컨볼루션 뉴럴 네트워크를 이용하여, 영상을 처리하는 과정을 설명하기 위해 참조되는 도면들이다.
도 8은 일 실시예에 따른 영상 처리 장치가 주변 영역을 추출하는 방법을 설명하기 위해 참조되는 도면이다.
도 9는 일 실시예에 따른 영상 처리 장치가 주변 영역에 대해 가중치를 적용하는 방법을 설명하기 위해 참조되는 도면이다.
도 10은 일 실시예에 따른 영상 처리 장치의 구성을 나타내는 블록도이다.
도 11은 일 실시예에 따른 프로세서의 블록도이다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 발명에 대해 구체적으로 설명하기로 한다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
아래에서는 첨부한 도면을 참고하여 실시예들에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
도 1은 일 실시예에 따른 영상 처리 장치가 컨볼루션 연산을 이용하여 영상을 생성하는 방법을 나타내는 도면이다.
도 1을 참조하면, 일 실시예에 따른 영상 처리 장치(100)는 제1 영상(input)을 입력 받고, 컨볼루션 뉴럴 네트워크(Convolution Neural Network)(200)를 이용하여, 제1 영상(input)을 처리함으로써, 제2 영상(output)을 생성할 수 있다. 영상 처리 장치(100)는 컨볼루션 뉴럴 네트워크(200)를 이용하여, 제1 영상(input)에 대한 특징 정보를 추출하고, 추출된 특징 정보에 기초하여, 제2 영상(output)을 생성할 수 있다.
컨볼루션 뉴럴 네트워크(200)는 하나 이상의 컨볼루션(deconvolution) 레이어들을 포함할 수 있다. 컨볼루션 레이어들 각각에서는, 컨볼루션 레이어에 입력된 하나 이상의 영상들(또는 특징 맵들)과 커널(kernel)의 컨볼루션(deconvolution) 연산을 수행될 수 있으며, 컨볼루션 연산 결과, 생성된 하나 이상의 영상들(또는, 특징 맵들)이 출력될 수 있다. 또한, 현재 컨볼루션 레이어에서 출력된 하나 이상의 특징 맵들은 다음 컨볼루션 레이어로 입력될 수 있다.
일 실시예에 따른 영상 처리 장치(100)는, 특징 정보를 추출하고자 하는 영역(20, 제1 영역)에 대응되는, 타겟 영역(10)의 특징 정보뿐만 아니라, 타겟 영역(10)의 주변에 위치하는 주변 영역(15)의 특징 정보를 함께 이용하여, 제1 영역(20)에 대한 특징 정보를 추출함으로써, 제1 영역(20)의 디테일을 향상시킬 수 있다. 예를 들어, 제1 영상(input)에서, 타겟 영역(10)에 대한 디테일이 손실되거나 저하된 경우, 영상 처리 장치(100)는, 타겟 영역(10) 주변에 위치하는 주변 영역(15)의 디테일 정보를 함께 이용하여, 제2 영상(output)을 생성함으로써, 타겟 영역(10)에 대응하는 제1 영역(20)에 대한 디테일을 향상시킬 수 있다.
일 실시예에 따른 영상 처리 장치가 타겟 영역(10)과 주변 영역(15)을 이용하여, 제1 영역(20)에 대한 특징 정보를 추출하는 방법에 대해서는, 후술하는 도면들에서 자세히 설명하기로 한다.
도 2 및 도 3은 일반적인 컨볼루션 뉴럴 네트워크에서 컨볼루션 연산이 수행되는 과정을 설명하기 위해 참조되는 도면들이다.
도 2를 참조하면, 컨볼루션 뉴럴 네트워크(50)는 복수의 컨볼루션 레이어들을 포함할 수 있다. 예를 들어, 복수의 컨볼루션 레이어들은, 제1 내지 제n컨볼루션 레이어들(Conv_1, Conv_2, Conv_3, ..., Conv_n)을 포함할 수 있다. 또한, 도 2의 컨볼루션 뉴럴 네트워크(50)에 입력되는 입력 영상(51)은 저해상도 영상이며, 출력 영상(52)은 고해상도 영상일 수 있으며, 이에 따라, 컨볼루션 뉴럴 네트워크(50)는 업 스케일러(Up-scaler)를 더 포함할 수 있으나, 이에 한정되지 않는다.
한편, 제1 컨볼루션 레이어(Conv_1)에서 출력된 값들(예를 들어, 특징 맵들)은 제2 컨볼루션 레이어(Conv_2)로 입력될 수 있으며, 제2 컨볼루션 레이어(Conv_2)에서 출력된 값들은 제3 컨볼루션 레이어(Conv_3)로 입력될 수 있다.
도 2를 참조하면, 입력 영상(51)은 R, G, B 채널들(RGB 3CH)을 포함하는 영상일 수 있으며, 이에 따라, 3개의 영상들(f1 ,1, f1 ,2, f1 ,3)이 제1 컨볼루션 레이어(Conv_1)로 입력될 수 있다. 제1 컨볼루션 레이어(Conv_1)는, a개의 커널 세트를 포함할 수 있다. 이때, 커널 세트 하나에 포함되는 커널들의 개수는, 제1 컨볼루션 레이어(Conv_1)에 입력되는 영상들의 개수와 동일할 수 있다. 예를 들어, 도 2에 도시된 바와 같이, 제1 컨볼루션 레이어(Conv_1)에 3개의 영상들(f1 ,1, f1 ,2, f1 ,3)이 입력되는 경우, 제1 컨볼루션 레이어(Conv_1)의 커널 세트 하나에 포함되는 커널들의 개수는 3개일 수 있다.
제1 컨볼루션 레이어(Conv_1)에서는, 입력 영상들(f1 ,1, f1 ,2, f1 ,3)과 a 개의 커널 세트들(61,...,69)의 컨볼루션 연산이 수행되어, a개의 특징 맵들(f2 ,1,..., f2,a)이 추출될 수 있다. 예를 들어, 입력 영상들(f1 ,1, f1 ,2, f1 ,3)과 제1 커널 세트(61)의 컨볼루션 연산이 수행되어, 제1 특징 맵(f2,1)이 추출될 수 있다. 또한, 입력 영상들(f1 ,1, f1 ,2, f1 ,3)과 제a 커널 세트(69)의 컨볼루션 연산이 수행되어, 제a 특징 맵(f2,a)이 추출될 수 있다.
제1 특징 맵(f2,1)을 추출하는 방법에 대해서, 도 3을 참조하여, 자세히 설명하기로 한다.
도 3을 참조하면, 입력 영상들은 제1 내지 제3 입력 영상들(f1 ,1, f1 ,2, f1 ,3)을 포함하고, 제1 커널 세트는 제1 내지 제3 커널들(k1 1 ,1, k1 1 ,2, k1 1 ,3)을 포함할 수 있다. 제1 입력 영상(f1 ,1)과 제1 커널(k1 1 ,1)의 컨볼루션 연산을 수행함으로써, 제1 서브 특징 맵(71)이 추출될 수 있으며, 이때, 제1 서브 특징 맵(71)은, 제1 입력 영상(f1 ,1)의 제1 타겟 영역(81)에 대응하는 제1 타겟 특징(91)을 포함할 수 있다. 또한, 제2 입력 영상(f1 ,2)과 제2 커널(k1 1 ,2)의 컨볼루션 연산을 수행함으로써, 제2 서브 특징 맵(72)이 추출될 수 있으며, 이때, 제2 서브 특징 맵(72)은, 제2 입력 영상(f1 ,2)의 제2 타겟 영역(82)에 대응하는 제2 타겟 특징(92)을 포함할 수 있다. 또한, 제3 입력 영상(f1 ,3)과 제3 커널(k1 1 ,3)의 컨볼루션 연산을 수행함으로써, 제3 서브 특징 맵(73)이 추출될 수 있으며, 이때, 제3 서브 특징 맵(73)은, 제3 입력 영상(f1 ,3)의 제3 타겟 영역(83)에 대응하는 제3 타겟 특징(93)을 포함할 수 있다. 이때, 제1 내지 제3 타겟 영역들(81, 82, 83)은, 제1 내지 제3 입력 영역들(f1 ,1, f1,2, f1 ,3) 각각에서 동일한 위치를 가지는 영역들이다.
한편, 제1 내지 제3 서브 특징 맵들(71, 72, 73)을 합산함으로써, 제1 특징 맵(f2,1)이 추출될 수 있으며, 제1 특징 맵(f2,1)에서, 제1 내지 제3 타겟 영역들에 대응하는 특정 영역(84)에 대한 특징은, 제1 내지 제3 타겟 특징들(91, 92, 93)을 합산함으로써, 결정될 수 있다.
일반적인 컨볼루션 연산에 있어서, 출력 영상(또는, 출력 특징 맵)에서 특정 영역에 대한 특징은, 입력 영상(또는, 입력 특징 맵)에서, 특정 영역에 대응되는 위치를 가지는 타겟 영역에 대한 특징에 기초하여 결정되게 된다. 따라서, 압축 아티팩트나, 모션 블러 등의 원인으로 입력 영상에서 타겟 영역에 대한 디테일이 손실되거나 저하된 경우, 출력 영상의 특정 영역에 대한 디테일도 손실되거나 저하되는 문제점이 있다.
일 실시예에 따른 영상 처리 장치(100)는, 입력 영상에서 타겟 영역에 대한 특징뿐만 아니라 타겟 영역 주변에 위치한 주변 영역에 대한 특징을 함께 고려하여, 특정 영역에 대한 특징을 결정함으로써, 특정 영역에 대한 디테일을 생성하거나 향상시킬 수 있다.
도 4는 일 실시예에 따른 영상 처리 장치의 동작방법을 나타내는 흐름도이다.
도 4를 참조하면, 일 실시예에 따른 영상 처리 장치(100)는 복수의 입력 영상들 각각에서 동일한 위치를 가지는, 타겟 영역들의 특징들과 제1 커널 세트의 컨볼루션 연산을 수행하여, 타겟 특징들을 추출할 수 있다(S410).
영상 처리 장치(100)는 복수의 입력 영상들 각각에서 동일한 위치를 가지는 타겟 영역들을 추출할 수 있다. 타겟 영역들은 출력 영상(출력 특징 맵)에서 특징 정보를 획득하고자 하는 일 영역에 대응되는 영역들을 의미할 수 있다. 영상 처리 장치(100)는 추출된 타겟 영역들과 제1 커널 세트의 컨볼루션 연산을 수행함으로써, 타겟 특징들을 추출할 수 있다. 예를 들어, 제1 커널 세트에 포함되는 커널들의 개수는, 입력 영상들의 개수와 동일할 수 있으며, 영상 처리 장치(100)는 복수의 입력 영상들 각각에 포함되는 타겟 영역과 제1 커널 세트에 포함되는 커널들 각각을 컨볼루션하여, 타겟 특징들을 계산할 수 있다.
영상 처리 장치(100)는 타겟 영역들의 주변에 위치하는 주변 영역들의 특징들과 제2 커널 세트의 컨볼루션 연산을 수행하여, 주변 특징들을 추출할 수 있다(S420).
영상 처리 장치(100)는 복수의 입력 영상들 각각에서, 타겟 영역의 주변에 위치하는 복수의 영역들 중 임의의 영역을 주변 영역으로 추출할 수 있다. 또는, 영상 처리 장치(100)는 복수의 영역들과 타겟 영역 사이의 특징 유사도에 기초하여, 주변 영역을 추출할 수 있으며, 복수의 영역들 중 타겟 영역과의 특징 유사도가 가장 큰 영역을 주변 영역으로 추출할 수 있다. 이에 대해서는, 도 8에서 자세히 후술하기로 한다.
또한, 영상 처리 장치(100)는 추출된 주변 영역에 가중치를 적용할 수 있다. 예를 들어, 영상 처리 장치(100)는 타겟 영역과 주변 영역 사이의 거리에 기초하여 결정된 가중치를 주변 영역에 적용하거나, 타겟 영역과 주변 영역 사이의 특징 유사도에 기초하여, 결정된 가중치를 주변 영역에 적용할 수 있다. 이에 대해서는, 도 9에서 자세히 후술하기로 한다.
영상 처리 장치(100)는 주변 영역들과 제2 커널 세트의 컨볼루션 연산을 수행함으로써, 주변 특징들을 추출할 수 있다. 예를 들어, 제2 커널 세트에 포함되는 커널들의 개수는, 입력 영상들의 개수와 동일할 수 있으며, 영상 처리 장치(100)는 주변 영역들 각각과, 제2 커널 세트에 포함되는 커널들 각각을 컨볼루션하여, 타겟 특징들을 계산할 수 있다.
영상 처리 장치(100)는 추출된 타겟 특징들 및 주변 특징들에 기초하여, 타겟 영역에 대응하는, 출력 영상의 특징(출력 특징 정보)을 결정할 수 있다. 예를 들어, 영상 처리 장치(100)는 타겟 특징들 및 주변 특징들과 커널과의 컨볼루션 연산을 수행함으로써, 타겟 영역들에 대응하는, 출력 영상의 일 영역에 대한 특징 정보를 결정할 수 있다.
도 5 내지 도 7은 일 실시예에 따른 영상 처리 장치가 컨볼루션 뉴럴 네트워크를 이용하여, 영상을 처리하는 과정을 설명하기 위해 참조되는 도면들이다.
도 5를 참조하면, 일 실시예에 따른 영상 처리 장치(100)는 컨볼루션 뉴럴 네트워크(200)를 이용하여, 컨볼루션 연산을 수행할 수 있다. 이때, 일 실시예에 따른 컨볼루션 뉴럴 네트워크(200)는 복수의 컨볼루션 레이어들을 포함할 수 있다. 예를 들어, 복수의 컨볼루션 레이어들은, 제1 내지 제 n 컨볼루션 레이어들(Conv_1, Conv_2, Conv_3,...,Conv_n)을 포함할 수 있다.
도 5를 참조하면, 입력 영상(510)은 R, G, B 채널들을 포함하는 영상일 수 있으며, 이에 따라 3개의 영상들이 제1 컨볼루션 레이어(Conv_1)로 입력될 수 있다. 또는, 복수의 시점을 가지는 프레임 영상들(예를 들어, (t-1) 시점의 프레임 영상, t시점의 프레임 영상, (t+1) 시점의 프레임 영상 등)이 제1 컨볼루션 레이어(Conv_1)로 입력될 수 있다.
제1 컨볼루션 레이어는, 2a개의 커널 세트를 포함할 수 있다. 이때, 커널 세트 하나에 포함되는 커널들의 개수는, 제1 컨볼루션 레이어(Conv_1)에 입력되는 영상들의 개수와 동일할 수 있다. 예를 들어, 도 5에 도시된 바와 같이, 제1 컨볼루션 레이어(Conv_1)의 커널 세트 하나에 포함되는 커널들의 개수는 3개일 수 있다.
제1 컨볼루션 레이어(Conv_1)에서는, 입력 영상들(f1 ,1, f1 ,2, f1 ,3)과 커널 세트들의 컨볼루션 연산을 수행하여, 특징 맵들을 추출할 수 있다. 예를 들어, 입력 영상들(f1 ,1, f1 ,2, f1 ,3)과 제1 커널 세트(531)의 컨볼루션 연산을 수행하여, 타겟 특징들을 추출하고, 입력 영상들(f1 ,1, f1 ,2, f1 ,3)과 제2 커널 세트(532)의 컨볼루션 연산을 수행하여, 주변 특징들을 추출할 수 있다. 추출된 타겟 특징들과 주변 특징들에 기초하여, 제1 특징 맵(f2 ,1)을 생성할 수 있다.
제1 특징 맵(f2,1)을 생성하는 방법에 대해서는, 도 6을 참조하여 자세히 설명하기로 한다.
도 6을 참조하면, 입력 영상들은 제1 내지 제3 입력 영상들(f1 ,1, f1 ,2, f1 ,3)을 포함할 수 있다. 또한, 제1 컨볼루션 레이어(Conv_1)에 포함되는 제1 커널 세트(531)는 제1 내지 제3 커널들(k1 1 ,1, k1 1 ,2, k1 1 ,3)을 포함할 수 있으며, 제2 커널 세트(532)는 제4 내지 제6 커널들(k1' 1 ,1, k1' 1 ,2, k1' 1 ,3)을 포함할 수 있다.
영상 처리 장치(100)는 제1 내지 제3 입력 영상들(f1 ,1, f1 ,2, f1 ,3) 각각에서 동일한 위치를 가지는 타겟 영역들(611, 612, 613)을 추출할 수 있다. 이때, 타겟 영역들(611, 612, 613)은, 제1 특징 맵에서, 특징 정보를 획득하고자 하는 영역(614)에 대응되는 영역들일 수 있다.
예를 들어, 제1 입력 영상(f1 ,1)에 포함되는 제1 타겟 영역(611), 제2 입력 영상(f1 ,2)에 포함되는 제2 타겟 영역(612), 제3 입력 영상(f1 ,3)에 포함되는 제3 타겟 영역(613) 및 제1 특징 맵(f2,1)에서 특징 정보를 획득하고자 하는 영역(614, 이하, 제4 영역이라 함)은, 제1 내지 제3 입력 영상들(f1 ,1, f1 ,2, f1 ,3) 및 제1 특징 맵(f2 ,1) 각각에서, 동일한 위치를 가지는 영역들일 수 있다.
또한, 제1 내지 제3 타겟 영역들(611, 612, 613) 및 특징 정보를 획득하고자 하는 제 4 영역(614)은 동일한 크기를 가질 수 있다.
영상 처리 장치(100)는 제1 내지 제3 타겟 영역들(611, 612, 613)과 제1 커널 세트(531)의 컨볼루션 연산을 수행함으로써, 타겟 특징들을 추출할 수 있다. 예를 들어, 영상 처리 장치(100)는 제1 타겟 영역(611)과 제1 커널(k1 1 ,1)의 컨볼루션 연산을 수행함으로써, 제1 타겟 특징(631)을 추출하고, 제2 타겟 영역(612)과 제2 커널(k1 1 ,2)의 컨볼루션 연산을 수행함으로써, 제2 타겟 특징(632)을 추출하며, 제3 타겟 영역(613)과 제3 커널(k1 1 ,3)의 컨볼루션 연산을 수행함으로써, 제3 타겟 특징(633)을 추출할 수 있다.
한편, 영상 처리 장치(100)는 제1 내지 제3 입력 영상들(f1 ,1, f1 ,2, f1 ,3)에서 타겟 영역들(611, 612, 613)의 주변에 위치하는 주변 영역들을 추출할 수 있다. 주변 영역들을 추출하는 방법에 대해서는 도 8을 참조하여, 자세히 후술하기로 한다.
예를 들어, 영상 처리 장치(100)는 제1 입력 영상(f1 ,1)에서 제1 타겟 영역(611)의 주변에 위치하는 제1 주변 영역(621)을 추출하고, 제2 입력 영상(f1 ,2)에서 제2 타겟 영역(612)의 주변에 위치하는 제2 주변 영역(622)을 추출하며, 제3 입력 영상(f1 ,3)에서 제3 타겟 영역(613)의 주변에 위치하는 제3 주변 영역(623)을 추출할 수 있다.
영상 처리 장치(100)는 주변 영역들(621, 622, 623)과 제2 커널 세트(532)의 컨볼루션 연산을 수행함으로써, 주변 특징들을 추출할 수 있다. 예를 들어, 영상 처리 장치(100)는 제1 주변 영역(621)과 제4 커널(k1' 1 ,1)의 컨볼루션 연산을 수행함으로써, 제1 주변 특징(641)을 추출하고, 제2 주변 영역(622)과 제5 커널(k1' 1 ,2)의 컨볼루션 연산을 수행함으로써, 제2 주변 특징(642)을 추출하며, 제3 주변 영역(623)과 제6 커널(k1' 1 ,3)의 컨볼루션 연산을 수행함으로써, 제3 주변 특징(643)을 추출할 수 있다.
영상 처리 장치(100)는 제1 내지 제3 타겟 특징들(631, 632, 633) 및 제1 내지 제3 주변 특징들(641, 642, 643)에 기초하여, 제1 특징 맵(f2 ,1)에 포함되는 제4 영역(614)에 대한 특징을 결정할 수 있다. 예를 들어, 영상 처리 장치(100)는 제1 내지 제3 타겟 특징들(631, 632, 633) 및 제1 내지 제3 주변 특징들(641, 642, 643)과 제7 커널(650)의 컨볼루션 연산을 수행하고, 컨볼루션된 결과를 합산함으로써, 제4 영역(614)에 대한 특징을 결정할 수 있다. 이때, 6개의 특징들(제1 내지 제3 타겟 특징들 및 제1 내지 제3 주변 특징들(631, 632, 633, 641, 642, 643))과 제7 커널(650)의 컨볼루션 연산을 수행함으로써, 3개의 특징들(655)로 감소시키고, 3개의 특징들(655)을 합산함으로써, 제4 영역(614)에 대한 특징을 결정할 수 있다. 다만, 이에 한정되지 않는다.
또한, 영상 처리 장치(100)는 도 6에서 설명한 방법과 동일한 방법으로, 제1 특징 맵(f2 ,1)의 다른 영역들에 대한 특징들도 결정할 수 있으며, 이에 따라, 특징 정보를 포함하는 제1 특징 맵(f2 ,1)을 생성할 수 있다.
또한, 영상 처리 장치(100)는, 제1 컨볼루션 레이어(Conv_1)에서, 도 6에서 설명한 방법과 동일한 방법으로, 복수의 입력 영상들과 제3 내지 제 2a 커널 세트에 대한 컨볼루션 연산을 수행함으로써, 제2 내지 제a 특징 맵들(f2,2, ...,f2,a)을 생성할 수 있다.
도 7을 참조하면, 제1 컨볼루션 레이어(Conv_1)에서 출력된 a개의 특징 맵들(f2 ,1, f2 ,2,...,f2 ,a)은 제2 컨볼루션 레이어(Conv_2)로 입력될 수 있다.
제2 컨볼루션 레이어(Conv_2)는, 2b개의 커널 세트들을 포함할 수 있다. 이때, 커널 세트 하나에 포함되는 커널들의 개수는 제2 컨볼루션 레이어(Conv_2)에 입력되는 영상들의 개수와 동일할 수 있다. 예를 들어, 도 7에 도시된 바와 같이, 제2 컨볼루션 레이어(Conv_2)의 커널 세트 하나에 포함되는 커널들의 개수는 a개일 수 있다.
영상 처리 장치(100)는, 제2 컨볼루션 레이어(Conv_2)에서, a개의 특징 맵들(f2 ,1, f2 ,2,...,f2 ,a)과 커널 세트들(731, 732, ...,738, 739)의 컨볼루션 연산을 수행하여, 특징 맵들(f3,1, f3,2,..., f3,b)을 추출할 수 있다. 이때, 영상 처리 장치는, 도 6에서 설명한 방법(제1 컨볼루션 레이어에서 a개의 특징 맵들을 생성하는 방법)과 동일한 방법으로 b개의 특징 맵들(f3 ,1, f3 ,2,..., f3 ,b)을 생성할 수 있다.
도 8은 일 실시예에 따른 영상 처리 장치가 주변 영역을 추출하는 방법을 설명하기 위해 참조되는 도면이다.
도 8을 참조하면, 일 실시예에 따른 영상 처리 장치(100)는 입력 영상에 포함되는 복수의 영역들에 대한 특징들과 타겟 영역의 특징 사이의 유사도를 분석하고, 분석된 유사도에 기초하여, 주변 영역을 추출할 수 있다.
예를 들어, 영상 처리 장치(100)는 복수의 영역들에 대한 특징들과 타겟 영역의 특징 사이의 유사도를 계산할 수 있으며, 도 8의 제1 내지 제3 유사도 맵은, 제1 내지 제3 입력 영상들 각각에서, 타겟 영역과 타겟 영역 주변에 위치하는 복수의 영역들 사이의 유사도를 나타내는 맵들일 수 있다.
이때, 영상 처리 장치(100)는 그람 행렬 함수(gram matrix function) 또는 L2 놈 함수(L2 norm function)에 기초하여, 특징 유사도(f(s))를 계산할 수 있다. 예를 들어, 영상 처리 장치(100)는 다음과 같은 수학식 1 내지 3을 이용하여, 그람 행렬 함수를 계산할 수 있으며, 그람 행렬 함수의 값이 작을수록 유사도가 큰 것으로 결정할 수 있다.
Figure pat00001
Figure pat00002
Figure pat00003
이때, Gtarget는 타겟 영역의 그람 행렬(gram matrix)이고, Gnon -local는 타겟 영역 주변에 위치하는 복수의 영역들 각각의 그람 행렬을 나타낸다. 또한, Ptarget , ij는 타겟 영역에서 (i j) 위치의 픽셀 값을 나타내고, Pnon -local, ij는 복수의 영역들 각각에서 (i, j) 위치의 픽셀 값을 나타낸다.
일 실시예에 따른 영상 처리 장치(100)는 그람 행렬 함수의 값이 작을수록 유사도가 큰 것으로 결정할 수 있다.
또한, 영상 처리 장치(100)는 다음과 같은 수학식 4 및 수학식 5를 이용하여, L2 놈 함수를 계산할 수 있으며, L2 놈 함수의 값이 작을수록 유사도가 큰 것으로 결정할 수 있다.
Figure pat00004
Figure pat00005
도 8을 참조하면, 영상 처리 장치(100)는 제1 입력 영상(f1 ,1)에서, 제1 타겟 영역(811)과 제1 타겟 영역(811)의 주변에 위치하는 복수의 영역들 사이의 특징 유사도를 계산하고, 복수의 영역들 중 특징 유사도가 가장 큰 제1 주변 영역(821)을 추출할 수 있다. 또한, 영상 처리 장치(100)는 제2 입력 영상에서, 제2 타겟 영역(812)과 제2 타겟 영역(812)의 주변에 위치하는 복수의 영역들 사이의 유사도를 계산하고, 복수의 영역들 중 유사도가 가장 큰 제2 주변 영역(822)을 추출할 수 있다. 또한, 영상 처리 장치(100)는 제3 입력 영상에서, 제3 타겟 영역(813)과 제3 타겟 영역(813)의 주변에 위치하는 복수의 영역들 사이의 유사도를 계산하고, 복수의 영역들 중 유사도가 가장 큰 제3 주변 영역(823)을 추출할 수 있다.
일 실시예에 따른 영상 처리 장치(100)는 추출된 제1 내지 제3 주변 영역들(821, 822, 823)과 제2 커널 세트의 컨볼루션 연산을 수행함으로써, 주변 특징들(제1 내지 제3 주변 특징들)을 추출할 수 있다.
도 9는 일 실시예에 따른 영상 처리 장치가 주변 영역에 대해 가중치를 적용하는 방법을 설명하기 위해 참조되는 도면이다.
일 실시예에 따른 영상 처리 장치(100)는 추출된 주변 영역에 대해 가중치를 적용할 수 있다.
도 9를 참조하면, 영상 처리 장치(100)는, 가중치 맵을 이용하여, 주변 영역에 가중치를 적용할 수 있다. 예를 들어, 영상 처리 장치(100)는 제1 입력 영상(f1 ,1)과 제1 가중치 맵(951)의 곱셈 연산을 수행함으로써, 제1 주변 영역(921)에 가중치를 적용할 수 있다. 또한, 영상 처리 장치(100)는 제2 입력 영상(f1 ,2)과 제2 가중치 맵(952)의 곱셈 연산을 수행함으로써, 제2 주변 영역(922)에 가중치를 적용할 수 있으며, 제3 입력 영상(f1 ,3)과 제3 가중치 맵(953)의 곱셈 연산을 수행함으로써, 제3 주변 영역(923)에 가중치를 적용할 수 있다.
한편, 일 실시예에 따른 영상 처리 장치(100)는 추출된 주변 영역과 타겟 영역 사이의 거리에 기초하여, 주변 영역에 대한 가중치를 결정할 수 있다.
예를 들어, 영상 처리 장치(100)는 제1 입력 영상(f1 ,1)에서, 제1 타겟 영역(911)과 추출된 제1 주변 영역(921) 사이의 거리에 따라, 제1 주변 영역(921)에 대한 가중치를 결정할 수 있으며, 거리가 가까울수록 가중치를 큰 값으로 결정할 수 있다. 또한, 영상 처리 장치(100)는 동일한 방식으로, 제2 입력 영상(f1 ,2)에서 제2 타겟 영역(912)과 추출된 제2 주변 영역(922) 사이의 거리에 따라, 제2 주변 영역(922)에 대한 가중치를 결정할 수 있다. 또한, 영상 처리 장치(100)는 제3 입력 영상(f1 ,3)에서 제3 타겟 영역(913)과 추출된 제3 주변 영역(923) 사이의 거리에 따라, 제3 주변 영역(923)에 대한 가중치를 결정할 수 있다.
영상 처리 장치(100)가 타겟 영역과 주변 영역의 거리에 기초하여, 주변 영역에 대한 가중치를 결정하는 경우, 일 실시예에 따른 가중치 맵에 포함되는 값들은, 타겟 영역과 타겟 영역의 주변에 위치하는 영역들 사이의 거리에 따라 결정될 수 있다. 예를 들어, 가중치 맵은 다음의 수학식 6으로 나타낼 수 있다.
Figure pat00006
이때, C는 상수를 나타내고, f(d)는 타겟 영역과 타겟 영역 주변에 위치하는 주변 영역들 사이의 거리를 나타내는 함수로, 바이리니어 함수, 가우시안 함수 등을 포함할 수 있으나, 이에 한정되지 않는다.
예를 들어, 제1 내지 제3 가중치 맵들(951, 952, 953)은, 제1 내지 제3 타겟 영역들(911, 912, 913)에 대응하는 제1 내지 제3 영역들(961, 962, 963)에서 큰 값을 가지고, 제1 내지 제3 영역들(961, 962, 963)로부터 멀어질수록 값이 작아지는 형태일 수 있으나, 이에 한정되지 않는다.
또한, 일 실시예에 따른 영상 처리 장치(100)는 추출된 주변 영역과 타겟 영역의 유사도에 기초하여, 주변 영역에 대한 가중치를 결정할 수 있다.
예를 들어, 영상 처리 장치(100)는 제1 입력 영상(f1 ,1)에서, 제1 타겟 영역(911)과 추출된 제1 주변 영역(921)의 특징 유사도(f(s))에 기초하여, 제1 주변 영역(921)에 대한 가중치를 결정할 수 있으며, 특징 유사도가 높을수록 가중치를 큰 값으로 결정할 수 있다. 영상 처리 장치(100)는 동일한 방식으로, 제2 입력 영상(f1 ,2)에서 제2 타겟 영역(912)과 추출된 제2 주변 영역(922)의 유사도를 계산하고, 계산된 유사도에 따라, 제2 주변 영역(922)에 대한 가중치를 결정할 수 있다. 또한, 영상 처리 장치(100)는 제3 입력 영상(f1 ,3)에서 제3 타겟 영역(913)과 추출된 제3 주변 영역(923)의 특징 유사도를 계산하고, 계산된 유사도에 따라, 제3 주변 영역(923)에 대한 가중치를 결정할 수 있다.
이때, 영상 처리 장치(100)는 도 8에서 설명한 그람 행렬 함수나 L2 놈 함수를 이용하여, 주변 영역과 타겟 영역의 유사도를 계산할 수 있다.
영상 처리 장치(100)가 타겟 영역과 주변 영역의 특징 유사도(f(s))에 기초하여, 주변 영역에 대한 가중치를 결정하는 경우, 가중치 맵은 다음과 같은 수학식 7로 나타낼 수 있다.
Figure pat00007
이때, C1 및 C2는 상수를 나타내고, f(s)는 특징 유사도를 나타내며, 수학식 1 내지 3의 그람 행렬 함수를 이용하여 계산하거나 수학식 4 및 5의 L2 놈 함수를 이용하여 계산할 수 있으나, 이에 한정되지 않는다. 이때, 유사도가 클수록 f(s)가 0 에 가까워진다.
도 9에 도시된 제1 내지 제3 가중치 맵들(951, 952, 953)은 가우시안 함수를 나타내며, 동일한 것으로 도시되었지만, 이에 한정되지 않으며, 제1 내지 제3 가중치 맵들(951, 952, 953)은 서로 다른 맵들일 수 있다.
도 10은 일 실시예에 따른 영상 처리 장치의 구성을 나타내는 블록도이다.
도 10을 참조하면, 일 실시예에 따른 영상 처리 장치(100)는 프로세서(120) 및 메모리(130)를 포함할 수 있다.
일 실시예에 따른 프로세서(120)는 영상 처리 장치(100)를 전반적으로 제어할 수 있다. 일 실시예에 따른 프로세서(120)는 메모리(130)에 저장되는 하나 이상의 프로그램들을 실행할 수 있다.
일 실시예에 따른 메모리(130)는 영상 처리 장치(100)를 구동하고 제어하기 위한 다양한 데이터, 프로그램 또는 어플리케이션을 저장할 수 있다. 메모리(130)에 저장되는 프로그램은 하나 이상의 인스트럭션들을 포함할 수 있다. 메모리(130)에 저장된 프로그램(하나 이상의 인스트럭션들) 또는 어플리케이션은 프로세서(120)에 의해 실행될 수 있다.
일 실시예에 따른 프로세서(120)는 컨볼루션 뉴럴 네트워크를 이용하여, 복수의 입력 영상들과 복수의 커널들의 컨볼루션 연산을 수행하여, 출력 영상을 생성할 수 있다. 예를 들어, 프로세서(120)는 입력 영상들(또는, 입력 특징 맵들)에 포함된 타겟 영역들과 제1 커널 세트의 컨볼루션 연산을 수행하여, 타겟 특징들을 추출하고, 타겟 영역들 주변에 위치하는 주변 영역들과 제2 커널 세트의 컨볼루션 연산을 수행하여, 주변 특징들을 추출할 수 있다. 프로세서(120)는 추출된 타겟 특징들과 주변 특징들에 기초하여, 타겟 영역에 대한 출력 특징을 결정할 수 있다. 이에 대해서는, 도 6에서 자세히 설명하였으므로 동일한 설명은 생략하기로 한다.
또한, 프로세서(120)는, 주변 영역에 대해 가중치를 적용할 수 있다. 예를 들어, 프로세서(120)는 타겟 영역과 주변 영역 사이의 거리에 기초하여, 결정된 가중치를 주변 영역에 적용할 수 있다. 또는, 프로세서(120)는 타겟 영역과 주변 영역 사이의 특징 유사도에 기초하여, 결정된 가중치를, 주변 영역에 적용할 수 있다. 이에 대해서는, 도 9에서 자세히 설명하였으므로 동일한 설명은 생략하기로 한다.
도 11은 일 실시예에 따른 프로세서의 블록도이다.
도 11을 참조하면, 일 실시예에 따른 프로세서(120)는 타겟 영역 추출부(1210), 타겟 특징 추출부(1220), 주변 영역 추출부(1230), 가중치 결정부(1240), 가중치 적용부(1250), 주변 특징 추출부(1260) 및 추출 특징 합성부(1270)를 포함할 수 있다.
타겟 영역 추출부(1210)는 복수의 입력 영상들 각각에서 동일한 위치를 가지는 타겟 영역들을 추출할 수 있다. 타겟 영역들은, 출력 영상(출력 특징 맵)에서 특징 정보를 획득하고자 하는 영역에 대응되는 영역들일 수 있다.
타겟 특징 추출부(1220)는 추출된 타겟 영역들과 제1 커널 세트의 컨볼루션 연산을 수행함으로써, 타겟 특징들을 추출할 수 있다.
주변 영역 추출부(1230)는 복수의 입력 영상들 및 타겟 영역들에 대한 정보를 입력 받아, 복수의 입력 영상들 각각에서 타겟 영역의 주변에 위치하는 주변 영역을 추출할 수 있다. 주변 영역 추출부(1230)는 타겟 영역의 주변에 위치하는 복수의 영역들 중 임의의 영역을 주변 영역으로 추출할 수 있다. 또는, 주변 영역 추출부(1230)는 타겟 영역으로부터 기 설정된 거리 이내에 위치하는 영역들 중에서 주변 영역을 추출할 수 있다.
또는, 주변 영역 추출부(1230)는 복수의 입력 영상들 각각에 포함되는 복수의 영역들과 타겟 영역 사이의 특징 유사도에 기초하여, 주변 영역을 추출할 수 있다. 예를 들어, 주변 영역 추출부(1230)는 복수의 영역들에 대한 특징들과 타겟 영역의 특징 사이의 특징 유사도를 계산하고, 특징 유사도가 가장 큰 영역을 주변 영역으로 추출할 수 있다. 이때, 주변 영역 추출부(1230)는 그람 행렬 함수 또는 L2 놈 함수를 이용하여, 특징 유사도를 계산할 수 있다.
가중치 결정부(1240)는 추출된 주변 영역에 대한 가중치를 결정할 수 있다. 예를 들어, 가중치 결정부(1240)는 추출된 주변 영역과 타겟 영역 사이의 거리에 기초하여, 주변 영역에 대한 가중치를 결정할 수 있다. 이때, 가중치 결정부(1240)는 타겟 영역과 타겟 영역의 주변에 위치하는 영역들 사이의 거리에 기초하여 값이 결정되는 가중치 맵을 생성할 수 있다. 예를 들어, 가중치 결정부(1240)는 타겟 영역에 대응하는 제1 영역에서 가장 큰 값을 가지고, 제1 영역으로부터 멀어질수록 값이 작아지는 형태의 가중치 맵을 생성할 수 있으나, 이에 한정되지 않는다.
또는, 가중치 결정부(1240)는 주변 영역과 타겟 영역 사이의 특징 유사도에 기초하여, 주변 영역에 대한 가중치를 결정할 수 있다. 이때, 가중치 결정부(1240)는 그람 행렬 함수나 L2 놈 함수를 이용하여, 주변 영역과 타겟 영역 사이의 특징 유사도를 계산할 수 있다. 또한, 가중치 결정부(1240)는 특징 유사도에 기초하여 값이 결정되는 가중치 맵을 생성할 수 있다.
가중치 적용부(1250)는 가중치 결정부(1240)에서 결정된 가중치를 주변 영역에 적용할 수 있다. 예를 들어, 가중치 적용부(1250)는 주변 영역 또는 입력 영상과 가중치 결정부(1240)에서 생성된 가중치 맵의 곱셈 연산을 수행함으로써, 주변 영역에 가중치를 적용할 수 있다. 다만, 이에 한정되지 않는다.
주변 특징 추출부(1260)는 주변 영역 추출부(1260)에서 추출된 주변 영역들 또는 가중치 적용부(1250)에서 가중치가 적용된 주변 영역들과 제2 커널 세트의 컨볼루션 연산을 수행함으로써, 주변 특징들을 추출할 수 있다.
추출 특징 합성부(1270)는, 타겟 특징 추출부(1220)에서 추출된 타겟 특징들 및 주변 특징 추출부(1260)에서 추출된 주변 특징들에 기초하여, 출력 영상(출력 특징 맵)의 특징 정보를 결정할 수 있다. 예를 들어, 추출 특징 합성부(1270)는 타겟 특징들 및 주변 특징들과 커널의 컨볼루션 연산을 수행함으로써, 타겟 영역에 대응하는 영역의 특징을 결정할 수 있다.
한편, 도 11의 타겟 영역 추출부(1210), 타겟 특징 추출부(1220), 주변 영역 추출부(1230), 가중치 결정부(1240), 가중치 적용부(1250), 주변 특징 추출부(1260) 및 추출 특징 합성부(1270) 중 적어도 하나는, 하드웨어 칩 형태로 제작되어 영상 처리 장치(100)에 탑재될 수 있다. 예를 들어, 타겟 영역 추출부(1210), 타겟 특징 추출부(1220), 주변 영역 추출부(1230), 가중치 결정부(1240), 가중치 적용부(1250), 주변 특징 추출부(1260) 및 추출 특징 합성부(1270) 중 적어도 하나는 인공 지능(AI;artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 전술한 각종 영상 처리 장치에 탑재될 수 도 있다.
이 경우, 타겟 영역 추출부(1210), 타겟 특징 추출부(1220), 주변 영역 추출부(1230), 가중치 결정부(1240), 가중치 적용부(1250), 주변 특징 추출부(1260) 및 추출 특징 합성부(1270)는 하나의 영상 처리 장치에 탑재될 수도 있으며, 또는 별개의 영상 처리 장치들에 각각 탑재될 수도 있다. 예를 들어, 타겟 영역 추출부(1210), 타겟 특징 추출부(1220), 주변 영역 추출부(1230), 가중치 결정부(1240), 가중치 적용부(1250), 주변 특징 추출부(1260) 및 추출 특징 합성부(1270) 중 일부는 영상 처리 장치에 포함되고, 나머지 일부는 서버에 포함될 수 있다.
또한, 타겟 영역 추출부(1210), 타겟 특징 추출부(1220), 주변 영역 추출부(1230), 가중치 결정부(1240), 가중치 적용부(1250), 주변 특징 추출부(1260) 및 추출 특징 합성부(1270) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 타겟 영역 추출부(1210), 타겟 특징 추출부(1220), 주변 영역 추출부(1230), 가중치 결정부(1240), 가중치 적용부(1250), 주변 특징 추출부(1260) 및 추출 특징 합성부(1270) 중 적어도 하나가 소프트웨어 모듈(또는, 인스터력션(instruction) 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 컴퓨터로 읽을 수 있는 판독 가능한 비일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 또한, 이 경우, 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 애플리케이션에 의해 제공될 수 있다. 또는, 적어도 하나의 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 애플리케이션에 의해 제공될 수 있다.
한편, 도 10및 11에 도시된 영상 처리 장치(100) 및 프로세서(120)의 블록도는 일 실시예를 위한 블록도이다. 블록도의 각 구성요소는 실제 구현되는 영상 처리 장치(100)의 사양에 따라 통합, 추가, 또는 생략될 수 있다. 즉, 필요에 따라 2 이상의 구성요소가 하나의 구성요소로 합쳐지거나, 혹은 하나의 구성요소가 2 이상의 구성요소로 세분되어 구성될 수 있다. 또한, 각 블록에서 수행하는 기능은 실시예들을 설명하기 위한 것이며, 그 구체적인 동작이나 장치는 본 발명의 권리범위를 제한하지 아니한다.
일 실시예에 따른 영상 처리 장치의 동작방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
또한, 개시된 실시예들에 따른 영상 처리 장치 및 영상 처리 장치의 동작방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다.
컴퓨터 프로그램 제품은 S/W 프로그램, S/W 프로그램이 저장된 컴퓨터로 읽을 수 있는 저장 매체를 포함할 수 있다. 예를 들어, 컴퓨터 프로그램 제품은 전자 장치의 제조사 또는 전자 마켓(예, 구글 플레이 스토어, 앱 스토어)을 통해 전자적으로 배포되는 S/W 프로그램 형태의 상품(예, 다운로더블 앱)을 포함할 수 있다. 전자적 배포를 위하여, S/W 프로그램의 적어도 일부는 저장 매체에 저장되거나, 임시적으로 생성될 수 있다. 이 경우, 저장 매체는 제조사의 서버, 전자 마켓의 서버, 또는 SW 프로그램을 임시적으로 저장하는 중계 서버의 저장매체가 될 수 있다.
컴퓨터 프로그램 제품은, 서버 및 클라이언트 장치로 구성되는 시스템에서, 서버의 저장매체 또는 클라이언트 장치의 저장매체를 포함할 수 있다. 또는, 서버 또는 클라이언트 장치와 통신 연결되는 제3 장치(예, 스마트폰)가 존재하는 경우, 컴퓨터 프로그램 제품은 제3 장치의 저장매체를 포함할 수 있다. 또는, 컴퓨터 프로그램 제품은 서버로부터 클라이언트 장치 또는 제3 장치로 전송되거나, 제3 장치로부터 클라이언트 장치로 전송되는 S/W 프로그램 자체를 포함할 수 있다.
이 경우, 서버, 클라이언트 장치 및 제3 장치 중 하나가 컴퓨터 프로그램 제품을 실행하여 개시된 실시예들에 따른 방법을 수행할 수 있다. 또는, 서버, 클라이언트 장치 및 제3 장치 중 둘 이상이 컴퓨터 프로그램 제품을 실행하여 개시된 실시예들에 따른 방법을 분산하여 실시할 수 있다.
예를 들면, 서버(예로, 클라우드 서버 또는 인공 지능 서버 등)가 서버에 저장된 컴퓨터 프로그램 제품을 실행하여, 서버와 통신 연결된 클라이언트 장치가 개시된 실시예들에 따른 방법을 수행하도록 제어할 수 있다.
이상에서 실시예들에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속한다.

Claims (27)

  1. 영상 처리 장치에 있어서,
    하나 이상의 인스트럭션들을 저장하는 메모리; 및
    상기 메모리에 저장된 상기 하나 이상의 인스트럭션들을 실행하는 프로세서를 포함하고,
    상기 프로세서는, 하나 이상의 컨볼루션 뉴럴 네트워크를 이용하여,
    복수의 입력 영상들 각각에서 동일한 위치를 가지는, 타겟 영역들의 특징들과 제1 커널 세트의 컨볼루션 연산을 수행하여, 타겟 특징들을 추출하고,
    상기 복수의 입력 영상들에서 상기 타겟 영역들의 주변에 위치하는, 주변 영역들의 특징들과 제2 커널 세트의 컨볼루션 연산을 수행하여, 주변 특징들을 추출하며,
    상기 타겟 특징들 및 상기 주변 특징들에 기초하여, 출력 영상에서, 상기 타겟 영역들에 대응되는 영역의 특징을 결정하는, 영상 처리 장치.
  2. 제1항에 있어서,
    복수의 입력 영상들은 제1 입력 영상 및 제2 입력 영상을 포함하며,
    상기 타겟 영역들은,
    상기 제1 입력 영상 및 상기 제2 입력 영상 각각에서 동일한 위치를 가지는, 제1 타겟 영역 및 제2 타겟 영역을 포함하고,
    상기 주변 영역들은,
    상기 제1 입력 영상에서 상기 제1 타겟 영역의 주변에 위치하는 제1 주변 영역 및 상기 제2 입력 영상에서, 상기 제2 타겟 영역의 주변에 위치하는 제2 주변 영역을 포함하는, 영상 처리 장치.
  3. 제2항에 있어서,
    상기 프로세서는,
    상기 제1 입력 영상에서, 상기 제1 타겟 영역과의 거리가 기 설정된 거리 이내인 범위에서, 상기 제1 주변 영역을 추출하고,
    상기 제2 입력 영상에서, 상기 제2 타겟 영역과의 거리가 상기 기 설정된 거리 이내인 범위에서, 상기 제2 주변 영역을 추출하는, 영상 처리 장치.
  4. 제2항에 있어서,
    상기 프로세서는,
    상기 제1 입력 영상에 포함된 복수의 영역들 각각에 대하여, 상기 제1 타겟 영역과의 특징 유사성(feature similarity)을 결정하고, 상기 특징 유사성에 기초하여, 상기 제1 주변 영역을 결정하며,
    상기 제2 입력 영상에 포함된 복수의 영역들 각각에 대하여, 상기 제2 타겟 영역과의 특징 유사성을 결정하고, 상기 특징 유사성에 기초하여, 상기 제2 주변 영역을 결정하는, 영상 처리 장치.
  5. 제4항에 있어서,
    상기 제1 주변 영역은, 상기 제1 입력 영상에 포함된 복수의 영역들 중 상기 제1 타겟 영역의 특징과 가장 유사한 특징을 가지는 영역이고,
    상기 제2 주변 영역은, 상기 제2 입력 영상에 포함된 복수의 영역들 중 상기 제2 타겟 영역의 특징과 가장 유사한 특징을 가지는 영역인, 영상 처리 장치.
  6. 제2항에 있어서,
    상기 프로세서는,
    상기 제1 타겟 영역과 상기 제1 주변 영역과의 거리에 기초하여, 상기 제1 주변 영역에 적용되는 제1 가중치를 결정하고,
    상기 제2 타겟 영역과 상기 제2 주변 영역과의 거리에 기초하여, 상기 제2 주변 영역에 적용되는 제2 가중치를 결정하며,
    상기 제1 가중치 및 제2 가중치를 적용하여, 상기 주변 특징들을 추출하는, 영상 처리 장치.
  7. 제6항에 있어서,
    상기 프로세서는,
    상기 제1 타겟 영역과 상기 제1 주변 영역과의 거리가 가까울수록, 상기 제1 가중치를 큰 값으로 결정하고, 상기 제2 타겟 영역과 상기 제2 주변 영역과의 거리가 가까울수록 상기 제2 가중치를 큰 값으로 결정하는, 영상 처리 장치.
  8. 제2항에 있어서,
    상기 프로세서는,
    상기 제1 타겟 영역의 특징과 상기 제1 주변 영역의 특징 사이의 제1 유사도에 기초하여, 상기 제1 주변 영역에 적용되는 제1 가중치를 결정하고,
    상기 제2 타겟 영역의 특징과 상기 제2 주변 영역의 특징 사이의 제2 유사도에 기초하여, 상기 제2 주변 영역에 적용되는 제2 가중치를 결정하며,
    상기 제1 가중치 및 제2 가중치를 적용하여, 상기 주변 특징들을 추출하는, 영상 처리 장치.
  9. 제8항에 있어서,
    상기 프로세서는,
    상기 제1 유사도가 클수록, 상기 제1 가중치를 큰 값으로 결정하고, 상기 제2 유사도가 클수록, 상기 제2 가중치를 큰 값으로 결정하는, 영상 처리 장치.
  10. 제1항에 있어서,
    상기 제1 커널 세트 및 제2 커널 세트 각각은 복수의 커널들을 포함하고, 상기 복수의 커널들의 개수는 상기 복수의 입력 영상들의 개수와 동일한, 영상 처리 장치.
  11. 제2항에 있어서,
    상기 제1 커널 세트는 제1 커널 및 제2 커널을 포함하고, 상기 제2 커널 세트는 제3 커널 및 제4 커널을 포함하며,
    상기 제1 타겟 영역과 상기 제1 커널의 컨볼루션 연산을 수행하여, 제1 타겟 특징을 추출하고, 상기 제2 타겟 영역과 상기 제2 커널의 컨볼루션 연산을 수행하여 제2 타겟 특징을 추출하며,
    상기 제1 주변 영역과 상기 제3 커널의 컨볼루션 연산을 수행하여 제1 주변 특징을 추출하고, 상기 제2 주변 영역과 상기 제4 커널의 컨볼루션 연산을 수행하여 제2 주변 특징을 추출하며,
    상기 제1 타겟 특징, 제2 타겟 특징, 제1 주변 특징 및 제2 주변 특징에 기초하여, 상기 출력 영상에서, 상기 제1 타겟 영역 및 상기 제2 타겟 영역에 대응하는 영역의 특징을 결정하는, 영상 처리 장치.
  12. 제1항에 있어서,
    상기 프로세서는,
    상기 타겟 특징들 및 상기 주변 특징들과, 제3 커널과의 컨볼루션 연산을 수행함으로써, 상기 출력 영상에서, 상기 타겟 영역들에 대응하는 영역의 특징을 결정하는, 영상 처리 장치.
  13. 제1항에 있어서,
    상기 복수의 입력 영상들은,
    상기 하나 이상의 컨볼루션 뉴럴 네트워크에 포함되는 복수의 컨볼루션 레이어들 중 어느 하나에 입력되는, 복수의 프레임 영상들 및 복수의 특징 맵들 중 적어도 하나를 포함하는, 영상 처리 장치.
  14. 영상 처리 장치의 동작방법은,
    복수의 입력 영상들 각각에서 동일한 위치를 가지는, 타겟 영역들의 특징들과 제1 커널 세트의 컨볼루션 연산을 수행하여, 타겟 특징들을 추출하는 단계;
    상기 복수의 입력 영상들에서 상기 타겟 영역들의 주변에 위치하는, 주변 영역들의 특징들과 제2 커널 세트의 컨볼루션 연산을 수행하여, 주변 특징들을 추출하는 단계; 및
    상기 타겟 특징들 및 상기 주변 특징들에 기초하여, 출력 영상에서, 상기 타겟 영역들에 대응되는 영역의 특징을 결정하는 단계를 포함하는 영상 처리 장치의 동작방법.
  15. 제14항에 있어서,
    복수의 입력 영상들은 제1 입력 영상 및 제2 입력 영상을 포함하며,
    상기 타겟 영역들은,
    상기 제1 입력 영상 및 상기 제2 입력 영상 각각에서 동일한 위치를 가지는, 제1 타겟 영역 및 제2 타겟 영역을 포함하고,
    상기 주변 영역들은,
    상기 제1 입력 영상에서 상기 제1 타겟 영역의 주변에 위치하는 제1 주변 영역 및 상기 제2 입력 영상에서, 상기 제2 타겟 영역의 주변에 위치하는 제2 주변 영역을 포함하는, 영상 처리 장치의 동작방법.
  16. 제15항에 있어서,
    상기 주변 특징들을 추출하는 단계는,
    상기 제1 입력 영상에서, 상기 제1 타겟 영역과의 거리가 기 설정된 거리 이내인 범위에서, 상기 제1 주변 영역을 추출하는 단계; 및
    상기 제2 입력 영상에서, 상기 제2 타겟 영역과의 거리가 상기 기 설정된 거리 이내인 범위에서, 상기 제2 주변 영역을 추출하는 단계를 포함하는, 영상 처리 장치의 동작방법.
  17. 제15항에 있어서,
    상기 주변 특징들을 추출하는 단계는,
    상기 제1 입력 영상에 포함된 복수의 영역들 각각에 대하여, 상기 제1 타겟 영역과의 특징 유사성(feature similarity)을 결정하고, 상기 특징 유사성에 기초하여, 상기 제1 주변 영역을 결정하는 단계; 및
    상기 제2 입력 영상에 포함된 복수의 영역들 각각에 대하여, 상기 제2 타겟 영역과의 특징 유사성을 결정하고, 상기 특징 유사성에 기초하여, 상기 제2 주변 영역을 결정하는 단계를 포함하는, 영상 처리 장치의 동작방법.
  18. 제17항에 있어서,
    상기 제1 주변 영역을 결정하는 단계는,
    상기 제1 입력 영상에 포함된 복수의 영역들 중 상기 제1 타겟 영역의 특징과 가장 유사한 특징을 가지는 영역을 상기 제1 주변 영역으로 결정하는 단계를 포함하고,
    상기 제2 주변 영역을 결정하는 단계는,
    상기 제2 입력 영상에 포함된 복수의 영역들 중 상기 제2 타겟 영역의 특징과 가장 유사한 특징을 가지는 영역을 상기 제2 주변 영역으로 결정하는 단계를 포함하는, 영상 처리 장치의 동작방법.
  19. 제15항에 있어서,
    상기 주변 특징들을 추출하는 단계는,
    상기 제1 타겟 영역과 상기 제1 주변 영역과의 거리에 기초하여, 상기 제1 주변 영역에 적용되는 제1 가중치를 결정하는 단계;
    상기 제2 타겟 영역과 상기 제2 주변 영역과의 거리에 기초하여, 상기 제2 주변 영역에 적용되는 제2 가중치를 결정하는 단계; 및,
    상기 제1 가중치 및 제2 가중치를 적용하여, 상기 주변 특징들을 추출하는 단계를 포함하는, 영상 처리 장치의 동작방법.
  20. 제19항에 있어서,
    상기 제1 가중치를 결정하는 단계는,
    상기 제1 타겟 영역과 상기 제1 주변 영역과의 거리가 가까울수록, 상기 제1 가중치를 큰 값으로 결정하는 단계를 포함하고,
    상기 제2 가중치를 결정하는 단계는,
    상기 제2 타겟 영역과 상기 제2 주변 영역과의 거리가 가까울수록 상기 제2 가중치를 큰 값으로 결정하는 단계를 포함하는, 영상 처리 장치의 동작방법.
  21. 제15항에 있어서,
    상기 주변 특징들을 추출하는 단계는,
    상기 제1 타겟 영역의 특징과 상기 제1 주변 영역의 특징 사이의 제1 유사도에 기초하여, 상기 제1 주변 영역에 적용되는 제1 가중치를 결정하는 단계;
    상기 제2 타겟 영역의 특징과 상기 제2 주변 영역의 특징 사이의 제2 유사도에 기초하여, 상기 제2 주변 영역에 적용되는 제2 가중치를 결정하는 단계; 및,
    상기 제1 가중치 및 제2 가중치를 적용하여, 상기 주변 특징들을 추출하는 단계를 포함하는, 영상 처리 장치의 동작방법.
  22. 제21항에 있어서,
    상기 제1 가중치를 결정하는 단계는,
    상기 제1 유사도가 클수록, 상기 제1 가중치를 큰 값으로 결정하는 단계를 포함하고,
    상기 제2 가중치를 결정하는 단계는,
    상기 제2 유사도가 클수록, 상기 제2 가중치를 큰 값으로 결정하는 단계를 포함하는, 영상 처리 장치의 동작방법.
  23. 제14항에 있어서,
    상기 제1 커널 세트 및 제2 커널 세트 각각은 복수의 커널들을 포함하고, 상기 복수의 커널들의 개수는 상기 복수의 입력 영상들의 개수와 동일한, 영상 처리 장치의 동작방법.
  24. 제15항에 있어서,
    상기 제1 커널 세트는 제1 커널 및 제2 커널을 포함하고, 상기 제2 커널 세트는 제3 커널 및 제4 커널을 포함하며,
    상기 타겟 특징들을 추출하는 단계는,
    상기 제1 타겟 영역과 상기 제1 커널의 컨볼루션 연산을 수행하여, 제1 타겟 특징을 추출하고, 상기 제2 타겟 영역과 상기 제2 커널의 컨볼루션 연산을 수행하여 제2 타겟 특징을 추출하는 단계를 포함하고,
    상기 주변 특징들을 추출하는 단계는,
    상기 제1 주변 영역과 상기 제3 커널의 컨볼루션 연산을 수행하여 제1 주변 특징을 추출하고, 상기 제2 주변 영역과 상기 제4 커널의 컨볼루션 연산을 수행하여 제2 주변 특징을 추출하는 단계를 포함하는, 영상 처리 장치의 동작방법.
  25. 제14항에 있어서,
    상기 출력 영상에서, 상기 타겟 영역들에 대응되는 영역의 특징을 결정하는 단계는,
    상기 타겟 특징들 및 상기 주변 특징들과, 제3 커널과의 컨볼루션 연산을 수행함으로써, 상기 출력 영상에서, 상기 타겟 영역들에 대응되는 영역의 특징을 결정하는 단계를 포함하는, 영상 처리 장치의 동작방법.
  26. 제14항에 있어서,
    상기 복수의 입력 영상들은,
    상기 하나 이상의 컨볼루션 뉴럴 네트워크에 포함되는 복수의 컨볼루션 레이어들 중 어느 하나에 입력되는, 복수의 프레임 영상들 및 복수의 특징 맵들 중 적어도 하나를 포함하는, 영상 처리 장치의 동작방법.
  27. 복수의 입력 영상들 각각에서 동일한 위치를 가지는, 타겟 영역들의 특징들과 제1 커널 세트의 컨볼루션 연산을 수행하여, 타겟 특징들을 추출하는 단계;
    상기 복수의 입력 영상들에서 상기 타겟 영역들의 주변에 위치하는, 주변 영역들의 특징들과 제2 커널 세트의 컨볼루션 연산을 수행하여, 주변 특징들을 추출하는 단계; 및
    상기 타겟 특징들 및 상기 주변 특징들에 기초하여, 출력 영상에서, 상기 타겟 영역들에 대응되는 영역의 특징을 결정하는 단계를 수행하도록 하는 프로그램이 저장된 하나 이상의 컴퓨터로 읽을 수 있는 기록매체를 포함하는 컴퓨터 프로그램 제품.
KR1020180154691A 2018-12-04 2018-12-04 영상 처리 장치 및 그 동작방법 Pending KR20200067631A (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020180154691A KR20200067631A (ko) 2018-12-04 2018-12-04 영상 처리 장치 및 그 동작방법
PCT/KR2019/013588 WO2020116768A1 (ko) 2018-12-04 2019-10-16 영상 처리 장치 및 그 동작방법
US17/299,607 US11921822B2 (en) 2018-12-04 2019-10-16 Image processing device for improving details of an image, and operation method of the same
US18/427,442 US12443679B2 (en) 2018-12-04 2024-01-30 Image processing device for improving details of an image, and operation method of the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180154691A KR20200067631A (ko) 2018-12-04 2018-12-04 영상 처리 장치 및 그 동작방법

Publications (1)

Publication Number Publication Date
KR20200067631A true KR20200067631A (ko) 2020-06-12

Family

ID=70974354

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180154691A Pending KR20200067631A (ko) 2018-12-04 2018-12-04 영상 처리 장치 및 그 동작방법

Country Status (3)

Country Link
US (2) US11921822B2 (ko)
KR (1) KR20200067631A (ko)
WO (1) WO2020116768A1 (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102273377B1 (ko) * 2020-12-14 2021-07-06 국방기술품질원 영상 합성 방법
WO2022060001A1 (ko) * 2020-09-18 2022-03-24 삼성전자 주식회사 영상 처리 장치 및 그 동작방법
KR20220095533A (ko) * 2020-12-30 2022-07-07 주식회사 쿠오핀 네트워크 프로세서와 컨볼루션 처리기를 갖는 디바이스용 신경망 처리기
WO2022186499A1 (ko) * 2021-03-04 2022-09-09 삼성전자 주식회사 영상 처리 장치 및 그 동작방법
US12230008B2 (en) 2021-11-19 2025-02-18 Samsung Electronics Co., Ltd. Image processing apparatus and operating method thereof
US12367555B2 (en) 2021-03-04 2025-07-22 Samsung Electronics Co., Ltd. Image processing apparatus and operation method thereof

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102553146B1 (ko) * 2018-09-13 2023-07-07 삼성전자주식회사 영상 처리 장치 및 그 동작방법
KR20200067631A (ko) * 2018-12-04 2020-06-12 삼성전자주식회사 영상 처리 장치 및 그 동작방법
US12505595B2 (en) * 2020-05-15 2025-12-23 Nvidia Corporation Content-aware style encoding using neural networks
CN112308837A (zh) * 2020-10-30 2021-02-02 京东方科技集团股份有限公司 一种图像处理方法及装置、电子设备和可读存储介质
KR102868126B1 (ko) * 2020-12-10 2025-10-01 에스케이하이닉스 주식회사 이미지 센싱 장치

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4984261B2 (ja) 2008-05-29 2012-07-25 大日本印刷株式会社 目標物検出システム
US8285068B2 (en) 2008-06-25 2012-10-09 Cisco Technology, Inc. Combined deblocking and denoising filter
KR101716646B1 (ko) 2013-01-10 2017-03-15 한국전자통신연구원 국부이진패턴을 이용한 객체 검출 인식 방법 및 장치
KR102144994B1 (ko) 2013-09-30 2020-08-14 삼성전자주식회사 영상의 노이즈를 저감하는 방법 및 이를 이용한 영상 처리 장치
CN105850120B (zh) * 2014-01-24 2017-11-10 奥林巴斯株式会社 立体内窥镜图像处理装置
CA2944831C (en) * 2014-05-30 2019-12-31 Ventana Medical Systems, Inc. An image processing method and system for analyzing a multi-channel image obtained from a biological tissue sample being stained by multiple stains
KR102367828B1 (ko) * 2015-06-05 2022-02-25 삼성전자주식회사 이미지 운용 방법 및 이를 지원하는 전자 장치
JP6614611B2 (ja) * 2016-02-29 2019-12-04 Kddi株式会社 画像間類似度を考慮して物体を追跡する装置、プログラム及び方法
KR20180133394A (ko) * 2016-04-06 2018-12-14 소니 주식회사 화상 처리 장치와 화상 처리 방법
US10564715B2 (en) * 2016-11-14 2020-02-18 Google Llc Dual-path foveated graphics pipeline
KR20180097944A (ko) * 2017-02-24 2018-09-03 재단법인대구경북과학기술원 공유 특징맵을 이용한 다중 객체 추적 장치 및 그 방법
CN108304761A (zh) * 2017-09-25 2018-07-20 腾讯科技(深圳)有限公司 文本检测方法、装置、存储介质和计算机设备
EP3724846A1 (en) * 2017-12-19 2020-10-21 Nokia Technologies Oy Gaze dependent foveated rendering apparatus, method, computer program and system
US11354888B2 (en) * 2018-11-16 2022-06-07 GM Global Technology Operations LLC Method and apparatus for a neural network
KR20200067631A (ko) * 2018-12-04 2020-06-12 삼성전자주식회사 영상 처리 장치 및 그 동작방법
US11048935B2 (en) * 2019-01-28 2021-06-29 Adobe Inc. Generating shift-invariant neural network outputs
CN115004263A (zh) * 2019-11-20 2022-09-02 Oppo广东移动通信有限公司 人脸检测装置、方法和人脸解锁系统
JP7333520B2 (ja) * 2020-01-30 2023-08-25 富士通株式会社 学習プログラム、学習方法、及び情報処理装置
CN111814871B (zh) * 2020-06-13 2024-02-09 浙江大学 一种基于可靠权重最优传输的图像分类方法
KR102883347B1 (ko) * 2020-10-30 2025-11-07 삼성전자주식회사 영상 복원 방법 및 장치
CN114267084B (zh) * 2021-12-17 2025-09-19 北京沃东天骏信息技术有限公司 视频识别方法、装置、电子设备及存储介质

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022060001A1 (ko) * 2020-09-18 2022-03-24 삼성전자 주식회사 영상 처리 장치 및 그 동작방법
KR20220037764A (ko) * 2020-09-18 2022-03-25 삼성전자주식회사 영상 처리 장치 및 그 동작방법
CN116210022A (zh) * 2020-09-18 2023-06-02 三星电子株式会社 图像处理设备及其操作方法
US12524836B2 (en) 2020-09-18 2026-01-13 Samsung Electronics Co., Ltd. Image processing device and operating method therefor
KR102273377B1 (ko) * 2020-12-14 2021-07-06 국방기술품질원 영상 합성 방법
US11983843B2 (en) 2020-12-14 2024-05-14 Defense Agency For Technology And Quality Method for synthesizing image
KR20220095533A (ko) * 2020-12-30 2022-07-07 주식회사 쿠오핀 네트워크 프로세서와 컨볼루션 처리기를 갖는 디바이스용 신경망 처리기
WO2022186499A1 (ko) * 2021-03-04 2022-09-09 삼성전자 주식회사 영상 처리 장치 및 그 동작방법
US12367555B2 (en) 2021-03-04 2025-07-22 Samsung Electronics Co., Ltd. Image processing apparatus and operation method thereof
US12230008B2 (en) 2021-11-19 2025-02-18 Samsung Electronics Co., Ltd. Image processing apparatus and operating method thereof

Also Published As

Publication number Publication date
US20240169031A1 (en) 2024-05-23
US11921822B2 (en) 2024-03-05
US12443679B2 (en) 2025-10-14
WO2020116768A1 (ko) 2020-06-11
US20220019844A1 (en) 2022-01-20

Similar Documents

Publication Publication Date Title
KR20200067631A (ko) 영상 처리 장치 및 그 동작방법
US11557085B2 (en) Neural network processing for multi-object 3D modeling
US10650283B2 (en) Electronic apparatus and control method thereof
KR102140805B1 (ko) 위성 영상의 물체 식별을 위한 뉴럴 네트워크 학습 방법 및 장치
KR102570562B1 (ko) 영상 처리 장치 및 그 동작방법
KR102236582B1 (ko) 영상 처리 장치 및 그 동작방법
KR102824321B1 (ko) 공간 인식 조건부 gan들을 이용하는 고해상도 제어가능한 얼굴 노화
US11875257B2 (en) Normalization method for machine-learning and apparatus thereof
US11380081B2 (en) Image processing apparatus and operating method of the same
US11961207B2 (en) Image processing apparatus performing a deconvolution operation and operation method thereof
KR20200015095A (ko) 영상 처리 장치 및 그 동작방법
EP4083874B1 (en) IMAGE PROCESSING DEVICE AND ITS OPERATING METHOD
US12524836B2 (en) Image processing device and operating method therefor
Almeida et al. Deep networks for human visual attention: A hybrid model using foveal vision
US20210081756A1 (en) Fractional convolutional kernels
US12367555B2 (en) Image processing apparatus and operation method thereof
EP4276744A1 (en) Image processing apparatus and operating method therefor
KR102266903B1 (ko) 영상 처리 장치 및 그 동작방법
KR20230034127A (ko) 영상 처리 장치 및 그 동작 방법
KR20220125127A (ko) 영상 처리 장치 및 그 동작방법
KR20210141304A (ko) 영상 처리 장치 및 그 동작방법

Legal Events

Date Code Title Description
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

A201 Request for examination
PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

D13-X000 Search requested

St.27 status event code: A-1-2-D10-D13-srh-X000

D14-X000 Search report completed

St.27 status event code: A-1-2-D10-D14-srh-X000

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

E90F Notification of reason for final refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

P11 Amendment of application requested

Free format text: ST27 STATUS EVENT CODE: A-2-2-P10-P11-NAP-X000 (AS PROVIDED BY THE NATIONAL OFFICE)

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13 Application amended

Free format text: ST27 STATUS EVENT CODE: A-2-2-P10-P13-NAP-X000 (AS PROVIDED BY THE NATIONAL OFFICE)

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

D22 Grant of ip right intended

Free format text: ST27 STATUS EVENT CODE: A-1-2-D10-D22-EXM-PE0701 (AS PROVIDED BY THE NATIONAL OFFICE)

PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701