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

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

Info

Publication number
KR102420104B1
KR102420104B1 KR1020190057603A KR20190057603A KR102420104B1 KR 102420104 B1 KR102420104 B1 KR 102420104B1 KR 1020190057603 A KR1020190057603 A KR 1020190057603A KR 20190057603 A KR20190057603 A KR 20190057603A KR 102420104 B1 KR102420104 B1 KR 102420104B1
Authority
KR
South Korea
Prior art keywords
characteristic information
sub
information
feature
image processing
Prior art date
Application number
KR1020190057603A
Other languages
English (en)
Other versions
KR20200132304A (ko
Inventor
박재연
박용섭
안일준
백상욱
천민수
최광표
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020190057603A priority Critical patent/KR102420104B1/ko
Priority to CN202080013383.XA priority patent/CN113424203A/zh
Priority to EP20805779.4A priority patent/EP3871158A4/en
Priority to PCT/KR2020/005358 priority patent/WO2020231035A1/en
Priority to US16/861,428 priority patent/US11380081B2/en
Publication of KR20200132304A publication Critical patent/KR20200132304A/ko
Application granted granted Critical
Publication of KR102420104B1 publication Critical patent/KR102420104B1/ko

Links

Images

Classifications

    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • G06F18/253Fusion techniques of extracted features
    • 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
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration using local operators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/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; CALCULATING OR 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)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Image Analysis (AREA)

Abstract

영상 처리 장치에 관한 것으로, 하나 이상의 인스트럭션들을 저장하는 메모리 및 메모리에 저장된 하나 이상의 인스트럭션들을 실행하는 프로세서를 포함하고, 프로세서는, 제1 영상과 복수의 컨볼루션 레이어들 중 제1 컨볼루션 레이어에 포함되는 제1 커널과의 컨볼루션 연산을 수행함으로써, 제1 특징 정보를 추출하고, 제1 특징 정보에 기초하여, 적어도 하나의 특성 정보를 획득하며, 제1 특징 정보와 적어도 하나의 특성 정보에 기초하여, 제2 특징 정보를 획득하고, 제2 특징 정보와, 복수의 컨볼루션 레이어들 중 제1 컨볼루션 레이어의 다음 레이어인 제2 컨볼루션 레이어에 포함되는 제2 커널과의 컨볼루션 연산을 수행함으로써, 제3 특징 정보를 추출하며, 제3 특징 정보에 기초하여, 출력 영상을 획득하는 영상 처리 장치가 개시된다.

Description

