Comparison of Various Space-Filling Curves for Lossless Data Hiding Using a Modified Histogram

Similar documents
Reversible Data Hiding Using a Histogram Modification

XML Model for Legal Documents

COPYRIGHT PROTECTION OF PALETTE IMAGES BY A ROBUST LOSSLESS VISIBLE WATERMARKING TECHNIQUE *

An Interactive Program System for Training Students in Operation with Digital and Analog Regulators

International Journal of Innovative Research in Computer and Communication Engineering

Concealing Information in Images using Progressive Recovery

Optimization System for Solving Problems of Nonlinear Multiobjective Programming

COPYRIGHT PROTECTION OF PALETTE IMAGES BY A ROBUST LOSSLESS VISIBLE WATERMARKING TECHNIQUE *

CHAPTER 4 REVERSIBLE IMAGE WATERMARKING USING BIT PLANE CODING AND LIFTING WAVELET TRANSFORM

A reversible data hiding based on adaptive prediction technique and histogram shifting

Space Filling Curves and Hierarchical Basis. Klaus Speer

IMPROVED RHOMBUS INTERPOLATION FOR REVERSIBLE WATERMARKING BY DIFFERENCE EXPANSION. Catalin Dragoi, Dinu Coltuc

Improved Reversible Data Hiding in Encrypted Images Based on Reserving Room After Encryption and Pixel Prediction

A Framework to Reversible Data Hiding Using Histogram-Modification

Image Compression Algorithm and JPEG Standard

An Information Hiding Scheme Based on Pixel- Value-Ordering and Prediction-Error Expansion with Reversibility

Fractals: a way to represent natural objects

CODING METHOD FOR EMBEDDING AUDIO IN VIDEO STREAM. Harri Sorokin, Jari Koivusaari, Moncef Gabbouj, and Jarmo Takala

Reversible Data Hiding VIA Optimal Code for Image

Digital Image Steganography Techniques: Case Study. Karnataka, India.

A New Approach to Compressed Image Steganography Using Wavelet Transform

Reversible Image Data Hiding with Local Adaptive Contrast Enhancement

Optimization of Bit Rate in Medical Image Compression

A Reversible Data Hiding Scheme for BTC- Compressed Images

A Combined Encryption Compression Scheme Using Chaotic Maps

Chapter 2 Basic Structure of High-Dimensional Spaces

A NEW ROBUST IMAGE WATERMARKING SCHEME BASED ON DWT WITH SVD

Modified SPIHT Image Coder For Wireless Communication

4. Image Retrieval using Transformed Image Content

A DWT Based Steganography Approach

Robust DWT Based Technique for Digital Watermarking

ECE 533 Digital Image Processing- Fall Group Project Embedded Image coding using zero-trees of Wavelet Transform

Keywords - DWT, Lifting Scheme, DWT Processor.

Multilayer Data Embedding Using Reduced Difference Expansion


Image Compression for Mobile Devices using Prediction and Direct Coding Approach

Efficient Storage and Processing of Adaptive Triangular Grids using Sierpinski Curves

CHAPTER 6. 6 Huffman Coding Based Image Compression Using Complex Wavelet Transform. 6.3 Wavelet Transform based compression technique 106

A Revisit to LSB Substitution Based Data Hiding for Embedding More Information

Information Security Bell-La Padula Model 1

Multiservice Networks in Digital Houses

3. Multidimensional Information Visualization II Concepts for visualizing univariate to hypervariate data

A Image Comparative Study using DCT, Fast Fourier, Wavelet Transforms and Huffman Algorithm

Experiments with Edge Detection using One-dimensional Surface Fitting

Fingerprint Image Compression

Laboratory Model of a Contactless Device for Measuring Diameter of Objects with Circular Cross-section Objects

Texture Segmentation by Windowed Projection

ISSN (ONLINE): , VOLUME-3, ISSUE-1,

Compression of Stereo Images using a Huffman-Zip Scheme

Image representation. 1. Introduction

Adaptive data hiding based on VQ compressed images

