KR20230067440A - Image sensor and image processing system - Google Patents

Image sensor and image processing system Download PDF

Info

Publication number
KR20230067440A
KR20230067440A KR1020220011965A KR20220011965A KR20230067440A KR 20230067440 A KR20230067440 A KR 20230067440A KR 1020220011965 A KR1020220011965 A KR 1020220011965A KR 20220011965 A KR20220011965 A KR 20220011965A KR 20230067440 A KR20230067440 A KR 20230067440A
Authority
KR
South Korea
Prior art keywords
function
image data
image
processor
signal
Prior art date
Application number
KR1020220011965A
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 US18/051,730 priority Critical patent/US20230145321A1/en
Publication of KR20230067440A publication Critical patent/KR20230067440A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/40Extracting pixel data from image sensors by controlling scanning circuits, e.g. by modifying the number of pixels sampled or to be sampled
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof
    • H04N23/84Camera processing pipelines; Components thereof for processing colour signals

Abstract

이미지 센서 및 이미지 처리 시스템이 제공된다. 상기 이미지 센서는 로우 이미지 데이터를 생성하는 센싱부, 로우 이미지 데이터에 제1 함수를 적용하여 제1 이미지 데이터를 생성하는 전처리 프로세서, 제1 이미지 데이터를 입력받아 기계 학습 모델을 이용하여 제2 이미지 데이터를 생성하는 이미지 프로세서, 및 제2 이미지 데이터에 제2 함수를 적용하여 제3 이미지 데이터를 생성하는 후처리 프로세서를 포함하고, 제1 함수는 비선형 함수이다.An image sensor and image processing system are provided. The image sensor includes a sensing unit that generates raw image data, a preprocessor that generates first image data by applying a first function to the raw image data, and receives the first image data and uses a machine learning model to generate second image data. An image processor to generate , and a post-processor to generate third image data by applying a second function to the second image data, wherein the first function is a non-linear function.

Description

이미지 센서 및 이미지 처리 시스템{IMAGE SENSOR AND IMAGE PROCESSING SYSTEM}Image sensor and image processing system {IMAGE SENSOR AND IMAGE PROCESSING SYSTEM}

본 발명은 이미지 센서 및 이미지 처리 시스템에 관한 것이다.The present invention relates to an image sensor and an image processing system.

이미지 센서(image sensor)는 피사체를 촬영하여 특정 포맷에 따르는 이미지 데이터를 이미지 신호 프로세서(image signal processor)에 전달할 수 있다. 예를 들어, 이미지 센서는 촬영 결과물을 베이어(bayer) 포맷 이미지 데이터로서 이미지 신호 프로세서에 전달하거나, 테트라(tetra)(또는 쿼드(quad)) 포맷 이미지 데이터로서 이미지 신호 프로세서에 전달할 수 있다. An image sensor may photograph a subject and deliver image data according to a specific format to an image signal processor. For example, the image sensor may transmit a captured result as Bayer format image data to the image signal processor or as tetra (or quad) format image data to the image signal processor.

이미지 신호 프로세서가 베이어 포맷만을 지원하는 경우, 이미치 처리 프로세서가 테트라 포맷의 이미지 데이터를 처리하기 위해서는, 테트라 포맷의 이미지 데이터를 베이어 포맷으로 변환하기 위한 리모자익(remosiac) 연산이 필요하다. 베이어 포맷와 테트라 포맷의 픽셀 배치가 서로 다르기 때문이다. 리모자익 연산은 테트라 포맷의 픽셀 배치를 베이어 포맷의 픽셀 배치로 바꾸기 위해 픽셀들을 다른 위치로 이동하는 작업을 수행하므로, 이로 인해 정보의 손실이 발생할 뿐 아니라 해상도 저하(resolution degradation)이 발생하는 문제점이 있다.When the image signal processor supports only the Bayer format, a remosaic operation for converting the image data in the tetra format to the Bayer format is required in order for the image value processing processor to process image data in the tetra format. This is because the pixel arrangements of the Bayer format and the Tetra format are different. Limosaic operation performs an operation of moving pixels to a different position to change the pixel arrangement of the tetra format to the pixel arrangement of the Bayer format, which causes not only loss of information but also resolution degradation. there is.

본 발명이 해결하고자 하는 기술적 과제는 품질이 개선 또는 향상된 출력 이미지 데이터를 출력하는 이미지 센서를 제공하는 것이다.A technical problem to be solved by the present invention is to provide an image sensor that outputs output image data with improved or improved quality.

본 발명이 해결하고자 하는 기술적 과제는 품질이 개선 또는 향상된 출력 이미지 데이터를 출력하는 이미지 처리 시스템을 제공하는 것이다.A technical problem to be solved by the present invention is to provide an image processing system that outputs output image data with improved or improved quality.

본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The technical problems of the present invention are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art from the following description.

상기 기술적 과제를 달성하기 위한 본 발명의 몇몇 실시예에 따른 이미지 센서는, 로우 이미지 데이터를 생성하는 센싱부, 로우 이미지 데이터에 제1 함수를 적용하여 제1 이미지 데이터를 생성하는 전처리 프로세서, 제1 이미지 데이터를 입력받아 기계 학습 모델을 이용하여 제2 이미지 데이터를 생성하는 이미지 프로세서, 및 제2 이미지 데이터에 제2 함수를 적용하여 제3 이미지 데이터를 생성하는 후처리 프로세서를 포함하고, 제1 함수는 비선형 함수이다.An image sensor according to some embodiments of the present invention for achieving the above technical problem includes a sensing unit generating raw image data, a pre-processor generating first image data by applying a first function to the raw image data, and a first image sensor. An image processor receiving image data and generating second image data using a machine learning model, and a post-processor generating third image data by applying a second function to the second image data, wherein the first function is a nonlinear function.

상기 기술적 과제를 달성하기 위한 본 발명의 몇몇 실시예에 따른 이미지 처리 시스템은, 복수의 픽셀로부터 생성된 로우 이미지 데이터에 제1 함수를 적용하여 제1 이미지 데이터를 생성하는 전처리 프로세서와, 제1 이미지 데이터를 입력받아 기계 학습 모델을 이용하여 제2 이미지 데이터를 생성하는 이미지 프로세서와, 제2 이미지 데이터에 제2 함수를 적용하여 제3 이미지 데이터를 생성하는 후처리 프로세서를 포함하는 이미지 센서, 및 제3 이미지 데이터를 입력 이미지 데이터로 입력받아, 입력 이미지 데이터에 제3 함수를 적용하여 출력 이미지 데이터를 출력하는 이미지 신호 프로세서를 포함하고, 제3 함수는 비선형 함수이다.An image processing system according to some embodiments of the present invention for achieving the above technical problem includes a preprocessor for generating first image data by applying a first function to raw image data generated from a plurality of pixels, and a first image An image sensor including an image processor receiving data and generating second image data using a machine learning model, and a post-processing processor generating third image data by applying a second function to the second image data; and 3 An image signal processor receiving image data as input image data and outputting output image data by applying a third function to the input image data, wherein the third function is a nonlinear function.

상기 기술적 과제를 달성하기 위한 본 발명의 몇몇 실시예에 따른 이미지 처리 시스템은, 복수의 픽셀로부터 생성된 로우 이미지 데이터에 제1 함수를 적용하여 제1 이미지 데이터를 생성하는 전처리 프로세서와, 제1 이미지 데이터를 입력받아 딥 러닝 모델을 이용하여 제2 이미지 데이터를 생성하는 이미지 프로세서와, 제2 이미지 데이터에 제2 함수를 적용하여 제3 이미지 데이터를 생성하는 후처리 프로세서를 포함하는 이미지 센서, 및 제3 이미지 데이터를 입력 이미지 데이터로 입력받아, 입력 이미지 데이터에 제3 함수를 적용하여 출력 이미지 데이터를 출력하는 이미지 신호 프로세서를 포함하고, 제1 함수, 제2 함수 및 제3 함수는 비선형 함수이다.An image processing system according to some embodiments of the present invention for achieving the above technical problem includes a preprocessor for generating first image data by applying a first function to raw image data generated from a plurality of pixels, and a first image An image sensor including an image processor receiving data and generating second image data using a deep learning model, and a post-processing processor generating third image data by applying a second function to the second image data; and and an image signal processor receiving three image data as input image data, applying a third function to the input image data, and outputting output image data, wherein the first function, the second function, and the third function are nonlinear functions.

기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Details of other embodiments are included in the detailed description and drawings.

도 1은 몇몇 실시예에 따른 이미지 처리 시스템을 설명하기 위한 도면이다.
도 2는 몇몇 실시예에 따른 이미지 센서를 설명하기 위한 도면이다.
도 3은 도 1의 제1 함수를 설명하기 위한 도면이다.
도 4는 도 1의 제2 함수를 설명하기 위한 도면이다.
도 5는 도 1의 제3 함수를 설명하기 위한 도면이다.
도 6 내지 도 10은 몇몇 실시예에 따른 이미지 센서의 동작을 설명하기 위한 도면들이다.
도 11은 몇몇 실시예에 따른 이미지 처리 시스템의 동작을 설명하기 위한 도면이다.
도 12는 몇몇 실시예에 따른 이미지 처리 시스템의 동작을 설명하기 위한 도면이다.
도 13은 몇몇 실시예에 따른 이미지 처리 시스템의 동작을 설명하기 위한 도면이다.
도 14는 몇몇 실시예에 따른 이미지 처리 시스템을 설명하기 위한 도면이다.
도 15는 몇몇 실시예에 따른 제1 함수를 설명하기 위한 도면이다.
도 16은 몇몇 실시예에 따른 제1 함수를 설명하기 위한 도면이다.
도 17은 멀티 카메라 모듈을 포함하는 전자 장치의 블록도이다.
도 18은 도 17의 카메라 모듈의 상세 블록도이다.
1 is a diagram for explaining an image processing system according to some embodiments.
2 is a diagram for describing an image sensor according to some embodiments.
FIG. 3 is a diagram for explaining the first function of FIG. 1 .
FIG. 4 is a diagram for explaining the second function of FIG. 1 .
FIG. 5 is a diagram for explaining a third function of FIG. 1 .
6 to 10 are diagrams for describing an operation of an image sensor according to some embodiments.
11 is a diagram for explaining an operation of an image processing system according to some embodiments.
12 is a diagram for describing an operation of an image processing system according to some embodiments.
13 is a diagram for explaining an operation of an image processing system according to some embodiments.
14 is a diagram for describing an image processing system according to some embodiments.
15 is a diagram for explaining a first function according to some embodiments.
16 is a diagram for explaining a first function according to some embodiments.
17 is a block diagram of an electronic device including a multi-camera module.
18 is a detailed block diagram of the camera module of FIG. 17 .

도 1은 몇몇 실시예에 따른 이미지 처리 시스템을 설명하기 위한 도면이다. 1 is a diagram for explaining an image processing system according to some embodiments.

도 1을 참조하면, 몇몇 실시예에 따른 이미지 처리 시스템(1)은 이미지 센서(100) 및 어플리케이션 프로세서(200)를 포함할 수 있다. 이미지 처리 시스템(1)은 휴대용 전자 장치, 예컨대 디지털 카메라, 캠코더, 이동 전화기, 스마트폰(smart phone), 태블릿 PC(tablet personal computer), PDA(personal digital assistant), 모바일 인터넷 장치 (mobile internet device(MID)), 웨어러블 컴퓨터(wearable computer), 사물 인터넷 장치(internet of things(IoT) device), 또는 만물 인터넷(internet of everything(IoE)) 장치로 구현될 수 있다.Referring to FIG. 1 , an image processing system 1 according to some embodiments may include an image sensor 100 and an application processor 200. The image processing system 1 is a portable electronic device such as a digital camera, a camcorder, a mobile phone, a smart phone, a tablet personal computer (PC), a personal digital assistant (PDA), a mobile internet device ( MID)), a wearable computer, an internet of things (IoT) device, or an internet of everything (IoE) device.

이미지 센서(100)는 어플리케이션 프로세서(200)의 제어에 의해 렌즈(103)를 통해 촬영된 물체(101)를 센싱할 수 있다. 이미지 센서(100)는 렌즈(103)를 통하여 입사된 물체(101)의 광학적 신호를 광 감지 소자(또는 광전 변환 소자)를 이용하여 전기적 신호로 변환하고, 전기적 신호에 기초하여 이미지 데이터를 생성하고 이를 출력할 수 있다. The image sensor 100 may sense the object 101 photographed through the lens 103 under the control of the application processor 200 . The image sensor 100 converts an optical signal of an object 101 incident through a lens 103 into an electrical signal using a light sensing element (or a photoelectric conversion element), generates image data based on the electrical signal, and You can print this out.

이미지 센서(100)는 센싱부(105), 전처리 프로세서(192), 이미지 프로세서(194), 후처리 프로세서(196) 및 인터페이스(198)를 포함할 수 있다.The image sensor 100 may include a sensing unit 105 , a pre-processor 192 , an image processor 194 , a post-processor 196 , and an interface 198 .

센싱부(105)는 복수의 픽셀(PX)로부터 로우 이미지 데이터(RIMG)를 생성할 수 있다.The sensing unit 105 may generate raw image data RIMG from the plurality of pixels PX.

전처리 프로세서(192)는 로우 이미지 데이터(RIMG)를 입력받아 제1 이미지 데이터(IMG1)를 출력할 수 있다. 전처리 프로세서(192)는 복수의 픽셀(PX)로부터 로우 이미지 데이터(RIMG)에 제1 함수(fn1)를 적용하여 제1 이미지 데이터(IMG1)를 생성할 수 있다. 몇몇 실시예에서, 제1 함수(fn1)는 비선형 함수(non-linear function)일 수 있다.The pre-processor 192 may receive raw image data RIMG and output first image data IMG1. The preprocessor 192 may generate the first image data IMG1 by applying the first function fn1 to the raw image data RIMG from the plurality of pixels PX. In some embodiments, the first function fn1 may be a non-linear function.

이미지 프로세서(194)는 제1 이미지 데이터(IMG1)를 입력받아 제2 이미지 데이터(IMG2)를 출력할 수 있다. 이미지 프로세서(194)는 제1 이미지 데이터(IMG1)에 대해 다양한 적어도 하나의 연산을 수행하여 제2 이미지 데이터(IMG2)를 출력할 수 있다. The image processor 194 may receive the first image data IMG1 and output second image data IMG2. The image processor 194 may output second image data IMG2 by performing one or more various operations on the first image data IMG1.

몇몇 실시예에서, 이미지 프로세서(194)는 제1 이미지 데이터(IMG1)에 대해 리모자익 동작을 수행하여 제2 이미지 데이터(IMG2)를 출력할 수 있다. 예를 들어, 이미지 프로세서(194)는 테트라(TETRA) 포맷, 노나(NONA) 포맷 또는 헥사데카(HEXADECA) 포맷의 제1 이미지 데이터(IMG1)를 베이어 포맷의 제2 이미지 데이터(IMG2)로 변환할 수 있다. In some embodiments, the image processor 194 may perform a limosaic operation on the first image data IMG1 to output the second image data IMG2. For example, the image processor 194 converts first image data IMG1 in a TETRA format, a NONA format, or a HEXADECA format into second image data IMG2 in a Bayer format. can

