Digital Watermark – Comparison of DWT and DCT

Robustness of DWT (wavelet) vs DCT is graded based on the Correlation coefficient (0-100%) of extracted watermark.
393 Downloads
Updated 4 Jan 2024

DWM

View Digital Watermarking – Comparison of DCT and DWT methods on File Exchange License: MIT GitHub (pre-)release

Keywords:

DWM, Digital Watermarking, Digital Watermark

DWT, Discrete Wavelet Transform

DCT, Discrete Cosine Transform

Digital Image processing

Table of Contents (Wiki)

Wiki Home
Overview
Notes
Examples
References

Basic Overview

Digital Watermarking (DWM) is a technique of protecting digital data. This code base implements 2 methods for marking digital images based on Discrete Cosine Transform (DCT) and Discrete Wavelet Transform (DWT).
Several attacks (signal degradations such as noise, dithering, filtering, cropping, lossy JPEG compression) on marked image were conducted. Attacked images are saved and the watermark is extracted.
Robustness of DWT vs DCT is graded based on the quality of extracted watermark. The measure used is the Correlation coefficient (0-100% or 0-1).

Flowchart

Flowchart

Discrete Wavelet Transform Breakdown

DWT_Breakdown DWT_Breakdown0
DWT_Breakdown1 DWT_Breakdown2

Using the App

See Main.mlx example file for simple Image Watermarking Procedure to control the program flow. It does not contain popup windows for selections, instead it has drop down selections.
Procedure steps are separated by sections that match the steps of the main menu in Main.m.
Also, hardcoded input variables from Main.m are clearly marked in Main.mlx as numeric sliders.

Main >> MethodSelection >> AttackSelection

Example Log

Case: No watermark, no attak, no detection

Not marked. Watermark method: None.
Attack: None
C:\Users\dzoni\Documents\GitHub\watermark\output\marked\Marked_image_None.tif
Not detected. Watermark method: None.

 Correlation Coefficient of the watermarks   NaN
 Normalized Correlation of the watermarks   0.000000
 Correlation Coefficient of the images   1.000000
 Normalized Correlation of the images   1.000000  

 Num of bit errors in detected watermark 2635   
 BER [%] for detected watermark 64.331055  
*******************************************************

Case: Watermarked, no attak, detection comparison

Method: DCT
Attack: None
C:\Users\dzoni\Documents\GitHub\watermark\output\marked\Marked_image_DCT.tif

 Correlation Coefficient of the watermarks   0.995758
 Normalized Correlation of the watermarks   0.996964
 Correlation Coefficient of the images   0.999543
 Normalized Correlation of the images   0.999996  

 Num of bit errors in detected watermark 8   
 BER [%] for detected watermark 0.195313  
*******************************************************
Method: DWT
Attack: None
C:\Users\dzoni\Documents\GitHub\watermark\output\marked\Marked_image_DWT.tif

 Correlation Coefficient of the watermarks   1.000000
 Normalized Correlation of the watermarks   1.000000
 Correlation Coefficient of the images   0.998351
 Normalized Correlation of the images   1.000107  

 Num of bit errors in detected watermark 0   
 BER [%] for detected watermark 0.000000  
*******************************************************

References:

Nikola Jovanovic on ResearchGate
Digital Watermarking – Comparison of DCT and DWT methods, ResearchGate
Digital Watermarking in Wavelet domain – Comparison of different types of wavelets, ResearchGate

Download

Download the latest release here.

Cite As

Nikola Jovanovic (2024). Digital Watermark – Comparison of DWT and DCT (https://github.com/etfovac/watermark/releases/tag/v1.2.5), GitHub. Retrieved .

MATLAB Release Compatibility
Created with R2008b
Compatible with R2008b to R2018a
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.2.5

See release notes for this release on GitHub: https://github.com/etfovac/watermark/releases/tag/v1.2.5

1.2.3

See release notes for this release on GitHub: https://github.com/etfovac/watermark/releases/tag/v1.2.3

1.2.2

See release notes for this release on GitHub: https://github.com/etfovac/watermark/releases/tag/v1.2.2

1.2.1

See release notes for this release on GitHub: https://github.com/etfovac/watermark/releases/tag/v1.2.1

1.2

See release notes for this release on GitHub: https://github.com/etfovac/watermark/releases/tag/v1.2

1.1

See release notes for this release on GitHub: https://github.com/etfovac/watermark/releases/tag/v1.1

1.0.1

To view or report issues in this GitHub add-on, visit the GitHub Repository.
To view or report issues in this GitHub add-on, visit the GitHub Repository.