KR20110038467A - 압축 파일 생성 방법 및 장치, 이를 포함하는 단말기 - Google Patents
압축 파일 생성 방법 및 장치, 이를 포함하는 단말기 Download PDFInfo
- Publication number
- KR20110038467A KR20110038467A KR1020090095765A KR20090095765A KR20110038467A KR 20110038467 A KR20110038467 A KR 20110038467A KR 1020090095765 A KR1020090095765 A KR 1020090095765A KR 20090095765 A KR20090095765 A KR 20090095765A KR 20110038467 A KR20110038467 A KR 20110038467A
- Authority
- KR
- South Korea
- Prior art keywords
- image data
- compressed image
- data
- image
- thumbnail
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/24—Systems for the transmission of television signals using pulse code modulation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Studio Devices (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
본 발명은, 프레임 데이터를 입력받는 단계-상기 프레임 데이터는 적어도 원본 이미지에 대한 압축 이미지 데이터를 포함함-; 상기 압축 이미지 데이터가 미리 설정된 기준치 이하의 저조도 상태에 있는 경우, 상기 압축 이미지 데이터에 대하여 이미지 보정 처리를 수행하는 단계; 및 상기 압축 이미지 데이터가 상기 저조도 상태에 있는 경우, 상기 보정 처리된 압축 이미지 데이터와 썸네일 압축 이미지 데이터를 포함하는 압축 이미지 파일을 생성하고, 상기 압축 이미지 데이터가 상기 저조도 상태에 있지 않은 경우, 본래의 상기 압축 이미지 데이터와 썸네일 압축 이미지 데이터를 포함하는 압축 이미지 파일을 생성하는 단계를 포함하는 압축 파일 생성 방법과, 그 장치 및 이를 포함하는 단말기를 제공한다.
단말기, 카메라 모듈, 호스트 시스템, 조도.
Description
본 발명은 영상 처리에 관련된 것으로서, 보다 상세하게는 압축 파일 생성 방법 및 장치, 그리고 상기 압축 파일 생성 장치를 포함하는 단말기에 관한 것이다.
최근, 디지털 신호 처리 분야의 급속한 기술 발전으로 인해 디지털 영상의 응용 분야가 크게 확대되고 있으며, 디지털 통신의 발전과 멀티미디어 응용 분야의 확산으로 인해 디지털 영상 처리 기술의 필요성이 더욱 증대되고 있다.
특히, 영상 신호의 경우 다량의 데이터를 처리해야 하므로, 디지털 영상의 효율적인 전송이나 저장을 위해서는 영상 압축 기술이 필수적이다.
이러한 영상 압축 기술의 대표적인 예로는 JPEG와 MPEG가 있다. JPEG(Joint Photographic Experts Group)은 정지 영상(still image)에 관한 영상 압축 기술의 표준이고, MPEG(Moving Picture Experts Group)은 동영상 압축 기술에 관한 표준이다.
정지 영상 압축 기술에 관한 표준인 JPEG는 데이터 압축 효율이 우수하며, 또한 더욱 다양한 색상을 표현할 수 있어, 일반적으로 고화질, 고해상도의 디스플레이를 요구하는 전자 기기에 적합한 것으로 알려져 있다. 또한, JPEG는 이미지 생성시 그 이미지의 질(quality)과 파일 크기(size)를 조절할 수 있는 장점이 있다.
상술한 바와 같은 장점들에 근거하여, 최근 출시되고 있는 대부분의 전자 기기들은 정지 영상의 압축 방식으로서 JPEG를 채용하고 있다. 그러나 점점 더 고화질, 고해상도의 영상을 요구하는 추세에 따라, 대량의 이미지 데이터를 고속 및 고효율로 압축할 수 있는 방법이 요구되고 있다.
더욱이 최근에는, 이미지 촬상을 주목적으로 하는 촬상용 전자 기기(예를 들어, 디지털 스틸 카메라 등)가 아니더라도, 각종 전자 기기에 100만 화소 이상의 고화질, 고해상도를 갖는 카메라 모듈이 탑재됨이 일반적이다. 특히, 노트북, 휴대폰 등과 같은 이동 단말기에 있어서, 사진이나 동영상의 촬영 및 재생 등의 기능은 사용자들이 가장 널리 사용하는 부가 기능 중의 하나인 바, 카메라 모듈은 반드시 탑재되어야 하는 필수 부품으로 여겨지고 있다.
그러나 휴대폰 등과 같은 모바일 기기 및 소형 전자 기기의 경우, 촬상용 전자 기기, 대형 전자 기기 또는 고정 단말기에 비해, 그 데이터 처리 능력 또는/및 효율, 처리 속도가 떨어지는 것이 일반적이다. 그럼에도 불구하고, 종래 기술에 의하면, 상기 모바일 기기 및 소형 전자 기기의 경우에도, 상기 촬상용 전자 기기, 대형 전자 기기 또는 고정 단말기에 적용되는 영상 압축 방식(즉, 기기 내의 호스트 시스템(Host system)을 중심으로 한 영상 압축 프로세스, 후술할 도 2 참조)이 그대로 채용되고 있었다.
이는 압축 효율 및 속도를 떨어뜨리며, 데이터 처리 부담을 가중시키는 등의 요인이 되는 문제점이 있다. 따라서, 모바일 기기 또는 소형 전자 기기 등에 더욱 특화하여 적용시킬 수 있는 압축 파일 생성 방법 및 기술이 절실히 요구된다.
본 발명은 영상 압축 효율 및 처리 속도를 향상시킬 수 있는 압축 파일 생성 방법 및 장치, 이를 포함하는 단말기를 제공하는 것을 일 목적으로 한다.
또한, 본 발명은 저조도 상태의 압축 이미지 데이터를 이미지 보정 처리함으로써 보다 개선된 화질을 갖는 압축 이미지 파일을 생성시킬 수 있는 압축 파일 생성 방법 및 장치, 이를 포함하는 단말기를 제공하는 것을 다른 목적으로 한다.
또한, 본 발명은 카메라 모듈과, 상기 카메라 모듈의 외부에 존재하여 상기 카메라 모듈과 인터페이스 연결되는 호스트 시스템(Host system)을 포함하는 전자 기기에 있어서, 상기 호스트 시스템에서의 영상 압축을 위한 부담 및 시간을 감소시킬 수 있는 압축 파일 생성 방법 및 장치, 이를 포함하는 단말기를 제공하는 것을 또 다른 목적으로 한다.
또한, 본 발명은 모바일 전자 기기 또는/및 소형 전자 기기 등에 보다 적절히 적용시킬 수 있는 압축 파일 생성 방법 및 장치, 이를 포함하는 단말기를 제공하는 것을 또 다른 목적으로 한다.
본 발명의 이외의 목적들은 하기의 설명을 통해 쉽게 이해될 수 있을 것이다.
상기한 과제를 실현하기 위한 본 발명의 일 양상으로서 본 발명에 따른 압축 파일 생성 방법은, 프레임 데이터를 입력받는 단계-상기 프레임 데이터는 적어도 원본 이미지에 대한 압축 이미지 데이터를 포함함-; 상기 압축 이미지 데이터가 미리 설정된 기준치 이하의 저조도 상태에 있는 경우, 상기 압축 이미지 데이터에 대하여 이미지 보정 처리를 수행하는 단계; 및 상기 압축 이미지 데이터가 상기 저조도 상태에 있는 경우, 상기 보정 처리된 압축 이미지 데이터와 썸네일 압축 이미지 데이터를 포함하는 압축 이미지 파일을 생성하고, 상기 압축 이미지 데이터가 상기 저조도 상태에 있지 않은 경우, 본래의 상기 압축 이미지 데이터와 썸네일 압축 이미지 데이터를 포함하는 압축 이미지 파일을 생성하는 단계를 포함한다.
일 실시예에서, 상기 압축 이미지 데이터에 대하여 이미지 보정 처리를 수행하는 단계는, 상기 압축 이미지 데이터를 블록 데이터 단위로 디코딩하는 단계; 상기 디코딩된 블록 데이터에, 휘도 강화(Brightness enhancement), 노이즈 감소(Noise reduction) 및 블록성 잡음 감소(Blockey effect reduction) 중 적어도 하나를 포함하는 개선 알고리즘을 적용하는 단계; 및 상기 개선 알고리즘이 적용된 각각의 블록 데이터를 인코딩하여 보정 처리된 압축 이미지 데이터를 생성하는 단계를 포함할 수 있다.
일 실시예에서, 상기 프레임 데이터는 카메라 모듈에 의해 생성되어 입력된 것일 수 있다.
상기한 과제를 실현하기 위한 본 발명의 다른 양상으로서 본 발명에 따른 압축 파일 생성 장치는, 프레임 데이터를 저장하는 저장부-상기 프레임 데이터는 적 어도 원본 이미지에 대한 압축 이미지 데이터를 포함함-; 상기 압축 이미지 데이터가 미리 설정된 기준치 이하의 저조도 상태에 있는지 여부를 판단하는 조도 판단부; 상기 조도 판단부에 의한 판단 결과, 상기 압축 이미지 데이터가 상기 저조도 상태에 있는 경우, 상기 압축 이미지 데이터에 대한 이미지 보정 처리를 수행하는 이미지 보정부; 및 상기 압축 이미지 데이터가 상기 저조도 상태에 있는 경우, 상기 보정 처리된 압축 이미지 데이터와 썸네일 압축 이미지 데이터를 포함하는 압축 이미지 파일을 생성하고, 상기 압축 이미지 데이터가 상기 저조도 상태에 있지 않은 경우, 본래의 상기 압축 이미지 데이터와 썸네일 압축 이미지 데이터를 포함하는 압축 이미지 파일을 생성하는 파일 생성부를 포함한다.
일 실시예에서, 상기 이미지 보정부는, 상기 압축 이미지 데이터를 블록 데이터 단위로 디코딩하는 디코더; 상기 디코딩된 블록 데이터에, 휘도 강화(Brightness enhancement), 노이즈 감소(Noise reduction) 및 블록성 잡음 감소(Blockey effect reduction) 중 적어도 하나를 포함하는 개선 알고리즘을 적용하는 알고리즘 적용부; 및 상기 개선 알고리즘이 적용된 블록 데이터를 인코딩하는 인코더를 포함할 수 있다.
일 실시예에서, 상기 프레임 데이터는 카메라 모듈에 의해 생성되어 상기 저장부로 입력될 수 있다.
상기한 과제를 실현하기 위한 본 발명의 또 다른 양상으로서 본 발명은, 카메라 모듈과, 상기 카메라 모듈과 인터페이스 연결되는 호스트 시스템을 포함하는 단말기에 있어서, 상기 카메라 모듈은, 이미지 센서; 상기 이미지 센서에 의해 획득된 1 프레임의 원본 이미지로부터 압축 이미지 데이터를 생성하는 인코더; 및 상기 압축 이미지 데이터를 포함하는 프레임 데이터를 상기 호스트 시스템(Host system)으로 출력하는 데이터 출력부를 포함하고, 상기 호스트 시스템은, 상기 프레임 데이터를 저장하는 저장부; 상기 압축 이미지 데이터가 미리 설정된 기준치 이하의 저조도 상태에 있는지 여부를 판단하는 조도 판단부; 상기 조도 판단부에 의한 판단 결과, 상기 압축 이미지 데이터가 상기 저조도 상태에 있는 경우, 상기 압축 이미지 데이터에 대한 이미지 보정 처리를 수행하는 이미지 보정부; 및 상기 압축 이미지 데이터가 상기 저조도 상태에 있는 경우, 상기 보정 처리된 압축 이미지 데이터와 썸네일 압축 이미지 데이터를 포함하는 압축 이미지 파일을 생성하고, 상기 압축 이미지 데이터가 상기 저조도 상태에 있지 않은 경우, 본래의 상기 압축 이미지 데이터와 썸네일 압축 이미지 데이터를 포함하는 압축 이미지 파일을 생성하는 파일 생성부를 포함한다.
본 발명에 따른 압축 파일 생성 방법 및 장치, 이와 관련된 카메라 모듈 및 이를 포함하는 단말기에 의하면 다음과 같은 효과가 있다.
본 발명은 획득된 이미지로부터 압축 이미지를 생성시킴에 있어서 영상 압축 효율 및 그 처리 속도를 향상시킬 수 있는 효과가 있다.
또한, 본 발명은 저조도 상태의 압축 이미지 데이터를 이미지 보정 처리함으 로써 보다 개선된 화질을 갖는 압축 이미지 파일을 생성시킬 수 있는 효과가 있다.
또한, 본 발명은 카메라 모듈과, 상기 카메라 모듈의 외부에 존재하여 상기 카메라 모듈과 인터페이스 연결되는 호스트 시스템(Host system)을 포함하는 전자 기기에 있어서, 상기 호스트 시스템에서의 영상 압축을 위한 부담 및 시간을 감소시킬 수 있는 효과가 있다.
본 발명의 상술한 목적, 특징들 및 장점은 첨부된 도면과 관련된 다음의 상세한 설명을 통해 보다 분명해질 것이다. 다만, 본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예들을 가질 수 있는 바, 이하에서는 특정 실시예들을 도면에 예시하고 이를 상세히 설명하고자 한다. 명세서 전체에 걸쳐서 동일한 참조번호들은 원칙적으로 동일한 구성요소들을 나타낸다. 또한, 본 발명과 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.
이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다.
본 명세서에서 설명되는 단말기에는, 휴대폰, 스마트 폰(smart phone), 노트 북 컴퓨터(laptop computer), 디지털방송용 단말기, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 네비게이션 등과 같은 이동 단말기(혹은 휴대 단말기) 이외에도, 디지털 TV, 데스크탑 컴퓨터 등과 같은 고정 단말기도 포함될 수 있음은 물론이다.
이하, 본 발명에 대하여 첨부된 도면들을 참조하여 상세히 설명하기로 한다.
이하에서는, 본 명세서의 전반에 걸쳐, 대표적인 정지 영상 압축 기술인 JPEG를 예로 들어 본 발명을 설명하게 될 것이다. 그러나 본 발명은 동일 또는 유사한 기술적 사상이 적용되는 다른 정지 영상 압축 기술(예를 들어, GIP, BMP, TIF 등)이나 동영상 압축 기술(예를 들어, MPEG 등)에도 적용될 수 있음은 자명하다.
또한, 이하에서는, 후술할 압축 이미지 데이터를 포함하는 프레임 데이터가 카메라 모듈로부터 생성되어 단말의 호스트 시스템(Host system)으로 입력되는 경우를 중심으로 본 발명을 설명하게 될 것이다. 그러나 본 발명은 상기 압축 이미지 데이터가 상기 카메라 모듈에서 생성되어 단말의 호스트 시스템으로 입력되는 경우에 한정되는 것은 아니다. 예를 들어, 본 발명에 따른 압축 파일 생성 장치 및 방법은, 상기 카메라 모듈 이외에도 상기 호스트 시스템 외부 또는 상기 단말기 외부에 존재하는 다른 제3의 장치로부터 생성 출력된 압축 이미지 데이터(또는 이를 포함하는 프레임 데이터)를 입력받고 이를 압축 이미지 파일로 생성시킬 수도 있음은 물론이다. 또한, 이하에서는, 상기 압축 이미지 데이터의 생성 주체와 그 압축 이미지 데이터를 포함하는 프레임 데이터의 생성 주체가 동일한 경우를 중심으로 설 명하지만, 상기 압축 이미지 데이터의 생성 주체와 그 압축 이미지 데이터를 포함하여 특정 포맷을 갖는 프레임 데이터의 생성 주체가 다를 수도 있음도 물론이라 할 것이다.
또한, 이하에서는, 프레임 데이터 내에 압축 이미지 데이터 이외에도 다른 데이터들이 더 포함되는 경우를 중심으로 설명하게 될 것이다. 그러나, 반드시 이와 같을 필요는 없으며, 압축 이미지 데이터 자체가 프레임 데이터일 수 있다. 즉, 프레임 데이터에는 압축 이미지 데이터만이 포함될 수도 있다.
이하에서는, 먼저, 본 발명에 관한 보다 명확한 이해를 돕기 위한 전제로서, 본 발명이 적용될 수 있는 관련 기술에 대하여 도 1을 참조하여 설명한다. 그리고 본 발명의 대비 대상이 될 수 있는 종래 기술에 따른 JPEG 영상 압축 방법에 대해 도 2를 참조하여 설명한다.
이후, 도 3 내지 도 14를 참조하여 본 발명의 실시예들을 설명하되, 본 발명의 일 실시예와 관련된 카메라 모듈의 구성, 압축 파일 생성 장치의 구성, 이에 따른 압축 파일 생성 방법에 대하여는 도 3 내지 도 5를 참조하여 설명하고, 본 발명의 다른 실시예와 관련된 카메라 모듈의 구성, 압축 파일 생성 장치의 구성, 이에 따른 압축 파일 생성 방법에 대하여는 도 6 내지 도 8을 참조하여 설명하며, 본 발명의 또 다른 실시예와 관련된 카메라 모듈의 구성, 압축 파일 생성 장치의 구성, 이에 따른 압축 파일 생성 방법에 대하여는 도 9 내지 도 11을 참조하여 설명하기로 한다. 이에 따라, 상기 카메라 모듈(도 3, 도 6, 도 9 참조)과 상기 압축 파일 생성 장치(도 4, 도 7, 도 10 참조)를 포함하는 본 발명에 따른 단말기는 자명히 도출될 수 있을 것이다.
이하, 상기 순서에 따라 본 발명을 차례차례 설명한다.
도 1은 본 발명이 적용될 수 있는 관련 기술로서, 카메라 모듈과 호스트 시스템을 포함하는 단말기의 구조를 개략적으로 나타낸 블록 구성도(Block diagram)이다.
이하 도 1을 통해서 설명하게 될 내용들 중, 특별히 도 2에 도시된 종래 기술과 연관시켜 설명하는 내용을 제외한 모든 내용들은 본 발명에도 그대로 적용될 수 있다.
도면에 대한 상세한 설명을 시작하기에 앞서, 본 명세서를 통해 설명될 각 구성요소 간의 구분은, 해당 구성요소가 주로 담당하거나 또는 당해 기술 분야의 일반적 상식에 따라 통상적으로 담당하는 기능별로 구분한 것에 불과함을 명확히 해둔다.
즉, 이하에서 설명할 2 이상의 구성요소는 하나의 구성요소로 통합될 수 있다. 또한, 이하에서 설명할 하나의 구성요소가 보다 세분화된 기능별로 2 이상으로 분리될 수도 있다. 또한, 이하에서 설명할 구성요소 각각은 자신의 담당하는 주기능 이외에도 다른 구성요소가 담당하는 기능 중 일부 또는 전부의 기능을 추가적으로 수행할 수도 있다. 이하에서 설명할 구성요소 각각이 담당하는 주기능 중 일부 또는 전부가 다른 구성요소에 의해 전담되어 수행될 수도 있다.
예를 들어, 도 1에 의할 때, 이미지 센서(21)와 이미지 시그널 프로세 서(22), 그리고 백 엔드 칩(31)과 베이스 밴드 칩(32)은, 물리적으로 또는 기능적으로 명확히 구분되는 것과 같이 도시되고 있다. 그러나 이는 도면 도시의 편의 상, 각 구성요소 간의 구분을 용이하게 하기 위함에 불과하다. 특히, 최근의 다기능 복합화 및 소형화의 경향에 따라, 예를 들어 상기 이미지 시그널 프로세서(22)의 기능의 일부 또는 전부가 이미지 센서(21)의 기능에 포함되거나, 또는 양자가 하나의 칩(예를 들어, SOC(System On Chip))에 구현되기도 한다. 전술한 바는 상기 백 엔드 칩(31)과 상기 베이스 밴드 칩(32) 양자 간에도 동일하게 적용될 수 있다. 예를 들어, 도 2를 통해서 후술할 백 엔드 칩(31)의 기능의 일부 또는 전부가 베이스 밴드 칩(32) 내에서 구현될 수도 있다.
위와 유사하게, 도 1(후술할 도 3, 도 4, 도 6, 도 7, 도 9, 도 10의 경우에도 이와 같음)에 도시된 각 구성요소는 반드시 하드웨어적으로 구현될 필요는 없으며, 소프트웨어적으로 구현됨으로써 해당 기능을 수행할 수도 있음은 자명하다.
또한, 도 1에 도시된 단말기(100)는, 디지털 스틸 카메라(digital still camera) 등과 같이 이미지 촬상용 전자 기기일 수도 있다. 다만, 이하에서는 상기 단말기(100)가 예를 들어 이동 단말기와 같이 타 기능(즉, 이동 통신 기능)을 주목적으로 하되, 이미지 촬상 기능을 부가적으로 갖는 전자 기기인 경우를 중심으로 설명한다.
도 1을 참조할 때, 단말기(100)는, 이미지 센서(21)와 이미지 시그널 프로세서(22)를 포함하는 카메라 모듈(20)과, 백 엔드 칩(Back-end chip)(31)과 베이스 밴드 칩(Base band chip)(32)을 포함하는 호스트 시스템(30)과, 디스플레이(40) 및 메모리(50)를 포함한다. 여기서, 호스트 시스템(30)은, 상기 카메라 모듈(20)의 외부에 존재하며, 상기 카메라 모듈(20)과 직렬 인터페이스(Serial interface) 또는 병렬 인터페이스(Parallel interface)를 통해 인터페이스 연결될 수 있다.
이미지 센서(21)는, 피사체로부터 반사된 빛을 입력받고, 입력된 빛의 양(광량)에 상응하는 전기 신호를 출력한다. 이러한 이미지 센서(21)의 대표적인 예로는 CCD(Charge Coupled Device) 이미지 센서, CMOS(Complementary Metal Oxide Semiconductor) 이미지 센서가 있다.
상기 이미지 센서(21)의 수광면 상부에 베이어 패턴(Bayer Pattern)을 갖는 컬러 필터가 위치하는 경우, 이미지 센서(21)는 적색(R), 녹색(G), 청색(B)의 파장 정보를 포함하는 아날로그 신호를 출력한다. 이러한 RGB 아날로그 신호는 아날로그-디지털 변환기(Analog to Digital Converter, ADC)(미도시)를 거침으로써, RGB 디지털 신호로 변환될 수 있다.
이미지 시그널 프로세서(Image Signal Processor, ISP)(22)는, 이미지 센서(21)로부터 출력된 영상 신호(즉, RGB 이미지 데이터)를 YCbCr(또는 YUV) 형식의 이미지 데이터로 변환한다. YCbCr(또는 YUV) 방식은, 사람의 눈이 색상보다는 밝기에 민감하다는 사실에 착안하여, 영상 신호를 휘도(Y) 성분과 색차(C) 성분을 갖는 데이터로 표현한 것이다. 또한, 이미지 시그널 프로세서(22)는, 픽셀 간 보간(interpolation), 이미지 데이터의 감마 보정(Gamma Correction), 화이트 밸런스 조절 등과 같은 전처리를 수행할 수도 있다.
상기 카메라 모듈(20)로부터 출력된 데이터는, 전술한 직렬 또는 병렬 인터페이스를 통해서 호스트 시스템(30)의 백 엔드 칩(31)으로 입력될 수 있다.
백 엔드 칩(31)은 베이스 밴드 칩(32)의 제어에 따라 입력된 이미지 데이터를 가공(예를 들어, 인코딩, 디코딩, 스케일링 등)하는 기능을 담당할 수 있다.
예를 들어, 백 엔드 칩(31)은, 베이스 밴드 칩(32)의 제어 하에, 미리 지정된 인코딩 방식(예를 들어, JPEG, BMP 등)에 따라 입력된 이미지 데이터를 인코딩할 수 있다. 이때, 인코딩된 이미지 데이터는 베이스 밴드 칩(32)의 제어에 의해 메모리(50)로 저장될 수 있다. 상기 백 엔드 칩(31)의 기능과 관련된, 종래 기술에 따른 JPEG 인코딩 방법에 관해서는 이하 도 2를 통해서 따로 설명하기로 한다.
또한, 백 엔드 칩(31)은, 상기 베이스 밴드 칩(32)의 제어 하에, 인코딩된 이미지데이터를 다시 디코딩시킬 수 있으며, 이때 디코딩된 이미지는 베이스 밴드 칩(32)의 제어에 의해 디스플레이(40)에 표시될 수 있다. 또한, 백 엔드 칩(31)은, 상기 베이스 밴드 칩(32)의 제어 하에, 입력된 이미지 데이터를 디스플레이(40)의 화면 크기에 맞춰 스케일링할 수 있다. 또는 입력된 이미지 데이터를 썸네일(thumbnail) 이미지 사이즈로 스케일링할 수도 있다. 이때, 스케일링된 이미지도 베이스 밴드 칩(32)의 제어에 의해 디스플레이(40)에 표시될 수 있다.
베이스 밴드 칩(32)은, 촬상 기능 및 영상 처리 기능과 관련하여, 상기 카메라 모듈(20) 및 상기 백 엔드 칩(31)의 동작을 전반적으로 제어하는 기능을 수행한다.
이하, 본 발명의 구체적 실시예에 따른 JPEG 파일 생성 방법 및 장치, 이와 관련된 카메라 모듈과 대비되는 종래 기술에 따른 JPEG 인코딩 방법에 관하여 간략히 설명하기로 한다.
도 2는 종래 기술에 따른 JPEG 인코딩 방법을 설명하기 위한 도면이다.
종래 기술에 따른 JPEG 인코딩 방법의 문제점에 대해 설명하기에 앞서, 통상적인 JPEG 인코딩 프로세스에 관하여 설명하면 다음과 같다. 이는 JPEG 표준 문서를 통해 기공지된 내용인 바, 본 명세서를 통해서는 가급적 간략히 설명한다.
일반적으로 JPEG 인코딩 프로세스는, 도 2에 도시된 바와 같이, 다운 샘플링(S230), DCT(S240), 양자화(S250) 및 허프만 인코딩(S260) 과정으로 이루어진다. 이때, 상기 JPEG 인코딩은 입력된 이미지 데이터가 YCbCr 형식일 것을 전제로 하는 바, 획득된 원시 이미지 데이터가 YCbCr 형식이 아닌 경우에는 색상 변환 과정(S220 참조)이 더 존재할 수 있음은 물론이다. 이러한 색상 변환 과정은 도 2에서와 달리 호스트 시스템(30)에서 수행될 수도 있다.
상기와 같이 YCbCr 형식으로 색상 변환된 이미지 데이터가 입력되면, 그 입력된 이미지 데이터의 크기를 전체적으로 감소시키는 다운 샘플링(down sampling)(S230)을 수행한다. 상기 다운 샘플링 과정을 통해서 이미지 데이터의 크기를 줄인 이후에는, 이미지 데이터를 일정 크기의 블록 단위로 분할하는 블록화 과정이 수행된다. JPEG에서는 일반적으로 8 Х 8 행렬 단위로 블록화가 수행되며, 이는 JPEG 압축의 기본 단위가 된다.
DCT(Discrete Cosine Transform)(S240)은 이산 코사인 변환이라는 수학적 변 환 공식에 기초하여, 휘도(Y) 성분과 색차(C) 성분으로 분리된 성분 데이터를 코사인 함수의 합으로 표현하여 변환하는 것이다. 이러한 DCT 변환을 통하면 이미지가 저주파 성분과 고주파 성분으로 분리된다. 이때 저주파 성분은 이웃하는 픽셀들 간에 밝기나 색의 차이가 거의 없는 것을 의미하고, 고주파 성분은 이웃하는 픽셀들 간에 밝기나 색의 차이가 큰 것을 의미한다. 통계적으로는 고주파 성분보다 저주파 성분들이 많기 때문에, 이러한 고주파 성분들은 제거해도 화질에 별다른 영향을 미치지 않는다. 이러한 원리를 이용하여 압축을 수행하는 것이 바로 DCT이다.
양자화(Quantization)(S250)는 상기 DCT 과정을 거친 이미지 데이터의 전체적인 데이터 량을 줄이기 위해 양자화 행렬이라는 임의의 정수 행렬로 나누는 과정이다. DCT를 이용하면 이미지 데이터를 공간 영역에서 주파수 영역으로 변환할 수 있는데, 이때 상기 양자화 과정을 적절히 거치면 높은 압축률로 우수한 화질을 얻을 수 있다.
허프만 인코딩(Huffman enconding)(S260)은 허프만 코드를 구성하는 방식을 말하는 것으로서, 허프만 코드는 주어진 신호의 발생 확률 분포에 대하여 가장 짧은 평균 코드 길이를 실현하는 코드이다. 만일 신호의 발생 확률 분포가 어느 한쪽으로 편재된 경우, 발생 확률이 높은 신호에는 짧은 코드를, 발생 확률이 낮은 신호에는 긴 코드를 부여하는 가변 길이 코드(variable length code)를 사용함으로써 전체 코드량을 줄일 수 있게 된다.
상술한 바와 같이, 색상 변환 -> 다운 샘플링 -> 블록화 -> DCT -> 양자화 -> 허프만 인코딩으로 이어지는 JPEG 인코딩 프로세스는 본질적으로 본 발명에서도 그대로 적용될 수 있는 것이다.
다만, 종래 기술에 따른 JPEG 인코딩 방법의 문제점은, 카메라 모듈(20)로부터 획득된 1 프레임의 메인 이미지에 관한 JPEG 인코딩이, 단말기(100)의 호스트 시스템(30)에 의해 수행된다는데 기인한다. 즉, 종래 기술에 따를 때, JPEG 이미지 데이터를 생성하기 위한 상기 JPEG 인코딩은, 호스트 시스템(30) 내에 위치하는 백 엔드 칩(31)(혹은 베이스 밴드 칩(32))에 포함된 JPEG 인코더(33)에 의해 실행된다.
이러한 종래 기술에 의하면, JPEG 인코딩을 실행하기 위해, 카메라 모듈(20)로부터 압축되지 않은 상태의 원시 이미지 데이터가 호스트 시스템(30)의 프레임 버퍼(Frame buffer)에 그대로 쌓이고, 이를 호스트 시스템(30)에서 직접 JPEG 인코딩하도록 구성되어 있다.
그러나 상기와 같은 종래 기술에 따른 JPEG 인코딩 방식은, 단말기(100)의 호스트 시스템(30)에 많은 부담을 주어, 그 압축 효율 및 속도를 떨어뜨리는 요인으로 작용한다. 물론, 디지털 스틸 카메라와 같은 촬상 전용인 전자 기기의 경우는 상기와 같은 부담이 큰 문제가 되지 않을 수 있다. 그러나 촬상 전용의 전자 기기가 아니거나, 이동 단말기이거나 소형의 전자 기기의 경우에는 시스템 자원에 적지 않은 부담을 줄 수 있다.
특히, 휴대폰의 경우를 상정할 때, 호스트 시스템(Host system)은 이동 통신 기능과 관련된 애플리케이션을 최우선적으로 처리하도록 구현되어 있다, 따라서, 고화질, 고해상도 또는 대용량을 갖는 이미지 데이터가 프레임 버퍼에 계속해서 쌓 이는 경우, 호스트 시스템이 이를 압축 처리하는데 적지 않은 시간과 자원을 소비하여야 하므로, 큰 문제점으로 작용하게 된다.
이하, 상술한 바와 같은 문제점들을 해결할 수 있는 방안으로서, 본 발명이 제안하는 JPEG 파일 생성 방법 및 장치와, 이와 관련된 카메라 모듈 그리고 단말기에 관하여 설명한다. 먼저, 본 발명의 일 실시예에 따른 카메라 모듈, JPEG 파일 생성 장치 및 방법에 대하여, 도 5의 순서도를 중심으로 도 3 및 도 4를 함께 참조하여 설명한다. 이때, 앞선 설명에서와 동일하게 적용될 수 있거나 중복될 수 있는 내용에 관한 설명은 생략한다.
도 5는 본 발명의 일 실시예에 따른 JPEG 파일 생성 방법을 나타낸 순서도이다. 그리고 도 3은 본 발명의 일 실시예에 따른 카메라 모듈을 나타낸 블록 구성도이고, 도 4는 본 발명의 일 실시예에 따른 JPEG 파일 생성 장치를 나타낸 블록 구성도이다.
본 발명의 일 실시예에 따를 때, 도 5의 JPEG 파일 생성 방법을 구현하기 위한 장치 구성으로서 도 4의 JPEG 파일 생성 장치는 단말기 내의 호스트 시스템(Host system) 내에 포함될 수 있다. 보다 구체적으로는, 이하 설명할 본 발명에 따른 JPEG 파일 생성 장치 또는 그 장치가 갖는 모든 기능은, 호스트 시스템 내의 베이스 밴드 칩(base band chip) 내에 포함될 수 있다. 또는 상기 JPEG 파일 생성 장치가 갖는 기능들의 일부는 베이스 밴드 칩 내에, 다른 일부는 백 엔드 칩 내에 구현될 수도 있을 것이다. 이외에도 다양한 변형이 가능함은 자명하다. 이는 후술 할 본 발명의 다른 실시예들(도 7/도 8 그리고 도 10/도11 참조)에 따른 JPEG 파일 생성 장치의 경우에도 동일하게 적용된다.
도 5에 도시된 JPEG 파일 생성 방법을 참조하면, 먼저, 본 발명의 일 실시예에 따른 JPEG 파일 생성 장치는, 카메라 모듈(camera module)로부터 메인 JPEG 이미지를 포함하는 1 프레임의 프레임 데이터를 입력받게 된다[S510].
즉, 본 발명의 일 실시예에 따를 때, 메인 JPEG 이미지를 포함하는 1 프레임의 프레임 데이터(Frame data)는, 카메라 모듈로부터 생성되어 본 발명에 따른 JPEG 파일 생성 장치로 입력된다. 이를 위해, 상기 카메라 모듈은 도 3에서와 같은 구성을 가질 수 있다. 이하, 도 3에 도시된 카메라 모듈의 구성에 대하여 간략히 설명하면 다음과 같다.
도 3을 참조할 때, 본 발명의 일 실시예에 따르는 카메라 모듈(200a)은, 이미지 센서(210), 메인 JPEG 인코더(221)를 포함하는 이미지 시그널 프로세서(220a), 데이터 출력부(230), MCU(Micro Control Unit)(240), 버퍼(251, 252)를 포함한다.
여기서, 상기 메인 JPEG 인코더(221)는 도 3에 도시된 바와 달리 상기 이미지 시그널 프로세서(220a)와는 독립적으로 구비될 수도 있음은 물론이다. 또한, 상기 메인 JPEG 인코더(221), 상기 이미지 시그널 프로세서(220a)는 반드시 하드웨어적으로 구현될 필요도 없고, 소프트웨어적으로 구현될 수도 있다.
상기 이미지 센서(210)는 피사체를 촬상함으로써 1 프레임의 영상 신호를 출 력한다. 여기서, 상기 이미지 센서(210)로부터 출력된 상기 영상 신호는, 앞서 설명한 바와 같이 RGB의 파장 정보를 포함하는 아날로그 전기 신호일 수 있다. 다만 설명의 편의를 위해 도 3의 이미지 센서(210)는 아날로그-디지털 변환기(ADC)를 포함함으로써 RGB 원시 이미지 데이터(RGB raw image data)를 출력하는 것으로 가정한다.
상기 RGB 원시 이미지 데이터는, 이미지 센서(210)의 출력단 쪽에 구비된 버퍼(251)를 거쳐 이미지 시그널 프로세서(220a)로 입력된다.
도면을 통해 구체적으로 도시하지는 않았지만, 상기 이미지 시그널 프로세서(220a)에는 상기 입력된 RGB 원시 이미지 데이터를 임시 저장시키기 위한 별도의 저장 수단이 포함될 수 있다. 또한, 상기 RGB 원시 이미지 데이터를 YCbCr 또는 YUV 형식의 이미지 데이터(이하 YCbCr 데이터로 가정함)로 변환하기 위한 색상 변환부가 포함될 수 있다. 상기와 같은 구성을 통해서, 색상 변환된 YCbCr 원시 이미지 데이터는 메인 JPEG 인코더(221)로 전달된다.
메인 JPEG 인코더(221)는 전달된 상기 YCbCr 원시 이미지 데이터로터 JPEG 이미지 데이터를 생성한다. 구분의 편의를 위해, 본 명세서를 통해서는, 1 프레임의 원시 이미지 데이터(raw image data)로부터 생성된 JPEG 이미지 데이터를 "메인 JPEG 이미지(main JPEG image)"라 명명한다.
이때, 메인 JPEG 이미지를 생성하기 위한, 상기 메인 JPEG 인코더(221)에서의 JPEG 인코딩 프로세스는 앞서 도 2에서 설명한 내용과 본질적으로 동일하다. 그러나 본 발명은, 단말기의 호스트 시스템(Host system)에서가 아니라 카메라 모 듈(200a)에서 직접 상기 원시 이미지 데이터에 관한 JPEG 인코딩을 수행한다는 점에서, 앞서 도 2에서 설명한 종래 기술에 따른 JPEG 인코딩 방법과 명확히 구별된다.
아울러, 앞서도 설명한 바이지만, 종래 기술에 따른 JPEG 인코딩 방법에 의하면, 단말기(100) 내의 호스트 시스템에 많은 부담을 주었으며, 이에 따라 그 압축 효율 및 속도가 떨어지고, 압축 처리 시간이 증가하는 문제점이 있었다. 이에 비해, 본 발명에서와 같이 카메라 모듈(200a)에서 획득된 원시 이미지 데이터에 대한 JPEG 인코딩을 카메라 모듈(200a) 내에서 자체적으로 수행하게 되면, 종래 기술에 비해 그 압축 효율 및 그 처리 속도를 향상시킬 수 있다.
카메라 모듈(200a)은 이미지의 획득, 처리, 저장 그리고 전송 등의 이벤트를 수행하는데 최적화된 구조를 갖도록 설계되어 있다. 따라서, JPEG 인코딩을 카메라 모듈(200a) 내에서 자체적으로 수행하게 되면, 그 JPEG 인코딩을 상기 호스트 시스템이 수행할 경우에 비해, 향상된 효과(전술한 압축 효율 및 처리 속도의 증대는 물론, 호스트 시스템의 부담 경감 및 시스템 자원의 절약 등)를 기대할 수 있기 때문이다.
메인 JPEG 인코더(221)로부터 출력된 메인 JPEG 이미지는, 버퍼(252)를 거쳐 데이터 출력부(230)로 전달된다.
이에 따라, 상기 메인 JPEG 이미지는, 상기 데이터 출력부(230)을 통해서 호스트 시스템으로 전송될 수 있다. 이하, 상기 데이터 출력부(230)를 통해 상기 호스트 시스템 측으로 출력될, 1 프레임의 획득 이미지와 관련된 데이터를 "프레임 데이터"라 명명하기로 한다. 이때, 데이터 출력부(230)로부터 출력되는 상기 프레임 데이터는 특정 전송 포맷을 가질 수 있다. 이러한 프레임 데이터의 전송 포맷과 관련해서는 추후 도 12를 참조하여 보다 구체적으로 설명한다.
또한, 상기 프레임 데이터를 호스트 시스템으로 전송하기 위한, 상기 카메라 모듈(200a)과 호스트 시스템 간의 인터페이스 연결은, 카메라 모듈의 구조를 변경시킬 필요 없이, 기존의 인터페이스 연결 방식을 그대로 이용할 수 있다. 예를 들어, 카메라 모듈(200a)과 호스트 시스템 간의 인터페이스 연결은, 예를 들어 수직 동기 신호(Vsync 또는 Frame sync), 수평 동기 신호(Hsync 또는 Line sync), 픽셀 클럭(PIXCLK) 및 복수개의 데이터 라인(Dout[7:0])으로 구성될 수 있다(도 3 참조). 이는 본 발명의 다른 실시예들(도 6 내지 도 8, 도 9 내지 도 11 참조)에도 동일하게 적용될 수 있다.
상술한 바에 따라, 카메라 모듈(200a)로부터 생성되어 전송된, 메인 JPEG 이미지를 포함하는 프레임 데이터는 도 4에 도시된 바와 같은 JPEG 파일 생성 장치(700a)의 데이터 입력부(710)로 입력될 수 있다.
앞선 단계(S510)를 통해 카메라 모듈로부터 메인 JPEG 이미지를 포함하는 프레임 데이터가 입력된 이후, 도 4에 도시된 본 발명의 일 실시예에 따른 JPEG 파일 생성 장치(700a)는, JPEG 이미지 파일을 생성시키기 위해 다음과 같은 일련의 과정을 수행한다.
JPEG 이미지 파일을 생성시키기 위한 제1 전제 과정(도 4의 <Process 2> 참 조)으로서, 입력된 프레임 데이터에 포함된 메인 JPEG 이미지로부터 썸네일 JPEG 이미지를 생성한다[S520].
그리고, JPEG 이미지 파일을 제2 전제 과정(도 4의 <Process 1> 참조)으로서, 카메라 모듈로부터 전달된 메인 JPEG 이미지가 저조도(低照度) 상태에 있는지 여부를 판단하여[S530], 저조도 상태에 있는 경우 상기 메인 JPEG 이미지에 대한 이미지 보정을 수행한다[S540].
이때, JPEG 이미지 파일을 생성시키기 위한 상기 2개의 전제 과정(즉, 단계 S520과 단계 S540)은, 도 5에 나타낸 순서와 상관 없이, 병렬적으로(즉, 동시에) 처리될 수 있다.
이에 따라, 카메라 모듈로부터 전달된 메인 JPEG 이미지가 저조도 상태에 있는 경우에는, 상기 단계 S540을 통해 보정 처리된 JPEG 이미지와 상기 단계 S520을 통해 생성된 썸네일 JPEG 이미지를 이용하여 JPEG 이미지 파일을 최종 생성한다[S550]. 그러나 위와 달리 카메라 모듈로부터 전달된 메인 JPEG 이미지가 저조도 상태에 있지 않은 경우에는, 상기 단계 S540을 통한 이미지 보정은 수행하지 않고, 본래의 메인 JPEG 이미지(즉, 카메라 모듈로부터 전달된 메인 JPEG 이미지 자체)와 상기 단계 S520을 통해 생성된 썸네일 JPEG 이미지를 이용하여 JPEG 이미지 파일을 최종 생성하게 된다[S560].
이하, 위와 같은 JPEG 파일 생성 방법을 구현하기 위한 일 예로서, 도 4에 도시된 JPEG 파일 생성 장치(700a)의 구성에 관하여 설명하면 다음과 같다.
도 4를 참조할 때, 본 발명의 일 실시예에 따른 JPEG 파일 생성 장치(700a)는, 데이터 입력부(710), 썸네일 이미지 생성부(730), 썸네일 버퍼(735), 썸네일 JPEG 이미지 생성부(740), 조도 판단부(750), 이미지 보정부(760), 파일 생성부(770)를 포함한다. 상기 JPEG 파일 생성 장치(700a)는 단말기 내에 별도 존재할 수도 있지만, 호스트 시스템 내(특히, 베이스 밴드 칩 내)에 존재할 수 있다.
본 발명의 일 실시예에 따른 JPEG 파일 생성 장치(700a)에서 JPEG 이미지 파일을 생성시키기 위한 전반적인 프로세스는 다음과 같다. 먼저, 카메라 모듈로부터 메인 JPEG 이미지를 포함하는 프레임 데이터가 전송되면, 상기 JPEG 파일 생성 장치(700a)는 이를 받아서 메모리에 저장한다.
상기와 같은 저장이 완료되면, 본 발명의 일 실시예에 따른 JPEG 파일 생성 장치(700a)는 2개의 프로세스(process)에 따른 JPEG 파일 생성 과정을 진행한다.
상기 2개의 프로세스 중 하나(이하, "제1 프로세스"라 함, 도 4의 <Process 1> 참조)는, 카메라 모듈로부터 전달된 메인 JPEG 이미지가 저조도 상태에 있는지 유무를 판단(후술할 도 4의 조도 판단부(750)의 기능과 관련됨)하여, 그 판단 결과, 저조도 상태에 있는 경우에는 도 4의 <Path 2>에 따라 메인 JPEG 이미지에 이미지 보정 처리를 수행(후술할 도 4의 이미지 보정부(760)의 기능과 관련됨)함으로써, 그 보정된 메인 JPEG 이미지에 기반하여 JPEG 이미지 파일을 생성하고, 이와 반대로 저조도 상태에 있지 않은 경우에는 도 4의 <Path 1>에 따라 본래의 메인 JPEG 이미지에 기반하여 JPEG 이미지 파일을 생성하기 위한 과정이다.
상기 2개의 프로세스 중 다른 하나(이하, "제2 프로세스"라 함, 도 4의 <Process 2> 참조)는, 카메라 모듈로부터 전달된 메인 JPEG 이미지를 디코딩 및 스케일링하여 썸네일 이미지를 생성(후술할 도 4의 썸네일 이미지 생성부(730)의 기능과 관련됨)하고, 이를 다시 JPEG 인코딩함으로써 썸네일 JPEG 이미지를 생성(후술할 도 4의 썸네일 JPEG 이미지 생성부(740)의 기능과 관련됨)하기 위한 과정이다.
본 발명의 일 실시예에 따른 JPEG 파일 생성 장치(700a)에서의 상기와 같은 2개의 프로세스는 병렬적으로 즉, 동시에 진행된다는데 이점이 있다.
그리고, 상기 제2 프로세스에 의할 때, 상기 생성되는 썸네일 이미지(Thumbnail image)는 RGB 형식으로 색상 변환(color conversion)된 후, 단말기(100)의 디스플레이(40)를 통해 즉시 이미지 디스플레이될 수 있다. 종래 기술에 의할 때, 썸네일 이미지는 최종 제작(생성) 완료된 JPEG 이미지 파일로부터 디코딩하여 화면 출력하였던 것과 달리, 본 발명에서는 JPEG 이미지 파일의 생성 과정에서 획득되는 썸네일 이미지를 바로 화면 출력해줄 수 있기 때문에, 종래 기술에 비해 그 처리 속도 또는/및 작업 로드(work load)의 측면에서 볼 때 개선된 이점으로 작용한다. 이는 후술할 다른 실시예들의 경우에도 동일 또는 유사하게 적용될 수 있다.
상술한 바와 같은 동작을 수행하기 위해, 상기 데이터 입력부(710)는, 카메라 모듈로부터 전달된 프레임 데이터를 입력받기 위한 구성으로서, 상기 프레임 데이터를 입력받기 위한 데이터 인터페이스(data interface)와, 상기 입력된 프레임 데이터를 저장하기 위한 메모리를 포함할 수 있다.
썸네일 이미지 생성부(730), 썸네일 버퍼(735), 썸네일 JPEG 이미지 생성부(740)는, JPEG 이미지 파일을 생성시키기 위한 상기 제1 전제로서 썸네일 JPEG 이미지를 생성하기 위한 구성이다.
썸네일 이미지 생성부(730)는, 예를 들어, JPEG 디코더(미도시), 스케일러(미도시)를 포함하여 구성됨으로써, 메인 JPEG 이미지로부터 썸네일 이미지 크기의 썸네일 이미지(Thumbnail image)를 생성시킬 수 있다. 이때, 생성된 썸네일 이미지는 썸네일 버퍼(735)에 저장될 수 있고, 호스트 시스템의 베이스 밴드 칩(도 1의 32 참조)의 제어에 따라 단말기의 디스플레이(도 1의 40 참조)에 표시될 수 있다.
썸네일 JPEG 이미지 생성부(740)는, 상기 생성된 썸네일 이미지를 JPEG 인코딩시킴으로써 썸네일 JPEG 이미지를 생성한다. 이를 위해, 썸네일 JPEG 이미지 생성부(740)는 JPEG 인코더(미도시)를 포함할 수 있다.
상기와 같이, 도 4의 경우, 썸네일 이미지 또는 썸네일 JPEG 이미지가, 프레임 데이터에 포함되어 전달된 본래의 메인 JPEG 이미지를 가공하여 생성되는 것과 같이 장치 구성되어 있다. 그러나 이는 일 예에 불과하며, 다른 방식에 따라 상기 썸네일 이미지 또는 썸네일 JPEG 이미지가 생성될 수도 있음은 물론이다. 예를 들어, 상기 썸네일 이미지 또는 썸네일 JPEG 이미지는, 카메라 모듈로부터 전달된 본래의 메인 JPEG 이미지를 가공하여 생성되는 것이 아니라, 상기 이미지 보정부(760)에 의해 보정 처리된 JPEG 이미지를 가공하여 생성될 수도 있는 것임은 자명하다 할 것이다.
조도 판단부(750)는, 카메라 모듈로부터 전달된 메인 JPEG 이미지가 미리 설 정된 기준치 이하의 저조도 상태에 있는지 여부를 판단함으로써, 상기 전달된 메인 JPEG 이미지에 이미지 보정이 필요한지 여부를 결정한다.
조도 판단부(750)에 의한 판단 결과, 상기 전달된 메인 JPEG 이미지가 저조도 상태에 있는 경우에는, 이미지 보정부(760)를 통해서 메인 JPEG 이미지에 이미지 보정을 수행하고, 그렇지 않은 경우(즉, 메인 JPEG 이미지가 저조도 상태에 있지 않은 경우)에는, 상기 이미지 보정부(760)를 통한 이미지 보정을 수행하지 않게 된다.
조도는 피사체의 밝기를 의미하는 것으로서, 럭스(lux)라는 단위를 사용한다. 1 면적 1 제곱미터의 면 위에 1룸의 광속이 평균적으로 조사되고 있을 때가 1 럭스(lux)로 정의된다.
상기 조도 판단부(750)는, 이와 같은 조도 정보를 카메라 모듈로부터 전달받을 수도 있고, 상기 전달된 메인 JPEG 이미지로부터 직접 계산할 수도 있다. 예를 들어, 카메라 모듈은 조리개(aperture stop)를 통해 들어오는 광량의 세기로부터 외부의 촬상 환경이 반영된 조도 정보를 획득할 수 있다. 이와 같이 카메라 모듈에 의해 획득된 조도 정보가 호스트 시스템으로 전달됨으로써, 상기 조도 판단부(750)는 그 전달된 조도 정보를 이용할 수 있다. 다른 예로서, 상기 조도 판단부(750)는 조도 계산 모듈(미도시)를 구비함으로써, 상기 전달된 메인 JPEG 이미지의 RGB 값 혹은 YCbCr 값(특히, Y(휘도) 값)으로부터 상기 조도 정보를 계산해낼 수도 있다.
이에 따라, 상기 조도 판단부(750)는, 카메라 모듈로부터 전달된 메인 JPEG 이미지의 조도 값이 미리 설정된 기준치(예를 들어, 75 lux 등) 이하인 저조도 상 태에 있는 경우에는 상기 메인 JPEG 이미지를 이미지 보정부(760)로 전달한다(도 4의 'Path 2' 참조).
이때, 상기 이미지 보정부(760)는, 상기 메인 JPEG 이미지에 휘도 강화(Brightness enhancement), 노이즈 감소(Noise reduction) 및 블록성 잡음 감소(Blockey effect reduction) 중 적어도 하나를 포함하는 개선 알고리즘을 적용함으로써, 저조도 상태의 메인 JPEG 이미지의 휘도 또는/및 화질을 개선시킬 수 있다. 이를 위해, 상기 이미지 보정부(760)는, 예를 들어, 허프만 디코더(도 4의 762 참조), 개선 알고리즘 적용부(도 4의 764 참조), 허프만 인코더(도 4의 766 참조)를 포함할 수 있다.
즉, 이미지 보정부(760)는, 허프만 디코딩(Huffman decoding) 방식을 이용하여 상기 메인 JPEG 이미지를 최소 부호화 단위(Minimum Coded Unit)인 8 Х 8 블록 데이터로 디코딩한다. 이후, 상기 8 Х 8 블록 데이터에 개선 알고리즘을 적용하여, DC/AC 계수(DC/AC coefficient)를 조정한다. 블록 데이터에 개선 알고리즘을 적용시키는 과정은, 먼저, 블록 데이터에서 DC/AC 임계값(DC/AC Threshold value)에 따라 이미지 영역(image area)를 분리한 다음, DC/AC 계수를 조정함으로써 휘도를 강화시킬 수 있다(Brightness enhancement). 다음으로, DC/AC 계수를 조정하거나 제어하여 노이즈를 감소시킬 수 있다(Noise reduction). 다음으로, AC 계수를 조정함으로써 블록성 잡음을 감소시킬 수 있다(Blocky effect reduction).
상기와 같이, 본 발명에 따른 이미지 보정부(760)는, 이미지를 블록 데이터 단위로 디코딩하여 노이즈를 제거하므로, 이미지를 완전히 디코딩하여 보정하는 경 우보다 그 보정 시간이 단축될 수 있다. 상기 8 Х 8 블록 데이터는 상기 개선 알고리즘이 적용될 수 있는 최소 블록 단위로서, 최소 블록 단위가 변경되는 경우, 블록 데이터 크기도 변경될 수 있음은 물론이라 할 것이다.
상기와 같은 개선 알고리즘이 적용된 각각의 블록 데이터들은 허프만 인코딩 방식을 이용하여 인코딩됨으로써, 휘도 또는/및 화질 등이 개선된(즉, 보정 처리된) 메인 JPEG 이미지가 생성될 수 있다. 이와 같이, 이미지 보정부(760)에 의해 보정 처리된 메인 JPEG 이미지는 파일 생성부(770)로 전달된다.
이에 따라, 본 발명에 따른 JPEG 파일 생성 장치에서의 파일 생성부(770)는, 카메라 모듈로부터 전달된 메인 JPEG 이미지가 저조도 상태에 있는 경우에는, 상기 이미지 보정부(760)를 통해서 이미지 보정 처리된 메인 JPEG 이미지와 상기 썸네일 JPEG 이미지를 이용하여 JPEG 포맷을 갖는 JPEG 이미지 파일을 생성시키게 된다.
이와 반대로, 상기 조도 판단부(750)의 판단 결과, 상기 메인 JPEG 이미지의 조도 값이 미리 설정된 기준치를 초과하는 경우, 상기 조도 판단부(750)는 카메라 모듈로부터 전달된 메인 JPEG 이미지를 그대로 파일 생성부(770)로 전달한다(도 4의 'Path 1' 참조). 이 경우, 본 발명에 따른 JPEG 파일 생성 장치에서의 상기 파일 생성부(770)는, 그 메인 JPEG 이미지(즉, 이미지 보정부(760)에 의한 이미지 보정 처리를 하지 않은 본래의 메인 JPEG 이미지)와 앞서 설명한 썸네일 JPEG 이미지를 이용하여 JPEG 포맷을 갖는 JPEG 이미지 파일을 생성한다.
여기서, 상기 썸네일 JPEG 이미지와 상기 보정 처리된 JPEG 이미지(또는 본래의 메인 JPEG 이미지)를 이용하여, JPEG 이미지 파일을 생성하는 구체적 방법에 관하여 도 14를 예를 들어 설명하면 다음과 같을 수 있다. 도 14는 본 발명의 실시예에 따라 생성된 썸네일 JPEG 이미지 파일, JPEG 헤더 및 JPEG 이미지 파일의 포맷을 나타낸 도면이다.
먼저, 파일 생성부(770)는, 썸네일 JPEG 이미지 생성부(740)로부터 생성된 썸네일 JPEG 이미지 데이터를 입력받고, 상기 썸네일 JPEG 이미지 데이터(도 14의 (c)의 'JPEG thumbnail Image data' 참조)와 썸네일 JPEG 헤더(도 14의 (c)의 'Thumbnail JPEG Header'를 포함하는 썸네일 JPEG 이미지 파일(도 14의 (c) 참조)을 생성한다.
이때, 상기 썸네일 JPEG 헤더는, 프레임 데이터에 포함되어 전송된 정보 세그먼트(Information segment)(도 12 참조)에 기초하여 생성시킬 수 있다. 또는, 썸네일 이미지 데이터로부터 상기 썸네일 JPEG 헤더를 생성시키기 위한 기초 정보를 획득/연산해냄으로써, 상기 썸네일 JPEG 헤더를 생성시킬 수도 있다.
또한, 파일 생성부(770)는, 상기 정보 세그먼트에 기초하거나 또는 메인 JPEG 이미지 데이터에 기초하여 JPEG 헤더를 생성시킨다. 이때, 생성된 JPEG 헤더에는 상기 썸네일 JPEG 이미지 파일도 함께 삽입된다(도 14의 (b) 참조). 이러한 과정을 통해서, 파일 생성부(770)는, 상기 JPEG 헤더(도 14의 (a)의 'JPEG Header' 참조)와 상기 보정 처리된(혹은 본래의) 메인 JPEG 이미지 데이터(도 14의 (a)의 'JPEG main Image data' 참조)를 포함하는 JPEG 이미지 파일(도 14의 (a) 참조)을 생성할 수 있게 된다.
이상에서는, 도 3 내지 도 5를 참조하여 본 발명의 일 실시예에 따른 JPEG 파일 생성 방법 및 장치(이하, '제1 실시예'라 함)에 대하여 설명하였다. 이하, 도 6 내지 도 8을 참조하여 본 발명의 다른 실시예에 따른 JPEG 파일 생성 방법 및 장치(이하 '제2 실시예'라 함), 그리고 도 9 내지 도 11을 참조하여 본 발명의 또 다른 실시예에 따른 JPEG 파일 생성 방법 및 장치(이하, '제3 실시예'라 함)에 대하여 차례차례 설명한다.
이하 차례대로 설명할 상기 제2 실시예와 상기 제3 실시예의 경우에도, 그 JPEG 파일 생성 방법 그리고 JPEG 파일 생성 장치는 상기 제1 실시예에서와 대동소이할 수 있다. 다만, 상기 제1 실시예, 제2 실시예, 제3 실시예의 구분은 카메라 모듈로부터 호스트 시스템으로 전송되는 프레임 데이터 내에 어떠한 데이터들이 포함되어 있는지에 따라 차이를 가질 뿐이다.
즉, 앞서 설명한 상기 제1 실시예의 경우, 카메라 모듈로부터 전송되는 프레임 데이터에는 "메인 JPEG 이미지"가 포함됨에 비해, 상기 제2 실시예는, 상기 프레임 데이터에 상기 "메인 JPEG 이미지"와 더불어 JPEG 압축 처리되기 전의 "썸네일 이미지 데이터"가 포함되고, 상기 제3 실시예는, 상기 프레임 데이터에 상기 "메인 JPEG 이미지"와 더불어 JPEG 압축 처리가 완료된 "썸네일 JPEG 이미지"가 포함되는 경우를 상정한 것이다. 이러한 차이에 따라 JPEG 파일 생성 방법의 과정 및 그 장치의 구성이 조금씩 차이를 갖게 된다.
따라서, 이하에서는, 상기 제2 실시예 및 상기 제3 실시예를 설명함에 있어서 상기 제1 실시예와의 차이점을 중심으로 설명하며, 상기 제1 실시예에서와 중복 되거나 동일하게 적용될 수 있는 부분에 대한 설명은 생략하기로 한다.
상기 제2 실시예에 대하여 도 6 내지 도 8을 참조하여 설명한다. 여기서, 도 6은 본 발명의 다른 실시예에 따른 카메라 모듈을 나타낸 블록 구성도이고, 도 7은 본 발명의 다른 실시예에 따른 JPEG 파일 생성 장치를 나타낸 블록 구성도이며, 도 8은 본 발명의 다른 실시예에 따른 JPEG 파일 생성 방법을 나타낸 순서도이다.
상기 제2 실시예에 따른 JPEG 파일 생성 장치에서의 JPEG 파일 생성 방법은 도 8의 순서도에서와 같을 수 있다.
먼저, JPEG 파일 생성 장치는, 카메라 모듈로부터 메인 JPEG 이미지 및 썸네일 이미지를 포함하는 1 프레임의 프레임 데이터를 입력받는다[S810].
이후, JPEG 이미지 파일을 생성시키기 위한 제1 전제 과정으로서, 입력된 프레임 데이터에 포함된 상기 썸네일 이미지로부터 썸네일 JPEG 이미지를 생성한다[S820].
그리고, JPEG 이미지 파일을 생성시키기 위한 제2 전제 과정으로서, 카메라 모듈로부터 전달된 메인 JPEG 이미지가 저조도(低照度) 상태에 있는지 여부를 판단하여[S830], 저조도 상태에 있는 경우 상기 메인 JPEG 이미지에 대한 이미지 보정을 수행한다[S840].
이때, JPEG 이미지 파일을 생성시키기 위한 상기 2개의 전제 과정(즉, 단계 S820과 단계 S840) 역시, 도 8에 나타낸 순서와 상관 없이, 병렬적으로 처리될 수 있다.
이에 따라, 카메라 모듈로부터 전달된 메인 JPEG 이미지가 저조도 상태에 있는 경우에는, 상기 단계 S840을 통해 보정 처리된 JPEG 이미지와 상기 단계 S820을 통해 생성된 썸네일 JPEG 이미지를 이용하여 JPEG 이미지 파일을 최종 생성한다[S850]. 그러나 위와 달리 카메라 모듈로부터 전달된 메인 JPEG 이미지가 저조도 상태에 있지 않은 경우에는, 상기 단계 S840을 통한 이미지 보정은 수행하지 않고, 본래의 메인 JPEG 이미지(즉, 카메라 모듈로부터 전달된 메인 JPEG 이미지 자체)와 상기 단계 S820을 통해 생성된 썸네일 JPEG 이미지를 이용하여 JPEG 이미지 파일을 최종 생성하게 된다[S860].
상술한 도 8의 순서도에 따른 JPEG 파일 생성 방법은, 도 5의 순서도에 따른 JPEG 파일 생성 방법과 비교할 때, 상기 단계 S830, S840, S850 및 S860는 도 5의 단계 S530, S540, S550 및 S560과 동일하다. 다만, 상기 단계 S810과 S820에서 차이를 갖는다. 이는, 도 5의 단계 S510을 통해 카메라 모듈로부터 JPEG 파일 생성 장치로 입력되는 프레임 데이터와 달리, 도 8에서 단계 S810을 통해 입력되는 프레임 데이터에는 메인 JPEG 이미지 이외에도 썸네일 이미지가 더 포함되기 때문이다.
즉, 상기 제2 실시예에 의할 때, 카메라 모듈은 메인 JPEG 이미지 이외에도 썸네일 이미지를 더 생성하여 호스트 시스템에 전송한다. 이를 위해, 상기 제2 실시예에 따르는 도 6의 카메라 모듈(200b)에는, 상기 제1 실시예에 따르는 도 3의 카메라 모듈(200a)와 비교할 때, 이미지 시그널 프로세서(220b) 내에 썸네일 스케일러(222)가 더 포함되고 있음을 확인할 수 있다. 즉, 도 6의 카메라 모듈(200b)은 그 내부에 메인 JPEG 인코더(221) 이외에도 상기 썸네일 스케일러(222)를 더 포함 함으로써, 원본 이미지에 대한 메인 JPEG 이미지 및 썸네일 이미지가 포함된 프레임 데이터를 호스트 시스템으로 전송할 수 있다.
이때, 카메라 모듈(200b)로부터 호스트 시스템으로 전송되는 상기 프레임 데이터의 전송 포맷은 예를 들어 도 12와 같을 수 있다. 도 12는 도 6에 도시된 카메라 모듈로부터 출력되는 프레임 데이터 포맷의 일 예를 나타낸 도면이다. 이하, 도 12를 참조하여, 프레임 데이터의 전송 포맷에 관하여 설명하면 아래와 같다.
도 12를 참조할 때, 호스트 시스템으로 전송될 1 프레임의 프레임 데이터는, 프레임 데이터 0(도 4의 Frame data 0 참조)으로부터 프레임 데이터 N(도 4의 Frame data N)까지 총 N+1 개의 단위 프레임 데이터를 포함하고 있다.
그리고 상기 프레임 데이터 0을 예로 들어 설명할 때, 하나의 단위 프레임 데이터에는, 썸네일 이미지 데이터 일부(도 4의 1003 참조)와, 메인 JPEG 이미지 데이터의 일부(도 4의 1006 참조), 그리고 상기 썸네일 이미지 데이터와 상기 메인 JPEG 이미지 데이터 사이의 구분자로서 각각 이용될 소정의 마커(Marker)(도 4의 1001, 1002, 1004, 1005 참조)가 포함되고 있다.
그러나, 다른 실시예에 의할 때, 상기 전송 포맷은 다양하게 변형될 수 있음은 물론이다. 예를 들어, 도 12에서는 하나의 단위 프레임 데이터에 총 4개의 마커가 삽입되고 있지만, 썸네일 이미지 데이터와 메인 JPEG 이미지 데이터를 구분하기 위한 용도라면 삽입되는 마커의 개수는 1개 또는 2개도 충분할 수 있다. 또한, 하나의 단위 프레임 데이터에서 상기 썸네일 이미지 데이터와 메인 JPEG 이미지 데이터가 삽입되는 순서도 도 12에서와 반대일 수 있다. 또한, 도 12에서와 같이 하나 의 단위 프레임 데이터에 썸네일 이미지 데이터와 메인 JPEG 이미지 데이터가 반드시 중간 중간에 섞여서 삽입되어 있는 형태를 갖지 않아도 무방하다.
또한, 도 12의 전송 포맷에는, 프레임 데이터의 말미에 더미 데이터(Dummy data)(1007) 및 정보 세그먼트(Information segment)(1008, 1009, 1010)가 포함되고 있다. 상기 더미 데이터(1007)는, 수직 동기 신호(Vsync)에 따른 프레임 동기(Frame Synchronization)을 맞추기 위한 용도로서 삽입되는 무의미한 데이터이다(도 13 참조).
본 발명에 의할 때 상기 메인 JPEG 이미지 데이터는 JPEG 압축 처리된 이미지 데이터이므로, 압축 처리 전의 이미지 데이터에 대한 프레임 동기와는 그 데이터 구간이 일치하지 않을 수 있다. 상기 더미 데이터(1007)는 위와 같은 문제를 해결하기 위한 용도로서 사용된다.
그 다음으로, 상기 정보 세그먼트(1010)는, JPEG 이미지 파일의 JPEG 헤더를 생성시키는데 필요한 정보를 포함한다. JPEG 헤더를 생성시키는데 필요한 정보로는, 원본 이미지 데이터의 크기, JPEG 이미지 데이터의 크기, 프레임 길이 또는 썸네일 이미지 데이터의 크기 등과 같은 1 프레임의 이미지에 관한 프레임 정보가 포함될 수 있다. 또는/및 이미지 데이터를 인코딩하는데 적용될 인코딩 정보(예를 들어, 양자화 테이블, 허프만 테이블, DCT 신호 처리 방식 등)도 이에 포함될 수 있다.
도 12에서는, 프레임 데이터의 전송 포맷에 정보 세그먼트를 포함시키고 있지만, 상기 정보 세그먼트가 상기 전송 포맷에 반드시 포함되어야 할 필요는 없음 은 물론이다. 정보 세그먼트는 추후 JPEG 헤더 또는 썸네일 JPEG 헤더의 생성을 위한 기초 정보로 활용되는 것으로서, 이러한 헤더 생성을 위한 기초 정보는 호스트 시스템 측에서 직접 획득해낼 수도 있기 때문이다.
상술한 도 12는 상기 제2 실시예에 따라 프레임 데이터에 메인 JPEG 이미지와 썸네일 이미지가 포함되는 경우를 상정한 것으로서, 상기 제1 실시예의 경우에는 이하 설명할 썸네일 이미지는 그 전송 포맷 내에 포함되지 않을 것이며, 상기 제3 실시예의 경우에는 썸네일 이미지 대신 썸네일 JPEG 이미지가 포함될 수 있음은 자명하다 할 것이다.
상술한 바와 같은 전송 포맷을 갖는 프레임 데이터는, 도 13에 도시된 바와 같이, 픽셀 클럭, 수직 동기 신호(즉, 프레임 동기 신호) 및 수평 동기 신호(즉, 라인 동기 신호)에 동기를 맞춰 카메라 모듈로부터 JPEG 파일 생성 장치로 전송된다. 이와 같이 전송된 프레임 데이터는 JPEG 파일 생성 장치에서의 데이터 입력부(710)에서도 상기 픽셀 클럭, 수직 동기 신호 및 수평 동기 신호에 맞춰서 읽어들인다.
도 7의 JPEG 파일 생성 장치(700b)의 경우, 도 4의 JPEG 파일 생성 장치(700a)와 비교할 때, 파싱부(720)를 더 포함하고 있는 반면, 도 4에 존재하던 썸네일 이미지 생성부(730)는 구비하지 않고 있다. 이는, 도 6의 카메라 모듈(200b)로부터 전송되는 프레임 데이터에 메인 JPEG 이미지 이외에 썸네일 이미지가 더 포함되고 있기 때문이다.
도 7의 JPEG 파일 생성 장치(700b)에서 파싱부(720)(이는 후술할 도 10의 경 우에도 동일함)는 상기 입력된 프레임 데이터에서 메인 JPEG 이미지와 썸네일 이미지를 구분시키는 역할을 수행한다. 이러한 데이터 구분은 상기 입력된 프레임 데이터 내에 포함된 마커(Marker)에 기초하여 수행될 수 있다.
앞서 설명한 바와 같이, 상기 프레임 데이터에는 썸네일 이미지가 부가되어 전달되므로, 도 7의 JPEG 파일 생성 장치(700b)에는 도 4에서와 같은 썸네일 이미지 생성부(730)는 필수 구성요소로 포함되어 있지 않다.
상술한 바 이외의 구성 및 그 구성의 역할은 도 7의 JPEG 파일 생성 장치(700b)와 도 4의 JPEG 파일 생성 장치(700a)에 차이는 없다.
다음으로 상기 제3 실시예에 대하여 도 9 내지 도 11을 참조하여 설명한다. 여기서, 도 9는 본 발명의 또 다른 실시예에 따른 카메라 모듈을 나타낸 블록 구성도이고, 도 10은 본 발명의 또 다른 실시예에 따른 JPEG 파일 생성 장치를 나타낸 블록 구성도이며, 도 11은 본 발명의 또 다른 실시예에 따른 JPEG 파일 생성 방법을 나타낸 순서도이다.
상기 제3 실시예에 따른 JPEG 파일 생성 장치에서의 JPEG 파일 생성 방법은 도 11의 순서도에서와 같을 수 있다.
먼저, JPEG 파일 생성 장치는, 카메라 모듈로부터 메인 JPEG 이미지 및 썸네일 JPEG 이미지를 포함하는 1 프레임의 프레임 데이터를 입력받는다[S1110].
그리고, 카메라 모듈로부터 전달된 메인 JPEG 이미지가 저조도(低照度) 상태에 있는지 여부를 판단하여[S1130], 저조도 상태에 있는 경우 상기 메인 JPEG 이미 지에 대한 이미지 보정을 수행한다[S1140].
이에 따라, 카메라 모듈로부터 전달된 메인 JPEG 이미지가 저조도 상태에 있는 경우에는, 상기 단계 S1140을 통해 보정 처리된 JPEG 이미지와 상기 단계 S1110을 통해 전달된 썸네일 JPEG 이미지를 이용하여 JPEG 이미지 파일을 최종 생성한다[S1150]. 그러나 위와 달리 카메라 모듈로부터 전달된 메인 JPEG 이미지가 저조도 상태에 있지 않은 경우에는, 상기 단계 S1140을 통한 이미지 보정은 수행하지 않고, JPEG 포맷을 갖는 본래의 메인 JPEG 이미지 그리고 썸네일 JPEG 이미지를 그래도 파일 저장한다[S1160].
상술한 도 11의 순서도에 따른 JPEG 파일 생성 방법은, 도 5 또는 도 8의 순서도에 따른 JPEG 파일 생성 방법과 대동소이하다. 여기서, 도 11의 순서도에 따른 JPEG 파일 생성 방법의 경우, 카메라 모듈로부터 전달된 프레임 데이터 내에 이미 썸네일 JPEG 이미지가 포함되어 있기 때문에, 도 5의 단계 S520 또는 도 8의 단계 S820과 같은 썸네일 JPEG 이미지 생성 단계는 별도로 요구되지 않음에 차이가 있다.
이러한 이유로, 도 9에 도시된 카메라 모듈(200c)의 경우, 이미지 시그널 프로세서(220c) 내에 메인 JPEG 인코더(221), 썸네일 스케일러(222) 이외에도 썸네일 JPEG 인코더(223)을 더 포함하고 있다. 또한, 도 10에 도시된 JPEG 파일 생성 장치(700c)의 경우, 프레임 데이터를 통해서 썸네일 JPEG 이미지가 직접 전달되므로, 도 4 또는 도 7에서와 같은 썸네일 이미지 생성부(730), 썸네일 버퍼(735), 썸네일 JPEG 이미지 생성부(740)는 포함되지 않고 있다.
이상에서는 본 발명의 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 쉽게 이해할 수 있을 것이다.
도 1은 본 발명이 적용될 수 있는 관련 기술로서, 카메라 모듈과 호스트 시스템을 포함하는 단말기의 구조를 개략적으로 나타낸 블록 구성도(Block diagram).
도 2는 종래 기술에 따른 JPEG 인코딩 방법을 설명하기 위한 도면.
도 3은 본 발명의 일 실시예에 따른 카메라 모듈을 나타낸 블록 구성도.
도 4는 본 발명의 일 실시예에 따른 JPEG 파일 생성 장치를 나타낸 블록 구성도.
도 5는 본 발명의 일 실시예에 따른 JPEG 파일 생성 방법을 나타낸 순서도.
도 6은 본 발명의 다른 실시예에 따른 카메라 모듈을 나타낸 블록 구성도.
도 7은 본 발명의 다른 실시예에 따른 JPEG 파일 생성 장치를 나타낸 블록 구성도.
도 8은 본 발명의 다른 실시예에 따른 JPEG 파일 생성 방법을 나타낸 순서도.
도 9는 본 발명의 또 다른 실시예에 따른 카메라 모듈을 나타낸 블록 구성도.
도 10은 본 발명의 또 다른 실시예에 따른 JPEG 파일 생성 장치를 나타낸 블록 구성도.
도 11은 본 발명의 또 다른 실시예에 따른 JPEG 파일 생성 방법을 나타낸 순서도.
도 12는 도 6에 도시된 카메라 모듈로부터 출력되는 프레임 데이터 포맷의 일 예를 나타낸 도면.
도 13은 도 6에 도시된 카메라 모듈로부터 상기 프레임 데이터가 출력되는 방법을 예시한 도면.
도 14는 본 발명의 실시예에 따라 생성된 썸네일 JPEG 이미지 파일, JPEG 헤더 및 JPEG 이미지 파일의 포맷을 나타낸 도면.
<도면의 주요부분에 대한 부호의 설명>
100 : 단말기
200a, 200b, 200c : 카메라 모듈
210 : 이미지 센서
220a, 220b, 220c : ISP
700a, 700b, 700c : JPEG 파일 생성 장치
710 : 데이터 입력부
750 : 조도 판단부
760 : 이미지 보정부
770 : 파일 생성부
Claims (17)
- 프레임 데이터를 입력받는 단계-상기 프레임 데이터는 적어도 원본 이미지에 대한 압축 이미지 데이터를 포함함-;상기 압축 이미지 데이터가 미리 설정된 기준치 이하의 저조도 상태에 있는 경우, 상기 압축 이미지 데이터에 대하여 이미지 보정 처리를 수행하는 단계; 및상기 압축 이미지 데이터가 상기 저조도 상태에 있는 경우, 상기 보정 처리된 압축 이미지 데이터와 썸네일 압축 이미지 데이터를 포함하는 압축 이미지 파일을 생성하고, 상기 압축 이미지 데이터가 상기 저조도 상태에 있지 않은 경우, 본래의 상기 압축 이미지 데이터와 썸네일 압축 이미지 데이터를 포함하는 압축 이미지 파일을 생성하는 단계를 포함하는 압축 파일 생성 방법.
- 제1항에 있어서,상기 압축 이미지 데이터에 대하여 이미지 보정 처리를 수행하는 단계는,상기 압축 이미지 데이터를 블록 데이터 단위로 디코딩하는 단계;상기 디코딩된 블록 데이터에, 휘도 강화(Brightness enhancement), 노이즈 감소(Noise reduction) 및 블록성 잡음 감소(Blockey effect reduction) 중 적어도 하나를 포함하는 개선 알고리즘을 적용하는 단계; 및상기 개선 알고리즘이 적용된 각각의 블록 데이터를 인코딩하여 보정 처리된 압축 이미지 데이터를 생성하는 단계를 포함하는 것을 특징으로 하는 압축 파일 생성 방법.
- 제2항에 있어서,상기 압축 이미지 데이터는 JPEG 이미지 데이터이고,상기 블록 데이터는 허프만 디코딩 방식에 따라 디코딩되고, 허프만 인코딩 방식에 따라 인코딩되는 것을 특징으로 하는 압축 파일 생성 방법.
- 제1항에 있어서,상기 압축 이미지 데이터를 디코딩하는 단계;상기 디코딩된 이미지 데이터를 썸네일 이미지 크기로 스케일링하는 단계;상기 스케일링된 이미지 데이터를 인코딩하여 상기 썸네일 압축 이미지 데이터를 생성하는 단계를 더 포함하는 것을 특징으로 하는 압축 파일 생성 방법.
- 제4항에 있어서,상기 스케일링된 썸네일 이미지 데이터는 RGB 형식으로 색상 변환된 후, 디 스플레이 화면을 통해 이미지 출력되는 것을 특징으로 하는 압축 파일 생성 방법.
- 제1항에 있어서,상기 프레임 데이터는 상기 원본 이미지에 대한 썸네일 이미지 데이터를 더 포함하되,상기 썸네일 이미지 데이터를 인코딩하여 상기 썸네일 압축 이미지 데이터를 생성하는 단계를 더 포함하는 것을 특징으로 하는 압축 파일 생성 방법.
- 제1항에 있어서,상기 프레임 데이터는 상기 원본 이미지에 대한 썸네일 압축 이미지 데이터를 더 포함하되,상기 압축 이미지 파일을 생성하는 단계는, 상기 프레임 데이터에 포함된 썸네일 압축 이미지 데이터가 이용되는 것을 특징으로 하는 압축 파일 생성 방법.
- 제1항에 있어서,상기 프레임 데이터는 카메라 모듈에 의해 생성되어 입력된 것을 특징으로 하는 압축 파일 생성 방법.
- 프레임 데이터를 저장하는 저장부-상기 프레임 데이터는 적어도 원본 이미지에 대한 압축 이미지 데이터를 포함함-;상기 압축 이미지 데이터가 미리 설정된 기준치 이하의 저조도 상태에 있는지 여부를 판단하는 조도 판단부;상기 조도 판단부에 의한 판단 결과, 상기 압축 이미지 데이터가 상기 저조도 상태에 있는 경우, 상기 압축 이미지 데이터에 대한 이미지 보정 처리를 수행하는 이미지 보정부; 및상기 압축 이미지 데이터가 상기 저조도 상태에 있는 경우, 상기 보정 처리된 압축 이미지 데이터와 썸네일 압축 이미지 데이터를 포함하는 압축 이미지 파일을 생성하고, 상기 압축 이미지 데이터가 상기 저조도 상태에 있지 않은 경우, 본래의 상기 압축 이미지 데이터와 썸네일 압축 이미지 데이터를 포함하는 압축 이미지 파일을 생성하는 파일 생성부를 포함하는 압축 파일 생성 장치.
- 제9항에 있어서,상기 이미지 보정부는,상기 압축 이미지 데이터를 블록 데이터 단위로 디코딩하는 디코더;상기 디코딩된 블록 데이터에, 휘도 강화(Brightness enhancement), 노이즈 감소(Noise reduction) 및 블록성 잡음 감소(Blockey effect reduction) 중 적어도 하나를 포함하는 개선 알고리즘을 적용하는 알고리즘 적용부; 및상기 개선 알고리즘이 적용된 블록 데이터를 인코딩하는 인코더를 포함하는 것을 특징으로 하는 압축 파일 생성 장치.
- 제10항에 있어서,상기 압축 이미지 데이터는 JPEG 이미지 데이터이고,상기 블록 데이터는 허프만 디코딩 방식에 따라 디코딩되고, 허프만 인코딩 방식에 따라 인코딩되는 것을 특징으로 하는 압축 파일 생성 장치.
- 제9항에 있어서,상기 압축 이미지 데이터를 디코딩하는 디코더;상기 디코딩된 이미지 데이터를 썸네일 이미지 크기로 스케일링하는 스케일러; 및상기 스케일링된 이미지 데이터를 인코딩하여 상기 썸네일 압축 이미지 데이터를 생성하는 인코더를 더 포함하는 것을 특징으로 하는 압축 파일 생성 장치.
- 제12항에 있어서,이미지 데이터의 색상을 RGB 형식으로 변환하는 색상 변환부를 더 포함하되,상기 스케일링된 썸네일 이미지 데이터는 상기 색상 변환부에 의해 RGB 형식으로 색상 변환된 후, 디스플레이 화면을 통해 이미지 출력되는 것을 특징으로 하는 압축 파일 생성 장치.
- 제9항에 있어서,상기 프레임 데이터는 상기 원본 이미지에 대한 썸네일 이미지 데이터를 더 포함하되,상기 썸네일 이미지 데이터를 인코딩하여 상기 썸네일 압축 이미지 데이터를 생성하는 인코더를 더 포함하는 것을 특징으로 하는 압축 파일 생성 장치.
- 제9항에 있어서,상기 프레임 데이터는 상기 원본 이미지에 대한 썸네일 압축 이미지 데이터를 더 포함하되,상기 파일 생성부는, 상기 프레임 데이터에 포함된 썸네일 압축 이미지 데이 터를 이용하여 상기 압축 이미지 파일을 생성하는 것을 특징으로 하는 압축 파일 생성 장치.
- 제9항에 있어서,상기 프레임 데이터는 카메라 모듈에 의해 생성되어 상기 저장부로 입력되는 것을 특징으로 하는 압축 파일 생성 장치.
- 카메라 모듈과, 상기 카메라 모듈과 인터페이스 연결되는 호스트 시스템을 포함하는 단말기에 있어서,상기 카메라 모듈은,이미지 센서;상기 이미지 센서에 의해 획득된 1 프레임의 원본 이미지로부터 압축 이미지 데이터를 생성하는 인코더; 및상기 압축 이미지 데이터를 포함하는 프레임 데이터를 상기 호스트 시스템(Host system)으로 출력하는 데이터 출력부를 포함하고,상기 호스트 시스템은,상기 프레임 데이터를 저장하는 저장부;상기 압축 이미지 데이터가 미리 설정된 기준치 이하의 저조도 상태에 있는지 여부를 판단하는 조도 판단부;상기 조도 판단부에 의한 판단 결과, 상기 압축 이미지 데이터가 상기 저조도 상태에 있는 경우, 상기 압축 이미지 데이터에 대한 이미지 보정 처리를 수행하는 이미지 보정부; 및상기 압축 이미지 데이터가 상기 저조도 상태에 있는 경우, 상기 보정 처리된 압축 이미지 데이터와 썸네일 압축 이미지 데이터를 포함하는 압축 이미지 파일을 생성하고, 상기 압축 이미지 데이터가 상기 저조도 상태에 있지 않은 경우, 본래의 상기 압축 이미지 데이터와 썸네일 압축 이미지 데이터를 포함하는 압축 이미지 파일을 생성하는 파일 생성부를 포함하는 것을 특징으로 하는 단말기.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090095765A KR101666927B1 (ko) | 2009-10-08 | 2009-10-08 | 압축 파일 생성 방법 및 장치, 이를 포함하는 단말기 |
US12/637,527 US8179452B2 (en) | 2008-12-31 | 2009-12-14 | Method and apparatus for generating compressed file, and terminal comprising the apparatus |
EP09015560A EP2204998A1 (en) | 2008-12-31 | 2009-12-16 | Method and apparatus for generating a compressed file, and terminal comprising the apparatus |
CN2009102619000A CN101771797B (zh) | 2008-12-31 | 2009-12-31 | 用于生成压缩文件的方法和装置及包括该装置的终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090095765A KR101666927B1 (ko) | 2009-10-08 | 2009-10-08 | 압축 파일 생성 방법 및 장치, 이를 포함하는 단말기 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20110038467A true KR20110038467A (ko) | 2011-04-14 |
KR101666927B1 KR101666927B1 (ko) | 2016-10-24 |
Family
ID=44045531
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020090095765A KR101666927B1 (ko) | 2008-12-31 | 2009-10-08 | 압축 파일 생성 방법 및 장치, 이를 포함하는 단말기 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101666927B1 (ko) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160098822A (ko) * | 2015-02-11 | 2016-08-19 | 엔트릭스 주식회사 | 클라우드 스트리밍 서비스 시스템, 화질 저하도에 따른 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치 |
WO2018106856A1 (en) * | 2016-12-09 | 2018-06-14 | Advanced Micro Devices, Inc. | Concurrent image compression and thumbnail generation |
WO2023231710A1 (zh) * | 2022-05-30 | 2023-12-07 | 华为技术有限公司 | 一种图片的处理方法及相关设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070092137A1 (en) * | 2005-10-20 | 2007-04-26 | Sharp Laboratories Of America, Inc. | Methods and systems for automatic digital image enhancement with local adjustment |
-
2009
- 2009-10-08 KR KR1020090095765A patent/KR101666927B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070092137A1 (en) * | 2005-10-20 | 2007-04-26 | Sharp Laboratories Of America, Inc. | Methods and systems for automatic digital image enhancement with local adjustment |
Non-Patent Citations (1)
Title |
---|
Shigeyuki Okada EI AL., IEEE Transactions on Consumcr Electronics, Vol. 45, No. 3, AUGUST 1999* * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160098822A (ko) * | 2015-02-11 | 2016-08-19 | 엔트릭스 주식회사 | 클라우드 스트리밍 서비스 시스템, 화질 저하도에 따른 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치 |
WO2018106856A1 (en) * | 2016-12-09 | 2018-06-14 | Advanced Micro Devices, Inc. | Concurrent image compression and thumbnail generation |
CN110050458A (zh) * | 2016-12-09 | 2019-07-23 | 超威半导体公司 | 并发的图像压缩和缩略图生成 |
CN110050458B (zh) * | 2016-12-09 | 2021-08-13 | 超威半导体公司 | 并发地执行图像压缩和缩略图生成的方法及用于该方法的设备 |
WO2023231710A1 (zh) * | 2022-05-30 | 2023-12-07 | 华为技术有限公司 | 一种图片的处理方法及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
KR101666927B1 (ko) | 2016-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101607295B1 (ko) | 압축 파일 생성 방법 및 장치, 이와 관련된 카메라 모듈 및 이를 포함하는 단말기 | |
US8179452B2 (en) | Method and apparatus for generating compressed file, and terminal comprising the apparatus | |
US8619866B2 (en) | Reducing memory bandwidth for processing digital image data | |
US8615043B2 (en) | Fixed length coding based image data compression | |
US20080284865A1 (en) | Image Signal Processor and Method for Outputting Deferred Vertical Synchronous Signal | |
US20110116725A1 (en) | Data compression method and data compression system | |
KR101666927B1 (ko) | 압축 파일 생성 방법 및 장치, 이를 포함하는 단말기 | |
US7936378B2 (en) | Image pickup device and encoded data transferring method | |
KR100664550B1 (ko) | 인코딩된 데이터 전달 방법 및 그 방법을 수행하는 촬상장치 | |
US8233729B2 (en) | Method and apparatus for generating coded block pattern for highpass coefficients | |
US20080266415A1 (en) | Image Pickup Device and Encoded Data Outputting Method | |
US8154749B2 (en) | Image signal processor and deferred vertical synchronous signal outputting method | |
KR20090072556A (ko) | 이미지 신호의 처리 방법 및 이를 수행하는 신호 처리 장치 | |
KR100664554B1 (ko) | 인코딩된 데이터 전달 방법 및 그 방법을 수행하는 촬상장치 | |
US9681141B2 (en) | Error detection on variable length code decoder | |
KR100834357B1 (ko) | 영상 데이터의 압축 장치 및 방법 | |
KR20070047729A (ko) | 수직 동기 신호 지연 출력 방법 및 그 방법을 수행하는이미지 시그널 프로세서 | |
KR100771138B1 (ko) | 촬영 장치 및 영상 보정 방법 | |
KR100854724B1 (ko) | 인코딩된 데이터 전달 방법 및 그 방법을 수행하는 촬상장치 | |
KR100907465B1 (ko) | 이미지 신호의 처리 방법 및 이를 수행하는 신호 처리 장치 | |
KR20070047730A (ko) | 인코딩된 데이터 전달 방법 및 그 방법을 수행하는 촬상장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |