FPGA-Based Hardware Implementation of Blue-Noise Stacked Error Diffusion Multitoning
Blue-noise stacked error diffusion (BSED) is a high-quality multi-level halftoning (multitoning) algorithm based on the blue-noise dithering model. This algorithm transforms a multitoning task into multiple error diffusion halftoning tasks, each producing a sub-halftone with inter-layer dependencies. These sub-halftones are stacked together to form the final visually pleasing multitone with blue-noise characteristics. In this research, the significant potential for parallelizing this multitoning algorithm inspires the design of a novel parallel raster image processor (NPRIP) for highly efficient execution, capable of producing an output pixel every six clock cycles at a clock frequency of 200 MHz. A hardware prototype based on the Xilinx Zynq SoC implements our raster image processor design on the FPGA within the SoC. The prototype is also capable of a conventional software implementation of the BSED algorithm running on the ARM CPU within the SoC. Output images from the prototype are successfully validated in both the spatial and frequency domains. Benchmark results demonstrate a consistent speedup exceeding <inline-formula xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink"> <tex-math notation="LaTeX">$30\times $ </tex-math></inline-formula> with FPGA co-processing compared to conventional sequential execution on the ARM CPU, reaching a maximum processing speed of 3.963 megapixels per second.
Authors
- R. Venugopal
- Daniel L. Lau (ORCID: https://orcid.org/0000-0003-1377-4622)
- J.R. Heath (ORCID: https://orcid.org/0009-0005-4043-0376)
- Q. Hu
Institutions
- University of Kentucky (US)
- Cummins (United States) (US)
Publication Details
- Journal
- IEEE Transactions on Circuits and Systems I Regular Papers
- Published
- 2025-03-18
- DOI
- https://doi.org/10.1109/tcsi.2025.3550100
- Citations
- 1
- Primary Topic
- Image and Signal Denoising Methods
- Type
- article
- Field-Weighted Citation Impact
- 1.28