영상 처리 장치 및 그 동작방법{Image processing apparatus and operating method for the same}
다양한 실시예들은 컨볼루션 뉴럴 네트워크를 이용하여, 영상을 처리하는 영상 처리 장치 및 그 동작방법에 관한 것으로서, 더욱 상세하게는 영상 처리의 성능을 향상시킬 수 있는 영상 처리 장치 및 그 동작방법에 관한 것이다.
컴퓨터 기술의 발달과 함께 데이터 트래픽이 지수함수 형태로 증가하면서 인공지능은 미래 혁신을 주도하는 중요한 트랜드로 자리잡았다. 인공지능은 사람의 사고방식을 모방하는 방식이기 때문에 사실상 전 산업에 무한하게 응용이 가능하다. 인공지능의 대표적인 기술로는 패턴 인식, 기계 학습, 전문가 시스템, 뉴럴 네트워크, 자연어 처리 등이 있다.
뉴럴 네트워크는 인간의 생물학적 신경 세포의 특성을 수학적 표현에 의해 모델링한 것으로, 인간이 가지고 있는 학습이라는 능력을 모방한 알고리즘을 이용한다. 이 알고리즘을 통하여, 뉴럴 네트워크는 입력 데이터와 출력 데이터 사이의 사상(mapping)을 생성할 수 있고, 이러한 사상을 생성하는 능력은 뉴럴 네트워크의 학습 능력이라고 표현될 수 있다. 또한, 뉴럴 네트워크는 학습된 결과에 기초하여, 학습에 이용되지 않았던 입력 데이터에 대하여, 올바른 출력 데이터를 생성할 수 있는 일반화 능력을 가진다.
컨볼루션 뉴럴 네트워크(CNN: Convolution Neural Network) 를 이용하여, 영상을 처리하는 경우, 이전 레이어에서 생성된 특징 정보만을 이용하여 컨볼루션 연산을 수행하므로, 이전 레이어에서 생성된 특징 정보로부터 얻을 수 없는 특성은 영상 처리에 반영할 수 없다는 문제점이 있다.
컨볼루션 연산 결과, 생성되는 특징 정보들로부터 획득되는 특성 정보를 기존 특징 정보들에 합성하여, 컨볼루션 연산에 이용함으로써, 영상 처리의 성능을 향상시킬 수 있는, 영상 처리 장치 및 그 동작방법을 제공할 수 있다.
일 실시예에 따른 영상 처리 장치는 하나 이상의 인스트럭션들을 저장하는 메모리, 및 상기 메모리에 저장된 상기 하나 이상의 인스트럭션들을 실행하는 프로세서를 포함하고, 상기 프로세서는, 제1 영상과 복수의 컨볼루션 레이어들 중 제1 컨볼루션 레이어에 포함되는 제1 커널과의 컨볼루션 연산을 수행함으로써, 제1 특징 정보를 추출하고, 상기 제1 특징 정보에 기초하여, 적어도 하나의 특성 정보를 획득하며, 상기 제1 특징 정보와 상기 적어도 하나의 특성 정보에 기초하여, 제2 특징 정보를 획득하고, 상기 획득된 제2 특징 정보와, 상기 복수의 컨볼루션 레이어들 중 상기 제1 컨볼루션 레이어의 다음 레이어인 제2 컨볼루션 레이어에 포함되는 제2 커널과의 컨볼루션 연산을 수행함으로써, 제3 특징 정보를 추출하며, 상기 제3 특징 정보에 기초하여, 출력 영상을 획득할 수 있다.
일 실시예에 따른 프로세서는, 상기 제1 특징 정보에 대한 필터링 또는 변환을 수행함으로써, 상기 적어도 하나의 특성 정보를 추출할 수 있다.
일 실시예에 따른 프로세서는, 상기 제1 특징 정보에 대한 주파수(frequency) 특성 정보를 추출할 수 있다.
일 실시예에 따른 프로세서는, 상기 적어도 하나의 특성 정보로부터 제1 서브 특징 정보를 추출하고, 상기 제1 특징 정보 및 상기 제1 서브 특징 정보를 합성함으로써, 상기 제2 특징 정보를 획득할 수 있다.
일 실시예에 따른 프로세서는, 상기 적어도 하나의 특성 정보와 제1 서브 커널과의 컨볼루션 연산을 수행함으로써, 상기 제1 서브 특징 정보를 추출할 수 있다.
일 실시예에 따른 프로세서는, 상기 제1 특징 정보, 상기 적어도 하나의 특성 정보 및 상기 제1 서브 특징 정보에 기초하여, 상기 제2 특징 정보를 획득할 수 있다.
일 실시예에 따른 프로세서는, 상기 적어도 하나의 특성 정보로부터 제2 서브 특징 정보를 더 추출하고, 상기 적어도 하나의 특성 정보, 상기 제1 특징 정보, 제1 서브 특징 정보 및 제2 서브 특징 정보에 기초하여, 상기 제2 특징 정보를 획득할 수 있다.
일 실시예에 따른 프로세서는, 상기 적어도 하나의 특성 정보와 제2 서브 커널과의 컨볼루션 연산을 수행함으로써, 상기 제2 서브 특징 정보를 추출할 수 있다.
일 실시예에 따른 프로세서는, 상기 제1 특징 정보와 상기 제1 서브 특징 정보를 곱한 값과 상기 적어도 하나의 특성 정보와 상기 제2 서브 특징 정보를 곱한 값을 합함으로써, 상기 제2 특징 정보를 획득할 수 있다.
일 실시예에 따른 영상 처리 장치의 동작방법은, 제1 영상과, 복수의 컨볼루션 레이어들 중 제1 컨볼루션 레이어에 포함되는 제1 커널과의 컨볼루션 연산을 수행함으로써, 제1 특징 정보를 추출하는 단계, 상기 제1 특징 정보에 기초하여, 적어도 하나의 특성 정보를 획득하는 단계, 상기 제1 특징 정보와 상기 적어도 하나의 특성 정보에 기초하여, 제2 특징 정보를 획득하는 단계, 상기 획득된 제2 특징 정보와, 상기 복수의 컨볼루션 레이어들 중 상기 제1 컨볼루션 레이어의 다음 레이어인 제2 컨볼루션 레이어에 포함되는 제2 커널과의 컨볼루션 연산을 수행함으로써, 제3 특징 정보를 추출하는 단계, 및 상기 제3 특징 정보에 기초하여, 출력 영상을 획득하는 단계를 포함할 수 있다.
일 실시예에 따른 영상 처리 장치는, 컨볼루션 뉴럴 네트워크 내에서 추출되는 기존 특징 정보로부터 획득한 적어도 하나의 특성을 기존 특징 정보에 합성하여 컨볼루션 연산을 수행함으로써, 컨볼루션 뉴럴 네트워크를 이용하여, 기존 특징 정보에서 얻을 수 없었던 다른 특성 및 특징들을 컨볼루션 연산에 이용할 수 있다.
일 실시예에 따른 적어도 하나의 특성 정보는 의도적으로 추출될 수 있으며, 의도적으로 추출된 특성 정보를 기존 특징 정보에 합성하여, 컨볼루션 연산을 수행함으로써, 기존 특징을 유지하면서, 의도된 방향으로 영상을 처리할 수 있다.
일 실시예에 따른 영상 처리 장치는, 하드웨어 복잡도를 크게 증가시키지 않고도, 영상 처리 성능을 향상시킬 수 있다.
도 1은 일 실시예에 따른 영상 처리 장치가 컨볼루션 뉴럴 네트워크를 이용하여, 영상을 처리하는 방법을 나타내는 도면이다.
도 2는 일 실시예에 따른 영상 처리 장치가 컨볼루션 뉴럴 네트워크를 이용하여, 영상을 처리하는 방법을 나타내는 도면이다.
도 3은 일 실시예에 따른 적어도 하나의 특성 정보를 획득하는 방법을 설명하기 위한 도면이다.
도 4 및 도 5는 일 실시예에 따른 영상 처리 장치가 적어도 하나의 특성 정보로부터 적어도 하나의 서브 특징 정보를 추출하는 방법을 설명하기 위한 도면들이다.
도 6은 일 실시예에 따른 영상 처리 장치가 일 실시예에 따른 제2 특징 정보를 획득하는 방법을 설명하기 위한 도면이다.
도 7은 일 실시예에 따른 영상 처리 장치가 컨볼루션 뉴럴 네트워크를 이용하여, 영상을 처리하는 방법을 나타내는 도면이다.
도 8은 일 실시예에 따른 영상 처리 장치가 컨볼루션 뉴럴 네트워크를 이용하여, 영상을 처리하는 방법을 나타내는 도면이다.
도 9는 일 실시예에 따른 영상 처리 장치가 컨볼루션 뉴럴 네트워크를 이용하여, 영상을 처리하는 방법을 나타내는 도면이다.
도 10은 일 실시예에 따른 영상 처리 장치의 동작방법을 나타내는 흐름도이다.
도 11은 일 실시예에 따른 영상 처리 장치의 구성을 나타내는 블록도이다.
도 12는 일 실시예에 따른 프로세서의 블록도이다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 발명에 대해 구체적으로 설명하기로 한다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
아래에서는 첨부한 도면을 참고하여 실시예들에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
도 1은 일 실시예에 따른 영상 처리 장치가 컨볼루션 뉴럴 네트워크를 이용하여, 영상을 처리하는 방법을 나타내는 도면이다.
도 1을 참조하면, 일 실시예에 따른 영상 처리 장치(100)는 컨볼루션 뉴럴 네트워크(Convolution Neural Network)(200)를 이용하여, 입력 영상(10, input)을 영상 처리하여, 출력 영상(20, output)을 획득할 수 있다.
도 1을 참조하면, 컨볼루션 뉴럴 네트워크(50)는 복수의 컨볼루션 레이어들을 포함할 수 있다. 예를 들어, 복수의 컨볼루션 레이어들은, 제1 내지 제n컨볼루션 레이어들(Conv_1, Conv_2, Conv_3,..., Conv_n)을 포함할 수 있다. 또한, 도 1의 컨볼루션 뉴럴 네트워크(50)에 입력되는 입력 영상(10)은 저해상도 영상이며, 출력 영상(20)은 고해상도 영상일 수 있으며, 이에 따라, 컨볼루션 뉴럴 네트워크(50)는 업 스케일러(Up-scaler, 58)를 더 포함할 수 있으나, 이에 한정되지 않는다.
컨볼루션 레이어들 각각에서는, 컨볼루션 레이어에 입력된 하나 이상의 영상들(또는 특징 맵들)과 커널(kernel)의 컨볼루션(convolution) 연산이 수행될 수 있으며, 컨볼루션 연산 결과, 생성된 하나 이상의 영상들(또는, 특징 맵들)이 출력될 수 있다. 또한, 현재 컨볼루션 레이어에서 출력된 하나 이상의 특징 맵들은 다음 컨볼루션 레이어로 입력될 수 있다.
예를 들어, 첫 번째 컨볼루션 레이어(Conv_1, 51)에서 출력된 값들(예를 들어, 특징 정보)은 두 번째 컨볼루션 레이어(Conv_2, 52)로 입력될 수 있으며, 두 번째 컨볼루션 레이어(Conv_2, 52)에서 출력된 값들은 세 번째 컨볼루션 레이어(Conv_3)로 입력될 수 있다.
영상 처리 장치(100)는 컨볼루션 뉴럴 네트워크(50)를 이용하여, 입력 영상(input)에 대한 복수의 특징 정보들을 추출하고, 추출된 특징 정보들에 기초하여, 입력 영상이 영상 처리된 출력 영상(output)을 획득할 수 있다. 이때, 영상 처리는, 화질 개선(image enhancement), 해상도 증가, 영상에서의 객체 인식, 디테일 향상 등 다양한 영상 처리를 포함할 수 있으며, 이에 한정되지 않는다.
일 실시예에 따른 영상 처리 장치(100)는, 복수의 컨볼루션 레이어들 중 m번째 컨볼루션 레이어(Conv_m, 55)로부터 추출된 제1 특징 정보(60)에 기초하여, 적어도 하나의 특성 정보를 획득할 수 있다. 예를 들어, 영상 처리 장치(100)는 제1 특징 정보(60)를 필터링하거나 또는 제1 특징 정보(60)에 대한 변환을 수행함으로써, 적어도 하나의 특성 정보(70, 예를 들어, 제1 특성 정보, 제2 특성 정보 및 제3 특성 정보)를 획득할 수 있다. 이에 대해서는, 자세히 후술하기로 한다.
영상 처리 장치(100)는 획득한 적어도 하나의 특성 정보(70)와, 제1 특징 정보(60)에 기초하여, 제2 특징 정보를 획득할 수 있다. 예를 들어, 영상 처리 장치(100)는 제1 특징 정보(60)와 적어도 하나의 특성 정보(70)를 합성함으로써, 제2 특징 정보를 획득할 수 있다. 또는, 영상 처리 장치(100)는 적어도 하나의 특성 정보로부터 적어도 하나의 서브 특징 정보를 추출할 수 있으며, 제1 특징 정보, 적어도 하나의 서브 특징 정보를 합성함으로써, 제2 특징 정보를 획득할 수 있다. 또는, 영상 처리 장치(100)는 제1 특징 정보, 적어도 하나의 특성 정보, 적어도 하나의 서브 특징 정보를 합성함으로써, 제2 특징 정보를 획득할 수 있다. 이에 대해서는 자세히 후술하기로 한다.
획득된 제2 특징 정보는 m+1번째 컨볼루션 레이어(Conv_m+1, 56)로 입력될 수 있으며, 입력된 제2 특징 정보는, m+1번째 컨볼루션 레이어(Conv_m+1, 56)에 포함되는 커널과의 컨볼루션 연산이 수행될 수 있으며, 이에 기초하여, 출력 영상(20)이 획득될 수 있다.
이때, m 번째 컨볼루션 레이어(55)는, 첫 번째 컨볼루션 레이어부터 n-1번째 컨볼루션 레이어들 중 하나 이상의 컨볼루션 레이어들을 포함할 수 있으며 이에 한정되지 않는다. 또한, 일 실시예에 따른 적어도 하나의 특성 정보는, 입력 영상(10)으로부터 획득될 수도 있다. 예를 들어, 입력 영상(10)을 필터링하거나 입력 영상(10)에 대한 변환을 수행함으로써, 적어도 하나의 특성 정보(70)를 획득할 수 있다.
도 2는 일 실시예에 따른 영상 처리 장치가 컨볼루션 뉴럴 네트워크를 이용하여, 영상을 처리하는 방법을 나타내는 도면이다.
도 2를 참조하면, 일 실시예에 따른 영상 처리 장치(100)는 m번째 컨볼루션 레이어(55, 이하, 제1 컨볼루션 레이어라 한다)로부터 추출된 제1 특징 정보(60)에 기초하여, 적어도 하나의 특성 정보를 획득할 수 있다. 적어도 하나의 특성 정보를 획득하는 방법에 대해서는, 도 3을 참조하여 설명하기로 한다.
도 3은 일 실시예에 따른 적어도 하나의 특성 정보를 획득하는 방법을 설명하기 위한 도면이다.
일 실시예에 따른 영상 처리 장치(100)는 제1 컨볼루션 레이어(55)로부터 추출된 제1 특징 정보(60)에 필터링을 수행함으로써, 적어도 하나의 특성 정보를 획득할 수 있다.
예를 들어, 영상 처리 장치(100)는 가우시안 커널을 이용한 필터링 또는 이산 코사인 변환(DCT; Discret Cosine Transform)나 웨이블렛 변환(Wavelet transform) 등을 수행함으로써, 주파수 특성 정보를 획득할 수 있다.
도 3을 참조하면, 영상 처리 장치(100)는 제1 특징 정보(60)에 4개의 필터 커널들(311, 312, 313, 314)을 적용하여, 컨볼루션 연산을 수행할 수 있다. 영상 처리 장치(100)는 제1 특징 정보(60)와 제1 필터 커널(311)과의 컨볼루션 연산을 수행하여, 제1 필터링 정보(321)를 획득하고, 제1 특징 정보(60)와 제2 필터 커널(312)과의 컨볼루션 연산을 수행하여, 제2 필터링 정보(322)를 획득하며, 제1 특징 정보(60)와 제3 필터 커널(313)과의 컨볼루션 연산을 수행하여, 제3 필터링 정보(323)를 획득하고, 제1 특징 정보(60)와 제4 필터 커널(314)과의 컨볼루션 연산을 수행하여, 제4 필터링 정보(324)를 획득할 수 있다. 도 3에서는 필터 커널들이 4개인 것으로 도시하고 설명하였지만, 이에 한정되는 것은 아니다. 또한, 필터 커널들은 가우시안 커널일 수 있으나, 이에 한정되는 것은 아니다.
일 실시예에 따른, 제1 특징 정보(60)를 필터링하기 위한 필터 커널들(311, 312, 313, 314)의 가중치 값들은 기 설정된 값들일 수 있다.
영상 처리 장치(100)는 제1 필터링 정보(321)와 제2 필터링 정보(322)의 차이를 계산하여, 제1 특성 정보(331)를 획득하고, 제2 필터링 정보(322)와 제3 필터링 정보(323)의 차이를 계산하여, 제2 특성 정보(332)를 획득하며, 제3 필터링 정보(323)와 제4 필터링 정보(324)의 차이를 계산하여, 제3 특성 정보(333)를 획득할 수 있다.
이때, 제1 내지 제3 특성 정보들(331, 332, 333)은 각각 고 주파수(high frequency) 특성 정보, 중 주파수(middle frequency) 특성 정보 및 저 주파수(low frequency) 특성 정보일 수 있다.
또는, 일 실시예에 따른 영상 처리 장치(100)는 허프 변환(Hough transform), 라돈 변환(Radon transform) 등을 수행하여, 제1 특징 정보(60)로부터 라인(line)에 대한 특성 정보를 추출할 수 있다.
또는, 영상 처리 장치(100)는 Harris corner, Shi-Tomasi corner등을 수행하여, 제1 특징 정보(60)로부터 특징점(key-point)에 대한 특성 정보를 추출할 수 있따. 다만, 이에 한정되지 않는다.
다시, 도 2를 참조하면, 일 실시예에 따른 영상 처리 장치(100)는 적어도 하나의 특성 정보(330)로부터 적어도 하나의 서브 특징 정보를 추출할 수 있다. 예를 들어, 적어도 하나의 특성 정보(330)와 제1 서브 컨볼루션 레이어(400)에 포함되는 제1 서브 커널과의 컨볼루션 연산을 통해, 제1 서브 특징 정보를 추출할 수 있으며, 적어도 하나의 특성 정보(330)와 제2 서브 컨볼루션 레이어(500)에 포함되는 제2 서브 커널과의 컨볼루션 연산을 통해, 제2 서브 특징 정보를 추출할 수 있다. 이에 대해서는, 도 4 및 도 5를 참조하여, 설명하기로 한다.
도 4 및 도 5는 일 실시예에 따른 영상 처리 장치가 적어도 하나의 특성 정보로부터 적어도 하나의 서브 특징 정보를 추출하는 방법을 설명하기 위한 도면들이다.
도 4를 참조하면, 일 실시예에 따른 적어도 하나의 특성 정보는, 제1 내지 제3 특성 정보들(331, 332, 333)를 포함할 수 있다. 이때, 제1 내지 제3 특성 정보들(331, 332, 333)은, 일 실시예에 따른 제1 특징 정보(60)로부터 획득될 수 있으며, 각각 고 주파수(high frequency) 특성 정보, 중 주파수(middle frequency) 특성 정보 및 저 주파수(low frequency) 특성 정보일 수 있으나, 이에 한정되지 않는다.
영상 처리 장치(100)는 적어도 하나의 특성 정보와 서브 커널과의 컨볼루션 연산을 수행함으로써, 적어도 하나의 특성 정보에 대한 서브 특징 정보(특성 특징 정보)들을 추출할 수 있다.
예를 들어, 영상 처리 장치(100)는, 제1 내지 제3 특성 정보들(331, 332, 333)과 제1 서브 커널 세트(410)와의 컨볼루션 연산을 수행함으로써, 제1 서브 특징 정보들(420)을 추출할 수 있다. 이때, 제1 서브 커널 세트(410)는 깊이 n을 가지는 3개의 커널들을 포함할 수 있으며, 추출된 제1 서브 특징 정보들은, 깊이n을 가지는 3개의 특징 정보들을 포함할 수 있다. 또한, 깊이 n은 제1 컨볼루션 레이어로부터 추출된 제1 특징 정보의 깊이와 동일한 값으로 결정될 수 있으나, 이에 한정되지 않는다.
또한, 도 5를 참조하면, 영상 처리 장치(100)는 제1 내지 제3 특성 정보들(331, 332, 333)과 제2 서브 커널 세트(510)와의 컨볼루션 연산을 수행함으로써, 제2 서브 특징 정보들(520)을 추출할 수 있다. 이때, 제2 서브 커널 세트(510)는 깊이 n을 가지는 3개의 커널들을 포함할 수 있으며, 추출된 제2 서브 특징 정보들(520)은, 깊이n을 가지는 3개의 특징 정보들을 포함할 수 있다. 또한, 깊이 n은 제1 컨볼루션 레이어로부터 추출된 제1 특징 정보의 깊이와 동일한 값으로 결정될 수 있으나, 이에 한정되지 않는다.
일 실시예에 따른 제1 서브 커널 세트(410) 및 제2 서브 커널 세트(510)에 포함되는 가중치 값들은, 훈련에 의해 결정될 수 있으며, 제1 서브 커널 세트(410)의 가중치 값들과 제2 서브 커널 세트(510)의 가중치 값들은 서로 다른 값들로 결정될 수 있다.
다시, 도 2를 참조하면, 특성 합성부(600)는, 제1 특징 정보, 적어도 하나의 특성 정보, 제1 서브 특징 정보, 제2 서브 특징 정보에 기초하여, 제2 특징 정보를 획득할 수 있다.
이에 대해서는, 도 6을 참조하여, 설명하기로 한다.
도 6은 일 실시예에 따른 영상 처리 장치가 일 실시예에 따른 제2 특징 정보를 획득하는 방법을 설명하기 위한 도면이다.
도 6을 참조하면, 특성 합성부(600)는, 제1 컨볼루션 레이어로부터 추출된 제1 특징 정보(fi), 제1 특징 정보로부터 획득한 적어도 하나의 특성 정보(Ci ,c), 적어도 하나의 특성 정보로부터 추출된 제1 서브 특징 정보(fi ,c) 및 제2 서브 특징 정보(f'i ,c)에 기초하여, 제2 특징 정보(fi +1)를 획득할 수 있다.
이때, 곱하는 연산은 엘리먼트별 곱셈(element-wise multiplication)으로 수행될 수 있으며, 적어도 하나의 특성 정보(Ci ,c)와 제2 서브 특징 정보(f'i ,c)를 곱하기 위해, 적어도 하나의 특성 정보의 깊이를 제2 서브 특징 정보의 깊이 n과 동일하도록 구성할 수 있다. 또한, 더하는 연산은 엘리먼트별 덧셈(element-wise summation)으로 수행될 수 있다.
특성 합성부(600)는 제1 특징 정보(fi)와 제1 서브 특징 정보(fi ,c)를 곱한 값과 적어도 하나의 특성 정보(Ci ,c)와 제2 서브 특징 정보(f'i ,c)를 곱한 값을 더하여, 제2 특징 정보(fi +1)를 획득할 수 있다.
또는, 특성 합성부(600)는 제1 특징 정보(fi)와 제1 서브 특징 정보(fi ,c)를 곱한 값과 제2 서브 특징 정보(f'i ,c)를 더하여, 제2 특징 정보(fi +1)를 획득할 수 있다.
다시, 도 2를 참조하면, 획득된 제2 특징 정보는, m+1 번째 컨볼루션 레이어(56, 제2 컨볼루션 레이어)로 입력될 수 있으며, 입력된 제2 특징 정보와, 제2 컨볼루션 레이어(56)에 포함된 제2 커널과의 컨볼루션 연산을 수행함으로써, 제3 특징 정보를 추출할 수 있으며, 제3 특징 정보에 기초하여, 출력 영상(20)이 획득될 수 있다.
도 7은 일 실시예에 따른 영상 처리 장치가 컨볼루션 뉴럴 네트워크를 이용하여, 영상을 처리하는 방법을 나타내는 도면이다.
도 7을 참조하면, 일 실시예에 따른 영상 처리 장치(100)는 m번째 컨볼루션 레이어(55, 이하, 제1 컨볼루션 레이어라 한다)로부터 추출된 제1 특징 정보(60)에 기초하여, 적어도 하나의 특성 정보를 획득할 수 있다. 적어도 하나의 특성 정보를 획득하는 방법에 대해서는 도 3에서 자세히 설명하였으므로, 구체적인 설명은 생략하기로 한다.
또한, 영상 처리 장치(100)는 적어도 하나의 특성 정보로부터 특징 정보를 추출할 수 있다. 예를 들어, 영상 처리 장치(100)는 적어도 하나의 특성 정보와 서브 커널 세트와의 컨볼루션 연산을 수행함으로써, 서브 특징 정보들을 추출할 수 있다.
특성 합성부(600)는 제1 특징 정보(fi)와 서브 특징 정보(fi ,c)를 곱함으로써, 제2 특징 정보(fi +1)를 획득할 수 있다.
또는, 특성 합성부(600)는 제1 특징 정보(fi)와 서브 특징 정보(fi ,c)를 더함으로써, 제2 특징 정보(fi +1)를 획득할 수 있다.
이때, 곱하는 연산은 엘리먼트별 곱셈(element-wise multiplication)으로 수행될 수 있으며, 더하는 연산은 엘리먼트별 덧셈(element-wise summation)으로 수행될 수 있다.
획득된 제2 특징 정보는, m+1 번째 컨볼루션 레이어(제2 컨볼루션 레이어)로 입력될 수 있으며, 입력된 제2 특징 정보와, 제2 컨볼루션 레이어에 포함된 제2 커널과의 컨볼루션 연산을 수행함으로써, 제3 특징 정보를 추출할 수 있으며, 제3 특징 정보에 기초하여, 출력 영상(20)이 획득될 수 있다.
도 8은 일 실시예에 따른 영상 처리 장치가 컨볼루션 뉴럴 네트워크를 이용하여, 영상을 처리하는 방법을 나타내는 도면이다.
도 8을 참조하면, 일 실시예에 따른 영상 처리 장치(100)는 m번째 컨볼루션 레이어(55, 이하, 제1 컨볼루션 레이어라 한다)로부터 추출된 제1 특징 정보(60)에 기초하여, 적어도 하나의 특성 정보를 획득할 수 있다. 적어도 하나의 특성 정보를 획득하는 방법에 대해서는 도 3에서 자세히 설명하였으므로, 구체적인 설명은 생략하기로 한다.
또한, 영상 처리 장치(100)는 적어도 하나의 특성 정보로부터 특징 정보를 추출할 수 있다. 예를 들어, 영상 처리 장치(100)는 적어도 하나의 특성 정보와 서브 커널 세트와의 컨볼루션 연산을 수행함으로써, 서브 특징 정보들을 추출할 수 있다.
특성 합성부(600)는 제1 특징 정보(fi), 적어도 하나의 특성 정보(Ci ,c), 및 서브 특징 정보(fi ,c)를 합성하여, 제2 특징 정보(fi +1)를 획득할 수 있다.
예를 들어, 특성 합성부(600)는 적어도 하나의 특성 정보(Ci ,c)와 서브 특징 정보(fi ,c)를 곱한 값을 제1 특징 정보(fi)에 더함으로써, 제2 특징 정보(fi +1)를 획득할 수 있다.
이때, 곱하는 연산은 엘리먼트별 곱셈(element-wise multiplication)으로 수행될 수 있으며, 적어도 하나의 특성 정보(Ci ,c)와 서브 특징 정보(fi ,c)를 곱하기 위해, 적어도 하나의 특성 정보의 깊이를 서브 특징 정보의 깊이 n과 동일하도록 구성할 수 있다. 또한, 더하는 연산은 엘리먼트별 덧셈(element-wise summation)으로 수행될 수 있다.
획득된 제2 특징 정보는, m+1 번째 컨볼루션 레이어(제2 컨볼루션 레이어)로 입력될 수 있으며, 입력된 제2 특징 정보와, 제2 컨볼루션 레이어에 포함된 제2 커널과의 컨볼루션 연산을 수행함으로써, 제3 특징 정보를 추출할 수 있으며, 제3 특징 정보에 기초하여, 출력 영상(20)이 획득될 수 있다.
도 9는 일 실시예에 따른 영상 처리 장치가 컨볼루션 뉴럴 네트워크를 이용하여, 영상을 처리하는 방법을 나타내는 도면이다.
도 9를 참조하면, 일 실시예에 따른 영상 처리 장치(100)는 입력 영상(10)으로부터 적어도 하나의 특성 정보(930)를 획득할 수 있다. 예를 들어, 영상 처리 장치(100)는 입력 영상(10)에 필터링을 수행하거나, 입력 영상(10)을 변환함으로써 적어도 하나의 특성 정보(930)를 획득할 수 있다. 필터링을 수행하여, 적어도 하나의 특성 정보를 획득하는 방법에 대해서는 도 3에서 자세히 설명하였으므로, 구체적인 설명은 생략하기로 한다.
또한, 일 실시예에 따른 영상 처리 장치(100)는 적어도 하나의 특성 정보(930)로부터 적어도 하나의 서브 특징 정보를 추출할 수 있다. 예를 들어, 적어도 하나의 특성 정보와 제1 서브 컨볼루션 레이어(400)에 포함되는 제1 서브 커널과의 컨볼루션 연산을 통해, 제1 서브 특징 정보를 추출할 수 있으며, 적어도 하나의 특성 정보와 제2 서브 컨볼루션 레이어(500)에 포함되는 제2 서브 커널과의 컨볼루션 연산을 통해, 제2 서브 특징 정보를 추출할 수 있다. 이에 대해서는, 도 4 및 도 5에서 자세히 설명하였으므로, 구체적인 설명은 생략하기로 한다.
영상 처리 장치(100)는, m번째 컨볼루션 레이어(제1 컨볼루션 레이어라 한다)로부터 제1 특징 정보(fi)를 추출할 수 있으며, 특성 합성부(600)는 제1 특징 정보(fi), 적어도 하나의 특성 정보(Ci ,c), 제1 서브 특징 정보(fi ,c), 제2 서브 특징 정보(f'i ,c)에 기초하여, 제2 특징 정보를 획득할 수 있다.
획득된 제2 특징 정보는, m+1 번째 컨볼루션 레이어(제2 컨볼루션 레이어)로 입력될 수 있으며, 입력된 제2 특징 정보는, 제2 컨볼루션 레이어에 포함된 커널과의 컨볼루션 연산이 수행될 수 있으며, 이에 기초하여, 출력 영상이 획득될 수 있다.
도 10은 일 실시예에 따른 영상 처리 장치의 동작방법을 나타내는 흐름도이다.
도 10을 참조하면, 일 실시예에 따른 영상 처리 장치(100)는 제1 영상과 제1 컨볼루션 레이어에 포함되는 제1 커널과의 컨볼루션 연산을 수행함으로써, 제1 특징 정보를 추출할 수 있다(S1010).
일 실시예에 따른 영상 처리 장치(100)는 n개의 컨볼루션 레이어들을 포함하는, 컨볼루션 뉴럴 네트워크를 이용하여, 입력 영상을 처리하여, 출력 영상을 획득할 수 있다. 이때, 컨볼루션 레이어들 각각에서는, 컨볼루션 레이어에 입력된 영상(특징 정보)과 컨볼루션 레이어에 포함되는 커널과의 컨볼루션 연산이 수행될 수 있으며, 컨볼루션 연산 결과 생성된 특징 정보가 출력될 수 있다. 영상 처리 장치(100)는 n개의 컨볼루션 레이어들 중 m번째 컨볼루션 레이어에 입력된 제1 영상과, m번째 컨볼루션 레이어에 포함되는 제1 커널과의 컨볼루션 연산을 수행하여, 제1 특징 정보를 추출할 수 있다. 이때, m번째 컨볼루션 레이어는, 첫 번째 컨볼루션 레이어부터 n-1번째 컨볼루션 레이어들 중 하나 이상의 컨볼루션 레이어들을 포함할 수 있으며, 이에 한정되지 않는다.
일 실시예에 따른 영상 처리 장치(100)는 제1 특징 정보에 기초하여, 적어도 하나의 특성 정보를 획득할 수 있다(S1020).
영상 처리 장치(100)는 제1 특징 정보에 필터링을 수행하거나, 제1 특징 정보를 변환함으로써, 적어도 하나의 특성 정보를 획득할 수 있다. 제1 특징 정보에 필터링을 수행하여, 적어도 하나의 특성 정보를 획득하는 방법에 대해서는, 도 3에서 자세히 설명하였으므로 동일한 구체적인 설명은 생략하기로 한다.
일 실시예에 따른 영상 처리 장치(100)는 제1 특징 정보와 적어도 하나의 특성 정보에 기초하여, 제2 특징 정보를 획득할 수 있다(S1030).
영상 처리 장치(100)는 적어도 하나의 특성 정보로부터 적어도 하나의 서브 특징 정보를 추출할 수 있다. 예를 들어, 영상 처리 장치(100)는 적어도 하나의 특성 정보와 서브 커널과의 컨볼루션 연산을 수행함으로써, 적어도 하나의 특성 정보에 대한 적어도 하나의 서브 특징 정보를 추출할 수 있다.
영상 처리 장치(100)는 제1 특징 정보, 적어도 하나의 특성 정보, 적어도 하나의 서브 특징 정보를 합성함으로써, 제2 특징 정보를 획득할 수 있으며, 이에 대해서는, 도 6에서 자세히 설명하였으므로, 구체적인 설명은 생략하기로 한다.
영상 처리 장치(100)는, 제2 특징 정보를 제1 컨볼루션 레이어의 다음 레이어인 제2 컨볼루션 레이어로 입력하여, 제2 특징 정보와 제2 컨볼루션 레이어에 포함된 제2 커널과의 컨볼루션 연산을 수행함으로써, 제3 특징 정보를 추출할 수 있다(S1040).
영상 처리 장치(100)는 제3 특징 정보에 기초하여, 출력 영상을 획득할 수 있다(S1050).
도 11은 일 실시예에 따른 영상 처리 장치의 구성을 나타내는 블록도이다.
도 11을 참조하면, 일 실시예에 따른 영상 처리 장치(100)는 프로세서(120) 및 메모리(130)를 포함할 수 있다.
일 실시예에 따른 프로세서(120)는 영상 처리 장치(100)를 전반적으로 제어할 수 있다. 일 실시예에 따른 프로세서(120)는 메모리(130)에 저장되는 하나 이상의 프로그램들을 실행할 수 있다.
일 실시예에 따른 메모리(130)는 영상 처리 장치(100)를 구동하고 제어하기 위한 다양한 데이터, 프로그램 또는 어플리케이션을 저장할 수 있다. 메모리(130)에 저장되는 프로그램은 하나 이상의 인스트럭션들을 포함할 수 있다. 메모리(130)에 저장된 프로그램(하나 이상의 인스트럭션들) 또는 어플리케이션은 프로세서(120)에 의해 실행될 수 있다.
일 실시예에 따른 프로세서(120)는 제1 영상과 제1 컨볼루션 레이어에 포함되는 제1 커널과의 컨볼루션 연산을 수행함으로써, 제1 특징 정보를 추출할 수 있다.
프로세서(120)는 제1 특징 정보에 기초하여, 적어도 하나의 특성 정보를 획득할 수 있다. 예를 들어, 프로세서(120)는 제1 특징 정보에 필터링을 수행하거나, 제1 특징 정보를 변환함으로써, 적어도 하나의 특성 정보를 추출할 수 있다. 적어도 하나의 특성 정보를 획득하는 방법에 대해서는, 도 3에서 자세히 설명하였으므로 동일한 구체적인 설명은 생략하기로 한다.
프로세서(120)는 적어도 하나의 특성 정보로부터 적어도 하나의 서브 특징 정보를 추출할 수 있다. 예를 들어, 프로세서(120)는 적어도 하나의 특성 정보와 서브 커널과의 컨볼루션 연산을 수행함으로써, 적어도 하나의 서브 특징 정보를 추출할 수 있다.
프로세서(120)는 제1 특징 정보, 적어도 하나의 특성 정보, 적어도 하나의 서브 특징 정보에 기초하여, 제2 특징 정보를 획득할 수 있다.
예를 들어, 프로세서(120)는 제1 특징 정보에 적어도 하나의 특성 정보를 더하거나 곱하여, 제2 특징 정보를 획득할 수 있다. 또는, 프로세서(120)는 제1 특징 정보에 적어도 하나의 서브 특징 정보를 더하거나 곱하여, 제2 특징 정보를 획득할 수 있다. 또는, 프로세서(120)는 제1 특징 정보와 적어도 하나의 특성 정보를 곱한 값에 적어도 하나의 특성 정보를 더하여, 제2 특징 정보를 획득할 수 있다. 또는, 프로세서(120)는 제1 특징 정보와 적어도 하나의 특성 정보를 곱한 값에 적어도 하나의 서브 특징 정보를 더하여, 제2 특징 정보를 획득할 수 있다. 또는, 프로세서(120)는 제1 특징 정보와 제1 서브 특징 정보를 곱한 값에 제2 서브 특징 정보를 더하여, 제2 특징 정보를 획득할 수 있다. 또는, 프로세서(120)는, 적어도 하나의 특성 정보와 적어도 하나의 서브 특징 정보를 곱한 값에 제1 특징 정보를 더하여, 제2 특징 정보를 획득할 수 있다. 또는, 프로세서(120)는 제1 특징 정보와 적어도 하나의 특성 정보를 곱한 값과 적어도 하나의 서브 특징 정보와 적어도 하나의 특성 정보를 곱한 값을 더하여, 제2 특징 정보를 획득할 수 있다. 또는 프로세서(120)는 제1 특징 정보와 제1 서브 특징 정보를 곱한 값과 적어도 하나의 특성 정보와 제2 서브 특징 정보를 곱한 값을 더하여, 제2 특징 정보를 획득할 수 있다. 이때, 곱하는 연산은 엘리먼트별 곱셈(element-wise multiplication)으로 수행될 수 있으며, 더하는 연산은 엘리먼트별 덧셈(element-wise summation)으로 수행될 수 있다.
프로세서(120)는 제2 특징 정보와 제1 컨볼루션 레이어의 다음 레이어인 제2 컨볼루션 레이어에 포함된 제2 커널과의 컨볼루션 연산을 수행함으로써, 제3 특징 정보를 추출할 수 있다. 프로세서(120)는 제3 특징 정보에 기초하여, 출력 영상을 획득할 수 있다.
도 12는 일 실시예에 따른 프로세서의 블록도이다.
도 12를 참조하면, 일 실시예에 따른 프로세서(120)는 제1 특징 추출부(1210), 특성 추출부(1220), 서브 특징 추출부(1230), 합성부(1240) 및 제3 특징 추출부(1250)를 포함할 수 있다.
제1 특징 추출부(1210)는, 제1 영상과 제1 컨볼루션 레이어에 포함되는 제1 커널과의 컨볼루션 연산을 수행함으로써, 제1 특징 정보를 추출할 수 있다.
특성 추출부(1220)는, 제1 특징 정보에 기초하여, 적어도 하나의 특성 정보를 획득할 수 있다. 예를 들어, 특성 추출부(1220)는 제1 특징 정보에 필터링을 수행하거나, 제1 특징 정보를 변환함으로써, 적어도 하나의 특성 정보를 추출할 수 있다. 적어도 하나의 특성 정보를 획득하는 방법에 대해서는, 도 3에서 자세히 설명하였으므로 동일한 구체적인 설명은 생략하기로 한다.
서브 특징 추출부(1230)는, 적어도 하나의 특성 정보로부터 적어도 하나의 서브 특징 정보를 추출할 수 있다. 예를 들어, 서브 특징 추출부(1230)는 적어도 하나의 특성 정보와 서브 커널과의 컨볼루션 연산을 수행함으로써, 적어도 하나의 서브 특징 정보를 추출할 수 있다.
합성부(1240)는, 제1 특징 정보, 적어도 하나의 특성 정보, 적어도 하나의 서브 특징 정보에 기초하여, 제2 특징 정보를 획득할 수 있다.
예를 들어, 합성부(1240)는 제1 특징 정보에 적어도 하나의 특성 정보를 더하거나 곱하여, 제2 특징 정보를 획득할 수 있다. 또는, 합성부(1240)는 제1 특징 정보에 적어도 하나의 서브 특징 정보를 더하거나 곱하여, 제2 특징 정보를 획득할 수 있다. 또는, 합성부(1240)는 제1 특징 정보와 적어도 하나의 특성 정보를 곱한 값에 적어도 하나의 특성 정보를 더하여, 제2 특징 정보를 획득할 수 있다. 또는, 합성부(1240)는 제1 특징 정보와 적어도 하나의 특성 정보를 곱한 값에 적어도 하나의 서브 특징 정보를 더하여, 제2 특징 정보를 획득할 수 있다. 또는, 합성부(1240)는 제1 특징 정보와 제1 서브 특징 정보를 곱한 값에 제2 서브 특징 정보를 더하여, 제2 특징 정보를 획득할 수 있다. 또는, 합성부(1240)는, 적어도 하나의 특성 정보와 적어도 하나의 서브 특징 정보를 곱한 값에 제1 특징 정보를 더하여, 제2 특징 정보를 획득할 수 있다. 또는, 합성부(1240)는 제1 특징 정보와 적어도 하나의 특성 정보를 곱한 값과 적어도 하나의 서브 특징 정보와 적어도 하나의 특성 정보를 곱한 값을 더하여, 제2 특징 정보를 획득할 수 있다. 또는, 합성부(1240)는 제1 특징 정보와 제1 서브 특징 정보를 곱한 값과 적어도 하나의 특성 정보와 제2 서브 특징 정보를 곱한 값을 더하여, 제2 특징 정보를 획득할 수 있다.이때, 곱하는 연산은 엘리먼트별 곱셈(element-wise multiplication)으로 수행될 수 있으며, 더하는 연산은 엘리먼트별 덧셈(element-wise summation)으로 수행될 수 있다.
제3 특징 추출부(1250)는 제2 특징 정보와 제1 컨볼루션 레이어의 다음 레이어인 제2 컨볼루션 레이어에 포함된 제2 커널과의 컨볼루션 연산을 수행함으로써, 제3 특징 정보를 추출할 수 있다.
한편, 도 12의 제1 특징 추출부(1210), 특성 추출부(1220), 서브 특징 추출부(1230), 합성부(1240) 및 제3 특징 추출부(1250) 중 적어도 하나는, 하드웨어 칩 형태로 제작되어 영상 처리 장치(100)에 탑재될 수 있다. 예를 들어, 제1 특징 추출부(1210), 특성 추출부(1220), 서브 특징 추출부(1230), 합성부(1240) 및 제3 특징 추출부(1250) 중 적어도 하나는 인공 지능(AI;artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 전술한 각종 영상 처리 장치에 탑재될 수 도 있다.
이 경우, 제1 특징 추출부(1210), 특성 추출부(1220), 서브 특징 추출부(1230), 합성부(1240) 및 제3 특징 추출부(1250)는 하나의 영상 처리 장치에 탑재될 수도 있으며, 또는 별개의 영상 처리 장치들에 각각 탑재될 수도 있다.
또한, 제1 특징 추출부(1210), 특성 추출부(1220), 서브 특징 추출부(1230), 합성부(1240) 및 제3 특징 추출부(1250) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 제1 특징 추출부(1210), 특성 추출부(1220), 서브 특징 추출부(1230), 합성부(1240) 및 제3 특징 추출부(1250) 중 적어도 하나가 소프트웨어 모듈(또는, 인스터력션(instruction) 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 컴퓨터로 읽을 수 있는 판독 가능한 비일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 또한, 이 경우, 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 애플리케이션에 의해 제공될 수 있다. 또는, 적어도 하나의 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 애플리케이션에 의해 제공될 수 있다.
한편, 도 11및 12에 도시된 영상 처리 장치(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 (19)

  1. 영상 처리 장치에 있어서,
    하나 이상의 인스트럭션들을 저장하는 메모리; 및
    상기 메모리에 저장된 상기 하나 이상의 인스트럭션들을 실행하는 프로세서를 포함하고,
    상기 프로세서는, 복수의 컨볼루션 레이어들을 포함하는 컨볼루션 뉴럴 네트워크를 이용하여, 상기 컨볼루션 뉴럴 네트워크에 입력된 영상을 처리함으로써, 출력 영상을 획득하고,
    상기 복수의 컨볼루션 레이어들 중 제1 컨볼루션 레이어에 입력된 제1 영상과 상기 제1 컨볼루션 레이어에 포함되는 제1 커널과의 컨볼루션 연산을 수행함으로써, 제1 특징 정보를 추출하고,
    상기 제1 특징 정보에 필터링 또는 변환을 수행하여, 상기 제1 특징 정보에 대한 주파수 특성 정보를 나타내는 제1 특성 정보 및 제2 특성 정보를 획득하며,
    상기 제1 특성 정보 및 제2 특성 정보와 제1 서브 커널 세트와의 컨볼루션 연산을 수행하여, 제1 서브 특징 정보들을 추출하고, 상기 제1 특징 정보 및 상기 제1 서브 특징 정보들에 기초하여, 제2 특징 정보를 획득하고, 상기 제2 특징 정보는 상기 제1 컨볼루션 레이어의 다음 레이어인 제2 컨볼루션 레이어로 입력되며,
    상기 제2 컨볼루션 레이어에 입력된 제2 특징 정보와, 상기 제2 컨볼루션 레이어에 포함되는 제2 커널과의 컨볼루션 연산을 수행함으로써, 제3 특징 정보를 추출하며, 상기 제3 특징 정보에 기초하여, 상기 출력 영상을 획득하는, 영상 처리 장치.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서,
    상기 프로세서는,
    상기 제1 특징 정보 및 상기 제1 서브 특징 정보들을 합성함으로써, 상기 제2 특징 정보를 획득하는, 영상 처리 장치.
  5. 삭제
  6. 제4항에 있어서,
    상기 프로세서는,
    상기 제1 특징 정보, 상기 제1 특성 정보, 상기 제2 특성 정보 및 상기 제1 서브 특징 정보들에 기초하여, 상기 제2 특징 정보를 획득하는, 영상 처리 장치.
  7. 제4항에 있어서,
    상기 프로세서는,
    상기 제1 특성 정보 및 제2 특성 정보와 제2 서브 커널 세트의 컨볼루션 연산을 수행함으로써, 제2 서브 특징 정보들을 더 추출하고,
    상기 제1 특성 정보, 상기 제2 특성 정보, 상기 제1 특징 정보, 상기 제1 서브 특징 정보들 및 상기 제2 서브 특징 정보들에 기초하여, 상기 제2 특징 정보를 획득하는, 영상 처리 장치.
  8. 삭제
  9. 제7항에 있어서,
    상기 프로세서는,
    상기 제1 특징 정보와 상기 제1 서브 특징 정보들을 곱한 값과 상기 제1 특성 정보 및 제2 특성 정보와 상기 제2 서브 특징 정보들을 곱한 값을 합함으로써, 상기 제2 특징 정보를 획득하는, 영상 처리 장치.
  10. 복수의 컨볼루션 레이어들을 포함하는 컨볼루션 뉴럴 네트워크를 이용하여 영상을 처리하는 영상 처리 장치의 동작방법에 있어서,
    상기 복수의 컨볼루션 레이어들 중 제1 컨볼루션 레이어에 입력된 제1 영상과 상기 제1 컨볼루션 레이어에 포함되는 제1 커널과의 컨볼루션 연산을 수행함으로써, 제1 특징 정보를 추출하는 단계;
    상기 제1 특징 정보에 필터링 또는 변환을 수행하여, 상기 제1 특징 정보에 대한 주파수 특성 정보를 나타내는 제1 특성 정보 및 제2 특성 정보를 획득하는 단계;
    상기 제1 특성 정보 및 제2 특성 정보와 제1 서브 커널 세트와의 컨볼루션 연산을 수행하여, 제1 서브 특징 정보들을 추출하는 단계;
    상기 제1 특징 정보 및 상기 제1 서브 특징 정보들에 기초하여, 제2 특징 정보를 획득하는 단계, 상기 제2 특징 정보는 상기 제1 컨볼루션 레이어의 다음 레이어인 제2 컨볼루션 레이어로 입력됨;
    상기 제2 컨볼루션 레이어에 입력된 제2 특징 정보와, 상기 제2 컨볼루션 레이어에 포함되는 제2 커널과의 컨볼루션 연산을 수행함으로써, 제3 특징 정보를 추출하는 단계; 및
    상기 제3 특징 정보에 기초하여, 출력 영상을 획득하는 단계를 포함하는, 영상 처리 장치의 동작방법.
  11. 삭제
  12. 삭제
  13. 제10항에 있어서,
    상기 제2 특징 정보를 획득하는 단계는,
    상기 제1 특징 정보 및 상기 제1 서브 특징 정보들을 합성함으로써, 상기 제2 특징 정보를 획득하는 단계를 포함하는, 영상 처리 장치의 동작방법.
  14. 삭제
  15. 제13항에 있어서,
    상기 제2 특징 정보를 획득하는 단계는,
    상기 제1 특징 정보, 상기 제1 특성 정보, 상기 제2 특성 정보 및 상기 제1 서브 특징 정보들에 기초하여, 상기 제2 특징 정보를 획득하는 단계를 포함하는, 영상 처리 장치의 동작방법.
  16. 제13항에 있어서,
    상기 제2 특징 정보를 획득하는 단계는,
    상기 제1 특성 정보 및 제2 특성 정보와 제2 서브 커널 세트와의 컨볼루션 연산을 수행함으로써, 제2 서브 특징 정보들을 더 추출하는 단계; 및
    상기 제1 특성 정보, 상기 제2 특성 정보, 상기 제1 특징 정보, 상기 제1 서브 특징 정보들 및 상기 제2 서브 특징 정보들에 기초하여, 상기 제2 특징 정보를 획득하는 단계를 포함하는, 영상 처리 장치의 동작방법.
  17. 삭제
  18. 제16항에 있어서,
    상기 제2 특징 정보를 획득하는 단계는,
    상기 제1 특징 정보와 상기 제1 서브 특징 정보들을 곱한 값과 상기 제1 특성 정보 및 제2 특성 정보와 상기 제2 서브 특징 정보들을 곱한 값을 합함으로써, 상기 제2 특징 정보를 획득하는 단계를 포함하는, 영상 처리 장치의 동작방법.
  19. 제10항의 방법을 수행하도록 하는 프로그램이 저장된 하나 이상의 컴퓨터로 읽을 수 있는 기록매체.
KR1020190057603A 2019-05-16 2019-05-16 영상 처리 장치 및 그 동작방법 KR102420104B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020190057603A KR102420104B1 (ko) 2019-05-16 2019-05-16 영상 처리 장치 및 그 동작방법
CN202080013383.XA CN113424203A (zh) 2019-05-16 2020-04-23 图像处理设备及其操作方法
EP20805779.4A EP3871158A4 (en) 2019-05-16 2020-04-23 Image processing apparatus and operating method of the same
PCT/KR2020/005358 WO2020231035A1 (en) 2019-05-16 2020-04-23 Image processing apparatus and operating method of the same
US16/861,428 US11380081B2 (en) 2019-05-16 2020-04-29 Image processing apparatus and operating method of the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190057603A KR102420104B1 (ko) 2019-05-16 2019-05-16 영상 처리 장치 및 그 동작방법

Publications (2)

Publication Number Publication Date
KR20200132304A KR20200132304A (ko) 2020-11-25
KR102420104B1 true KR102420104B1 (ko) 2022-07-12

Family

ID=73228666

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190057603A KR102420104B1 (ko) 2019-05-16 2019-05-16 영상 처리 장치 및 그 동작방법

Country Status (5)

Country Link
US (1) US11380081B2 (ko)
EP (1) EP3871158A4 (ko)
KR (1) KR102420104B1 (ko)
CN (1) CN113424203A (ko)
WO (1) WO2020231035A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102604016B1 (ko) * 2018-10-24 2023-11-22 삼성전자주식회사 전자 장치 및 이의 제어방법
CN111241985B (zh) * 2020-01-08 2022-09-09 腾讯科技(深圳)有限公司 一种视频内容识别方法、装置、存储介质、以及电子设备
WO2023219277A1 (ko) * 2022-05-09 2023-11-16 삼성전자 주식회사 영상 처리 장치 및 그 동작 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170206431A1 (en) * 2016-01-20 2017-07-20 Microsoft Technology Licensing, Llc Object detection and classification in images

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101287098B1 (ko) 2011-04-28 2013-07-16 서강대학교산학협력단 주파수 대역별 에너지를 이용하여 주파수 영상을 합성하는 방법 및 장치
US10650508B2 (en) * 2014-12-03 2020-05-12 Kla-Tencor Corporation Automatic defect classification without sampling and feature selection
US11099918B2 (en) * 2015-05-11 2021-08-24 Xilinx, Inc. Accelerating algorithms and applications on FPGAs
US9741107B2 (en) * 2015-06-05 2017-08-22 Sony Corporation Full reference image quality assessment based on convolutional neural network
US10319076B2 (en) * 2016-06-16 2019-06-11 Facebook, Inc. Producing higher-quality samples of natural images
US10185891B1 (en) * 2016-07-08 2019-01-22 Gopro, Inc. Systems and methods for compact convolutional neural networks
US10373312B2 (en) * 2016-11-06 2019-08-06 International Business Machines Corporation Automated skin lesion segmentation using deep side layers
US10360494B2 (en) * 2016-11-30 2019-07-23 Altumview Systems Inc. Convolutional neural network (CNN) system based on resolution-limited small-scale CNN modules
KR20180073314A (ko) * 2016-12-22 2018-07-02 삼성전자주식회사 컨볼루션 신경망 시스템 및 그것의 동작 방법
US10147019B2 (en) * 2017-03-20 2018-12-04 Sap Se Small object detection
CN109426782B (zh) 2017-08-29 2023-09-19 北京三星通信技术研究有限公司 对象检测方法和用于对象检测的神经网络***
US10083375B1 (en) * 2017-10-13 2018-09-25 StradVision, Inc. Method and device for performing activation and convolution operation at the same time and learning method and learning device for the same
KR102174777B1 (ko) * 2018-01-23 2020-11-06 주식회사 날비컴퍼니 이미지의 품질 향상을 위하여 이미지를 처리하는 방법 및 장치
US10282864B1 (en) * 2018-09-17 2019-05-07 StradVision, Inc. Method and device for encoding image and testing method and testing device using the same
KR20200140096A (ko) * 2019-06-05 2020-12-15 삼성전자주식회사 영상의 ai 부호화 및 ai 복호화 방법, 및 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170206431A1 (en) * 2016-01-20 2017-07-20 Microsoft Technology Licensing, Llc Object detection and classification in images

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Jongchan Park et al., "BAM: Bottleneck Attention Module," arXiv:1807.06514v2 [cs.CV] 18 Jul 2018 (2018.06.18.)*

Also Published As

Publication number Publication date
EP3871158A1 (en) 2021-09-01
EP3871158A4 (en) 2021-12-29
US11380081B2 (en) 2022-07-05
US20200364486A1 (en) 2020-11-19
WO2020231035A1 (en) 2020-11-19
CN113424203A (zh) 2021-09-21
KR20200132304A (ko) 2020-11-25

Similar Documents

Publication Publication Date Title
KR102068576B1 (ko) 합성곱 신경망 기반 이미지 처리 시스템 및 방법
Chakrabarti A neural approach to blind motion deblurring
KR102420104B1 (ko) 영상 처리 장치 및 그 동작방법
US11921822B2 (en) Image processing device for improving details of an image, and operation method of the same
CN107679572B (zh) 一种图像判别方法、存储设备及移动终端
KR102432254B1 (ko) 전자 장치가 뉴럴 네트워크 내의 소정 레이어에서 컨볼루션 연산을 수행하는 방법 및 그 방법을 수행하는 전자 장치
US11954755B2 (en) Image processing device and operation method thereof
US20210271938A1 (en) Normalization method for machine-learning and apparatus thereof
CN112689849A (zh) 图像处理装置及其操作方法
EP4083874A1 (en) Image processing device and operating method therefor
Kumar et al. Learning based restoration of Gaussian blurred images using weighted geometric moments and cascaded digital filters
KR102235784B1 (ko) 행동 인식을 위한 시공간의 평활화 피처를 정규화하는 방법 및 시스템
US11347968B2 (en) Image enhancement for realism
Medeiros et al. Dynamic multifoveated structure for real-time vision tasks in robotic systems: A tool for removing redundancy in multifoveated image processing
US20230071417A1 (en) Image processing device and operation method thereof
EP4276744A1 (en) Image processing apparatus and operating method therefor
US20220284555A1 (en) Image processing apparatus and operation method thereof
CN117974833B (zh) 图像生成方法、装置、设备、可读存储介质及程序产品
EP4187482A1 (en) Image processing device and operating method therefor
KR20220125127A (ko) 영상 처리 장치 및 그 동작방법
KR102266903B1 (ko) 영상 처리 장치 및 그 동작방법
KR20230073871A (ko) 영상 처리 장치 및 그 동작 방법
CN116997914A (zh) 图像处理装置及其操作方法
KR20210141304A (ko) 영상 처리 장치 및 그 동작방법
KR20220125124A (ko) 영상 처리 장치 및 그 동작방법

Legal Events

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