KR20230166870A - Image signal processing method using neural network, and computing appratus for performing the same - Google Patents

Image signal processing method using neural network, and computing appratus for performing the same Download PDF

Info

Publication number
KR20230166870A
KR20230166870A KR1020230007457A KR20230007457A KR20230166870A KR 20230166870 A KR20230166870 A KR 20230166870A KR 1020230007457 A KR1020230007457 A KR 1020230007457A KR 20230007457 A KR20230007457 A KR 20230007457A KR 20230166870 A KR20230166870 A KR 20230166870A
Authority
KR
South Korea
Prior art keywords
image
neural network
network model
correction
module
Prior art date
Application number
KR1020230007457A
Other languages
Korean (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 PCT/KR2023/007376 priority Critical patent/WO2023234674A1/en
Priority to US18/224,756 priority patent/US20230386193A1/en
Publication of KR20230166870A publication Critical patent/KR20230166870A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/95Computational photography systems, e.g. light-field imaging systems
    • H04N23/951Computational photography systems, e.g. light-field imaging systems by using two or more images to influence resolution, frame rate or aspect ratio
    • 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/001Image restoration
    • G06T5/002Denoising; Smoothing
    • G06T5/70
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/45Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from two or more image sensors being of different type or operating in different modes, e.g. with a CMOS sensor for moving images in combination with a charge-coupled device [CCD] for still images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/50Constructional details
    • H04N23/54Mounting of pick-up tubes, electronic image sensors, deviation or focusing coils
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/667Camera operation mode switching, e.g. between still and video, sport and normal or high- and low-resolution modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/69Control of means for changing angle of the field of view, e.g. optical zoom objectives or electronic zooming

Abstract

본 개시의 일 실시예에 따른 신경망 모델을 이용한 영상 처리 방법은, 이미지 센서를 통해 촬영된 영상을 획득하는 단계, 상기 영상의 촬영 환경(shooting context)을 확인하는 단계, 상기 촬영 환경에 따라서 영상 복원 모듈(image reconstruction module) 및 영상 보정 모듈(image correction module) 중 적어도 하나에 포함되는 신경망 모델을 선택하는 단계 및 상기 선택된 신경망 모델을 이용하여 상기 영상을 처리하는 단계를 포함할 수 있다.An image processing method using a neural network model according to an embodiment of the present disclosure includes the steps of acquiring an image captured through an image sensor, confirming a shooting environment (shooting context) of the image, and restoring the image according to the shooting environment. It may include selecting a neural network model included in at least one of an image reconstruction module and an image correction module, and processing the image using the selected neural network model.

Figure P1020230007457
Figure P1020230007457

Description

신경망 모델을 이용한 영상 신호 처리 방법 및 이를 수행하기 위한 컴퓨팅 장치 {IMAGE SIGNAL PROCESSING METHOD USING NEURAL NETWORK, AND COMPUTING APPRATUS FOR PERFORMING THE SAME}Image signal processing method using a neural network model and computing device for performing the same {IMAGE SIGNAL PROCESSING METHOD USING NEURAL NETWORK, AND COMPUTING APPRATUS FOR PERFORMING THE SAME}

본 개시는 신경망 모델을 이용한 영상 신호 처리 방법 및 이를 수행하기 위한 컴퓨팅 장치에 관한 것이며, 자세하게는 영상이 촬영된 환경(context)에 따라서 신경망 모델을 선택하고, 선택된 신경망 모델을 이용하여 촬영된 영상을 복원 및 보정하는 방법에 관한 것이다.The present disclosure relates to an image signal processing method using a neural network model and a computing device for performing the same. In detail, a neural network model is selected according to the context in which the image was captured, and the image captured using the selected neural network model is captured. It is about restoration and correction methods.

최근 신경망 기술의 발전으로 인해 다양한 분야에서 신경망이 활용되고 있다. 특히 영상의 보정이나 복원 등을 수행하기 위한 영상 신호 처리 분야에서도 신경망을 활용함으로써 처리 속도 및 영상 특성을 향상시킬 수 있다. 예를 들어, 스마트폰과 같은 모바일 단말에는 구비된 카메라로 촬영한 영상을 보정하기 위한 프로그램이 설치되는데, 기존의 영상 보정 알고리즘들을 포함하도록 구현된 프로그램을 신경망으로 대체할 수 있다면 다양한 측면에서 장점을 기대할 수 있을 것이다.Due to recent developments in neural network technology, neural networks are being used in various fields. In particular, processing speed and image characteristics can be improved by utilizing neural networks in the field of image signal processing to perform image correction or restoration. For example, in mobile terminals such as smartphones, a program is installed to correct images taken with an equipped camera. If a program implemented to include existing image correction algorithms can be replaced with a neural network, there are advantages in various aspects. You can expect it.

한편, 촬영이 수행되는 환경(context)에 따라서 촬영된 영상의 품질은 영향을 받을 수 있다. 예를 들어, 야간에 촬영된 영상은 노이즈가 많고, 줌(zoom) 모드로 촬영된 영상은 확대로 인해 색상이나 엣지(edge)가 명확하게 드러나지 않을 수 있다.Meanwhile, the quality of the captured image may be affected depending on the context in which the shooting is performed. For example, images captured at night have a lot of noise, and images captured in zoom mode may not show colors or edges clearly due to magnification.

신경망 모델은 미리 설정된 방향으로 영상의 특성을 보정하도록 학습된 상태이므로, 고정된 신경망 모델을 이용한다면 모든 환경에 대해서 좋은 영상 품질을 보장할 수는 없을 것이다.Since the neural network model is trained to correct the image characteristics in a preset direction, good image quality cannot be guaranteed in all environments if a fixed neural network model is used.

기술적 과제를 달성하기 위한 기술적 수단으로 개시된, 신경망 모델을 이용한 영상 처리 방법은, 이미지 센서(100)를 통해 촬영된 영상을 획득하는 단계, 상기 영상의 촬영 환경(shooting context)을 확인하는 단계, 상기 촬영 환경에 따라서 영상 복원 모듈(image reconstruction module)(1100) 및 영상 보정 모듈(image correction module)(1200) 중 적어도 하나에 포함되는 신경망 모델을 선택하는 단계 및 상기 선택된 신경망 모델을 이용하여 상기 영상을 처리하는 단계를 포함할 수 있다.An image processing method using a neural network model, which was disclosed as a technical means for achieving a technical task, includes the steps of acquiring an image captured through an image sensor 100, confirming the shooting context of the image, and the steps of: Selecting a neural network model included in at least one of an image reconstruction module 1100 and an image correction module 1200 according to the shooting environment, and converting the image using the selected neural network model. It may include processing steps.

기술적 과제를 달성하기 위한 기술적 수단으로 개시된, 신경망 모델을 이용하여 영상 신호를 처리하기 위한 컴퓨팅 장치는, 영상 신호를 처리하기 위한 프로그램이 저장되는 메모리 및 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는 상기 프로그램을 실행함으로써, 이미지 센서(100)를 통해 촬영된 영상을 획득하고, 상기 영상의 촬영 환경(shooting context)을 확인하고, 상기 촬영 환경에 따라서 영상 복원 모듈(image reconstruction module)(1100) 및 영상 보정 모듈(image correction module)(1200) 중 적어도 하나에 포함되는 신경망 모델을 선택한 후, 상기 선택된 신경망 모델을 이용하여 상기 영상을 처리할 수 있다.Disclosed as a technical means for achieving a technical problem, a computing device for processing an image signal using a neural network model includes a memory storing a program for processing an image signal and at least one processor, and the at least one By executing the program, the processor acquires an image captured through the image sensor 100, checks the shooting environment of the image, and operates an image reconstruction module 1100 according to the shooting environment. ) and the image correction module 1200, the neural network model included in at least one is selected, and the image can be processed using the selected neural network model.

기술적 과제를 달성하기 위한 기술적 수단으로서 개시된, 컴퓨터로 읽을 수 있는 기록매체는, 개시된 방법의 실시예들 중에서 적어도 하나를 컴퓨터에서 실행시키기 위한 프로그램이 저장된 것일 수 있다.A computer-readable recording medium disclosed as a technical means for achieving a technical problem may store a program for executing at least one of the embodiments of the disclosed method on a computer.

기술적 과제를 달성하기 위한 기술적 수단으로서 개시된, 컴퓨터 프로그램은, 개시된 방법의 실시예들 중에서 적어도 하나를 컴퓨터에서 수행하기 위해 매체에 저장된 것일 수 있다.A computer program disclosed as a technical means for achieving a technical problem may be stored in a medium for performing at least one of the embodiments of the disclosed method on a computer.

도 1은 본 개시의 일 실시예에 따른, 신경망 모델을 이용한 영상 신호 처리 모듈(ISP)의 구성을 도시한 도면이다.
도 2는 본 개시의 일 실시예에 따른, 신경망 모델을 이용한 영상 신호 처리 모듈(ISP)의 구체적인 예시를 도시한 도면이다.
도 3은 본 개시의 일 실시예에 따른, 신경망 모델을 이용한 영상 신호 처리를 수행하는 사용자 단말의 구성을 도시한 도면이다.
도 4는 본 개시의 일 실시예에 따른, 클라우드 서버가 ISP를 이용하여 사용자 단말로부터 수신하는 영상을 보정하는 실시예를 설명하기 위한 도면이다.
도 5는 본 개시의 일 실시예에 따른, 촬영 환경에 기초하여 영상 복원 모듈에 포함된 신경망 모델을 선택하는 방법을 설명하기 위한 도면이다.
도 6은 본 개시의 일 실시예에 따른, 영상 복원 모듈에 포함되는 신경망 모델을 학습시키는 방법을 설명하기 위한 도면이다.
도 7은 본 개시의 일 실시예에 따른, 영상 복원 모듈에 따라서 영상 보정 모듈의 신경망 모델을 선택하는 방법을 설명하기 위한 도면이다.
도 8 내지 도 10은 본 개시의 실시예들에 따른, 촬영 환경에 따라 이미지 센서, 영상 복원 모듈 및 영상 보정 모듈을 선택하는 방법을 설명하기 위한 도면들이다.
도 11 내지 도 14는 본 개시의 실시예들에 따른, 신경망 모델을 이용하여 영상 신호를 처리하는 방법을 설명하기 위한 순서도들이다.
도 15는 본 개시의 일 실시예에 따른, 영상에서 인식된 객체의 종류에 따라서 이미지 센서, 영상 복원 모듈 및 영상 보정 모듈의 조합을 변경하는 방법을 설명하기 위한 도면이다.
도 16은 본 개시의 일 실시예에 따른, 제1 신경망 모델의 동작을 설명하기 위한 도면이다.
도 17은 본 개시의 일 실시예에 따른, 제2 신경망 모델의 동작을 설명하기 위한 도면이다.
도 18은 본 개시의 일 실시예에 따른 제1 신경망 모델을 학습시키는 과정을 설명하기 위한 도면이다.
도 19는 본 개시의 일 실시예에 따른 제2 신경망 모델을 학습시키는 과정을 설명하기 위한 도면이다.
도 20은 본 개시의 일 실시예에 따른 레이블 영상 생성 모듈이 입력 영상으로부터 레이블 영상을 생성하는 과정을 설명하기 위한 도면이다.
도 21은 본 개시의 일 실시예에 따른 명암비 개선 알고리즘에 적용되는 스트렝스 값에 대해서 설명하기 위한 도면이다.
도 22는 본 개시의 일 실시예에 따른 밝기 보정 알고리즘에 적용되는 감마 값에 대해서 설명하기 위한 도면이다.
도 23은 본 개시의 일 실시예에 따른 노출 융합 알고리즘에 적용되는 α값에 대해서 설명하기 위한 도면이다.
도 24는 본 개시의 일 실시예에 따른, 보정 파라미터를 제1 신경망 모델에 대한 입력으로 인가하는 방법을 설명하기 위한 도면이다.
도 25는 본 개시의 실시예에 따른 신경망 모델들이 영상 보정 모듈에 포함되는 구체적인 실시예를 도시한 도면이다.
도 26 내지 도 28은 본 개시의 실시예들에 따른, 신경망 모델을 이용하여 영상을 보정하는 방법을 설명하기 위한 순서도들이다.
도 29는 본 개시의 일 실시예에 따른 제1 신경망 모델에 입력되는 보정 파라미터가 변경되었을 때 추론 영상의 변화를 설명하기 위한 도면이다.
도 30은 본 개시의 일 실시예에 따른, 모바일 단말의 화면에 표시된 UI를 통해 밝기 조절을 위한 보정 파라미터를 사용자가 조정하는 상황을 설명하기 위한 도면이다.
도 31은 본 개시의 일 실시예에 따른, 신경망 모델들에 대한 학습을 수행하기 위한 컴퓨팅 장치의 구성을 도시한 블록도이다.
도 32 및 도 33은 각각 본 개시의 실시예들에 따른 제1 신경망 모델 및 제2 신경망 모델을 학습시키는 방법을 설명하기 위한 순서도들이다.
도 34 및 도 35는 본 개시의 일 실시예에 따른 신경망 모델을 업데이트하는 방법을 설명하기 위한 도면들이다.
FIG. 1 is a diagram illustrating the configuration of an image signal processing module (ISP) using a neural network model, according to an embodiment of the present disclosure.
FIG. 2 is a diagram illustrating a specific example of an image signal processing module (ISP) using a neural network model, according to an embodiment of the present disclosure.
FIG. 3 is a diagram illustrating the configuration of a user terminal that performs image signal processing using a neural network model, according to an embodiment of the present disclosure.
FIG. 4 is a diagram illustrating an example in which a cloud server corrects an image received from a user terminal using an ISP, according to an embodiment of the present disclosure.
FIG. 5 is a diagram illustrating a method of selecting a neural network model included in an image restoration module based on a shooting environment, according to an embodiment of the present disclosure.
FIG. 6 is a diagram illustrating a method of training a neural network model included in an image restoration module according to an embodiment of the present disclosure.
FIG. 7 is a diagram illustrating a method of selecting a neural network model of an image correction module according to an image restoration module, according to an embodiment of the present disclosure.
8 to 10 are diagrams for explaining a method of selecting an image sensor, an image restoration module, and an image correction module according to a shooting environment according to embodiments of the present disclosure.
11 to 14 are flowcharts for explaining a method of processing an image signal using a neural network model according to embodiments of the present disclosure.
FIG. 15 is a diagram illustrating a method of changing the combination of an image sensor, an image restoration module, and an image correction module according to the type of an object recognized in an image, according to an embodiment of the present disclosure.
FIG. 16 is a diagram for explaining the operation of a first neural network model according to an embodiment of the present disclosure.
FIG. 17 is a diagram for explaining the operation of a second neural network model according to an embodiment of the present disclosure.
Figure 18 is a diagram for explaining a process of learning a first neural network model according to an embodiment of the present disclosure.
Figure 19 is a diagram for explaining a process of learning a second neural network model according to an embodiment of the present disclosure.
FIG. 20 is a diagram illustrating a process in which a label image generation module generates a label image from an input image according to an embodiment of the present disclosure.
Figure 21 is a diagram for explaining the strength value applied to the contrast ratio improvement algorithm according to an embodiment of the present disclosure.
FIG. 22 is a diagram for explaining gamma values applied to a brightness correction algorithm according to an embodiment of the present disclosure.
Figure 23 is a diagram for explaining the α value applied to the exposure fusion algorithm according to an embodiment of the present disclosure.
FIG. 24 is a diagram illustrating a method of applying a correction parameter as an input to a first neural network model, according to an embodiment of the present disclosure.
FIG. 25 is a diagram illustrating a specific example in which neural network models according to an embodiment of the present disclosure are included in an image correction module.
26 to 28 are flowcharts for explaining a method of correcting an image using a neural network model according to embodiments of the present disclosure.
FIG. 29 is a diagram illustrating a change in an inferred image when a correction parameter input to a first neural network model is changed according to an embodiment of the present disclosure.
FIG. 30 is a diagram illustrating a situation in which a user adjusts correction parameters for brightness adjustment through a UI displayed on the screen of a mobile terminal, according to an embodiment of the present disclosure.
FIG. 31 is a block diagram illustrating the configuration of a computing device for performing learning on neural network models, according to an embodiment of the present disclosure.
Figures 32 and 33 are flow charts for explaining a method of training a first neural network model and a second neural network model, respectively, according to embodiments of the present disclosure.
Figures 34 and 35 are diagrams for explaining a method of updating a neural network model according to an embodiment of the present disclosure.

본 개시를 설명함에 있어서 본 개시가 속하는 기술 분야에 익히 알려져 있고 본 개시와 직접적으로 관련이 없는 기술 내용에 대해서는 설명을 생략한다. 이는 불필요한 설명을 생략함으로써 본 개시의 요지를 흐리지 않고 더욱 명확히 전달하기 위함이다. 그리고 후술되는 용어들은 본 개시에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.In describing the present disclosure, description of technical content that is well known in the technical field to which the present disclosure belongs and that is not directly related to the present disclosure will be omitted. This is to convey the gist of the present disclosure more clearly without obscuring it by omitting unnecessary explanation. In addition, the terms described below are terms defined in consideration of the functions in the present disclosure, and may vary depending on the intention or custom of the user or operator. Therefore, the definition should be made based on the contents throughout this specification.

마찬가지 이유로 첨부된 도면에 있어서 일부 구성요소는 과장되거나 생략되거나 개략적으로 도시 되었다. 또한, 각 구성요소의 크기는 실제 크기를 전적으로 반영하는 것이 아니다. 각 도면에서 동일한 또는 대응하는 구성 요소에는 동일한 참조 번호를 부여하였다.For the same reason, some components are exaggerated, omitted, or schematically shown in the attached drawings. Additionally, the size of each component does not entirely reflect its actual size. In each drawing, identical or corresponding components are assigned the same reference numbers.

본 개시의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술 되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 개시는 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있다. 개시된 실시예들은 본 개시의 개시가 완전하도록 하고, 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 개시의 범주를 완전하게 알려주기 위해 제공되는 것이다. 본 개시의 일 실시예는 청구범위에 따라 정의될 수 있다. 명세서 전체에 걸쳐 동일한 참조 부호는 동일한 구성 요소를 나타낸다. 또한, 본 개시의 일 실시예를 설명함에 있어서 관련된 기능 또는 구성에 대한 구체적인 설명이 본 개시의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명은 생략한다. 그리고 후술되는 용어들은 본 개시에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.The advantages and features of the present disclosure and methods for achieving them will become clear by referring to the embodiments described in detail below along with the accompanying drawings. However, the present disclosure is not limited to the embodiments disclosed below and may be implemented in various different forms. The disclosed embodiments are provided to ensure that the disclosure is complete and to fully inform those skilled in the art of the disclosure of the scope of the disclosure. One embodiment of the present disclosure may be defined according to the claims. Like reference numerals refer to like elements throughout the specification. Additionally, when describing an embodiment of the present disclosure, if it is determined that a detailed description of a related function or configuration may unnecessarily obscure the gist of the present disclosure, the detailed description will be omitted. In addition, the terms described below are terms defined in consideration of the functions in the present disclosure, and may vary depending on the intention or custom of the user or operator. Therefore, the definition should be made based on the contents throughout this specification.

일 실시예에서, 흐름도 도면들의 각 블록과 흐름도 도면들의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수 있다. 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있고, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 흐름도 블록(들)에서 설명된 기능들을 수행하는 수단을 생성할 수 있다. 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하고, 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 흐름도 블록(들)에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하다.In one embodiment, each block of the flow diagram diagrams and combinations of the flow diagram diagrams may be performed by computer program instructions. Computer program instructions may be mounted on a processor of a general-purpose computer, special-purpose computer, or other programmable data processing equipment, and the instructions performed through the processor of the computer or other programmable data processing equipment may perform the functions described in the flowchart block(s). You can create the means to carry them out. The computer program instructions may also be stored in a computer-usable or computer-readable memory that can be directed to a computer or other programmable data processing equipment to implement a function in a particular way. The instructions may also produce manufactured items containing instruction means that perform the functions described in the flow diagram block(s). Computer program instructions may also be mounted on a computer or other programmable data processing equipment.

또한, 흐름도 도면의 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 일 실시예에서, 블록들에 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능하다. 예를 들면, 잇달아 도시되어 있는 두 개의 블록들은 실질적으로 동시에 수행되는 것도 가능하고 또는 기능에 따라 역순으로 수행되는 것도 가능하다.Additionally, each block in a flowchart diagram may represent a module, segment, or portion of code containing one or more executable instructions for executing specified logical function(s). In one embodiment, it is possible for functions mentioned in blocks to occur out of order. For example, two blocks shown in succession may be performed substantially simultaneously or may be performed in reverse order depending on their functions.

본 개시의 일 실시예에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA(Field Programmable Gate Array) 또는 ASIC(Application Specific Integrated Circuit)과 같은 하드웨어 구성요소를 나타낼 수 있고, '~부'는 특정한 역할을 수행할 수 있다. 한편, '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 일 실시예에서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함할 수 있다. 특정한 구성요소나 특정한 '~부'를 통해 제공되는 기능은 그 개수를 줄이도록 결합되거나 추가적인 구성요소들로 분리될 수 있다. 또한, 일 실시예에서 ‘~부’는 하나 이상의 프로세서를 포함할 수 있다.The term '~unit' used in an embodiment of the present disclosure may refer to software or hardware components such as FPGA (Field Programmable Gate Array) or ASIC (Application Specific Integrated Circuit), and '~unit' refers to a specific role. can be performed. Meanwhile, '~ part' is not limited to software or hardware. The '~ part' may be configured to reside in an addressable storage medium and may be configured to reproduce on one or more processors. In one embodiment, '~ part' refers to components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, procedures, May include subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables. Functions provided through specific components or specific '~parts' can be combined to reduce their number or separated into additional components. Additionally, in one embodiment, ‘˜part’ may include one or more processors.

본 개시의 실시예들은 신경망 모델을 이용하여 영상 신호를 처리하는 방법에 관한 것이다. 구체적인 실시예들을 설명하기에 앞서 본 명세서에서 자주 사용되는 용어들의 의미를 정의한다.Embodiments of the present disclosure relate to a method of processing image signals using a neural network model. Before describing specific embodiments, the meaning of terms frequently used in this specification are defined.

'촬영 환경(shooting context)'이란 영상 촬영에 영향을 미치는 다양한 요소들 또는 영상 촬영과 관련된 제반사항을 의미하며, 특히 촬영되는 영상의 품질이나 특성에 영향을 미치는 요소들을 의미할 수 있다. '촬영 환경'은 '촬영 조건(shooting condition)' 및 '촬영 모드(shooting mode)'를 포함할 수 있으며, 각각의 의미는 다음과 같다.‘Shooting context’ refers to various factors that affect video shooting or all matters related to video shooting, and can especially refer to factors that affect the quality or characteristics of the video being shot. ‘Shooting environment’ may include ‘shooting conditions’ and ‘shooting mode’, and their respective meanings are as follows.

'촬영 조건'은 영상이 촬영되는 조건으로서, 촬영 시간(e.g. 주간 또는 야간), 촬영 장소(e.g. 실내 또는 실외) 및 ISO (film speed) 중 적어도 하나를 포함할 수 있다.'Shooting conditions' are conditions under which an image is shot, and may include at least one of shooting time (e.g. daytime or night), shooting location (e.g. indoors or outdoors), and ISO (film speed).

'촬영 모드'는 영상을 촬영하는 모드를 의미하며, 예를 들어 카메라와 같은 촬영 장치에서 설정되는 것일 수 있다. 일 실시예에 따르면, 촬영 모드는 일반 촬영 모드, 야간 촬영 모드 및 줌(zoom) 촬영 모드 등을 포함할 수 있다.'Shooting mode' refers to a mode for shooting images, and may be set in a shooting device such as a camera, for example. According to one embodiment, the shooting mode may include a normal shooting mode, a night shooting mode, and a zoom shooting mode.

'ISP (Image Signal Processing)'란 디지털 영상 신호를 처리하는 동작을 의미하는데, 본 개시에서는 ISP를 수행하는 모듈을 'ISP'라고 정의한다.'ISP (Image Signal Processing)' refers to the operation of processing digital image signals. In this disclosure, the module that performs ISP is defined as 'ISP'.

'영상 복원(image reconstruction)'이란 센서에서 추출된 베이어 패턴(RGGB, GBRG, BGGR, GRBG)의 영상을 RGB 패턴으로 디모자이크(demosaic)하는 과정을 의미한다. 디모자이크하는 과정에서, 영상에 포함된 일부 픽셀 값을 보간(interpolation)하거나 노이즈를 제거함으로써 영상의 품질을 향상시키는 동작을 포함할 수 있다.‘Image reconstruction’ refers to the process of demosaicing the image of the Bayer pattern (RGGB, GBRG, BGGR, GRBG) extracted from the sensor into an RGB pattern. The demosaicing process may include an operation to improve the quality of the image by interpolating some pixel values included in the image or removing noise.

'영상 보정(image correction)'이란 영상 특성을 조절(adjust)하는 동작을 의미하고, '영상 특성(image characteristic)'이란 영상의 밝기(brightness), 명암비(contrast), 색온도(color temperature) 등을 의미한다. 또한, '영상 보정 알고리즘'이란 영상의 특성을 조절하기 위한 알고리즘을 의미한다. ‘Image correction’ refers to the operation of adjusting image characteristics, and ‘image characteristic’ refers to the brightness, contrast, and color temperature of the image. it means. Additionally, ‘image correction algorithm’ refers to an algorithm for controlling the characteristics of an image.

'보정 파라미터(correction parameter)'란 영상 보정 알고리즘을 이용하여 영상 보정 시 영상 보정 알고리즘에 적용되는 파라미터를 의미한다. 즉, 보정 파라미터의 값에 따라서 영상의 특성이 조절되는 정도가 결정될 수 있다. 보정 파라미터의 구체적인 예시들은 아래에서 설명하기로 한다.‘Correction parameter’ refers to a parameter applied to an image correction algorithm when correcting an image using an image correction algorithm. In other words, the degree to which image characteristics are adjusted can be determined according to the value of the correction parameter. Specific examples of correction parameters will be described below.

'레이블 영상(label image)'이란 본 개시의 실시예들에 따른 신경망 모델에 대한 지도학습(supervised learning)을 수행하기 위한 훈련용 데이터(training data)로서 사용되는 영상이며, 특히 그라운드 트루스 데이터(ground truth data)로 사용되는 영상을 의미한다. '레이블 영상 생성 모듈'은 적어도 하나 이상의 영상 보정 알고리즘을 이용하여 입력 영상을 보정함으로써 레이블 영상을 생성하는 구성이다.A ‘label image’ is an image used as training data to perform supervised learning on a neural network model according to embodiments of the present disclosure, and in particular, ground truth data (ground truth data). This refers to the image used as truth data. The 'label image generation module' is a component that generates a label image by correcting an input image using at least one image correction algorithm.

이하에서는 도면들을 참조하여 본 개시의 실시예들에 대해서 자세히 설명한다.Hereinafter, embodiments of the present disclosure will be described in detail with reference to the drawings.

도 1은 본 개시의 일 실시예에 따른, 신경망 모델을 이용한 영상 신호 처리 모듈(ISP)의 구성을 도시한 도면이다. 도 1을 참고하면, 일 실시예에 따른 ISP(1000)는 영상 복원 모듈(image reconstruction module)(1100) 및 영상 보정 모듈(image correction module)(1200)을 포함할 수 있다. 이때, 영상 복원 모듈(1100) 및 영상 보정 모듈(1200)은 영상 처리를 수행하는 컴퓨팅 장치의 프로세서에 의해서, 메모리에 저장된 프로그램을 실행함으로써 구현되는 구성들이다. 영상 처리를 수행하는 컴퓨팅 장치는 스마트폰, 디지털 카메라 등과 같이 촬영 기능과 연산 처리 기능을 갖는 장치일 수 있으며, 촬영 기능을 구비하지 않더라도 이미지 파일이나 동영상 파일을 수신하여 영상 신호 처리 프로세스를 수행할 수 있는 다양한 형태의 장치(e.g. 노트북, 클라우드 서버)가 될 수도 있다. 본 개시의 실시예들에 따른 영상 처리를 수행하는 컴퓨팅 장치의 구성에 대해서는 아래에서 도 3을 참조하여 자세히 설명한다.FIG. 1 is a diagram illustrating the configuration of an image signal processing module (ISP) using a neural network model, according to an embodiment of the present disclosure. Referring to FIG. 1 , the ISP 1000 according to an embodiment may include an image reconstruction module 1100 and an image correction module 1200. At this time, the image restoration module 1100 and the image correction module 1200 are components that are implemented by executing a program stored in the memory by a processor of a computing device that performs image processing. A computing device that performs image processing may be a device that has a shooting function and an arithmetic processing function, such as a smartphone or digital camera. Even if it does not have a shooting function, it can receive an image file or video file and perform a video signal processing process. It can be various types of devices (e.g. laptop, cloud server). The configuration of a computing device that performs image processing according to embodiments of the present disclosure will be described in detail below with reference to FIG. 3.

이미지 센서(100)는 촬영을 수행하여 영상 신호를 출력하는 구성으로서, 예를 들어 CCD 센서 또는 CMOS 센서 등일 수 있으며, 이 밖에도 다양한 종류의 이미지 센서(100)가 사용될 수 있다. 일 실시예에 따르면, 이미지 센서(100)는 픽셀당 한 가지 색상의 채널만을 갖는 베이어 포맷(Bayer format)의 원시 영상(raw image)을 출력할 수 있다. 다만, 이에 한정되지 않고 이미지 센서(100)는 다양한 포맷의 영상을 출력할 수도 있다. 또한 일 실시예에 따르면, 이미지 센서(100)에는 서로 다른 종류의 복수의 이미지 센서들이 포함될 수도 있다. 본 개시에서 '서로 다른 종류의 이미지 센서'라고 함은, 이미지 센서 자체는 동일한 하드웨어 스펙을 가지더라도 매칭되는 렌즈의 종류가 다른 경우까지 포함할 수 있다. 다시 말해, 이미지 센서(100)에 제1 이미지 센서 및 제2 이미지 센서가 포함되고, 제1 이미지 센서와 제2 이미지 센서는 동일한 하드웨어 스펙을 갖는다고 가정할 때, 제1 이미지 센서에는 일반 렌즈가 매칭되고 제2 이미지 센서에는 광각 렌즈가 매칭된다면, 본 개시에서는 제1 이미지 센서와 제2 이미지 센서는 서로 다른 종류의 이미지 센서라고 표현한다. 물론, 이미지 센서(100)에는 하드웨어 스펙이 상이한 이미지 센서들이 포함될 수도 있다.The image sensor 100 is a component that performs imaging and outputs an image signal, and may be, for example, a CCD sensor or a CMOS sensor. In addition, various types of image sensors 100 may be used. According to one embodiment, the image sensor 100 may output a raw image in Bayer format with only one color channel per pixel. However, the image sensor 100 is not limited to this and may output images in various formats. Additionally, according to one embodiment, the image sensor 100 may include a plurality of image sensors of different types. In the present disclosure, 'different types of image sensors' may include cases where the types of matching lenses are different even if the image sensors themselves have the same hardware specifications. In other words, assuming that the image sensor 100 includes a first image sensor and a second image sensor, and that the first image sensor and the second image sensor have the same hardware specifications, the first image sensor has a general lens. If they are matched and a wide-angle lens is matched to the second image sensor, in this disclosure, the first image sensor and the second image sensor are expressed as different types of image sensors. Of course, the image sensor 100 may include image sensors with different hardware specifications.

