KR101270851B1 - 적응적 렌즈 셰이딩 보정 - Google Patents

적응적 렌즈 셰이딩 보정 Download PDF

Info

Publication number
KR101270851B1
KR101270851B1 KR1020127025799A KR20127025799A KR101270851B1 KR 101270851 B1 KR101270851 B1 KR 101270851B1 KR 1020127025799 A KR1020127025799 A KR 1020127025799A KR 20127025799 A KR20127025799 A KR 20127025799A KR 101270851 B1 KR101270851 B1 KR 101270851B1
Authority
KR
South Korea
Prior art keywords
lens shading
image
image processing
frames
image data
Prior art date
Application number
KR1020127025799A
Other languages
English (en)
Other versions
KR20120118081A (ko
Inventor
데이비드 다밍 쿠오
하이타오 구오
제이 데이비드 지프닉
팅 첸
수미트 차울라
Original Assignee
애플 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 애플 인크. filed Critical 애플 인크.
Publication of KR20120118081A publication Critical patent/KR20120118081A/ko
Application granted granted Critical
Publication of KR101270851B1 publication Critical patent/KR101270851B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/73Colour balance circuits, e.g. white balance circuits or colour temperature control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/60Noise processing, e.g. detecting, correcting, reducing or removing noise
    • H04N25/61Noise processing, e.g. detecting, correcting, reducing or removing noise the noise originating only from the lens unit, e.g. flare, shading, vignetting or "cos4"
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/10Circuitry of solid-state image sensors [SSIS]; Control thereof for transforming different wavelengths into image signals
    • H04N25/11Arrangement of colour filter arrays [CFA]; Filter mosaics
    • H04N25/13Arrangement of colour filter arrays [CFA]; Filter mosaics characterised by the spectral characteristics of the filter elements
    • H04N25/134Arrangement of colour filter arrays [CFA]; Filter mosaics characterised by the spectral characteristics of the filter elements based on three different wavelength filter elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/60Noise processing, e.g. detecting, correcting, reducing or removing noise
    • H04N25/61Noise processing, e.g. detecting, correcting, reducing or removing noise the noise originating only from the lens unit, e.g. flare, shading, vignetting or "cos4"
    • H04N25/611Correction of chromatic aberration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof
    • H04N23/84Camera processing pipelines; Components thereof for processing colour signals
    • H04N23/843Demosaicing, e.g. interpolating colour pixel values

Abstract

이미지 센서에 의해 캡쳐된 이미지 데이터에 렌즈 셰이딩 보정을 적용하는 시스템들, 방법들, 및 디바이스들이 제공된다. 일 실시예에서, 각각이 기준 발광체에 대한 컬러 채널의 응답에 기초하여 모델링된 복수의 렌즈 셰이딩 적응 함수들이 제공된다. 이미지 데이터로부터의 이미지 프레임은 현재 발광체에 가장 근사하게 매칭하는 기준 발광체에 대응하는 렌즈 셰이딩 적응 함수를 선택하기 위해 분석될 수 있다. 그 다음 선택된 렌즈 셰이딩 적응 함수는 렌즈 셰이딩 파라미터들의 집합을 조정하기 위해 사용될 수 있다.

Description

적응적 렌즈 셰이딩 보정{ADAPTIVE LENS SHADING CORRECTION}
본원에 개시되고 청구되는 발명은 애플의 아이폰 4의 시제품이 2010년 3월 25일자로 애플 엔지니어로부터 분명히 도난되었을 때 때 이르게 그리고 애플의 허가없이 대중에게 개시되었다. 본원이 기초로 하는 미국 우선권 출원은 명백한 도난 전에 출원되지 않았다.
본 발명은 일반적으로 이미지 프로세싱, 구체적으로는 미처리 이미지 데이터의 인터셉트 및 처리에 관한 것이다.
이 섹션은 아래에 설명 및/또는 청구되는 본 발명의 다양한 양태와 관련될 수 있는 기술의 다양한 양태를 독자에게 소개하는 것을 의도한다. 이 설명은 본 발명의 다양한 양태의 보다 나은 이해를 촉진하기 위한 배경 정보를 독자에게 제공하는 데 도움이 될 것으로 생각한다. 따라서, 이러한 진술들은 종래 기술의 인정이 아니라, 그러한 점을 고려하여 읽혀져야 한다는 것을 이해해야 한다.
많은 전자 디바이스들은 카메라 또는 기타 이미지 캡쳐 디바이스들을 포함한다. 이러한 이미지 캡쳐 디바이스들은 미처리 이미지 데이터의 프레임들을 출력할 수 있으며, 이들은 처리된 이미지로서 저장되거나 전자 디바이스 상에 표시되기 전에 처리될 수 있다. 효율성을 위해, 많은 전자 디바이스들은 이미지 신호 프로세서(ISP)와 같은 전용 이미지 프로세싱 파이프라인을 통해 그러한 미처리 이미지 데이터를 처리할 수 있다.
처리되는 이미지 데이터의 프레임과 관련된 통계에 기초하여 전용 이미지 프로세싱 파이프라인을 제어하기 위한 많은 파라미터가 판정될 수 있다. 그러나, 통계는 미처리 이미지 데이터의 프레임이 부분적으로 처리된 후에만 판정될 수 있으므로, 전용 이미지 프로세싱 파이프라인의 초기 스테이지들을 위한 컨트롤 파라미터들은 이미지 데이터의 현재 프레임이 아니라 이미지 데이터의 이전 프레임들로부터의 통계에 기초하여 판정될 수 있다. 따라서, 일부 예들에서, 하드웨어 파이프라인의 초기 단계들은 진동 및 비정밀로 인해 잘못 캘리브레이션될 수 있으며, 결과 이미지는 불만족스러울 수 있다. 더욱이, 하드웨어 파이프라인의 초기 단계들이 적절히 캘리브레이션되는 경우에도, 결과 이미지는 때때로 다른 이유들로 인해 불만족스러울 수 있다. 그럼에도, 유일한 구제책은 불만족스럽게 처리된 이미지를 후 처리하는 것을 포함할 수 있다.
본 명세서에 개시되는 소정 실시예들의 요약이 아래에 제공된다. 이러한 양태들은 이러한 소정 실시예들의 간단한 요약을 독자에게 제공하기 위해 설명될 뿐이며, 이러한 양태들은 본 발명의 범위를 한정하는 것을 의도하지 않는다는 것을 이해해야 한다. 사실상, 본 발명은 아래에 설명되지 않을 수도 있는 다양한 양태를 포함할 수 있다.
본 발명의 실시예들은 전자 디바이스의 메인 이미지 프로세싱 및 대체 이미지 프로세싱 능력들에 의해 미처리 이미지 데이터를 이중 처리하기 위한 시스템들, 방법들 및 디바이스들과 관련된다. 일 실시예에 따르면, 대체 이미지 프로세싱은 미처리 이미지 데이터의 프레임의 제2 사본이 메인 이미지 프로세싱에 의해 처리되기 전에 미처리 이미지 데이터의 프레임의 제1 사본을 분석할 수 있다. 이어서, 메인 이미지 프로세싱은 미처리 이미지의 프레임의 제2 사본을 처리할 수 있다. 메인 이미지 프로세싱은 미처리 이미지 데이터의 프레임의 제1 사본의 분석에 적어도 부분적으로 기초하여 캘리브레이션될 수 있다. 이러한 피드포워드 처리 기술들은 예를 들어 블랙 레벨 보상, 렌즈 셰이딩 보정 및 결함 픽셀 맵핑을 포함하는 다양한 이미지 프로세싱 기능들에 이용될 수 있다.
전술한 특징들의 다양한 개량들이 현재 개시되는 실시예들과 관련하여 존재할 수 있다. 추가적인 특징들도 이러한 다양한 실시예들에 포함될 수 있다. 이러한 개량들 및 추가적인 특징들은 개별적으로 또는 임의의 조합으로 존재할 수 있다. 예를 들어, 하나 이상의 실시예와 관련하여 후술하는 다양한 특징들은 단독으로 또는 임의의 조합으로 다른 개시되는 실시예들에 포함될 수 있다. 다시, 위에 제공되는 간단한 요약은 청구 발명에 대한 한정이 아니라 본 발명의 실시예들의 소정의 양태들 및 상황들을 독자에게 알리는 것만을 의도한다.
본 발명의 다양한 양태들은 아래의 상세한 설명을 읽고 도면들을 참조할 때 더 잘 이해될 것이다. 도면들에서:
도 1은 일 실시예에 따라 본 명세서에서 개시되는 기술들을 수행할 수 있는 전자 디바이스의 블록도이다.
도 2는 도 1의 전자 디바이스의 이미지 캡쳐 디바이스 내에 구현될 수 있는 바이엘(Bayer) 컬러 필터 어레이의 2x2 픽셀 블록의 그래픽 표현이다.
도 3 및 4는 도 1의 전자 디바이스의 일 실시예를 나타내는 핸드헬드 전자 디바이스의 정면도 및 배면도를 각각 나타낸다.
도 5는 본 발명의 일 실시예에 따른 도 1의 전자 디바이스를 이용하여 이루어질 수 있는 이미지 프로세싱의 개략 블록도이다.
도 6은 일 실시예에 따른 도 1의 전자 디바이스 내에서 이루어질 수 있는 이미지 프로세싱의 다른 개략 블록도이다.
도 7 및 8은 대체 이미지 프로세싱으로부터의 미처리 이미지 데이터 분석을 이용하여 메인 이미지 프로세싱을 캘리브레이션하기 위한 방법들의 실시예들을 나타내는 플로우차트들이다.
도 9는 일 실시예에 따라 피드포워드 블랙 레벨 보상을 제공하기 위한 이미지 프로세싱 시스템의 블록도이다.
도 10은 일 실시예에 따른, 소프트웨어, 펌웨어 및 하드웨어 파이프라인을 포함하는 도 9의 이미지 프로세싱 시스템의 3 레벨 아키텍처를 일반적으로 나타낸다.
도 11은 일 실시예에 따라 프레임들에 블랙 레벨 보상을 적용하기 위한 방법을 나타내는 플로우차트이다.
도 12는 일 실시예에 따라 기준 프레임의 이미지 데이터 내의 추정 블랙 레벨 시프트를 판정하기 위해 기준 프레임에 대해 소프트웨어 분석을 수행하기 위한 플로우차트이다.
도 13은 일 실시예에 따라 기준 프레임 내의 블랙 레벨 시프트에 기초하여 추가적인 프레임들 내의 블랙 레벨 시프트를 판정하기 위한 플로우차트이다.
도 14는 이미징 디바이스의 통상적인 렌즈에 대한 픽셀 위치 대 광 강도를 나타내는 삼차원 프로파일을 도시한다.
도 15는 렌즈 셰이딩 게인들의 세트를 정의하는 게인 그리드를 나타낸다.
도 16은 본 발명의 양태들에 따라 렌즈 셰이딩 보정을 수행할 때 도 14에 도시된 광 강도 특성들을 나타내는 이미지에 적용될 수 있는 렌즈 셰이딩 게인 값들을 나타내는 삼차원 프로파일이다.
도 17은 본 발명의 양태들에 따라 렌즈 셰이딩 보정을 적용하도록 구성될 수 있는 이미지 신호 프로세싱(ISP) 시스템을 나타내는 블록도이다.
도 18-21은 상이한 타입의 기준 발광체들에 대한 적색, 청색 및 녹색 채널들의 렌즈 셰이딩 폴 오프(fall-off) 곡선들을 나타낸다.
도 22는 도 18-21에 도시된 기준 발광체들 각각에 대한 렌즈 셰이딩 적응 곡선들을 나타내는 그래프이다.
도 23은 일 실시예에 따라 현재 발광체에 기초하여 렌즈 셰이딩 보정 파라미터들을 적응시키기 위한 프로세스를 나타내는 플로우차트이다.
도 24는 일 실시예에 따라 현재 발광체에 기초하여 렌즈 셰이딩 적응 함수를 선택하기 위한 프로세스를 나타내는 플로우차트이다.
도 25는 일 실시예에 따라 기준 이미지 프레임의 서브세트들 내의 평균 컬러 값들을 판정하기 위한 기술들을 나타낸다.
도 26 및 27은 일 실시예에 따라 도 17의 ISP 시스템에 선택된 렌즈 셰이딩 적응 곡선을 적용하기 위한 프로세스를 나타낸다.
도 28은 메인 이미지 프로세싱을 수행하기 전에 결함 픽셀 맵을 보정하기 위한 방법의 일 실시예를 설명하는 플로우차트이다.
도 29는 메인 이미지 프로세싱이 불만족스러운 결과를 낳는 경우에 이미지를 재처리하기 위한 방법의 일 실시예를 설명하는 플로우차트이다.
하나 이상의 구체적인 실시예가 아래에 설명된다. 이러한 실시예들의 간결한 설명을 제공하기 위하여, 본 명세서에서는 실제 구현의 모든 특징들이 설명되지는 않는다. 임의의 그러한 실제 구현의 개발에 있어서는, 임의의 엔지니어링 또는 설계 프로젝트에서와 같이, 구현마다 다를 수 있는 시스템 관련 및 비즈니스 관련 제약들의 준수와 같은 개발자들의 특정 목표들을 달성하기 위해 다양한 구현 고유 판정들이 이루어져야 한다는 것을 알 것이다. 더욱이, 그러한 개발 노력은 복잡하고 시간 소모적일 수 있지만, 본 발명의 이익을 갖는 통상의 기술자들에게는 일상적인 설계, 제조 및 생산 업무일 것이라는 것을 이해해야 한다.
본 실시예들은 전자 디바이스의 메인 이미지 프로세싱 및 대체 이미지 프로세싱 능력들에 의한 미처리 이미지 데이터의 이중 처리에 관한 것이다. 일부 실시예들에서, 이러한 캡쳐된 미처리 이미지 데이터는 이미지 신호 프로세서(ISP)일 수 있는 메인 이미지 프로세싱을 위한 피드포워드 컨트롤 파라미터들을 생성하는 데 사용될 수 있다. 예를 들어, 주기적으로 또는 요청시에(예를 들어, 메인 이미지 프로세싱이 잘못 캘리브레이션될 것으로 예상될 때), 소정의 대체 이미지 프로세싱이 인터셉트된 미처리 이미지 데이터를 분석할 수 있다. 그러한 대체 이미지 프로세싱은 예를 들어 상이한 ISP 또는 범용 프로세서 상에서 실행되는 소프트웨어를 포함할 수 있다. 미처리 이미지 데이터의 분석에 기초하여, 메인 이미지 프로세싱을 제어하기 위한 업데이트된 컨트롤 파라미터들이 생성되고 메인 이미지 프로세싱으로 전송될 수 있다. 이어서, 메인 이미지 프로세싱은 이러한 업데이트된 컨트롤 파라미터들에 따라 미처리 이미지 데이터를 처리할 수 있다. 예를 들어, 그러한 피드포워드 컨트롤은 블랙 레벨 보상, 렌즈 셰이딩 보상, 또는 메인 이미지 프로세싱에 의해 수행되는 다른 보정 액션들 중 하나 이상과 관련하여 이용될 수 있다.
소정 실시예들은 캡쳐된 미처리 이미지 데이터를 다른 목적들을 위해 이용할 수 있다. 예를 들어, 미처리 이미지 데이터가 메인 이미지 프로세싱에 의해 처리된 후에 검출하기 어려울 수 있는 새로운 결함 픽셀들에 대해 미처리 이미지 데이터가 주기적으로 분석될 수 있다. 또한, 소정 실시예들에서는, 메인 이미지 프로세싱이 수행되는 동안에 미처리 이미지 데이터가 저장될 수 있으며, 이는 메인 이미지 프로세싱이 불만족스러운 이미지를 생성하는 경우에 대체 이미지 프로세싱에 의한 재처리를 가능하게 한다. 또 다른 실시예들에서, 대체 이미지 프로세싱은 메인 이미지 프로세싱과 동시에 미처리 이미지 데이터를 처리하여, 사용자에 의해 선택될 수 있는 이미지들을 생성할 수 있다.
위의 내용을 염두에 두고, 현재 개시되는 기술들을 수행하는 데 적합한 전자 디바이스들의 일반 설명이 아래에 제공된다. 특히, 도 1은 본 기술들에서 사용하기에 적합한 전자 디바이스 내에 존재할 수 있는 다양한 컴포넌트들을 도시하는 블록도이다. 도 2 및 3은 도시된 바와 같이 이미지 캡처 디바이스, 메인 이미지 프로세싱 능력들 및 소정의 대체 이미지 프로세싱 능력들을 갖는 핸드헬드 전자 디바이스일 수 있는 적절한 전자 디바이스의 정면도 및 배면도를 각각 나타낸다.
먼저 도 1를 보면, 현재 개시된 기술들을 수행하기 위한 전자 디바이스(10)는, 여러가지 중에서도, 하나 이상의 프로세서(들)(12), 메모리(14), 비휘발성 저장장치(16), 디스플레이(18), 하나 이상의 이미지 캡쳐 디바이스(20), 스트로브(22), 메인 이미지 프로세싱(24), 입력/출력(I/O) 인터페이스(26), 네트워크 인터페이스들(28), 입력 구조들(30) 및 전원(32)을 포함할 수 있다. 도 1에 도시된 다양한 기능 블록들은 하드웨어 구성요소들(회로를 포함함), 소프트웨어 구성요소들(영구적인 컴퓨터 판독가능한 매체에 저장된 컴퓨터 코드를 포함함) 또는 하드웨어 구성요소들과 소프트웨어 구성요소들의 조합을 포함할 수 있다. 주의할 점은, 도 1은 특정 구현의 단지 일례일 뿐이며 전자 디바이스(10)에 존재할 수 있는 컴포넌트들의 유형들을 도시하기 위해 의도된 것이라는 점이다.
예로서, 전자 디바이스(10)는 도 3에 도시된 핸드헬드 디바이스, 또는 유사한 이미징 능력을 구비한 데스크톱 또는 노트북 컴퓨터와 같은 유사한 디바이스들의 블록도를 표현할 수 있다. 주의할 점은, 메인 이미지 프로세싱(24) 블록, 프로세서(들)(12), 및/또는 기타 데이터 프로세싱 회로가 본원에서 일반적으로 "데이터 프로세싱 회로"로 지칭될 수 있다는 점이다. 그러한 데이터 프로세싱 회로는 전체적으로 또는 부분적으로 소프트웨어, 펌웨어, 하드웨어 또는 그의 임의의 조합으로서 구현될 수 있다. 더우기, 데이터 프로세싱 회로는 단일의 포함된 프로세싱 모듈(single contained processing module)이거나 또는 전자 디바이스(10) 내의 임의의 다른 구성요소들 내에 전체적으로 또는 부분적으로 포함될 수 있다. 추가적으로 또는 대안적으로, 데이터 프로세싱 회로는 전자 디바이스(10) 내에 부분적으로 구현될 수 있고 디바이스(10)에 접속된 다른 전자 디바이스 내에 부분적으로 구현될 수 있다.
도 1의 전자 디바이스(10)에서, 프로세서(들)(12) 및/또는 기타 데이터 프로세싱 회로는 메모리(14) 및 비휘발성 저장장치(16)에 동작가능하게 연결되어 현재 개시된 기술들을 수행하기 위한 다양한 알고리즘들을 수행할 수 있다. 이러한 알고리즘들은, 프로세서(들)(12) 및/또는 기타 데이터 프로세싱 회로에 의해 실행가능한 소정의 명렁어들에 기초하여 프로세서(들)(12) 및/또는 기타 데이터 프로세싱 회로(예를 들어, 메인 이미지 프로세싱(24)과 연관된 소프트웨어 또는 펌웨어)에 의해 수행될 수 있다. 그러한 명령어들은, 명령어들을 적어도 집합적으로 저장하기 위한 하나 이상의 유형의 컴퓨터 판독가능한 매체들을 포함하는 임의의 적절한 제조물(들)을 사용하여 저장될 수 있다. 제조물(들)은 예를 들어 메모리(14) 및/또는 비휘발성 저장장치(16)를 포함할 수 있다. 메모리(14) 및 비휘발성 저장장치(16)는, 랜덤 액세스 메모리, 롬(read-only memory), 재기입가능한 플래시 메모리, 하드 드라이브들 및 광 디스크들과 같은, 데이터 및 실행가능한 명령어들을 저장하는 임의의 적절한 제조물들을 포함할 수 있다.
이미지 캡쳐 디바이스(20)는 통상적으로 주변 광에 기초하여, 장면의 미처리 이미지 데이터의 프레임들을 캡쳐할 수 있다. 주변 광 단독만으로 부족한 경우, 이미지 캡쳐 디바이스(20)가 미처리 이미지 데이터의 프레임을 캡쳐하는 동안 스트로브(22)(예를 들어, 발광 다이오드(LED) 또는 제논 스트로브 플래시 디바이스)가 일시적으로 장면을 조명할 수 있다. 어느 한 경우에서, 이미지 캡쳐 디바이스(20)로부터의 미처리 이미지 데이터의 프레임은 메모리(14) 또는 비휘발성 저장장치(16)에 저장되거나 디스플레이(18)에 디스플레이되기 전에 처리될 수 있다.
특히, 예시된 이미지 캡쳐 디바이스(20)는 정지 이미지들 및 움직이는 이미들(예를 들어, 비디오) 모두를 취득하도록 구성되는 디지털 카메라로서 제공될 수 있다. 그러한 이미지 캡쳐 디바이스(20)는 광을 캡쳐하고 광을 전기 신호들로 변환하도록 구성된 하나 이상의 이미지 센서들 및 렌즈를 포함할 수 있다. 단지 예로서, 이미지 센서는 CMOS 이미지 센서(예를 들어, CMOS APS(active-pixel 센서)) 또는 CCD(charge-coupled device) 센서를 포함할 수 있다. 일반적으로, 이미지 캡쳐 디바이스(20) 내의 이미지 센서는 픽셀들의 어레이 - 각 픽셀은 광을 감지하기 위한 광검출기를 포함함 - 를 갖는 집적 회로를 포함한다. 이미징 픽셀들에서의 광검출기들이 카메라 렌즈를 통해 캡쳐되는 광의 강도를 일반적으로 검출하는 것은 본 기술분야의 당업자는 이해할 것이다. 그러나, 일반적으로 광검출기들 자체만으로는 캡쳐된 광의 파장을 검출할 수 없고 따라서, 색 정보를 판정할 수 없다.
따라서, 이미지 센서는 색 정보를 캡쳐하기 위해 이미지 센서의 픽셀 어레이에 걸쳐 배치되거나 오버레이(overlay)될 수 있는 컬러 필터 어레이(CFA)를 더 포함할 수 있다. 컬러 필터 어레이는 작은 컬러 필터들의 어레이를 포함할 수 있고 그들 각각은 이미지 센서의 각각의 픽셀에 중첩할 수 있고 캡쳐된 광을 파장에 의해 필터링할 수 있다. 따라서, 함께 사용되는 경우, 컬러 필터 어레이 및 광검출기들 모두는, 카메라를 통해 캡쳐되는 광 - 캡쳐된 이미지를 표현할 수 있음 - 에 대해 파장 및 강도 정보 모두를 제공할 수 있다.
일 실시예에서, 컬러 필터 어레이는 50% 녹색 요소들, 25% 적색 요소들 및 25% 청색 요소들인 필터 패턴을 제공하는, Bayer 컬러 필터를 포함할 수 있다. 예를 들면, 도 2는 2개의 녹색 요소들(Gr 및 Gb), 1개의 적색 요소(R) 및 1개의 청색 요소(B)를 포함하는 Bayer CFA의 2x2 픽셀 블록을 나타낸다. 따라서, Bayer 컬러 필터 어레이를 사용하는 이미지 센서는 이미지 캡쳐 디바이스(20)에 의해 수신된 광의 강도에 대한 정보를 녹색, 적색 및 청색 파장들로 제공할 수 있으며, 이에 따라 각각의 이미지 픽셀은 3개의 컬러들(RGB) 중 단지 하나만 기록한다. 그 후, "미처리 이미지 데이터(raw image data)" 또는 "미처리 영역(raw domain)" 내의 데이터로서 지칭될 수 있는 이러한 정보는, 일반적으로 각각의 픽셀에 대해 적색, 녹색 및 청색 값들의 세트를 보간(interpolating)함으로써, 하나 이상의 모자이크 해제 기술들을 이용하여 처리되어 미처리 이미지 데이터를 풀 컬러(full color) 이미지로 변환한다. 아래에서 설명되는 바와 같이, 이러한 모자이크 해제 기술들은 메인 이미지 프로세싱(24)에 의해 수행될 수 있다.
이미지 캡쳐 디바이스(20)로부터의 이러한 미처리 이미지 데이터의 프레임들은 프로세싱을 위해 메인 이미지 프로세싱(24)으로 들어갈 수 있다. 소정의 실시예들에서, 메인 이미지 프로세싱(24)은 삼성사의 이미지 신호 프로세서(ISP)를 포함할 수 있는, 전용의 하드웨어 이미지 프로세싱 파이프라인을 포함할 수 있다. 아래에서 논의되는 바와 같이, 이미지 캡쳐 디바이스(20)로부터의 미처리 이미지 데이터는 또한 전자 디바이스(10)의 대체 이미지 프로세싱 능력에 대해 접근가능한 메모리(14) 내의 프레임버퍼에 저장될 수 있다. 본원에서 사용되는 바와 같이, "대체 이미지 프로세싱(alternative image processing)"이란 용어는 메인 이미지 프로세싱(24)과는 별개로 수행되는 이미지 프로세싱을 나타내고 메인 이미지 프로세싱(24)에서의 프로세싱 대신에 또는 그에 추가하여 수행되는 이미지 프로세싱을 포함한다. 결론적으로, 그 용어는 또한 본원의 다양한 예들에서 설명되는 바와 같이 메인 이미지 프로세싱(24)에 의한 이미지 데이터의 프로세싱의 바깥에서 그러나 그를 지원하여 수행되는 프로세싱을 포함한다.
전자 디바이스(10)의 그러한 대체 이미지 프로세싱 능력은 예를 들어 프로세서(들)(12) 상에서 소프트웨어로 동작하는 이미지 분석 또는 이미지 프로세싱을 포함할 수 있다. 추가적으로 또는 대안적으로, 전자 디바이스(10)의 대체 이미지 프로세싱 능력은 소정의 특성을 위한 미처리 이미지 데이터를 분석할 수 있는 다른 펌웨어 또는 하드웨어를 포함할 수 있다. 예로서, 대체 이미지 프로세싱 능력은, 이미지 캡쳐 디바이스(20)로부터의 미처리 이미지 데이터의 프레임의 분석을 수반할 수 있는 프레임 분석을 포함할 수 있다. 이러한 프레임 분석은 메인 이미지 프로세싱(24)에 의해 미처리 이미지 데이터가 어떻게 처리되어야 하는지에 대해 영향을 줄 수 있는 미처리 이미지 데이터의 소정의 특성을 나타낼 수 있다.
따라서, 소정의 실시예들에서, 전자 디바이스(10)의 대체 이미지 프로세싱 능력은 메인 이미지 프로세싱(24)에 대한 소정의 피드-포워드(feed-forward) 제어 파라미터들을 생성할 수 있다. 특히, 주기적으로 또는 요구 시에 - 예를 들어, 메인 이미지 프로세싱(24)의 소정의 스테이지들이 미스캘리브레이션될 것으로 예상되는 경우 - 대체 이미지 프로세싱의 프레임 분석은 미처리(raw) 이미지 데이터에 대해 수행될 수 있다. 프레임 분석에 기초하여, 소정의 메인 이미지 프로세싱(24) 제어 파라미터들이 발생하고 메인 이미지 프로세싱(24)에 제공될 수 있다. 그 후, 메인 이미지 프로세싱(24)은 새롭게 판정된 제어 파라미터들에 따라 동일한 미처리 이미지 데이터를 처리할 수 있다. 아래에서 보다 상세하게 설명되는 바와 같이, 이러한 제어 파라미터들은, 예를 들어, 메인 이미지 프로세싱(24)에서 초기에 발생할 수 있는 블랙 레벨 및/또는 렌즈 셰이딩 보정들(lens shading corrections)에 대한 파라미터들을 포함할 수 있다.
I/O 인터페이스(26)는 전자 디바이스(10)로 하여금, 네트워크 인터페이스(28)일 수 있는, 다양한 다른 전자 디바이스들과 인터페이스할 수 있게 한다. 이러한 네트워크 인터페이스들(28)은, 예를 들어, 블루투스 네트워크와 같은 PAN(personal area network)를 위한 인터페이스들, 802.11x Wi-Fi 네트워크와 같은 LAN(local area network)를 위한 인터페이스들, 및/또는 3G 또는 4G 셀룰러 네트워크와 같은 WAN(wide area network)를 위한 인터페이스들을 포함할 수 있다. 네트워크 인터페이스들(28)을 통해, 전자 디바이스(10)는 스트로브(22)를 포함할 수 있는 다른 디바이스들과 인터페이스할 수 있다. 전자 디바이스(10)의 입력 구조들(30)은 사용자로 하여금 전자 디바이스(10)와 상호작용할 수 있게 한다(예를 들어, 이미지 캡쳐 시퀀스를 개시하기 위해 물리적 또는 가상 버튼을 누르는 것). 전자 디바이스(10)의 전원(32)은, 충전가능한 리튬 폴리머(Li-poly) 배터리 및/또는 교류(AC) 전력 컨버터와 같은 임의의 적절한 전원일 수 있다.
도 3 및 도 4는 핸드헬드 디바이스(34)의 전면 및 이면 뷰를 도시하고 전자 디바이스(10)의 일 실시예를 나타낸다. 핸드헬드 디바이스(34)는 예를 들어 휴대용 전화, 미디어 플레이어, 개인용 데이터 오거나이저(organizer), 핸드헬드 게임 플랫폼, 또는 그러한 디바이스들의 임의의 조합을 나타낼 수 있다. 예로서, 핸드헬드 디바이스(34)는 캘리포니아주 쿠퍼티노에 있는 애플사의 iPod® 또는 iPhone® 의 한 모델일 수 있다. 전자 디바이스(10)의 다른 실시예들은, 예를 들어 애플사의 MacBook®, MacBook® Pro, MacBook Air®, iMac®, Mac®mini, 또는 Mac Pro®와 같은 컴퓨터를 포함할 수 있다는 것을 이해해야 한다. 다른 실시예들에서, 전자 디바이스(10)는 애플사의 iPad®와 같은 태블릿 컴퓨팅 디바이스일 수 있다.
핸드헬드 디바이스(34)는 내부 컴포넌트들을 물리적 손상으로부터 보호하고 전자기파 간섭으로부터 차폐하기 위한 인클로저(36)를 포함할 수 있다. 인클로저(36)는, 표시자 아이콘(38)을 표시할 수 있는 디스플레이(18)를 둘러쌀 수 있다. 표시자 아이콘(38)은, 여러가지 중에서, 셀룰러 신호 강도, 블루투스 접속 및/또는 배터리 수명을 나타낼 수 있다. I/O 인터페이스들(26)은 인클로저(36)를 관통하여 개방될 수 있고, 예를 들어, 외부 디바이스들에 접속하기 위해 애플사 소유의 I/O 포트를 포함할 수 있다. 도 4에 도시된 바와 같이, 핸드헬드 디바이스(34)의 반대측은 이미지 캡쳐 디바이스(20) 및 스트로브(22)를 포함할 수 있다.
사용자 입력 구조들(40, 42, 44, 46)은, 디스플레이(18)와 결합하여, 사용자가 핸드헬드 디바이스(34)를 제어할 수 있게 한다. 예를 들어, 입력 구조(40)는 핸드헬드 디바이스(34)를 활성화 또는 비활성화할 수 있고, 입력 구조(42)는 사용자 인터페이스(20)를 홈 스크린, 사용자-구성가능한 애플리케이션 스크린으로 네비게이트하거나, 및/또는 핸드헬드 디바이스(34)의 음성 인식 특징을 활성화할 수 있으며, 입력 구조들(44)은 음성 제어를 제공할 수 있고, 입력 구조(46)는 진동과 링(ring) 모드들 사이에서 토글(toggle)할 수 있다. 마이크로폰(48)은 다양한 음성 관련 특징들에 대한 사용자의 음성을 얻을 수 있고, 스피커(50)는 오디오 플레이백 및/또는 소정의 전화 기능을 가능케할 수 있다. 헤드폰 입력(52)은 외부 스피커들 및/또는 헤드폰들에 대한 접속을 제공할 수 있다.
전자 디바이스(10)의 이미지 캡쳐 디바이스(20)가 미처리 이미지 데이터를 캡쳐할 때, 이러한 미처리 이미지 데이터는, 도 5에 도시된 바와 같이, 최종 이미지가 디스플레이(18)에 디스플레이되거나 또는 메모리(14)에 저장되기 전에 메인 이미지 프로세싱(24)에 제공될 수 있다. 그러나, 주기적으로, 또는 메인 이미지 프로세싱(24)의 소정의 스테이지들이 미스캘리브레이션될 것으로 예상될 때, 미처리 이미지 데이터는 또한 메모리(14)에 저장될 수 있다. 미처리 이미지 데이터가 저장될 수 있는 메모리(14)는 비휘발성 저장장치(16), 전자 디바이스(10)의 메인 메모리의 일부이거나 또는 전자 디바이스(10) 내의 개별적인 전용 메모리일 수 있다. 미처리 이미지 데이터가 저장될 수 있는 이러한 메모리(14)는 DMA(direct memory access) 특징을 포함할 수 있다. 예를 들어, 이미지 캡쳐 디바이스(20), 이미지 프로세싱 회로(24), 또는 메모리(14)와 연관된 제어기는, 요구되는 경우(on demand) 이미지 캡쳐 디바이스(20)로부터의 미처리 이미지 데이터의 소정의 프레임들이 메모리(14)에 저장될 수 있게 한다. 그 후, 예를 들어, 프로세서(들)(12) 상에서 실행하는 이미지 분석 소프트웨어 또는 이미지 프로세싱, 또는 소정의 이미지 분석 능력을 갖는 다른 하드웨어 또는 펌웨어를 포함할 수 있는 대체 이미지 프로세싱(56)(도 4)이 메모리(14)에 저장된 미처리 이미지 데이터에 액세스할 수 있다. 대안적으로, 이미지 캡쳐 디바이스(20)로부터의 미처리 이미지 데이터의 각각의 새로운 프레임은 메모리(14)에 송신될 수 있으나, 요구 시에 대체 이미지 프로세싱(56)에 의해서만 액세스될 수 있다.
대체 이미지 프로세싱(56)은 메인 이미지 프로세싱(24)과는 구별될 수 있다. 예를 들어, 상술한 바와 같이, 메인 이미지 프로세싱(24)은 하드웨어 이미지 프로세싱을 포함하고 대체 이미지 프로세싱(56)은 소프트웨어 이미지 프로세싱을 포함할 수 있다. 즉, 메인 이미지 프로세싱(24)은 이미지 신호 프로세서(ISP)와 같은 제1 프로세서를 통해 이루어지고, 대체 이미지 프로세싱(56)은 범용 프로세서 또는 소정의 프로세싱 유닛(CPU)와 같은 제2 프로세서를 통해 이루어질 수 있다. 소정의 실시예들에서, 대체 이미지 프로세싱(56)은 대안적인 하드웨어 이미지 프로세싱 파이프라인일 수 있으며, 이는 메인 이미지 프로세싱(24)의 것과는 상이한 제어 파라미터들에 따라 동작할 수 있거나 또는 상이한 능력들을 가질 수 있다.
또한, 메인 이미지 프로세싱(24) 및 대체 이미지 프로세싱(56)은 상이한 능력을 가질 수 있다. 소정의 실시예들에서, 메인 이미지 프로세싱(24)이 보다 효율적일 수 있으나, 대체 이미지 프로세싱(56)은 보다 플렉서블할 수 있다. 메인 이미지 프로세싱(24)이 이미지 신호 프로세서(ISP)와 같은 하드웨어 이미지 프로세싱 파이프라인을 포함하고 대체 이미지 프로세싱(56)은 하나 이상의 프로세서(들)(12) 상에서 실행하는 소프트웨어 이미지 프로세싱을 포함하는 경우, 메인 이미지 프로세싱(24)은 대체 이미지 프로세싱(56) 보다 적은 리소스를 소비할 수 있다. 따라서, 메인 이미지 프로세싱(24)은 통상적으로 전자 디바이스(10)에서의 이미지 프로세싱을 위한 첫번째 선택일 수 있다. 그러나, 메인 이미지 프로세싱(24)의 능력들이 제한되거나 및/또는 가끔 미스캘리브레이션되기 때문에, 때로는 대체 이미지 프로세싱(56)의 리소스들에 대한 소비가 증가될 수 있다. 다른 한편으로는, 대체 이미지 프로세싱(56)이 소프트웨어를 포함하는 경우, 대체 이미지 프로세싱(56)은 메인 이미지 프로세싱(24)보다 많은 메모리 및/또는 보다 많은 이미지 프로세싱 기술들에 액세스할 수 있다. 따라서, 주기적으로, 또는 메인 이미지 프로세싱(24)의 소정의 스테이지들이 미스캘리브레이션될 것이라고 예상되는 경우, 메인 이미지 프로세싱(24)이 미처리 이미지 데이터의 프레임을 처리하기 전에 대체 이미지 프로세싱(56)이 이러한 리소스들을 사용하여 미처리 이미지 데이터의 프레임을 분석할 수 있다. 그러한 분석으로부터, 대체 이미지 프로세싱(56) 및/또는 메인 이미지 프로세싱(24)은 피드-포워드 파라미터들을 발생시켜 메인 이미지 프로세싱(24)의 소정의 양상들을 제어할 수 있다. 메인 이미지 프로세싱(24)에 의해 처리될 동일한 미처리 이미지 데이터에 기초하여 피드-포워드 제어 파라미터들이 판정되기 때문에, 이러한 피드-포워드 제어 파라미터들은 이미지 데이터의 이전 프레임들에 기초한 피드백 제어 파라미터들보다 정확할 수 있다.
상술한 바와 같이, 미처리 이미지 데이터가 메인 이미지 프로세싱(24)에 의해 처리되기 전에 대체 이미지 프로세싱(56)이 미처리 이미지 데이터의 사전 분석(pre-analysis)을 수행할 수 있다. 미처리 이미지 데이터의 이러한 사전 분석에 기초하여, 메인 이미지 프로세싱(24)에 대한 소정의 제어 파라미터들이 발생될 수 있다. 추가적으로 또는 대안적으로, 메인 이미지 프로세싱(24)이 불만족스러운 결과를 생성하거나 생성할 것으로 예상되는 경우, 대체 이미지 프로세싱(56)이 미처리 이미지 데이터를 처리하여 최종의, 처리된 이미지를 생성할 수 있다. 구체적으로, 대체 이미지 프로세싱(56)이 메인 이미지 프로세싱(24)과는 상이한 최종 이미지를 제공할 수 있기 때문에, 메인 이미지 프로세싱(24)이 만족스러운 최종의 처리된 이미지를 생성할 수 없는 경우, 대체 이미지 프로세싱(56)이 사용될 수 있다. 따라서, 메인 이미지 프로세싱(24)이 불만족스러운 처리된 이미지를 생성할 것으로 예상되는 경우, 대체 이미지 프로세싱(56)이, 메인 이미지 프로세싱(24) 대신에 또는 메인 이미지 프로세싱(24)에 추가하여 미처리 이미지 데이터를 처리할 수 있다. 유사하게, 메인 이미지 프로세싱(24)이 불만족스러운 최종 이미지를 생성하는 경우, 미처리 이미지 데이터를 재처리하여 새로운 최종 이미지를 생성하기 위해 대체 이미지 프로세싱(56)이 사용될 수 있다. 따라서, 소정의 실시예들에서, 대체 이미지 프로세싱(56)의 결과들이 메모리(14)에 저장되거나 디스플레이(18)에 디스플레이될 수 있다.
도 6에 도시된 바와 같이, 소정의 실시예들에서, 메인 이미지 프로세싱(24)은 최초 이미지 프로세싱(58), 이미지 통계 엔진(60) 및 2차 이미지 프로세싱(62)을 포함할 수 있다. 이미지 캡쳐 디바이스(20) 및 메인 이미지 프로세싱(24)의 이러한 요소들(58-62)은 하드웨어(64)로 구현될 수 있다. 일반적으로, 최초 이미지 프로세싱(58)은 이미지 캡쳐 디바이스(20)로부터 미처리 이미지 데이터의 프레임을 수신하여, 블랙 레벨 보정 및 렌즈 셰이딩 보정과 같은 소정의 최초 프로세싱 기술들을 수행할 수 있다. 최초 이미지 프로세싱(58)이 이미지 데이터의 프레임에 대해 최초 프로세싱을 수행하면, 통계 엔진(60)이 이미지 데이터의 현재 프레임과 관련된 소정의 통계(statistics)를 판정할 수 있다. 통계 엔진(60)으로부터의 이러한 통계는 하드웨어(64), 소프트웨어(66) 및/또는 펌웨어(68)에 대해 엑세스될 수 있다. 대체 이미지 프로세싱(56)이 사용되지 않으면, 이미지 데이터의 현재 프레임에 대해 수집된 통계가 (예를 들어, 하드웨어(64) 또는 펌웨어(68)에 의해) 사용되어 이미지 데이터의 미래 프레임들의 최초 이미지 프로세싱(58)에 대한 제어 파라미터들을 판정한다. 따라서, 이미지 데이터의 현재 프레임에 대한 이미지 통계가 통계 엔진(60)으로부터 수집될 수 있기 전에 최초 이미지 프로세싱(58)이 발생할 수 있기 때문에, 대체 이미지 프로세싱(56)이 사용되지 않는 경우, 일반적으로 최초 이미지 프로세싱(58)은 피드백에 기초하여 적어도 부분적으로 제어될 수 있다.
최초 이미지 프로세싱(58) 후에, 2차 이미지 프로세싱(62)이 후속 이미지 프로세싱 기술을 수행할 수 있다. 예로서, 2차 이미지 프로세싱(62)은, 무엇보다도, 이미지 데이터의 현재 프레임을 화이트 밸런싱(white balancing)하는 것과 모자이크 해제하는 것을 포함할 수 있다. 이미지 통계가 통계 엔진(60)에 의해 판정될 수 있는 후에 2차 이미지 프로세싱(62)이 이루어질 수 있기 때문에, 2차 이미지 프로세싱(62)은 (예를 들어, 하드웨어(64) 또는 펌웨어(68)를 이용하여) 이미지 데이터의 현재 프레임에 기초하여 발생된 제어 파라미터들에 의해 적어도 부분적으로 제어될 수 있다. 이러한 방식으로, 2차 이미지 프로세싱(62)은 최초 이미지 프로세싱(58)과 같은 방식으로 이미지 데이터의 이전에 처리된 프레임들로부터의 피드백에 의존하지 않을 수 있다.
주기적으로, 또는 데이터의 미래 프레임이 최초 이미지 프로세싱(58)에서 잘못 보정될 수 있다는 것을 통계 엔진(60)으로부터의 통계가 나타내는 경우, 대체 이미지 프로세싱(56)이 사용될 수 있다. 도 6에 의해 도시된 실시예에서, 대체 이미지 프로세싱(56)은 소프트웨어(66)로 구현된다. 소프트웨어(66)는 프로세서(들)(12) 상에서 동작할 수 있다. 소프트웨어(66)가 사용되지 않는 경우, 프로세서(들)(12)의 전부 또는 일부분이 적어도 부분적으로 비활성화되어, 매우 적은 전력을 소모한다. 소정의 실시예들에서, 소프트웨어(66)는 소정의 RISC(reduced instruction set computing) 아키텍처와 같은 소정의 범용 프로세서 디자인들을 이용할 수 있다. 예로서, 소정의 실시예들은, 소정의 병렬 이미지 프로세싱(예를 들어, 병렬 로우 패스 필터링 등)을 가능케할 수 있는, ARM®에 의한 NEON™ 아키텍처와 같은 SIMD(single instruction, multiple data) 아키텍처를 포함할 수 있다. 소프트웨어(66)는 전자 디바이스(10)의 소정의 펌웨어(68)와 상호작용할 수 있다. 예로서, 펌웨어(68)는 메인 이미지 프로세싱(24)과 연관될 수 있다.
상술한 바와 같이, 이미지 캡쳐 디바이스(20)로부터의 미처리 이미지 데이터의 프레임이 메모리(14)로 송신될 수 있다. 소정의 실시예들에서 주어진 시간에 단일 프레임에 대해서만 충분한 메모리를 차지할 수 있는 버퍼(70)로부터 미처리 이미지 데이터의 이러한 프레임을 소프트웨어(66)가 얻을 수 있다. 메인 이미지 프로세싱(24)에 대한 현재의 제어 파라미터들이 적절하게 캘리브레이션되었는지 여부를 미처리 이미지 데이터의 프레임의 프레임 분석(72)이 나타낼 수 있다. 예로서, 아래에서 보다 상세하게 설명되는 바와 같이, 최초 이미지 프로세싱(58)의 블랙 레벨 보정 또는 렌즈 셰이딩 보정 제어 파라미터들이 변경되어야 하는지를 프레임 분석(72)이 나타낼 수 있다. 소정의 실시예들에서, 이미지 캡쳐 디바이스(20)의 새로운 결함 픽셀들이 검출되었는지를 프레임 분석(72)이 나타낼 수 있다. 이러한 판정을 하기 위해, 아래에서 설명되는 것을 포함하여, 미처리 이미지 데이터의 프레임을 분석하는 임의의 적절한 방식이 대체 이미지 프로세싱(56)에 의해 채용될 수 있다.
프레임 분석(72)에서 판정된 그러한 정보에 기초하여, 메인 이미지 프로세싱(24)과 연관된 새로운 또는 업데이트된 제어 파라미터들(74)이 소프트웨어(66) 또는 펌웨어(68)에서 판정될 수 있다. 최초 이미지 프로세싱(58)이 미처리 이미지 데이터의 동일한 프레임에 대해 프로세싱 시작하기 전에 판정된, 이러한 "피드-포워드(feed-forward)" 제어 파라미터들(74)이 메인 이미지 프로세싱(24)으로 피드 포워드될 수 있다. 예시된 실시예에서, 제어 파라미터들(74)은 최초 이미지 프로세싱(58)에 피드 포워드된다. 그 후, 메인 이미지 프로세싱(24)의 다양한 스테이지들이 미처리 이미지 데이터의 프레임을 처리하여 최종 이미지를 생성할 수 있다. 메인 이미지 프로세싱(24)에서 비롯되는 그러한 최종 이미지는 디스플레이(18)에 디스플레이되거나 및/또는 메모리(14)에 저장될 수 있다.
상술한 바와 같이, 소정의 실시예들에서, 대체 이미지 프로세싱(56)은 이미지 캡쳐 디바이스(20)로부터의 미처리 이미지 데이터를 주기적인 베이스로 분석할 수 있으며, 메인 이미지 프로세싱(24)과 연관된 제어 파라미터들(예를 들어, 제어 파라미터들(74))의 주기적인 업데이트를 가능케 한다. 즉, 도 7의 플로우챠트(80)에 의해 도시된 바와 같이, 이미지 캡쳐 디바이스(20)로부터의 미처리 이미지 데이터가 주기적으로 메모리(14)로 송신될 수 있다(블록 82). 추가적으로 또는 대안적으로, 미처리 이미지 데이터의 각각의 프레임이 메모리(14)로 송신될 수 있으나, 대체 이미지 프로세싱(56)은 메모리(14)에 저장된 이러한 미처리 이미지 데이터에 단지 주기적으로 액세스하고 처리할 수 있다. 소정의 실시예들에서, 대체 이미지 프로세싱(56)은 이미지 캡쳐 디바이스(20)로부터의 미처리 이미지 데이터의 프레임이 주기적인 베이스로 메모리(14)에 저장되게 할 수 있다.
플로우챠트(80)에 따라 메인 이미지 프로세싱(24) 제어 파라미터들을 업데이트하는 기간은 이미지 캡쳐 회로(20)로부터의 미처리 이미지 데이터와 연관된 현재의 컨디션들에 의존적일 수 있다. 예를 들어, 통계 엔진(60)으로부터의 이미지 통계가 일련의 프레임들에 걸쳐 상대적으로 안정적인 경우 기간은 보다 길어질 수 있고 통계가 변화하는 경우 보다 짧아질 수 있다. 대체 이미지 프로세싱(56)이 단독의 메인 이미지 프로세싱(24)보다 많은 리소스를 소모할 수 있기 때문에, 전력 보존이 요구되는 경우 기간은 보다 길어질 수 있다. 기간은 또한 이미지 캡쳐 디바이스(20)의 현재 애플리케이션에 따라 변화할 수 있다. 예를 들어, 이미지 캡쳐 디바이스(20)가 비디오를 위한 이미지 데이터의 프레임들을 캡쳐하는데 사용되는 경우 정지 이미지들을 수집하는 것과 비교하면 기간이 다를 수 있다. 소정의 실시예들에서, 사용자가 (예를 들어, 디스플레이(18) 상에서 선택을 하거나 버튼을 누름으로써) 특정 이미지를 캡쳐하도록 선택하는 경우 블록(80)이 진행될 수 있다. 소정의 실시예들에서, 이미지 데이터의 스트로브-조명된(strobe-illuminated) 프레임이 이미지 데이터의 이전의 스트로브-조명되지 않은 프레임들과는 매우 상이한 통계를 가질 수 있기 때문에, 스트로브(22)가 광을 출력하고 스트로브-조명된 이미지가 취해지는 경우 블록(80)이 발생할 수 있다.
다음으로 대체 이미지 프로세싱(56)이 미처리 이미지 데이터의 프레임 분석을 수행할 수 있다(블록 84). 이해하고 있는 바와 같이, 이러한 프레임 분석은 도 6에 도시된 바와 같이 소프트웨어(66)를 통해, 대체 이미지 프로세싱(56)과 연관되는 펌웨어를 통해, 또는 대체 이미지 프로세싱(56)과 연관되는 하드웨어 프로세싱을 통해 이루어질 수 있다. 그 후, 대체 이미지 프로세싱(56) 또는 다른 데이터 프로세싱 회로(예를 들어, 메인 이미지 프로세싱(24)과 연관된 펌웨어)는 미처리 이미지 데이터의 현재 프레임을 처리하는데 특히 적합할 수 있는 메인 이미지 프로세싱(24)을 위한 업데이트된 제어 파라미터들을 판정할 수 있다(블록 86). 예로서, 업데이트된 제어 파라미터들은 하나 이상의 업데이트된 블랙 레벨 보정 파라미터들, 렌즈 셰이딩 보정 파라미터들, 및/또는 결함 픽셀 맵핑 파라미터들을 나타낼 수 있다. 미처리 이미지 데이터로부터 확인될 수 있는 메인 이미지 프로세싱(24)을 제어하기 위한 임의의 다른 파라미터들도 판정될 수 있다.
이러한 업데이트된 메인 이미지 프로세싱(24) 제어 파라미터들이 메인 이미지 프로세싱(24)으로 피드 포워드될 수 있다(블록 88). 그 후, 메인 이미지 프로세싱(24)은 업데이트된 제어 파라미터들에 따라 메인 이미지 프로세싱(24)을 수행할 수 있다(블록 90). 소정의 실시예들에서, 대체 이미지 프로세싱(56)이 미처리 이미지 데이터의 새로운 프레임을 다시 주기적으로 분석하여 새롭게 업데이트된 제어 파라미터들을 얻을 때까지 업데이트된 제어 파라미터들이 지속될 수 있다. 다른 실시예들에서, 업데이트된 제어 파라미터들은 통계 엔진(60)에서 나오는 이미지 통계로부터의 피드백에 적어도 부분적으로 기초하여 전통적인 피드백 제어에 놓일 수 있다.
추가적으로 또는 대안적으로, 대체 이미지 프로세싱(56)은 새로운 메인 이미지 프로세싱(24) 제어 파라미터들을 얻기 위해, 메인 이미지 프로세싱(24)이 잘못 보정될 것으로 예상되는 경우와 같이, 요구되는 경우, 이미지 캡쳐 디바이스(20)로부터의 미처리 이미지 데이터를 분석할 수 있다. 예를 들어, 도 8의 플로우챠트(100)에 의해 도시된 바와 같이, 메인 이미지 프로세싱(24)은 미처리 이미지 데이터의 현재 프레임에 대해 잘못 보정될 것으로 예상되는 경우(예를 들어, 이미지 데이터의 후속 프레임들이 메인 이미지 프로세싱(24)에 의해 올바르게 처리되지 않을 수 있다는 것을 통계 엔진(60)으로부터의 통계가 표시할 수 있는 경우통계가 표시할 수 있는 경우바이스(20)로부터의 미처리 이미지 데이터는 메모리(14)로 송신될 수 있다(블록 104). 추가적으로 또는 대안적으로, 미처리 이미지 데이터의 각각의 프레임은 메모리(14)로 송신될 수 있으나, 메인 이미지 프로세싱(24)이 잘못 보정될 것으로 예상되는 경우, 대체 이미지 프로세싱(56)이 메모리(14)에 저장된 미처리 이미지 데이터를 단지 액세스하고 처리할 수 있다. 소정의 실시예들에서, 메인 이미지 프로세싱(24)이 잘못 보정될 것으로 예상되는 경우, 대체 이미지 프로세싱(56)은 이미지 캡쳐 디바이스(20)로부터의 미처리 이미지 데이터의 프레임이 메모리(14)에 저장되게 한다.
메인 이미지 프로세싱(24)은, 예를 들어, 통계 엔진(60)으로부터의 임의의 통계가 프레임마다 변화할 때, 오측정되는 것으로 예상될 수 있다. 그러한 프레임당 변동은 메인 이미지 프로세싱(24)(예를 들면, 최초 이미지 프로세싱(58))의 임의의 스테이지들로부터의 피드백이 불안정하고 변화할 수 있음을, 또는 부정확할 수 있음을 나타낼 수 있다. 또한, 메인 이미지 프로세싱(24)은 스트로브-조명된 이미지가 이미지 캡처 장치(20)에 의해 획득된다고 예상될 때, 오측정되는 것으로 예상될 수도 있다. 즉, 스트로브(22)로부터의 광은 미처리(raw) 이미지 데이터의 일(one) 프레임 중에만 출력될 수 있다. 따라서, 스트로브(22)로부터의 광은 이전 프레임들과 연관되어 통계상으로는 처리되지 않을 것이다. 이러한 이유 때문에, 그중에서도 특히, 피드백 단독으로는, 스트로브 플래시를 취득할 때, 메인 이미지 프로세싱(24)의 최초 이미지 프로세싱(58)을 올바르게 측정하지 못할 수 있다.
다음에 대체 이미지 프로세싱(56)은 미처리 이미지 데이터의 프레임 분석을 수행할 수 있다(블록 106). 알 수 있는 바와 같이, 이 프레임 분석은 도 6에 도시된 바와 같이 소프트웨어(66)를 통해, 대체 이미지 프로세싱(56)과 연관된 펌웨어를 통해, 또는 대체 이미지 프로세싱(56)과 연관된 하드웨어 프로세싱을 통해 행할 수 있다. 그 후에, 대체 이미지 프로세싱(56) 또는 그외의 데이터 프로세싱 회로(예를 들면, 메인 이미지 프로세싱(24)과 연관된 펌웨어)는 메인 이미지 프로세싱(24)에 대해, 미처리 이미지 데이터의 현재 프레임을 처리하는데 특히 적합한 새로운 제어 파라미터들을 판정할 수 있다(블록 108). 예로서, 업데이트된 제어 파라미터들은 하나 이상의 업데이트된 블랙(black) 레벨 보정 파라미터들, 렌즈 셰이딩 보정 파라미터들, 및/또는 결함 픽셀 맵핑 파라미터들을 나타낼 수 있다. 메인 이미지 프로세싱(24)을 제어하기 위해 미처리 이미지 데이터로부터 알아낼 수 있는 임의의 다른 파라미터들을 또한 판정할 수 있다.
이들 새로운 프레임 특정의 메인 이미지 프로세싱(24) 제어 파라미터들은 메인 이미지 프로세싱(24)으로 피드-포워드될 수 있다(블록 110). 그 후에, 메인 이미지 프로세싱(24)은 새로운 제어 파라미터들에 따라 메인 이미지 프로세싱(24)을 수행할 수 있다(블록 112). 위에서 논의된 실시예들의 방식으로, 새로운 제어 파라미터들은 대체 이미지 프로세싱(56)이 추가의 새로운 제어 파라미터들을 획득하기 위해 미처리 이미지 데이터의 새로운 프레임을 다시 분석할 때까지 제자리에 남아 있을 수 있다. 다른 실시예들에서, 새로운 제어 파라미터들은 통계 엔진(60)으로부터의 이미지 통계로부터의 피드백에 적어도 부분적으로 기초하여 전통적인 피드백 제어를 받을 수 있다.
이미 언급된 바와 같이, 전술한 기술들은 이미지 프로세싱 시스템의 다양한 양상들에 적용될 수 있다. 예로서, 도 9에서는, 일 실시예에 따라 이미지 데이터를 처리하기 위한 시스템(114)이 제공된다. 시스템(114)은 픽셀 어레이(118)를 갖는 이미지 센서(116)(예를 들면, 이미지 캡처 장치(20)의 베이어(Bayer) 센서)를 포함할 수 있다. 픽셀 어레이(118)는, 광을 수신하고 그 수신된 광에 응답하여 전기 신호들을 생성하도록 구성된 이미징 픽셀들(120)을 포함할 수 있다. 그러나 수신된 광에 기초하여 발생한 신호들 외에, 이미지 센서(118) 내의 누설 전류는 추가의 신호 성분들을 유도할 수 있다. 누설 전류 유발 신호들을 보상하기 위하여, 픽셀 어레이(118)는 또한 다크 픽셀들(122)을 포함할 수 있다. 다크 픽셀들(122)은 이미징 픽셀들(120)의 주변의 일부 (또는 전체)를 따르는 등, 픽셀 어레이(118) 내의 다양한 위치들에서 구현될 수 있다.
다크 픽셀들(122)은 구조적으로 이미징 픽셀들(120)과 유사할 수 있지만, 픽셀 어레이(118)는 일반적으로 다크 픽셀들(122)이 광을 수신하는 것을 방지하도록 구성될 수 있다. 그 결과, 다크 픽셀들(122)에 의해 생성된 신호들은 일반적으로 이미지 센서 내의 누설 전류에 기여하고, 이미징 픽셀들(120)에 대해 블랙 레벨 기준을 제공한다. 이 블랙 레벨 기준을 이용하여, 이미지 센서(116)는 이미지 센서(116)의 이미징 픽셀들(120)에 대한 출력 신호들에서 다크 픽셀들(122)로부터의 블랙 레벨 기준만큼 감소시킴으로써, 온 센서(on-sensor) 블랙 레벨 보상의 일정량을 제공하도록 구성될 수 있다. 따라서, 이미징 픽셀(120)에 대한 출력 신호는 다음과 같이 기술될 수 있으며:
Figure 112012079884700-pct00001
여기서 S는 출력 신호이고, S(iph)는 광 유도된 신호 성분이고, S(idc)는 누설 전류 유발 신호 성분이고, Sdp는 다크 픽셀들(122)로부터의 블랙 레벨 기준이고, "data_pedestal"는 낮은 신호 단부에서 센서 노이즈를 클리핑하는 것을 방지하기 위해 신호에 부가되는 오프셋이다.
다크 픽셀들(122)로부터의 블랙 레벨 기준 Sdp이 이미징 픽셀들(120)로부터의 누설 전류 유발 신호 성분 S(idc)과 매칭하면, 출력 신호 S에 대한 위의 수학식은 광 유도된 신호 성분 S(iph)와 "data_pedestal" 오프셋의 합으로 감소한다. 그러나, 다른 경우들에서는, 블랙 레벨 기준 Sdp 은 누설 전류 유발 신호 성분 S(idc) 과 매칭하지 않을 수 있다. 예를 들어, 일부 이미지 센서들(116)에서, 블랙 레벨 기준 Sdp 은 누설 전류 유발 신호 성분 S(idc)보다 커져서, 이들 센서들(116)에 의해 이미지 블랙 레벨의 과잉 보상으로 되게 할 수 있다. 낮은 광 조건들과 같은, 적어도 특정 조명 조건들 하에서, 이 과잉 보상은 출력 이미지 데이터에 원하지 않는 컬러 틴트를 발생시킬 수 있다. 예를 들면, 적색, 녹색, 및 청색 컬러 채널들을 갖는 이미지에서, 센서(116)에 의한 블랙 레벨의 과잉 보상은, 약한 청색 및 적색 컬러 채널들에는 더 큰 영향을 주고, 보다 강한 녹색 컬러 채널에는 더 작은 영향을 주어서, 결과적으로 녹색 틴트를 갖는 이미지를 발생시킬 수 있다. 본 명세서에서 사용되는 바와 같이, "블랙 레벨 시프트"라는 용어는 이미지 센서에 의한 블랙 레벨의 이러한 과잉 보상을 지칭한다. 이 블랙 레벨 시프트는 적어도 일부 실시예들에서는 블랙 레벨 기준 Sdp에서 누설 전류 유발 신호 성분 S(idc)을 뺀 것과 동일할 수 있다.
또한 시스템(114)은 이미지 센서(116)로부터의 미처리 이미지 데이터를 처리하고 변경하기 위한 다양한 하드웨어를 포함하는 이미지 신호 프로세싱 파이프라인(124)을 포함할 수 있다. 여기에 예시된 실시예에서, 파이프라인(124)은 블랙 레벨 보상 블록(126)을 포함하며, 이것은 "data_pedestal" 오프셋을 제거하기 위해 추가의 오프셋을 제공하고 또한 센서(116)에 의한 블랙 레벨 시프트를 보정하는 것과 같은 추가의 블랙 레벨 보상을 제공할 수 있다. 예를 들면, 블랙 레벨 보상 블록(126)에서 신호에서 등가의 추가 오프셋만큼 감소시키는 것에 의해 신호로부터 "data_pedestal" 오프셋을 단순히 제거한다기 보다는, 블랙 레벨 보상 블록(126)에 의한 추가의 오프셋량은 블랙 레벨 시프트를 제거하기 위해, 이미지 데이터의 측정된 블랙 레벨 시프트에 기초하여 변경될 수 있다. 즉, 일부 실시예들에서, 블랙 레벨 보상 블록의 추가의 오프셋량은 "data_pedestal"에서 블랙 레벨 시프트를 뺀것과 동일할 수 있으며, 블랙 레벨 보상 블록(126)으로 진입하는 이미지 신호는 이 추가의 오프셋량만큼 감소되어 원하는 신호를 더욱 정확하게 발생시킬 수 있다.
이미지 신호 프로세싱 파이프라인(124)은 또한 렌즈 셰이딩 보상 블록(128), 화이트 밸런스 보상 블록(130), 및 모자이크 해제 블록(132) 등의 추가의 프로세싱 블록들을 포함할 수 있다. 또한, 파이프라인(124)은 통계 엔진(134) 및 임의의 다른 소망하는 프로세싱 블록들을 포함할 수 있다. 동작 시에, 이미지 센서(116)로부터의 미처리 이미지 데이터는 파이프라인(124)에 의해 처리되고, 처리된 이미지 데이터는 메모리(14), 임의의 다른 메모리(예를 들어, 비휘발성 저장장치(16)), 또는 디스플레이(18) 등의 다양한 위치들로 출력될 수 있다.
시스템(114)은 또한 파이프라인(124)에서 블랙 레벨 보상 블록(126)의 블랙 레벨 보상 파라미터를 조정하기 위한 피드-포워드 루프(138)를 포함할 수 있다. (일반적으로 전술된 대체 이미지 프로세싱(56)과 상관될 수 있는) 피드-포워드 루프(138)는 이미지 센서(116)로부터 미처리 이미지 데이터를 수신하고, 그 데이터를 경로(142)를 통해 추가의 이미지 신호 프로세싱 파이프라인(140)에 제공할 수 있다. 비록 미처리 이미지 데이터의 모든 프레임들이 파이프라인(124)과 파이프라인(140) 양측에 제공될 수 있지만, 적어도 일부의 실시예들에서, 이미지 센서(116)는 파이프라인(124)에는 이미지 데이터 프레임들의 시퀀스를 제공하는 한편, 추가의 파이프라인(140)에는 프레임들의 시퀀스의 서브셋만을 제공한다. 프레임들의 시퀀스의 이 서브셋은 주기적으로 또는 요구시에 추가의 파이프라인(140)에 제공될 수 있다. 또한, 추가의 파이프라인(140)에 의해 수신되고 처리된 서브셋의 하나 이상의 프레임들은 본 명세서에서 "참조(reference)" 프레임들로서 지칭될 수 있다. 기준 프레임은 버퍼(144)로 복사될 수 있으며, 이하에서 더욱 상세히 설명될 바와 같이, 프레임 분석(146)을 행할 수 있다.
또한, 이미지 데이터의 프레임들에 대한 블랙 레벨 시프트들은 블록(148)에서 판정될 수 있으며, 참조번호(150)에 의해 일반적으로 표시되는 바와 같이, 파이프라인(124) 내의 블랙 레벨 보상 블록(126)의 블랙 레벨 보상 파라미터(예를 들면, 전술한 추가 오프셋)를 조정하는데 이용될 수 있다. 이러한 피드-포워드 보상은, (시간적으로 또는 특정한 운영 상황들에서는 덜 정확할 수 있는) 임의의 공장 캘리브레이션 데이터와는 독립적으로, 상이한 이미지 센서들(116) 간의 블랙 레벨 시프트 특성들에서의 변동뿐만 아니라, 특정 센서에서의 블랙 레벨 시프트에서의 (예를 들면, 그중에서도 특히, 에이징 효과, 온도, 누적 시간, 및 게인에 기인하는) 변동을 처리하는 보다 정확한 이미지 보상을 가능하게 할 수 있다.
일 실시예에서, 시스템(114)은 일반적으로 도 10의 블록도(154)에 도시된 것과 같은 3-레벨 아키텍처를 포함할 수 있다. 구체적으로, 도시된 실시예에서, 위에서 설명된 피드-포워드 블랙 레벨 보상 기법은 이미지 신호 프로세싱 하드웨어 파이프라인(156), 펌웨어(158) 및 소프트웨어(160)의 이용을 통해 행해질 수 있다. 이미지 신호 프로세싱 하드웨어 파이프라인(156)은 블랙 레벨 보상 블록(126)을 포함하고, 다른 면에서는 파이프라인(124)과 동일할 수도 있고 다를 수도 있다. 펌웨어(158)는 하드웨어 파이프라인(156)에 연관되고, 하드웨어 파이프라인(156)의 동작에 관련된 다양한 애플리케이션 명령어들을 인코딩하는 하나 이상의 메모리 디바이스(예를 들어, 판독 전용 메모리)에 의해 구현될 수 있다. 소프트웨어(160)는 랜덤 액세스 메모리 또는 비휘발성 저장소와 같은 다양한 메모리들 중 임의의 것에 인코딩될 수 있다. 또한, 소프트웨어(160)는 하드웨어 파이프라인(156) 및 펌웨어(158)에 연관된 드라이버를 포함할 수 있다.
이미지 소스(162)는 미처리 이미지 데이터(164)를 하드웨어 파이프라인(156)에 제공할 수 있다. 파이프라인(156)은 프로세싱된 이미지 데이터(166)를 생성하고 출력하기 위해 미처리 이미지 데이터(164)에 다양한 보상 기법들을 적용하는 것 등에 의해 미처리 이미지 데이터(164)를 프로세싱할 수 있다. 이미지 소스(162)는 이미지 캡쳐 디바이스(20)(그 자체가 이미지 센서(116)를 포함할 수 있음), 또는 데이터를 저장하는 메모리 디바이스(예를 들어, 비휘발성 저장소(16))를 포함할 수 있다.
미처리 이미지 데이터(164)의 프레임들이 하드웨어 파이프라인(156)에 라우팅되는 것에 더하여, 그러한 프레임들 중 하나 이상은 이하에 더 상세하게 설명되는 바와 같이, 분석을 위해 (경로(168)를 통해) 소프트웨어(160)에 기준 프레임들로서 제공될 수 있다. 미처리 이미지 데이터(164)의 특정 프레임에 연관된 온도, 노출 또는 적분 시간, 아날로그 게인과 같은 이미지 캡쳐 파라미터들도 소프트웨어(160)에 제공될 수 있다. 소프트웨어(160)는 수신된 미처리 이미지 데이터 프레임에 대한 자신의 분석을 수행할 수 있고, 기준 프레임 데이터(172)의 세트를 펌웨어(158)에 출력할 수 있다. 후속하여, 펌웨어(158)는 블랙 레벨 보상 파라미터 또는 세팅(174)을 판정하고, 그 판정에 기초하여 하드웨어 파이프라인(156)의 블랙 레벨 보상 파라미터(예를 들어, "data_pedestal" 및 블랙 레벨 시프트를 보상하기 위한 오프셋 양)를 수정할 수 있다. 블랙 레벨 세팅(174)의 판정은 소프트웨어(160)에 의해 수행되는 블랙 레벨 분석, 소프트웨어(160)에 의해 분석된 이미지 데이터의 프레임에 대한 이미지 캡쳐 파라미터들(170), 및 이미지 데이터의 현재 프레임에 대한 이미지 캡쳐 파라미터들(170)에 기초할 수 있다. 참조 번호들(176 및 178)에 의해 개괄적으로 표현되어 있는 바와 같이, 하드웨어 파이프라인(156), 펌웨어(158) 및 소프트웨어(160) 사이에서 추가 통신들이 라우팅될 수 있다.
일 실시예에서, 시스템(114)은 일반적으로 도 11에 도시된 플로우차트(184)에 따라 동작할 수 있다. 블록들(186 및 188)에서 각각, 프레임들 및 이미지 데이터가 획득되어 이미지 신호 프로세싱 하드웨어 파이프라인(예를 들어, 파이프라인(124))에 전송될 수 있다. 앞에서 설명된 바와 같이, 피드-포워드 블랙 레벨 보상을 가능하게 하기 위해, 블록(188)에서 전송되는 이들 프레임들 중 하나 이상이 블록(190)에서 소프트웨어(160)에 의해 분석되는 기준 프레임들로서 이용될 수 있다. 일반적으로, 그러한 기준 프레임은 블록(192)에서 버퍼에 복사될 수 있고, 복사된 기준 프레임 내의 추정된 블랙 레벨 시프트는 블록(194)에서 판정될 수 있다.
기준 프레임 내의 이러한 추정된 블랙 레벨 시프트에 기초하여, 다른 전송 프레임들 내의 블랙 레벨 시프트가 블록(196)에서 판정될 수 있다. 적어도 일부 실시예들에서, 전송 프레임들 내의 블랙 레벨 시프트의 판정은 기준 프레임 및 전송 프레임 둘 다의 하나 이상의 이미지 캡쳐 파라미터(예를 들어, 노출 시간, 게인 또는 온도)와, 기준 프레임 내의 추정된 블랙 레벨 시프트에 기초하여 펌웨어(158)에 의해 수행된다. 블록(198)에서, 이미지 신호 프로세싱 하드웨어 파이프라인(124) 내의 블랙 레벨 보상 파라미터는 블록(196)에서 판정된 블랙 레벨 시프트에 기초하여 조정될 수 있고, 하드웨어 파이프라인(124)은 블록(200)에서, 조정된 파라미터에 기초하여 블랙 레벨 보상을 적용할 수 있다. 후속하여, 블록(202)에서 프레임에 대해 추가의 프로세싱(예를 들어, 렌즈 셰이딩 보상 및 화이트 밸런스 보상)가 수행될 수 있고, 프로세싱된 프레임은 블록(204)에서 (예를 들어, 메모리 또는 디스플레이에) 출력될 수 있다. 추가의 전송 프레임들은 참조 번호(206)에 의해 개괄적으로 나타난 바와 같이, 유사한 블랙 레벨 보상 및 추가의 프로세싱을 거칠 수 있다.
일부 실시예들에서, 시스템(114)은 기준 프레임들로서의 선택 및 분석을 위해 특정한 전송 프레임들의 적합성을 판정할 수 있다. 예를 들어, 시스템(114)이 특정한 전송 프레임이 원하는 범위 밖의 파라미터들(예를 들어, 원하는 범위 밖으로 나가는 프레임에 연관된 게인)을 포함한다고 판정한 경우, 시스템(114)은 후속하여 전송되는 프레임들의 블랙 레벨 보상이 적합하지 않은 기준 프레임의 블랙 레벨 시프트에 부분적으로 기초하는 것을 방지하기 위해 그 프레임을 기준 프레임으로서 이용하는 것을 거절할 수 있다. 따라서, 플로우차트(184)에 의해 표현되는 프로세스(또는 여기에 설명되는 다른 프로세스들)는 원하는 경우에는 프로세스의 세그먼트들을 건너뛰거나 프로세스 중간에 종료할 수 있다. 예를 들어, 소프트웨어 분석(190)은 블록(194)에 앞서 종료할 수 있고, 또는 특정한 프레임이 기준 프레임으로서 적합하지 않거나 바람직하지 않다고 판정된 경우에는 그 특정한 프레임에 대하여 시작조차 하지 않을 수 있다.
기준 프레임의 소프트웨어 분석(190)은 일 실시예에 따라 도 12에 도시된 것들과 같은 추가 양상들을 포함할 수 있다. 블록(214)에서 소프트웨어 분석을 위해 미처리 이미지 데이터가 수신될 수 있고, 블록(216)에서 추가 데이터가 수신될 수 있다. 그러한 추가 데이터의 비제한적인 예들은 미처리 이미지 데이터의 기준 프레임에 대한 노출 또는 적분 시간, 미처리 이미지 데이터의 기준 프레임에 대한 아날로그 게인, 및 이미지 센서(116)에 의한 기준 프레임의 캡쳐에 연관된 온도(예를 들어 캡쳐 시의 센서의 온도)를 포함한다. 또한, 블록(218)에서 기준 프레임의 수신된 미처리 이미지 데이터가 디코딩될 수 있고, 블록(220)에서 그러한 데이터로부터 노이즈가 필터링될 수 있다.
블록(222)에서는 이미지 데이터의 기준 프레임 내의 가장 어두운 부분 또는 부분들을 찾고, 그러한 부분들의 로컬 평균 밝기 레벨을 판정하기 위해 소프트웨어 분석이 수행될 수 있다. 여기에서 이용될 때, 기준 프레임의 "어두운" 부분들은 이미지에 의해 캡쳐되는 흑색 개체들에 대응하는 기준 프레임의 부분들과, 하나 이상의 컬러 채널의 소정 픽셀들에게 흑색으로 보이는 세츄레이트된 색상들을 갖는 개체들(예를 들어, 이미지 센서(116) 내의 임의의 청색 픽셀들에게 흑색으로 보일 세츄레이트된 적색 개체)에 대응하는 부분들을 포함할 수 있다. 적어도 일부 실시예들에서, 기준 프레임의 각각의 컬러 채널(예를 들어, 적색, 녹색 및 청색 컬러 채널들)에 대해 하나 이상의 가장 어두운 영역이 발견될 수 있고, 각각의 컬러 채널에 대한 하나 이상의 가장 어두운 영역에 대해 로컬 평균 밝기 레벨들이 판정될 수 있다. 다음으로, 로컬 평균 밝기 레벨 또는 레벨들은 블록(224)에서 "data_pedestal"(클립핑을 감소 또는 회피하기 위해 이미지 센서(116)에 의해 미처리 이미지 데이터에 적용되는 오프셋)에 비교될 수 있다.
다음으로, 블록(226)에서 소프트웨어 분석은 가장 어두운 영역 또는 영역들의 로컬 평균 밝기 레벨을 "data_pedestal"에 비교한 것에 기초하여, 기준 프레임에 대한 블랙 레벨 시프트를 판정할 수 있다. 판정된 블랙 레벨 시프트는 블록(224)에서 비교된 "data_pedestal"과 로컬 평균 밝기 레벨의 상대적인 값들에 의존할 수 있다. 예를 들어, 일 실시예에서, 블록(226)은 로컬 평균 밝기 레벨이 "data_pedestal"보다 작은 경우에는, 추정된 블랙 레벨 시프트가 "dark_pedestal"로부터 블록(222)에서 판정된 로컬 평균 밝기 레벨을 감산한 것과 동일하다고 판정할 수 있고, 그렇지 않으면 블랙 레벨 시프트는 제로와 동일한 것으로 판정될 수 있다(이미지의 가장 어두운 영역이 "data_pedestal" 오프셋에 있거나 그보다 높게 유지되는 경우에는 블랙 레벨 시프트의 영향이 감소됨에 유의한다). 그러한 실시예에서, "data_pedestal"은 일반적으로 이미지의 가장 어두운 부분에 대한 로컬 평균 밝기 레벨들에 대한 기준 포인트를 제공한다. 완전한 어두움의 경우에서, 이미지 내의 가장 어두운 영역의 로컬 평균 밝기 레벨은 센서(116)에 의해 적용되는 "data_pedestal" 오프셋과 동일해야 한다. 따라서, "data_pedestal"보다 낮은 가장 어두운 영역의 로컬 평균 밝기 레벨은 센서(116)에 의한 블랙 레벨 시프트에 기인될 수 있다. 또한, 기준 데이터는 블록(228)에서 추가 프레임들에 대해 블랙 레벨 시프트를 판정하는 데에 이용하기 위해 출력될 수 있다. 예를 들어, 출력 기준 데이터는 기준 프레임에 대한 추정된 블랙 레벨 시프트와, 노출 시간, 온도 및 게인과 같은 기준 프레임에 대한 다른 통계들을 포함할 수 있다.
추가로, 하드웨어 파이프라인(124)에 전송되는 프레임들에 대한 블랙 레벨 시프트의 판정은 일 실시예에 따라 도 13에 도시된 플로우차트를 참조하면 더 잘 이해될 수 있다. 각각의 전송 프레임에 대한 블랙 레벨 시프트의 판정은 블록(236)에서 수신된 기준 프레임 데이터, 및 블록(238)에서 수신된 각각의 전송 프레임에 대한 추가 데이터에 기초할 수 있다. 현재의 전송 프레임에 대한 블랙 레벨 시프트는 블록(240)에서, 블록(236 및 238)에서 수신된 데이터에 기초하여 계산될 수 있다. 예를 들어, 위에서 논의된 바와 같이, 현재 프레임에 대한 블랙 레벨 시프트는 현재 프레임의 이미지 캡쳐 통계(예를 들어, 노출 시간, 게인, 온도, 또는 이들의 조합)를 기준 프레임의 추정된 블랙 레벨 시프트 및 이미지 캡쳐 통계에 비교하는 것을 통해 판정될 수 있다. 블록(240)에서 계산된 현재 프레임에 대한 블랙 레벨 시프트가 이전 프레임의 블랙 레벨 시프트로부터 크게 벗어나는 경우, 연속하는 프레임들 간의 급작스러운 큰 도약의 크기를 감소시키기 위해 블록(242)에서 블랙 레벨 시프트가 필터링될 수 있다. 마지막으로, 하드웨어 파이프라인(124) 내의 블랙 레벨 보상 파라미터는 블록(244)에서 각각의 프레임에 대해 조정되어, 현재 프레임이 현재의 전송 프레임 자체를 위한 데이터와, 기준 프레임으로부터의 데이터 둘 다에 기초하여 블랙 레벨 보상을 거치게 할 수 있다. 위에서 언급된 바와 같이, 그러한 블랙 레벨 보상은 이미지 센서(116)에 의해 적용되는 블랙 레벨 시프트 및 "data_pedestal" 오프셋을 제거하기 위해 적용될 수 있다.
다른 실시예에서, 이미지 프로세싱 시스템(114)은 또한 렌즈 셰이딩 아티팩트들을 보정하기 위해, 피드포워드 컨트롤 파라미터들을 도 9에 도시된 렌즈 셰이딩 보정(LSC : lens shading correction) 로직(128)에 제공할 수 있다. LSC 로직(128)에 적용될 수 있는 컨트롤 파라미터들을 분석하고 판정하기 위한 다양한 기법들이 도 14-27에 관하여 이하에 상세하게 설명된다.
알 수 있는 바와 같이, 렌즈 셰이딩 아티팩트들은 디지털 이미지 센서에 연관된 렌즈의 광학적 특성들의 불규칙성에 의한 것과 같이, 다수의 인자에 의해 유발될 수 있다. 예로서, 이상적인 광학적 특성들을 갖는 렌즈는 cos4 법칙이라고 지칭되는, 입사각의 코사인의 4승(cos4(θ))으로서 모델링될수 있다. 그러나, 렌즈 제조가 항상 cos4 법칙을 완벽하게 따르는 것은 아니므로, 렌즈에서의 불규칙성들로 인해 광학적 특성들 또는 광의 응답이 추정되는 cos4 모델로부터 벗어나게 될 수 있다. 예를 들어, 렌즈의 더 얇은 에지들(예를 들어 광학 중심으로부터 더 먼 곳)은 통상적으로 최대의 불규칙성을 나타낸다. 추가로, 렌즈 셰이딩 패턴에 있어서의 불규칙성들은 또한 마이크로 렌즈 어레이가 컬러 필터 어레이와 적절하게 정렬되지 않은 것의 결과일 수 있고, 이것은 일 실시예에서 베이어 패턴 컬러 필터 어레이(도 2)일 수 있다.
도 14를 참조하면, 전형적인 렌즈에 대해 광 강도-대-픽셀 위치를 도시하는 3차원 프로파일(250)이 도시되어 있다. 도시된 바와 같이, 렌즈의 중심(252) 부근의 광 강도는 렌즈의 코너들 또는 에지들(254)을 향해 점진적으로 하락한다. 디지털 이미지에서, 이러한 유형의 렌즈 셰이딩 아티팩트는 이미지의 코너들 및 에지들을 향한 광 강도의 하락들로서 나타나서, 이미지의 근사적인 중심에서의 광 강도가 이미지의 코너들 및/또는 에지들에서의 광 강도보다 더 밝은 것으로 보이게 할 수 있다.
일 실시예에서, LSC 로직(128)은 일반적으로 이미지 캡쳐 디바이스(20)의 렌즈의 광학 중심으로부터의 픽셀의 거리에 대략 비례하는 강도의 하락을 보상하기 위해 렌즈 셰이딩 보정 파라미터들을 픽셀별로 적절한 게인의 형태로 적용함으로써 렌드 셰이딩 아티팩트들을 보정하도록 구성될 수 있다. 예를 들어, 렌즈 셰이딩 보정 게인들은 도 15에 도시된 바와 같이 2차원 게인 그리드(258)를 이용하여 명시될 수 있다. 격자(258)는 미처리 이미지 데이터의 프레임(260)을 오버레이할 수 있고, 프레임(260)을 오버레이하도록 고정된 수평 및 수직 간격들로 분포된 게인 그리드점들(262)의 배열을 포함할 수 있다. 그리드 포인트들(262) 사이에 놓여 있는 픽셀들에 대한 렌즈 셰이딩 게인들은 이웃하는 그리드 포인트들(262)에 연관된 게인들을 보간함으로써 판정될 수 있다. 현재 설명되는 실시예가 11x11 그리드 포인트들(총 121 그리드 포인트)을 갖는 게인 그리드(258)를 도시하지만, 임의의 적절한 개수의 그리드 포인트들이 제공될 수 있음을 알아야 한다. 다른 실시예들에서, 게인 그리드(258)는 15x15 그리드 포인트(총 225 그리드 포인트), 17x17 그리드 포인트(총 289 그리드 포인트), 또는 20x20 그리드 포인트(총 400 그리드 포인트)을 포함할 수 있다.
알 수 있는 바와 같이, 그리드 포인트들(262) 각각의 픽셀들의 수는 게인 그리드(258) 내의 그리드 포인트들(262)의 개수와, 이미지 센서(116)의 해상도에 의존할 수 있다. 또한, 도 15에서는 수평 및 수직 방향 둘 다에서 균일하게 이격된 것으로서 도시되어 있지만, 일부 실시예들에서는 그리드 포인트들(262)이 불균일하게(예를 들어 대수적으로) 분포되어, 그리드 포인트들(262)이 이미지 프레임(260)의 중심에서는 덜 집중되고, 전형적으로 렌즈 셰이딩 왜곡이 더 두드러지는 곳인 이미지 프레임(260)의 코너들 및/또는 에지들을 향해서는 더 집중되게 할 수 있다.
도 16은 게인 그리드(258)에 의해 오버레이된 미처리 이미지 프레임(260) 내의 각각의 픽셀 위치에 적용될 수 있는 게인들을 도시하는 3차원 프로파일(266)의 예를 도시한다. 도시된 바와 같이, 이미지(260)의 코너들(268)에 적용되는 게인들은 일반적으로 위에서 도 14에 도시된 바와 같이, 코너들에서의 광 강도의 더 큰 하락으로 인해 이미지의 중심(270)에 적용되는 게인보다 더 클 수 있다. 렌즈 셰이딩 아티팩트들을 나타내는 이미지에 적절한 렌즈 셰이딩 게인들을 적용함으로써, 이미지 내의 광 강도 하락의 출현이 감소되거나 실질적으로 제거될 수 있다. 예를 들어, 이미지의 근사적인 중심에서의 광 강도는 이미지의 코너들 및/또는 에지들에서의 광 강도 값들과 실질적으로 동일할 수 있다. 추가로, 일부 실시예들에서, 이미지 센서(116)의 렌즈는 그 하락이 발광체 의존적이게 할 수 있는(예를 들어 광원의 유형에 의존함) 적외선(IR) 차단 필터를 포함할 수 있다. 따라서, 이하에 더 논의되는 바와 같이, 렌즈 셰이딩 게인들은 검출되는 광원에 기초하여서도 적응될 수 있다.
미처리 이미지 데이터가 복수의 컬러 성분을 포함할 때의 렌즈 셰이딩 보정의 적용에 대하여, 각각의 컬러 채널에 대해 별개의 각각의 게인 세트가 제공될 수 있다. 일부 경우들에서, 특정한 컬러 필터 어레이의 컬러 채널들에 대해 렌즈 셰이딩 폴 오프가 상이할 수 있다. 예를 들어, 베이어 컬러 필터 어레이를 이용하는 이미지 센서에서, 미처리 이미지 데이터는 적색, 청색 및 녹색 성분을 포함할 수 있다. 그러한 실시예에서, 베이어 컬러 필터 어레이의 R, B, Gr 및 Gb 컬러 채널들 각각에 대해 렌즈 셰이딩 게인의 세트가 제공될 수 있다.
각각의 컬러 채널에 대한 렌즈 셰이딩 특성이 다양한 파장의 광이 이동하는 경로들에서의 차이로 인해 다소 상이할 수 있긴 하지만, 소정 경우들에서, 각각의 컬러 채널에 대한 렌즈 셰이딩 폴 오프 곡선들은 여전히 대략 동일한 형상을 가질 수 있다. 그러나, 일부 경우들에서는 추가의 인자들로 인해, 컬러 채널들 중 하나 이상의 컬러 채널의 응답이 다른 컬러 채널(들)보다 더 많이 cos4 근사로부터 벗어날 수 있다. 예를 들어, 이미지 캡쳐 디바이스에 입사하는 광이 가파른 각도들에서 적외선(IR) 컷오프 필터 및 마이크로렌즈 어레이에 충돌하는 실시예에서, 적색 컬러 채널의 응답은 소정 발광체들 하에서는 청색 및 녹색 채널들보다 상당히 더 많이, 예상되는 cos4 근사 곡선으로부터 벗어날 수 있다.
편이의 양은 부분적으로 600-650 나노미터(nm) 파장의 함량에 의존할 수 있다. 따라서, 이 대역의 에너지를 거의 갖지 않는 협대역 형광 광원들에 대해, 적색 채널의 렌즈 셰이딩 폴 오프는 녹색 및 청색 채널과 비교할 때 형상에 있어서 매우 유사할 수 있다. 이러한 600-650 nm 대역의 에너지를 더 많이 갖는 일광과 유사한 광원들에 대하여, 적색 채널의 렌즈 셰이딩 폴 오프는 두드러지는 편이를 나타낼 수 있다. 또한, 백열 또는 할로겐 조명등과 같은 IR-풍부 광원이 제공될 때, 적색 채널의 렌즈 셰이딩 폴 오프에서 훨씬 더 현저한 편이가 존재할 수 있다. 적색 컬러 채널의 이러한 행동은 소정 조명 조건들 하에서는 원하지 않는 컬러 틴팅 아티팩트(color tinting artifacts)를 야기할 수 있다. 따라서, 예상되는 cos4 감소에 대해서만 모델링된 렌즈 셰이딩 보정 방식이 적용될 때, 발광체가 600-650nm 대역에서 주목할만한 양의 에너지를 포함하는 상황에서는 렌즈 셰이딩 아티팩트들이 여전히 존재할 수 있다.
도 17을 참조하면, 실시예에 따라, 발광체의 IR 함량에 기초하는 적색 채널의 응답에 기인하는 상기 설명된 렌즈 셰이딩 아티팩트들을 보정하기 위해 렌즈 셰이딩 파라미터들을 조정하기 위한 피드포워드 컨트롤 파라미터들을 도출하기 위해 이미지 프레임을 분석하도록 구성된 이미지 신호 프로세싱(ISP) 시스템(272)의 기능 블록도가 도시되어 있다. 단순히 하기 위해, 도 9를 참조하여 위에서 이미 설명된 기능 블록들은 유사한 참조번호들로 번호가 매겨졌다.
도시된 ISP 시스템(272)은 하드웨어 파이프라인(124) 및 추가 파이프라인(274)을 포함한다. 도시된 바와 같이, 추가 파이프라인(274)은 버퍼(144)에 의해 캡쳐되는 미처리 이미지 데이터의 프레임을 분석하도록 구성되는 로직(278)을 포함하는 소프트웨어 분석 블록(276)을 포함한다. 일 실시예에서, 미처리 이미지 데이터의 캡쳐는 특정 조건에 기초하는 "온 디맨드" 방식으로 트리거될 수 있다. 예를 들어, 일 실시예에서, 미처리 이미지 데이터의 프레임의 캡쳐 및 분석은 광원의 변화를 나타낼 수 있는 자동 화이트 밸런스에서의 변화를 검출한 때에 트리거될 수 있다.
이하에서 더욱 논의되는 바와 같이, 여기서 프레임 분석 로직(278)에 의해 표현된 캡쳐된 프레임의 분석은 프레임의 일반적으로 뉴트럴 영역(neutral region)(들)(예를 들어, 유사한 G/B 비 값을 갖는 영역들)을 식별하는 것 및 기준 발광체 세트 각각에 대응하는 렌즈 셰이딩 적응 함수 세트 각각을 적용하는 것을 포함할 수 있다. 이들 기준 발광체들에 기초한 컬러 채널들의 거동은 여러 상이한 발광체들에 걸쳐 균일한 광학 필드를 적용하고 이들과 기준 발광체의 것 사이의 비를 모델화함으로써 선험적으로(a priori) 모델화되고 특징지워질 수 있다. 예를 들어, 도 18-21을 참조하면, 다양한 기준 발광체들에 기초하여 각각의 컬러 채널에 대해 예상되는 폴 오프(fall-off) 커브들을 도시하는 그래프들이 도시되어 있다. 구체적으로, 그래프(288)는 일광 조건들을 시뮬레이트하도록 의도되는 CIE 표준 발광체 D65에 기초하여 청색, 녹색 및 적색 채널 각각에 대한 폴 오프 커브들(290, 292 및 294)를 도시한다. 그래프(296)는 CWF(cool white fluorescent) 기준 발광체에 기초하여 청색, 녹색 및 적색 채널 각각에 대하여 폴 오프 커브들(298, 300 및 302)을 도시한다. 또한, 그래프(304)는 TL84 기준 발광체(다른 형광원(fluorescent source))에 기초하여 청색, 녹색 및 적색 채널 각각에 대한 폴 오프 커브들(306, 308 및 310)을 도시한다. 또한, 그래프(312)는 백열등(incandescent lighting)을 시뮬레이트하는 IncA(또는 A) 기준 발광체에 기초하여 청색, 녹색 및 적색 채널 각각에 대한 폴 오프 커브들(314, 316 및 318)을 도시한다. 알 수 있는 바와 같이, D65 및 IncA 기준 발광체들과 같이 더 많은 양의 600-650nm 파장의 에너지를 갖는 조명 컨디션 하에서, 적색 채널(예를 들어, 커브들(294, 318))에 대응하는 렌즈 셰이딩 응답의 형상이 청색 및 녹색 채널로부터 더욱 두드러지게 벗어난다(deviate).
기준 발광체들 각각에 대하여, 대응하는 적응 함수(adaptation function)가 유도될 수 있다. 적응 함수는 렌즈의 광학 중심(optical center)으로부터의 거리에 기초하는 4차 다항 함수(fourth order polynomial function)인 적색 채널에 대한 공간 적응 커브를 유도함으로써 판정될 수 있다. 일 실시예에서, 목적은 적색 채널에 대한 폴 오프 커브의 형상이 청색 또는 녹색 채널의 것에 좀더 가까이 매칭하도록 적응 함수를 모델화하는 것이다. 청색 및 녹색 채널들의 응답이 일반적으로 유사한 형상들을 나타내기 때문에, 적응 함수들은 녹색 채널, 청색 채널 또는 청색 및 녹색 채널의 결합(예를 들어, 평균)을 매칭시킴으로써 유도될 수 있다.
도 22를 참조하면, 도 18-21에 도시된 기준 발광체들 각각에 대응하는 적응 함수들을 도시하는 그래프(320)가 도시되어 있다. 예를 들어, 커브들(322, 324, 326 및 328)이 IncA, D65, CWF 및 TL84 기준 발광체들 각각에 대응한다. 더욱 도시되는 바와 같이, 각각의 커브는 범례(legend)(329)에 의해 나타낸 바와 같은 값과 연관될 수 있다. 이하 더욱 기술되는 바와 같이, 각각의 적응 커브 간의 상대적 차이를 판정하는 데에 사용될 수 있는 이들 값들은 2개의 렌즈 셰이딩 프로파일들 사이의 점진적 트랜지션들(gradual transitions)을 제공하는 데에 사용될 수 있다. 일 실시예에서, 값들은 대응하는 기준 발광체의 CCT(correlated color temperature)에 적어도 대략적으로 대응할 수 있다.
도 17을 다시 참조하면, 프레임 분석 로직(278)은 캡쳐된 프레임을 분석할 수 있고, 적색 렌즈 셰이딩 프로파일을 보정(correcting)하기 위한 적절한 적응 함수를 선택할 수 있다. 도시된 바와 같이, 선택된 적응 함수에 대응하는 적응 값들(284)이 펌웨어(280)에 제공될 수 있다. 그 후, 펌웨어(280)는 LSC 로직(128)에 피드포워드(feed-forward) 파라미터들로서 제공될 수 있는 렌즈 셰이딩 파라미터들(284)의 보정된 세트를 생성할 수 있다. 즉, 적응 값들(284)은 IR-리치(rich) 발광체들 하에서 적색 채널의 거동으로 인해 발생할 수 있는 아티팩트들을 고려하기 위하여 적색 렌즈 셰이딩 파라미터들(예를 들어, 게인들)을 수정하는 데에 사용된다. 일부 실시예들에서, 각각의 적응 함수에 대응하는 적응 값들(282) 및 렌즈 셰이딩 파라미터들(284)은 소프트웨어(276) 및 펌웨어(278)에 의해 액세스가능한 메모리 및/또는 룩업 테이블들에 저장될 수 있다.
위에서 알 수 있는 바와 같이, ISP 하드웨어 파이프라인(124)은 통계 엔진(134)을 포함하고, 임의의 다른 원하는 프로세싱 블록들을 포함할 수 있다. 예를 들어, 일 실시예에서, ISP 하드웨어 파이프라인(124)은 자동 노출 로직, 자동 포커스 로직 등을 더 포함할 수 있다. 이들 기술들을 사용하여 미처리 이미지 데이터를 처리함으로써, 결과적인 이미지는 더 적은 렌즈 셰이딩 또는 컬러 틴팅 아티팩트들을 나타내거나 또는 이들을 전혀 나타내지 않을 수 있고, 전자 디바이스(10)의 디스플레이(18) 상의 이미지를 보는 사용자에게 좀더 심미적으로 즐거움을 줄 수 있다. 또한, 추가적인 파이프라인(274)이 본 실시예의 소프트웨어 및 펌웨어와 같이 도 17에 도시되어 있지만, 본 기술은 소프트웨어, 하드웨어, 또는 소프트웨어 및 하드웨어 컴포넌트들의 결합을 사용하여 구현될 수 있다는 것이 이해되어야 한다.
렌즈 셰이딩 보정에 대하여 위에서 개시된 기술들은 방법(330)을 도시하는 도 23에 도시된 플로우차트를 통해 더욱 예시될 수 있다. 위에서 논의된 바와 같이, AWB(auto-white balance)의 변화는 광원의 변화를 나타낼 수 있고, 렌즈 셰이딩 파라미터들이 조정되어야하는지를 판정하기 위하여 분석을 위한 미처리 프레임의 캡쳐를 트리거하는 데에 사용될 수 있다. 따라서, 방법(330)은 블록(332)에서 시작하고, 안정화하기 위하여 AWB를 대기한다. 다음으로, 결정 로직(334)은 AWB가 안정화되었는지를 판단한다. 일 실시예에서, 결정 로직(334)은 AWB 값들이 특별한 수의 프레임들(예를 들어, 2 내지 10 프레임들)에 대해 안정하게 유지되는지에 기초하여 이것을 판정한다. AWB가 아직 안정하지 않다면(예를 들어, 조명 소스가 변하거나 이미지 캡쳐 디바이스가 움직이는 경우), 방법(330)은 블록(332)으로 돌아간다. 만약, 결정 로직(334)이 AWB가 안정하다고 판단하는 경우, 그 후, 방법(330)은 이미지 센서(116)으로부터의 미처리 프레임(raw frame)이 분석을 위해 캡쳐되는(예를 들어, 버퍼(144)에 저장됨) 블록(336)으로 계속된다.
다음으로, 블록(338)에서, 블록(336)에서 캡쳐된 미처리 기준 프레임이 이용 가능한 적응 함수(adaptation function)들을 이용하여 분석된다(도 22). 예를 들어, 위에서 언급된 바와 같이, 프레임 분석 로직(278)은 적응 함수를 일반적으로 캡쳐된 프레임의 뉴트럴 영역들에 적용할 수 있고, 현재 발광체에 가장 가깝게 매칭하는 기준 발광체에 대응하는 적응 함수를 선택하는 것을 시도할 수 있다. 이 프로세스는 도 24에 대하여 아래에서 더 상세히 설명될 것이다. 결정 로직(340)은 적응 함수가 발견되는지를 판단한다. 블록(338)에서의 분석의 결과로서 어떠한 적응 함수도 발견되지 않는다면, 현재의 렌즈 셰이딩 프로파일은 (예를 들어, 새로 선택된 적응 함수 없이) 계속 적용될 것이고, 방법(330)은 블록(332)으로 돌아가서 AWB가 안정화되기를 기다리고, 분석을 위해 후속 프레임의 캡쳐를 트리거링한다. 일부 실시예들에서, ISP 시스템(272)은 블록(332)로 돌아가기 전에 특별한 양의 시간(예를 들어, 15 내지 60초) 동안 기다리도록 구성될 수 있다. 만약, 결정 로직(340)이 적응 함수가 발견되었다고 표시한다면, 그 후, 선택된 적응 함수는 블록(342)에서 표시된 바와 같이, 렌즈 셰이딩 파라미터들에 적용된다.
도 23의 블록(338)에 의해 표현된 것과 같이, 캡쳐된 미처리 프레임을 분석하는 것의 프로세스는 일 실시예에 따라 도 24에서 더 상세히 도시된다. 도시된 바와 같이, 미처리 프레임을 분석하는 것의 프로세스(338)는 미처리 프레임 내의 하나 이상의 뉴트럴 영역들을 식별하는 것에 의해 블록(346)에서 시작할 수 있다. 예를 들어, 일 실시예에서, 캡쳐된 미처리 프레임은 도 25에서 도시된 예시인, 픽셀들의 8x8 블록들(358)의 샘플들 내에서 분석될 수 있다. 베이어 컬러 필터 어레이를 활용하는 이미지 센서들에 대해, 8x8 블록은 참조 번호 360에 의해 도 25에서 지칭된 16 개의 2x2 베이어 쿼드들(예를 들어, 베이어 패턴을 표현하는 픽셀들의 2x2 블록)을 포함할 수 있다. 이 구성을 이용하여, 각각의 컬러 채널은 샘플(358) 내에서 대응하는 픽셀들의 4x4 블록을 포함하고, 동일 컬러의 픽셀들은 샘플(358) 내에서 각각의 컬러 채널에 대한 평균 컬러 값을 만들어 내기 위해 평균화될 수 있다. 예를 들어, 샘플(358) 내에서 적색 픽셀들(364)은 평균 적색 값(RAV)을 얻기 위해 평균화될 수 있고, 청색 픽셀들(366)은 평균 청색 값(BAV)을 얻기 위해 평균화될 수 있다. 녹색 픽셀들의 평균화에 관해, 몇몇의 기술들이 활용될 수 있는데, 이는 베이어 패턴이 적색 또는 청색 샘플들보다 두 배 많은 샘플들을 가지기 때문이다. 일 실시예에서, 평균 녹색 값(GAV)은 단지 Gr 픽셀들(362), 단지 Gb 픽셀들(368), 또는 모든 Gr 및 Gb 픽셀들(362 및 368)을 함께 평균하는 것에 의해 획득될 수 있다. 다른 실시예에서, 각각의 베이어 쿼드(360) 내의 Gr 및 Gb 픽셀들이 평균화될 수 있고, 각각의 베이어 쿼드(360)에 대한 녹색 값들의 평균이 GAV를 얻기 위해 함께 더 평균화될 수 있다. 이해될 바와 같이, 픽셀 블록들에 걸친 픽셀 값들의 평균화는 노이즈 감소를 제공할 수 있다. 더욱이, 샘플로서 8x8 블록의 사용은 단지 하나의 예시를 제공하기 위해 의도된 것임을 이해해야 한다. 진정코, 다른 실시예들에서는, 임의의 적절한 블록 사이즈가 사용될 수 있다(예를 들어, 4x4, 16x16, 32x32 등).
다시 도 24를 참조하면, 일반적으로 캡쳐된 미처리 프레임 내의 뉴트럴 영역들은 도 25를 참조로하여 논의된 바와 같이 미처리 프레임의 샘플들의 컬러 평균들을 획득하는 것과, 유사한 G/B 비율 값들을 공유하는 미처리 프레임 내의 영역들을 식별하는 것에 의해 판정될 수 있다. 다음으로, 블록(348)에서 표시된 것과 같이, 각각의 이용 가능한 적응 함수들에 기초한 렌즈 셰이딩 모델들은 뉴트럴 영역들 내의 픽셀들에 적용되고, 뉴트럴 영역들 내의 R/B 비율 값들의 변동은 각각의 적응 함수에 대해 판정된다. 그 후, 결정 로직(350)은 R/B 비율 값들의 최소 변동이 존재하는 지를 판정한다. 만약, 최소값이 발견된다면, 도(352)에 도시된 것과 같이, R/B 비율의 최소 변동을 산출하는 적응 함수가 선택된다. 만약, 최소값이 발견되지 않는다면(예를 들어, R/B 비율의 가장 낮은 변동들은 두 개 이상의 동일 값들을 포함한다), 결정 로직(350)은 블록(354)에서 어떠한 적응 함수도 발견되지 않았다고 표시할 수 있다. 블록들(352 및 354)의 출력은 도 23의 블록(340)으로 계속할 수 있을 것이다.
도 26은 도 23의 블록(338)에 의해 표현되는 것과 같이, 적응 함수를 렌즈 셰이딩 파라미터들에 적용하는 이 프로세스를 도시한다. 특히, 도 26은 적응 함수가 무한 임펄스 응답(IIR) 필터를 이용하여 적용되는 실시예를 도시한다. 렌즈 셰이딩 프로파일들 사이의 더 부드러운 트랜지션을 제공하기 위해, 현재의 렌즈 셰이딩 프로파일은 몇몇의 중간(intervening) 단계들의 방식에 의해 몇몇의 프레임들에 걸쳐 선택된 적응 함수에 기초하여 렌즈 셰이딩 프로파일로 점진적으로 트랜지션할 수 있다. 이해될 바와 같이, 이 점진적인 트랜지션은 (예를 들어, 점진적인 단계들 없이 단일 프레임에서의) 렌즈 셰이딩 프로파일들을 즉시 스위칭하는 것과 비교할 때, 시각적으로 더 기분 좋은 결과를 표현할 수 있다. 적응 함수(324)(D65)으로부터 적응 함수(322)(IncA)으로의 트랜지션을 도시하는 도 27은 프로세스(342)의 도시적인 예시를 제공하는 역할을 하고, 도 26의 설명과 함께 관찰되어야 한다.
도시된 바와 같이, 프로세스(342)는 적응 값들 사이의 전체 델타(△total), 마지막 또는 이전에 선택된 적응 함수(Pold) 및 도 23의 블록(338)에서 선택된 적응 함수(Pnew) 이 판정되는 블록(380)에서 시작한다. 예를 들어, △total는 곡선(324) 상의 각 점과 곡선(322) 상의 각 대응점 사이의 절대 차이를 총괄적으로 표현할 수 있다.
블록(382)에서, Pold 값(커브 324)은 Pnew 값으로 △total의 50 퍼센트 만큼으로 트랜지션되어 중간 적응 커브(intermediate adaptation curve) Pint를 얻게 되는데, 이는 Pold와 Pnew 사이에 있다. 이는 도 27에 커브(396)으로 도시되는데, 이는 3000의 값을 가질 수 있다(2000과 4000 사이). 따라서, 블록(382)에서 판정된 Pint 함수는 렌즈 셰이딩 파라미터(lens shading parameter)(284)에 적용되어 하나 이상의 프레임에 대해 보정된 렌즈 셰이딩 파라미터의 중간 세트를 생성시킨다. 그 후, 블록(384)에서, 프로세스(342)가 Pint(커브 396)와 Pnew(커브 322) 사이에서 중간 델타(△int)를 판정한다. 블록(380)에서의 △total의 판정처럼, △int는 커브(396) 상의 각 점과 이에 해당되는 커브(322) 상의 각 점 간의 절대적 차이를 나타낼 수 있다.
그 후, 결정 로직(386)은 △int가 △total의 1/8 이하인지 여부를 판정한다. 만약 △int가 △total의 1/8 이하가 아니라면, 프로세스(342)는 블록(388)에서 계속되고, 여기서 블록(382)로부터의 Pint 값(커브 396)은 △int의 50 퍼센트만큼의 Pnew 값으로 트랜지션되어 Pint 커브의 업데이트를 얻게 되는데, 이는 도 27에 커브(398)로 도시된다(2500의 값을 가짐). 이 업데이트된 Pint 함수는 렌즈 셰이딩 파라미터(284)에 적용되어 하나 이상의 프레임에 대해 중간 보정된 렌즈 셰이딩 파라미터의 업데이트 세트를 생성시킨다. 그 후, 업데이트된 Pint(커브 398)와 Pnew 사이에서 업데이트된 △int가 판정된다. 프로세스(342)는 그 후 결정 로직(386)으로 복귀한다. 이때, 전류 △int는 여전히 △total의 1/8 보다 크기 때문에, 이 프로세스(342)는 블록(388) 및 블록(390)에서 단계들을 반복하게 되며, 업데이트된 Pint 간 차이를 나타내는 업데이트된 △int를 얻게 되는데, 이는 도 27의 커브(400)에 도시된다(2250의 값을 가짐).
결정 로직(386)으로 복귀하면, 업데이트 △int는 이제 1/8 △total과 같기 때문에, 프로세스(342)는 블록(392)로 계속되고, 도 27의 커브(400)에 해당하는 Pint 값은 커브(322)에서 그들이 해당하는 Pnew 값으로 트랜지션할 수 있다. 그 후, Pnew 적응 값이 적용되어 적색 채널에 대한 렌즈 셰이딩 파라미터의 수정된 세트를 생성시킬 수 있다. 따라서, 도 26에 도시된 프로세스의 실시예는 핵심적으로 △total의 50 퍼센트인 제1 단계, △total의 25 퍼센트인 제2 단계, 뒤따른 △total의 12.5 퍼센트(1/8)인 제3 단계를 이용하여 점진적 트랜지션을 제공한다. 전술한 바와 같이, 이는 수개의 프레임에 걸친 두 다른 렌즈 셰이딩 프로필 간의 점진적 트랜지션을 제공하는데, 이는 단일 프레임 내에서 Pold에서 Pnew로 트랜지션하는 경우와 비교하면 뷰어(viewer)에게 더 심미적으로 기분 좋을 수 있다. 그러나, 크기의 단계를 포함하여, 어떠한 적합한 단계 크기라도 다른 실시예에서 이용될 수 있다고 이해되어야 한다.
도 26에 도시된 프로세스는 단순히 렌즈 셰이딩 적응 함수 간 트랜지션하는 방법의 하나의 예를 제공하는 의도임이 이해되어야 한다. 일부 실시예에서, 블록(382) 및 블록(388)에 도시된 특정 파라미터는 달라질 수 있고 다양한 구현에 따라 다를 수 있다. 예를 들면, 하나의 실시예에서, 트랜지션 단계는 점진적으로 감소하는(예를 들면, △total의 1/3, 1/4, 1/5, 1/6, 또는 1/8) 대신 일정할 수 있다. 또한, 다른 실시예에서는, 비율을 이용하기보다는, 절대 △(예를 들면, 렌즈 셰이딩 게인(lens shading gain)을 각 중간 트랜지션 단계 동안 특정 게인 만큼 조정)를 이용할 수 있다. 또 다른 일부 실시예에서는, 렌즈 셰이딩 적응 함수 간 트랜지션은 비-IIR 필터링 기법(non-IIR filtering technique)을 이용하여 적용될 수 있다.
전술한 실시예가, 높은 IR을 함유하는 발광체(illuminant)에 대한 적색 채널의 응답의 증가된 편이에 기인한 렌즈 셰이딩 아티팩트(artifact)에 초점을 두었지만, 유사한 방법이 적용되어 다른 컬러 채널에 대해서도 또한 보정된 렌즈 셰이딩 파라미터를 생성시킬 수 있다는 점이 이해되어야 한다. 예를 들면, 만약 녹색이나 청색 컬러 채널들이, 예상하는 cos4 커브로부터 원하지 않는 편이를 발생시키는 일정 조건에 쉽게 좌우된다면, 녹색 또는 청색 컬러 채널들의 응답은 하나 이상의 기준 발광체(예를 들면, D65, CWF, TL84, IncA)에 기초하여 모델링될 수 있고, 해당되는 적응 함수가 유도될 수 있는데, 예를 들면, 렌즈의 광학 중심으로부터의 거리에 기초한 4차 다항 함수가 이용될 수 있다.
부가적으로, 상기 제공된 4개의 기준 발광체들은 단 하나의 실시예의 예시를 제공하도록 의도된다는 것을 이해해야 한다. 인식되는 바와 같이, 추가적인 기준 발광체들이 모델링될 수 있으며, 대응하는 적응 함수들이 도출될 수 있다. 이들 추가적인 기준 발광체들의 특성들 및 그들의 적응 값들은 (예를 들어, 펌웨어 또는 메모리에 저장하는) 추가적인 파이프라인(272)에 액세스가능해질 수 있으며, 몇몇 경우에는 소프트웨어 또는 펌웨어 업데이트를 통해 디바이스(10)에 제공될 수 있다. 몇몇 경우에, 추가적인 기준 발광체들은 공지된 발광체 타입의 보간을 통해 도출될 수 있다.
블랙 레벨 보정 및 렌즈 셰이딩 보정에 대한 피드-포워드 메인 이미지 프로세싱(24) 컨트롤 파라미터들을 판정하는 것에 부가하여, 메인 이미지 프로세싱(24)에 의해 이용되는 결함 픽셀 맵핑을 업데이트하기 위해 대체 이미지 프로세싱(56)이 또한 이용될 수 있다. 예를 들어, 도 28의 플로우차트(410)에 의해 도시된 바와 같이, 대체 이미지 프로세싱(56)은 이미지 캡쳐 디바이스(20)의 결함 픽셀들에 대한 미처리 이미지 데이터를 분석할 수 있다(블록(412)). 시간이 지남에 따라 더 많은 수의 결함 픽셀들이 발생할 수 있기 때문에, 블록(412)의 액티비티는 주기적으로 또는 대체 이미지 프로세싱(56)이 미처리 이미지 데이터의 프레임을 분석할 때마다 일어날 수 있다. 예로서, 몇몇 실시예들에 있어서, 대체 이미지 프로세싱(56)은 매일, 매주 또는 매달 단지 한번 등과 같이 결함 픽셀들에 대한 미처리 이미지 데이터를 분석할 수 있다. 다른 실시예들에 있어서, 대체 이미지 프로세싱(56)은, 다른 메인 이미지 프로세싱(24) 컨트롤 파라미터들(예를 들어, 블랙 레벨 보정 또는 렌즈 셰이딩 보정)을 판정하기 위해서 대체 이미지 프로세싱(56)이 미처리 이미지 데이터의 프레임을 분석할 때마다 결함 픽셀들에 대한 미처리 이미지 데이터의 프레임을 분석할 수 있다.
대체 이미지 프로세싱(56)이 이전에 검출되지 않은 새로운 결함 픽셀들을 검출하는 경우에는(판정 블록(414)), 대체 이미지 프로세싱(56)은 메인 이미지 프로세싱과 연관된 결함 픽셀 맵이 업데이트되도록 할 수 있다(블록(416)). 예를 들어, 대체 이미지 프로세싱(56)은 메인 이미지 프로세싱(24)에 의해 이용되는 결함 픽셀 맵을 직접 업데이트할 수 있거나, 또는 대체 이미지 프로세싱(56)은 메인 이미지 프로세싱(24)과 연관된 펌웨어(68)가 결함 픽셀 맵을 업데이트하도록 할 수 있다. 한편, 어떠한 새로운 결함 픽셀들도 검출되지 않는 경우에는(판정 블록(414)), 블록(416)은 수행되지 않을 수 있다. 그 이후에, 메인 이미지 프로세싱(24)은 이미지 캡쳐 디바이스(20)의 모든 결함 픽셀들을 포함하도록 지금 업데이트된 결함 픽셀 맵에 따라 수행될 수 있다(블록(418)).
이미지 캡쳐 회로(20)로부터 메모리(14)와 병렬로 전달된 미처리 이미지 데이터는 여전히 다른 방식으로 대체 이미지 프로세싱(56)에 의해 이용될 수 있다. 예를 들어, 미처리 이미지 데이터는 메인 이미지 프로세싱(24)이 만족스럽지 않은 결과들을 산출할 때마다 이미지 재처리를 가능하게 할 수 있다. 즉, 미처리 이미지 데이터는, 메인 이미지 프로세싱(24)이 초기에 만족스럽지 않은 최종 이미지를 산출하는 경우에 보다 양호한 최종 이미지를 생성하기 위해서 대체 이미지 프로세싱(56)에 의해 이용될 수 있다.
도 29의 플로우차트 430에 도시된 바와 같이, 이러한 이미지 재처리 능력은, 메인 이미지 프로세싱(24)이 미처리 이미지 데이터의 동일 프레임 사본에 대한 이미지 프로세싱을 수행하는 동안, 미처리 이미지 데이터의 프레임이 메모리(14)에 저장되는 경우 이용가능해진다(블록 432). 일부 실시예들에서, 미처리 이미지 데이터는 비휘발성 저장장치(16)에 저장될 수 있고, 메인 이미지 프로세싱(24)에 의해 처리된 최종 이미지와 연관될 수 있다. 이미지가 처리되어 최종 처리된 이미지가 판정되면, 메인 이미지 프로세싱(24)의 통계 엔진(60)으로부터의 사용자 피드백 또는 통계치는, 메인 이미지 프로세싱(24)이 만족스러운 이미지를 생성하지 않는다는 것을 표시할 수 있다(블록 434). 예를 들면, 이미지가 너무 어둡거나 너무 밝게 보이는 경우, 또는 자동 화이트 밸런스(AWB)가 잘못된 컬러 온도에 기초하여 화이트 밸런싱을 수행한 것으로 보이는 경우에, 사용자는 이미지가 재처리되어야 한다는 것을 표시할 수 있다. 예로서, 메인 이미지 프로세싱(24)이 최종 이미지를 생성한 후에, 최종 이미지는 디스플레이(18)에 디스플레이될 수 있다. 결과에 대해 불만족스러운 사용자는, 전자 디바이스(10)에 피드백을 제공하여(예컨대, 전자 디바이스(10)를 흔들어서) 결과에 대한 불만족을 표시할 수 있다.
응답으로, 메모리(14) 또는 비휘발성 저장장치(16)에 저장된 미처리 이미지 데이터는 그 후에, 더 만족스러운 결과를 얻고자 하는 시도로 대체 이미지 프로세싱(56) 또는 메인 이미지 프로세싱(24)을 사용하여 재처리될 수 있다(블록 436). 예를 들면, 위쪽에 자세히 기술한 바와 같이, 일부 실시예에서, 미처리 이미지 데이터가 대체 이미지 프로세싱(56)에 의해 분석되어 새로운 메인 이미지 프로세싱(24) 컨트롤 파라미터를 획득할 수 있다. 이후에, 미처리 이미지 데이터는 메인 이미지 프로세싱(24) 내에 리로딩될 수 있고, 이는 새로운 메인 이미지 프로세싱(24) 컨트롤 파라미터에 따라 미처리 이미지 데이터를 재처리할 수 있다. 다른 실시예에서, 대체 이미지 프로세싱(56)은 메인 이미지 프로세싱(24) 대신 미처리 이미지 데이터를 처리할 수 있다. 일부 실시예에서, 대체 이미지 프로세싱(56)은, 메인 이미지 프로세싱(24)의 통계 엔진(60)으로부터의 소정의 메인 이미지 프로세싱 통계치를 사용하여, 대체 이미지 프로세싱(56)이 발생하는 방식을 변경시킨다. 즉, 대체 이미지 프로세싱(56)은, 메인 이미지 프로세싱(24)이 왜 만족스러운 최종 이미지를 생성하는데 실패했는지를 추정하고, 그에 따라 이미지 프로세싱 기법을 조정할 수 있다. 사용자가 재처리된 최종 이미지에 대해서도 불만족스럽다면, 메인 이미지 프로세싱(24) 및/또는 대체 이미지 프로세싱(56)은 도 29의 플로우차트(430)의 방식으로 미처리 이미지 데이터를 다시 한 번 재처리할 수 있다.
상술된 특정 실시예들은 예시의 방식일 뿐이며, 이러한 실시예들은 다양한 변경과 대체 형태가 가능할 수 있다는 것에 유의해야 한다. 또한, 청구범위는 개시된 특정 형태들로만 제한되는 것이 아니라, 본 개시물의 사상 및 범위 내에 속하는 모든 변경물, 등가물, 대체물을 커버한다는 것에 유의해야 한다.

Claims (26)

  1. 렌즈 셰이딩 적응 함수들의 세트를 제공하는 단계 - 상기 렌즈 셰이딩 적응 함수들 각각은 각각의 기준 발광체에 대응함 - ;
    현재의 발광체 컨디션들 하에서 이미지 센서에 의해 캡쳐된 복수의 이미지 프레임을 하드웨어 이미지 신호 프로세싱 파이프라인에 제공하는 단계;
    상기 현재의 발광체 컨디션들의 특징들을 가장 가깝게 매칭시키는 기준 발광체에 대응하는 렌즈 셰이딩 적응 함수를 선택하기 위해 복수의 이미지 프레임으로부터의 기준 프레임을 분석함으로써 대체 이미지 프로세싱을 수행하도록 추가의 이미지 프로세싱 파이프라인을 이용하는 단계;
    상기 선택된 렌즈 셰이딩 적응 함수에 기초하여 렌즈 셰이딩 파라미터들의 세트를 조정하는 단계;
    조정된 렌즈 셰이딩 파라미터들을 피드 포워드 파라미터들로서 하드웨어 이미지 신호 프로세싱 파이프라인에 제공하는 단계; 및
    상기 하드웨어 이미지 신호 프로세싱 파이프라인을 이용하여 상기 조정된 렌즈 셰이딩 파라미터들에 기초하여 상기 복수의 이미지 프레임을 처리하는 단계
    를 포함하는, 렌즈 셰이딩 아티팩트들(lens shading artifacts)을 보정하기 위한 방법.
  2. 제1항에 있어서,
    상기 이미지 센서에 의해 캡쳐된 상기 복수의 이미지 프레임은 적색, 녹색 및 청색 채널들을 포함하는, 렌즈 셰이딩 아티팩트들을 보정하기 위한 방법.
  3. 제2항에 있어서,
    상기 렌즈 셰이딩 적응 함수를 선택하기 위해 상기 기준 프레임을 분석하는 단계는,
    상기 기준 프레임 내의 일반 뉴트럴 영역들(generally neutral regions)을 식별하는 단계;
    상기 렌즈 셰이딩 적응 함수 각각을 상기 기준 프레임에 적용하고, 상기 렌즈 셰이딩 적응 함수들 각각에 대해 상기 뉴트럴 영역들 내의 적색 대 청색 비율 값들의 분산을 판정하는 단계; 및
    최소 분산이 존재하는 경우 상기 최소 분산에 대응하는 렌즈 셰이딩 적응 함수를 선택하는 단계를 포함하는, 렌즈 셰이딩 아티팩트들을 보정하기 위한 방법.
  4. 제3항에 있어서,
    최소 분산이 존재하지 않으면, 렌즈 셰이딩 적응 함수가 선택되지 않고, 상기 렌즈 셰이딩 파라미터들이 조정되지 않고, 상기 하드웨어 이미지 신호 프로세싱 파이프라인은 조정되지 않은 렌즈 셰이딩 파라미터들을 이용하여 상기 복수의 이미지 프레임을 처리하는, 렌즈 셰이딩 아티팩트들을 보정하기 위한 방법.
  5. 제3항에 있어서,
    상기 기준 프레임 내에서 일반 뉴트럴 영역들을 식별하는 단계는
    상기 기준 프레임의 서브세트들을 분석하는 단계;
    각각의 서브세트에 대해, 상기 청색 및 녹색 채널 각각에 대한 평균화된 색 값들을 판정하고 평균화된 청색 값 및 평균화된 녹색 값에 기초하여 청색 대 녹색 비율을 산출하는 단계; 및
    일반 뉴트럴 영역들과 유사한 청색 대 녹색 비율들을 갖는 상기 기준 프레임 내의 서브세트들을 식별하는 단계
    를 포함하는, 렌즈 셰이딩 아티팩트들을 보정하기 위한 방법.
  6. 제5항에 있어서,
    각각의 서브세트는 8x8 블록의 픽셀들을 포함하는, 렌즈 셰이딩 아티팩트들을 보정하기 위한 방법.
  7. 제6항에 있어서,
    상기 8x8 블록의 픽셀들은 제1 녹색 채널 및 제2 녹색 채널을 갖는 베이어(Bayer) 이미지 데이터를 포함하고, 상기 평균화된 녹색 값은 상기 제1 녹색 채널, 상기 제2 녹색 채널, 또는 상기 제1 녹색 채널 및 상기 제2 녹색 채널 둘 다에 기초하여 판정되는, 렌즈 셰이딩 아티팩트들을 보정하기 위한 방법.
  8. 이미지 센서에 의해 생성되는 이미지 데이터의 프레임들을 수신하고 렌즈 셰이딩 파라미터들의 세트를 이용하여 상기 프레임들 내의 렌즈 셰이딩 폴 오프(fall-off)를 보상하기 위해 상기 이미지 데이터의 프레임들을 처리하도록 구성된 제1 이미지 프로세싱 파이프라인;
    상기 이미지 센서에 의해 생성된 상기 이미지 데이터의 프레임들 중 적어도 하나의 프레임을 상기 제1 이미지 프로세싱 파이프라인과 병렬로 수신하고, 상기 이미지 데이터의 적어도 하나의 색 채널에 대한 광(light)의 특정 파장들로 인한 렌즈 세이딩 응답의 감도를 보상하기 위해 이용가능한 렌즈 셰이딩 적응 함수들의 세트로부터 렌즈 셰이딩 적응 함수를 선택하도록 구성된 제2 이미지 프로세싱 파이프라인을 포함하는 피드 포워드 루프
    를 포함하고,
    상기 피드 포워드 루프는 선택된 렌즈 셰이딩 적응 함수에 기초하여 상기 제1 이미지 프로세싱 파이프라인에 의해 사용되는 상기 렌즈 셰이딩 파라미터들의 세트를 조정하도록 구성되는, 렌즈 셰이딩 아티팩트들을 보정하기 위한 시스템.
  9. 제8항에 있어서,
    상기 이용가능한 렌즈 셰이딩 적응 함수들의 세트의 각각의 이용가능한 렌즈 셰이딩 함수는 기준 발광체들의 세트의 각각의 발광체에 대한 상기 적어도 하나의 색 채널의 렌즈 셰이딩 응답에 기초하여 모델링되는, 렌즈 셰이딩 아티팩트들을 보정하기 위한 시스템.
  10. 제9항에 있어서,
    상기 기준 발광체들의 세트는 시뮬레이트된 주광성(daylight) 발광체, 형광성(fluorescent) 발광체, 및 백열성(incandescent) 발광체 중 적어도 하나를 포함하는, 렌즈 셰이딩 아티팩트들을 보정하기 위한 시스템.
  11. 제8항에 있어서,
    상기 제2 이미지 프로세싱 파이프라인은 프로세서에 의해 실행가능한 이미지 분석 소프트웨어로 인코딩된 메모리를 포함하고, 상기 제2 이미지 프로세싱 파이프라인은 상기 프로세서에 의한 상기 이미지 분석 소프트웨어의 실행에 의해 상기 적어도 하나의 프레임을 분석하도록 구성되는, 렌즈 셰이딩 아티팩트들을 보정하기 위한 시스템.
  12. 하드웨어 이미지 프로세싱 파이프라인을 이용하여, 디지털 이미지 센서에 의해 생성되는 복수의 이미지 프레임을 수신하고 렌즈 셰이딩 게인들의 세트에 기초하여 픽셀별 기반으로 상기 복수의 이미지 프레임의 각각의 프레임에 렌즈 셰이딩 보정을 적용하는 단계; 및
    제2 이미지 프로세싱 파이프라인을 이용하여 상기 복수의 이미지 프레임으로부터의 적어도 하나의 이미지 프레임을 저장하고 상기 적어도 하나의 이미지 프레임을 분석하는 단계
    를 포함하고, 상기 제2 이미지 프로세싱 파이프라인은 상기 분석에 기초하여 렌즈 셰이딩 적응 값들의 세트를 선택하고, 선택된 렌즈 셰이딩 적응 값들의 세트에 기초하여 상기 렌즈 셰이딩 게인들의 세트를 조정하고, 조정된 렌즈 셰이딩 게인들의 세트를 피드 포워드 컨트롤 파라미터들로서 상기 하드웨어 이미지 프로세싱 파이프라인에 제공하도록 구성되는, 렌즈 셰이딩 아티팩트들을 보정하기 위한 방법.
  13. 제12항에 있어서,
    상기 렌즈 셰이딩 적응 값들의 세트는 복수의 렌즈 셰이딩 적응 값들의 세트들로부터 선택되고, 상기 렌즈 셰이딩 적응 값들의 세트들 각각은 상기 디지털 이미지 센서와 연관된 적외선 컷오프 필터의 상이한 유형들의 조명 컨디션들에 대한 응답에 적어도 부분적으로 기초하여 모델링되는, 렌즈 셰이딩 아티팩트들을 보정하기 위한 방법.
  14. 제12항에 있어서,
    상기 제2 이미지 프로세싱 파이프라인은 조명 컨디션들의 변화를 검출할 때 상기 적어도 하나의 이미지 프레임을 저장하고 분석하도록 구성되는, 렌즈 셰이딩 아티팩트들을 보정하기 위한 방법.
  15. 제14항에 있어서,
    상기 조명 컨디션들의 변화를 검출하는 단계는 자동 화이트 밸런스 값들의 변화를 검출하고 자동 화이트 밸런스 값들이 안정화하도록 대기하는 단계를 포함하는, 렌즈 셰이딩 아티팩트들을 보정하기 위한 방법.
  16. 제15항에 있어서,
    상기 자동 화이트 밸런스 값들이 안정화하도록 대기하는 단계는 상기 자동 화이트 밸런스 값들이 적어도 두개의 이미지 프레임동안 안정 상태로 있는지를 판정하는 단계를 포함하는, 렌즈 셰이딩 아티팩트들을 보정하기 위한 방법.
  17. 프로세서;
    상기 프로세서에 의해 실행가능한 이미지 분석 소프트웨어를 포함하는 메모리;
    미처리 이미지 데이터를 캡쳐하도록 구성된 이미지 센서를 포함하는 이미지 캡쳐 디바이스;
    상기 미처리 이미지 데이터를 수신하고 렌즈 셰이딩 파라미터들의 세트를 이용하여 상기 미처리 이미지 데이터에 렌즈 세이딩 보정을 적용하도록 구성된 제1 이미지 프로세싱 파이프라인; 및
    상기 미처리 이미지 데이터의 적어도 하나의 프레임을 수신하고, 상기 이미지 분석 소프트웨어를 이용하여 상기 적어도 하나의 프레임을 분석하여 상기 적어도 하나의 프레임에 대한 렌즈 셰이딩 적응 함수를 선택하고, 복수의 이미지 프레임에 걸쳐 선택된 렌즈 셰이딩 적응 함수에 기초한 하나 이상의 중간 트랜지션 스텝들을 이용하여 상기 렌즈 세이딩 파라미터들을 조정하여, 조정된 렌즈 셰이딩 파라미터들의 최종 세트를 획득하도록 구성된 제2 이미지 프로세싱 파이프라인을 포함하는 피드 포워드 루프
    를 포함하고,
    상기 제1 이미지 프로세싱 파이프라인은 상기 피드 포워드 루프로부터 중간 조정된 렌즈 셰이딩 파라미터들 및 최종 조정된 렌즈 셰이딩 파라미터들을 피드 포워드 출력들로서 수신하고 상기 중간 및 최종 조정된 렌즈 셰이딩 파라미터들을 상기 미처리 이미지 데이터에 적용하도록 구성되는 전자 디바이스.
  18. 제17항에 있어서,
    상기 하나 이상의 중간 트랜지션 스텝들을 이용하여 상기 이미지 분석 소프트웨어에 의해 상기 렌즈 셰이딩 파라미터들을 조정하는 것은,
    현재 선택된 렌즈 셰이딩 적응 함수와 상기 제2 이미지 프로세싱 파이프라인에 의해 분석된 이전 프레임에 대해 선택된 렌즈 셰이딩 적응 함수 사이의 총 차이를 판정하는 것;
    제1 트랜지션 스텝 동안, 상기 이전 프레임에 대해 선택된 렌즈 셰이딩 적응 함수에 대응하는 렌즈 셰이딩 적응 값들을, 하나 이상의 프레임들의 제1 세트 동안 상기 총 차이의 50 퍼센트만큼, 상기 현재 선택된 렌즈 셰이딩 적응 함수에 대응하는 렌즈 셰이딩 값들 쪽으로 조정하여, 렌즈 셰이딩 적응 값들의 제1 중간 세트를 생성하는 것;
    제2 트랜지션 스텝 동안, 상기 렌즈 셰이딩 적응 값들의 제1 중간 세트를, 상기 하나 이상의 프레임들의 제1 세트에 후속하는 하나 이상의 프레임들의 제2 세트 동안 상기 총 차이의 25 퍼센트만큼, 상기 현재 선택된 렌즈 셰이딩 적응 함수에 대응하는 렌즈 셰이딩 값들 쪽으로 조정하여, 렌즈 셰이딩 적응 값들의 제2 중간 세트를 생성하는 것;
    제3 트랜지션 스텝 동안, 상기 렌즈 셰이딩 적응 값들의 제2 중간 세트를, 상기 하나 이상의 프레임들의 제2 세트에 후속하는 하나 이상의 프레임들의 제3 세트 동안 상기 총 차이의 12.5 퍼센트만큼, 상기 현재 선택된 렌즈 셰이딩 적응 함수에 대응하는 렌즈 셰이딩 값들 쪽으로 조정하여, 렌즈 셰이딩 적응 값들의 제3 중간 세트를 생성하는 것; 및
    제4 트랜지션 스텝 동안, 상기 현재 선택된 렌즈 셰이딩 적응 함수에 대응하는 렌즈 셰이딩 적응 값들을 상기 최종 조정된 렌즈 셰이딩 파라미터들로 설정하는 것
    을 포함하는 전자 디바이스.
  19. 제18항에 있어서,
    상기 제1 이미지 프로세싱 파이프라인은 상기 하나 이상의 프레임들의 제1 세트 동안 상기 렌즈 셰이딩 적응 값들의 제1 중간 세트에 기초하여 상기 미처리 이미지 데이터에 렌즈 셰이딩 보정을 적용하고, 상기 하나 이상의 프레임들의 제2 세트 동안 상기 렌즈 셰이딩 적응 값들의 제2 중간 세트에 기초하여 상기 미처리 이미지 데이터에 렌즈 셰이딩 보정을 적용하고, 상기 하나 이상의 프레임들의 제3 세트 동안 상기 렌즈 셰이딩 적응 값들의 제3 중간 세트에 기초하여 상기 미처리 이미지 데이터에 렌즈 셰이딩 보정을 적용하도록 구성되는 전자 디바이스.
  20. 제17항에 있어서,
    상기 렌즈 셰이딩 적응 함수는 복수의 이용가능한 렌즈 셰이딩 적응 함수로부터 선택되고, 각각의 이용가능한 렌즈 셰이딩 적응 함수는 상이한 유형들의 발광체들에 대한 적색 채널의 렌즈 셰이딩 응답에 대응하는 상기 이미지 캡쳐 디바이스의 렌즈의 광학 중심으로부터의 거리에 기초하여 4차 거듭제곱 다항식으로서 모델링되는 전자 디바이스.
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
KR1020127025799A 2010-06-04 2010-09-20 적응적 렌즈 셰이딩 보정 KR101270851B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/794,632 2010-06-04
US12/794,632 US8228406B2 (en) 2010-06-04 2010-06-04 Adaptive lens shading correction
PCT/US2010/049512 WO2011152848A1 (en) 2010-06-04 2010-09-20 Adaptive lens shading correction

Publications (2)

Publication Number Publication Date
KR20120118081A KR20120118081A (ko) 2012-10-25
KR101270851B1 true KR101270851B1 (ko) 2013-06-05

Family

ID=43301997

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127025799A KR101270851B1 (ko) 2010-06-04 2010-09-20 적응적 렌즈 셰이딩 보정

Country Status (7)

Country Link
US (1) US8228406B2 (ko)
EP (1) EP2540086A1 (ko)
JP (1) JP5674925B2 (ko)
KR (1) KR101270851B1 (ko)
CN (1) CN102131040B (ko)
TW (1) TWI442767B (ko)
WO (1) WO2011152848A1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101594258B1 (ko) 2014-09-24 2016-02-16 주식회사 넥서스칩스 컬러/조도 센서를 이용한 카메라 영상 보정/제어 장치 및 방법
KR20160023242A (ko) * 2014-08-21 2016-03-03 엘아이지넥스원 주식회사 렌즈에 의한 불균일 영상 보정 장치 및 그 방법
KR20160098540A (ko) 2015-02-09 2016-08-19 주식회사 넥서스칩스 컬러 테이블 생성 장치, 카메라 영상 보정/제어 장치 및 그 방법

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8325248B2 (en) 2010-06-04 2012-12-04 Apple Inc. Dual processing of raw image data
KR20110135720A (ko) * 2010-06-11 2011-12-19 삼성전자주식회사 촬영 환경에 따른 렌즈 쉐이딩 보상 테이블을 생성하기 위한 장치 및 방법
US8593548B2 (en) * 2011-03-28 2013-11-26 Aptina Imaging Corporation Apparataus and method of automatic color shading removal in CMOS image sensors
JP6004221B2 (ja) * 2012-03-22 2016-10-05 三星電子株式会社Samsung Electronics Co.,Ltd. 画像処理装置
US9077943B2 (en) 2012-05-31 2015-07-07 Apple Inc. Local image statistics collection
US9031319B2 (en) 2012-05-31 2015-05-12 Apple Inc. Systems and methods for luma sharpening
US9014504B2 (en) 2012-05-31 2015-04-21 Apple Inc. Systems and methods for highlight recovery in an image signal processor
US8953882B2 (en) 2012-05-31 2015-02-10 Apple Inc. Systems and methods for determining noise statistics of image data
US9025867B2 (en) 2012-05-31 2015-05-05 Apple Inc. Systems and methods for YCC image processing
US9142012B2 (en) 2012-05-31 2015-09-22 Apple Inc. Systems and methods for chroma noise reduction
US8917336B2 (en) 2012-05-31 2014-12-23 Apple Inc. Image signal processing involving geometric distortion correction
US11089247B2 (en) 2012-05-31 2021-08-10 Apple Inc. Systems and method for reducing fixed pattern noise in image data
US9743057B2 (en) 2012-05-31 2017-08-22 Apple Inc. Systems and methods for lens shading correction
US9105078B2 (en) 2012-05-31 2015-08-11 Apple Inc. Systems and methods for local tone mapping
US8872946B2 (en) 2012-05-31 2014-10-28 Apple Inc. Systems and methods for raw image processing
US9332239B2 (en) 2012-05-31 2016-05-03 Apple Inc. Systems and methods for RGB image processing
US8817120B2 (en) 2012-05-31 2014-08-26 Apple Inc. Systems and methods for collecting fixed pattern noise statistics of image data
US9030571B2 (en) * 2012-07-11 2015-05-12 Google Inc. Abstract camera pipeline for uniform cross-device control of image capture and processing
US9413981B2 (en) * 2012-10-19 2016-08-09 Cognex Corporation System and method for determination and adjustment of camera parameters using multi-gain images
JP5646705B1 (ja) * 2013-07-18 2014-12-24 アキュートロジック株式会社 画像処理装置、画像処理方法、及び、画像処理プログラム
US20150130972A1 (en) * 2013-11-11 2015-05-14 Omnivision Technologies, Inc. Self-Adaptive Lens Shading Calibration and Correction
KR102159991B1 (ko) * 2013-12-27 2020-09-25 삼성전자주식회사 렌즈 쉐이딩 보정 방법, 그것을 이용하는 영상 신호 처리 장치 및 이미지 센서 시스템
JP2015222400A (ja) * 2014-05-23 2015-12-10 株式会社ジャパンディスプレイ 表示装置、表示システム及び画像処理回路
US9270961B2 (en) 2014-07-21 2016-02-23 Samsung Electronics Co., Ltd. Color shading correction using color channel consistency
JP6428072B2 (ja) * 2014-09-11 2018-11-28 株式会社ソシオネクスト 画像処理方法および画像処理装置
US9186909B1 (en) * 2014-09-26 2015-11-17 Intel Corporation Method and system of lens shading color correction using block matching
US9367916B1 (en) * 2014-12-10 2016-06-14 Intel Corporation Method and system of run-time self-calibrating lens shading correction
TWI565296B (zh) * 2015-02-09 2017-01-01 百辰光電股份有限公司 相機模組校正方法及其系統
US10298863B2 (en) * 2015-09-08 2019-05-21 Apple Inc. Automatic compensation of lens flare
CN105959511B (zh) * 2016-05-18 2019-02-05 珠海市杰理科技股份有限公司 镜头阴影校正方法和系统
CN106101322A (zh) * 2016-08-11 2016-11-09 深圳市金立通信设备有限公司 一种终端及其制造工艺
EP4254035A3 (en) * 2016-10-12 2023-12-06 Samsung Electronics Co., Ltd. Method, apparatus, and recording medium for processing image
KR101786553B1 (ko) * 2017-03-02 2017-10-17 주식회사 에스카 시정상태의 변화에 강인한 복합 필터링 기반의 오토포커싱 기능을 갖는 감시카메라 및 그것이 적용된 영상감시시스템
US11095865B2 (en) * 2017-07-24 2021-08-17 Hewlett-Packard Development Company, L.P. Color balance in electronic devices
CN108111785B (zh) * 2017-12-28 2020-05-15 Oppo广东移动通信有限公司 图像处理方法及装置、计算机可读存储介质和计算机设备
US10754149B2 (en) * 2018-04-20 2020-08-25 Amd (Shanghai) Co., Ltd. Efficient radial lens shading correction
KR102610542B1 (ko) * 2019-03-07 2023-12-07 삼성전자주식회사 적외선 센서를 이용하여 이미지 데이터의 색상을 조절하기 위한 전자 장치 및 방법
TWI741429B (zh) * 2019-12-04 2021-10-01 晶睿通訊股份有限公司 用於提高精準度的影像分析方法及其相關影像監控設備
CN111860530A (zh) * 2020-07-31 2020-10-30 Oppo广东移动通信有限公司 电子设备、数据处理方法及相关装置
CN114205487A (zh) 2020-08-28 2022-03-18 超威半导体公司 内容自适应镜头阴影校正方法和装置
CN113099192A (zh) * 2021-04-08 2021-07-09 天津天地伟业智能安全防范科技有限公司 一种isp调试方法、装置及电子设备
CN114007055B (zh) * 2021-10-26 2023-05-23 四川创安微电子有限公司 图像传感器镜头阴影校正方法及装置
US11902671B2 (en) 2021-12-09 2024-02-13 Fotonation Limited Vehicle occupant monitoring system including an image acquisition device with a rolling shutter image sensor
US11941897B2 (en) 2021-12-09 2024-03-26 Fotonation Limited Vehicle occupant monitoring system including an image acquisition device with a rolling shutter image sensor
US11778315B2 (en) 2021-12-09 2023-10-03 Fotonation Limited Vehicle occupant monitoring system including an image acquisition device with a rolling shutter image sensor
WO2023104376A1 (en) * 2021-12-09 2023-06-15 Fotonation Limited Vehicle occupant monitoring system including an image acquisition device with a rolling shutter image sensor

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070070669A (ko) * 2005-12-29 2007-07-04 엠텍비젼 주식회사 이미지 프로세서, 렌즈 셰이딩 보정 장치 및 그 방법
US20080074515A1 (en) 2006-09-25 2008-03-27 Fujifilm Corporation Image taking apparatus
JP2008118491A (ja) 2006-11-07 2008-05-22 Sharp Corp 画像処理装置、固体撮像装置、電子機器、画像処理方法、及び画像処理プログラム
KR20090079241A (ko) * 2006-10-17 2009-07-21 퀄컴 인코포레이티드 공유된 산술 논리 유닛을 구비한 그래픽 처리 유닛

Family Cites Families (80)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5008739A (en) 1989-02-13 1991-04-16 Eastman Kodak Company Real-time digital processor for producing full resolution color signals from a multi-color image sensor
US5512961A (en) 1993-03-24 1996-04-30 Apple Computer, Inc. Method and system of achieving accurate white point setting of a CRT display
US5714842A (en) 1995-07-21 1998-02-03 Apple Computer, Inc. Automatic cutoff control for a DC coupled CRT video drive
US5714207A (en) 1997-02-07 1998-02-03 Seagate Technology, Inc. Method of laser texturing glass or glass-ceramic substrates for magnetic recording media
US5853820A (en) 1997-06-23 1998-12-29 Seagate Technology, Inc. Controlled laser texturing glass-ceramic substrates for magnetic recording media
WO1999005666A1 (en) 1997-07-25 1999-02-04 Apple Computer, Inc. System and method for generating high-luminance windows on a computer display device
US5861196A (en) 1997-09-25 1999-01-19 Seagate Technology, Inc. Laser texturing a glass or glass-ceramic substrate
US6285344B1 (en) 1998-03-13 2001-09-04 Apple Computer, Inc. Automatic adjustment of color balance and other display parameters in digital displays
US6327641B1 (en) 1998-03-31 2001-12-04 Texas Instruments Incorporated Method of implementing a geometry per wedge (GPW) based headerless solution in a disk drive formatter and a computer program product incorporating the same
US6370273B1 (en) 1998-04-10 2002-04-09 Flashpoint Technology, Inc. Method and system for tiled image data decompression
JP4384747B2 (ja) 1998-08-24 2009-12-16 マグナチップセミコンダクター有限会社 ビデオカメラのブラックレベル調整装置
US7412654B1 (en) 1998-09-24 2008-08-12 Apple, Inc. Apparatus and method for handling special windows in a display
US6400471B1 (en) 1999-02-11 2002-06-04 Flashpoint Technology, Inc. Flexible architecture for image processing
US6542198B1 (en) 1999-03-30 2003-04-01 Ati International Srl Method and apparatus for optimizing video playback at arbitrary refresh rates
US6618508B1 (en) 1999-07-09 2003-09-09 Ati International Srl Motion compensation device
US6957511B1 (en) 1999-11-12 2005-10-25 Seagate Technology Llc Single-step electromechanical mechanical polishing on Ni-P plated discs
US6714720B1 (en) 2000-03-06 2004-03-30 Ati International Srl Method and apparatus for storing multi-media data
JP3897520B2 (ja) 2000-07-11 2007-03-28 キヤノン株式会社 撮像装置および撮像装置の制御方法
US6866883B2 (en) 2000-07-25 2005-03-15 Seagate Technology Llc Mechanical texturing of sol-gel—coated substrates for magnetic recording media
US6864042B1 (en) 2000-07-25 2005-03-08 Seagate Technology Llc Patterning longitudinal magnetic recording media with ion implantation
US6746754B1 (en) 2000-07-25 2004-06-08 Seagate Technology Llc Mechanical texturing of sol-gel-coated substrates for magnetic recording media
US6687295B1 (en) 2000-07-27 2004-02-03 Ati International Method and apparatus for motion estimation for encoding sequential frames
US6627254B1 (en) 2000-09-20 2003-09-30 Seagate Technology Llc Method of manufacturing a recording media with mechanically patterned landing zone
US6707459B1 (en) 2001-02-01 2004-03-16 Apple Computer, Inc. Adjustment of color values for optimized image processing
US20030065495A1 (en) 2001-03-16 2003-04-03 Shih-Fu Lee Disc drive head-media spacing modeling and applications
US7215813B2 (en) 2001-12-03 2007-05-08 Apple Computer, Inc. Method and apparatus for color correction
US6642068B1 (en) 2002-05-03 2003-11-04 Donald J. Hayes Method for producing a fiber optic switch
US7379105B1 (en) 2002-06-18 2008-05-27 Pixim, Inc. Multi-standard video image capture device using a single CMOS image sensor
US7028743B1 (en) 2002-06-28 2006-04-18 Seagate Technology Llc High field contrast magnetic stampers/imprinters for contact patterning of magnetic media
US20040255338A1 (en) 2003-06-13 2004-12-16 Apple Computer, Inc. Interface for sending synchronized audio and video data
US7353284B2 (en) 2003-06-13 2008-04-01 Apple Inc. Synchronized transmission of audio and video data from a computer to a client via an interface
US7668099B2 (en) 2003-06-13 2010-02-23 Apple Inc. Synthesis of vertical blanking signal
CN1259795C (zh) * 2003-07-25 2006-06-14 金宝电子工业股份有限公司 高动态范围的数字视讯信号处理电路及其中的电路元件
US7009391B2 (en) 2003-10-15 2006-03-07 Seagate Technology Llc High throughput missing pattern detector for servo printed recording media
JP4321252B2 (ja) * 2003-12-16 2009-08-26 コニカミノルタオプト株式会社 撮像装置
JP3760943B2 (ja) 2004-01-20 2006-03-29 コニカミノルタフォトイメージング株式会社 撮像装置および動画のノイズ処理方法
US7382711B2 (en) 2004-02-19 2008-06-03 Seagate Technology Llc Method and apparatus for constant linear velocity electron beam substrate processing
US6979831B2 (en) 2004-02-19 2005-12-27 Seagate Technology Llc Method and apparatus for a formatter following electron beam substrate processing system
US7519229B2 (en) 2004-03-30 2009-04-14 Apple, Inc. Video coding system providing separate coding chains for dynamically selected small-size or full-size playback
US7609305B2 (en) 2004-04-06 2009-10-27 Samsung Electronics Co., Ltd. Methods and systems for anti shading correction in image sensors
EP1594307A3 (en) 2004-05-07 2006-03-22 Nikon Corporation Clamp level adjusting apparatus, electronic camera, image processing apparatus, and image processing program
US20100110222A1 (en) 2004-09-03 2010-05-06 Texas Instruments Incorporated Digital camera front-end architecture
JP4777038B2 (ja) * 2004-10-22 2011-09-21 キヤノン株式会社 撮像装置および画像処理方法
US7617481B2 (en) 2004-11-30 2009-11-10 Avanade Holdings Llc Prescriptive architecture for application development
US20060117009A1 (en) 2004-11-30 2006-06-01 Joe Matthew D Declarative aspects and aspect containers for application development
JP4636895B2 (ja) 2005-02-07 2011-02-23 三洋電機株式会社 電子カメラ
JP4134991B2 (ja) 2005-02-16 2008-08-20 三菱電機株式会社 撮像装置および撮像装置を備えた携帯電話
US8385427B2 (en) 2005-04-15 2013-02-26 Apple Inc. Reduced resolution video decode
US8358701B2 (en) 2005-04-15 2013-01-22 Apple Inc. Switching decode resolution during video decoding
US20070074038A1 (en) 2005-09-29 2007-03-29 International Business Machines Corporation Method, apparatus and program storage device for providing a secure password manager
US8098256B2 (en) 2005-09-29 2012-01-17 Apple Inc. Video acquisition with integrated GPU processing
US7596280B2 (en) 2005-09-29 2009-09-29 Apple Inc. Video acquisition with integrated GPU processing
US7711200B2 (en) 2005-09-29 2010-05-04 Apple Inc. Video acquisition with integrated GPU processing
JP5040662B2 (ja) * 2006-02-03 2012-10-03 株式会社ニコン 画像処理装置、画像処理方法、および画像処理プログラム
JP4522956B2 (ja) * 2006-02-15 2010-08-11 シャープ株式会社 カメラシステム制御装置、そのプログラムおよびコンピュータ読取可能な記録媒体、カメラシステム、ならびにカメラシステムの制御方法
US20070211154A1 (en) 2006-03-13 2007-09-13 Hesham Mahmoud Lens vignetting correction algorithm in digital cameras
FR2899696B1 (fr) 2006-04-06 2008-06-20 Dxo Labs Sa Procede de traitement d'un phenomene d'eclairement relatif sur une image numerique et systeme de traitement associe
US7693341B2 (en) 2006-04-21 2010-04-06 Apple Inc. Workflows for color correcting images
US20070263099A1 (en) 2006-05-09 2007-11-15 Pixim Inc. Ambient Light Rejection In Digital Video Images
JP4743007B2 (ja) 2006-06-16 2011-08-10 ソニー株式会社 画像処理装置および画像処理方法、記録媒体、並びに、プログラム
JP4925271B2 (ja) 2006-08-21 2012-04-25 株式会社メガチップス 一眼レフデジタルカメラにおける連続撮像方法
US7773127B2 (en) 2006-10-13 2010-08-10 Apple Inc. System and method for RAW image processing
US7893975B2 (en) 2006-10-13 2011-02-22 Apple Inc. System and method for processing images using predetermined tone reproduction curves
EP1962517A1 (en) 2007-02-21 2008-08-27 STMicroelectronics (Research & Development) Limited Error reduction in image sensors
US7760258B2 (en) 2007-03-07 2010-07-20 Altasens, Inc. Apparatus and method for stabilizing image sensor black level
US8306348B2 (en) 2007-04-24 2012-11-06 DigitalOptics Corporation Europe Limited Techniques for adjusting the effect of applying kernels to signals to achieve desired effect on signal
US8947599B2 (en) 2007-05-15 2015-02-03 Apple Inc. Method and apparatus for adjusting chroma and luma for a video signal
US7733391B2 (en) 2007-05-29 2010-06-08 Nokia Corporation Method and system for black-level correction on digital image data
US8509569B2 (en) 2008-02-11 2013-08-13 Apple Inc. Optimization of image processing using multiple processing units
US8345775B2 (en) 2008-04-14 2013-01-01 Apple Inc. System and method for masking visual compression artifacts in decoded video streams
US8194159B2 (en) 2008-04-28 2012-06-05 Omnivision Technologies, Inc. System and method for lens shading correction of an image sensor using splines
US8405727B2 (en) 2008-05-01 2013-03-26 Apple Inc. Apparatus and method for calibrating image capture devices
JP2009296148A (ja) * 2008-06-03 2009-12-17 Olympus Corp 撮像装置
KR20100001807A (ko) * 2008-06-27 2010-01-06 삼성전기주식회사 이미지 처리 장치 및 방법
JP5164707B2 (ja) * 2008-07-17 2013-03-21 キヤノン株式会社 位相差検出装置、撮像装置、位相差検出装置の信号レベル補正方法、信号レベル補正プログラム
US8149279B2 (en) 2008-08-18 2012-04-03 Apple Inc. Apparatus and method for compensating for variations in digital cameras
US8564688B2 (en) 2008-09-12 2013-10-22 Aptina Imaging Corporation Methods, systems and apparatuses for white balance calibration
US9135889B2 (en) 2008-10-14 2015-09-15 Apple Inc. Color correction of electronic displays
US8472712B2 (en) * 2009-10-20 2013-06-25 Apple Inc. System and method for applying lens shading correction during image processing
US8314865B2 (en) * 2009-12-23 2012-11-20 Nokia Corporation Lens shading correction

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070070669A (ko) * 2005-12-29 2007-07-04 엠텍비젼 주식회사 이미지 프로세서, 렌즈 셰이딩 보정 장치 및 그 방법
US20080074515A1 (en) 2006-09-25 2008-03-27 Fujifilm Corporation Image taking apparatus
KR20090079241A (ko) * 2006-10-17 2009-07-21 퀄컴 인코포레이티드 공유된 산술 논리 유닛을 구비한 그래픽 처리 유닛
JP2008118491A (ja) 2006-11-07 2008-05-22 Sharp Corp 画像処理装置、固体撮像装置、電子機器、画像処理方法、及び画像処理プログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160023242A (ko) * 2014-08-21 2016-03-03 엘아이지넥스원 주식회사 렌즈에 의한 불균일 영상 보정 장치 및 그 방법
KR101637552B1 (ko) * 2014-08-21 2016-07-07 엘아이지넥스원 주식회사 렌즈에 의한 불균일 영상 보정 장치 및 그 방법
KR101594258B1 (ko) 2014-09-24 2016-02-16 주식회사 넥서스칩스 컬러/조도 센서를 이용한 카메라 영상 보정/제어 장치 및 방법
KR20160098540A (ko) 2015-02-09 2016-08-19 주식회사 넥서스칩스 컬러 테이블 생성 장치, 카메라 영상 보정/제어 장치 및 그 방법

Also Published As

Publication number Publication date
KR20120118081A (ko) 2012-10-25
JP2013527730A (ja) 2013-06-27
TWI442767B (zh) 2014-06-21
CN102131040B (zh) 2013-12-18
CN102131040A (zh) 2011-07-20
EP2540086A1 (en) 2013-01-02
WO2011152848A1 (en) 2011-12-08
JP5674925B2 (ja) 2015-02-25
TW201145993A (en) 2011-12-16
US8228406B2 (en) 2012-07-24
US20110298944A1 (en) 2011-12-08

Similar Documents

Publication Publication Date Title
KR101270851B1 (ko) 적응적 렌즈 셰이딩 보정
US8325248B2 (en) Dual processing of raw image data
US8319861B2 (en) Compensation for black level changes
US7583297B2 (en) Image processing method, image processing apparatus, and computer program used therewith
JP6717858B2 (ja) 欠陥イメージセンサ素子の較正
RU2491760C2 (ru) Устройство для обработки изображения, способ обработки изображения и программа
US10063826B2 (en) Image processing apparatus and image processing method thereof
US8629919B2 (en) Image capture with identification of illuminant
JP4894907B2 (ja) 撮像装置、撮像処理方法及びプログラム
US8810681B2 (en) Image processing apparatus and image processing method
JP2005223898A (ja) 画像処理方法及び撮像装置
JP2014014044A (ja) 画像処理装置、画像処理方法、および、プログラム
JP4539432B2 (ja) 画像処理装置および撮像装置
US20130057725A1 (en) Image processing apparatus and image processing method
JP4947624B2 (ja) ホワイトバランス調整方法
JP2015005927A (ja) 画像処理装置およびその制御方法
JP2015211233A (ja) 画像処理装置および画像処理装置の制御方法
JP5956844B2 (ja) 画像処理装置およびその制御方法
JP4960597B2 (ja) ホワイトバランス補正装置及び方法、及び撮像装置
JP2018186363A (ja) 撮像装置
JP6583477B2 (ja) 画像処理装置及び撮像装置
JP2005033332A (ja) ホワイトバランス制御装置及び電子機器
KR101442607B1 (ko) 색온도 조절 필터를 이용한 영상의 색온도 제어 장치 및방법
JP5620796B2 (ja) 撮像装置及び撮像方法

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160427

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170504

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180427

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190429

Year of fee payment: 7