KR20180122548A - 이미지를 처리하는 방법 및 장치 - Google Patents
이미지를 처리하는 방법 및 장치 Download PDFInfo
- Publication number
- KR20180122548A KR20180122548A KR1020180042920A KR20180042920A KR20180122548A KR 20180122548 A KR20180122548 A KR 20180122548A KR 1020180042920 A KR1020180042920 A KR 1020180042920A KR 20180042920 A KR20180042920 A KR 20180042920A KR 20180122548 A KR20180122548 A KR 20180122548A
- Authority
- KR
- South Korea
- Prior art keywords
- image
- pixel
- low resolution
- pixel shift
- filter
- Prior art date
Links
- 238000012545 processing Methods 0.000 title claims abstract description 172
- 238000000034 method Methods 0.000 title claims abstract description 69
- 230000009467 reduction Effects 0.000 claims description 55
- 238000001914 filtration Methods 0.000 claims description 24
- 230000001419 dependent effect Effects 0.000 claims description 22
- 238000009499 grossing Methods 0.000 claims description 17
- 230000008859 change Effects 0.000 claims description 13
- 230000002457 bidirectional effect Effects 0.000 claims description 5
- 230000000875 corresponding effect Effects 0.000 description 51
- 239000011159 matrix material Substances 0.000 description 36
- 238000007781 pre-processing Methods 0.000 description 29
- 238000010586 diagram Methods 0.000 description 22
- 238000004364 calculation method Methods 0.000 description 18
- 238000003672 processing method Methods 0.000 description 15
- 230000009466 transformation Effects 0.000 description 14
- 230000006870 function Effects 0.000 description 13
- 238000006243 chemical reaction Methods 0.000 description 11
- 238000012805 post-processing Methods 0.000 description 11
- 238000011156 evaluation Methods 0.000 description 9
- 238000010606 normalization Methods 0.000 description 9
- 238000012937 correction Methods 0.000 description 8
- 238000007796 conventional method Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 6
- 238000013459 approach Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 238000005070 sampling Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 3
- 238000000844 transformation Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000002146 bilateral effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 238000012015 optical character recognition Methods 0.000 description 2
- 238000013139 quantization Methods 0.000 description 2
- 230000003252 repetitive effect Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 1
- 238000010420 art technique Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 229910052709 silver Inorganic materials 0.000 description 1
- 239000004332 silver Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4053—Scaling of whole images or parts thereof, e.g. expanding or contracting based on super-resolution, i.e. the output image resolution being higher than the sensor resolution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
-
- G06T5/002—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/80—Geometric correction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/40—Analysis of texture
- G06T7/41—Analysis of texture based on statistical description of texture
- G06T7/44—Analysis of texture based on statistical description of texture using image operators, e.g. filters, edge density metrics or local histograms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/30—Noise filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/32—Normalisation of the pattern dimensions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20172—Image enhancement details
- G06T2207/20182—Noise reduction or smoothing in the temporal domain; Spatio-temporal filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30168—Image quality inspection
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Probability & Statistics with Applications (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Processing (AREA)
Abstract
본 개시의 일 실시예에 따른 이미지를 처리하는 방법은, 단일 장면에 대한 복수의 저해상도 이미지 간의 서로 대응되는 부분에 포함된 복수의 픽셀의 움직임 정보를 나타내는 픽셀 쉬프트 셋을 획득하고, 픽셀 쉬프트 셋으로부터 정수 부분 및 분수 부분을 분류하여, 정수 픽셀 쉬프트 셋 및 분수 픽셀 쉬프트 셋을 생성하며, 분수 픽셀 쉬프트 셋에 기초하여, 픽셀에 적용되는 필터 가중치 값을 포함하는 기 저장된 복수의 필터 셋 중 복수의 픽셀에 대응되는 필터 셋을 선택하고, 복수의 저해상도 이미지, 선택된 필터 셋 및 정수 픽셀 쉬프트 셋을 기초로 단일 장면에 대한 고해상도 이미지를 획득할 수 있다.
Description
개시된 실시예는 이미지를 처리하는 방법, 이미지를 처리하는 장치 및 이미지를 처리하는 방법을 실행하기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체에 관한 것이다.
고해상도의 이미지에 대한 사용자의 관심이 증가함에 따라, 보다 높은 화질을 갖는 고해상도 이미지에 대한 다양한 기술들이 개발되고 있다. 이미지의 품질을 향상시키기 위한 종래 기술은 반복적인 접근법은 통한 이미지 처리 및 비반복적인 접근을 통한 이미지 처리로 분류될 수 있다. 종래의 기술 중 반복적인 접근법은 계산의 복잡도가 높아, 계산 비용이 많이 소요되고, 처리가 느리다는 문제가 있다. 또한, 비반복적 접근법은 계산의 복잡도가 상대적으로 낮은 반면에, 분수 픽셀 이동을 고려하지 않아, 획득된 이미지의 품질이 저하된다는 문제가 있다. 이에 따라, 종래의 문제점을 개선하기 위한 이미지 처리 기술에 대한 개발이 필요한 실정이다.
개시된 실시예는, 이미지 데이터의 손실을 최소화하면서, 이미지의 품질을 향상시킬 수 있는 이미지 처리 방법 및 장치를 제공하고자 한다.
일 실시예에 따른 이미지를 처리하는 방법은, 단일 장면에 대한 복수의 저해상도 이미지 간의 서로 대응되는 부분에 포함된 복수의 픽셀의 움직임 정보를 나타내는 픽셀 쉬프트 셋을 획득하는 단계; 픽셀 쉬프트 셋으로부터 정수 부분 및 분수 부분을 분류하여, 정수 픽셀 쉬프트 셋 및 분수 픽셀 쉬프트 셋을 생성하는 단계; 분수 픽셀 쉬프트 셋에 기초하여, 픽셀에 적용되는 필터 가중치 값을 포함하는 기 저장된 복수의 필터 셋 중 상기 복수의 픽셀에 대응되는 필터 셋을 선택하는 단계; 및 복수의 저해상도 이미지, 선택된 필터 셋 및 정수 픽셀 쉬프트 셋을 기초로 단일 장면에 대한 고해상도 이미지를 획득하는 단계를 포함할 수 있다.
일 실시예에 따른 이미지를 처리하는 방법에 있어서, 분수 픽셀 쉬프트 셋을 생성하는 단계는, 복수의 픽셀의 분수 쉬프트 값 중 기 설정된 범위의 값을 갖는 분수 쉬프트 값을 선택하는 단계; 및 선택된 분수 픽셀 쉬프트를 조합하여, 분수 픽셀 쉬프트 셋을 생성하는 단계를 포함할 수 있다.
일 실시예에 따른 이미지를 처리하는 방법에 있어서, 필터 셋을 선택하는 단계는, 기 저장된 복수의 필터 셋 중 복수의 픽셀에 대응되는 필터 셋을 분수 픽셀 쉬프트 셋 및 기 설정된 정규화기(regularizer)에 기초하여 선택할 수 있다.
일 실시예에 따른 이미지를 처리하는 방법에 있어서, 기 저장된 복수의 필터 셋의 개수는, 복수의 저해상도 이미지 간의 서로 대응되는 부분에 포함된 복수의 픽셀의 적어도 하나의 픽셀 쉬프트 일치 조건에 기초하여 결정될 수 있다.
일 실시예에 따른 이미지를 처리하는 방법에 있어서, 기 저장된 복수의 필터 셋은, 비-방향성 필터 셋 및 방향성 필터 셋을 포함하고, 필터 셋을 선택하는 단계는, 복수의 저해상도 이미지 간의 서로 대응되는 부분의 텍스쳐가 방향성을 갖는지 여부 및 분수 픽셀 쉬프트 셋에 기초하여 필터 셋을 선택할 수 있다.
일 실시예에 따른 이미지를 처리하는 방법은, 복수의 저해상도 이미지의 픽셀에 대해 노이즈 모델, 부분의 크기, 인접한 이미지 부분에 대한 탐색 반경 및 픽셀 밝기- 픽셀 노이즈 표준 편차 관계를 포함하는 노이즈 감소 파라미터를 결정하는 단계; 복수의 저해상도 이미지의 픽셀의 밝기의 변화에 기초하여 텍스처 의존적 노이즈 감소 계수를 획득하는 단계; 픽셀 밝기-픽셀 노이즈 표준 편차 관계, 텍스처 의존적 노이즈 감소 계수 및 사용자에 의해 기 설정된 노이즈 감소 계수를 사용하여 픽셀 노이즈 표준 편차의 추정값을 결정하는 단계; 및 복수의 저해상도 이미지에 노이즈 감소 파라미터 및 픽셀 노이즈 표준 편차의 추정값을 기초로, 3차원 노이즈 감소(3Dimensional Noise Reduction)를 수행하여 노이즈 감소된 복수의 저해상도 이미지를 획득하는 단계를 더 포함하고, 픽셀 쉬프트 셋은, 노이즈 감소된 복수의 저해상도 이미지로부터 획득될 수 있다.
일 실시예에 따른 이미지를 처리하는 방법에 있어서, 픽셀 쉬프트 셋을 기초로 픽셀 쉬프트 셋에 포함된 픽셀 쉬프트 값의 정확도를 나타내는 폴백 맵을 생성하는 단계; 및 노이즈 감소된 복수의 저해상도 이미지의 텍스처 방향을 결정하는 단계를 더 포함하고, 필터 셋을 선택하는 단계는, 기 저장된 복수의 필터 셋 중 복수의 픽셀에 대응되는 필터 셋을 폴백 맵, 분수 픽셀 쉬프트 셋 및 텍스처 방향에 기초하여 선택할 수 있다.
일 실시예에 따른 이미지를 처리하는 방법에 있어서, 상기 단일 장면에 대한 복수의 저해상도 이미지는 RGB 이미지이다.
일 실시예에 따른 이미지를 처리하는 방법에 있어서, 상기 단일 장면에 대한 복수의 저해상도 이미지는 베이어(bayer) 이미지이다.
일 실시예에 따른 이미지를 처리하는 방법에 있어서, RGB 이미지의 포맷을 갖는 고해상도 이미지를 YUV 이미지로 변환하는 단계; YUV 이미지에 대해, 채널 Y 에 대한 픽셀 표준 편차 맵을 획득하는 단계; 픽셀 표준 편차 맵에 스무딩(smoothing)을 수행하여 획득된 참조 채널을 기초로 채널 U 및 채널 V에 교차 양방향 필터링(cross bilinear filtering)을 수행하는 단계; 및 교차 양방향 필터링이 적용된 YUV 이미지를 RGB 이미지의 포맷으로 변환하여 후처리된 고해상도 이미지를 획득하는 단계를 더 포함할 수 있다.
일 실시예에 따른 이미지를 처리하는 장치는, 단일 장면에 대한 복수의 저해상도 이미지 간의 서로 대응되는 부분에 포함된 복수의 픽셀의 움직임 정보를 나타내는 픽셀 쉬프트 셋을 획득하고, 픽셀 쉬프트 셋으로부터 정수 부분 및 분수 부분을 분류하여, 정수 픽셀 쉬프트 셋 및 분수 픽셀 쉬프트 셋을 생성하며, 분수 픽셀 쉬프트 셋에 기초하여, 픽셀에 적용되는 필터 가중치 값을 포함하는 기 저장된 복수의 필터 셋 중 복수의 픽셀에 대응되는 필터 셋을 선택하고, 복수의 저해상도 이미지, 선택된 필터 셋 및 정수 픽셀 쉬프트 셋을 기초로 단일 장면에 대한 고해상도 이미지를 획득하는 적어도 하나의 프로세서; 및 복수의 필터 셋을 저장하는 메모리를 포함할 수 있다.
도 1은 일 실시예에 따른 이미지 처리 장치의 블록도이다.
도 2는 다른 실시예에 따라 이미지 텍스쳐 방향성을 고려하여, 단일 장면의 저해상도 이미지로부터 고해상도 이미지를 획득하는 이미지 처리 장치의 블록도이다.
도 3은 다른 실시예에 따라 노이즈 및 픽셀 쉬프트의 추정치 등의 제약 조건을 고려하여, 단일 장면의 저해상도 이미지로부터 고해상도 이미지를 획득하는 이미지 처리 장치의 블록도이다.
도 4는 일 실시예에 따른 이미지 처리 장치가 텍스처 방향 추정 시 벡터를 축소하는 방법을 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 이미지 처리 방법에 따라 원본 베이어 이미지의 픽셀들을 개별 컬러 채널로 분할하는 방법을 설명하기 위한 도면이다.
도 6은 일 실시예에 따른 이미지 처리 방법을 설명하기 위한 흐름도이다.
도 7은 일 실시예에 따른 이미지 처리 장치가 사용자의 선택에 기초하여 필터셋을 선택하는 방법을 설명하기 위한 도면이다.
도 8은 일 실시예에 따른 이미지 처리 장치가 학습 네트워크 모델을 이용하여 단일 장면의 저해상도 이미지로부터 고해상도 이미지를 획득하는 방법을 설명하기 위한 도면이다.
도 9는 다른 실시예에 따라 단일 장면의 저해상도 이미지로부터 고해상도 이미지를 획득하는 이미지 처리 장치의 블록도이다.
도 10은 일 실시예에 따른 적어도 하나의 프로세서를 설명하기 위한 도면이다.
도 11은 일 실시예에 따른 데이터 학습부의 블록도이다.
도 12는 일 실시예에 따른 데이터 인식부의 블록도이다.
도 13은 일 실시예에 따른 서버에 구비된 학습 네트워크 모델을 이용하여 이미지 처리 장치가 복수의 저해상도 이미지로부터 고해상도 이미지를 획득하는 방법을 설명하기 위한 도면이다.
도 2는 다른 실시예에 따라 이미지 텍스쳐 방향성을 고려하여, 단일 장면의 저해상도 이미지로부터 고해상도 이미지를 획득하는 이미지 처리 장치의 블록도이다.
도 3은 다른 실시예에 따라 노이즈 및 픽셀 쉬프트의 추정치 등의 제약 조건을 고려하여, 단일 장면의 저해상도 이미지로부터 고해상도 이미지를 획득하는 이미지 처리 장치의 블록도이다.
도 4는 일 실시예에 따른 이미지 처리 장치가 텍스처 방향 추정 시 벡터를 축소하는 방법을 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 이미지 처리 방법에 따라 원본 베이어 이미지의 픽셀들을 개별 컬러 채널로 분할하는 방법을 설명하기 위한 도면이다.
도 6은 일 실시예에 따른 이미지 처리 방법을 설명하기 위한 흐름도이다.
도 7은 일 실시예에 따른 이미지 처리 장치가 사용자의 선택에 기초하여 필터셋을 선택하는 방법을 설명하기 위한 도면이다.
도 8은 일 실시예에 따른 이미지 처리 장치가 학습 네트워크 모델을 이용하여 단일 장면의 저해상도 이미지로부터 고해상도 이미지를 획득하는 방법을 설명하기 위한 도면이다.
도 9는 다른 실시예에 따라 단일 장면의 저해상도 이미지로부터 고해상도 이미지를 획득하는 이미지 처리 장치의 블록도이다.
도 10은 일 실시예에 따른 적어도 하나의 프로세서를 설명하기 위한 도면이다.
도 11은 일 실시예에 따른 데이터 학습부의 블록도이다.
도 12는 일 실시예에 따른 데이터 인식부의 블록도이다.
도 13은 일 실시예에 따른 서버에 구비된 학습 네트워크 모델을 이용하여 이미지 처리 장치가 복수의 저해상도 이미지로부터 고해상도 이미지를 획득하는 방법을 설명하기 위한 도면이다.
이하에서는 첨부한 도면을 참조하여 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 실시예를 상세히 설명한다. 그러나 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본 개시에 기재된 실시예 및 첨부된 도면은 발명의 다양한 실시예 중 일부를 통해 발명을 설명하기 위한 것이며, 개시에 기재된 실시예 및 첨부된 도면만으로 발명이 한정되는 것은 아니다.
명세서에서 사용된 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 용어들에 의해 한정되어서는 안 된다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
용어 "제 1", "제 2"등은 본 명세서의 구성 요소들에 사용될 수 있지만, 이러한 구성 요소들은 이들 용어들로 제한되는 것으로 해석되는 것이 아닌, 하나의 요소를 다른 요소와 구별하기 위해 사용될 수 있다.
또한, 본 명세서에서 사용되는 "포함하다"라는 용어는 특징, 값, 동작, 구성 요소 및 이들의 그룹의 추가를 배제하지 않는다.
첨부된 도면은 발명의 일 실시예를 설명하기 위하여 개략적으로 도시될 수 있으며, 몇몇 치수는 보다 명확한 표현을 위해 과장될 수 있다. 이와 유사하게, 도면의 상당 부분은 임의로 표현될 수 있다.
본 개시에서 사용되는 "부" 또는 "모듈"이라는 용어는 용어가 사용된 문맥에 따라서 소프트웨어, 하드웨어 또는 그 조합을 포함할 수 있는 것으로 해석되어야 한다. 예를 들어, 소프트웨어는 기계어, 펌웨어(firmware), 임베디드 코드(embedded code), 및 애플리케이션 소프트웨어일 수 있다. 또 다른 예로, 하드웨어는 회로, 프로세서, 컴퓨터, 집적 회로, 집적 회로 코어, 센서, 멤스(MEMS; Micro-Electro-Mechanical System), 수동 디바이스, 또는 그 조합일 수 있다.
원본의 고해상도 이미지 를 알고 있다고 가정하는 경우, 저해상도 이미지들, ,, ... 는 입력 이미지의 변환 및 연속적인 다운-샘플링을 수행함으로써 도출될 수 있다. 이 때, 변환은 투영 변환(projective transformation) 또는 아핀 변환(affine transformation)일 수 있으나, 이는 일 예일 뿐, 다른 연속 좌표 변환이 사용될 수도 있다. 변환은 저해상도 입력 이미지들을 촬영하는 순간 사이의 카메라의 움직임에 의해 야기될 수 있다. 또한, 변환은 프레임 내에서의 객체들의 이동에 의해 부분적으로 야기될 수도 있다. 실제 광학 시스템에 의해 저해상도 이미지 촬영 시, 변환 및 다운 샘플링이 이상적인 고해상도 이미지에 적용되는 경우, PSF(point spread function)에 기초하여 광학 시스템의 스무딩(smoothing)이 수행될 수도 있다. 저해상도 이미지들은 다음의 수학식 1에 기초하여 고해상도 이미지로부터 획득될 수 있다.
[수학식 1]
상기의 수학식 1에서, 는 다운 샘플링 연산자이고, 는 스무딩(smoothing) 연산자이며, 는 k 번째 이미지를 얻기 위한 변환 연산자이고, 는 노이즈이다. 연산자는 실험적으로 또는 이론적으로 광학 시스템의 디테일한 디스크립션(description)을 기반으로 추정되거나 결과 이미지에 대한 품질 기준을 기반으로 대략적으로(approximately) 계산될 수 있다.
변환 연산자 는 쉬프트 추정 방법을 이용하여 도출될 수 있다. 이 경우, 벡터화된 저해상도 이미지를 및 로 가정하도록 한다. 2 차원 형태의 원본 이미지가 행렬 로 표현되는 경우, 벡터화 된 이미지는 로 표현 될 수 있다.
크기의 이미지를 세로 방향으로 배 그리고 가로 방향으로 배에 따라 압축한 다운 샘플링 행렬 는 형태를 가지며, 여기서는 크로네 프로덕트(Kronecker product)이고, 는 크기 행렬의 단위 행렬이며,은 행렬의 m번째 컬럼이다. 따라서, 상기의 행렬을 두배 줄이고, 행렬 을 구하려면 벡터화 된 원본 행렬에 행렬을 곱하고, 길이 4의 벡터로부터 크기 2x2의 행렬로의 변환을 수행해야 한다.
따라서, 크기의 고해상도 이미지 및 크기의 저해상도 이미지에 대해, 행렬 및 는 크기를 가지며, 행렬는 크기 를 가질 수 있다. 또한 일반성을 잃지 않기 위해 고해상도 이미지가 크기를 갖는 정사각형 이미지로 제한될 수 있다.
저해상도 이미지 형성 모델에 대해, 고해상도 이미지를 얻는 문제는 하기의 수학식 2에 따른 함수를 최소화하는 것으로 정의될 수 있다.
[수학식 2]
이 문제는 다른 법칙에 따라 정의될 수 있지만, 해를 구하는 가장 쉬운 방법은 이후에서부터 사용될 제곱 법칙이다.
일 실시 예에서, 스무딩 연산자 는 전술한 실시예와 동일하고 (즉, 스무딩 수행되지 않음), 변환 연산자는 수직 방향 의 픽셀 및 수평 방향의 픽셀에 의한 순환 쉬프트일 수 있다. 이 때, 이 연산자의 행렬은
본 실시예에서, 쉬프트
를 획득한 것으로 가정하도록 한다. 이 때, 원본 이미지는 저해상도 이미지들의 픽셀로부터 간단하게 "조합"될 수 있다.
한편, 일부 이미지의 이동이 반복되는 경우, 전체 재구성이 불가능할 수 있다. 전체 재구성이 불가능하거나 작업이 불량한 경우 고해상도 이미지 획득을 위해 추가 제한이 부과될 수 있다. 본 개시에서는 추가 제한을 정규화 텀(reguralizing term) R(“regularizer”로도 설명됨)을 이용하여 적용할 수 있다. R로 정의될 수 있는 추가 제한은 상기 수학식 2에 부과되어, 하기의 수학식 3과 같이 도출될 수 있다.
[수학식 3]
일 실시예에 따른 이미지 처리 방법은 반복적인(iterative) 방법을 사용하지 않고, 단일 장면에 대한 저해상도 이미지 셋으로부터 고해상도 이미지를 획득할 수 있다. 이 때, Tikhonov 정규화가 사용될 수 있다. 예를 들어, 정규화 문제는 정규화기 를 기초로 해결될 수 있다. 여기에서, 는 스칼라 정규화 파라미터이며, 는 연산자이다. 이러한 경우, 최적화된 함수는 다음의 수학식에 기초하여 작성될 수 있다.
[수학식 4]
이 유형의 최적화 문제는 다음의 수학식 5으로 표현되는 분석 해를 가질 수 있다.
[수학식 5]
[수학식 6]
수학식 6에서, 는 번째 입력된 저해상도 이미지에서의 좌표 인 픽셀이며,는 다운 샘플링 계수에 대응되는 정수(고해상도 이미지의 크기가 저해상도 이미지의 크기와 몇 배 다른 지 여부를 나타냄)이다. 가중 계수의 값은 행렬에서 좌표인 엘리먼트로부터 도출될 수 있다. 즉, 가중 계수의 값 은 다음의 수학식 7에 따라 나타낼 수 있다.
[수학식 7]
수학식 7에서 괄호는 행렬의 해당 엘리먼트의 샘플링을 나타낸다.
한편, 가능한 모든 쉬프트에 대해 발생 가능한 모든 문제의 솔루션을 저장하는 것은 비효율적일 수 있다. 특히, 이는 현재 사용되지 않는 방법에 대해서도 저장 공간을 필요로 한다는 점에서 문제가 될 수 있다. 이에 따라, 일 실시예에 따른 방법은 솔루션 제공을 위해 두 개의 제약 조건(constraint)를 부과할 수 있다. 첫번째로, 개시된 실시예에서는 고해상도 이미지의 모든 픽셀의 동일한 쉬프트에 대응되는 변환만을 고려하도록 한다. 두번째로, 개시된 실시예에서는 엘리먼트의 합이 0인 넌-제로 코어 를 갖는 컨볼루션을 나타내는 연산자 ,만을 고려하도록 한다. 여기에서, 예를 들어, 일 수 있다.
첫번째 제약 조건에 의해 크기 의 행렬이 아닌 수직 및 수평 방향의 쉬프트 쌍(수직 및 수평 방향의)에 대한 솔루션 매개 변수 가 특정될 수 있다. 솔루션 매개 변수 는 다음의 수학식 8에 기초하여 나타낼 수 있다.
[수학식 8]
개시된 실시예에 따르면, 로부터 단지 몇개의 엘리먼트만을 저장하는 것으로, 매우 정확한 근사 가 제공될 수 있다. 즉, 와 같은 일부 셋 에 대해서만 결과를 저장함으로써, 매우 정확한 근사 가 획득될 수 있다. 또한, 이를 통해, 저해상도 이미지에서 픽셀들 간에 서로 연관된 쉬프트가 이미지의 모든 픽셀에 대해 동일하다는 초기 가정이 필요하지 않다는 것을 확인할 수 있다.
개시된 실시예에 따르면, 저해상도 이미지에서 크기 범위의 인접한 픽셀만이 다른 저해상도 이미지의 대응 픽셀과 관련하여 동일한 쉬프트를 갖는 것으로 가정함으로써 저해상도 이미지 셋으로부터 고해상도 이미지를 획득할 수 있다.
이하, 첨부 된 도면을 참조하여 개시된 기술적 사상에 대한 실시 예를 보다 상세하게 설명한다.
도 1은 일 실시예에 따른 이미지 처리 장치(100)의 블록도이다.
도 1을 참조하면, 일 실시예에 따른 이미지 처리 장치(100)는 쉬프트 추정 유닛(101), 필터 선택 유닛(102), 필터 뱅크(103) 및 고해상도 이미지 획득 유닛(104)을 포함할 수 있다. 다만, 이미지 처리 장치(100)의 일 실시예일 뿐, 이미지 처리 장치(100)를 구성하는 구성 요소가 전술한 예에 한정되는 것은 아니다. 다른 예에 따라, 이미지 처리 장치(100)는 전술한 구성 요소들 보다 더 적은 구성 요소를 포함하거나, 더 많은 구성 요소를 포함할 수도 있다.
쉬프트 추정 유닛(101)은 단일 장면에 대한 복수의 저해상도 이미지로 구성된 저해상도 이미지 셋(10)을 수신할 수 있다. 쉬프트 추정 유닛(101)은 저해상도 이미지 셋(10)의 모든 픽셀에 대해 픽셀 쉬프트 셋을 획득할 수 있다. 픽셀 쉬프트 셋은 복수의 저해상도 이미지 간의 서로 대응되는 부분에 포함된 픽셀들의 움직임에 관한 정보를 포함할 수 있다.
일 실시예에 따른 쉬프트 추정 유닛(101)은 첫번째 저해상도 이미지에 포함된 픽셀들에 대한 쉬프트 값을 0으로 가정하고, 다른 저해상도 이미지의 픽셀들에 대한 쉬프트 값을 첫번째 저해상도 이미지를 기준으로 결정할 수 있다. 단일 장면의 저해상도 이미지 셋(10)이 RGB 이미지들로 구성된 경우, 좌표 가 있는 출력 이미지의 각 픽셀에 대해 다음 작업이 수행될 수 있다. 여기에서, s는 다운-샘플링 계수를 나타낸다.
이후, 쉬프트 추정 유닛 (101)은 각각의 픽셀 쉬프트에 대한 정수 픽셀 쉬프트를 계산함으로써 정수 픽셀 쉬프트 셋을 획득할 수 있다. 여기에서, 정수 픽셀 쉬프트 셋은 저해상도 이미지에 대한 픽셀 쉬프트 셋에 대응될 수 있다.
또한, 쉬프트 추정 유닛(101)은 각각의 픽셀 쉬프트에 대해 분수 픽셀 쉬프트를 계산함으로써, 분수 픽셀 쉬프트 셋을 획득할 수 있다. 일 실시예에 따른 분수 픽셀 쉬프트를 구성하는 값들은 0에서 1 사이의 값을 가질 수 있다. 여기에서, 분수 픽셀 쉬프트 셋은 저해상도 이미지에 대한 픽셀 쉬프트 셋에 대응할 수 있다. 예를 들어, 픽셀의 쉬프트 값이 7.3인 경우, 정수 쉬프트 값은 7, 분수 쉬프트 값은 0.3일 수 있다. 다른 예에 따라, 픽셀의 쉬프트 값이 -4.5인 경우, 정수 쉬프트 값은 -5, 분수 쉬프트 값은 0.5일 수 있다.
필터 뱅크(103)는 미리 계산된 필터 셋을 저장할 수 있다. 필터 셋은 쉬프트 셋 에 대해 고유하게 재구성된 행렬 로부터 획득된 값들의 셋이다. 전술한 첫번째 제약 조건 및 두번째 제약 조건에 따라, 출력 이미지의 각 픽셀을 재구성하기 위해 입력 이미지의 픽셀들을 이용할 수 있다. 필터 뱅크(103)는 와 같은 모든 가능한 조합에 대해 계산된 필터들의 셋들의 조합을 포함하며, 여기서는 사용된 저해상도 이미지들의 개수를 나타낸다.
필터 선택 유닛(102)은 분수 픽셀 쉬프트 셋에 기초하여 필터 뱅크로부터 필터들의 셋을 선택할 수 있다. 저해상도 이미지의 각 분수 쉬프트 에 대해 대응되는 필터 셋 이 선택되며 각 필터 는 값 (필터 가중 계수)으로 구성될 수 있다. 필터 는 다음의 수학식 9에 따라 나타낼 수 있다.
[수학식 9]
고해상도 이미지 획득 유닛(104)은 저해상도 이미지들의 셋, 선택된 필터들의 셋 및 정수 픽셀 쉬프트의 셋을 기초로 고해상도 이미지의 픽셀들을 계산함으로써 RGB 고해상도 이미지(20)를 획득할 수 있다. RGB 고해상도 이미지(20)의 획득은 다음과 같이 수행될 수 있다.
[수학식 10]
상기 수학식 10에서, 는 입력 이미지에서 좌표 를 갖는 픽셀을 나타낸다. 이후, 출력 이미지 블록에서 좌표 를 갖는 각 픽셀은 에 대한 와 의 스칼라 곱의 합계로 다음의 수학식 11과 같이 계산될 수 있다.
[수학식 11]
일 실시예에 따른 이미지 처리 장치(100)는 반복적인 방법을 사용하지 않고, 전술한 방법을 이용하여 고해상도 이미지를 구성하는 픽셀들의 값을 결정함으로써, 실시간으로 고해상도 이미지를 획득할 수 있다.
한편, 다른 실시예에 따라 단일 장면에 대한 복수의 베이어 저해상도 이미지로부터 고해상도 이미지를 획득하는 경우, 이미지 처리 장치(100)는 RGB 포맷의 저해상도 이미지로부터 고해상도 이미지를 획득하는 경우와 다음과 같은 측면에서 다르게 동작할 수 있다.
베이어 저해상도 이미지들 셋의 처리는 다운 샘플링 계수 에서 가 아닌 픽셀들의 그룹에 대해 처리된다는 점에서, RGB 저해상도 이미지의 처리 방식과 상이할 수 있다. 여기에서, 3은 출력 컬러 채널의 개수를 나타낸다.
또한, 베이어 이미지에서 분수 픽셀 쉬프트의 계산은 RGB 이미지에서의 분수 픽셀 쉬프트의 계산과 상이할 수 있다. 베이어 이미지의 경우, 분수 픽셀 쉬프트의 계산은 루카스 - 카나데(Lucas-Kanade) 옵티컬 플로우(optical flow) 방식에 기초하여 수행될 수 있다.
루카스 - 카나데 옵티컬 플로우 방식은 다음과 같다.
우선, 이미지 처리 장치(100)는 이미지과 이미지 에 대해 좌표를 갖는 지점 사이의 쉬프트 를 획득하기 위해, 시간 및 수직 및 수평 방향의 그래디언트(gradient) 및 를 각각 다음의 수학식 12에 따라 계산할 수 있다.
[수학식 12]
한편, 및 의 구성 시, 보다 정확한 결과를 얻기 위해, 내에서 그래디언트의 개별 값의 합 대신, 이웃한 지점이 이용될 수 있다. 이에 따라, 및 는 다음의 수학식 13에 기초하여 획득될 수 있다.
[수학식 13]
또한, 이미지의 질감이 낮은 영역에서 전술한 방법이 적절한 결과를 도출할 수 있도록, 다음의 수학식 14와 같이 정규화가 적용될 수 있다.
[수학식 14]
또 다른 개선 사항으로 가우시안 윈도우에 기반한 스무딩이 다음의 수학식 15와 같이 적용될 수 있다.
[수학식 15]
한편, 루카스-카나데 (Lucas-Kanade) 방법은 최대 1 픽셀의 진폭의 쉬프트를 결정하기 위해 설계됨에 따라, 실제 이미지에서 진폭이 복수의 픽셀에 해당하는 쉬프트를 추정하기 위해 다른 방식이 적용될 수 있다. 예를 들어, 이방성 필터링(anisotropic filtering)을 사용하지 않는 멀티 스케일 방식이 사용될 수 있다. 또한, 다른 예에 따라, 이미지 처리 장치(100)는 YCbCr 포맷의 1/4 해상도, YCbCr 포맷의 1/2 해상도 및 베이어(Bayer) 포맷의 전체 이미지를 포함하는 3개의 레벨을 이용하여, 쉬프트를 추정할 수 있다.
일 실시예에 따른 이미지 처리 장치(100)에서 3개의 채널에 대해 행렬 및 를 구성하는 경우, 3개의 채널 모두에 대한 그래디언트가 추가될 수 있다. 베이어 이미지의 그래디언트를 계산하기 위해 다음의 수학식 16이 사용될 수 있다.
[수학식 16]
을 이용한 베이어 이미지의 바이리니어(bilinear) 보간법에 의해 획득될 수 있다. 여기에서, 은 라운딩 다운(rounding down) 연산자를 나타낸다. 초록색 픽셀들에 대해, 바이리니터 보간법은 픽셀들
베이어 이미지를 위한 필터들의 셋을 선택하는 동작(operation)은 RGB 이미지 용 필터 셋을 선택하는 동작(operation)과 상이할 수 있다. 베이어 이미지의 경우, 필터 선택 유닛(102)은 필터 뱅크(103)에 저장된 필터들의 셋 을 선택할 수 있다. 여기에서, 는 쉬프트들의 셋에 대응하는 컬러의 수이고, 각각의 필터는 다음의 수학식과 같이 값들(필터 가중치 계수)로 구성될 수 있다.
[수학식 17]
베이어 저해상도 이미지들의 셋을 이용한 고해상도 이미지의 픽셀 계산은 컬러 채널각각에 대해 좌표를 갖는 출력 이미지 블록의 각 픽셀을 에 대한 및 의 스칼라 곱의 합계로서 다음의 수학식 18과 같이 계산한다는 점에서, 전술한 RGB 저해상도 이미지 셋을 이용한 고해상도 이미지의 픽셀 계산과 상이할 수 있다.
[수학식 18]
필터 뱅크(103)에 대한 필터의 사전 계산은 다음 절차에 따라 고성능 컴퓨터상에서 실행될 수 있다:
- 분수 쉬프트를 결정하는 기존의 방법이 의 정확도를 갖고, 여기에서 c는 2의 거듭제곱인 경우, 임의의 쉬프트 셋으로부터 고해상도 이미지를 획득하기 위해 유한한 개수의 쉬프트 셋을 설정. 여기에서, 이고, 남아있는 쉬프트는 값들 중 하나의 값을 취할 수 있다. 이러한 쉬프트 셋의 그룹이 기본 셋으로 설정될 수 있다.
베이어 저해상도 이미지들의 셋을 위한, 필터 뱅크(103)의 필터들의 사전 계산은 다음과 같은 동작에 의해, RGB 저해상도 이미지들의 셋을 위한 필터들의 사전 계산과 상이할 수 있다.
- 행렬 의 구성, 여기에서 는 RGB 이미지의 다운 샘플링 연산자이며, 는 RGB 이미지의 스무딩(smoothing) 연산자이며, 는 k 번째 RGB 이미지를 획득하기 위한 변환 연산자이다. 이러한 경우, RGB 이미지들의 연산자는 1 채널 이미지의 대응되는 연산자로부터 다음의 수학식 19에 기초하여 획득될 수 있다.
[수학식 19]
[수학식 20]
[수학식 21]
- 번호 의 벡터 요소를 색인 이 있는 행렬 요소로 변환하기 위해, 각 하위 행을 4 개의 동일한 연속 부분 으로 나누고 각 부분을 행렬 및 로 변환(의 크기를 갖는 행렬), 여기에서, 는 라운딩 다운 연산자를 나타낸다.
쉬프트 양자화 레벨의 경우, 개의 입력 이미지 및 배 배율, 셋의 필터 집합이 요구될 수 있다. 실험 결과, RGB 이미지에서 고해상도 이미지를 획득하기 위해서는, 11x11 크기의 필터를 이용하는 것으로 충분하다는 것이 확인되었다.
고해상도 동작에서 분수 픽셀 쉬프트 만이 정교한 디테일의 재구성을 위한 값을 갖는 것과 같이, 신뢰있는 재구성을 위해서는 입력 이미지들의 픽셀 사이의 쉬프트가 작아야 한다. 예를 들어, 삼각대가 없는 휴대 전화 카메라와 같은 버스트 촬영에서는 적은 개수의 입력 이미지들(4 개 이하)로부터 구현될 수 있다. 분수 픽셀 쉬프트의 신뢰할 수 있는 추정의 정확도는 픽셀을 초과하지 않는다. 표 B01은 실제적으로 적용 가능한 쉬프트 추정 정확도, 입력 이미지 수 및 배율 계수의 조합에 대해 계산되고 저장되는 값의 수를 보여준다.
표 B01
한편, 쉬프트 양자화 레벨, 입력 이미지 및 배의 배율에 대한 입력 베이어 이미지로부터 고해상도 이미지를 획득하기 위해 필터들의 셋이 필요할 수 있다. 여기에서, 팩터 3은 이미지에 3 개의 컬러 채널 R(붉은색), G (녹색) 및 B (파란색)가 존재함에 따라 발생할 수 있다. 베이어 이미지로부터 고해상도 이미지를 획득하기 위해서는 약간의 정밀도 손실이 있는 16 × 16 및 12 × 12 크기의 필터로 충분하다는 실험 결과가 있다. 표 B02는 실제적으로 적용 가능한 픽셀 쉬프트 추정 정확도, 입력 이미지 수 및 배율 팩터의 조합에 대해 베이어 이미지로부터 고해상도 이미지를 얻기 위해 계산되고 저장되는 값의 수를 나타낸 것이다.
표 B02
표 B02를 통해, 저장된 값의 수가 매우 큰 것을 확인할 수 있다. 이미지 처리 장치(100)는 필터 뱅크 (103)에 저장되는 필터의 수를 줄이기 위해, 다음에 개시된 픽셀 쉬프트 일치 조건을 적용할 수 있다.
픽셀 쉬프트 일치 조건 (1): 두 쉬프트 셋의 입력 이미지의 순서의 변화까지 일치(coincide up to)하면, 계산된 필터는 이미지의 순서까지 일치(coincide up to)할 것이다.
픽셀 쉬프트 일치 조건 (3): 두 셋의 쉬프트들 및 에서 쉬프트들이 정수 쉬프트들 및 까지 일치하는 경우: 계산된 필터들은 일치할 것이고, 필터들을 적용 할 때, 쉬프트 및 를 고려한 저해상도 이미지들의 픽셀이 이용될 수 있다.
픽셀 쉬프트 일치 조건 (4): 두 셋의 쉬프트들 및 에서, 부호(sign)가 일치하고(), 여기에서 인 경우, 계산된 필터는 각각 가로축 및 세로축에 대한 미러 디스플레이가 일치할 것이다.
아래의 예는 이들 원리가 표 B01의 RGB 이미지, 인 경우에서 필터 뱅크의 압축에 어떻게 적용될 수 있는지를 나타낸다. 원래 필터 뱅크의 필터 수는 와 같이 계산될 수 있다. 에서, 다음의 쉬프트 셋이 고려될 수 있다(가정 ).
표 B03
조건 (3)에 따라, 분석에 따른 쉬프트 셋에 값 등이 포함되지 않을 수 있다. 또한, 표의 열 6-8은 조건 (1)과 (2)로 인해 현재 셋에서 얻을 수 있는 셋을 나열하고 있다. 이 예에서는 조건 (4)가 적용되지 않았지만, 인 경우가 고려된다면, 조건 (4)를 적용하는 경우 분석된 쉬프트 수가 256에서 34로 줄어들 수 있다.
크기 의 각 출력 이미지 블록을 얻기 위한 배의 이미지 배율에서, 각 지점(point)를 획득하기 위한 필터는 보간된 지점과 저해상도 이미지로부터의 가장 가까운 지점 사이의 분수 쉬프트 (fractional shift)에 의해 파라미터화 될 수 있다. 블록의 각 픽셀은 저해상도 좌표에서, 블록의 상단 좌측 코너에 관한(in relation to) 분수 쉬프트로 정의될 수 있다. 예를 들어, 에 대해, 블록 의 픽셀들의 쉬프트는, , , ,.에 대응될 수 있다.
쉬프트의 셋 을 가지고 있는 것으로 가정하고, 가 다시 번호를 매길 수 있는(renumbered) 가능한 모든 쉬프트들 중 현재의 셋의 개수를 나타내면, 해당 셋에 대응되는 각각의 필터는 쉬프트 에 의해 정의될 수 있다 여기에서, ,이고, 및 는 0에서부터 내의 가능한 값들이다. 이러한 경우, 쉬프트 및 에 대응되는 필터들은 조건 (1)-(5)와 유사한 조건들을 만족시킬 수 있다.
픽셀 쉬프트 일치 조건 (6): 쉬프트 및 가 정수 쉬프트까지 일치하면, 계산된 필터는 일치하고, 필터들을 적용할 때, 쉬프트를 고려한 저해상도 이미지들의 픽셀이 이용될 수 있다.
이러한 조건의 적용은 동일한 예에 의해 입증될 수 있다. 표 B03에서의 감소된 셋에 포함된 7 셋의 쉬프트 셋 및 s=2에 대해 다음과 같이 쉬프트 셋이 구성될 수 있다.
표 B04
조건 (6)를 사용하면 표 B04의 범위가 0 ... 1 범위로 변환될 수 있다.
표 B05
추가 분석의 편의를 위해 표 B05의 요소는 0의 수에 따라 다음과 같이 그룹화될 수 있다.
표 B06
표 B07의 6 열에 나열된 요소 중 일부는 조건 (6)과 (7)에 기초하여 줄어들 수 있다.
표 B07
조건 (8)은 조건 (4)와 완전히 동일하므로 큰(large) 배율 팩터로 사용될 수 있다. 표 B08에는 모든 쉬프트로부터 조건 (6) - (8)을 통해 획득할 수 있는 쉬프트들이 나열되어 있다. 종합하면 분석은 13 쉬프트들로 제한될 수 있다. 조건(10)을 사용하여, 각 쉬프트에 대응하는 일부 필터만이 저장될 수 있다. 각 쉬프트에 대한 필터의 수는 표 B08의 4 열에 표시되어있다. 표 B08에 개시된 바를 통해, 고해상도 이미지의 모든 픽셀을 얻으려면 원래의 192 필터 대신 26 개의 필터를 저장하는 것으로 충분하다는 점을 확인할 수 있다.
표 B08
표 B09는 세 개의 입력 이미지에 대한 압축 방법의 결과를 개시하고 있다.
표 B09
도 2는 다른 실시예에 따라 이미지 텍스쳐 방향성을 고려하여, 단일 장면의 저해상도 이미지로부터 고해상도 이미지를 획득하는 이미지 처리 장치(100)의 블록도이다.
도 2에 도시된 실시 예에서, 이미지 처리 장치(100)는 도 1을 참조하여 전술한 쉬프트 추정 유닛(101), 필터 선택 유닛(102), 필터 뱅크(103), 고해상도 이미지 획득 유닛(104) 이외에 저해상도 이미지의 텍스처 방향을 결정하기 위한 텍스처 방향 추정 유닛(105)을 더 포함할 수 있다. 또한, 본 실시 예에서, 필터 뱅크(103)에 저장된 필터 셋은 비-방향성 필터 셋(110) 및 방향성 필터 셋(120)을 포함할 수 있다. 비-방향성 필터는 비-방향성 텍스처를 갖는 이미지 영역과 연관된 필터이고, 방향성 필터는 방향성 텍스처를 포함하는 이미지 영역과 연관된 필터이다.
또한, 필터 선택 유닛(102)은 분수 픽셀 쉬프트 및 텍스처 방향 추정 유닛(105)에 의해 결정된 저해상도 이미지에서의 텍스쳐 방향에 기초하여 비-방향 필터 셋 또는 방향 필터 셋 중 하나를 선택할 수 있다.
텍스처 방향 추정 유닛(105)은 다음의 방식으로 저해상도 이미지의 텍스처 방향을 결정할 수 있다. 일 실시예에 따른 텍스쳐 방향 추정 유닛(105)은 구조적 텐서(structural tensor)를 이용하여, 로컬 방향을 추정할 수 있다. 이를 위해 크기가 2 × 2 인 구조적 텐서의 대칭 행렬이 구성될 수 있다. 이 대칭 행렬은 다음의 수학식 22와 같이 일부 인접한 영역에서 계산된 수직 및 수평 픽셀의 밝기 그래디언트(픽셀 밝기의 변화)의 제곱의 합과 수직 및 수평 픽셀의 밝기 그래디언트의 곱의 합으로 구성될 수 있다.
[수학식 22]
[수학식 23]
이미지 처리 장치(100)는 코히어런스를 통해 텍스쳐 영역에 관한 정보를 추정할 수 있다. 예를 들어, 이미지 처리 장치(100)는 코히어런스가 소정의 임계 값을 초과하지 않는 경우, 분석되는 지점이 약한 텍스처 영역 또는 고도로 텍스처 된 영역 중 하나에 속하고, 하나의 지배적인(dominant) 방향의 텍스쳐를 갖지 않는다고 추정할 수 있다. 다만, 이는 일 예일 뿐, 다른 예에 따라, 해당 지점에서 지배적인 텍스쳐 방향이 계산될 수도 있다. 이 경우, 최대 모듈로 고유치(modulo eigenvalue)가 라면, 방향은 수식
RGB 이미지가 처리되는 경우, 그래디언트는 다음의 수학식 24에 따라 계산될 수 있다.
[수학식 24]
개시된 실시예에 따르면, 베이어 이미지에 대한 구조적 텐서를 계산하기 위해, 그래디언트는 다음의 공식에 따라 계산될 수 있다:
- r 및 b 타입의 베이어 패턴의 지점(point)에서, 녹색 채널의 그래디언트는 다음의 수학식 25에 따라 계산될 수 있다.
[수학식 25]
- r 타입의 베이어 패턴의 지점에서 파란색 채널의 그래디언트는 다음의 수학식 26에 따라 계산될 수 있다.
[수학식 26]
- r 타입의 베이어 패턴의 지점에서 빨간색 채널의 그래디언트는 다음의 수학식 27에 따라 계산될 수 있다.
[수학식 27]
- b 타입의 베이어 패턴의 지점에서 빨간색 채널의 그래디언트는 다음의 수학식 28에 따라 계산될 수 있다.
[수학식 28]
- b 타입의 베이어 패턴의 지점에서 파란색 채널의 그래디언트는 다음의 수학식 29에 따라 계산될 수 있다.
[수학식 29]
- g1 타입의 베이어 패턴의 지점에서, 빨간색 채널의 수평 그래디언트와 파란색 채널의 수직 그래디언트는 다음의 수학식 30에 따라 계산될 수 있다.
[수학식 30]
- g2 타입의 베이어 패턴의 지점에서 파란색 채널의 수평 그래디언트와 빨간색 채널의 수직 그래디언트는 다음의 수학식 31에 따라 계산될 수 있다.
[수학식 31]
- g1 타입의 베이어 패턴의 지점에서 파란색 채널의 수평 그래디언트와 빨간색 채널의 수직 그래디언트는 다음의 수학식에 따라 계산될 수 있다.
[수학식 32]
- g2 타입의 베이어 패턴 지점에서의 빨간색 채널의 수평 그래디언트와 파란색 채널의 수직 그래디언트는 다음의 수학식 33에 따라 계산될 수 있다.
[수학식 33]
- g1 및 g2 타입의 베이어 패턴 지점에서의 녹색 채널의 그래디언트는 다음의 수학식 34에 따라 계산될 수 있다.
[수학식 34]
- 입력 이미지의 각 지점에 대해 그래디언트는 다음 수학식 36에 따라 계산될 수 있다.
[수학식 35]
행렬 의 구성 및 그 고유 벡터 및 고유 값의 탐색은 RGB 이미지와 유사한 방식으로 수행되지만, 지배적인 (dominant) 방향을 계산하기에 앞서, 이미지 처리 장치(100)는 벡터를 축소할 수 있다. 이에 대해서는, 도 4를 참조하여 구체적으로 설명하도록 한다.
도 4는 일 실시예에 따른 이미지 처리 장치(100)가 텍스처 방향 추정 시 벡터를 축소하는 방법을 설명하기 위한 도면이다.
도 4에 도시된 바와 같이, 벡터는 사분면(410, 420, 430, 440) 상에서 제 1 사분면(410) 또는 제 3(430) 사분면으로 축소될 수 있다. 또한, 축소된 벡터로부터 계산된 아크탄젠트(arctangent)는 선택된 개수의 레벨(예: N = 8, N = 16 또는 N = 32)로 양자화되고 유니티(unity)가 추가될 수 있다(비 방향성 텍스처의 경우 0 필터 뱅크가 제공됨. 선택된 개수에 해당하는 숫자는 각 지점에 대한 필터 셋 선택 시, 필터 뱅크의 번호를 특정하는데 이용될 수 있다.
다시 도 2를 참조하면, 일 실시예에 따른 이미지 처리 장치(100)는 텍스쳐 방향성 및 분수 쉬프트 셋을 기초로 필터 셋을 선택할 수 있다. 또한, 이미지 처리 장치(100)는 선택된 필터 셋, 단일 장면의 저해상도 이미지 셋(10) 및 정수 쉬프트 셋을 기초로 RGB 고해상도 이미지(20)를 획득할 수 있다.
고해상도 이미지를 획득하기 위해 입력 저해상도 이미지에 존재하는 노이즈, 입력 저해상도 이미지의 일부 영역에서의 픽셀 쉬프트의 불확실한 추정치 또는 이미지의 현저한 변화(예를 들어, 조명의 변화 및 잔여 색상 아티팩트(artifacts)에서 기인하는)와 같은 추가적인 제약 조건이 고려될 수 있다. 또한, 저해상도 이미지를 촬영하는데 이용된 특정 장치의 특성에 대응되는 파라미터가 고해상도 이미지를 획득하는데 고려될 수도 있다.
도 3은 다른 실시예에 따라 노이즈 및 픽셀 쉬프트의 추정치 등의 제약 조건을 고려하여, 단일 장면의 저해상도 이미지로부터 고해상도 이미지를 획득하는 이미지 처리 장치(100)의 블록도이다.
도 3을 참조하면, 이미지 처리 장치(100)는 도 1을 참조하여 전술한 쉬프트 추정 유닛(101), 필터 선택 유닛(102), 필터 뱅크(103), 고해상도 이미지 획득 유닛(104) 및 텍스쳐 방향 추정 유닛(105) 이외에 저해상도 이미지의 촬영 파라미터를 고려하여 적응적인 노이즈 감소(특히 3 차원 노이즈 감소 (3DNR))를 수행하는 전처리 유닛(106)을 더 포함할 수 있다. 다른 예에 따라, 이미지 처리 장치 (100)는 픽셀 쉬프트를 계산하는 정확도(fidelity)를 나타내는 폴백 맵(fallback map)을 생성하는 폴 백 맵 추정 유닛(107)을 더 포함할 수 있다. 폴백 맵(fallback map)은 쉬프트의 정확도가 낮은 픽셀을 검출하는데 이용될 수 있다. 또한, 또 다른 예에 따라, 이미지 처리 장치 (100)는 후처리 유닛(108)을 더 포함할 수도 있다.
전처리 유닛(106)과 폴백 맵 추정 유닛(107)을 포함하는 이미지 처리 장치(100)는 RGB 영상과 베이어 영상을 모두 처리할 수 있다.
쉬프트 추정 유닛(101)은 보다 신뢰성 있는 결과를 획득하기 위해 3DNR 이후에 얻어진 데이터를 사용하지 않을 수 있다. 필터 뱅크(103)는 k 개의 입력 저해상도 이미지들로부터 고해상도 이미지를 재구성할 수 있도록 수정될 수 있다. 예를 들어, 필터 뱅크(103)는 k, k-1, k-2, k1 저해상도 이미지들에 대해 계산된 필터들을 저장하도록 수정될 수 있다.
현재 픽셀에 대한 쉬프트가 단밀 장면의 저해상도 이미지 셋(10)에 포함된 모든 입력 저해상도 이미지에 대해 신뢰성 있게 계산되지 않는다면, 필터 선택 유닛(102)은 신뢰성 있는 쉬프트의 계산을 위해 분수 픽셀 쉬프트에 기초하여 저해상도 이미지로부터 필터 뱅크(103)에 저장된 복수의 필터 셋 중 적어도 하나를 선택하도록 수정될 수 있다. 한편, 필터 뱅크(103)에는 비-방향성 필터 셋(110) 및 방향성 필터 셋(120)이 저장될 수 있다.
고해상도 이미지 획득 유닛(104)은 픽셀 쉬프트가 부정확하게 계산된 이미지 영역을 고려하여 전처리된 저해상도 이미지에 고해상도 이미지를 획득하기 위한 방법을 적용할 수 있다. 픽셀 쉬프트의 정확도가 낮은 이미지 영역은 폴백 맵에 표시될 수 있다.
픽셀 쉬프트가 모든 k 입력 저해상도 이미지들에 대해 신뢰성 있게 계산된 경우, 고해상도 이미지 획득 유닛(104)은 k 이미지에 대한 필터 및 입력 이미지의 픽셀들을 이용하여 3DNR이 적용된 k 저해상도 이미지들로부터 고해상도 이미지의 픽셀들을 계산할 수 있다.
픽셀 쉬프트가 모든 k 입력 저해상도 이미지들에 대해 신뢰성 있게 계산되지 않은 경우, 고해상도 이미지 획득 유닛(104)은 저해상도 이미지로부터 정수 픽셀 쉬프트가 정확하게 산출된 입력 픽셀들을 선택할 수 있다. 고해상도 이미지 획득 유닛(10)은 선택된 입력 픽셀들에 저해상도 이미지로부터의 재구성을 위해 필터 선택 유닛(102)으로부터 획득된 필터들을 적용하여 고해상도 이미지의 픽셀들을 계산할 수 있다.
전처리 유닛(106)은 저해상도 이미지에서의 모든 픽셀들에 대해 노이즈 모델, 이미지 부분의 크기, 인접 이미지 부분에 대한 탐색 반경 및 픽셀 밝기-픽셀 노이즈 표준 편차 관계를 포함하는 노이즈 감소 파라미터들을 결정할 수 있다. 또한, 전처리 유닛(106)은 픽셀 밝기의 변화에 기초하여 텍스쳐-의존적 노이즈 감소 계수를 계산할 수 있다. 각 텍스쳐-의존적 노이즈 감소 계수는 저해상도 이미지들의 각 픽셀에 대해 계산될 수 있다.
또한, 전처리 유닛(106)은 픽셀 밝기-픽셀 노이즈 표준 편차 관계, 텍스쳐-의존적 노이즈 감소 계수 및 사용자에 의해 설정된 노이즈 감소 계수를 이용하여, 픽셀 노이즈 표준 편차의 값을 추정할 수 있다. 전처리 유닛(106)은 노이즈 감소된 저해상도 이미지들의 획득을 위해, 노이즈 감소 파라미터들 및 추정된 픽셀 노이즈 표준 편차의 값에 기초하여, 저해상도 이미지 셋에 3DNR을 실행할 수 있다.
텍스쳐-의존적 노이즈 감소 계수들은 추정된 이미지 텍스쳐화 레벨을 나타내며, 고해상도 동작에 의해 재구성될 수 있는 고주파수 디테일을 잠재적으로 포함한 영역들을 나타낼 수 있다. 최상의 시각적 품질을 보장하기 위해서는, 비-텍스쳐 영역 및 지배적인 방향을 갖는 영역 보다 작은 영역에 3DNR이 수행되어야 한다.
3DNR은 가우시안(Gaussian) 또는 포아송(Poisson)과 같은 노이즈 모델, 비교 대상이 되고 평균화가 수행되는 이미지 부분의 크기, 인접 부분에 대한 탐색 반경 R 및 이미지 지점(point) 에서의 픽셀 노이즈 표준 편차의 추정 값에 기초하여 수행될 수 있다. 인접 부분에 대한 탐색 반경 R은 현재 부분과 평균화된 이미지 부분이 배치될 수 있는 최대 거리를 결정하는데 이용될 수 있다. 또한, 픽셀 노이즈 표준 편차의 추정 값은 평균화된 픽셀 값을 계산하는데 적용되는 필터 가중치 계수들을 계산하는데 이용될 수 있다.
노이즈 모델 , 이미지 부분 크기 , 인접 부분에 대한 탐색 반경 및 픽셀 밝기(brightness)-픽셀 노이즈 표준 편차 관계 는 노출 시간 및 게인 계수 에 따라 결정될 수 있다. 여기에서, 상대적으로 더 큰(greater) 노출 시간 및 더 큰 게인 계수는 가우시안 모델 및 더 작은 반지름의 값에 적용되고, 더 작은(smaller) 노출 시간 및 더 작은 게인 계수는 푸아송 모델 및 더 큰 반지름 값에 적용될 수 있다. 다만, 이는 일 예일 뿐, 구체적인 적용 방법은 실험적으로 도출되거나 카메라 제조업체에 의해 기록된 보정 테이블 데이터에 따라 결정될 수 있다.
텍스처-의존적 노이즈 감소 계수들은 다음의 동작에 따라 계산될 수 있다.
- 입력 이미지에 대해, 저해상도 이미지의 픽셀의 밝기 값의 감마 보정을 수행
- 제 1 경험적으로 선택된 임계 값을 초과하는 값들 이 제 1 임계 값과 동일하게 설정되고, 상기 제 2 경험적으로 선택된 임계 값보다 작은 값들이 제 2 임계 값과 동일하게 설정되도록 의 임계 변환을 실행
일 실시예에 따른 좌표 를 갖는 각각의 픽셀에 대한 픽셀 노이즈 표준 편차 의 추정 값은 사용자에 의해 설정된 노이즈 감소 계수 , 텍스처-의존적 노이즈 감소 계수 및 픽셀 휘도 - 픽셀 노이즈 편차 관계 의 곱으로서 계산될 수 있다. 또한, 평균 밝기 는 기존의 저주파수 필터를 기초로 계산될 수 있다.
노이즈 감소 계수 는 노이즈 감소 레벨과 이미지의 고주파수 디테일의 저장 및 재구성 레벨 간의 트레이드 오프의 관점에서 사용자의 선호도를 결정하는데 이용될 수 있다. 일 실시예에 따른 노이즈 감소 파라미터들의 결정 및 텍스처-의존적 노이즈 감소 계수들의 계산은 RGB 저해상도 이미지들 및 베이어 저해상도 이미지들에 동일하게 수행될 수 있다.
RGB 입력 이미지에 대한 3DNR은 노이즈 추정을 이용하는 기존의 방법에 따라 실행될 수 있다.
입력 저해상도 이미지의 각 픽셀 에 대해, 3DNR이 적용되는 저해상도 이미지의 최종 픽셀 은 해당 픽셀과 해당 픽셀로부터 보다 더 떨어져 있지 않은 인접 픽셀의 가중치의 합으로서 계산될 수 있다. 또한, 에 인접한 각 픽셀 의 개별 가중치는, 픽셀들 및 가 배치된 저해상도 이미지의 부분들 사이의 거리 의 제곱의 지수 함수에 반대부호를 적용하고, 이를 픽셀 노이즈 표준 편차 값으로 나눈 다음, 모든 픽셀에 대해 평균화된 개별 가중치의 합으로 나누는 연산을 통해 산출될 수 있다.
일 실시예에 따라 가우시안 노이즈 모델이 사용되는 경우, 거리 는 현재의 픽셀 로부터 보다 더 멀리 있지 않은 픽셀과 동일한 거리에 배치된 대응되는 픽셀 간의 차이의 제곱의 합으로서 계산될 수 있다.
다른 실시예에 따라 포아송 모델이 사용되는 경우, 거리 는 현재 픽셀 보다 멀지 않은 픽셀에 대한 두 개의 인수의 함수 와 로부터 동일한 거리에 있는 각각의 픽셀의 합으로서 계산될 수 있다. 여기에서,
베이어 이미지에 대한 3DNR의 구현은 동일한 컬러 채널에 속하는 픽셀들만이 평균화된다는 점에서 RGB 이미지에 대한 3DNR의 구현과 구별될 수 있다. 또한, 베이어 이미지에 대한 3DNR의 구현은 거리 계산에 있어 동일한 색상 채널에 속한 픽셀만을 고려한다는 점에서 특히, RGB 이미지에 대한 3DNR의 구현과 구별될 수 있다.
베이어 이미지에 대한 3DNR의 구현은 평균 밝기 를 계산할 때 현재 픽셀과 동일한 색상 채널에 속한 픽셀 만 사용한다는 점에서 RGB 이미지에 대한 3DNR의 구현과 구별될 수 있다. 일 실시예에 따른 평균 밝기의 계산에서, 필터 를 이용한 필터링이 이용 될 수 있고, 이어서 기존의 디스크 형 필터에 의해 스무딩이 수행될 수 있다.
폴백 맵 추정 유닛(107)은 저해상도 이미지들의 셋 및 픽셀 쉬프트들의 셋을 기초로 폴백 맵을 생성할 수 있다. 폴백 맵은 픽셀 쉬프트의 계산에 대한 정확도를 나타낼 수 있다.
일 실시예에 따른 이미지 처리 장치(100)는 인접한 저해상도 이미지들 사이의 차이가 큰 장면에 대해, 픽셀 쉬프트 또는 장면의 변화를 계산할 때 획득되는 에러를 보상하기 위해, 폴백 맵을 이용할 수 있다. 폴백 맵 이용 시, 신뢰성 있게 계산된 픽셀들의 쉬프트 값만이 고해상도 이미지를 계산하는 데 이용될 수 있다.
일 실시예에 따른 폴백 맵 (M)은 크기 W × H × k를 가질 수 있다. 여기에서 W 및 H는 각각 고해상도 이미지의 수직 및 수평 방향의 픽셀들의 개수를 나타내고, 이 때, 고해상도 이미지는 크기 W/s x H/s의 입력 저해상도 이미지들로부터 획득될 수 있다. 또한, k는 입력 저해상도 이미지들의 수를 나타낸다. 폴백 맵의 각각의 엘리먼트는, 쉬프트가 신뢰성 있게 산출된 경우 픽셀들에 대해 값 1을 가질 수 있고, 쉬프트의 신뢰성을 보장하기 어려운 경우, 픽셀들에 대해 값 0을 가질 수 있다. 한편. 제 1 저해상도 이미지의 모든 픽셀의 쉬프트는 0의 값을 가질 수 있고 이는 신뢰할 수 있는 것으로 간주될 수 있다.
입력 RGB 저해상도 이미지들에 대한 폴백 맵은 다음의 동작에 따라 계산될 수 있다.
- 제 1 저해상도 이미지를 제외한 입력 저해상도 이미지에 대해 계산된 픽셀 쉬프트를 이용하여 픽셀 쉬프트의 보상을 수행하여, 보상된 저해상도 이미지를 획득, 픽셀 쉬프트의 보상은 기존의 방법에 따라 수행될 수 있다.
- 모든 보상된 저해상도 이미지에 대해 화이트 밸런스, 감마 보정, 가우시안 필터링 및에 따른 LST 색 공간으로의 변환을 수행, 화이트 밸런스, 감마 보정, 가우시안 필터링은 기존의 방법에 따라 수행될 수 있다.
- LST 공간에서의 제 1 저해상도 이미지의 픽셀과 LST 공간에서의 보상 된 저해상도 이미지의 픽셀 간의 유클리드 거리를 픽셀 단위로 계산; 기존의 저역 통과 필터를 이용하여 계산된 유클리드 거리를 필터링하고, 수학식 에 따라 비선형 변환을 수행
- LST 공간에서의 제 1 저해상도 이미지와 LST 공간에서의 보상된 k-1 저해상도 이미지들 각각간의 SSIM 인덱스(structural similarity index)를 픽셀 단위로 계산하고, SSIM 인덱스 값이 음수인 픽셀의 SSIM 인덱스 값을 0으로 설정
- LST 공간에서의 보상된 저해상도 이미지의 각 픽셀에 대해, 필터링되고 비선형 변환된 유클리디언 거리와 SSIM 인덱스의 곱의 몫, 필터링되고 비선형 변환된 유클리디언 거리와 SSIM 인덱스의 합을 계산, 계산을 통해 LST 공간에서의 보상된 저해상도 이미지들의 각 픽셀에 대해 계산된 몫 값 및 제 1 저해상도 이미지에서 1로 설정된 픽셀들의 값으로 구성된 중간맵(intermediate map)을 생성할 수 있고, 이 때 생성된 중간맵은 W/s x H/s x k의 크기를 가짐
- 중간맵의 크기를 W x H x k로 만들기 위해 중간맵에 스케일링(scaling)을 수행
- 스케일링된 중간맵의 임계 변환에 의해 폴백 맵을 계산, 여기에서, 임계 값보다 큰 몫 값은 1로 할당되고, 나머지 몫 값은 0으로 할당되며, 제 1 저해상도 이미지의 픽셀 값은 1로 유지됨. 임계값은 사용자가 수용 불가능하다고 생각하는 픽셀 쉬프트 계산 오류를 반영할 수 있도록, 사용자에 의해 선택될 수 있음.
베이어 이미지에 대한 폴백 맵 계산은 RGB 이미지에 대한 폴백 맵 계산에 비해 픽셀 쉬프트의 보상 측면에서 다음과 같이 상이한 동작을 포함할 수 있다.
- 예를 들어, 도 5에 도시된 바와 같이, 입력 저해상도 이미지에 해당하는 원본 베이어 이미지(510)의 픽셀들을 별개의 컬러 채널 G1(520), 채널 G2(530), 채널 R(540) 및 채널 B(550)로 분할;
- 모든 입력 저해상도 이미지에서 동일한 위치를 갖는 컬러 채널 G1 및 G2의 픽셀을 합산하고, 컬러 채널 G1 및 G2의 합산 결과를 2로 나누어 채널 G를 획득.
한편, 베이어 이미지에 대한 폴백 맵을 계산하기 위한 나머지 동작들은 RGB 이미지에 대한 폴백 맵의 동작들과 동일할 수 있다.
일 실시예에 따른 텍스쳐 방향 추정부 (105)는 전처리부 (106)에서 획득된 노이즈-감소된 저해상도 이미지의 텍스처 방향을 결정할 수 있다.
일 실시예에 따른 필터 선택 유닛(102)은 노이즈 감소 저해상도 이미지에서 폴백 맵, 분수 픽셀 쉬프트 셋 및 텍스처 방향에 기초하여 비-방향성 필터 셋 또는 방향성 필터 셋 중 하나를 선택할 수 있다.
또한, 일 실시예에 따른 고해상도 이미지 획득 유닛(104)은 폴백 맵, 노이즈 감소된 저해상도 이미지 셋, 선택된 필터 셋 및 정수 픽셀 쉬프트 셋을 사용하여 고해상도 이미지의 픽셀을 계산함으로써 RGB 고해상도 이미지를 획득할 수 있다.
폴백 맵과 노이즈 감소된 (3DNR이 적용된) 저해상도 이미지 셋을 이용하여 고해상도 이미지를 획득하는 동작은 전술한 고해상도 이미지 획득 유닛 (104)의 동작과 대응될 수 있다.
고해상도 이미지에 남아있는 컬러 아티팩트를 필터링하기 위해, 고해상도 데이터의 처리를 위한 장치(100)는 후처리 유닛(108)을 더 포함할 수 있다. 후처리 유닛(108)는 고해상도 이미지 획득 유닛(104)에서 획득된 RGB 고해상도 이미지를 YUV 이미지로 변환할 수 있다.
또한, 후처리 유닛(108)은 다음과 같이 YUV 이미지를 처리할 수 있다:
슬라이딩 윈도우 방식으로 채널 Y의 픽셀 표준 편차 맵을 계산;
가우시안 필터링을 이용하여 픽셀 표준 편차 맵에 스무딩을 수행하여 교차 양방향 필터링(cross bilateral filtering)에 대한 참조 채널(reference channel) Ref를을 계산하고, 참조 채널 Ref를 이용하여 채널 U 및 채널 V의 교차 양방향 필터링을 수행;
처리된 YUV 이미지를 후처리된 RGB 고해상도 이미지(20)로 역변환;
개시된 적어도 하나의 실시예에 따른 이미지 처리 방법은 단일 장면에 대한 저해상도 이미지 셋으로부터 고해상도 이미지를 획득하는 것을 목적으로 한다. 일 실시예에 따른 이미지 처리 방법은 입력 RGB 이미지 및 입력 베이어 이미지에 모두 수행될 수 있고, 베이어 이미지를 RGB 이미지로 변환하기 위한 디모자이킹(demosaicing) 오퍼레이션을 요구하지 않을 수 있다. 이미지 처리 방법은 전술한 이미지 처리 장치(100)에 의해 수행될 수 있다. 이미지 처리 장치(100)에서 실행되는 동작은 도 6을 참조하여 후술할 이미지 처리 방법의 각 단계에서 수행되는 동작과 대응될 수 있다.
도 6은 일 실시예에 따른 이미지 처리 방법을 설명하기 위한 흐름도이다.
단계 S610에서, 이미지 처리 장치는 단일 장면에 대한 복수의 저해상도 이미지 간의 서로 대응되는 부분에 포함된 복수의 픽셀의 움직임 정보를 나타내는 픽셀 쉬프트 셋을 획득할 수 있다.
일 실시예에 따른 이미지 처리 장치는 RGB 포맷을 갖는 복수의 저해상도 이미지 및 베이어 포맷을 갖는 복수의 저해상도 이미지 모두에 대해 픽셀 쉬프트 셋을 획득할 수 있다.
또한, 다른 실시예에 따라 이미지 처리 장치는 노이즈 감소된 복수의 저해상도 이미지로부터 픽셀 쉬프트 셋을 획득할 수도 있다. 여기에서, 이미지 처리 장치가 노이즈 감소된 복수의 저해상도 이미지를 획득하는 방법은 도 3을 참조하여 전술한 이미지 처리 장치(100)가 노이즈 감소된 복수의 저해상도 이미지를 획득하는 방법과 대응될 수 있다.
단계 S620에서, 이미지 처리 장치는 픽셀 쉬프트 셋으로부터 정수 부분 및 분수 부분을 분류하여, 정수 픽셀 쉬프트 셋 및 분수 픽셀 쉬프트 셋을 생성할 수 있다.
일 실시예에 따른 이미지 처리 장치는 복수의 픽셀의 분수 쉬프트 값 중 기 설정된 범위의 값을 갖는 유한한 개수의 분수 쉬프트 값을 선택할 수 있다. 이미지 처리 장치는 선택된 분수 픽셀 쉬프트를 조합하여, 분수 픽셀 쉬프트 셋을 생성할 수 있다.
단계 S630에서, 이미지 처리 장치는 분수 픽셀 쉬프트 셋에 기초하여, 픽셀에 적용되는 필터 가중치 값을 포함하는 기 저장된 복수의 필터 셋 중 복수의 픽셀에 대응되는 필터 셋을 선택할 수 있다.
일 실시예에 따른 이미지 처리 장치는 기 저장된 복수의 필터 셋 중 복수의 픽셀에 대응되는 필터 셋을 분수 픽셀 쉬프트 셋 및 기 설정된 정규화기에 기초하여 선택할 수 있다. 정규화기는 고해상도 이미지의 획득을 위해 부가되는 제약 조건을 적용하는데 이용될 수 있다. 또한, 일 실시예에 따른 복수의 필터 셋은 필터 뱅크에 저장될 수 있다. 기 저장된 복수의 필터 셋의 개수는 복수의 저해상도 이미지 간의 서로 대응되는 부분에 포함된 복수의 픽셀의 적어도 하나의 픽셀 쉬프트 일치 조건에 기초하여 결정될 수 있다. 여기에서, 일치 조건은 도 1을 참조하여 전술한 복수의 픽셀 쉬프트 일치 조건 각각에 대응될 수 있다.
다른 실시예에 따른 이미지 처리 장치는 복수의 저해상도 이미지 간의 서로 대응되는 부분의 텍스쳐가 방향성을 갖는지 여부 및 분수 픽셀 쉬프트 셋에 기초하여 필터 셋을 선택할 수 있다.
또 다른 실시예에 따른 이미지 처리 장치는 기 저장된 복수의 필터 셋 중 복수의 픽셀에 대응되는 필터 셋을 폴백 맵, 분수 픽셀 쉬프트 셋 및 텍스처 방향에 기초하여 선택할 수 있다.
단계 S640에서, 이미지 처리 장치는 복수의 저해상도 이미지, 선택된 필터 셋 및 정수 픽셀 쉬프트 셋을 기초로 단일 장면에 대한 고해상도 이미지를 획득할 수 있다.
한편, 일 실시예에 따른 이미지 처리 장치는 획득된 RGB 포맷의 고해상도 이미지에 남아있는 컬러 아티팩트의 제거를 위해 후처리를 수행할 수 있다. 예를 들어, 이미지 처리 장치는 RGB 이미지의 포맷을 갖는 고해상도 이미지를 YUV 이미지로 변환할 수 있다. 이미지 처리 장치는 YUV 이미지에 대해, 채널 Y에 대한 픽셀 표준 편차 맵을 획득할 수 있다. 이미지 처리 장치는 픽셀 표준 편차 맵에 스무딩을 수행하여 획득된 참조 채널을 기초로 채널 U 및 채널 V에 교차 양방향 필터링(cross bilinear filtering)을 수행할 수 있다. 이미지 처리 장치는 교차 양방향 필터링이 적용된 YUV 이미지를 RGB 이미지의 포맷으로 변환하여 후처리된 고해상도 이미지를 획득할 수 있다.
도 2는 다른 실시예에 따라 이미지 텍스쳐 방향성을 고려하여, 단일 장면의 저해상도 이미지로부터 고해상도 이미지를 획득하는 이미지 처리 장치(100)의 블록도이다.
도 2에 도시된 실시 예에서, 이미지 처리 장치(100)는 도 1을 참조하여 전술한 쉬프트 추정 유닛(101), 필터 선택 유닛(102), 필터 뱅크(103), 고해상도 이미지 획득 유닛(104) 이외에 저해상도 이미지의 텍스처 방향을 결정하기 위한 텍스처 방향 추정 유닛(105)을 더 포함할 수 있다. 또한, 본 실시 예에서, 필터 뱅크(103)에 저장된 필터 셋은 비-방향성 필터 셋(110) 및 방향성 필터 셋(120)을 포함할 수 있다. 비-방향성 필터는 비-방향성 텍스처를 갖는 이미지 영역과 연관된 필터이고, 방향성 필터는 방향성 텍스처를 포함하는 이미지 영역과 연관된 필터이다.
또한, 필터 선택 유닛(102)은 분수 픽셀 쉬프트 및 텍스처 방향 추정 유닛(105)에 의해 결정된 저해상도 이미지에서의 텍스쳐 방향에 기초하여 비-방향 필터 셋 또는 방향 필터 셋 중 하나를 선택할 수 있다.
텍스처 방향 추정 유닛(105)은 다음의 방식으로 저해상도 이미지의 텍스처 방향을 결정할 수 있다. 일 실시예에 따른 텍스쳐 방향 추정 유닛(105)은 구조적 텐서(structural tensor)를 이용하여, 로컬 방향을 추정할 수 있다. 이를 위해 크기가 2 × 2 인 구조적 텐서의 대칭 행렬이 구성될 수 있다. 이 대칭 행렬은 다음의 수학식 22와 같이 일부 인접한 영역에서 계산된 수직 및 수평 픽셀의 밝기 그래디언트(픽셀 밝기의 변화)의 제곱의 합과 수직 및 수평 픽셀의 밝기 그래디언트의 곱의 합으로 구성될 수 있다.
[수학식 22]
[수학식 23]
이미지 처리 장치(100)는 코히어런스를 통해 텍스쳐 영역에 관한 정보를 추정할 수 있다. 예를 들어, 이미지 처리 장치(100)는 코히어런스가 소정의 임계 값을 초과하지 않는 경우, 분석되는 지점이 약한 텍스처 영역 또는 고도로 텍스처 된 영역 중 하나에 속하고, 하나의 지배적인(dominant) 방향의 텍스쳐를 갖지 않는다고 추정할 수 있다. 다만, 이는 일 예일 뿐, 다른 예에 따라, 해당 지점에서 지배적인 텍스쳐 방향이 계산될 수도 있다. 이 경우, 최대 모듈로 고유치(modulo eigenvalue)가 라면, 방향은 수식
RGB 이미지가 처리되는 경우, 그래디언트는 다음의 수학식 24에 따라 계산될 수 있다.
[수학식 24]
개시된 실시예에 따르면, 베이어 이미지에 대한 구조적 텐서를 계산하기 위해, 그래디언트는 다음의 공식에 따라 계산될 수 있다:
- r 및 b 타입의 베이어 패턴의 지점(point)에서, 녹색 채널의 그래디언트는 다음의 수학식 25에 따라 계산될 수 있다.
[수학식 25]
- r 타입의 베이어 패턴의 지점에서 파란색 채널의 그래디언트는 다음의 수학식 26에 따라 계산될 수 있다.
[수학식 26]
- r 타입의 베이어 패턴의 지점에서 빨간색 채널의 그래디언트는 다음의 수학식 27에 따라 계산될 수 있다.
[수학식 27]
- b 타입의 베이어 패턴의 지점에서 빨간색 채널의 그래디언트는 다음의 수학식 28에 따라 계산될 수 있다.
[수학식 28]
- b 타입의 베이어 패턴의 지점에서 파란색 채널의 그래디언트는 다음의 수학식 29에 따라 계산될 수 있다.
[수학식 29]
- g1 타입의 베이어 패턴의 지점에서, 빨간색 채널의 수평 그래디언트와 파란색 채널의 수직 그래디언트는 다음의 수학식 30에 따라 계산될 수 있다.
[수학식 30]
- g2 타입의 베이어 패턴의 지점에서 파란색 채널의 수평 그래디언트와 빨간색 채널의 수직 그래디언트는 다음의 수학식 31에 따라 계산될 수 있다.
[수학식 31]
- g1 타입의 베이어 패턴의 지점에서 파란색 채널의 수평 그래디언트와 빨간색 채널의 수직 그래디언트는 다음의 수학식에 따라 계산될 수 있다.
[수학식 32]
- g2 타입의 베이어 패턴 지점에서의 빨간색 채널의 수평 그래디언트와 파란색 채널의 수직 그래디언트는 다음의 수학식 33에 따라 계산될 수 있다.
[수학식 33]
- g1 및 g2 타입의 베이어 패턴 지점에서의 녹색 채널의 그래디언트는 다음의 수학식 34에 따라 계산될 수 있다.
[수학식 34]
- 입력 이미지의 각 지점에 대해 그래디언트는 다음 수학식 35에 따라 계산될 수 있다.
[수학식 35]
행렬 의 구성 및 그 고유 벡터 및 고유 값의 탐색은 RGB 이미지와 유사한 방식으로 수행되지만, 지배적인 (dominant) 방향을 계산하기에 앞서, 이미지 처리 장치(100)는 벡터를 축소할 수 있다. 이에 대해서는, 도 4를 참조하여 구체적으로 설명하도록 한다.
도 4는 일 실시예에 따른 이미지 처리 장치(100)가 텍스처 방향 추정 시 벡터를 축소하는 방법을 설명하기 위한 도면이다.
도 4에 도시된 바와 같이, 벡터는 사분면(410, 420, 430, 440) 상에서 제 1 사분면(410) 또는 제 3(430) 사분면으로 축소될 수 있다. 또한, 축소된 벡터로부터 계산된 아크탄젠트(arctangent)는 선택된 개수의 레벨(예: N = 8, N = 16 또는 N = 32)로 양자화되고 유니티(unity)가 추가될 수 있다(비 방향성 텍스처의 경우 0 필터 뱅크가 제공됨. 선택된 개수에 해당하는 숫자는 각 지점에 대한 필터 셋 선택 시, 필터 뱅크의 번호를 특정하는데 이용될 수 있다.
다시 도 2를 참조하면, 일 실시예에 따른 이미지 처리 장치(100)는 텍스쳐 방향성 및 분수 쉬프트 셋을 기초로 필터 셋을 선택할 수 있다. 또한, 이미지 처리 장치(100)는 선택된 필터 셋, 단일 장면의 저해상도 이미지 셋(10) 및 정수 쉬프트 셋을 기초로 RGB 고해상도 이미지(20)를 획득할 수 있다.
고해상도 이미지를 획득하기 위해 입력 저해상도 이미지에 존재하는 노이즈, 입력 저해상도 이미지의 일부 영역에서의 픽셀 쉬프트의 불확실한 추정치 또는 이미지의 현저한 변화(예를 들어, 조명의 변화 및 잔여 색상 아티팩트(artifacts)에서 기인하는)와 같은 추가적인 제약 조건이 고려될 수 있다. 또한, 저해상도 이미지를 촬영하는데 이용된 특정 장치의 특성에 대응되는 파라미터가 고해상도 이미지를 획득하는데 고려될 수도 있다.
도 3은 다른 실시예에 따라 노이즈 및 픽셀 쉬프트의 추정치 등의 제약 조건을 고려하여, 단일 장면의 저해상도 이미지로부터 고해상도 이미지를 획득하는 이미지 처리 장치(100)의 블록도이다.
도 3을 참조하면, 이미지 처리 장치(100)는 도 1을 참조하여 전술한 쉬프트 추정 유닛(101), 필터 선택 유닛(102), 필터 뱅크(103), 고해상도 이미지 획득 유닛(104) 및 텍스쳐 방향 추정 유닛(105) 이외에 저해상도 이미지의 촬영 파라미터를 고려하여 적응적인 노이즈 감소(특히 3 차원 노이즈 감소 (3DNR))를 수행하는 전처리 유닛(106)을 더 포함할 수 있다. 다른 예에 따라, 이미지 처리 장치 (100)는 픽셀 쉬프트를 계산하는 정확도(fidelity)를 나타내는 폴백 맵(fallback map)을 생성하는 폴 백 맵 추정 유닛(107)을 더 포함할 수 있다. 폴백 맵(fallback map)은 쉬프트의 정확도가 낮은 픽셀을 검출하는데 이용될 수 있다. 또한, 또 다른 예에 따라, 이미지 처리 장치 (100)는 후처리 유닛(108)을 더 포함할 수도 있다.
전처리 유닛(106)과 폴백 맵 추정 유닛(107)을 포함하는 이미지 처리 장치(100)는 RGB 영상과 베이어 영상을 모두 처리할 수 있다.
쉬프트 추정 유닛(101)은 보다 신뢰성 있는 결과를 획득하기 위해 3DNR 이후에 얻어진 데이터를 사용하지 않을 수 있다. 필터 뱅크(103)는 k 개의 입력 저해상도 이미지들로부터 고해상도 이미지를 재구성할 수 있도록 수정될 수 있다. 예를 들어, 필터 뱅크(103)는 k, k-1, k-2, k1 저해상도 이미지들에 대해 계산된 필터들을 저장하도록 수정될 수 있다.
현재 픽셀에 대한 쉬프트가 단밀 장면의 저해상도 이미지 셋(10)에 포함된 모든 입력 저해상도 이미지에 대해 신뢰성 있게 계산되지 않는다면, 필터 선택 유닛(102)은 신뢰성 있는 쉬프트의 계산을 위해 분수 픽셀 쉬프트에 기초하여 저해상도 이미지로부터 필터 뱅크(103)에 저장된 복수의 필터 셋 중 적어도 하나를 선택하도록 수정될 수 있다. 한편, 필터 뱅크(103)에는 비-방향성 필터 셋(110) 및 방향성 필터 셋(120)이 저장될 수 있다.
고해상도 이미지 획득 유닛(104)은 픽셀 쉬프트가 부정확하게 계산된 이미지 영역을 고려하여 전처리된 저해상도 이미지에 고해상도 이미지를 획득하기 위한 방법을 적용할 수 있다. 픽셀 쉬프트의 정확도가 낮은 이미지 영역은 폴백 맵에 표시될 수 있다.
픽셀 쉬프트가 모든 k 입력 저해상도 이미지들에 대해 신뢰성 있게 계산된 경우, 고해상도 이미지 획득 유닛(104)은 k 이미지에 대한 필터 및 입력 이미지의 픽셀들을 이용하여 3DNR이 적용된 k 저해상도 이미지들로부터 고해상도 이미지의 픽셀들을 계산할 수 있다.
픽셀 쉬프트가 모든 k 입력 저해상도 이미지들에 대해 신뢰성 있게 계산되지 않은 경우, 고해상도 이미지 획득 유닛(104)은 저해상도 이미지로부터 정수 픽셀 쉬프트가 정확하게 산출된 입력 픽셀들을 선택할 수 있다. 고해상도 이미지 획득 유닛(10)은 선택된 입력 픽셀들에 저해상도 이미지로부터의 재구성을 위해 필터 선택 유닛(102)으로부터 획득된 필터들을 적용하여 고해상도 이미지의 픽셀들을 계산할 수 있다.
전처리 유닛(106)은 저해상도 이미지에서의 모든 픽셀들에 대해 노이즈 모델, 이미지 부분의 크기, 인접 이미지 부분에 대한 탐색 반경 및 픽셀 밝기-픽셀 노이즈 표준 편차 관계를 포함하는 노이즈 감소 파라미터들을 결정할 수 있다. 또한, 전처리 유닛(106)은 픽셀 밝기의 변화에 기초하여 텍스쳐-의존적 노이즈 감소 계수를 계산할 수 있다. 각 텍스쳐-의존적 노이즈 감소 계수는 저해상도 이미지들의 각 픽셀에 대해 계산될 수 있다.
또한, 전처리 유닛(106)은 픽셀 밝기-픽셀 노이즈 표준 편차 관계, 텍스쳐-의존적 노이즈 감소 계수 및 사용자에 의해 설정된 노이즈 감소 계수를 이용하여, 픽셀 노이즈 표준 편차의 값을 추정할 수 있다. 전처리 유닛(106)은 노이즈 감소된 저해상도 이미지들의 획득을 위해, 노이즈 감소 파라미터들 및 추정된 픽셀 노이즈 표준 편차의 값에 기초하여, 저해상도 이미지 셋에 3DNR을 실행할 수 있다.
텍스쳐-의존적 노이즈 감소 계수들은 추정된 이미지 텍스쳐화 레벨을 나타내며, 고해상도 동작에 의해 재구성될 수 있는 고주파수 디테일을 잠재적으로 포함한 영역들을 나타낼 수 있다. 최상의 시각적 품질을 보장하기 위해서는, 비-텍스쳐 영역 및 지배적인 방향을 갖는 영역 보다 작은 영역에 3DNR이 수행되어야 한다.
3DNR은 가우시안(Gaussian) 또는 포아송(Poisson)과 같은 노이즈 모델, 비교 대상이 되고 평균화가 수행되는 이미지 부분의 크기, 인접 부분에 대한 탐색 반경 R 및 이미지 지점(point) 에서의 픽셀 노이즈 표준 편차의 추정 값에 기초하여 수행될 수 있다. 인접 부분에 대한 탐색 반경 R은 현재 부분과 평균화된 이미지 부분이 배치될 수 있는 최대 거리를 결정하는데 이용될 수 있다. 또한, 픽셀 노이즈 표준 편차의 추정 값은 평균화된 픽셀 값을 계산하는데 적용되는 필터 가중치 계수들을 계산하는데 이용될 수 있다.
노이즈 모델 , 이미지 부분 크기 , 인접 부분에 대한 탐색 반경 및 픽셀 밝기(brightness)-픽셀 노이즈 표준 편차 관계 는 노출 시간 및 게인 계수 에 따라 결정될 수 있다. 여기에서, 상대적으로 더 큰(greater) 노출 시간 및 더 큰 게인 계수는 가우시안 모델 및 더 작은 반지름의 값에 적용되고, 더 작은(smaller) 노출 시간 및 더 작은 게인 계수는 푸아송 모델 및 더 큰 반지름 값에 적용될 수 있다. 다만, 이는 일 예일 뿐, 구체적인 적용 방법은 실험적으로 도출되거나 카메라 제조업체에 의해 기록된 보정 테이블 데이터에 따라 결정될 수 있다.
텍스처-의존적 노이즈 감소 계수들은 다음의 동작에 따라 계산될 수 있다.
- 입력 이미지에 대해, 저해상도 이미지의 픽셀의 밝기 값의 감마 보정을 수행
- 제 1 경험적으로 선택된 임계 값을 초과하는 값들 이 제 1 임계 값과 동일하게 설정되고, 상기 제 2 경험적으로 선택된 임계 값보다 작은 값들이 제 2 임계 값과 동일하게 설정되도록 의 임계 변환을 실행
일 실시예에 따른 좌표 를 갖는 각각의 픽셀에 대한 픽셀 노이즈 표준 편차 의 추정 값은 사용자에 의해 설정된 노이즈 감소 계수 , 텍스처-의존적 노이즈 감소 계수 및 픽셀 휘도 - 픽셀 노이즈 편차 관계 의 곱으로서 계산될 수 있다. 또한, 평균 밝기 는 기존의 저주파수 필터를 기초로 계산될 수 있다.
노이즈 감소 계수 는 노이즈 감소 레벨과 이미지의 고주파수 디테일의 저장 및 재구성 레벨 간의 트레이드 오프의 관점에서 사용자의 선호도를 결정하는데 이용될 수 있다. 일 실시예에 따른 노이즈 감소 파라미터들의 결정 및 텍스처-의존적 노이즈 감소 계수들의 계산은 RGB 저해상도 이미지들 및 베이어 저해상도 이미지들에 동일하게 수행될 수 있다.
RGB 입력 이미지에 대한 3DNR은 노이즈 추정을 이용하는 기존의 방법에 따라 실행될 수 있다.
입력 저해상도 이미지의 각 픽셀 에 대해, 3DNR이 적용되는 저해상도 이미지의 최종 픽셀 은 해당 픽셀과 해당 픽셀로부터 보다 더 떨어져 있지 않은 인접 픽셀의 가중치의 합으로서 계산될 수 있다. 또한, 에 인접한 각 픽셀 의 개별 가중치는, 픽셀들 및 가 배치된 저해상도 이미지의 부분들 사이의 거리 의 제곱의 지수 함수에 반대부호를 적용하고, 이를 픽셀 노이즈 표준 편차 값으로 나눈 다음, 모든 픽셀에 대해 평균화된 개별 가중치의 합으로 나누는 연산을 통해 산출될 수 있다.
일 실시예에 따라 가우시안 노이즈 모델이 사용되는 경우, 거리 는 현재의 픽셀 로부터 보다 더 멀리 있지 않은 픽셀과 동일한 거리에 배치된 대응되는 픽셀 간의 차이의 제곱의 합으로서 계산될 수 있다.
다른 실시예에 따라 포아송 모델이 사용되는 경우, 거리 는 현재 픽셀 보다 멀지 않은 픽셀에 대한 두 개의 인수의 함수 와 로부터 동일한 거리에 있는 각각의 픽셀의 합으로서 계산될 수 있다. 여기에서,
베이어 이미지에 대한 3DNR의 구현은 동일한 컬러 채널에 속하는 픽셀들만이 평균화된다는 점에서 RGB 이미지에 대한 3DNR의 구현과 구별될 수 있다. 또한, 베이어 이미지에 대한 3DNR의 구현은 거리 계산에 있어 동일한 색상 채널에 속한 픽셀만을 고려한다는 점에서 특히, RGB 이미지에 대한 3DNR의 구현과 구별될 수 있다.
베이어 이미지에 대한 3DNR의 구현은 평균 밝기 를 계산할 때 현재 픽셀과 동일한 색상 채널에 속한 픽셀 만 사용한다는 점에서 RGB 이미지에 대한 3DNR의 구현과 구별될 수 있다. 일 실시예에 따른 평균 밝기의 계산에서, 필터 를 이용한 필터링이 이용 될 수 있고, 이어서 기존의 디스크 형 필터에 의해 스무딩이 수행될 수 있다.
폴백 맵 추정 유닛(107)은 저해상도 이미지들의 셋 및 픽셀 쉬프트들의 셋을 기초로 폴백 맵을 생성할 수 있다. 폴백 맵은 픽셀 쉬프트의 계산에 대한 정확도를 나타낼 수 있다.
일 실시예에 따른 이미지 처리 장치(100)는 인접한 저해상도 이미지들 사이의 차이가 큰 장면에 대해, 픽셀 쉬프트 또는 장면의 변화를 계산할 때 획득되는 에러를 보상하기 위해, 폴백 맵을 이용할 수 있다. 폴백 맵 이용 시, 신뢰성 있게 계산된 픽셀들의 쉬프트 값만이 고해상도 이미지를 계산하는 데 이용될 수 있다.
일 실시예에 따른 폴백 맵 (M)은 크기 W × H × k를 가질 수 있다. 여기에서 W 및 H는 각각 고해상도 이미지의 수직 및 수평 방향의 픽셀들의 개수를 나타내고, 이 때, 고해상도 이미지는 크기 W/s x H/s의 입력 저해상도 이미지들로부터 획득될 수 있다. 또한, k는 입력 저해상도 이미지들의 수를 나타낸다. 폴백 맵의 각각의 엘리먼트는, 쉬프트가 신뢰성 있게 산출된 경우 픽셀들에 대해 값 1을 가질 수 있고, 쉬프트의 신뢰성을 보장하기 어려운 경우, 픽셀들에 대해 값 0을 가질 수 있다. 한편. 제 1 저해상도 이미지의 모든 픽셀의 쉬프트는 0의 값을 가질 수 있고 이는 신뢰할 수 있는 것으로 간주될 수 있다.
입력 RGB 저해상도 이미지들에 대한 폴백 맵은 다음의 동작에 따라 계산될 수 있다.
- 제 1 저해상도 이미지를 제외한 입력 저해상도 이미지에 대해 계산된 픽셀 쉬프트를 이용하여 픽셀 쉬프트의 보상을 수행하여, 보상된 저해상도 이미지를 획득, 픽셀 쉬프트의 보상은 기존의 방법에 따라 수행될 수 있다.
- 모든 보상된 저해상도 이미지에 대해 화이트 밸런스, 감마 보정, 가우시안 필터링 및에 따른 LST 색 공간으로의 변환을 수행, 화이트 밸런스, 감마 보정, 가우시안 필터링은 기존의 방법에 따라 수행될 수 있다.
- LST 공간에서의 제 1 저해상도 이미지의 픽셀과 LST 공간에서의 보상 된 저해상도 이미지의 픽셀 간의 유클리드 거리를 픽셀 단위로 계산; 기존의 저역 통과 필터를 이용하여 계산된 유클리드 거리를 필터링하고, 수학식 에 따라 비선형 변환을 수행
- LST 공간에서의 제 1 저해상도 이미지와 LST 공간에서의 보상된 k-1 저해상도 이미지들 각각간의 SSIM 인덱스(structural similarity index)를 픽셀 단위로 계산하고, SSIM 인덱스 값이 음수인 픽셀의 SSIM 인덱스 값을 0으로 설정
- LST 공간에서의 보상된 저해상도 이미지의 각 픽셀에 대해, 필터링되고 비선형 변환된 유클리디언 거리와 SSIM 인덱스의 곱의 몫, 필터링되고 비선형 변환된 유클리디언 거리와 SSIM 인덱스의 합을 계산, 계산을 통해 LST 공간에서의 보상된 저해상도 이미지들의 각 픽셀에 대해 계산된 몫 값 및 제 1 저해상도 이미지에서 1로 설정된 픽셀들의 값으로 구성된 중간맵(intermediate map)을 생성할 수 있고, 이 때 생성된 중간맵은 W/s x H/s x k의 크기를 가짐
- 중간맵의 크기를 W x H x k로 만들기 위해 중간맵에 스케일링(scaling)을 수행
- 스케일링된 중간맵의 임계 변환에 의해 폴백 맵을 계산, 여기에서, 임계 값보다 큰 몫 값은 1로 할당되고, 나머지 몫 값은 0으로 할당되며, 제 1 저해상도 이미지의 픽셀 값은 1로 유지됨. 임계값은 사용자가 수용 불가능하다고 생각하는 픽셀 쉬프트 계산 오류를 반영할 수 있도록, 사용자에 의해 선택될 수 있음.
베이어 이미지에 대한 폴백 맵 계산은 RGB 이미지에 대한 폴백 맵 계산에 비해 픽셀 쉬프트의 보상 측면에서 다음과 같이 상이한 동작을 포함할 수 있다.
- 예를 들어, 도 5에 도시된 바와 같이, 입력 저해상도 이미지에 해당하는 원본 베이어 이미지(510)의 픽셀들을 별개의 컬러 채널 G1(520), 채널 G2(530), 채널 R(540) 및 채널 B(550)로 분할;
- 모든 입력 저해상도 이미지에서 동일한 위치를 갖는 컬러 채널 G1 및 G2의 픽셀을 합산하고, 컬러 채널 G1 및 G2의 합산 결과를 2로 나누어 채널 G를 획득.
한편, 베이어 이미지에 대한 폴백 맵을 계산하기 위한 나머지 동작들은 RGB 이미지에 대한 폴백 맵의 동작들과 동일할 수 있다.
일 실시예에 따른 텍스쳐 방향 추정부 (105)는 전처리부 (106)에서 획득된 노이즈-감소된 저해상도 이미지의 텍스처 방향을 결정할 수 있다.
일 실시예에 따른 필터 선택 유닛(102)은 노이즈 감소 저해상도 이미지에서 폴백 맵, 분수 픽셀 쉬프트 셋 및 텍스처 방향에 기초하여 비-방향성 필터 셋 또는 방향성 필터 셋 중 하나를 선택할 수 있다.
또한, 일 실시예에 따른 고해상도 이미지 획득 유닛(104)은 폴백 맵, 노이즈 감소된 저해상도 이미지 셋, 선택된 필터 셋 및 정수 픽셀 쉬프트 셋을 사용하여 고해상도 이미지의 픽셀을 계산함으로써 RGB 고해상도 이미지를 획득할 수 있다.
폴백 맵과 노이즈 감소된 (3DNR이 적용된) 저해상도 이미지 셋을 이용하여 고해상도 이미지를 획득하는 동작은 전술한 고해상도 이미지 획득 유닛 (104)의 동작과 대응될 수 있다.
고해상도 이미지에 남아있는 컬러 아티팩트를 필터링하기 위해, 고해상도 데이터의 처리를 위한 장치(100)는 후처리 유닛(108)을 더 포함할 수 있다. 후처리 유닛(108)는 고해상도 이미지 획득 유닛(104)에서 획득된 RGB 고해상도 이미지를 YUV 이미지로 변환할 수 있다.
또한, 후처리 유닛(108)은 다음과 같이 YUV 이미지를 처리할 수 있다:
슬라이딩 윈도우 방식으로 채널 Y의 픽셀 표준 편차 맵을 계산;
가우시안 필터링을 이용하여 픽셀 표준 편차 맵에 스무딩을 수행하여 교차 양방향 필터링(cross bilateral filtering)에 대한 참조 채널(reference channel) Ref를을 계산하고, 참조 채널 Ref를 이용하여 채널 U 및 채널 V의 교차 양방향 필터링을 수행;
처리된 YUV 이미지를 후처리된 RGB 고해상도 이미지(20)로 역변환;
개시된 적어도 하나의 실시예에 따른 이미지 처리 방법은 단일 장면에 대한 저해상도 이미지 셋으로부터 고해상도 이미지를 획득하는 것을 목적으로 한다. 일 실시예에 따른 이미지 처리 방법은 입력 RGB 이미지 및 입력 베이어 이미지에 모두 수행될 수 있고, 베이어 이미지를 RGB 이미지로 변환하기 위한 디모자이킹(demosaicing) 오퍼레이션을 요구하지 않을 수 있다. 이미지 처리 방법은 전술한 이미지 처리 장치(100)에 의해 수행될 수 있다. 이미지 처리 장치(100)에서 실행되는 동작은 도 6을 참조하여 후술할 이미지 처리 방법의 각 단계에서 수행되는 동작과 대응될 수 있다.
도 6은 일 실시예에 따른 이미지 처리 방법을 설명하기 위한 흐름도이다.
단계 S610에서, 이미지 처리 장치는 단일 장면에 대한 복수의 저해상도 이미지 간의 서로 대응되는 부분에 포함된 복수의 픽셀의 움직임 정보를 나타내는 픽셀 쉬프트 셋을 획득할 수 있다.
일 실시예에 따른 이미지 처리 장치는 RGB 포맷을 갖는 복수의 저해상도 이미지 및 베이어 포맷을 갖는 복수의 저해상도 이미지 모두에 대해 픽셀 쉬프트 셋을 획득할 수 있다.
또한, 다른 실시예에 따라 이미지 처리 장치는 노이즈 감소된 복수의 저해상도 이미지로부터 픽셀 쉬프트 셋을 획득할 수도 있다. 여기에서, 이미지 처리 장치가 노이즈 감소된 복수의 저해상도 이미지를 획득하는 방법은 도 3을 참조하여 전술한 이미지 처리 장치(100)가 노이즈 감소된 복수의 저해상도 이미지를 획득하는 방법과 대응될 수 있다.
단계 S620에서, 이미지 처리 장치는 픽셀 쉬프트 셋으로부터 정수 부분 및 분수 부분을 분류하여, 정수 픽셀 쉬프트 셋 및 분수 픽셀 쉬프트 셋을 생성할 수 있다.
일 실시예에 따른 이미지 처리 장치는 복수의 픽셀의 분수 쉬프트 값 중 기 설정된 범위의 값을 갖는 유한한 개수의 분수 쉬프트 값을 선택할 수 있다. 이미지 처리 장치는 선택된 분수 픽셀 쉬프트를 조합하여, 분수 픽셀 쉬프트 셋을 생성할 수 있다.
단계 S630에서, 이미지 처리 장치는 분수 픽셀 쉬프트 셋에 기초하여, 픽셀에 적용되는 필터 가중치 값을 포함하는 기 저장된 복수의 필터 셋 중 복수의 픽셀에 대응되는 필터 셋을 선택할 수 있다.
일 실시예에 따른 이미지 처리 장치는 기 저장된 복수의 필터 셋 중 복수의 픽셀에 대응되는 필터 셋을 분수 픽셀 쉬프트 셋 및 기 설정된 정규화기에 기초하여 선택할 수 있다. 정규화기는 고해상도 이미지의 획득을 위해 부가되는 제약 조건을 적용하는데 이용될 수 있다. 또한, 일 실시예에 따른 복수의 필터 셋은 필터 뱅크에 저장될 수 있다. 기 저장된 복수의 필터 셋의 개수는 복수의 저해상도 이미지 간의 서로 대응되는 부분에 포함된 복수의 픽셀의 적어도 하나의 픽셀 쉬프트 일치 조건에 기초하여 결정될 수 있다. 여기에서, 일치 조건은 도 1을 참조하여 전술한 복수의 픽셀 쉬프트 일치 조건 각각에 대응될 수 있다.
다른 실시예에 따른 이미지 처리 장치는 복수의 저해상도 이미지 간의 서로 대응되는 부분의 텍스쳐가 방향성을 갖는지 여부 및 분수 픽셀 쉬프트 셋에 기초하여 필터 셋을 선택할 수 있다.
또 다른 실시예에 따른 이미지 처리 장치는 기 저장된 복수의 필터 셋 중 복수의 픽셀에 대응되는 필터 셋을 폴백 맵, 분수 픽셀 쉬프트 셋 및 텍스처 방향에 기초하여 선택할 수 있다.
단계 S640에서, 이미지 처리 장치는 복수의 저해상도 이미지, 선택된 필터 셋 및 정수 픽셀 쉬프트 셋을 기초로 단일 장면에 대한 고해상도 이미지를 획득할 수 있다.
한편, 일 실시예에 따른 이미지 처리 장치는 획득된 RGB 포맷의 고해상도 이미지에 남아있는 컬러 아티팩트의 제거를 위해 후처리를 수행할 수 있다. 예를 들어, 이미지 처리 장치는 RGB 이미지의 포맷을 갖는 고해상도 이미지를 YUV 이미지로 변환할 수 있다. 이미지 처리 장치는 YUV 이미지에 대해, 채널 Y에 대한 픽셀 표준 편차 맵을 획득할 수 있다. 이미지 처리 장치는 픽셀 표준 편차 맵에 스무딩을 수행하여 획득된 참조 채널을 기초로 채널 U 및 채널 V에 교차 양방향 필터링(cross bilinear filtering)을 수행할 수 있다. 이미지 처리 장치는 교차 양방향 필터링이 적용된 YUV 이미지를 RGB 이미지의 포맷으로 변환하여 후처리된 고해상도 이미지를 획득할 수 있다.
도 7은 일 실시예에 따른 이미지 처리 장치(700)가 사용자의 선택에 기초하여 필터셋을 선택하는 방법을 설명하기 위한 도면이다.
도 7을 참조하면, 이미지 처리 장치(700)는 단일 장면에 대한 복수의 저해상도 이미지로부터 고해상도 이미지를 획득하기 위해 이용되는 필터셋을 사용자의 선택에 기초하여 결정할 수 있다.
예를 들어, 이미지 처리 장치(700)는 분수 픽셀 쉬프트에 대응되는 필터 셋 선택 시, 사용자가 복수의 필터셋 중 어느 하나를 선택할 수 있도록, 각각의 필터셋에 대응되는 효과를 기재한 리스트(710)를 화면에 표시할 수 있다. 여기에서, 각 효과 별로, 획득되는 고해상도 이미지를 구성하는 색상, 엣지, 채도, 명도, 색온도, 블러, 선명도 및 명도비 중 적어도 하나가 서로 상이할 수 있다. 사용자가 고해상도 이미지 획득 시 선호하는 효과를 적용하기 위해, 리스트(710)에 기재된 복수의 효과 중 어느 하나를 선택하는 경우, 선택된 효과에 대응되는 필터셋이 선택될 수 있다.
다만, 이는 일 예일 뿐, 리스트(710) 상에는 필터셋의 식별 정보가 직접 표시되거나, 각 필터셋을 적용할 경우 생성되는 고해상도 이미지에 대한 프리뷰 이미지가 표시될 수도 있다.
한편, 이미지 처리 장치(700)는 복수의 저해상도 이미지의 속성을 고려하여 고해상도 이미지를 획득하기에 적절한 적어도 하나의 필터셋을 결정하고, 이를 리스트(710) 상에 표시할 수 있다. 이미지 처리 장치(700)는 복수의 저해상도 이미지에서 분수 픽셀 쉬프트 셋을 고려하여, 적어도 하나의 필터셋을 추천하고 최종적으로 사용자의 선택에 기초하여 필터셋을 선택함으로써, 사용자의 선호도 및 저해상도 이미지의 속성을 모두 반영한 필터셋을 선택할 수 있다.
또한, 다른 예에 따라, 이미지 처리 장치(700)는 분수 픽셀 쉬프트 셋 및 텍스쳐 방향성에 기초하여 적어도 하나의 필터셋을 추천할 수도 있다.
또 다른 예에 따라, 이미지 처리 장치(700)는 이전에 사용자가 선택한 적어도 하나의 필터셋에 관한 히스토리 정보를 기초로 선택된 필터셋을 리스트(710)상에 표시할 수 있다. 예를 들어, 이미지 처리 장치(700)는 사용자가 선택한 횟수가 기 설정된 값 이상인 필터셋을 리스트(710)상에 표시할 수 있다. 이 때, 사용자에 의해 선택된 횟수가 많은 필터셋의 경우 리스트(710)의 상단에 위치할 수 있다.
또한, 이미지 처리 장치(700)는 저해상도 이미지 셋의 종류 별로 히스토리 정보를 이용하여 리스트(710) 상에 표시되는 필터셋을 결정할 수도 있다. 저해상도 이미지 셋의 종류에는 스포츠 이미지, 드라마 이미지 및 게임 이미지 등이 포함될 수 있으며, 저해상도 이미지 셋에 포함된 객체의 종류, 움직임 등에 따라 저해상도 이미지 셋의 종류가 분류될 수 있다. 다만, 저해상도 이미지 셋의 종류가 전술한 예에 한정되는 것은 아니다. 이미지 처리 장치(700)는 저해상도 이미지 셋의 종류를 고려하여 사용자가 이전에 선택한 횟수가 많은 필터셋을 리스트(710)의 상단에 표시할 수 있다. 예를 들어, 이미지 처리 장치(700)는 획득한 저해상도 이미지 셋의 종류가 스포츠 이미지에 해당하는 경우, 스포츠 이미지에 대해 사용자가 이전에 선택한 필터셋에 관한 히스토리 정보를 기초로 사용자가 선택한 횟수가 기 설정된 값 이상인 필터셋을 리스트(710)의 상단에 표시할 수 있다.
일 실시예에 따른 이미지 처리 장치(700)는 사용자에 의해 선택된 필터셋을 기초로 복수의 저해상도 이미지로부터 획득된 고해상도 이미지를 이미지 처리 장치(700) 또는 외부의 장치의 화면에 표시할 수 있다.
도 8은 일 실시예에 따른 이미지 처리 장치가 학습 네트워크 모델(820)을 이용하여 단일 장면의 저해상도 이미지(810)로부터 고해상도 이미지(830)를 획득하는 방법을 설명하기 위한 도면이다.
도 8을 참조하면, 이미지 처리 장치는 기 생성된 학습 네트워크 모델(820)을 저장할 수 있다. 다만, 이는 일 예일 뿐, 학습 네트워크 모델(820)은 외부의 장치에 저장될 수도 있다. 이에 대해서는, 도 13을 참조하여 구체적으로 후술하도록 한다.
한편, 이미지 처리 장치가 학습 네트워크 모델(820)을 이용하여 단일 장면의 저해상도 이미지(810)로부터 고해상도 이미지(830)를 획득한다는 것은, 이미지 처리 장치가 학습 네트워크 모델(820)을 이용한 결과에 따라 분수 픽셀 쉬프트 셋에 적용되는 필터셋을 결정하는 것일 수 있다. 이를 위해, 이미지 처리 장치는 분수 픽셀 쉬프트 셋에 대응되는 필터 셋에 대해 지도 학습 및/또는 비지도 학습된 결과를 분석 및/또는 평가하는 동작을 반복 수행함으로써, 학습 네트워크 모델(820)을 학습시킬 수 있다.
또한, 다른 예에 따라, 이미지 처리 장치는 분수 픽셀 쉬프트 뿐만 아니라, 텍스트 방향성을 함께 고려하여 전술한 방식과 같이 학습 네트워크 모델(820)을 학습시킬 수도 있다.
한편, 학습 네트워크 모델(820)의 학습을 위한 복수의 저해상도 이미지는 고해상도 이미지를 가지고 있는 경우, 변환 및 연속적인 다운-샘플링을 수행함으로써 고해상도 이미지로부터 획득될 수 있다. 예를 들어, 학습을 위한 복수의 저해상도 이미지는 전술한 수학식 1에 기초하여 기 획득된 고해상도 이미지로부터 획득될 수 있다.
일 실시예에 따른 이미지 처리 장치는 학습 네트워크 모델(820)을 통해 복수의 저해상도 이미지(810)로부터 고해상도 이미지(830)를 획득하는데 적합한 필터셋 각각의 확률을 출력할 수 있다. 이미지 처리 장치는 출력된 확률값이 임계값 이상인 필터셋들을 화면에 표시할 수 있다. 이 때, 사용자는 화면에 표시된 필터셋들 중 어느 하나를 선택할 수 있다. 다만, 이는 일 예일 뿐, 다른 예에 따라, 이미지 처리 장치는 출력된 확률값이 가장 높은 필터셋을 이용하여 고해상도 이미지를 생성하고, 이를 화면에 표시할 수 있다.
한편, 다른 실시예에 따른 이미지 처리 장치는 학습 네트워크 모델(820)이 복수의 저해상도 이미지(810)의 종류를 고려하여 필터셋을 결정할 수 있도록 학습 네트워크 모델(820)을 학습시킬 수 있다. 예를 들어, 이미지 처리 장치는 종류 별 저해상도 이미지 셋을 학습 네트워크 모델(820)에 입력하고, 출력으로 사용자가 선호하는 필터셋이 출력되도록 학습 네트워크 모델(820)을 학습시킬 수 있다. 이에 따라, 이미지 처리 장치는 학습 네트워크 모델(820)을 이용하여, 새롭게 획득된 저해상도 이미지 셋의 종류에 대해 사용자가 선호하는 필터셋을 출력으로 획득할 수 있다.
도 9는 다른 실시예에 따라 단일 장면의 저해상도 이미지로부터 고해상도 이미지를 획득하는 이미지 처리 장치(900)의 블록도이다.
도 9를 참조하면, 이미지 처리 장치(900)는 적어도 하나의 프로세서(910) 및 메모리(920)를 포함할 수 있다. 다만, 이는 일 실시예일 뿐, 이미지 처리 장치(900)의 구성 요소가 전술한 예에 한정되는 것은 아니다.
일 실시예에 따른 적어도 하나의 프로세서(910)는 도 1을 참조하여 전술한 쉬프트 추정 유닛(101), 필터 선택 유닛(102), 필터 뱅크(103) 및 고해상도 이미지 획득 유닛(104)의 동작을 수행할 수 있다.
또한, 다른 실시예에 따라, 적어도 하나의 프로세서(910)는 도 2를 참조하여 전술한 쉬프트 추정 유닛(101), 필터 선택 유닛(102), 필터 뱅크(103), 고해상도 이미지 획득 유닛(104) 및 텍스처 방향 추정 유닛(105)의 동작을 수행할 수 있다.
또 다른 실시예에 따라, 적어도 하나의 프로세서(910)는 도 3을 참조하여 전술한 쉬프트 추정 유닛(101), 필터 선택 유닛(102), 필터 뱅크(103), 고해상도 이미지 획득 유닛(104), 텍스쳐 방향 추정 유닛(105), 전처리 유닛(106), 폴백 맵 추정 유닛(107) 및 후처리 유닛(108)의 동작을 수행할 수 있다.
예를 들어, 적어도 하나의 프로세서(910)는 단일 장면에 대한 복수의 저해상도 이미지 간의 서로 대응되는 부분에 포함된 복수의 픽셀의 움직임 정보를 나타내는 픽셀 쉬프트 셋을 획득할 수 있다. 또한, 적어도 하나의 프로세서(710)는 픽셀 쉬프트 셋으로부터 정수 부분 및 분수 부분을 분류하여, 정수 픽셀 쉬프트 셋 및 분수 픽셀 쉬프트 셋을 생성할 수 있다. 적어도 하나의 프로세서(910)는 분수 픽셀 쉬프트 셋에 기초하여, 픽셀에 적용되는 필터 가중치 값을 포함하는 기 저장된 복수의 필터 셋 중 복수의 픽셀에 대응되는 필터 셋을 선택할 수 있다. 또한, 적어도 하나의 프로세서(910)는 복수의 저해상도 이미지, 상기 선택된 필터 셋 및 정수 픽셀 쉬프트 셋을 기초로 단일 장면에 대한 고해상도 이미지를 획득할 수 있다.
한편, 메모리(920)는 적어도 하나의 프로세서(910)의 처리 및 제어를 위한 프로그램들(하나 이상의 인스트럭션들)을 저장할 수 있다. 메모리(920)에 저장된 프로그램들은 기능에 따라 복수 개의 모듈들로 구분될 수 있다.
일 실시예에 따라 메모리(920)는 도 10을 참고하여 후술할 데이터 학습부 및 데이터 인식부가 소프트웨어 모듈로 구성될 수 있다. 또한, 데이터 학습부 및 데이터 인식부는 각각 독립적으로 학습 네트워크 모델을 포함하거나, 하나의 학습 네트워크 모델을 공유할 수 있다.
도 10은 일 실시예에 따른 적어도 하나의 프로세서(910)를 설명하기 위한 도면이다.
도 10을 참조하면, 일 실시예에 따른 적어도 하나의 프로세서(920)는 데이터 학습부(1010) 및 데이터 인식부(1020)를 포함할 수 있다.
데이터 학습부(1010)는 복수의 저해상도 이미지로부터 분수 픽셀 쉬프트 셋에 대한 필터셋을 결정하기 위한 기준을 학습할 수 있다. 또한, 다른 실시예에 따라, 데이터 학습부(1010)는 복수의 저해상도 이미지로부터 고해상도 이미지를 획득하기 위해 사용자가 선택한 필터셋에 관한 정보 및 복수의 저해상도 이미지의 속성 정보로부터 분수 픽셀 쉬프트 셋에 대응되는 필터셋을 결정하기 위한 기준을 학습할 수 있다. 여기에서, 속성 정보는 이미지를 구성하는 색상, 엣지(edge), 폴리건(polygon), 채도(saturation), 명도(brightness), 색온도, 블러(blur), 선명도(sharpness) 및 명도비(contrast) 등을 포함할 수 있으나, 속성 정보가 이에 한정되는 것은 아니다.
데이터 인식부(1020)는 데이터 학습부(1010)를 통해 학습된 기준에 기초하여, 복수의 저해상도 이미지의 분수 픽셀 쉬프트 셋에 대응되는 필터셋을 결정할 수 있다.
데이터 학습부(1010) 및 데이터 인식부(1020) 중 적어도 하나는, 적어도 하나의 하드웨어 칩 형태로 제작되어 이미지 처리 장치에 탑재될 수 있다. 예를 들어, 데이터 학습부(1010) 및 데이터 인식부(1020) 중 적어도 하나는 인공 지능(AI; artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 전술한 각종 이미지 처리 장치에 탑재될 수도 있다.
이 경우, 데이터 학습부(1010) 및 데이터 인식부(1020)는 하나의 이미지 처리 장치에 탑재될 수도 있으며, 또는 별개의 이미지 처리 장치들에 각각 탑재될 수도 있다. 예를 들어, 데이터 학습부(1010) 및 데이터 인식부(1020) 중 하나는 이미지 처리 장치에 포함되고, 나머지 하나는 서버에 포함될 수 있다. 또한, 데이터 학습부(1010) 및 데이터 인식부(1020)는 유선 또는 무선으로 통하여, 데이터 학습부(1010)가 구축한 모델 정보를 데이터 인식부(1020)로 제공할 수도 있고, 데이터 인식부(1020)로 입력된 데이터가 추가 학습 데이터로서 데이터 학습부(1010)로 제공될 수도 있다.
한편, 데이터 학습부(1010) 및 데이터 인식부(1020) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 학습부(1010) 및 데이터 인식부(1020) 중 적어도 하나가 소프트웨어 모듈(또는, 인스트럭션(instruction) 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 컴퓨터로 읽을 수 있는 판독 가능한 비일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 또한, 이 경우, 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 어플리케이션에 의해 제공될 수 있다. 또는, 적어도 하나의 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 어플리케이션에 의해 제공될 수 있다.
도 11은 일 실시예에 따른 데이터 학습부(1010)의 블록도이다.
도 11을 참조하면, 일부 실시예에 따른 데이터 학습부(1010)는 데이터 획득부(1110), 전처리부(1120), 학습 데이터 선택부(1130), 모델 학습부(1140) 및 모델 평가부(1150)를 포함할 수 있다. 다만, 이는 일 실시예일 뿐, 전술한 구성들 보다 적은 구성 요소로 데이터 학습부(1010)가 구성되거나, 전술한 구성들 이외에 다른 구성 요소가 추가적으로 데이터 학습부(1010)에 포함될 수 있다.
데이터 획득부(1110)는 복수의 저해상도 이미지 셋을 학습 데이터로 획득할 수 있다. 일 예로, 데이터 획득부(1110)는 데이터 학습부(1010)를 포함하는 이미지 처리 장치 또는 데이터 학습부(1010)를 포함하는 이미지 처리 장치와 통신 가능한 외부의 장치로부터 적어도 하나의 이미지를 획득할 수 있다.
전처리부(1120)는 복수의 저해상도 이미지 셋 각각의 노이즈를 제거하는 등의 전처리를 수행할 수 있다. 또한, 전처리부(1120)는 후술할 모델 학습부(1140)가 학습을 위하여 획득된 저해상도 이미지 셋을 이용할 수 있도록, 획득된 저해상도 이미지 셋을 기 설정된 포맷으로 가공할 수 있다.
학습 데이터 선택부(1130)는 전처리된 데이터 중에서 학습에 필요한 저해상도 이미지를 선택할 수 있다. 선택된 저해상도 이미지는 모델 학습부(1140)에 제공될 수 있다. 학습 데이터 선택부(1130)는 설정된 기준에 따라, 전처리된 이미지 중에서 학습에 필요한 이미지를 선택할 수 있다.
모델 학습부(1140)는 학습 네트워크 모델 내의 복수의 레이어에서 저해상도 이미지로부터 어떠한 정보를 이용하여, 분수 픽셀 쉬프트 셋에 대한 필터 셋을 결정할 지 여부에 관한 기준을 학습할 수 있다.
또한, 모델 학습부(1140)는, 예를 들어, 획득된 고해상도 이미지의 화질이 적절한지 여부에 대한 피드백을 이용하는 강화 학습(reinforcement learning)을 통하여, 데이터 인식 모델을 학습시킬 수 있다.
또한, 데이터 인식 모델이 학습되면, 모델 학습부(1140)는 학습된 데이터 인식 모델을 저장할 수 있다.
모델 평가부(1150)는 학습 네트워크 모델에 평가 데이터를 입력하고, 평가 데이터로부터 출력되는 인식 결과가 소정 기준을 만족하지 못하는 경우, 모델 학습부(1140)로 하여금 다시 학습하도록 할 수 있다. 이 경우, 평가 데이터는 학습 네트워크 모델을 평가하기 위한 기 설정된 데이터일 수 있다.
한편, 데이터 학습부(1010) 내의 데이터 획득부(1110), 전처리부(1120), 학습 데이터 선택부(1130), 모델 학습부(1140) 및 모델 평가부(1150) 중 적어도 하나는, 적어도 하나의 하드웨어 칩 형태로 제작되어 이미지 처리 장치에 탑재될 수 있다. 예를 들어, 데이터 획득부(1110), 전처리부(1120), 학습 데이터 선택부(1130), 모델 학습부(1140) 및 모델 평가부(1150) 중 적어도 하나는 인공 지능(AI; artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 전술한 각종 이미지 처리 장치에 탑재될 수도 있다.
또한, 데이터 획득부(1110), 전처리부(1120), 학습 데이터 선택부(1130), 모델 학습부(1140) 및 모델 평가부(1150)는 하나의 이미지 처리 장치에 탑재될 수도 있으며, 또는 별개의 이미지 처리 장치들에 각각 탑재될 수도 있다. 예를 들어, 데이터 획득부(1110), 전처리부(1120), 학습 데이터 선택부(1130), 모델 학습부(1140) 및 모델 평가부(1150) 중 일부는 이미지 처리 장치에 포함되고, 나머지 일부는 서버에 포함될 수 있다.
또한, 데이터 획득부(1110), 전처리부(1120), 학습 데이터 선택부(1130), 모델 학습부(1140) 및 모델 평가부(1150) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 획득부(1110), 전처리부(1120), 학습 데이터 선택부(1130), 모델 학습부(1140) 및 모델 평가부(1150) 중 적어도 하나가 소프트웨어 모듈(또는, 인스트럭션(instruction) 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 컴퓨터로 읽을 수 있는 판독 가능한 비일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 또한, 이 경우, 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 애플리케이션에 의해 제공될 수 있다. 또는, 적어도 하나의 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 애플리케이션에 의해 제공될 수 있다.
도 12는 일 실시예에 따른 데이터 인식부(1020)의 블록도이다.
도 12를 참조하면, 일부 실시예에 따른 데이터 인식부(1020)는 데이터 획득부(1210), 전처리부(1220), 인식 데이터 선택부(1230), 인식 결과 제공부(1240) 및 모델 갱신부(1250)를 포함할 수 있다.
데이터 획득부(1210)는 복수의 저해상도 이미지 셋을 획득할 수 있으며, 전처리부(1220)는 획득된 복수의 저해상도 이미지 셋을 전처리할 수 있다. 전처리부(1220)는 후술할 인식 결과 제공부(1240)가 분수 픽셀 쉬프트 셋에 대한 필터셋의 결정을 위하여 획득된 복수의 저해상도 이미지 셋을 이용할 수 있도록, 저해상도 이미지 셋을 기 설정된 포맷으로 가공할 수 있다. 인식 데이터 선택부(1230)는 전처리된 데이터 중에서 분수 픽셀 쉬프트 셋에 대한 필터셋 결정에 필요한 저해상도 이미지를 선택할 수 있다. 선택된 저해상도 이미지는 인식 결과 제공부(1240)에게 제공될 수 있다.
인식 결과 제공부(1240)는 선택된 저해상도 이미지를 기초로 고해상도 이미지 획득을 위해 이용되는 분수 픽셀 쉬프트 셋에 대한 필터셋을 결정할 수 있다. 또한, 인식 결과 제공부(1240)는 결정된 필터셋에 관한 정보를 제공할 수 있다.
모델 갱신부(1250)는 인식 결과 제공부(1240)에 의해 제공되는 필터셋에 대한 평가에 기초하여, 학습 네트워크 모델에 포함된 레이어의 파라미터 등이 갱신되도록 평가에 대한 정보를 도 11를 참고하여 전술한 모델 학습부(1140)에게 제공할 수 있다.
한편, 데이터 인식부(1020) 내의 데이터 획득부(1210), 전처리부(1220), 인식 데이터 선택부(1230), 인식 결과 제공부(1240) 및 모델 갱신부(1250) 중 적어도 하나는, 적어도 하나의 하드웨어 칩 형태로 제작되어 이미지 처리 장치에 탑재될 수 있다. 예를 들어, 데이터 획득부(1210), 전처리부(1220), 인식 데이터 선택부(1230), 인식 결과 제공부(1240) 및 모델 갱신부(1250) 중 적어도 하나는 인공 지능을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 전술한 각종 이미지 처리 장치에 탑재될 수도 있다.
또한, 데이터 획득부(1210), 전처리부(1220), 인식 데이터 선택부(1230), 인식 결과 제공부(1240) 및 모델 갱신부(1250)는 하나의 이미지 처리 장치에 탑재될 수도 있으며, 또는 별개의 이미지 처리 장치들에 각각 탑재될 수도 있다. 예를 들어, 데이터 획득부(1210), 전처리부(1220), 인식 데이터 선택부(1230), 인식 결과 제공부(1240) 및 모델 갱신부(1250) 중 일부는 이미지 처리 장치에 포함되고, 나머지 일부는 서버에 포함될 수 있다.
또한, 데이터 획득부(1210), 전처리부(1220), 인식 데이터 선택부(1230), 인식 결과 제공부(1240) 및 모델 갱신부(1250) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 획득부(1210), 전처리부(1220), 인식 데이터 선택부(1230), 인식 결과 제공부(1240) 및 모델 갱신부(1250) 중 적어도 하나가 소프트웨어 모듈(또는, 인스트럭션(instruction) 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 컴퓨터로 읽을 수 있는 판독 가능한 비일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 또한, 이 경우, 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 어플리케이션에 의해 제공될 수 있다. 또는, 적어도 하나의 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 어플리케이션에 의해 제공될 수 있다.
도 13은 일 실시예에 따른 서버(1310)에 구비된 학습 네트워크 모델(1315)을 이용하여 이미지 처리 장치(1320 또는 1330)가 복수의 저해상도 이미지(1332)로부터 고해상도 이미지(1334)를 획득하는 방법을 설명하기 위한 도면이다.
도 13을 참조하면, 복수의 저해상도 이미지(1332)로부터 고해상도 이미지(1334)를 획득하기 위한 필터셋을 결정하는데 이용되는 학습 네트워크 모델(1315)은 서버(1310)에 저장될 수 있다. 여기에서, 학습 네트워크 모델(1315)은 도 8을 참조하여 전술한 학습 네트워크 모델(820)과 대응될 수 있다.
사용자가 복수의 이미지 처리 장치(1320, 1330)를 이용하는 경우, 서버(1310)에 저장된 학습 네트워크 모델로부터 학습 네트워크 모델(1315)을 다운로드 받거나, 학습 네트워크 모델(1315)을 기반으로 결정된 필터셋에 관한 정보를 수신함으로써 복수의 저해상도 이미지로부터 고해상도 이미지를 획득할 수 있다.
한편, 서버(1310)는 이전에 사용자가 선택한 필터셋들에 관한 정보를 기초로 필터셋 결정 시 사용자의 선호도가 반영되도록 학습 네트워크 모델(1315)을 학습시킬 수 있다. 이에 따라, 사용자가 제 1 이미지 처리 장치(1320)를 이용하여 필터셋을 결정하는 경우 및 제 2 이미지 처리 장치(1330)를 이용하여 필터셋을 결정하는 경우 모두 서버(1310)에 저장된 학습 네트워크 모델(1315)을 이용함으로써, 장치가 변경되는 경우에도 사용자의 선호도가 반영된 필터셋을 결정할 수 있다.
또한, 다른 실시예에 따라 서버(1310)에는 도 3을 참조하여 전술한 노이즈 제거를 위한 설정 정보가 저장될 수 있다. 예를 들어, 서버(1310)는 제 2 이미지 처리 장치(1330)로부터 복수의 저해상도 이미지(1332)가 수신되는 경우, 서버(1310)에 저장된 노이즈 제거를 위한 설정 정보에 기초하여, 수신된 복수의 저해상도 이미지(1332)에 대한 전처리를 수행할 수 있다.
한편, 서버(1310)는 이미지 처리 장치들(1320, 1330)에 서비스를 제공하는 컴퓨팅 장치일 수 있으며, 예를 들어, PC, 랩톱, 마이크로 서버 및 기타 모바일 또는 비모바일 컴퓨팅 장치일 수 있다. 그러나, 이에 제한되지 않으며, 서버(1310)는 통신 기능 및 데이터 프로세싱 기능을 구비한 모든 종류의 기기를 포함할 수 있다.
일 실시예에 따른 이미지 처리 방법은 버스트 샷 기능을 지원하는 시스템을 포함하는 하나 이상의 카메라를 갖는 다양한 이미지 캡쳐 시스템에 적용될 수 있다. 개시된 실시예는 "디지털 줌" 및 일반적인 카메라 사용 시나리오에서의 메가 픽셀 이미지 배율(Mpx)을 위해 사용 될 수있다. 개시된 실시예는 광학 문자 인식 (OCR)을 필요로 하는 응용 분야에서 사용될 수 있다. 또한, 개시된 실시예는 범용 프로세서, 디지털 신호 프로세서 (DSP) 및 / 또는 중앙 처리 장치 (CPU)를 사용하는 소프트웨어, 또는 부분적으로는 SoC 및 부분적으로는 시스템 온칩 (SoC)으로 구현될 수 있다. 다른 예에 따라, 개시된 실시예는 별도의 장치 또는 화상 신호 처리기 (ISP)의 일부로서 구현될 수도 있다.
일 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
도면에 도시된 실시 예들에서 참고부호를 기재하였으며, 실시 예들을 설명하기 위하여 특정 용어들을 사용하였으나, 특정 용어에 의해 본 발명이 한정되는 것은 아니며, 실시 예는 당업자에 있어서 통상적으로 생각할 수 있는 모든 구성 요소들을 포함할 수 있다.
실시 예는 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들은 특정 기능들을 실행하는 다양한 개수의 하드웨어 또는/및 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 실시 예는 하나 이상의 마이크로프로세서들의 제어 또는 다른 제어 장치들에 의해서 다양한 기능들을 실행할 수 있는, 메모리, 프로세싱, 로직(logic), 룩 업 테이블(look-up table) 등과 같은 직접 회로 구성들을 채용할 수 있다. 또한, 실시예는 동종의 또는 서로 다른 종류의 코어들, 서로 다른 종류의 CPU들을 채용할 수도 있다. 본 발명에의 구성 요소들이 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있는 것과 유사하게, 실시 예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 실시 예는 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다. “매커니즘”, “요소”, “수단”, “구성”과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다. 상기 용어는 프로세서 등과 연계하여 소프트웨어의 일련의 처리들(routines)의 의미를 포함할 수 있다.
실시 예에서 설명하는 특정 실행들은 일 실시 예들로서, 어떠한 방법으로도 실시 예의 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다. 또한, “필수적인”, “중요하게” 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.
Claims (21)
- 이미지를 처리하는 방법에 있어서,
단일 장면에 대한 복수의 저해상도 이미지 간의 서로 대응되는 부분에 포함된 복수의 픽셀의 움직임 정보를 나타내는 픽셀 쉬프트 셋을 획득하는 단계;
상기 픽셀 쉬프트 셋으로부터 정수 부분 및 분수 부분을 분류하여, 정수 픽셀 쉬프트 셋 및 분수 픽셀 쉬프트 셋을 생성하는 단계;
상기 분수 픽셀 쉬프트 셋에 기초하여, 픽셀에 적용되는 필터 가중치 값을 포함하는 기 저장된 복수의 필터 셋 중 상기 복수의 픽셀에 대응되는 필터 셋을 선택하는 단계; 및
상기 복수의 저해상도 이미지, 상기 선택된 필터 셋 및 상기 정수 픽셀 쉬프트 셋을 기초로 상기 단일 장면에 대한 고해상도 이미지를 획득하는 단계를 포함하는 방법. - 제 1 항에 있어서, 상기 분수 픽셀 쉬프트 셋을 생성하는 단계는,
상기 복수의 픽셀의 분수 쉬프트 값 중 기 설정된 범위의 값을 갖는 분수 쉬프트 값을 선택하는 단계; 및
상기 선택된 분수 픽셀 쉬프트를 조합하여, 상기 분수 픽셀 쉬프트 셋을 생성하는 단계를 포함하는, 방법. - 제 1 항에 있어서, 상기 필터 셋을 선택하는 단계는,
상기 기 저장된 복수의 필터 셋 중 상기 복수의 픽셀에 대응되는 필터 셋을 상기 분수 픽셀 쉬프트 셋 및 기 설정된 정규화기(regularizer)에 기초하여 선택하는, 방법. - 제 1 항에 있어서, 상기 기 저장된 복수의 필터 셋의 개수는,
상기 복수의 저해상도 이미지 간의 서로 대응되는 부분에 포함된 복수의 픽셀의 적어도 하나의 픽셀 쉬프트 일치 조건에 기초하여 결정되는, 방법. - 제 1 항에 있어서, 상기 기 저장된 복수의 필터 셋은,
비-방향성 필터 셋 및 방향성 필터 셋을 포함하고,
상기 필터 셋을 선택하는 단계는,
상기 복수의 저해상도 이미지 간의 서로 대응되는 부분의 텍스쳐가 방향성을 갖는지 여부 및 상기 분수 픽셀 쉬프트 셋에 기초하여 상기 필터 셋을 선택하는, 방법. - 제 1 항에 있어서,
상기 복수의 저해상도 이미지의 픽셀에 대해 노이즈 모델, 상기 부분의 크기, 인접한 이미지 부분에 대한 탐색 반경 및 픽셀 밝기- 픽셀 노이즈 표준 편차 관계를 포함하는 노이즈 감소 파라미터를 결정하는 단계;
상기 복수의 저해상도 이미지의 픽셀의 밝기의 변화에 기초하여 텍스처 의존적 노이즈 감소 계수를 획득하는 단계;
상기 픽셀 밝기-픽셀 노이즈 표준 편차 관계, 상기 텍스처 의존적 노이즈 감소 계수 및 사용자에 의해 기 설정된 노이즈 감소 계수를 사용하여 픽셀 노이즈 표준 편차의 추정값을 결정하는 단계; 및
상기 복수의 저해상도 이미지에 상기 노이즈 감소 파라미터 및 상기 픽셀 노이즈 표준 편차의 추정값을 기초로, 3차원 노이즈 감소(3Dimensional Noise Reduction)를 수행하여 노이즈 감소된 복수의 저해상도 이미지를 획득하는 단계를 더 포함하고,
상기 픽셀 쉬프트 셋은,
상기 노이즈 감소된 복수의 저해상도 이미지로부터 획득되는, 방법. - 제 6항에 있어서,
상기 픽셀 쉬프트 셋을 기초로 상기 픽셀 쉬프트 셋에 포함된 픽셀 쉬프트 값의 정확도를 나타내는 폴백 맵을 생성하는 단계; 및
상기 노이즈 감소된 복수의 저해상도 이미지의 텍스처 방향을 결정하는 단계를 더 포함하고,
상기 필터 셋을 선택하는 단계는,
상기 기 저장된 복수의 필터 셋 중 상기 복수의 픽셀에 대응되는 필터 셋을 상기 폴백 맵, 상기 분수 픽셀 쉬프트 셋 및 상기 텍스처 방향에 기초하여 선택하는, 방법. - 제 1 항에 있어서, 상기 단일 장면에 대한 복수의 저해상도 이미지는 RGB 이미지인, 방법.
- 제 1 항에 있어서, 상기 단일 장면에 대한 복수의 저해상도 이미지는 베이어(bayer) 이미지인, 방법.
- 제 8 항에 있어서,
RGB 이미지의 포맷을 갖는 상기 고해상도 이미지를 YUV 이미지로 변환하는 단계;
상기 YUV 이미지에 대해, 채널 Y 에 대한 픽셀 표준 편차 맵을 획득하는 단계;
상기 픽셀 표준 편차 맵에 스무딩(smoothing)을 수행하여 획득된 참조 채널을 기초로 채널 U 및 채널 V에 교차 양방향 필터링(cross bilinear filtering)을 수행하는 단계; 및
상기 교차 양방향 필터링이 적용된 YUV 이미지를 상기 RGB 이미지의 포맷으로 변환하여 후처리된 고해상도 이미지를 획득하는 단계를 더 포함하는, 방법. - 이미지를 처리하는 장치에 있어서,
단일 장면에 대한 복수의 저해상도 이미지 간의 서로 대응되는 부분에 포함된 복수의 픽셀의 움직임 정보를 나타내는 픽셀 쉬프트 셋을 획득하고, 상기 픽셀 쉬프트 셋으로부터 정수 부분 및 분수 부분을 분류하여, 정수 픽셀 쉬프트 셋 및 분수 픽셀 쉬프트 셋을 생성하며, 상기 분수 픽셀 쉬프트 셋에 기초하여, 픽셀에 적용되는 필터 가중치 값을 포함하는 기 저장된 복수의 필터 셋 중 상기 복수의 픽셀에 대응되는 필터 셋을 선택하고, 상기 복수의 저해상도 이미지, 상기 선택된 필터 셋 및 상기 정수 픽셀 쉬프트 셋을 기초로 상기 단일 장면에 대한 고해상도 이미지를 획득하는 적어도 하나의 프로세서; 및
상기 복수의 필터 셋을 저장하는 메모리를 포함하는, 장치. - 제 11 항에 있어서, 상기 적어도 하나의 프로세서는,
상기 복수의 픽셀의 분수 쉬프트 값 중 기 설정된 범위의 값을 갖는 분수 쉬프트 값을 선택하고, 상기 선택된 분수 픽셀 쉬프트를 조합하여, 상기 분수 픽셀 쉬프트 셋을 생성하는, 장치. - 제 11 항에 있어서, 상기 적어도 하나의 프로세서는,
상기 기 저장된 복수의 필터 셋 중 상기 복수의 픽셀에 대응되는 필터 셋을 상기 분수 픽셀 쉬프트 셋 및 기 설정된 정규화기(regularizer)에 기초하여 선택하는, 장치. - 제 11 항에 있어서, 상기 기 저장된 복수의 필터 셋의 개수는,
상기 복수의 저해상도 이미지 간의 서로 대응되는 부분에 포함된 복수의 픽셀의 적어도 하나의 픽셀 쉬프트 일치 조건에 기초하여 결정되는, 장치. - 제 11 항에 있어서, 상기 기 저장된 복수의 필터 셋은,
비-방향성 필터 셋 및 방향성 필터 셋을 포함하고,
상기 적어도 하나의 프로세서는,
상기 복수의 저해상도 이미지 간의 서로 대응되는 부분의 텍스쳐가 방향성을 갖는지 여부 및 상기 분수 픽셀 쉬프트 셋에 기초하여 상기 필터 셋을 선택하는, 장치. - 제 15 항에 있어서, 상기 적어도 하나의 프로세서는,
상기 복수의 저해상도 이미지의 픽셀에 대해 노이즈 모델, 상기 부분의 크기, 인접한 이미지 부분에 대한 탐색 반경 및 픽셀 밝기- 픽셀 노이즈 표준 편차 관계를 포함하는 노이즈 감소 파라미터를 결정하고, 상기 복수의 저해상도 이미지의 픽셀의 밝기의 변화에 기초하여 텍스처 의존적 노이즈 감소 계수를 획득하며, 상기 픽셀 밝기-픽셀 노이즈 표준 편차 관계, 상기 텍스처 의존적 노이즈 감소 계수 및 사용자에 의해 기 설정된 노이즈 감소 계수를 사용하여 픽셀 노이즈 표준 편차의 추정값을 결정하고, 상기 복수의 저해상도 이미지에 상기 노이즈 감소 파라미터 및 상기 픽셀 노이즈 표준 편차의 추정값을 기초로, 3차원 노이즈 감소(3Dimensional Noise Reduction)를 수행하여 노이즈 감소된 복수의 저해상도 이미지를 획득하고,
상기 픽셀 쉬프트 셋은,
상기 노이즈 감소된 복수의 저해상도 이미지로부터 획득되는, 장치. - 제 16항에 있어서, 상기 적어도 하나의 프로세서는,
상기 픽셀 쉬프트 셋을 기초로 상기 픽셀 쉬프트 셋에 포함된 픽셀 쉬프트 값의 정확도를 나타내는 폴백 맵을 생성하고, 상기 노이즈 감소된 복수의 저해상도 이미지의 텍스처 방향을 결정하며, 상기 기 저장된 복수의 필터 셋 중 상기 복수의 픽셀에 대응되는 필터 셋을 상기 폴백 맵, 상기 분수 픽셀 쉬프트 셋 및 상기 텍스처 방향에 기초하여 선택하는, 장치. - 제 11 항에 있어서, 상기 단일 장면에 대한 복수의 저해상도 이미지는 RGB 이미지인, 장치.
- 제 11 항에 있어서, 상기 단일 장면에 대한 복수의 저해상도 이미지는 베이어(bayer) 이미지인, 장치.
- 제 19 항에 있어서, 상기 적어도 하나의 프로세서는,
RGB 이미지의 포맷을 갖는 상기 고해상도 이미지를 YUV 이미지로 변환하고, 상기 YUV 이미지에 대해, 채널 Y 에 대한 픽셀 표준 편차 맵을 획득하며, 상기 픽셀 표준 편차 맵에 스무딩(smoothing)을 수행하여 획득된 참조 채널을 기초로 채널 U 및 채널 V에 교차 양방향 필터링(cross bilinear filtering)을 수행하고, 상기 교차 양방향 필터링이 적용된 YUV 이미지를 상기 RGB 이미지의 포맷으로 변환하여 후처리된 고해상도 이미지를 획득하는, 장치. - 제 1 항 내지 제 10 항 중 어느 한 항의 방법을 실행하기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/970,617 US10776904B2 (en) | 2017-05-03 | 2018-05-03 | Method and apparatus for processing image |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2017115447A RU2652722C1 (ru) | 2017-05-03 | 2017-05-03 | Обработка данных для сверхразрешения |
RU2017115447 | 2017-05-03 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20180122548A true KR20180122548A (ko) | 2018-11-13 |
KR102481882B1 KR102481882B1 (ko) | 2022-12-28 |
Family
ID=62105656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180042920A KR102481882B1 (ko) | 2017-05-03 | 2018-04-12 | 이미지를 처리하는 방법 및 장치 |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR102481882B1 (ko) |
RU (1) | RU2652722C1 (ko) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020251337A1 (ko) * | 2019-06-13 | 2020-12-17 | 엘지이노텍 주식회사 | 카메라 장치 및 카메라 장치의 이미지 생성 방법 |
KR20210012009A (ko) * | 2018-09-30 | 2021-02-02 | 보에 테크놀로지 그룹 컴퍼니 리미티드 | 이미지 처리를 위한 장치 및 방법, 및 신경 네트워크를 트레이닝하기 위한 시스템 |
KR102213765B1 (ko) * | 2019-08-09 | 2021-02-08 | 엘지이노텍 주식회사 | 이미지 센서, 카메라 모듈 및 카메라 모듈을 포함하는 광학 기기 |
KR20210080931A (ko) * | 2019-12-23 | 2021-07-01 | 현대오트론 주식회사 | Fpga 기반 미디안 필터를 이용한 이미지 프로세싱 시스템 및 방법 |
WO2021230683A1 (ko) * | 2020-05-13 | 2021-11-18 | 엘지이노텍 주식회사 | 이미징 장치 및 이미징 방법 |
KR20220038638A (ko) * | 2021-02-02 | 2022-03-29 | 엘지이노텍 주식회사 | 이미지 센서, 카메라 모듈 및 카메라 모듈을 포함하는 광학 기기 |
KR20230146334A (ko) * | 2022-04-12 | 2023-10-19 | 한국항공우주연구원 | 광학계 특성을 반영한 딥러닝 기반의 영상 해상도 향상 시스템 및 그 방법 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2697928C1 (ru) | 2018-12-28 | 2019-08-21 | Самсунг Электроникс Ко., Лтд. | Способ сверхразрешения изображения, имитирующего повышение детализации на основе оптической системы, выполняемый на мобильном устройстве, обладающем ограниченными ресурсами, и мобильное устройство, его реализующее |
CN111507899B (zh) * | 2020-03-26 | 2023-07-11 | 辽宁师范大学 | 融合弱纹理信息的子母神经网络图像超分辨率重建方法 |
CN112508783B (zh) * | 2020-11-19 | 2024-01-30 | 西安全志科技有限公司 | 基于方向插值的图像处理方法、计算机装置及计算机可读存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020097324A1 (en) * | 1996-12-27 | 2002-07-25 | Ichiro Onuki | Image sensing apparatus and method capable of merging function for obtaining high-precision image by synthesizing images and image stabilization function |
US20100097491A1 (en) * | 2008-10-21 | 2010-04-22 | Stmicroelectronics S.R.L. | Compound camera sensor and related method of processing digital images |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5535291A (en) * | 1994-02-18 | 1996-07-09 | Martin Marietta Corporation | Superresolution image enhancement for a SIMD array processor |
US6766067B2 (en) * | 2001-04-20 | 2004-07-20 | Mitsubishi Electric Research Laboratories, Inc. | One-pass super-resolution images |
RU2454721C2 (ru) * | 2007-10-15 | 2012-06-27 | Ниппон Телеграф Энд Телефон Корпорейшн | Устройство и способ для формирования изображения, программа для его реализации и носитель информации, который хранит программу |
US8326069B2 (en) * | 2008-06-30 | 2012-12-04 | Intel Corporation | Computing higher resolution images from multiple lower resolution images |
US9137503B2 (en) * | 2010-11-03 | 2015-09-15 | Sony Corporation | Lens and color filter arrangement, super-resolution camera system and method |
US8896703B2 (en) * | 2011-03-31 | 2014-11-25 | Fotonation Limited | Superresolution enhancment of peripheral regions in nonlinear lens geometries |
US9282253B2 (en) * | 2014-02-18 | 2016-03-08 | Qualcomm Technologies, Inc. | System and method for multiple-frame based super resolution interpolation for digital cameras |
RU2583725C1 (ru) * | 2014-10-17 | 2016-05-10 | Самсунг Электроникс Ко., Лтд. | Способ и система для обработки изображения |
-
2017
- 2017-05-03 RU RU2017115447A patent/RU2652722C1/ru active
-
2018
- 2018-04-12 KR KR1020180042920A patent/KR102481882B1/ko not_active Application Discontinuation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020097324A1 (en) * | 1996-12-27 | 2002-07-25 | Ichiro Onuki | Image sensing apparatus and method capable of merging function for obtaining high-precision image by synthesizing images and image stabilization function |
US20100097491A1 (en) * | 2008-10-21 | 2010-04-22 | Stmicroelectronics S.R.L. | Compound camera sensor and related method of processing digital images |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210012009A (ko) * | 2018-09-30 | 2021-02-02 | 보에 테크놀로지 그룹 컴퍼니 리미티드 | 이미지 처리를 위한 장치 및 방법, 및 신경 네트워크를 트레이닝하기 위한 시스템 |
WO2020251337A1 (ko) * | 2019-06-13 | 2020-12-17 | 엘지이노텍 주식회사 | 카메라 장치 및 카메라 장치의 이미지 생성 방법 |
KR102213765B1 (ko) * | 2019-08-09 | 2021-02-08 | 엘지이노텍 주식회사 | 이미지 센서, 카메라 모듈 및 카메라 모듈을 포함하는 광학 기기 |
WO2021029599A1 (ko) * | 2019-08-09 | 2021-02-18 | 엘지이노텍 주식회사 | 이미지 센서, 카메라 모듈 및 카메라 모듈을 포함하는 광학 기기 |
KR20210080931A (ko) * | 2019-12-23 | 2021-07-01 | 현대오트론 주식회사 | Fpga 기반 미디안 필터를 이용한 이미지 프로세싱 시스템 및 방법 |
WO2021230683A1 (ko) * | 2020-05-13 | 2021-11-18 | 엘지이노텍 주식회사 | 이미징 장치 및 이미징 방법 |
KR20220038638A (ko) * | 2021-02-02 | 2022-03-29 | 엘지이노텍 주식회사 | 이미지 센서, 카메라 모듈 및 카메라 모듈을 포함하는 광학 기기 |
KR20230146334A (ko) * | 2022-04-12 | 2023-10-19 | 한국항공우주연구원 | 광학계 특성을 반영한 딥러닝 기반의 영상 해상도 향상 시스템 및 그 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR102481882B1 (ko) | 2022-12-28 |
RU2652722C1 (ru) | 2018-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10776904B2 (en) | Method and apparatus for processing image | |
KR102481882B1 (ko) | 이미지를 처리하는 방법 및 장치 | |
CN108694705B (zh) | 一种多帧图像配准与融合去噪的方法 | |
US11610082B2 (en) | Method and apparatus for training neural network model used for image processing, and storage medium | |
CN111275626B (zh) | 一种基于模糊度的视频去模糊方法、装置及设备 | |
CN106600536B (zh) | 一种视频图像超分辨率重建方法及装置 | |
CN110827200A (zh) | 一种图像超分重建方法、图像超分重建装置及移动终端 | |
CN110557584B (zh) | 图像处理方法及装置、计算机可读存储介质 | |
EP1347410A2 (en) | Image processing method and apparatus | |
CN110136055B (zh) | 图像的超分辨率方法和装置、存储介质、电子装置 | |
CN111510691B (zh) | 颜色插值方法及装置、设备、存储介质 | |
US20150138441A1 (en) | System and method for spatio temporal video image enhancement | |
US20090310872A1 (en) | Sparse integral image descriptors with application to motion analysis | |
KR102083721B1 (ko) | 딥 러닝을 이용한 양안기반 초해상 이미징 방법 및 그 장치 | |
CN112368710B (zh) | 对来自多个帧的内容进行组合的方法及其电子装置 | |
JP2020144488A (ja) | 画像処理方法、画像処理装置、プログラム、画像処理システム、および、学習済みモデルの製造方法 | |
CN106210465A (zh) | 用于根据4d原始光场数据获得重聚焦图像的方法 | |
KR20150032822A (ko) | 이미지를 필터링하기 위한 방법 및 장치 | |
US20160005158A1 (en) | Image processing device and image processing method | |
Simpkins et al. | An introduction to super-resolution imaging | |
US20150161771A1 (en) | Image processing method, image processing apparatus, image capturing apparatus and non-transitory computer-readable storage medium | |
CN113628134B (zh) | 图像降噪方法及装置、电子设备及存储介质 | |
CN114782507A (zh) | 一种基于无监督学习的非对称双目立体匹配方法及系统 | |
CN113935934A (zh) | 图像处理方法、装置、电子设备和计算机可读存储介质 | |
JP6153318B2 (ja) | 画像処理装置、画像処理方法、画像処理プログラム、および、記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal |