Parallel VLSI-oriented algorithm and architecture for computing histogram of images

The histogram of an image conveys information about the brightness and contrast of the image, and is used to manipulate these features. Histogram has many applications in image processing and may be needed at different processing stages. In this paper, we propose a parallel algorithm for computing the histogram of limited-width (such as gray-level) values. The essential parallelism and simplicity of the proposed algorithm make it easy to implement by using a VLSI array architecture. Each pixel only needs to perform addition and comparison, and communicate only with its immediate neighbor pixels during the entire computation period. The histograms for pre-load and in-load images can be computed using the proposed architecture. The time complexity for the proposed algorithm is O(N), comparing with O(N2) if using a uniprocessor, where N is the dimension of the image plane. The algorithm partition issue has also been studied.