영상 복원 모듈(1100)은 이미지 센서(100)로부터 수신하는 영상을 복원하는 동작을 수행하기 위한 모듈이다. 일 실시예에 따르면, 영상 복원 모듈(1100)은 이미지 센서(100)로부터 수신하는 입력 영상에 대해, 렌즈 음영 보정(Lens Shading Correction, LSC), 불량 화소 보정(Bad Pixel Correction, BPC), 디모자이크(Demosaic) 및 디노이즈(Denoise) 중 적어도 하나의 복원 동작을 수행할 수 있다.The image restoration module 1100 is a module for restoring an image received from the image sensor 100. According to one embodiment, the image restoration module 1100 performs lens shading correction (LSC), bad pixel correction (BPC), and demosaicing on the input image received from the image sensor 100. At least one restoration operation of demosaic and denoise may be performed.

도 1에 도시된 바와 같이 영상 복원 모듈(1100)은 세부 구성으로서 HW(hardware) ISP(1110), SW(software) ISP(1120) 및 AI 복원 ISP(1130)를 포함할 수 있다. 촬영 환경에 따라 영상 복원 모듈(1100)에 포함된 세부 구성들 중 적어도 하나가 선택되어 복원 동작을 수행할 수 있다. 촬영 환경에 따라 영상 복원 모듈(1100)의 세부 구성이 선택되는 방법에 대해서는 아래에서 자세히 설명한다.As shown in FIG. 1, the image restoration module 1100 may include a hardware (HW) ISP 1110, a software (SW) ISP 1120, and an AI restoration ISP 1130 as detailed components. Depending on the shooting environment, at least one of the detailed configurations included in the image restoration module 1100 may be selected to perform a restoration operation. How the detailed configuration of the image restoration module 1100 is selected according to the shooting environment will be described in detail below.

일 실시예에 따르면, HW ISP(1110)와 SW ISP(1120)는 수행하는 프로세스의 복잡한 정도를 기준으로 구분한 모듈일 수 있다. 예를 들어, HW ISP(1110)는 단순한 프로세스만을 처리하는 모듈이고, SW ISP(1120)는 소프트웨어 알고리즘에 의해 비교적 복잡한 프로세스까지 처리하는 모듈일 수 있다.According to one embodiment, the HW ISP 1110 and SW ISP 1120 may be modules divided based on the level of complexity of the process being performed. For example, the HW ISP 1110 may be a module that processes only simple processes, and the SW ISP 1120 may be a module that processes relatively complex processes using software algorithms.

영상 복원 모듈(1100)에 포함된 세부 구성들 중 AI 복원 ISP(1130)는 신경망 기반의 모듈로서 복수의 신경망 모델들을 포함할 수 있다. 도 1에 도시된 바와 같이 AI 복원 ISP(1130)는 복수의 모델 파라미터(복원 파라미터)들을 포함할 수 있는데, 각각의 복원 파라미터가 신경망 모델을 의미한다. 일 실시예에 따르면, AI 복원 ISP(1130)는 촬영 환경에 따라서 복수의 복원 파라미터들 중 어느 하나로 신경망 모델을 세팅하고 영상 처리 프로세스를 수행할 수 있다.Among the detailed components included in the image restoration module 1100, the AI restoration ISP 1130 is a neural network-based module and may include a plurality of neural network models. As shown in FIG. 1, the AI restoration ISP 1130 may include a plurality of model parameters (restoration parameters), and each restoration parameter represents a neural network model. According to one embodiment, the AI restoration ISP 1130 may set a neural network model to one of a plurality of restoration parameters depending on the shooting environment and perform an image processing process.

영상 보정 모듈(1200)은 영상 보정을 수행하기 위한 모듈이다. 영상 보정 모듈(1200)은 영상 복원 모듈(1100)로부터 수신한 영상에 대해서 밝기를 높이거나, 명암비를 개선함으로써 영상을 보기 좋게 만들 수 있다. 일 실시예에 따르면, 영상 보정 모듈(1200)은 수신한 영상에 대해 화이트 밸런스(White Balance, WB)를 조절하거나, 색 보정(Color Correction, CC)을 수행하거나, 감마(gamma) 값을 조절하거나, 글로벌 톤 매핑(global tone mapping) 및 로컬 톤 매핑(local tone mapping), HDR 이펙트(HDR effect) 등과 같은 처리를 수행함으로써 영상 특성을 조절할 수 있다.The image correction module 1200 is a module for performing image correction. The image correction module 1200 can make the image better to view by increasing the brightness or improving the contrast ratio of the image received from the image restoration module 1100. According to one embodiment, the image correction module 1200 adjusts the white balance (WB), performs color correction (CC), or adjusts the gamma value for the received image. , image characteristics can be adjusted by performing processing such as global tone mapping, local tone mapping, HDR effect, etc.

일 실시예에 따르면, 영상 보정 모듈(1200)은 신경망 기반의 모듈(AI 보정 ISP)로 구성될 수 있으며, 복수의 신경망 모델들을 포함할 수 있다. 도 1에 도시된 바와 같이 AI 보정 ISP(1200)는 복수의 모델 파라미터(보정 파라미터)들을 포함할 수 있는데, 각각의 보정 파라미터가 하나의 신경망 모델을 의미한다. 일 실시예에 따르면, AI 보정 ISP(1200)는 촬영 환경에 따라서 복수의 보정 파라미터들 중 어느 하나로 신경망 모델을 세팅하고 영상 처리 프로세스를 수행할 수 있다.According to one embodiment, the image correction module 1200 may be composed of a neural network-based module (AI correction ISP) and may include a plurality of neural network models. As shown in FIG. 1, the AI correction ISP 1200 may include a plurality of model parameters (correction parameters), and each correction parameter represents one neural network model. According to one embodiment, the AI correction ISP 1200 may set a neural network model to one of a plurality of correction parameters depending on the shooting environment and perform an image processing process.

야간의 저조도 환경에서 촬영을 하는 경우 영상의 밝기나 명암비가 낮아 영상 내 객체를 식별하기 어려울 수 있다. 또한 저조도 환경에서 밝게 촬영하기 위해 야간 모드로 촬영하여 ISO 값을 높이는 경우, 밝기는 개선되지만 영상에 포함되는 노이즈의 양이 증가하여 품질이 떨어질 수 있다. 또한 줌(zoom) 모드 촬영 시 영상의 확대로 인해 객체의 형태나 색상이 명확하게 표현되지 않을 수도 있다.When shooting in a low-light environment at night, it may be difficult to identify objects in the image due to the low brightness or contrast ratio of the image. Additionally, if you increase the ISO value by shooting in night mode to shoot brightly in a low-light environment, the brightness will improve, but the amount of noise included in the image may increase, which may reduce the quality. Additionally, when shooting in zoom mode, the shape or color of the object may not be expressed clearly due to the enlargement of the image.

이와 같이 촬영 환경(촬영 조건 및 촬영 모드)에 따라서 영상의 품질이 저하될 수 있는데, 본 개시의 실시예들은 어떤 상황에서도 최적화된 고품질 영상(e.g. 정지 영상, 동영상)을 얻을 수 있는 방법을 제공한다. 본 개시의 실시예들에 따르면, 촬영 환경에 따라서 영상 복원 모듈(1100) 및 영상 보정 모듈(1200)에 포함된 세부 구성(특히, 신경망 모델)을 선택함으로써 영상의 품질을 높일 수 있다. 또한 본 개시의 실시예들은 촬영 환경에 따라서 다양한 종류의 이미지 센서(100)들 중 어느 하나를 선택함으로써 영상의 품질을 높일 수 있다.As such, the quality of the image may deteriorate depending on the shooting environment (shooting conditions and shooting mode), but embodiments of the present disclosure provide a method of obtaining optimized high-quality images (e.g. still images, moving images) in any situation. . According to embodiments of the present disclosure, image quality can be improved by selecting detailed configurations (particularly, neural network models) included in the image restoration module 1100 and the image correction module 1200 according to the shooting environment. Additionally, embodiments of the present disclosure can improve image quality by selecting one of various types of image sensors 100 according to the shooting environment.

또한, 디바이스별로 카메라와 관련된 하드웨어(e.g. 렌즈 및 이미지 센서 등과 같이 촬영을 위한 직접적인 구성뿐만 아니라, 촬영 이미지를 처리하기 위한 프로세서 등까지 포함)가 상이할 수 있는데, 본 개시의 실시예들에 따르면 이러한 하드웨어의 차이에도 불구하고 일정 수준 이상 높은 품질의 영상을 제공할 수 있는 기술적 효과를 기대할 수 있다.In addition, camera-related hardware (e.g., not only direct components for shooting, such as lenses and image sensors, but also processors for processing captured images) may be different for each device, and according to embodiments of the present disclosure, such Despite differences in hardware, technical effects that can provide high quality video above a certain level can be expected.

먼저 도 2를 참조하여 신경망 기반의 ISP의 구체적인 예시에 대해서 설명하고, 도 3을 참조하여 본 개시의 실시예들에 따른 영상 처리를 수행하는 컴퓨팅 장치의 구체적인 예시에 대해서 설명한 후, 이어서 촬영 환경에 따라서 신경망 모델을 선택하는 방법에 대해서 자세히 설명한다.First, a specific example of a neural network-based ISP will be described with reference to FIG. 2, and a specific example of a computing device that performs image processing according to embodiments of the present disclosure will be described with reference to FIG. 3, and then Therefore, we explain in detail how to select a neural network model.

도 2는 본 개시의 일 실시예에 따른, 신경망 모델을 이용한 영상 신호 처리 모듈(ISP)의 구체적인 예시를 도시한 도면이다.FIG. 2 is a diagram illustrating a specific example of an image signal processing module (ISP) using a neural network model, according to an embodiment of the present disclosure.

도 2의 센서(200)는 도 1의 이미지 센서(100)에 대응될 수 있고, 도 2의 Neuro-ISP(2000)는 도 1의 ISP(1000)의 구체적인 실시예에 해당된다. Neuro-ISP(2000)는 신경망을 이용하여 영상 신호를 처리하는 구성으로서, 일 실시예에 따르면 Neuro-ISP(2000)는 모듈 단위로 ISP 일부분에 신경망을 적용하는 방식일 수도 있고, 또는 일 실시예에 따르면 Neuro-ISP(2000)는 단일 신경망 End-to-End 기반의 ISP일 수도 있다.The sensor 200 of FIG. 2 may correspond to the image sensor 100 of FIG. 1, and the Neuro-ISP 2000 of FIG. 2 corresponds to a specific embodiment of the ISP 1000 of FIG. 1. Neuro-ISP (2000) is a component that processes image signals using a neural network. According to one embodiment, Neuro-ISP (2000) may be a method of applying a neural network to a portion of the ISP on a module basis, or in one embodiment According to Neuro-ISP (2000), it may be an ISP based on a single neural network end-to-end.

도 2의 버스트넷(BurstNet)(2130)은 도 1의 영상 복원 모듈(1130)의 구체적인 실시예에 해당되고, 도 2의 마스터링넷(MasteringNet)(2200)은 도 1의 영상 보정 모듈(1200)의 구체적인 실시예에 해당된다.BurstNet 2130 of FIG. 2 corresponds to a specific embodiment of the image restoration module 1130 of FIG. 1, and MasteringNet 2200 of FIG. 2 corresponds to the image correction module 1200 of FIG. 1. It corresponds to a specific example of.

도 2를 참고하면, 센서(200)는 복수의 원시 영상들을 출력할 수 있다. 일 실시예에 따르면, 원시 영상은 픽셀당 한 가지 색상의 채널만을 갖는 베이어 포맷의 영상일 수 있다.Referring to FIG. 2, the sensor 200 may output a plurality of raw images. According to one embodiment, the raw image may be a Bayer format image with only one color channel per pixel.

버스트넷(2130)은 복수의 원시 영상들을 입력받아 하나의 리니어 RGB 영상을 출력할 수 있다. 버스트넷(2130)에 입력되는 복수의 원시 영상들은 특정 시점의 전후로 촬영된 복수의 영상들로, 버스트넷(2130)은 원시 영상들의 시간적(temporal) 정보를 이용하고 LSC, BPC, 얼라인 앤 퓨전(align & fusion), 디모자이크 및 디노이즈를 수행함으로써 하나의 리니어 RGB 영상을 출력할 수 있다.The burstnet 2130 can receive a plurality of raw images and output one linear RGB image. A plurality of raw images input to the burstnet 2130 are a plurality of images taken before and after a specific point in time. The burstnet 2130 uses the temporal information of the raw images and performs LSC, BPC, and align and fusion. By performing (align & fusion), demosaicing, and denoising, one linear RGB image can be output.

마스터링넷(2200)은 리니어 RGB 영상에 대해서 보정을 수행할 수 있다. 일 실시예에 따르면, 마스터링넷(2200)은 리니어 RGB 영상에 대해 화이트 밸런스(White Balance, WB)를 조절하거나, 색 보정(Color Correction, CC)을 수행하거나, 감마(gamma) 값을 조절하거나, 글로벌 톤 매핑(global tone mapping) 및 로컬 톤 매핑(local tone mapping), HDR 이펙트(HDR effect) 등과 같은 처리를 수행함으로써 영상 특성을 조절하여 sRGB 영상을 최종 영상으로 출력할 수 있다. 이를 위해 마스터링넷(2200)은 센서(200)로부터 화이트 밸런스 게인(White Balance Gain, WBG) 및 색 보정 행렬(Color Correction Matrix, CCM) 등을 수신할 수 있다.The mastering net 2200 can perform correction on linear RGB images. According to one embodiment, the mastering net 2200 adjusts the white balance (WB), performs color correction (CC), or adjusts the gamma value for the linear RGB image. By performing processing such as global tone mapping, local tone mapping, HDR effect, etc., image characteristics can be adjusted and the sRGB image can be output as the final image. To this end, the mastering net 2200 may receive a white balance gain (WBG) and a color correction matrix (CCM) from the sensor 200.

한편, 위에서는 센서(200)에서 출력되는 영상은 베이어 영상이고, 버스트넷(2130)에서 출력되는 영상은 리니어 RGB 영상이고, 마스터링넷(2200)에서 출력되는 영상은 sRGB 영상인 것으로 가정하고 설명하였으나, 이에 한정되지 않고 각각의 영상들은 다양한 포맷의 영상일 수 있다. 예를 들어, 위 영상들은 논-리니어 RGB(non-linear RGB) 영상, sRGB 영상, AdobeRGB 영상, YCbCr 영상, 베이어(Bayer) 영상 중 어느 하나일 수 있다. 다만, 버스트넷(2130) 및 마스터링넷(2200) 각각에 포함되는 신경망 모델의 학습 시 사용된 입력 영상의 포맷은 추론 시에도 동일하게 유지될 수 있고, 비슷한 원리로 학습 시 사용된 추론 영상의 포맷이 추론 시에도 동일하게 유지될 수 있다.Meanwhile, in the above description, it was assumed that the image output from the sensor 200 is a Bayer image, the image output from the burst net 2130 is a linear RGB image, and the image output from the mastering net 2200 is an sRGB image. , but is not limited to this, and each video may be of various formats. For example, the above images may be any one of a non-linear RGB image, an sRGB image, an AdobeRGB image, a YCbCr image, or a Bayer image. However, the format of the input image used when learning the neural network model included in each of the burst net 2130 and the mastering net 2200 may remain the same during inference, and the format of the inference image used during learning follows a similar principle. The same can remain true during this inference.

도 3은 본 개시의 일 실시예에 따른, 신경망 모델을 이용한 영상 신호 처리를 수행하는 사용자 단말의 구성을 도시한 도면이다. 도 3에서는 영상 신호 처리를 수행하는 사용자 단말(3000)이 스마트폰인 것으로 도시하였으나, 이에 한정되지 않고 카메라 등과 같이 영상 촬영 기능이 있는 모든 종류의 디바이스에는 ISP(3130)가 탑재될 수 있으며, 더 나아가 촬영 기능은 구비하지 않지만 영상 신호 처리를 수행할 수 있는 다양한 종류의 디바이스에도 ISP(3130)가 탑재될 수 있음은 자명하다.FIG. 3 is a diagram illustrating the configuration of a user terminal that performs image signal processing using a neural network model, according to an embodiment of the present disclosure. In FIG. 3, the user terminal 3000 that performs video signal processing is shown as a smartphone, but it is not limited to this and the ISP 3130 can be mounted on any type of device with a video capture function, such as a camera. Furthermore, it is obvious that the ISP 3130 can be installed in various types of devices that do not have a shooting function but can perform video signal processing.

도 3을 참고하면, 사용자 단말(3000)에는 카메라 모듈(3100) 및 메인 프로세서(3200)가 포함될 수 있다.Referring to FIG. 3, the user terminal 3000 may include a camera module 3100 and a main processor 3200.

카메라 모듈(3100)은 렌즈 모듈(3110), 이미지 센서(3120) 및 ISP(3130)를 포함할 수 있으며, 이 구성들(3110, 3120, 3130)이 하나의 칩(chip)에 탑재된 SoC (System on Chip) 형태로 구현될 수도 있다. 카메라 모듈(3100)은 별도의 프로세서를 포함할 수도 있고, 이를 통해 ISP(3130)를 실행할 수 있다.The camera module 3100 may include a lens module 3110, an image sensor 3120, and an ISP 3130, and these components (3110, 3120, and 3130) are mounted on one chip (SoC). It may also be implemented in the form of a System on Chip. The camera module 3100 may include a separate processor, through which the ISP 3130 can be executed.

이미지 센서(3120)는 렌즈 모듈(3110)을 통해 투과된 빛을 받아 영상을 출력하고, ISP(3130)는 이미지 센서(3120)에서 출력된 영상을 복원 및 보정하여 최종 영상으로 출력할 수 있다. 즉, 사용자가 사용자 단말(3000)을 통해 영상을 촬영하면, ISP(3130)를 통해 복원 및 보정된 최종 영상이 사용자에게 보여지게 된다.The image sensor 3120 receives light transmitted through the lens module 3110 and outputs an image, and the ISP 3130 can restore and correct the image output from the image sensor 3120 and output it as a final image. That is, when a user captures an image through the user terminal 3000, the final image restored and corrected through the ISP 3130 is displayed to the user.

ISP(3130)에는 영상 복원 모듈(3131) 및 영상 보정 모듈(3132)이 포함될 수 있으며, 각 구성의 동작은 앞서 도 1 및 도 2를 참조하여 설명한 바와 같다.The ISP 3130 may include an image restoration module 3131 and an image correction module 3132, and the operation of each component is the same as previously described with reference to FIGS. 1 and 2.

도 3에 도시된 실시예에서는 ISP(3130)가 카메라 모듈(3100)에 탑재되는데, 이와 다르게 사용자 단말(3000)의 메인 프로세서(3200)에 ISP(3130)가 탑재되도록 구현될 수도 있다. 메인 프로세서(3200)에는 CPU(3210), GPU(3220), NPU(3230) 및 메모리(3240) 등이 포함될 수 있는데, CPU(3210), GPU(3220) 및 NPU(3230) 중 적어도 하나가 메모리(3240)에 저장된 프로그램을 실행함으로써 ISP(3130)를 구현할 수도 있다.In the embodiment shown in FIG. 3, the ISP 3130 is mounted on the camera module 3100. Alternatively, the ISP 3130 may be mounted on the main processor 3200 of the user terminal 3000. The main processor 3200 may include a CPU 3210, GPU 3220, NPU 3230, and memory 3240, and at least one of the CPU 3210, GPU 3220, and NPU 3230 is memory. ISP 3130 can also be implemented by executing the program stored in 3240.

또 다른 실시예에 따르면, ISP(3130)에 포함된 구성들 중 적어도 일부는 영상이 촬영되는 디바이스에 탑재되지 않고, 클라우드 서버 등과 같은 외부 장치에 의해서 구현될 수도 있다. 예를 들어, 도 4에 도시된 바와 같이 클라우드 서버(400)에는 영상 복원 모듈(4100) 및 영상 보정 모듈(4200)을 포함하는 ISP(4000)가 구현될 수 있고, 사용자 단말(3000)이 이미지 센서(3120)를 통해 획득한 원시 영상들을 클라우드 서버(400)에 전송하면, 클라우드 서버(400)의 영상 복원 모듈(4100)은 원시 영상들로부터 리니어 RGB 영상을 생성하고, 영상 보정 모듈(4200)은 리니어 RGB 영상을 보정한 후, 보정된 영상을 클라우드 서버(400) 내에 저장하거나 사용자 단말(3000)에 전송할 수 있다.According to another embodiment, at least some of the components included in the ISP 3130 may not be mounted on the device where the image is captured, but may be implemented by an external device such as a cloud server. For example, as shown in FIG. 4, an ISP 4000 including an image restoration module 4100 and an image correction module 4200 may be implemented in the cloud server 400, and the user terminal 3000 may When raw images acquired through the sensor 3120 are transmitted to the cloud server 400, the image restoration module 4100 of the cloud server 400 generates a linear RGB image from the raw images, and the image correction module 4200 After correcting the linear RGB image, the corrected image can be stored in the cloud server 400 or transmitted to the user terminal 3000.

또는 다른 실시예에 따르면, 사용자 단말(3000)은 원시 영상들로부터 리니어 RGB 영상을 복원한 후, 복원된 리니어 RGB 영상을 클라우드 서버(400)에 전송하고, 클라우드 서버(400)는 영상 보정 모듈(4200)을 이용하여 영상을 보정한 후 보정된 영상을 클라우드 서버(400) 내에 저장하거나 사용자 단말(3000)에 전송할 수 있다.Or, according to another embodiment, the user terminal 3000 restores the linear RGB image from the raw images and then transmits the restored linear RGB image to the cloud server 400, and the cloud server 400 provides an image correction module ( After correcting the image using 4200), the corrected image can be stored in the cloud server 400 or transmitted to the user terminal 3000.

따라서, 이하의 실시예들에서 도 1의 ISP(1000)가 수행하는 동작들은 실제로는 사용자 단말(3000), 클라우드 서버(400) 또는 그 외 다양한 컴퓨팅 장치들 각각에 의해서 또는 둘 이상의 컴퓨팅 장치의 조합에 의해서 수행될 수 있다.Therefore, in the following embodiments, the operations performed by the ISP 1000 of FIG. 1 are actually performed by the user terminal 3000, the cloud server 400, or various other computing devices individually or by a combination of two or more computing devices. It can be performed by .

1. 영상 복원 모듈에서의 신경망 모델 선택1. Neural network model selection in image restoration module

도 1의 영상 복원 모듈(1100) 중 AI 복원 ISP(1130)에서 신경망 모델을 선택하는 방법에 대해서 설명한다. 도 5는 본 개시의 일 실시예에 따른, 촬영 환경에 기초하여 영상 복원 모듈(1100)에 포함된 신경망 모델을 선택하는 방법을 설명하기 위한 도면이다. 도 5에 도시된 바와 같이 AI 복원 ISP(1130)는 주간용 신경망 모델(주간 모델 파라미터(1131))과 야간용 신경망 모델(야간 모델 파라미터(1132))을 포함한다고 가정한다.A method of selecting a neural network model in the AI restoration ISP 1130 of the image restoration module 1100 of FIG. 1 will be described. FIG. 5 is a diagram illustrating a method of selecting a neural network model included in the image restoration module 1100 based on a shooting environment, according to an embodiment of the present disclosure. As shown in FIG. 5, it is assumed that the AI restoration ISP 1130 includes a neural network model for daytime use (daytime model parameters 1131) and a neural network model for nighttime use (night model parameters 1132).

본 개시의 일 실시예에 따르면, AI 복원 ISP(1130)는 입력 영상(51)에 포함된 노이즈가 일정 기준 미만인 경우 주간 모델 파라미터(1131)를 선택하고, 반대로 입력 영상(51)에 포함된 노이즈가 일정 기준 이상인 경우 야간 모델 파라미터(1132)를 선택할 수 있다.According to an embodiment of the present disclosure, the AI restoration ISP 1130 selects the weekly model parameter 1131 when the noise included in the input image 51 is less than a certain standard, and conversely, the AI restoration ISP 1130 selects the weekly model parameter 1131 and conversely selects the If is above a certain standard, the night model parameter 1132 can be selected.

(1) ISO 값에 기초한 신경망 모델 선택(1) Neural network model selection based on ISO value

일 실시예에 따르면 입력 영상(51)의 ISO 값에 기초하여 입력 영상(51)에 포함된 노이즈의 양을 추정할 수 있고, 따라서 촬영 조건(시간, 장소 및 ISO 등) 중 ISO 값에 기초하여 AI 복원 ISP(1130)의 신경망 모델을 선택할 수 있다. 예를 들어, AI 복원 ISP(1130)는 입력 영상(51)의 메타데이터로부터 ISO 값을 확인하고, 확인한 ISO 값에 기초하여 신경망 모델(모델 파라미터)을 선택할 수 있다. 이때, 입력 영상(51)은 이미지 센서(100)로부터 출력된 원시 영상일 수 있다.According to one embodiment, the amount of noise included in the input image 51 can be estimated based on the ISO value of the input image 51, and therefore, based on the ISO value among shooting conditions (time, location, ISO, etc.) You can select the neural network model of the AI restoration ISP (1130). For example, the AI restoration ISP 1130 may check the ISO value from the metadata of the input image 51 and select a neural network model (model parameter) based on the confirmed ISO value. At this time, the input image 51 may be a raw image output from the image sensor 100.

아래의 표 1에는 ISO 값에 따라서 추정되는 노이즈 양을 나타내었다. ISO 값에 따른 샷 노이즈(shot noise)는 촬영을 수행하는 장치에 따라서 다르게 측정될 수 있고, 리드 노이즈(read noise)는 샷 노이즈로부터 특정 수식에 의해 계산된 값이다. 따라서, 표 1에 포함된 수치들은 단지 하나의 실시예에 해당될 뿐이고, ISO 값에 따라 추정되는 노이즈의 양은 달라질 수 있다. 또한, 보간을 통해 표 1에 포함된 수치들 사이의 데이터를 추가함으로써 구간을 더욱 세분화할 수도 있다.Table 1 below shows the amount of noise estimated according to ISO value. Shot noise according to ISO value can be measured differently depending on the device that performs shooting, and read noise is a value calculated from shot noise using a specific formula. Therefore, the values included in Table 1 only correspond to one example, and the amount of noise estimated may vary depending on the ISO value. Additionally, the section can be further subdivided by adding data between the numbers included in Table 1 through interpolation.

만약, 입력 영상(51)에 포함된 샷 노이즈가 0.001 이상인 경우 야간 모델 파라미터(1132)를 선택하고, 0.001 미만인 경우 주간 모델 파라미터(1131)를 선택하도록 설정되었다면, AI 복원 ISP(1130)는 ISO 값이 1600 이상인 경우 야간 모델 파라미터(1132)로 신경망 모델을 세팅하고, ISO 값이 1600 미만인 경우 주간 모델 파라미터(1131)로 신경망 모델을 세팅할 수 있다.If the shot noise included in the input image 51 is set to select the night model parameter (1132) if it is more than 0.001, and the day model parameter (1131) if it is less than 0.001, the AI restoration ISP (1130) is set to select the ISO value If the ISO value is above 1600, the neural network model can be set with the night model parameter (1132), and if the ISO value is less than 1600, the neural network model can be set with the daytime model parameter (1131).

(2) 촬영 시간 및 촬영 장소에 기초한 신경망 모델 선택(2) Neural network model selection based on shooting time and shooting location

일 실시예에 따르면, AI 복원 ISP(1130)는 입력 영상(51)의 촬영 시간 및 촬영 장소에 기초하여 저조도 환경에서 촬영되었는지 여부를 판단하고, 그에 따라 신경망 모델을 선택할 수도 있다. 예를 들어, AI 복원 ISP(1130)는 입력 영상(51)의 메타데이터로부터 영상이 촬영된 시간 및 장소(e.g. GPS 신호나 셀룰러 기지국 또는 WiFi AP 등을 이용하여 추정된 위치)에 대한 정보를 획득하고, 획득한 정보에 기초하여 신경망 모델(모델 파라미터)을 선택할 수도 있다. 일 실시예에 따르면, AI 복원 ISP(1130)는 시간(주간/야간) 및 장소(실내/실외)의 조합에 대해서 다음과 같이 모델 파라미터를 선택할 수 있다. 일반적으로 야간에 실외에서 촬영되는 경우에만 저조도 환경일 것으로 예상할 수 있으므로 아래와 같은 규칙에 의해 모델 파라미터를 선택하지만, 이에 한정되지 않고 필요나 상황에 따라서 규칙을 변경할 수도 있다.According to one embodiment, the AI restoration ISP 1130 may determine whether the input image 51 was captured in a low-light environment based on the capture time and location of the input image 51 and select a neural network model accordingly. For example, the AI restoration ISP 1130 obtains information about the time and place where the image was captured (e.g. location estimated using a GPS signal, cellular base station, or WiFi AP) from the metadata of the input image 51. And, a neural network model (model parameters) may be selected based on the acquired information. According to one embodiment, the AI restoration ISP 1130 may select model parameters for a combination of time (day/night) and location (indoor/outdoor) as follows. In general, since it can be expected to be in a low-light environment only when shooting outdoors at night, model parameters are selected according to the rules below, but the rules are not limited to this and can be changed depending on the need or situation.

1) 주간 & 실외 => 주간 모델 파라미터1) Daytime & Outdoor => Daytime model parameters

2) 주간 & 실내 => 주간 모델 파라미터2) Daytime & Indoor => Daytime model parameters

3) 야간 & 실외 => 야간 모델 파라미터3) Night & Outdoor => Night Model Parameters

4) 야간 & 실내 => 주간 모델 파라미터4) Night & Indoor => Day model parameters

또한 일 실시예에 따르면, AI 복원 ISP(1130)는 선택의 정확도를 높이기 위해서 시간 및 장소에 대한 정보와 함께 ISO 값도 고려하여 모델 파라미터를 선택할 수도 있다. 예를 들어, 시간 및 장소에 대한 정보에 기초하여 판단한 결과 주간 모델 파라미터를 선택해야 하는 상황이지만, ISO 값이 일정 기준 이상이라면 AI 복원 ISP(1130)는 야간 모델 파라미터를 선택할 수도 있다. 다시 말해, AI 복원 ISP(1130)는 1차적으로 시간 및 장소에 기초하여 모델 파리미터를 선택하고, 2차적으로 ISO 값을 고려하여 모델 파라미터를 변경할 필요가 있을지 여부를 판단할 수 있다.Additionally, according to one embodiment, the AI restoration ISP 1130 may select model parameters by considering the ISO value along with information about time and place to increase selection accuracy. For example, as a result of judgment based on information about time and place, it is necessary to select daytime model parameters, but if the ISO value is above a certain standard, the AI restoration ISP 1130 may select nighttime model parameters. In other words, the AI restoration ISP 1130 may primarily select model parameters based on time and location, and secondarily determine whether the model parameters need to be changed by considering the ISO value.

한편 일 실시예에 따르면, AI 복원 ISP(1130)는 입력 영상(51)을 분석함으로써 입력 영상(51)에 포함된 노이즈의 양을 파악하고, 그 결과에 따라서 신경망 모델을 선택할 수도 있다. 예를 들어, AI 복원 ISP(1130)는 입력 영상(51)의 픽셀 값들을 분석한 결과 포함된 노이즈가 미리 설정된 기준 이상이라면 야간 모델 파라미터(1132)를 선택하고, 미리 설정된 기준 미만이라면 주간 모델 파라미터(1132)를 선택할 수 있다.Meanwhile, according to one embodiment, the AI restoration ISP 1130 may determine the amount of noise included in the input image 51 by analyzing the input image 51 and select a neural network model according to the result. For example, as a result of analyzing the pixel values of the input image 51, the AI restoration ISP 1130 selects the night model parameter 1132 if the noise included is greater than the preset standard, and if it is less than the preset standard, the AI restoration ISP 1130 selects the day model parameter 1132. (1132) can be selected.

(3) 촬영 모드 또는 이미지 센서의 종류에 따른 신경망 모델 선택(3) Selection of neural network model according to shooting mode or type of image sensor