테트라 포맷의 이미지 데이터는 테트라 패턴을 갖는 픽셀 어레이(110)에서 출력될 수 있다. 테트라 패턴을 갖는 픽셀 어레이(110)는 2Х2으로 배치된 레드 픽셀들을 포함하는 레드 픽셀 그룹, 2Х2으로 배치된 제1 그린 픽셀들을 포함하는 제1 그린 픽셀 그룹, 2Х2으로 배치된 제2 그린 픽셀들을 포함하는 제2 그린 픽셀 그룹, 및 2Х2으로 배치된 블루 픽셀들을 포함하는 블루 픽셀 그룹이 반복적으로 배치되는 패턴을 가질 수 있다. Image data in a tetra format may be output from the pixel array 110 having a tetra pattern. The pixel array 110 having a tetra pattern includes a red pixel group including red pixels arranged in a 2Х2 pattern, a first green pixel group including first green pixels arranged in a 2Х2 pattern, and second green pixels arranged in a 2Х2 pattern. may have a pattern in which a second green pixel group having a second green pixel group and blue pixel groups including blue pixels arranged in a 2Х2 pattern are repeatedly arranged.

노나 포맷의 이미지 데이터는 노나 패턴을 갖는 픽셀 어레이(110)에서 출력될 수 있다. 노나 패턴을 갖는 픽셀 어레이(110)는 3Х3으로 배치된 레드 픽셀들을 포함하는 레드 픽셀 그룹, 3Х3으로 배치된 제1 그린 픽셀들을 포함하는 제1 그린 픽셀 그룹, 3Х3으로 배치된 제2 그린 픽셀들을 포함하는 제2 그린 픽셀 그룹, 및 3Х3으로 배치된 블루 픽셀들을 포함하는 블루 픽셀 그룹이 반복적으로 배치되는 패턴을 가질 수 있다.Image data in a nona format may be output from the pixel array 110 having a nona pattern. The pixel array 110 having a nona pattern includes a red pixel group including red pixels arranged in a 3Х3 pattern, a first green pixel group including first green pixels arranged in a 3Х3 pattern, and second green pixels arranged in a 3Х3 pattern. may have a pattern in which a second green pixel group having a second green pixel group and blue pixel groups including blue pixels arranged in a 3Х3 pattern are repeatedly arranged.

헥사데카 포맷의 이미지 데이터는 헥사테카 패턴을 갖는 픽셀 어레이(110)에서 출력될 수 있다. 헥사데카 패턴을 갖는 픽셀 어레이(110)는 4Х4으로 배치된 레드 픽셀들을 포함하는 레드 픽셀 그룹, 4Х4으로 배치된 제1 그린 픽셀들을 포함하는 제1 그린 픽셀 그룹, 4Х4으로 배치된 제2 그린 픽셀들을 포함하는 제2 그린 픽셀 그룹, 및 4Х4으로 배치된 블루 픽셀들을 포함하는 블루 픽셀 그룹이 반복적으로 배치되는 패턴을 가질 수 있다.Image data in a hexadecimal format may be output from the pixel array 110 having a hexadecimal pattern. The pixel array 110 having a hexadecimal pattern includes a red pixel group including red pixels arranged in a 4Х4 pattern, a first green pixel group including first green pixels arranged in a 4Х4 pattern, and second green pixels arranged in a 4Х4 pattern. The second green pixel group including the second green pixel group and the blue pixel group including the blue pixels arranged in 4Х4 may have a pattern in which they are repeatedly arranged.

또는 이미지 프로세서(194)는 NХM(N과 M은 자연수)으로 배치된 레드 픽셀들을 포함하는 레드 픽셀 그룹, NХM으로 배치된 그린 픽셀들을 포함하는 제1 그린 픽셀 그룹, NХM으로 배치된 그린 픽셀들을 포함하는 제2 그린 픽셀 그룹, NХM으로 배치된 블루 픽셀들을 포함하는 블루 픽셀 그룹이 반복적으로 배치되는 패턴을 갖는 픽셀 어레이(110)에서 출력된 이미지 데이터를 베이어 포맷의 이미지 데이터로 변환할 수 있다.Alternatively, the image processor 194 may include a red pixel group including red pixels arranged in NХM (where N and M are natural numbers), a first green pixel group including green pixels arranged in NХM, and green pixels arranged in NХM. Image data output from the pixel array 110 having a pattern in which blue pixel groups including blue pixels arranged in the second green pixel group, NХM, are repeatedly arranged may be converted into Bayer format image data.

몇몇 실시예에서, 이미지 프로세서(194)는 제1 이미지 데이터(IMG1)를 입력받아 기계 학습(machine learning)을 이용하여 제2 이미지 데이터(IMG2)를 생성할 수 있다. 이미지 프로세서(194)는 기계 학습을 이용하여 리모자익 동작을 수행할 수 있다. 예를 들어, 이미지 프로세서(194)는 제1 이미지 데이터(IMG1)를 입력받아 뉴럴 네트워크(neural network)를 이용한 딥 러닝을 이용하여 제2 이미지 데이터(IMG2)를 생성할 수 있다. 상기 뉴럴 네트워크는 CNN(Convolution Neural Network), R-CNN(Region with Convolution Neural Network), RPN(Region Proposal Network), RNN(Recurrent Neural Network), S-DNN(Stacking-based deep Neural Network), S-SDNN(State-Space Dynamic Neural Network), Deconvolution Network, DBN(Deep Belief Network), RBM(Restricted Boltzman Machine), Fully Convolutional Network, LSTM(Long Short-Term Memory) Network, Classification Network, Plain Residual Network, Dense Network, Hierarchical Pyramid Network, Fully Convolutional Network 등 다양한 종류의 뉴럴 네트워크 모델들 중 적어도 하나를 포함할 수 있다.In some embodiments, the image processor 194 may receive the first image data IMG1 and generate second image data IMG2 using machine learning. The image processor 194 may perform a limozaic operation using machine learning. For example, the image processor 194 may receive the first image data IMG1 and generate second image data IMG2 using deep learning using a neural network. The neural networks include a Convolution Neural Network (CNN), a Region with Convolution Neural Network (R-CNN), a Region Proposal Network (RPN), a Recurrent Neural Network (RNN), a Stacking-based deep Neural Network (S-DNN), and a S-DNN (Stacking-based deep Neural Network). State-Space Dynamic Neural Network (SDNN), Deconvolution Network, Deep Belief Network (DBN), Restricted Boltzman Machine (RBM), Fully Convolutional Network, Long Short-Term Memory (LSTM) Network, Classification Network, Plain Residual Network, Dense Network , Hierarchical Pyramid Network, and Fully Convolutional Network. At least one of various types of neural network models may be included.

후처리 프로세서(196)는 제2 이미지 데이터(IMG2)를 입력받아 제3 이미지 데이터(IMG3)를 출력할 수 있다. 후처리 프로세서(196)는 제2 이미지 데이터(IMG2)에 제2 함수(fn2)를 적용하여 제3 이미지 데이터(IMG3)를 출력할 수 있다. 몇몇 실시예에서, 제2 함수(fn2)는 비선형 함수일 수 있다. 제3 이미지 데이터(IMG3)는 인터페이스(198)를 통해 어플리케이션 프로세서(200)으로 입력될 수 있다. The post-processing processor 196 may receive the second image data IMG2 and output third image data IMG3. The post-processor 196 may output the third image data IMG3 by applying the second function fn2 to the second image data IMG2. In some embodiments, the second function fn2 may be a non-linear function. The third image data IMG3 may be input to the application processor 200 through the interface 198 .

예를 들어, 전처리 프로세서(192), 후처리 프로세서(196) 및 이미지 프로세서(194) 중 적어도 하나는 하드웨어로 구현될 수 있다. 예를 들어 전처리 프로세서(192), 후처리 프로세서(196) 또는 이미지 프로세서(194) 중 적어도 하나는 전용 하드웨어로 구현될 수 있고, 또는 기존의 범용 프로세서(예를 들어 CPU, GPU 등)의 일부로 구현될 수 있다. 예를 들어, 전처리 프로세서(192) 및 후처리 프로세서(196)는 각각 CPU(Central Processing Unit), GPU(Graphic Processing Unit) 등으로 구현될 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다. 이미지 프로세서(194)는 예를 들어, NPU(Neural Processing Unit), GPU(Graphic Processing Unit) 등으로 구현될 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다. For example, at least one of the pre-processing processor 192, the post-processing processor 196, and the image processor 194 may be implemented as hardware. For example, at least one of the pre-processing processor 192, the post-processing processor 196, or the image processor 194 may be implemented as dedicated hardware, or implemented as part of an existing general-purpose processor (eg, CPU, GPU, etc.) It can be. For example, the pre-processor 192 and the post-processor 196 may be implemented as a Central Processing Unit (CPU) or a Graphic Processing Unit (GPU), respectively, but the scope of the present invention is not limited thereto. The image processor 194 may be implemented as, for example, a Neural Processing Unit (NPU) or a Graphic Processing Unit (GPU), but the scope of the present invention is not limited thereto.

예를 들어, 전처리 프로세서(192), 후처리 프로세서(196) 및 이미지 프로세서(194) 중 적어도 하나는 소프트웨어로 구현될 수 있다. 이 경우, 소프트웨어는 컴퓨터로 읽을 수 있는 판독 가능한 비일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 또한, 이 경우, 소프트웨어는 OS(Operating System)에 의해 제공되거나, 소정의 어플리케이션에 의해 제공될 수 있다. 또는, 소프트웨어의 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 어플리케이션에 의해 제공될 수 있다.For example, at least one of the pre-processing processor 192, the post-processing processor 196, and the image processor 194 may be implemented as software. In this case, the software may be stored in non-transitory computer readable media that can be read by a computer. Also, in this case, the software may be provided by an OS (Operating System) or a predetermined application. Alternatively, part of the software may be provided by an operating system (OS), and the other part may be provided by a predetermined application.

전처리 프로세서(192)와 후처리 프로세서(196)는 별도의 구성으로 도시되어 있으나, 이는 예시적인 실시예에 불과하며, 하나의 구성으로 구현될 수 있다.Although the pre-processing processor 192 and the post-processing processor 196 are shown as separate components, this is only an exemplary embodiment and may be implemented as one component.

인터페이스(198)는 이미지 센서(100)와 어플리케이션 프로세서(200) 사이의 데이터 이동을 지원할 수 있다. 인터페이스(198)는 MIPI(Mobile industry processor interface), eDP(embedded display port) 인터페이스, UART(Universal Asynchronous Receiver Transmitter) 인터페이스, I2C(inter integrated circuit) 인터페이스, SPI(serial peripheral interface) 등과 같은 다양한 인터페이스 방식들 중 하나에 따라 어플리케이션 프로세서(200)와 통신할 수 있다.The interface 198 may support data movement between the image sensor 100 and the application processor 200 . The interface 198 includes various interface methods such as a mobile industry processor interface (MIPI), an embedded display port (eDP) interface, a universal asynchronous receiver transmitter (UART) interface, an inter integrated circuit (I2C) interface, and a serial peripheral interface (SPI). According to one of them, communication with the application processor 200 may be performed.

어플리케이션 프로세서(200)는 카메라 인터페이스(210), 이미지 신호 프로세서(220), 버퍼(230), 프로세서(240)를 포함할 수 있다.The application processor 200 may include a camera interface 210 , an image signal processor 220 , a buffer 230 , and a processor 240 .

어플리케이션 프로세서(200)는 카메라 인터페이스(210)를 통해 제3 이미지 데이터(IMG3)를 입력 이미지 데이터(IIMG)로 입력받을 수 있다. 카메라 인터페이스(210)는 이미지 센서(100)와 어플리케이션 프로세서(200) 사이의 데이터 이동을 지원할 수 있다. The application processor 200 may receive the third image data IMG3 as input image data IIMG through the camera interface 210 . The camera interface 210 may support data movement between the image sensor 100 and the application processor 200 .

