Abstract
This paper offers an improved error diffusion algorithm for its real-time implementation in FPGA by creating Error-Error Diffusion Value Lookup Tables to spare multiplications, adopting four pipelines instead of traditional sequential process, and performing color error diffusion in four parallel channels among other techniques whereby it takes only one clock circle on average to get the halftone result of a pixel. In accordance with the Avalon bus specification, the improved algorithm is packaged into an IP core which is later adopted to construct a practical halftoning hardware system using the SOPC technique. Tests of the system in the “USB Direct Printing System” of the research office show that the IP core is efficient to meet the requirements of the printing domain.










Similar content being viewed by others
References
Atamna N, Tifedjadjine Z, Dibi Z, Bouridane A. A Fast Halftoning Algorithm using LUT Approach for Grey-level Images. In Information and Communication Technologies, 2006. ICTTA’06. 2nd. 1: 1489–1492
Avalon Interface Specifications. Altera Corporation. 2011
Avila BT, Lins RD, Oliveira L (2005) A new rotation algorithm for monochromatic images. In Proceedings of the 2005 ACM symposium on Document engineering. ACM: 130–132
Guo J, Liu Y, Chang J, Lee J (2013) Efficient halftoning based on multiple look-up tables
Huang K, Hu Y, Li X (2011) “Cross-layer optimized placement and routing for FPGA soft error mitigation.” Design, Automation & Test in Europe Conference & Exhibition (DATE). IEEE: 1–6
Kim CG, Kim JG, Lee DH (2014) Optimizing image processing on multi-core CPUs with intel parallel programming technologies. Multimedia Tools Appl 68(2):237–251
Liu LY, Chen W, Wong TT, Zheng WT, Geng WD (2013) An improved parallel contrast-aware halftoning. J Zhejiang Univ SCIENCE C 14(12):918–929
Nios II Hardware Development Tutorial. Altera Corporation, 2011
Siddiqui H, Boutin M, Bouman CA (2010) Hardware-friendly descreening. Image Process IEEE Trans 19(3):746–757
Ulichney RA (1999) “Review of halftoning techniques.” Electronic Imaging. Int Soc Optics Photon: 378–391
Venugopal RK, Heath JR, Lau DL (2011) FPGA based parallel architecture implementation of Stacked Error Diffusion algorithm. In Application Specific Processors (SASP), 2011 I.E. 9th Symposium on. IEEE: 66–69
Wu H, Wong TT, Heng PA (2013) Parallel structure-aware halftoning. Multimedia Tools Appl 67(3):529–547
Yamashita H, Matsushima K, Nakahara S (2012) “Image-type high-definition CGHs encoded by optimized error diffusion.”SPIE OPTO. Int Soc Optics Photon: 82810Z–82810Z
Yong-tai HE, Gang DONG, Wen-qing HUANG (2006) Realization of pipeline on design of FPGA. J TianJin Polytechnic Univ 04:84–86, in Chinese
Yu X, Yaxiong W (2013) [J]. “The study and implementation of dither algorithm basd on error diffusion.”. Electron Technol 25(12):24–26, in Chinese
Zhang Y, Recker JL, Ulichney R, Beretta GB, Tastl I, Lin IJ, Owens JD (2011) “A parallel error diffusion implementation on a GPU.” IS &T/SPIE Electronic Imaging. Int Soc Optics Photon: 78720K–78720K
Zhang YJL, Recker R, Ulichney I, Tastl, Owens JD (2012) “Plane-dependent error diffusion on a GPU.” IS &T/SPIE Electronic Imaging. Int Soc Optics Photon: 829515–829515
Zhuo F, Peng C-L (2004) Chen Ze-wen. NIOS based SOPC design. Comput Eng Design 04:504–5077, in Chinese
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Yang, P., Wang, Q. & Zhang, J. Parallel design and implementation of Error Diffusion Algorithm and IP core for FPGA. Multimed Tools Appl 75, 4723–4733 (2016). https://doi.org/10.1007/s11042-015-2499-3
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11042-015-2499-3