본 개시의 일 실시예에 따르면, AI 복원 ISP(1130)는 촬영 모드 또는 이미지 센서의 종류에 따라서 신경망 모델을 선택할 수도 있다. 예를 들어, AI 복원 ISP(1130)는 일반 촬영 모드(주간 촬영 모드)라면 주간 모델 파라미터(1131)로 신경망 모델을 세팅하고, 야간 촬영 모드라면 야간 모델 파라미터(1132)로 신경망 모델을 세팅할 수 있다.According to an embodiment of the present disclosure, the AI restoration ISP 1130 may select a neural network model according to the shooting mode or type of image sensor. For example, the AI restoration ISP (1130) can set the neural network model with the daytime model parameter (1131) in normal shooting mode (daytime shooting mode), and set the neural network model with the night model parameter (1132) in night shooting mode. there is.

또는 일 실시예에 따르면, 이미지 센서(100)에 복수의 이미지 센서들이 포함되고(도 8 참고), 복수의 이미지 센서들 중 어느 하나가 선택되어 입력 영상(51)을 촬영했다면, 선택된 이미지 센서에 대응되는 신경망 모델이 AI 복원 ISP(1130)에서 선택될 수 있다. 이를 위해, AI 복원 ISP(1130)에 포함되는 신경망 모델들에는 각각 대응되는 이미지 센서의 종류가 미리 정해질 수 있다. 예를 들어, 이미지 센서(100)에 야간 촬영을 위한 이미지 센서(e.g. 광각 렌즈와의 사용에 적합한 이미지 센서)가 포함되고, 이를 이용해 입력 영상(51)이 촬영되었다면, AI 복원 ISP(1130)는 야간 모델 파라미터(1132)로 신경망 모델을 세팅할 수 있다.Or, according to one embodiment, if the image sensor 100 includes a plurality of image sensors (see FIG. 8) and one of the plurality of image sensors is selected to capture the input image 51, the selected image sensor A corresponding neural network model may be selected in the AI restoration ISP 1130. To this end, the type of image sensor corresponding to the neural network models included in the AI restoration ISP 1130 may be predetermined. For example, if the image sensor 100 includes an image sensor for night photography (e.g. an image sensor suitable for use with a wide-angle lens) and the input image 51 is captured using this, the AI restoration ISP 1130 The neural network model can be set with the night model parameters (1132).

도 5에 도시된 실시예에서 AI 복원 ISP(1130)는 두 개의 모델 파라미터(1131, 1132)를 포함하지만, 이에 한정되지 않고 세 개 이상의 모델 파라미터가 AI 복원 ISP(1130)에 포함되고, 선택의 기준이 되는 ISO 값 및 노이즈의 구간도 더 세분화될 수 있다.In the embodiment shown in Figure 5, the AI restoration ISP (1130) includes two model parameters (1131, 1132), but is not limited to this, three or more model parameters are included in the AI restoration ISP (1130), and The standard ISO value and noise section can also be further subdivided.

2. 영상 복원 모듈에 포함되는 신경망 모델의 학습2. Learning of the neural network model included in the image restoration module

이상 살펴본 바와 같이 AI 복원 ISP(1130)는 입력 영상에 포함된 노이즈의 양에 따라서 신경망 모델을 선택하고, 선택된 신경망 모델은 노이즈의 양에 따른 적절한 복원 프로세스를 수행할 수 있다. 이하에서는 이를 위해서 AI 복원 ISP(1130)에 포함되는 신경망 모델들을 어떻게 학습시켜야 하는지에 대해서 설명한다.As described above, the AI restoration ISP 1130 selects a neural network model according to the amount of noise included in the input image, and the selected neural network model can perform an appropriate restoration process according to the amount of noise. Below, we will explain how to learn the neural network models included in the AI restoration ISP (1130) for this purpose.

본 개시의 일 실시예에 따르면, AI 복원 ISP(1130)에 노이즈를 포함하는 영상을 입력했을 때 출력되는 영상과, 노이즈가 제거된 영상 간의 차이를 최소화하도록 AI 복원 ISP(1130)의 모델 파라미터를 업데이트하는 방식으로 학습을 수행할 수 있다.According to an embodiment of the present disclosure, model parameters of the AI restoration ISP (1130) are adjusted to minimize the difference between the image output when an image containing noise is input to the AI restoration ISP (1130) and the image from which the noise has been removed. Learning can be performed by updating.

도 6은 본 개시의 일 실시예에 따른, 영상 복원 모듈에 포함되는 신경망 모델을 학습시키는 방법을 설명하기 위한 도면이다. 도 6을 참고하면, AI 복원 ISP(1130)에는 입력 영상(61)에 대해서 노이즈 시뮬레이션(610)이 수행된 노이즈 영상(62)이 입력되고, AI 복원 ISP(1130)는 그로부터 추론 영상(63)을 출력할 수 있다. 이때, 입력 영상(61)은 추론 영상(63)과 비교되기 위한 레이블 영상(label image)으로서, 그라운드 트루스 데이터(ground truth data)에 해당될 수 있다. 노이즈 시뮬레이션(610)은 입력 영상(61)에 노이즈를 추가하여 노이즈 영상(62)을 생성하는 동작을 의미한다.FIG. 6 is a diagram illustrating a method of training a neural network model included in an image restoration module according to an embodiment of the present disclosure. Referring to FIG. 6, a noise image 62 on which noise simulation 610 has been performed on the input image 61 is input to the AI restoration ISP 1130, and the AI restoration ISP 1130 generates an inferred image 63 therefrom. can be output. At this time, the input image 61 is a label image to be compared with the inferred image 63 and may correspond to ground truth data. Noise simulation 610 refers to the operation of adding noise to the input image 61 to generate a noise image 62.

입력 영상(61)에 노이즈 시뮬레이션(610)을 수행함으로써 훈련용 데이터를 생성하는 방법은 다음과 같다. 입력 영상(61)은 노이즈를 거의 포함하지 않는 깨끗한 영상(clean image)일 수 있으며, 데이터베이스에 저장된 다양한 입력 영상(61)에 노이즈 강도를 달리하면서 노이즈 시뮬레이션(610)을 수행함으로써 노이즈가 추가된 노이즈 영상(62)을 획득할 수 있다. 앞서 설명한 바와 같이 입력 영상(61)이 레이블 영상에 해당되므로, 입력 영상(61)과 노이즈 영상(62)의 쌍(pair)이 훈련용 데이터가 될 수 있다.The method of generating training data by performing noise simulation 610 on the input image 61 is as follows. The input image 61 may be a clean image containing little noise, and noise may be added by performing a noise simulation 610 while varying the noise intensity on various input images 61 stored in the database. Image 62 can be acquired. As described above, since the input image 61 corresponds to a label image, a pair of the input image 61 and the noise image 62 can be used as training data.

일 실시예에 따르면, 데이터베이스에 저장된 모든 입력 영상(61)들에 대해서 노이즈 시뮬레이션(610)을 수행함으로써 미리 훈련용 데이터를 생성해 놓을 수 있다. 또는 일 실시예에 따르면, 학습을 수행하는 과정에서 훈련용 데이터가 필요할 때마다 강도를 조절해가며 노이즈 시뮬레이션(610)을 수행함으로써 훈련용 데이터를 생성할 수도 있다. (온-더-플라이(on-the-fly) 방식)According to one embodiment, training data can be generated in advance by performing noise simulation 610 on all input images 61 stored in the database. Alternatively, according to one embodiment, training data may be generated by performing noise simulation 610 while adjusting the intensity whenever training data is needed during the learning process. (on-the-fly method)

주간 모델의 학습을 위한 훈련용 데이터를 생성하는 경우, 노이즈 시뮬레이션(610)을 통해 주간 모델에 대응되는 강도의 노이즈를 입력 영상(61)에 추가함으로써 노이즈 영상(62)을 생성할 수 있다. 예를 들어 앞서 표 1을 참조하여 설명한 실시예의 경우, 노이즈 시뮬레이션(610)을 통해 0.001 미만의 샷 노이즈를 입력 영상(61)에 추가함으로써 노이즈 영상(62)을 생성할 수 있다.When generating training data for learning a daytime model, a noise image 62 can be generated by adding noise of an intensity corresponding to the daytime model to the input image 61 through noise simulation 610. For example, in the embodiment described above with reference to Table 1, the noise image 62 can be generated by adding shot noise of less than 0.001 to the input image 61 through noise simulation 610.

비슷한 원리로 야간 모델의 학습을 위한 훈련용 데이터를 생성하는 경우, 노이즈 시뮬레이션(610)을 통해 야간 모델에 대응되는 강도의 노이즈를 입력 영상(61)에 추가함으로써 노이즈 영상(62)을 생성할 수 있다. 예를 들어 앞서 표 1을 참조하여 설명한 실시예의 경우, 노이즈 시뮬레이션(610)을 통해 0.001 이상의 샷 노이즈를 입력 영상(61)에 추가함으로써 노이즈 영상(62)을 생성할 수 있다.When generating training data for learning a night model using a similar principle, noise image 62 can be generated by adding noise of intensity corresponding to the night model to the input image 61 through noise simulation 610. there is. For example, in the embodiment described above with reference to Table 1, the noise image 62 can be generated by adding shot noise of 0.001 or more to the input image 61 through noise simulation 610.

옵티마이저(630)는 추론 영상(63) 및 입력 영상(61)이 손실함수(620)에 입력되었을 때 출력되는 결과를 최소화하도록 AI 복원 ISP(1130)의 모델 파라미터를 업데이트할 수 있다. 따라서, AI 복원 ISP(1130)는 노이즈가 추가된 영상이 입력되었을 때, 노이즈가 제거된 영상과 최대한 가까운 영상을 추론하도록 학습될 수 있다.The optimizer 630 may update the model parameters of the AI restoration ISP 1130 to minimize the results output when the inferred image 63 and the input image 61 are input to the loss function 620. Accordingly, the AI restoration ISP 1130 can be trained to infer an image as close as possible to the image from which noise has been removed when an image with noise added is input.

이상 설명한 노이즈 시뮬레이션(610), 손실함수(620)의 계산 및 옵티마이저(630)의 파라미터 업데이트는, AI 복원 ISP(1130)의 학습을 담당하는 컴퓨팅 장치의 프로세서에 의해서 수행될 수 있다.The noise simulation 610, calculation of the loss function 620, and parameter update of the optimizer 630 described above may be performed by the processor of the computing device responsible for learning the AI restoration ISP 1130.

3. 영상 보정 모듈에서의 신경망 모델 선택3. Neural network model selection in image correction module

본 개시의 일 실시예에 따르면, 영상 복원 모듈(1100)에서 수행하는 프로세스에 따라서 영상 보정 모듈(1200)의 신경망 모델이 선택될 수 있다. 예를 들어, 영상 복원 모듈(1100)이 복수의 세부 구성들을 포함하고, 세부 구성별로 수행하는 프로세스가 다르다면, 영상 복원 모듈(1100)에서 선택되는 세부 구성에 따라서 영상 보정 모듈(1200)의 신경망 모델이 선택될 수 있다.According to an embodiment of the present disclosure, a neural network model of the image correction module 1200 may be selected according to a process performed by the image restoration module 1100. For example, if the image restoration module 1100 includes a plurality of detailed configurations and the process performed for each detailed configuration is different, the neural network of the image correction module 1200 according to the detailed configuration selected in the image restoration module 1100 A model may be selected.

도 7은 본 개시의 일 실시예에 따른, 영상 복원 모듈에 따라서 영상 보정 모듈의 신경망 모델을 선택하는 방법을 설명하기 위한 도면이다. 도 7을 참고하면, 영상 복원 모듈(1100)에서 HW ISP(1110)가 선택되었다. HW ISP(1110)는 복원 프로세스 중에서 디모자이크를 수행하지만, 디노이즈는 수행하지 않는다고 가정한다.FIG. 7 is a diagram illustrating a method of selecting a neural network model of an image correction module according to an image restoration module, according to an embodiment of the present disclosure. Referring to FIG. 7, the HW ISP 1110 is selected in the image restoration module 1100. It is assumed that the HW ISP 1110 performs demosaicing during the restoration process, but does not perform denoising.

HW ISP(1110)는 자신이 수행하는 프로세스에 대한 정보(디모자이크를 수행하고, 디노이즈는 수행하지 않음)를 영상 보정 모듈(1200)에 전송할 수 있다. 영상 보정 모듈(1200)은 HW ISP(1110)로부터 수신한 정보를 통해 영상 복원 단계에서 디노이즈가 수행되지 않았음을 알 수 있고, 따라서 디노이즈 기능을 지원하는 제2 보정 파라미터를 선택하여 신경망 모델을 세팅할 수 있다. 이때, 제2 보정 파라미터는 HW ISP(1110)에 대응되도록 미리 학습된 신경망 모델에 해당될 수 있다. 다시 말해, 제2 보정 파라미터는 디노이즈가 수행되지 않은 영상을 보정하기 위해, 화이트 밸런스 조절, 색 보정 및 감마 값 조절뿐만 아니라 디노이즈까지 수행하도록 학습된 신경망 모델일 수 있다.The HW ISP 1110 may transmit information about the process it performs (demosaicing is performed, denoising is not performed) to the image correction module 1200. The image correction module 1200 can know that denoising was not performed in the image restoration step through the information received from the HW ISP 1110, and therefore selects a second correction parameter supporting the denoise function to use the neural network model. can be set. At this time, the second correction parameter may correspond to a neural network model previously learned to correspond to the HW ISP (1110). In other words, the second correction parameter may be a neural network model learned to perform not only white balance adjustment, color correction, and gamma value adjustment, but also denoise in order to correct an image on which denoising has not been performed.

도 7에 도시된 바와 같이 제2 보정 파라미터는 이미지 센서(100)로부터 획득한 화이트 밸런스 게인(White Balance Gain, WBG) 및 색 보정 행렬(Color Correction Matrix, CCM)을 이용하여 화이트 밸런스(WB) 조절, 색 보정(CC) 및 감마 값 조절도 수행할 수 있다.As shown in FIG. 7, the second correction parameter adjusts the white balance (WB) using the white balance gain (WBG) and color correction matrix (CCM) obtained from the image sensor 100. , color correction (CC) and gamma value adjustment can also be performed.

도면으로 도시하지는 않았지만, 영상 복원 모듈(1100)에서 SW ISP(1120)가 선택되고, SW ISP(1120)는 디모자이크 및 디노이즈를 수행하는 경우라면, 영상 보정 모듈(1200)에서는 SW ISP(1120)에 대응되도록 학습된 신경망 모델(모델 파라미터)이 선택될 수 있고, 이때 선택되는 신경망 모델은 디노이즈는 수행하지 않고 화이트 밸런스 조절, 색 보정 및 감마 값 조절 등만을 수행할 수 있다. 즉, 영상 복원 모듈(1100)에서 어떤 프로세스를 수행하는지에 따라서, 영상 보정 모듈(1200)에서 신경망 모델이 선택될 수 있다.Although not shown in the drawing, if the SW ISP 1120 is selected in the image restoration module 1100 and the SW ISP 1120 performs demosaicing and denoising, the image correction module 1200 performs demosaicing and denoising. ) A learned neural network model (model parameter) may be selected to correspond to, and at this time, the selected neural network model may only perform white balance adjustment, color correction, and gamma value adjustment without performing denoising. That is, depending on what process is performed in the image restoration module 1100, a neural network model may be selected in the image correction module 1200.

이상 설명한 바와 같이 일 실시예에 따르면, 영상 보정 모듈(1200)에 포함되는 신경망 모델(모델 파라미터)들은 영상 복원 모듈(1100)의 세부 구성들 각각에 대응되도록 미리 학습될 수 있으며, 영상 복원 모듈(1100)에서 세부 구성이 선택되면, 선택된 세부 구성에 대응되도록 학습된 신경망 모델이 영상 보정 모듈(1200)에서 선택될 수 있다. 그리고 이를 위해, 영상 보정 모듈(1200)은 영상 복원 모듈(1100)로부터 영상 복원 모듈(1100)이 수행하는 프로세스에 대한 정보를 수신할 수 있다.As described above, according to one embodiment, the neural network models (model parameters) included in the image correction module 1200 may be learned in advance to correspond to each detailed configuration of the image restoration module 1100, and the image restoration module ( When a detailed configuration is selected in 1100), a neural network model learned to correspond to the selected detailed configuration may be selected in the image correction module 1200. And for this purpose, the image correction module 1200 may receive information about the process performed by the image restoration module 1100 from the image restoration module 1100.

지금까지 촬영 조건에 기초하여 AI 복원 ISP(1130)에서 신경망 모델을 선택하는 방법, 그리고 영상 복원 모듈(1100)이 수행하는 프로세스에 따라서 영상 보정 모듈(1200)에서 신경망 모델을 선택하는 방법에 대해서 설명하였다.So far, we have explained how to select a neural network model in the AI restoration ISP 1130 based on shooting conditions and how to select a neural network model in the image correction module 1200 according to the process performed by the image restoration module 1100. did.

이하에서는 지금까지 설명한 내용을 기초로, 촬영 환경에 따라서 이미지 센서의 종류, 영상 복원 모듈 및 영상 보정 모듈의 세부 구성을 선택하는 실시예들에 대해서 먼저 설명한 후, 이어서 영상 보정 모듈에 포함되는 신경망 모델을 학습시키는 방법에 대해서 설명한다.Below, based on what has been explained so far, embodiments of selecting the type of image sensor, the detailed configuration of the image restoration module, and the image correction module according to the shooting environment will first be described, and then the neural network model included in the image correction module. Explains how to learn.

4. 촬영 환경에 따른 이미지 센서, 영상 복원 모듈 및 영상 보정 모듈의 선택4. Selection of image sensor, image restoration module, and image correction module according to the shooting environment

일 실시예에 따르면, 촬영 환경(촬영 조건 및 촬영 모드)에 따라서 이미지 센서의 종류, 영상 복원 모듈 및 영상 보정 모듈의 세부 구성이 선택될 수 있다. 도 8 내지 도 10은 본 개시의 실시예들에 따른, 촬영 환경에 따라 이미지 센서, 영상 복원 모듈 및 영상 보정 모듈을 선택하는 방법을 설명하기 위한 도면들이다. 도 8 내지 도 10에 도시된 바와 같이 이미지 센서(100)에는 복수의 이미지 센서들이 포함된다고 가정한다. 또한, 촬영 모드는 주간 촬영 모드(일반 촬영 모드)(도 8), 줌 촬영 모드(도 9) 및 야간 촬영 모드(도 10)를 포함한다고 가정한다.According to one embodiment, the type of image sensor, the detailed configuration of the image restoration module, and the image correction module may be selected according to the shooting environment (shooting conditions and shooting mode). 8 to 10 are diagrams for explaining a method of selecting an image sensor, an image restoration module, and an image correction module according to a shooting environment according to embodiments of the present disclosure. As shown in FIGS. 8 to 10 , it is assumed that the image sensor 100 includes a plurality of image sensors. Additionally, it is assumed that the shooting modes include daytime shooting mode (normal shooting mode) (FIG. 8), zoom shooting mode (FIG. 9), and night shooting mode (FIG. 10).

일 실시예에 따르면, 촬영 모드는 영상 신호 처리를 수행하는 컴퓨팅 장치(e.g. 도 3의 사용자 단말(3000))의 UI를 통해 사용자가 설정할 수 있다. 예를 들어, 사용자는 사용자 단말(3000)에서 카메라 애플리케이션을 실행하고, 촬영하기 전 상황에 따가 적절한 촬영 모드를 선택할 수 있다. 사용자 단말(3000)은 촬영 모드가 설정되면 그에 따라 이미지 센서(100)의 종류, 영상 복원 모듈(1100) 및 영상 보정 모듈(1200)의 세부 구성을 선택할 수 있다.According to one embodiment, the shooting mode can be set by the user through the UI of a computing device (e.g. the user terminal 3000 in FIG. 3) that performs image signal processing. For example, a user can run a camera application on the user terminal 3000 and select an appropriate shooting mode depending on the situation before shooting. When the shooting mode is set, the user terminal 3000 can select the type of the image sensor 100 and the detailed configuration of the image restoration module 1100 and the image correction module 1200 accordingly.

(1) 이미지 센서의 선택(1) Selection of image sensor

본 개시의 일 실시예에 따르면, 촬영 모드에 기초하여 이미지 센서(100)의 종류가 선택될 수 있다. 예를 들어, 이미지 센서(100)는 일반 이미지 센서, 광각 이미지 센서 및 초광각 이미지 센서 등을 포함할 수 있으며, 이들은 필요에 따라서 각각의 촬영 모드에 매칭될 수 있다.According to an embodiment of the present disclosure, the type of image sensor 100 may be selected based on the shooting mode. For example, the image sensor 100 may include a general image sensor, a wide-angle image sensor, and an ultra-wide-angle image sensor, and these may be matched to each shooting mode as needed.

도 8 내지 도 10의 실시예들에서는 주간 촬영 모드에 제1 이미지 센서가 매칭되고, 줌 촬영 모드에 제2 이미지 센서가 매칭되고, 야간 촬영 모드에 제3 이미지 센서가 매칭되었다고 가정한다. 도 8 내지 도 10을 참고하면, 각각의 촬영 모드에 따라서 대응되는 이미지 센서가 선택되었음을 알 수 있다.In the embodiments of FIGS. 8 to 10 , it is assumed that the first image sensor is matched to the daytime shooting mode, the second image sensor is matched to the zoom shooting mode, and the third image sensor is matched to the night shooting mode. Referring to Figures 8 to 10, it can be seen that a corresponding image sensor is selected according to each shooting mode.

또한 일 실시예에 따르면, 촬영 조건에 기초하여 이미지 센서(100)의 종류가 선택될 수도 있다. 예를 들어, 촬영이 수행되는 시간 및 장소를 고려했을 때 저조도 환경이라고 판단된다면, 야간 촬영에 적합한 이미지 센서(100)가 선택될 수도 있다.Additionally, according to one embodiment, the type of image sensor 100 may be selected based on shooting conditions. For example, if it is determined to be a low-light environment considering the time and place where photography is performed, an image sensor 100 suitable for night photography may be selected.

(2) 영상 복원 모듈의 선택(2) Selection of image restoration module

본 개시의 일 실시예에 따르면, 영상 복원 모듈(1100)의 세부 구성은 촬영 모드에 따라서 선택될 수도 있고, 또는 영상 촬영 시 사용된 이미지 센서(100)의 종류에 따라서 선택될 수도 있다. 이를 위해, 영상 복원 모듈(1100)의 세부 구성들은 각각 촬영 모드에 매칭되거나, 이미지 센서(100)의 종류에 매칭될 수 있다.According to an embodiment of the present disclosure, the detailed configuration of the image restoration module 1100 may be selected according to the shooting mode or the type of image sensor 100 used when shooting an image. To this end, the detailed configurations of the image restoration module 1100 may be matched to each shooting mode or to the type of the image sensor 100.

도 8 내지 도 10을 참고하면, 주간 촬영 모드일 때(제1 이미지 센서가 선택되었을 때)는 HW ISP(1110)가 선택되었고, 줌 촬영 모드일 때(제2 이미지 센서가 선택되었을 때)는 SW ISP(1120)가 선택되었고, 야간 촬영 모드일 때(제3 이미지 센서가 선택되었을 때)는 AI 복원 ISP(1130)가 선택되었음을 알 수 있다.Referring to Figures 8 to 10, when in daytime shooting mode (when the first image sensor is selected), the HW ISP (1110) is selected, and when in zoom shooting mode (when the second image sensor is selected) It can be seen that the SW ISP 1120 has been selected, and in the night shooting mode (when the third image sensor is selected), the AI restoration ISP 1130 has been selected.

도 10을 참고하면, AI 복원 ISP(1130)에서 제2 복원 파라미터가 선택되었는데, 앞서 도 5를 참조하여 설명한 바와 같이 촬영 조건(e.g. 제3 이미지 센서에서 촬영된 영상의 메타데이터에 포함된 ISO 값)에 기초하여 복수의 복원 파라미터들 중에서 제2 복원 파라미터가 선택된 것일 수 있다.Referring to FIG. 10, the second restoration parameter is selected in the AI restoration ISP 1130, and as previously described with reference to FIG. 5, the shooting conditions (e.g. ISO value included in the metadata of the image captured by the third image sensor) ) A second restoration parameter may be selected from among a plurality of restoration parameters based on .

또한 일 실시예에 따르면, 영상 복원 모듈(1100)의 세부 구성 선택 시에 촬영 모드 또는 이미지 센서(100)의 종류뿐만 아니라, 촬영 조건을 더 고려할 수도 있다. 예를 들어 도 8에 도시된 실시예에서 주간 촬영 모드로 인해 제1 이미지 센서가 선택되면, 영상 복원 모듈(1100)에서는 HW ISP(1110)가 선택될 수 있는데, 이 경우에도 만약 ISO 값이 일정 기준 이상이라면 SW ISP(1120) 또는 AI 복원 ISP(1130) 중 어느 하나가 선택될 수도 있다.Additionally, according to one embodiment, when selecting the detailed configuration of the image restoration module 1100, not only the shooting mode or the type of the image sensor 100 but also the shooting conditions may be further considered. For example, in the embodiment shown in FIG. 8, when the first image sensor is selected due to the daytime shooting mode, the HW ISP 1110 may be selected in the image restoration module 1100, and even in this case, if the ISO value is constant If it exceeds the standard, either the SW ISP (1120) or the AI restoration ISP (1130) may be selected.

또한 일 실시예에 따르면, 촬영 조건만을 고려하여 영상 복원 모듈(1100)의 세부 구성이 선택될 수도 있다. 예를 들어, ISO 값의 구간별로 대응되는 세부 구성이 미리 정해지고, 영상 복원 모듈(1100)은 영상의 메타데이터로부터 획득한 ISO 값에 따라서 세부 구성을 선택할 수도 있다.Additionally, according to one embodiment, the detailed configuration of the image restoration module 1100 may be selected considering only shooting conditions. For example, the detailed configuration corresponding to each section of the ISO value is predetermined, and the image restoration module 1100 may select the detailed configuration according to the ISO value obtained from the metadata of the image.

정리하면, 영상 복원 모듈(1100)의 세부 구성은 이미지 센서(100)의 종류, 촬영 모드 및 촬영 조건 중 적어도 하나 이상에 기초하여 선택될 수 있다. 특히, 촬영 환경(촬영 모드 및 촬영 조건)에 따라 이미지 센서(100)의 종류가 선택되면, 그에 따라 영상 복원 모듈(1100)의 세부 구성이 선택될 수 있다.In summary, the detailed configuration of the image restoration module 1100 may be selected based on at least one of the type of image sensor 100, shooting mode, and shooting conditions. In particular, if the type of image sensor 100 is selected according to the shooting environment (shooting mode and shooting conditions), the detailed configuration of the image restoration module 1100 may be selected accordingly.

(3) 영상 보정 모듈의 선택(3) Selection of image correction module

앞서 도 7을 참조하여 설명한 바와 같이, 일 실시예에 따르면 영상 복원 모듈(1100)에서 수행하는 프로세스에 따라서 영상 보정 모듈(1200)의 신경망 모델이 선택될 수 있다. 그런데 영상 복원 모듈(1100)에서 수행하는 프로세스는 영상 복원 모듈(1100)에서 어떤 세부 구성이 선택되는지에 따라서 결정될 수 있고, 영상 복원 모듈(1100)의 세부 구성은 이미지 센서의 종류, 촬영 조건 및 촬영 모드 중 적어도 하나 이상에 기초하여 선택될 수 있다. 따라서 정리하면, 영상 보정 모듈(1200)의 신경망 모델 역시 이미지 센서의 종류, 촬영 모드 및 촬영 조건 중 적어도 하나 이상에 기초하여 선택될 수 있다.As previously described with reference to FIG. 7 , according to one embodiment, the neural network model of the image correction module 1200 may be selected according to the process performed by the image restoration module 1100. However, the process performed by the image restoration module 1100 may be determined depending on which detailed configuration is selected in the image restoration module 1100, and the detailed configuration of the image restoration module 1100 may be determined by the type of image sensor, shooting conditions, and shooting conditions. It may be selected based on at least one of the modes. Therefore, in summary, the neural network model of the image correction module 1200 may also be selected based on at least one of the type of image sensor, shooting mode, and shooting conditions.

본 개시의 일 실시예에 따르면, 이미지 센서(100) 및 영상 복원 모듈(1100)의 조합별로 대응되는 영상 보정 모듈(1200)의 신경망 모델이 존재할 수 있다. 따라서 일 실시예에 따르면, 촬영 모드가 결정되면 촬영 모드에 따라서 이미지 센서(100)의 종류 및 영상 복원 모듈(1100)의 세부 구성이 선택될 수 있고, 선택된 이미지 센서(100) 및 영상 복원 모듈(1100)의 조합에 따라서 영상 보정 모듈(1200)에 포함된 복수의 신경망 모델들 중 어느 하나가 선택될 수 있다. 또한 일 실시예에 따르면, 이미지 센서(100), 영상 복원 모듈(1100) 및 영상 보정 모듈(1200)의 선택 시 촬영 조건(e.g. ISO 값)이 함께 고려될 수도 있다.According to an embodiment of the present disclosure, there may be a neural network model of the image correction module 1200 corresponding to each combination of the image sensor 100 and the image restoration module 1100. Therefore, according to one embodiment, when the shooting mode is determined, the type of the image sensor 100 and the detailed configuration of the image restoration module 1100 may be selected according to the shooting mode, and the selected image sensor 100 and the image restoration module ( 1100), any one of a plurality of neural network models included in the image correction module 1200 may be selected. Additionally, according to one embodiment, shooting conditions (e.g. ISO value) may also be considered when selecting the image sensor 100, the image restoration module 1100, and the image correction module 1200.

일 실시예에 따르면, 영상 보정 모듈(1200)에서 신경망 모델 선택 시 이미지 센서(100)의 종류를 반영할 수도 있으므로, 영상 보정 모듈(1200)은 이미지 센서(100)로부터 이미지 센서 선택 정보(어떤 이미지 센서가 선택되었는지에 대한 정보)를 획득할 수 있다.According to one embodiment, the type of image sensor 100 may be reflected when selecting a neural network model in the image correction module 1200, so the image correction module 1200 receives image sensor selection information (which image Information about whether a sensor has been selected) can be obtained.

한편, 영상 보정 모듈(1200)은 이미지 센서(100)로부터 화이트 밸런스 게인(WBG) 및 색 보정 행렬(CCM)을 획득하고, 이를 이용하여 화이트 밸런스 조절, 색 보정 및 감마 값 조절 등을 수행할 수 있다.Meanwhile, the image correction module 1200 can obtain the white balance gain (WBG) and color correction matrix (CCM) from the image sensor 100 and use them to perform white balance adjustment, color correction, and gamma value adjustment. there is.

도 8을 참고하면, 주간 촬영 모드인 경우 이미지 센서(100)에서 제1 이미지 센서가 선택되고, 영상 복원 모듈(1100)에서는 제1 이미지 센서에 대응되는 HW ISP(1110)가 선택될 수 있다. 일 실시예에 따르면, 영상 복원 모듈(1100)의 세부 구성 선택 시 촬영 조건이 함께 고려될 수도 있는데, 예를 들어 주간 촬영 모드이고 제1 이미지 센서가 선택되었더라도, ISO 값이 일정 기준 이상으로 높다면 HW ISP(1110) 대신 SW ISP(1120) 또는 AI 복원 ISP(1130) 중 어느 하나가 선택될 수도 있다.Referring to FIG. 8 , in the daytime shooting mode, the first image sensor may be selected in the image sensor 100, and the HW ISP 1110 corresponding to the first image sensor may be selected in the image restoration module 1100. According to one embodiment, shooting conditions may also be considered when selecting the detailed configuration of the image restoration module 1100. For example, even if it is daytime shooting mode and the first image sensor is selected, if the ISO value is higher than a certain standard, Instead of the HW ISP 1110, either the SW ISP 1120 or the AI restoration ISP 1130 may be selected.

영상 보정 모듈(1200)에서는 HW ISP(1110)에 대응되는 제1 보정 파라미터가 선택될 수 있다. 이때, 제1 보정 파라미터는 HW ISP(1110)에 대응되도록 학습된 신경망 모델일 수 있다. 예를 들어, HW ISP(1110)에서 디모자이크만 수행하고 디노이즈를 수행하지 않는다면, 제1 보정 파라미터는 화이트 밸런스 조절, 색 보정 및 감마 값 조절뿐만 아니라 디노이즈까지 수행하도록 학습된 신경망 모델일 수 있다.In the image correction module 1200, a first correction parameter corresponding to the HW ISP 1110 may be selected. At this time, the first correction parameter may be a neural network model learned to correspond to the HW ISP (1110). For example, if the HW ISP 1110 only performs demosaicing and does not denoise, the first correction parameter may be a neural network model learned to perform denoising as well as white balance adjustment, color correction, and gamma value adjustment. there is.

한편, 앞서 설명한 바와 같이 영상 보정 모듈(1200)에서의 신경망 모델 선택 시 이미지 센서(100)의 종류를 고려할 수 있는데, 예를 들어 영상 복원 모듈(1100)에서는 동일하게 HW ISP(1110)가 선택되었지만, 이미지 센서(100)에서 제2 이미지 센서 또는 제3 이미지 센서가 선택되었다면, 영상 보정 모듈(1200)에서는 제1 보정 파라미터가 아닌 다른 보정 파라미터가 선택될 수도 있다. 따라서, 영상 보정 모듈(1200)에 포함되는 신경망 모델들은 이미지 센서(100) 및 영상 복원 모듈(1100)의 조합에 대응되도록 학습된 것일 수 있다. 또한, 영상 보정 모듈(1200)에 포함되는 신경망 모델들은 촬영 환경에 대응되도록 학습된 것일 수 있다.Meanwhile, as described above, the type of image sensor 100 can be considered when selecting a neural network model in the image correction module 1200. For example, the HW ISP 1110 was selected in the same way in the image restoration module 1100. , if the second or third image sensor is selected in the image sensor 100, a correction parameter other than the first correction parameter may be selected in the image correction module 1200. Accordingly, the neural network models included in the image correction module 1200 may be learned to correspond to the combination of the image sensor 100 and the image restoration module 1100. Additionally, neural network models included in the image correction module 1200 may be learned to correspond to the shooting environment.

도 9를 참고하면, 줌 촬영 모드인 경우 이미지 센서(100)에서 제2 이미지 센서가 선택되고, 영상 복원 모듈(1100)에서는 제2 이미지 센서에 대응되는 SW ISP(1120)가 선택될 수 있다. 일 실시예에 따르면, 제2 이미지 센서는 다중 프레임을 캡처할 수 있는 이미지 센서로서 광각 렌즈와 매칭되는 이미지 센서일 수 있고, 제2 이미지 센서를 통해 획득한 복수의 프레임을 합성해서 확대하기 용이할 수 있다.Referring to FIG. 9 , in the zoom shooting mode, the second image sensor may be selected in the image sensor 100, and the SW ISP 1120 corresponding to the second image sensor may be selected in the image restoration module 1100. According to one embodiment, the second image sensor is an image sensor capable of capturing multiple frames and may be an image sensor that matches a wide-angle lens, and may be easily enlarged by combining a plurality of frames obtained through the second image sensor. You can.

일 실시예에 따르면, 줌 촬영 모드에서 제2 이미지 센서가 물리적으로 일정 배수만큼 확대한 영상을 SW ISP(1120)에 전달하면, SW ISP(1120)는 수신한 영상에 대해서 센터 크롭(center crop)을 수행한 후 크롭된 영역을 알고리즘을 통해 일정 배수만큼 확대할 수 있다. 또한, SW ISP(1120)는 디모자이크 및 슈퍼 레졸루션(Super Resolution, SR)을 더 수행하여 리니어 RGB 영상을 출력할 수 있다.According to one embodiment, in zoom shooting mode, when the second image sensor transmits an image physically enlarged by a certain number to the SW ISP (1120), the SW ISP (1120) performs a center crop on the received image. After performing , the cropped area can be enlarged by a certain number of times through an algorithm. Additionally, the SW ISP 1120 can further perform demosaicing and super resolution (SR) to output a linear RGB image.

일 실시예에 따르면, 영상 복원 모듈(1100)의 세부 구성 선택 시 촬영 조건이 함께 고려될 수도 있는데, 예를 들어 줌 촬영 모드이고 제2 이미지 센서가 선택되었더라도, ISO 값이 일정 기준 이상으로 높다면 SW ISP(1120) 대신 AI 복원 ISP(1130)가 선택될 수도 있다. 또한, AI 복원 ISP(1130) 내에서도 ISO 값에 따라서 신경망 모델(복원 파라미터)이 선택될 수 있다.According to one embodiment, shooting conditions may also be considered when selecting the detailed configuration of the image restoration module 1100. For example, even if it is zoom shooting mode and the second image sensor is selected, if the ISO value is higher than a certain standard, The AI restoration ISP (1130) may be selected instead of the SW ISP (1120). Additionally, within the AI restoration ISP 1130, a neural network model (restoration parameter) may be selected according to the ISO value.

영상 보정 모듈(1200)에서는 SW ISP(1120)에 대응되는 제2 보정 파라미터가 선택될 수 있다. 이때, 제2 보정 파라미터는 줌 촬영 모드 및 SW ISP(1120)에 대응되도록 학습된 신경망 모델일 수 있다. 예를 들어, 제2 보정 파라미터는 확대된 이미지에 적합한 영상 특성을 갖도록 영상을 보정할 수 있게 미리 학습된 신경망 모델일 수 있다. 이때, '확대된 이미지에 적합한 영상 특성'이란 일률적으로 정해지는 것이 아닌, 사용자 또는 관리자가 객관적인 통계 데이터나 개인 또는 다수의 선호도 등에 따라 미리 설정하는 것일 수 있다. 또한 예를 들어, 제2 보정 파라미터는 최종 영상 내 객체가 최대한 뚜렷하고 선명하게 나타나도록 영상 특성을 보정(e.g. 명암비를 높이도록 보정)할 수 있게 학습된 신경망 모델일 수 있다.In the image correction module 1200, a second correction parameter corresponding to the SW ISP 1120 may be selected. At this time, the second correction parameter may be a neural network model learned to correspond to the zoom shooting mode and the SW ISP (1120). For example, the second correction parameter may be a neural network model learned in advance to correct the image to have image characteristics suitable for the enlarged image. At this time, 'image characteristics suitable for the enlarged image' may not be uniformly determined, but may be set in advance by the user or administrator based on objective statistical data or individual or multiple preferences. Also, for example, the second correction parameter may be a neural network model learned to correct image characteristics (e.g., correct to increase contrast ratio) so that objects in the final image appear as clearly and clearly as possible.

또한 일 실시예에 따르면, 줌 촬영 모드에 대응되는 SW ISP(1120)는 센터 크롭, 디모자이크 및 슈퍼 레졸루션을 수행하므로(디노이즈는 수행하지 않음), 그에 따라 제2 보정 파라미터는 화이트 밸런스 조절, 색 보정 및 감마 값 조절뿐만 아니라 디노이즈까지 수행하도록 학습된 신경망 모델일 수 있다.Also, according to one embodiment, the SW ISP 1120 corresponding to the zoom shooting mode performs center cropping, demosaicing, and super resolution (but does not perform denoising), and accordingly, the second correction parameter includes white balance adjustment, It may be a neural network model trained to perform color correction and gamma value adjustment as well as denoise.

한편, 앞서 설명한 바와 같이 영상 보정 모듈(1200)에서의 신경망 모델 선택 시 이미지 센서(100)의 종류를 고려할 수 있는데, 예를 들어 영상 복원 모듈(1100)에서는 동일하게 SW ISP(1120)가 선택되었지만, 이미지 센서(100)에서 제1 이미지 센서 또는 제3 이미지 센서가 선택되었다면, 영상 보정 모듈(1200)에서는 제2 보정 파라미터가 아닌 다른 보정 파라미터가 선택될 수도 있다. 따라서, 영상 보정 모듈(1200)에 포함되는 신경망 모델들은 이미지 센서(100) 및 영상 복원 모듈(1100)의 조합에 대응되도록 학습된 것일 수 있다. 또한, 영상 보정 모듈(1200)에 포함되는 신경망 모델들은 촬영 환경에 대응되도록 학습된 것일 수 있다.Meanwhile, as described above, the type of image sensor 100 can be considered when selecting a neural network model in the image correction module 1200. For example, the SW ISP 1120 was selected in the same way in the image restoration module 1100. , if the first image sensor or the third image sensor is selected in the image sensor 100, a correction parameter other than the second correction parameter may be selected in the image correction module 1200. Accordingly, the neural network models included in the image correction module 1200 may be learned to correspond to the combination of the image sensor 100 and the image restoration module 1100. Additionally, neural network models included in the image correction module 1200 may be learned to correspond to the shooting environment.

도 10을 참고하면, 야간 촬영 모드인 경우 이미지 센서(100)에서 제3 이미지 센서가 선택되고, 영상 복원 모듈(1100)에서는 제3 이미지 센서에 대응되는 AI 복원 ISP(1130)가 선택될 수 있다. 일 실시예에 따르면, 제3 이미지 센서는 광각 렌즈에 매칭되는 이미지 센서일 수 있다. 앞서 도 5를 참조하여 설명한 바와 같이, AI 복원 ISP(1130)에서는 ISO 값에 기초하여 복수의 신경망 모델(복원 파라미터)들 중 어느 하나(제2 복원 파라미터)가 선택될 수 있다. 또한, AI 복원 ISP(1130)에서 선택된 제2 복원 파라미터는 ISO 값에 기초하여 결정되는 강도로 디노이즈를 수행할 수 있다.Referring to FIG. 10, in the night shooting mode, the third image sensor may be selected in the image sensor 100, and the AI restoration ISP 1130 corresponding to the third image sensor may be selected in the image restoration module 1100. . According to one embodiment, the third image sensor may be an image sensor matching a wide-angle lens. As previously described with reference to FIG. 5 , the AI restoration ISP 1130 may select one (second restoration parameter) from a plurality of neural network models (restoration parameters) based on the ISO value. Additionally, the second restoration parameter selected by the AI restoration ISP 1130 may perform denoising at an intensity determined based on the ISO value.

일 실시예에 따르면, 영상 복원 모듈(1100)의 세부 구성 선택 시 촬영 조건이 함께 고려될 수도 있는데, 예를 들어 야간 촬영 모드이고 제3 이미지 센서가 선택되었더라도, ISO 값이 일정 기준 미만으로 낮다면 AI 복원 ISP(1130) 대신 SW ISP(1120) 또는 HW ISP(1110) 중 어느 하나가 선택될 수도 있다.According to one embodiment, shooting conditions may also be considered when selecting the detailed configuration of the image restoration module 1100. For example, even if it is night shooting mode and a third image sensor is selected, if the ISO value is lower than a certain standard, Instead of the AI restoration ISP 1130, either the SW ISP 1120 or the HW ISP 1110 may be selected.

영상 보정 모듈(1200)에서는 AI 복원 ISP(1120)의 제2 복원 파라미터에 대응되는 제3 보정 파라미터가 선택될 수 있다. 이때, 제3 보정 파라미터는 AI 복원 ISP(1120)의 제2 복원 파라미터에 대응되도록 학습된 신경망 모델일 수 있다. 예를 들어, 제3 보정 파라미터는 암부를 최대한 선명하게 밝혀주도록 영상 특성을 보정(e.g. 특정 영역의 밝기를 높이도록 보정)할 수 있게 학습된 신경망 모델일 수 있다.In the image correction module 1200, a third correction parameter corresponding to the second restoration parameter of the AI restoration ISP 1120 may be selected. At this time, the third correction parameter may be a neural network model learned to correspond to the second restoration parameter of the AI restoration ISP (1120). For example, the third correction parameter may be a neural network model learned to correct image characteristics to brighten dark areas as clearly as possible (e.g. to increase the brightness of a specific area).

또한 일 실시예에 따라 AI 복원 ISP(1120)의 제2 복원 파라미터에서 디모자이크 및 디노이즈를 수행한다면, 제3 보정 파라미터는 디노이즈는 수행하지 않고, 화이트 밸런스 조절, 색 보정 및 감마 값 조절 등을 수행하도록 학습된 신경망 모델일 수 있다.In addition, according to one embodiment, if demosaicing and denoising are performed in the second restoration parameter of the AI restoration ISP 1120, the third correction parameter does not perform denoising, but white balance adjustment, color correction, gamma value adjustment, etc. It may be a neural network model trained to perform.

한편, 앞서 설명한 바와 같이 영상 보정 모듈(1200)에서의 신경망 모델 선택 시 이미지 센서(100)의 종류를 고려할 수 있는데, 예를 들어 영상 복원 모듈(1100)에서는 동일하게 AI 복원 ISP(1130)가 선택되었지만, 이미지 센서(100)에서 제2 이미지 센서 또는 제3 이미지 센서가 선택되었다면, 영상 보정 모듈(1200)에서는 제3 보정 파라미터가 아닌 다른 보정 파라미터가 선택될 수도 있다. 따라서, 영상 보정 모듈(1200)에 포함되는 신경망 모델들은 이미지 센서(100) 및 영상 복원 모듈(1100)의 조합에 대응되도록 학습된 것일 수 있다. 또한, 영상 보정 모듈(1200)에 포함되는 신경망 모델들은 촬영 환경에 대응되도록 학습된 것일 수 있다.Meanwhile, as described above, the type of image sensor 100 can be considered when selecting a neural network model in the image correction module 1200. For example, in the image restoration module 1100, the AI restoration ISP 1130 is selected in the same way. However, if the second or third image sensor is selected in the image sensor 100, a correction parameter other than the third correction parameter may be selected in the image correction module 1200. Accordingly, the neural network models included in the image correction module 1200 may be learned to correspond to the combination of the image sensor 100 and the image restoration module 1100. Additionally, neural network models included in the image correction module 1200 may be learned to correspond to the shooting environment.

이상 살펴본 바와 같이, 영상 보정 모듈(1200)의 신경망 모델은 이미지 센서(100)의 종류, 촬영 모드 및 촬영 조건 중 적어도 하나 이상에 기초하여 선택될 수 있다. 특히, 촬영 환경(촬영 모드 및 촬영 조건)에 따라 이미지 센서(100)의 종류 및 영상 복원 모듈(1100)의 세부 구성이 선택되면, 그에 따라 영상 보정 모듈(1200)의 신경망 모델이 선택될 수 있다.As described above, the neural network model of the image correction module 1200 may be selected based on at least one of the type of image sensor 100, shooting mode, and shooting conditions. In particular, if the type of image sensor 100 and the detailed configuration of the image restoration module 1100 are selected according to the shooting environment (shooting mode and shooting conditions), the neural network model of the image correction module 1200 may be selected accordingly. .

또한 일 실시예에 따르면, 영상 보정 모듈(1200)의 신경망 모델은 각각의 촬영 모드에 대응되도록 선택될 수 있고, 선택되는 신경망 모델은 대응되는 촬영 모드에 따라 적절하게 영상 특성을 보정하는 방향으로 미리 학습된 것일 수 있다. 이때, '각각의 촬영 모드에 따라 적절하게 영상 특성을 보정하는 방향'이란 사용자 또는 관리자가 객관적인 통계 데이터나 개인 또는 다수의 선호도 등에 따라서 미리 설정하는 것일 수 있다.Additionally, according to one embodiment, the neural network model of the image correction module 1200 may be selected to correspond to each shooting mode, and the selected neural network model may be selected in advance in the direction of appropriately correcting image characteristics according to the corresponding shooting mode. It may be something learned. At this time, the 'direction of appropriately correcting image characteristics according to each shooting mode' may be set in advance by the user or administrator based on objective statistical data or individual or majority preferences.

아래에서는 지금까지 설명한 실시예들의 프로세스를 순서도를 참조하여 설명한다. 도 11 내지 도 14는 본 개시의 실시예들에 따른, 신경망 모델을 이용하여 영상 신호를 처리하는 방법을 설명하기 위한 순서도들이다.Below, the processes of the embodiments described so far will be described with reference to the flow chart. 11 to 14 are flowcharts for explaining a method of processing an image signal using a neural network model according to embodiments of the present disclosure.

도 11을 참고하면, 1101 단계에서 컴퓨팅 장치(e.g. 도 3의 사용자 단말(3000))는 이미지 센서를 통해 촬영된 영상을 획득할 수 있다. 이때, 이미지 센서는 서로 다른 종류의 복수의 이미지 센서들 중에서, 촬영 조건 및 촬영 모드 중 적어도 하나 이상에 기초하여 선택된 것일 수 있다.Referring to FIG. 11, in step 1101, a computing device (e.g. user terminal 3000 of FIG. 3) may acquire an image captured through an image sensor. At this time, the image sensor may be selected from among a plurality of different types of image sensors based on at least one of shooting conditions and shooting mode.

1102 단계에서 컴퓨팅 장치는 영상의 촬영 환경(촬영 조건, 촬영 모드)을 확인할 수 있다. 일 실시예에 따르면, 컴퓨팅 장치는 영상의 메타데이터로부터 영상이 촬영된 시간 및 장소, 그리고 ISO 값 등의 촬영 조건을 획득할 수 있다. 컴퓨팅 장치가 이미지 센서를 포함하는 경우, 즉 컴퓨팅 장치를 통해 영상을 촬영하는 경우라면 컴퓨팅 장치는 촬영 시 설정된 촬영 모드를 직접 확인할 수 있다. 또는 컴퓨팅 장치가 이미지 센서를 포함하지 않고, 촬영된 영상을 수신하여 영상 신호 처리만을 수행하는 경우라면 컴퓨팅 장치는 수신한 영상의 메타데이터로부터 촬영 모드를 확인할 수 있다.In step 1102, the computing device can check the shooting environment (shooting conditions, shooting mode) of the image. According to one embodiment, the computing device may obtain shooting conditions, such as the time and place where the image was captured, and the ISO value, from the metadata of the image. If the computing device includes an image sensor, that is, if an image is captured through the computing device, the computing device can directly check the shooting mode set at the time of shooting. Alternatively, if the computing device does not include an image sensor and only receives captured images and performs image signal processing, the computing device may check the capturing mode from metadata of the received images.

일 실시예에 따르면, 촬영 환경은 촬영 조건 및 촬영 모드 중 적어도 하나를 포함할 수 있다. 촬영 조건은 영상의 ISO 값, 영상이 촬영된 시간 및 장소 중 적어도 하나를 포함할 수 있다. 촬영 모드는 일반 촬영 모드, 야간 촬영 모드 및 줌 촬영 모드 중 적어도 하나를 포함할 수 있다.According to one embodiment, the shooting environment may include at least one of shooting conditions and shooting modes. The shooting conditions may include at least one of the ISO value of the image and the time and place at which the image was captured. The shooting mode may include at least one of a normal shooting mode, a night shooting mode, and a zoom shooting mode.

1103 단계에서 컴퓨팅 장치는 촬영 환경에 따라서 영상 복원 모듈 및 영상 보정 모듈 중 적어도 하나에 포함되는 신경망 모델을 선택할 수 있다. 1103 단계에 포함되는 세부 단계들을 도 12에 도시하였다.In step 1103, the computing device may select a neural network model included in at least one of the image restoration module and the image correction module according to the shooting environment. Detailed steps included in step 1103 are shown in FIG. 12.

도 12를 참고하면, 1201 단계에서 컴퓨팅 장치는 촬영 환경 및 선택된 이미지 센서의 종류 중 적어도 하나 이상에 기초하여 영상 복원 모듈의 세부 구성을 선택할 수 있다. 1201 단계에 포함되는 세부 단계들을 도 13에 도시하였다.Referring to FIG. 12 , in step 1201, the computing device may select a detailed configuration of the image restoration module based on at least one of the shooting environment and the type of the selected image sensor. Detailed steps included in step 1201 are shown in FIG. 13.

도 13을 참고하면, 1301 단계에서 컴퓨팅 장치는 촬영 모드 또는 선택된 이미지 센서의 종류 중 적어도 하나 이상에 기초하여 1차적으로 세부 구성을 선택할 수 있다.Referring to FIG. 13, in step 1301, the computing device may initially select a detailed configuration based on at least one of the shooting mode or the type of the selected image sensor.

1302 단계에서 컴퓨팅 장치는 촬영 조건에 기초하여, 1차적으로 선택된 세부 구성을 유지하거나 변경할 수 있다. 예를 들어, 컴퓨팅 장치는 촬영 조건에 포함된 ISO 값을 고려했을 때, 1차적으로 선택된 세부 구성을 변경할 필요가 있다면, ISO 값에 기초하여 새로운 세부 구성을 선택할 수 있다. 일 실시예에 따르면, 촬영 모드 또는 이미지 센서의 종류에 대응되는 영상 복원 모듈의 세부 구성이 미리 지정될 수 있다.In step 1302, the computing device may maintain or change the primarily selected detailed configuration based on the shooting conditions. For example, if it is necessary to change the primarily selected detailed configuration considering the ISO value included in the shooting condition, the computing device may select a new detailed configuration based on the ISO value. According to one embodiment, the detailed configuration of the image restoration module corresponding to the shooting mode or type of image sensor may be specified in advance.

다시 도 12로 돌아가서, 일 실시예에 따르면 1201 단계에서 영상 복원 모듈의 세부 구성을 선택함에 있어서, 컴퓨팅 장치는 촬영 조건에 포함된 ISO 값에 기초하여, 영상 복원 모듈에 포함된 복수의 신경망 모델들 중 어느 하나를 선택할 수도 있다. 이때, 영상 복원 모듈에서 선택된 신경망 모델은, 디노이즈 기능을 포함하며, 촬영 조건에 포함된 ISO 값에 대응되는 노이즈를 포함하는 영상을 이용하여 학습된 신경망 모델일 수 있다.Returning to FIG. 12, according to one embodiment, in selecting the detailed configuration of the image restoration module in step 1201, the computing device uses a plurality of neural network models included in the image restoration module based on the ISO value included in the shooting condition. You can choose any one of them. At this time, the neural network model selected in the image restoration module includes a denoise function and may be a neural network model learned using an image containing noise corresponding to the ISO value included in the shooting conditions.

1202 단계에서 컴퓨팅 장치는 촬영 환경, 선택된 이미지 센서의 종류 및 선택된 영상 복원 모듈의 세부 구성 중 적어도 하나 이상에 기초하여, 영상 보정 모듈에 포함된 복수의 신경망 모델 중 어느 하나를 선택할 수 있다. 일 실시예에 따르면, 컴퓨팅 장치는 선택된 이미지 센서의 종류 및 선택된 영상 복원 모듈의 세부 구성의 조합에 대응되는 신경망 모델을 선택할 수 있다. 이때 선택된 신경망 모델은, 영상이 촬영된 촬영 환경에 따라 영상 특성을 보정하도록 학습된 신경망 모델일 수 있다.In step 1202, the computing device may select one of a plurality of neural network models included in the image correction module based on at least one of the shooting environment, the type of the selected image sensor, and the detailed configuration of the selected image restoration module. According to one embodiment, the computing device may select a neural network model corresponding to a combination of the type of the selected image sensor and the detailed configuration of the selected image restoration module. At this time, the selected neural network model may be a neural network model learned to correct image characteristics according to the shooting environment in which the image was captured.

다시 도 11로 돌아가서, 1104 단계에서 컴퓨팅 장치는 선택된 신경망 모델을 이용하여 영상을 처리할 수 있다.Returning to FIG. 11 , in step 1104, the computing device may process the image using the selected neural network model.

도 14에는 촬영 환경에 따라 이미지 센서의 종류, 영상 복원 모듈의 세부 구성 및 영상 보정 모듈의 신경망 모델을 순차적으로 선택하는 실시예를 설명하기 위한 순서도를 도시하였다.Figure 14 shows a flow chart to explain an embodiment of sequentially selecting the type of image sensor, the detailed configuration of the image restoration module, and the neural network model of the image correction module according to the shooting environment.

도 14를 참고하면, 1401 단계에서 컴퓨팅 장치는 촬영 조건 및 촬영 모드에 기초하여 이미지 센서의 종류를 선택할 수 있다. 일 실시예에 따르면, 촬영 조건 및 촬영 모드의 조합별로 대응되는 이미지 센서의 종류가 미리 정해져 있을 수 있다. 또는 일 실시예에 따르면, 촬영 모드별로 대응되는 이미지 센서의 종류가 미리 정해져 있을 수도 있다. 또는 일 실시예에 따르면, 촬영 모드별로 대응되는 이미지 센서의 종류가 미리 정해져 있어, 컴퓨팅 장치는 기본적으로 촬영 모드에 따라서 이미지 센서의 종류를 선택하되, 촬영 조건이 특정 기준을 충족하는 경우 다른 이미지 센서를 선택할 수도 있다.Referring to FIG. 14, in step 1401, the computing device may select the type of image sensor based on shooting conditions and shooting mode. According to one embodiment, the type of image sensor corresponding to each combination of shooting conditions and shooting modes may be predetermined. Or, according to one embodiment, the type of image sensor corresponding to each shooting mode may be predetermined. Or, according to one embodiment, the type of image sensor corresponding to each shooting mode is predetermined, so the computing device basically selects the type of image sensor according to the shooting mode, but if the shooting condition meets a specific standard, another image sensor is selected. You can also select .

1402 단계에서 컴퓨팅 장치는 선택된 이미지 센서의 종류에 따라서 영상 복원 모듈의 세부 구성을 선택할 수 있다. 이를 위해, 각각의 이미지 센서의 종류마다 대응되는 영상 복원 모듈의 세부 구성이 미리 정해져 있을 수 있다. 예를 들어, 선택된 이미지 센서가 줌 촬영을 수행하기 위한 이미지 센서라면, 영상 복원 모듈에서는 센터 크롭 및 확대를 수행하는 세부 구성이 선택될 수 있다.In step 1402, the computing device may select the detailed configuration of the image restoration module according to the type of image sensor selected. To this end, the detailed configuration of the image restoration module corresponding to each type of image sensor may be predetermined. For example, if the selected image sensor is an image sensor for performing zoom photography, detailed configuration for performing center cropping and enlargement may be selected in the image restoration module.

1403 단계에서 컴퓨팅 장치는 선택된 이미지 센서의 종류 및 선택된 영상 복원 모듈의 세부 구성의 조합에 따라서 영상 보정 모듈에 포함된 복수의 신경망 모델들 중 어느 하나를 선택할 수 있다. 이때 선택되는 신경망 모델은, 선택된 이미지 센서의 종류 및 선택된 영상 복원 모듈의 세부 구성의 조합에 대응되는 촬영 환경에 따라 영상 특성을 보정하도록 학습된 신경망 모델일 수 있다. 예를 들어, 선택된 이미지 센서의 종류 및 선택된 영상 복원 모듈의 세부 구성의 조합에 대응되는 촬영 환경이, 저조도에서 줌 촬영 모드로 촬영을 하는 경우라면, 영상 보정 모듈에서 선택되는 신경망 모델은 밝기 및 명암비를 증가시키도록 학습된 신경망 모델일 수 있따.In step 1403, the computing device may select one of a plurality of neural network models included in the image correction module according to a combination of the type of the selected image sensor and the detailed configuration of the selected image restoration module. At this time, the selected neural network model may be a neural network model learned to correct image characteristics according to the shooting environment corresponding to the combination of the type of the selected image sensor and the detailed configuration of the selected image restoration module. For example, if the shooting environment corresponding to the combination of the type of image sensor selected and the detailed configuration of the selected image restoration module is shooting in zoom shooting mode in low light, the neural network model selected in the image correction module is based on brightness and contrast ratio. It could be a neural network model trained to increase .

1404 단계에서 컴퓨팅 장치는 선택된 영상 복원 모듈의 세부 구성 및 선택된 영상 보정 모듈의 신경망 모델을 이용하여, 선택된 이미지 센서에서 촬영된 영상을 처리할 수 있다.In step 1404, the computing device may process the image captured by the selected image sensor using the detailed configuration of the selected image restoration module and the neural network model of the selected image correction module.

4. 응용 실시예 - 객체 인식 결과를 반영한 이미지 센서, 영상 복원 모듈 및 영상 보정 모듈의 선택4. Application Example - Selection of an image sensor, image restoration module, and image correction module reflecting object recognition results

이하에서는 구체적인 실시예로서, 객체 인식 모드(e.g. 객체 인식하는 AI 카메라 모드)로 촬영을 수행하는 경우 객체 인식 결과에 따라 이미지 센서, 영상 복원 모듈 및 영상 보정 모듈의 조합을 변경하는 방식에 대해서 도 15를 참조하여 설명한다.Hereinafter, as a specific embodiment, when shooting in object recognition mode (e.g. AI camera mode that recognizes objects), the method of changing the combination of the image sensor, image restoration module, and image correction module according to the object recognition result is shown in Figure 15. It is explained with reference to .

도 15를 참고하면, 객체 인식 모드에 따라 제1 이미지 센서에서 영상을 촬영하고, 촬영된 영상은 영상 복원 모듈(1100)의 AI 복원 ISP(1130)를 통해 처리될 수 있다. 도 15의 실시예에서 AI 복원 ISP(1130)는 제2 복원 파라미터로 세팅된 상태에서 영상 신호를 처리하는데, 제2 복원 파라미터는 촬영 모드(객체 인식 모드) 및 촬영 조건(e.g. ISO 값)에 기초하여 선택될 것일 수 있다.Referring to FIG. 15, an image is captured by the first image sensor according to the object recognition mode, and the captured image may be processed through the AI restoration ISP 1130 of the image restoration module 1100. In the embodiment of FIG. 15, the AI restoration ISP 1130 processes the image signal with the second restoration parameter set, and the second restoration parameter is based on the shooting mode (object recognition mode) and shooting conditions (e.g. ISO value). So it may be selected.

도 15의 실시예에서 영상 보정 모듈(1200)에서는 제1 이미지 센서와 제2 복원 파라미터의 조합에 대응되는, 제3 보정 파라미터가 선택되었다. 일 실시예에 따르면, 제3 보정 파라미터는 객체 인식 정확도를 높이는 방향으로 영상 특성을 보정하도록 학습된 신경망 모델일 수 있다.In the embodiment of FIG. 15 , a third correction parameter corresponding to a combination of the first image sensor and the second restoration parameter is selected in the image correction module 1200. According to one embodiment, the third correction parameter may be a neural network model learned to correct image characteristics in the direction of increasing object recognition accuracy.

객체 인식 모듈(1510)은 영상 보정 모듈(1200)이 출력한 영상으로부터 객체를 인식할 수 있다. 일 실시예에 따르면, 객체 인식 모듈(1510)은 객체 인식 결과에 기초하여 이미지 센서(100)의 변경을 요청할 수 있다. 또한 일 실시예에 따르면, 객체 인식 모듈(1510)은 객체 인식 결과에 기초하여 사용자에게 다른 촬영 모드를 추천하거나, 자동으로 촬영 모드를 변경할 수도 있다.The object recognition module 1510 may recognize an object from the image output by the image correction module 1200. According to one embodiment, the object recognition module 1510 may request a change to the image sensor 100 based on the object recognition result. Additionally, according to one embodiment, the object recognition module 1510 may recommend a different shooting mode to the user or automatically change the shooting mode based on the object recognition result.

예를 들어, 객체 인식을 수행한 결과 달(moon)이 인식되었다면, 객체 인식 모듈(1510)은 광각 렌즈와 매칭된 이미지 센서로 변경하도록 이미지 센서(100)에 요청하거나, 사용자에게 광각 촬영 모드로 변경할 것을 추천하거나, 자동으로 광각 촬영 모드로 변경할 수 있다.For example, if the moon is recognized as a result of object recognition, the object recognition module 1510 requests the image sensor 100 to change to an image sensor matched to a wide-angle lens, or instructs the user to change to a wide-angle shooting mode. It is recommended to change, or it can automatically change to wide-angle shooting mode.