이미지 신호 프로세서(220)는 이미지 센서(100)로부터 제공받은 입력 이미지 데이터(IIMG)를 처리하여 출력 이미지 데이터(OIMG)를 출력할 수 있다. 이미지 신호 프로세서(220)는 입력 이미지 데이터(IIMG)에 대해 다양한 적어도 하나의 연산을 수행하여 출력 이미지 데이터(OIMG)를 출력할 수 있다. 예를 들어, 적어도 하나의 연산은 크로스 토크 보상(cross-talk compensation), 불량 픽셀 수정(bad pixel correction), 다중 노출 픽셀(multiple exposure pixel)의 병합(merging) 또는 재구성(reconstruction), 디모자익(demosaicing), 노이즈 제거(noise reduction), 이미지 샤프닝(image sharpening), 이미지 안정화(image stabilization), 컬러 공간 변환(color space conversion), 압축(compression), 등을 포함할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.The image signal processor 220 may process input image data IIMG provided from the image sensor 100 and output output image data OIMG. The image signal processor 220 may perform at least one of various operations on the input image data IIMG to output the output image data OIMG. For example, at least one operation may be cross-talk compensation, bad pixel correction, merging or reconstruction of multiple exposure pixels, demosaicing ( demosaicing, noise reduction, image sharpening, image stabilization, color space conversion, compression, etc., but the scope of the present invention is limited. It is not limited to this.

몇몇 실시예에서, 이미지 신호 프로세서(220)는 입력 이미지 데이터(IIMG)에 제3 함수(fn3)를 적용하여 출력 이미지 데이터(OIMG)를 생성할 수 있다. 제3 함수(fn3)는 비선형 함수일 수 있다. 예를 들어 이미지 신호 프로세서(220)는 제3 함수(fn3)를 적용하여 감마 보정(gamma correction)을 수행할 수 있다. In some embodiments, the image signal processor 220 may generate output image data OIMG by applying the third function fn3 to the input image data IIMG. The third function fn3 may be a nonlinear function. For example, the image signal processor 220 may perform gamma correction by applying the third function fn3.

예를 들어, 이미지 신호 프로세서(220)는 적어도 하나의 하드웨어로 구현될 수 있다. 예를 들어 이미지 신호 프로세서(220)는 적어도 하나의 전용 하드웨어로 구현될 수 있고, 또는 GPU(Graphic Processing Unit), DSP(Digital Signal Processor), ISP(Image Signal Processor) 등 이미지 처리를 수행할 수 있는 다양한 종류의 프로세서 중의 일부로 구현될 수 있다. 예를 들어, 이미지 신호 프로세서(220)는 예를 들어 소프트웨어로 구현될 수 있다. For example, the image signal processor 220 may be implemented with at least one piece of hardware. For example, the image signal processor 220 may be implemented with at least one dedicated hardware, or may perform image processing such as a graphic processing unit (GPU), digital signal processor (DSP), or image signal processor (ISP). It can be implemented as part of a variety of processors. For example, the image signal processor 220 may be implemented in software, for example.

버퍼(230)는 데이터를 임시로 저장할 수 있는 공간을 제공할 수 있다. 예를 들어, 이미지 신호 프로세서(220)는 필요에 따라 이미지 데이터를 버퍼(230)에 임시로 저장해 놓을 수 있다. 또한 버퍼(230)에는 프로세서(240)가 실행하는 프로그램이 적재될 수도 있고, 프로그램이 사용하는 데이터가 저장될 수도 있다. The buffer 230 may provide a space for temporarily storing data. For example, the image signal processor 220 may temporarily store image data in the buffer 230 as needed. In addition, a program executed by the processor 240 may be loaded in the buffer 230 or data used by the program may be stored.

버퍼(230)는 예를 들어 SRAM(Static Random Access Memory), DRAM(Dynamic Random Access Memory) 등으로 구현될 수도 있으나, 본 발명의 범위가 이에 한정되는 것은 아니고, 필요에 따라 비휘발성 메모리로 구현될 수도 있다.The buffer 230 may be implemented as, for example, SRAM (Static Random Access Memory) or DRAM (Dynamic Random Access Memory), but the scope of the present invention is not limited thereto, and may be implemented as a non-volatile memory if necessary. may be

프로세서(240)는 어플리케이션 프로세서(200)를 전반적으로 제어할 수 있다. 구체적으로, 프로세서(240)는 이미지 신호 프로세서(220)뿐 아니라 어플리케이션 프로세서(200)의 여러 요소들을 동작시키기 위한 인스트럭션(instruction)을 포함하는 프로그램을 실행할 수 있다. The processor 240 may control the application processor 200 as a whole. Specifically, the processor 240 may execute a program including instructions for operating various elements of the application processor 200 as well as the image signal processor 220 .

프로세서(240)는 예를 들어 CPU(Central Processing Unit), GPU(Graphic Processing Unit) 등으로 구현될 수도 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.The processor 240 may be implemented as, for example, a Central Processing Unit (CPU) or a Graphic Processing Unit (GPU), but the scope of the present invention is not limited thereto.

내부 버스(250)는 어플리케이션 프로세서(200) 내의 요소들, 즉 카메라 인터페이스(210), 이미지 신호 프로세서(220), 버퍼(230), 프로세서(240), 등이 데이터를 서로 주고 받을 수 있도록 하는 통로 역할을 할 수 있다. 내부 버스(290)는 예를 들어 AMBA(Advanced Microcontroller Bus Architecture)를 따르는, 예컨대 AXI(Advanced eXtensible Interface)로 구현될 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.The internal bus 250 is a passage through which elements within the application processor 200, that is, the camera interface 210, the image signal processor 220, the buffer 230, the processor 240, and the like, exchange data with each other. can play a role The internal bus 290 may be implemented as, for example, Advanced Microcontroller Bus Architecture (AMBA), for example, Advanced eXtensible Interface (AXI), but the scope of the present invention is not limited thereto.

도 2는 몇몇 실시예에 따른 이미지 센서를 설명하기 위한 도면이다.2 is a diagram for describing an image sensor according to some embodiments.

도 2를 참조하면, 이미지 센서(100)는 픽셀 어레이(pixel array; 110), 로우 드라이버(row driver; 120), 상관 이중 샘플링(Correlated Double Sampling(CDS)) 블록(130), 아날로그 디지털 컨버터(Analog Digital Converter(ADC)) 블록(140), 램프 신호 생성기(ramp generator; 150), 타이밍 생성기(timing generator; 160), 제어 레지스터 블록(control register block; 170), 버퍼(buffer; 180), 전처리 프로세서(192), 이미지 프로세서(194), 후처리 프로세서(196) 및 인터페이스(198)를 포함할 수 있다. 도 1의 센싱부(105)는 도 2의 픽셀 어레이(110), 로우 드라이버(120), 상관 이중 샘플링 블록(130), 아날로그 디지털 컨버터 블록(140), 램프 신호 생성기(150), 타이밍 생성기(160), 제어 레지스터 블록(170) 및 버퍼(180)를 포함할 수 있다.Referring to FIG. 2 , the image sensor 100 includes a pixel array 110, a row driver 120, a Correlated Double Sampling (CDS) block 130, and an analog-to-digital converter ( Analog Digital Converter (ADC) block 140, ramp signal generator 150, timing generator 160, control register block 170, buffer 180, preprocessing It may include a processor 192 , an image processor 194 , a post-processing processor 196 and an interface 198 . The sensing unit 105 of FIG. 1 includes the pixel array 110 of FIG. 2, the row driver 120, the correlated double sampling block 130, the analog-to-digital converter block 140, the ramp signal generator 150, and the timing generator ( 160), a control register block 170 and a buffer 180.

픽셀 어레이(112)는 매트릭스 형태로 배열된 복수의 픽셀들을 포함할 수 있다. 복수의 픽셀들 각각은 광 감지 소자를 이용하여 빛을 감지하고, 감지된 빛을 전기적 신호인 픽셀 신호로 변환할 수 있다. 예를 들어, 광 감지 소자는 포토 다이오드(photo diode), 포토 트랜지스터(photo transistor), 포토 게이트(photo gate), 핀드 포토 다이오드(pinned photo diode, PPD), 또는 이들의 조합일 수 있다. 복수의 광 감지 소자 각각은 포토 다이오드, 전송 트랜지스터, 리셋 트랜지스터, 증폭 트랜지스터 및 선택 트랜지스터를 포함하는 4-트랜지스터 구조일 수 있다. 일 실시예에 따라, 복수의 광 감지 소자 각각은 1-트랜지스터 구조, 3-트랜지스터 구조 또는 5-트랜지스터 구조이거나, 복수의 픽셀들이 일부 트랜지스터를 공유하는 구조일 수 있다.The pixel array 112 may include a plurality of pixels arranged in a matrix form. Each of the plurality of pixels may sense light using a light sensing element and convert the detected light into a pixel signal that is an electrical signal. For example, the light sensing device may be a photo diode, a photo transistor, a photo gate, a pinned photo diode (PPD), or a combination thereof. Each of the plurality of light sensing elements may have a 4-transistor structure including a photodiode, a transfer transistor, a reset transistor, an amplification transistor, and a selection transistor. According to an embodiment, each of the plurality of photo-sensing elements may have a 1-transistor structure, a 3-transistor structure, or a 5-transistor structure, or a structure in which a plurality of pixels share some transistors.

픽셀 어레이(110)로부터 상관 이중 샘플링 블록(130) 및 아날로그 디지털 컨버터 블록(140), 버퍼(180)를 통해 로우 이미지 데이터(RIMG)가 출력될 수 있다.Raw image data RIMG may be output from the pixel array 110 through the correlated double sampling block 130 , the analog-to-digital converter block 140 , and the buffer 180 .

로우 드라이버(120)는 타이밍 생성기(160)의 제어에 따라 복수의 픽셀들 각각을 활성화할 수 있다. 예컨대, 로우 드라이버(120)는 픽셀 어레이(112)에 구현된 픽셀들을 행 단위(in units of rows)로 구동할 수 있다. 예컨대, 로우 드라이버(120)는 복수의 행들 각각에 포함된 복수의 픽셀들의 작동을 제어할 수 있는 제어 신호들을 생성할 수 있다.The row driver 120 may activate each of the plurality of pixels according to the control of the timing generator 160 . For example, the row driver 120 may drive pixels implemented in the pixel array 112 in units of rows. For example, the row driver 120 may generate control signals capable of controlling operations of a plurality of pixels included in each of a plurality of rows.

상기 제어 신호들에 따라, 복수의 픽셀들 각각으로부터 출력된 픽셀 신호는 이중 상관 샘플링 블록(130)으로 전송된다.According to the control signals, a pixel signal output from each of a plurality of pixels is transmitted to the double correlation sampling block 130 .

상관 이중 샘플링 블록(130)은 복수의 CDS 회로들을 포함할 수 있다. 복수의 CDS 회로들 각각은, 타이밍 생성기(160)로부터 출력된 적어도 하나의 스위치 신호에 응답하여, 픽셀 어레이(112)에 구현된 복수의 컬럼 라인들 각각으로부터 출력된 픽셀값들에 대해 상관 이중 샘플링을 수행하고, 상관 이중 샘플된 픽셀값과 램프 신호 생성기(150)로부터 출력된 램프 신호를 서로 비교하여 복수의 비교 신호들을 출력할 수 있다.The correlated double sampling block 130 may include a plurality of CDS circuits. Each of the plurality of CDS circuits, in response to at least one switch signal output from the timing generator 160, correlated double sampling with respect to pixel values output from each of a plurality of column lines implemented in the pixel array 112. , and a plurality of comparison signals may be output by comparing the correlated double-sampled pixel value and the ramp signal output from the ramp signal generator 150 with each other.

아날로그 디지털 컨버터 블록(140)은 상관 이중 샘플링 블록(130)에서 출력된 복수의 비교 신호들 각각을 디지털 신호로 변환하고 복수의 디지털 신호들을 버퍼(180)로 출력할 수 있다.The analog-to-digital converter block 140 may convert each of the plurality of comparison signals output from the correlated double sampling block 130 into a digital signal and output the plurality of digital signals to the buffer 180 .

타이밍 생성기(160)는 이미지 센서(100)의 여러 구성 요소들의 동작 타이밍의 기준이 되는 신호를 생성할 수 있다. 타이밍 생성기(160)에서 생성된 동작 타이밍 기준 신호는 로우 드라이버(120), 상관 이중 샘플링 블록(130), 아날로그 디지털 컨버터 블록(140), 및 램프 신호 생성기(150)에 전달될 수 있다.The timing generator 160 may generate a signal serving as a reference for operating timings of various components of the image sensor 100 . The operation timing reference signal generated by the timing generator 160 may be transmitted to the row driver 120 , the correlated double sampling block 130 , the analog-to-digital converter block 140 , and the ramp signal generator 150 .

제어 레지스터 블록(170)은 이미지 센서(100)의 동작을 전체적으로 제어할 수 있다. 제어 레지스터 블록(170)은 램프 신호 생성기(150), 타이밍 생성기(160), 및 버퍼(180)의 동작을 제어할 수 있다.The control register block 170 may control the overall operation of the image sensor 100 . The control register block 170 may control operations of the ramp signal generator 150 , the timing generator 160 , and the buffer 180 .

버퍼(180)는 아날로그 디지털 컨버터 블록(140)으로부터 출력된 복수의 디지털 신호들에 대응되는 로우 이미지 데이터(RIMG)를 출력할 수 있다.The buffer 180 may output raw image data RIMG corresponding to the plurality of digital signals output from the analog-to-digital converter block 140 .

도 3은 도 1의 제1 함수를 설명하기 위한 도면이다. 도 4는 도 1의 제2 함수를 설명하기 위한 도면이다. 도 5는 도 1의 제3 함수를 설명하기 위한 도면이다.FIG. 3 is a diagram for explaining the first function of FIG. 1 . FIG. 4 is a diagram for explaining the second function of FIG. 1 . FIG. 5 is a diagram for explaining a third function of FIG. 1 .

도 1 및 도 3을 참조하면, 제1 함수(fn1)는 비선형 함수일 수 있다. 제1 함수(fn1)는 로우 이미지 데이터(RIMG)와 제1 이미지 데이터(IMG1)의 관계일 수 있다. X축은 로우 이미지 데이터(RIMG)의 휘도를 나타낼 수 있고, Y축은 제1 이미지 데이터(IMG1)의 휘도를 나타낼 수 있다. 로우 이미지 데이터(RIMG)의 저휘도 성분은 팽창될 수 있고, 로우 이미지 데이터(RIMG)의 고휘도 성분은 압축될 수 있다.Referring to FIGS. 1 and 3 , the first function fn1 may be a nonlinear function. The first function fn1 may be a relationship between the raw image data RIMG and the first image data IMG1. The X-axis may represent the luminance of the raw image data RIMG, and the Y-axis may represent the luminance of the first image data IMG1. A low luminance component of the raw image data RIMG may be expanded, and a high luminance component of the raw image data RIMG may be compressed.

제1 함수(fn1)는 제3 함수(fn3)와 동일할 수 있다. The first function fn1 may be the same as the third function fn3.

도 1 및 도 4를 참조하면, 제2 함수(fn2)는 비선형 함수일 수 있다. 제2 함수(fn2)는 제2 이미지 데이터(IIMG2)와 제3 이미지 데이터(IMG3)의 관계일 수 있다. X축은 제2 이미지 데이터(IIMG2)의 휘도를 나타낼 수 있고, Y축은 제3 이미지 데이터(IMG3)의 휘도를 나타낼 수 있다. 제2 이미지 데이터(IIMG2)의 저휘도 성분은 팽창될 수 있고, 제2 이미지 데이터(IIMG2)의 고휘도 성분은 압축될 수 있다.Referring to FIGS. 1 and 4 , the second function fn2 may be a nonlinear function. The second function fn2 may be a relationship between the second image data IIMG2 and the third image data IMG3. The X-axis may represent the luminance of the second image data IIMG2, and the Y-axis may represent the luminance of the third image data IMG3. A low luminance component of the second image data IIMG2 may be expanded, and a high luminance component of the second image data IIMG2 may be compressed.

제2 함수(fn2)는 제1 함수(fn1)와 다를 수 있다. 제2 함수(fn2)는 제1 함수(fn1)의 역함수(inverse function)일 수 있다. The second function fn2 may be different from the first function fn1. The second function fn2 may be an inverse function of the first function fn1.

도 1 및 도 5를 참조하면, 제3 함수(fn3)는 비선형 함수일 수 있다. 제3 함수(fn3)는 입력 이미지 데이터(IIMG)와 출력 이미지 데이터(OIMG)의 관계일 수 있다. X축은 입력 이미지 데이터(IIMG)의 휘도를 나타낼 수 있고, Y축은 출력 이미지 데이터(OIMG)의 휘도를 나타낼 수 있다. 제3 함수(fn3)를 이용하여 감마 보정이 수행될 수 있다. 입력 이미지 데이터(IIMG)의 저휘도 성분은 팽창될 수 있고, 입력 이미지 데이터(IIMG)의 고휘도 성분은 압축될 수 있다. 이에 따라 입력 이미지 데이터(IIMG)의 저휘도 성분의 노이즈 성분 또한 팽창될 수 있다.Referring to FIGS. 1 and 5 , the third function fn3 may be a nonlinear function. The third function fn3 may be a relationship between the input image data IIMG and the output image data OIMG. The X-axis may represent the luminance of the input image data IIMG, and the Y-axis may represent the luminance of the output image data OIMG. Gamma correction may be performed using the third function fn3. A low luminance component of the input image data IIMG may be expanded, and a high luminance component of the input image data IIMG may be compressed. Accordingly, a noise component of a low luminance component of the input image data IIMG may also be expanded.

도 6 내지 도 10은 몇몇 실시예에 따른 이미지 센서의 동작을 설명하기 위한 도면들이다. 6 to 10 are diagrams for describing an operation of an image sensor according to some embodiments.

도 6을 참조하면, 도 1에서 전처리 프로세서(192) 및 후처리 프로세서(196)가 없다고 가정한다. Referring to FIG. 6 , it is assumed that there is no pre-processor 192 and post-processor 196 in FIG. 1 .

이미지 프로세서(194)는 센싱부(105)로부터 생성된 로우 이미지 데이터(RIMG)를 입력받아 기계 학습을 이용하여 샘플 입력 이미지(SIIMG)를 출력할 수 있다. 이미지 신호 프로세서(220)는 샘플 입력 이미지(SIIMG)에 제3 함수(fn3)를 적용하여 샘플 출력 이미지 데이터(SOIMG)를 출력할 수 있다.The image processor 194 may receive raw image data RIMG generated by the sensing unit 105 and output a sample input image SIIMG using machine learning. The image signal processor 220 may output the sample output image data SOIMG by applying the third function fn3 to the sample input image SIIMG.

이미지 신호 프로세서(220)는 이미지 프로세서(194)를 거치지 않은 제1 샘플 이미지 데이터(SIMG1)에 제3 함수(fn3)를 적용하여 제2 샘플 이미지(SIMG2)를 출력할 수 있다. 즉 제1 샘플 이미지 데이터(SIMG1)는 기계 학습이 수행되지 않은 이미지 데이터이다.The image signal processor 220 may output the second sample image SIMG2 by applying the third function fn3 to the first sample image data SIMG1 that has not passed through the image processor 194 . That is, the first sample image data SIMG1 is image data on which machine learning is not performed.

학습된 딥 러닝 모델은 딥 러닝 모델에 입력되는 이미지 데이터의 휘도 전체 범위(예를 들어 0레벨에서 255레벨)에 대해 동일 또는 비슷한 오차를 갖는 출력 이미지 데이터를 출력한다. 도 7을 참조하면, 이미지 프로세서(194)가 학습된 딥 러닝 모델을 이용하여 출력한 샘플 입력 이미지 데이터(SIIMG)는 어두운 영역(R1)과 밝은 영역(R2)에서 비슷한 오차를 갖는다.The trained deep learning model outputs output image data having the same or similar error for the entire luminance range (eg, 0 level to 255 level) of image data input to the deep learning model. Referring to FIG. 7 , sample input image data SIIMG output by using the trained deep learning model by the image processor 194 has similar errors in the dark region R1 and the bright region R2.

도 8을 참조하면, X축은 제1 샘플 이미지 데이터(SIMG1)의 휘도를 나타낼 수 있고, Y축은 제1 샘플 이미지 데이터(SIMG1)의 휘도와 샘플 입력 이미지 데이터(SIIMG)의 휘도의 차이를 나타낼 수 있다. 제1 샘플 이미지 데이터(SIMG1)의 휘도와 샘플 입력 이미지 데이터(SIIMG)의 휘도의 차이는, 제1 샘플 이미지 데이터(SIMG1)의 휘도에 따라 동일 또는 유사할 수 있다.Referring to FIG. 8 , the X axis may represent the luminance of the first sample image data SIMG1, and the Y axis may represent the difference between the luminance of the first sample image data SIMG1 and the luminance of the sample input image data SIIMG. there is. A difference between the luminance of the first sample image data SIMG1 and the luminance of the sample input image data SIIMG may be the same or similar according to the luminance of the first sample image data SIMG1.

도 9를 참조하면, 이미지 신호 프로세서(220)가 샘플 입력 이미지 데이터(SIIMG)에 제3 함수(fn3)를 적용하여 생성한 샘플 출력 이미지 데이터(SOIMG)는 어두운 영역(R1)에서 상대적으로 큰 오차를 갖게 되고 밝은 영역(R2)에서 상대적으로 작은 오차를 갖게 된다. 도 5를 참조하면, 샘플 입력 이미지 데이터(SIIMG)의 고휘도 성분은 압축되는 반면, 샘플 입력 이미지 데이터(SIIMG)의 저휘도 성분은 팽창되고 이에 따라 저휘도 성분의 노이즈 성분 또한 팽창되기 때문이다.Referring to FIG. 9 , the sample output image data SOIMG generated by applying the third function fn3 to the sample input image data SIIMG by the image signal processor 220 has a relatively large error in the dark region R1. and a relatively small error in the bright region R2. Referring to FIG. 5 , this is because the high luminance component of the sample input image data SIIMG is compressed, while the low luminance component of the sample input image data SIIMG is expanded, and noise components of the low luminance component are also expanded accordingly.

도 10을 참조하면, X축은 제1 샘플 이미지 데이터(SIMG1)의 휘도를 나타낼 수 있고, Y축은 제2 샘플 이미지 데이터(SIMG2)의 휘도와 샘플 출력 이미지 데이터(SOIMG)의 휘도의 차이를 나타낼 수 있다. 제2 샘플 이미지 데이터(SIMG2)의 휘도와 샘플 출력 이미지 데이터(SOIMG)의 휘도의 차이는, 제1 샘플 이미지 데이터(SIMG1)의 어두운 영역(저휘도 영역, R1)으로 갈수록 증가하고, 제1 샘플 이미지 데이터(SIMG1)의 밝은 영역(고휘도 영역, R2)으로 갈수록 감소할 수 있다. Referring to FIG. 10 , the X axis may represent the luminance of the first sample image data SIMG1, and the Y axis may represent the difference between the luminance of the second sample image data SIMG2 and the luminance of the sample output image data SOIMG. there is. The difference between the luminance of the second sample image data SIMG2 and the luminance of the sample output image data SOIMG increases toward the dark region (low luminance region R1) of the first sample image data SIMG1, and It may decrease toward a bright area (high luminance area, R2) of the image data SIMG1.

하지만 도 1을 참조하면 몇몇 실시예에 따른 이미지 센서(100)는 이미지 프로세서(194) 전단에 제1 함수를 적용하는 전처리 프로세서(192)와 이미지 프로세서(194) 후단에 제2 함수를 적용하는 후처리 프로세서(196)를 포함할 수 있다. However, referring to FIG. 1 , the image sensor 100 according to some embodiments includes a pre-processor 192 that applies a first function to the front of the image processor 194 and a second function to the rear of the image processor 194. A processing processor 196 may be included.

이미지 프로세서(194)는 제1 함수(fn1)가 적용된 제1 이미지 데이터(IMG1)를 딥 러닝 모델을 이용하여 휘도 전체 범위에 대해 동일 또는 비슷한 오차를 갖는 제2 이미지 데이터(IMG2)를 출력할 수 있다. 후처리 프로세서(196)는 제2 이미지 데이터(IMG2)에 대해 제2 함수(fn2)를 적용하여 제3 이미지 데이터(IMG3)를 생성할 수 있다. 제2 함수(fn2)에 따라, 제3 이미지 데이터(IMG3)의 저휘도 영역으로 갈수록 오차가 감소할 수 있고 제3 이미지 데이터(IMG3)의 고휘도 영역으로 갈수록 오차가 증가할 수 있다. 이미지 신호 프로세서(220)는 제3 이미지 데이터(IMG3)에 대해 제3 함수(fn3)를 적용하여 출력 이미지 데이터(OIMG)를 생성할 수 있다. 제3 함수(fn3)에 따라, 출력 이미지 데이터(OIMG)의 저휘도 영역으로 갈수록 오차가 증가할 수 있고, 출력 이미지 데이터(OIMG)의 고휘도 영역으로 갈수록 오차가 감소할 수 있다. 따라서 출력 이미지 데이터(OIMG)의 휘도에 따라 오차는 균일 또는 유사할 수 있다. 이 때 제1 함수(fn1)와 제2 함수(fn2)는 역함수 관계이기 때문에, 전처리 프로세서(192)와 후처리 프로세서(196)에 의한 이미지 데이터의 변경이 없다.The image processor 194 may output second image data IMG2 having the same or similar error over the entire luminance range by using a deep learning model for the first image data IMG1 to which the first function fn1 is applied. there is. The post-processor 196 may generate third image data IMG3 by applying the second function fn2 to the second image data IMG2. According to the second function fn2, the error may decrease toward a low luminance region of the third image data IMG3 and may increase toward a high luminance region of the third image data IMG3. The image signal processor 220 may generate output image data OIMG by applying the third function fn3 to the third image data IMG3. According to the third function fn3, the error may increase toward a low luminance region of the output image data OIMG, and may decrease toward a high luminance region of the output image data OIMG. Accordingly, the error may be uniform or similar according to the luminance of the output image data OIMG. At this time, since the first function fn1 and the second function fn2 have an inverse function relationship, there is no change in image data by the pre-processor 192 and the post-processor 196.

전처리 프로세서(192)와 후처리 프로세서(196)의 기능을 수행하도록 이미지 프로세서(194)의 딥 러닝 모델을 학습시키는 것은 학습 시간이 소요되며 딥 러닝 모델의 처리 속도가 증가할 수 있다. Training the deep learning model of the image processor 194 to perform the functions of the pre-processor 192 and the post-processor 196 takes training time, and the processing speed of the deep learning model may increase.

하지만, 몇몇 실시예에 따른 이미지 처리 시스템은 기존의 학습된 이미지 프로세서(194)의 딥 러닝 모델을 이용하므로, 상기 딥 러닝 모델의 추가적인 학습 없이, 휘도에 따른 오차가 균일 또는 유사한 출력 이미지 데이터(OIMG)를 출력할 수 있다. 따라서 딥 러닝 모델의 학습 시간이 불필요하며, 이미지 프로세서(194)의 딥 러닝 모델의 처리 속도가 증가하지 않는다. 이에 따라 몇몇 실시예에 따른 이미지 처리 시스템(1)은 품질이 개선 또는 향상된 출력 이미지 데이터(OIMG)를 출력할 수 있다.However, since the image processing system according to some embodiments uses the deep learning model of the existing trained image processor 194, the error according to luminance is uniform or similar to the output image data (OIMG) without additional learning of the deep learning model. ) can be output. Therefore, the training time of the deep learning model is unnecessary, and the processing speed of the deep learning model of the image processor 194 does not increase. Accordingly, the image processing system 1 according to some embodiments may output output image data OIMG with improved or improved quality.

도 11은 몇몇 실시예에 따른 이미지 처리 시스템의 동작을 설명하기 위한 도면이다. 11 is a diagram for explaining an operation of an image processing system according to some embodiments.

도 11을 참조하면, 몇몇 실시예에 따른 이미지 처리 시스템(2)에서 유저 인터페이스(300)는 사용자 입력을 수신하고, 수신된 사용자 입력에 대응하는 신호를 어플리케이션 프로세서(200)에 제공할 수 있다.Referring to FIG. 11 , in the image processing system 2 according to some embodiments, the user interface 300 may receive a user input and provide a signal corresponding to the received user input to the application processor 200 .

유저 인터페이스(300)는 키보드, 커튼 키 패널, 터치 패널, 지문 센서, 마이크 등 사용자 입력을 수신할 수 있는 다양한 장치들로 구현될 수 있다. The user interface 300 may be implemented with various devices capable of receiving user input, such as a keyboard, a curtain key panel, a touch panel, a fingerprint sensor, and a microphone.

몇몇 실시예에서, 이미지 신호 프로세서(220)가 수행하는 제3 함수(fn3)는 유저 인터페이스(300)를 통해 수신될 수 있다. 이미지 신호 프로세서(220)는 이에 따라 제3 함수(fn3)를 이용하여 이미지 데이터를 처리(예를 들어 감마 보정)할 수 있다. In some embodiments, the third function fn3 performed by the image signal processor 220 may be received through the user interface 300 . Accordingly, the image signal processor 220 may process (eg, gamma correction) the image data using the third function fn3.

몇몇 실시예에서, 프로세서(240)는 제3 함수(fn3)의 입력에 응답하여, 제1 함수(fn1) 및 제2 함수(fn2)를 계산할 수 있다. In some embodiments, the processor 240 may calculate the first function fn1 and the second function fn2 in response to the input of the third function fn3.

구체적으로, 이미지 센서(100)의 전처리 프로세서(192) 및 후처리 프로세서(196)는 디스에이블될 수 있다. 이미지 센서(100)는 예를 들어 제어 신호에 따라 전처리 프로세서(192)와 후처리 프로세서(196)가 인에이블 또는 디스에이블될 수 있다. 상기 제어 신호는 유저 인터페이스(300)로부터 제공될 수도 있고, 또는 프로세서(240)로부터 제공될 수도 있다. Specifically, the pre-processing processor 192 and the post-processing processor 196 of the image sensor 100 may be disabled. In the image sensor 100 , for example, the pre-processor 192 and the post-processor 196 may be enabled or disabled according to a control signal. The control signal may be provided from the user interface 300 or the processor 240 .

이미지 센서(100)는 제어 신호에 따라 로우 입력 이미지 데이터(RIIMG)를 출력할 수 있다. 구체적으로, 이미지 프로세서(194)는 로우 이미지 데이터(RIMG)를 입력받아 기계 학습을 이용하여 로우 입력 이미지 데이터(RIIMG)를 생성할 있다. 이미지 신호 프로세서(220)는 인터페이스(198) 및 카메라 인터페이스(210)를 통해 로우 입력 이미지 데이터(RIIMG)를 입력받아 로우 출력 이미지 데이터(ROIMG)를 출력할 수 있다. 이미지 신호 프로세서(220)는 로우 입력 이미지 데이터(RIIMG)에 제3 함수(fn3)를 적용하여 로우 출력 이미지 데이터(ROIMG)를 출력할 수 있다.The image sensor 100 may output raw input image data RIMG according to a control signal. Specifically, the image processor 194 may receive raw image data RIMG and generate raw input image data RIMG using machine learning. The image signal processor 220 may receive raw input image data RIMG through the interface 198 and the camera interface 210 and output raw output image data ROIMG. The image signal processor 220 may output the row output image data ROIMG by applying the third function fn3 to the row input image data RIMG.

프로세서(240)는 로우 입력 이미지 데이터(RIIMG)와 로우 출력 이미지 데이터(ROIMG)를 수신할 수 있다. 프로세서(240)는 로우 입력 이미지 데이터(RIIMG)와 로우 출력 이미지 데이터(ROIMG)로부터 제3 함수(fn3)를 계산할 수 있다.The processor 240 may receive row input image data RIMG and row output image data ROIMG. The processor 240 may calculate the third function fn3 from the row input image data RIMG and the row output image data ROIMG.

프로세서(240)는 제3 함수(fn3)로부터 제1 함수(fn1) 및 제2 함수(fn2)를 계산할 수 있다. 프로세서(240)는 제3 함수(fn3)를 제1 함수(fn1)로 계산할 수 있고, 제3 함수(fn3)의 역함수를 제2 함수(fn2)로 계산할 수 있다. The processor 240 may calculate the first function fn1 and the second function fn2 from the third function fn3. The processor 240 may calculate the third function fn3 as the first function fn1 and calculate an inverse function of the third function fn3 as the second function fn2.

프로세서(240)는 제1 함수(fn1)를 전처리 프로세서(192)에 제공하고, 제2 함수(fn2)를 후처리 프로세서(196)에 제공할 수 있다. 이에 따라 전처리 프로세서(192)는 제1 함수(fn1)를 이용하여 이미지 데이터를 처리할 수 있고, 후처리 프로세서(196)는 제2 함수(fn2)를 이용하여 이미지 데이터를 처리할 수 있다. 따라서 이미지 신호 프로세서(220)의 제3 함수(fn3)가 변경되더라도 제1 함수(fn1) 및 제2 함수(fn2)만을 변경하여 이미지 처리 시스템(2)은 동작할 수 있다.The processor 240 may provide the first function fn1 to the pre-processor 192 and the second function fn2 to the post-processor 196 . Accordingly, the pre-processor 192 may process image data using the first function fn1, and the post-processor 196 may process image data using the second function fn2. Therefore, even if the third function fn3 of the image signal processor 220 is changed, the image processing system 2 can operate by changing only the first function fn1 and the second function fn2.

도 12는 몇몇 실시예에 따른 이미지 처리 시스템의 동작을 설명하기 위한 도면이다. 설명의 편의 상 도 11과 다른 점을 중심으로 설명한다.12 is a diagram for describing an operation of an image processing system according to some embodiments. For convenience of explanation, the description will be made focusing on the points different from those of FIG. 11 .

도 12를 참조하면, 몇몇 실시예에 따른 이미지 처리 시스템(3)에서 제1 함수(fn1) 및 제2 함수(fn2)는 이미지 처리 시스템(3)의 외부에서 제공될 수 있다. Referring to FIG. 12 , in the image processing system 3 according to some embodiments, the first function fn1 and the second function fn2 may be provided outside the image processing system 3 .

예를 들어, 전처리 프로세서(192)가 수행하는 제1 함수(fn1)는 유저 인터페이스(300)를 통해 수신될 수 있다. 후처리 프로세서(196)가 수행하는 제2 함수(fn2)는 유저 인터페이스(300)를 통해 수신될 수 있다. 이에 따라 전처리 프로세서(192)는 제1 함수(fn1)를 이용하여 이미지 데이터를 처리할 수 있고, 후처리 프로세서(196)는 제2 함수(fn2)를 이용하여 이미지 데이터를 처리할 수 있다.For example, the first function fn1 performed by the preprocessor 192 may be received through the user interface 300 . The second function fn2 performed by the post-processing processor 196 may be received through the user interface 300 . Accordingly, the pre-processor 192 may process image data using the first function fn1, and the post-processor 196 may process image data using the second function fn2.

예를 들어, 유저 인터페이스(300)에 연결된 외부 프로세서는, 도 11을 이용하여 설명한 것과 같이, 로우 입력 이미지 데이터(RIIMG)와 로우 출력 이미지 데이터(ROIMG)를 수신할 수 있다. 상기 외부 프로세서는 로우 입력 이미지 데이터(RIIMG)와 로우 출력 이미지 데이터(ROIMG)를 이용하여 제1 및 제2 함수(fn1, fn2)를 계산하여 이미지 센서(100)에 제공할 수 있다.For example, an external processor connected to the user interface 300 may receive row input image data RIMG and row output image data ROIMG as described with reference to FIG. 11 . The external processor may calculate the first and second functions fn1 and fn2 using the raw input image data RIIMG and the raw output image data ROIMG and provide the calculated values to the image sensor 100 .

도 13은 몇몇 실시예에 따른 이미지 처리 시스템의 동작을 설명하기 위한 도면이다. 설명의 편의 상 도 11과 다른 점을 중심으로 설명한다.13 is a diagram for explaining an operation of an image processing system according to some embodiments. For convenience of explanation, the description will be made focusing on the points different from those of FIG. 11 .

도 13을 참조하면, 몇몇 실시예에 따른 이미지 처리 시스템(4)에서, 프로세서(240)는 제3 함수(fn3)의 수신에 응답하여, 제1 함수(fn1) 및 제2 함수(fn2)를 계산할 수 있다. 프로세서(240)는 제3 함수(fn3)에 기반하여, 제1 함수(fn1) 및 제2 함수(fn2)를 계산할 수 있다. 프로세서(240)는 예를 들어, 제3 함수(fn3)를 제1 함수(fn1)로 계산하고, 제3 함수(fn3)의 역함수를 제2 함수(fn2)로 계산할 수 있다.Referring to FIG. 13 , in the image processing system 4 according to some embodiments, the processor 240 generates a first function fn1 and a second function fn2 in response to receiving a third function fn3. can be calculated The processor 240 may calculate the first function fn1 and the second function fn2 based on the third function fn3. The processor 240 may, for example, calculate the third function fn3 as the first function fn1 and calculate an inverse function of the third function fn3 as the second function fn2.

프로세서(240)는 제1 함수(fn1)를 전처리 프로세서(192)에 제공하고, 제2 함수(fn2)를 후처리 프로세서(196)에 제공할 수 있다. 이에 따라 전처리 프로세서(192)는 제1 함수(fn1)를 이용하여 이미지 데이터를 처리할 수 있고, 후처리 프로세서(196)는 제2 함수(fn2)를 이용하여 이미지 데이터를 처리할 수 있다.The processor 240 may provide the first function fn1 to the pre-processor 192 and the second function fn2 to the post-processor 196 . Accordingly, the pre-processor 192 may process image data using the first function fn1, and the post-processor 196 may process image data using the second function fn2.

도 14는 몇몇 실시예에 따른 이미지 처리 시스템을 설명하기 위한 도면이다. 설명의 편의 상 도 1을 이용하여 설명한 것과 다른 점을 중심으로 설명한다.14 is a diagram for describing an image processing system according to some embodiments. For convenience of description, the description will focus on the points different from those described with reference to FIG. 1 .

도 14를 참조하면, 몇몇 실시예에 따른 이미지 처리 시스템(5)은 이미지 센서(100) 및 어플리케이션 프로세서(200)를 포함할 수 있다. 이미지 센서(100)는 센싱부(105), 프로세서(190) 및 인터페이스(198)를 포함할 수 있다.Referring to FIG. 14 , an image processing system 5 according to some embodiments may include an image sensor 100 and an application processor 200. The image sensor 100 may include a sensing unit 105 , a processor 190 and an interface 198 .

프로세서(190)는 센싱부(105)로부터 로우 이미지(RIMG)를 제공받아 제3 이미지 데이터(IMG3)를 출력할 수 있다. 제3 이미지 데이터(IMG3)는 인터페이스(198)를 통해 어플리케이션 프로세서(200)으로 입력될 수 있다.The processor 190 may receive the raw image RIMG from the sensing unit 105 and output third image data IMG3. The third image data IMG3 may be input to the application processor 200 through the interface 198 .

구체적으로 도 3을 참조하면, 프로세서(190)는 센싱부(105)로부터 제공받은 로우 이미지 데이터(RIMG)에 제1 함수(fn1)를 적용하여 제1 이미지 데이터(IMG1)를 생성할 수 있다. 예를 들어, 제1 함수(fn1)는 비선형 함수일 수 있다. 프로세서(190)는 제1 이미지 데이터(IMG1)에 대해 다양한 적어도 하나의 연산을 수행하여 제2 이미지 데이터(IMG2)를 출력할 수 있다. 몇몇 실시예에서, 프로세서(190)는 제1 이미지 데이터(IMG1)에 대해 리모자익 동작을 수행하여 제2 이미지 데이터(IMG2)를 출력할 수 있다. 예를 들어, 프로세서(190)는 제1 이미지 데이터(IMG1)를 입력받아 뉴럴 네트워크를 이용한 딥 러닝을 이용하여 제2 이미지 데이터(IMG2)를 생성할 수 있다. 도 4를 참조하면, 프로세서(190)는 제2 이미지 데이터(IMG2)에 제2 함수(fn2)를 적용하여 제3 이미지 데이터(IMG3)를 출력할 수 있다. 예를 들어, 제2 함수(fn2)는 비선형 함수일 수 있다. 즉, 도 1의 전처리 프로세서(192), 이미지 프로세서(194) 및 후처리 프로세서(196)는 하나의 프로세서(190)로 구현될 수 있다. 예를 들어 프로세서(190)는 전용 하드웨어로 구현될 수 있고, 또는 기존의 범용 프로세서(예를 들어 CPU, GPU 등)의 일부로 구현될 수 있다. 예를 들어, 프로세서(190)는 CPU(Central Processing Unit), GPU(Graphic Processing Unit), NPU(Neural Processing Unit), GPU(Graphic Processing Unit) 등으로 구현될 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다. Specifically, referring to FIG. 3 , the processor 190 may generate first image data IMG1 by applying a first function fn1 to the raw image data RIMG received from the sensing unit 105 . For example, the first function fn1 may be a nonlinear function. The processor 190 may perform at least one of various operations on the first image data IMG1 to output the second image data IMG2. In some embodiments, the processor 190 may perform a limosaic operation on the first image data IMG1 to output the second image data IMG2. For example, the processor 190 may receive the first image data IMG1 and generate second image data IMG2 using deep learning using a neural network. Referring to FIG. 4 , the processor 190 may output third image data IMG3 by applying the second function fn2 to the second image data IMG2. For example, the second function fn2 may be a nonlinear function. That is, the pre-processing processor 192, the image processor 194, and the post-processing processor 196 of FIG. 1 may be implemented as one processor 190. For example, the processor 190 may be implemented as dedicated hardware, or may be implemented as part of an existing general-purpose processor (eg, CPU, GPU, etc.). For example, the processor 190 may be implemented as a Central Processing Unit (CPU), Graphic Processing Unit (GPU), Neural Processing Unit (NPU), Graphic Processing Unit (GPU), etc., but the scope of the present invention is limited thereto. it is not going to be

도 15는 몇몇 실시예에 따른 제1 함수를 설명하기 위한 도면이다. 도 15의 제1 함수(fn1')는 도 1 내지 도 14의 제1 함수(fn1)에 대응된다.15 is a diagram for explaining a first function according to some embodiments. The first function fn1' of FIG. 15 corresponds to the first function fn1 of FIGS. 1 to 14 .

도 15를 참조하면, 몇몇 실시예에 따른 제1 함수(fn1')는 구간 선형 함수(Piecewise linear function)일 수 있다. 제1 함수(fn1')의 복수의 구간(P1, P2, P3) 중 적어도 하나의 구간에서 제1 함수(fn1')는 선형 함수이나, 제1 함수(fn1')의 전체 구간(P1, P2, P3)에서 제1 함수(fn1')는 선형 함수가 되지 않는다. 예를 들어, 제1 구간(P1)에서 제1 함수(fn1')의 기울기는 제2 구간(P2)에서 제1 함수(fn1') 및 제3 구간(P3)에서 제1 함수(fn1')의 기울기 중 적어도 하나와 다를 수 있다.Referring to FIG. 15 , the first function fn1′ according to some embodiments may be a piecewise linear function. In at least one of the plurality of sections P1, P2, and P3 of the first function fn1', the first function fn1' is a linear function, but the entire section P1, P2 of the first function fn1' , P3), the first function fn1' does not become a linear function. For example, the slope of the first function fn1' in the first section P1 is the first function fn1' in the second section P2 and the first function fn1' in the third section P3. may differ from at least one of the slopes of

도 1 내지 도 14의 제2 함수(fn2)는 도 14의 제1 함수(fn1')의 역함수일 수 있으며, 도 1 내지 도 14의 제3 함수(fn3)는 도 14의 제1 함수(fn1')와 동일할 수 있다.The second function fn2 of FIGS. 1 to 14 may be an inverse function of the first function fn1' of FIG. 14 , and the third function fn3 of FIGS. 1 to 14 may be the first function fn1 of FIG. 14 . ') may be the same as

몇몇 실시예에서, 전처리 프로세서(192)는 로우 이미지(RIMG)를 복수의 구간으로 나누고, 각각의 구간에 대해 제1 함수(fn1')를 적용하여 제1 이미지 데이터(IMG1)를 생성할 수 있다. 후처리 프로세서(196)는 제2 이미지 데이터(IMG2)를 복수의 구간으로 나누고, 각각의 구간에 대해 제2 함수(fn2)를 적용하여 제3 이미지 데이터(IMG3)를 출력할 수 있다. 예를 들어 전처리 프로세서(192)는 로우 이미지(RIMG)의 제1 구간(P1)에 대해 제1 구간(P1)의 제1 함수(fn1')를 적용하여 제1 이미지 데이터(IMG1)를 생성할 수 있고, 후처리 프로세서(196)는 제2 이미지 데이터(IMG2)의 제1 구간(P1)에 대해 제1 구간(P1)의 제1 함수(fn1')의 역함수인 제2 함수(fn2)를 적용하여 제3 이미지 데이터(IMG3)를 출력할 수 있다.In some embodiments, the preprocessor 192 may divide the raw image RIMG into a plurality of sections and apply the first function fn1′ to each section to generate first image data IMG1. . The post-processing processor 196 may divide the second image data IMG2 into a plurality of sections, apply the second function fn2 to each section, and output the third image data IMG3. For example, the preprocessor 192 generates first image data IMG1 by applying the first function fn1' of the first section P1 to the first section P1 of the raw image RIMG. The post-processing processor 196 may generate a second function fn2 that is an inverse function of the first function fn1' of the first section P1 for the first section P1 of the second image data IMG2. The third image data IMG3 may be output.

도 16은 몇몇 실시예에 따른 제1 함수를 설명하기 위한 도면이다. 도 16의 제1 함수(fn1'')는 도 1 내지 도 14의 제1 함수(fn1)에 대응된다.16 is a diagram for explaining a first function according to some embodiments. The first function fn1'' of FIG. 16 corresponds to the first function fn1 of FIGS. 1 to 14 .

도 16을 참조하면, 몇몇 실시예에 따른 제1 함수(fn1'')는 구간 딕셔너리 함수(Piecewise dictionary function)일 수 있다. 제1 함수(fn1'')의 복수의 구간(P1, P2, P3)은 서로 다른 함수를 가지며, 제1 함수(fn1'')의 전체 구간(P1, P2, P3)에서 제1 함수(fn1'')는 선형 함수가 되지 않는다. 예를 들어, 제1 구간(P1)에서 제1 함수(fn1'')는 제2 구간(P2)에서 제1 함수(fn1'') 및 제3 구간(P3)에서 제1 함수(fn1'')와 다를 수 있다.Referring to FIG. 16 , a first function fn1″ according to some embodiments may be a piecewise dictionary function. The plurality of intervals P1, P2, and P3 of the first function fn1'' have different functions, and in the entire intervals P1, P2, and P3 of the first function fn1'', the first function fn1 '') does not become a linear function. For example, the first function fn1'' in the first period P1 is the first function fn1'' in the second period P2 and the first function fn1'' in the third period P3. ) may be different.