IMAGE COMPRESSION USING HYBRID QUANTIZATION METHOD IN JPEG

II. RELATIVE WORK The earlier watermarking techniques were proposed for data hiding applications only [2, 7]. Then, the authentication capability beca

SIGNAL COMPRESSION. 9. Lossy image compression: SPIHT and S+P

Theorem 2.9: nearest addition algorithm

Image Edge Detection Using Ant Colony Optimization

Interactive Progressive Encoding System For Transmission of Complex Images

Novel Lossy Compression Algorithms with Stacked Autoencoders

AN IMPROVISED LOSSLESS DATA-HIDING MECHANISM FOR IMAGE AUTHENTICATION BASED HISTOGRAM MODIFICATION

Ian Snyder. December 14, 2009

AN EFFICIENT VIDEO WATERMARKING USING COLOR HISTOGRAM ANALYSIS AND BITPLANE IMAGE ARRAYS

Literature Survey on Performance of Reversible Data Hiding Algorithm

Image Segmentation Techniques for Object-Based Coding

COMPARATIVE STUDY OF HISTOGRAM SHIFTING ALGORITHMS FOR DIGITAL WATERMARKING

Comparative Analysis of 2-Level and 4-Level DWT for Watermarking and Tampering Detection

Research Article A Novel Steganalytic Algorithm based on III Level DWT with Energy as Feature

3D Mesh Sequence Compression Using Thin-plate Spline based Prediction

Group Testing for Image Compression

Data Partitioning. Figure 1-31: Communication Topologies. Regular Partitions

A New Watermarking Algorithm for Scanned Grey PDF Files Using Robust Logo and Hash Function

The Fieldbuses a Comparative Analysis

Unsupervised Learning : Clustering

Research Article International Journals of Advanced Research in Computer Science and Software Engineering ISSN: X (Volume-7, Issue-6)

High Capacity Reversible Watermarking Scheme for 2D Vector Maps

[10] Industrial DataMatrix barcodes recognition with a random tilt and rotating the camera

Digital Halftoning Algorithm Based o Space-Filling Curve

NOVEL ALGORITHMS FOR FINDING AN OPTIMAL SCANNING PATH FOR JPEG IMAGE COMPRESSION

Bit-Plane Decomposition Steganography Using Wavelet Compressed Video

A QUAD-TREE DECOMPOSITION APPROACH TO CARTOON IMAGE COMPRESSION. Yi-Chen Tsai, Ming-Sui Lee, Meiyin Shen and C.-C. Jay Kuo

A hybrid format for storing raster images

Enhancing Forecasting Performance of Naïve-Bayes Classifiers with Discretization Techniques

An Adaptive and Deterministic Method for Initializing the Lloyd-Max Algorithm

International Journal of Emerging Technology and Advanced Engineering Website: (ISSN , Volume 2, Issue 4, April 2012)

Temperature Distribution Measurement Based on ML-EM Method Using Enclosed Acoustic CT System

Chaos-based Modified EzStego Algorithm for Improving Security of Message Hiding in GIF Image

Random spatial sampling and majority voting based image thresholding

Non-linear dimension reduction

Digital Image Processing

Exploiting a database to predict the in-flight stability of the F-16

Overcompressing JPEG images with Evolution Algorithms

Reversible Image Data Hiding Using Public Key Modulation over an Encrypted Domain

Chapter 11 Representation & Description

Overview of Clustering

CS 1675 Introduction to Machine Learning Lecture 18. Clustering. Clustering. Groups together similar instances in the data sample

Reversible Watermarking in JPEG Images Based on Modified RZL Codes and Histogram Shift

Digital Image Steganography Using Bit Flipping

Reversible Wavelets for Embedded Image Compression. Sri Rama Prasanna Pavani Electrical and Computer Engineering, CU Boulder

CHAPTER-6 WATERMARKING OF JPEG IMAGES

Model Based Impact Location Estimation Using Machine Learning Techniques

Video Inter-frame Forgery Identification Based on Optical Flow Consistency

Transcription:

БЪЛГАРСКА АКАДЕМИЯ НА НАУКИТЕ BULGARIAN ACADEMY OF SCIENCES ПРОБЛЕМИ НА ТЕХНИЧЕСКАТА КИБЕРНЕТИКА И РОБОТИКАТА, 66 PROBLEMS OF ENGINEERING CYBERNETICS AND ROBOTICS, 66 София 2015 Sofia Comparison of Various Space-Filling Curves for Lossless Data Hiding Using a Modified Histogram N. Lazarov, Zl. Ilcheva Institute of Information and Communication Technologies, 1113 Sofia Abstract: In the area of data-hiding and digital watermarking there is a special group of approaches to embed data that are based on the specific property of the cover image the histogram. In this group of methods a very promising subset comprises the methods, using histogram modification, especially those that exploit the high correlation between adjacent pixels. In order to take full advantage of this statistical phenomenon, the 2D representation of the image data should be transformed to 1D array of values, applying a space-filling curve over the discrete pixel plane. This paper focuses on comparing various curves for better understanding of their use and applicability. First the space-filling curves are introduced with their specific characteristics. In the second part the data-hiding method using a histogram modification is described. The third part compares the space-filling curves analytically. The last part presents the experimental results of applying every curve through data-hiding methods and concludes the results. 1. Introduction In the image data-hiding area numerous methods have been developed for embedding message data within visual information with the idea to make it undetectable and an integral part of the cover image. The general separation of 21

these methods is according to the domain they are operating in frequency ([4]) or spatial ([1]-[3]). Usually the latter group is considered more simplistic as it does not require any transformation from one domain to the other and back. In the methods utilizing the spatial domain there is a distinct class that relies on the histogram of the image and its distinct properties (usually the extreme values). Such a method is the method of Ni [1], a lossless data-hiding algorithm using the histogram minimum and maximum of the image. As an improvement in the transferred data capacity of this method there is another basic approach that uses a modified histogram based on the difference between neighboring pixels. Any method based on this approach tries to take the maximum out of the fact that in an ordinary photograph the adjacent pixels are highly correlated, i.e., the difference between them is stacked around the beginning of the histogram coordinate system. This approach has been described in details in [12]. In order to take full advantage of the neighboring pixels it is of great importance how the image is iterated through. This determines the adjacent values by transforming and ordering the values in an one-dimensional vector. For this reason it is important which space-filling curve will be used to go through the image pixel values. Preference should be given to those curves that go through directly adjacent pixels. 2. Space-filling curves The space-filling curves that should be used to iterate through the image should have some obligatory features in order to be deemed appropriately. First of all they should not go through one and the same pixel more than once. Otherwise this would result in wrong encoding of the message. Another important feature, which is not obligatory, is that Hausdorff dimension [8] must be equal to 2. This means that the space-filling curve covers the whole pixel plane, which in return may result in a better embedding capacity. In this paper 6 different space filling curves will be investigated: 1. Left-to-right-top-to-bottom (zig-zag) (Fig. 1) 2. Reverse-S space-filling curve (Fig. 2) 3. Spiral-like centric space-filling curve (Fig. 3) 4. Z-order space-filling curve (Fig. 4) 5. Hilbert space-filling curve (Fig. 5) 6. Peano space-filling curve (Fig. 6) For simplicity of description we will assume that the curves fill a square area with size equal to n. Furthermore, the length of a path P is the sum of the Euclidean distance between the neighboring pixels, i.e., the total distance a cursor would travel, if they were following the iteration through the image pixels. 22

2.1. Left-to-right-top-to-bottom space-filling curve Fig. 1. Left-to-right-top-to-bottom space-filling curve This iteration method is the simplest to implement as it goes in a very natural way through the image pixels. Nevertheless, it is very impractical in the current case since the transition between the end of the row up to the beginning of the next row is not optimal when tracking adjacent pixels. The only way this space-filling curve to be efficient is if the left and right edges of the image have similar pixel values. The length of the path is measured by the following formula. 2.2. Reverse-S space-filling curve Fig. 2. Reverse-S space-filling curve The reverse S space-filling curve is the improved version of the left-to-righttop-to-bottom space-filling curve. The most important characteristic is that the path goes through neighboring pixels only. Going from a previous to the next row is 23

