KR20080077987A - 입력 이미지 내의 비네팅을 보정하는 컴퓨터 구현 프로세스 - Google Patents

입력 이미지 내의 비네팅을 보정하는 컴퓨터 구현 프로세스 Download PDF

Info

Publication number
KR20080077987A
KR20080077987A KR1020087014748A KR20087014748A KR20080077987A KR 20080077987 A KR20080077987 A KR 20080077987A KR 1020087014748 A KR1020087014748 A KR 1020087014748A KR 20087014748 A KR20087014748 A KR 20087014748A KR 20080077987 A KR20080077987 A KR 20080077987A
Authority
KR
South Korea
Prior art keywords
vignetting
segment
image
pixel
segmentation
Prior art date
Application number
KR1020087014748A
Other languages
English (en)
Other versions
KR101330361B1 (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 KR20080077987A publication Critical patent/KR20080077987A/ko
Application granted granted Critical
Publication of KR101330361B1 publication Critical patent/KR101330361B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/90Dynamic range modification of images or parts thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • 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/81Camera processing pipelines; Components thereof for suppressing or minimising disturbance in the image signal generation
    • 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"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20004Adaptive image processing
    • G06T2207/20012Locally adaptive
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20016Hierarchical, coarse-to-fine, multiscale or multiresolution image processing; Pyramid transform

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

이미지의 비네팅 함수를 결정하고 그 함수를 이용하여 비네팅을 보정하는 시스템 및 프로세스가 제공된다. 이미지는 임의의 이미지일 수 있고 다른 이미지들은 요구되지 않는다. 본 시스템 및 방법은 이용 가능한 정보의 이용을 최대화하기 위해 텍스처(textured) 세그먼트 및 언텍스처(untextured) 세그먼트 양쪽 모두를 처리하도록 설계되어 있다. 이미지로부터 비네팅 정보를 추출하기 위해, 비네팅 추정을 위한 신뢰성 있는 데이터를 갖는 이미지 세그먼트들을 찾아내는(locate) 세그먼트화 기법들이 채용된다. 각 이미지 세그먼트 내에서, 본 시스템 및 프로세스는 비네팅의 주파수 특성 및 물리적 속성을 이용하여 그것을 명암도 변화의 다른 원인들과 구별한다. 세그먼트들로부터 획득된 비네팅 데이터는 추정시 강건성(robustness)을 증진하기 위해 제공된 신뢰도 측정에 따라 가중된다.
비네팅, 세그먼트

Description

입력 이미지 내의 비네팅을 보정하는 컴퓨터 구현 프로세스{SINGLE-IMAGE VIGNETTING CORRECTION}
비네팅(vignetting)은 이미지의 중심으로부터 떨어질수록 밝기가 감쇠하는 현상을 지칭하는 것으로, 사진 촬영에서 일반적으로 나타나는 아티팩트(artifact)이다. 아마도 낮은 레벨에서는 보통의 관찰자(average viewer)가 보기에 불쾌하지는 않지만, 그것은 신(scene)을 분석하기 위해 정확한 명암도(intensity) 데이터에 의지하는 컴퓨터 비전 알고리즘들(computer vision algorithms)을 크게 손상시킬 수 있다. 비네팅 일그러짐(vignetting distortions)이 특히 해로울 수 있는 응용들은 명암으로부터의 형상 복구(shape from shading) 등의 광도 측정 방법(photometric methods), 물체 인식 등의 외관 기반 기법(appearance-based techniques), 및 이미지 모자이킹(image mosaicing)을 포함한다.
몇몇 메커니즘이 비네팅 효과의 원인이 될 수 있다. 일부는 카메라 렌즈들의 광학적 특성들로부터 발생하고, 그중 가장 두드러진 것은 사입사 조명 저하(off-axis illumination fall-off) 또는 cos4 법칙(cos4 law)이다. 비네팅에의 이들 기여들은 광학축으로부터 점점 증가하는 각도로부터 보았을 때의 렌즈의 단축(foreshortening)에 기인한다. 비네팅의 다른 원인(source)들은 사실상 기하학 적이다. 예를 들면, 광학축에 대해 비스듬한 각도에서 도달하는 광은 시야조리개(field stop) 또는 렌즈 림(lens rim)에 의해 부분적으로 차단된다.
이미지에서의 비네팅 효과를 결정하기 위해서, 가장 직접적인 접근법은, 밝기 변화만이 비네팅에 기인할 수 있도록, 균일한 신 영역(uniform scene region)에 의해 완전히 스팬(span)되는 이미지를 캡처하는 것을 수반한다. 그러한 보정 이미지(calibration image)에서는, 광학축 상의 픽셀에 대한 명암도의 비율이 비네팅 함수를 기술한다. 그러나, 이러한 접근법에 대한 적당한 이미징 조건들은 불균일한 조명 및 카메라 틸트로 인해 생성하기가 힘겨울 수 있고, 비네팅 측정들은 동일한 카메라 설정 하에서 카메라에 의해 캡처된 이미지들에 대해서만 유효하다. 더욱이, 보정 이미지는 카메라가 가까이에(at hand) 있는 경우에만 기록될 수 있고; 따라서, 이 접근법은, 웹으로부터 다운로드된 이미지와 같이, 미지의 카메라에 의해 캡처된 이미지를 보정하기 위해 사용될 수는 없다.
비네팅 함수는 대안적으로 임의의 정지 신(static scene)의 겹치는 뷰들(overlapping views)을 갖는 이미지 시퀀스들로부터 계산될 수 있다. 이러한 접근법에서는, 먼저 겹치는 이미지 영역들에서 포인트 대응점들(point correspondences)이 결정된다. 주어진 신 포인트(scene point)는 각 이미지에서 상이한 위치를 가지므로, 그것의 밝기는 비네팅에 의해 상이하게 감쇠될 수 있다. 모든 대응점들로부터의 집계 감쇠 정보로부터, 비네팅 함수는 신에 대한 가정 없이 정확히 복구될 수 있다.
이들 이전의 접근법들은 겹치는 이미지들의 수집 또는 보정 신의 이미지를 필요로 한다. 그러나, 실제로는 종종 임의의 신의 단일 이미지만 이용 가능하다. 이전의 기법들은 신 휘도(scene radiance)는 같지만 밝기의 감쇠는 상이한 픽셀들로부터 비네팅 보정을 위한 정보를 획득한다. 단일의 임의의 입력 이미지에 대해서는, 이 정보를 획득하기가 힘들어진다. 그 이유는 동일한 신 휘도를 가지면서도 비네팅 감쇠에서는 분명히 상이한 픽셀들을 식별하기는 어렵기 때문이다.
<발명의 요약>
본 발명은 이미지 내의 비네팅에 대하여 바로 그 이미지를 이용하여 보정하는 시스템 및 프로세스에 관한 것이다. 이미지 내의 이용 가능한 정보의 이용을 최대화하기 위해, 이 기법은 텍스처(textured) 영역 및 언텍스처(untextured) 영역 양쪽 모두로부터 비네팅 정보를 추출한다. 주어진 영역으로부터 비네팅 정보를 추출하는 데 있어서는, 텍스처 및 기타 명암도 변화의 원인들의 영향을 감소시키기 위한 물리적 비네팅 특성이 이용된다. 또한 상이한 이미지 영역들에 걸쳐서 일관성을 보장하기 위해 그 영역들로부터의 비네팅 정보가 이용된다. 그 결과, 비네팅 함수 추정에 적합한 큰 이미지 영역들이 식별된다. 세그먼트화(segmentation)에 대한 비네팅의 악영향에 대항하기 위해, 본 시스템 및 방법은 비네팅 함수의 점진적으로 정련된 추정들에 관하여 이미지를 반복적으로 다시 세그먼트화(re-segment)한다. 또한, 신뢰성 있는 비네팅 데이터의 수집을 향상시키는 방식으로 세그먼트화 스케일의 공간적 변화(spatial variation)들이 이용된다.
일반적으로, 본 비네팅 보정 시스템 및 프로세스는 먼저 미리 정해진 물리적 비네팅 특성과 일관되고 다른 세그먼트들에서 관찰되는 비네팅에 합치하는 비네팅 을 나타내는 신뢰성 있는 세그먼트들을 생성하는 공간적으로 변화하는 세그먼트화 스케일을 이용하여 입력 이미지를 세그먼트화하는 것을 수반한다. 그 후 신뢰성 있는 세그먼트들을 이용하여 각 픽셀에 대한 보정된 명암도를 정의하는 비네팅 함수가 입력 이미지에 대하여 추정된다. 이 최후로 계산된 비네팅 함수 추정을 입력 이미지의 각 픽셀에 적용하여 현 정련된 이미지(current refined image)를 생성한다. 상기 세그먼트화 및 비네팅 함수 추정은 상기 입력 이미지 대신 상기 현 정련된 이미지를 이용하여 반복되고 그 결과의 추정을 상기 입력 이미지에 적용하여 새로운 현 정련된 이미지를 생성한다. 이것은 비네팅 함수 추정이 수렴하였다고 판정될 때까지 계속된다. 그 시점에서 최후로 생성된 현 정련된 이미지는 최종 비네팅 보정된 이미지로서 지정된다.
입력 이미지 또는 현 정련된 이미지의 세그먼트화는 본 시스템 및 프로세스의 일 실시예에서 먼저 이미지를 미리 정해진 초기 세그먼트화 스케일로 세그먼트화함으로써 달성된다. 그 후, 각 세그먼트에 대하여, 고려중인 세그먼트가 물리적 비네팅 특성과의 일관성을 나타내고 다른 세그먼트들에서 관찰되는 비네팅에 합치하는 정도를 나타내는 신뢰도 팩터(reliability factor)가 계산된다. 또한, 고려중인 세그먼트의 신뢰도 팩터가 그 세그먼트가 비네팅 추정을 위해 수용 가능(acceptable)함을 나타내는 미리 정해진 신뢰도 임계치를 초과하는지가 판정된다. 신뢰도 팩터가 신뢰도 임계치를 초과하지 않을 때는 언제나, 고려중인 세그먼트는 점점 더 미세한 세그먼트화 스케일로 재귀적으로 세그먼트화되고, 이는 그 결과의 보다 작은 세그먼트들 각각이 신뢰도 임계치를 초과하는 신뢰도 팩터를 갖거 나 또는 미리 정해진 최소 세그먼트 사이즈보다 작아질 때까지 행해진다. 신뢰도 임계치를 초과하는 신뢰도 팩터를 갖는 것으로 판정되고 적어도 최소 세그먼트 사이즈만큼 큰 세그먼트들은 신뢰성 있는 세그먼트들인 것으로 지정된다.
고려중인 세그먼트를 재귀적으로 세그먼트화하는 한 가지 방법은 그 세그먼트에 대해 최후로 이용된 것보다 더 미세한 세그먼트화 스케일을 이용하여 세그먼트를 분할하여 복수의 보다 작은 세그먼트들을 생성하는 것을 수반한다. 생성된 각각의 보다 작은 세그먼트에 대하여, 그것의 신뢰도 팩터가 계산되고 그 팩터가 신뢰도 임계치를 초과하는지가 판정된다. 고려중인 보다 작은 세그먼트의 신뢰도 팩터가 신뢰도 임계치를 초과하지 않을 때는 언제나, 그 보다 작은 세그먼트의 사이즈가 미리 정해진 최소 세그먼트 사이즈보다 작은지가 판정된다. 만일 고려중인 세그먼트가 최소 세그먼트 사이즈를 초과하면, 그 세그먼트에 대하여 전술한 것이 반복된다.
배경기술 단락에서 설명된 기존 비네팅 보정 방식들에서의 전술한 한계는 본 발명에 따른 시스템 및 프로세스의 특정 구현에 의해 해결될 수 있지만, 이 시스템 및 프로세스는 단지 지적된 불리점들 중 어떤 것 또는 전부를 해결하는 구현들에 결코 제한되지 않는다는 것에 유의한다. 오히려, 본 시스템 및 프로세스는 뒤따르는 설명들로부터 분명해지는 바와 같이 훨씬 더 폭넓은 응용을 갖는다.
이 요약은 아래 상세한 설명에서 더 설명되는 개념들 중 선택된 것을 단순한 형태로 소개하기 위해 제공된다는 것에 유의해야 할 것이다. 이 요약은 청구된 내용의 중요한 특징들 또는 필수적인 특징들을 식별하기 위해 의도된 것도 아니고, 청구된 내용의 범위를 판정하는 데 도움을 주기 위해 의도된 것도 아니다. 방금 설명한 이익들 외에도, 본 발명의 다른 이점들은 이하에서 뒤따르는 상세한 설명을 그에 동반하는 도면들과 관련하여 참조하였을 때 명백해질 것이다.
본 발명의 특정 특징들, 양태들, 및 이점들은 다음의 설명, 부속된 청구항들, 및 첨부 도면들에 관련하여 더욱 잘 이해될 것이다.
도 1은 본 발명을 구현하기 위한 예시적인 시스템을 구성하는 범용 컴퓨팅 장치를 도시하는 도면이다.
도 2는 본 발명에 따라 이미지 내의 비네팅을 바로 그 이미지 자체를 이용하여 보정하는 일반화된 프로세스를 도시하는 순서도이다.
도 3은 강-바이스(Kang-Weiss) 비네팅 모델 틸트 팩터와 연관된 기하학을 예시하는 도면이다.
도 4는 본 발명에 따라 비네팅 보정 시스템의 일 실시예를 구성하는 컴퓨터 프로그램 모듈들을 도시하는 도면이다.
도 5A 및 5B는 도 4의 비네팅 보정 시스템을 구현하는 한 가지 방법을 나타내는 이미지 내의 비네팅을 보정하는 프로세스를 도시하는 연속적인 순서도이다.
본 발명의 실시예들에 대한 이하의 설명에서는 본 명세서의 일부를 구성하고 본 발명이 실시될 수 있는 특정 실시예들이 예시로서 도시되어 있는 첨부 도면들을 참조한다. 본 발명의 범위에서 벗어나지 않고 다른 실시예들이 이용될 수도 있고 구조적 변경들이 행해질 수도 있다는 것을 이해할 것이다.
1.0 컴퓨팅 환경
본 발명의 실시예들에 대한 설명을 제공하기 전에, 본 발명의 부분들이 구현될 수 있는 적합한 컴퓨팅 환경에 대한 일반적이 설명이 제공될 것이다. 도 1은 적합한 컴퓨팅 환경(100)의 일례를 예시한다. 컴퓨팅 환경(100)은 적합한 컴퓨팅 환경의 일례에 불과하며, 본 발명의 용도 또는 기능성의 범위에 관해 어떤 제한을 암시하고자 하는 것이 아니다. 컴퓨터 환경(100)은 예시적인 운영 환경(100)에서 도시된 컴포넌트들 중 임의의 하나 또는 그 컴포넌트들의 임의의 조합과 관련하여 어떤 의존성 또는 요구사항을 갖는 것으로 해석되어서도 안 된다.
본 발명은 다수의 기타 범용 또는 특수 목적의 컴퓨팅 시스템 환경 또는 구성과 함께 동작한다. 본 발명과 함께 사용하기에 적합할 수 있는 잘 알려진 컴퓨팅 시스템, 환경 및/또는 구성의 예로는 퍼스널 컴퓨터, 서버 컴퓨터, 핸드-헬드 또는 랩톱 장치, 멀티프로세서 시스템, 마이크로프로세서 기반 시스템, 셋톱 박스, 프로그램가능한 가전제품, 네트워크 PC, 미니컴퓨터, 메인프레임 컴퓨터, 상기 시스템들이나 장치들 중 임의의 것을 포함하는 분산 컴퓨팅 환경, 기타 등등이 있지만 이에 제한되는 것은 아니다.
본 발명은 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터 실행가능 명령어의 일반적인 컨텍스트에서 기술될 수 있다. 일반적으로, 프로그램 모듈은 특정 태스크를 수행하거나 특정 추상 데이터 유형을 구현하는 루틴, 프로그램, 프로그램, 개체, 컴포넌트, 데이터 구조 등을 포함한다. 본 발명은 통신 네트워크를 통해 연결되어 있는 원격 처리 장치들에 의해 태스크가 수행되는 분산 컴퓨팅 환경들에서 실시될 수도 있다. 분산 컴퓨팅 환경에서, 프로그램 모듈은 메모리 저장 장치를 포함하는 로컬 및 원격 컴퓨터 저장 매체 둘 다에 위치할 수 있다.
도 1을 참조하면, 본 발명을 구현하기 위한 예시적인 시스템은 컴퓨터(110) 형태의 범용 컴퓨팅 장치를 포함한다. 컴퓨터(110)의 컴포넌트들은 처리 장치(120), 시스템 메모리(130), 및 시스템 메모리를 비롯한 각종 시스템 컴포넌트들을 처리 장치(120)에 연결시키는 시스템 버스(121)를 포함할 수 있지만 이에 제한되는 것은 아니다. 시스템 버스(121)는 메모리 버스 또는 메모리 컨트롤러, 주변 장치 버스, 및 각종 버스 아키텍처 중 임의의 것을 이용하는 로컬 버스를 비롯한 몇몇 유형의 버스 구조 중 어느 것이라도 될 수 있다. 예로서, 이러한 아키텍처는 ISA(Industry Standard Architecture) 버스, MCA(Micro Channel Architecture) 버스, EISA(Enhanced ISA) 버스, VESA(Video Electronics Standards Association) 로컬 버스, 및 메자닌 버스(Mezzanine bus)로도 알려진 PCI(Peripheral Component Interconnect) 버스를 포함하지만 이에 제한되는 것은 아니다.
컴퓨터(110)는 통상적으로 각종 컴퓨터 판독가능 매체를 포함한다. 컴퓨터 판독가능 매체는 컴퓨터(110)에 의해 액세스 가능한 어떤 매체라도 될 수 있고, 이 컴퓨터 판독가능 매체는 휘발성 및 비휘발성, 이동식 및 비이동식 매체를 모두 포함한다. 예로서, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함할 수 있지만 이에 제한되는 것은 아니다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 기타 데이터와 같은 정보의 저장을 위해 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성, 이동식 및 비이동식 매체를 모두 포함한다. 컴퓨터 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리 또는 기타 메모리 기술, CD-ROM, DVD(digital versatile disk), 또는 기타 광 디스크 저장 장치, 자기 카세트, 자기 테이프, 자기 디스크 저장 장치, 또는 기타 자기 저장 장치, 또는 컴퓨터(110)에 의해 액세스될 수 있고 원하는 정보를 저장하는 데 이용될 수 있는 임의의 기타 매체를 포함하지만 이에 제한되는 것은 아니다. 통신 매체는 통상적으로 반송파(carrier wave) 또는 기타 전송 메커니즘(transport mechanism)과 같은 피변조 데이터 신호(modulated data signal)에 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터를 구현하고 임의의 정보 전달 매체를 포함한다. "피변조 데이터 신호"라는 용어는, 신호 내에 정보를 인코딩하도록 그 신호의 특성들 중 하나 이상을 설정 또는 변경시킨 신호를 의미한다. 예로서, 통신 매체는 유선 네트워크 또는 직접 배선 접속(direct-wired connection)과 같은 유선 매체, 그리고 음향, RF, 적외선 및 기타 무선 매체와 같은 무선 매체를 포함하지만, 이에 제한되는 것은 아니다. 상기한 것들 중 임의의 것의 조합들도 컴퓨터 판독가능 매체의 범위 내에 포함되어야 할 것이다.
시스템 메모리(130)는 ROM(read only memory)(131) 및 RAM(random access memory)(132)과 같은 휘발성 및/또는 비휘발성 메모리 형태의 컴퓨터 저장 매체를 포함한다. 시동 중과 같은 때에, 컴퓨터(110) 내의 구성요소들 사이의 정보 전송을 지시하는 기본 루틴을 포함하는 기본 입력/출력 시스템(BIOS)(133)은 통상적으로 ROM(131)에 저장되어 있다. RAM(132)은 통상적으로 처리 장치(120)가 즉시 액세스할 수 있고 및/또는 현재 동작시키고 있는 데이터 및/또는 프로그램 모듈들을 포함한다. 예로서, 도 1은 운영 체제(134), 애플리케이션 프로그램(135), 기타 프로그램 모듈(136), 및 프로그램 데이터(137)를 도시하고 있지만 이에 제한되는 것은 아니다.
컴퓨터(110)는 또한 기타 이동식/비이동식, 휘발성/비휘발성 컴퓨터 저장매체를 포함할 수 있다. 단지 예로서, 도 1은 비이동식, 비휘발성 자기 매체에 기록을 하거나 그로부터 판독을 하는 하드 디스크 드라이브(141), 이동식, 비휘발성 자기 디스크(152)에 기록을 하거나 그로부터 판독을 하는 자기 디스크 드라이브(151), CD-ROM 또는 기타 광 매체 등의 이동식, 비휘발성 광 디스크(156)에 기록을 하거나 그로부터 판독을 하는 광 디스크 드라이브(155)를 예시한다. 예시적인 운영 환경에서 이용될 수 있는 기타 이동식/비이동식, 휘발성/비휘발성 컴퓨터 저장 매체로는, 자기 테이프 카세트, 플래시 메모리 카드, DVD, 디지털 비디오 테이프, 고상(solid state) RAM, 고상 ROM 등이 있지만 이에 제한되는 것은 아니다. 하드 디스크 드라이브(141)는 통상적으로 인터페이스(140)와 같은 비이동식 메모리 인터페이스를 통해 시스템 버스(121)에 접속되고, 자기 디스크 드라이브(151) 및 광 디스크 드라이브(155)는 통상적으로 인터페이스(150)와 같은 이동식 메모리 인터페이스에 의해 시스템 버스(121)에 접속된다.
위에서 설명되고 도 1에 도시된 드라이브들 및 이들과 관련된 컴퓨터 저장 매체는, 컴퓨터(110)에 대한 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 및 기타 데이터의 저장을 제공한다. 도 1에서, 예를 들어, 하드 디스크 드라이브(141)는 운영 체제(144), 애플리케이션 프로그램(145), 기타 프로그램 모듈(146), 및 프로그램 데이터(147)를 저장하는 것으로 도시되어 있다. 여기서 주의할 점은 이들 컴포넌트가 운영 체제(134), 애플리케이션 프로그램(135), 기타 프로그램 모듈(136), 및 프로그램 데이터(137)와 동일하거나 그와 다를 수 있다는 것이다. 운영 체제(144), 애플리케이션 프로그램(145), 기타 프로그램 모듈(146) 및 프로그램 데이터(147)에는 상이한 번호가 부여되어, 최소한, 그들이 상이한 사본들이라는 것을 예시한다. 사용자는 키보드(162) 및 통상적으로 마우스, 트랙볼, 또는 터치 패드로 불리는 포인팅 장치(161) 등의 입력 장치를 통해 명령 및 정보를 컴퓨터(110)에 입력할 수 있다. 다른 입력 장치(도시 생략)로는 마이크, 조이스틱, 게임 패드, 위성 안테나, 스캐너 등을 포함할 수 있다. 이들 및 기타 입력 장치는 종종 시스템 버스(121)에 결합된 사용자 입력 인터페이스(160)를 통해 처리 장치(120)에 접속되지만, 병렬 포트, 게임 포트, USB(universal serial bus) 등의 다른 인터페이스 및 버스 구조에 의해 접속될 수도 있다. 모니터(191) 또는 다른 유형의 디스플레이 장치도 비디오 인터페이스(190)와 같은 인터페이스를 통하여 시스템 버스(121)에 접속된다. 모니터 외에, 컴퓨터는 또한 스피커(197) 및 프린터(196) 등의 기타 주변 출력 장치를 포함할 수 있고, 이들은 출력 주변장치 인터페이스(195)를 통해 접속될 수 있다. 이미지들(193)의 시퀀스를 캡처할 수 있는 카메라(192)(예컨대 디지털/전자 스틸 또는 비디오 카메라, 또는 필름/사진 스캐너)도 퍼스널 컴퓨터(110)의 입력 장치로서 포함될 수 있다. 또한, 단 하나의 카메라만 도시되어 있지만, 퍼스널 컴퓨터(110)에의 입력 장치들로서 다수의 카메라들이 포함될 수도 있다. 하나 이사의 카메라로부터의 이미지들(193)은 적절한 카메라 인터페이스(194)를 통하여 컴퓨터(110)에 입력된다. 이 인터페이스(194)는 시스템 버스(121)에 접속되고, 그에 의해 이미지들이 RAM(132), 또는 컴퓨터와 관련된 다른 데이터 저장 장치들 중 하나에 라우팅되어 저장되는 것을 가능케 한다. 그러나, 카메라(192)의 사용을 필요로 하지 않고, 전술한 컴퓨터 판독가능한 매체 중 임의의 것으로부터 이미지 데이터가 컴퓨터(110)에 입력될 수도 있다는 것에 유의한다.
컴퓨터(110)는 원격 컴퓨터(180)과 같은 하나 이상의 원격 컴퓨터로의 논리적 접속을 사용하여 네트워크화된 환경에서 동작할 수 있다. 원격 컴퓨터(180)은 퍼스널 컴퓨터, 서버, 라우터, 네트워크 PC, 피어 장치 또는 기타 통상의 네트워크 노드일 수 있고, 비록 도 1에는 메모리 저장 장치(181)만 도시되어 있지만, 통상적으로 컴퓨터(110)와 관련하여 상술된 구성요소들의 다수 또는 그 전부를 포함한다. 도 1에 도시된 논리적 접속들은 LAN(local area network)(171) 및 WAN(wide area network)(173)를 포함하지만, 또한 기타 네트워크를 포함할 수도 있다. 이러한 네트워크들은 사무실, 전사적 컴퓨터 네트워크(enterprise-wide computer network), 인트라넷, 및 인터넷에서 일반적인 것이다.
LAN 네트워킹 환경에서 사용될 때, 컴퓨터(110)는 네트워크 인터페이스 또는 어댑터(170)를 통해 LAN(171)에 접속된다. WAN 네트워킹 환경에서 사용될 때, 컴퓨터(110)는 통상적으로 인터넷과 같은 WAN(173)을 통해 통신 링크를 설정하기 위한 모뎀(172) 또는 기타 수단을 포함한다. 내장형 또는 외장형일 수 있는 모뎀(172)은 사용자 입력 인터페이스(160) 또는 기타 적절한 메커니즘을 통해 시스템 버스(121)에 접속될 수 있다. 네트워크화된 환경에서, 컴퓨터(110) 또는 그의 일부와 관련하여 기술된 프로그램 모듈은 원격 메모리 저장 장치 내에 저장될 수도 있다. 예로서, 도 1은 원격 애플리케이션 프로그램(185)이 메모리 저장 장치(181)에 있는 것으로 도시하고 있지만 이에 제한되는 것은 아니다. 도시된 네트워크 접속은 예시적인 것이며 컴퓨터들 사이에 양방향 통신 링크를 설정하는 기타 수단이 사용될 수 있다는 것을 이해할 것이다.
이제 예시적인 운영 환경이 설명되었으므로, 이 설명 단락의 나머지 부분들은 본 발명을 구현하는 프로그램 모듈들에 바쳐질 것이다.
2.0 단일 이미지 비네팅 보정 시스템 및 프로세스
이미지 내의 비네팅을 바로 그 이미지 자체를 이용하여 보정하는 본 컴퓨터 기반 시스템 및 프로세스는 일반적으로 도 2의 고레벨 순서도에 도시된 것과 같은 다음의 프로세스 액션들을 통하여 달성된다. 먼저, 신뢰성 있는 세그먼트들을 생성하는 공간적으로 변하는 세그먼트화 스케일을 이용하여 입력 이미지가 세그먼트화된다(프로세스 액션 200). 본 비네팅 보정 시스템의 상황에서, 세그먼트가 미리 정해진 물리적 비네팅 특성과 일관성 있는 비네팅을 나타내면 그리고 그것이 다른 세그먼트들에서 관찰되는 비네팅에 합치하면 그 세그먼트는 신뢰성 있는 것으로 간주된다. 그 후 신뢰성 있는 세그먼트들을 이용하여 각 픽셀에 대한 보정된 명암도를 정의하는 비네팅 함수가 입력 이미지에 대하여 추정된다(프로세스 액션 202). 최후로 계산된 비네팅 함수 추정을 입력 이미지의 각 픽셀에 적용하여 현 정련된 이미지를 생성한다(프로세스 액션 204). 입력 이미지 대신 현 정련된 이미지를 이용하여 상기 세그먼트화 및 비네팅 함수 추정 액션들이 반복되고 그 결과의 추정을 입력 이미지에 적용하여 새로운 현 정련된 이미지를 생성한다(프로세스 액션 206). 이것은 비네팅 추정이 수렴한 것으로 판정될 때까지 계속된다(프로세스 액션 208). 그 시점에서 최후로 생성된 현 정련된 이미지가 최종 비네팅 보정된 이미지로서 지정된다(프로세스 액션 210).
전술한 프로세스 액션들 각각에 대한 설명은 물론, 본 시스템 및 프로세스에 대한 설명이 다음의 단락들에서 제공될 것이다.
2.1 비네팅 모델
비네팅 보정을 위한 대부분의 방법들은 추정을 단순화하고 이미지 노이즈의 영향을 최소화하기 위해 매개 변수 비네팅 모델(parametric vignetting model)을 이용한다. 통상적으로 다항 함수(polynomial functions) 및 쌍곡선 코사인 함수(hyperbolic cosine functions)와 같은 경험적 모델들(empirical models)이 이용된다. 물리적 고려 사항들에 기초한 기존 모델들은 사입사 조명(off-axis illumination) 및 광 경로 방해(light path obstruction)를 고려하는 것들, 및 신 기반 틸트 효과(scene-based tilt effects)를 추가로 통합하는 강과 바이스의 모델(Kang and Weiss model)을 포함한다. 틸트는 카메라로부터의 거리의 차이에 의해 야기되는 신 내의 명암도 변화, 즉 조명의 역제곱 법칙(inverse square law)으로 인해 보다 가까운 포인트들이 보다 밝게 나타나는 것을 설명한다. 이미징 시스템에 고유하지는 않지만, 틸트에 의해 야기되는 명암도 감쇠 효과는 단일 이미지 비네팅 추정에서 고려되어야 한다. 물리적으로 의미 있는 매개 변수들 외에도, 물리적 모델들의 중요한 특성은 그들의 고도로 구조화되고 속박된 형태가 데이터가 희박하고(sparse) 및/또는 노이지(noisy)한 경우에 추정을 용이하게 한다는 점이다. 이 연구에서는, 원래 일정한 알베도(albedo)의 단일 평면 표면에 대하여 설계된 것을 아마도 상이한 컬러의 다수의 표면들까지 확장한 강-바이스 모델의 확장이 이용된다. 또한, 기하학 비네팅의 선형 모델이 다항식 형태로 일반화된다.
2.2 강- 바이스 모델
제로 스큐(zero skew), 1의 애스팩트 비(aspect ratio), 및 이미지 좌표 (u, v)=(0, 0)를 갖는 이미지 중심에서의 주요 포인트를 갖는 이미지를 생각해보자. 강-바이스 비네팅 모델에서는, 휘도 비율(brightness ratios)이 사입사 조명 팩터(off-axis illumination factor) A, 기하학 팩터(geometric factor) G, 및 틸트 팩터(tilt factor) T에 의하여 기술된다. 이미지 중심으로부터 거리 ri를 갖는 (ui, vi)에서의 픽셀 i에 대하여, 비네팅 함수
Figure 112008043582464-PCT00001
는 다음과 같이 표현된다.
Figure 112008043582464-PCT00002
(i=1...N)
여기서
Figure 112008043582464-PCT00003
N은 이미지 내의 픽셀들의 수이고,
Figure 112008043582464-PCT00004
는 카메라의 유효 초점 길이이고,
Figure 112008043582464-PCT00005
은 기하학 비네팅 팩터에서의 계수를 나타낸다. 틸트 매개 변수인
Figure 112008043582464-PCT00006
Figure 112008043582464-PCT00007
는 도 3에 예시된 바와 같이 각각 광축에 평행한 축 주위의 평면 신 표면의 회전 각, 및 이 회전된 평면 주위의 회전 각을 기술한다.
수학식 1의 모델
Figure 112008043582464-PCT00008
는 카메라의 글로벌 비네팅 함수
Figure 112008043582464-PCT00009
및 신 내의 로컬 틸트 효과 T로 분해될 수 있다.
Figure 112008043582464-PCT00010
는 회전 대칭(ratationally symmetric)이고, 따라서 그것은 이미지 중심으로부터의 방사상 거리 ri의 1D 함수로서 특정될 수 있다.
2.3 확장된 비네팅 모델
임의의 입력 이미지 내에, 상이한 로컬 틸트 팩터들을 갖는 다수의 세그먼트들이 존재할 수 있다. 이미지 내의 다수의 표면들을 고려하기 위해, 상이한 이미지 세그먼트들이 상이한 틸트 각들을 가질 수 있는 강-바이스 모델의 확장이 이용된다. 수학식 2의 틸트 팩터는 다음과 같이 변경된다.
Figure 112008043582464-PCT00011
여기서 si는 픽셀 i를 포함하는 세그먼트를 인덱싱한다.
이 선형 기하학 팩터는 또한 다음과 같이 보다 일반적인 다항식 형태로 확장된다:
Figure 112008043582464-PCT00012
여기서 p는 원하는 정밀도에 따라서 임의로 설정될 수 있는 다항식 차수를 나타낸다. 이 일반화된 표현은 실제로 관찰되는 기하학 비네팅 효과에 보다 근사한 적합(closer fit)을 제공한다. 다항식을 전체 비네팅 모델로서 이용하는 것과 대조적으로, 다항식에 의해 기하학 성분만을 나타내는 것은 전체 모델이 로컬 틸트 효과 및 글로벌 사입사 조명을 명백히 고려하는 것을 가능케 한다.
2.4 비네팅 에너지 함수
세그먼트 s의 신 휘도(scene radiance) Is를 중심 픽셀의 신 휘도 I0에 대한 그것의 비율
Figure 112008043582464-PCT00013
로, 즉 로 표현하자. 상이한 신 휘도의 M개의 세그먼트를 갖는 이미지가 주어졌을 때, 비네팅 해법은 다음의 에너지 함수의 최소화로서 공식화될 수 있다:
Figure 112008043582464-PCT00015
여기서 i는 세그먼트 s 내의 Ns 픽셀들을 인덱싱하고, zi는 비네팅된 이미지 내의 픽셀 값이고, wi는 픽셀 i에 할당된 가중치이다. 컬러 이미지들에서, z는 RGB 벡터를 나타낸다. 설명의 편의를 위해, z는 여기에서 단일 컬러 채널로서 표현되고, 전체 에너지들은 개별 컬러 성분들로부터 평균된다.
이 에너지 함수에서, 추정될 매개 변수들은 사입사 성분(off-axis component) 내의 초점 길이
Figure 112008043582464-PCT00016
, 기하학 팩터의
Figure 112008043582464-PCT00017
계수들, 틸트 각들
Figure 112008043582464-PCT00018
Figure 112008043582464-PCT00019
, 중심 픽셀
Figure 112008043582464-PCT00020
의 신 휘도, 및 각 세그먼트의 휘도 비율(radiance ratio)
Figure 112008043582464-PCT00021
이다. 다수의 이미지 세그먼트들을 처리할 때, 이 에너지 함수의 최소화는 직관적으로 세그먼트들 사이의 비네팅 감쇠의 매끄러운 정렬을 제공하는 로컬 세그먼트 매개 변수들
Figure 112008043582464-PCT00022
,
Figure 112008043582464-PCT00023
Figure 112008043582464-PCT00024
에 대해 동시에 해를 구하는 한편, 기본적인 글로벌 비네팅 매개 변수들
Figure 112008043582464-PCT00025
을 최적화하는 것으로 간주될 수 있다. 추정된 매개 변수들을 이용하여, 비네팅 보정된 이미지는
Figure 112008043582464-PCT00026
로 주어진다. 로컬 틸트 팩터는 부자연스럽게 보이는 결과를 생성하지 않도록 보정된 이미지에 계속 유지된다는 것에 유의한다.
비록 전형적인 이미지들은 이 공식화(formulation)에서 고려되는 균일한 평면 표면들보다 상당히 더 복잡하지만, 이미지 내의 비네팅 데이터가 텍스처와 같은 다른 명암도 변화와 어떻게 분리될 수 있는지, 그리고 이 에너지 함수의 강건한 이 용(robust use)을 가능케 하기 위해 결과 가중치들 w가 어떻게 설정될 수 있는지에 대해 나중에 설명한다.
2.5 비네팅 보정
이미지 내의 비네팅을 보정하는 본 컴퓨터 기반 시스템의 일 실시예는 도 4에 도시된 프로그램 모듈들에 기초한다. 각 반복(iteration)에서, 입력 이미지는 먼저 세그먼트화 모듈(400)을 이용하여 코오스한 스케일(coarse scale)로 세그먼트화되고, 각 세그먼트에 대하여 신뢰도 모듈(402)을 통하여 비네팅 추정을 위한 세그먼트 데이터의 신뢰도 측정치가 계산된다. 물리적 비네팅 특성과의 그리고 다른 세그먼트들과의 보다 큰 일관성을 나타내는 세그먼트들에 대해서는, 모듈(402)에 의해 보다 높은 신뢰도 팩터가 할당된다. 낮은 신뢰도 팩터들은 다수의 별개의 표면들을 갖는 세그먼트들을 나타낼 수 있고, 따라서 이들 세그먼트들은 세그먼트화 모듈(400)에 의해 증분적으로 더 미세한 세그먼트화 스케일로 재귀적으로 세그먼트화되고, 이는 보다 작은 세그먼트들의 신뢰도 팩터들이 임계치를 초과하거나 또는 세그먼트들이 사이즈가 무시해도 좋을 정도가 될 때까지 행해진다. 이 세그먼트화 접근법에 의하면, 세그먼트화 스케일은 비네팅 데이터의 수집을 용이하게 하는 방식으로 공간적으로 변화한다.
공간적으로 적응적인 세그먼트화 후에, 높은 신뢰도 팩터들을 갖는 세그먼트들은 비네팅 추정 모듈(404)에 의해 비네팅 함수 매개 변수들을 추정하는 데 이용된다. 이전 세그먼트화들은 비네팅의 존재에 의해 손상될 수 있으므로, 절차의 후 속 반복은 비네팅 정정 모듈(406)에 의해 현 비네팅 추정을 이용하여 보정된 정련된 이미지로부터 세그먼트화 경계들을 다시 계산한다. 보다 나은 세그먼트화 결과들은 보다 향상된 비네팅 추정들로 이어지고, 이들 반복들은 추정들이 수렴할 때까지 반복된다. 수렴 시에, 최후로 계산된 비네팅 함수는 비네팅 보정 모듈(406)에 의해 입력 이미지에 적용되어 최종 비네팅 보정된 이미지를 생성한다.
전술한 시스템을 구현하는 한 가지 방법이 도 5A 및 5B의 프로세스 순서도에 개략적으로 도시되어 있다. 먼저, 프로세스 액션 500에서, 보정될 이미지가 입력된다. 그 후 입력 이미지(또는 현 정련된 이미지(존재할 경우))는 현 세그먼트화 레벨에 대하여 미리 정해진 세그먼트화 스케일로 세그먼트화되고(프로세스 액션 502), 현 세그먼트 레벨과 연관된 결과의 이미지 세그먼트들 중 이전에 선택되지 않은 것이 선택된다(프로세스 액션 504). 처음에, 현 세그먼트화 레벨은 제1 레벨이다. 세그먼트화 레벨의 중요성은 곧 명백해질 것이다. 또한, 전술한 바와 같이, 세그먼트화 스케일은 각각의 잇따른 세그먼트화 레벨과 함께 더 미세해진다. 다음으로 선택된 세그먼트의 사이즈(예컨대, 세그먼트 내의 픽셀들의 수에 의해 측정된 것)가 미리 정해진 최소 세그먼트 사이즈보다 작은지가 판정된다(프로세스 액션 506). 만일 그렇지 않다면, 프로세스 액션 508에서 선택된 세그먼트에 대하여 신뢰도 팩터가 계산된다. 앞서 지적한 같이, 이 신뢰도 팩터는 세그먼트가 물리적 비네팅 특성과의 일관성을 나타내고 다른 세그먼트에서 관찰되는 비네팅에 합치하는 정도를 나타낸다. 다음으로 신뢰도 팩터가 미리 정해진 신뢰도 임계치를 초과하는지가 판정된다(프로세스 액션 510). 상술한 바와 같이, 이 임계치는 세그먼트 가 비네팅 추정을 위해 수용 가능한지를 나타낸다. 만일 신뢰도 팩터가 신뢰도 임계치를 초과하지 않는다고 판정되면, 세그먼트화 레벨은 1만큼 증가되고(프로세스 액션 512) 선택된 세그먼트는 증가된 세그먼트화 스케일을 이용하여 세그먼트화된다(프로세스 액션 513). 그 후 프로세스 액션들 502 내지 518이 적절하게 수행된다. 이런 식으로 선택된 세그먼트는 새로운 세그먼트화 레벨에 할당된 보다 미세한 세그먼트화 스케일을 이용하여 분할되고 그 결과 2 이상의 보다 작은 세그먼트들이 생긴다.
그러나, 만일 프로세스 액션 506에서 선택된 세그먼트의 사이즈가 최소 세그먼트화 사이즈보다 작다고 판정되거나, 또는 프로세스 액션 510에서 신뢰도 팩터가 신뢰도 임계치를 초과한다고 판정되면, 현 세그먼트화 레벨에서 이전에 선택되지 않은 세그먼트들이 남아 있는지가 판정된다(프로세스 액션 514). 만일 그렇다면, 현 레벨에서의 다른 세그먼트들을 고려하기 위해 프로세스 액션들 504 내지 518이 적절하게 반복된다. 그러나, 만일 현 세그먼트화 레벨에서 이전에 선택되지 않은 세그먼트들이 남아 있지 않다면, 현 레벨에 선행하는 세그먼트화 레벨이 있는지가 판정된다(프로세스 액션 516). 만일 있다면, 세그먼트화 레벨은 1만큼 감소되고(프로세스 액션 518), 도 5A 및 5B에 도시된 바와 같이 프로세스 액션 514에서 시작하여 프로세스 액션들 502 내지 518이 적절하게 반복된다.
그러나, 만일 프로세스 액션 516에서 현 레벨에 선행하는 세그먼트화 레벨이 없다고 판정되면, 프로세스는 신뢰도를 초과하는 신뢰도 팩터를 갖는 것으로 판정되고 적어도 최소 세그먼트화 사이즈만큼 큰 세그먼트들만을 이용하여 이미지에 대 한 현 비네팅 함수 추정의 계산을 계속한다(프로세스 520). 전술한 바와 같이, 비네팅 함수는 입력 이미지의 각 픽셀에 대한 보정된 명암도를 정의한다. 그 후 현 비네팅 함수 추정은 입력 이미지의 가 픽셀에 적용되어 현 정련된 이미지를 생성한다(프로세스 액션 522). 다음으로, 2 이상의 비네팅 함수 추정이 계산되었는지가 판정된다(프로세스 액션 524). 만일 그렇다면, 현 비네팅 함수 추정이 수렴하였는지가 판정된다(프로세스 액션 526). 앞서 설명한 바와 같이, 비네팅 함수 추정은 최후 반복에서 미리 정해진 양보다 많이 변하지 않았다면 수렴한 것이다. 만일 비네팅 함수 추정이 수렴하였다고 판정되면, 현 정련된 이미지는 최종 비네팅 보정된 이미지로서 지정되고(프로세스 액션 528) 프로세스는 종료한다. 그러나, 만일 프로세스 액션 524에서 2 이상의 비네팅 함수 추정이 계산되지 않았다고 판정되거나, 또는 프로세스 액션 526에서 현 비네팅 함수 추정이 수렴하지 않았다고 판정되면, 비네팅 함수 추정이 수렴할 때까지 보정 프로세스의 각 잇따른 반복에 대하여 프로세스 액션들 502 내지 528이 적절하게 반복된다.
이제 비네팅 보정 시스템 및 프로세스의 주요 구성 요소들에 대하여 다음 단락들에서 보다 상세히 설명한다.
2.5.1 비네팅 기반 이미지 세그먼트화
비네팅 추정을 위한 정보를 얻기 위해서는, 입력 이미지에서 동일한 신 휘도를 갖는 픽셀들이 식별될 필요가 있다. 본 시스템 및 프로세스는 기존 세그먼트화 방법들에의 독특한 적응을 이용하여 이 문제를 다룬다. 신뢰성 있는 비네팅 데이 터의 위치 지정(location)을 용이하게 하기 위해, 세그먼트화 스케일들이 이미지 상에서 공간적으로 변경되고, 세그먼트화에 대한 비네팅의 악영향은 비네팅 함수 추정이 정련됨에 따라서 점진적으로 감소된다.
2.5.1.1 스케일의 공간적 변화
동일한 신 휘도를 갖는 픽셀들의 세트들은 만일 그것들이 보다 넓은 비네팅 감쇠의 범위에 걸쳐 있다면 보다 가치 있는 정보를 제공한다. 그러므로 세그먼트화의 상황에서, 보다 큰 세그먼트들이 바람직하다. 비교적 큰 세그먼트들은 코오스한 세그먼트화 스케일을 이용하여 얻어질 수 있지만, 이들 중 다수는 다수의 표면들을 포함하거나 또는 불균일한 조명을 갖는 영역들을 포함할 수 있으므로 그것들은 비네팅 추정을 위해 신뢰할 수 없다. 신뢰할 수 없는 세그먼트로부터 유용한 데이터를 얻으려는 노력으로, 본 시스템 및 프로세스는 그것을 잠재적으로 비네팅 추정을 위한 보다 나은 데이터로 이루어지는 보다 작은 세그먼트들로 재귀적으로 세그먼트화한다. 이 재귀적 세그먼트화는 세그먼트들이 높은 신뢰도 가중치를 갖거나 또는 (테스트된 실시예에서 이용되는 225 픽셀과 같은) 임계치에 따라 무시할 수 있는 정도의 사이즈가 될 때까지 진행된다. 매우 작은 사이즈의 세그먼트들은 일반적으로 비네팅 감쇠에서 대수롭지 않은 변화를 포함하고, 그러한 세그먼트들의 포함은 최적화 프로세스를 편향되게 할 것이다.
재귀적 세그먼트화 절차에서는, 증분적으로 더 미세한 세그먼트화의 스케일들이 이용된다. 평균 이동(mean shift) 및 세그먼트 경합(segment competition)과 같은 방법들에 있어서, 세그먼트화 스케일은 각 특징 클래스(feature class) 내의 변화에 대한 매개 변수들에 의해 제어되고, 여기서 특징(feature)은 단지 픽셀 명암도 또는 컬러일 수 있다. 그러한 접근법들에 의하면, 감소된 매개 변수 값으로 세그먼트를 세그먼트화함으로써 저가중치 세그먼트(low-weight segment)의 보다 미세한 분할이 얻어질 수 있다. 그래프 컷(graph cuts) 및 블롭월드(Blobworld)와 같은 다른 기법들에서는, 이미지 내의 주어진 특징 클래스의 수에 따라서 세그먼트화의 정도가 설정된다. 사용자 특정(user specification), 데이터 클러스터링(data clustering), 및 최소 기술 길이 조건(minimum description length criteria)을 포함하여, 클래스들의 수를 설정하는 다양한 방법들이 존재한다. 재귀적 세그먼트화에 있어서, 각 세그먼트는 특정 클래스에 속하므로, 그것을 2로 지정된 특징 클래스들의 수로 세그먼트화함으로써 세그먼트의 보다 미세한 분할이 얻어질 수 있다.
이 일반적인 적응에 의하면, 세그먼트 스케일은 비네팅 데이터의 품질을 최대화하도록 설계된 방식으로 이미지 상에서 변화한다. 테스트된 실시예들에서는, 6개의 컬러/텍스처 속성들로 구성된 픽셀마다의 특징 벡터들(per-pixel feature vectors)과 함께 그래프 컷 세그먼트화가 채용되었다. 컬러 성분들은 RGB 값들이고, 로컬 텍스처 설명자들은 극성(polarity), 이방성(anisotropy) 및 정규화된 텍스처 대비(normalized texture contrast)이다.
2.5.1.2 비네팅의 고려
동일한 신 휘도의 2개의 픽셀들은 비네팅 감쇠의 변화로 인해 현저히 상이한 이미지 명암도를 나타낼 수 있다. 세그먼트화에서, 이 비네팅의 결과는 균질의 신 영역(homogeneous scene area)이 개별 이미지 세그먼트들로 분할될 수 있다는 것이다. 또한 비네팅의 결과로 불균질의 이미지 영역들(heterogeneous image areas)이 보다 큰 방사상의 거리에서 보다 낮은 대비로 인해 함께 세그먼트화될 수 있다. 비네팅 추정에서 보다 나은 안정성을 위해, 세그먼트화에 대한 비네팅의 효과는 최소화되어야 한다.
세그먼트화에서의 비네팅 효과를 다루기 위해, 각 반복 후에, 후속 반복 동안의 세그먼트화에서 추정된 비네팅 함수가 고려된다. 구체적으로, 현재 추정된 매개 변수들을 이용하여 계산된 비네팅 보정된 이미지가 최초 입력된 이미지 대신에 세그먼트화 경계를 결정하는 데 이용된다. 보정된 이미지는 오로지 세그먼트를 위해서만 이용되고, 최초 이미지 내의 컬러들은 여전히 비네팅 세그먼트화를 위해 이용된다.
감소된 비네팅 효과로부터 세그먼트화들이 개선됨에 따라서, 추정된 비네팅 함수도 점진적으로 정련된다. 이 프로세스는 잇따른 반복들에서 비네팅 함수들 간의 차이가 미리 정해진 임계치 아래로 떨어질 때까지 반복되고, 여기서 차이는 다음과 같이 측정된다.
Figure 112008043582464-PCT00027
Figure 112008043582464-PCT00028
는 반복 t에서의 글로벌 비네팅 함수를 나타내고, 방사상 거리 r은 k개의 균일한 간격으로 샘플링된다. 테스트된 실시예들에서, k는 100으로 설정되었다.
2.5.2 세그먼트 가중
비네팅 기반 세그먼트화 프로세스를 안내하고 강건한 비네팅 추정을 증진하기 위해, 각 이미지 세그먼트 내의 데이터의 신뢰도가 평가되고 세그먼트 가중치로서 이용된다. 세그먼트가 물리적 미네팅 특성과의 일관성을 나타내고 이미지 내의 다른 곳에서 관찰되는 비네팅에 합치하면 그 세그먼트는 신뢰성 있는 것으로 간주된다.
처음에는, 어떤 비네팅 추정도 알려져 있지 않고, 따라서 처음 반복에서는 세그먼트 데이터가 물리적 기반 비네팅 모델에 의해 얼마나 근사하게 나타내어질 수 있는지에 따라서 신뢰도가 측정된다. 주어진 세그먼트에 대하여, 비네팅 함수의 추정
Figure 112008043582464-PCT00029
는 단락 2.5.3에서 설명될 기법과 유사하게 계산되고, 세그먼트 s에 대한 가중치는 다음과 같이 계산된다.
Figure 112008043582464-PCT00030
각 픽셀은 그것의 세그먼트의 가중치를 할당받는다.
세그먼트 내의 텍스처의 존재는 그것이 높은 가중치를 갖는 것을 배제하지 않는다. 전형적으로 고주파수 변화를 나타내는 텍스처들과 대비하여, 비네팅은 이 미지 폭 정도의 파장을 갖는 저주파수 현상이다. 이러한 주파수 특성의 차이는 많은 텍스처 세그먼트들(textured segments)에서 비네팅 효과가 식별되는 것을 가능케 한다.
각 반복의 끝에서, 비네팅 함수의 추정이 결정되고 다음 반복에서
Figure 112008043582464-PCT00031
로서 이용된다. 비네팅 매개 변수들이 점진적으로 정련됨에 따라서, 계산된 가중치들은 세그먼트 데이터의 품질을 보다 더 근사하게 반영할 것이다. 세그먼트 내의 텍스처 또는 음영(shading)이 비네팅의 특성에 부합하여 근사해지는 경우, 그것이 이미지의 다른 부분들에서 관찰되는 비네팅과 일관성이 없다면 그것은 낮은 가중치를 할당받을 것이다.
2.5.3 비네팅 추정
세그먼트드의 컬렉션에 대하여, 다수의 알려지지 않은 매개 변수들이 복잡한 솔루션 공간(solution space)을 생성한다. 최적화를 단순화하기 위해, 비네팅 함수를 추정하기 전에 매개 변수 초기화를 위해 단계식 방법(stepwise method)이 이용된다. 제1 단계에서는, 비네팅 및 틸트 매개 변수들을 고려하지 않고 각 세그먼트에 대하여 상대적 신 휘도
Figure 112008043582464-PCT00032
의 초기 값들이 결정된다. 동일한 반경 r에 있지만 서로 다른 세그먼트들로부터의 픽셀들 i 및 j에 대하여, 그들의 비네팅 감쇠는 같아야 하므로, 그들의 이미지 값들 zi 및 zj는 신 휘도에서만 달라야 한다. 이러한 특성에 기초하여, 상대적 휘도 값들은 다음 함수를 최소화함으로써 초기화된다.
Figure 112008043582464-PCT00033
Figure 112008043582464-PCT00034
값들은 수학식
Figure 112008043582464-PCT00035
(여기서
Figure 112008043582464-PCT00036
Figure 112008043582464-PCT00037
는 미지수)의 시스템에서의 단일 값 분해(SVD; singular value decomposition)에 의해 최소 제곱 방식으로 해가 구해진다. 이 함수의 최소화를 촉진하기 위해, 주어진 반경에 있고 동일한 세그먼트 내의 픽셀들의 세트는 세트의 평균 컬러를 갖는 단일 픽셀로 표현될 수 있다.
Figure 112008043582464-PCT00038
의 초기 값들을 가지고, 제2 단계는 매개 변수들
Figure 112008043582464-PCT00039
Figure 112008043582464-PCT00040
를 초기화하고, 여기서 p는 수학식 4의 기하학 팩터에서 이용되는 다항식 차수이다. 로컬 틸트 팩터들을 무시하고, 이것은 다음 에너지 함수를 이용하여 계산된다.
Figure 112008043582464-PCT00041
이 함수는 다항식 차수를 k=1로부터 k=p까지 증분적으로 증가시키고, 이전에 계산된 다항식 계수들
Figure 112008043582464-PCT00042
을 초기값들로서 이용하여 반복적으로 해가 구해진다. 테스트된 실시예들에서는, p=4의 다항식 차수가 채용되었다.
제3 단계에서는, 다른 매개 변수들은 그들의 초기화 값들로 고정하여 수학식 5의 에너지 참수를 최적화함으로써 로컬 틸트 매개 변수들
Figure 112008043582464-PCT00043
가 추정된다. 초기화 단계 후에, 최종적으로 비네팅 함수를 추정하기 위해 모든 매개 변수들이 수 학식 5에서 공동으로 최적화된다. 수학식 5 및 수학식 8의 최적화는 레벤버그-마쿼르트(Levenberg-Marquardt) 기법을 이용하여 계산된다.
본 내용은 구조적 특징들 및/또는 방법적 액트(act)들에 특정한 언어로 기술되었지만, 부속된 청구항들에서 한정된 내용은 반드시 상술한 특정 특징들 또는 액트들에 한정되는 것은 아니다. 오히려, 상술한 특정 특징들 및 액트들은 청구항들을 구현하는 예시적인 형태들로서 개시되어 있다.

Claims (18)

  1. 입력 이미지 내의 비네팅(vignetting)을 보정하는 컴퓨터 구현 프로세스로서, 컴퓨터를 이용하여,
    미리 정해진 물리적 비네팅 특성과 일관성 있고 또한 다른 세그먼트들에서 관찰되는 비네팅에 합치하는 비네팅을 나타내는 복수의 신뢰성 있는 세그먼트들을 생성하는 공간적으로 변하는 세그먼트화 스케일(spatially varying segmentation scale)을 이용하여 상기 입력 이미지를 세그먼트화하는 프로세스 액션(200);
    상기 신뢰성 있는 세그먼트들을 이용하여, 각 픽셀에 대한 보정된 명암도(corrected intensity)를 정의하는, 상기 입력 이미지에 대한 비네팅 함수를 추정하는 프로세스 액션(202);
    현 정련된 이미지(current refined image)를 생성하기 위해 최후로 계산된 비네팅 함수 추정(the last-computed vignetting function estimate)을 상기 입력 이미지의 각 픽셀에 적용하는 프로세스 액션(204);
    상기 비네팅 함수 추정이 수렴한 것으로 판정될 때까지(208), 상기 입력 이미지 대신 상기 현 정련된 이미지를 이용하여 상기 세그먼트화 액션을 반복하고, 상기 입력 이미지를 이용하여 상기 추정 및 적용 프로세스 액션들을 반복하여 새로운 현 정련된 이미지를 생성하는 프로세스 액션(206); 및
    상기 비네팅 함수 추정이 수렴한 것으로 판정될 때는 언제나, 상기 최후로 생성된 현 정련된 이미지를 최종 비네팅 보정된 이미지로 지정하는 프로세스 액 션(210)
    을 수행하는 것을 포함하는 컴퓨터 구현 프로세스.
  2. 제1항에 있어서, 상기 입력 이미지를 세그먼트화하거나 또는 상기 현 정련된 이미지를 세그먼트화하는 프로세스 액션은,
    미리 정해진 초기 세그먼트화 스케일로 상기 이미지를 세그먼트화하는 액션;
    각 세그먼트에 대하여,
    해당 세그먼트가 물리적 비네팅 특성과의 일관성을 나타내고 다른 세그먼트들에서 관찰되는 비네팅에 합치하는 정도를 나타내는 신뢰도 팩터(reliability factor)를 계산하고,
    상기 신뢰도 팩터가 해당 세그먼트가 비네팅 추정을 위해 수용 가능(acceptable)함을 나타내는 미리 정해진 신뢰도 임계치를 초과하는지를 판정하고,
    상기 신뢰도 팩터가 상기 신뢰도 임계치를 초과하지 않을 때는 언제나, 고려중인 세그먼트를 점점 더 미세한 세그먼트화 스케일로 재귀적으로 세그먼트화하되, 그 결과의 보다 작은 세그먼트들 각각이 상기 신뢰도 임계치를 초과하는 신뢰도 팩터를 갖거나 또는 미리 정해진 최소 세그먼트 사이즈보다 작아질 때까지, 재귀적으로 세그먼트화하는 액션; 및
    상기 신뢰도 임계치를 초과하는 신뢰도 팩터를 갖는 것으로 판정되고 적어도 상기 최소 세그먼트 사이즈만큼 큰 세그먼트들을 신뢰성 있는 세그먼트들로 지정하 는 액션
    을 포함하는 컴퓨터 구현 프로세스.
  3. 제2항에 있어서, 상기 고려중인 세그먼트를 재귀적으로 세그먼트화하는 프로세스 액션은,
    (a) 상기 세그먼트에 대해 최후로 이용된 것보다 더 미세한 세그먼트화 스케일을 이용하여 상기 고려중인 세그먼트를 세그먼트화하여 복수의 보다 작은 세그먼트들을 생성하는 액션;
    (b) 생성된 각각의 보다 작은 세그먼트에 대하여, 그것의 신뢰도 팩터를 계산하고 그 팩터가 상기 신뢰도 임계치를 초과하는지를 판정하는 액션;
    (c) 고려중인 보다 작은 세그먼트의 신뢰도 팩터가 상기 신뢰도 임계치를 초과하지 않을 때는 언제나, 상기 보다 작은 세그먼트의 사이즈가 미리 정해진 최소 세그먼트 사이즈보다 작은지를 판정하는 액션; 및
    (d) 상기 고려중인 보다 작은 세그먼트가 상기 최소 세그먼트 사이즈를 초과할 때는 언제나, 그 보다 작은 세그먼트에 대하여 프로세스 액션들 (a) 내지 (c)를 반복하는 액션
    을 포함하는 컴퓨터 구현 프로세스.
  4. 제3항에 있어서, 상기 입력 이미지를 세그먼트화하고, 현 정련된 이미지를 세그먼트화하고, 어느 한쪽의 세그먼트를 세그먼트화하는 프로세스 액션들은, 6개 의 컬러/텍스처 속성들로 구성된 픽셀마다의 특징 벡터들(per-pixel feature vectors)과 함께 그래프 컷 세그먼트화(graph cut segmentation)를 채용하는 액션을 포함하는 컴퓨터 구현 프로세스.
  5. 제4항에 있어서, 상기 픽셀마다의 특징 벡터들의 컬러 속성들은 RGB 값들인 컴퓨터 구현 프로세스.
  6. 제4항에 있어서, 상기 픽셀마다의 특징 벡터들의 텍스처 속성들은 극성(polarity), 이방성(anisotropy) 및 정규화된 텍스처 대비(normalized texture contrast)인 컴퓨터 구현 프로세스.
  7. 제2항에 있어서, 상기 입력 이미지에 대한 비네팅 함수를 추정하는 프로세스 액션은, 상기 이미지의 각 픽셀에 대하여, 이미지 중심으로부터의 해당 픽셀의 방사상 거리에 따라서만 변화하는 글로벌 비네팅(global vinetting) 및 광축 및 이미지 평면에 관하여 해당 픽셀에 의해 묘사된 표면들의 틸트(tilt)에 의해 야기되는 비네팅 양쪽 모두의 효과를 추정하는 함수를 추정하는 것을 포함하는 컴퓨터 구현 프로세스.
  8. 제7항에 있어서, 상기 이미지의 픽셀에 대한 글로벌 비네팅의 효과를 추정하는 프로세스 액션은, 픽셀(i)에 대한 사입사 조명 팩터(off-axis illumination factor)(Ai)와 기하학 팩터(Gi)의 곱을 계산하는 것을 포함하고, 여기서
    Figure 112008043582464-PCT00044
    이고, ri는 상기 이미지 중심으로부터의 픽셀 i의 방사상 거리이고, f는 상기 이미지를 캡처한 카메라의 유효 초점 거리이고,
    Figure 112008043582464-PCT00045
    이고, 여기서 p는 미리 정해진 다항식 차수를 나타내고,
    Figure 112008043582464-PCT00046
    는 기하학 계수들을 나타내는 컴퓨터 구현 프로세스.
  9. 제7항에 있어서, 상기 픽셀에 의해 묘사된 표면들의 틸트에 의해 야기되는 비네팅의 효과를 추정하는 프로세스 액션은, 픽셀(i)에 대한 틸트 팩터 Ti
    Figure 112008043582464-PCT00047
    로서 계산하는 것을 포함하고, 여기서 si는 픽셀 i를 포함하는 이미지 세그먼트를 인덱싱하고, ui 및 vi는 픽셀 i의 이미지 좌표들이고, f는 상기 이미지를 캡처한 카메라의 유효 초점 거리이고,
    Figure 112008043582464-PCT00048
    는 광학 축에 평행한 축 주위로 픽셀 i를 포함하는 세그먼트에서 묘사된 평면 신 표면(planar scene surface)의 회전 각을 나타내는 제1 틸트 매개 변수이고
    Figure 112008043582464-PCT00049
    는 이미지 평면에 관하여 픽셀 i를 포함하는 세그먼트에서 묘사된 평면 신 표면의 회전 각을 나타내는 제2 틸트 매개 변수인 컴퓨터 구현 프로세스.
  10. 제2항에 있어서, 상기 입력 이미지에 대한 비네팅 합수를 추정하는 프로세스 액션은,
    Figure 112008043582464-PCT00050
    로서 정의된 에너지 함수(E)를 최소화하는 액션 - 여기서 M은 이미지 세그먼트들 s의 총수를 나타내고, Ns는 세그먼트 s 내의 픽셀들 i의 총수를 나타내고, wi는 픽셀 i를 포함하는 세그먼트 s에 대하여 계산된 신뢰도 팩터를 나타내고,
    Figure 112008043582464-PCT00051
    는 중심 픽셀의 신 휘도 I0에 대한 세그먼트 s의 신 휘도 Is의 비율이고, Ti는 광학 축 및 이미지 평면에 관하여 픽셀 i에 의해 묘사된 표면들의 틸트에 의해 야기되는 비네팅을 나타내고,
    Figure 112008043582464-PCT00052
    는 이미지 중심으로부터 픽셀 i의 방사상의 거리 r에서의 비네팅에 대한 임의의 로컬 틸트 효과를 무시하는 글로벌 비네팅 효과에 기인하는 최후로 계산된 비네팅 함수 추정의 부분이고 zi는 픽셀 i의 픽셀 값임 - ; 및
    각 픽셀 i의 보정된 명암도(corrected intensity)가
    Figure 112008043582464-PCT00053
    로 주어지도록 상기 추정된 비네팅 함수를 정의하는 액션
    을 포함하는 컴퓨터 구현 프로세스.
  11. 제10항에 있어서, 상기 입력 이미지는 컬러 이미지이고 픽셀 i의 픽셀 값 zi는 RGB 벡터를 나타내는 컴퓨터 구현 프로세스.
  12. 제2항에 있어서, 세그먼트에 대한 신뢰도 팩터를 계산하는 프로세스 액션은, 팩터(ws)를
    Figure 112008043582464-PCT00054
    로서 계산하는 액션을 포함하고, 여기서 i는 세그먼트 s 내의 Ns 픽셀들을 인덱싱하고,
    Figure 112008043582464-PCT00055
    는 이미지 중심으로부터 픽셀 i의 방사상의 거리 r에서의 비네팅에 대한 임의의 로컬 틸트 효과를 무시하는 글로벌 비네팅 효과에 기인하는 최후로 계산된 비네팅 함수 추정의 부분이고, zi는 픽셀 i의 픽셀 값이고,
    Figure 112008043582464-PCT00056
    는 중심 픽셀의 신 휘도 I0에 대한 세그먼트 s의 신 휘도 Is의 비율이고, Ti는 광학 축 및 이미지 평면에 관하여 픽셀 i에 의해 묘사된 표면들의 틸트에 의해 야기되는 비네팅을 나타내는 컴퓨터 구현 프로세스.
  13. 제10항에 있어서, 상기 입력 이미지는 컬러 이미지이고 픽셀 i의 픽셀 값 zi는 RGB 벡터를 나타내는 컴퓨터 구현 프로세스.
  14. 제1항에 있어서, 상기 비네팅 함수 추정이 수렴하였는지를 판정하는 프로세스 액션은, 상기 최후로 계산된 비네팅 함수 추정이 최후 바로 전에 계산된 비네팅 함수 추정(the next to last computed vignetting function estimate)과 비교할 때 미리 정해진 양보다 많이 변하였는지를 판정하는 액션을 포함하는 컴퓨터 구현 프로세스.
  15. 제14항에 있어서, 상기 최후로 계산된 비네팅 함수 추정이 최후 바로 전에 계산된 비네팅 함수 추정과 비교할 때 미리 정해진 양보다 많이 변하였는지를 판정하는 액션은, 최후로 계산된 비네팅 함수 추정과 상기 최후 바로 전에 계산된 비네팅 함수 추정 간의 차이
    Figure 112008043582464-PCT00057
    Figure 112008043582464-PCT00058
    로서 계산하는 액션을 포함하고, 여기서
    Figure 112008043582464-PCT00059
    는 비네팅에 대한 임의의 로컬 틸트 효과를 무시하는 글로벌 비네팅 효과에 기인하는 상기 최후로 계산된 비네팅 함수 추정의 부분이고,
    Figure 112008043582464-PCT00060
    는 비네팅에 대한 임의의 로컬 틸트 효과를 무시하는 글로벌 비네팅 효과에 기인하는 상기 최후 바로 전에 계산된 비네팅 함수 추정의 부분이고, 방사상 거리 r은 k개의 미리 정해진 균일한 간격으로 샘플링되는 컴퓨터 구현 프로세스.
  16. 입력 이미지 내의 비네팅(vignetting)을 보정하는 컴퓨터 구현 프로세스로서, 컴퓨터를 이용하여,
    미리 정해진 물리적 비네팅 특성과 일관성 있고 또한 다른 세그먼트들에서 관찰되는 비네팅에 합치하는 비네팅을 나타내는 복수의 세그먼트들을 생성하는 공간적으로 변하는 세그먼트화 스케일을 이용하여 상기 입력 이미지를 세그먼트화하는 프로세스 액션(200);
    신뢰도 임계치를 초과하는 신뢰도 팩터를 갖는 것으로 판정되고 또한 적어도 최소 세그먼트화 사이즈만큼 큰 세그먼트들을 이용하여 각 픽셀에 대한 보정된 명 암도를 정의하는 상기 입력 이미지에 대한 비네팅 함수를 추정하는 프로세스 액션(520);
    최후로 계산된 비네팅 함수 추정을 상기 입력 이미지의 각 픽셀에 적용하여 현 정련된 이미지를 생성하는 프로세스 액션(522);
    2 이상의 비네팅 함수가 추정되었는지를 판정하는 프로세스 액션(524);
    2 이상의 비네팅 함수가 추정되었을 때는 언제나, 최후로 계산된 비네팅 함수 추정이 최후 바로 전에 계산된 비네팅 함수 추정과 비교할 때 미리 정해진 양보다 더 많이 변하였는지를 판정하는 프로세스 액션(526);
    2 이상의 비네팅 함수가 추정되지 않은 것으로 판정되거나, 또는 2 이상의 비네팅 함수가 추정되었지만 최후로 계산된 비네팅 함수 추정이 상기 미리 정해진 양보다 더 많이 변한 것으로 판정될 때는 언제나, 상기 공간적으로 변하는 세그먼트화 스케일을 이용하여 현 정련된 이미지를 세그먼트화하고(200), 상기 추정 프로세스 액션을 반복하고, 제1 판정 및 제2 판정 프로세스 액션들을 적용하는 프로세스 액션; 및
    2 이상의 비네팅 함수가 추정된 것으로 판정되고, 최후로 계산된 비네팅 함수 추정이 상기 미리 정해진 양보다 더 많이 변하지 않은 것으로 판정될 때는 언제나, 최후로 생성된 정련된 이미지를 최종 비네팅 보정된 이미지로서 지정하는 프로세스 액션(528)
    을 수행하는 것을 포함하는 컴퓨터 구현 프로세스.
  17. 제16항에 있어서, 상기 입력 이미지를 세그먼트화하는 프로세스 액션은,
    (a) 초기 세그먼트화 스케일에서 시작하여 미리 정해진 현 세그먼트화 스케일로 상기 입력 이미지를 세그먼트화하는 액션;
    (b) 상기 현 세그먼트화 스케일과 연관된 결과의 세그먼트들 중 이전에 선택되지 않은 것을 선택하는 액션;
    (c) 상기 선택된 세그먼트의 사이즈가 미리 정해진 최소 세그먼트 사이즈보다 작은지를 판정하는 액션;
    (d) 고려중인 세그먼트가 상기 미리 정해진 최소 세그먼트 사이즈보다 작지 않은 때는 언제나,
    (d1) 해당 세그먼트가 물리적 비네팅 특성과의 일관성을 나타내고 다른 세그먼트들에서 관찰되는 비네팅에 합치하는 정도를 나타내는 신뢰도 팩터를 계산하고,
    (d2) 상기 신뢰도 팩터가 해당 세그먼트가 비네팅 추정을 위해 수용 가능함을 나타내는 미리 정해진 신뢰도 임계치를 초과하는지를 판정하고,
    (d3) 상기 신뢰도 팩터가 상기 신뢰도 임계치를 초과하지 않을 때는 언제나,
    (ⅰ) 상기 세그먼트화 스케일을 1 레벨만큼 증가시키고 - 각 연속하는 세그먼트화 레벨은 상기 선택된 세그먼트를 형성하기 위해 채용된 것보다 더 미세한 세그먼트화 스케일을 나타냄 - ,
    (ⅱ) 상기 증가된 세그먼트화 스케일을 이용하여 상기 선택된 세그먼트를 세그먼트화하고,
    (ⅲ) 프로세스 액션들 (b) 내지 (d)를 적절하게 반복하는 액션; 및
    (e) 고려중인 세그먼트가 상기 미리 정해진 최소 세그먼트 사이즈보다 더 작거나, 또는 더 작지는 않지만 신뢰도 팩터가 상기 신뢰도 임계치를 초과할 때는 언제나,
    (e1) 상기 현 세그먼트화 스케일과 연관된 이전에 선택되지 않은 세그먼트가 있는지를 판정하고,
    (e2) 상기 현 세그먼트화 스케일과 연관된 이전에 선택되지 않은 세그먼트가 있을 때는 언제나, 프로세스 액션들 (b) 내지 (e)를 적절하게 반복하고,
    (e3) 상기 현 세그먼트화 스케일과 연관된 이전에 선택되지 않은 세그먼트가 없을 때는 언제나, 현 레벨에 선행하는 세그먼트화 레벨이 있는지를 판정하고,
    (e4) 현 레벨에 선행하는 세그먼트화 레벨이 있을 때는 언제나, 세그먼트화 레벨을 1 단위만큼 감소시키고 프로세스 액션들 (e1) 내지 (e4)를 적절하게 반복하고,
    (e5) 현 레벨에 선행하는 세그먼트화 레벨이 없을 때는 언제나, 상기 입력 이미지의 세그먼트화가 완성된 것으로 간주하는 액션
    을 포함하는 컴퓨터 구현 프로세스.
  18. 제16항에 있어서, 현 정련된 이미지를 세그먼트화하는 프로세스 액션은,
    (a) 초기 세그먼트화 스케일에서 시작하여 미리 정해진 현 세그먼트화 스케일로 상기 현 정련된 이미지를 세그먼트화하는 액션;
    (b) 상기 현 세그먼트화 스케일과 연관된 결과의 세그먼트들 중 이전에 선택되지 않은 것을 선택하는 액션;
    (c) 상기 선택된 세그먼트의 사이즈가 미리 정해진 최소 세그먼트 사이즈보다 작은지를 판정하는 액션;
    (d) 고려중인 세그먼트가 상기 미리 정해진 최소 세그먼트 사이즈보다 작지 않은 때는 언제나,
    (d1) 해당 세그먼트가 물리적 비네팅 특성과의 일관성을 나타내고 다른 세그먼트들에서 관찰되는 비네팅에 합치하는 정도를 나타내는 신뢰도 팩터를 계산하고,
    (d2) 상기 신뢰도 팩터가 해당 세그먼트가 비네팅 추정을 위해 수용 가능함을 나타내는 미리 정해진 신뢰도 임계치를 초과하는지를 판정하고,
    (d3) 상기 신뢰도 팩터가 상기 신뢰도 임계치를 초과하지 않을 때는 언제나,
    (ⅰ) 상기 세그먼트화 스케일을 1 레벨만큼 증가시키고 - 각 연속하는 세그먼트화 레벨은 상기 선택된 세그먼트를 형성하기 위해 채용된 것보다 더 미세한 세그먼트화 스케일을 나타냄 - ,
    (ⅱ) 상기 증가된 세그먼트화 스케일을 이용하여 상기 선택된 세그먼트를 세그먼트화하고,
    (ⅲ) 프로세스 액션들 (b) 내지 (d)를 적절하게 반복하는 액션; 및
    (e) 고려중인 세그먼트가 상기 미리 정해진 최소 세그먼트 사이즈보다 더 작거나, 또는 더 작지는 않지만 신뢰도 팩터가 상기 신뢰도 임계치를 초과할 때는 언제나,
    (e1) 상기 현 세그먼트화 스케일과 연관된 이전에 선택되지 않은 세그먼트가 있는지를 판정하고,
    (e2) 상기 현 세그먼트화 스케일과 연관된 이전에 선택되지 않은 세그먼트가 있을 때는 언제나, 프로세스 액션들 (b) 내지 (e)를 적절하게 반복하고,
    (e3) 상기 현 세그먼트화 스케일과 연관된 이전에 선택되지 않은 세그먼트가 없을 때는 언제나, 현 레벨에 선행하는 세그먼트화 레벨이 있는지를 판정하고,
    (e4) 현 레벨에 선행하는 세그먼트화 레벨이 있을 때는 언제나, 세그먼트화 레벨을 1 단위만큼 감소시키고 프로세스 액션들 (e1) 내지 (e4)를 적절하게 반복하고,
    (e5) 현 레벨에 선행하는 세그먼트화 레벨이 없을 때는 언제나, 상기 현 정련된 이미지의 세그먼트화가 완성된 것으로 간주하는 액션
    을 포함하는 컴퓨터 구현 프로세스.
KR1020087014748A 2005-12-23 2006-12-20 입력 이미지 내의 비네팅을 보정하는 컴퓨터 구현 프로세스 KR101330361B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US75380205P 2005-12-23 2005-12-23
US60/753,802 2005-12-23
US11/384,063 US7548661B2 (en) 2005-12-23 2006-03-17 Single-image vignetting correction
US11/384,063 2006-03-17
PCT/US2006/048935 WO2007114847A2 (en) 2005-12-23 2006-12-20 Single-image vignetting correction

Publications (2)

Publication Number Publication Date
KR20080077987A true KR20080077987A (ko) 2008-08-26
KR101330361B1 KR101330361B1 (ko) 2013-11-15

Family

ID=38193139

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087014748A KR101330361B1 (ko) 2005-12-23 2006-12-20 입력 이미지 내의 비네팅을 보정하는 컴퓨터 구현 프로세스

Country Status (4)

Country Link
US (1) US7548661B2 (ko)
KR (1) KR101330361B1 (ko)
CN (1) CN101341733B (ko)
WO (1) WO2007114847A2 (ko)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7920171B2 (en) * 2007-05-18 2011-04-05 Aptina Imaging Corporation Methods and apparatuses for vignetting correction in image signals
GB0801443D0 (en) * 2008-01-25 2008-03-05 Micron Technology Inc Methods, systems and apparatuses for pixel signal correction using elliptical hyperbolic cosines
US8340453B1 (en) 2008-08-29 2012-12-25 Adobe Systems Incorporated Metadata-driven method and apparatus for constraining solution space in image processing techniques
US8724007B2 (en) 2008-08-29 2014-05-13 Adobe Systems Incorporated Metadata-driven method and apparatus for multi-image processing
US8368773B1 (en) 2008-08-29 2013-02-05 Adobe Systems Incorporated Metadata-driven method and apparatus for automatically aligning distorted images
US8842190B2 (en) 2008-08-29 2014-09-23 Adobe Systems Incorporated Method and apparatus for determining sensor format factors from image metadata
US8089534B2 (en) * 2008-11-04 2012-01-03 Aptina Imaging Corporation Multi illuminant shading correction using singular value decomposition
KR101589310B1 (ko) * 2009-07-08 2016-01-28 삼성전자주식회사 렌즈 쉐이딩 보정 방법 및 장치
FR2948521B1 (fr) * 2009-07-21 2012-01-27 Dxo Labs Procede d'estimation d'un defaut d'un systeme de capture d'images et systemes associes
US20130294707A1 (en) * 2010-07-08 2013-11-07 Yeda Research And Development Ltd Geometric modelization of images and applications
US8571343B2 (en) 2011-03-01 2013-10-29 Sharp Laboratories Of America, Inc. Methods and systems for document-image correction
US9157801B2 (en) 2011-06-21 2015-10-13 Alakai Defense Systems, Inc. Laser detection system having an output beam directed through a telescope
US8577140B2 (en) 2011-11-29 2013-11-05 Microsoft Corporation Automatic estimation and correction of vignetting
US8823841B2 (en) 2012-06-20 2014-09-02 Omnivision Technologies, Inc. Method and apparatus for correcting for vignetting in an imaging system
US20150030258A1 (en) * 2013-07-26 2015-01-29 Qualcomm Incorporated System and method of corner noise reduction in an image
US9270959B2 (en) * 2013-08-07 2016-02-23 Qualcomm Incorporated Dynamic color shading correction
KR101662407B1 (ko) * 2014-12-23 2016-10-05 포항공과대학교 산학협력단 영상의 비네팅 보정 방법 및 장치
DE102018115991B4 (de) * 2018-07-02 2023-12-07 Basler Ag Digitale schaltung zur korrektur eines vignettierungseffekts in werten von pixeln eines bildes einer elektronischen kamera

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5436980A (en) * 1988-05-10 1995-07-25 E. I. Du Pont De Nemours And Company Method for determining quality of dispersion of glass fibers in a thermoplastic resin preform layer and preform layer characterized thereby
US5108179A (en) * 1989-08-09 1992-04-28 Myers Stephen A System and method for determining changes in fluorescence of stained nucleic acid in electrophoretically separated bands
DE4135210A1 (de) * 1991-10-25 1993-04-29 Broadcast Television Syst Verfahren und schaltung zur korrektur von abschattungen
WO1996019893A1 (en) * 1994-12-22 1996-06-27 Philips Electronics N.V. Composing an image from sub-images
US6670988B1 (en) * 1999-04-16 2003-12-30 Eastman Kodak Company Method for compensating digital images for light falloff and an apparatus therefor
US6610984B2 (en) * 2000-03-17 2003-08-26 Infrared Components Corporation Method and apparatus for correction of microbolometer output
US6919892B1 (en) * 2002-08-14 2005-07-19 Avaworks, Incorporated Photo realistic talking head creation system and method
EP1447977A1 (en) * 2003-02-12 2004-08-18 Dialog Semiconductor GmbH Vignetting compensation
KR20040088830A (ko) * 2003-04-12 2004-10-20 엘지전자 주식회사 전하결합소자의 비네팅 현상 제거 방법
KR100558330B1 (ko) * 2003-10-08 2006-03-10 한국전자통신연구원 영상 시스템의 비네팅 효과를 보상하기 위한 방법 및 이를이용한 영상 장치

Also Published As

Publication number Publication date
CN101341733B (zh) 2011-04-20
CN101341733A (zh) 2009-01-07
US20070146506A1 (en) 2007-06-28
KR101330361B1 (ko) 2013-11-15
WO2007114847A3 (en) 2007-12-21
US7548661B2 (en) 2009-06-16
WO2007114847A2 (en) 2007-10-11

Similar Documents

Publication Publication Date Title
KR101330361B1 (ko) 입력 이미지 내의 비네팅을 보정하는 컴퓨터 구현 프로세스
US11810272B2 (en) Image dehazing and restoration
US9292926B1 (en) Depth map generation
Zheng et al. Single-image vignetting correction
Artusi et al. A survey of specularity removal methods
US10547786B2 (en) Image processing for turbulence compensation
KR101643607B1 (ko) 영상 데이터 생성 방법 및 장치
EP3158532B1 (en) Local adaptive histogram equalization
US9710715B2 (en) Image processing system, image processing device, and image processing method
Yang et al. Polarimetric dense monocular slam
Ng et al. Using geometry invariants for camera response function estimation
Yuan et al. Image haze removal via reference retrieval and scene prior
Müller et al. Illumination-robust dense optical flow using census signatures
WO2018171008A1 (zh) 一种基于光场图像的高光区域修复方法
WO2023284576A1 (zh) 深度图生成方法、装置、电子设备
Zheng et al. Single-image vignetting correction
US8577140B2 (en) Automatic estimation and correction of vignetting
JP2024507089A (ja) 画像のコレスポンデンス分析装置およびその分析方法
Lalonde et al. What does the sky tell us about the camera?
d’Angelo Radiometric alignment and vignetting calibration
AU2018202801A1 (en) Method, apparatus and system for producing a foreground map
CN113724143A (zh) 用于图像修复的方法和装置
Tung et al. Multiple depth layers and all-in-focus image generations by blurring and deblurring operations
US10929962B2 (en) Imposing a priori knowledge to estimate turbulence
Xiong et al. Color rank and census transforms using perceptual color contrast

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
FPAY Annual fee payment

Payment date: 20161019

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20171018

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20181018

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20191016

Year of fee payment: 7