KR20050008812A - 화상 처리 방법, 계산 회로, 화상 처리 시스템, 셋톱 박스및 통신망 - Google Patents

화상 처리 방법, 계산 회로, 화상 처리 시스템, 셋톱 박스및 통신망 Download PDF

Info

Publication number
KR20050008812A
KR20050008812A KR10-2004-7020074A KR20047020074A KR20050008812A KR 20050008812 A KR20050008812 A KR 20050008812A KR 20047020074 A KR20047020074 A KR 20047020074A KR 20050008812 A KR20050008812 A KR 20050008812A
Authority
KR
South Korea
Prior art keywords
histogram
values
calculation
value
during
Prior art date
Application number
KR10-2004-7020074A
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 KR20050008812A publication Critical patent/KR20050008812A/ko

Links

Classifications

    • 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

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

본 발명은 누적 히스토그램의 계산 방법에 관한 것이다. 이러한 방법은 적어도 두 덧셈이 동시에 이용되는 계산 단계를 포함한다. 각각의 덧셈은 덧셈 결과를 계산하도록 허용된다. 덧셈은 두 히스토그램 값 또는 하나의 히스토그램 값과 이전 계산 단계 동안에 계산된 하나의 덧셈 결과 또는 적어도 하나의 이전 계산 단계 동안 계산된 두 개의 덧셈 결과에 의해 행해진다.

Description

화상 처리 방법, 계산 회로, 화상 처리 시스템, 셋톱 박스 및 통신망{CALCULATION METHOD OF A CUMULATIVE HISTOGRAM}
수많은 화상 처리 방법이 누적 히스토그램을 이용한다. 이러한 경우의 예로서, 화상 처리 시스템에 빈번히 사용된 임계 방법(thresholding method) 또는 분할 방법(segmenting method)을 들 수 있다.
화상은 통상, 예를 들어 그레이 레벨, 색차 값(chrominance value) 또는 휘도 값(luminance value)과 같은 픽셀 값을 갖는 픽셀을 포함한다. 이들 픽셀 값은, 예를 들어 그레이 레벨에 대해 0과 255 사이의 값의 간격 내에 위치한다. 히스토그램은 소정의 픽셀 값을 갖는 화상의 픽셀의 수를 나타낸다. 따라서 각각의 픽셀 값에 대하여, 히스토그램은 이 픽셀 값을 갖는 픽셀의 수와 동일한 히스토그램 값을 갖는다. 도 1은 0과 7 사이의 픽셀 값을 채용하는 64 픽셀의 화상에 대한 히스토그램의 일례를 도시한 것이다. 이 화상에서, 5개의 픽셀이 0의 값을 갖고, 10 개의 픽셀이 1의 값을 갖는 등의 방식으로 되어 있다.
히스토그램에 기초하여 누적 히스토그램을 계산하는 것이 가능하다. 누적 히스토그램은 소정의 픽셀 값보다 작거나 같은 값을 갖는 화상의 픽셀 수를 나타낸다. 따라서 각각의 픽셀 값에 대하여, 누적 히스토그램은 이 픽셀 값보다 작거나 같은 값을 갖는 픽셀의 수와 동일한 누적 히스토그램 값을 갖는다. 도 2는 도 1의 히스토그램으로부터 계산된 누적 히스토그램을 나타낸다. 예를 들어 57 개의 픽셀이 5보다 작거나 같은 픽셀 값을 갖는다는 것을 알 수 있다.
종래의 방법에서, 히스토그램 값으로부터의 누적 히스토그램 값의 계산은 이전 반복으로부터 획득된 누적 히스토그램 값에 대해 이 반복에 대응하는 히스토그램 값을 각 반복에 더함으로써 반복 방식으로 이루어진다. 도 1 및 도 2의 예에서, 픽셀 값 0에 대응하는 누적 히스토그램 값은 픽셀 값 0에 대응하는 히스토그램 값과 동일하게 취해진다. 제 1 반복 동안에, 값 1에 대응하는 히스토그램이 값 0에 대응하는 누적 히스토그램 값에 더해된다. 이런 방법으로, 값 1에 대응하는 누적 히스토그램이 획득된다. 제 2 반복 동안에, 값 2에 대응하는 히스토그램 값이 이전 반복에서 계산된 값 1에 대응하는 누적 히스토그램에 더해진다. 이런 방법으로, 값 2에 대응하는 누적 히스토그램 값이 획득된다. 이와 같은 방식으로 진행하여 모든 누적 히스토그램 값을 획득한다.
도 3은 그러한 누적 히스토그램의 반복 계산을 이용하도록 허용하는 동작들을 개략적으로 도시하고 있다. 이 예는 8 개의 레지스터(300 내지 307)에 저장되는 8 개의 값을 갖는 히스토그램에 적용된다. 8 개의 다른 레지스터(310 내지 317)는 가산기(3)에 의해 7 단계(31 내지 87) 동안에 계산된 누적 히스토그램 값을 저장하도록 허용한다.
0 픽셀에 대응하며 레지스터(300)에 저장되는 히스토그램 값은 레지스터(310)에서 복사된다. 그 다음에, 제 1 단계(31) 동안에, 가산기(3)는 픽셀 값 1에 대응하며 레지스터(301)에 저장되는 히스토그램 값을 레지스터(310)에 저장된 누적 히스토그램 값에 더해진다. 그 다음에 획득된 결과는 레지스터(311)에 저장되고, 픽셀 값 1에 대응하는 누적 히스토그램 값에 대응한다. 제 2 단계(32) 동안에, 가산기(3)는 픽셀 값(2)에 대응하며 레지스터(302)에 저장되는 히스토그램 값을 레지스터(311)에 저장된 누적 히스토그램에 더해진다. 그 다음에 획득된 결과는 레지스터(312)에 저장되고 픽셀 값 2에 대응하는 누적 히스토그램에 대응한다. 이와 같은 방식으로 진행하여 모든 누적 히스토그램 값이 획득된다.
가산기에 의한 그러한 누적 히스토그램 계산은 7 개의 단계를 요구하는 것으로 밝혀졌다. 일반적으로 N 개의 값을 포함하는 누적 히스토그램 계산이 (N-1) 단계에 필요하다. 결국, 그러한 계산은 상당한 처리 시간을 요구한다. 이것은 특히 실시간 화상 처리 시스템에서 단점으로 작용하여 처리 시간에 제한을 가한다.
본 발명은 N 개의 히스토그램 값으로부터 누적 히스토그램 값을 계산하는 방법에 관한 것이다.
본 발명은 또한 그러한 방법을 구현하는 계산 회로에 관한 것이다.
본 발명은 또한 이 방법의 단계들의 실행을 위한 프로그램 코드 인스트럭션을 포함하는 프로그램에 관한 것이다.
본 발명은, 예를 들어 화상 처리 시스템, 특히 실시간 시스템에 응용된다.
도 1은 히스토그램의 일례를 도시한 도면.
도 2는 도 1의 히스토그램으로부터 계산된 누적 히스토그램을 도시한 도면.
도 3은 도 2의 누적 히스토그램을 계산하는 종래의 방법을 도시한 도면.
도 4는 본 발명에 따른 방법의 제 1 실시예를 도시한 도면.
도 5는 본 발명에 따른 방법의 제 2 실시예를 도시한 도면.
도 6은 도 5에 도시된 방법을 구현하는 회로를 도시한 도면.
도 7은 본 발명의 바람직한 실시예에 따른 방법을 도시한 도면.
본 발명의 목적은 적은 처리 시간을 요구하는 누적 히스토그램 계산 방법을 제공하는 것이다.
본 발명에 따른 서두에서 정의된 계산 방법은 적어도 두 병렬 덧셈을 사용하는 계산 단계를 포함하고, 계산 단계 내의 각각의 덧셈은 두 히스토그램 값 또는 하나의 히스토그램 값과 이전의 계산 단계 동안에 계산된 덧셈 결과, 또는 적어도 하나의 이전의 계산 단계 동안에 계산된 두 덧셈 결과에 기초한 덧셈 결과가 된다.
본 발명은 소정의 픽셀 값에 대응하는 누적 히스토그램 값이 이 소정의 픽셀 값보다 더 낮거나 또는 같은 픽셀 값에 대응하는 히스토그램 값의 합이라는 사실을 이용한다. 두 개의 데이터로 이루어진 덧셈으로부터의 값의 합을 계산하는 방법은 다양하다. 예를 들면, 종래의 계산 방법에 사용된 반복 방법으로서, 반복 동안에 이 반복에 대응하는 값을 이전 반복으로부터 획득된 값의 합에 더하는 방법이 있다. 다른 방법으로는, 예를 들면 쌍으로 또는 병렬로 값들을 더하는 방법 및 원하는 합의 값이 획득될 때까지 둘씩 함께 획득된 값들을 더하는 방법이 있다.
본 발명에 따르면, 동일한 계산 단계 동안에 소정의 덧셈들이 행해진다. 따라서, 계산 단계의 수가 종래 기술에 비해 감소된다. 결과적으로, 본 발명에 따른 방법을 구현하는데 필요한 처리 시간은 종래 기술에서 필요한 처리 시간보다 더 짧다.
본 발명의 바람직한 실시예에서, 계산 방법은 적어도 두 개의 연속하는 계산 단계 열을 포함하며, 각각의 계산 단계 열은 N보다 엄밀하게 낮은 다수의 히스토그램 값을 포함하는 히스토그램 값의 그룹에 대응하는 누적 히스토그램 값을 계산하기 위한 것이다.
이 바람직한 실시예에 따르면, 짧은 처리 시간을 유지하면서, 계산 단계 동안에 병렬로 이루어진 덧셈의 수를 줄이는 것이 가능하다. 이 실시예는 히스토그램 값의 수가 많은 경우에 특히 바람직하다. 또한, 본 발명에 따른 방법이 덧셈 결과를 저장하기 위한 레지스터를 포함하는 회로에 의해 이용되는 경우, 이하에서 알 수 있듯이, 이 바람직한 실시예는 필요한 레지스터의 수를 줄이도록 허용한다.
본 발명은 또한 히스토그램 값으로부터 누적 히스토그램 값을 계산하는 계산 회로에 관한 것으로, 이 회로는 계산 단계 동안에 병렬로 덧셈을 수행할 수 있는 적어도 두 개의 가산기를 포함하며, 계산 단계 동안의 각각의 덧셈은 두 히스토그램 값 또는 하나의 히스토그램 값과 이전의 계산 단계 동안에 계산된 덧셈 결과, 또는 적어도 하나의 이전의 계산 단계 동안에 계산된 두 덧셈 결과에 기초한 덧셈 결과가 된다.
본 발명의 상기 및 다른 특징들은 이하에 기술된 실시예를 참조한 예를 통해 명확해질 것이다.
도 4는 8 개의 히스토그램 값에 기초한, 본 발명에 따른 누적 히스토그램을 계산하는 방법을 도시한 것이다. 이러한 방법은 세 단계(41 내지 43) 동안에 병렬로 덧셈을 수행하는 네 개의 가산기(4a 내지 4d)에 의해 실행된다. 히스토그램 값은 8 개의 레지스터(300 내지 307)에 저장되고, 이 방법으로 계산된 누적 히스토그램 값은 8 개의 다른 레지스터(310 내지 317)에 저장된다.
제 1 단계(41) 동안에, 제 1 가산기(4a)는 레지스터(300 및 301)에 각각 저장되어 있는, 픽셀 값 0에 대응하는 히스토그램 값과 픽셀 값 1에 대응하는 히스토그램 값의 제 1 덧셈을 행한다. 따라서 픽셀 값 1에 대응하는 누적 히스토그램 값이 획득되며 레지스터(311)에 저장된다. 동시에, 제 2 가산기(4b), 제 3 가산기(4c) 및 제 4 가산기(4d)에 의해, 이 제 1 단계(41) 동안에 다른 덧셈이 행해진다. 제 2 가산기(4b)는 픽셀 값 2에 대응하는 히스토그램 값과 픽셀 값 3에 대응하는 히스토그램 값의 덧셈을 수행하고, 제 3 가산기(4c)는 픽셀 값 4에 대응하는 히스토그램 값과 픽셀 값 5에 대응하는 히스토그램 값의 덧셈을 수행하고, 제 4 가산기(4d)는 픽셀 값 6에 대응하는 히스토그램 값과 픽셀 값 7에 대응하는 히스토그램값의 덧셈을 수행한다. 이들 덧셈의 결과는 도 4에 도시되지 않은 레지스터에 저장된다.
제 2 단계(42) 동안에, 제 1 가산기(4a)는 이전 단계 동안에 계산된, 픽셀 값 2에 대응하는 히스토그램 값과 픽셀 값 1에 대응하는 누적 히스토그램 값의 덧셈을 수행한다. 따라서 픽셀 값 2에 대응하는 누적 히스토그램 값이 획득되며 레지스터(312)에 저장된다. 동시에, 제 2 가산기(4b)는 이전 단계 동안에 계산된, 픽셀 값 1에 대응하는 히스토그램 값과 픽셀 값 2 및 3에 대응하는 누적 히스토그램 값의 합의 덧셈을 수행한다. 따라서 픽셀 값 3에 대응하는 누적 히스토그램 값이 획득되며 레지스터(312)에 저장된다. 동시에, 제 3 가산기(4c)는 이전 단계 동안에 계산된, 픽셀 값 6에 대응하는 히스토그램 값과 픽셀 값 4 및 5에 대응하는 누적 히스토그램 값의 합의 덧셈을 수행한다. 동시에, 제 4 가산기(4d)는 이전 단계 동안에 계산된, 픽셀 값 4 및 5에 대응하는 히스토그램 값의 합과 픽셀 값 6 및 7에 대응하는 누적 히스토그램 값의 합의 덧셈을 수행한다.
제 3 단계(43) 동안에, 제 1 가산기(4a)는 픽셀 값 4에 대응하는 히스토그램 값과 제 2 단계(42) 동안에 제 2 가산기(4b)에 의해 계산된 덧셈 결과, 즉 픽셀 값 3에 대응하는 누적 히스토그램 값의 덧셈을 수행한다. 따라서 픽셀 값 4에 대응하는 누적 히스토그램 값이 획득되며 레지스터(314)에 저장된다. 동시에, 제 2 가산기(4b)는 제 2 단계(42) 동안에 제 2 가산기(4b)에 의해 계산된 덧셈 결과와 제 1 단계(41) 동안에 제 3 가산기(4c)에 의해 계산된 덧셈 결과의 덧셈을 수행한다. 따라서, 픽셀 값 5에 대응하는 누적 히스토그램 값이 획득되며 레지스터(315)에 저장된다. 동시에, 제 3 가산기(4c)는 제 2 단계(42) 동안에 제 2 가산기(4b)에 의해 계산된 덧셈 결과와 제 2 단계(42) 동안에 제 3 가산기(4c)에 의해 계산된 덧셈 결과의 덧셈을 수행한다. 따라서, 픽셀 값 6에 대응하는 누적 히스토그램 값이 획득되며 레지스터(316)에 저장된다. 동시에, 제 4 가산기(4d)는 제 2 단계(42) 동안에 제 2 가산기(4b)에 의해 계산된 덧셈 결과와 제 2 단계(42) 동안에 제 4 가산기(4d)에 의해 계산된 덧셈 결과의 덧셈을 수행한다. 따라서, 픽셀 값 7에 대응하는 누적 히스토그램 값이 획득되며 레지스터(317)에 저장된다.
도 4에 도시된 방법에 의해, 8 개의 히스토그램 값에 기초하여 누적 히스토그램의 계산은 종래 기술의 8 개 대신에 3 개의 계산 단계를 요구한다. 결국, 이 방법의 구현은 누적 히스토그램의 계산에 필요한 처리 시간을 상당히 저감시킬 수 있다.
도 4에 도시된 방법은 8 개의 히스토그램 값에 기초하여 누적 히스토그램을 계산하는 것과 함께 4 개의 덧셈을 이용한다. 동시에 행해질 수 있는 덧셈의 수를 한정하는 것이 가능하다. 예를 들면, 만약 그러한 방법이 가산기를 포함하는 회로에 의해 구현되면, 가산기를 위해 확보된 회로 표면이 한정되기 때문에 가산기의 수가 때론 한정된다. 그러나, 본 발명에 따른 방법은 회로가 동시에 덧셈을 수행할 수 있는 적어도 두 개의 가산기를 포함하는 순간에 구현될 수도 있다.
도 5는 히스토그램 값에 기초한 누적 히스토그램을 계산하기 위한 본 발명에 따른 방법의 다른 예를 도시한 것으로, 이 방법은 두 개의 덧셈을 동시에 이용한다.
이러한 방법은 5 단계(51 내지 55) 동안 동시에 덧셈을 수행하는 두 개의 가산기(5a, 5b)에 의해 수행된다. 히스토그램 값은 8 개의 레지스터(300 내지 307)에 저장되고, 이 방법으로 계산된 누적 히스토그램 값은 8 개의 다른 레지스터(310 내지 317)에 저장된다.
제 1 단계(51) 동안에, 제 1 가산기(5a)는 픽셀 값 0에 대응하는 히스토그램 값과 각각의 레지스터(300, 301)에 저장된 픽셀 값 1에 대응하는 히스토그램 값의 덧셈을 수행한다. 따라서 픽셀 값 1에 대응하는 누적 히스토그램 값이 획득되며 레지스터(311)에 저장된다. 동시에, 제 2 가산기(5b)가 픽셀 값 4에 대응하는 히스토그램 값과 픽셀 값 5에 대응하는 히스토그램 값의 덧셈을 수행한다.
제 2 단계(52) 동안에, 제 1 가산기(5a)는 픽셀 값 2에 대응하는 히스토그램과 제 1 단계(51) 동안에 제 1 가산기(5a)에 의해 계산된 덧셈 결과의 덧셈을 수행한다. 따라서 픽셀 값 2에 대응하는 누적 히스토그램 값이 획득되며 레지스터(312)에 저장된다. 동시에, 제 2 가산기(5b)는 픽셀 값 6에 대응하는 히스토그램 값과 제 1 단계(51) 동안에 제 2 가산기(5b)에 의해 계산된 덧셈 결과의 덧셈을 수행한다.
제 3 단계(53) 동안에, 제 1 가산기(5a)는 픽셀 값 3에 대응하는 히스토그램과 제 2 단계(52) 동안에 제 1 가산기(5a)에 의해 계산된 덧셈 결과의 덧셈을 수행한다. 따라서 픽셀 값 3에 대응하는 누적 히스토그램 값이 획득되며 레지스터(313)에 저장된다. 동시에, 제 2 가산기(5b)는 픽셀 값 7에 대응하는 히스토그램 값과 제 2 단계(52) 동안에 제 2 가산기(5b)에 의해 계산된 덧셈 결과의 덧셈을 수행한다.
제 4 단계(54) 동안에, 제 1 가산기(5a)는 픽셀 값 4에 대응하는 히스토그램과 제 3 단계(53) 동안에 제 1 가산기(5a)에 의해 계산된 덧셈 결과의 덧셈을 수행한다. 따라서 픽셀 값 4에 대응하는 누적 히스토그램 값이 획득되며 레지스터(314)에 저장된다. 동시에, 제 2 가산기(5b)는 제 3 단계(53) 동안에 제 1 가산기(5a)에 의해 계산된 덧셈 결과와 제 1 단계(51) 동안에 제 2 가산기(5b)에 의해 계산된 덧셈 결과의 덧셈을 수행한다. 따라서, 픽셀 값 5에 대응하는 누적 값이 획득되며 레지스터(315)에 저장된다.
제 5 단계(55) 동안에, 제 1 가산기(5a)는 제 3 단계 동안에 제 1 가산기(5a)에 의해 계산된 덧셈 결과와 제 2 단계(52) 동안에 제 2 가산기(5b)에 의해 계산된 덧셈 결과의 덧셈을 수행한다. 따라서 픽셀 값 6에 대응하는 누적 히스토그램 값이 획득되며 레지스터(316)에 저장된다. 동시에, 제 2 가산기(5b)는 제 3 단계(53) 동안에 제 1 가산기(5a)에 의해 계산된 덧셈 결과와 제 3 단계(53) 동안에 제 2 가산기(5b)에 의해 계산된 덧셈 결과의 덧셈을 수행한다. 따라서, 픽셀 값 7에 대응하는 누적 값이 획득되며 레지스터(317)에 저장된다.
도 5에 도시된 방법에 의해, 8 개의 히스토그램에 기초한 누적 히스토그램 계산은 종래 기술의 8 개 대신에 5 개의 계산 단계를 요구한다. 결국, 동시에 완료될 수도 있는 덧셈 수가 제한된다 하더라도, 본 발명에 따른 방법의 구현은 누적 히스토그램의 계산에 필요한 처리 시간을 상당히 저감시킬 수 있다.
도 5에 도시된 방법은 히스토그램 값은 다양한 수의 히스토그램 값과 다양한수의 병렬 덧셈에 적용될 수 있는 것으로 관측되었다. 만약 누적 히스토그램의 계산에 있어서, 병렬로 행해지는 A 덧셈을 갖고 있다고 가정하면, A는 2 이상의 정수이다. 도 5에 도시된 것과 동일한 방법을 적용하기 위해, N 개의 히스토그램 값은 픽셀 값의 오름차순으로 M 개의 값의 A 그룹으로 분할된다. 예를 들면, 도 5에 도시된 방법에서, 여기서 N은 8이고, A는 2이며, 따라서 4개의 값의 2 그룹이 있는데, 제 1 그룹은 픽셀 값 0 내지 3에 대응하는 히스토그램 값을 포함하고, 제 2 그룹은 픽셀 값 4 내지 7에 대응하는 히스토그램 값을 포함한다.
만약 N이 A의 배수가 아니면, M 개 값의 A 그룹과 N-MA 개 값의 하나의 그룹이 있다. 이하에서는 N이 A의 배수라고 가정하며, 그러면 상기 방법은 N-MA 개 값의 추가적인 그룹을 갖는 경우에 후술하는 사항으로부터 쉽게 유도될 수 있다.
제 1 단계는 각 그룹의 제 1 히스토그램 값과 제 2 히스토그램 값을 동시에 덧셈하여 A 개의 누적 히스토그램의 서브값(sub-value)을 획득하는 단계를 포함한다. 제 1 그룹에서, 이렇게 계산된 누적 히스토그램의 서브값은 픽셀 값 1에 대응하는 누적 히스토그램 값에 대응한다.
제 2 단계는 각 그룹의 제 3 히스토그램 값을 이전 단계 동안에 동일한 그룹에 대해 계산된 누적 히스토그램 서브값에 병렬로 더하는 단계를 포함한다.
각 그룹의 제 4 히스토그램 값에 대해서 동일한 방식으로 진행되며, 그 다음도 마찬가지이다. 결국, 제 1 단계 후에, 이전 단계에서 획득된 값의 합을 갖는 제 3 히스토그램 값으로부터 시작해서 각 그룹의 각각의 히스토그램 값에 대해 병렬로 덧셈하는 단계를 각각 포함하는 M-2 개의 계산 단계가 완료된다. 이들 계산단계는 각 그룹에서 M-2 개의 누적 히스토그램의 서브값을 도출한다.
전술한 단계들은 종래 기술에 따른 누적 히스토그램 계산 방법의 적용에 대응하며, 이 방법은 각 그룹에 동시에 적용된다.
따라서, 제 1 그룹의 히스토그램 값에 대응하는 누적 히스토그램 값과, 후속 그룹 내의 누적 히스토그램 서브값을 갖는다.
다음 단계 동안에, 제 1 히스토그램 값과 제 2 그룹의 A-1 개의 제 1 누적 히스토그램 서브값은 제 1 그룹의 마지막 히스토그램에 대응하는 누적 히스토그램 값에 동시에 더해진다. 이런 방법으로 A 개의 제 1 누적 히스토그램 값이 획득되는데, 이것은 제 2 그룹의 A 개의 제 1 히스토그램 값에 대응한다.
다음 단계 동안에, 제 2 그룹의 다음 A 개의 누적 히스토그램 서브값이 제 1 그룹의 마지막 히스토그램 값에 대응하는 누적 히스토그램 값에 동시에 더해진다.
이와 유사하게 제 2 그룹의 히스토그램에 대응하는 모든 누적 히스토그램 값이 획득될 때까지 진행된다.
다음 단계 동안에, 제 1 히스토그램 값과 제 3 그룹의 A-1 개의 제 1 누적 히스토그램의 서브값이 이전 단계 동안에 계산된 제 2 그룹의 마지막 히스토그램 값에 대응하는 누적 히스토그램에 동시에 더해진다. 이런 방법으로, 제 3 그룹의 A 개의 제 1 히스토그램 값에 대응하는 A 개의 제 1 누적 히스토그램 값이 획득된다.
그 다음에 제 3 그룹의 히스토그램 값에 대응하는 모든 누적 히스토그래 값이 획득될 때까지 전술한 바와 같이 진행된다.
모든 누적 히스토그램 값이 획득될 때까지 다른 그룹에 대해서 동일한 방식으로 진행된다.
도 6은 본 발명에 따른 방법을 구현하는데 사용될 수도 있는 회로를 나타낸다. 그러한 회로는 메모리(611, 612), 임시 레지스터(621 내지 627), 멀티플렉서(631 내지 634) 및 가산기(641, 642)를 포함한다. 이 회로는 후술하는 바와 같이, 도 5의 방법을 구현하는데 사용될 수도 있다.
메모리(611, 612)는 히스토그램 값을 저장하는 역할을 한다. 이들 메모리는 예를 들면 레지스터 또는 레지스터 뱅크일 수도 있다.
제 1 단계(51) 동안에, 픽셀 값 0에 대응하는 히스토그램 값은 제 1 메모리(611)로부터 제 1 임시 레지스터(621)로 전송되고 그 다음에 제 1 멀티플렉서(631)로 전송되며, 픽셀 값 1에 대응하는 히스토그램 값은 제 1 메모리(611)로부터 제 2 멀티플렉서(632)로 전송된다. 이들 두 값은 멀티플렉서(631, 632)에 의해 선택된다. 이 목적을 위해 멀티플렉서(631, 632)는 도 6에 도시되지 않은 제어 회로에 의해 제어된다. 이들 두 값은 제 1 가산기(641)에 의해 함께 더해지며, 획득된 덧셈 결과는 제 2 임시 레지스터(622) 내에 저장된다. 동시에, 제 2 가산기(642)는 픽셀 값 4 및 5에 대응하는 히스토그램 값의 덧셈을 수행하고, 제 5 임시 레지스터(625) 내에 저장된다.
임시 레지스터(622, 625)는, 예를 들면 도 5의 레지스터(310 내지 317)와 같은 누적 히스토그램 값을 저장하는 저장 장치에 접속된다. 따라서, 만약 계산 단계에서, 덧셈 결과가 누적 히스토그램에 대응하면, 그 결과는 도 6에 도시되지 않은 다른 제어 회로에 의해 저장 장치 내에 로딩된다.
제 2 단계(52) 동안에, 제 1 가산기(641)는 픽셀 값 2에 대응하는 히스토그램 값과 제 2 임시 레지스터(622)에 저장된 값의 덧셈을 수행한다. 따라서 제 1 멀티플렉서(631)는 제 2 임시 레지스터(622)에 저장된 값을 제 1 가산기(641)로 전송하기 위해 그 값을 선택한다.
덧셈 결과가 제 1 가산기(641) 또는 제 2 가산기(642)에 의해 계산되는 경우, 그 결과는 제 2 임시 레지스터(622) 또는 제 5 임시 레지스터(625)에 각각 저장된다. 그 다음에 이들 레지스터 중 하나에 사전에 저장된 값이 다음 임시 레지스터로, 즉 제 3 임시 레지스터(623) 또는 제 6 임시 레지스터(626)로 각각 이동된다.
따라서 제 1 가산기(641)에 의해 생성된 덧셈 결과는 임시 레지스터(622)에 저장되고, 이전 단계 동안에 계산된 덧셈 결과는 제 3 임시 레지스터(623)에 저장된다. 동시에, 제 2 가산기(642)는 픽셀 값 6에 대응하는 히스토그램 값과 제 5 임시 레지스터(625)에 저장된 값의 덧셈을 수행한다.
제 3 단계(53) 동안에, 제 1 가산기(641)는 픽셀 값 3에 대응하는 히스토그램과 제 2 임시 레지스터(622)에 저장된 값의 덧셈을 수행한다. 동시에, 제 2 가산기(642)는 픽셀 값 7에 대응하는 히스토그램 값과 제 5 임시 레지스터(625)에 저장된 값의 덧셈을 수행한다.
제 4 단계(54) 동안에, 제 1 가산기(641)는 픽셀 값 4에 대응하는 히스토그램 값과 제 2 임시 레지스터(622)에 저장된 값의 덧셈을 수행한다. 동시에, 제 2가산기(642)는 제 2 임시 레지스터(622)에 저장된 값과 제 6 임시 레지스터(626)에 저장된 값의 덧셈을 수행한다. 실제로, 제 2 단계(62) 동안에 제 2 가산기(642)에 의해 계산된 덧셈 결과는 제 4 단계(54) 동안에 제 6 레지스터(626)에 저장된다.
제 5 단계(55) 동안에, 제 1 가산기(641)는 제 3 임시 레지스터(623)에 저장된 값과 제 7 임시 레지스터(627)에 저장된 값의 덧셈을 수행한다. 동시에, 제 2 가산기(642)는 제 3 임시 레지스터(623)에 저장된 값과 제 6 임시 레지스터(626)에 저장된 값의 덧셈을 수행한다.
도 4 및 5에 도시된 방법은 8 개의 히스토그램 값에 기초하여 누적 히스토그램의 계산에 적용된다. 히스토그램 값의 수가 높아질수록, 각 계산 단계 동안에 동시에 행해지는 덧셈의 수는 높아진다. 예를 들면, 256 개의 히스토그램 값에 기초하여 누적 히스토그램을 계산하는데 있어서, 도 4의 방법은 128 개의 덧셈을 동시에 요구한다. 만약 이러한 방법이 회로에 의해 구현되면, 필요한 가산기의 수가 상당히 많게 되며, 이로 인해 가산기가 회로 내의 상당한 실리콘 표면을 차지하기 때문에 장애가 발생할 수도 있다.
도 7은 이러한 단점을 완화하기 위한 본 발명의 바람직한 실시예에 따른 방법을 도시한 것이다. 이 방법은 각 계산 단계에서, 15 개의 히스토그램 값에 기초하여 누적 히스토그램을 계산하도록 허용하며, 각각의 계산 단계는 동시에 단 두 개의 덧셈만 요구한다. 이 방법은 두 개의 계산 단계 열을 포함하는데, 제 1 열은 단계(71 내지 75)를 포함하고, 제 2 열은 단계(76 내지 80)를 포함한다.
제 1 단계(71) 동안에, 픽셀 값 0 내지 7에 대응하는 히스토그램 값이 8 개의 레지스터(700 내지 707)에 로딩된다. 5 개의 제 1 단계(71 내지 75) 동안에, 이들 값에 기초하여 동작들이 수행되고, 이 동작들은 도 5에 도시된 방법의 다섯 단계(51 내지 55) 동안에 수행된 동작과 동일하다. 이로 인해, 8 개의 누적 히스토그램 값을 획득할 수 있으며, 이는 픽셀 값 0 내지 7에 대응한다. 이들 8 개의 누적 히스토그램 값은 8 개의 레지스터(710 내지 717)에 일시 저장되고, 그 다음에 도 7에 도시되지 않은 저장 장치로 전송된다.
제 6 단계(76) 동안에, 픽셀 값 7에 대응하는 누적 히스토그램 값이 레지스터(700)로 전송되고, 픽셀 값 8 내지 14에 대응하는 히스토그램 값이 7 개의 레지스터(701 내지 707)에 로딩된다. 단계(76 내지 80) 동안에, 레지스터(700 내지 707)에 저장된 값에 기초하여 동작들이 수행되며, 이 동작들은 도 5에 도시된 방법의 다섯 단계(51 내지 55) 동안에 수행된 동작과 동일하다. 이로 인해, 7 개의 누적 히스토그램 값을 획득할 수 있으며, 이는 픽셀 값 8 내지 14에 대응한다. 이들 7 개의 누적 히스토그램 값은 7 개의 레지스터(711 내지 717)에 일시 저장되고, 그 다음에 저장 장치로 전송된다.
일반적인 방법에서, 화상 내의 픽셀 값의 수는 2의 멱(power)이다. 픽셀 값의 이 멱이 16인 경우, 즉 누적 히스토그램이 16 개의 히스토그램 값에 기초하여 계산되는 경우, 도 7의 방법은 쉽게 이용될 수도 있다. 실제로, 이 방법은 15 개의 제 1 누적 히스토그램 값을 계산하도록 허용한다. 픽셀 값 15에 대응하는 마지막 누적 히스토그램 값을 계산하기 위해, 단계(80) 동안에 레지스터(717)에 저장된 누적 히스토그램 값은 레지스터(700)로 전송되고, 도 5의 방법의 제 1 단계(51)에대응하는 부가적인 단계가 수행된다.
이 실시예는 본 발명에 따른 방법이 회로에 의해 수행되면 특히 바람직하다. 실제로, 도 7의 방법은 도 6의 회로에 의해 이용될 수도 있다. 그러면, 이 회로는 제 1 계산 단계 열 동안에, m 개의 히스토그램 값의 그룹, 예를 들면 8 개의 값의 그룹을 처리하고, 그 다음에 m 개의 제 1 누적 히스토그램 값을 계산할 것이다. 그 다음에 회로는 m-1 개의 히스토그램 값의 그룹을 처리한다. 그 결과, 히스토그램 값의 수가 어떠하든, 이 바람직한 실시예는 종래 기술에 비해, 필요한 계산 단계의 수를 줄이면서 적은 수의 가산기를 포함하는 회로에 의해 수행될 수도 있다. 또한, 본 발명의 바람직한 실시예에 따른 방법을 이용하는 회로는 덧셈 결과를 저장하는 한정된 수의 임시 레지스터를 요구한다. 사실, 계산 단계의 열은 이전 열 동안에 계산된 덧셈 결과를 이용하지 않고, 이전 열 동안 계산된 누적 히스토그램 값만 이용한다. 결국, 하나 이상의 계산 단계 열 동안 덧셈 결과를 백업할 필요가 없다.
예를 들면, 본 발명의 바람직한 실시예를 구현하며 256 개의 히스토그램 값에 기초하여 누적 히스토그램을 계산하기 위한 도 6에 도시된 회로는 255 개의 종래 기술의 계산 단계 대신에 5+5*35+3=173 개의 계산 단계를 요구한다.
물론, 본 발명의 바람직한 실시예를 구현하기 위해 도 4에 따른 방법의 계산 단계를 연속적으로 적용하는 것도 가능하다. 이 경우에, 256 개의 히스토그램 값에 기초한 누적 히스토그램의 계산은 3+35*3+3=111 개의 계산 단계를 요구한다. 이러한 방법은 단 4 개의 가산기만 포함하는 회로에 의해 수행될 수도 있다.
도 4, 5, 7에 도시된 예들과 같은 다수의 방법은 본 발명에 따라 파악될 수도 있다. 예를 들면, 256 개의 히스토그램 값에 기초하여 누적 히스토그램을 계산하기 위해, 다양한 열의 계산 단계를 수행하는 것도 가능한데, 제 1 열은 16 개의 제 1 히스토그램 값에 대응하는 누적 히스토그램 값을 계산하기 위한 것이고, 제 2 열은 15 개의 다음 값에 대해, 제 3 열은 15 개의 다음 값에 대해, 기타 이와 같이 대응하는 누적 히스토그램 값을 계산하기 위한 것이다. 계산 단계는, 예를 들면 동시에 4 개의 덧셈을 이용할 수도 있다.
도 6에 도시된 회로는 화면 상의 이들 픽셀의 디스플레이에 대한 픽셀 값을 계산하기 위한 화상 처리 시스템에 이용될 수도 있다. 이러한 화상 처리 시스템은 예를 들어 디코더, 셋톱 박스, 텔레비전, 중앙 컴퓨터 장치 또는 컴퓨터 스크린에 포함될 수도 있다. 이러한 화상 처리 시스템은 적어도 하나의 화상을 나타내는 신호를 송신할 수 있는 송신기와, 전송망과, 상기 신호를 수신할 수 있는 수신기를 포함하는 통신망에 이용될 수도 있다.
원칙적으로, 적절하게 프로그램된 집적 회로에 의해 본 발명에 따른 방법을 구현하는 것이 가능하다. 프로그램 메모리에 포함된 인스트럭션 세트는 집적 회로에 명령하여 전술한 다양한 단계들을 수행하도록 할 수도 있다. 인스트럭션 세트는 인스트럭션 세트가 코딩되는 디스크와 같은 데이터 매체를 판독함으로써 프로그램 메모리에 로딩될 수도 있다. 이 판독은 예를 들어 인터넷과 같은 통신망을 통해 이루어질 수도 있다. 이 경우, 서비스 제공자가 관련측의 처분으로 인스트럭션 세트를 제공할 것이다.
"포함" 및 그 상당어구는 넓은 의미로 해석되어야 하며, 즉, 이 용어 다음에 나열된 요소들 이외의 다른 요소들 및 이 용어 다음에 나열된 복수의 존재를 배제하지 않는다.

