Multimedia Processing Analysis of Information Hiding Techniques in HEVC. Multimedia Processing EE 5359 Spring 2015 Advisor: Dr. K. R. Rao Department of Electrical Engineering University of Texas, Arlington Rahul Ankushrao Kawadgave 1001124353 rahul.kawadgave@mavs.uta.edu Table of Contents • • • • • • • • • Acronym Goal Overview of HEVC Overview of Information Hiding Different forms and applications of Information Hiding Approach Manipulation on Non zéro DCT Coefficients Results References Acronym: • • • • • • • • • • • • • • • • • • • • CTU : Coding Tree Unit CU : Coding Unit DCT : Discrete Cosine Transform FSS : Four steps search GOP : Group of Pictures HD : High Definition HEVC : High Efficiency Video Coding HM : HEVC Test Model ITU : International Télécommunication Union ITU-T : ITU Télécommunication Standardisation Sector JCT-VC : Joint Collaborative Team on Video Coding LSB : Least Significant Bit MB : Macro Block ME : Matrix Encoding ME : Motion Estimation MPEG : Moving Picture Experts Group PU : Prediction Unit RDO : Rate Distortion Optimization TB : Transform Block TBD : To be done Goal: • Information hiding refers to the process of inserting information into a host to serve specific purpose(s)[2]. Information hiding has its several forms and different applications, and techniques to implement. HEVC[1] is new standard for video coding, where information hiding techniques are still under study. Some research has already shown techniques for information hiding that can be applied to HEVC[1], also several new techniques in future can be applied. In this proposed project, plan is to analyze information hiding technique based on nonzero DCT (discrete cosine transform) *28] coefficients are manipulated based on the transform block size in all slices using local setup created for HEVC[1] using HM[21] software and share the results. Overview of HEVC: • High Efficiency Video Coding (HEVC)[1] is currently the newest video coding standard of the ITU-T Video Coding Experts Group and the ISO/IEC Moving Picture Experts Group. The main goal of the HEVC[1] standardization effort is to enable significantly improved compression performance relative to existing standards—in the range of 50% bit-rate reduction for equal perceptual video quality. Figure1 provides an overview of the of the encoder of HEVC[1] standard. Figure1: Typical HEVC[1] video encoder. Overview of Information Hiding: • Information hiding refers to the process of inserting information into a host to serve specific purpose(s).[2] Currently, with the existence of broadband Internet service and ubiquitous network coverage through a cellular data plan, video can be conveniently downloaded and broadcast through social networking services such as YouTube, Facebook, and Twitter. Therefore, there are various needs to manage and/or protect the vast number of videos including: 1) tracking illegal distribution of copyrighted video to secure business revenue; 2) hyperlinking related contents while ensuring the hyperlink information always stays intact with the video to enhance user experiences; and 3) monitoring video broadcasts and Internet distributions to generate reports regarding when, where, and how many times a video has been aired/streamed. Information hiding is one of the possible solutions to serve the aforementioned needs. It refers to the process of inserting information into a host to achieve certain features or to serve specific purposes. The components of information hiding are summarized in Figure 2. In particular, we modify the watermarking framework in [3] to a general framework of information hiding to emphasize on the information insertion part. Here, the information is external to the content (e.g., ownership information and secret message) or deduced from the content (e.g., checksum and hash value). The information is inserted into the host by means of modifying part(s) of the host based on the representation scheme in use and a key so that the output (i.e., content + inserted information as a single unit) satisfies the imposed properties and requirements. These properties include high perceptual quality, reversibility, secrecy of the inserted information, etc.[2] Figure 2: General framework for information hiding.[2] Different forms and applications of Information Hiding: Approach • One of the approaches used for information hiding in HEVC is Manipulation on Nonzero DCT coefficient to embed the required information. Plan is to study this algorithm and implement it using HM[21] 16 software and to compare parameters like PSNR for frames in different test video sequences. [6] Manipulation on Nonzero DCT Coefficient. [6] • LSB manipulation of nonzero DCT coefficient (i.e., a special case of oddeven embedding) is the most frequently utilized technique for information hiding [7] [8]. This technique allows external information to be conveniently inserted into a digital content (i.e., image, video) without causing significant impact on perceptual quality. Here, the odd-even based technique is implemented on the nonzero DCT coefficients in each coding tree unit. However, the implementation is restricted to AC coefficients in the interval of [−8, 8] \ {0} and these coefficients are modified based on the size of the TB in which they reside. Empirically it is observed that modification on this range is adequate to maintain the perceptual quality while providing sufficient payload simultaneously. In particular, AC coefficients in the luminance channel is divided into four categories (i.e., ranges, R) based on the TB size in coding tree unit. Only AC coefficients in R \ {0} are considered for information hiding. Let Yc and Yc’ denote the original and modified DCT coefficient values, respectively, and let w be the information bit to be embedded. The embedding process is summarized as follows in Eq. (1) and (2). To extract the inserted information, the LSB of each coefficient in the range specified by Eq. (2) is considered. Manipulation on Nonzero DCT Coefficient. [6] • Equations show the embedding process using DCT coefficients. Manipulation on Nonzero DCT Coefficient. [6] • Yc: Original non zéro DCT coefficient. • Yc’: Modified DCT coefficient. • R: Set of nonzero coefficients under consideration. • w: Binary information to be embedded [0 or 1]. Intervals of nonzero DCT coefficients. • To maintain the perceptual quality while providing sufficient payload for information hiding, AC coefficients under consideration are divided into four categories. First, TBsize 4x4 and second TBsize 8x8, make uses of interval [−8, 8] \ {0} which indicates that AC coefficients ranged are from -8 to 8, not including 0. Third, in case of TBsize of 16x16, -6 to 6 coefficients are used, also not including 0. Similarly fourth case where TBsize is 32x32 and -6 to 6 coefficients are used and again not including zero. Table 1 shows the information on intervals and block sizes. Intervals of nonzero DCT coefficients Process for embedding information. Process for embedding information. Input used for information hiding. • Figure 5 shows binary image of size 256x256 is used as an input for information hiding. This image contains total number of pixels equal to 655346. To generate more information required to hide for testing, same image is used mulitple times to create. As shown in Table 3 same image is used muplitle times to create more information. Input used for information hiding. Input used for information hiding. Input used for information hiding. Results • Results collected are for video sequences with different resolutions 416x240 and 176x144 and different frames. Information embedded for different videos is different as size available for embedding information is different. Results are collected primarily to show how PSNR for different frames like “I or B” only and also for all frames varies depending on number of binary pixels are increased. As per results it can be seen there is decrease in PSNR values as number of pixels embedded is increased. • As shown in Table 5 where both I and B frames are considered while compression for RaceHorses_416x240_30 and in Table 6 it can seen that only I frames are considered for BUS_176x144_15_orig_01. Also Figures 7,8,9,10,11 show the variations in PSNR values for different scenarios, where PSNR-I frames is PSNR for I frames, PSNR-B frames is PSNR only for B frames and total PSNR is PSNR calculated for all frames in given test sequence. Results Results Results Results Results Results Results Conclusion: • An information hiding technique using LSB manipulation of nonzero DCT coefficients can be implemented for HEVC standard. This project shows how multiple binary images can be hidden using this technique. Information in the form of multiple binary images can be hidden in a video encoded using HEVC standard with very small variation in PSNR. References: [1] G. J. Sullivan et al, "Overview of the High Efficiency Video Coding (HEVC) Standard," IEEE Transactions On Circuits and Systems For Video Technology, Vol. 22, No. 12, pp. 1649 – 1668, Dec. 2012. [2] Y. Tew; and K Wong; “An Overview of Information Hiding in H.264/AVC Compressed Video”, IEEE Transactions On Circuits and Systems For Video Technology Vol. 24, pp. 305 – 319, No. 2, Feb. 2014. [3] I. Cox, M. Miller, J. Bloom, J. Fridrich, and T. Kalker, “Digital Watermarking and Steganography, 2nd ed. San Francisco, CA, USA: Morgan Kaufmann Publishers Inc., Ch. 3 2008. [4] F. L. Bauer, “Decrypted Secrets—Methods and Maxims of Cryptology.”, Berlin, Heidelberg, Germany: Springer-Verlag, 1997. *5+ F. Petitcolas, R. Anderson, and M. Kuhn, “Information hiding–a survey,” Proc. IEEE, vol. 87, no. 7, pp. 1062–1078, Jul. 1999. [6] Y. Tew and K. Wong “Information hiding in HEVC standard using adaptive coding block size decision” 2014 IEEE International Conference on Image Processing (ICIP), pp. 5502 – 5506, Oct. 2014 [7] R.-Z. Wang, C.-F. Lin, and J.-C. Lin, “Image hiding by optimal LSB substitution and genetic algorithm,” Pattern Recognition, vol. 34, no. 3, pp. 671–683, Mar.2001. [8] C.-K. Chan and L. Cheng, “Hiding data in images by simple LSB substitution,” Pattern Recognition, vol. 37,no. 3, pp. 469–474, Mar. 2004. [9] V. Sze and M. Budagavi, “Design and Implementation of Next Generation Video Coding Systems (H.265/HEVC Tutorial)”, IEEE International Symposium on Circuits and Systems (ISCAS), Melbourne, Australia, June 2014, available on http://www.rle.mit.edu/eems/publications/tutorials/ [10] HEVC tutorial http://www.vcodex.com/h265.html References [11] G.J. Sullivan; J. Ohm; Woo-Jin Han and T. Wiegand, “Overview of the High Efficiency Video Coding (HEVC) Standard”, IEEE Trans. on Circuits and Systems for Video Technology, Volume: 22, Issue: 12, pp. 1649-1668, Dec. 2012. [12] Ian Richardson “Video Codec Design : Developing Image and Video compression systems”,Wiley,2002. [13] G. J. Sullivan et al “Standardized Extensions of High Efficiency Video Coding (HEVC).”IEEE Journal of selected topics in Signal Processing” vol. 7, pp.1001-1016, Dec. 2013 [14] T.-J. Lin, K.-L. Chung, P.-C. Chang, Y.-H. Huang, H.-Y. M. Liao, and C.Y. Fang, “An improved DCT-based perturbation scheme for high capacity data hiding in H.264/AVC intra frames,” J. Syst. Software, vol. 86, pp.604–614, Mar. 2013. [15] Software repository for HEVC https://hevc.hhi.fraunhofer.de/svn/svn_HEVCSoftware/tags/HM-16.0/ References • [16] HEVC white paper –Ittiam systems http://www.Ittiam.com/Downloads/en/documentation.aspx • [17] Video test sequences http://forum.doom9.org/archive/index.php/t-135034.html or http://media.xiph.org/video/derf/ or ftp://ftp.kw.bbc.co.uk/hevc/hm-11.0-anchors/bitstreams/ orhttp://forum.doom9.org/archive/index.php/t-135034.html • [18] M. Wien, “High efficiency video coding: Tools and specification”, Springer, 2015. • [19] I.E. Richardson, “Coding video: A practical guide to HEVC and beyond”, Wiley, 11 May 2015 • [20] V.Sze, M.Budagavi and G.J.Sullivan “ High Efficiency Video Coding(HEVC) –Algorithms and Architectures”, Springer, 2014. • [21] HM Software Manual https://hevc.hhi.fraunhofer.de/svn/svn_HEVCSoftware/