annotate Fotopoulos/README_VASSILIS @ 0:be303a3f5ea8

import
author Peter Meerwald <pmeerw@cosy.sbg.ac.at>
date Sun, 12 Aug 2007 13:14:34 +0200
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
1 These codes use the DCT,Hartley and Subband DCT
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
2 Transforms for watermarking purposes.All schemes
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
3 are blind,no original image is used for detection.
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
4 Each casting module is accompanied by a testing
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
5 module.Supposing that the watermark key that you
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
6 select during casting is in the range 1-1000,the
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
7 testing module will test all the keys in this range
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
8 to produce the well known similarity diagrams used
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
9 by Cox, Piva and many more with the peak being the
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
10 proof of the watermark existence.
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
11
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
12 I do not include a detection module because this implies
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
13 the use of certain thresholds. Although the casting
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
14 methods are almost standardized (multiplicative formula)
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
15 there are still questions about this thresholding but
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
16 the testing modules can be easily changed to fit this
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
17 purpose.
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
18
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
19 The DCT scheme does not use the visual masking improvement
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
20 that Barni and his team suggest in one of their later works.
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
21 In all casting programs we assume that the coefficients are
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
22 diagonaly scanned,and ordered as shown in the following example.
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
23
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
24 ----------------------
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
25 | 1| 3| 6|10|15|...
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
26 ----------------------
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
27 | 2| 5| 9|14|...
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
28 ----------------------
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
29 | 4| 8|13|...
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
30 ----------------------
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
31 | 7|12|...
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
32 ----------------------
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
33 |11|...
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
34 ----------------------
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
35
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
36 which is quite simple comparing to the zig zag scanning
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
37 pattern that we know from the JPEG standard but does not
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
38 affect at all the idea that we have of the middle
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
39 frequencies.Also the user should take care that
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
40
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
41 starting_coefficient+number_of_coeffs_to_change<(N*N)/2
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
42
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
43 which means that we shouldn't exceed the matrix diagonal.
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
44 To do so the scanning scheme should be changed accordingly
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
45 but this doesn't seem important because in all of the
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
46 schemes we don't get out of the middle frequencies coefs.
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
47 With correctly selected parameters,the schemes perform in
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
48 the same way as if the coeffs were zig zag scanned.
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
49
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
50 In the Subband DCT version,the first set of questions
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
51 about starting coefficient,number of coefficients to
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
52 alter and alpha parameter, refer to the LH,HL and HH
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
53 band while the second set of questions sets the parameters
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
54 about the LL band only.
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
55
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
56 All schemes should not be used with the same set of parameters
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
57 because each of the transforms, possess certain specific
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
58 properties. This should be kept in mind for testing purposes.
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
59 To use the right set of parameters please refer to corresponding
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
60 bibliography.
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
61 All code has been tested in Visual C++ v6.0
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
62
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
63 Have some nice tests...
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
64 Vassilis Fotopoulos
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
65
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
66 for more info,ideas or points of discussion
Peter Meerwald <pmeerw@cosy.sbg.ac.at>
parents:
diff changeset
67 email vfotop1@physics.upatras.gr

Repositories maintained by Peter Meerwald, pmeerw@pmeerw.net.