A WATERMARKING SYSTEM FOR TEACHING STUDENTS
TO RESPECT INTELLECTUAL PROPERTY RIGHTS
Maria Chroni, Angelos Fylakis and Stavros D. Nikolopoulos
Department of Computer Science, University of Ioannina, GR-45110 Ioannina, Greece
Keywords:
Watermarking Techniques, Intellectual Property Rights, Teaching IP, Educational Tools, Visual Representa-
tions, Learning Process, Color Images, 2D-representations of Permutations, Algorithms.
Abstract:
Our work proposes a watermarking system for supporting the teaching process for educating students to re-
spect intellectual property rights. In particular, we propose an educational tool, which we named WaterIP,
that can be efficiently used by students to enable them to perceive how to protect their own ideas and how
to respect others’ intellectual property. Our system uses an efficient technique for watermarking images by
exploiting certain properties of a specific 2D representation of permutations, it has a friendly graphical user
interface and shows interesting performance figures. The system provides students with two main working
levels: (I) the student creates a secret key, i.e., the watermark, and embeds it into his own image, and (II) he
makes the marks of a watermarked image visible in order to later extract the watermark from it using only,
for pedagogical reasons, a ruler and a pencil. The watermarking method behind WaterIP can be applied to all
educational levels beginning from early childhood up to preliminary and high schools. We demonstrate the
educational effectiveness of our WaterIP system by presenting ways of how it can be applied in class and show
that WaterIP helps to understand what intellectual property rights really stand for.
1 INTRODUCTION
Digital watermarking (or, simply, watermarking) is a
technique for protecting the intellectual property of a
digital object; the idea is simple: a unique identifier,
which is called watermark, is embedded into a digital
object which may be used to verify its authenticity or
the identity of its owners
The watermarking problem can be described as
the problem of embedding a watermark w into an ob-
ject I and, thus, producing a new object I
w
, such that
w can be reliably located and extracted from I
w
even
after I
w
has been subjected to transformations (Coll-
berg and Nagra, 2010); for example, compression in
case the object is an image.
2 THEORETICAL TOOLS
In this section we present representations of the two
main objects of our watermarking system: the permu-
tations and the digital color images. In particular, we
propose a 2D representation of permutations and give
a 3D representation of color images.
2.1 Permutations
Informally, a permutation of a set of objects S is an
arrangement of those objects into a particular order,
while in a formal (mathematical) way a permutation
of a set of objects S is defined as a bijection from S to
itself (i.e., a map S S for which every element of S
occurs exactly once as image value).
Permutations may be represented in many ways.
The most straightforward is simply a rearrangement
of the elements of the set S, where S is the set N
6
=
{1,2,..., 6}; in this way we think of the permutation
π = (2,5,3,1,6,4) as a rearrangement of the elements
of the set N
6
such that 1 goes to 2”, “2 goes to 5”, “3
goes to 3”, “4 goes to 1”, and so on. (Sedgewick and
Flajolet, 1996; Golumbic, 1980).
2D Representation of Permutations. In this rep-
resentation, the elements of the permutation π =
(π
1
,π
2
,. .. , π
n
) are mapped in specific cells of an n×n
matrix A as follows:
integer i entry A(π
1
i
,i)
or, equivalently,
336
Chroni M., Fylakis A. and Nikolopoulos S..
A WATERMARKING SYSTEM FOR TEACHING STUDENTS TO RESPECT INTELLECTUAL PROPERTY RIGHTS.
DOI: 10.5220/0003920103360339
In Proceedings of the 4th International Conference on Computer Supported Education (CSEDU-2012), pages 336-339
ISBN: 978-989-8565-06-8
Copyright
c
2012 SCITEPRESS (Science and Technology Publications, Lda.)
the cell at row i and column π
i
is labeled by the
number π
i
, for each i = 1,2, ...,n.
In our 2DM representation, a permutation π over the
set N
n
= {1, 2,.. .,n} is represented by an n×n matrix
A as follows:
the cell at row i and column π
i
is marked by a
specific symbol, for each i = 1,2, ...,n.
1
2
3
4
5
6
6
5
4
3
2
1
1
2
3 4
5
6
Figure 1: A 2DM representation of π = (2,5,3,1,6, 4).
We next present an algorithm which extracts the
permutation π from its 2DM representation matrix.
More precisely, let π be a permutation over N
n
and let
A be the 2DM representation matrix of π ; given the
matrix A, we can easily extract π from A in linear time
(in the size of matrix A) by the following algorithm:
Algorithm Extract π from 2DM
Input: the 2DM representation matrix A of π;
Output: the permutation π;
1. For each column i of matrix A, 1 i n, do:
find the marked cell j in the column i,
and set i in cell A( j,i) and 0 in all other cells;
2. For each row i of matrix A, 1 i n, do:
find the cell j in the row i with value not
equal to 0, and set π
i
A(i, j);
3. Return the permutation π;
2.2 Color Images
A digital image is a numeric representation of a 2-
dimensional image; it has a finite set of values, called
picture elements or pixels, that represent the bright-
ness of a given color at any specific point in the image.
(Gonzalez and Woods, 2007).
The range of colors can be represented on the
Cartesian 3-dimensional system. The axes x, y and z
are used for the red green and blue color respectively.
In our system, since a color is a triple of integers
(x,y,z), a digital image I of resolution N × M (i.e., it
contains N rows and M columns of pixels) is stored in
a three-dimensional matrix Img of size N × M × 3 as
follows:
if the pixel I(i, j) of the image I has (x,y,z)
color, then Img(i, j,1) = x, Img(i, j, 2) = y, and
Img(i, j,3) = z.
3 OUR WATERMARKING
SYSTEM
In this section we describe the modules and the main
functions of the proposed watermarking system. Our
system, which we named WaterIP, provides to a stu-
dent two main working levels:
Embed Level. Through a friendly graphical user
interface, the student creates a secret key (i.e., the
watermark w) and selects a picture I in which he
wants to embed the watermark; in our system the
watermark w is a permutation π over the set N
6
and it is embedded into the original picture I, us-
ing the 2DM representation, resulting the water-
marked picture I
w
.
Mark Level. The student, in order to prove that
he is the owner of the picture I
w
, inputs the wa-
termarked picture I
w
into the system which makes
the marks visible to the student so that he will be
able to easily extract the watermark w (i.e., his
secret key) just by looking at the marks; in partic-
ular, the system returns the marked picture I
m
to
the student.
We should mention that our system uses a permu-
tation π over the set N
6
for the watermark w. The set
N
6
was selected in purpose; we preferredto use a fixed
size rather than giving the size as a choice to the user.
That choice was made in order to make the system
simple as it is designed to serve educational needs.
Also 6 is not a great number so it is relatively easy to
memorize by a student, nor it is a very small number
and that makes the permutation more presentable.
3.1 Embed Watermark into Image
We next describe an algorithm which embeds a per-
mutation π into an image I;
The algorithm takes as input a permutation π and
an image I, in which the user wants to embed the wa-
termark w = π, and produces the watermarked image
I
w
; it works as follows:
Step 1. The algorithm first computes the 2DM repre-
sentation of the permutation π = (π
1
,π
2
,. ..,π
6
), that
AWATERMARKINGSYSTEMFORTEACHINGSTUDENTSTORESPECTINTELLECTUALPROPERTYRIGHTS
337
is, it computes the 6× 6 array A (see, Subsection 2.1);
the entry (i,π
i
) of the array A contains the symbol “*”,
1 i 6.
Step 2. Next, the algorithm takes the input image I
and places on it an imaginary 6× 6 grid which covers
the whole images. Then it scans the image and goes
to each grid-cell C
ij
(I) (there are always 36 grid-cells
in any image) and locates the central pixel p
0
ij
of the
grid-cell C
ij
(I), 1 i, j 6.
Then, it computes the difference between the
brightness of the central pixel p
0
ij
and the average
brightness of the eight pixels p
1
ij
, p
2
ij
,. .., p
8
ij
around
it, and stores this value in the variable dif(p
0
ij
)
Finally, it computes the maximum absolute value
of all 36 differences dif(p
0
ij
), 1 i, j 6, and stores it
in the variable Maxdif(I).
Step 3. The algorithm goes again to each central pixel
p
0
ij
of each grid-cellC
ij
and if the corresponding entry
A(i, j) contains the symbol “*”, then it increases its
brightness k
0
ij
by the value e
0
ij
so that it surpasses the
image’s maximum difference Maxdif(I) by a constant
c; that is, k
0
ij
+ e
0
ij
= Maxdif(I) + c.
In our system we use c = 9, and thus the bright-
ness k
0
ij
of the central pixel of each grid-cell C
ij
is
increased by e
0
ij
, where
e
0
ij
= Maxdif(I) k
0
ij
+ 9 (1)
1 i, j 6.
Let I
w
be the resulting image after increasing the
brightness of the 6 central pixels, with respect to π,
of the image I. Hereafter, we call these 6 central pix-
els as 2DM-pixels; recall that, p
0
ij
is a 2DM-pixel if
A(i,π
i
) = “*”, or, equivalently, the cell (i, π
i
) of the
matrix A is marked.
3.2 Show Marks on Image
Next we describe our system’s algorithm which is re-
sponsible for making the marks of a watermarked im-
age I
w
visible to the student so that he will be able to
extract, in a specific way, the watermark w by hand.
The algorithm takes as input a watermarked image
I
w
in which the student wants to make the markings
visible, and produces the marked image I
m
; the steps
of the algorithm are the following:
Step 1. The algorithm places again the same imag-
inary 6 × 6 grid on image I
w
and locates the central
pixel p
0
ij
(i.e., the 2DM-pixel) of each grid-cellC
ij
(I),
1 i, j 6; there are 36 central pixels in total. Then,
it finds the 6 central pixels p
0
1
, p
0
2
,. .., p
0
6
, among the
36, with the maximum brightness using a known sort-
ing algorithm.
Figure 2: Part of the WaterIP interface.
Step 2. In this step, the algorithm takes the 6 grid-cell
C
1
,C
2
,. ..,C
6
of the image I
w
which correspond to 6
central pixels p
0
1
, p
0
2
,. .., p
0
6
, and places a red film over
the whole area of each grid-cell C
i
, 1 i 6.
To this end, the algorithm takes each pixel p
i, j
of
each grid-cell C
i
, 1 i 6, and modifies the bright-
ness k
i, j
= (x
i, j
,y
i, j
,z
i, j
) of the pixel p
i, j
as follows:
k
i, j
= (255,y
i, j
,z
i, j
) (2)
where, j takes N/6 × M/6 different values. The re-
sulting image is the marked image I
m
Step 3. Finally, the algorithm returns the marked im-
age I
m
.
4 INSIDE THE CLASSROOM
Our work proposes a supporting educational tool for
teaching, inside the classroom, the value of intellec-
tual property. As mentioned before we believe that
the best way to gain people’s respect towards intel-
lectual property rights is to start from the roots, and
that is the early education. Students should be taught,
as part of the ethical education, to respect intellectual
property at schools. (Watkins et al., 2007).
We consider that our tool can be applied in all ed-
ucational levels, as part of various lesson plans, be-
ginning from early childhood; uploading an image
or photo the teacher can demonstrate the system to
preschool learners and set them ethical dilemmas con-
cerning the proper use of images or photos. Teachers
of preliminary and high schools can go on more com-
plex meanings and explain learners the concepts of
watermarking, embedding, extracting, permutation,
image analysis, etc.
We next use an imaginary scenario where two
classmates claim the ownership of the same image,
Alex who is really the owner of the image and Bob
who claims that he is the owner, and show how our
WaterIP system helps both to understand what intel-
lectual property rights really stand for.Then we rec-
CSEDU2012-4thInternationalConferenceonComputerSupportedEducation
338
ommend a lesson plan of how our WaterIP system
can be efficiently applied in groups inside a classroom
during a course.
4.1 Two Classmates
Let us first present the scenario of the two classmates,
Alex and Bob, where both claim the ownership of an
image.
The main idea of the scenario is, that Alex first
paints a picture at a computer or just takes a photo
and uploads it to the computer. Afterwards he runs
our system and places the numbers between 1 and 6
in a random order that he memorizes and keeps secret.
That order actually forms the permutation which also
is the watermark that Alex wants to embed in his dig-
ital image. He selects from a menu which image he
wants to use and then runs the algorithm and places
the watermark into it. Then he gets the watermarked
image. That watermark will later be his proof that the
picture was really made by him and that he deserves
to be rewarded for it and not someone else; of course
we shall not forget that in order to do that he should
have memorized the permutation in order to claim the
property of the image. Afterwards Alex uploads the
watermarked image in his personal student web-page
or in the lesson’s webpage, making it public.
In Figure 2 we show a form, part of the system’s
friendly user interface, in which Alex produces the
watermark that he wants to embed in his image. What
he does here is that he selects the numbers from the
upper set by clicking on them and places them lin-
early in the second set of numbers which forms the
watermark (Button 1) and then selects and views an
image (Button 2); the figure depicts an intermediate
stage where Alex has already load an image and has
selected the fist two numbers, i.e., 2 and 5, of his wa-
termark. After the creation of his watermark, he is
able to embed it in the image (Button 3) and save the
watermarked image (Button 4).
Then Bob may later download the picture and in-
sist to the teacher that he painted it. Now the teacher
should pretend that he is going to reward that student
for that picture but also asks him if he can prove that it
is really his image. Of course Alex that really painted
that image would not want another one to be awarded
with a grade for a picture that he painted. So Alex
also gets into the discussion by telling his teacher that
there is a watermark in that picture and also which is
the value of this watermark. This way he can prove
that it is his property whereas Bob won’t be able to
do that. Then Alex uses the WaterIP program again,
inserts the picture that is being claimed by both sides
and gets the marked picture. Last Alex applies the
Figure 3: The marked image I
m
.
extracting algorithm, gets printed the marked image,
and using a ruler for his help gets the permutation.
That proves to the teacher that the picture was indeed
painted by Alex as the watermark he was told pre-
viously matches with the one that was just extracted
from the picture. Last the teacher rewards Alex for
his picture.
Figure 3 shows the most important part of the
whole process. After Alex runs the marking algorithm
he has a picture with red films over the marked areas
and, using a ruler and a pencil, he follows the extract-
ing procedure:
Procedure Water Extract
1. Scan the picture with the ruler from left to right
and write the numbers from 1 to 6 in ascending
order inside the red films;
2. Get the watermark by scanning the picture from
top to bottom and read every number that comes
across;
It is worth mentioning that after the completion of
the above process a student has experienced, he can
then easier understand what intellectual property re-
ally stands for.
REFERENCES
Collberg, C. and Nagra, J. (2010). Surreptitious Software.
Addison-Wesley.
Golumbic, M. (1980). Algorithmic Graph Theory and Per-
fect Graphs. Academic Press, Inc., New York.
Gonzalez, R. C. and Woods, R. E. (2007). Digital Image
Processing. Prentice-Hall, 3rd edition.
Sedgewick, R. and Flajolet, P. (1996). An Introduction to
the Analysis of Algorithms. Addison-Wesley.
Watkins, C., Carnell, E., and Lodge, C. (2007). Effective
Learning in Classrooms. Sage Publications.
AWATERMARKINGSYSTEMFORTEACHINGSTUDENTSTORESPECTINTELLECTUALPROPERTYRIGHTS
339