Claims (8)

  1. N 개의 히스토그램 값에 기초하여 누적 히스토그램 값의 계산을 수행하는 화상 처리 방법에 있어서,
    적어도 두 병렬 덧셈(parallel addition)을 이용하는 계산 단계를 포함하고, 계산 단계 내에서의 각각의 덧셈은 두 히스토그램 값 또는 하나의 히스토그램 값과 이전 계산 단계 동안에 계산된 하나의 덧셈 결과 또는 적어도 하나의 이전 계산 단계 동안 계산된 두 개의 덧셈 결과에 기초한 덧셈 결과가 되는
    화상 처리 방법.
  2. 제 1 항에 있어서,
    상기 계산 방법은 적어도 두 개의 연속하는 계산 단계 열(series of calculation stages)을 포함하고, 각각의 계산 단계 열은 N보다 엄밀하게 낮은 다수의 히스토그램 값을 포함하는 히스토그램 값의 그룹에 대응하는 누적 히스토그램 값을 계산하기 위한
    화상 처리 방법.
  3. 히스토그램 값에 기초하여 누적 히스토그램 값을 계산하는 계산 회로에 있어서,
    계산 단계 동안에 병렬로 덧셈을 수행할 수 있는 적어도 두 개의 가산기를 포함하며, 계산 단계 동안의 각 덧셈은 두 히스토그램 값 또는 하나의 히스토그램 값과 이전 계산 단계 동안에 계산된 하나의 덧셈 결과 또는 적어도 하나의 이전 계산 단계 동안 계산된 두 개의 덧셈 결과에 기초한 덧셈 결과가 되는
    계산 회로.
  4. 제 3 항의 계산 회로를 포함하는
    화상 처리 시스템.
  5. 적어도 제 4 항의 화상 처리 시스템을 포함하는
    셋톱 박스.
  6. 적어도 제 4 항의 화상 처리 시스템 및 화상을 디스플레이하기 위한 화면을 포함하는
    장치.
  7. 적어도 하나의 화상 신호를 나타내는 신호를 송신할 수 있는 송신기와, 전송망과, 상기 신호를 수신할 수 있는 수신기와, 제 4 항의 화상 처리 시스템을 포함하는
    통신망.
  8. 제 1 항 또는 2 항의 방법의 단계들을 실행하기 위한 프로그램 코드 인스트럭션을 포함하며, 프로세서에서 실행되는
    프로그램.
