KR20210006276A - 플리커를 약화시키기 위한 이미지 처리 방법 - Google Patents

플리커를 약화시키기 위한 이미지 처리 방법 Download PDF

Info

Publication number
KR20210006276A
KR20210006276A KR1020200018248A KR20200018248A KR20210006276A KR 20210006276 A KR20210006276 A KR 20210006276A KR 1020200018248 A KR1020200018248 A KR 1020200018248A KR 20200018248 A KR20200018248 A KR 20200018248A KR 20210006276 A KR20210006276 A KR 20210006276A
Authority
KR
South Korea
Prior art keywords
light source
frame
fss
bounding box
flickering
Prior art date
Application number
KR1020200018248A
Other languages
English (en)
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 KR20210006276A publication Critical patent/KR20210006276A/ko

Links

Images

Classifications

    • H04N5/2357
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/40Image enhancement or restoration using histogram techniques
    • 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
    • G06T5/94Dynamic range modification of images or parts thereof based on local image properties, e.g. for local contrast enhancement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/70Circuitry for compensating brightness variation in the scene
    • H04N23/71Circuitry for evaluating the brightness variation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/70Circuitry for compensating brightness variation in the scene
    • H04N23/73Circuitry for compensating brightness variation in the scene by influencing the exposure time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/70Circuitry for compensating brightness variation in the scene
    • H04N23/745Detection of flicker frequency or suppression of flicker wherein the flicker is caused by illumination, e.g. due to fluorescent tube illumination or pulsed LED illumination
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/50Control of the SSIS exposure
    • H04N25/53Control of the integration time
    • H04N5/2351
    • 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/10016Video; Image sequence
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)
  • Studio Devices (AREA)

Abstract

캡처된 비디오로부터 실시간으로 플리커 아티팩트를 제거할 수 있는 후처리 기술을 채용하는 이미지 처리 방법이 개시된다. 예시적인 방법은 장면을 나타내는 입력 프레임의 시퀀스를 이미지 센서로부터 수신하는 단계와, 입력 프레임 내에서 나타나는 광원을 추적하는 단계를 포함한다. 광원의 플리커링은 광원을 나타내는 영역의 프레임별 색 특성 변동을 검출함으로써 식별될 수 있다. 플리커링이 영역 내의 픽셀의 이미지 데이터를 선택적으로 수정함으로써 제거된 출력 프레임의 시퀀스가 생성될 수 있다.

Description