done by the corresponding pixel in the next row and reversing the iteration direction. This path offers the ideal conditions for the histogram modification datahiding algorithm based on the adjacent pixel difference. Apart from this it is simple and easy to implement. The path length in pixels is measured through the following formula. 2.3. Spiral-like centric space-filling curve Fig. 3. Spiral-like centric space-filling curve This space-filling curve iterates through the pixels from the outer border inwards towards the center of the image. This method has improved locality in the center of the image. If there is a region of similar pixel values, then the result would be optimal, as the correlation between these pixels will be very exploited. The behavior around the borders could be compared with that of the reverse-s space-filling curve. The path length in pixels is measured through the following formula. 2.4. Z-order space-filling curve 24

Fig. 4. Z-order space-filling curve Z-order, Morton order, or Morton code is a function which maps multidimensional data to one dimension while preserving locality of the data points. It was introduced in 1966 by G. M. Morton [8]. It is extremely easy to implement this space-filling curve since the position is calculated simply by interleaving the binary representations of its coordinate values. Let us assume that x is represented in a binary form by the binary string x 0 x 1 x 2 x 3. The same goes for y y 0 y 1 y 2 y 3. The position in the z-order path will be y 0 x 0 y 1 x 1 y 2 x 2 y 3 x 3. For example the image position (5, 2), will be at position 25 of the z-order path, since 5 (binary 101) and 2 (binary 010) will become 25 (binary 011001). Please, note that in order these calculations to be correct the dimension should start from 0, not 1. Z-order is mainly used in storing data for fast searches due to the good locality it offers. Still, for the purpose of maximizing the correlation between neighboring pixels, it does not offer the greatest results as leaving one cluster of Zs, a jump occurs which breaks the adjacent iteration among the pixel values. 2.5. Hilbert space-filling curve Fig. 5. Hilbert space-filling curve 25

A Hilbert curve (also known as Hilbert space-filling curve) is a continuous fractal space-filling curve first described by the German mathematician David Hilbert in 1891, as a variant of the space-filling curves discovered by Giuseppe Peano in 1890. It consists of a sequence of curves defined iteratively. This space-filling curve offers great locality as it exploits the correlation between pixels within small regions and thus it can be more robust in certain scenarios. The length of the path in pixels can be expressed through the following formula 2.6. Peano space-filling curve 26 Fig. 6. Peano space-filling curve Although all space-filling curves that map a plane are known under the name Peano, there is one distinct construction that was the original work of the Italian mathematician Giuseppe Peano. It result is a curve with a high degree of self-similarity. The original Peano space-filling curve is again based on iterative constructs. The major difference between this curve and the others is that this one has 3 as a base, opposed to the Hilbert and Z-order, which are based on dimensions that are powers of 2. The length of the path in pixels is represented in the same way as Hilbert space-filling curve 2.7. The embedding algorithm using a modified histogram One needs to use a modified approach in order to construct a histogram so that the correlation of neighboring pixels can be utilized; a much higher peak point can occur, which is exactly the property used to embed the message by. The difference between the adjacent pixels is the property that is registered in the histogram. As this difference is more frequently around 0, then the peak point in the histogram should be expected to be at the beginning.

Once the modified histogram has been constructed and there is a prominent peak point, the embedding of the message can be accomplished [12]. The basic idea is pretty straight-forward clear the pixel value position after the peak point by extending any difference larger than that by 1. Since this value is cleared, it will be the perfect candidate for storing the 1s in the data bit stream. The 0s will remain in the peak point difference. The embedding is done by traversing the image in the same way as the histogram has been constructed. If a peak point difference is met, an embedding should occur. If a 0 should be embedded, then do nothing, otherwise extend the difference by 1, thus occupying the peak point at +1 position. The decoding part is the same as the embedding. Knowing the peak point, one should traverse the image and if an embedding position is found, extract the respective bit and add it to the message bit stream. Every difference greater than the peak point difference should be shrunk by 1 in order to restore the original cover work. 2.8. Comparison of space-filling curves Since the algorithm is defined and the importance of having an optimal space-filling curve is clear, it is very important to investigate the advantages and disadvantages of each of the space-filling curves presented in this paper. The basic way of categorizing the space-filling curves is the way they handle locality. The first group of such curves are those that do not handle locality at all, i.e., they do not intentionally strive to exploit smaller regions while iterating. Such are the left-to-right-top-to-bottom, reverse S and the centric space-filling curves. All of them go through the image in a straight-forward manner. Only the centric one has a form of locality in the center of the image, where the spiral iteration converges. Z-order, Hilbert and Peano space-filling curves are in the other group of curves striving to use locality as much as possible. They intentionally combine neighboring pixels in more complex regions so that more close-related positions can be used, thus improving the correlation between the resulting one-dimensional vector. There is another property of the space-filling curves that is of great importance for the case of embedding messages. This is the ratio between the Euclidean distance (length of the path) and scalar distance (total count of elements in the path) of the space-filling curve, which results in better utilization of the neighboring pixels if this ratio is low. A simple observation on the curves is enough to see that there are two of them that do not follow the neighboring pixels very closely, i.e., there are jumps to more distant positions in the image matrix. These are the left-toright and z-order space-filling curves. There is a very good analytic and experimental comparison carried out by Aubrey Jaffer [11] that demonstrates the benefits of the Hilbert s curve and Peano s curve in various space dimensions. Despite of being more complex as structures, the Hilbert, Peano and z-order curves have a certain limitation in their usage. All of them require that the area, image, matrix they should iterate through, must be a power of 2, 3 and 2. This adds an additional level of limitations, what must be done with images that do not satisfy this requirement. Well, in the implementation provided, the area that is not present 27

to complete the needed side dimension is just ignored, which will result in a line following the edges of the image. This will not break the neighboring properties of the respective space-filling curve, sinces they still follow the next pixel on the edge. This will even improve the performance of the z-order space-filling curve in that respect. 3. Experimental results In order to get better understanding of the different aspects of the performance of the embedding algorithm, using various space-filling curves, tests were run on six images altogether (Fig. 7). Fig. 7. Test images used for evaluating the experimental results The experiments must compare the pure payload capabilities of the used embedding algorithm using each of the space-filling curves. The results are represented in charts, one for each test image, where the pure payload of each of the space-filling curves is denoted. The x-axis shows the name of the space-filling curve and the y-axis the value of the pure payload for the corresponding image. Fig. 8. Bee pure payload 28

Fig. 9. Cat pure payload Fig. 10. Jet pure payload Fig. 11. Barbara pure payload 29

Fig. 12. Lena pure payload 30 Fig. 13. Mandrill pure payload Analyzing the results one cannot distinguish a space-filling curve, which functions much better than the rest. It turns out that the performance of the spacefilling curve is greatly dependent on the image spatial structure. Therefore, for every image there is an optimal space-filling curve. In this aspect a data-hiding system based on this approach could have enumeration of space-filling curves that is passed along with the peak point as necessary information before decoding the message. As far as the left-to-right space-filling curve is concerned, it performs well, despite its lack of continuity when changing rows. Nevertheless, the Reverse-S space-filling curve still outperforms it. These good results could be due to the fact that the left and right edges of the test images are fairly similar. Furthermore, these transitions are merely 512, which is a small number compared to the total number of differences denoted in the modified histogram. The reverse S space-filling curve shows very good and consistent results. It is among the top performers in all of the test images except for the Lena image. Due to its simplicity and continuous path, these results might be expected. This spacefilling curve is great with landscapes, where the top part is usually a uniform sky background. The spiral space-filling curve shows consistent results as well, but overall shows lower results, especially in the mandrill image. Nevertheless in the Lena

