- Read the files (cover and hidden image).
- Convert the files to the RGB format.
- Separate the channels (colors) for the cover image and the hidden image.
- Apply the wavelet transform to the cover and hidden images.
- Perform Singular Value Decomposition (SVD) on the cover and hidden images.
- Embed the hidden information into the 'D' parameters of the cover image.
- Reconstruct the coefficient matrix from the embedded SVD parameters.
- Concatenate the three reconstructed RGB channels into a single matrix.
- Extract the horizontal, vertical, and diagonal coefficients from each RGB channel of the image.
- Apply inverse transform to each channel of the processed image, generating the stego image.
- Apply the decoding transform to each channel of the stego image.
- Perform Singular Value Decomposition (SVD) on the stego image.
- Reverse the information embedded in the 'D' parameter of the cover image in step 5 through the inverse operation.
- Combine the approximations with the hidden SVD values to reconstruct the hidden image.
- Obtain the reconstructed hidden image, which consists of the color channels combined with the normalized SVD differences.
- Extract the horizontal, vertical, and diagonal coefficients from each RGB channel of the hidden image.
- Apply inverse transform to each channel of the image to generate the final hidden information image.
For more details, please refer to our Wiki!
- Create a virtual python environment
python3 -m venv env
- Activate virtual environment
- Linux / macOS
source env/bin/activate
- Windows
.\env\Scripts\activate
- Install packages from
requirements.txt
pip install -r requirements.txt
- Install the package into the local environment
pip install <PACKAGE>
- Update the requirements.txt
pip freeze > requirements.txt