플리커를 약화시키기 위한 이미지 처리 방법{IMAGE PROCESSING METHOD FOR FLICKER MITIGATION}
본 개시 내용은 일반적으로 이미지 캡처 및 처리에 관한 것으로, 더욱 상세하게는, 비디오 스트림에서의 광원 플리커를 약화시키기 위한 이미지 처리 방법에 관한 것이다.
발광 다이오드(LED) 및 형광등은 통상적으로 50 Hz 내지 2kHz 범위의 주파수의 플리커(flicker)를 가지면서 장면을 조명하는 광원의 예이다. 비디오 카메라의 프레임 캡처 레이트는 플리커 주파수와 동기화되지 않을 수 있고, 카메라의 노출 윈도우는 플리커로 인한 프레임별 휘도 변동을 방지하기에는 너무 짧을 수 있다. 따라서, 결과적으로 캡처된 비디오는 디스플레이될 때 눈에 띄는 플리커 아티팩트(artifact)를 나타낼 수 있다. 또한, 일부 애플리케이션에서, 비디오는 첨단 운전자 보조 시스템(advanced driver assistance system(ADAS))과 같은 비디오 정보에 응답하는 외부 시스템으로 전송된다. 이러한 경우들에서, 자동차의 미등과 같은 광원은 플리커에 의해 휘도가 널(null) 값을 갖는 시점 근처에서 캡처된 프레임에서는 거의 표시되지 않으며, 이는 시스템에 의한 불완전한 응답을 초래할 수 있다.
플리커링을 해결하기 위한 종래 기술은 센서 도메인에서의 해결 방안과 이미지 병합(merger) 도메인에서의 해결 방안으로 분류될 수 있다. 센서 도메인에서의 해결 방안은 센서가 장면으로부터 정보를 수집하는 방법을 변경할 수 있다. 제1 접근 방식으로, 평균 캡처 휘도에서 프레임별 변동을 방지하기 위하여 프레임 노출 방식을 조정/변경할 수 있다. 제2 접근 방식으로, 플리커에 둔감한(flicker-insensitive) 데이터를 제공하도록 센서 요소 자체를 수정할 수 있다.
이미지 병합은 넓은 동적 범위 이미지를 생성하기 위하여 이미지 센서에서 사용되는 메커니즘이다. 이는 각각이 최종 이미지보다 더 작은 비트 깊이(bit depth)를 갖는 상이한 노출로 생성된 여러 개(통상적으로 2 내지 4개)의 이미지들의 데이터로부터 병합된 단일 이미지를 생성한다. 이미지 병합 도메인에서의 해결 방안은 장면으로부터의 플리커에 바이어스된 데이터에 따라 노출 시간을 서로 다르게 조정하고 이에 따라 서로 다른 병합 방법을 수행한다.
본 발명 개념의 실시예들은, 플리커링 광원을 나타내는 픽셀 데이터의 값을 선택적으로 보정하는 이미지 신호 프로세서를 이용하여, 실시간으로 캡처된 비디오에서 플리커링 아티팩트를 약화시키는 후처리 솔루션을 제안한다.
일 실시예에서, 이미지 처리 방법은, 장면을 나타내는 입력 프레임의 시퀀스를 이미지 센서로부터 수신하는 단계와, 입력 프레임 내에 나타나는 광원을 식별하는 단계와, 연속하는 입력 프레임 사이에서 식별된 광원을 추적하는 단계를 포함할 수 있다. 광원을 나타내는 영역의 프레임별 색 특성 변동을 검출함으로써 광원의 플리커링이 식별될 수 있다. 플리커링 영역 내의 픽셀의 이미지 데이터를 선택적으로 수정함으로써 플리커링이 제거된, 입력 프레임에 대응하는 출력 프레임의 시퀀스가 생성될 수 있다.
일례에서, 플리커링과 연관된 색 특성 변동은 광원의 적어도 하나의 색 공간 영역에서의 프레임별 변화에 의해 식별되고, 변화는 적어도 하나의 미리 정의된 기준을 만족할 수 있다. 적어도 하나의 색 공간 영역은 HSV(Hue Saturation Value) 색 공간 영역을 포함할 수 있다.
일 실시예에서, 이미지 처리 방법은, 장면의 각각의 이미지를 나타내는 현재 프레임 및 적어도 하나의 이전 프레임을 이미지 센서로부터 수신하는 단계를 포함할 수 있다. 플리커링 광원 의심 대상(flickering light source suspect(FSS))이 현재 프레임 내에서 식별되고, 각각의 FSS를 둘러싸는 경계 상자((bounding box)가 생성될 수 있다. 경계 상자는 연속하는 프레임 사이에서 추적되고, 이의 위치 및 크기가 추적에 기초하여 업데이트될 수 있다. 각각의 추적된 경계 상자의 세그먼트화가 수행될 수 있다. FSS의 플리커링이 검출되고, 이를 나타내는 픽셀의 이미지 데이터가 플리커링을 약화시키기 위하여 선택적으로 수정될 수 있다.
다른 실시예에서, 장치는 플리커 약화를 수행하는 카메라를 포함할 수 있다. 카메라는, 장면의 이미지를 캡처하고 장면을 나타내는 입력 프레임을 제공하도록 구성된 이미지 센서; 및 각각의 실시예에서 위에서 요약된 이미지 처리 방법의 어느 하나를 구현하기 위하여 명령어를 실행하도록 구성된 이미지 신호 프로세서를 포함할 수 있다.
일례에서, 장치는 차량일 수 있다.
또 다른 실시예에서, 비일시적인 컴퓨터 판독 가능한 기록 매체는, 이미지 신호 프로세서에 의해 실행될 때, 각각의 실시예에서 위에서 요약된 이미지 처리 방법의 어느 하나를 구현하는 명령어를 저장할 수 있다.
본 발명의 실시예에 따르면, 플리커링 광원을 나타내는 픽셀 데이터의 값을 선택적으로 보정하여, 캡처된 비디오에서 플리커링 아티팩트를 약화시킬 수 있다.
본 발명의 다양하면서도 유익한 장점과 효과는 상술한 내용에 한정되지 않으며, 본 발명의 구체적인 실시 형태를 설명하는 과정에서 보다 쉽게 이해될 수 있을 것이다.
본 발명 개념에 대한 전술한 실시예와 특징 및 다른 실시예와 특징은 유사한 도면 부호가 유사한 요소 또는 특징을 나타내는 아래와 같은 첨부된 도면과 함께 고려될 때 이어지는 상세한 설명으로부터 더욱 명확하게 될 것이다:
도 1은 플리커링 광원을 이용한 장면의 3개의 연속하는 프레임의 예시적인 비디오 시퀀스를 도시한다.
도 2는 본 발명 개념의 일 실시예에 따른 카메라가 장착된 장치의 예시적인 컴포넌트를 도시하는 블록도이다.
도 3은 일 실시예에 따른 플리커 약화를 위한 예시적인 이미지 처리 방법의 순서도이다.
도 4는 플리커링 광원의 광 세기와 입력 및 출력 프레임 각각에서의 픽셀의 밝기를 도시하는 타이밍도이다.
도 5는 일 실시예에 따른 플리커 약화를 위한 예시적인 이미지 처리 방법의 순서도이다.
도 6은 도 5의 방법에서의 주의(Attention) 루틴의 예시적인 동작을 나타내는 순서도이다.
도 7은 도 6의 루틴으로 실현될 수 있는 광원 객체 검출 결과의 일례를 도시한다.
도 8은 플리커링 광원 의심 대상(flickering light source suspect(FSS))에 대하여 경계 상자(bounding box)가 어떻게 정의될 수 있는지에 대한 일례를 도시한다.
도 9는 경계 상자 분석 및 분류를 위한 예시적인 동작 세트를 도시하는 순서도이다.
도 10은 경계 상자 분석 및 분류를 위한 다른 예시적인 동작 세트를 도시하는 순서도이다.
도 11은 도 9 또는 10의 경계 상자 분석 동작의 결과의 일례를 도시한다.
도 12는 광원 플리커 약화를 위한 예시적인 동작 세트를 도시하는 순서도이다.
다음의 설명은, 첨부된 도면을 참조하여, 예시적인 목적을 위하여 본 명세서에 개시된 본 발명의 개념의 소정의 예시적인 실시예에 대한 포괄적인 이해를 돕기 위하여 제공된다. 설명은 당해 기술 분야에서의 통상의 기술자가 본 발명의 개념을 이해하는 것을 돕기 위한 다양한 특정 상세를 포함하지만, 이러한 상세는 단지 예시적인 것으로 간주되어야 한다. 간단하고 명료하게 하기 위해, 잘 알려진 기능 및 구성에 대한 설명은 이의 포함이 당해 기술 분야에서의 통상의 기술자에 의한 본 발명의 개념의 이해를 모호하게 할 수 있을 때 생략될 수 있다.
이하 설명되는 본 발명 개념의 실시예들은 종래 기술의 센서 도메인 해결 방안 및 이미지 병합 도메인 해결 방안과는 상이한 종류의 해결 방안에 초점을 둔다. 즉, 본 발명 개념은 데이터 핸들링에 대한 다음의 상이한 접근 방식에 기초한다: 이미지 신호 프로세서(ISP) 기반의 시스템이 생성된 이미지를 보정하는 후처리 솔루션. 종래의 방법들이 장면에서 데이터가 획득되는 방법을 변경하지만, 본 발명 개념은 이미지 센서로부터 수신된 오류가 있는 데이터에 작용하여 이를 보정하고, 이에 따라 다양한 센서에 더욱 적합하게 하고 더 높은 범용성을 가질 수 있다.
이하 설명되는 실시예들은 LED와 같은 플리커링 광원(flickering light source(FLS))에 의해 본질적으로 생성된 비디오 시퀀스 내에서의 원하지 않는 플리커링을 보상한다. 다양한 실시예에서, 플리커링은 FLS로서 식별되는 영역의 외부가 아닌 이 영역의 내에서 국지적으로 보정된다. 따라서, 이미지 프레임 내에서 단지 셀의 작은 부분만이 보정을 위하여 선택될 수 있다. FLS가 ON인 동안 OFF일 때보다 더 밝고 차이가 크다는 점을 가정할 수 있다. 광원의 의도적인 플리커링, 예를 들어 횡단보도 신호등 또는 차량의 신호 표시등과 같은 블링킹(blinking)은 상대적으로 더 낮은 플리커링 주파수를 가지므로 FLS와 구분될 수 있다.
다음의 설명에서, 이미지 센서 픽셀과 연계하여, "픽셀의 휘도(luminance)" 또는 유사한 용어는 픽셀의 이미지 데이터에 의해 표현되는 휘도를 나타내고, 휘도는 그 픽셀에 대응하는 캡처된 장면에서의 영역의 휘도이다.
도 1은 FLS 플리커 효과를 겪는 캡처된 비디오 시퀀스의 3개의 연속적인 프레임의 예시적인 시퀀스를 도시한다. 카메라 시스템은 미등이 조명된 차량을 포함하는 장면을 캡처할 수 있다. i+1번째 프레임에서의 미등의 휘도가 i번째 프레임 및 i+2번째 프레임에서의 휘도보다 상당히 더 낮다는 것을 알 수 있다. 적어도 3개의 프레임의 과정 동안의 갑작스러운 휘도 감소 및 재출현은, 갑작스러운 그림자 또는 자동차의 브레이크의 온-오프 동작과 같은 외부 요인이 아니라 FLS 휘도 변동 때문인 것으로 인식될 수 있다. 이하 설명되는 실시예에서, i+1번째 프레임과 같은 프레임에서 광원을 나타내는 픽셀의 휘도는 밝은 프레임의 레벨로 증가될 수 있고, 그리고/또는 광원 세그먼트의 색 특성은 프레임 사이에 매칭될 수 있으므로, 이에 의해 플리커가 디스플레이를 보는 사용자, 외부 ADAS 시스템 또는 광원에 응답하는 이와 유사한 것에 의해 더 이상 관찰 가능하지 않을 수 있다. FLS가 식별되면, 예를 들어, 단지 몇 프레임의 후처리로 인한 프레임 지연 또는 심지어 단일 프레임보다 훨씬 더 짧은 프레임 지연을 가지면서 실질적으로 실시간으로 보정을 수행할 수 있다.
도 2는 본 발명 개념의 일 실시예에 따른 카메라가 장착된 장치(20)의 예시적인 컴포넌트를 도시하는 블록도이다. 카메라가 장착된 장치(20)는 캡처된 비디오에서 플리커링을 약화시켜 이익을 얻는 임의의 장치일 수 있다. 일례로, 카메라가 장착된 장치(20)는, 비디오에서 보정되지 않은 FLS가 성능 열화를 야기할 수 있는 차량 주변의 캡처된 비디오에 응답하는 ADAS, 또는 자율 운전 시스템이 장착된 차량이다. 예시적인 차량은, 추가로 또는 대안적으로, 비디오를 캡처하고 이를 디스플레이 상에 디스플레이하는 차량 내장 정보(IVI(In-Vehicle-Information)) 시스템을 포함할 수 있다. 다른 예는 단독형 카메라, 스마트폰 또는 장면에서 FLS로 인한 플리커링 아티팩트가 생성될 수 있는 실시간 디스플레이를 사용자가 보는 것과 같은 장치들을 포함할 수 있다. 또 다른 예는, 로봇, 의료 영상 촬영 장치, 보안 시스템 등을 포함할 수 있다.
장치(20)는 이미지 센서(210), 렌즈(L), 이미지 신호 프로세서(Image Signal Processor, ISP)(220) 및 메모리(230)를 구비하는 카메라(200)를 포함한다. 장치(20)는 (일부 예에서 카메라(200)의 일부인) 디스플레이(240)와, 응답 시스템(250) 등을 더 포함할 수 있다. 이미지 센서(210)는 CCD 또는 CMOS 센서, 또는 미리 정해진 프레임 레이트로 노출 윈도우에서 렌즈(L)를 통해 이미지를 캡처하는 센서 등일 수 있다. 이미지 센서(210)의 픽셀에서 수집된 전하를 나타내는 데이터는 임의의 종래 방식으로 입력 프레임으로서 이미지 신호 프로세서(220)로 독출될 수 있다. 이미지 신호 프로세서(220)는 입력 프레임을 통상적으로 처리하기 위하여, 그리고 또한 아래에서 논의되는 플리커 약화를 위하여, 메모리(230)와 협력할 수 있다. 이에 의해, 이미지 신호 프로세서(220)는, FLS를 나타내는 적어도 일부 영역에서 픽셀 데이터가 보정된, 입력 프레임에 대응하는 출력 프레임을 제공할 수 있다. 메모리(230)는 여기에서 설명되는 처리 동작을 실행하기 위하여 이미지 신호 프로세서(220)에 의해 판독되고 실행되는 명령어를 저장할 수 있다. 또한, 메모리(230)는 계산의 중간 결과, 계산을 위한 프레임 데이터 및 원하는 경우 이후의 검색을 위한 출력 프레임을 저장할 수 있다. 특정 애플리케이션에 따라, 출력 프레임은 디스플레이(240) 및/또는 응답 시스템(250)에 비디오로서 출력될 수 있다. 디스플레이(240)는 플리커 아티팩트가 약화된 출력 프레임을 디스플레이한다. 응답 시스템(250)은, 장치(20)가 차량인 경우 충돌 회피와 같은, 비디오에 대한 적합한 응답을 발생시킬 수 있다.
도 3은 일 실시예에 따른 플리커 약화를 위한 예시적인 이미지 처리 방법(300)의 순서도이다. 방법(300)의 동작들은 이미지 신호 프로세서(220)에 의해 수행될 수 있다. 도 4는, 방법(300)의 개념을 도시하기 위한, 플리커링 광원 광 세기와 입력 및 출력 프레임 각각에서의 픽셀의 휘도를 도시하는 타이밍도이다. 도 3 및 4를 총괄하여 참조하면, 입력 프레임의 시퀀스가 미리 정해진 프레임 레이트로 이미지 센서(210)로부터 수신된다(동작(310)). 예를 들어, 도 4는 플리커링 광원(FLS)의 광원 세기(IFLS)가 프레임 레이트(FR)와 상이한 플리커 주파수(FL)를 갖는 일례를 가정할 수 있다. 광원 세기(IFLS)는 TFL = 1/FL의 주기로 일련의 피크(PK) 사이에 (그리고 또한 일련의 널(Nu) 사이에) 주기적으로 변동할 수 있다. 주기적인 세기 변동의 파형 특성은 광원에 의존할 수 있다. 예를 들어, 정류된 사인파 형태의 파형이 다른 예에서 예시되고, 파형은 펄스 폭 변조(PWM) 형상을 닮을 수 있다. 어떠한 경우에도, 이미지 센서(210)는 출력 프레임(첫번째 프레임, 두번째 프레임, 세번째 프레임, ...)의 시퀀스를 생성하도록 균일한 지속 시간의 주기적인 노출 윈도우(EW1, EW2, EW3, ...)에서 광을 캡처하고 측정하기 위하여 카메라(200)의 컨트롤러(도시되지 않음)에 의해 제어되는 전자적 또는 기계적 셔터를 가질 수 있다. 노출 윈도우 각각이 플리커 주기(TFL)보다 더 짧은 지속 시간을 갖기 때문에, FLS 내의 픽셀의 휘도는 플리커 때문에 프레임별로 균일하지 않을 수 있다. 다른 색 특성이 플리커 때문에 프레임별로 FLS 영역에서 변동할 수 있다. 예를 들어, FLS 영역에서의 (R, G 및 B 서브 픽셀로 구성된) 픽셀의 복합 색상이 HSV 공간(HSV = Hue Saturation Value)에서 표현되면, 색 특성은 (휘도를 대략적으로 나타낼 수 있는) V 채널에서뿐만 아니라 H 및/또는 S 채널에서도 변동할 수 있다.
이미지 신호 프로세서(220)는, 예를 들어, 대부분의 픽셀 또는 모든 픽셀이 임계값(Th)보다 더 높은 휘도를 갖는 픽셀 클러스터를 검출하기 위한 클러스터링 알고리즘을 이용함으로써, 시퀀스의 주어진 입력 프레임 내의 광원을 초기에 식별할 수 있다; 그리고, 이미지 신호 프로세서(220)는 프레임별로 광원을 추적할 수 있다(320). 임계값(Th)은, 임계값(Th)이 시간 종속적이 되도록, 프레임 통계에 따라, 각각의 프레임에 대하여 독립적으로 결정될 수 있다. 일례에서, 임계값(Th)은 전체 프레임에서의 픽셀의 평균 휘도보다 소정의 비율 또는 고정된 값보다 더 많은 만큼 더 높은 휘도 레벨로서 결정될 수 있다(평균은 단지 프레임 통계의 하나의 예이다). 또한, 클러스터가 발생 가능한 FLS로서 추가 고려 사항에 관련되는지 여부에 관하여 초기에 판단하는 데에 있어서 클러스터의 형상 및/또는 크기와 같은 다른 인자가 고려될 수 있다. 아래에서 플리커링 광원 의심 대상(flickering light source suspect(FSS))이라고 지칭되는 발생 가능한 FLS가, 플리커 약화를 위하여 이어서 보정될 수 있다.
초기에 FSS가 단일 프레임에서(또는 대안적으로 더 높은 신뢰 레벨을 실현하기 위하여 모션 예측을 이용하여 2 이상의 연속적인 프레임 동안) 식별되면, 방법은 FSS가 플리커링 광원(FLS)인지 검출할 수 있다(330). 이 판단은 단지 2개의 연속적인 프레임에 대한 픽셀 클러스터에서의 휘도 레벨의 분석을 포함할 수 있고, 선택적으로는 다른 색 특성의 분석을 포함할 수 있으며, 연속적인 프레임의 개수는 신뢰 레벨에 따라 선택될 수 있다. 예를 들어, 도 4는 픽셀의 휘도 레벨(Yp)에만 기초하는 임계값(Th)에 대한 비교에 의한 플리커 판단 및 보정을 도시할 수 있다. 도 4에서의 첫번째 프레임은 플리커링 광원(FLS)의 세기 파형의 피크(PK) 근처에 중심을 둔 노출 윈도우(EW1) 동안 캡처되는 것으로 도시된다. 첫번째 프레임이 세기 파형의 높은 세기 부분 동안 캡처되기 때문에, 첫번째 프레임에서 FSS를 나타내는 픽셀 클러스터의 평균 휘도(Yp)는 임계값(Th) 위의 Yp ~ Y1일 수 있다. (설명을 간단하게 하기 위하여, 임계값(Th)은 프레임별로 동일한 것으로 도시된다; 그러나, 위에서 언급된 바와 같이, 임계값(Th)은 프레임 통계에 기초하여 프레임별로 다를 수 있다) 그러나, 두번째 프레임은 세기 파형의 널(Nu)을 포함하는 노출 윈도우(EW2) 동안 캡처될 수 있다. 따라서, 두번째 프레임의 노출 윈도우(EW2) 동안, FSS 픽셀의 평균 휘도(Y2)는 Th보다 작다. 이 점에서, FSS를 나타내는 픽셀 클러스터는 FLS로서 확인될 수 있고, 이하 FSC(Flickering Source Confirmed(확인된 플리커링 광원))로 정의될 수 있다. 여기에서, 픽셀의 휘도를 분석하고 FSS의 플리커링을 식별하는 한 방법은 먼저 RGB 데이터를 HSV 색 공간으로 변환하는 것일 수 있다. HSV 표현에서, 값(V) 채널의 히스토그램의 밀도에서 분명한 변화가 있다면, FSS는 플리커링으로 고려될 수 있다. (히스토그램의 밀도는 확률 분포로서 이해될 수 있다; 밀도 변화는 확률 분포의 형상에서의 변화로서 이해될 수 있다.) 2개의 프레임만을 분석할 때, 하나의 예시적인 접근 방식은 플리커가 점멸하는 신호등의 플리커와 같은 의도적인 깜빡임일 수 있다는 위험을 감수할 수 있다. 이 경우에, 플리커가 의도적일 수 있다 하더라도, 프레임은 잘못 "보정"될 수 있다. 미리 정해진 개수의 프레임에 대하여 위험을 감수할 수 있고, 플리커가 의도적이라고 이어지는 프레임 데이터의 분석이 결론지으면, 그 광원에 대한 후속 보정은 이루어지지 않는다. 이러한 "계산된 위험"을 감수하는 이유의 일부는 카메라가 충분히 높은 레이트로 장면을 샘플링하지 않아서 발생되는 앨리어싱(aliasing) 문제가 존재할 수 있다는 것, 즉 초당 프레임(FPS(frame per second))이 낮다는 것 때문이다.
플리커링을 식별하기 위하여 프레임별 색 특성 변동을 검출하는 것은 변화가 적어도 하나의 미리 정의된 기준을 만족하는 적어도 하나의 색 공간 내에서 광원의 볼륨 위치(volume location)에서의 프레임별 변동을 식별하는 것을 포함할 수 있다. 광원을 나타내는 픽셀이 임의의 주어진 프레임에서 각각 약간 다른 색 특성을 가지고 이에 따라 총괄적으로 각각의 프레임에 대하여 색 공간에서 작은 부피를 차지할 수 있다. 일례에서, 적어도 하나의 색 공간은 단일 색 공간, 예를 들어, HSV이다. 다른 예에서, 적어도 하나의 색 공간은 HSV 색 공간과 YUV 색 공간의 조합일 수 있다(아래에서 논의됨).
도 4의 예에서, 세번째 프레임의 노출 윈도우(EW3)는 다른 피크(PK) 근처에 있고, 이에 의해 FSS 픽셀의 평균 휘도(Y3)는 임계값(Th) 위에 있을 수 있다. 이 검출로부터 FSC가 의도적인 플리커가 아닌 본질적인 플리커로 인한 것이라는 점을 확인할 수 있다. 이 대신에, 본질적인 FLS 플리커링의 검출은 단지 2개의 프레임에 대하여 상이한 색 변화 특성을 검출함으로써 의도적인 플리커링과 구별될 수 있다. 예를 들어, "예측된" 히스토그램이 히스토리 데이터를 이용하여 구축될 수 있고, 그 다음 현재 프레임으로부터의 데이터가 히스토그램 데이터에 비교될 수 있다; 예측된 히스토그램에 상대적인 현재 프레임 데이터의 분석은 본질적인 플리커 또는 의도적인 플리커의 즉각적인 검출을 제공할 수 있다.
시간 t1, t2 및 t3가 각각의 노출 윈도우 주기(EW1, EW2, EW3)의 종료를 나타내고, 이미지 센서(210)로부터의 데이터 독출은 이 시간들로부터 시작할 수 있다. (롤링 셔터(rolling shutter)가 사용된다면, 프레임 내의 일부 라인의 데이터 독출은 노출 주기 동안 시작할 수 있다.) 따라서, FSS는, 아래에서 논의되는 바와 같이, 시간 t2의 약간 후이지만 보정을 위한 추가 처리를 반영하는 시간 (t2+Δ) 전인 시간에 FSC로서 확인될 수 있다.
또한, 전술한 논의에서, 이해를 간단하게 하기 위하여, 임계값(Th)은 각각의 프레임에 대하여 동일한 것으로 가정되었다. 그러나, 다른 예에서, 임계값은, 임계값이 프레임의 평균 휘도에 기초하는 경우와 같이, 프레임별로 동적으로 변화할 수 있다. 프레임의 평균 휘도는 환경에 따라 한 프레임에서 다음 프레임으로 상당히 변화할 수 있다.
광원의 플리커링이 검출되면(FSS = FSC), 이미지 신호 프로세서(220)가 FSS 픽셀의 색 특성이 보정된 출력 프레임의 시퀀스를 생성할 수 있는 동작(340)으로 진행할 수 있다. 상대적으로 극단적으로 단순한 예에서, 색 특성은 "저레벨 프레임(low level frame)"이라 하는 FSC의 평균 휘도가 임계값(Th) 아래에 있는 프레임의 FSC 픽셀에서 휘도를 증가시키는 방식으로 보정될 수 있다. 예를 들어, 도 4는 두번째 입력 프레임이 저레벨 프레임인 것을 도시하고, 이에 의해 방법은 대응하는 출력 프레임 2에서의 FLS 픽셀의 휘도(Yp)를 임계값(Th) 위의 보정된 레벨(Y2c)로 증가시키는 것일 수 있다. 이 예에서, 보정은, 시간 t2 직후일 수 있는(또는 이미지 센서가 롤링 셔터를 사용하고 FSS가 초기 라인 독출 영역 내에 있는 경우에는 약간 더 이를 수 있음), 플리커가 검출되지마자 저레벨 프레임에 대하여 이루어질 수 있다. 출력 프레임은, 필요하다면, 보정을 위한 추가 처리 시간(Δ) 후에 생성될 수 있다. 따라서, 첫번째 입력 프레임, 두번째 입력 프레임 및 세번째 입력 프레임은 각각 시간 t1, 시간 t2 및 시간 t3에서 이미지 신호 프로세서(220)에 의해 수신되고, 첫번째 출력 프레임, 두번째 출력 프레임 및 세번째 출력 프레임은 각각 시간 (t1+Δ), 시간 (t2+Δ) 및 시간 (t3+Δ)에 시작하여 디스플레이(240) 및/또는 응답 시스템(250)으로 출력될 수 있고, 여기에서, Δ는 실시간 비디오에 대한 전형적인 측정 기준인 하나의 프레임 미만의 시간일 수 있다.
대안적인 실시예에서, 의도적인 플리커를 잘못 보정하는 위에서 언급된 "계산된 위험"이 감수되지 않는다면, 하나 이상의 초기에 검출된 저레벨 프레임이 그대로, 즉 보정 없이 출력될 수 있다. 실시간 비디오로서 디스플레이되는 출력 프레임의 경우에, 단지 몇 개의 저레벨 프레임의 디스플레이는 사용자의 눈의 띄지 않을 수 있다. 이 실시예에서, FSS가 새로 검출된 다수의 초기 프레임들에서 FSC가 존재한다고 시스템이 판단하면, 이어지는 저레벨 프레임은 이것이 검출되자마자 보정될 수 있어, 대기 시간(latency)을 잠재적으로 감소시킬 수 있다. 예를 들어, 도 4에서, 첫번째 입력 프레임 바로 전의 프레임 시퀀스에 기초하여 FSC가 검출된다고 가정하자. 그 다음, 첫번째 출력 프레임이 시간 (t1+Δ)에서 시작하여 출력될 수 있고, Δ은 TFR보다 짧은 의도적인 지연이다. 다음으로, 시간 t2 직후에, FSC 픽셀 데이터가 다시 판독되고, 평균 레벨 Y2가 Th보다 작다고 판단되며, 이에 의해 첫번째 입력 프레임 바로 전의 프레임 히스토리에 기초하여 두번째 입력 프레임이 저레벨 프레임으로서 즉시 인식될 수 있다. 그 다음, 이미지 신호 프로세서(220)는 플리커가 실제로 존재한다고 확인하기 위하여 다음 세번째 입력 프레임을 대기할 필요 없이 시간 t2 바로 후에 픽셀을 즉시 보정할 수 있다. 따라서, 이 실시예에서, 초기의 저레벨 프레임(시간 t1 이전)이 그대로 출력되더라도, 후속 프레임에서의 지연(Δ)은 감소될 수 있다.
동작(340)에서 광원 플리커링이 검출되지 않으면, 플리커 약화를 위한 FSS 픽셀의 이미지 데이터의 수정 없이 출력 프레임이 생성될 수 있다(350).
도 5는 일 실시예에 따른 플리커 약화를 위한 예시적인 이미지 처리 방법(500)을 도시하는 순서도이다. 방법(500)은 도 3의 방법(300)의 일례이고, 이미지 센서(210)로부터 입력 프레임을 수신하는 이미지 신호 프로세서(220)에 의해 수행될 수 있다. 방법(500)에서, 제1 동작(510)은 이미지 센서(210)로부터 현재 프레임을 수신하고, 메모리(230)로부터 이전 프레임(본 명세서에서, 바꾸어서 "히스토리 프레임"이라 한다)을 수신하는 단계; 현재 및 이전 프레임들에 밀도 있는 모션 예측(Motion Estimation, ME)을 수행하는 단계; 및 모션 예측에 기초하여 모션 벡터 필드(Motion Vector Field, MVF)를 계산하는 단계를 포함한다. 이전 프레임은, 도 5에 독립적으로 도시되지만, 메모리(230) 내의 히스토리 데이터베이스(590)에 저장되어 있을 수 있다. 일부 경우에, 모션 예측은 히스토리 데이터베이스(590) 내에 저장된 2 이상의 이전 프레임으로부터의 데이터를 활용할 수 있다.
다음으로, "주의(Attention)" 루틴이 방금 계산된 모션 벡터 필드와 히스토리 데이터베이스(590)로부터 수신된 히스토리 데이터(있는 경우에)를 이용하여 현재 프레임에 실행될 수 있고, 후자는 경로(522)로 표시될 수 있다. (이전에 언급된 바와 같이, 새로운 광원을 식별하기 위하여 단일 프레임이 분석될 수 있더라도, 프레임 사이의 모션 예측을 이용한 2 이상의 프레임의 사용은 픽셀 클러스터가 광원을 실제로 나타낼 수 있다는 신뢰 레벨을 증가시킬 수 있다.) 주의 루틴은 의심되는 플리커링 광원, 즉, 플리커링 광원 의심 대상(flickering light source suspect(FSS))에 주의를 기울이게 할 수 있고, 또한 FSS를 둘러싸는 의심 대상 경계 상자(suspect bounding box(BB))를 정의할 수 있다. 의심 대상 BB는 적어도 하나의 FSS를 포함하는 BB일 수 있다(따라서, 플리커링 광원(FLS)을 포함하는 것으로 의심되는 BB이다). 현재 프레임 및 이전 프레임이 방법(500)의 맨 처음 2개의 프레임이라면, 예를 들어, 카메라(220)가 처음 켜질 때인 초기 처리 동안, 출력되는 모든 의심 대상 BB는 프레임 시퀀스에서 처음으로 나타나는 새로운 광원을 포함할 것이다. 아니면, 출력된 의심 대상 BB의 일부는 이전에 검출되고 추적 루틴(아래에서 논의됨)에 의해 추적되는 FSS를 포함하는 "추적되는 BB"일 수 있다. 주의 루틴의 일례는 도 6 내지 8과 관련하여 나중에 논의된다.
다음으로, 경계 상자 비교 루틴("연관(Association)" 루틴이라고도 함)이 주의 루틴으로부터 출력된 의심 대상 BB에 실행될 수 있다(530). 연관 루틴은 히스토리 데이터베이스(590)로부터의 히스토리 프레임(있는 경우)(경로(532)로 표시됨)을 이용하여 현재 프레임에서 정의된 의심 대상 BB를 이전 BB과 비교하고, 중복된 것을 삭제할 수 있다. 이전 BB는 최근의 이전 프레임에 존재한 BB이고, 히스토리 데이터의 일부일 수 있다. 삭제되지 않은 임의의 의심 대상 BB는 "확인된 BB"(또는 "새로 발견된 BB")로서 고려될 수 있고, 임의의 다른 확인된 BB와 함께 다음 처리 단계로 출력될 수 있다. 현재 프레임과 이전 프레임이 방법(500)의 맨 처음 2개의 프레임이라면, 동작(520)에서 수신된 모든 의심 대상 BB는 확인된 BB로서 고려될 수 있다.
예를 들어, 동작(530)의 연관 루틴은 제1 데이터 세트 및 제2 데이터 세트를 수신할 수 있다. 제1 데이터 세트는 현재 프레임에서의 의심 대상 BB 세트일 수 있다. 이 BB는 현재 프레임에 적용된 주의 루틴에 의해 발견되는 관심 의심 대상 영역을 나타낸다. 예를 들어, 이 세트는 프레임 시퀀스에서 처음으로 나타나는 새로운 광원을 포함할 수 있다.
제2 데이터 세트는 현재 프레임에서 나타나는 추적된 BB 세트일 수 있다. 이 세트는, 경로(534 및 536)로 표시되는 바와 같이, 동작(540)에서 실행되는 "추적기(tracker)"에 의해 제공될 수 있다. 제2 세트는 현재 프레임에서 추적기에 의해 발견되는 알려진 광원을 나타낸다. 2개의 세트를 병합하기 위하여, (동작(530)의) 데이터 연관 절차는 제1 및 제2 세트의 경계 상자 사이의 매칭을 체험적으로(heuristically) 수행하여 새로운 BB를 확인된 BB로서 식별할 수 있다. 위에서 언급된 입력과 출력을 갖는 임의의 적합한 패치 기반(patch-based) 연관 모듈이 데이터 연관 절차를 위하여 활용될 수 있다. 이것은, 예를 들어, 2개의 BB 사이의 거리에 기초한 매칭을 포함할 수 있고, 거리(예를 들어, 유클리드 노름(Euclidean norm)으로서 알려진 L2 거리)는 선택된 특징 공간(feature-space)에서 측정된다.
"추적기"에 의해 수행되는 추적(Tracking) 단계라 할 수 있는 동작(540)은 확인된 BB를 수신하고, 모든 BB(경로(534, 536)와 관련하여 위에서 논의된 현재 프레임의 BB)를 추적하고, BB 위치와 크기를 업데이트할 수 있다. 추적 작업을 위하여, 입력 BB는, 픽셀의 사각형("BB 사각형")의 상부 왼쪽 코너의 좌표 및 이의 길이와 폭과 같이, 특정의 초기 BB 사각형에서 정의될 수 있다. 추적기의 출력은 다음의 프레임에서의 매칭되는 BB의 위치와 크기일 수 있다. 추적 과정은 시퀀스 내의 다음 프레임에서의 BB의 위치(픽셀 좌표로) 및 크기(픽셀에서의 폭과 높이)를 추적할 수 있다. 예를 들어, 위에서 언급된 입력과 출력을 갖는 임의의 적합한 패치 기반 추적 모듈이 추적기 작업을 위하여 활용될 수 있다. 이것은, 예를 들어, 상관 필터(correlation filter)에 기초한 적응적 추적 모델(adaptive tracking model)을 포함할 수 있다. (방금 논의된 추적 동작(540)이 또한 방법(300) 내에서 동작(520)에 포함될 수 있다.)
추적 절차 후에, 업데이트된 BB 위치와 크기를 이용하여 BB 분석, 세그먼트화(segmentation) 및 분류(classification)가 수행될 수 있다(550). 여기에서, 각각의 BB는 각각의 BB 내의 세그먼트를 정의하는 세그먼트화 스킴을 이용하여 연결 컴포넌트로 내부적으로 분할될 수 있다. 그 다음, 각각의 세그먼트는 광원, 일반적인 물체 또는 배경 요소로서 분류될 수 있다. (동작(550)을 구현하기 위한 예시적인 방법은 도 9 내지 11를 참조하여 아래에서 설명된다.) 그 다음, 플리커를 겪는 (이미 광원으로 분류된) 세그먼트에 광원 약화가 수행될 수 있다(560). 이 동작에서, 출력 프레임 시퀀스를 생성하기 위하여, 확인된 플리커링 소스의 픽셀 값이 보정될 수 있다. 이 동작은 이전 프레임으로부터의 히스토리 데이터를 히스토리 데이터베이스(590)로부터 이용하고, 현재 프레임에 대한 결과를 히스토리 데이터베이스(590)로 출력할 수 있다. (동작(560)의 일례는 도 12에 관하여 아래에서 설명된다.) 그 다음, 출력 프레임은 디스플레이되도록 디스플레이(240)로 출력될 수 있고(570) 그리고/또는 이미지에 대한 적절한 응답을 생성하는 응답 시스템(250)으로 출력될 수 있다(580).
도 6은 방법(500)의 주의 루틴(520)의 예시적인 동작을 도시하는 순서도이다. 주의 루틴은 광원으로서의 의심 대상(FSS)을 검출하고, 플리커 약화가 이어져야 하는지 확인하기 위한 추가 검사를 위하여 이를 전달할 수 있다. 이 목적으로, 현재 프레임, 적어도 하나의 히스토리 프레임 및 이 프레임들 사이의 MVF가 먼저 수신될 수 있다(610). 그 다음, 현재 프레임의 픽셀 값이 RGB(적색 녹색 청색(Red Green Blue)) 색 공간으로부터 HSV(Hue Saturation Value) 색 공간으로 변환될 수 있다; 그리고, 일반적인 발광(luminosity) 상태 시험 및 적응적("스마트") 임계 처리(thresholding)가 수행될 수 있다(620). HSV 색 공간에서, 스마트 임계 처리는 S 및 V 채널에 대한 이미지 특성에 기초할 수 있다. 프레임 내에서 광원, 특히 FSS를 식별하기 위하여 일반적인 임계 처리를 수행할 때, 주어진 픽셀에 대한 V 채널 값이 미리 정해진 임계값(FSS 픽셀 값은 일반적으로 이 위에 있다) 위에 있다면, 제1 이진 값(예를 들어, "1")이 그 픽셀에 할당될 수 있다. 아니라면, 제2 이진 값(예를 들어, "0")이 할당될 수 있다. 유사한 할당 스킴이 S 채널에 적용될 수 있다. S 및 V 채널에 대한 픽셀 데이터가 모두 해당하는 임계값 위에 있다면, FSS 픽셀의 특성을 가질 수 있는 높은 확률이 그 픽셀에 할당될 수 있다. 유사한 결과가 주어진 픽셀에 근접한 픽셀 클러스터에 대하여 획득된다면, 그 픽셀 클러스터가 FSS를 구성한다고 판단될 수 있다.
FSS를 식별하기 위한 임계 처리에 대한 상술한 일반적은 접근 방식은 프레임의 전반적인 조명 조건을 고려하는 스마트 임계 처리 방식을 이용하여 동작(620)에서 한 단계 더 나아가게 될 수 있다. 시험은 이미지가 양호하게 조명된 장면에서 또는 어두운 장면 동안 촬영되었는지 확인하기 위하여 현재 이미지(현재 프레임에 대응)의 일반적인 발광 상태에서 수행될 수 있다. 전반적인 조명 조건에 따라 상이한 임계값이 적용될 수 있다. 예를 들어, 일반적인 발광 시험의 결과에 따라 상이한 중요도(significance)가 S 채널에 적용될 수 있다. 또한, 매우 밝지만 나쁜 포화를 갖는 물체에 대하여 특별한 주의가 기울여질 수 있다. 예를 들어, 야간 시간 동안, 값(V) 파라미터가 포화보다 훨씬 더 중요한 것으로 고려될 수 있어, 이에 의해 포화는 무시될 수 있다.
픽셀 클러스터가 임계 처리 분석에 기초하여 가능 FSS로서 식별되면, 원하지 않은 대상을 제거하기 위하여 필터링이 수행될 수 있다(630). 필터링은 동작(620)의 결과를 일련의 디지털 필터에 적용하는 것을 포함할 수 있다. 남아 있는 대상은 FSS로서 고려될 수 있다. 그 다음, FSS를 확인하기 위하여, MVF로부터의 데이터를 이용하여 이 단계의 결과를 히스토리 이미지로부터의 정보와 비교할 수 있고, BB가 각각의 FSS에 대하여 표시될 수 있다.
여기에서, 방법(500)의 예시적인 동작(520)으로서 설명된 도 6의 동작들은, 또한, FSS가 입력 프레임 내에 식별되는 방법(300)의 동작(320) 내에 포함될 수 있다.
도 7은 도 6의 루틴(600)으로 실현될 수 있는 광원 객체 검출 결과의 일례를 도시한다. 상부 이미지는 카메라(200)로 캡처될 수 있는 원래 장면의 이미지이다. 장면은 도로 상에서 이동하는 차량을 포함하고, 미등, 신호등 및 객체로부터의 반사와 같은 다양한 요소가 플리커링 광원 의심 대상(FSS)일 수 있다. 하부 이미지는 작은 백색 영역이 각각 장면의 FSS를 나타내는 루틴(600)의 예시적인 결과를 도시한다. 따라서, 플리커링 광원(FLS) 검출의 목적으로, 프레임은 백색 영역과 흑색 영역으로 분할될 수 있고, 백색 영역은 프레임의 FSS를 나타낼 수 있다.
동작(640)에서, 경계 상자(BB)가 각각의 FSS에 대하여 정의될 수 있다. 도 8은 경계 상자(BB)가 FSS에 대하여 어떻게 정의되는지의 일례를 도시한다. 이 예에서, 경계 상자(BB)는 길이와 폭이, 즉, 직교하는 방향의 각각에서, FSS의 가장 긴 해당하는 치수보다 더 큰 직사각형이다. 실시예에서 대체로 길쭉한 프로파일을 가지지만 불규칙한 형상을 갖는 FSS를 도시한다. FSS의 둘레를 고려하여, 2개의 둘레 점(perimeter point) 사이의 최대 거리를 알아낼 수 있고, 이 2개의 점 사이의 직선은 FSS의 장축(AMAJOR)에 정렬될 수 있다. 예를 들어, 최대 거리(d1)는 점(p1) 및 점(p2) 사이에 존재하고, 점(p1) 및 점(p2) 사이의 직선은 장축(AMAJOR)에 정렬될 수 있다. 단축(AMINOR)은 장축(AMAJOR)에 직교하는 방향으로 정의될 수 있다. 단축(AMINOR)은 장축(AMAJOR)에 직교하는 방향으로 가장 멀리 떨어진 2개의 둘레 점(p3, p4) 사이에 그려질 수 있다. 경계 상자(BB)는 직사각형 형상의 꼭짓점(B1, B2, B3, B4)에 의해 정의된다. 제1 "버퍼 거리(d3)"는 점(p1)과 경계 상자(BB)의 근접하는 짧은 변(B1-B3을 잇는 선) 사이로 설정될 수 있다. 유사하게, 제2 버퍼 거리(d3)는 반대 측에 정의될 수 있다; 제1 버퍼 거리(d4)는 점(p3)과 경계 상자의 근접하는 긴 변(B1과 B2 사이의 선) 사이로 설정된다; 그리고, 제4 버퍼 거리(d4)는 반대 측에 정의될 수 있다. 이러한 방식으로 버퍼 거리를 설정함으로써, 프레임별 경계 상자의 추적과 FSS의 추적이 용이하게 될 수 있다. 일례로서, 경계 상자(BB)의 긴 변과 짧은 변은, 직교하는 방향으로, 각각 가장 긴 FSS 거리(d1, d2)보다 적어도 10% 더 길 수 있다(그리고, 일부 예에서, 대략 30% 더 길고, 다른 예에서, 30% 미만으로 더 길다).
일 실시예에서, 프레임을 정의하는 픽셀 그리드의 x-y 평면에 정렬된 경계 상자(BB)가 형성된다. 이 경우에, 장축(AMAJOR)이 x 축에 정렬되고, 단축(AMINOR)은 y 축에 정렬되거나, 또는 그 반대이다. 다른 실시예에서, 경계 상자(BB)의 변들은 반드시 x-y 평면에 정렬될 필요가 없어, 장축(AMAJOR) 및 단축(AMINOR)은 픽셀 그리드의 x 및 y 축에 대하여 정렬될 수 있거나 비스듬할 수 있다. 또한, 경계 상자(BB)가 반드시 직사각형은 아닐 수 있다. (여기에서, "직사각형"이라는 용어는 또한 정사각형 상자를 포함한다.)
도 8에 도시된 바와 같은 경계 상자(BB) 생성이 또한 도 3의 방법(300)에, 즉 동작(320)의 일부로서 적용될 수 있다. 예를 들어, FSS가 동작(320)에서 식별될 때, 방금 설명된 방식과 동일한 방식으로 FSS를 둘러싸는 경계 상자(BB)가 생성될 수 있다. 그 다음, 경계 상자(BB)는 이는 한 프레임에서 다음 프레임으로 크기, 형상 및 위치를 변경할 수 있는 FSS 자체의 추적을 용이하게 하기 위하여 프레임별로 추적될 수 있다.
도 5와 관련하여 위에서 논의된 바와 같이, 연관 스테이지(530)와 추적 스테이지(540)가 동작(520)의 주의 절차(520)에 이어지며, 추적 스테이지는 업데이트된 BB 위치와 크기를 갖는 추적된 경계 상자(BB)를 출력할 수 있다. 그 후, 동작(550)이 추적된 경계 상자(BB)에 BB 분석, 세그먼트화 및 분류를 수행한다. 이것은 현재 프레임에서의 경계 상자의 컴포넌트의 이전 프레임으로부터의 대응하는 컴포넌트와의 임시 매칭 프로세스를 포함할 수 있다.
도 9는 동작(550)의 일례인 동작 세트(550')를 도시하는 순서도이다. 위에서 언급된 바와 같이, 각각의 프레임에 대하여, 동작(540)의 추적기는 각각의 경계 상자(BB)의 위치와 크기를 업데이트할 수 있다. 도 9의 동작에서, 수신된 경계 상자(BB)는 먼저, 이어서 프레임 사이에서 매칭되는, 상이한 컴포넌트들로 분해될 수 있다(910). 이것은 광원을 포함하는 컴포넌트를 특징화하고 플리커링을 식별하는 목적으로 컴포넌트에 대한 더 깊은 분석을 가능하게 할 수 있다. (동작(910)의 특정 예는 도 10, 즉 동작(1010 - 1050)을 참조하여 아래에서 설명된다.) 컴포넌트가 분해되면, 컴포넌트의 정렬이 측정되고(920), 이는 어느 컴포넌트가 경계 상자의 "전경(foreground)"에 속하고 어느 컴포넌트가 경계 상자의 "배경(background)"에 속하는지 판단하기 위하여 연속하는 프레임 사이에서 특징화되고 매칭된다. 여기에서, 경계 상자(BB)의 전경은, 지속적으로 변화하고 있는 요소를 포함할 수 있는 배경과 반대로, 추적 중인 경계 상자(BB)의 영역을 정의한다. 예를 들어, 컴포넌트를 식별할 때, 경계 상자(BB) 내부에서의 정렬이 2개 이상의 연속하는 프레임에서 측정될 수 있다. 정렬이 시간에 대하여 일정하다면, 컴포넌트가 전경에 속한다고 결론 내릴 수 있다. 그렇지 않다면, 이는 배경에 속할 수 있다. 따라서, 전경은 유사한 정렬을 갖는 이전 프레임 내의 매칭된 컴포넌트를 가지는 컴포넌트로부터 구축될 수 있다. 반대로, 배경은 임의의 매칭된 컴포넌트가 상이한 정렬을 가지는 컴포넌트를 포함하거나, 또는 매칭된 컴포넌트가 존재하지 않는다.
도 10은 도 9의 동작 세트(550')를 위한 예시적은 동작을 도시하는, 경계 상자(BB) 분석을 위한 동작 세트(550")의 순서도이다. 도 10에서, 동작(1010, 1020, 1030, 1040, 1050)은 집합적으로 도 9에서의 동작(910)의 일례를 나타낸다. 동작(1060, 1070)은 집합적으로 동작(920)의 일례를 나타낸다.
시작에서, 현재 프레임의 RGB 픽셀 데이터는 HSV 픽셀 데이터로 변환될 수 있다(1010). 이에 더하여, RGB 픽셀 데이터는 YUV 픽셀 데이터 변환되고(1020), YUV 데이터의 Y 채널 데이터는 HSV 데이터와 병합되어 Y-HSV 도메인을 구성한다.
다음으로, 경계 상자(BB)마다 적응적 임계 처리를 이용하여 색 채널의 이진화가 수행되어(1030), 이진 맵이 생성될 수 있다. 이진화 프로세스에서, 각각의 채널, 예를 들어 방금 형성된 Y-HSV 도메인에서의 H, S, V 및 Y 채널에 대하여, "1"이 그 채널에 대하여 설정된 임계값 위의 픽셀에 할당되고, "0"이 임계값 아래의 픽셀에 할당되거나, 그 반대로 된다. 여기에서, 각각의 경계 상자(BB)에 대하여, 상이한 임계값이 다른 경계 상자(BB)와 독립적으로 각각의 채널에 대하여 사용될 수 있다. 예를 들어, 제1 경계 상자(BB)를 갖는 장면의 제1 영역은 밝은 로컬 환경(제1 경계 상자(BB) 외부의 광원으로 인하여)의 일부일 수 있고, 장면의 제2 영역은 어두운 로컬 환경의 일부일 수 있어, 위에서 논의된 스마트 임계 처리가 2개의 경계 상자(BB)에 다르게 적용될 수 있다.
그 후에, 각각의 경계 상자(BB)에 대하여, 경계 상자(BB)를 공통 색 특성을 갖는 영역으로 세그먼트화하는 세그먼트화 프로세스가 실행될 수 있다(1040). 이 동작은 이진 맵(색 채널의 이진화에서 생성됨)의 교차(intersection)를 결정하는 것 및 이에 이어지는 필터링을 포함할 수 있다. 그 다음, 연결 컴포넌트 분석이 실행될 수 있다(1050). 이것은, 각각의 연결 컴포넌트에 대하여, Y-HSV 도메인에서의 디스크립터(descriptor)를 계산하는 것을 포함할 수 있다. 주어진 연결 컴포넌트의 디스크립터는 채널 각각으로부터의 형상 특성을 포함할 수 있다.
그 다음, 현재 프레임의 경계 상자(BB)로부터의 컴포넌트를 적어도 하나의 이전 프레임으로부터의 추적된 경계 상자(BB)에서의 컴포넌트와 매칭하기 위하여 매칭 프로세스가 수행될 수 있다(1060). 매칭된 컴포넌트를 찾는 것은 다음에 기초할 수 있다: (i) Y-HSV 도메인에서 계산된 색의 유사도; (ii) 경계 상자(BB) 내부의 위치에 기초하여 계산된 정렬 점수; 및/또는 (iii) 세그먼트의 크기 및 철포(convex hull)(즉, 이의 정밀한 기하학적 형상)에 기초하여 계산된 형상 닮음 순위(shape resemblance rank).
그 후에, 각각의 경계 상자 내의 전경 컴포넌트가 식별될 수 있다(1070). 이전에 언급된 바와 같이, BB의 전경 컴포넌트는 추적되고 있는 컴포넌트, 즉 세그먼트이다. 추적된 알려진 전경 컴포넌트와 현재 프레임의 경계 상자(BB) 내의 이의 대응하는 세그먼트의 리스트가 생성될 수 있다. 그 다음, 동작(1070)은 식별된 전경 컴포넌트가 광원인지 확인하고, 이러한 전경 컴포넌트를 광원으로서 분류할 수 있다.
방금 논의된 도 9 및 10의 동작이 또한 도 3의 방법에, 즉 동작(320)의 일부로서 적용될 수 있다.
도 11은 도 9 또는 10의 경계 상자 분석 동작의 결과의 일례를 도시한다. 왼쪽 이미지는 미등을 포함하는 촬영된 차량의 일부이다. 미등의 광원(FSSi)이 강조된다. 오른쪽 이미지는 경계점(B1 - B4)에 의해 광원(FSSi) 주위로 정의된 예시적인 경계 상자(BB)일 수 있다. 광원(FSSi)은 플리커링인 것으로 의심되는 광원으로 분류된 경계 상자(BB)의 전경 세그먼트를 나타낸다. 다른 세그먼트들, 예를 들어, g1 - g5도 또한 전경 컴포넌트로서 분류될 수 있다; 그러나, 전경 컴포넌트는 광원에 한정되지 않으며, 경계 상자(BB) 내에서 임의의 상대적으로 일정한 성분(프레임별)일 수 있다. 예를 들어, 컴포넌트(g1)는 광원으로 분류되는 반면, 세그먼트(g2 - g5)는 광원이 아닌 전경 세그먼트로 분류될 수 있다. 또한, 전경 컴포넌트는 서로 상이한 색을 가질 수 있다.
도 12는 광원 플리커 약화를 위한 동작(560)의 일례를 도시하는 순서도이다. 초기에, 동작(550)으로부터 출력된 세그먼트가 입력으로서 수신되고, 세그먼트는 플리커링 광원 의심 대상(FSS)으로서 고려된다; 그리고, 이 FSS에 관한 히스토리 데이터가 데이터베이스(590)로부터 검색될 수 있다(1210). 이 히스토리 데이터는 FSS에 대한 상이한 종류의 통계를 포함할 수 있다. 예를 들어, HSV 색 공간으로부터의 통계가 이 히스토리 데이터의 대부분을 구성할 수 있다. 히스토리 데이터는 여러 연속하는 프레임으로부터 수집된 데이터일 수 있지만, 일부 경우에 단일 프레임으로부터 수집된 데이터일 수 있다. 히스토리 데이터는 현재 프레임으로부터의 데이터에 따라 지속적으로 업데이트될 수 있다.
히스토리 데이터를 이용하여, 이어지는 동작(1220, 1230)이 수행될 수 있다. 동작(1220)은 적어도 하나의 이전 프레임에 비하여 현재 프레임에서 밝기 변화가 발생하였는지 판단하는 결정 동작일 수 있다. 다시 말해, 프로세스는 FSS의 관련 영역에서 히스토리 데이터에 비하여 현재 프레임에서의 밝기에서 구별되는 차이가 있었는지 알아보기 위하여 체크할 수 있다. 밝기 변화가 미리 정해진 개수의 연속하는 프레임에 대하여 발생되지 않으면, 방법은 플리커 약화가 그 FSS에 대하여 수행될 필요가 없다고 결론을 내릴 수 있다(동작(1240)).
그러나, 상당한 밝기 변화가 현재 프레임에서 발생하였다면(예를 들어, 미리 정의된 임계값 위), 이에 따라 세그먼트를 보정하기 위하여 FSS에 플리커 약화 동작이 수행될 수 있다(1230). FSS가 밝은 이전 프레임에서, FSS 전체에 걸친 휘도 분포가 상대적으로 균일하다면, 보정은 현재 프레임에서의 FSS의 휘도를 균일하게 증가시킬 수 있다. 그러나, 일부 경우에, 단지 일부만이 플리커링 효과를 겪기 때문에, 전체 세그먼트를 보정하는 것은 불필요할 수 있다. 이 문제를 다루기 위하여, 세그먼트의 밝기 분포의 적응적 모델이 구축될 수 있다. 모델은 OFF 값을 대체하기 위하여 ON 픽셀 값을 생성하는데 사용될 수 있다. 모델은 이전 프레임에서 밝은 픽셀의 영역을 나타내기 위하여 정의된 마스크를 사용할 수 있다. (또한, 경계 상자(BB)의 세그먼트화는 광원을 판단하기 위하여 사용될 수 있다.) 이것은 주의 스테이지에 대하여 위에서 논의된 것(도 5의 동작(520))과 동일한 스마트 임계 처리 스킴을 이용하여 수행될 수 있다. 광원으로 고려되는 세그먼트가 광원 자체가 아닌 객체를 포함할 수 있기 때문에, 마스크는 광원이 아닌 객체를 마스킹하는데 사용될 수 있다. 예를 들어, 도 11에서, 영역(g1, g2, g3, g4, g5, FSSi)이 개별 세그먼트로서 분류되지만, 영역(g1) 내에 포함되는 영역(FSSi)은 불이 켜진 유일한 부분일 수 있다. 불이 켜진 영역에 대하여, 여러 통계가 계산되어 관심 영역의 전반적인 분포 모델, 즉 전술한 적응적 모델(바꾸어 통계 모델이라고도 함)을 생성하는데 사용될 수 있다. 그 다음, 통계 모델은 플리커링을 겪고 있는 현재 프레임 내의 픽셀에 대한 새로운 이미지 데이터 값을 생성하는데 사용될 수 있다. 채널 특정 분포 모델이 선택된 색 공간, 예를 들어, HSV 색 공간의 모든 채널에서 계산될 수 있다.
이러한 적응적 모델의 3가지 예가 이제 설명될 것이지만, 다른 적합한 모델들이 사용 가능할 수 있다. 제1 적응적 모델 예는 HVS 색 공간의 H, S 및 V 채널 각각을 독립적이고 동등하게 분포된(independent and identically distributed(iid)) 랜덤 변수로서 정의하고, H, S 및 V 채널 각각을 미리 정의된 종류의 분포에 따라 분포되는 것으로 정의할 수 있다. 그 다음, 이전 프레임의 마스킹된 영역으로부터의 데이터가 선택된 분포 모델에 대하여 요구되거나 필요한 파라미터를 평가하는데 사용될 수 있다. 이 경우에, S 및 V 채널은 정상 분포로부터 생성될 수 있다. 그러나, 주기적 특성(극 좌표에서의 θ와 유사하게, HSV 공간에서의 각도로 설명됨)을 가지고 있기 때문에, "H"에 대한 "규칙적인(regular)" 분포는 가정되지 않을 수 있다. 따라서, 폰 미제스 분포(von Mises distribution)가 H 채널에 대하여 사용될 수 있다. 폰 미제스 분포는 원(circle) 상의 연속 확률 분포이다. 각도 x에 대한 폰 미제스 확률 밀도 함수는 다음으로 주어질 수 있다:
Figure pat00001
여기에서, I0(κ)는 0차의 수정 베셀 함수(modified Bessel function)이다. 파라미터 μ 및 1/κ는 각각 정규 분포의 평균 및 분산(σ2)과 유사할 수 있다. 폰 미제스 확률 밀도 함수는 구간 [-π, π]에서 값을 제공하고, 따라서 H 채널은 μ 및 κ의 값을 평가할 때 이 구간으로 정규화될 수 있다.
적응적 모델의 제2 예는 제1 예와 동일한 분포를 사용하지만, S 및 V 채널이 iid가 아니라고 가정할 수 있다. 따라서, 공분산 행렬(covariance matrix) Σ를 계산하는 것을 포함하는 다변수 정규 분포 모델이 사용될 수 있다. 폰 미제스 모델은 제2 예에서 H 채널에 대하여 여전히 사용될 수 있다.
적응적 모델의 제3 예에서는 H, S 및 V 채널의 각각에 대하여 임의적 분포를 사용할 수 있다. 이것은 마스킹된 영역에서 이전 프레임에서의 데이터로부터 결합 3차원(joint 3D) 히스토그램을 계산하는 것을 포함할 수 있다. 그 다음, 1D 히스토그램에 대한 것이지만 3차원에 적용되는 역 변환 샘플링과 유사한 방법을 이용하여 샘플이 생성될 수 있다.
또한, 동작(1220)은 의도적인 플리커링이 LED와 같은 본질적인 플리커링 주파수보다 더 낮은 플리커링 주파수를 가지는 것을 검출함으로써 횡단보도 신호등 또는 자동차 신호 표시등에 대한 것과 같은 FSS의 의도적인 플리커링, 즉 블링킹을 구별할 수 있다. 예를 들어, 동작(1220)은 FSS의 더 많은 플리커링 주파수 중 하나를 검출하고, 유일하게 검출된 플리커링 주파수가 미리 정해진 임계값 아래의 주파수인 경우에 그 FSS의 픽셀 보정을 그만둘 수 있다.
전술한 것과 같은 본 발명 개념의 실시예들은 플리커링 광원을 해결하기 위한 종래의 기술에 비하여 이점을 발휘할 수 있다. 일례로서, LED 플리커 약화는, 특히, ASS, IVI 및 자율 주행의 영역에서 현재 진보하고 있는 자동차 업계에서 공통된 문제점이다. 문제를 해결하는 대부분의 종래 방법은 센서의 샘플링 스킴을 변경하거나, 픽셀을 수정하거나 센서가 사용하는 노출 전략을 조정함으로써 이를 해결하려고 한다. 한편, 본 명세서에서 설명된 본 발명 개념은 ISP 시스템을 이용하여 LED 플리커 약화를 보정한다. 본 발명 개념의 다양한 실시예에 의해 발휘되는 이점은 다음 중 하나 이상을 포함할 수 있다:
(i) 호환성 - 본 명세서에서 설명된 플리커 약화 시스템이 센서의 출력 이미지에 동작하기 대문에, 시스템은 다양한 센서(예를 들어, 베이어(Bayer), RCCC(하나의 적색 필터와 3개의 투명 필터를 갖는 센서), RGBW("백색" 필터 요소를 포함하는 RGB 필터) 등)와 함께 사용될 수 있다. 이것은 카메라에 사용할 센서의 종류를 결정할 때 높은 정도의 유연성을 허용한다.
(ii) 독립성 - 실시예는 이미지에서의 다른 영역에 관계없이 독립적으로 경계 상자마다 판단을 한다. 먼저, 이것은 장면에서 상이한 플리커링 주파수를 갖는 여러 상이한 LED 소스의 핸들링을 가능하게 한다. 또한, 이것은 이미지의 다른 영역에 영향을 미치지 않으면서 출력 이미지에서 단지 국지적인 변화를 허용한다. 또한, 이것은 국지적 현상에 의해 발생되는 전역적인(global) 효과(예를 들어, 노출에 대하여)의 제거 또는 최소화를 제공한다.
(iii) WDR(Wide Dynamic Range)에 자유로움 - 방법은 WDR 판단과 간섭하지 않으며, 따라서 출력 이미지에서 대한 높은 동적 범위를 가능하게 한다.
(iv) 튜닝 가능한 판단 레벨 - 다양한 실시예에서의 알고리즘의 작용점은 간단한 제어 파라미터 세트를 이용하여 조정될 수 있다. 이 접근 방식을 이용하는 것은 상이한 조건(예를 들어, 주간/야간)의 핸들링 및 필요한 경우 상이한 센서에 대한 조정을 가능하게 한다.
(v) 강건성 - 플리커링 물체의 범위를 성공적으로 추적하는 능력.
(vi) 속도 - 보정은 실시간으로, 예를 들어, 통상적인 프레임 레이트(예를 들어, 30 f/s)로 1 프레임 이내에 또는 여러 프레임 내에 발생할 수 있다.
본 발명의 개념의 예시적인 실시예들이 신호 화살표, 블록도(예를 들어, 방법(300, 500, 520, 550', 550", 1200)에 대한 순서도) 및 알고리즘 표현을 참조하여 본 명세서에서 설명되었다. 블록도의 각각의 블록(예를 들어, 동작(310 - 350, 510 - 580, 610 - 640, 910 - 920, 1010 - 1070, 1210 - 1240) 중 임의의 것)과 블록도에서의 블록들의 조합 및 알고리즘 표현에 따른 동작은 컴퓨터 프로그램 명령어를 수반하는 하드웨어(예를 들어, 메모리(230)와 협력하는 ISP(220)의 하드웨어 회로)에 의해 구현될 수 있다. 이러한 컴퓨터 프로그램 명령어는, 컴퓨터 판독 가능한 매체에 저장된 명령어가 블록도에 에 특정된 기능/동작을 구현하는 명령어를 포함하는 제조 물품을 생산하도록, 컴퓨터, 다른 프로그래머블 데이터 처리 장치 또는 다른 장치가 특정 방식으로 기능하도록 지시할 수 있는 비일시적인 컴퓨터 판독 가능한 매체(예를 들어, 메모리(230))에 저장될 수 있다
본 명세서에서 사용된 "프로세서"라는 용어는, 예를 들어, 중앙 처리 유닛(CPU(central processing unit)) 및/또는 다른 처리 회로부(예를 들어, 디지털 신호 프로세서(DSP(digital signal processor), 마이크로프로세서 등)를 포함하는 것과 같은 임의의 처리 장치를 포함하도록 의도된다. 더욱이, "프로세서"는 계산 하드웨어를 포함하고, 컴퓨팅 장치에서 다수의 처리 코어를 포함하는 다중 코어 프로세서를 지칭할 수 있다. 처리 장치와 연관된 다양한 요소는 다른 처리 장치에 의해 공유될 수 있다.
본 기술에 따른 전술된 방법은 하드웨어, 펌웨어에 구현될 수 있거나, CD ROM, RAM, 플로피 디스크, 하드 디스크 또는 자기-광 디스크와 같은 기록 매체에 저장될 수 있는 소프트웨어나 컴퓨터 코드 또는 원격 기록 매체에 또는 비일시적인 기계 판독 가능한 매체에 원래 저장되고 로컬 기록 매체에 저장되는 네트워크를 통해 다운로드되는 컴퓨터 코드의 사용에 의해 구현될 수 있어, 본 명세서에서 설명된 방법은 범용 컴퓨터 또는 특수 프로세서를 이용하여 기록 매체에 저장되거나 또는 ASIC나 FPGA와 같은 프로그래머블 하드웨어 또는 전용 하드웨어에 저장되는 이러한 소프트웨어를 이용하여 렌더링될 수 있다. 당해 업계에서 이해될 수 있는 바와 같이, 컴퓨터, 프로세서, 마이크로프로세서 컨트롤러 또는 프로그래머블 하드웨어는, 컴퓨터, 프로세서 또는 하드웨어에 의해 액세스되고 실행될 때 본 명세서에서 설명된 처리 방법을 구현하는 소프트웨어 또는 컴퓨터 코드를 저장하거나 수신할 수 있는 메모리 컴포넌트, 예를 들어, RAM, ROM, 플래시 등을 포함한다. 또한, 범용 컴퓨터가 본 명세서에 도시된 처리를 구현하기 위한 코드에 액세스할 때, 코드의 실행이 범용 컴퓨터를 본 명세서에 설명된 처리를 실행하기 위한 특수 목적 컴퓨터로 변환한다는 것이 인식될 것이다.
본 명세서에서 설명된 발명의 개념이 특별히 이들의 예시적인 실시예들을 참조하여 도시되고 설명되었지만, 형태 및 상세에서의 다양한 변경이 이어지는 청구범위 및 이의 균등물에 의해 정의되는 청구된 내용의 기술적 사상과 범위로부터 벗어나지 않으면서 그 내에서 이루어질 수 있다는 것이 통상의 기술자에 의해 이해될 것이다.

Claims (20)

  1. 장면을 나타내는 입력 프레임의 시퀀스를 이미지 센서로부터 수신하는 단계;
    상기 입력 프레임 내에 나타나는 광원을 식별하고, 연속하는 입력 프레임 사이에서 식별된 상기 광원을 식별하는 단계;
    상기 광원을 나타내는 영역의 프레임별 색 특성 변동을 검출함으로써 상기 광원의 플리커링을 식별하는 단계; 및
    상기 영역 내의 픽셀의 이미지 데이터를 선택적으로 수정함으로써 상기 플리커링이 제거된, 상기 입력 프레임에 대응하는 출력 프레임의 시퀀스를 생성하는 단계; 를 포함하는 이미지 처리 방법,
  2. 제1항에 있어서,
    상기 광원을 나타내는 영역의 프레임별 색 특성 변동을 검출하는 것은, 상기 광원의 적어도 하나의 색 공간 볼륨 위치(volume location)에서의 프레임별 변화를 식별하는 것을 포함하고, 상기 변화는 적어도 하나의 미리 정의된 기준을 만족하는 이미지 처리 방법.
  3. 제2항에 있어서,
    상기 적어도 하나의 색 공간 볼륨 위치는 HSV(Hue Saturation Value) 색 공간에서의 볼륨 위치를 포함하는 이미지 처리 방법.
  4. 제3항에 있어서,
    상기 HSV 색 공간은 H 채널, S 채널, 및 V 채널로 정의되며, 상기 광원의 플리커링은 상기 적어도 하나의 미리 정의된 기준을 만족하는 V(value) 채널의 히스토그램의 밀도에서의 변화를 식별함으로써 식별되는 이미지 처리 방법.
  5. 제1항에 있어서,
    상기 광원을 식별하는 단계는,
    상기 입력 프레임의 각각 내에 객체를 검출하는 단계; 및
    적응적 임계 처리(adaptive thresholding)의 사용을 통해 상기 객체를 나타내는 픽셀이 상기 입력 프레임의 다른 이미지 픽셀보다 더 밝다고 판단함으로써 상기 객체를 광원으로 식별하는 단계; 를 포함하는 이미지 처리 방법.
  6. 제1항에 있어서,
    상기 광원을 식별하는 단계는,
    플리커링 광원 의심 대상(flickering light source suspect(FSS))을 둘러싸는 경계 상자(bounding box)를 정의하는 단계; 및
    연속하는 프레임 사이에서 상기 경계 상자를 추적함으로써 연속하는 프레임 사이에서 상기 광원을 추적하는 단계; 를 포함하는 이미지 처리 방법.
  7. 제6항에 있어서,
    상기 경계 상자는, 상기 FSS의 장축에 정렬된 상기 FSS의 둘레 점(perimeter point) 사이의 가장 긴 거리보다 적어도 10%만큼 더 긴 길이와, 상기 장축에 직교하는 방향에서 상기 FSS의 둘레 점 사이의 가장 긴 거리보다 적어도 10% 더 긴 폭을 갖는 직사각형 상자로서 정의되는 이미지 처리 방법.
  8. 제6항에 있어서,
    상기 경계 상자는 길이와 폭을 갖는 직사각형 상자로서 정의되고, 상기 길이는 상기 입력 프레임을 정의하는 픽셀 그리드의 x 방향으로의 상기 FSS의 둘레 점 사이의 가장 긴 거리보다 적어도 10%만큼 더 길고, 상기 폭은 상기 픽셀 그리드의 y 방향으로의 상기 FSS의 둘레 점 사이의 가장 긴 거리보다 적어도 10%만큼 더 긴 이미지 처리 방법.
  9. 제6항에 있어서,
    상기 경계 상자의 컴포넌트를 세그먼트화하는 단계; 를 더 포함하는 이미지 처리 방법.
  10. 제9항에 있어서,
    연속하는 입력 프레임 사이에 상기 경계 상자의 세그먼트화된 상기 컴포넌트를 추적하는 단계; 를 더 포함하는 이미지 처리 방법.
  11. 장면의 이미지를 캡처하고, 상기 장면의 이미지를 나타내는 입력 프레임을 제공하도록 구성된 이미지 센서를 포함하는 카메라; 및
    이미지 신호 프로세서; 를 포함하고,
    상기 이미지 센서는,
    상기 입력 프레임의 시퀀스를 상기 이미지 센서로부터 수신하고;
    상기 입력 프레임 내에 나타나는 광원을 식별하고, 연속하는 입력 프레임 사이에서 식별된 상기 광원을 추적하고;
    상기 광원을 나타내는 영역의 프레임별 색 특성 변동을 검출함으로써 상기 광원의 플리커링을 식별하고;
    상기 영역 내의 픽셀의 이미지 데이터를 선택적으로 수정함으로써 상기 플리커링이 제거된, 상기 입력 프레임에 대응하는 출력 프레임의 시퀀스를 생성하기 위한 명령어를 실행하도록 구성된, 장치.
  12. 제11항에 있어서,
    상기 출력 프레임의 시퀀스에 대한 응답을 생성하기 위한 응답 시스템 및 디스플레이; 를 더 포함하는, 장치.
  13. 제12항에 있어서,
    상기 장치는 자동차인 장치.
  14. 제11항에 있어서,
    상기 이미지 센서는, 플리커링 광원 의심 대상(flickering light source suspect(FSS))을 둘러싸는 경계 상자(bounding box)를 정의하고, 연속하는 프레임 사이에서 상기 경계 상자를 추적함으로써 연속하는 프레임 사이에서 상기 광원을 추적하는 장치.
  15. 제14항에 있어서,
    상기 경계 상자는, 상기 FSS의 장축에 정렬된 상기 FSS의 둘레 점(perimeter point) 사이의 가장 긴 거리보다 적어도 10%만큼 더 긴 길이와, 상기 장축에 수직인 방향에서 상기 FSS의 둘레 점 사이의 가장 긴 거리보다 적어도 10% 더 긴 폭을 갖는 직사각형 상자로서 정의되는 장치.
  16. 장면의 각각의 이미지를 나타내는 현재 프레임 및 적어도 하나의 이전 프레임을 이미지 센서로부터 수신하는 단계;
    상기 현재 프레임 내에서 플리커링 광원 의심 대상(flickering light source suspect(FSS))을 식별하는 단계;
    상기 FSS를 둘러싸는 경계 상자((bounding box(BB))를 생성하는 단계;
    연속하는 프레임 사이에서 상기 경계 상자(BB)를 추적하고 추적에 기초하여 상기 경계 상자(BB)의 위치 및 크기를 업데이트하는 단계;
    추적된 상기 경계 상자(BB)의 세그먼트화를 수행하는 단계; 및
    상기 FSS의 플리커링을 검출하고, 상기 플리커링을 약화시키기 위하여 상기 FSS를 나타내는 픽셀의 이미지 데이터를 선택적으로 수정하는 단계; 를 포함하는 이미지 처리 방법.
  17. 제16항에 있어서,
    상기 FSS를 식별하는 단계는, 상기 현재 프레임과 상기 적어도 하나의 이전 프레임 사이의 모션 벡터 필드(motion vector field(MVF))를 계산하는 단계를 포함하는 이미지 처리 방법.
  18. 제17항에 있어서,
    상기 FSS를 식별하고 상기 FSS를 둘러싸는 경계 상자(BB)를 생성하는 단계는,
    복수의 이전 프레임에 대한 히스토리 데이터와 상기 MVF를 이용하여 상기 현재 프레임 내의 모든 FSS들을 식별하는 주의(attention) 루틴을 실행시키는 단계, 및
    상기 FSS들 중 해당하는 FSS를 각각 둘러싸는 의심 대상 경계 상자(BB)들을 정의하는 단계; 를 포함하고,
    상기 의심 대상 경계 상자(BB)들의 각각은 플리커링 광원을 포함하는 임의 대상 경계 상자(BB)인 이미지 처리 방법.
  19. 제18항에 있어서,
    상기 주의 루틴을 실행시키는 단계는,
    상기 현재 프레임의 픽셀을 RGB(Red Green Blue) 색 공간으로부터 HSV(Hue Saturation Value) 색 공간으로 변환하는 단계;
    상기 장면의 전반적인 조명 조건을 판단하기 위하여 발광(luminosity) 상태 시험을 수행하는 단계; 및
    상기 전반적인 조명 조건에 따라 상이한 임계값이 적용되는 적응적 임계 처리(adaptive thresholding)를 수행하는단계; 를 포함하는 이미지 처리 방법.
  20. 제19항에 있어서,
    상기 적응적 임계 처리는 상기 HSV 색 공간의 S 및 V 채널의 이미지 특성에 기초하는 이미지 처리 방법.

KR1020200018248A 2019-07-08 2020-02-14 플리커를 약화시키기 위한 이미지 처리 방법 KR20210006276A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/504,788 US11108970B2 (en) 2019-07-08 2019-07-08 Flicker mitigation via image signal processing
US16/504,788 2019-07-08

Publications (1)

Publication Number Publication Date
KR20210006276A true KR20210006276A (ko) 2021-01-18

Family

ID=74103367

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200018248A KR20210006276A (ko) 2019-07-08 2020-02-14 플리커를 약화시키기 위한 이미지 처리 방법

Country Status (2)

Country Link
US (2) US11108970B2 (ko)
KR (1) KR20210006276A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024096308A1 (ko) * 2022-11-02 2024-05-10 삼성전자 주식회사 광원 객체 이미지 처리 방법 및 장치

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11108970B2 (en) 2019-07-08 2021-08-31 Samsung Electronics Co., Ltd. Flicker mitigation via image signal processing
US11891067B2 (en) * 2019-12-11 2024-02-06 Electronics And Telecommunications Research Institute Vehicle control apparatus and operating method thereof
US20230171510A1 (en) * 2020-07-15 2023-06-01 Arriver Software Ab Vision system for a motor vehicle
US11445123B2 (en) 2020-09-28 2022-09-13 Brompton Technology Ltd. System and method for PWM control of a video display screen
US11490029B2 (en) * 2020-10-30 2022-11-01 Ford Global Technologies, Llc Vehicle vision LED flicker interference mitigation system
EP4352947A1 (en) * 2021-12-16 2024-04-17 Samsung Electronics Co., Ltd. Method and apparatus for removing flicker in a video
WO2023113103A1 (en) * 2021-12-16 2023-06-22 Samsung Electronics Co., Ltd. Method and apparatus for removing flicker in a video
GB2620117A (en) * 2022-06-24 2024-01-03 Sony Interactive Entertainment Inc Data processing apparatus and method

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5419390B2 (ja) * 2008-06-13 2014-02-19 富士通テン株式会社 ドライブレコーダ及びシステム
JP2012010105A (ja) * 2010-06-24 2012-01-12 Sony Corp 画像処理装置、撮像装置、画像処理方法、およびプログラム
US9432590B2 (en) * 2014-01-22 2016-08-30 Nvidia Corporation DCT based flicker detection
JP6222343B2 (ja) * 2014-03-10 2017-11-01 日産自動車株式会社 信号機検出装置及び信号機検出方法
KR20150109177A (ko) * 2014-03-19 2015-10-01 삼성전자주식회사 촬영 장치, 그 제어 방법, 및 컴퓨터 판독가능 기록매체
US10136084B1 (en) * 2017-10-06 2018-11-20 Omnivision Technologies, Inc. HDR skimming photodiode with true LED flicker mitigation
US10964262B1 (en) * 2018-08-30 2021-03-30 Apple Inc. Systems and methods for reducing visual artifacts in displays due to refresh rate
US11108970B2 (en) * 2019-07-08 2021-08-31 Samsung Electronics Co., Ltd. Flicker mitigation via image signal processing

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024096308A1 (ko) * 2022-11-02 2024-05-10 삼성전자 주식회사 광원 객체 이미지 처리 방법 및 장치

Also Published As

Publication number Publication date
US20210392261A1 (en) 2021-12-16
US20210014402A1 (en) 2021-01-14
US11700457B2 (en) 2023-07-11
US11108970B2 (en) 2021-08-31

Similar Documents

Publication Publication Date Title
US11700457B2 (en) Flicker mitigation via image signal processing
O'Malley et al. Rear-lamp vehicle detection and tracking in low-exposure color video for night conditions
US7639878B2 (en) Shadow detection in images
O'malley et al. Vision-based detection and tracking of vehicles to the rear with perspective correction in low-light conditions
US9111353B2 (en) Adaptive illuminance filter in a video analysis system
WO2017171659A1 (en) Signal light detection
US10922827B2 (en) Distance estimation of vehicle headlights
TWI668669B (zh) 物件追蹤系統及方法
Huerta et al. Exploiting multiple cues in motion segmentation based on background subtraction
CN112149476A (zh) 目标检测方法、装置、设备和存储介质
CN110188640B (zh) 人脸识别方法、装置、服务器和计算机可读介质
CN109766846B (zh) 一种基于视频的自适应多车道车流检测方法及系统
JP2015207211A (ja) 車両検出装置、およびシステム、ならびにプログラム
CN103065145A (zh) 一种车辆运动阴影消除方法
CN102622594A (zh) 一种基于红外和帧差的近距离目标提取方法
Balisavira et al. Real-time object detection by road plane segmentation technique for ADAS
CN112052726A (zh) 图像处理方法及装置
JP2012023572A (ja) ホワイトバランス係数算出装置及びプログラム
Nguyen et al. Fast traffic sign detection under challenging conditions
JP6413319B2 (ja) 車両検出装置、およびシステム、ならびにプログラム
CN106485713B (zh) 视频前景检测方法
KR101715247B1 (ko) 적응적으로 저조도를 개선하는 영상 처리 장치 및 방법, 그리고 그를 이용한 객체 검출 장치
Wu et al. A novel traffic light recognition method for traffic monitoring systems
CN110837772A (zh) 一种用于夜间交通监控的汽车前照灯识别方法
KR101394474B1 (ko) 그림자 추정 장치

Legal Events

Date Code Title Description
A201 Request for examination