도 1 내지 도 14의 제2 함수(fn2)는 도 15의 제1 함수(fn1'')의 역함수일 수 있으며, 도 1 내지 도 14의 제3 함수(fn3)는 도 15의 제1 함수(fn1'')와 동일할 수 있다.The second function fn2 of FIGS. 1 to 14 may be an inverse function of the first function fn1 ″ of FIG. 15 , and the third function fn3 of FIGS. 1 to 14 may be the first function of FIG. 15 ( fn1'').

몇몇 실시예에서, 전처리 프로세서(192)는 로우 이미지(RIMG)를 복수의 구간으로 나누고, 각각의 구간에 대해 제1 함수(fn1'')를 적용하여 제1 이미지 데이터(IMG1)를 생성할 수 있다. 후처리 프로세서(196)는 제2 이미지 데이터(IMG2)를 복수의 구간으로 나누고, 각각의 구간에 대해 제2 함수(fn2)를 적용하여 제3 이미지 데이터(IMG3)를 출력할 수 있다. 예를 들어 전처리 프로세서(192)는 로우 이미지(RIMG)의 제1 구간(P1)에 대해 제1 구간(P1)의 제1 함수(fn1'')를 적용하여 제1 이미지 데이터(IMG1)를 생성할 수 있고, 후처리 프로세서(196)는 제2 이미지 데이터(IMG2)의 제1 구간(P1)에 대해 제1 구간(P1)의 제1 함수(fn1'')의 역함수인 제2 함수(fn2)를 적용하여 제3 이미지 데이터(IMG3)를 출력할 수 있다.In some embodiments, the preprocessor 192 may divide the raw image RIMG into a plurality of sections and apply the first function fn1 ″ to each section to generate first image data IMG1. there is. The post-processing processor 196 may divide the second image data IMG2 into a plurality of sections, apply the second function fn2 to each section, and output the third image data IMG3. For example, the preprocessor 192 generates first image data IMG1 by applying the first function fn1'' of the first section P1 to the first section P1 of the raw image RIMG. The post-processing processor 196 may perform a second function fn2 that is an inverse function of the first function fn1'' of the first section P1 with respect to the first section P1 of the second image data IMG2. ) may be applied to output the third image data IMG3.