image it performs very strongly, as it takes full advantage of the convergence in the center region. This space-filling curve is very suitable for images that display objects of uniform pixel values in the center of the image. The z-order space-filling curve proves to be not that good when it comes to exploiting the high correlation between neighboring pixels. It performs very poorly compared to the others. Its use should be avoided for this kind of purposes. The Hilbert and Peano curves prove to be very good form embedding messages, using the modified histogram approach. Exploiting locality seems to be beneficial especially in the Barbara and Lena images. 4. Conclusion Using various space-filling curves for building a modified histogram, based on pixel difference, and subsequent message embedding in images shows that this is an area that needs further investigation. Different space-filling curves do not perform uniformly for different images. Therefore, there could be two directions for improvement. One is to come up with an algorithm of choosing the most appropriate space-filling curve from the set of predefined such. The other option could be to implement an adaptive space-filling curve that is able to take full advantage of the spatial relations between adjacent pixels. The issue with the second variant is how these new space-filling curves will communicate to the decoding side in an optimal and secure manner. R e f e r e n c e s 1. N i, Z., Y. Q. S h i, N. A n s a r, W. S u. Reversible Data Hiding. In: IEEE Transactions on Circuits and Systems for Video Technology, Vol. 16, March 2006, No 3, 354-357. 2. C h a n g, C. C., T. C. L u. Lossless Information Hiding Scheme Based on Neighboring Correlation. International Journal of Signal Processing, Image Processing and Pattern, Vol. 2, March 2009, No 1, 49-52. 3. S t a c h, J., A. M. A l a t t a r. A High-Capacity, Invertible, Data-Hiding Algorithm Using a Generalized, Reversible Integer Transform, 1-3. 4. J i n n a, S. K., L. G a n e s a n. Lossless Image Watermarking Using Lifting Wavelet Transform. International Journal of Recent Trends in Engineering, Vol. 2, November 2009, No 1, 191 p. 5. V l e e s c h o u w e r, C. D e, J. F. D e l a i g l e, B. M a c q. Circular Interpretation of Bijective Transformations in Lossless Watermarking for Media Asset Management. In: IEEE Transactions on Multimedia, Vol. 5, March 2003, No 1, 97-100. 6. C h a n g, C. C., W. T a i, K. N. C h e n. Lossless Data Hiding Based on Histogram Modification for Image Authentication. In: 2008 IEEE/IFIP International Conference on Embedded and Ubiquitous Computing, 506-509. http://mathworld.wolfram.com/hausdorffdimension.html 7. G. M. M o r t o n. A Computer Oriented Geodetic Data Base; and a New Technique in File Sequencing. Technical Report, Ottawa, Canada: IBM Ltd., 1966. http://mathworld.wolfram.com/hilbertcurve.html 8. M i s h r a, S a s m i t a. An Intuitive Method for Hilbert Curve Coding. In: International Journal of Computing and Corporate Research. Vol. 1, November 2011, Issue 3, Manuscript 11, 2-5. 9. J a f f e r, A u b r e y. The Performance of Space-Filling Curves for Dimension Reduction. 2009. http://people.csail.mit.edu/jaffer/cns/psfcdr 10. L a z a r o v, N., Z. I l c h e v a. Reversible Data-Hiding Using Histogram Modification. pp. 1-4. 31

Сравнение между кривыми заполняющими пространствами при встраивании данных без потери в изображениях Н. Лазаров, Златолилия Илчева Институт информационных и коммуникационных технологий, 1113 София Emails: Р е з ю м е В области встраивания данных и цифровых водяных знаков без потери, в изображениях широко используется подход модификации гистограммы несущего изображения. Чтобы использовалась корелляция между соседными пикселями в изображении, необходимо исследовать разные способы трансформирования изображения от 2D в 1D представлении посредством заполняющими пространства кривыми. Сначала кривые, заполняющие пространства вводятся посредством своих специфических характеристик. Во второй части статьи описывается метод встраивания данных на основе гистограмной модификации. Представлены экспериментальные результаты с применением разных кривых. В конце статьи сделаны некоторые выводы насчет применения разных кривых. 32