1 Introduction

Now digital images became an integral part of human life. Daily large number of people takes a picture and creates images for the most different purposes by means of graphic editors and other specialized programs. People use maps to build optimum routes, use medical images for diagnosis of diseases, illustrate the reports with schemes and charts. Rapid growth of ways of digital images creation and number of spheres of their application contributes to the development of various methods of processing and analysis of digital graphic information, such as compression [22, 26], discernment of objects [33], restoration and improvement [6] etc.

Methods of processing and analysis of digital images find broad application in areas, bound to safety. For example, security of data, which is stored on some device, at biometric authentication significantly increases. For this purpose it’s necessary to receive and analyse particular signs of an image, for example, the periocular area of a person [2]. It is also possible to refer activities for investigation of crimes to the sphere of safety. An opportunity to distinguish a photographic image from computer graphics is relevant for criminalistics [34], as thus the possibility of a forgery of important proofs can be excluded. This work is attributed to such direction of digital images processing, which is bound to the sphere of safety, as concealment in them of additional information by means of digital steganography methods.

The main applications of the digital steganography are safe transmission of a secret information and digital objects copyright protection. In the first case the securable information is embedded secretly into the digital objects so that the intruder couldn’t recognize the fact of this information existence. In the second case digital watermarks which contain the information of the objects owners are embedded into the digital objects. The digital watermarks are used not only for authentication of the digital objects owners, but also for the digital objects authentication, including cases of the falsification detection.

Digital steganography methods can be also used for embedding into digital images of some office information, which is necessary for their further processing. For example, in [7] the approach allowing to embed a QR-code into advertizing images to direct the buyer to the informational portal where there is detailed information about product which interested him, is described. Generally a data hidden in images can be used for a facilitation of image’s search in a database or for fast data obtaining about time and way of the image creation, about its author and content. The last can be especially relevant for people with visual impairment, as display of graphics on tactile displays is the difficult task [37,38,39,40]. Introduction into images of detailed text information which can be transferred on the tactile display can be an alternative.

The additional information embedding into the digital objects becomes possible if it has some redundancy and contains not important data elements which can be manipulated not damaging the objects. The similar principle is the cornerstone of multimedia data compression with losses, but in this case the redundant data elements are discarded to save the memory volume needed for the multimedia data submission [30].

The digital steganography methods working with digital images are divided into two big groups depending on the data embedding area: embedding into the spatial domain and embedding into the frequency domain. The spatial domain is the matrix of the digital image’s pixels, and the frequency domain is the matrix of the values received from the digital image in case of its any frequency transformation. These values are also called the frequency transformation coefficients.

This research is devoted to information embedding into uncompressed digital images’ frequency domain. The main advantage of this work on comparison with state-of-the-art in the considered area is the solution of problem of distortion of messages which are built into the digital images’ frequency domain. This problem is typical for embedding into the frequency domain. It consists in distortion of embedded message at restitution of digital image’s pixels from frequency coefficients. It is bound to rounding of real values to integer and to information losses arising at the same time. In more detail this problem is discussed in the following sections.

The rest of the paper is organized as follows. Section 2 contains the literature review. In section 3 mathematical bases of the discrete Fourier transformation are described. In section 4 the offered by us approaches to organization of faultless and efficient embedding of information into digital images by means of the discrete Fourier transformation are presented. The embedding algorithm on the basis of the offered approaches is presented in section 5. Results of computing experiments with this algorithm are given in section 6. Section 7 contains comparison with previous works and includes discussion of results. Section 8 sums up our research.

2 Review of previous works

The simplest algorithms of digital images embedding into the spatial domain are based on the LSB technique when bits of secret information are put into 1–3 lower bits of image [12]. More complicated algorithms of embedding use the different approaches while choosing the specific pixels to write message. It improves the embedding quality or the stability against the distortions. For example, in [1, 16] data embedding is done in the object circuits on the image as they are less sensitive to the distortions in comparison with the smooth areas. The algorithms described in [11, 35] use for embedding the errors of the pixels values prediction. Such approach masks the statistical features of attachment existence in the image, complicates the steganalysis, and simultaneously provides high embedding capacity. In [18, 20] to hide the data in digital images the interpolation is used. The embedding is done not in the original image, but in the increased cover image. Changes are made only to the pixels received in case of the interpolation application. This approach allows to restore the initial image without attachment.

In many other papers different optimization methods are used to increase the embedding efficiency. In most cases the PSNR value is taken as the target function numerically characterizing cover image distortions [8, 19, 23].

Such transformations as the discrete Fourier transformation (DFT), the discrete cosine transformation (DCT), the Walsh-Hadamard transformation (WHT), different variants of the discrete wavelet transformation (DWT) are usually utilized while embedding information into the digital images frequency domain. These transformations put the matrix of the frequency coefficients in compliance to the digital image’s pixels matrix. The frequency coefficients can be divided into a significant, a bearing the main information about the source image, and less important significant coefficients which can be discarded or modified without noticeable distortions entering into the initial image. Therefore the frequency embedding allows in the best way to select data elements. So they can be used while recording additional information imperceptibly.

In many steganographic algorithms the frequency embedding is carried out into the discrete cosine transformation domain. It is because this frequency transformation is a basis of everywhere used method of the digital JPEG-images compression. In this case we speak about the information embedding into compressed digital images. Examples of the classical operations of this kind are [14, 36, 41]. From researches of the last years it is possible to mention in [15, 17, 21].

The paper [17] represents an example of the classical steganographic algorithm’s improved modification working with JPEG-images, it describes modification of the F5 algorithm [36] where the elements’ values of the quantization table in the mid frequencies domain are taken equal to «1» to increase embedding capacity. It also allows to increase quantity of nonzero quantized coefficients which are used for the message’s bits embedding.

The papers [15, 21] belong to the other rather popular direction of the JPEG-steganography where approaches to choice of quantized DCT-coefficients which will be modified as embedding result are investigated. For this purpose are used different distortion functions, intended to estimate influence of the DCT-coefficients on the overall level of cover image distortions.

The DCT is also used in algorithms working with non-compressed digital images. In [9] the adaptive algorithm of digital watermarks embedding into DCT-domain is described. This algorithm’s adaptivity consists in the genetic algorithm that choose an optimum order of digital watermark’s parts embedding into cover image’s blocks.

Investigations in [27, 28] are directed to achieve the largest embedding capacity in the DCT-domain. For this purpose in each cover image’s block is selected the square area of variable size with the least significant DCT-coefficients which are replaced by secret message’s elements during embedding process. In [27] a cover image is divided into blocks of identical size, and in [28] — into uniform blocks of different size by using of a quad-tree.

In case of the data embedding into non-compressed digital images are widely used not only the discrete cosine transformation, but also other frequency transformations.

The algorithm of embedding into the DFT phase spectrum is given in [4]. This transformation is applied to cover image’s blocks 8 × 8 pixels. 16 bits of the secret message are embedded into the phase spectrum of each block. The modified differential phase-shift keying is used for the embedding process. For this purpose the phase values of the blocks pairs are compared and their differences are calculated. The certain intervals of the differential values correspond to «0» or «1» bits of the secret message. To establish the necessary differences between the phase values of the current and the previous blocks, the phase values of the current block are changed.

The algorithm in [5] is based on the DWT. The embedding area is the middle-frequency sub-band LH2 received after two DWT-iterations. One bit of the secret message is embedded into the block consisting of k DWT-coefficients. In the embedding process the energy of the block’s coefficients is changed by using the matrix operations. Depending on an embedded bit the summary coefficients energy should be comparable with the certain value on the module S, where S — an in-out parameter of the algorithm. The specified reception is similar to the vector quantization. To increase the embedding quality the authors of this paper apply the optimization methods for the matrix functions.

In [24] embedding into the WHT frequency domain is done. For this purpose the image is divided into the blocks 4 × 4 pixels and the WHT is applied to each block. The embedding algorithm is constructed by using the linear predictor function. In [11] the similar reception is used during the embedding process into the spatial domain. In this case values of the WHT’s AC-coefficients of each block are predicted on the basis of the DC-coefficients values of 8 adjacent blocks. The message bits are embedded into the prediction errors by using the LSB method. The DC-coefficients don’t change during the embedding process therefore the AC-coefficients prediction can be repeated at a stage of the message extraction. The distinctive feature of this algorithm is utilization of the neural networks for finding weight factors of the linear function of prediction.

The algorithms, provided in the papers mentioned above, have rather high capacity and allow to realize embedding of arbitrary messages and a special type of messages. The other class of algorithms realizes the digital watermarks embedding into the digital images frequency domain. Usually digital watermarks are the data sequences of fixed small length, therefore in this case high embedding capacity isn’t required.

Many algorithms of the digital watermarks embedding are based on the discrete Fourier transformation. Many of them deal with elements of amplitude Fourier spectrum.

In case of the algorithm described in [3] the space of hiding is formed of the middle frequency elements that are within a ring zone of the given width on the complex plan. In order to embed one bit of a secret message a pair of symmetric elements are changed in such a way that their difference depends on the bit.

In [32] there is described the algorithm of digital watermarks embedding. The digital watermark is formed with the help of a pseudo random key sequence and looks like amplitude Fourier spectrum which elements with values from the set {−1, 1} makes a ring in the space of middle frequencies. The authors says that the property of the ring symmetry of the digital watermark provide stability in case of geometry attack like «turn of image». The embedding operation is realized by two methods – additive and multiplicative.

The same algorithm is described in [25]. The difference — the watermark looks like a circle, not a ring and the embedding operation is additive. All elements of the digital watermark are from the set {0, 1}.

In [29] a binary digital watermark having circle symmetry is formed using log-polar mapping. In the embedding process elements of the digital image’s amplitude Fourier spectrum corresponding to the digital watermark’s elements with value «1» are recalculated by averaging within the area 3 × 3 multiplied by the amplification coefficient.

As it was noted in the introduction already, such problem as distortion of embedded message at restitution of digital image’s pixels from frequency coefficients is typical for embedding into the frequency domain. This problem is illustrated in the Fig. 1.

Fig. 1
figure 1

Distortion of message, embedded into the frequency domain of digital image

Appearance of mistakes in extracted message is bound to rounding of real values to integer, therefore a part of the embedded information is lost. When data embedding into compressed images, for example, into JPEG-image, a similar problem does not arise, because such images are stored in a view of compressed arrays of frequency coefficients. If the image is stored without compression or compressed without loss, then losses of information because of rounding leads to distortion of a frequency spectrum and partial destruction of the message.

However previous works, presented in the literature review, and other works, which did not enter in it, don’t propose any solutions of ensuring faultlessness of information embedding into the frequency domain of digital images. Within the real work we understand lack of distortions of extracted message in case of absence of external action on the filled stego-container as faultlessness. In this case the bit sequence extracted from a stego-image coincides completely with the initial bit sequence which was embedded into the image-container. External actions on information, which can arise in the process of information storage and transfer, in the research are not considered. The fact of existence of faultlessness has to be known both on the embedding party, and on the extraction party. Therefore the principle of faultlessness has to be underlain of the algorithm of information embedding.

In numerous works devoted to the information embedding into the frequency domain of digital image, the faultlessness of embedding is not provided. It can be considered admissible if it is about embedding of digital watermarks.

For algorithms of digital watermarks embedding the specified problem isn’t essential as one of the main requirements imposed to such algorithms is robustness. Robustness is reached due to excess embedding when there are made changes in a cover image while each element of a digital watermark is recorded. As a digital watermark usually have the fixed small size, it leaves the image quality at the acceptable level. However in the process of the arbitrary message embedding the significantly higher capacity is required and it doesn’t allow to use excess embedding. In the majority of the known operations of arbitrary messages hiding in the frequency domain of digital images the problem of the built-in message distortions is avoided because of information losses due to rounding. The solution of the described problem is proposed in this paper.

3 Mathematical bases: the discrete Fourier transformation

The DFT is one of the frequency transformations everywhere applied at digital images processing. The DFT of digital images is usually the two-dimensional DFT as a digital image can be described as the function of two variables f(x, y), \( x=\overline{0,\kern0.5em m-1} \), \( y=\overline{0,\kern0.5em n-1} \). The two-dimensional DFT is performed using the following formula:

$$ F\left(u,v\right)=\frac{1}{mn}\sum \limits_{x=0}^{m-1}\sum \limits_{y=0}^{n-1}f\left(x,y\right){e}^{-i2\pi \left(\frac{ux}{m}+\frac{vy}{n}\right)},u=\overline{0,m-1},v=\overline{0,n-1}. $$
(1)

The function F(u, v) is the Fourier-image of a digital image.

The inverse transition from F(u, v) to f(x, y) is carried out using a similar formula:

$$ f\left(x,y\right)=\sum \limits_{u=0}^{m-1}\sum \limits_{v=0}^{n-1}F\left(u,v\right){\mathrm{e}}^{i2\pi \left(\frac{ux}{m}+\frac{vy}{n}\right)},x=\overline{0,m-1},y=\overline{0,n-1}. $$
(2)

The multiplier \( \frac{1}{mn} \) can be used both with the direct, and with the inverse transformations, or divided into the two equal multiplicands \( \frac{1}{\sqrt{mn}} \) in the direct and the inverse transformations [13]. In this investigation the DFT implementation is used according to the formulas (1) and (2).

The DFT has a number of properties. The two-dimensional DFT and its inverse transformation are periodic in the directions u and v:

$$ F\left(u,v\right)=F\left(u+{k}_1M,v\right)=F\left(u,v+{k}_2N\right)=F\left(u+{k}_1M,v+{k}_2N\right), $$
$$ f\left(x,y\right)=F\left(x+{k}_1M,y\right)=F\left(x,y+{k}_2N\right)=F\left(x+{k}_1M,y+{k}_2N\right), $$