도 17은 멀티 카메라 모듈을 포함하는 전자 장치의 블록도이다. 도 18은 도 17의 카메라 모듈의 상세 블록도이다.17 is a block diagram of an electronic device including a multi-camera module. 18 is a detailed block diagram of the camera module of FIG. 17 .

도 17을 참조하면, 전자 장치(1000)는 카메라 모듈 그룹(1100), 어플리케이션 프로세서(1200), PMIC(1300) 및 외부 메모리(1400)를 포함할 수 있다.Referring to FIG. 17 , the electronic device 1000 may include a camera module group 1100, an application processor 1200, a PMIC 1300, and an external memory 1400.

카메라 모듈 그룹(1100)은 복수의 카메라 모듈(1100a, 1100b, 1100c)을 포함할 수 있다. 비록 도면에는 3개의 카메라 모듈(1100a, 1100b, 1100c)이 배치된 실시예가 도시되어 있으나, 실시예들이 이에 제한되는 것은 아니다. 몇몇 실시예에서, 카메라 모듈 그룹(1100)은 2개의 카메라 모듈만을 포함하도록 변형되어 실시될 수 있다. 또한, 몇몇 실시예에서, 카메라 모듈 그룹(1100)은 n개(n은 4 이상의 자연수)의 카메라 모듈을 포함하도록 변형되어 실시될 수도 있다.The camera module group 1100 may include a plurality of camera modules 1100a, 1100b, and 1100c. Although the drawing shows an embodiment in which three camera modules 1100a, 1100b, and 1100c are disposed, the embodiments are not limited thereto. In some embodiments, the camera module group 1100 may be modified to include only two camera modules. Also, in some embodiments, the camera module group 1100 may be modified to include n (n is a natural number of 4 or more) camera modules.