객체 인식 결과에 따라서 이미지 센서(100)의 종류 또는 촬영 모드가 변경되면, 그에 따라 영상 복원 모듈(1100)의 세부 구성 및 영상 보정 모듈(1200)의 신경망 모델도 변경될 수 있다.If the type or shooting mode of the image sensor 100 is changed according to the object recognition result, the detailed configuration of the image restoration module 1100 and the neural network model of the image correction module 1200 may also be changed accordingly.

이와 같이 객체 인식 결과에 따라서 이미지 센서(100)의 종류, 영상 복원 모듈(1100)의 세부 구성 및 영상 보정 모듈(1200)의 신경망 모델이 변경되면, 변경된 설정에 따라서 다시 영상 신호를 처리하여 최종 영상을 출력할 수 있다.In this way, if the type of image sensor 100, the detailed configuration of the image restoration module 1100, and the neural network model of the image correction module 1200 are changed according to the object recognition result, the image signal is processed again according to the changed settings to produce the final image. can be output.

도 15에 도시된 실시예에서는 객체 인식 모듈(1510)이 영상 보정 모듈(1200)에서 출력된 영상으로부터 객체를 인식하지만, 객체 인식 모듈(1510)은 다른 위치에서 객체 인식을 수행할 수도 있다. 예를 들어, 객체 인식 모듈(1510)은 이미지 센서(100)에서 출력된 영상으로부터 객체를 인식할 수도 있고, 또는 영상 복원 모듈(1100)로부터 출력된 영상으로부터 객체를 인식할 수도 있다.In the embodiment shown in FIG. 15, the object recognition module 1510 recognizes an object from the image output from the image correction module 1200, but the object recognition module 1510 may also perform object recognition at another location. For example, the object recognition module 1510 may recognize an object from an image output from the image sensor 100 or may recognize an object from an image output from the image restoration module 1100.

5. 영상 보정 모듈에 포함되는 신경망 모델의 학습5. Learning of the neural network model included in the image correction module

앞서 설명한 바와 같이 영상 보정 모듈(1200)에 포함되는 신경망 모델들은 촬영 환경별로 영상 특성의 보정 방향을 다르게 설정(e.g. 줌 촬영 모드의 경우 명암비 증가, 야간 촬영 모드의 경우 발기 증가 등)하여 학습될 수 있는데, 이하에서는 도 16 내지 도 33을 참조하여 영상 보정 모듈(1200)에 포함되는 신경망 모델을 학습시키는 방법에 대해서 설명한다.As described above, the neural network models included in the image correction module 1200 can be learned by setting the correction direction of image characteristics differently for each shooting environment (e.g. increasing contrast ratio in zoom shooting mode, increasing erection in night shooting mode, etc.). Hereinafter, a method of learning a neural network model included in the image correction module 1200 will be described with reference to FIGS. 16 to 33.

이하의 실시예들에서 영상 보정 모듈(1200)에 포함되는 신경망 모델들은 각각 두 개의 신경망 모델(제1 신경망 모델 및 제2 신경망 모델)을 포함한다고 가정한다. 다시 말해, 영상 보정 모듈(1200)에 포함되는 각각의 보정 파라미터는, 제1 신경망 모델을 세팅하기 위한 파라미터와 제2 신경망 모델을 세팅하기 위한 파라미터를 모두 포함한다.In the following embodiments, it is assumed that the neural network models included in the image correction module 1200 each include two neural network models (a first neural network model and a second neural network model). In other words, each correction parameter included in the image correction module 1200 includes both parameters for setting the first neural network model and parameters for setting the second neural network model.

본 개시의 실시예들에 따른 영상 보정 모듈(1200)에 포함되는 각각의 신경망 모델들은 입력 영상을 보정하여 추론 영상을 출력하는 '제1 신경망 모델'과, 주어진 입력 영상에 대해서 최적의 보정 파라미터를 추론하는 '제2 신경망 모델'을 포함할 수 있다.Each neural network model included in the image correction module 1200 according to embodiments of the present disclosure includes a 'first neural network model' that corrects the input image and outputs an inferred image, and an optimal correction parameter for a given input image. It may include a ‘second neural network model’ for inference.

(1) 제1 신경망 모델 및 제2 신경망 모델의 기본적인 동작 설명(1) Description of the basic operation of the first neural network model and the second neural network model

먼저 도 16 및 도 17을 참조하여 제1 신경망 모델(1210) 및 제2 신경망 모델(1220)의 역할에 대해서 간략히 설명하고, 이어서 도 18 및 도 19를 참조하여 그러한 역할을 수행하기 위해 제1 신경망 모델(1210) 및 제2 신경망 모델(1220)을 어떻게 학습시키는지에 대해서 설명한다.First, with reference to FIGS. 16 and 17, the roles of the first neural network model 1210 and the second neural network model 1220 will be briefly described, and then with reference to FIGS. 18 and 19, the first neural network model to perform those roles will be described briefly. How to train the model 1210 and the second neural network model 1220 will be described.

도 16은 본 개시의 일 실시예에 따른 제1 신경망 모델(1210)의 동작을 설명하기 위한 도면이다. 도 16을 참고하면, 일 실시예에 따른 제1 신경망 모델(1210)은 입력 영상(161) 및 보정 파라미터(1610)를 입력받으면, 보정 파라미터(1610)에 대응하는 추론 영상(162)을 출력할 수 있다. 이때, 추론 영상(162)은 보정 파라미터(1610)에 기초하여 입력 영상(161)이 보정된 영상에 해당한다. 제1 신경망 모델(1210)이 이와 같은 추론 영상(162)을 출력하기 위해서 어떻게 학습되는지에 대해서는 아래에서 도 18을 참조하여 자세히 설명한다.FIG. 16 is a diagram for explaining the operation of the first neural network model 1210 according to an embodiment of the present disclosure. Referring to FIG. 16, when the first neural network model 1210 according to one embodiment receives the input image 161 and the correction parameter 1610, it outputs the inference image 162 corresponding to the correction parameter 1610. You can. At this time, the inferred image 162 corresponds to an image in which the input image 161 has been corrected based on the correction parameter 1610. How the first neural network model 1210 is learned to output the inferred image 162 will be described in detail below with reference to FIG. 18.

일반적으로 입력 영상(161)은 영상의 전체 또는 일부 영역이 어둡거나, 명암비가 낮아 영상 내 객체가 잘 인식되지 않는 문제를 가지고 있을 수 있다. 제1 신경망 모델(1210)은 이러한 문제를 해결하도록 입력 영상(161)의 밝기를 높이거나 명암비를 개선하는 역할을 수행할 수 있다.In general, the input image 161 may have a problem in which the entire or partial area of the image is dark or the contrast ratio is low, making it difficult for objects in the image to be recognized. The first neural network model 1210 may serve to increase the brightness or improve the contrast ratio of the input image 161 to solve this problem.

제1 신경망 모델(1210)은 도 16에 도시된 바와 같이 추론 영상(162)을 출력할 수도 있지만, 영상 자체를 출력하지 않고 입력 영상(161)을 추론 영상(162)으로 변환하는데 사용되는 필터(filter) 또는 맵 정보(map information)를 출력할 수도 있다. 즉, 입력 영상(161)은 제1 신경망 모델(1210)이 출력하는 필터 또는 맵 정보를 이용하여 추론 영상(162)으로 변환될 수도 있다.The first neural network model 1210 may output the inferred image 162 as shown in FIG. 16, but does not output the image itself and uses a filter ( FIG. filter) or map information can also be output. That is, the input image 161 may be converted into the inferred image 162 using the filter or map information output by the first neural network model 1210.

제1 신경망 모델(1210)은 다양한 종류의 딥러닝 네트워크를 포함하도록 구현될 수 있으며, 예를 들어 합성곱 신경망(Convolution Neural Network, CNN)의 한 종류인 ResNet (Residual Network)로 구현될 수도 있으나, 이에 한정되지 않는다.The first neural network model 1210 may be implemented to include various types of deep learning networks, for example, it may be implemented as ResNet (Residual Network), a type of convolution neural network (CNN). It is not limited to this.

도 17은 본 개시의 일 실시예에 따른 제2 신경망 모델(1220)의 동작을 설명하기 위한 도면이다. 도 17을 참고하면, 일 실시예에 따른 제2 신경망 모델(1220)은 입력 영상(161)을 입력받아 보정 파라미터(1610)를 추론하여 출력할 수 있다. 제2 신경망 모델(1220)에서 출력된 보정 파라미터(1610)는 제1 신경망 모델(1210)에 입력되고, 제1 신경망 모델(1210)은 앞서 도 16을 참조하여 설명한 바와 같이 보정 파라미터(1610)에 대응하는 추론 영상(162)을 출력할 수 있다.FIG. 17 is a diagram for explaining the operation of the second neural network model 1220 according to an embodiment of the present disclosure. Referring to FIG. 17, the second neural network model 1220 according to one embodiment may receive the input image 161, infer the correction parameter 1610, and output it. The correction parameter 1610 output from the second neural network model 1220 is input to the first neural network model 1210, and the first neural network model 1210 is input to the correction parameter 1610 as previously described with reference to FIG. 16. The corresponding inferred image 162 can be output.

제2 신경망 모델(1220)은 사용자가 좋아할 만한 영상 특성을 가지도록 입력 영상(161)을 보정하기 위한 보정 파라미터(1610)를 추론할 수 있다. 이때, 제2 신경망 모델(1220)이 추론하는 보정 파라미터(1610)로 인해 입력 영상(161)이 어떤 방향으로 보정되는지는 제2 신경망 모델(1220)의 학습 과정에서 결정될 수 있으며, 자세한 내용은 아래에서 도 19를 참조하여 설명한다.The second neural network model 1220 can infer a correction parameter 1610 for correcting the input image 161 to have image characteristics that the user may like. At this time, the direction in which the input image 161 is corrected due to the correction parameter 1610 inferred by the second neural network model 1220 may be determined during the learning process of the second neural network model 1220. Details are provided below. This will be described with reference to FIG. 19.

제2 신경망 모델(1220) 역시 다양한 종류의 딥러닝 네트워크를 포함하도록 구현될 수 있으며, 예를 들어 합성곱 신경망(Convolution Neural Network, CNN)의 한 종류인 ResNet (Residual Network)으로 구현될 수도 있으나, 이에 한정되지 않는다.The second neural network model 1220 may also be implemented to include various types of deep learning networks, for example, it may be implemented as ResNet (Residual Network), a type of convolution neural network (CNN). It is not limited to this.

(2) (학습 과정) 제1 신경망 모델 및 제2 신경망 모델을 학습시키는 방법(2) (Learning process) Method of training the first neural network model and the second neural network model

이하에서는 도 18 및 도 19를 참조하여 제1 신경망 모델(1210) 및 제2 신경망 모델(1220)을 학습시키는 방법에 대해서 설명한다.Hereinafter, a method of learning the first neural network model 1210 and the second neural network model 1220 will be described with reference to FIGS. 18 and 19.

일 실시예에 따르면, 신경망 모델들(1210, 1220)의 학습은 신경망 모델들(1210, 1220)이 탑재되는 디바이스(e.g. 도 3의 사용자 단말(2000))가 아닌 외부의 다른 장치(e.g. 도 31의 컴퓨팅 장치(500))에 의해서 수행될 수 있다. 물론, 실시예에 따라서 신경망 모델들(1210, 1220)이 탑재되는 디바이스가 신경망 모델들(1210, 1220)의 학습을 수행할 수도 있다. 이하에서는 설명의 편의를 위해 도 31의 컴퓨팅 장치(500)의 프로세서(530)가 메모리(520)에 저장된 프로그램을 실행함으로써, 도 18 및 도 19에서 설명되는 신경망 모델(1210, 1220)에 대한 학습을 수행한다고 가정한다. 즉, 도 18 및 도 19에서 레이블 영상 생성 모듈(1810)이나 옵티마이저(1820)가 수행하는 동작들과 손실함수 (loss function)의 계산 등은 실제로는 도 31의 컴퓨팅 장치(500)의 프로세서(530)가 수행하는 것으로 볼 수 있다.According to one embodiment, the learning of the neural network models 1210 and 1220 is performed using a device other than the device on which the neural network models 1210 and 1220 are mounted (e.g. the user terminal 2000 in FIG. 3) and another external device (e.g. FIG. 31). It can be performed by the computing device 500). Of course, depending on the embodiment, a device equipped with the neural network models 1210 and 1220 may perform learning of the neural network models 1210 and 1220. Hereinafter, for convenience of explanation, the processor 530 of the computing device 500 of FIG. 31 executes the program stored in the memory 520 to learn the neural network models 1210 and 1220 described in FIGS. 18 and 19. Assume that you are performing: That is, the operations performed by the label image generation module 1810 or the optimizer 1820 and the calculation of the loss function in FIGS. 18 and 19 are actually performed by the processor ( 530) can be seen as carrying out this.

도 31의 컴퓨팅 장치(500)의 프로세서(530)는 CPU(531), GPU(532) 및 NPU(533)를 포함할 수 있으며, 이들 중 적어도 하나를 이용하여 메모리(520)에 저장된 프로그램을 실행함으로써 신경망 모델(1210, 1220)에 대한 학습을 수행할 수 있다. 컴퓨팅 장치(500)의 입출력 인터페이스(510)는 신경망 모델(1210, 1220)의 학습과 관련한 명령을 수신하거나 정보를 표시할 수 있다.The processor 530 of the computing device 500 of FIG. 31 may include a CPU 531, a GPU 532, and an NPU 533, and executes a program stored in the memory 520 using at least one of these. By doing so, learning about the neural network models (1210, 1220) can be performed. The input/output interface 510 of the computing device 500 may receive commands or display information related to learning of the neural network models 1210 and 1220.

도 18은 본 개시의 일 실시예에 따른 제1 신경망 모델(1210)을 학습시키는 과정을 설명하기 위한 도면이다. 도 18을 참고하면, 레이블 영상 생성 모듈(1810)은 적어도 하나 이상의 영상 보정 알고리즘을 이용하여 입력 영상(161)을 보정한 레이블 영상(163)을 출력할 수 있다. 레이블 영상 생성 모듈(1810)이 입력 영상(161)을 보정할 때 영상 보정 알고리즘에 보정 파라미터(1610)가 적용되는데, 레이블 영상 생성 모듈(1810)이 사용하는 영상 보정 알고리즘, 그리고 보정 파라미터(1610)에 대해서는 도 20 내지 도 23을 참조하여 자세히 설명한다.FIG. 18 is a diagram for explaining a process of learning the first neural network model 1210 according to an embodiment of the present disclosure. Referring to FIG. 18 , the label image generation module 1810 may output a label image 163 obtained by correcting the input image 161 using at least one image correction algorithm. When the label image creation module 1810 corrects the input image 161, a correction parameter 1610 is applied to the image correction algorithm. The image correction algorithm used by the label image creation module 1810, and the correction parameter 1610 This will be described in detail with reference to FIGS. 20 to 23.

도 20는 본 개시의 일 실시예에 따른 레이블 영상 생성 모듈(1810)이 입력 영상(161)으로부터 레이블 영상(163)을 생성하는 과정을 설명하기 위한 도면이다. 도 20을 참고하면, 레이블 영상 생성 모듈(1810)은 명암비 개선 (contrast enhancement) 알고리즘(1811), 밝기 보정 (brightness correction) 알고리즘(1812) 및 노출 융합 (exposure fusion) 알고리즘(1813)을 사용할 수 있다. 다만, 도 20에 개시된 레이블 영상 생성 모듈(1810)이 사용하는 영상 보정 알고리즘들은 예시에 불과하며, 레이블 영상 생성 모듈(1810)은 이 밖에 다양한 종류의 영상 보정 알고리즘들을 사용할 수도 있다.FIG. 20 is a diagram illustrating a process in which the label image generation module 1810 generates the label image 163 from the input image 161 according to an embodiment of the present disclosure. Referring to FIG. 20, the label image generation module 1810 may use a contrast enhancement algorithm 1811, a brightness correction algorithm 1812, and an exposure fusion algorithm 1813. . However, the image correction algorithms used by the label image generation module 1810 disclosed in FIG. 20 are only examples, and the label image generation module 1810 may also use various types of image correction algorithms.

도 20에는 보정 파라미터(1610)에 구체적으로 어떤 파라미터들이 포함되는지, 그리고 각 파라미터들은 어떤 영상 보정 알고리즘에 대응되는지를 나타내었다. 도 20을 참고하면, 명암비 개선 알고리즘(1811)에는 스트렝스 (strength) 값(1611)이 적용될 수 있고, 밝기 보정 알고리즘(1812)에는 감마 (gamma) 값(1612)이 적용될 수 있고, 노출 융합 알고리즘(1813)에는 α 값(1613)이 적용될 수 있다. 각각의 영상 보정 알고리즘에 적용되는 파라미터들(1611, 1612, 1613)에 대해서 도 21 내지 23을 참조하여 설명한다.FIG. 20 shows which parameters are specifically included in the correction parameter 1610 and which image correction algorithm each parameter corresponds to. Referring to FIG. 20, a strength value 1611 may be applied to the contrast ratio improvement algorithm 1811, a gamma value 1612 may be applied to the brightness correction algorithm 1812, and the exposure fusion algorithm ( 1813), the α value (1613) can be applied. The parameters 1611, 1612, and 1613 applied to each image correction algorithm will be described with reference to FIGS. 21 to 23.

도 21은 본 개시의 일 실시예에 따른 명암비 개선 알고리즘(1811)에 적용되는 스트렝스 값(1611)에 대해서 설명하기 위한 도면이다. 일 실시예에 따른 명암비 개선 알고리즘(1811)은 커브(curve)를 이용하여 명암비를 조절하는 방식이다.FIG. 21 is a diagram for explaining the strength value 1611 applied to the contrast ratio improvement algorithm 1811 according to an embodiment of the present disclosure. The contrast ratio improvement algorithm 1811 according to one embodiment is a method of adjusting the contrast ratio using a curve.

도 21의 그래프(2100)를 참고하면, 스트렝스 값(1611)에 따라서 S-커브 (S-curve)의 곡률이 변화하고, 특히 스트렝스 값(1611)이 높아짐에 따라 S-커브의 곡률이 커짐을 알 수 있다. S-커브의 기울기가 증가하면 색조(tone)는 스트레칭(stretching)되고, 따라서 명암비가 증가하게 된다. 따라서, 스트렝스 값(1611)이 클수록, 명암비 개선 알고리즘(1811)은 입력 영상(161)의 명암비를 증가시킬 수 있다.Referring to the graph 2100 of FIG. 21, the curvature of the S-curve changes depending on the strength value 1611, and in particular, as the strength value 1611 increases, the curvature of the S-curve increases. Able to know. As the slope of the S-curve increases, the tone is stretched, thus increasing the contrast ratio. Accordingly, as the strength value 1611 increases, the contrast ratio improvement algorithm 1811 can increase the contrast ratio of the input image 161.

도 22는 본 개시의 일 실시예에 따른 밝기 보정 알고리즘(1812)에 적용되는 감마 값(1612)에 대해서 설명하기 위한 도면이다. 도 22의 그래프(2200)에는 감마 값(1612)에 따른 감마 곡선을 도시하였다. 그래프(2200)의 x 축은 명암 표현 수치를 나타내고, y 축은 밝기를 나타낸다. 도 22의 그래프(2200)를 참고하면, 감마 값(1612)이 작아질수록 밝기가 증가함을 알 수 있다. 따라서, 감마 값(1612)이 작을수록, 밝기 보정 알고리즘(1812)은 입력 영상(161)의 밝기를 증가시킬 수 있다.FIG. 22 is a diagram for explaining the gamma value 1612 applied to the brightness correction algorithm 1812 according to an embodiment of the present disclosure. The graph 2200 of FIG. 22 shows a gamma curve according to the gamma value 1612. The x-axis of the graph 2200 represents the contrast expression value, and the y-axis represents brightness. Referring to the graph 2200 of FIG. 22, it can be seen that the brightness increases as the gamma value 1612 decreases. Accordingly, as the gamma value 1612 becomes smaller, the brightness correction algorithm 1812 can increase the brightness of the input image 161.

도 23은 본 개시의 일 실시예에 따른 노출 융합 알고리즘(1813)에 적용되는 α 값(1613)에 대해서 설명하기 위한 도면이다. 노출 융합 알고리즘(1813)은 기본 영상(X)으로부터 노출이 다른 가공 영상(X')을 생성하고, 기본 영상(X) 및 가공 영상(X')에 각각 가중치 W 및 (1-W)를 곱한 후 합하여 융합 영상(F)을 출력할 수 있다. 일 실시예에 따르면, 기본 영상(X)이 도 20의 입력 영상(161)에 해당되고, 출력되는 융합 영상(F)이 도 20의 레이블 영상(163)에 해당될 수 있다.FIG. 23 is a diagram for explaining the α value 1613 applied to the exposure fusion algorithm 1813 according to an embodiment of the present disclosure. The exposure fusion algorithm 1813 generates a processed image (X') with different exposure from the base image (X), and multiplies the base image (X) and the processed image (X') by weights W and (1-W), respectively. After combining them, a fused image (F) can be output. According to one embodiment, the base image (X) may correspond to the input image 161 of FIG. 20, and the output fused image (F) may correspond to the label image 163 of FIG. 20.

노출 융합 알고리즘(1813)은 다음의 수학식 1에 따라서 기본 영상(X)으로부터 가공 영상(X')을 생성할 수 있다.The exposure fusion algorithm 1813 can generate a processed image (X') from the basic image (X) according to Equation 1 below.

이상 설명한 방식에 따라서 노출 융합 알고리즘(1813)을 수행한다면, α 값(1613)이 클수록 융합 영상(F)은 기본 영상(X) 대비 밝아질 수 있고, 또한 β 값이 작을수록 융합 영상(F)은 기본 영상(X) 대비 밝아질 수 있다. 도 5에서는 노출 융합 알고리즘(1813)에 대한 보정 파라미터로서 α 값(1613)이 사용되는 것으로 도시하였으나, α 값(1613) 대신 β 값이 보정 파라미터로 사용되거나, α 값(1613) 및 β 값 모두가 보정 파라미터로서 사용될 수도 있다.If the exposure fusion algorithm 1813 is performed according to the method described above, the larger the α value 1613, the brighter the fusion image (F) becomes compared to the basic image (X), and the smaller the β value, the brighter the fusion image (F) becomes. may become brighter compared to the basic image (X). In Figure 5, it is shown that the α value 1613 is used as a correction parameter for the exposure fusion algorithm 1813. However, the β value is used as a correction parameter instead of the α value 1613, or both the α value 1613 and the β value are used as a correction parameter. may also be used as a correction parameter.

레이블 영상 생성 모듈(1810)은 이상 설명한 영상 보정 알고리즘들(1811, 1812, 1813)에 보정 파라미터(1611, 1612, 1613)를 적용함으로써 입력 영상(161)의 특성들 중 적어도 하나 이상을 조절한 레이블 영상(163)을 출력할 수 있다. 레이블 영상 생성 모듈(1810)은 도 20에 도시된 영상 보정 알고리즘들(1811, 1812, 1813) 중 적어도 하나 이상의 조합을 사용할 수도 있고, 또는 도 20에 도시되지 않은 다른 종류의 영상 보정 알고리즘을 사용할 수도 있다.The label image generation module 1810 adjusts at least one of the characteristics of the input image 161 by applying correction parameters 1611, 1612, and 1613 to the image correction algorithms 1811, 1812, and 1813 described above. Video 163 can be output. The label image generation module 1810 may use a combination of at least one of the image correction algorithms 1811, 1812, and 1813 shown in FIG. 20, or may use another type of image correction algorithm not shown in FIG. 20. there is.

일 실시예에 따르면, 보정 파라미터(1610)에 포함된 파라미터 값들(1611, 1612, 1613)의 순서는 학습 시와 추론 시에 동일하게 유지될 수 있다. 다시 말해 일 실시예에 따르면, 학습 시에 사용된 보정 파라미터(1610) 내의 파라미터 종류(1611, 1612, 1613)의 순서는, 사용 시에도 동일하게 유지될 수 있다.According to one embodiment, the order of the parameter values 1611, 1612, and 1613 included in the correction parameter 1610 may remain the same during learning and inference. In other words, according to one embodiment, the order of parameter types 1611, 1612, and 1613 in the correction parameter 1610 used during learning may remain the same even during use.

예를 들어, 보정 파라미터(1610)가 열 벡터(column vector)의 형태라면, 각 행(row)의 원소(element)는 학습 시와 추론 시에 동일한 종류의 파라미터(동일한 영상 보정 알고리즘에 적용되는 파라미터)에 해당될 수 있다.For example, if the correction parameter 1610 is in the form of a column vector, the elements of each row are the same type of parameter (parameters applied to the same image correction algorithm) during learning and inference. ) may apply.

구체적인 예를 들어 설명하면 다음과 같다.To explain with a specific example, it is as follows.

도 20에 도시된 실시예에서와 같이, 학습 시 사용된 보정 파라미터(열 벡터)(1610)의 첫 번째 행(row)의 원소가 명암비 개선 알고리즘(1811)에 적용되는 파라미터(1611)이고, 두 번째 행의 원소가 밝기 보정 알고리즘(1812)에 적용되는 파라미터(1612)이고, 세 번째 행의 원소가 노출 융합 알고리즘(1813)에 적용되는 파라미터(1613)였다면, 추론 시에 사용되는 보정 파라미터 역시 첫 번째 행의 원소는 명암비 개선 알고리즘(1811)에 적용되는 파라미터(1611)이고, 두 번째 행의 원소는 밝기 보정 알고리즘(1812)에 적용되는 파라미터(1612)이고, 세 번째 행의 원소는 노출 융합 알고리즘(1813)에 적용되는 파라미터(1613)일 수 있다.As in the embodiment shown in FIG. 20, the element of the first row of the correction parameter (column vector) 1610 used during learning is the parameter 1611 applied to the contrast ratio improvement algorithm 1811, and the two If the element in the third row is a parameter 1612 applied to the brightness correction algorithm 1812, and the element in the third row is a parameter 1613 applied to the exposure fusion algorithm 1813, the correction parameter used during inference is also the first The element in the first row is the parameter 1611 applied to the contrast ratio improvement algorithm 1811, the element in the second row is the parameter 1612 applied to the brightness correction algorithm 1812, and the element in the third row is the exposure fusion algorithm. It may be a parameter (1613) applied to (1813).

관련하여 도 24를 참조하여 설명하면 다음과 같다.In relation to this, it is explained with reference to FIG. 24 as follows.

도 24를 참고하면, 두 개의 파라미터 값들(1614, 1615)은 입력 영상(161) 및 입력 영상(161)으로부터 변환된 회색조 영상과 스케일드 컨캐터네이션(도 25의 2501 참고)된 후 제1 신경망 모델(1210)에 입력된다. 즉, 파라미터 값들(1614, 1615)이 각각 곱해진(또는 나누어지거나 더해진) 회색조 영상들이 입력 영상(161)에 채널 방향으로 붙어 제1 신경망 모델(1210)에 입력되는데, 이때 채널 순서는 학습 시와 추론 시에 동일해야 하기 때문에, 위에서 설명한 바와 같이 보정 파라미터(1610)에 포함된 파라미터 값들(1614, 1615)의 순서는 학습 시와 추론 시에 동일하게 유지되어야 하는 것이다.Referring to FIG. 24, the two parameter values 1614 and 1615 are converted to the input image 161 and the grayscale image converted from the input image 161 and scaled concatenation (see 2501 in FIG. 25) and then applied to the first neural network. It is input into model 1210. That is, grayscale images in which the parameter values 1614 and 1615 are multiplied (or divided or added) are attached to the input image 161 in the channel direction and input to the first neural network model 1210. At this time, the channel order is the same as during training. Since they must be the same during inference, as described above, the order of the parameter values 1614 and 1615 included in the correction parameter 1610 must remain the same during learning and during inference.

또한 일 실시예에 따르면, 도 20에 도시된 실시예에서 보정 파라미터(1610)에 포함된 파라미터 값들(1611, 1612, 1613) 각각의 비트(bit) 수는 학습 시와 추론 시에 동일하게 유지될 수 있다. 보정 파라미터(1610)에 포함된 파라미터 값들(1611, 1612, 1613)의 순서와, 파라미터 값들(1611, 1612, 1613) 각각의 비트 수가 학습 시와 추론 시에 동일하게 유지되는 실시예에 대해서 자세히 설명하면 다음과 같다.Also, according to one embodiment, the number of bits of each of the parameter values 1611, 1612, and 1613 included in the correction parameter 1610 in the embodiment shown in FIG. 20 will remain the same during learning and inference. You can. A detailed description of an embodiment in which the order of the parameter values 1611, 1612, and 1613 included in the correction parameter 1610 and the number of bits of each of the parameter values 1611, 1612, and 1613 are kept the same during learning and inference. If you do so, it is as follows.

신경망 모델들(1210, 1220)의 학습 시에 사용된 보정 파라미터(1610)가 "01010110"의 이진 데이터라고 가정한다. 그리고, 앞에서부터 순서대로 3 비트의 데이터("010")가 명암비 개선 알고리즘(1811)에 적용되기 위한 파라미터(1611)이고, 이어지는 2 비트의 데이터("10")가 밝기 보정 알고리즘(1812)에 적용되기 위한 파라미터(1612)이고, 마지막 3 비트의 데이터("110")가 노출 융합 알고리즘(1813)에 적용되기 위한 파라미터(1613)라고 가정한다.It is assumed that the correction parameter 1610 used when learning the neural network models 1210 and 1220 is binary data of “01010110”. In order from the beginning, 3 bits of data (“010”) are parameters 1611 to be applied to the contrast ratio improvement algorithm 1811, and the following 2 bits of data (“10”) are used to apply the brightness correction algorithm 1812. It is assumed that this is the parameter 1612 to be applied, and that the last 3 bits of data (“110”) are the parameters 1613 to be applied to the exposure fusion algorithm 1813.

이와 같은 각 파라미터(1611, 1612, 1613)들의 비트 수 및 파라미터들(1611, 1612, 1613) 간의 순서는 신경망 모델들(1210, 1220)의 사용(추론) 시에도 동일하게 유지되어야 한다. 예를 들어, 추론 시에 제1 신경망 모델(1210)에 "10111100"의 이진 데이터가 보정 파라미터(1610)로서 입력되었다면, 앞에서부터 순서대로 3 비트의 데이터("101")가 명암비 개선 알고리즘(1811)에 적용되기 위한 파라미터(1611)가 되고, 이어지는 2 비트의 데이터("11")가 밝기 보정 알고리즘(1812)에 적용되기 위한 파라미터(1612)가 되고, 마지막 3 비트의 데이터("100")가 노출 융합 알고리즘(1813)에 적용되기 위한 파라미터(1613)가 된다.The number of bits of each parameter (1611, 1612, 1613) and the order between the parameters (1611, 1612, 1613) must remain the same even when using (inference) the neural network models (1210, 1220). For example, if binary data of "10111100" is input as the correction parameter 1610 to the first neural network model 1210 during inference, 3 bits of data ("101") are input to the contrast ratio improvement algorithm 1811 in order from the beginning. ), the next 2 bits of data ("11") become the parameters 1612 to be applied to the brightness correction algorithm 1812, and the last 3 bits of data ("100") becomes a parameter 1613 to be applied to the exposure fusion algorithm 1813.

