KR20210092138A - 심층 신경망을 이용한 다중 프레임 이미지 및 비디오 처리를 위한 다중 프레임 상황별 어텐션을 위한 시스템 및 방법 - Google Patents

심층 신경망을 이용한 다중 프레임 이미지 및 비디오 처리를 위한 다중 프레임 상황별 어텐션을 위한 시스템 및 방법 Download PDF

Info

Publication number
KR20210092138A
KR20210092138A KR1020210002269A KR20210002269A KR20210092138A KR 20210092138 A KR20210092138 A KR 20210092138A KR 1020210002269 A KR1020210002269 A KR 1020210002269A KR 20210002269 A KR20210002269 A KR 20210002269A KR 20210092138 A KR20210092138 A KR 20210092138A
Authority
KR
South Korea
Prior art keywords
frame
context
patch
electronic device
attention
Prior art date
Application number
KR1020210002269A
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 삼성전자주식회사
Publication of KR20210092138A publication Critical patent/KR20210092138A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/77Retouching; Inpainting; Scratch removal
    • G06T5/005
    • G06K9/00711
    • 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
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/60Image enhancement or restoration using machine learning, e.g. neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • 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/10016Video; Image sequence
    • 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]
    • 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/20172Image enhancement details
    • G06T2207/20182Noise reduction or smoothing in the temporal domain; Spatio-temporal filtering

Landscapes

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

Abstract

다중 프레임 상황별 어텐션을 위한 방법 및 시스템이 제공된다. 상기 방법은 처리할 기준 프레임을 획득하고, 기준 프레임과 관련하여 컨텍스트 프레임을 식별하고, 획득한 기준 프레임을 컨텍스트 프레임을 기반으로 처리하여 정제된 기준 프레임을 생성하는 것을 포함한다.

Description

심층 신경망을 이용한 다중 프레임 이미지 및 비디오 처리를 위한 다중 프레임 상황별 어텐션을 위한 시스템 및 방법{System and method for multi-frame contextual attention for multi-frame image and video processing using deep neural networks}
본 개시 내용은 일반적으로 다중 프레임 이미지에 대한 다중 프레임 상황별 어텐션과 관련이 있다. 특히, 본 개시는 인페인팅 및 비디오 인페이팅을 이미징 하기 위한 시스템 및 방법에 관한 것이다.
이미지 인페인팅은 이미지에서 선택된 영역을 제거하고, 이미지의 나머지와 혼합되도록 선택된 영역의 구멍을 채우는 것을 포함한다. 비디오 인페이팅은 비디오 프레임 시퀀스에 대한 절차로, 특정 물체가 후속 프레임에서 제거된 다음, 후속 프레임에서 특정 물체가 제거된 구멍이 채워져 이미지의 나머지 부분과 혼합된다.
본 발명이 해결하고자 하는 과제는 이미지 딥러닝 기반의 이미지(비디오) 인페인팅 방법을 사용하여 손상된 이미지의 이미지를 복원하는 시스템 및 방법을 제공하는 것이다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
상기 과제를 해결하기 위한 일 실시예에 따른, 다중 프레임 상황별 어텐션을 위한 방법은 처리할 기준 프레임을 획득하고, 상기 기준 프레임과 관련하여 컨텍스트 프레임을 식별하고, 상기 획득한 기준 프레임을 상기 컨텍스트 프레임을 기반으로 처리하여 정제된 기준 프레임을 생성하는 것을 포함한다.
상기 과제를 해결하기 위한 다른 실시예에 따른, 다중 프레임 상황별 어텐션을 위한 시스템은 메모리 및 프로세서를 포함하되, 상기 프로세서는, 처리할 기준 프레임을 획득하고, 상기 기준 프레임과 관련하여 컨텍스트 프레임을 식별하고, 상기 획득한 기준 프레임을 상기 컨텍스트 프레임을 기반으로 처리하여 정제된 기준 프레임을 생성한다.
본 개시 내용의 특정 실시 형태의 다른 측면, 특징 및 이점은 첨부된 도면과 함께 다음의 상세한 설명으로부터 보다 명백해질 것이다.
도 1은 일 실시예에 따른 다중 프레임 상황별 어텐션 모듈의 다이어그램을 도시한 도면이다.
도 2는 일 실시예에 따른 다중 프레임 상황별 어텐션 모듈을 사용하는 다중 프레임 인페인팅을 사용하는 심층 컨볼루션 신경망의 다이어그램을 도시한 도면이다.
도 3은 일 실시예에 따른 현재 프레임의 대략적인 예측을 할 때 다중 프레임의 상황 정보의 다이어그램을 도시한 도면이다.
도 4는 일 실시예에 따른 재귀적으로 수행되는 다중 프레임 상황별 어텐션 다이어그램을 도시한 도면이다.
도 5는 일 실시예에 따른 네트워크 환경에서 전자 장치의 블록도를 도시한 도면이다.
이하, 첨부된 도면을 참조하여 본 개시의 실시예를 상세히 설명한다. 동일한 구성요소는 서로 다른 도면에 도시되어 있지만 동일한 도면 부호로 지정된 것임을 유의해야한다. 이하의 설명에서, 상세한 구성 및 구성요소와 같은 특정 세부 사항은 단지 본 개시의 실시예의 전반적인 이해를 돕기 위해 제공된다. 따라서, 본 개시의 범위를 벗어나지 않는 범위내에서 본 명세서에 설명된 실시예에 대한 다양한 변경 및 수정이 가능함은 당업자에게 자명하다. 또한, 잘 알려진 기능 및 구성에 대한 설명은 명확성과 간결성을 위해 생략한다. 아래에서 설명하는 용어는 본 개시의 기능을 고려하여 정의된 용어로, 사용자, 사용자의 의도 또는 관습에 따라 다를 수 있다. 따라서, 용어의 정의는 본 명세서 전반에 걸친 내용을 토대로 결정되어야 한다.
본 개시의 다양한 변형 및 다양한 실시예를 가질 수 있으며, 그 중 실시에는 첨부된 도면을 참조하여 상세하게 설명된다. 그러나, 본 개시는 실시예에 한정되지 않고, 본 개시의 범위 내에서 모든 수정, 등가물 및 대안을 포함함을 이해해야 한다.
제1, 제2 등의 서수를 포함하는 용어는 다양한 요소를 설명하기 위해 사용될 수 있지만, 구조적 요소는 용어에 의해 제한되지 않는다. 이 용어는 한 요소를 다른 요소와 구별하는 데만 사용된다. 예를 들어, 본 개시의 내용의 범위를 벗어나지 않고, 제1 구조적 요소는 제2 구조적 요소로 지칭될 수 있다. 유사하게, 제2 구조적 요소는 또한 제1 구조적 요소로 지칭될 수 있다. 본 명세서에서 사용되는 용어 "및/또는"은 하나 이상의 관련 항목의 임의의 및 모든 조합을 포함한다.
본 명세서에서 사용되는 용어는 본 개시의 다양한 실시예를 설명하기 위해 사용되는 것일 뿐 본 개시의 제한하려는 의도는 아니다. 단수형은 문맥에서 달리 명시하지 않는 한 복수형을 포함한다. 본 명세서에서 "포함한다" 또는 "갖는다"라는 용어는 특징, 숫자, 단계, 동작, 구조적 요소, 부분 또는 이들의 조합을 의미함을 이해해야 한다. 하나 이상의 다른 기능, 숫자, 단계, 작업, 구조적 요소, 부품 또는 이들의 조합이 추가된 존재 또는 가능성을 배제하지 않는다.
다르게 정의되지 않는 한, 본 명세서에서 사용되는 모든 용어는 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 이해되는 것과 동일한 의미를 갖는다. 일반적으로 사용되는 사전에서 정의된 용어와 같은 용어는 해당 분야의 문맥상 의미와 동일한 의미로 해석되어야 하며, 본 명세서에서 명확하게 정의되지 않는 한 이상적이거나 지나치게 형식적은 의미로 해석되어서는 안된다.
일 실시예에 따른 전자 장치는 다양한 유형의 전자 장치 중 하나일 수 있다. 전자 장치는 예를 들어, 휴대용 통신 장치(예, 스마트 폰), 컴퓨터, 휴대용 멀티미디어 장치, 휴대용 의료 장치, 카메라, 웨어러블 장치 또는 가전 제품을 포함할 수 있다. 본 개시의 일 실시예에 따르면, 전자 장치는 상술한 것에 한정되지 않는다.
본 명세서에서 사용되는 용어는 본 개시를 한정하기 위한 것이 아니라 해당 실시 예에 대한 다양한 변경, 균등물 또는 대체물을 포함하기 위한 것이다. 첨부된 도면의 설명과 관련하여 유사하거나 관련된 요소를 지칭하기 위해 유사한 참조 번호를 사용할 수 있다. 항목에 해당하는 명사의 단수 형태는 관련 문맥이 달리 명시하지 않은 한 하나 이상의 것을 포함할 수 있다. 본 명세서에서 사용된 바와 같이 "A 또는 B", "A와 B 중 하나 이상", "A 또는 B 중 하나 이상", "A, B 또는 C", "A, B, C 중 하나 이상", "A, B 또는 C 중 하나 이상"과 같이 각각의 문구는 해당 문구 중 하나에 함께 열거된 항목의 가능한 모든 조합을 포함할 수 있다. 본 명세서에서 사용되는 바와 같이 "제1", "제2", "첫 번째", "두 번째"와 같은 용어는 해당 구성요소를 다른 구성 요소와 구별하기 위해 사용될 수는 있지만 다른 측면에서 구성 요소를 제한하려는 의도는 없다(예, 중요도 또는 순서). 요소(예를 들어, 첫 번째 요소)가 "작동 가능하게" 또는 "통신적으로"라는 용어의 유무에 관계없이 "연결된", "결합된", "연관된" 또는 "접속된"으로 지칭되는 경우 다른 요소(예를 들어, 두 번째 요소)에 이는 다른 요소와 직접(예, 유선), 무선으로 또는 제3 요소를 통해 결합될 수 있음을 나타낸다.
본 명세서에서 사용되는 바와 같이, "모듈"이라는 용어는 하드웨어, 소프트웨어 또는 펌웨어로 구현된 단위를 포함할 수 있으며, 예를 들어 "로직", "로직 블록", "부분" 및 "회로"와 같은 다른 용어와 상호 교환적으로 사용될 수 있다. 모듈은 하나 이상의 기능을 수행하도록 구성된 단일 통합 구성 요소 또는 최소 단위 또는 일부일 수도 있다. 예를 들어, 일 실시예에 따르면, 모듈은 주문형 집적회로(ASIC: application specific integrated circuit)의 형태로 구현될 수 있다.
본 시스템 및 방법은 인페인팅 특징들 사이의 시간적 일관성을 제한하면서 비디오를 인페인팅하기 위한 아키텍처를 제공한다. 본 시스템 및 방법은 신경망 아키텍처를 활용하여 인접 프레임에서 현재 프레임에서 누락된 구멍에 가장 잘 맞는 패치를 직접 검색한 다음 가장 적합한 패치의 기능을 사용하여 구멍을 채운다. 각각의 프레임의 구멍은 인접한 프레임을 보고 그로부터 정보를 빌려서 채워지기 때문에, 본 시스템 및 방법은 시간적 일관성을 가진 인페이팅 비디오를 제공한다.
본 시스템 및 방법은 다중 프레임 이미지 향상에 활용될 수 있다. 예를 들어, 다중 프레임 잡음 제거에서 잡음이 포아송 잡음이나 가우스 잡음 또는 저조도 아티팩트(artifacts), 얼룩 또는 고스팅 효과와 같은 기타 원하지 않는 아티팩트일 수 있는 잡음 제거 프레임을 제공하는 것이 바람직하다. 또한, 다중 프레임 초해상도에서는 주변 프레임의 정보를 이용하여 더 작은 해상도의 프레임에서 더 큰 해상도 프레임을 얻는다. 위 실시예(즉, 인페인팅, 향상 및 초 해상도)에서, 다중 프레임 상황별 어텐션 모듈은 타겟 프레임을 향상시키기 위해 인접 프레임으로부터 가장 적절한 패치를 찾을 수 있다.
본 시스템 및 방법은 타겟 프레임에 구멍을 채울 때 인접 프레임으로부터의 정보를 활용하고, 현재 프레임에서 가려진 패치에 대한 정보를 얻기 위해 인접 프레임에서 가려지지 않은 패치를 추출하고, 원하지 않는 물체가 제거되도록 원하지 않는 전경 물체에 의해 가려질 수 있고, 추가적인 사후 처리 없이 시간적 일관성이 더 높은 심미적으로 깨끗한 합성된 비디오를 생성한다.
다중 프레임 처리의 예로서 비디오 인페인팅의 애플리케이션이 고려되고, 여기서 다중 프레임에서 단일 프레임 인페인팅으로의 순차적인 슬라이딩 윈도우에 의해 수행될 수 있다. 반면에, 이미지 인페인팅은 단일 프레임 처리의 한 예이다. 이미지 인페인팅은 이미지의 공간 구멍(누락된 픽셀 집합)을 사실적인 값으로 대체하는 작업이다. 주요 소비자 애플리케이션은 워터마크 제거 및 물체 제거이다. 또 다른 애플리케이션은 사진이나 스냅샷을 찍을 때 이미지에 나타나는 원하지 않는 물체를 제거하는 것이다. 비디오 인페인팅은 사실적이거나 그럴듯한 콘텐츠로 비디오의 공간-시간적 구멍을 채우는 것을 목표로 하는 다중 프레임 기술의 한 예이다. 비디오 인페인팅은 이미지 인페이팅에 비해, 추가적인 시간 차원으로 한 프레임에 채워진 정보가 인접한 프레임에 채워진 정보와 일치해야 하기 때문에 어렵다. 이것은 프레임 사이에 상당한 움직임이 있을 때 특히 어렵다.
이미지 인페인팅은 동일한 이미지에서 가려지지 않은 영역(이하, 배경이라 함)의 특징을 빌려서 가려진 영역(이하, 전경이라 함)의 특징 패치를 재구성한다. 그러나, 가려진 경우, 제거하려는 전경 물체가 한 프레임에서 특정 영역을 가릴 수 있지만, 반드시 다음 프레임에서는 가려지지 않는다. 다음 프레임을 미리 보고, 이전 프레임을 뒤로 보면, 현재 프레임의 구멍(원하지 않는 물체를 제거한 후)에 가장 잘 맞는 영역을 찾을 수 있다.
본 시스템 및 방법에서, 배경 패치는 도색된 입력 이미지에서 가져올 필요가 없다(예를 들어, 기준 이미지로 사용되는 스톡 이미지와 같이, 원하는 도색 영역의 내용과 유사한 내용을 가진 "컨텍스트" 이미지에서 가져올 수 있다). 예를 들어, 비디오 시퀀스("기준" 프레임)에서 원하는 프레임을 도색하기 위해, 가려지지 않은 패치는 바로 앞과 뒤의 프레임에서 추출될 수 있다. 예를 들어, 전경 물체가 근처 프레임에서 볼 수 있는 장면의 일부를 가리는 경우에 유용할 수 있다.
이를 위해, 본 시스템 및 방법은 현재 기준 프레임뿐만 아니라, 다중 컨텍스트 프레임을 사용하여 특징을 재구성하는 다중 프레임 상황별 어텐션 모듈을 제공한다. 이 모듈은 널리 사용되는 많은 심층 컨볼루션 신경망에 삽입될 수 있다. 모델(예, MF-Cxtattn)의 구성요소는 기준 프레임과 컨텍스트 프레임 모두에서 배경 패치를 추출하는 다중 프레임 상황별 어텐션 모듈이다.
현재 프레임에 대응하는 특징 맵과 네트워크의 특정 깊이에서 인접 프레임에 대응하는 특징 맵이 선택된다. 특징 맵에서 마스킹 되지 않는 영역이 선택된다. 마스킹 되지 않은 영역은 해당 프레임에서 제거(마스킹)하지 않는 해당 입력 프레임의 영역에서 파생된 특징 맵의 영역으로 정의된다. 그 후, 여러 프레임에 해당하는 특징 맵의 마스킹 되지 않은 영역은 균일한 격자를 이용하여 고정된 크기의 패치로 분할된다. 예를 들어, 패치 크기는 3 x 3일 수 있다. 특징 맵이 폭 x 높이 x 깊이 차원을 갖는 경우, 패치의 크기는 3 x 3 x 깊이가 전체 특징을 3차원 필터로 처리하고, 3차원 필터를 한번에 빌릴 수 있다.
일 실시예에서, 특징의 각각 2차원 슬라이스는 독립적으로 처리되고, 특징의 2D 패치만 한번 빌릴 수 있다. 이 경우, 패치의 크기는 3 x 3 또는 M x N일 수 있다. M x N x 깊이 패치의 일부가 마스킹 된 영역에 해당하는 경우, 처리 중에 무시되는 유효하지 않은 항목(예, 알파 또는 0)이 채워질 수 있다. 그 다음, 모든 격자 패치는 4차원 배열(예, M x N x 깊이 x 패치의 수)로 함께 쌓인다. 이 배열은 M x N x 깊이 x패치의 4차원 필터로 처리된다.
이 필터는 채워지거나 강화될 필요가 있는 타겟 프레임에 대응하는 3차원 특징들 내의 영역들의 대략적인 추정치(또는 잡음 제거 또는 이미지 강화 또는 이미지 초고해상도의 경우 잡음 추정치)와 뒤얽힌다.
각각의 M x N x 깊이 성분 필터는 타겟 프레임에서 원하는 처리 영역에 대응하는 또 다른 M x N x 깊이 특징에 의해 요소별로 곱해진다. 그런 다음, 이 요소별 값의 합계를 사용하여 컨볼루션 출력을 생성한다. 이 작업은 원하는 각 패치에서 반복되고, 원하는 스트라이드(stride)로 이미지를 가로질러 슬라이딩 할 수 있다.
스트라이드 1의 경우, 가능한 모든 위치가 커버된다. 각 위치의 컨볼루션 출력은 SoftMax와 같은 비선형 함수에 의해 정규화되어 위치에서 어텐션 스코어(attention score)를 제공한다. 따라서, 어텐션을 처리하고자 하는 영역에 있는 타겟 프레임의 심층 특징 맵에 있는 현재 패치와 현재 프레임(원하는 처리 패치를 둘러싸고 있으며 가려지지 않음)뿐만 아니라, 인접 프레임의 심층 특징 맵에서 가져온 패치 사이의 상관 관계를 나타낸다.
심층 특징 맵의 타겟 처리 패치는 M x N x 깊이 패치의 가중치 합인 다른 패치 합(어텐션 스코어_{패치, 프레임}*{패치* 프레임})으로 대체되고, 가중치는 어텐션 스코어에 의해 결정된다.
대체적으로, 합계는 상부 패치로만 제한할 수 있다. 시스템은 어텐션에 따라 패치를 분류할 수 있다. 시스템은 어텐션 스코어가 가장 높은 상위 T 패치를 선택할 수 있다. T_합계가 상부_T 패치로 제한된 합계인 경우, 심층 특징 맵의 패치는 T_합계(어텐션 스코어_{패치, 프레임}*{패치, 프레임})로 대체된다.
이 모듈은 심층 컨볼루션 네트워크의 임의의 원하는 레이어(layer)에 삽입되거나, 네트워크의 다중 심층 레이어에서 시간적 일관성을 강화하기 위해 다중 레이어에 삽입될 수 있다.
네트워크는 끝에서 끝까지 훈련된다. 네트워크는 PSNR(peak signal to noise ratio) 또는 SSIM(structural similarity)을 실측(ground truth)에 최적화하거나, GANs(Wasserstein generative adversarial network) 훈련을 사용하여 재구성 및 생성 적대 손실의 조합을 최적화하는 것과 같이, 재구성 손실로만 훈련할 수 있다. 네트워크는 생성된 (가짜) 분포와 실제 분포 사이의 와서스테인(Wasserstein)-1 거리를 최소화한다. 대체적으로 최소-최대 GAN 훈련을 사용하여 훈련할 수 있다. 재구성 손실과 최소-최대 GAN 적대적 손실의 조합이 사용될 수 있는데, 여기서 판별기는 (0,1)의 스칼라(scalar)로 출력을 제한하는 스펙트럼 정규화 레이어를 사용했다.
도 1은 일 실시예에 따른 다중 프레임 상황별 어텐션 모듈의 다이어그램을 도시한 도면이다. 모듈(100)은 전경(104) 및 배경(106)을 갖는 기준 프레임(102) 뿐만 아니라, 제1 컨텍스트 프레임(108) 및 제2 컨텍스트 프레임(110)을 포함한다. 제1 및 제2 컨텍스트 프레임(108, 110)은 기준 프레임(102)에 인접한 프레임으로 간주될 수 있다. 인접한 컨텍스트 프레임(108, 110)으로부터 유도된 심층 특징은 유효 영역으로부터 추출되고, 배경 패치(112)에 의해 도시된 바와 같이 균일한 격자에 의해 균일한 3D 블록으로 분할된다. 각 3D 블록은 3D 필터를 만든다. 모든 3D 필터는 기준 프레임(102)에서 관심 타겟 영역(104)과 뒤얽힌 4D 필터를 만들기 위해서 필터 생성기(114)에 적층된다. 각각의 필터의 어텐션 스코어는 어텐션 스코어 계산기(116)에서 관심 타겟 영역의 각각 유효한 위치에서 계산된다. 원하는 타겟 영역의 각 위치에 있는 패치는 재구성된 패치(118)를 생성하기 위해 각 위치에서 3D 필터 및 이들의 어텐션 스코어의 함수(예를 들어, 가중 합계)로 대체된다.
도 2는 일 실시예에 따른 다중 프레임 상황별 어텐션 모듈을 사용하는 다중 프레임 인페인팅을 사용하는 심층 컨볼루션 신경망의 다이어그램을 도시한 도면이다. 도 2는 일부 컨볼루션 필터링을 사용하여 구멍을 채우기 위해 제1 대략적인 예측을 실행하고, 다중 프레임 상황별 어텐션은 현재 프레임 및 인접 컨텍스트 프레임의 심층 특징을 사용하여 적용되고, 세분화하는 디코더에 제공되기 전에 필터링 된 버전의 대략적인 예측과 연결되고, 필터링 된 버전의 대략적인 예측과 제1 대략적인 예측을 결합한다.
도 2를 참조하면, 가려진 기준 프레임(200)이 획득된다. 기준 프레임은 가려지는 물체(202)(예를 들어, 도시된 실시예에서 곰)를 포함한다. 시스템은 종래의 필터링에 기초하여 물체(202)로부터 구멍을 채우기 위해 대략적인 예측(204)을 수행한다. 시스템은 다중 프레임 상황별 어텐션 스트림(210)을 통해 가려진 컨텍스트(인접) 프레임(206, 208)으로 대략적인 예측(204)를 처리한다. 시스템은 또한 확장된 컨볼루션 스트림(212)을 통해 대략적인 예측(204)을 처리한다. 시스템은 정제된 기준 프레임(216)을 생성하기 위해 다중 프레임 상황별 어텐션 스트림(210) 및 확장된 컨볼루션 스트림(212)의 출력을 연결 함수(214)로 처리한다.
인접 컨텍스트 프레임의 선택은 다른 비디오에 대해 다르게 최적화될 수 있는 파라미터이다. 시스템은 비디오에서 움직임의 양을 감지할 수 있다. 많은 움직임이 감지되고, 프레임 속도에 비해 움직임이 빠른 비디오는 먼 프레임에서 장면이 많이 변할 수 있으므로, 왼쪽 및 오른쪽 프레임(즉, 3프레임)만 고려할 수 있다. 결과적으로, 멀리 떨어진 프레임에서 정보를 빌리면 성능이 저하될 수 있다.
가려진 영역이 지워지는데 더 많은 프레임이 필요하거나, 장면 변경이 상대적으로 낮은 경우에는, 왼쪽과 오른쪽 두 개 이상의 프레임에서 정보를 빌리는 것이 유용할 수 있다. 예를 들어, 5 프레임 또는 7 프레임의 윈도우에서 상황별 어텐션을 기울일 수 있다.
다른 실시예는, 상이한 네트워크 깊이에 다중 프레임 상황별 어텐션 레이어를 삽입할 수 있다. 더 얕은 특징에 대해 업스트림 작업으로 이동하거나, 더 깊은 특징에 대해 작업하기 위해 다운스트림으로 이동할 수 있다. 대체적으로, 하나 이상의 다중 프레임 상황별 어텐션 레이어가 있을 수 있다.
도 3은 일 실시예에 따른 현재 프레임의 대략적인 예측을 할 때 다중 프레임의 상황 정보의 다이어그램을 도시한 도면이다. 도 3의 다중 프레임에서 이미지 인페인팅 컨텍스트에서, 시스템은 유효하거나 마스킹 되지 않은 인접 원시 프레임과 원시 프레임의 마스킹 되지 않은 패치에서만 심층 특징 패치 추출을 제한한다.
시스템은 이미지를 가리는 제거된 물체(303)와 가려진 컨텍스트 프레임(304, 306)을 갖는 가려진 기준 프레임(302)을 획득한다. 시스템은 가려진 기준 프레임(302)과 가려진 컨텍스트 프레임(304, 306)을 처리하여, 종래의 필터링을 통해 대략적인 예측(308)을 생성한다. 그러면, 도 2에 도시된 바와 유사하게, 시스템은 다중 프레임 상황별 어텐션 스트림(310)을 통해 대략적인 예측으로 가려진 컨텍스트 프레임(304, 306)을 처리한다. 시스템은 확장된 컨볼루션 스트림(312)을 통해 대략적인 예측(308)을 처리한다. 시스템은 정제된 기준 프레임(316)을 생성하기 위해 연결 함수(314)로 다중 프레임 상황별 어텐션 스트림(310)과 확장된 컨볼루션 스트림(312)의 출력을 처리한다.
도 4는 일 실시예에 따른 재귀적으로 수행되는 다중 프레임 상황별 어텐션 다이어그램을 도시한 도면이다. 다중 프레임 상황별 어텐션은 순차적 처리 방식을 사용하여, 대략적으로 처리된 프레임 또는 이미 처리된 프레임에서 정보를 가져온다. 시간적 상황 정보를 기반으로 인접 프레임을 더 잘 예측하는 것은 항상 현재 타겟 프레임의 예측이 향상할 수 있다. 현재 프레임의 예측은 시간 상황별 어텐션으로 수행된 인접 프레임의 예측을 기반으로 하기 때문에, 모든 프레임을 처리한 후, 대략적인 추정을 이전 시간 상황별 어텐션 단계에서 추정한 추정값으로 간주하여, 프로세스를 다시 반복할 수 있다.
도 4에서, 시스템은 가려진 기준 프레임(402)과 가려진 컨텍스트 프레임(404, 406)을 획득하고, 각각은 제거된 물체(403)을 갖는다. 시스템은 기준 프레임(402)의 대략적인 예측(408)을 생성하기 위해 종래의 필터링을 통해 가려진 기준 프레임(402)을 처리한다. 시스템은 가려진 컨텍스트 프레임(404, 406)을 처리하고, 각각의 컨텍스트 프레임(404, 406)의 대략적인 예측(410, 412)을 생성한다. 시스템은 다중 프레임 상황별 스트림(414)를 통해 대략적인 예측(408, 410, 412)을 처리하고, 확장된 컨볼루션 스트림(416)을 통해 대략적인 예측(408)을 처리한다. 시스템은 연결 함수(418)를 통해 다중 프레임 상황별 스트림(414)과 확장된 컨볼루션 스트림(416)의 출력을 처리하여 정제된 기준 프레임(420)을 생성한다.
또 다른 해결책은 슬라이딩 윈도우 방식으로 비디오 시퀀스의 순차적인 처리를 이용하는 것이다. 처리는 슬라이딩 윈도우 방식으로 이루어지므로, 타겟 프레임 t에 대한 처리를 할 때, 타겟 프레임 t-1은 이미 처리되어 있을 수 있다. 예를 들어, 프레임 t-1의 모든 가려진 영역은 프레임 t-1을 처리하여 이미 채워져 있을 수 있으므로, 프레임 t-1에서 빌릴 수 있는 유효한 패치의 수를 늘릴 수 있다. 유사하게, 프레임 잡음 제거 케이스의 경우에, 프레임 t-1이 이미 잡음이 제거된 경우, 시스템은 프레임 t-1에서 더 나은 잡음 제거 컨텍스트 패치를 빌려 프레임 t에 대한 더 나은 처리를 얻을 수 있다.
따라서, 또 다른 실시예는 완전히 처리된 이전 프레임의 특징에 있는 모든 패치로부터 컨텍스트 필터를 구성하는 것이다. 그러나 현재 및 미래의 원시 프레임 특징에서 유효한 패치만 사용할 수 있다. 이전 프레임이 이미 처리되어 있으므로(예, 도색되거나 제거된) 현재 프레임에 대한 처리는 가장 일치하는 패치를 찾고, 원시 이전 프레임이 아닌 처리된 이전 프레임에서 해당하는 어텐션 스코어를 부여한다. 따라서, 타겟 처리된 프레임은 이전에 처리된 프레임과 더 나은 시간적 일관성을 가질 수 있다.
다중 프레임 처리를 위한 상기 실시예는 다중 프레임 대 단일 프레임 처리에도 적용될 수 있고, 여기서 사용자가 셔터 버튼을 누르거나 미리보기 화면을 열 때마다 이미지 버스트가 캡처된다. 캡처된 이미지 버스트는 처리될 여러 프레임을 나타낸다. 타겟 프레임은 버스트의 중앙 또는 끝의 이미지일 수 있다. 연속 이미지 버스트의 변화는 프로그래밍할 수 있는 이미지 노출의 변화 또는 휴대용(hand-held) 휴대폰의 경우, 카메라의 흔들림으로 인한 실제 카메라 포즈의 변화로 인해 여전히 유용할 수 있다.
다중 프레임 잡음 제거에서, 다중 프레임으로부터의 정보는 타겟 프레임 잡음 제거하기 위해 사용된다. 타겟 프레임의 각각의 패치는 처리를 위한 유효한 패치이다. 타겟 프레임의 각 패치는 동일한 프레임 또는 인접 프레임에 있는 다른 패치의 노이즈를 제거하기 위한 컨텍스트 정보로 사용되는 유효한 패치이기도 하다.
타겟 프레임 및 인접 컨텍스트 프레임으로부터의 특징 맵이 추출된다. 타겟 프레임에서 노이즈를 제거할 패치(예: 3 x 3 픽셀 블록)를 사용하면, 특징 맵의 해당하는 패치를 타겟 패치라 하고, 타겟 패치만 마스킹 되도록 마스킹한다. 마스킹 된 영역은 타겟 패치에만 해당된다. 시스템은 타겟 프레임 및 인접 프레임의 특징 맵에 있는 마스킹되지 않은 해당 영역에서 컨텍스트 컨볼루션 필터를 구성한다. 컨텍스트 컨볼루션 필터는 타겟 프레임 및 인접 컨텍스트 프레임에서 마스킹되지 않은 영역(타겟 패치를 제외한 모든 영역)을 타겟 패치와 동일한 크기의 필터로 분할하여 얻는다. 개별 컨텍스트 필터는 함께 쌓여서 연결된 컨텍스트 컨볼루션 필터를 만든다. 여기서, 각각의 개별 컨텍스트 필터는 내적(dot product)을 사용하여 타겟 패치와 상관되어 어텐션 스코어를 계산한다. 컨텍스트 패치는 개별 컨텍스트 필터의 선형 조합으로 계산되고, 컨텍스트 패치의 가중치는 계산된 어텐션 스코어에 해당한다. 컨텍스트 패치는 바로 가기 연결을 사용하여 타겟 패치와 결합된다. 이 과정은 모든 이미지가 덮일 때까지, 제2 단계에서 이미지의 모든 위치에 마스킹(잡음이 제거된 패치의 경우)을 밀어서 반복한다.
도 5는 일 실시예에 따른 네트워크 환경에서 전자 디바이스의 블록도를 도시한 도면이다. 도 5를 참조하면, 네트워크 환경(500)내의 전자 장치(501)는 제1 네트워크(598)(예를 들어, 근거리 무선 통신 네트워크)를 통해 다른 전자 장치(502)와 통신할 수 있거나, 제2 네트워크(599)(예를 들어, 장거리 무선 통신 네트워크)를 통해 다른 전자 장치(504) 또는 서버(508)와 통신할 수 있다. 전자 장치(501)는 또한 서버(508)를 통해 전자 장치(504)와 통신할 수 있다. 전자 장치(501)는 프로세서(520), 메모리(530), 입력 장치(550), 음향 출력 장치(555), 디스플레이 장치(560), 오디오 모듈(570), 센서 모듈(576), 인터페이스(577), 햅틱 모듈(579), 카메라 모듈(580), 배터리(589), 통신 모듈(590), 가입자 식별 모듈(SIM)(596) 또는 안테나 모듈(597)을 포함할 수 있다. 본 개시의 일 실시예에서 구성요소들 중 적어도 하나(예, 디스플레이 장치(560) 또는 카메라 모듈(580))는 전자 장치(501)에서 생략되거나, 하나 이상의 다른 구성 요소가 전자 장치(501)에 추가될 수 있다. 본 개시의 일 실시예에서, 구성요소들 중 일부는 단일 집적 회로(IC)로 구현될 수 있다. 예를 들어, 센서 모듈(576)(예, 지문 센서, 홍채 센서 또는 조도 센서)은 디스플레이 장치(560)(예, 디스플레이)에 내장될 수 있다.
프로세서(520)는, 예를 들면, 소프트웨어(예, 프로그램(540))를 실행하여 상기 프로세서(520)과 결합된 전자 장치(501)의 적어도 하나의 다른 구성요소(예, 하드웨어 또는 소프트웨어 구성요소)를 제어하고, 다양한 데이터 처리 또는 계산을 수행할 수 있다. 데이터 처리 또는 계산의 적어도 일부로서, 프로세서(520)는 다른 구성요소(예, 센서 모듈(576) 또는 통신 모듈(590))로부터 수신된 명령 또는 데이터를 휘발성 메모리(532)에 로드하고, 명령 또는 휘발성 메모리(532)에 저장된 데이터를 처리하고, 결과 데이터를 비휘발성 메모리(534)에 저장한다. 프로세서(520)는 메인 프로세서(521)(예, 중앙 처리 장치(CPU) 또는 애플리케이션 프로세서(AP))및 독립적으로 작동 가능한 보조 프로세서(510)(예, 그래픽 처리 장치(GPU)), 이미지 신호 프로세서(ISP), 센서 허브 프로세서 또는 통신 프로세서(CP))와 메인 프로세서(421)를 함께 포함할 수 있다. 추가적으로 또는 대안적으로, 보조 프로세서(510)은 메인 프로세서(521)보다 적은 전력을 소비하거나 특정 기능을 실행하도록 구성될 수 있다. 보조 프로세서(510)는 메인 프로세서(521)와 별개로 구현될 수도 있고, 그 일부로 구현될 수 있다.
보조 프로세서(510)는 전자 장치(501)의 구성요소 중 적어도 하나의 구성요소(예, 디스플레이 장치(560), 센서 모듈(576), 통신 모듈(590))와 관련된 기능 또는 상태 중 적어도 일부를 제어할 수 있고, 메인 프로세서(521) 대신에 메인 프로세서(521)가 비활성(예를 들어, 슬립) 상태에 있거나, 메인 프로세서(521)와 함께 메인 프로세서(521)가 활성 상태(예를 들어, 애플리케이션 실행)에 있는 동안에 제어할 수 있다. 본 개시의 한 실시예에 따르면, 보조 프로세서(510)(예, ISP 또는 CP)는 보조 프로세서(510)와 기능적으로 관련된 다른 구성요소(예, 카메라 모듈(580), 통신 모듈(590))의 일부로 구현될 수 있다.
메모리(530)는 전자 장치(501)의 적어도 하나의 구성 요소(예, 프로세서(520) 또는 센서 모듈(576))에서 사용되는 다양한 데이터를 저장할 수 있다. 상기 다양한 데이터는 예를 들어, 소프트웨어(예, 프로그램(540)) 및 이와 관련된 명령어에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(530)는 휘발성 메모리(532) 또는 비휘발성 메모리(534)를 포함할 수 있다.
프로그램(540)은 소프트웨어로서 메모리(530)에 저장될 수 있으며, 예를 들어, 운영 체제(OS)(542), 미들웨어(544) 또는 애플리케이션(546)을 포함할 수 있다.
입력 장치(550)는 전자 장치(501)의 외부(예, 사용자)로부터 전자 장치(501)의 다른 구성요소(예, 프로세서(520))에서 사용할 명령 또는 데이터를 수신할 수 있다. 입력 장치(550)는 예를 들어, 마이크, 마우스 또는 키보드를 포함할 수 있다.
음향 출력 장치(555)는 음향 신호를 전자 장치(501)의 외부로부터 출력할 수 있다. 음향 출력 장치(555)는 예를 들어, 스피커 또는 수신기를 포함할 수 있다. 상기 스피커는 멀티미디어 재생 또는 녹음과 같은 일반적인 용도로 사용될 수 있으며 상기 수신기는 수신 전화를 수신하는데 사용될 수 있다. 본 개시의 일 실시예에 따르면, 상기 수신기는 상기 스피커와 분리되거나 스피커의 일부로 구현될 수 있다.
디스플레이 장치(560)는 전자 장치(501)의 외부(예, 사용자)로 시각적으로 정보를 제공할 수 있다. 디스플레이 장치(560)는 예를 들어, 디스플레이, 홀로그램 장치 또는 프로젝터 및 제어 회로를 포함하여 상기 디스플레이, 상기 홀로그램 장치, 상기 프로젝터 중 대응하는 것을 제어할 수 있다. 본 개시의 실시예에 따르면, 디스플레이 장치(560)는 터치를 감지하도록 구성된 터치 회로 또는 터치에 의해 발생하는 힘의 강도를 측정하도록 구성된 센서 회로(예를 들어, 압력 센서)를 포함할 수 있다.
오디오 모듈(570)은 소리를 전기적 신호로 변환하거나 그 반대로 변환할 수 있다. 본 개시의 일 실시예에 따르면, 오디오 모듈(570)은 입력 장치(550)를 통해 사운드를 획득할 수 있거나, 사운드 출력 장치(555) 또는 외부 전자 장치(502)의 헤드폰을 통해 직접(예를 들어, 유선) 또는 전자 장치(501)와 무선으로 연결된 사운드를 출력한다.
센서 모듈(576)은 전자 장치(501)의 동작 상태(예, 전원 또는 온도) 또는 전자 장치(501) 외부의 환경 상태(예, 사용자의 상태)를 감지할 수 있고, 상기 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성한다. 센서 모듈(576)은 예를 들어, 제스처 센서, 자이로 센서, 대기압 센서, 자기 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, 적외선(IR)센서, 생체 인식 센서, 온도 센서, 습도 센서 또는 조도 센서를 포함할 수 있다.
인터페이스(577)는 전자 장치(501)가 외부 전자 장치(502)와 직접(예를 들어, 유선) 또는 무선으로 연결되는데 사용될 하나 이상의 지정된 프로토콜을 지원할 수 있다. 본 개시의 실시예에 따르면, 인터페이스(577)는 예를 들어, HDMI(High Definition Multimedia Interface), USB(Universal Serial Bus) 인터페이스, SD(Secure Digital) 카드 인터페이스 또는 오디오 인터페이스를 포함할 수 있다.
연결 단자(578)는 전자 장치(501)가 외부 전자 장치(502)와 물리적으로 연결될 수 있는 커넥터를 포함할 수 있다. 본 개시의 한 실시예에 따르면, 연결 단자(578)는 예를 들어, HDMI 커넥터, USB 커넥터, SD 카드 커넥터 또는 오디오 커넥터(예, 헤드폰 커넥터)를 포함할 수 있다.
햅틱 모듈(579)은 전기적 신호를 기계적 자극(예, 진동 또는 움직임) 또는 촉각 또는 운동 감각을 통해 사용자가 인식할 수 있는 전기적 자극으로 변환할 수 있다. 본 개시의 한 실시예에 따르면, 햅틱 모듈(579)은 예를 들어, 모터, 압전(piezoelectric) 소자 또는 전기 자극기를 포함할 수 있다.
카메라 모듈(580)은 정지 영상 또는 동영상 촬영을 할 수 있다. 본 개시의 한 실시예에 따르면, 카메라 모듈(580)은 하나 이상의 렌즈, 이미지 센서, ISP 또는 플래시를 포함할 수 있다.
전력 관리 모듈(588)은 전자 장치(501)에 공급되는 전력을 관리할 수 있다. 전력 관리 모듈(588)은 예를 들어, 전력 관리 집적 회로(PMIC)의 적어도 일부로 구현될 수 있다.
배터리(589)는 전자 장치(501)의 적어도 하나의 구성요소에 전원을 공급할 수 있다. 본 개시의 일 실시예에 따르면, 배터리(589)는 예를 들어, 충전이 불가능한 1차 전지, 충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.
통신 모듈(590)은 전자 장치(501)와 외부 전자 장치(예, 전자 장치(502), 전자 장치(504) 또는 서버(508))간에 직접(예, 유선) 통신 채널 또는 무선 통신 채널 설정을 지원할 수 있으며, 설정된 통신 채널을 통해 통신을 수행할 수 있다. 통신 모듈(490)은 프로세서(520)(예를 들어, AP)와 독립적으로 동작할 수 있고 직접(예를 들어, 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 통신 프로세서를 포함할 수 있다. 본 개시의 한 실시예에 따르면, 통신 모듈(590)은 무선 통신 모듈(592)(예, 셀룰러 통신 모듈, 근거리 무선 통신 모듈 또는 GNSS(Global Navigation Satellite System) 통신 모듈) 또는 유선 통신 모듈(594)(예, 근거리 통신망(LAN) 통신 모듈 또는 전력선 통신(PLC) 모듈)을 포함할 수 있다. 이러한 통신 모듈 중 대응하는 모듈은 제1 네트워크(598) (예, BluetoothTM, 무선 충실도(Wi-Fi) 다이렉트 또는 적외선 데이터 협회(IrDA)의 표준과 같은 단거리 통신 네트워크) 또는 제2 네트워크(599)(예, 셀룰러 네트워크, 인터넷 또는 컴퓨터 네트워크(예, LAN 또는 WAN)와 같은 장거리 통신 네트 워크)를 통해 상기 외부 전자 통신 장치와 통신할 수 있다. 이러한 다양한 유형의 통신 모듈은 단일 구성요소(예, 단일 IC)로 구현되거나 서로 분리된 여러 구성요소(예, 다중 IC)로 구현될 수 있다. 무선 통신 모듈(592)은 가입자 식별 모듈(596)에 저장된 가입자 정보(예, 국제 모바일 가입자 신원 확인(IMSI))를 이용하여 제1 네트워크(598) 또는 제2 네트워크(599)와 같은 통신 네트워크에서 전자 장치(501)을 식별하고 인증할 수 있다.
안테나 모듈(597)은 전자 장치(501)의 외부(예, 상기 외부 전자 장치)와 신호 또는 전원을 송수신할 수 있다.
본 개시의 일 실시예에 따르면, 안테나 모듈(597)은 하나 이상의 안테나를 포함할 수 있으며, 그로부터 제1 네트워크(598) 또는 제2 네트워크(599)와 같은 예를 들어, 통신 모듈(590)(예, 무선 통신 모듈(592))에 의해 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가 선택될 수 있다. 그 후, 상기 신호 또는 상기 전력은 선택된 적어도 하나의 안테나를 통해 통신 모듈(590)과 상기 외부 전자 장치 사이에서 송수신될 수 있다.
위에서 설명한 구성요소 중 적어도 일부는 상호 연결되어 주변 장치 간 통신 방식(예, 버스, 범용 입출력(GPIO), 직렬 주변기기 인터페이스(SPI), 또는 모바일 산업 프로세서 인터페이스(MIPI))를 통해 신호(예, 명령 또는 데이터)를 통신할 수 있다.
본 개시의 일 실시예에 따르면, 명령 또는 데이터는 제2 네트워크(599)에 연결된 서버(508)를 통해 전자 장치(501)와 외부 전자 장치(504) 사이에서 송수신될 수 있다. 각각의 전자 장치(502, 504)는 전자 장치(501)와 동일한 유형 또는 다른 유형의 장치일 수 있다. 전자 장치(501)에서 실행될 동작의 전부 또는 일부는 외부 전자 장치(502, 504, 508)중 하나 이상에서 실행될 수 있다. 예를 들어, 전자 장치(501)가 자동으로 기능 또는 서비스를 수행해야 하거나, 사용자 또는 다른 장치의 요청에 따라 전자 장치(501)가 기능 또는 서비스를 실행하는 대신 또는 추가적으로 수행해야 하는 경우, 기능 또는 서비스의 적어도 일부를 수행하도록 하나 이상의 외부 전자 장치에 요청할 수 있다. 요청을 수신한 하나 이상의 외부 전자 장치는 요청된 기능 또는 서비스의 적어도 일부, 또는 요청과 관련된 추가 기능 또는 추가 서비스를 수행할 수 있으며, 수행 결과를 전자 장치(501)로 전송할 수 있다. 전자 장치(501)는 요청에 대한 응답의 일부로서 결과의 추가 처리 유무에 관계없이 결과를 제공할 수 있다. 이를 위해, 예를 들어 클라우딩 컴퓨팅, 분산 컴퓨팅 또는 클라이언트-서버 컴퓨팅 기술이 사용될 수 있다.
본 개시의 일 실시예는 기계(예, 전자 장치(501)가 읽을 수 있는 저장 매체(예, 내부 메모리(536) 또는 외부 메모리(538)에 저장된 하나 이상의 명령어를 포함하는 소프트웨어(예, 프로그램(540))으로 구현될 수 있다. 예를 들어, 전자 장치(501)의 프로세서는 저장 매체에 저장된 하나 이상의 명령어 중 적어도 하나를 호출하고, 프로세서의 제어 하에 하나 이상의 다른 구성요소를 사용하거나 사용하지 않고 이를 실행할 수 있다. 따라서, 호출된 적어도 하나의 명령에 따라 적어도 하나의 기능을 수행하도록 기계가 작동될 수 있다. 하나 이상의 명령어는 컴파일러(complier)에 의해 생성된 코드 또는 통역기(interpreter)에 의해 실행 가능한 코드를 포함할 수 있다. 기계 판독 가능 저장 매체는 비일시적 저장 매체의 형태로 제공될 수 있다. "비일시적"이라는 용어는 저장 매체가 유형의 장치이며, 신호(예, 전자파)를 포함하지 않음을 나타내지만, 이 용어는 데이터가 저장 매체에 반영구적으로 저장되는 위치와 데이터는 저장 매체에 일시적으로 저장되는 위치를 구별하지 않는다.
본 개시의 일 실시예에 따르면, 본 개시의 방법은 컴퓨터 프로그램 제품에 포함되고 제공될 수 있다. 상기 컴퓨터 프로그램 제품은 판매자와 구매자 사이에서 상품으로 거래될 수 있다. 상기 컴퓨터 프로그램 제품은 기계 판독 가능 저장 매체(예, 컴팩트 디스크 읽기 전용 메모리(CD-ROM))의 형태로 배포되거나 애플리케이션 스토어(예, Play StoreTM)를 통해 온라인으로 배포(예, 다운로드 또는 업로드)하거나 두 사용자 장치(예, 스마트폰) 간에 직접 배포할 수 있다. 온라인으로 배포되는 경우, 상기 컴퓨터 프로그램 제품의 적어도 일부는 제조업체 서버의 메모리, 애플리케이션 스토어의 서버 또는 릴레이 서버와 같은 기계 판독 가능 저장 매체에 일시적으로 생성되거나 일시적으로 저장될 수 있다.
본 개시의 일 실시예에 따르면, 전술한 구성요소들의 각 구성요소(예, 모듈 또는 프로그램)는 단일 엔티티(entity) 또는 다중 엔티티(entity)들을 포함할 수 있다. 위에서 설명한 구성요소들 중 하나 이상이 생략되거나 하나 이상의 다른 구성요소들이 추가될 수 있다. 대안적으로 또는 추가로, 복수의 구성요소들(예, 모듈 또는 프로그램)가 단일 구성요소에 통합될 수 있다. 이 경우, 통합된 구성요소는 통합 이전에 복수의 구성요소들 중 대응하는 구성요소에 의해 수행되는 것과 동일하거나 유사한 방식으로 복수의 구성요소들 각각의 하나 이상의 기능을 여전히 수행할 수 있다. 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 작업은 순차적으로, 병렬로, 반복적으로 또는 경험적으로 수행될 수 있고, 또는 하나 이상의 작업이 다른 순서로 실행되거나 생략되거나, 또는 하나 이상의 다른 작업이 추가될 수 있다.
본 개시의 특정 실시 예가 본 개시의 상세한 설명에 설명되었지만, 본 개시는 본 개시의 범위를 벗어나지 않고 다양한 형태로 변형될 수 있다. 따라서, 본 개시의 범위는 설명된 실시 예에 의해서만 결정되는 것이 아니고, 오히려 첨부된 청구범위 및 그와 동등한 것에 기초하여 결정된다.
100: 모듈 102: 기준 프레임
104: 전경 106: 배경
108: 제1 컨텍스트 프레임 110: 제2 컨텍스트 프레임
112: 배경 패치 118: 재구성된 패치

Claims (10)

  1. 처리할 기준 프레임을 획득하고,
    상기 기준 프레임과 관련하여 컨텍스트 프레임을 식별하고,
    상기 획득한 기준 프레임을 상기 컨텍스트 프레임을 기반으로 처리하여 정제된 기준 프레임을 생성하는 것을 포함하는, 다중 프레임 상황별 어텐션을 위한 방법.
  2. 제 1항에 있어서,
    상기 컨텍스트 프레임은 상기 기준 프레임 이전의 프레임에서 발생하는 제1 인접 프레임을 포함하는 방법.
  3. 제 2항에 있어서,
    상기 컨텍스트 프레임은 상기 기준 프레임 이후의 프레임에서 발생하는 제2 인접 프레임을 포함하는 방법.
  4. 제 1항에 있어서,
    상기 식별된 컨텍스트 프레임은 다중 프레임에 대응하는 특징 맵에 마스킹 되지 않은 영역을 포함하는 방법.
  5. 제 1항에 있어서,
    상기 컨텍스트 프레임을 식별하는 것은 상기 획득된 기준 프레임을 포함하는 비디오에서 움직임의 양을 감지하는 것을 더 포함하는 방법.
  6. 제 1항에 있어서,
    상기 기준 프레임은 물체에 의해 가려지고,
    상기 물체를 제거하여 상기 기준 프레임에 구멍을 생성하는 것을 더 포함하고,
    상기 컨텍스트 프레임을 기반으로 상기 획득된 기준 프레임을 처리하는 것은 상기 획득된 기준 프레임의 상기 구멍을 채우는 것을 포함하는 방법.
  7. 메모리; 및
    프로세서를 포함하되,
    상기 프로세서는,
    처리할 기준 프레임을 획득하고,
    상기 기준 프레임과 관련하여 컨텍스트 프레임을 식별하고,
    상기 획득한 기준 프레임을 상기 컨텍스트 프레임을 기반으로 처리하여 정제된 기준 프레임을 생성하는, 다중 프레임 상황별 어텐션을 위한 시스템.
  8. 제 7항에 있어서,
    상기 식별된 컨텍스트 프레임은 다중 프레임에 대응하는 특징 맵에 마스킹 되지 않은 영역을 포함하는 시스템.
  9. 제 7항에 있어서,
    상기 프로세서는 상기 획득된 기준 프레임을 포함하는 비디오에서 움직임의 양을 감지함으로써, 상기 컨텍스트 프레임을 식별하는 것을 더 포함하는 시스템.
  10. 제 7항에 있어서,
    상기 프로세서는 상기 획득된 기준 프레임을 포함하는 비디오에서 움직임의 양을 감지함으로써, 상기 컨텍스트 프레임을 식별하는 것을 더 포함하는 시스템.
KR1020210002269A 2020-01-14 2021-01-08 심층 신경망을 이용한 다중 프레임 이미지 및 비디오 처리를 위한 다중 프레임 상황별 어텐션을 위한 시스템 및 방법 KR20210092138A (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US202062960867P 2020-01-14 2020-01-14
US62/960,867 2020-01-14
US16/860,754 US11948280B2 (en) 2020-01-14 2020-04-28 System and method for multi-frame contextual attention for multi-frame image and video processing using deep neural networks
US16/860,754 2020-04-28

Publications (1)

Publication Number Publication Date
KR20210092138A true KR20210092138A (ko) 2021-07-23

Family

ID=76764265

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210002269A KR20210092138A (ko) 2020-01-14 2021-01-08 심층 신경망을 이용한 다중 프레임 이미지 및 비디오 처리를 위한 다중 프레임 상황별 어텐션을 위한 시스템 및 방법

Country Status (2)

Country Link
US (1) US11948280B2 (ko)
KR (1) KR20210092138A (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11580673B1 (en) * 2019-06-04 2023-02-14 Duke University Methods, systems, and computer readable media for mask embedding for realistic high-resolution image synthesis
CN115118948B (zh) * 2022-06-20 2024-04-05 北京华录新媒信息技术有限公司 一种全景视频中无规则遮挡的修复方法及装置
US20240013351A1 (en) * 2022-07-11 2024-01-11 Qualcomm Incorporated Removal of objects from images
WO2024087163A1 (zh) * 2022-10-28 2024-05-02 京东方科技集团股份有限公司 坏点检测模型训练方法、坏点检测方法以及坏点修复方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7755645B2 (en) 2007-03-29 2010-07-13 Microsoft Corporation Object-based image inpainting
KR101075716B1 (ko) 2009-01-14 2011-10-21 삼성전자주식회사 이미지 복원 장치 및 방법
JP6230333B2 (ja) * 2013-08-22 2017-11-15 オリンパス株式会社 画像処理装置、画像処理方法およびプログラム
US9715903B2 (en) * 2014-06-16 2017-07-25 Qualcomm Incorporated Detection of action frames of a video stream
KR101671391B1 (ko) 2015-07-07 2016-11-02 한국과학기술연구원 레이어 블러 모델에 기반한 비디오 디블러링 방법, 이를 수행하기 위한 기록 매체 및 장치
US10290085B2 (en) 2016-12-14 2019-05-14 Adobe Inc. Image hole filling that accounts for global structure and local texture
US10547871B2 (en) * 2017-05-05 2020-01-28 Disney Enterprises, Inc. Edge-aware spatio-temporal filtering and optical flow estimation in real time

Also Published As

Publication number Publication date
US11948280B2 (en) 2024-04-02
US20210217145A1 (en) 2021-07-15

Similar Documents

Publication Publication Date Title
US11055866B2 (en) System and method for disparity estimation using cameras with different fields of view
KR20210092138A (ko) 심층 신경망을 이용한 다중 프레임 이미지 및 비디오 처리를 위한 다중 프레임 상황별 어텐션을 위한 시스템 및 방법
CN105874776B (zh) 图像处理设备和方法
CN111598776B (zh) 图像处理方法、图像处理装置、存储介质与电子设备
US11526970B2 (en) System and method for video processing with enhanced temporal consistency
KR102557561B1 (ko) 이미지의 깊이 정보를 결정하는 방법 및 시스템
US10929961B2 (en) Electronic device and method for correcting images using external electronic device
CN112602088B (zh) 提高弱光图像的质量的方法、系统和计算机可读介质
KR102556644B1 (ko) 연속적인 멀티 프레임 이미지 디노이징을 수행하는 장치 및 방법
KR102524982B1 (ko) 흐림 처리가 수행된 이미지에 노이즈 패턴을 반영하는 방법 및 장치
US11144197B2 (en) Electronic device performing function according to gesture input and operation method thereof
US11393078B2 (en) Electronic device and method for correcting image on basis of image transmission state
US10853921B2 (en) Method and apparatus for image sharpening using edge-preserving filters
CN113658065A (zh) 图像降噪方法及装置、计算机可读介质和电子设备
EP4102451A1 (en) Method for generating image and electronic device therefor
CN115565213A (zh) 图像处理方法及装置
CN114207669A (zh) 一种人脸光照图像生成装置及方法
US20190349519A1 (en) Electronic device and image processing method therefor
CN113711217A (zh) 用于保护包括在图像中的个人信息的电子装置和方法
KR20190101833A (ko) 이미지가 분할된 복수의 블록들의 압축과 관련된 압축 손실 데이터에 기반하여 이미지를 압축하는 전자 장치 및 그 동작 방법
CN116486008B (zh) 一种三维重建方法、显示方法及电子设备
US20230215018A1 (en) Electronic device including camera and method for generating video recording of a moving object
KR20220021853A (ko) 비용-볼륨에 주의에 기반한 불일치 추정을 위한 시스템 및 방법
KR20220126546A (ko) 전자 장치 및 그의 얼굴 인식 방법
CN114626996A (zh) 用于图像去噪的方法和系统

Legal Events

Date Code Title Description
A201 Request for examination