이하, 도 18을 참조하여, 카메라 모듈(1100b)의 상세 구성에 대해 보다 구체적으로 설명할 것이나, 이하의 설명은 실시예에 따라 다른 카메라 모듈들(1100a, 1100c)에 대해서도 동일하게 적용될 수 있다.Hereinafter, a detailed configuration of the camera module 1100b will be described in more detail with reference to FIG. 18 , but the following description may be equally applied to other camera modules 1100a and 1100c according to embodiments.

도 18을 참조하면, 카메라 모듈(1100b)은 프리즘(1105), 광학 경로 폴딩 요소(Optical Path Folding Element, 이하, ˝OPFE˝)(1110), 액츄에이터(1130), 이미지 센싱 장치(1140) 및 저장부(1150)를 포함할 수 있다.Referring to FIG. 18, a camera module 1100b includes a prism 1105, an optical path folding element (hereinafter referred to as “OPFE”) 1110, an actuator 1130, an image sensing device 1140, and storage. may include section 1150 .

프리즘(1105)은 광 반사 물질의 반사면(1107)을 포함하여 외부로부터 입사되는 광(L)의 경로를 변형시킬 수 있다. The prism 1105 may include a reflective surface 1107 of a light reflective material to change a path of light L incident from the outside.

몇몇 실시예에서, 프리즘(1105)은 제1 방향(X)으로 입사되는 광(L)의 경로를 제1 방향(X)에 수직인 제2 방향(Y)으로 변경시킬 수 있다. 또한, 프리즘(1105)은 광 반사 물질의 반사면(1107)을 중심축(1106)을 중심으로 A방향으로 회전시키거나, 중심축(1106)을 B방향으로 회전시켜 제1 방향(X)으로 입사되는 광(L)의 경로를 수직인 제2 방향(Y)으로 변경시킬 수 있다. 이때, OPFE(1110)도 제1 방향(X)및 제2 방향(Y)과 수직인 제3 방향(Z)로 이동할 수 있다.In some embodiments, the prism 1105 may change the path of light L incident in the first direction X to a second direction Y perpendicular to the first direction X. In addition, the prism 1105 rotates the reflective surface 1107 of the light reflecting material in the direction A around the central axis 1106 or rotates the central axis 1106 in the direction B to move in the first direction X. A path of the incident light L may be changed in a second direction Y, which is perpendicular to the second direction Y. At this time, the OPFE 1110 may also move in a third direction (Z) perpendicular to the first direction (X) and the second direction (Y).

몇몇 실시예에서, 도시된 것과 같이, 프리즘(1105)의 A방향 최대 회전 각도는 플러스(+) A방향으로는 15도(degree)이하이고, 마이너스(-) A방향으로는 15도보다 클 수 있으나, 실시예들이 이에 제한되는 것은 아니다.In some embodiments, as shown, the maximum angle of rotation of the prism 1105 in the A direction may be less than 15 degrees in the plus A direction and greater than 15 degrees in the minus A direction. However, the embodiments are not limited thereto.

몇몇 실시예에서, 프리즘(1105)은 플러스(+) 또는 마이너스(-) B방향으로 20도 내외, 또는 10도에서 20도, 또는 15도에서 20도 사이로 움직일 수 있고, 여기서, 움직이는 각도는 플러스(+) 또는 마이너스(-) B방향으로 동일한 각도로 움직이거나, 1도 내외의 범위로 거의 유사한 각도까지 움직일 수 있다.In some embodiments, prism 1105 can move about 20 degrees in the plus or minus B direction, or between 10 and 20 degrees, or between 15 and 20 degrees, where the angle of movement is positive. It can move at the same angle in the (+) or minus (-) B direction, or it can move to an almost similar angle within the range of 1 degree.

몇몇 실시예에서, 프리즘(1105)은 광 반사 물질의 반사면(1106)을 중심축(1106)의 연장 방향과 평행한 제3 방향(예를 들어, Z방향)으로 이동할 수 있다.In some embodiments, the prism 1105 can move the reflective surface 1106 of the light reflecting material in a third direction (eg, the Z direction) parallel to the extension direction of the central axis 1106 .

OPFE(1110)는 예를 들어 m(여기서, m은 자연수)개의 그룹으로 이루어진 광학 렌즈를 포함할 수 있다. m개의 렌즈는 제2 방향(Y)으로 이동하여 카메라 모듈(1100b)의 광학 줌 배율(optical zoom ratio)을 변경할 수 있다. 예를 들어, 카메라 모듈(1100b)의 기본 광학 줌 배율을 Z라고할 때, OPFE(1110)에 포함된 m개의 광학 렌즈를 이동시킬 경우, 카메라 모듈(1100b)의 광학 줌 배율은 3Z 또는 5Z 또는 5Z 이상의 광학 줌 배율로 변경될 수 있다.The OPFE 1110 may include, for example, optical lenses consisting of m (where m is a natural number) groups. The m lenses may move in the second direction (Y) to change the optical zoom ratio of the camera module 1100b. For example, when the basic optical zoom magnification of the camera module 1100b is Z, when m optical lenses included in the OPFE 1110 are moved, the optical zoom magnification of the camera module 1100b is 3Z or 5Z or It can be changed to an optical zoom magnification of 5Z or higher.

액츄에이터(1130)는 OPFE(1110) 또는 광학 렌즈(이하, 광학 렌즈로 지칭)를 특정 위치로 이동시킬 수 있다. 예를 들어 액츄에이터(1130)는 정확한 센싱을 위해 이미지 센서(1142)가 광학 렌즈의 초점 거리(focal length)에 위치하도록 광학 렌즈의 위치를 조정할 수 있다.The actuator 1130 may move the OPFE 1110 or an optical lens (hereinafter referred to as an optical lens) to a specific position. For example, the actuator 1130 may adjust the position of the optical lens so that the image sensor 1142 is positioned at the focal length of the optical lens for accurate sensing.

이미지 센싱 장치(1140)는 이미지 센서(1142), 제어 로직(1144) 및 메모리(1146)를 포함할 수 있다. 이미지 센서(1142)는 광학 렌즈를 통해 제공되는 광(L)을 이용하여 센싱 대상의 이미지를 센싱할 수 있다. 제어 로직(1144)은 카메라 모듈(1100b)의 전반적인 동작을 제어할 수 있다. 예를 들어, 제어 로직(1144)은 제어 신호 라인(CSLb)을 통해 제공된 제어 신호에 따라 카메라 모듈(1100b)의 동작을 제어할 수 있다. The image sensing device 1140 may include an image sensor 1142 , a control logic 1144 and a memory 1146 . The image sensor 1142 may sense an image of a sensing target using light L provided through an optical lens. The control logic 1144 may control the overall operation of the camera module 1100b. For example, the control logic 1144 may control the operation of the camera module 1100b according to a control signal provided through the control signal line CSLb.

메모리(1146)는 캘리브레이션 데이터(1147)와 같은 카메라 모듈(1100b)의 동작에 필요한 정보를 저장할 수 있다. 캘리브레이션 데이터(1147)는 카메라 모듈(1100b)이 외부로부터 제공된 광(L)을 이용하여 이미지 데이터를 생성하는데 필요한 정보를 포함할 수 있다. 캘리브레이션 데이터(1147)는 예를 들어, 앞서 설명한 회전도(degree of rotation)에 관한 정보, 초점 거리(focal length)에 관한 정보, 광학 축(optical axis)에 관한 정보 등을 포함할 수 있다. 카메라 모듈(1100b)이 광학 렌즈의 위치에 따라 초점 거리가 변하는 멀티 스테이트(multi state) 카메라 형태로 구현될 경우, 캘리브레이션 데이터(1147)는 광학 렌즈의 각 위치별(또는 스테이트별) 초점 거리 값과 오토 포커싱(auto focusing)과 관련된 정보를 포함할 수 있다.The memory 1146 may store information required for operation of the camera module 1100b, such as calibration data 1147. The calibration data 1147 may include information necessary for the camera module 1100b to generate image data using light L provided from the outside. The calibration data 1147 may include, for example, information about a degree of rotation, information about a focal length, information about an optical axis, and the like, as described above. When the camera module 1100b is implemented in the form of a multi-state camera in which the focal length changes according to the position of the optical lens, the calibration data 1147 is a focal length value for each position (or state) of the optical lens and It may include information related to auto focusing.

저장부(1150)는 이미지 센서(1142)를 통해 센싱된 이미지 데이터를 저장할 수 있다. 저장부(1150)는 이미지 센싱 장치(1140)의 외부에 배치될 수 있으며, 이미지 센싱 장치(1140)를 구성하는 센서 칩과 스택된(stacked) 형태로 구현될 수 있다. 몇몇 실시예에서, 저장부(1150)는 EEPROM(Electrically Erasable Programmable Read-Only Memory)으로 구현될 수 있으나 실시예들이 이에 제한되는 것은 아니다.The storage unit 1150 may store image data sensed through the image sensor 1142 . The storage unit 1150 may be disposed outside the image sensing device 1140 and may be implemented in a stacked form with a sensor chip constituting the image sensing device 1140 . In some embodiments, the storage unit 1150 may be implemented as an electrically erasable programmable read-only memory (EEPROM), but the embodiments are not limited thereto.

도 17과 도 18을 함께 참조하면, 몇몇 실시예에서, 복수의 카메라 모듈(1100a, 1100b, 1100c) 각각은 액추에이터(1130)를 포함할 수 있다. 이에 따라, 복수의 카메라 모듈(1100a, 1100b, 1100c) 각각은 그 내부에 포함된 액추에이터(1130)의 동작에 따른 서로 동일하거나 서로 다른 캘리브레이션 데이터(1147)를 포함할 수 있다. Referring to FIGS. 17 and 18 together, in some embodiments, each of the plurality of camera modules 1100a, 1100b, and 1100c may include an actuator 1130. Accordingly, each of the plurality of camera modules 1100a, 1100b, and 1100c may include the same or different calibration data 1147 according to the operation of the actuator 1130 included therein.

몇몇 실시예에서, 복수의 카메라 모듈(1100a, 1100b, 1100c) 중 하나의 카메라 모듈(예를 들어, 1100b)은 앞서 설명한 프리즘(1105)과 OPFE(1110)를 포함하는 폴디드 렌즈(folded lens) 형태의 카메라 모듈이고, 나머지 카메라 모듈들(예를 들어, 1100a, 1100c)은 프리즘(1105)과 OPFE(1110)가 포함되지 않은 버티칼(vertical) 형태의 카메라 모듈일 수 있으나, 실시예들이 이에 제한되는 것은 아니다.In some embodiments, one of the plurality of camera modules 1100a, 1100b, 1100c (eg, 1100b) is a folded lens including the prism 1105 and the OPFE 1110 described above. camera module, and the remaining camera modules (eg, 1100a, 1100c) may be vertical camera modules that do not include the prism 1105 and the OPFE 1110, but embodiments are limited thereto. it is not going to be

몇몇 실시예에서, 복수의 카메라 모듈(1100a, 1100b, 1100c) 중 하나의 카메라 모듈(예를 들어, 1100c)은 예를 들어, IR(Infrared Ray)을 이용하여 깊이(depth) 정보를 추출하는 버티컬 형태의 깊이 카메라(depth camera)일 수 있다. 이 경우, 어플리케이션 프로세서(1200)는 이러한 깊이 카메라로부터 제공받은 이미지 데이터와 다른 카메라 모듈(예를 들어, 1100a 또는 1100b)로부터 제공받은 이미지 데이터를 병합(merge)하여 3차원 깊이 이미지(3D depth image)를 생성할 수 있다.In some embodiments, one camera module (eg, 1100c) among the plurality of camera modules 1100a, 1100b, and 1100c extracts depth information using infrared rays (IR), for example. It may be a depth camera of the form. In this case, the application processor 1200 merges image data provided from the depth camera and image data provided from other camera modules (eg, 1100a or 1100b) to obtain a 3D depth image. can create

몇몇 실시예에서, 복수의 카메라 모듈(1100a, 1100b, 1100c) 중 적어도 두 개의 카메라 모듈(예를 들어, 1100a, 1100b)은 서로 다른 관측 시야(Field of View, 시야각)를 가질 수 있다. 이 경우, 예를 들어, 복수의 카메라 모듈(1100a, 1100b, 1100c) 중 적어도 두 개의 카메라 모듈(예를 들어, 1100a, 1100b)의 광학 렌즈가 서로 다를 수 있으나, 이에 제한되는 것은 아니다. In some embodiments, at least two camera modules (eg, 1100a, 1100b) among the plurality of camera modules 1100a, 1100b, and 1100c may have different fields of view (field of view). In this case, for example, optical lenses of at least two camera modules (eg, 1100a, 1100b) among the plurality of camera modules 1100a, 1100b, and 1100c may be different from each other, but the present invention is not limited thereto.

