Information Hiding in Halftone-Encoded Computer-Generated Holograms

Resource Overview

Description on MATLAB implementation for information hiding in halftone-encoded computer-generated holograms: The main algorithm implementation is CGHwatermark; phase retrieval function is phaseSL; complex wavefront recording function with known amplitude and phase is Hologen; halftone encoding function is AMhalftone; watermark extraction directly uses MATLAB's built-in FFT2 function. The main program's function call sequence is: Input host information and watermark → phaseSL → Hologen → AMhalftone (embedding completion) → FFT2 (watermark extraction). Results are saved in holo&mark folder.

Detailed Documentation

The following description discusses various components of the MATLAB implementation for information hiding in halftone-encoded computer-generated holograms. The main algorithm implementation program, CGHwatermark, performs the following functions: reading host information and watermark data, phase retrieval, recording complex wavefront functions with known amplitude and phase using computer-generated holography, halftone encoding, and watermark extraction. The functional call sequence of the main program is as follows: the phaseSL function handles phase retrieval, whose output is passed to the Hologen function, then to the AMhalftone function for halftone encoding, and finally the FFT2 function is used for watermark extraction. The main program results are saved in the holo&mark folder. To test algorithm robustness, we provide the following test programs: 1. Cliptest: Program for testing cropping operations, with results saved in the cliptest folder. The implementation involves simulating different cropping patterns to evaluate watermark survival rates. 2. Zoomtest: Program for testing scaling operations, with results saved in the zoomtest folder. This test examines watermark durability under various scaling factors using interpolation methods. 3. Rotatetest: Program for testing rotation operations, with results saved in the rotate folder. The test applies rotational transformations to assess geometric attack resistance. 4. Filtertest: Program for testing filtering operations, with results saved in the filtertest folder. Various digital filters (Gaussian, median, etc.) are applied to evaluate frequency-domain robustness. 5. Timetest: Program for testing algorithm time efficiency. This module measures computational performance using MATLAB's timing functions. 6. Msetest: Program for analyzing the relationship between image quality after watermark embedding and parameters alpha and tao. The test employs mean squared error (MSE) metrics to quantify quality degradation versus embedding strength.