다시 도 18로 돌아와서, 레이블 영상 생성 모듈(1810)이 출력하는 레이블 영상(163)은 제1 신경망 모델(1210)을 학습시키기 위한 훈련용 데이터(특히, 그라운드 트루스 데이터)로서 사용될 수 있다. 제1 신경망 모델(1210)에 입력 영상(161) 및 보정 파라미터(1610)가 입력되었을 때 제1 신경망 모델(1210)로부터 출력되는 추론 영상(162)이, 레이블 영상(163)과 최대한 유사해지도록 제1 신경망 모델(1210)을 학습시킬 수 있다. 즉 일 실시예에 따르면, 제1 신경망 모델(1210)은 입력 영상(161) 및 보정 파라미터(1610)가 입력되었을 때 출력되는 추론 영상(162)과, 보정 파라미터(1610)에 대응되는 레이블 영상(163) 간 차이를 최소화하도록 학습된 모델일 수 있다. 이때, 보정 파라미터(1610)에 대응되는 레이블 영상(163)이란, 보정 파라미터(1610)가 적어도 하나의 영상 보정 알고리즘에 적용되었을 때, 적어도 하나의 영상 보정 알고리즘에 의해 입력 영상(161)이 보정된 영상일 수 있다.Returning to FIG. 18 , the label image 163 output by the label image generation module 1810 can be used as training data (particularly, ground truth data) for learning the first neural network model 1210. When the input image 161 and the correction parameter 1610 are input to the first neural network model 1210, the inferred image 162 output from the first neural network model 1210 is made to be as similar as possible to the label image 163. The first neural network model 1210 can be trained. That is, according to one embodiment, the first neural network model 1210 includes an inference image 162 output when the input image 161 and the correction parameter 1610 are input, and a label image corresponding to the correction parameter 1610 ( 163) It may be a model learned to minimize the differences between At this time, the label image 163 corresponding to the correction parameter 1610 means that when the correction parameter 1610 is applied to at least one image correction algorithm, the input image 161 is corrected by at least one image correction algorithm. It could be a video.

다시 말해, 옵티마이저 (optimizer) (1820)는 추론 영상(162) 및 레이블 영상(163) 간 차이를 나타내는 손실함수(1620)의 손실값이 최소가 되도록 제1 신경망 모델(1210)을 업데이트할 수 있다. 이때, 손실함수(1620)는 평균 절대 오차 (Mean Absolute Error, MAE), 평균 제곱 오차 (Mean Square Error, MSE) 및 SSIM (Structural Similarity Index Measure) 등의 조합으로 구성될 수 있다.In other words, the optimizer 1820 can update the first neural network model 1210 so that the loss value of the loss function 1620 representing the difference between the inference image 162 and the label image 163 is minimized. there is. At this time, the loss function 1620 may be composed of a combination of Mean Absolute Error (MAE), Mean Square Error (MSE), and Structural Similarity Index Measure (SSIM).

이상 설명한 바와 같이, 제1 신경망 모델(1210)의 학습 시에는 입력 영상(161), 레이블 영상(163) 및 보정 파라미터(1610)가 훈련용 데이터로서 사용될 수 있다. 일 실시예에 따르면, 여러 입력 영상(161)에 대해서 보정 파라미터(1610)를 변화시켜가면서 복수의 레이블 영상(163)들을 생성하고, 이렇게 수집된 입력 영상(161), 레이블 영상(163) 및 보정 파라미터(1610)의 조합을 훈련용 데이터로 사용하여 제1 신경망 모델(1210)을 학습시킬 수 있다.As described above, when learning the first neural network model 1210, the input image 161, the label image 163, and the correction parameter 1610 may be used as training data. According to one embodiment, a plurality of label images 163 are generated by changing the correction parameters 1610 for several input images 161, and the input images 161, label images 163, and corrections collected in this way are generated. The first neural network model 1210 can be learned using a combination of parameters 1610 as training data.

이와 같이, 제1 신경망 모델(1210)의 학습 시에 보정 파라미터(1610)를 제1 신경망 모델(1210)에 대한 입력으로 사용함으로써 보정 파라미터(1610)와 레이블 영상(163) 간의 관계를 제1 신경망 모델(1210)이 학습하도록 할 수 있다. 즉, 제1 신경망 모델(1210)은 입력 영상(161)에 어떤 보정 파라미터(1610)가 적용될 때 어떻게 보정된 레이블 영상(163)이 생성되는지를 학습한다고 볼 수 있다. 학습된 제1 신경망 모델(1210)에 입력되는 입력 영상(161)은 동일하게 유지하면서 보정 파라미터(1610)만 변경한다면, 제1 신경망 모델(1210)에서 출력되는 추론 영상(162)도 변경된다. 따라서, 사용자는 제1 신경망 모델(1210)에 입력되는 보정 파라미터(1610)를 조정함으로써 제1 신경망 모델(1210)에서 출력되는 추론 영상(162)이 원하는 영상 특성을 갖도록 제어할 수 있다. 보정 파라미터(1610)를 제1 신경망 모델(1210)에 대한 입력으로 인가하는 구체적인 실시예에 대해서는 아래에서 도 24를 참조하여 설명한다.In this way, when learning the first neural network model 1210, the correction parameter 1610 is used as an input to the first neural network model 1210, so that the relationship between the correction parameter 1610 and the label image 163 is converted into the first neural network model 1210. The model 1210 can be trained. In other words, the first neural network model 1210 can be viewed as learning how to generate the corrected label image 163 when a correction parameter 1610 is applied to the input image 161. If the input image 161 input to the learned first neural network model 1210 is kept the same and only the correction parameter 1610 is changed, the inferred image 162 output from the first neural network model 1210 is also changed. Accordingly, the user can control the inferred image 162 output from the first neural network model 1210 to have desired image characteristics by adjusting the correction parameter 1610 input to the first neural network model 1210. A specific embodiment of applying the correction parameter 1610 as an input to the first neural network model 1210 will be described below with reference to FIG. 24.

도 24는 본 개시의 일 실시예에 따른, 보정 파라미터를 제1 신경망 모델에 대한 입력으로 인가하는 방법을 설명하기 위한 도면이다. 도 24에 도시된 실시예에서 보정 파라미터(1610)는 제1 파라미터(1614) 및 제2 파라미터(1615)를 포함한다고 가정한다.FIG. 24 is a diagram illustrating a method of applying a correction parameter as an input to a first neural network model, according to an embodiment of the present disclosure. In the embodiment shown in FIG. 24, it is assumed that the correction parameter 1610 includes a first parameter 1614 and a second parameter 1615.

도 24를 참고하면, 입력 영상(161)은 디컬러라이즈(decolorize) 모듈(2410)에 의해 회색조 영상(gray scale image)으로 변환된다. 제1 연산기(2421)는 회색조 영상 및 제1 파라미터(1614)에 대해 멀티플리케이션(multiplication)을 수행하고, 제2 연산기(2422)는 회색조 영상 및 제2 파라미터(1615)에 대해 멀티플리케이션을 수행한다. 제3 연산기(2423)는 입력 영상(161), 제1 연산기(2421)의 출력 및 제2 연산기(2422)의 출력에 대해 컨캐터네이션(concatenation)을 수행하여 제1 신경망 모델(1210)에 출력할 수 있다. 즉 일 실시예에 따르면, 보정 파라미터(1610)에 포함된 파라미터들(1614, 1615)은 각각 입력 영상(161)으로부터 변환된 회색조 영상에 적용된 후, 입력 영상(161)과 함께 제1 신경망 모델(1210)에 입력될 수 있다.Referring to FIG. 24, the input image 161 is converted into a gray scale image by the decolorize module 2410. The first operator 2421 performs multiplication on the gray-scale image and the first parameter 1614, and the second operator 2422 performs multiplication on the gray-scale image and the second parameter 1615. . The third operator 2423 performs concatenation on the input image 161, the output of the first operator 2421, and the output of the second operator 2422 and outputs it to the first neural network model 1210. can do. That is, according to one embodiment, the parameters 1614 and 1615 included in the correction parameter 1610 are each applied to the grayscale image converted from the input image 161, and then together with the input image 161, the first neural network model ( 1210).

한편, 도 24에서는 회색조 영상에 제1 파라미터(1614) 및 제2 파라미터(1615)가 곱해진 후 입력 영상에 컨캐터네이션되는 것으로 도시하였으나, 일 실시예에 따르면 곱셈 이외에 다른 연산을 이용하여 회색조 영상과 파라미터들(1614, 1615)을 처리하는 것도 가능하다. 예를 들어, 회색조 영상을 제1 및 제2 파라미터(1614, 1615) 각각으로 나눈 후 입력 영상에 컨캐터네이션할 수도 있고, 또는 회색조 영상에 제1 및 제2 파라미터(1614, 1615) 각각을 더한 후 입력 영상에 컨캐터네이션할 수도 있다.Meanwhile, in FIG. 24, it is shown that the grayscale image is multiplied by the first parameter 1614 and the second parameter 1615 and then concatenated on the input image. However, according to one embodiment, the grayscale image is converted to a grayscale image using an operation other than multiplication. It is also possible to process the parameters 1614 and 1615. For example, the grayscale image may be divided into the first and second parameters 1614 and 1615 and then concatenated into the input image, or the first and second parameters 1614 and 1615 may be added to the grayscale image. You can then concatenate the input image.

도 19는 본 개시의 일 실시예에 따른 제2 신경망 모델(1220)을 학습시키는 과정을 설명하기 위한 도면이다. FIG. 19 is a diagram illustrating a process of learning a second neural network model 1220 according to an embodiment of the present disclosure.

먼저 제2 신경망 모델(1220)을 사용하는 이유에 대해서 설명한다.First, the reason for using the second neural network model 1220 will be explained.

제2 신경망 모델(1220)은 일반적으로 많은 사용자들이 좋다고 느낄만한 영상 특성(e.g. 신경망 모델의 설계자가 최적이라고 판단한 영상 특성)을 갖도록 입력 영상(161)을 보정하기 위한 보정 파라미터를 추론할 수 있다. 따라서, 제2 신경망 모델(1220)을 이용함으로써 사용자가 매번 보정 파라미터를 설정하거나 조정하지 않더라도 입력 영상(161)에 대해 최적의 영상 특성을 갖도록 보정하기 위한 보정 파라미터를 자동으로 생성(추론)하고, 그에 따라 입력 영상(161)을 보정하여 사용자에게 제시할 수 있다. 예를 들어, 사용자가 신경망 모델들(1210, 1220)이 탑재된 단말을 통해 영상을 촬영하면, 촬영된 영상을 제2 신경망 모델(1220)이 추론하는 보정 파라미터에 따라 보정하여 미리보기로 단말의 화면에 표시할 수 있다.The second neural network model 1220 can generally infer correction parameters for correcting the input image 161 to have image characteristics that many users would consider good (e.g. image characteristics determined to be optimal by the designer of the neural network model). Therefore, by using the second neural network model 1220, correction parameters for correcting the input image 161 to have optimal image characteristics are automatically generated (inferred) even if the user does not set or adjust the correction parameters every time, Accordingly, the input image 161 can be corrected and presented to the user. For example, when a user captures an image through a terminal equipped with neural network models 1210 and 1220, the captured image is corrected according to the correction parameter inferred by the second neural network model 1220 and previewed on the terminal. It can be displayed on the screen.

일 실시예에 따르면, 앞서 설명한 바와 같이 영상 보정 모듈(1200)에 포함되는 신경망 모델은 촬영 환경에 따라 적절하게 영상 특성을 보정하는 방향으로 미리 학습될 수 있다. 따라서, 사용자 또는 관리자는 원하는 보정 방향을 미리 설정하고, 설정된 방향으로 영상 특성을 보정하기 위한 보정 파라미터를 추론하도록 제2 신경망 모델(1220)을 학습시킬 수 있다. 이와 같이 할 경우, 사용자 또는 관리자는 직접 보정 파라미터(1610)를 조정할 필요 없이, 영상 특성의 보정 방향을 설정하는 것만으로 촬영 환경에 따라 적절하게 영상이 보정되도록 할 수 있다.According to one embodiment, as described above, the neural network model included in the image correction module 1200 may be trained in advance to appropriately correct image characteristics according to the shooting environment. Accordingly, the user or administrator can set a desired correction direction in advance and train the second neural network model 1220 to infer correction parameters for correcting image characteristics in the set direction. In this case, the user or administrator can ensure that the image is appropriately corrected according to the shooting environment by simply setting the correction direction of the image characteristics without the need to directly adjust the correction parameter 1610.

따라서, 단말의 사용자는 일차적으로 좋은 영상 특성(밝기, 명암비 등)을 갖는 영상을 미리보기를 통해 확인하고, 미리보기가 마음에 들지 않는 경우에만 영상 특성을 변경하도록 보정 파라미터를 조정할 수 있다.Therefore, the user of the terminal can first check the image with good image characteristics (brightness, contrast ratio, etc.) through a preview, and adjust the correction parameters to change the image characteristics only if the preview is not to their liking.

도 19를 참고하면, 입력 영상(161)을 입력받아 보정 파라미터(1610)를 추론하여 출력하는 제2 신경망 모델(1220)이 추가되었다. 도 19에 도시된 바와 같이 제1 신경망 모델(1210) 및 제2 신경망 모델(1220)이 모두 연결된 상태에서 두 신경망 모델들(1210, 1220)에 대한 학습이 동시에 수행될 수도 있고, 제1 신경망 모델(1210)을 먼저 학습시키고, 학습된 제1 신경망 모델(1210)은 고정(제1 신경망 모델(1210)에 포함된 파라미터들을 고정)한 상태에서 제2 신경망 모델(1220)을 학습시킬 수도 있다. 또한, 제1 신경망 모델(1210) 및 제2 신경망 모델(1220)을 각각 별도로 학습시킬 수도 있다.Referring to FIG. 19, a second neural network model 1220 that receives the input image 161, infers the correction parameter 1610, and outputs it has been added. As shown in FIG. 19, with both the first neural network model 1210 and the second neural network model 1220 connected, learning for the two neural network models 1210 and 1220 may be performed simultaneously, and the first neural network model 1210 may be trained first, and the second neural network model 1220 may be trained while the learned first neural network model 1210 is fixed (the parameters included in the first neural network model 1210 are fixed). Additionally, the first neural network model 1210 and the second neural network model 1220 may be trained separately.

제2 신경망 모델(1220)의 학습 시에는 레이블 영상(163)의 특성(e.g. 밝기, 명암비, 색온도 등)을 정량적으로 수치화한 측정 특성값(1910)을 미리 설정된 목표 특성값(1920)과 비교하고, 둘 간의 차이가 최소가 되도록 제2 신경망 모델(1220)을 업데이트할 수 있다. 목표 특성값(1920)은 사용자(관리자)가 원하는 값으로 미리 설정할 수 있다. 즉 일 실시예에 따르면, 제2 신경망 모델(1220)은 입력 영상(161)이 입력되었을 때 제2 신경망 모델(1220)이 추론하는 보정 파라미터(1610)와, 레이블 영상(163)이 미리 설정된 영상 특성을 갖도록 하는 보정 파라미터(도 19에서 목표 특성값(1920)에 해당하는 영상을 레이블 영상 생성 모듈(1810)이 출력하도록 하는 보정 파라미터) 간 차이를 최소화하도록 학습된 모델일 수 있다.When learning the second neural network model 1220, the measured characteristic value 1910, which quantitatively quantifies the characteristics of the label image 163 (e.g. brightness, contrast ratio, color temperature, etc.), is compared with the preset target characteristic value 1920. , the second neural network model 1220 can be updated so that the difference between the two is minimized. The target characteristic value 1920 can be set in advance to a value desired by the user (administrator). That is, according to one embodiment, the second neural network model 1220 is an image in which the correction parameter 1610 inferred by the second neural network model 1220 when the input image 161 is input and the label image 163 are preset. It may be a model learned to minimize the difference between correction parameters that enable the label image generation module 1810 to output an image corresponding to the target feature value 1920 in FIG. 19.

다시 말해, 옵티마이저 (optimizer) (1820)는 측정 특성값(1910) 및 목표 특성값(1920) 간 차이를 나타내는 제2 손실함수(1622)의 손실값이 최소가 되도록 제2 신경망 모델(1220)을 업데이트할 수 있다. 이때, 제2 손실함수(1622)는 평균 절대 오차 (Mean Absolute Error, MAE), 평균 제곱 오차 (Mean Square Error, MSE) 및 SSIM (Structural Similarity Index Measure) 등의 조합으로 구성될 수 있다.In other words, the optimizer 1820 operates the second neural network model 1220 so that the loss value of the second loss function 1622 representing the difference between the measured characteristic value 1910 and the target characteristic value 1920 is minimized. can be updated. At this time, the second loss function 1622 may be composed of a combination of Mean Absolute Error (MAE), Mean Square Error (MSE), and Structural Similarity Index Measure (SSIM).

일 실시예에 따르면, 제2 신경망 모델(1220)의 학습 시 사용되는 측정 특성값(1910) 및 목표 특성값(1920)은 복수의 영상 특성 각각에 대응되는 복수의 값들을 포함할 수도 있다. 예를 들어, 측정 특성값(1910) 및 목표 특성값(1920)은 영상의 밝기를 정량적으로 수치화한 제1 특성값과, 영상의 색온도를 정량적으로 수치화한 제2 특성값을 포함할 수도 있다.According to one embodiment, the measurement characteristic value 1910 and the target characteristic value 1920 used when learning the second neural network model 1220 may include a plurality of values corresponding to each of a plurality of image characteristics. For example, the measurement characteristic value 1910 and the target characteristic value 1920 may include a first characteristic value that quantitatively quantifies the brightness of the image, and a second characteristic value that quantitatively quantifies the color temperature of the image.

도 19에 도시된 실시예에서는, 제2 신경망 모델(1220)의 학습을 위해 레이블 영상(163)에 대한 측정 특성값(1910)을 획득하고, 획득된 측정 특성값(1910)을 미리 설정된 목표 특성값(1920)과 비교한다. 하지만, 일 실시예에 따르면 입력 영상(161)이 레이블 영상(163)으로 변환되는 과정의 중간에서 생성되는 영상(이하, '중간 레이블 영상'이라 함)에 대한 측정 특성값(1910)을 획득하고, 획득된 측정 특성값(1910)을 미리 설정된 목표 특성값(1920)과 비교함으로써 제2 신경망 모델(1220)을 학습시킬 수도 있다.In the embodiment shown in FIG. 19, the measurement characteristic value 1910 for the label image 163 is acquired for learning the second neural network model 1220, and the obtained measurement characteristic value 1910 is used as a preset target characteristic. Compare with value (1920). However, according to one embodiment, the measurement characteristic value 1910 for the image generated in the middle of the process of converting the input image 161 to the label image 163 (hereinafter referred to as 'intermediate label image') is obtained, , the second neural network model 1220 may be learned by comparing the obtained measured characteristic value 1910 with a preset target characteristic value 1920.

도 20을 함께 참조하여 구체적인 예를 들어 설명하면 다음과 같다.A specific example will be described with reference to FIG. 20 as follows.

일 실시예에 따르면, 제2 신경망 모델(1220)의 학습을 위해 특정값 측정 시 레이블 영상 생성 모듈(1810)에 포함된 복수의 영상 보정 알고리즘들(1811, 1812, 1813) 중에서 일부의 영상 보정 알고리즘만이 적용된 영상(중간 레이블 영상)에 대해서 특성값을 측정하고, 그렇게 측정된 특성값을 미리 설정된 목표 특성값과 비교하여 제2 신경망 모델(1220)을 학습시킬 수도 있다.According to one embodiment, when measuring a specific value for learning the second neural network model 1220, some image correction algorithms among a plurality of image correction algorithms 1811, 1812, and 1813 included in the label image generation module 1810 The second neural network model 1220 may be trained by measuring feature values for the image to which only the image (middle label image) is applied, and comparing the measured feature values with preset target feature values.

도 20에서 입력 영상(161)이 레이블 영상 생성 모듈(1810)에 입력되면, 입력 영상(161)은 명암비 개선 알고리즘(1811), 밝기 보정 알고리즘(1812) 및 노출 융합 알고리즘(1813)을 순서대로 거쳐 레이블 영상(163)으로 변환된다고 가정한다.In Figure 20, when the input image 161 is input to the label image generation module 1810, the input image 161 goes through the contrast ratio improvement algorithm 1811, the brightness correction algorithm 1812, and the exposure fusion algorithm 1813 in that order. Assume that it is converted to a label image (163).

예를 들어, 입력 영상(161)에 명암비 개선 알고리즘(1811) 및 밝기 보정 알고리즘(1812)까지만 적용된 중간 레이블 영상(노출 융합 알고리즘(1813)에 대한 입력 영상)의 '밝기'를 정량적으로 수치화한 측정 특성값을 획득하고, 획득된 측정 특성값과 미리 설정된 '밝기'에 대한 목표 특성값 간의 차이(손실)가 최소가 되도록 제2 신경망 모델(1220)을 학습시킬 수도 있다. 이와 같이 제2 신경망 모델(1220)에 대한 학습을 수행한다면, 노출 융합 알고리즘(1813)에 적용되는 파라미터(1613)는 목표 밝기(목표 특성값에 대응되는 밝기)와는 무관하게 별도의 손실을 최소화하도록 학습될 수 있다.For example, a quantitative measurement of the 'brightness' of the intermediate label image (the input image to the exposure fusion algorithm 1813) to which only the contrast improvement algorithm 1811 and the brightness correction algorithm 1812 have been applied to the input image 161. The characteristic value may be acquired, and the second neural network model 1220 may be trained so that the difference (loss) between the obtained measured characteristic value and the preset target characteristic value for 'brightness' is minimized. When learning the second neural network model 1220 in this way, the parameters 1613 applied to the exposure fusion algorithm 1813 are set to minimize separate loss regardless of the target brightness (brightness corresponding to the target characteristic value). It can be learned.

일 실시예에 따르면, 제2 신경망 모델(1220)은 복수의 신경망 모델들을 포함할 수도 있다. 예를 들어, 제2 신경망 모델(1220)이 제1 보정 파라미터 및 제2 보정 파라미터를 추론하는 경우, 각각의 보정 파라미터를 추론하기 위한 신경망 모델이 별도로 존재할 수 있다. 그리고 필요에 따라서 제3 보정 파라미터를 추론하기 위한 신경망 모델을 제2 신경망 모델(1220)에 추가함으로써, 제2 신경망 모델(1220)이 제1 내지 제3 보정 파라미터를 추론하도록 변경할 수도 있다.According to one embodiment, the second neural network model 1220 may include a plurality of neural network models. For example, when the second neural network model 1220 infers the first correction parameter and the second correction parameter, a separate neural network model for inferring each correction parameter may exist. And, if necessary, the second neural network model 1220 may be changed to infer the first to third correction parameters by adding a neural network model for inferring the third correction parameter to the second neural network model 1220.

(3) (사용 과정) 제1 신경망 모델 및 제2 신경망 모델을 이용하여 영상을 보정하는 방법(3) (Usage process) How to correct the image using the first neural network model and the second neural network model

앞서 살펴본 바와 같이, 일 실시예에 따르면 도 3의 사용자 단말(3000)의 카메라 모듈(3100)에 ISP(3130)가 포함될 수 있고, 제1 신경망 모델(1210) 및 제2 신경망 모델(1220)은 ISP(3130)의 영상 보정 모듈(3132)에 포함될 수 있다.As seen above, according to one embodiment, the ISP 3130 may be included in the camera module 3100 of the user terminal 3000 of FIG. 3, and the first neural network model 1210 and the second neural network model 1220 may be It may be included in the image correction module 3132 of the ISP 3130.

도 25는 본 개시의 실시예에 따른 신경망 모델들(1210, 1220)이 도 3의 영상 보정 모듈(3132)에 포함되는 구체적인 실시예를 도시한 도면이다.FIG. 25 is a diagram illustrating a specific embodiment in which neural network models 1210 and 1220 according to an embodiment of the present disclosure are included in the image correction module 3132 of FIG. 3.

도 25를 참고하면, 일 실시예에 따른 영상 보정 모듈(2500)은 제1 전처리부(2510), 제2 전처리부(2520), 제1 신경망 모델(1210) 및 제2 신경망 모델(1220)을 포함할 수 있다.Referring to FIG. 25, the image correction module 2500 according to one embodiment includes a first preprocessor 2510, a second preprocessor 2520, a first neural network model 1210, and a second neural network model 1220. It can be included.

제1 전처리부(2510)는 입력 영상(161)을 회색조 영상으로 변환하기 위한 구성으로서, 메타 데이터에 포함된 자동 화이트 밸런스(Auto White Balance, AWB) 게인(gain), 색 보정 행렬(Color Correction Matrix, CCM) 및 감마(Gamma) 등을 입력 영상(1)에 적용한 후, 픽셀별로 RGB의 최대값을 추출하는 채널 와이즈 맥스(Channel wise MAX)를 수행함으로써, 입력 영상(161)을 회색조 영상으로 변환하여 출력할 수 있다.The first preprocessor 2510 is a component for converting the input image 161 into a grayscale image, and includes the Auto White Balance (AWB) gain and the Color Correction Matrix included in the metadata. , CCM) and Gamma are applied to the input image 1, and then the input image 161 is converted to a grayscale image by performing channel wise MAX to extract the maximum value of RGB for each pixel. You can print it out.

제2 전처리부(2520)는 제1 전처리부(2510)에서 출력된 회색조 영상으로부터 픽셀값의 평균(mean) 및 분산(variance)을 추출하고, 추출된 평균 및 분산을 입력 영상(161) 및 회색조 영상과 함께 스케일드 컨캐터네이션(scaled concatenation)하여 출력한다. 스케일드 컨캐터네이션을 수행하기 위한 구체적인 연산 구조를 2501 영역에 도시하였다.The second preprocessor 2520 extracts the mean and variance of pixel values from the grayscale image output from the first preprocessor 2510, and applies the extracted mean and variance to the input image 161 and grayscale. It is output using scaled concatenation along with the video. The specific operation structure for performing scaled concatenation is shown in area 2501.

제2 신경망 모델(1220)은 제2 전처리부(2520)의 출력을 입력받아 보정 파라미터(α, β)를 추론할 수 있다. 제2 신경망 모델(1220)이 추론한 보정 파라미터(α, β)는 입력 영상(161) 및 회색조 영상과 함께 스케일드 컨캐터네이션되어 제1 신경망 모델(1210)에 입력될 수 있다.The second neural network model 1220 can receive the output of the second preprocessor 2520 and infer the correction parameters (α, β). The correction parameters (α, β) inferred by the second neural network model 1220 may be scaled concatenated with the input image 161 and the grayscale image and input to the first neural network model 1210.

제1 신경망 모델(1210)은 입력 영상(161) 및 보정 파라미터(α, β)에 대응되는 필터(2530)를 출력할 수 있으며, 이렇게 출력된 필터(2530)를 이용하면 입력 영상(161)이 추론 영상(162)으로 변환될 수 있다.The first neural network model 1210 can output a filter 2530 corresponding to the input image 161 and the correction parameters (α, β), and using the filter 2530 output in this way, the input image 161 It can be converted into an inference image 162.

일 실시예에 따르면, 제2 신경망 모델(1220)이 추론한 보정 파라미터(α, β)는 사용자에 의해 조정될 수도 있다. 사용자가 보정 파라미터(α, β)를 조정하면, 제1 신경망 모델(1210)은 조정된 보정 파라미터(α, β)에 대응되는 필터(2530)를 출력하고, 이렇게 출력된 필터(2530)를 이용하여 입력 영상(161)이 추론 영상(162)으로 변환될 수 있다.According to one embodiment, the correction parameters (α, β) inferred by the second neural network model 1220 may be adjusted by the user. When the user adjusts the correction parameters (α, β), the first neural network model 1210 outputs a filter 2530 corresponding to the adjusted correction parameters (α, β), and uses the filter 2530 output in this way. Thus, the input image 161 can be converted into the inferred image 162.

일 실시예에 따르면, 앞서 설명한 바와 같이 사용자는 제2 신경망 모델(1220)이 추론한 보정 파라미터(α, β)에 따라 보정된 영상을 미리보기를 통해 확인하고, 원하는 영상 특성을 갖도록 보정 파라미터(α, β)를 조정할 수 있다.According to one embodiment, as described above, the user previews the image corrected according to the correction parameters (α, β) deduced by the second neural network model 1220 and checks the correction parameter ( α, β) can be adjusted.

이하에서는 도 26 내지 도 28을 참조하여, 신경망 모델을 이용하여 영상을 보정하는 방법에 대해서 설명한다. 이하에서는 설명의 편의를 위해 도 3의 사용자 단말(3000)의 ISP(3130)(도 1의 ISP(1000)에 대응)가 도 26 내지 도 28의 단계들을 수행하는 것으로 설명한다. 하지만, 이에 한정되지 않고 도 26 내지 도 28의 단계들의 전부 또는 일부는 사용자 단말(3000)의 메인 프로세서(3200) 또는 도 4의 클라우드 서버(400)의 프로세서에 의해 수행될 수도 있다.Hereinafter, a method of correcting an image using a neural network model will be described with reference to FIGS. 26 to 28. Hereinafter, for convenience of explanation, it will be described that the ISP 3130 of the user terminal 3000 of FIG. 3 (corresponding to the ISP 1000 of FIG. 1) performs the steps of FIGS. 26 to 28. However, the present invention is not limited thereto, and all or part of the steps in FIGS. 26 to 28 may be performed by the main processor 3200 of the user terminal 3000 or the processor of the cloud server 400 of FIG. 4 .

도 26을 참고하면, 2601 단계에서 ISP(3130)는 제1 신경망 모델(1210)에 입력 영상 및 보정 파라미터를 입력할 수 있다. 제1 신경망 모델(1210)은, 입력 영상 및 보정 파라미터가 입력되었을 때 출력되는 추론 영상과, 보정 파라미터에 대응되는 레이블 영상 간 차이를 최소화하도록 학습된 모델일 수 있다. 이때 보정 파라미터에 대응되는 레이블 영상은, 보정 파라미터가 적어도 하나의 영상 보정 알고리즘에 적용되었을 때, 적어도 하나의 영상 보정 알고리즘에 의해 입력 영상이 보정된 영상일 수 있다.Referring to FIG. 26, in step 2601, the ISP 3130 may input an input image and correction parameters to the first neural network model 1210. The first neural network model 1210 may be a model learned to minimize the difference between an inferred image output when an input image and a correction parameter are input, and a label image corresponding to the correction parameter. At this time, the label image corresponding to the correction parameter may be an image in which the input image has been corrected by at least one image correction algorithm when the correction parameter is applied to at least one image correction algorithm.

입력 영상은, 영상 복원 모듈(1100)이 이미지 센서(100)로부터 출력된 원시 영상들을 복원하여 출력한 영상일 수 있다. 보정 파라미터는, 미리 설정된 값(e.g. 제1 신경망 모델(1210)의 학습 시 사용된 값)일 수도 있고, 사용자의 입력에 따라 조정된 값일 수도 있다. 사용자의 입력에 따라 보정 파라미터가 조정되는 실시예에 대해서는 아래에서 도 28 내지 도 30을 참조하여 자세히 설명한다.The input image may be an image that the image restoration module 1100 restores and output from the raw images output from the image sensor 100. The correction parameter may be a preset value (e.g. a value used when learning the first neural network model 1210) or a value adjusted according to the user's input. An embodiment in which correction parameters are adjusted according to user input will be described in detail below with reference to FIGS. 28 to 30.

2602 단계에서 ISP(3130)는 제1 신경망 모델(1210)로부터 보정 파라미터에 대응하는 추론 영상을 획득할 수 있다. ISP(3130)는 획득한 추론 영상을 사용자 단말(3000)의 화면에 표시하거나 메모리(3240)에 저장할 수 있다.In step 2602, the ISP 3130 may obtain an inferred image corresponding to the correction parameter from the first neural network model 1210. The ISP 3130 may display the obtained inferred image on the screen of the user terminal 3000 or store it in the memory 3240.

도 27은 제2 신경망 모델이 보정 파라미터를 추론하는 실시예를 설명하기 위한 도면이다. 도 27의 순서도는 도 26의 2601 단계에 포함되는 세부 단계들을 포함한다.Figure 27 is a diagram for explaining an embodiment in which a second neural network model infers a correction parameter. The flowchart of FIG. 27 includes detailed steps included in step 2601 of FIG. 26.