또한, 몇몇 실시예에서, 복수의 카메라 모듈(1100a, 1100b, 1100c) 각각의 시야각은 서로 다를 수 있다. 이 경우, 복수의 카메라 모듈(1100a, 1100b, 1100c) 각각에 포함된 광학 렌즈 역시 서로 다를 수 있으나, 이에 제한되는 것은 아니다.Also, in some embodiments, each of the plurality of camera modules 1100a, 1100b, and 1100c may have different viewing angles. In this case, optical lenses included in each of the plurality of camera modules 1100a, 1100b, and 1100c may also be different from each other, but are not limited thereto.

몇몇 실시예에서, 복수의 카메라 모듈(1100a, 1100b, 1100c) 각각은 서로 물리적으로 분리되어 배치될 수 있다. 즉, 하나의 이미지 센서(1142)의 센싱 영역을 복수의 카메라 모듈(1100a, 1100b, 1100c)이 분할하여 사용하는 것이 아니라, 복수의 카메라 모듈(1100a, 1100b, 1100c) 각각의 내부에 독립적인 이미지 센서(1142)가 배치될 수 있다.In some embodiments, each of the plurality of camera modules 1100a, 1100b, and 1100c may be disposed physically separated from each other. That is, the sensing area of one image sensor 1142 is not divided and used by a plurality of camera modules 1100a, 1100b, and 1100c, but an independent image inside each of the plurality of camera modules 1100a, 1100b, and 1100c. A sensor 1142 may be disposed.

다시 도 17을 참조하면, 어플리케이션 프로세서(1200)는 이미지 처리 장치(1210), 메모리 컨트롤러(1220), 내부 메모리(1230)를 포함할 수 있다. 어플리케이션 프로세서(1200)는 복수의 카메라 모듈(1100a, 1100b, 1100c)과 분리되어 구현될 수 있다. 예를 들어, 어플리케이션 프로세서(1200)와 복수의 카메라 모듈(1100a, 1100b, 1100c)은 별도의 반도체 칩으로 서로 분리되어 구현될 수 있다.Referring back to FIG. 17 , the application processor 1200 may include an image processing device 1210 , a memory controller 1220 , and an internal memory 1230 . The application processor 1200 may be implemented separately from the plurality of camera modules 1100a, 1100b, and 1100c. For example, the application processor 1200 and the plurality of camera modules 1100a, 1100b, and 1100c may be separately implemented as separate semiconductor chips.

이미지 처리 장치(1210)는 복수의 서브 이미지 프로세서(1212a, 1212b, 1212c), 이미지 생성기(1214) 및 카메라 모듈 컨트롤러(1216)를 포함할 수 있다.The image processing device 1210 may include a plurality of sub image processors 1212a, 1212b, and 1212c, an image generator 1214, and a camera module controller 1216.

이미지 처리 장치(1210)는 복수의 카메라 모듈(1100a, 1100b, 1100c)의 개수에 대응하는 개수의 복수의 서브 이미지 프로세서(1212a, 1212b, 1212c)를 포함할 수 있다.The image processing device 1210 may include a plurality of sub image processors 1212a, 1212b, and 1212c corresponding to the number of the plurality of camera modules 1100a, 1100b, and 1100c.

각각의 카메라 모듈(1100a, 1100b, 1100c)로부터 생성된 이미지 데이터는 서로 분리된 이미지 신호 라인(ISLa, ISLb, ISLc)를 통해 대응되는 서브 이미지 프로세서(1212a, 1212b, 1212c)에 제공될 수 있다. 예를 들어, 카메라 모듈(1100a)로부터 생성된 이미지 데이터는 이미지 신호 라인(ISLa)을 통해 서브 이미지 프로세서(1212a)에 제공되고, 카메라 모듈(1100b)로부터 생성된 이미지 데이터는 이미지 신호 라인(ISLb)을 통해 서브 이미지 프로세서(1212b)에 제공되고, 카메라 모듈(1100c)로부터 생성된 이미지 데이터는 이미지 신호 라인(ISLc)을 통해 서브 이미지 프로세서(1212c)에 제공될 수 있다. 이러한 이미지 데이터 전송은 예를 들어, MIPI(Mobile Industry Processor Interface)에 기반한 카메라 직렬 인터페이스(CSI; Camera Serial Interface)를 이용하여 수행될 수 있으나, 실시예들이 이에 제한되는 것은 아니다. Image data generated from each of the camera modules 1100a, 1100b, and 1100c may be provided to the corresponding sub image processors 1212a, 1212b, and 1212c through separate image signal lines ISLa, ISLb, and ISLc. For example, image data generated from the camera module 1100a is provided to the sub image processor 1212a through the image signal line ISLa, and image data generated from the camera module 1100b is provided to the image signal line ISLb. Image data generated from the camera module 1100c may be provided to the sub image processor 1212c through the image signal line ISLc. Such image data transmission may be performed using, for example, a Camera Serial Interface (CSI) based on MIPI (Mobile Industry Processor Interface), but embodiments are not limited thereto.

한편, 몇몇 실시예에서, 하나의 서브 이미지 프로세서가 복수의의 카메라 모듈에 대응되도록 배치될 수도 있다. 예를 들어, 서브 이미지 프로세서(1212a)와 서브 이미지 프로세서(1212c)가 도시된 것처럼 서로 분리되어 구현되는 것이 아니라 하나의 서브 이미지 프로세서로 통합되어 구현되고, 카메라 모듈(1100a)과 카메라 모듈(1100c)로부터 제공된 이미지 데이터는 선택 소자(예를 들어, 멀티플렉서) 등을 통해 선택된 후, 통합된 서브 이미지 프로세서에 제공될 수 있다.Meanwhile, in some embodiments, one sub image processor may be arranged to correspond to a plurality of camera modules. For example, the sub image processor 1212a and the sub image processor 1212c are not separately implemented as shown, but integrated into one sub image processor, and the camera module 1100a and the camera module 1100c Image data provided from may be selected through a selection element (eg, multiplexer) and the like, and then provided to the integrated sub image processor.

각각의 서브 이미지 프로세서(1212a, 1212b, 1212c)에 제공된 이미지 데이터는 이미지 생성기(1214)에 제공될 수 있다. 이미지 생성기(1214)는 이미지 생성 정보(Generating Information) 또는 모드 신호(Mode Signal)에 따라 각각의 서브 이미지 프로세서(1212a, 1212b, 1212c)로부터 제공된 이미지 데이터를 이용하여 출력 이미지를 생성할 수 있다.Image data provided to each of the sub image processors 1212a, 1212b, and 1212c may be provided to the image generator 1214. The image generator 1214 may generate an output image using image data provided from each of the sub image processors 1212a, 1212b, and 1212c according to image generating information or a mode signal.

구체적으로, 이미지 생성기(1214)는 이미지 생성 정보 또는 모드 신호에 따라, 서로 다른 시야각을 갖는 카메라 모듈들(1100a, 1100b, 1100c)로부터 생성된 이미지 데이터 중 적어도 일부를 병합(merge)하여 출력 이미지를 생성할 수 있다. 또한, 이미지 생성기(1214)는 이미지 생성 정보 또는 모드 신호에 따라, 서로 다른 시야각을 갖는 카메라 모듈들(1100a, 1100b, 1100c)로부터 생성된 이미지 데이터 중 어느 하나를 선택하여 출력 이미지를 생성할 수 있다.Specifically, the image generator 1214 merges at least some of the image data generated from the camera modules 1100a, 1100b, and 1100c having different viewing angles according to image generation information or a mode signal to obtain an output image. can create In addition, the image generator 1214 may generate an output image by selecting any one of image data generated from the camera modules 1100a, 1100b, and 1100c having different viewing angles according to image generation information or a mode signal. .

몇몇 실시예에서, 이미지 생성 정보는 줌 신호(zoom signal or zoom factor)를 포함할 수 있다. 또한, 몇몇 실시예에서, 모드 신호는 예를 들어, 유저(user)로부터 선택된 모드에 기초한 신호일 수 있다.In some embodiments, the image creation information may include a zoom signal or zoom factor. Also, in some embodiments, the mode signal may be a signal based on a mode selected by a user, for example.

이미지 생성 정보가 줌 신호(줌 팩터)이고, 각각의 카메라 모듈(1100a, 1100b, 1100c)이 서로 다른 관측 시야(시야각)를 갖는 경우, 이미지 생성기(1214)는 줌 신호의 종류에 따라 서로 다른 동작을 수행할 수 있다. 예를 들어, 줌 신호가 제1 신호일 경우, 카메라 모듈(1100a)로부터 출력된 이미지 데이터와 카메라 모듈(1100c)로부터 출력된 이미지 데이터를 병합한 후, 병합된 이미지 신호와 병합에 사용하지 않은 카메라 모듈(1100b)로부터 출력된 이미지 데이터를 이용하여, 출력 이미지를 생성할 수 있다. 만약, 줌 신호가 제1 신호와 다른 제2 신호일 경우, 이미지 생성기(1214)는 이러한 이미지 데이터 병합을 수행하지 않고, 각각의 카메라 모듈(1100a, 1100b, 1100c)로부터 출력된 이미지 데이터 중 어느 하나를 선택하여 출력 이미지를 생성할 수 있다. 하지만 실시예들이 이에 제한되는 것은 아니며, 필요에 따라 이미지 데이터를 처리하는 방법은 얼마든지 변형되어 실시될 수 있다.When the image generating information is a zoom signal (zoom factor) and each of the camera modules 1100a, 1100b, and 1100c have different fields of view (viewing angles), the image generator 1214 operates differently according to the type of zoom signal. can be performed. For example, when the zoom signal is the first signal, after merging the image data output from the camera module 1100a and the image data output from the camera module 1100c, the merged image signal and the camera module not used for merging An output image may be generated using the image data output from step 1100b. If the zoom signal is a second signal different from the first signal, the image generator 1214 does not merge the image data and uses any one of the image data output from each of the camera modules 1100a, 1100b, and 1100c. You can choose to generate an output image. However, the embodiments are not limited thereto, and a method of processing image data may be modified and implemented as needed.

몇몇 실시예에서, 이미지 생성기(1214)는 복수의 서브 이미지 프로세서(1212a, 1212b, 1212c) 중 적어도 하나로부터 노출 시간이 상이한 복수의 이미지 데이터를 수신하고, 복수의 이미지 데이터에 대하여 HDR(high dynamic range) 처리를 수행함으로서, 다이나믹 레인지가 증가된 병합된 이미지 데이터를 생성할 수 있다.In some embodiments, the image generator 1214 receives a plurality of image data having different exposure times from at least one of the plurality of sub image processors 1212a, 1212b, and 1212c, and performs a high dynamic range (HDR) operation on the plurality of image data. ) processing, it is possible to generate merged image data with increased dynamic range.

카메라 모듈 컨트롤러(1216)는 각각의 카메라 모듈(1100a, 1100b, 1100c)에 제어 신호를 제공할 수 있다. 카메라 모듈 컨트롤러(1216)로부터 생성된 제어 신호는 서로 분리된 제어 신호 라인(CSLa, CSLb, CSLc)를 통해 대응되는 카메라 모듈(1100a, 1100b, 1100c)에 제공될 수 있다.The camera module controller 1216 may provide a control signal to each of the camera modules 1100a, 1100b, and 1100c. Control signals generated from the camera module controller 1216 may be provided to corresponding camera modules 1100a, 1100b, and 1100c through separate control signal lines CSLa, CSLb, and CSLc.

복수의 카메라 모듈(1100a, 1100b, 1100c) 중 어느 하나는 줌 신호를 포함하는 이미지 생성 정보 또는 모드 신호에 따라 마스터(master) 카메라(예를 들어, 1100b)로 지정되고, 나머지 카메라 모듈들(예를 들어, 1100a, 1100c)은 슬레이브(slave) 카메라로 지정될 수 있다. 이러한 정보는 제어 신호에 포함되어, 서로 분리된 제어 신호 라인(CSLa, CSLb, CSLc)를 통해 대응되는 카메라 모듈(1100a, 1100b, 1100c)에 제공될 수 있다.One of the plurality of camera modules 1100a, 1100b, and 1100c is designated as a master camera (eg, 1100b) according to image generation information including a zoom signal or a mode signal, and the remaining camera modules (eg, 1100b) For example, 1100a and 1100c) may be designated as slave cameras. Such information may be included in the control signal and provided to the corresponding camera modules 1100a, 1100b, and 1100c through separate control signal lines CSLa, CSLb, and CSLc.

줌 팩터 또는 동작 모드 신호에 따라 마스터 및 슬레이브로서 동작하는 카메라 모듈이 변경될 수 있다. 예를 들어, 카메라 모듈(1100a)의 시야각이 카메라 모듈(1100b)의 시야각보다 넓고, 줌 팩터가 낮은 줌 배율을 나타낼 경우, 카메라 모듈(1100b)이 마스터로서 동작하고, 카메라 모듈(1100a)이 슬레이브로서 동작할 수 있다. 반대로, 줌 팩터가 높은 줌 배율을 나타낼 경우, 카메라 모듈(1100a)이 마스터로서 동작하고, 카메라 모듈(1100b)이 슬레이브로서 동작할 수 있다.Camera modules operating as a master and a slave may be changed according to a zoom factor or an operation mode signal. For example, when the viewing angle of the camera module 1100a is wider than that of the camera module 1100b and the zoom factor indicates a low zoom magnification, the camera module 1100b operates as a master and the camera module 1100a operates as a slave. can act as Conversely, when the zoom factor indicates a high zoom magnification, the camera module 1100a may operate as a master and the camera module 1100b may operate as a slave.

몇몇 실시예에서, 카메라 모듈 컨트롤러(1216)로부터 각각의 카메라 모듈(1100a, 1100b, 1100c)에 제공되는 제어 신호는 싱크 인에이블 신호(sync enable) 신호를 포함할 수 있다. 예를 들어, 카메라 모듈(1100b)이 마스터 카메라이고, 카메라 모듈들(1100a, 1100c)이 슬레이브 카메라인 경우, 카메라 모듈 컨트롤러(1216)는 카메라 모듈(1100b)에 싱크 인에이블 신호를 전송할 수 있다. 이러한 싱크 인에이블 신호를 제공받은 카메라 모듈(1100b)은 제공받은 싱크 인에이블 신호를 기초로 싱크 신호(sync signal)를 생성하고, 생성된 싱크 신호를 싱크 신호 라인(SSL)을 통해 카메라 모듈들(1100a, 1100c)에 제공할 수 있다. 카메라 모듈(1100b)과 카메라 모듈들(1100a, 1100c)은 이러한 싱크 신호에 동기화되어 이미지 데이터를 어플리케이션 프로세서(1200)에 전송할 수 있다.In some embodiments, the control signal provided to each of the camera modules 1100a, 1100b, and 1100c from the camera module controller 1216 may include a sync enable signal. For example, when the camera module 1100b is a master camera and the camera modules 1100a and 1100c are slave cameras, the camera module controller 1216 may transmit a sync enable signal to the camera module 1100b. The camera module 1100b receiving such a sync enable signal generates a sync signal based on the provided sync enable signal, and transmits the generated sync signal to the camera modules (through the sync signal line SSL). 1100a, 1100c). The camera module 1100b and the camera modules 1100a and 1100c may transmit image data to the application processor 1200 in synchronization with the sync signal.

