Security and Communication Networks

Volume 2018, Article ID 1404826, 29 pages

https://doi.org/10.1155/2018/1404826

## Steganography Algorithm Based on the Nonlocal Maximum Likelihood Noise Estimation for Mobile Applications

^{1}Instituto Politécnico Nacional, Sección de Estudios de Posgrado e Investigación-Escuela Superior de Cómputo, Ciudad de México 07320, Mexico^{2}Instituto Politécnico Nacional, Unidad Profesional Interdisciplinaria de Ingeniería y Tecnologías Avanzadas, Ciudad de México 07340, Mexico

Correspondence should be addressed to Blanca Esther Carvajal-Gámez; moc.liamg@glajavraceb

Received 19 March 2018; Revised 20 May 2018; Accepted 2 July 2018; Published 26 July 2018

Academic Editor: Leandros Maglaras

Copyright © 2018 Blanca Esther Carvajal-Gámez and Manuel Alejandro Diaz-Casco. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

#### Abstract

In recent years, thanks to the use of Internet services, daily activities used to imply movement became more accessible to any user. As a result of such interconnection, now millions of people from different countries are able to communicate among themselves through the Internet, generating a great flow of data and classified information. The information on the Internet can be stolen, intercepted, anonymized, or even destroyed, resulting in cases of infringement of intellectual property rights, and the loss or damage of data. In such a globalized and interconnected world, solid security measures have become increasingly important to ensure data privacy protection and its confidentiality during transit. Nowadays, there is a variety of security mechanisms such as the steganography, an information hiding technique, which protects intellectual property by allowing the transmission of hidden data without drawing any suspicion. In order to achieve these criteria, an adaptation of the nonlocal maximum likelihood filter is proposed; in this class of filters, in general, they are used in images that require a high level of irregular pattern detection, based on the statistical dependence of the underlying pixels of the image analysis area, when using it in the wavelet domain as edge detector and/or discontinuities in images in order to have a greater selectivity when inserting information in the image. It strengthens the detection of the areas with the highest probability of having noise presenting results which are suitable areas to insert the information and that it is imperceptible in a quantitative and qualitative manner as presented in the Results and Discussion.

#### 1. Introduction

Steganography is the science of hiding information by means of a cover medium in such a way that even the presence of the message is invisible to any eavesdropper. The object, apparently harmless, is known as the “host” and the contained information as the “payload”. The variety of host objects can range from text files to images, audio, and/or video. The most common example is the use of images; they are used as hosts due to their omnipresence in our day-to-day activities, as well as their high level of redundancy in their representation. The image steganography techniques are classified according to their domain; the most frequently used are the spatial and the frequency domain ones. However, there are now some techniques that combine both domains, with the advantage of being adaptable to the nature of the image [1].

The spatial domain techniques are used by directly manipulating the pixels of the image to hide the information. They are also characterized by having the simplest schemes, a short implementation time [1], a reduced hardware requirement, and a low time complexity.

In the spatial domain, a steganographic algorithm modifies the data in the host image in the special domain; the most representative algorithm in this domain is the substitution of the least significant bit (LSB); although this method is simple, it has a greater impact in comparison with other methods.

In general, the insertion mechanism is carried out in the LSB up to the 4th LSB. It can be assumed that inserting in the 4th LSB generates greater visual distortion to the hostess image since the hidden information is seen as “unnatural”. Similarly, the distortion occurs at the time of recovery of the inserted image.

This algorithm has been perfected in order to decrease these distortions presented both in the host image and in the recovered image; one of the most widely used methods is the LSB-OPAP [2], which makes an adaptation to the insertion of the information following the considerations of the LSB algorithm. This consists of the following set of steps: the insertion of the information is done using the LSB method to obtain the stego-image pi′; in parallel the steganographic algorithm is performed using the technique in [2] obtaining the stego-image pi′′. Then consider pi(i), pi′(i), and pi′′(i), the pixel values corresponding to the i-th pixel in the host image C, the stego-image C′ obtained by the simple LSB substitution method, and the refined stego-image obtained after the OPAP. With *δ*i = pi′-pi, the insertion error is between pi and pi′. According to the process of incorporation of the simple LSB substitution method described above, pi′ is obtained by directly replacing the least significant bits of pi with k message bits, with the following condition: . As a result, it shows a slight improvement against the traditional LSB.

Recently, to improve visual quality and security against histogram attacks, an approach based on LSB with the capacity of 1 bpp was proposed, reducing the probability of changing pixels as a modification of 1/3 of pixels. Due to the smaller modification of the stego-image pixels, it improves the visual imperceptibility and also has resistance against detection attacks based on LSB, that is, the HCF-COM steganalysis [3].

Yuan et al. [4] proposed a method based on multilayer adaptive steganography. The insertion of the secret image adapts to the regions with different texture in the host image. The insertion of the information is done using the LSB algorithm, and this can be extracted using the XOR-based operation. This method resists modern attacks with steganalyzers such as SPAM and AUS. One of the main problems in methods based on the LSB algorithm is that although they are simple to understand and apply and even flexible to integrate with other methods, its main vulnerability is that having a direct relationship between the ability to insert with the visual quality of the stego-image, the latter is affected as the insertion in the maximum level of the LSB in a pixel is made.

The frequency domain or the transform domain is another technique used, which consists of diverse transformations used to retrieve information in the frequency domain or time-frequency.

To avoid the problems presented in the spatial domain, the processing in the frequency domain has been an adequate tool for signal filtering, pattern recognition, and image compression. A complicated problem to solve in the spatial domain becomes easy to deal with in the frequency domain, because the sharp edges and transitions in an image contribute significantly to the content of the high frequency of its transformation.

These techniques applied in the frequency domain insert the information through transforms in which the frequency components of the image are extracted, where the places or zones in which the image in the image will not be affected can be identified in a more precise way, “visual quality” of the image. These compression techniques are often used because they extract characteristics of the host image that represent the high and low frequencies of the image, where the latter represent the edges or contours of the host image, thus allowing an exchange of values in the host image, values of the image to hide. Therefore, to search for the right pixels to hide data, transformations-based schemes are a reasonable approach. In these schemes, the host image is transformed due to its approach oriented to the extraction of the main characteristics in frequency.

Among these, there is the Discrete Cosine Transformation (DCT) technique and the Discrete Wavelet Transformation (DWT) technique [5, 6].

Some popular steganographic algorithms on the Internet that apply DCT are the following.

The Jsteg/JPHide algorithm has the following characteristics for the insertion of information [7].

Jsteg has (1) steganographic tool based on the insertion of LSB; (2) the insertion is done replacing the nonzero LSB values by nonzero DCT quantized coefficients by the secret message bits. (1) In JPHide, these quantized coefficients are randomly selected with the help of any pseudo-random number generator that can be controlled with a key, (2) the second LSB can also be modified in JPHide, and (3) the Jsteg capability is equal to the number of DCT coefficients whose values are not equal to 0, 1, and -1 (this condition is selected to avoid ambiguity in the extraction of secret bits).

Another known algorithm is YASS (another steganographic scheme), which is explained below [8]:(1)The input image in the spatial domain is divided into blocks of fixed size known as large blocks (block B). Within each large block, the 8 × 8 subblock called host block (block H) is randomly selected.(2)The bits of the secret message are integrated into the DCT coefficients of the H block by the quantum modulation index (QIM).(3)With the help of Inverse Discrete Cosine Transform (IDCT) of block H, a JPEG image can be obtained.(4)The advantages include the survival of the message bits in the active guardian scenario; it works well against the autocalibration tool called autoanalysis.

For example, DWT, in Subhedar et al. (2014) [1], obtains in its best result a value of PSNR = 54.819dB with a secret image of 256x256. The authors propose a steganographic algorithm using an adaptation of the DWT called redundant wavelet transform (RDWT) and QR factorization.

For the implementation of the DWT, Abdulaziz and Pang [1] use the vector quantification called Linde-Buzo-Gray (LBG) together with the block codes known as BCH code and the discrete wavelet decomposition Haar at a decomposition level. The result presented by them argues that their algorithm presents a good quality with few perceptual defects.

Nowadays, there are also techniques adaptable to the nature of the image; spatial and frequency domain techniques are combined in these techniques [5, 6].

Adaptive steganography is a special case of the two previous methods. It is also known as “insertion based on statistics”, “masking”, or “based on models”. This method takes global statistical characteristics of the image before attempting to interact with LSB/DCT/DWT coefficients.

The statistical values obtained from the images will define where to make the changes. It is characterized by a random adaptive selection of pixels according to the host image and the selection of pixels in a block with a large local standard deviation. The latter is intended to avoid areas of uniform color (smooth areas). This behavior causes adaptive steganography to search for images with noise or existing or deliberately added images that demonstrate the complexity of the color.

Wayner [5] named in his book “life in noise”, pointing out the usefulness of the insertion of data in noise. It is proven that this method is robust with respect to compression, trimming, and image processing [5].

Chin-Chen et al. [9] proposed an adaptive technique applied to the LSB substitution method. His idea is to exploit the correlation between neighboring pixels to estimate the degree of statistical belonging. They discuss the options of having 2-4 crossing lines. The payload (embedding capacity) obtained is 355588 bits.

Hioki et al. [10] present an adaptive method called “data insertion based on block complexity” (ABCDE). The insertion is done by replacing the data in the selected pixels of blocks with high noise content in the image and is replaced with another noisy block obtained with the inserted data. This suitability is identified by two measures of complexity to adequately discriminate complex simple blocks, which are irregular in length and with edges considered noise. The hidden message is part of the noise of the image.

Regardless of their field of application, all of the image steganography techniques should focus on the following three main points: where to hide the information inside the image, the security level when embedding the information into the image, and the security level of the play load in case of intrusion. There are many steganography algorithms and each one is differently addressed.

In order to use steganography in images, it is necessary to select the specific regions to embed the image; these regions will be mentioned as Possible Embedding Region (PEB). The PEB can be in any section or object inside the image that is able to produce the minimum possible distortion. The appropriate PEB can be recognized by abrupt changes in values of surrounding pixels, which are interpreted as the edges of the objects inside the image. The edges are considered to be appropriate sections for hiding information due to the fact that human sight is less sensitive to shape or color distortions inside the peripheral areas of an object, in combination with the fact that it randomly locates pixel values. The random pixel distribution allows the dispersion of payload in the stego-image, reducing its detection. This paper presents an adaptive steganography mechanism that employs three security levels for the retrieval of the embedded information. This embedding mechanism uses the spatial as well as the frequency domain to detect the edges of the PEB. The three levels will request to have a primary key for each embedded data, additionally verifying whether the data is correct or not. In case of not complying with the three security levels, the retrieval of the information could be blocked, which provides an advantage. Finally, the quantitative results of its performance will be shown. In this work, the cover images have 2 different dimensions: 1024 x 768 and 256 x 256 pixels, while the images to be hidden have 4 different dimensions: 712 x 534, 1024 x 768, 576 x 768, and 256 x 256 pixels.

#### 2. Theory

In this section, the proposed mechanism for using steganography in images will be described in detail. The proposed mechanism is adaptive, which means that it analyses the spatial and the frequency domains of the PEB edges for the possible embedding of information.

##### 2.1. Discrete Wavelet Transformation (DWT)

The DWT is used to analyze an image regarding its spatial and frequency domain. It provides a time-frequency representation of the image. The DWT is created by repeatedly filtering the image in each row and in each column in order to obtain the different DWT coefficients. The DWT is useful because it analyses the information at high and at low frequencies in each pixel. The cover image goes through a filter bank, where each filter is expected to be sampled by two (wavelet transform), which has a finite impulse response.

The image processed with the low-pass filter provides a soft wavelet coefficient of the input image and, with the filter, it results in a version of the edges of the image [11].

We have used the DWT Haar to deconstruct the cover image and, in the case of the stego-image, a Haar deconstruction and a DB4 deconstruction are used [12].

##### 2.2. Fourth Moment Wavelet

During the wavelet transform of the image, four subimages are obtained in different frequency bands. The submatrixes obtained are considered as random variables. The fourth moment wavelet (FMW) is used in the submatrixes obtained, considering the following [6, 7]: where is the image with additive noise, is the original image, represents the white Gaussian noise, and is the current position of the pixel. From (1), it can be understood that is a 2D random vector with N consecutive samples of a real process using a Gaussian distribution, with a mean equal to zero. From this consideration, the FMW is obtained as follows:From (3), the mean and the FMW standard deviation are obtained with the following consideration ; then, the mean of is obtained from the normal distribution [18, 19]:where E represents the submatrix expected value and p represents the probability of its occurrence in the sample. For the proposed method, the variability of the probability distributions is considered, and a selection threshold is finally chosen, based on the traditional considerations for hard and soft thresholding. The FMW, obtained from the coefficients of the decomposition of details, will have a value higher than , where . This is due to the conditions of variability occurrence of the components of the image [6, 7].

##### 2.3. Noise-Level Estimation Mechanism

The noise-level estimation in images requires improved accuracy in the filters in order to be able to distinguish the edges and borders of the image and, thus, be able to separate it from the noise and the edge. Quality in image manipulation allows accurate insertion in the possible embedding regions, detected as edges and noise [20]. In this research, the nonlocal filter is used to detect noise in the images, which consists of the progressively selection of images, through each layer of their spatial composition. This type of filter is a multispectral extension of the nonlocal maximum likelihood filter (NLML). It is possible to represent to detect noise in an image through filters used for the multispectral extension of the images; this filter is known as NLML [21].

Besides, given that the standard deviation of noise (SD) is an important reference for all the no local filters, an adaptation to the Maximum Likelihood Estimation (MLE) of noise levels is presented, and it is compared with MLE local and nonlocal methods.

The SD is an important parameter for the filtering of Nonlocal Media (NLM) and the NLML [22]. According to this, several noise estimation methods have been developed through the intensity of underlying pixels in the image that is being detected. However, this might sometimes not be enough to guarantee an accurate identification of the edge of the image. Because of this, the method [22] is used, with the pertinent adaptations for the edges estimation. In respect thereof, a Linearized Maximum Likelihood (LML) method has been proposed as edge detector in images [23].

##### 2.4. Estimation of Noise Standard Deviation

The precise estimation of *σ* is essential for the filtering quality, as well as for other image processing tasks such as the segmentation and the estimation of parameters to detect edges [24]. The LML approach has been proposed when the image information does not provide the information needed to detect edges and to determine the precise value of *σ* [25–27].

For this paper, we propose the use of a modified Noise Estimation Filter using local maximum likelihood (NE-LML) to detect thresholds, employing the FMW as a selection process. During the edge detection, the adaptation of the NE-LML was employed. The estimation of *σ* is made for each layer of the image, which we denominate as* k*, which is maximized due to the use of the Rician distribution regarding the unknown values of and range through the following equation [28]:where is the modified Bessel function of the first kind. For an optimal estimation, represents the intensity of the image, k represents the decomposed layer, and represents the range of the image in layer k. The combination of the FMW and the NE-LML filter allows the detection of appropriate areas to embed information in order to obtain the stego-image.

#### 3. Methods and Materials

##### 3.1. Wavelet Decomposition

Suppose digital image I is composed of a set of layers k, where k= ; with a set of samples , , ,… ,, that take values between 0….2j+1 (typically J=27). In order to improve the steganography performance in mobile devices, we carried out the wavelet decomposition through the Haar Discrete Wavelet Transformation Technique (HDWT) and the Daubechies Discrete Wavelet Transformation Technique (DDWT). The HDWT is frequently used for detecting edges, compressing images, coding, etc. Because the HDTW requires few computational requirements, it has been principally used for image processing and pattern recognition; this low computational demand provides advantages by implementing complex algorithms in limited technologies such as the mobile devices. The base operation of the HDWT when applied in a two-dimensional signal that contains* NxN* samples is the following: each row of one image is filtered with a low and high-pass filter (LPF and HPF) and the output of each filter is sampled by two in order to produce an image known as L and H. L is the image originally filtered in a low-pass (LPF) and divided into direction x, and H is the image originally filtered and divided into direction x.

Afterwards, each column of the new images is filtered with a LPF and HPF and sampled by two to produce 4 subimages (LL, LH, HL, and HH). LL is the original image filtered with LPF in a horizontal and vertical direction, sampled by two. LH is the original image filtered with LPF in a vertical direction sampled by two. HL is the original image filtered with HPF in a vertical direction, sampled by two. HH is the original image filtered with HPF in a horizontal and vertical direction, sampled by two. The four subband images contain all the information present in the original image, but their dispersed nature LH, HL, and HH makes them susceptible to compression [29].

In the case of the DDWT, it is defined in the same manner as the HDWT. If the input signal* f *has N values, then, the transform level 1 for the dB4 is the signal mapping* f*, D1->(LH|HL) of signal* f* for the decomposition wavelet LH and HL. The main difference between the HDWT and the DDWT is in the definition of the escalation and the wavelets. The DDWT belongs to the orthogonal wavelet family, defined in a discrete manner and characterized by the number of vanishing moments for a given support. Each wavelet of this type generates a multiresolution analysis of different signal frequencies.

##### 3.2. Detection of Threshold Noise Estimator

In the white Gaussian noise, there is a generalized way because of the frequency components in which it occurs. In the case of the images, this type of noise presents a normal distribution with a mean equal to zero and with an unknown variance . In this specific case, to detect this king of noise, we used the Gaussian white noise estimator () proposed by [30]. is the noise standard deviation and n is the signal length. The SD is estimated using the first decomposition wavelet level, which contains a high frequency band inside the image and a high number of coefficients with noise. The main aim of the noise estimator is to quantify the noisy coefficients inside the decomposed image subbands. To achieve this, the estimation methods are used to provide a coefficient reduction. The main idea of a noise estimator is to detect the noisy coefficient to be able to preserve the information related to the image. We propose the implementation of the FMW, which serves as a threshold to noise discrimination along with the adapted NE-LML.

The FMW of an image can be considered as , where n_{1} represents the noise in the host image obtained from the first wavelet transform [18, 19].

The FMW of the subband LL, which contains information larger than , where denotes the subband LL noise power. Using this, the coefficients that represent noise can be localized and the threshold for the selection of the embedding region can be proposed.

We can estimate the noise power by applying the following equation: where is the standard deviation of the cover image.

Finally, the power of then noise after going through the decomposition wavelet iswhere G represents the filter profits of the low and high-pass filters. Generalizing the formula, the noise power for any decomposition level of the subband LL is given byIf the focus is the filter profit as in [19], thenThus, to detect the noisy coefficients, the following condition is defined asTo finally obtain the threshold value for the embedding of information using the noise estimator function of the filter NE-LML.

The function proposed for the embedding of information is proposed under the name of noise estimator for the embedding of information based on the local maximum likelihood of the image (NEII-LML) as follows: To finally propose the following threshold criterion,

#### 4. Proposed Method

In summary, the algorithm for the information concealment process is presented in Algorithm 1.