afosr program review data hiding in compresed digital video bijan mobasseri, pi dom cinalli, aaron...
TRANSCRIPT
AFOSR PROGRAM REVIEW
DATA HIDING IN COMPRESED DIGITAL VIDEO
Bijan Mobasseri, PIDom Cinalli, Aaron Evans, Dan Cross, Sathya Akunuru
ECE DepartmentVillanova UniversityVillanova, PA 19085
June 6-8, 2002Burlington, VT
2002 AFOSR Program Review 2
Outline
• Data hiding/watermarking requirements• Data hiding in compressed video • Using variable length codes for data hiding• Lossless watermarking using resilient-coding• Video authentication through self-
watermarking• Metadata embedding• Open Issues
2002 AFOSR Program Review 3
Background
• This effort is funded by AFOSR to develop algorithms for the creation of smart digital videos
• The project is monitored by AFRL/IFEC• Applications include
• Watermarking for tamper detection, recovery
• Data hiding for covert communications
• Metadata embedding
• Security and access control
2002 AFOSR Program Review 4
Data hiding requirements
• Data hiding must at least meet the following three conditions:
• Transparency
• Robustness or fragility
• Security• Places to hide data are:
• Spatial- pixel amplitudes, LSB, QIM
• Transform domain- spread spectrum, Fourier/wavelet, LPM
• Joint- time/frequency distribution
2002 AFOSR Program Review 5
State of video watermarking
• Video watermarking is strongly influenced by still image watermarking algorithms where video is modeled as a sequence of stills
• Examples include LSB watermarking of raw frames, spread spectrum and 3D-DFT
• Increasingly, however, the native state of video is in compressed format and does not yield itself to simple still frame modeling
2002 AFOSR Program Review 6
The medium
• Understanding the medium is a prerequisite to watermarking it
• Uncompressed NTSC video runs at 168 Mb/sec. MPEG-2 runs at <10 Mb/sec.; a 96% reduction
• Redundancy is at the heart of data hiding. Compressed video leaves precious little space to hide data while maintaining robustness, security and imperceptibility
2002 AFOSR Program Review 7
Distinction with a difference
• We recognize a difference between
• watermarking of compressed video vs.
• compressed video watermarking • The former refers to watermarking of video
which may later be compressed• The later refers to watermarking that is done
entirely post-compression.
2002 AFOSR Program Review 10
Label-carrying VLCs
• Variable length codes are the lynchpin of MPEG
• There is a subset of MPEG VLC codes that represent identical runs but differ in level by just one
From: Langelaar et al, IEEE SP Magazine
September 2000
2002 AFOSR Program Review 11
Data hiding in lc-VLC
• The algorithm proposed by Langelaar embeds watermark bits in the LSB of the level of the lc-VLCs
2002 AFOSR Program Review 12
Data hiding capacities:data
Total lc-VLCs Total VLCs24008 204493
655548 4321760
61298 461027
3614 61985
345315 3290373
24412 204362
run 0 0 0 0 0 0 0level 5 6 8 9 10 11 12406974ai1.mpeg 3734 2630 1835 1423 1122 827 1036% occurrence 15.6 11.0 7.6 5.9 4.7 3.4 4.3status.mpeg 136422 90706 60594 46844 36066 32513 25822% occurrence 20.8 13.8 9.2 7.1 5.5 5.0 3.9avalon.mpeg 13080 9506 5420 4353 3405 2865 2341% occurrence 21.3 15.5 8.8 7.1 5.6 4.7 3.8gtscrush.mpeg 1056 700 281 246 193 131 143% occurrence 29.2 19.4 7.8 6.8 5.3 3.6 4.0final-days.mpg 78900 54245 30487 24116 18751 15464 12791% occurrence 22.8 15.7 8.8 7.0 5.4 4.5 3.7simp.mpg 5997 4007 2438 1441 1627 1225 807% occurrence 24.6 16.4 10.0 5.9 6.7 5.0 3.3
average % occurrence 22.4 15.3 8.7 6.6 5.5 4.4 3.8
Lossless video watermarking using error-resilient VLCs**B. Mobasseri, “Watermarking of Compressed Multimedia using Error-Resilient VLCs,” MMSP02- in review
2002 AFOSR Program Review 14
The idea:watermark as intentional bit errors
• There has been notable cross currents of late between watermarking and channel coding
• A close look reveals that watermarking of VLCs is essentially equivalent to channel errors.
• Bit errors and watermark bits have identical impact. They both cause bit errors in affected VLCs.
• The difference is that channel errors occur randomly whereas watermark bits can be planted at will and at locations that facilitate detection.
2002 AFOSR Program Review 15
The solution-lossless watermarking
• Embed watermark bits in the VLCs as controlled bit errors
• MPEG-2 VLCs, however, have no inherent error protection. Any bit error will cause detection failure up to the next resynchronization marker
• Bidirectionally decodable codewords are capable of isolating and reversing channel errors
• An interesting side effect of the above hypothesis is that if error-resilient VLCs are successful in reversing bit errors, the outcome would be mathematically lossless watermarking
2002 AFOSR Program Review 16
Two-way decodable VLCs
• MPEG-4 uses RVLCs but Girod(1999) has proposed an elegant design whereby conventional VLCs are made to exhibit resynchronizing property
• To construct resynchronizing VLCs from ordinary VLCs, we first define a packet consisting of N consecutive VLCs
€
P = vlc1, vlc2 ,...,vlcN{ }
where
vlci = bi1,bi
2 ,...,bil i( )
{ },b∈ 0,1{ }
€
C = vlc1, vlc2 ,...,vlcN | 00,...,0[ ]⊕
00,...,0 | vlc1' ,vlc2
' ,...,vlcN'
[ ]
L ≥ max l k( ){ }k
vlc’=fliplr(vlc)
2002 AFOSR Program Review 17
Code structure
• Each VLC is represented twice in the new bitstream. It is this property that allows error resiliency
• Burst error shall not be so long to simultaneously affect the same bit of identical VLC
2002 AFOSR Program Review 18
Watermarking using bidirectional codes
€
vlc _ a = a1, a2{ },vlc _ b = b1,b2,b3{ },
vlc _ c = c1,c2{ },vlc _ d = d1,d2 ,d3, d4{ }VLCs: Message:{a,b,d,c}
€
C =
a1 ,a2,b1,b2,b3 ,d1 ,d2⊕ a2 ,d3⊕ a1,
d4 ⊕ b3 ,c1 ⊕ b2 ,c2 ⊕b1 ,d4 , d3 ,d2 ,d1,
c2 ,c1
⎧
⎨ ⎪
⎩ ⎪
⎫
⎬ ⎪
⎭ ⎪
L = zeros(1, 6)
€
Cw =
a1, a2 ,b1 ,b2 ,b3, d1⊕w1,d2 ⊕ a2 ⊕w2,
d3⊕ a1⊕w3, d4 ⊕ b3,c1⊕ b2,c 2⊕ b1,
d4 , d3 ,d2 ,d1 ,c2,c1
⎧
⎨ ⎪
⎩ ⎪
⎫
⎬ ⎪
⎭ ⎪
Bidirectional VLC
Watermarked w={w1,w2,w3,w4) bidirectional VLC
2002 AFOSR Program Review 19
Watermark detection
• On forward decoding, vlc_a and vlc_b will be correctly decoded. Failure will occur at vlc_d
• On forward direction, correctly decoded symbols are {a,b}. On reverse decoding, correctly decoded symbols are {c,d}.
• The last symbol correctly decoded on the reverse path is the same symbol that failed detection on forward decoding. The
correct symbols are then {a,b,d,c}
€
Cw =
a1, a2 ,b1 ,b2 ,b3, d1⊕w1,d2 ⊕ a2 ⊕w2,
d3⊕ a1⊕w3, d4 ⊕ b3,c1⊕ b2,c 2⊕ b1,
d4 , d3 ,d2 ,d1 ,c2,c1
⎧
⎨ ⎪
⎩ ⎪
⎫
⎬ ⎪
⎭ ⎪
2002 AFOSR Program Review 20
Distance properties
• Each VLC in the C stream appears twice. Therefore, the ith bit of a VLC is separated from its copy by bits given by
• If the watermark burst begins with the last bit(LSB) of the VLC, the burst cannot last longer than min bits.
€
=L + l − (2i − 1)
€
min = L − l + 1, for i = 1
δ max = L + l − 1, for i = l
2002 AFOSR Program Review 21
Watermarking capacity
• Watermarking capacity of a VLC falls under two categories
• L=l, in this case
C=L bits/packet
• L>l, watermark burst may cross over to the L-l bits of the next VLC. It follows that
€
capacity = 2L − l
2002 AFOSR Program Review 22
Implementation
Video VLC Statistics# of
frames# of
slicesAvg# of slices/fr
Avg# of VLC/slice
Capacity(bits)
Video#1
871 7839 9 178 133,263
Video#2
8466 8466 1 550 143,922
Video#3
396 396 1 3051 6,732
SELF-WATERMARKING*
*D. Cross, B. Mobasseri, “Watermarking for self-authentication of compressed video,” IEEE ICIP2002, September 22-25, 2002,
Rochester, NY.
2002 AFOSR Program Review 24
Self-watermarking:the concept
• In self-watermarking, the watermark is extracted from the source itself
• Self-watermarking prevents watermark pirating and may allow recovery of tampered material such as cut and paste or re-indexing attacks
• Most work on self-watermarking has been done on images. If it has been done video, the approach is to model video as a sequence of stills
2002 AFOSR Program Review 25
Self-watermarking of compressed video
1 0
VLC(0,5)
VLC(0,16)
VLC(1,15)
VLC(0,6)
VLC(1,10)
VLC(1,11)
VLC(0,12)
2002 AFOSR Program Review 26
Watermark extraction
• Watermark is extracted from the I frame by zigzag scanning of I frame VLCs and storing in array w
• The number of bits in w must be less than or equal to the number of lc-VLCs in gop. In addition, w must contain integer number of VLCs
€
g = vlc1, vlc2 ,...,vlcm{ }
vlci = b1,b2 ,...,bni{ },bni
∈ 0,1{ }
length(vlci) = ni
w = vlc1' ,vlc 2
' ,...,vlc p'
{ }
vlci' = b1
' ,b2' ,...,bqi
'{ }
2002 AFOSR Program Review 27
Watermark embedding
• To be able to fully embed the I frame into the GOP the following must hold
• Once the mask is generated, the embedding method is as follows
€
qii=1
p
∑ ≤ m
€
wk = perm(I ,key)
LSB(vlci) =LSB (vlci),if LSB (vlci) = wk i( )
wk i( ),otherwise
⎧ ⎨ ⎪
⎩ ⎪
2002 AFOSR Program Review 28
DataStream File Size Frame Size
(MB)
Frame Types
MPEG1 892kB 24x16 13I,78B,65P
MPEG2 2257kB 45x36 3I,8P,20B
Frame Size GOP 1 LCVLC #
GOP 2 LCVLC #
GOP 3 LCVLC #
372x246 2997 3008 3061
720x576 32680 11279 14463
2002 AFOSR Program Review 29
Stream Average Capacity (bits/frame)
MPEG1 I = 2958, P = 13, B = 0
MPEG2 I = 18125, P = 501, B = 2
Watermarking capacity
• I frames hold almost all of the watermark data. These results are expected since only the intra-coded macroblocks will hold watermark data.
2002 AFOSR Program Review 31
Background
• Video images & metadata recorded and handled as two separate streams
• Storage overhead
• Bookkeeping issues
• Accuracy and human error
• Cumbersome to display
• It would be nice to permanently attach metadata to video and make it available during playback
MetadataVideo
2002 AFOSR Program Review 32
Metadata WatermarkingVideoBufferVideoBuffer
WMetadataBuffer
MetadataBuffer
MPEGEncoder
Watermarked Video
Store
Display
Watermarking system combines bothvideo and metadata feeds to form a
single, less cumbersome stream thatcan be both displayed and stored.
2002 AFOSR Program Review 33
Implementations• Real-Time Processing
• Metadata is embedded into MPEG video during the recording process and is available for immediate transmission from UAV.
• Batch Processing
• Video & metadata recorded in their entirety before embedding process of metadata into video begins. Data cannot be displayed until watermark process has completed.
2002 AFOSR Program Review 35
Display Utility
• JAVA based application that simplifies display of video & metadata
• Abstracts user from separation of video & metadata
2002 AFOSR Program Review 36
Open Issues
• Open problems in RVLC watermarking are
• Capacity
• Security
• Channel bit errors
• Non-burst errors
• Forced invalidity