Post on 19-Dec-2015
Adaptive MPEG-2 Video Data Hiding Scheme
Anindya Sarkar, Upmanyu Madhow, Shivkumar Chandrasekaran, B. S. Manjunath
Presented by:
Anindya SarkarVision Research Lab,
Department of Electrical & Computer Engg,University of California, Santa Barbara
Januray 31, 2007
April 18, 2023
Organization of the Talk
• Problem at hand – high volume video data hiding
• Relevant still-image based past work - Selectively Embedding in Coefficients (SEC) based scheme for data hiding in images, with repeat-accumulate (RA) coding based error redundancy added to tackle channel errors and erasures
• Extending scheme to videos – incorporating adaptiveness in the scheme
• Experiments and Results
• Future work and related issues
April 18, 2023
Video Data Hiding1) A video can be treated as a sequence of frames – thus, by hiding per
frame, we can embed and transmit a large amount of data – motivated by our work on high volume data hiding for still images
2) But what are the trade-offs? Image suffers spatial compression; e.g. a MPEG-2 video is
compressed both spatially (in transform domain) and temporally using motion compensation – thus, coefficient perturbations are more difficult to predict for videos
3) For still-image based hiding in videos, robustness is more difficult to ensure for videos – the challenge is to design a hiding scheme to embed as much data as possible and being able to retrieve it
April 18, 2023
DataEmbedded
UsingSEC
Scheme (redundancy
addedusing RA –q
code)
MPEG-2Encoder
Channel consistsof one/more
stages of MPEG-2 decodingand encoding (attack)
MPEG-2Decoder
ExtractionOf
EmbeddedData usingRA decoder
Video V1
decoded
Using MPEG -2decoder
Sequence offrames: X1X2…XN
Modified frames:X’1X’2…X’N
containingembedded dataMessage m
Video V2
Video V3
DecodedFrame sequenceX’’1X’’2…X’’N
Message m’
April 18, 2023
Data Hiding Scheme for Images
Image
2D DCT
Divide by JPEG
quantization matrix
Choose coefficients
to hide
Hide using choice of scalar quantizer
•Quantize to odd values to hide ‘1’
•Quantize to even values to hide ‘0’
Scaling and Inverse DCT
DCT “Coefficients”
Image Adaptive Criterion
Divide image into 8x8 non overlapping
blocks
Basic Data Hiding Scheme proposed in VRL : courtesy, Kaushal M. Solanki
April 18, 2023
Error Resilience -Turbo Codes• Channel noise may cause
– Insertion (wrongly finding hidden data)– Deletion (wrongly missing hidden data)
• These may lead to de-synchronization & decoding failure (we can survive some decoding errors but de-synchronization can be the KILLER – so we use erasures to allow for synchronization)
• Solution – use all selected coefficients in a frame to construct a long codeword, with proper redundancy thrown in– Use Repeat accumulate (RA) codes for their near
capacity performance for erasure channels
April 18, 2023
Video Data Hiding: Key Points
1) Hiding done per frame in uncompressed domain by scalar quantization index modulation on a selected set of mid-band DCT terms
2) Embedding rate is varied according to the type of frame and the MPEG-2 determined quantization parameter, that determines the bit-rate allocation per frame
3) Estimating the capacity of MPEG-2 compression channel – using the estimate to determine the code redundancy factor needed to reliably decode embedded data
April 18, 2023
Adaptive Hiding• Hide different amounts in I,P and B frames: why? Varying
distortions per frames – so varying levels of robustness
• I-frames- intra-coded macroblocks -> less distortion -> hide more
• B-frames- inter-coded macroblocks -> bidirectional prediction -> more distortion -> hide less
• Greater spatial activity -> smaller quantization parameter -> more variance per macroblock -> higher avg. value of DCT terms -> more midband DCT terms whose magnitude exceeds T -> more terms available for hiding by SEC scheme -> hide more
April 18, 2023
Parameters to vary in hiding scheme:
• Number (n) of AC DCT coefficients, chosen by zigzag scan, to embed data per 8x8 block, per frame
• The RA code redundancy factor (q)
• The quantization interval used in QIM scheme (Δ)
• Design quality factor (QF) used for quantization of DCT coefficients
Thus, effective data bits/8x8 block = n/q
April 18, 2023
X(databits)
Y(obtained
afterapplying
RA-q codingon X)
Y is used tomodify
quantizedDCT
coefficientsto embed
Z
Z(data
embeddedin modified
DCTcoefficients)
MPEG-2Channel(attack)
Z’(data
extractedfrom
DCT coefficientsobtained
from decodedframes)
Set initialLLR values
using Z’in RA-q
decoder;decode to get
X’
X isbinarydatasequenceof lengthN
Y isbinarycodedsequenceobtainedfrom X;of lengthN*q
The embeddeddata Zconsistsof 0,1 and e;of lengthN*q
The extracteddata Z’consistsof 0,1 and e;of lengthN*q
Decoded output binary sequence X’ of length N
2 by 3 matrixmapping 0,1 in Yto 0,1,e in Z
3 by 3 matrixmapping 0,1,e in Zto 0,1,e in Z’
MAPPING FROM Y TO Z’ GIVES CHANNEL CAPACITY
April 18, 2023
CHANNEL CAPACITY COMPUTATION
For capacity computation, we need to maximizethe mutual information between the input (Y ) and output
(Z0) terms in the probabilistic part of the channel.
I (Y;Z0) = maxp(y)
X
y2f 0;1g; z02f 0;1;eg
p(y;z0) log½
p(yjz0)p(y)
¾
Once we compute the capacity value (C) for a frame,the optimum e®ective redundancy factor (qef f ) should be d1
Ce.
A fter ¯xing n,¢ and QF (hiding parameters)and the parameters used in M P EG-2 compression,
we can compute C which in turn helps in estimating q.
April 18, 2023
Adaptive Hiding Setup• Here, by channel – we mean a hiding setup where a certain set of hiding
parameters are used
• We divide frames into 3 channels – Each I/P/B channel is sub-divided further into 3-5 channels
• The MPEG-2 avg. quantization parameter is called “mquant” (it takes values in range [1-31]) :
higher “mquant” -> coarser quantization (less bits allocated for compression of that frame )
• For frames with higher mquant (less spatial activity), we use lower n/q (hide less data) and lower QF (coarser quantization for increased robustness) and vice versa
April 18, 2023
Experiment setup details
• We perform experiment on 1.5Mbps videos having a GOP length of 12 frames (I-P frame distance=3 frames)
• Noise introduced by MPEG-2 attack – – 4 & 1.5 Mbps in one case– 8 & 1.5 Mbps in the other– GOP size was varied (6, 12, 15, 18, 24)
• We vary number of channels (1, 3, 9, 15)– 1 - non-adaptive– 3 - I/P/B– 9/15 - each I/P/B channel is subdivided into 3/5 channels
demos
April 18, 2023
In theadaptive rate control schemeof MPEG-2,themquant parameter is clipped to the range [1..31].
Let (3i ¡ 2)th; (3i ¡ 1)th and (3i)th channels,for 1 · i · 5, correspond to I, P and B frames, respectively.
n1 = 6; q1 = 15; QF1 = 50;n2 = 4; q2 = 15; QF2 = 40;n3 = 2; q3 = 15; QF3 = 30;
9=
;11 · mquant · 15
ni = ni ¡ 3¡ 1; qi = qi ¡ 3+4; QF i = QF i ¡ 3¡ 5; 4 · i · 6; 16 · mquant · 22ni = ni ¡ 6+1; qi = qi ¡ 6¡ 2; QF i = QF i ¡ 6+5; 7 · i · 9; 6 · mquant · 10ni = ni ¡ 9 ¡ 1; qi = qi ¡ 9 +7; QF i = QF i ¡ 9 ¡ 5; 10 · i · 12; mquant > 22ni = ni ¡ 12+2; qi = qi ¡ 12 ¡ 2; QF i = QF i ¡ 12+5; 13· i · 15; mquant · 5
Parameter allocation for 15 channel case, which was empirically decided upon through
experimentation
April 18, 2023
Variable Parameters – Decoding Issues
• For a multi-channel approach, receiver has to be told beforehand about the 9/15 different parameter sets that can be used
• If hiding parameters match at the encoder and decoder sides (& compression noise is small enough), RA decoding converges
• So, we vary the parameters (over all 9/15 sets) and choose that set for which RA decoding does converge
April 18, 2023
GOPsize
No. of Channel
s
Bits/frame
4 Mbps & 1.5 Mbps 8 Mbps & 1.5 Mbps
FER(frame
Error rate)
Flicker PSNR(dB)
FER(frame
Error rate)
Flicker PSNR(dB)
6
1 240.0 .140 21.54 36.40 .134 21.08 36.62
3 227.2 .091 22.89 36.38 .085 22.49 36.60
9 277.2 .103 22.56 36.34 .074 22.16 36.56
15 294.2 .082 22.41 36.26 .074 21.99 36.49
15
1 240.0 .068 20.73 37.05 .054 20.31 37.30
3 227.2 .037 22.21 37.03 .025 21.78 37.28
9 277.2 .014 21.81 36.99 .017 21.35 37.25
15 294.2 .011 21.68 36.92 .011 21.20 37.18
24
1 240.0 .065 20.51 37.16 .051 20.07 37.40
3 227.2 .017 22.02 37.13 .022 21.59 37.38
9 277.2 .017 21.70 37.09 .008 21.20 37.34
15 294.2 .008 21.48 37.02 .005 21.00 37.28
April 18, 2023
Summary of the Video Work
• Using higher number of channels, we can embed about 20% more data while frame error rate is also reduced (by a factor of 2-8 depending on the GOP size)
• We embed about 300 bits/frame: 25 frames/sec -> 7500 bps of embedded data
• PSNR difference between single & 15-channel schemes ~ 0.2 dB
• Perceptual quality improves as GOP size increases
April 18, 2023
Scope for Future Work
• We aim to design a scheme to reduce the temporal flicker, almost always present in frame-by-frame hiding schemes for videos
• Problem – Encoding of a B or P frame depends on other frames – temporal relationship (motion vectors) is not maintained as we modify the reference frames by hiding.
• In hiding scheme, we should include the temporal information and knowledge about the distortion of the reference frames, used for frame prediction