도 27을 참고하면, 2701 단계에서 ISP(3130)는 제2 신경망 모델(1220)에 입력 영상을 입력할 수 있다. 제2 신경망 모델(1220)은, 입력 영상이 입력되었을 때 제2 신경망 모델(1220)이 추론하는 보정 파라미터와, 레이블 영상이 미리 설정된 영상 특성을 갖도록 하는 보정 파라미터 간 차이를 최소화하도록 학습된 모델일 수 있다.Referring to FIG. 27, in step 2701, the ISP 3130 may input an input image to the second neural network model 1220. The second neural network model 1220 is a model learned to minimize the difference between the correction parameter inferred by the second neural network model 1220 when an input image is input and the correction parameter that causes the label image to have preset image characteristics. You can.

2702 단계에서 ISP(3130)는 제2 신경망 모델(1220)이 추론한 보정 파라미터를 획득하고, 2703 단계에서 ISP(3130)는 보정 파라미터를 입력 영상과 함께 제1 신경망 모델(1210)에 입력할 수 있다.In step 2702, the ISP 3130 obtains the correction parameters deduced by the second neural network model 1220, and in step 2703, the ISP 3130 inputs the correction parameters together with the input image into the first neural network model 1210. there is.

도 28은 사용자가 보정 파라미터를 조정하는 실시예를 설명하기 위한 도면이다. 도 28의 순서도는 도 28의 2801 단계에 포함되는 세부 단계들을 포함한다.Figure 28 is a diagram for explaining an embodiment in which a user adjusts correction parameters. The flow chart of FIG. 28 includes detailed steps included in step 2801 of FIG. 28.

도 28을 참고하면, 2801 단계에서 ISP(3130)는 사용자 단말(3000)의 입출력 인터페이스(e.g. 터치 스크린, 마이크 등)를 통해 보정 파라미터를 조정하기 위한 입력을 수신할 수 있다. 2802 단계에서 ISP(3130)는 2801 단계에서 수신한 입력에 기초하여, 미리 설정된 제1 보정 파라미터를 제2 보정 파라미터로 변경할 수 있다. 2803 단계에서 ISP(3130)는 제2 보정 파라미터를 입력 영상과 함께 제1 신경망 모델(1210)에 입력할 수 있다.Referring to FIG. 28, in step 2801, the ISP 3130 may receive input for adjusting correction parameters through the input/output interface (e.g. touch screen, microphone, etc.) of the user terminal 3000. In step 2802, the ISP 3130 may change the preset first correction parameter to the second correction parameter based on the input received in step 2801. In step 2803, the ISP 3130 may input the second correction parameter together with the input image into the first neural network model 1210.

사용자 단말(3000)의 화면에 표시된 UI를 통해 밝기 조절을 위한 보정 파라미터를 사용자가 조정하는 실시예를 도 30에 도시하였다.An example in which a user adjusts correction parameters for brightness control through the UI displayed on the screen of the user terminal 3000 is shown in FIG. 30 .

도 30을 참고하면, 영상의 특성을 조절하기 위한 UI 화면(300)의 제1 영역(310)에는 보정의 대상이 되는 영상(미리 설정된 제1 보정 파라미터에 대응하는 추론 영상)이 표시되고, UI 화면(300)의 아래에는 영상의 특성을 조절하기 위한 툴(tool)이 표시될 수 있다.Referring to FIG. 30, the image subject to correction (an inferred image corresponding to a preset first correction parameter) is displayed in the first area 310 of the UI screen 300 for adjusting the characteristics of the image, and the UI Tools for adjusting the characteristics of the image may be displayed at the bottom of the screen 300.

도 30에 도시된 UI 화면(300)에서는 사용자가 영상의 밝기를 조절하기 위한 툴을 선택했다고 가정한다. UI 화면(300)의 제2 영역(320)에는 현재 조절되는 영상의 특성은 '밝기'라는 정보와, 현재 밝기의 정도를 수치로 표현한 값이 표시될 수 있다. UI 화면(300)의 제3 영역(330)에는 밝기를 조절하기 위한 슬라이더(slider)가 표시되고, 사용자는 터치 입력을 통해 슬라이더를 움직임으로써 입력 영상의 밝기를 조절할 수 있다.In the UI screen 300 shown in FIG. 30, it is assumed that the user has selected a tool to adjust the brightness of the image. In the second area 320 of the UI screen 300, information that the characteristic of the image currently being adjusted is 'brightness' and a value expressing the current brightness level in numbers may be displayed. A slider for adjusting brightness is displayed in the third area 330 of the UI screen 300, and the user can adjust the brightness of the input image by moving the slider through touch input.

사용자가 입력 영상의 밝기를 증가시키도록 도 30의 UI 화면(300)의 제3 영역(330)의 슬라이더를 움직였다면, 제2 영역(320)에 표시된 수치가 증가하고, ISP(3130)는 영상의 밝기가 증가하도록 제1 보정 파라미터를 제2 보정 파라미터로 조정할 수 있다.If the user moves the slider in the third area 330 of the UI screen 300 of FIG. 30 to increase the brightness of the input image, the value displayed in the second area 320 increases, and the ISP 3130 increases the image brightness. The first correction parameter may be adjusted to the second correction parameter to increase the brightness.

사용자가 사용자 단말(3000)을 이용해 영상을 촬영하고 영상의 밝기를 조절하기 위한 툴을 선택하면, 처음에는 UI 화면(300)의 제1 영역(310)에 제2 신경망 모델(1220)이 추론한 보정 파라미터에 따라 입력 영상(e.g. 촬영 영상인 원시 영상으로부터 생성된 리니어 RGB 영상 등)이 보정된 영상이 표시될 수 있다. 사용자가 UI 화면(300)의 제2 영역(320) 및 제3 영역(330)에 표시된 툴을 통해 밝기를 조절하면, 그에 따라 보정 파라미터가 조정(e.g. 도 16에서와 같이 2배 증가)되고, 조정된 보정 파라미터에 따라 입력 영상이 보정된 영상이 제1 영역(310)에 표시될 수 있다.When a user captures an image using the user terminal 3000 and selects a tool to adjust the brightness of the image, the second neural network model 1220 inferred is displayed in the first area 310 of the UI screen 300. Depending on the correction parameters, an image in which the input image (e.g. a linear RGB image generated from a raw image that is a captured image, etc.) has been corrected may be displayed. When the user adjusts the brightness through the tools displayed in the second area 320 and the third area 330 of the UI screen 300, the correction parameter is adjusted accordingly (e.g. increased by 2 times as in FIG. 16), An image in which the input image has been corrected according to the adjusted correction parameters may be displayed in the first area 310 .

앞서 설명한 바와 같이, 제1 신경망 모델(1210)은 보정 파라미터와 레이블 영상 간의 관계를 학습하므로, 보정 파라미터가 변경되면 변경된 보정 파라미터에 대응하는 레이블 영상을 추론할 수 있다. 도 29는 본 개시의 일 실시예에 따른 제1 신경망 모델에 입력되는 보정 파라미터가 변경되었을 때 추론 영상의 변화를 설명하기 위한 도면이다.As described above, the first neural network model 1210 learns the relationship between correction parameters and label images, so when the correction parameters are changed, the label image corresponding to the changed correction parameters can be inferred. FIG. 29 is a diagram illustrating a change in an inferred image when a correction parameter input to a first neural network model is changed according to an embodiment of the present disclosure.

설명의 편의를 위해, 도 29에서 보정 파라미터(1610)는 밝기 조절과 관련된 파라미터만을 포함한다고 가정한다. 또한, 제1 신경망 모델(1210)은 밝기를 조절하는 영상 보정 알고리즘에 의해 생성된 레이블 영상을 이용하여 학습되었고, 학습 시 사용된 영상 보정 알고리즘은 보정 파라미터의 값이 클수록 밝기가 증가하도록 영상을 보정한다고 가정한다.For convenience of explanation, it is assumed in FIG. 29 that the correction parameter 1610 includes only parameters related to brightness control. In addition, the first neural network model 1210 was learned using a label image generated by an image correction algorithm that adjusts brightness, and the image correction algorithm used during learning corrects the image so that the brightness increases as the value of the correction parameter increases. Assume that you do.

도 29에 도시된 실시예에서는 보정 파라미터(1610)가 2배로 증가하였다. 2배로 증가된 보정 파라미터(1610)에 대응하는 레이블 영상은, 기존의 보정 파라미터(1610)에 대응하는 레이블 영상에 비해 밝기가 증가한다. 따라서, 제1 신경망 모델(1210)에서 출력되는 추론 영상(162) 역시 보정 파라미터(1610)가 증가함에 따라 밝기가 증가하게 된다.In the example shown in Figure 29, the correction parameter 1610 is doubled. The brightness of the label image corresponding to the doubled correction parameter 1610 increases compared to the label image corresponding to the existing correction parameter 1610. Accordingly, the brightness of the inferred image 162 output from the first neural network model 1210 also increases as the correction parameter 1610 increases.

한편, 도 30에 도시된 실시예에서는 사용자가 UI 화면(300)을 터치함으로써 보정 파라미터를 조정하기 위한 입력을 인가하는 것으로 설명하였으나, 다른 실시예에 따르면 사용자는 음성 입력을 통해 보정 파라미터를 조정할 수도 있다. 예를 들어, 사용자는 사용자 단말(3000)에 구비된 스피커를 통해 영상의 특성 조절을 지시하는 음성(e.g. "하이 빅스비, 사진을 더 밝게 만들어줘.")을 입력할 수도 있다.Meanwhile, in the embodiment shown in FIG. 30, the user applies an input to adjust the correction parameter by touching the UI screen 300. However, according to another embodiment, the user may adjust the correction parameter through voice input. there is. For example, the user may input a voice (e.g., “Hi Bixby, make the picture brighter.”) instructing to adjust the characteristics of the image through a speaker provided in the user terminal 3000.

이하에서는 도 32 및 도 33을 참조하여 제1 신경망 모델(1210) 및 제2 신경망 모델(1220)을 학습시키는 방법에 대해서 각각 설명한다. 이하에서는 설명의 편의를 위해 도 31의 컴퓨팅 장치(500)의 프로세서(530)가 도 32 및 도 33의 단계들을 수행하는 것으로 설명한다. 하지만, 이에 한정되지 않고 도 32 및 도 33의 단계들의 전부 또는 일부는 도 3의 사용자 단말(3000)의 메인 프로세서(3200)에 의해 수행될 수도 있다.Hereinafter, a method for training the first neural network model 1210 and the second neural network model 1220 will be described with reference to FIGS. 32 and 33, respectively. Hereinafter, for convenience of explanation, it will be described that the processor 530 of the computing device 500 of FIG. 31 performs the steps of FIGS. 32 and 33. However, the present invention is not limited to this and all or part of the steps of FIGS. 32 and 33 may be performed by the main processor 3200 of the user terminal 3000 of FIG. 3 .

도 32를 참고하면, 3201 단계에서 프로세서(530)는 적어도 하나의 영상 보정 알고리즘에 보정 파라미터를 적용하여 입력 영상을 보정함으로써 레이블 영상을 생성할 수 있다.Referring to FIG. 32, in step 3201, the processor 530 may generate a label image by correcting the input image by applying a correction parameter to at least one image correction algorithm.

3202 단계에서 프로세서(530)는 보정 파라미터 및 입력 영상을 제1 신경망 모델에 입력하고, 3203 단계에서 프로세서(530)는 제1 신경망 모델로부터 출력되는 추론 영상을 획득할 수 있다.In step 3202, the processor 530 inputs correction parameters and an input image to the first neural network model, and in step 3203, the processor 530 may obtain an inferred image output from the first neural network model.

3204 단계에서 프로세서(530)는 레이블 영상과 추론 영상 간 차이가 최소가 되도록 제1 신경망 모델을 업데이트할 수 있다.In step 3204, the processor 530 may update the first neural network model so that the difference between the label image and the inferred image is minimized.

도 33을 참고하면, 프로세서(530)는 3301 단계에서 입력 영상을 제2 신경망 모델에 입력하고, 3302 단계에서 제2 신경망 모델로부터 출력되는 보정 파라미터를 획득할 수 있다.Referring to FIG. 33, the processor 530 may input an input image into a second neural network model in step 3301 and obtain correction parameters output from the second neural network model in step 3302.

3203 단계에서 프로세서(530)는 적어도 하나의 영상 보정 알고리즘에 보정 파라미터를 적용하여 입력 영상을 보정함으로써 레이블 영상을 생성할 수 있다.In step 3203, the processor 530 may generate a label image by correcting the input image by applying correction parameters to at least one image correction algorithm.

프로세서(530)는, 3204 단계에서 레이블 영상의 영상 특성을 수치로 표현한 측정 특성값을 획득하고, 3205 단계에서 측정 특성값과 미리 설정된 목표 특성값 간 차이가 최소가 되도록 제2 신경망 모델을 업데이트할 수 있다.The processor 530 obtains measurement characteristic values expressing the image characteristics of the label image in numbers in step 3204, and updates the second neural network model so that the difference between the measurement characteristic value and the preset target characteristic value is minimized in step 3205. You can.

이상 설명한 실시예들에 따른 신경망 모델들(1210, 1220)을 사용자 단말(3000) 등에 탑재한다면 영상 보정 모듈(3132)(도 1의 영상 보정 모듈(1200)에 대응)의 업데이트를 간편하게 수행할 수 있는 장점이 있다. 이하에서는 도 34 및 도 35를 참조하여 일 실시예에 따른 신경망 모델을 업데이트하는 방법에 대해서 설명한다.If the neural network models 1210 and 1220 according to the embodiments described above are mounted on the user terminal 3000, etc., the image correction module 3132 (corresponding to the image correction module 1200 in FIG. 1) can be easily updated. There is an advantage. Hereinafter, a method of updating a neural network model according to an embodiment will be described with reference to FIGS. 34 and 35.

도 34에는 도 3의 사용자 단말(3000)의 ISP(3130)에 포함된 영상 보정 모듈(3132)이 신경망 모델이 아닌 영상 보정 알고리즘들을 포함하도록 구현된 예를 도시하였다. 도 34를 참고하면, 영상 보정 모듈(3132)은 명암비 개선 알고리즘 A(3132a) 및 밝기 보정 알고리즘(3132b)을 포함하도록 구현되었다.FIG. 34 shows an example in which the image correction module 3132 included in the ISP 3130 of the user terminal 3000 of FIG. 3 is implemented to include image correction algorithms rather than a neural network model. Referring to FIG. 34, the image correction module 3132 is implemented to include a contrast ratio improvement algorithm A (3132a) and a brightness correction algorithm (3132b).

도 34에서는 영상 보정 모듈(3132)에 포함된 영상 보정 알고리즘들에 대한 업데이트가 수행된다고 가정한다. 업데이트의 내용은 다음과 같다.In Figure 34, it is assumed that an update to the image correction algorithms included in the image correction module 3132 is performed. The contents of the update are as follows.

1) 명암비 개선 알고리즘 A를 명암비 개선 알고리즘 B로 교체1) Replace contrast ratio improvement algorithm A with contrast ratio improvement algorithm B

2) 밝기 보정 알고리즘을 제거2) Remove brightness correction algorithm

3) 노출 융합 알고리즘을 추가3) Add exposure fusion algorithm

업데이트를 수행한 결과를 도 34의 우측에 도시하였다. 도 34를 참고하면, 영상 보정 모듈(3132)에서 명암비 개선 알고리즘 A(3132a)는 명암비 개선 알고리즘 B(3132c)로 교체되었고, 밝기 보정 알고리즘(3132b)은 제거되었으며, 노출 융합 알고리즘(3132d)이 추가되었다.The result of performing the update is shown on the right side of FIG. 34. Referring to FIG. 34, in the image correction module 3132, contrast ratio improvement algorithm A (3132a) has been replaced with contrast ratio improvement algorithm B (3132c), the brightness correction algorithm (3132b) has been removed, and the exposure fusion algorithm (3132d) has been added. It has been done.

이와 같이 영상 보정 모듈(3132)이 영상 보정 알고리즘들을 포함하도록 구현된 상태에서 영상 보정 모듈(3132)에 대한 업데이트가 이루어질 경우 다음과 같은 문제점들이 존재한다.In this way, when an update to the image correction module 3132 is implemented while the image correction module 3132 is implemented to include image correction algorithms, the following problems exist.

첫 번째로 영상 보정 알고리즘에 대한 변경(교체, 제거, 추가 등)이 이루어질 때마다 처리 속도를 향상시키기 위한 최적화 작업이 필요하므로 시간과 리소스가 많이 필요하다.First, whenever a change (replacement, removal, addition, etc.) is made to the image correction algorithm, optimization work is required to improve processing speed, which requires a lot of time and resources.

두 번째로 일부 영상 보정 알고리즘의 경우 별도의 하드웨어로 구현되므로, 해당 영상 보정 알고리즘을 추가하기 위해서는 하드웨어를 교체하거나 추가해야 하는데, 특히 영상 보정 모듈(3132)이 사용자 단말(3000)상에 구현된 경우 하드웨어의 교체나 추가는 많은 제약이 따른다.Second, some image correction algorithms are implemented as separate hardware, so in order to add the corresponding image correction algorithm, the hardware must be replaced or added, especially when the image correction module 3132 is implemented on the user terminal 3000. Replacing or adding hardware comes with many restrictions.

도 35에는 도 3의 사용자 단말(3000)의 ISP(3130)에 포함된 영상 보정 모듈(3132)이 본 개시의 실시예들에 따른 신경망 모델들(1210, 1220)을 포함하도록 구현되었을 때 영상 보정 모듈(3132)을 업데이트하는 실시예를 도시하였다.35 shows image correction when the image correction module 3132 included in the ISP 3130 of the user terminal 3000 of FIG. 3 is implemented to include neural network models 1210 and 1220 according to embodiments of the present disclosure. An embodiment of updating the module 3132 is shown.

도 35를 참고하면, 영상 보정 모듈(3132)에 포함된 제1 신경망 모델(1210)을 업데이트하기 위해서는 제1 신경망 모델(1210)에 대한 학습이 다시 수행되어야 한다. 앞서 설명한 바와 같이 제1 신경망 모델(1210)에 대한 학습은 도 31에 도시된 별도의 컴퓨팅 장치(500)에 의해 수행될 수도 있으므로, 이하에서는 컴퓨팅 장치(500)가 제1 신경망 모델(1210)에 대한 학습을 수행한다고 가정한다.Referring to FIG. 35, in order to update the first neural network model 1210 included in the image correction module 3132, learning on the first neural network model 1210 must be performed again. As described above, learning about the first neural network model 1210 may be performed by a separate computing device 500 shown in FIG. 31, so hereinafter, the computing device 500 is used to learn the first neural network model 1210. Assume that you are learning about

앞서 설명한 바와 같이 레이블 영상 생성 모듈(1810)은 제1 신경망 모델(1210)에 학습시키고자 하는 영상 보정 특성에 대응되는 영상 보정 알고리즘들로 구성될 수 있다. 도 35를 참고하면, 최초에 프로세서(530)는 레이블 영상 생성 모듈(1810)이 명암비 개선 알고리즘 A(3132a) 및 밝기 보정 알고리즘(3132b)을 포함하도록 구성하고, 제1 신경망 모델(1210)을 학습시킨 후 이를 사용자 단말(3000)의 영상 보정 모듈(3132)에 탑재하였다.As described above, the label image generation module 1810 may be composed of image correction algorithms corresponding to image correction characteristics to be learned in the first neural network model 1210. Referring to FIG. 35, the processor 530 initially configures the label image generation module 1810 to include a contrast ratio improvement algorithm A (3132a) and a brightness correction algorithm (3132b), and learns the first neural network model (1210). After doing so, it was mounted on the image correction module 3132 of the user terminal 3000.

이후 사용자 단말(3000)의 영상 보정 모듈(3132)의 영상 보정 특성을 조정할 필요가 있는 경우, 프로세서(530)는 레이블 영상 생성 모듈(1810)이 명암비 개선 알고리즘 B(3132c) 및 노출 융합 알고리즘(3132d)를 포함하도록 새롭게 구성하고 다시 제1 신경망 모델(1210)을 학습시킬 수 있다. 제1 신경망 모델(1210)에 대한 학습이 완료되면 프로세서(530)는 새롭게 학습된 제1 신경망 모델(1210)을 사용자 단말(3000)에 전송하고, 사용자 단말(3000)은 수신한 제1 신경망 모델(1210)을 설치함으로써 영상 보정 모듈(3132)을 업데이트할 수 있다.Afterwards, if there is a need to adjust the image correction characteristics of the image correction module 3132 of the user terminal 3000, the processor 530 allows the label image generation module 1810 to use the contrast ratio improvement algorithm B (3132c) and the exposure fusion algorithm (3132d). ) and the first neural network model 1210 can be trained again. When learning of the first neural network model 1210 is completed, the processor 530 transmits the newly learned first neural network model 1210 to the user terminal 3000, and the user terminal 3000 receives the received first neural network model. The image correction module 3132 can be updated by installing 1210.

이와 같이 영상 보정 모듈(3132)이 본 개시의 실시예들에 따른 신경망 모델들(1210, 1220)을 포함하도록 구현된 경우, 영상 보정 모듈(3132)이 업데이트되더라도 최적화 작업을 수행할 필요가 없다. 또한, 일반적으로 신경망 모델들(1210, 1220)을 학습시키는 컴퓨팅 장치(500)는 충분한 하드웨어 리소스를 포함하고 있으므로, 새로운 학습을 위해 레이블 영상 생성 모듈(1810)에 포함되는 영상 보정 알고리즘들의 변경(교체, 삭제, 추가 등)을 자유롭게 할 수 있다.In this way, when the image correction module 3132 is implemented to include the neural network models 1210 and 1220 according to embodiments of the present disclosure, there is no need to perform optimization even if the image correction module 3132 is updated. In addition, since the computing device 500 for training the neural network models 1210 and 1220 generally includes sufficient hardware resources, it is possible to change (replace) the image correction algorithms included in the label image generation module 1810 for new learning. , deletion, addition, etc.) can be done freely.

본 개시의 일 실시예에 따른 신경망 모델을 이용한 영상 처리 방법은, 이미지 센서(100)를 통해 촬영된 영상을 획득하는 단계, 상기 영상의 촬영 환경(shooting context)을 확인하는 단계, 상기 촬영 환경에 따라서 영상 복원 모듈(image reconstruction module)(1100) 및 영상 보정 모듈(image correction module)(1200) 중 적어도 하나에 포함되는 신경망 모델을 선택하는 단계 및 상기 선택된 신경망 모델을 이용하여 상기 영상을 처리하는 단계를 포함할 수 있다.An image processing method using a neural network model according to an embodiment of the present disclosure includes obtaining an image captured through the image sensor 100, confirming a shooting environment of the image, and determining the shooting environment of the image. Accordingly, selecting a neural network model included in at least one of the image reconstruction module 1100 and the image correction module 1200 and processing the image using the selected neural network model. may include.

일 실시예에 따르면, 상기 촬영 환경은, 촬영 조건(shooting condition) 및 촬영 모드(shooting mode) 중 적어도 하나를 포함하며, 상기 촬영 조건은, 상기 영상의 ISO 값, 상기 영상이 촬영된 시간 및 장소 중 적어도 하나를 포함하고, 상기 촬영 모드는 일반 촬영 모드, 야간 촬영 모드 및 줌 촬영 모드 중 적어도 하나를 포함할 수 있다.According to one embodiment, the shooting environment includes at least one of a shooting condition and a shooting mode, and the shooting condition includes the ISO value of the image, the time and place at which the image was shot, and the shooting mode may include at least one of a normal shooting mode, a night shooting mode, and a zoom shooting mode.

일 실시예에 따르면, 상기 이미지 센서(100)는, 서로 다른 종류의 복수의 이미지 센서들 중에서, 상기 촬영 조건 및 상기 촬영 모드 중 적어도 하나 이상에 기초하여 선택될 수 있다.According to one embodiment, the image sensor 100 may be selected from among a plurality of different types of image sensors based on at least one of the shooting conditions and the shooting mode.

일 실시예에 따르면, 상기 신경망 모델을 선택하는 단계는, 상기 촬영 환경 및 상기 선택된 이미지 센서의 종류 중 적어도 하나 이상에 기초하여 상기 영상 복원 모듈(1100)의 세부 구성을 선택하는 단계 및 상기 촬영 환경, 상기 선택된 이미지 센서(100)의 종류 및 상기 선택된 영상 복원 모듈(1100)의 세부 구성 중 적어도 하나 이상에 기초하여, 상기 영상 보정 모듈(1200)에 포함된 복수의 신경망 모델 중 어느 하나를 선택하는 단계를 포함할 수 있다.According to one embodiment, the step of selecting the neural network model includes selecting a detailed configuration of the image restoration module 1100 based on at least one of the shooting environment and the type of the selected image sensor, and the shooting environment , selecting one of a plurality of neural network models included in the image correction module 1200 based on at least one of the type of the selected image sensor 100 and the detailed configuration of the selected image restoration module 1100. May include steps.

일 실시예에 따르면, 상기 영상 복원 모듈(1100)의 세부 구성을 선택하는 단계는, 상기 촬영 모드 또는 상기 선택된 이미지 센서(100)의 종류 중 적어도 하나 이상에 기초하여 1차적으로 세부 구성을 선택하는 단계 및 상기 촬영 조건에 기초하여, 상기 1차적으로 선택된 세부 구성을 유지하거나 변경하는 단계를 포함하며, 상기 촬영 모드 또는 상기 이미지 센서(100)의 종류에 대응되는 상기 영상 복원 모듈(1100)의 세부 구성이 미리 지정될 수 있다.According to one embodiment, the step of selecting the detailed configuration of the image restoration module 1100 includes primarily selecting the detailed configuration based on at least one of the shooting mode or the type of the selected image sensor 100. A step of maintaining or changing the primarily selected detailed configuration based on the step and the shooting conditions, and detailing the image restoration module 1100 corresponding to the shooting mode or the type of the image sensor 100. The configuration may be pre-specified.

일 실시예에 따르면, 상기 영상 복원 모듈(1100)의 세부 구성을 선택하는 단계는, 상기 촬영 조건에 포함된 ISO 값에 기초하여, 상기 영상 복원 모듈(1100)에 포함된 복수의 신경망 모델들 중 어느 하나를 선택할 수 있다.According to one embodiment, the step of selecting the detailed configuration of the image restoration module 1100 includes selecting one of a plurality of neural network models included in the image restoration module 1100 based on the ISO value included in the shooting condition. You can choose either one.

일 실시예에 따르면, 상기 선택된 신경망 모델은, 디노이즈(denoise) 기능을 포함하며, 상기 ISO 값에 대응되는 노이즈를 포함하는 영상을 이용하여 학습된 신경망 모델일 수 있다.According to one embodiment, the selected neural network model includes a denoise function and may be a neural network model learned using an image containing noise corresponding to the ISO value.

일 실시예에 따르면, 상기 영상 보정 모듈(1200)에 포함된 복수의 신경망 모델 중 어느 하나를 선택하는 단계는, 상기 선택된 이미지 센서(100)의 종류 및 상기 선택된 영상 복원 모듈(1100)의 세부 구성의 조합에 대응되는 신경망 모델을 선택할 수 있다.According to one embodiment, the step of selecting one of a plurality of neural network models included in the image correction module 1200 includes the type of the selected image sensor 100 and the detailed configuration of the selected image restoration module 1100. You can select a neural network model that corresponds to a combination of .

일 실시예에 따르면, 상기 선택된 신경망 모델은, 상기 촬영 환경에 따라 영상 특성을 보정하도록 학습된 신경망 모델일 수 있다.According to one embodiment, the selected neural network model may be a neural network model learned to correct image characteristics according to the shooting environment.

일 실시예에 따르면, 상기 영상 보정 모듈(1200)에 포함되는 신경망 모델은, 제1 신경망 모델(1210) 및 제2 신경망 모델(1220)을 포함하며, 상기 제1 신경망 모델(1210)은, 상기 제1 신경망 모델(1210)에 입력 영상 및 보정 파라미터가 입력되었을 때 출력되는 추론 영상과, 상기 보정 파라미터에 대응되는 레이블 영상 간 차이를 최소화하도록 학습된 모델이며, 상기 보정 파라미터에 대응되는 레이블 영상은, 상기 보정 파라미터가 적어도 하나의 영상 보정 알고리즘에 적용되었을 때, 상기 적어도 하나의 영상 보정 알고리즘에 의해 상기 입력 영상이 보정된 영상이고, 상기 제1 신경망 모델(1210)에 입력되는 보정 파라미터는 상기 제2 신경망 모델(1220)에 상기 입력 영상이 입력되었을 때 추론되는 보정 파라미터이며, 상기 제2 신경망 모델(1220)은, 상기 입력 영상이 입력되었을 때 상기 제2 신경망 모델(1220)이 추론하는 보정 파라미터와, 상기 레이블 영상이 미리 설정된 영상 특성을 갖도록 하는 보정 파라미터 간 차이를 최소화하도록 학습된 모델일 수 있다.According to one embodiment, the neural network model included in the image correction module 1200 includes a first neural network model 1210 and a second neural network model 1220, and the first neural network model 1210 is the It is a model learned to minimize the difference between the inferred image output when the input image and correction parameters are input to the first neural network model 1210 and the label image corresponding to the correction parameter, and the label image corresponding to the correction parameter is , when the correction parameter is applied to at least one image correction algorithm, the input image is an image corrected by the at least one image correction algorithm, and the correction parameter input to the first neural network model 1210 is the first neural network model 1210. 2 It is a correction parameter inferred when the input image is input to the neural network model 1220, and the second neural network model 1220 is a correction parameter inferred by the second neural network model 1220 when the input image is input. Wow, it may be a model learned to minimize the difference between correction parameters that allow the label image to have preset image characteristics.

본 개시의 일 실시예에 따른 신경망 모델을 이용하여 영상 신호를 처리하기 위한 컴퓨팅 장치는, 영상 신호를 처리하기 위한 프로그램이 저장되는 메모리 및 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는 상기 프로그램을 실행함으로써, 이미지 센서(100)를 통해 촬영된 영상을 획득하고, 상기 영상의 촬영 환경(shooting context)을 확인하고, 상기 촬영 환경에 따라서 영상 복원 모듈(image reconstruction module)(1100) 및 영상 보정 모듈(image correction module)(1200) 중 적어도 하나에 포함되는 신경망 모델을 선택한 후, 상기 선택된 신경망 모델을 이용하여 상기 영상을 처리할 수 있다.A computing device for processing an image signal using a neural network model according to an embodiment of the present disclosure includes a memory storing a program for processing an image signal and at least one processor, wherein the at least one processor is configured to: By executing the program, an image captured through the image sensor 100 is acquired, a shooting context of the image is confirmed, and an image reconstruction module 1100 and an image are generated according to the shooting environment. After selecting a neural network model included in at least one of the image correction modules 1200, the image may be processed using the selected neural network model.

일 실시예에 따르면, 상기 촬영 환경은, 촬영 조건(shooting condition) 및 촬영 모드(shooting mode) 중 적어도 하나를 포함하며, 상기 촬영 조건은, 상기 영상의 ISO 값, 상기 영상이 촬영된 시간 및 장소 중 적어도 하나를 포함하고, 상기 촬영 모드는 일반 촬영 모드, 야간 촬영 모드 및 줌 촬영 모드 중 적어도 하나를 포함할 수 있다.According to one embodiment, the shooting environment includes at least one of a shooting condition and a shooting mode, and the shooting condition includes the ISO value of the image, the time and place at which the image was shot, and the shooting mode may include at least one of a normal shooting mode, a night shooting mode, and a zoom shooting mode.

