This directory contains program DHDD used in paper:

Data Hiding for Printed Binary Documents Robust to Print-Scan, Photocopy and Geometric Attacks
Hae Yong Kim  and  Joceli Mayer

dhdd.zip - contains executable DHDD programs and examples.


1) Download dhdd.zip and uncompress it. The following files will be extracted:
data-in.vet   - A sequence of bits to be embedded
ink-dhdd.exe  - DHDD program for inkjet printer
ink-ori.pbm   - A binary document
ink-ps.jpg    - ink-ori.pbm after being watermarked, printed and scanned.
ink-run.bat   - The batch file that executes inkjet test
las-dhdd.exe  - DHDD program for laserjet printer
las-ori.pbm   - A binary document
las-ps.jpg    - las-ori.pbm after being watermarked, printed and scanned.
las-run.bat   - The batch file that executes laserjet test


2) Execute ink-run. It will execute the following operations:

:: Embeds the bits specified in data-in.vet in image ink-ori.pbm, generating ink-wmk.pbm
ink-dhdd s4d ink-ori.pbm data-in.vet ink-wmk.pbm 9 12 3 2

:: Extracts the hidden bits from ink-wmk.pbm, writing them in ink-wmk.vet
ink-dhdd v4d ink-wmk.pbm ink-wmk.vet

:: ink-ps.jpg was obtained printing and scanning ink-wmk.pbm
:: Extracts the hidden bits from ink-ps.jpg, writing them in ink-ps.vet
ink-dhdd v4d ink-ps.jpg ink-ps.vet

Note that the extracted bits and the inserted ones are the same.


3) Execute las-run. It will execute the following operations:

:: Embeds the bits specified in data-in.vet in image las-ori.pbm, generating las-wmk.pbm
las-dhdd s4d las-ori.pbm data-in.vet las-wmk.pbm 9 12 3 2

:: Extracts the hidden bits from las-wmk.pbm, writing them in las-wmk.vet
las-dhdd v4d las-wmk.pbm las-wmk.vet

:: las-ps.jpg was obtained printing and scanning las-wmk.pbm
:: Extracts the hidden bits from las-ps.jpg, writing them in las-ps.vet
las-dhdd v4d las-ps.jpg las-ps.vet

Note that the extracted bits and the inserted ones are the same.