KR10-2004-7020074A 2002-06-11 2003-06-05 화상 처리 방법, 계산 회로, 화상 처리 시스템, 셋톱 박스및 통신망 KR20050008812A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0207153 2002-06-11
FR0207153A FR2840713A1 (fr) 2002-06-11 2002-06-11 Procede de calcul d'un histogramme cumulatif
PCT/IB2003/002546 WO2003105088A1 (en) 2002-06-11 2003-06-05 Calculation method of a cumulative histogram

Publications (1)

Publication Number Publication Date
KR20050008812A true KR20050008812A (ko) 2005-01-21

Family

ID=29559125

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2004-7020074A KR20050008812A (ko) 2002-06-11 2003-06-05 화상 처리 방법, 계산 회로, 화상 처리 시스템, 셋톱 박스및 통신망

Country Status (8)

Country Link
US (1) US20060115150A1 (ko)
EP (1) EP1516288A1 (ko)
JP (1) JP2005529416A (ko)
KR (1) KR20050008812A (ko)
CN (1) CN1659593A (ko)
AU (1) AU2003239301A1 (ko)
FR (1) FR2840713A1 (ko)
WO (1) WO2003105088A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140014448A (ko) * 2012-07-24 2014-02-06 삼성전자주식회사 영상의 히스토그램 축적 계산 장치 및 방법

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI388202B (zh) 2008-08-25 2013-03-01 Chunghwa Picture Tubes Ltd 影像灰階分佈之統計裝置及其方法
US20110052059A1 (en) * 2009-08-27 2011-03-03 Canon Kabushiki Kaisha Generating image histogram by parallel processing
CN103793892B (zh) * 2012-11-01 2016-10-05 富士通株式会社 图像处理装置和图像处理方法
CN104361587B (zh) * 2014-11-04 2017-05-31 中国电子科技集团公司第三十八研究所 应用于dsp的直方图统计的实现装置和方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04276886A (ja) * 1991-03-05 1992-10-01 Fujitsu Ltd ヒストグラム計算セルおよびヒストグラム計算アレイ
US5764807A (en) * 1995-09-14 1998-06-09 Primacomp, Inc. Data compression using set partitioning in hierarchical trees
KR100189922B1 (ko) * 1996-06-20 1999-06-01 윤종용 히스토그램 등화를 이용한 동영상의 콘트라스트개선회로 및 그 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140014448A (ko) * 2012-07-24 2014-02-06 삼성전자주식회사 영상의 히스토그램 축적 계산 장치 및 방법
US9165209B2 (en) 2012-07-24 2015-10-20 Samsung Electronics Co., Ltd. Apparatus and method for calculating cumulative histogram of image