where k1 and k2 – integers.

The θ0 turn of f(x, y) turns F(u, v) on the same corner and vice versa.

$$ f\left(r,\theta +{\theta}_0\right)\iff F\left(\omega, \varphi +{\theta}_0\right), $$

where x = r cos θ, y = r sin θ, u = ω cos φ, v = ω sin φ.

Expression

$$ f\left(x,y\right){\left(-1\right)}^{x+y}\iff F\left(u-M/2,v-N/2\right) $$

Allows to make a shift as a result of which F(0, 0) appears in the center of the frequency rectangle set by intervals [0, M − 1], [0, N − 1]. In this paper work is conducted with uncentered transformation.

The two-dimensional DFT is complex therefore it can be expressed in polar coordinates:

$$ F\left(u,v\right)=\left|F\left(u,v\right)\right|{e}^{i\varphi \left(u,v\right)}. $$

In this regard the Fourier-image includes two components: the amplitude spectrum and the frequency spectrum. They are defined as follows:

$$ \left|F\left(u,v\right)\right|=\sqrt{{\operatorname{Re}}^2F\left(u,v\right)+{\operatorname{Im}}^2F\left(u,v\right)},u=\overline{0,m-1},v=\overline{0,n-1}, $$
(3)
$$ \varphi \left(u,v\right)=\mathrm{arctg}\left(\frac{\operatorname{Im}F\left(u,v\right)}{\operatorname{Re}F\left(u,v\right)}\right),u=\overline{0,m-1},v=\overline{0,n-1}. $$
(4)

The power spectrum is defined as

$$ P\left(u,v\right)={\left|F\left(u,v\right)\right|}^2={\operatorname{Re}}^2\left(u,v\right)+{\operatorname{Im}}^2\left(u,v\right) $$

The Fourier transformation of real function f(x, y) is interfaced symmetrically:

$$ {F}^{\ast}\left(-u,-v\right)=F\left(u,v\right). $$

If f(x, y) is imaginary, its Fourier transformation is interfaced antisymmetric:

$$ {F}^{\ast}\left(-u,-v\right)=-F\left(u,v\right). $$

As the function corresponding to a digital image f(x, y) is real, the Fourier-image of a digital image F(u, v) has the symmetry property. It means that the amplitude spectrum is an even function, and a phase spectrum — an odd function, that is

$$ \left|F\left(u,\kern0.5em v\right)\right|=\left|F\left(-u,\kern0.5em -v\right)\right|,u=\overline{0,\kern0.5em m-1},v=\overline{0,\kern0.5em n-1}, $$
(5)
$$ \varphi \left(u,v\right)=-\varphi \left(-u,-v\right),u=\overline{0,m-1},v=\overline{0,n-1}. $$
(6)

This property needs to be considered in case of the data hiding in the DFT frequency domain.

In the Fig. 2 examples of visualization of the amplitude and frequency spectrum of the DFT for the «Lenna» image and one of its blocks 8 × 8 pixels are provided.

Fig. 2
figure 2

Examples of DFT spectrums for the complete image and for its block 8 × 8 pixels

It is possible to see that the amplitude spectrum of the uniform pixels block, selected as example, contains small quantity of the expressed low frequency components, and quantity of midfrequency and high-frequency components is negligible. At the same time distribution of values of phase spectrum elements looks close to accidental for the meaningful image.

4 Main ideas of the investigation

4.1 Operation of embedding into a DFT phase spectrum

In [10] is provided the algorithm received by us earlier. This algorithm realizes the secret message embedding into the DFT phase spectrum. The choice of a phase spectrum for embedding is connected to the fact that what unlike amplitudes of the Fourier-image’s elements the phases have values within the precisely certain interval (−π; π) irrespective of a cover image. It is convenient to use this property while setting the embedding operation.

A cover image is divided into not crossing blocks 8 × 8 pixels, the DFT is applied to each block and the phase spectrum is calculated φ(u, v), \( u=\overline{0,7} \), \( v=\overline{0,7} \). One element of the phase spectrum is used for embedding of secret message’s one bit.

The embedding procedure is defined as follows. Two not crossed intervals (φ0 – ε, φ0 + ε) and (φ1 – ε, φ1 + ε) are selected from the interval (−π, π), where φ0, φ1 and ε — in-out parameters. Let’s call these intervals the embedding intervals. Phase values within the interval (φ0 – ε, φ0 + ε) are accepted as appropriate to bit «0», and phase values within the interval (φ1 – ε, φ1 + ε) — as appropriate to «1». For the message embedding the phase values of cover image’s blocks are sequentially managed and checked for accessory to the given embedding intervals. If the value of the phase spectrum of the next element belongs to one of the embedding intervals, then the next bit of the secret message is written into it as follows: if it is necessary to write 0, then to the phase element is appropriated value φ0, if 1 — value φ1. Low frequency elements of the phase spectrum are excluded from the bypass to avoid essential distortions of the cover image’s block.

As the DFT phase spectrum represents an odd function, if some phase value φ(u, v) change, it is necessary similarly (but with the opposite sign) to change symmetrically located phase value φ((8 − u) mod 8, (8 − v) mod 8). Therefore not all elements of the phase spectrum but only a half of them can be used for embedding. In the Fig. 3 is shown the embedding area for one block of phase values.

Fig. 3
figure 3

Embedding area in a DFT-block

The operation of secret message’s part embedding into one block of phase values can be described by the following formula:

$$ {\upvarphi}^{\hbox{'}}\left(u,v\right)=\left\{\begin{array}{ll}{\upvarphi}_0,& \mathrm{if}\ \upvarphi \left(u,v\right)\in \left({\upvarphi}_0-\upvarepsilon, {\upvarphi}_0+\upvarepsilon \right)\cup \left({\upvarphi}_1-\upvarepsilon, {\upvarphi}_1+\upvarepsilon \right)\mathrm{and}\ {m}_i=0,\\ {}{\upvarphi}_1,& \mathrm{if}\ \upvarphi \left(u,v\right)\in \left({\upvarphi}_0-\upvarepsilon, {\upvarphi}_0+\upvarepsilon \right)\cup \left({\upvarphi}_1-\upvarepsilon, {\upvarphi}_1+\upvarepsilon \right)\mathrm{and}\ {m}_i=1,\\ {}\upvarphi \left(u,v\right),& \mathrm{otherwise},\end{array}\right. $$
(7)

where φ'(u, v) — a changed phase value; mi — next bit of a secret message; \( u=1,v=\overline{3,7},u=2,v=\overline{2,7},u=3,v=\overline{1,7},u=4,v=\overline{1,4} \).

The example of a bit line embedding into one cover image’s block is provided in the Fig. 4 (this block of pixels belongs to the «Lenna» image). The change of phase values in the process of message’s bits embedding into them is implemented through turn of the radius-vector on the complex plane. It is illustrated in the Fig. 5.

Fig. 4
figure 4

Embedding of the message’s part into a phase spectrum of one cover image’s block

Fig. 5
figure 5

The change of phase values through the radius-vector turn

4.2 Iterative procedure of embedding

The main feature of the algorithm presented in [10] is faultlessness of embedding. Earlier it was noted that in the process of embedding into the frequency domain there are information losses because of the subsequent roundings at restoration of integer pixels of a digital image from a modified image. In the Fig. 6 is shown appearance of mistakes in the built-in message from the previous example. In this case is observed the loss of one of the built-in bits.

Fig. 6
figure 6

Appearance of mistakes at message extraction

The faultlessness is reached by an iterative procedure of embedding. After embedding of a message’s part into an image’s block, there is a check whether it is possible to extract all built-in bits without mistakes. For this purpose the IDFT is carried out, there is a formation of pixels values of a block, and then the DFT is anew applied, that is the situation of message extraction is imitated. If there are mistakes, they are corrected by repeated embedding of a bit line into a coefficients block received after the last DFT. Loss and inversion of a bit are corrected by repeated embedding, for elimination of false bit is made return to initial phase value. If faultless extraction isn’t reached for the set number of iterations, then amount of information, built into a block, decreases by one bit, and all procedure repeats anew.

If it isn’t possible to embed any bit of message into block, then it is marked as empty and is processed separately. All phase values of empty block’s elements are changed so that any of them didn’t get to the embedding intervals and couldn’t be interpreted as containing embedded bit.

This approach allows to avoid distortion of the message transferred in a stego-image and subsequently to extract it in an initial view. The scheme of the image block processing according to the described approach is submitted in the Fig. 7.

Fig. 7
figure 7

Iterative embedding of secret message part into a DFT-coefficients block

The orange dotted line in this figure outlined the blocks showing the procedure of iterative embedding of message’s fragment into the phase DFT-spectrum of block of pixels. At the same time it is necessary to note that this procedure is provided in the simplified look as for verification of errors’ presence in the embedded message’s fragment it is necessary to execute the following complete sequence of actions:

  • embedding of message’s fragment into phase values of the DFT-spectrum of block of pixels;

  • the inverse discrete Fourier transformation;

  • formation of block of pixels with rounding of real values to integer;

  • the discrete Fourier transformation of the created block of pixels;

  • extraction of the binary sequence from a phase spectrum;

  • comparing of the extracted binary sequence with the initial message’s fragment.

For simplification the appropriate blocks are not given in the diagram, not to overload it with excessive details and to focus on the main idea of iterative embedding.

In the Fig. 6 the example of mistakes appearance at a message extraction from a phase spectrum of the DFT has been shown. Correction of these mistakes by means of iterative embedding is illustrated in the Fig. 8.

Fig. 8
figure 8

Correction of mistakes by means of iterative embedding

4.3 Improvement of embedding quality due to elimination of high-energy blocks

For increase of embedding invisibility in [10] block classification on suitable and unsuitable for information embedding is entered. As the feature allowing to define block’s suitability for embedding serves mean value of amplitude spectrum elements of this block. Averaging is made on those amplitude spectrum elements which correspond to phase elements getting to the embedding intervals. If the calculated mean amplitude value exceeds the given parameter Acrit, then the cover image’s block is skipped, because of fact that the information embedding into it will lead to essential distortion of the stego-image. Most often unsuitable are non-uniform image blocks containing a set of small details and color hues.

Examples of blocks of various types are provided in the Fig. 9. As examples blocks 8 × 8 pixels of the image «Lenna» were used.

Fig. 9
figure 9

Examples of blocks of various types

Uniform blocks consist of pixels with close values. In the Fig. 9 the top block with Aaverage = 0.15 is almost monophonic, the lower block with Acrit = 0.39 contains smooth change of color. When embedding of 18 bits of information into both of these blocks essential distortions aren’t observed, the PSNR value turns out high and is 44.73 dB and 40.84 dB respectively. Non-uniform blocks differ in considerable dispersion of pixels’ values.

In the Fig. 9 examples of non-uniform blocks with Aaverage = 1.01 and Aaverage = 2.64 are presented. Embedding of 18 bits into these blocks causes the essential distortions noticeable with the unaided eye. The top block after embedding is visually similar to the original block and the PSNR value is 26.48 dB. Concealment of the same volume of information in the lower block «turns» it into absolutely other block, the PSNR is 19.29 dB. It is obvious that the large number of blocks with embedded information leads to considerable distortions, it has an adverse effect on quality of a stego-image in general therefore such blocks shouldn’t be used for concealment of information.

4.4 Improvement of the embedding quality due to minimization of changes quantity

Here is offered the new improved approach to data embedding into the phase spectrum of the DFT. The main idea on which the offered approach is based is in minimizing quantity of changeable phase values when embedding of message’s bits into a DFT-block.

Any block of phase values can be interpreted as containing some binary sequence depending on values of parameters φ0, φ1 and ε. When embedding of a secret message’s part in this block according to the initial approach [10] separate elements of a sequence which is already contained in it will be inverted, and others will be left without changes. For example, the phase spectrum of the pixels block shown in the Fig. 4 contains the binary sequence 00110000101111 in case of \( {\upvarphi}_0=-\frac{\uppi}{2},{\upvarphi}_1=\frac{\uppi}{2},\upvarepsilon =1 \). To build into this block the binary sequence 011111000011101 it is required to change 6 phase elements. Besides, quantity of additional changes arises in case of implementation of the iterative procedure of embedding.

It is obvious that the ratio distortion of pixels block as a result of embedding depends on quantity of changed Fourier-image’s elements. However the initial approach does not allow to vary quantity and layout of changeable phase values of the DFT-block. Bits of message register in all phase values which get to the embedding intervals, all other phase values are left without changes. Existence in the DFT-block of some initial bit sequence in this case is not considered in any way.

The quantity of changes of the DFT phase spectrum’s elements when embedding of this information volume can be reduced if message’s bits are distributed on embedding area so that the quantity of embeddable bits matching the already available bits in the block was as much as possible. For this purpose it is necessary to have an opportunity to select different variants of layout of embeddable bits in the DFT-block. Such opportunity appears if to use for the message’s bits register not just those which get to the embedding intervals, but all elements of the embedding area.

Let’s enter some designations for description of new approach to embedding.

Ψ = (Ψ1, Ψ2, …, Ψn) — sequence of phase values of embedding area presented in form of a line. The value n can be arbitrary, but in this paper is investigated the embedding area consisting of 22 elements as it is shown in the Fig. 3. A bypass order was accepted for determinancy from left to right and from top to down, that is Ψ1 = φ(3, 1), Ψ2 = φ(4, 1), Ψ3 = φ(2, 2), …, Ψ22 = φ(3, 7).

F = (f1, f2, …, fn) — auxiliary sequence of values from a set {−1, 0, 1} specifying layout in the sequence Ψ of phase values which get to the embedding intervals. Elements of this sequence are defined as follows:

$$ {f}_i=\left\{\begin{array}{ll}0,& \mathrm{if}\ {\Psi}_i\in \left({\upvarphi}_0-\upvarepsilon, {\upvarphi}_0+\upvarepsilon \right),\\ {}1,& \mathrm{if}\ {\Psi}_i\in \left({\upvarphi}_1-\upvarepsilon, {\upvarphi}_1+\upvarepsilon \right),\\ {}-1,& \mathrm{if}\ {\Psi}_i\notin \left({\upvarphi}_0-\upvarepsilon, {\upvarphi}_0+\upvarepsilon \right)\cup \left({\upvarphi}_1-\upvarepsilon, {\upvarphi}_1+\upvarepsilon \right),\end{array}\right. $$
(8)

X = (x1, x2, …, xn) — auxiliary sequence of values from the set {−1, 0, 1} specifying line items of secret message’s bits embedding into the sequence Ψ. Elements of this sequence are defined as follows:

$$ {x}_i=\left\{\begin{array}{ll}0,& \mathrm{if}\ \mathrm{zero}\ \mathrm{bit}\ \mathrm{of}\ \mathrm{a}\ \mathrm{message}\ \mathrm{is}\ \mathrm{embedded}\ \mathrm{into}\ \mathrm{a}\ \mathrm{phase}\ \mathrm{value}\ {\psi}_i,\\ {}1,& \mathrm{if}\ \mathrm{non}\ \mathrm{zero}\ \mathrm{bit}\ \mathrm{of}\ \mathrm{a}\ \mathrm{message}\ \mathrm{is}\ \mathrm{embedded}\ \mathrm{into}\ \mathrm{a}\ \mathrm{phase}\ \mathrm{value}\ {\psi}_i,\\ {}-1,& \mathrm{if}\ \mathrm{bit}\ \mathrm{of}\ \mathrm{a}\ \mathrm{message}\ \mathrm{is}\ \mathrm{not}\ \mathrm{embedded}\ \mathrm{into}\ \mathrm{a}\ \mathrm{phase}\ \mathrm{value}\ {\psi}_i.\end{array}\right. $$
(9)

Then the changed operation of a secret message’s part embedding into one block of phase values can be described by the following formula:

$$ {\uppsi}_i^{\hbox{'}}=\left\{\begin{array}{ll}{\uppsi}_i,& \mathrm{if}\ {f}_i={x}_i,\\ {}{\upvarphi}_0,& \mathrm{if}\ {f}_i\ne {x}_i\ \mathrm{and}\ {x}_i=0,\\ {}{\upvarphi}_1,& \mathrm{if}\ {f}_i\ne {x}_i\ \mathrm{and}\ {x}_i=1,\\ {}r,& \mathrm{if}\ {f}_i\ne {x}_i\ \mathrm{and}\ {x}_i=-1,\end{array}\right. $$
(10)

where \( {\uppsi}_i^{\hbox{'}} \) — changed phase value; r — accidental phase value which is not getting to the embedding intervals.

The embedding efficiency which is provided by the offered approach depends on a choice of the sequence X for each DFT-block. When embedding of k bits of a message into the DFT-block to provide the best embedding quality, it is necessary to select such variant Xk from all possible that the Hamming distance between F and Xk will be minimum.

In case of non-uniform distribution of secret message’s bits at blocks of the image-container, for each block it is necessary to realize a choice of the sequence X of a variants set differing in capacity and quantity of necessary changes. It leads to the two-criteria optimization task. In this research is considered support of the largest capacity of embedding therefore further the best variant of embedding is that which allows to embed the greatest number of secret bits in case of minimum quantity of changes.

The Fig. 10 shows several examples of formation of variants of a binary sequence’s fragment embedding into a phase spectrum of block of pixels. Each of these examples shows two sequences of 22 symbols which are compared with each other. Symbols «0» and «1» mean zero and single bit respectively, and we will call symbol «—» the empty symbol meaning lack of bit. This symbol is used in the presented examples instead of symbol «–1» for descriptive reasons.

Fig. 10
figure 10figure 10

Comparing of variants of message’s bits layout in embedding area

The top sequence F shows the binary line which is initially in the phase spectrum of block of pixels. For this matrix of phase values the sequence F is calculated by a formula (8) in the unique way. The lower sequence of symbols X represents a message’s fragment in which bits can separate from each other by empty symbols. The sequence X can be constructed variously due to change of the locations of empty symbols. At the same time the quantity of empty symbols isn’t fixed and can vary. It leads to appearance of different variants of embedding.

The quality of separately taken variant of embedding is defined by quantity of coinciding symbols of the sequences F and X. Each discrepancy means that the corresponding element of the phase spectrum has to be changed. Embedding actually can be described as replacement of the sequence F by the sequence X. In the figure below a discrepancy are highlighted by violet color.

The choice of embedding variants for the DFT-block and a message’s fragment from the previous examples is shown in the Fig. 10a. In this case the embedding variant is near optimal by default, it provides capacity in 15 bits and requires change of 6 phase values. However there is the embedding variant that provides capacity in 16 bits and requires change of 5 or 6 phase elements depending on value of additional bit. The additional bit in this case is understood as bit which follows the embedded message’s fragment and can be added to it if this fragment isn’t the last fragment of the message. From the figure it is possible to see that if this bit is zero, then it will coincide with the corresponding element of the sequence F, and the number of changes will remain equal 5. If the additional bit is «1», then it will be necessary to change the corresponding element of the sequence F, however anyway length of the embedded message’s fragment will be increased by one bit.

In the Fig. 10b variants of other bit’s sequence embedding into the same DFT-block are shown. In this case the embedding variant is not optimum by default as there is the embedding variant allowing to provide the same capacity, but requiring 5 changes instead of 7. Other embedding variant allows to reach slightly smaller capacity (14 bits instead of 15) with change only of 3 phase elements.

In certain cases separate bits of message can be placed in embedding area in several ways that leads to appearance of different embedding variants with identical capacity and quantity of necessary changes. Example of such situation are embedding variants 3 and 4 in the Fig. 10b. In this case the first zero bit can be embedded into one of two next positions. As such embedding variants give the identical number of changes, the choice of one of them can be carried out on the basis of the best PSNR value for the block of pixels.

The Fig. 7c shows, how significantly the arrangement of message’s bits in the block of rather initial bit sequence can affect block capacity. In this case embedding of the sequence 0111011110001011000100 into other DFT-block is carried out. The variant of embedding by default allows to embed only 12 bits, having made 7 replacements while other arrangement of elements of the sequence X provides the capacity of 19 bits with 8 replacements.

After formation of the sequence X a part of a secret message is embedded into the DFT-block. For achievement of faultlessness extraction the iterative procedure is used. If faultlessness cannot be reached, then other embedding variant is selected: either similar on capacity and quantity of changes, but with smaller PSNR value, or with smaller capacity, but also with smaller quantity of changes. If faultless extraction cannot be achieved even for the minimum capacity, the image-container’s block is marked as empty and processed separately.

Thus, the offered in this paper approach to faultless embedding of information into the phase spectrum of the DFT does not replace the approach offered earlier in [10], but complements it. The processing diagram of one block of the image according to the new approach is shown in the Fig. 11.

Fig. 11
figure 11

Embedding into a DFT-block with minimization of changes quantity

This scheme shows how the procedure of iterative embedding is complemented by the procedure of the choice of embedding variants directed to minimization of quantity of changeable phase elements of the DFT-block. As well as in the Fig. 7, these procedures are presented in the simplified form, not to overload the scheme by excessive details and to focus on the main features of the offered approach. At the same time the designations used on the submitted scheme correspond to the designations entered at the beginning of the section 4.4.

As it is possible to see at the Fig. 11, the procedure of iterative embedding has been modified in comparison with that its variant which is described in the section 4.2. The cycle of consecutive reduction of length of the embedded message’s fragment has been excluded from it if for a fragment of this length it is impossible to reach faultless extraction.

In the new scheme a variation of length of the embedded message’s fragment is put in the procedure of choice of embedding variants. The second stage of this procedure is the choice of p best variants of imposing of the message’s fragment on the line F. Here p is a parameter of the embedding scheme which we will call depth of search of embedding variants. This parameter determines the maximum quantity of embedding variants which will be checked regarding achievement of faultlessness of embedding. For check p best embedding variants have to be chosen. For formation of the best variants’ list any characteristic of quality counted depending on embedding capacity and necessary number of changes in the DFT-block has to be entered.

5 Offered algorithm

Further is presented the algorithm of information embedding into the DFT phase spectrum of digital images realizing the approach described in section 4.4.

Input:

Image-container; secret message; parameters of embedding intervals φ0 and φ1; parameter of a blocks choice Acrit; number of iterations τ; parameter of depth of embedding variants search p.

Output:

Stego-image; value ε.

  • Step 1. Divide the image-container into k not crossed blocks 8 × 8 pixels. If the image-container is full-color, then this dividing is carried out consistently for three color planes of the RGB model.

  • Step 2. Calculate the value ε determining width of embedding intervals \( \upvarepsilon =\frac{\uppi}{2}\cdot \frac{l}{22k} \), where l — message length. If \( \upvarepsilon >\frac{\uppi}{2} \), the message length exceeds capacity of the stego-container, interrupt the algorithm.

  • Step 3. For each of k blocks of the image-container do as follows:

  • Step 3.1. Execute the discrete Fourier transformation and calculate the average amplitude value of 22 DFT-coefficients forming an embedding area. If Aaverage > Acrit, skip the block and go to the following block.

  • Step 3.2. Create the empty list S.

  • Step 3.3. Calculate the sequence F according to formula (8) and define quantity of empty intervals in this sequence n. Here empty intervals are understood as all subsequences of this sequence consisting of elements with value −1.

  • Step 3.4. Separate 22 first bits from the secret message M = (m1, m2, …, m22).

  • Step 3.5. Calculate the quantity of various variants of imposing of the sequence M part on the sequence F according to formula v1 = (h1 + 1) ⋅ (h2 + 1) ⋅ … ⋅ (hn + 1), where hi – elements quantity in an i-th empty interval of the sequence F. On this step there is no difference between the variants assuming different placement of identical number of bits in empty intervals.

  • Step 3.6. Calculate for each of v1 variants of imposing of a sequence M part on the sequence F the characteristic of quality \( Q=\frac{s-d}{s+d} \), where s – quantity of coincided elements, d – quantity of elements which need to be changed in the embedding process.

  • Step 3.7. Search of p variants of imposing of a sequence M part on the sequence F with the greatest values of the quality characteristic Q and for each of these variants do as follows:

    • Step 3.7.1. Calculate quantity of the derivative variants differing in placement of bits in empty intervals \( {v}_2=\frac{h_1!}{b_1!\cdot \left({h}_1-{b}_1\right)!}\cdot \frac{h_2!}{b_2!\cdot \left({h}_2-{b}_2\right)!}\cdot \cdots \cdot \frac{h_n!}{b_n!\cdot \left({h}_n-{b}_n\right)!}, \) where bi – quantity of bits which shall be placed in an i-th empty interval, bi < hi⋅.

    • Step 3.7.2. For \( i=\overline{1,{v}_2} \) do as follows:

      • Step 3.7.2.1. Create the embedding variant Xi according to formula (9).

      • Step 3.7.2.2. Carry out trial embedding of a message part into the block of phase values by formula (10) according to variant of embedding and with use of the iterative procedure of embedding.

      • Step 3.7.2.3. If the variant of embedding Xi allows to realize faultless embedding with a capacity c ≠ 0, calculate the PSNR value for the initial block of pixels and for the pixels block recovered after embedding, otherwise go to the following variant of embedding.

      • Step 3.7.2.4. Add in the list S the entry containing the variant of embedding Xi, capacity c and the PSNR value.

    • Step 3.7.3. If the list S does not contain any elements, go to the following variant of superimposing of a sequence M part on the sequence F, otherwise select from the list S the embedding variant Xbest with the greatest PSNR value.

    • Step 3.7.4. Embed the binary sequence m1, m2, …, mc into the block of the phase values by formula (10) according to variant of embedding Xbest and with use of the iterative procedure of embedding.

    • Step 3.7.5. Reduce the embeddable message by c bits.

  • Step 3.8. If the list S does not contain any elements, process the block of the image-container according to processing procedure of the empty block and go to the following block.

  • Step 4. Execute the inverse discrete Fourier transformation of each of k blocks. Round the received real values for obtaining integer pixels values.

  • Step 5. Return the stego-image and end the algorithm.

The algorithms realizing the iterative procedure of embedding and the procedure of empty block processing are provided separately.

5.1 Iterative procedure of embedding

Input:

DFT-coefficients block; variant of embedding X; parameter of iterativity τ.

Output:

Changed DFT-coefficients block; block capacity c.

  • Step 1. Calculate the sequence of phase values Ψ' by formula (10) according to variant of embedding X.

  • Step 2. Execute the inverse discrete Fourier transformation.

  • Step 3. Round the received real values to integer and give to the interval [0, 255].

  • Step 4. Execute the discrete Fourier transformation.

  • Step 5. Calculate the sequence F according to formula (8).

  • Step 6. If F = X, return the changed DFT-coefficients block and the block capacity value c > 0 and end the algorithm, otherwise go to the following step.

  • Step 7. If the iterations quantity reached value τ, return the initial block of DFT-coefficients and the block capacity value c = 0 and end the algorithm, otherwise go to the following step.

  • Step 8. Execute correction of the appeared errors and go to 2.

5.2 Procedure of empty block processing

Input:

DFT-coefficients block.

Output:

Changed DFT-coefficients block.

  • Step 1. Create the sequence of phase values Ψ.

  • Step 2. Appropriate the accidental values which are not belonging to the embedding intervals to all phase values getting to the embedding intervals. If there are no phase values requiring correction, end the algorithm.

  • Step 3. Execute the inverse discrete Fourier transformation.

  • Step 4. Round the received real values to integer and give to the interval [0, 255].

  • Step 5. Execute the discrete Fourier transformation and go to 1.

The algorithm of built-in message extraction is obvious. It consists in sequential bypass of stego-image blocks in the frequency domain of the discrete Fourier transformation and in check of each block phase values on accessory to the embedding intervals.

Experimental results and their discussion are provided in the following section.

6 Experiments

For carrying out experiments in the research is used the selection of 20 grayscale images 512 × 512 pixels. Some examples are given in the Fig. 12. These images are taken from the base [31]. Besides, in separate experiments full-color versions of some test images are used.

Fig. 12
figure 12

Examples of test images

The Fig. 13 illustrates a problem of distortion of messages which are built into the phase spectrum of the discrete Fourier transformation. Embedding was carried out by means of operation (7) without correction of occurring errors. This operation is the cornerstone of the algorithm [10].

Fig. 13
figure 13

Quantity of errors in extracted messages: a values for separate test images; b ratio between errors of various types

It is possible to see that quantity of errors in extracted messages varies from 5 to 25% for different images. Such percent of losses is admissible if it is about embedding of digital watermarks, as in most cases digital watermarks have high redundancy. However if a built in message was compressed or ciphered before embedding, after extraction it cannot be recovered.

The Fig. 13b specifies the character of occurring errors. It is possible to see that the most part of erratic bits represents so-called «false» bits. Such bits appear when phase values which initially were outside of the embedding intervals are distorted and get to the embedding intervals. Errors of this kind complicate not only recovery of arbitrary messages, but also restoration of digital watermarks. If a digital watermark represents a black-white image, then appearance of «false» bits will lead to offset of this image’s parts and to appearance of excess elements. All this can distort an initial image considerably. Loss of separate bits of a digital watermark leads to the same problem.

Results of similar experiments when embedding by means of operation (10) without correction of errors are shown in the Fig. 14.

Fig. 14
figure 14

Quantity of errors in extracted messages (with minimization of quantity of changeable phase elements): a values for separate test images; b ratio between errors of various types

It is possible to see that quantity of errors for separate images became more. This results from the fact that operation (10) allows to provide the higher embedding capacity in comparison with operation (7). At the same time ratio between errors of various types changed. Quantity of lost bits became more and of «false» bits less. However share of inverted bits remained at the same level.

Thus, the made experiments show that distortions of messages which are built into the frequency domain of the discrete Fourier transformation represents a serious problem. The algorithm [10] allowed to solve this problem, but this research allowed to improve this algorithm.

Results of experiments with information embedding into test images by means of the algorithm [10] and the new improved algorithm offered in the real work are provided at the figures below. In the Fig. 15 the dependence of embedding quality on the threshold value Acrit for the algorithm [10] is shown. Parameters of the embedding algorithm were set in experiments as follows: the parameter determining the embedding intervals width ε = 1.0 rad, quantity of iterations τ = 10. The volume of a built-in information in each case corresponded to the maximum capacity of an image-container.

Fig. 15
figure 15

Dependence of embedding quality on the threshold value Acrit: a for separate test images; b average on test selection

It is possible to see that in all cases at Acrit ≤ 1.5 the embedding quality measure PSNR exceed 30 dB. Increase in the threshold Acrit leads to deterioration of a stego-image and appearance of artifacts. However this effect is observed not for all test images. At increase in the threshold Acrit quality of images which contain many small details and few uniform areas worsens. Examples of such images are «Baboon», «Barbara», «Stream&Bridge». For images with a large number of uniform areas embedding quality continues to remain at the acceptable level even at great values of Acrit. It can be seen on example of images «Airplane», «Lenna», «Peppers».

In the Fig. 16 the dependence of embedding quality on the threshold value Acrit for the new algorithm is shown. In these experiments parameters of embedding were set as follows: parameters of the embedding intervals \( {\upvarphi}_0=-\frac{\uppi}{2} \) and \( {\upvarphi}_1=\frac{\uppi}{2} \); iterations quantity τ = 10; parameter of depth of embedding variants search p = 5. Besides, the parameter ε determining width of the embedding intervals was accepted fixed and equal 1.0 rad. It was made for adequate comparing of the new algorithm with earlier developed algorithm [10]. The volume of an embeddable information in each case corresponded to maximum capacity of an image-container for this value ε.

Fig. 16
figure 16

Dependence of embedding quality on a choice of the threshold value Acrit for the new algorithm: a for separate test images; b averaged on test selection

Diagrams in the Fig. 16 have the same character, as in the Fig. 15, but differ in the best PSNR value. Improvement value account for from 0.53 to 2.15 dB for different test images in case of different values of Acrit.

Dependence of image-container’s maximum capacity on the threshold value Acrit has opposite character. This characteristic received for the algorithm [10] is shown in the Fig. 17.

Fig. 17
figure 17

Dependence of image-container’s maximum capacity on the threshold value Acrit: a for separate test images; b average on test selection

With increase in the threshold Acrit capacity increases. For uniform images noticeable increase in capacity comes to an end after the threshold Acrit reaches value 1.5–2.0. Further increase of non-uniform images capacity continues at increase in the threshold Acrit.

Thus, the algorithm presented in [10] allows to operate capacity and embedding quality due to change of parameter Acrit. At the same time results of experiments show that the value of this parameter equal 1.5, allows to provide acceptable ratio between capacity and embedding quality for all test images.

The dependence of maximum capacity of an image-container on the threshold value Acrit for the new algorithm is shown in the Fig. 18.

Fig. 18
figure 18

Dependence of image-container’s capacity on a choice of the threshold value for the new algorithm: a for separate test images; b averaged on test selection

From the provided diagrams considerable improving in comparison with the algorithm from [10] is visible. In case of small values of Acrit capacity of images-containers increased on average for 50–100%. At the same time it is possible to see that already in case of Acrit = 1.5 capacity of the majority of images-containers it is close to greatest possible. An exception is only the high-frequency image «Baboon».

In the Fig. 19 the dependence of embedding quality on volume of built-in information at the fixed value Acrit = 1.0 for the algorithm [10] is shown.

Fig. 19
figure 19

Embedding quality’s dependence on volume of built-in information: a for separate test images; b average on test selection

In the following figure the dependence of embedding quality on the volume of an embeddable information in case of the fixed value Acrit = 1.0 for the new algorithm is shown (Fig. 20).

Fig. 20
figure 20

Dependence of embedding quality on the volume of an embeddable information for the new algorithm: a for separate test images; b averaged on test selection

Improving of the PSNR value average account for 1.45 dB. For separate images also more substantial increase of embedding quality was noted. For example, for the images «Goldhill», «House», «Lenna» when embedding in them 4–8 kilobits of information the PSNR value increased more than by 4.0 dB.

In the Fig. 21 it is shown how look stego-images, received by means of the offered algorithm. As an example the «Lenna» image is used. Near with the stego-image are provided differential images which show a difference between the image-container and the stego-image. As this difference is generally insignificant, brightness of differential images has been displaced to the gray color area. The value in each case depended on length of a built-in message.

Fig. 21
figure 21

Examples of stego-images: a Acrit = 1.0, ε = 1.00; b Acrit = 0.5, ε = 0.50; c Acrit = 0.5, ε = 0.28

It is possible to see that stego-images don’t contain noticeable artifacts in all cases. Differential images also show that differences between initial images and stego-images are insignificant. It is shown on example of the «Lenna» image. For other test images the result of the corresponding experiments was similar.

Thus, the given results show that the new algorithm differs in bigger efficiency in comparison with earlier developed algorithm [10]. Both these algorithms provide faultlessness of built-in information extraction from the phase spectrum of the discrete Fourier transformation. At the same time the new algorithm differs in the best embedding quality and bigger capacity of image-containers. Important advantage of the new algorithm is that it allows to provide close to maximum embedding capacity in case of small threshold values Acrit.

7 Comparison with analogs

As analogs we consider state-of-art algorithms which, as well as our algorithm, carry out information embedding into the frequency domain of digital images without compression. Various algorithms of such type have been considered in the section 2. Various frequency transformations are the cornerstone of these algorithms: the discrete Fourier transformation, the Walsh-Hadamard transformation, the discrete cosine transformation, the discrete wavelet transformation.

Besides use of various frequency transformations the algorithms presented in the literary review differ from each other in indicators of embedding efficiency, such as capacity and obscurity of embedding. However all of them have one common fault which consists in appearance of mistakes in the embedded confidential message with the absence of external actions on the image-container. The algorithm offered in the real research is deprived of this shortcoming. It is its main advantage in comparison with other state-of-art algorithms. Further comparison of the offered algorithm with the algorithms analogs considered earlier is presented.

Earlier in the literary review it was noted that it is possible to allocate different classes of algorithms of information embedding into the frequency domain of digital images. Algorithms of digital watermarks embedding [3, 9, 25, 29, 32] belong to other class, than our algorithm. Capacity for such algorithms is usually not important and rather small. The principal requirement imposed to such algorithms is stability in relation to distortions of the image-container while such task is not set for our algorithm. Other algorithms, noted in the review, are aimed at providing of the maximum capacity of embedding that is an opposite case as the increased capacity of embedding is reached due to the lower robustness. For example, in [27, 28] the algorithms working in the field of the discrete cosine transformation and providing increased embedding capacity are provided. However the messages which are embedded by means of these algorithms are derived with the considerable distortions therefore the specified algorithms cannot be used for embedding of compressed or ciphered information.

The algorithm developed in the real research belongs to the same class, as the algorithms described in articles [4, 5].

The algorithm described in [4] works with the phase spectrum of the discrete Fourier transformation, as well as the algorithm offered in the present paper. Embedding is carried out by means of the modified differential phase-shift keying. Comparing of these algorithms was made on the example of four full-color images («Lenna», «F16», «Sailboat», «Baboon») size 512 × 512 of pixels as results of computing experiments are given in article [4] for these images. Comparing was made on each of R, G, B channels and on average in all three channels. Results of comparing in capacity and the PSNR are provided in the Table 1.

Table 1 Comparison of our algorithm with the algorithm [4]

As we can see in the Table 1, the algorithm [4] differs in rather high embedding capacity which is constant in all cases. Capacity of our algorithm is a variable and depends on characteristics of the image-container. For the «Lenna» image capacity of both algorithms can be considered comparable while for the «Baboon» image capacity of the algorithm [4] considerably exceeds capacity of the offered algorithm. The embedding quality, characterized by the PSNR, for these algorithms comparably. In two cases from four best result shows the algorithm based on application of phase-shift keying, in two ones — our algorithm based on iterative embedding. However important advantage of our algorithm is the possibility of faultless extraction of the message. The algorithm described in [4] does not give such opportunity. Higher capacity cannot be considered by advantage of this algorithm in connection with instability to embedding’s errors. Moreover, the instability to errors is put in the architecture of the algorithm [4]. It is based on the difference phase-shift keying, and because of it appearance of embedding’s errors has an avalanche effect: the error in one bit at the beginning of the message influences correctness of extraction of all subsequent bits. At the same time in case of extraction of information which is embedded by means of our algorithm, the extracted message has no differences from the initial state.

The algorithm provided in [5] has the universal character and can be used both for embedding of arbitrary messages, and for embedding of digital watermarks. The procedure of embedding of this algorithm is based on change of energy of the DWT-coefficients integrated in blocks by means of matrix operations. In the Table 2 results of comparing of the algorithm [5] with our algorithm in the PSNR for different embedding capacity are provided. The values given in the table are received by averaging of all selection of halftone test images («Lenna», «Peppers», etc.) size 512 × 512 of pixels.

Table 2 Comparison of our algorithm with the algorithm [5]

The results presented in the table show that the visual quality of the stego-image received by means of the algorithm [5] practically doesn’t depend on the number of the embedded information while the PSNR value for our algorithm gradually decreases with growth of capacity. However in both cases the quality of embedding is comparable.

At the same time the algorithm [5] doesn’t provide stability before embedding’s errors as doesn’t provide a solution of the problem of information losses because of rounding of real values to integer. In this algorithm a distribution of mistakes has no avalanche effect, therefore the level of mistakes can be accepted admissible for a case of digital watermarks. However any messages which aren’t digital watermarks will be significantly distorted.

Thus, on the basis of the carried-out comparison it is possible to make a conclusion that the algorithm offered in the present article can be compared with analogs according to such characteristics as capacity and quality of embedding. At the same time it allows to extract the embedded message without distortions that is its main advantage. This feature allows to use our algorithm when embedding of information for which faultless extraction is crucial. It can be compressed or ciphered information and also text data without additional transformations.

8 Conclusion

In this paper the new algorithm of information embedding into the phase spectrum of the discrete Fourier transformation of digital images is provided. The principal distinctive feature of this algorithm is faultlessness of built-in information extraction from the frequency domain. Faultlessness is reached through the iterative procedure of embedding and non-uniform distribution of message’s parts for blocks of the image-container. The received algorithm provides not only faultlessness, but also high visual quality of embedding. It is confirmed by high value of the PSNR. For improvement of embedding quality original approach to distribution of the embeddable message’s bits on phase elements of blocks of the image-container is used. According to this approach the message’s bits are distributed on the embedding area so that the number of the embeddable bits matching the bits which are already available in block was as much as possible. Such decision allowed to increase considerably capacity and quality of embedding in comparison with the algorithm which was earlier developed by us and is provided in [10].

Further development of our investigation will consist in use of optimization methods for improvement of embedding quality. Besides, the offered approach to faultless embedding of information into the frequency domain of digital images can be realized not only for the discrete Fourier transformation, but also for other frequency transformations. It also is one of the possible directions of further researches.