S. Bezzateev, N. Voloshina

The combination of these two types of author rights protection methods is proposed in this paper. The idea is

to add small distortions to the initial image to get stable fingerprint.

In this paper the term salient feature refers to a special vector b in weighted Hamming metric obtained from

the image and to “nearest” (L, G) code perfect in the weighted Hamming metric [4]. The “nearest” means a code

that have codeword a on the minimal distance in weighted Hamming metric from the vector b.

2. Proposed Method Description

The author rights protection systems are developed in a way they give stable information about the person that

has author rights on it. This information should be stable for wide class of distortions that could happen. At the

same time author rights protection method should not change the initial information more than it defined for ex-

act marking object. For example it should keep visual quality of the image.

Fingerprinting methods do not change initial objects. They only use salient features of these objects to con-

struct fingerprint. The problem is that not always such features could be found or they could be not resistant to

attacks. At the same time it is not necessary to avoid any distortions of initial information (for example for digi-

tal images). In this case it is possible to use watermarking approach that changes some part of initial information

to embed additional author information. But it is not always possible to embed watermark with acceptable dis-

tortion level due to inconsistency of watermark and protected object structure.

The method of digital fingerprint construction based on the property of codeword presence in image (F5 con-

cept [5]) is proposed. If the codeword can’t be found then codeword should be added by the watermarking ap-

proach.

For example for the still images the essence of the method can be explained as following. The initial image or

its part is transformed into bit stream. This bit stream is divided into blocks a with length n. These blocks a are

looked at as a code words of code G with error vector e. If a is a codeword of G then

and syndrome

. It means that this block has required for fingerprinting property. If

then this block does not have

required property. It is necessary to decode this codeword i.e. to correct its errors to get this property. As a result

the distortions will be added to the initial information. The problem of getting

for any block of bit stream

could be solved by perfect codes usage [4].

It is possible to use several codes with equal parameters that are defined for weighted Hamming metric. For

this approach the code sequence

that is formed as a result of the blocks

decoding and for which the

blocks are the “closest” to their code words can be looked at as a fingerprint.

The structure of the blocks a should be weighted because the error corrected codes that are concerted with the

weighted Hamming metric are used to construct fingerprint. These weighted blocks could be looked at as a

weighted container that is formed for weighted watermarking [6] [7].

It is necessary to dived initial image into several zones to construct weighted blocks a. The division is per-

formed based on the influence of the errors that happened during the decoding process on the resulting distor-

tions (visual quality of resulting image). Blocks a are formed as a combination of the parts of these different

significance zones.

The basic scheme of the proposed fingerprinting method is shown in the Figure 1.

3. Error Correcting Codes Consistent with Weighted Hamming Metric

Error correcting codes in weighted Hamming metric are defined as following [4]:

Length n of a code word is

.

Any position of the code word

( )

12

111 22

12 11

l

ll

nn n

aaaa aaaa=

have the weight

. Let us consider

these weights as growing sequence i.e.

. The weight of the code word a in weighted

Hamming metric is defined as following:

.

It is obvious that Hamming distance between two vectors in weighted Hamming metric can be defined as

( )

12

111 22

12 11

l

ll

nn n

aaaa aaaa=

and

( )

12

111 22

12 11

l

ll

nn n

bbbb bbbb=

: