Content uploaded by Khaled Elleithy
Author content
All content in this area was uploaded by Khaled Elleithy on Dec 26, 2015
Content may be subject to copyright.
A New Video Steganography Algorithm Based on the
Multiple Object Tracking and Hamming Codes
Ramadhan J. Mstafa, IEEE Student Member
Department of Computer Science and Engineering
University of Bridgeport
Bridgeport, CT 06604, USA
rmstafa@my.bridgeport.edu
Khaled M. Elleithy, IEEE Senior Member
Department of Computer Science and Engineering
University of Bridgeport
Bridgeport, CT 06604, USA
elleithy@bridgeport.edu
Abstract—In the modern world, video steganography has
become a popular option for secret data communication. The
performance of any steganography algorithm is based on the
embedding efficiency, embedding payload, and robustness
against attackers. In this paper, we propose a new video
steganography algorithm based on the multiple object tracking
algorithm and Hamming codes. The proposed algorithm
includes four different stages. First, the secret message is
preprocessed, and Hamming codes (n, k) are applied in order
to produce an encoded message. Second, a motion-based
multiple object tracking algorithm is applied on cover videos in
order to identify the regions of interest of the moving objects.
Third, the process of embedding 3 and 6 bits of the encoded
message into the 1 LSB and 2 LSBs of RGB pixel components
is performed for all motion regions in the video using the
foreground mask. Fourth, the process of extracting the secret
message from the 1 LSB and 2 LSBs for each RGB component
of all moving regions is accomplished. Experimental results of
the proposed video steganography algorithm have
demonstrated a high embedding efficiency and a high
embedding payload.
Keywords- Video steganography; Motion-based multiple
object tracking; Hamming codes; Embedding efficiency;
Eembedding payload
I. INTRODUCTION
Recently, people communicate over the Internet and
share private information. This secret information should be
protected through a secure technique that blocks the data
from intruders and hackers. Steganography is a technique
that protects any secret message from an unintended
recipient’s suspicion within any data form. However, many
steganalytical detectors have been invented that detect a
secret message from an unsecure steganography algorithm.
In order to avoid the secret data from being detected by
steganalytical tools, the steganography algorithm must be
efficient. Every successful steganography algorithm should
contain an embedding efficiency, an embedding payload, and
robustness in order to work against attackers [1, 2].
The steganography algorithm containing a high
embedding efficiency will reduce a hacker’s suspicion of
finding the hidden data, and will be difficult to detect
through steganalysis detectors. In addition, accurate visual
quality of the stego data and a low modification rate of the
cover data will improve the embedding efficiency [3]. The
embedding efficiency includes: perceptual quality,
complexity, and security. The embedding efficiency is
directly affected by the security of the steganographic
algorithm. However, if any obvious distortion of the cover
data after the embedding process occurs, then the result may
be an increase in the attention of the hackers [4]. Another
component of a successful steganography algorithm is a high
embedding payload. The embedding payload is defined as
the amount of secret information that is required to be
embedded inside the cover data. Furthermore, an algorithm
that contains a high embedding payload will have an
extensive capacity to hide a secret message. In traditional
steganographic algorithms, an embedding efficiency and an
embedding payload are opposites. Increasing the capacity of
the secret message will decrease the visual quality of stego
videos resulting in a weakened embedding efficiency. Both
factors should be considered. The deciding factors depend on
the steganography algorithm and the user’s requirements [4,
5]. In order to increase the embedding payload with the low
modification rate of the cover data, many steganography
algorithms have been proposed using alternative methods.
These algorithms use block codes and matrix encoding
principles such as BCH codes, Hamming codes, cyclic
codes, Reed-Solomon codes, and Reed-Muller codes [6].
The contribution of this paper introduces a new video
steganography algorithm based on the multiple object
tracking algorithm and Hamming codes. Our proposed
steganography algorithm offers a reasonable trade-off
between the perceptual quality and an embedding payload.
The remainder of this paper is organized as follows: Section
2 presents some related works. Section 3 explains Hamming
codes. Section 4 reviews motion-based multiple object
tracking algorithm. Section 5 presents the proposed
steganography algorithm. Section 6 illustrates and explains
the experimental results. Section 7 is the conclusion.
II. RELATED WORK
Cheddad et al. proposed a skin tone video steganography
algorithm based on the YCbCr color space. YCbCr color
space is a useful color transformation, which is used in many
techniques such as compression and object detection
methods. The correlation between three color channels
(RGB) is removed, so that the intensity (Y) will be separated
from colors chrominance blue and red (Cb and Cr). After the
human skin regions are detected, the only Cr of these regions
will be utilized for embedding the secret message. [7].
Overall, the algorithm has a low embedding payload because
it has embedded the secret message i
n
component of the skin region. Khupse et
adaptive video steganography scheme us
i
The steganography scheme has been us
e
interest video frames. Khupse et al. used hu
m
a cover data for embedding the secre
t
morphological dilation and filling operati
o
b
een used as a skin detector. After vi
d
converted to YCbCr color space, the fra
minimum mean square error will be s
e
embedding process. Only the Cb co
m
particular frame will be picked for emb
e
message [8] . This scheme is very li
m
b
ecause only one frame is selected for th
e
process. Zhang et al. proposed an efficien
t
BCH codes for steganography. The embe
d
secret message into a block of cover data
.
p
rocess is completed by changing various
c
input block in order to make the syndrome
efficient embedder improves both stora
g
computational time compared with o
t
According to the system complexity, Z
h
improves the system complexity from exp
o
[9].
There is flexibility for both embeddi
n
embedding payload in the previously ment
i
This flexibility can be used
b
y our propo
improve the algorithm’s performance even
f
III. HAMMING CODES
In this section, the Hamming codes t
e
explained and discussed through a specifi
c
(15, 11). Hamming codes are defined as
p
owerful binary linear codes. These typ
e
detect and correct errors that occur in the
data during the communication between
p
codeword includes both original and e
x
minimum amount of data redundancy, an
d
the encoded message that uses the
technique. In general, if p is parity bits of
a
number 2 ; then, the length of the c
2
1. The size of the message that needs
defined as 2
1. The number
o
must be added to the message is
of / [4, 11].
In this paper, Hamming codes (15, 11)
k=11, and p=4), which can correct the i
d
single bit error. A message of size
encoded by adding
,
,
,
extr
a
become a codeword of 15-
b
it length.
T
p
repared to transmit through a communi
c
the receiver end. The common combinatio
n
and parity data using these type of code
s
parity bits at the position of 2
(i=0, 1, ...,
n
,
,
,
,
,
,
,
,
,
,
,
During the encoding and decoding
generator matrix G and parity-check ma
t
used by Hamming codes (15, 11). At
n
to the only Cr
al. proposed an
i
ng steganoflage.
ed in region of
m
an skin color as
t
message. The
o
n methods have
d
eo frames have
a
me that has the
e
lected for data
m
ponent of this
e
dding the secret
m
ited in capacity
e
data embedding
t
embedder using
d
der conceals the
.
The embedding
c
oefficients in the
values null. The
g
e capacity and
t
her algorithms.
h
ang’s algorithm
o
nential to linea
r
n
g efficiency and
i
oned algorithms.
o
sed algorithm to
f
urther.
e
chnique will be
c
Hamming code
one of the most
e
s of codes can
binary block of
p
arties [10]. The
x
tra data with a
d
is the result of
Hamming code
a
positive integer
c
odeword is
to be encoded is
o
f parity bits that
with the rate
are used (n=15,
d
entification of a
,
,…,
is
a
bits as parity to
T
he codeword is
c
ation channel to
n
of both message
s
is to place the
n
-k) as follows:
,
,
,
processes, the
t
rix H are being
the transmitter
channel, a message M, which in
c
multiplied by the generator matrix
G
b
y having modulo of 2. The c
o
obtained and ready to be sent.
At the receiver channel, the e
n
parity) which is a codeword R of 1
5
checked for errors. Once the r
e
multiplied by the parity-check ma
t
then be applied.
A syndrome vector Z
,
obtained. If the received message
have all zero bits (0000); otherwise
,
one or more bits of the received
m
In that case, the error correction pr
o
Where 1 0 0 0 1 0
0 1 0 0 1 1
0 0 1 0 0 1
0 0 0 1 0 0
The reason of using parity bits
i
to protect the message during com
m
codes (15, 11), 7 bits of the mess
a
each of parity bit, which is illustrat
e
Figure 1. Venn diagram of the Ha
m
IV. MOTION-BASED MULTIP
L
Due to its various applications,
c
the fastest emerging fields in
detection and tracking of mov
i
computer vision field that has re
c
attention. The tracking of movi
n
divided into two major phases:
objects in an individual video fra
m
these detected objects throughout
a
to construct complete tracks [12].
c
ludes of 11-bit, will be
G
, and then, manipulated
o
deword X of 15-bit is
1
n
coded data (message +
5
-bit will be received and
e
ceived codeword R is
t
rix H, modulo of 2 will
,
,
of 4-bit is
is correct, then Z must
,
during the transmission,
m
essage might be flipped.
o
cess must occur.
2
0 1 1 0 1 0 1 1 1
0 1 0 1 1 1 1 0 0
1 0 1 0 1 1 1 1 0
1 1 0 1 0 1 1 1 1
i
n the Hamming codes is
m
unication. In Hamming
a
ge are used to calculate
e
d in the Fig. 1.
m
ming codes (15, 11).
L
E OBJECT TRACKING
c
omputer vision is one of
computer science. The
i
ng objects within the
c
ently gained significant
n
g objects is commonly
1) detection of moving
m
e, and 2) association of
a
ll video frames in order
In the first phase, the background subtraction method,
based on the Gaussian Mixture Model (GMM), is used to
detect the moving objects. GMM is a probability of density
function equal to a weighted sum of component Gaussian
densities. The background subtraction method computes the
differences between consecutive frames that generate the
foreground mask. Then, the noises will be eliminated from
the foreground mask by using morphological operations. As
a result, the corresponding moving objects are detected from
groups of connected pixels.
The second phase is called data association. It is based
on the motion of the detected object. A Kalman filter is
utilized to estimate the motion of each trajectory. In each
video frame, the location of each trajectory is predicted by
the Kalman filter. In addition, the Kalman filter is used to
determine the probability of a specific detection that belongs
to each trajectory [12].
V. THE PROPOSED STEGANOGRAPHY ALGORITHM
In this section, we present a new video steganography
algorithm based on the multiple object tracking algorithm
and Hamming codes (15, 11). Our proposed steganography
is divided into the following four stages:
A. Secret Message Preprocessing Stage
In this work, a large size text file is used as a secret
message, and it is preprocessed before the embedding stage.
Here, the whole characters in the text file are converted into
ASCII codes in order to generate an array of binary bits.
Then, for security purposes, the binary array is encrypted by
using a key (Key1) that represents the size of the secret
message. This process will encode the message and protect it
from attackers. Since the binary linear block of Hamming
codes (15, 11) are used, the encrypted array is divided into
11-bit blocks. Then, every block is encoded by the Hamming
codes (15, 11) that will produce 15-bit blocks. The size of
the message is extended by adding four parity bits into each
block. Another key (Key2) is utilized to generate randomized
15-bit numbers, and each number is XORed with the 15-bit
encoded block. The security of the proposed algorithm will
be improved by using two keys, Hamming codes, and XOR
operation.
B. Motion-Based Multiple Object Tracking Stage
The motion-based multiple object tracking algorithm has
been previously explained in Section 4. The process of
identifying the moving objects in the video frames must be
performed when motion object regions are used as cover
data. This process is achieved by detecting each moving
object within an individual frame, and then associating these
detections throughout all of the video frames. The
background subtraction method is applied to detect the
moving objects. Then, the Kalman filter is used to predict
estimation trajectory of each moving object.
C. Data Embedding Stage
In each video frame, the cover data of the proposed
algorithm is the motion objects that are considered as regions
of interest. The motion regions are identified through the
video frames after they are detected and tracked. The region
of interest changes in every frame based on the size and the
number of the moving objects. The motion-based multiple
object tracking algorithm is applied in order to predict
trajectories of all moving objects. In each video frame, the
background subtraction method is administered to generate a
foreground mask which will determine the regions of the
moving objects. Then, the R, G, and B components of each
motion object’s pixels are used for embedding purposes. In
the proposed algorithm, the 1 LSB and 2 LSBs are utilized in
order to embed 3 and 6 bits of the secret message in each
motion pixel. Moreover, in order to transmit keys to the
receiver party, both keys are embedded into the non-motion
region of the first video frame. Upon completion, the stego
frames will be reconstructed in order to produce the stego
video format that transmits via the communication medium
to the receiver party. Fig. 2 shows the block diagram of the
data embedding stage.
D. Data Extraction Stage
The process of the data extracting stage is illustrated in
Fig. 3. In order to retrieve a secret message correctly, the
stego video is divided into frames through the receiver, and
then two keys are extracted from the non-motion region of
the first frame. To predict trajectories of motion objects, the
motion-based multiple object tracking algorithm is applied
again by the receiver. Moreover, in each video frame, a
foreground mask that is similar to the embedding stage’s
mask is produced by using the background subtraction
method. Then, the process of extracting the hidden message
is conducted by taking out 3 and 6 bits from the 1 LSB and 2
LSBs of RGB color components in each motion object’s
pixels of all the video frames. The extracted bits from all the
video frames are stored in a binary array. The binary array is
divided into 15-bit blocks. Each block will be XORed with
the 15-bit number randomly generated by Key2. The results
of the 15-bit blocks are decoded by using the Hamming (15,
11) decoder to produce 11-bit blocks. Since the sender has
encrypted the secret message, the obtained array is decrypted
by using Key1. The final array is divided into an 8-bit code
(ASCII) in order to generate the right characters of the
original message.
VI. EXPERIMENTAL RESULTS AND ANALYSIS
Three S2L1 video sequences of different views (View1,
View3, and View4) were used from the well-known
PETS2009 dataset [13]. The implemented videos contain
moving objects which are taken by different stationary
cameras. Experimental results are obtained by using the
R2013a version of the MATLAB software program. The
videos contain a 768x576 pixel resolution at 30 frames per
second, and a data rate of 12684 kbps. Each cover video
sequence contains 795 frames. In all the video frames, the
secret message appears as a large text file split in accordance
with the size and number of the moving objects.
Figure 2. Block diagram of the data embedding stage of the proposed algorithm.
Figure 3. Block diagram of the data extraction stage of the proposed algorithm.
A. Visual Quality
The visual quality of the proposed algo
r
by applying the Peak Signal to Noise Rati
o
PSNR is a non-perceptual objective metric
t
difference between the original and the dist
o
calculated as follows:
10
And Mean Square Error (MSE) is calcul
a
∑∑∑,,
C and S refer to the cover frame
a
respectively. In addition, m and n are
d
resolutions, and h indicates the R, G, and
B
(k=1, 2, and 3).
Fig. 4 shows the PSNR comparison
o
(View1) when using 1 LSB and 2 LSBs
object’s RGB pixels. Here, the PSNR value
for 1 LSB and 40.45 dB for 2 LSBs.
Fig. 5 illustrates the PSNR comparis
o
experiment when using 1 LSB and 2 LSB
s
pixel in the video frames. The PSNR value
s
43.88 dBs for 1 LSB and 2 LSBs, respectiv
e
Fig. 6 shows the PSNR comparison of
when using 1 LSB and 2 LSBs of each mot
i
pixels. Here, the PSNR values equal 51.35
d
44.16 dB for 2 LSBs.
The third experiment (View4) has bet
t
among other experiments because it has
f
moving objects than others. This means tha
t
embed less size of the secret data tha
n
experiments. Overall, the stego videos’ vi
s
close to the original videos’ visual qualitie
s
values of PNSRs for our proposed algorith
m
Figure 4. The PSNR comparison of the View1
r
ithm is measured
o
(PSNR) metric.
t
hat measures the
o
rted videos. It is
3
a
ted as follows:
,,
4
a
nd stego frame,
d
efined as video
B
color channels
o
f the first video
of each motion
s equal 47.73 dB
o
n of the View3
s
of each motion
s
equal 50.93 and
e
ly.
the View4 video
i
on object’s RGB
d
B for 1 LSB and
t
er visual quality
f
ewe
r
regions of
t
View4 video can
n
the other two
s
ual qualities are
s
due to the high
m
.
experiment.
Figure 5. The PSNR comparison
Figure 6. The PSNR comparison of
B. Embedding Payload
According to the reference [14]
has a high embedding payload. Her
e
hiding ratios for three experiments
i
hidden secret message in each V
i
videos using 1 LSB is 31.38, 14.
6
respectively. Moreover, when usin
g
the secret message in each Vie
experiments will be 62.77, 29.2
5
respectively. The hiding ratio can b
e
Fig. 7, 8, and 9 illustrate the d
a
the proposed steganography alg
o
View3, and View4 experiments.
T
shown the comparison of the em
b
video when 1 LSB and 2 LSBs of t
h
of the View3 video.
the View4 experiment.
, our proposed algorithm
e
,
t
he average of obtained
i
s 3.37%. The size of the
i
ew1, View3, and View4
6
2, and 12.95 Megabits,
g
2 LSBs, the amount of
w
1, View3, and View4
5
, and 25.92 Megabits,
e
calculated as follows:
100% 5
a
ta embedding payload of
o
rithm for each View1,
T
hese three figures have
b
edding capacity of each
h
e moving objects’ pixels
are utilized. The 2 LSBs were impleme
n
double the amount of the secret message in
e
Figure 7. The embedding payload comparison of the
Figure 8. The embedding payload comparison of
t
Figure 9. The embedding payload comparison of the
n
ted in order to
e
ach experimen
t
.
View1 experiment.
t
he View3 video.
View4 experiment.
VII. CONCLUSI
O
This paper introduces a ne
w
algorithm based on the multiple
o
and Hamming codes. The four alg
o
the secret message preprocessing s
t
multiple object tracking algorit
h
embedding process stage; and 4)
t
The performance of the propos
e
through a series of experiments.
O
demonstrated that the proposed
embedding efficiency based on
h
PSNRs. Furthermore, the pro
p
p
rotection methods on the secre
t
embedding process creating
Moreover, the proposed algorith
m
payload due to the sizable amo
u
message. In our future work, we
algorithm in the frequency domai
n
robustness of the algorithm agains
t
video processing attacks and artific
i
REFEREN
C
[1] R. J. Mstafa and K. M. Elleithy, "A novel
the wavelet domain based on the KLT tra
c
in Systems, Applications and Technology
Long Island, 2015, pp. 1-7.
[2] R. J. Mstafa and K. M. Elleithy, "An
Algorithm Based on BCH Codes," in A
m
E
ducation (ASEE Zone 1), 2015 Zone 1 Co
n
[3] H. Yuh-Ming and J. Pei-Wun, "Two im
p
I
mage and Signal Processing (CISP), 201
2011, pp. 1784-1787.
[4] R. J. Mstafa and K. M. Elleithy, "A highly
Hamming code (7, 4)," in Systems
,
Applic
a
(LISAT), 2014 IEEE Long Island, 2014, pp
.
[5] R. J. Mstafa and C. Bach, "Inform
a
Steganography Techniques," in American
S
Northeast Section Conference, 2013.
[6] R. J. Mstafa and K. M. Elleithy, "A hi
g
algorithm in DWT domain based on B
C
Telecommunications Symposium (WTS), 2
0
[7] A. Cheddad, J. Condell, K. Curran, and
Steganography in video files exploitin
g
M
ultimedia and Expo, 2008 IEEE Intern
a
905-908.
[8] S. Khupse and N. N. Patil, "An adaptive st
e
using Steganoflage," in
I
ssues and Cha
l
Techniques (ICICT), 2014 International C
o
[9] Z. Rongyue, V. Sachnev, M. B. Botnan,
K
Efficient Embedder for BCH Coding
f
Theory, IEEE Transactions on, vol. 58, pp.
[10] A. Sarkar, U. Madhow, and B. S. Manj
u
Pseudorandom Coefficient Selection and
Secure Steganography," Information
F
Transactions on, vol. 5, pp. 225-239, 2010.
[11] C. Chin-Chen, T. D. Kieu, and C.
Steganographic Scheme Based on (7, 4) H
a
in
E
lectronic Commerce and Security, 2
0
2008, pp. 16-21.
[12] A. Yilmaz, O. Javed, and M. Shah, "
O
computing surveys (CSUR), vol. 38, p. 13,
2
[13] J. Ferryman, in
P
ets 2009 dataset: Perfor
m
and surveillance, 2009.
[14] L. Tse-Hua and A. H. Tewfik, "A nov
e
system,"
I
mage Processing, IEEE Transa
c
2006.
O
N
w
video steganography
o
bject tracking algorithm
o
rithm stages include: 1)
t
age; 2) the motion-based
hm
stage; 3) the data
t
he data extracting stage.
e
d algorithm is verified
O
ur experimental results
algorithm has a high
h
igh values of obtained
p
osed algorithm used
t
message prior to the
additional efficienc
y
.
m
has a high embedding
u
nt of the hidden secret
will apply the proposed
n
in order to verify the
t
various attacks such as
i
al noises.
C
ES
video steganography algorithm in
c
king algorithm and BCH codes,"
Conference (LISAT), 2015 IEEE
Efficient Video Steganography
m
erican Society for Engineering
n
ferenc
e
, Boston, 2015, p. 10.
p
roved data hiding schemes," in
1 4th International Congress on,
secure video steganography using
a
tions and Technology Conference
.
1-6.
a
tion Hiding in Images Using
S
ociety for Engineering Education
g
h payload video ste ganography
C
H codes (15, 11)," in Wireless
0
15, 2015, pp. 1-8.
P. McKevitt, "Skin tone based
g
the YCbCr colour space," in
a
tional Conference on, 2008, pp.
e
ganography technique for videos
l
lenges in Intelligent Computing
o
nference on, 2014, pp. 811-815.
K
. Hyoung Joong, and H. Jun, "An
f
or Steganog
r
aphy," Information
7272-7279, 2012.
u
nath, "Matrix Embedding With
Error Correction for Robust and
F
orensics and Security, IEEE
Yung-Chen, "A High Pa yload
a
mming Code for Digital Images,"
0
08 Int
e
rnational Symposium on,
O
bject tracking: A survey," Acm
2
006.
m
ance and evaluation of tracking
e
l high-capacity data-embedding
c
tions on, vol. 15, pp. 2431-2440,