일 실시예에 따르면, 상기 이미지 센서(100)는, 서로 다른 종류의 복수의 이미지 센서(100)들 중에서, 상기 촬영 조건 및 상기 촬영 모드 중 적어도 하나 이상에 기초하여 선택될 수 있다.According to one embodiment, the image sensor 100 may be selected from among a plurality of different types of image sensors 100 based on at least one of the shooting conditions and the shooting mode.

일 실시예에 따르면, 상기 적어도 하나의 프로세서는 상기 신경망 모델을 선택함에 있어서, 상기 촬영 환경 및 상기 선택된 이미지 센서(100)의 종류 중 적어도 하나 이상에 기초하여 상기 영상 복원 모듈(1100)의 세부 구성을 선택한 후, 상기 촬영 환경, 상기 선택된 이미지 센서(100)의 종류 및 상기 선택된 영상 복원 모듈(1100)의 세부 구성 중 적어도 하나 이상에 기초하여, 상기 영상 보정 모듈(1200)에 포함된 복수의 신경망 모델 중 어느 하나를 선택할 수 있다. According to one embodiment, when selecting the neural network model, the at least one processor determines the detailed configuration of the image restoration module 1100 based on at least one of the shooting environment and the type of the selected image sensor 100. After selecting, based on at least one of the shooting environment, the type of the selected image sensor 100, and the detailed configuration of the selected image restoration module 1100, a plurality of neural networks included in the image correction module 1200 You can choose any one of the models.

일 실시예에 따르면, 상기 적어도 하나의 프로세서는 상기 영상 복원 모듈(1100)의 세부 구성을 선택함에 있어서, 상기 촬영 모드 또는 상기 선택된 이미지 센서(100)의 종류 중 적어도 하나 이상에 기초하여 1차적으로 세부 구성을 선택한 후, 상기 촬영 조건에 기초하여 상기 1차적으로 선택된 세부 구성을 유지하거나 변경하며, 상기 촬영 모드 또는 상기 이미지 센서(100)의 종류에 대응되는 상기 영상 복원 모듈(1100)의 세부 구성이 미리 지정될 수 있다.According to one embodiment, when selecting the detailed configuration of the image restoration module 1100, the at least one processor primarily based on at least one of the shooting mode or the type of the selected image sensor 100. After selecting the detailed configuration, the primarily selected detailed configuration is maintained or changed based on the shooting conditions, and the detailed configuration of the image restoration module 1100 corresponding to the shooting mode or type of the image sensor 100 is changed. This can be specified in advance.

일 실시예에 따르면, 상기 적어도 하나의 프로세서는 상기 영상 복원 모듈(1100)의 세부 구성을 선택함에 있어서, 상기 촬영 조건에 포함된 ISO 값에 기초하여, 상기 영상 복원 모듈(1100)에 포함된 복수의 신경망 모델들 중 어느 하나를 선택할 수 있다.According to one embodiment, in selecting the detailed configuration of the image restoration module 1100, the at least one processor selects a plurality of images included in the image restoration module 1100 based on the ISO value included in the shooting condition. You can select any one of the neural network models.

일 실시예에 따르면, 상기 선택된 신경망 모델은, 디노이즈(denoise) 기능을 포함하며, 상기 ISO 값에 대응되는 노이즈를 포함하는 영상을 이용하여 학습된 신경망 모델일 수 있다.According to one embodiment, the selected neural network model includes a denoise function and may be a neural network model learned using an image containing noise corresponding to the ISO value.

일 실시예에 따르면, 상기 적어도 하나의 프로세서는 상기 영상 보정 모듈(1200)에 포함된 복수의 신경망 모델 중 어느 하나를 선택함에 있어서, 상기 선택된 이미지 센서(100)의 종류 및 상기 선택된 영상 복원 모듈(1100)의 세부 구성의 조합에 대응되는 신경망 모델을 선택할 수 있다.According to one embodiment, when selecting one of a plurality of neural network models included in the image correction module 1200, the at least one processor determines the type of the selected image sensor 100 and the selected image restoration module ( You can select a neural network model that corresponds to a combination of the detailed configurations of 1100).

일 실시예에 따르면, 상기 선택된 신경망 모델은, 상기 촬영 환경에 따라 영상 특성을 보정하도록 학습된 신경망 모델일 수 있다.According to one embodiment, the selected neural network model may be a neural network model learned to correct image characteristics according to the shooting environment.

일 실시예에 따르면, 상기 영상 보정 모듈(1200)에 포함되는 신경망 모델은, 제1 신경망 모델(1210) 및 제2 신경망 모델(1220)을 포함하며, 상기 제1 신경망 모델(1210)은, 상기 제1 신경망 모델(1210)에 입력 영상 및 보정 파라미터가 입력되었을 때 출력되는 추론 영상과, 상기 보정 파라미터에 대응되는 레이블 영상 간 차이를 최소화하도록 학습된 모델이며, 상기 보정 파라미터에 대응되는 레이블 영상은, 상기 보정 파라미터가 적어도 하나의 영상 보정 알고리즘에 적용되었을 때, 상기 적어도 하나의 영상 보정 알고리즘에 의해 상기 입력 영상이 보정된 영상이고, 상기 제1 신경망 모델(1210)에 입력되는 보정 파라미터는 상기 제2 신경망 모델(1220)에 상기 입력 영상이 입력되었을 때 추론되는 보정 파라미터이며, 상기 제2 신경망 모델(1220)은, 상기 입력 영상이 입력되었을 때 상기 제2 신경망 모델(1220)이 추론하는 보정 파라미터와, 상기 레이블 영상이 미리 설정된 영상 특성을 갖도록 하는 보정 파라미터 간 차이를 최소화하도록 학습된 모델일 수 있다.According to one embodiment, the neural network model included in the image correction module 1200 includes a first neural network model 1210 and a second neural network model 1220, and the first neural network model 1210 is the It is a model learned to minimize the difference between the inferred image output when the input image and correction parameters are input to the first neural network model 1210 and the label image corresponding to the correction parameter, and the label image corresponding to the correction parameter is , when the correction parameter is applied to at least one image correction algorithm, the input image is an image corrected by the at least one image correction algorithm, and the correction parameter input to the first neural network model 1210 is the first neural network model 1210. 2 It is a correction parameter inferred when the input image is input to the neural network model 1220, and the second neural network model 1220 is a correction parameter inferred by the second neural network model 1220 when the input image is input. Wow, it may be a model learned to minimize the difference between correction parameters that allow the label image to have preset image characteristics.

본 개시의 다양한 실시예들은 하나 이상의 컴퓨터 프로그램들에 의해 구현 또는 지원될 수 있고, 컴퓨터 프로그램들은 컴퓨터 판독 가능한 프로그램 코드(code)로부터 형성되고, 컴퓨터로 판독 가능한 매체에 수록될 수 있다. 본 개시에서, "애플리케이션(application)" 및 "프로그램(program)"은 컴퓨터 판독 가능한 프로그램 코드에서의 구현에 적합한 하나 이상의 컴퓨터 프로그램, 소프트웨어 컴포넌트, 명령어 세트, 프로시저(procedure), 함수, 개체(object), 클래스, 인스턴스, 관련 데이터, 또는 그것의 일부를 나타낼 수 있다. "컴퓨터 판독 가능한 프로그램 코드"는, 소스 코드, 목적 코드, 및 실행 가능한 코드를 포함하는 다양한 유형의 컴퓨터 코드를 포함할 수 있다. "컴퓨터 판독 가능한 매체"는, ROM(read only memory), RAM(random access memory), 하드 디스크 드라이브(HDD), CD(compact disc), DVD(digital video disc), 또는 다양한 유형의 메모리와 같이, 컴퓨터에 의해 액세스(access)될 수 있는 다양한 유형의 매체를 포함할 수 있다.Various embodiments of the present disclosure may be implemented or supported by one or more computer programs, and the computer programs may be formed from computer-readable program code and stored in a computer-readable medium. In this disclosure, “application” and “program” refer to one or more computer programs, software components, instruction sets, procedures, functions, or objects suitable for implementation in computer-readable program code. ), may represent a class, instance, related data, or part thereof. “Computer-readable program code” may include various types of computer code, including source code, object code, and executable code. “Computer-readable media” means read only memory (ROM), random access memory (RAM), hard disk drive (HDD), compact disc (CD), digital video disc (DVD), or various types of memory, It may include various types of media that can be accessed by a computer.

또한, 기기로 읽을 수 있는 저장 매체는, 비일시적(non-transitory) 저장 매체의 형태로 제공될 수 있다. 여기서, ‘비일시적 저장 매체'는 실재(tangible)하는 장치이고, 일시적인 전기적 또는 다른 신호들을 전송하는 유선, 무선, 광학적, 또는 다른 통신 링크들을 배제할 수 있다. 한편, 이 '비일시적 저장 매체'는 데이터가 저장 매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다. 예를 들어, '비일시적 저장 매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다. 컴퓨터 판독 가능한 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함할 수 있다. 컴퓨터 판독 가능한 매체는, 데이터가 영구적으로 저장될 수 있는 매체와 데이터가 저장되고 나중에 덮어쓰기 될 수 있는 매체, 이를테면 재기입 가능한 광 디스크 또는 소거 가능한 메모리 디바이스를 포함한다.Additionally, device-readable storage media may be provided in the form of non-transitory storage media. Here, a ‘non-transitory storage medium’ is a tangible device and may exclude wired, wireless, optical, or other communication links that transmit transient electrical or other signals. Meanwhile, this 'non-transitory storage medium' does not distinguish between cases where data is semi-permanently stored in the storage medium and cases where data is stored temporarily. For example, a 'non-transitory storage medium' may include a buffer where data is temporarily stored. Computer-readable media can be any available media that can be accessed by a computer and can include both volatile and non-volatile media, removable and non-removable media. Computer-readable media includes media on which data can be permanently stored and media on which data can be stored and later overwritten, such as rewritable optical disks or erasable memory devices.

일 실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예를 들어, compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어를 통해 또는 두 개의 사용자 장치들(예를 들어, 스마트폰) 간에 직접, 온라인으로 배포(예를 들어, 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예를 들어, 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.According to one embodiment, methods according to various embodiments disclosed in this document may be provided and included in a computer program product. Computer program products are commodities and can be traded between sellers and buyers. A computer program product may be distributed in the form of a machine-readable storage medium (e.g., compact disc read only memory (CD-ROM)), or through an application store, or on two user devices (e.g., smart device). It can be distributed (e.g., downloaded or uploaded) directly between phones, or online. In the case of online distribution, at least a portion of the computer program product (e.g., a downloadable app) may be stored on a device-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or a relay server. It can be at least temporarily stored or created temporarily.

전술한 본 개시의 설명은 예시를 위한 것이며, 본 개시가 속하는 기술분야의 통상의 지식을 가진 자는 본 개시의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 으로 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The foregoing description of the present disclosure is for illustrative purposes, and a person skilled in the art to which the present disclosure pertains will understand that the present disclosure can be easily modified into another specific form without changing its technical idea or essential features. will be. For example, the described techniques are performed in an order different from the described method, and/or the components of the described system, structure, device, circuit, etc. are combined or combined in a different form than the described method, or in a different configuration. Appropriate results may be achieved through substitution or substitution by elements or equivalents. Therefore, the embodiments described above should be understood in all respects as illustrative and not restrictive. For example, each component described as unitary may be implemented in a distributed manner, and similarly, components described as distributed may also be implemented in a combined form.

본 개시의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 개시의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present disclosure is indicated by the claims described below rather than the detailed description above, and all changes or modified forms derived from the meaning and scope of the claims and their equivalent concepts should be construed as being included in the scope of the present disclosure. do.

Claims (21)

신경망 모델을 이용한 영상 처리 방법에 있어서,
이미지 센서(100)를 통해 촬영된 영상을 획득하는 단계;
상기 영상의 촬영 환경(shooting context)을 확인하는 단계;
상기 촬영 환경에 따라서 영상 복원 모듈(image reconstruction module)(1100) 및 영상 보정 모듈(image correction module)(1200) 중 적어도 하나에 포함되는 신경망 모델을 선택하는 단계; 및
상기 선택된 신경망 모델을 이용하여 상기 영상을 처리하는 단계를 포함하는, 방법.
In an image processing method using a neural network model,
Obtaining an image captured through the image sensor 100;
Confirming the shooting context of the video;
selecting a neural network model included in at least one of an image reconstruction module 1100 and an image correction module 1200 according to the shooting environment; and
Method comprising processing the image using the selected neural network model.
제1항에 있어서,
상기 촬영 환경은, 촬영 조건(shooting condition) 및 촬영 모드(shooting mode) 중 적어도 하나를 포함하며,
상기 촬영 조건은, 상기 영상의 ISO 값, 상기 영상이 촬영된 시간 및 장소 중 적어도 하나를 포함하고,
상기 촬영 모드는 일반 촬영 모드, 야간 촬영 모드 및 줌 촬영 모드 중 적어도 하나를 포함하는 것을 특징으로 하는 방법.
According to paragraph 1,
The shooting environment includes at least one of a shooting condition and a shooting mode,
The shooting conditions include at least one of the ISO value of the image and the time and place at which the image was captured,
The method characterized in that the shooting mode includes at least one of a normal shooting mode, a night shooting mode, and a zoom shooting mode.
제1항 및 제2항 중 어느 하나의 항에 있어서,
상기 이미지 센서(100)는,
서로 다른 종류의 복수의 이미지 센서들 중에서, 상기 촬영 조건 및 상기 촬영 모드 중 적어도 하나 이상에 기초하여 선택되는 것을 특징으로 하는 방법.
According to any one of paragraphs 1 and 2,
The image sensor 100,
A method of selecting a plurality of different types of image sensors based on at least one of the shooting conditions and the shooting mode.
제1항 내지 제3항 중 어느 하나의 항에 있어서,
상기 신경망 모델을 선택하는 단계는,
상기 촬영 환경 및 상기 선택된 이미지 센서의 종류 중 적어도 하나 이상에 기초하여 상기 영상 복원 모듈(1100)의 세부 구성을 선택하는 단계; 및
상기 촬영 환경, 상기 선택된 이미지 센서(100)의 종류 및 상기 선택된 영상 복원 모듈(1100)의 세부 구성 중 적어도 하나 이상에 기초하여, 상기 영상 보정 모듈(1200)에 포함된 복수의 신경망 모델 중 어느 하나를 선택하는 단계를 포함하는 것을 특징으로 하는 방법.
According to any one of claims 1 to 3,
The step of selecting the neural network model is,
selecting a detailed configuration of the image restoration module 1100 based on at least one of the shooting environment and the type of the selected image sensor; and
Based on at least one of the shooting environment, the type of the selected image sensor 100, and the detailed configuration of the selected image restoration module 1100, one of a plurality of neural network models included in the image correction module 1200 A method comprising the step of selecting.
제1항 내지 제4항 중 어느 하나의 항에 있어서,
상기 영상 복원 모듈(1100)의 세부 구성을 선택하는 단계는,
상기 촬영 모드 또는 상기 선택된 이미지 센서(100)의 종류 중 적어도 하나 이상에 기초하여 1차적으로 세부 구성을 선택하는 단계; 및
상기 촬영 조건에 기초하여, 상기 1차적으로 선택된 세부 구성을 유지하거나 변경하는 단계를 포함하며,
상기 촬영 모드 또는 상기 이미지 센서(100)의 종류에 대응되는 상기 영상 복원 모듈(1100)의 세부 구성이 미리 지정되는 것을 특징으로 하는 방법.
According to any one of claims 1 to 4,
The step of selecting the detailed configuration of the image restoration module 1100 is:
initially selecting a detailed configuration based on at least one of the shooting mode or the type of the selected image sensor 100; and
Maintaining or changing the primarily selected detailed configuration based on the shooting conditions,
A method characterized in that the detailed configuration of the image restoration module 1100 corresponding to the shooting mode or type of the image sensor 100 is specified in advance.
제1항 내지 제5항 중 어느 하나의 항에 있어서,
상기 영상 복원 모듈(1100)의 세부 구성을 선택하는 단계는,
상기 촬영 조건에 포함된 ISO 값에 기초하여, 상기 영상 복원 모듈(1100)에 포함된 복수의 신경망 모델들 중 어느 하나를 선택하는 것을 특징으로 하는 방법.
According to any one of claims 1 to 5,
The step of selecting the detailed configuration of the image restoration module 1100 is:
A method characterized in that one of a plurality of neural network models included in the image restoration module 1100 is selected based on the ISO value included in the shooting condition.
제1항 내지 제6항 중 어느 하나의 항에 있어서,
상기 선택된 신경망 모델은,
디노이즈(denoise) 기능을 포함하며, 상기 ISO 값에 대응되는 노이즈를 포함하는 영상을 이용하여 학습된 신경망 모델인 것을 특징으로 하는 방법.
According to any one of claims 1 to 6,
The selected neural network model is,
A method comprising a denoise function and being a neural network model learned using an image containing noise corresponding to the ISO value.
제1항 내지 제7항 중 어느 하나의 항에 있어서,
상기 영상 보정 모듈(1200)에 포함된 복수의 신경망 모델 중 어느 하나를 선택하는 단계는,
상기 선택된 이미지 센서(100)의 종류 및 상기 선택된 영상 복원 모듈(1100)의 세부 구성의 조합에 대응되는 신경망 모델을 선택하는 것을 특징으로 하는 방법.
According to any one of claims 1 to 7,
The step of selecting one of a plurality of neural network models included in the image correction module 1200 includes:
A method characterized by selecting a neural network model corresponding to a combination of the type of the selected image sensor 100 and the detailed configuration of the selected image restoration module 1100.
제1항 내지 제8항 중 어느 하나의 항에 있어서,
상기 선택된 신경망 모델은,
상기 촬영 환경에 따라 영상 특성을 보정하도록 학습된 신경망 모델인 것을 특징으로 하는 방법.
According to any one of claims 1 to 8,
The selected neural network model is,
A method characterized in that it is a neural network model learned to correct image characteristics according to the shooting environment.
제1항 내지 제9항 중 어느 하나의 항에 있어서,
상기 영상 보정 모듈(1200)에 포함되는 신경망 모델은,
제1 신경망 모델(1210) 및 제2 신경망 모델(1220)을 포함하며,
상기 제1 신경망 모델(1210)은, 상기 제1 신경망 모델(1210)에 입력 영상 및 보정 파라미터가 입력되었을 때 출력되는 추론 영상과, 상기 보정 파라미터에 대응되는 레이블 영상 간 차이를 최소화하도록 학습된 모델이며,
상기 보정 파라미터에 대응되는 레이블 영상은, 상기 보정 파라미터가 적어도 하나의 영상 보정 알고리즘에 적용되었을 때, 상기 적어도 하나의 영상 보정 알고리즘에 의해 상기 입력 영상이 보정된 영상이고,
상기 제1 신경망 모델(1210)에 입력되는 보정 파라미터는 상기 제2 신경망 모델(1220)에 상기 입력 영상이 입력되었을 때 추론되는 보정 파라미터이며,
상기 제2 신경망 모델(1220)은, 상기 입력 영상이 입력되었을 때 상기 제2 신경망 모델(1220)이 추론하는 보정 파라미터와, 상기 레이블 영상이 미리 설정된 영상 특성을 갖도록 하는 보정 파라미터 간 차이를 최소화하도록 학습된 모델인 것을 특징으로 하는 방법.
According to any one of claims 1 to 9,
The neural network model included in the image correction module 1200 is:
Includes a first neural network model 1210 and a second neural network model 1220,
The first neural network model 1210 is a model learned to minimize the difference between the inferred image output when the input image and correction parameters are input to the first neural network model 1210 and the label image corresponding to the correction parameter. and
The label image corresponding to the correction parameter is an image in which the input image is corrected by the at least one image correction algorithm when the correction parameter is applied to the at least one image correction algorithm,
The correction parameter input to the first neural network model 1210 is a correction parameter inferred when the input image is input to the second neural network model 1220,
The second neural network model 1220 is configured to minimize the difference between a correction parameter that the second neural network model 1220 infers when the input image is input and a correction parameter that causes the label image to have preset image characteristics. A method characterized by being a learned model.
신경망 모델을 이용하여 영상 신호를 처리하기 위한 컴퓨팅 장치에 있어서,
영상 신호를 처리하기 위한 프로그램이 저장되는 메모리; 및
적어도 하나의 프로세서를 포함하고,
상기 적어도 하나의 프로세서는 상기 프로그램을 실행함으로써,
이미지 센서(100)를 통해 촬영된 영상을 획득하고, 상기 영상의 촬영 환경(shooting context)을 확인하고, 상기 촬영 환경에 따라서 영상 복원 모듈(image reconstruction module)(1100) 및 영상 보정 모듈(image correction module)(1200) 중 적어도 하나에 포함되는 신경망 모델을 선택한 후, 상기 선택된 신경망 모델을 이용하여 상기 영상을 처리하는, 컴퓨팅 장치.
In a computing device for processing image signals using a neural network model,
A memory in which a program for processing video signals is stored; and
Contains at least one processor,
The at least one processor executes the program,
An image captured through the image sensor 100 is acquired, the shooting context of the image is confirmed, and an image reconstruction module 1100 and an image correction module are used according to the shooting environment. A computing device that selects a neural network model included in at least one of the modules (1200) and then processes the image using the selected neural network model.
제11항에 있어서,
상기 촬영 환경은, 촬영 조건(shooting condition) 및 촬영 모드(shooting mode) 중 적어도 하나를 포함하며,
상기 촬영 조건은, 상기 영상의 ISO 값, 상기 영상이 촬영된 시간 및 장소 중 적어도 하나를 포함하고,
상기 촬영 모드는 일반 촬영 모드, 야간 촬영 모드 및 줌 촬영 모드 중 적어도 하나를 포함하는 것을 특징으로 하는 컴퓨팅 장치.
According to clause 11,
The shooting environment includes at least one of a shooting condition and a shooting mode,
The shooting conditions include at least one of the ISO value of the image and the time and place at which the image was captured,
A computing device characterized in that the shooting mode includes at least one of a normal shooting mode, a night shooting mode, and a zoom shooting mode.
제11항 및 제12항 중 어느 하나의 항에 있어서,
상기 이미지 센서(100)는,
서로 다른 종류의 복수의 이미지 센서(100)들 중에서, 상기 촬영 조건 및 상기 촬영 모드 중 적어도 하나 이상에 기초하여 선택되는 것을 특징으로 하는 컴퓨팅 장치.
According to any one of claims 11 and 12,
The image sensor 100,
A computing device, wherein a plurality of image sensors 100 of different types are selected based on at least one of the shooting conditions and the shooting mode.
제11항 내지 제13항 중 어느 하나의 항에 있어서,
상기 적어도 하나의 프로세서는 상기 신경망 모델을 선택함에 있어서,
상기 촬영 환경 및 상기 선택된 이미지 센서(100)의 종류 중 적어도 하나 이상에 기초하여 상기 영상 복원 모듈(1100)의 세부 구성을 선택한 후,
상기 촬영 환경, 상기 선택된 이미지 센서(100)의 종류 및 상기 선택된 영상 복원 모듈(1100)의 세부 구성 중 적어도 하나 이상에 기초하여, 상기 영상 보정 모듈(1200)에 포함된 복수의 신경망 모델 중 어느 하나를 선택하는 것을 특징으로 하는 컴퓨팅 장치.
According to any one of claims 11 to 13,
The at least one processor selects the neural network model,
After selecting the detailed configuration of the image restoration module 1100 based on at least one of the shooting environment and the type of the selected image sensor 100,
Based on at least one of the shooting environment, the type of the selected image sensor 100, and the detailed configuration of the selected image restoration module 1100, one of a plurality of neural network models included in the image correction module 1200 A computing device characterized in that selection.
제11항 내지 제14항 중 어느 하나의 항에 있어서,
상기 적어도 하나의 프로세서는 상기 영상 복원 모듈(1100)의 세부 구성을 선택함에 있어서,
상기 촬영 모드 또는 상기 선택된 이미지 센서(100)의 종류 중 적어도 하나 이상에 기초하여 1차적으로 세부 구성을 선택한 후,
상기 촬영 조건에 기초하여 상기 1차적으로 선택된 세부 구성을 유지하거나 변경하며,
상기 촬영 모드 또는 상기 이미지 센서(100)의 종류에 대응되는 상기 영상 복원 모듈(1100)의 세부 구성이 미리 지정되는 것을 특징으로 하는 컴퓨팅 장치.
According to any one of claims 11 to 14,
The at least one processor selects a detailed configuration of the image restoration module 1100,
After initially selecting a detailed configuration based on at least one of the shooting mode or the type of the selected image sensor 100,
Maintaining or changing the primarily selected detailed configuration based on the shooting conditions,
A computing device, wherein a detailed configuration of the image restoration module 1100 corresponding to the shooting mode or type of the image sensor 100 is specified in advance.
제11항 내지 제15항 중 어느 하나의 항에 있어서,
상기 적어도 하나의 프로세서는 상기 영상 복원 모듈(1100)의 세부 구성을 선택함에 있어서,
상기 촬영 조건에 포함된 ISO 값에 기초하여, 상기 영상 복원 모듈(1100)에 포함된 복수의 신경망 모델들 중 어느 하나를 선택하는 것을 특징으로 하는 컴퓨팅 장치.
According to any one of claims 11 to 15,
The at least one processor selects a detailed configuration of the image restoration module 1100,
A computing device characterized in that one of a plurality of neural network models included in the image restoration module 1100 is selected based on the ISO value included in the shooting condition.
제11항 내지 제16항 중 어느 하나의 항에 있어서,
상기 선택된 신경망 모델은,
디노이즈(denoise) 기능을 포함하며, 상기 ISO 값에 대응되는 노이즈를 포함하는 영상을 이용하여 학습된 신경망 모델인 것을 특징으로 하는 컴퓨팅 장치.
According to any one of claims 11 to 16,
The selected neural network model is,
A computing device comprising a denoise function and being a neural network model learned using an image containing noise corresponding to the ISO value.
제11항 내지 제17항 중 어느 하나의 항에 있어서,
상기 적어도 하나의 프로세서는 상기 영상 보정 모듈(1200)에 포함된 복수의 신경망 모델 중 어느 하나를 선택함에 있어서,
상기 선택된 이미지 센서(100)의 종류 및 상기 선택된 영상 복원 모듈(1100)의 세부 구성의 조합에 대응되는 신경망 모델을 선택하는 것을 특징으로 하는 컴퓨팅 장치.
According to any one of claims 11 to 17,
The at least one processor selects one of a plurality of neural network models included in the image correction module 1200,
A computing device characterized in that it selects a neural network model corresponding to a combination of the type of the selected image sensor 100 and the detailed configuration of the selected image restoration module 1100.
제11항 내지 제18항 중 어느 하나의 항에 있어서,
상기 선택된 신경망 모델은,
상기 촬영 환경에 따라 영상 특성을 보정하도록 학습된 신경망 모델인 것을 특징으로 하는 컴퓨팅 장치.
According to any one of claims 11 to 18,
The selected neural network model is,
A computing device characterized in that it is a neural network model learned to correct image characteristics according to the shooting environment.
제11항 내지 제19항 중 어느 하나의 항에 있어서,
상기 영상 보정 모듈(1200)에 포함되는 신경망 모델은,
제1 신경망 모델(1210) 및 제2 신경망 모델(1220)을 포함하며,
상기 제1 신경망 모델(1210)은, 상기 제1 신경망 모델(1210)에 입력 영상 및 보정 파라미터가 입력되었을 때 출력되는 추론 영상과, 상기 보정 파라미터에 대응되는 레이블 영상 간 차이를 최소화하도록 학습된 모델이며,
상기 보정 파라미터에 대응되는 레이블 영상은, 상기 보정 파라미터가 적어도 하나의 영상 보정 알고리즘에 적용되었을 때, 상기 적어도 하나의 영상 보정 알고리즘에 의해 상기 입력 영상이 보정된 영상이고,
상기 제1 신경망 모델(1210)에 입력되는 보정 파라미터는 상기 제2 신경망 모델(1220)에 상기 입력 영상이 입력되었을 때 추론되는 보정 파라미터이며,
상기 제2 신경망 모델(1220)은, 상기 입력 영상이 입력되었을 때 상기 제2 신경망 모델(1220)이 추론하는 보정 파라미터와, 상기 레이블 영상이 미리 설정된 영상 특성을 갖도록 하는 보정 파라미터 간 차이를 최소화하도록 학습된 모델인 것을 특징으로 하는 컴퓨팅 장치.
According to any one of claims 11 to 19,
The neural network model included in the image correction module 1200 is:
Includes a first neural network model 1210 and a second neural network model 1220,
The first neural network model 1210 is a model learned to minimize the difference between the inferred image output when the input image and correction parameters are input to the first neural network model 1210 and the label image corresponding to the correction parameter. and
The label image corresponding to the correction parameter is an image in which the input image is corrected by the at least one image correction algorithm when the correction parameter is applied to the at least one image correction algorithm,
The correction parameter input to the first neural network model 1210 is a correction parameter inferred when the input image is input to the second neural network model 1220,
The second neural network model 1220 is configured to minimize the difference between a correction parameter that the second neural network model 1220 infers when the input image is input and a correction parameter that causes the label image to have preset image characteristics. A computing device characterized by a learned model.
제1항 내지 제10항 중 어느 한 항의 방법을 컴퓨터에서 수행하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium on which a program for performing the method of any one of claims 1 to 10 is recorded on a computer.
KR1020230007457A 2022-05-30 2023-01-18 Image signal processing method using neural network, and computing appratus for performing the same KR20230166870A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/KR2023/007376 WO2023234674A1 (en) 2022-05-30 2023-05-30 Image signal processing method using neural network model and computing apparatus for performing same
US18/224,756 US20230386193A1 (en) 2022-05-30 2023-07-21 Image signal processing method using neural network model and computing apparatus for performing the same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020220066331 2022-05-30
KR20220066331 2022-05-30

Publications (1)

Publication Number Publication Date
KR20230166870A true KR20230166870A (en) 2023-12-07

Family

ID=89163394

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230007457A KR20230166870A (en) 2022-05-30 2023-01-18 Image signal processing method using neural network, and computing appratus for performing the same

Country Status (1)

Country Link
KR (1) KR20230166870A (en)

Similar Documents

Publication Publication Date Title
EP3542347B1 (en) Fast fourier color constancy
US8606042B2 (en) Blending of exposure-bracketed images using weight distribution functions
US10021313B1 (en) Image adjustment techniques for multiple-frame images
CN108668093B (en) HDR image generation method and device
US20210097650A1 (en) Image processing method, storage medium, image processing apparatus, learned model manufacturing method, and image processing system
US8611654B2 (en) Color saturation-modulated blending of exposure-bracketed images
KR20170107487A (en) Metadata-based image processing method and apparatus
WO2020187424A1 (en) Image processor
CN111489322B (en) Method and device for adding sky filter to static picture
US8717449B2 (en) Image synthesizing apparatus, image recording method, and recording medium
JP2015156615A (en) Image processing system, image processing method, control program, and recording medium
US10785466B2 (en) Multi-image color-refinement with application to disparity estimation
KR20080049458A (en) Apparatus to automatically controlling white balance and method thereof
CN110930341A (en) Low-illumination image enhancement method based on image fusion
CN113379609A (en) Image processing method, storage medium and terminal equipment
US20230120604A1 (en) System and Method for Maximizing Inference Accuracy using Recaptured Datasets
KR20230166870A (en) Image signal processing method using neural network, and computing appratus for performing the same
CN110555805B (en) Image processing method, device, equipment and storage medium
WO2023110880A1 (en) Image processing methods and systems for low-light image enhancement using machine learning models
KR20230165686A (en) Method and electronic device for performing denosing processing on image data
US20230386193A1 (en) Image signal processing method using neural network model and computing apparatus for performing the same
JP6210772B2 (en) Information processing apparatus, imaging apparatus, control method, and program
JP2012028937A (en) Video signal correction apparatus and video signal correction program
Silva et al. A deep learning approach to mobile camera image signal processing
JP2006093757A (en) Image processing apparatus, imaging apparatus, and image processing program