Also Published As

Publication number Publication date
FR2840713A1 (fr) 2003-12-12
CN1659593A (zh) 2005-08-24
US20060115150A1 (en) 2006-06-01
EP1516288A1 (en) 2005-03-23
JP2005529416A (ja) 2005-09-29
WO2003105088A1 (en) 2003-12-18
AU2003239301A1 (en) 2003-12-22

Similar Documents

Publication Publication Date Title
JP3584053B2 (ja) 複合オペランド内の多ビット要素を選択するためのマスク
US5801678A (en) Fast bi-linear interpolation pipeline
US20220083857A1 (en) Convolutional neural network operation method and device
US4878182A (en) Multiple pixel generator
CN111210004B (zh) 卷积计算方法、卷积计算装置及终端设备
KR20050008812A (ko) 화상 처리 방법, 계산 회로, 화상 처리 시스템, 셋톱 박스및 통신망
US5781903A (en) System and method for reordering lookup table entries when table address bits are inverted
US5668748A (en) Apparatus for two-dimensional discrete cosine transform
EP2043356A2 (en) Signal processing apparatus and signal processing method performing gamma correction
CN112243119B (zh) 一种白平衡处理方法、装置、电子设备及存储介质
CN110191340B (zh) 视频帧处理方法、装置、设备及存储介质
US5424967A (en) Shift and rounding circuit and method
US20140185951A1 (en) Summed area computation using ripmap of partial sums
US5864838A (en) System and method for reordering lookup table entries when table address bits are reordered
US5671169A (en) Apparatus for two-dimensional inverse discrete cosine transform
CN112967208A (zh) 一种图像处理方法、装置、电子设备及存储介质
CN109375952B (zh) 用于存储数据的方法和装置
US20080071852A1 (en) Method to perform a subtraction of two operands in a binary arithmetic unit plus arithmetic unit to perform such a method
WO2020063225A1 (zh) 一种数据处理方法和装置
KR101699029B1 (ko) 영역 처리 속도를 향상한 영상 처리 장치 및 영상 처리 방법
US20130003870A1 (en) Apparatus and method for video data processing
CN111684413B (zh) 计算处理器和计算方法
US20230368496A1 (en) Super resolution device and method
JP4451693B2 (ja) データをフィルタリングする方法
US20090115793A1 (en) Enhanced alpha blending

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid