Skip to main content
Log in

Reversible video watermarking through recursive histogram modification

  • Published:
Multimedia Tools and Applications Aims and scope Submit manuscript

Abstract

In this study, a new reversible video watermarking method is developed. Unlike the existing reversible video watermarking algorithms that are based on motion compensated prediction or interpolation error expansion, motion compensated interpolation errors in the proposed method are watermarked in a totally different manner with the aid of recursive histogram modification algorithm developed recently for the purpose of reversible image watermarking. However,the recursive histogram modification can not be used directly for reversible video watermarking since the important problems of ensuring reversibility for each frame and distribution of total capacity among frames are encountered. In this study, novel ideas are proposed to solve the aforementioned two problems. The proposed method is tested on the video sequences commonly used in the literature. It is shown to give better performance than the existing reversible video watermarking algorithms in terms of capacity and distortion by means of computer simulations. Also, a numerical example is provided.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9

Similar content being viewed by others

References

  1. Barton J (1997) Method and apparatus for embedding authentication information within digital data. http://www.google.com/patents/US5646997. US Patent 5,646,997

  2. Celik M, Sharma G, Tekalp A, Saber E (2005) Lossless generalized-lsb data embedding. IEEE Trans Image Process 14(2):253–266. doi:10.1109/TIP.2004.840686

    Article  Google Scholar 

  3. Chung KL, Yang WJ, Liao HYM (2009) Efficient multilevel reversible data hiding for video sequences using temporal and spatial approach. In: Proceedings of 2009 APSIPA Annual Summit and Conference pp. 573–582

  4. Feng JB, Lin IC, Tsai CS, Chu YP (2006) Reversible watermarking: current status and key issues. Int J Network Security 2

  5. Fridrich J, Goljan M, Du R (2002) Lossless data embedding: new paradigm in digital watermarking. EURASIP J Appl Signal Process 2002(1):185–196

    Article  MATH  Google Scholar 

  6. Hu X, Zhang W, Hu X, Yu N, Zhao X, Li F (2013) Fast estimation of optimal marked-signal distribution for reversible data hiding. IEEE Trans Inf Forensics Secur 8(5):779–788. doi:10.1109/TIFS.2013.2256131

    Article  Google Scholar 

  7. Langelaar GC, Setyawan I, Lagendijk RL (2000) Watermarking digital image and video data. a state-of-the-art overview . IEEE Signal Processing Magazine 17(5):20–46. doi:10.1109/79.879337

    Article  Google Scholar 

  8. Lin SJ, Chung WH (2012) The scalar scheme for reversible information-embedding in gray-scale signals: Capacity evaluation and code constructions. IEEE Trans Inf Forensics Secur 7(4):1155–1167. doi:10.1109/TIFS.2012.2197614

    Article  Google Scholar 

  9. Moulin P, Koetter R (2005) Data-hiding codes. Proc IEEE 93(12):2083–2126. doi:10.1109/JPROC.2005.859599

    Article  Google Scholar 

  10. Ni Z, Shi YQ, Ansari N, Su W (2006) Reversible data hiding. IEEE Trans Circuits Syst Video Technol 16(3):354–362. doi:10.1109/TCSVT.2006.869964

    Article  Google Scholar 

  11. Podilchuk CI, Delp EJ (2001) Digital watermarking: algorithms and applications. IEEE Signal Process Mag 18(4):33–46. doi:10.1109/79.939835

    Article  Google Scholar 

  12. Qin C, Zhang X (2015) Effective reversible data hiding in encrypted image with privacy protection for image content. J Vis Comun Image Represent 31(C):154–164. doi:10.1016/j.jvcir.2015.06.009

    Article  Google Scholar 

  13. Qin C, Chang CC, Huang YH, Liao LT (2013) An inpainting-assisted reversible steganographic scheme using a histogram shifting mechanism. IEEE Trans Circuits Syst Video Technol 23(7):1109–1118. doi:10.1109/TCSVT.2012.2224052

    Article  Google Scholar 

  14. Qin C, Chang CC, Hsu TJ (2015) Reversible data hiding scheme based on exploiting modification direction with two steganographic images. Multimedia Tools Appl 74(15):5861–5872. doi:10.1007/s11042-014-1894-5

    Article  Google Scholar 

  15. Tian J (2003) Reversible data embedding using a difference expansion. IEEE Trans Circuits Syst Video Technol 13(8):890–896. doi:10.1109/TCSVT.2003.815962

    Article  Google Scholar 

  16. Thodi DM, Rodriguez JJ (2007) Expansion embedding techniques for reversible watermarking. IEEE Trans Image Process 16(3):721–730. doi:10.1109/TIP.2006.891046

    Article  MathSciNet  Google Scholar 

  17. Vural C, Barakli B (2015) Reversible video watermarking using motion-compensated frame interpolation error expansion. SIViP 9(7):1613–1623

    Article  Google Scholar 

  18. Willems F, Maas D, Kalker T (2004) Semantic lossless source coding. In: 42nd Annual Allerton Conference, Communication, control and computing, pp. 1–8. Monticello, IL, USA

  19. Wolfgang RB, Podilchuk CI, Delp EJ, Perceptual watermarks for digital images and video (1999). Proc IEEE 87(7):1108–1126. doi:10.1109/5.771067

    Article  Google Scholar 

  20. Wu M, Liu B (2003) Data hiding in image and video: I. fundamental issues and solutions. IEEE Trans Image Process 12(6):685–695. doi:10.1109/TIP.2003.810588

    Article  Google Scholar 

  21. Zeng X, Chen Z, Chen M, Xiong Z (2011) Reversible video watermarking using motion estimation and prediction error expansion. J Inf Sci Eng 27(2):465–479

    Google Scholar 

  22. Zhai J, Yu K, Li J, Li S (2005) A low complexity motion compensated frame interpolation method. In: Circuits and Systems, 2005. ISCAS 2005. IEEE International Symposium on, pp. 4927–4930 Vol. 5. doi:10.1109/ISCAS.2005.1465738

  23. Zhang X (2011) Reversible data hiding in encrypted image. IEEE Signal Process Lett 18(4):255–258. doi:10.1109/LSP.2011.2114651

    Article  Google Scholar 

  24. Zhang X (2013) Reversible data hiding with optimal value transfer. IEEE Trans Multimedia 15(2):316–325. doi:10.1109/TMM.2012.2229262

    Article  Google Scholar 

  25. Zhang W, Hu X, Li X, Yu N (2013) Recursive histogram modification: Establishing equivalency between reversible data hiding and lossless data compression. IEEE Trans Image Process 22(7):2775–2785. doi:10.1109/TIP.2013.2257814

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Cabir Vural.

Appendix A: Numerical example

Appendix A: Numerical example

1.1 A.1 Watermark insertion

In the following, watermarking of a single block is explained in an example in which the block is assumed to contain 16 elements that take on values from the set {1, 2, 3, 4}. \({e_{i}^{k}}\) and Q Y|X and Q X|Y are assumed to be given by

$$ {e_{i}^{k}} =\left[\begin{array}{llllllllllllllll} 1 & 2 & 4 & 3 & 4 & 2 & 4 & 3 & 3 & 4 & 4 & 1 & 4 & 3 & 4 & 4 \end{array}\right] $$
(19)
$$ Q_{Y\vert{}X} = \left[\begin{array}{llll} 1/2 & 0 & 0 & 0\\ 1/2 & 1 & 1/4 & 0\\ 0 & 0 & 3/4 & 1/8\\ 0 & 0 & 0 & 7/8 \end{array}\right] $$
(20)
$$ Q_{X\vert{}Y} = \left[\begin{array}{llll} 1 & 1/4 & 0 & 0 \\ 0 & 2/4 & 0 & 0 \\ 0 & 1/4 & 3/4 & 0 \\ 0 & 0 & 1/4 & 1 \end{array}\right] $$
(21)

Furthermore, let the watermark bit sequence be given as

$$ M_{i} = [ 1 \ 1 \ 0 \ 0 \ 1 \ 0 \ 1 \ 1 \ 0 \ 1 \ 0 \ 1 \ 1 \ 1 \ 0 \ 0 \ 1 \ 0 \ 1 \ 0 \ 0 \ 1 \ 0 \ 1 \ 1 \ {\dots} ] $$
(22)

Since \({e_{i}^{k}}\) contains two 1 (that is, h 1 = 2), M i is subjected to arithmetic decompression algorithm until a DNS of length 2 is obtained. The first column of Q Y|X is used as a parameter in the decompression process. This step produces the DNS \(y_{i,1}^{k} = [2 \quad 1]\) from the first three bits (1 1 0) in M i . Then, 1’s in \({e_{i}^{k}}\) are replaced by the DNS \(y_{i,1}^{k}\). This process is repeated for 3 and 4 in \({e_{i}^{k}}\). The following 6 bits (0 1 0 1 1 0) in M i is applied to decompression by using the third column of Q Y|X to get the DNS \(y_{i,3}^{k} = [3 \ 3 \ 3 \ 2]\). Similarly, applying the next 13 bits in M i to the decompression process by using the fourth column of Q Y|X results in the DNS \(y_{i,4}^{k} = [4 \ 4 \ 4 \ 3 \ 4 \ 4 \ 4 \ 4]\). 3’s and 4’s in \({e_{i}^{k}}\) are replaced by the DNS \(y_{i,3}^{k}\) and \(y_{i,4}^{k}\), respectively. Since the entropy of the distribution in the second column of Q Y|X is zero, 2’s in \({e_{i}^{k}}\) are kept as they are. Hence, the watermarked block is given as

$$ {y_{i}^{k}} = \left[ \begin{array}{cccccccccccccccc} 2 & 2 & 4 & 3 & 4 & 2 & 4 & 3 & 3 & 3 & 4 & 1 & 4 &2 & 4 & 4 \end{array}\right] $$
(23)

The above process is illustrated pictorially in Fig. 10 for the 4 in \({e_{i}^{k}}\). Next, the SI required for watermark decoding and the original block restoration has to be generated. For this purpose, locations of 1,2,3 and 4 in \({y_{i}^{k}}\) are stored in the respective sequences given by I Y 1 = [1 2], I Y 2 = [1 2 6 14], I Y 3 = [4 8 9 10] and I Y 4 = [3 5 7 11 13 15 16]. Since the entropies computed from the first and last columns of Q X|Y are zero, locations 1 and 4 do not need to be provided the watermark decoder (1’s and 4’s in the original and watermarked blocks are the same). Subjecting the sequences \({e_{i}^{k}}({IY}_{2}) = [1 \ 2 \ 2 \ 3]\) and \({e_{i}^{k}}({IY}_{3} ) = [3 \ 3 \ 3 \ 4]\) to arithmetic compression by using the corresponding columns in Q X|Y results in the bit sequences given by \(O\left ({e_{i}^{k}},2\right ) = [1 \ 1 \ 0 \ 1 \ 0 \ 0 \ 1]\) and \(O\left ({e_{i}^{k}},3\right ) = [0 \ 0 \ 1 \ 0 \ 1]\). Concatenating \(O\left ({e_{i}^{k}},2\right )\) and \(O\left ({e_{i}^{k}},3\right )\) leads to the \(O\left ({e_{i}^{k}}\right )\) given by

$$ O\left( {e_{i}^{k}}\right) = O\left( {e_{i}^{k}},2\right) \parallel{} O\left( {e_{i}^{k}},3\right) = \left[ \begin{array}{cccccccccccccccc} 1 & 1 & 0 & 1 & 0 & 0 & 1 & 0 & 0 & 1 & 0 & 1 \end{array}\right] $$
(24)

\(O\left ({e_{i}^{k}}\right )\) is appended to the beginning of the remaining bits in M i to get the watermark bit sequence for the next block given by

$$ M_{i+1} = \left[ \begin{array}{cccccccccccccccc} 1 & 1 & 0 & 1 & 0 & 0 & 1 & 0 & 0 & 1 & 0 & 1 & 0 & 1 & 1 & \dots \end{array}\right] $$
(25)

SI construction for 2 in \({e_{i}^{k}}\) is shown in Fig. 11.

Fig. 10
figure 10

Watermarking of 4 in \({e_{i}^{k}}\)

Fig. 11
figure 11

SI construction for 2 in \({e_{i}^{k}}\)

1.2 A.2 Watermark decoding and block restoration

First, the original block \({e_{i}^{k}}\) is restored from \({y_{i}^{k}}\) with the aid of Q X|Y . From the first and last columns of Q X|Y , we conclude that 1 and 4 in the watermarked block are equal to the corresponding elements in the original block. Since 2 is repeated four times in \({y_{i}^{k}}\) (that is, l 2 = 4), the watermark bit sequence for the (i+1)-th block is decompressed until a DNS of length 4 is obtained by using the second column of Q X|Y . This step results in the DNS [1 2 2 3] determined from the first 7 bits [1 1 0 1 0 0 1] in M i+1. 2’s in \({y_{i}^{k}}\) are replaced by the [1 2 2 3]. The same step is repeated for 3 in \({y_{i}^{k}}\) to restore the original block \({e_{i}^{k}}\). Restoring the original value for 2 in \({y_{i}^{k}}\) is shown in Fig. 12.

Fig. 12
figure 12

Original value restoration for 2 in \({y_{i}^{k}}\)

Once the original block is restored, the watermark is decoded from \({e_{i}^{k}}\), \({y_{i}^{k}}\) and Q Y|X . First locations of 1, 2, 3 and 4 in \({e_{i}^{k}}\) are stored in the respective sequences I X 1 = [1 12], I X 2 = [2 6], I X 3 = [4 8 9 14] and I X 4 = [3 5 7 10 11 13 15 16]. From the second column of Q Y|X , we conclude that 2 in the original block is not watermarked. For the remaining elements, subjecting the sequences \({y_{i}^{k}}({IX}_{1}) = [2 \ 1]\), \({y_{i}^{k}}({IX}_{3} ) = [3 \ 3 \ 3 \ 2]\) and \({y_{i}^{k}}({IX}_{4} ) = [4 \ 4 \ 4 \ 3 \ 4 \ 4 \ 4 \ 4]\) to arithmetic compression under the corresponding columns in Q X|Y results in the bit sequences given by [1 1 0], [0 1 0 1 1 0] and [1 0 1 1 1 0 0 1 0 1 0 0 1] that are concatenated to obtain the watermark for the i-th block given by

$$ M_{i}=[1 \ 1 \ 0 \ 0 \ 1 \ 0 \ 1 \ 1 \ 0 \ 1 \ 0 \ 1 \ 1 \ 1 \ 0 \ 0 \ 1 \ 0 \ 1 \ 0 \ 0 \ 1 \ 0 \ 1 \ 1 \ ...] $$
(26)

Watermark decoding for 4 in \({e_{i}^{k}}\) is shown in Fig. 13.

Fig. 13
figure 13

Watermark decoding for 4 in \({e_{i}^{k}}\)

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Vural, C., Yıldırım, İ. Reversible video watermarking through recursive histogram modification. Multimed Tools Appl 76, 15513–15534 (2017). https://doi.org/10.1007/s11042-016-3854-8

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11042-016-3854-8

Keywords

Navigation