몇몇 실시예에서, 카메라 모듈 컨트롤러(1216)로부터 복수의 카메라 모듈(1100a, 1100b, 1100c)에 제공되는 제어 신호는 모드 신호에 따른 모드 정보를 포함할 수 있다. 이러한 모드 정보에 기초하여 복수의 카메라 모듈(1100a, 1100b, 1100c)은 센싱 속도와 관련하여 제1 동작 모드 및 제2 동작 모드로 동작할 수 있다. In some embodiments, a control signal provided from the camera module controller 1216 to the plurality of camera modules 1100a, 1100b, and 1100c may include mode information according to the mode signal. Based on this mode information, the plurality of camera modules 1100a, 1100b, and 1100c may operate in a first operation mode and a second operation mode in relation to sensing speed.

복수의 카메라 모듈(1100a, 1100b, 1100c)은 제1 동작 모드에서, 제1 속도로 이미지 신호를 생성(예를 들어, 제1 프레임 레이트의 이미지 신호를 생성)하여 이를 제1 속도보다 높은 제2 속도로 인코딩(예를 들어, 제1 프레임 레이트보다 높은 제2 프레임 레이트의 이미지 신호를 인코딩)하고, 인코딩된 이미지 신호를 어플리케이션 프로세서(1200)에 전송할 수 있다. 이때, 제2 속도는 제1 속도의 30배 이하일 수 있다. The plurality of camera modules 1100a, 1100b, and 1100c generate an image signal at a first rate (eg, generate an image signal having a first frame rate) in a first operation mode, and generate an image signal at a second frame rate higher than the first rate. encoding (eg, encoding an image signal having a second frame rate higher than the first frame rate) and transmitting the encoded image signal to the application processor 1200 . In this case, the second speed may be 30 times or less than the first speed.

어플리케이션 프로세서(1200)는 수신된 이미지 신호, 다시 말해서 인코딩된 이미지 신호를 내부에 구비되는 메모리(1230) 또는 어플리케이션 프로세서(1200) 외부의 스토리지(1400)에 저장하고, 이후, 메모리(1230) 또는 스토리지(1400)로부터 인코딩된 이미지 신호를 독출하여 디코딩하고, 디코딩된 이미지 신호에 기초하여 생성되는 이미지 데이터를 디스플레이할 수 있다. 예컨대 이미지 처리 장치(1210)의 복수의 서브 프로세서들(1212a, 1212b, 1212c) 중 대응하는 서브 프로세서가 디코딩을 수행할 수 있으며, 또한 디코딩된 이미지 신호에 대하여 이미지 처리를 수행할 수 있다.The application processor 1200 stores the received image signal, that is, the encoded image signal, in the internal memory 1230 or the external storage 1400 of the application processor 1200, and then the memory 1230 or storage 1200. The encoded image signal may be read and decoded from 1400, and image data generated based on the decoded image signal may be displayed. For example, a corresponding sub-processor among the plurality of sub-processors 1212a, 1212b, and 1212c of the image processing device 1210 may perform decoding and may also perform image processing on the decoded image signal.

복수의 카메라 모듈(1100a, 1100b, 1100c)은 제2 동작 모드에서, 제1 속도보다 낮은 제3 속도로 이미지 신호를 생성(예를 들어, 제1 프레임 레이트보다 낮은 제3 프레임 레이트의 이미지 신호를 생성)하고, 이미지 신호를 어플리케이션 프로세서(1200)에 전송할수 있다. 어플리케이션 프로세서(1200)에 제공되는 이미지 신호는 인코딩되지 않은 신호일 수 있다. 어플리케이션 프로세서(1200)는 수신되는 이미지 신호에 대하여 이미지 처리를 수행하거나 또는 이미지 신호를 메모리(1230) 또는 스토리지(1400)에 저장할 수 있다. The plurality of camera modules 1100a, 1100b, and 1100c generate image signals at a third rate lower than the first rate in the second operation mode (eg, image signals having a third frame rate lower than the first frame rate). generation), and transmit the image signal to the application processor 1200. An image signal provided to the application processor 1200 may be an unencoded signal. The application processor 1200 may perform image processing on a received image signal or store the image signal in the memory 1230 or the storage 1400 .

PMIC(1300)는 복수의 카메라 모듈(1100a, 1100b, 1100c) 각각에 전력, 예컨대 전원 전압을 공급할 수 있다. 예를 들어, PMIC(1300)는 어플리케이션 프로세서(1200)의 제어 하에, 파워 신호 라인(PSLa)을 통해 카메라 모듈(1100a)에 제1 전력을 공급하고, 파워 신호 라인(PSLb)을 통해 카메라 모듈(1100b)에 제2 전력을 공급하고, 파워 신호 라인(PSLc)을 통해 카메라 모듈(1100c)에 제3 전력을 공급할 수 있다.The PMIC 1300 may supply power, eg, a power supply voltage, to each of the plurality of camera modules 1100a, 1100b, and 1100c. For example, the PMIC 1300 supplies first power to the camera module 1100a through the power signal line PSLa under the control of the application processor 1200, and supplies the first power to the camera module 1100a through the power signal line PSLb. 1100b) and third power may be supplied to the camera module 1100c through the power signal line PSLc.

PMIC(1300)는 어플리케이션 프로세서(1200)로부터의 전력 제어 신호(PCON)에 응답하여, 복수의 카메라 모듈(1100a, 1100b, 1100c) 각각에 대응하는 전력을 생성하고, 또한 전력의 레벨을 조정할 수 있다. 전력 제어 신호(PCON)는 복수의 카메라 모듈(1100a, 1100b, 1100c)의 동작 모드 별 전력 조정 신호를 포함할 수 있다. 예를 들어, 동작 모드는 저전력 모드(low power mode)를 포함할 수 있으며, 이때, 전력 제어 신호(PCON)는 저전력 모드로 동작하는 카메라 모듈 및 설정되는 전력 레벨에 대한 정보를 포함할 수 있다. 복수의 카메라 모듈(1100a, 1100b, 1100c) 각각에 제공되는 전력들의 레벨은 서로 동일하거나 또는 서로 상이할 수 있다. 또한, 전력의 레벨은 동적으로 변경될 수 있다.The PMIC 1300 may generate power corresponding to each of the plurality of camera modules 1100a, 1100b, and 1100c in response to a power control signal (PCON) from the application processor 1200, and may also adjust the level of the power. . The power control signal PCON may include a power control signal for each operation mode of the plurality of camera modules 1100a, 1100b, and 1100c. For example, the operation mode may include a low power mode, and in this case, the power control signal PCON may include information about a camera module operating in the low power mode and a set power level. Levels of the powers provided to each of the plurality of camera modules 1100a, 1100b, and 1100c may be the same or different from each other. Also, the level of power can be dynamically changed.

도 1 내지 도 16을 이용하여 설명한 전처리 프로세서(192), 이미지 프로세서(194) 및 후처리 프로세서(196)는 도 14의 카메라 모듈(1100) 내 로직(1144)에 구현될 수 있고, 또는 도 17의 서브 이미지 프로세서(1212)에 구현도리 수 있고, 또는 이미지 생성기(1214)에 구현될 수 있다. 도 1 내지 도 16을 이용하여 설명한 어플리케이션 프로세서(200)는 도 17의 어플리케이션 프로세서(1200)에 대응될 수 있다.The pre-processor 192, image processor 194, and post-processor 196 described with reference to FIGS. 1 to 16 may be implemented in the logic 1144 in the camera module 1100 of FIG. 14 or FIG. 17 may be implemented in the sub-image processor 1212 of or may be implemented in the image generator 1214. The application processor 200 described using FIGS. 1 to 16 may correspond to the application processor 1200 of FIG. 17 .

이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였으나, 본 발명은 상기 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 제조될 수 있으며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.Although the embodiments of the present invention have been described with reference to the accompanying drawings, the present invention is not limited to the above embodiments and can be manufactured in a variety of different forms, and those skilled in the art in the art to which the present invention belongs A person will understand that the present invention may be embodied in other specific forms without changing the technical spirit or essential features. Therefore, the embodiments described above should be understood as illustrative in all respects and not limiting.

100: 이미지 센서 110: 센싱부
192: 전처리 프로세서 194: 이미지 프로세서
196: 후처리 프로세서 200: 어플리케이션 프로세서
220: 이미지 신호 프로세서 240: 프로세서
100: image sensor 110: sensing unit
192: pre-processor 194: image processor
196: post-processing processor 200: application processor
220: image signal processor 240: processor

Claims (10)

로우 이미지 데이터를 생성하는 센싱부;
상기 로우 이미지 데이터에 제1 함수를 적용하여 제1 이미지 데이터를 생성하는 전처리 프로세서;
상기 제1 이미지 데이터를 입력받아 기계 학습 모델을 이용하여 제2 이미지 데이터를 생성하는 이미지 프로세서; 및
상기 제2 이미지 데이터에 제2 함수를 적용하여 제3 이미지 데이터를 생성하는 후처리 프로세서를 포함하고,
상기 제1 함수는 비선형 함수인 이미지 센서.
a sensing unit generating raw image data;
a pre-processor generating first image data by applying a first function to the raw image data;
an image processor receiving the first image data and generating second image data using a machine learning model; and
a post-processor generating third image data by applying a second function to the second image data;
The first function is a non-linear function image sensor.
제 1항에 있어서,
상기 제2 함수는 비선형 함수인 이미지 센서.
According to claim 1,
The second function is a non-linear function image sensor.
제 1항에 있어서,
상기 제2 함수는 상기 제1 함수의 역함수인 이미지 센서.
According to claim 1,
The second function is an inverse function of the first function image sensor.
복수의 픽셀로부터 생성된 로우 이미지 데이터에 제1 함수를 적용하여 제1 이미지 데이터를 생성하는 전처리 프로세서와,
상기 제1 이미지 데이터를 입력받아 기계 학습 모델을 이용하여 제2 이미지 데이터를 생성하는 이미지 프로세서와,
상기 제2 이미지 데이터에 제2 함수를 적용하여 제3 이미지 데이터를 생성하는 후처리 프로세서를 포함하는 이미지 센서; 및
상기 제3 이미지 데이터를 입력 이미지 데이터로 입력받아, 상기 입력 이미지 데이터에 제3 함수를 적용하여 출력 이미지 데이터를 출력하는 이미지 신호 프로세서를 포함하고,
상기 제3 함수는 비선형 함수인 이미지 처리 시스템.
a pre-processor generating first image data by applying a first function to raw image data generated from a plurality of pixels;
an image processor receiving the first image data and generating second image data using a machine learning model;
an image sensor including a post-processor configured to generate third image data by applying a second function to the second image data; and
an image signal processor receiving the third image data as input image data and outputting output image data by applying a third function to the input image data;
The third function is a non-linear function image processing system.
제 4항에 있어서,
상기 제1 함수는 비선형 함수인 이미지 처리 시스템.
According to claim 4,
The first function is a non-linear function image processing system.
제 4항에 있어서,
상기 제2 함수는 비선형 함수인 이미지 처리 시스템.
According to claim 4,
The second function is a non-linear function image processing system.
제 4항에 있어서,
상기 제2 함수는 상기 제1 함수의 역함수인 이미지 처리 시스템.
According to claim 4,
The second function is an inverse function of the first function.
제 4항에 있어서,
상기 제3 함수는 상기 제1 함수와 동일한 이미지 처리 시스템.
According to claim 4,
The third function is the same as the first function.
제 4항에 있어서,
상기 이미지 센서는, 제어 신호에 따라 상기 복수의 픽셀로부터 생성된 상기 로우 이미지 데이터를 상기 기계 학습 모델을 이용하여 로우 입력 이미지 데이터를 생성하고, 상기 로우 입력 이미지를 출력하는 이미지 처리 시스템.
According to claim 4,
wherein the image sensor generates raw input image data by using the machine learning model from the raw image data generated from the plurality of pixels according to a control signal, and outputs the raw input image.
제 4항에 있어서,
외부로부터 상기 제3 함수를 제공받고, 상기 제3 함수로부터 상기 제1 함수 및 상기 제2 함수를 계산하고, 상기 이미지 센서에 상기 제1 함수 및 상기 제2 함수를 전달하는 프로세서를 더 포함하는 이미지 처리 시스템.
According to claim 4,
and a processor receiving the third function from the outside, calculating the first function and the second function from the third function, and transmitting the first function and the second function to the image sensor. processing system.
KR1020220011965A 2021-11-08 2022-01-27 Image sensor and image processing system KR20230067440A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US18/051,730 US20230145321A1 (en) 2021-11-08 2022-11-01 Image sensor and image processing system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020210152344 2021-11-08
KR20210152344 2021-11-08

Publications (1)

Publication Number Publication Date
KR20230067440A true KR20230067440A (en) 2023-05-16

Family

ID=86545973

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220011965A KR20230067440A (en) 2021-11-08 2022-01-27 Image sensor and image processing system

Country Status (1)

Country Link
KR (1) KR20230067440A (en)

Similar Documents

Publication Publication Date Title
CN104023173A (en) Solid-state imaging device and camera module
US20220182589A1 (en) Image device and operation method of image device
US20220385841A1 (en) Image sensor including image signal processor and operating method of the image sensor
US11616921B2 (en) Image sensor and operating method thereof
KR20230067440A (en) Image sensor and image processing system
US11412197B2 (en) Electronic device including image sensor
US11627250B2 (en) Image compression method, encoder, and camera module including the encoder
US20230145321A1 (en) Image sensor and image processing system
KR20220037204A (en) Image signal processor and electronic device and electronic system comprising the same
US20240005448A1 (en) Imaging device and image processing method
US20230199345A1 (en) Image sensing device, method for sensing image, and electronic device
US11601612B2 (en) Imaging device and method of operating the same
US20230073138A1 (en) Image sensor, image processing system including the same, and image processing method
US20230008501A1 (en) Image sensor and operating method thereof
US20230254474A1 (en) Image sensor, processor of image sensor, and image processing method
US20230156363A1 (en) Amplifier, analog-to-digital converter including the same, image sensing device, and signal processing method thereof
US11528440B2 (en) Digital pixel sensor and analog digital converter
US11570479B2 (en) Camera module, image processing device and image compression method
US20230011310A1 (en) Image sensor including pixel array
US20230011755A1 (en) Image signal processor, operation method of image signal processor, and image sensor device including image signal processor
US20230143333A1 (en) Image sensor, application processor and image sensing device
KR20230073069A (en) Amplifier, analog-to-digital converter including same, image sensing device, and signal processing method of image sensing device
KR20230000673A (en) Image processing device for noise reduction using dual conversion gain and operation method thereof
KR20220161124A (en) Image sensor including image signal processor and operating method thereof
JP2023012442A (en) Image sensor and operation method thereof