A dual-image block-based image processing method, device and storage medium

By segmenting the original carrier image into blocks and calculating the absolute difference, embeddable points are marked and secret information is embedded by bit. This solves the irreversibility and distortion problems of traditional reversible information hiding algorithms, and achieves reversible image recovery and high concealment.

CN119155453BActive Publication Date: 2025-11-07SOUTH CHINA NORMAL UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411028898.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-07-30
Publication Date
2025-11-07
Estimated Expiration
2044-07-30

AI Technical Summary

Technical Problem

Traditional interpolation-based reversible information hiding algorithms suffer from irreversibility and introduce high distortion into the carrier image.

Method used

A block-based image processing method based on dual images is adopted. The original carrier image is copied into two carrier images, and each pixel block is processed. The absolute difference is calculated to mark the embeddable points. Secret information is embedded by bit, avoiding downsampling and expansion steps, and ensuring reversible image recovery.

Benefits of technology

It enables the embedding and recovery of secret information without compromising image quality, improving the stealth and security of steganography and ensuring the true reversibility of images.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119155453B_ABST
    Figure CN119155453B_ABST
Patent Text Reader

Abstract

The present application relates to a kind of double image block-based image processing method, device and storage medium, wherein the image processing method is copied into two original carrier images with two original images, each carrier image is divided into a plurality of reference pixel blocks and non-reference pixel blocks, each pixel block includes a plurality of pixel points, and the reference pixel block between two carrier images corresponds with the non-reference pixel block position of another carrier image, by calculating the absolute difference value of each pixel point in each non-reference pixel block and the average value of the pixel of its adjacent reference pixel block, to judge whether the pixel can embed secret information, and according to the absolute difference value, the number of secret information bits that this pixel can embed is calculated, and the secret information element is read according to the number of bits to complete embedding, avoids the downsampling and expansion steps used by most interpolation algorithms, so that the original carrier image and secret information can be completely recovered, so as to realize true reversibility.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of image steganography, and in particular to a block-based image processing method and device for dual images and a storage medium. BACKGROUND

[0002] Information security refers to the process of protecting information and information systems from unauthorized access, use, disclosure, destruction, modification, or destruction. Information hiding is a key technical means in this protection process. Information hiding aims to embed information in digital media such as images, audio, video, etc. so that only authorized users can access or extract the information. This technology has a wide range of applications in copyright protection, content authentication, data security, and multimedia security. Information hiding technology has developed rapidly since the late 20th century, and is mainly divided into two types: reversible information hiding and irreversible information hiding. Traditional information hiding methods embed secret information in host files, but this often comes at the expense of the integrity and recoverability of the host file. In recent years, reversible information hiding technology (RDH) has received widespread attention due to its ability to embed and recover information without loss.

[0003] Reversible information hiding technology is a data hiding method that can embed secret information into a carrier without damaging the quality of the original carrier (such as an image, audio, or video) and can completely recover the original carrier after extracting the information. This technology has important application value in the field of information security, especially in copyright protection, data security, privacy protection, etc. The core of reversible information hiding technology is "lossless" and "reversible". Lossless means that the process of embedding information does not cause any quality loss to the original carrier; reversible means that the hidden information can be extracted from the carrier without leaving any traces and the original carrier can be recovered. The goal of reversible information hiding algorithms is to embed as much secret information as possible while maintaining image quality.

[0004] In reversible information hiding technology, interpolation-based algorithms are of interest due to their ability to provide high data hiding capacity. However, traditional interpolation-based algorithms have two main problems: 1. They are not truly reversible, and 2. They introduce high distortion to the carrier image. SUMMARY

[0005] Therefore, the present application aims to provide a block-based image processing method for dual images, which at least solves one of the problems of traditional interpolation-based reversible information hiding algorithms. Specifically, the method includes the following steps:

[0006] copying the original carrier image into a first carrier image and a second carrier image;

[0007] wherein the first carrier image is stego-processed by the following steps: dividing the first carrier image into blocks, and dividing it into at least one first reference pixel block and at least one first non-reference pixel block; wherein each first reference pixel block contains a plurality of first pixel points, and each first non-reference pixel block contains a plurality of first non-reference pixel points; summing and averaging the pixel values of the first pixel points in each first reference pixel block to obtain a first pixel average value of each first reference pixel block; calculating the absolute difference between the first pixel average value in each first reference pixel block and the pixel value of each first non-reference pixel point in the adjacent first non-reference pixel block, to obtain the absolute difference value between each first non-reference pixel point and the corresponding first pixel average value; when the absolute difference value is less than a preset threshold, marking the first non-reference pixel point as a first embeddable point, and calculating the number of embeddable secret information bits of the first embeddable point; according to the number of embeddable secret information bits of each first embeddable point, extracting a corresponding number of secret information from the secret information to be embedded, and embedding the secret information into the corresponding first embeddable point, to obtain a first stego-image after all the first embeddable points embed the secret information;

[0008] The second carrier image is stego-processed by the following steps: dividing the second carrier image into blocks, and dividing it into at least one second reference pixel block and at least one second non-reference pixel block; wherein each second reference pixel block contains a plurality of second pixel points, and each second non-reference pixel block contains a plurality of second non-reference pixel points; and the positions of the second reference pixel blocks correspond to those of the first non-reference pixel blocks, and the positions of the second non-reference pixel blocks correspond to those of the first reference pixel blocks; summing and averaging the pixel values of the second pixel points in each second reference pixel block to obtain a second pixel average value of each second reference pixel block; calculating the absolute difference between the second pixel average value in each second reference pixel block and the pixel value of each second non-reference pixel point in the adjacent second non-reference pixel block, to obtain the absolute difference value between each second non-reference pixel point and the corresponding second pixel average value; when the absolute difference value is less than a preset threshold, marking the second non-reference pixel point as a second embeddable point, and calculating the number of embeddable secret information bits of the second embeddable point; according to the number of embeddable secret information bits of each second embeddable point, extracting a corresponding number of secret information from the secret information to be embedded, and embedding the secret information into the corresponding second embeddable point, to obtain a second stego-image after all the second embeddable points embed the secret information.

[0009] The original carrier image is copied into two carrier images which are the same as the original image, each carrier image is divided into reference pixel blocks and non-reference pixel blocks, each pixel block includes a plurality of pixel points, and the reference pixel blocks of the two carrier images correspond to the non-reference pixel blocks of the other carrier image, the absolute difference between each pixel point in each non-reference pixel block and the average value of the pixels in the adjacent reference pixel block is calculated to determine whether the pixel can embed secret information, and the number of secret information bits that can be embedded in the pixel is calculated according to the absolute difference, and the secret information is read according to the number of bits to complete embedding, avoiding the downsampling and expansion steps used in most interpolation algorithms, so that the original carrier image and the secret information can be completely recovered, thereby realizing true reversibility.

[0010] Further, the number of secret information bits embedded in each embeddable point is calculated by the following formula

[0011]

[0012] Wherein is the absolute difference corresponding to the embeddable point.

[0013] Further, before embedding secret information in any embeddable point, the pixel value corresponding to the embeddable point is also processed by the following formula:

[0014]

[0015] Wherein is the number of secret information bits that can be embedded in the corresponding embeddable point.

[0016] Further, embedding the secret information into the corresponding first embeddable point and / or embedding the secret information into the corresponding second embeddable point specifically includes:

[0017] The intercepted secret information is converted into a corresponding decimal number, and then the decimal number is converted into a binary number, and the binary number is compared with the corresponding first embeddable point and / or second embeddable point.

[0018] Further, the specific formula for converting the decimal number into a binary number is:

[0019]

[0020] Wherein is the decimal number to be converted.

[0021] Through this conversion method, after reading the secret information by bit number into a decimal number, the original pixel value change range [0-(2 n -1)] is changed to [-2n-1 -2 n-1 -1], after embedding in this way, the pixel change at the embedding point is small, which greatly improves the image quality and greatly enhances the stealth of image steganography.

[0022] Furthermore, it also includes image restoration steps:

[0023] All first reference pixel blocks are extracted from the first encrypted image in the manner of dividing the first carrier image into blocks, and all second reference pixel blocks are extracted from the second encrypted image in the manner of dividing the second carrier image into blocks. Based on the extracted first and second reference pixel blocks, the original carrier image is obtained.

[0024] The original carrier image is divided into blocks in the same way as the first carrier image, and the original carrier image is processed using the steganography steps of the first carrier image until the overflow prevention process is completed. Then, the first carrier image is subtracted from the processed original carrier image to obtain multiple first secret information embedded in the first secret image.

[0025] The original carrier image is divided into blocks in the same way as the second carrier image, and the original carrier image is processed using the steganography steps of the second carrier image until the overflow prevention process is completed. Then, the second carrier image is subtracted from the processed original carrier image to obtain multiple second secret information embedded in the second secret image.

[0026] Each first secret message and each second secret message is converted into a corresponding decimal number, and then each decimal number is converted into a corresponding binary number; all binary numbers are then concatenated in sequence to obtain the complete secret message.

[0027] On the other hand, based on the block-based image processing method for dual images described in any of the above claims, the present invention also provides a block-based image processing apparatus for dual images, including an image steganography unit, which includes an image copying module, a first image steganography module, and a second image steganography module.

[0028] The image copying module is used to copy the original carrier image into a first carrier image and a second carrier image;

[0029] The first image steganography module includes: a first block submodule, used to divide the first carrier image into blocks, dividing it into at least one first reference pixel block and at least one first non-reference pixel block; wherein, each first reference pixel block contains a plurality of first pixels, and each first non-reference pixel block contains a plurality of first non-reference pixels;

[0030] The first pixel average value calculation submodule is used to sum and average the pixel values ​​of the first pixel points of each first reference pixel block to obtain the first pixel average value of each first reference pixel block;

[0031] a first absolute difference value calculation sub-module, configured to calculate the absolute difference value between the first pixel average value in each first reference pixel block and the pixel value of each first non-reference pixel point in the first non-reference pixel block adjacent to the first reference pixel block;

[0032] a first embeddable point calculation sub-module, configured to, when the absolute difference value is less than a preset threshold, mark the first non-reference pixel point as a first embeddable point, and calculate the number of embeddable secret information bits of the first embeddable point;

[0033] a first image steganography sub-module, configured to extract the secret information of the corresponding number of bits from the secret information to be embedded according to the number of embeddable secret information bits of each first embeddable point, and embed the secret information into the corresponding first embeddable point, so as to obtain a first stego image after all the first embeddable points embed the secret information;

[0034] The second image steganography module comprises: a second block division sub-module, configured to divide the second carrier image into at least one second reference pixel block and at least one second non-reference pixel block; each second reference pixel block comprises a plurality of second pixel points, and each second non-reference pixel block comprises a plurality of second non-reference pixel points; the position of the second reference pixel block corresponds to the position of the first non-reference pixel block, and the position of the second non-reference pixel block corresponds to the position of the first reference pixel block;

[0035] a second pixel absolute difference value calculation module, configured to sum and average the pixel values of the second pixel points in each second reference pixel block to obtain a second pixel average value of each second reference pixel block;

[0036] a second absolute difference value calculation sub-module, configured to calculate the absolute difference value between the second pixel average value in each second reference pixel block and the pixel value of each second non-reference pixel point in the second non-reference pixel block adjacent to the second reference pixel block;

[0037] a second embeddable point calculation sub-module, configured to, when the absolute difference value is less than a preset threshold, mark the second non-reference pixel point as a second embeddable point, and calculate the number of embeddable secret information bits of the second embeddable point;

[0038] a second image steganography sub-module, configured to extract the secret information of the corresponding number of bits from the secret information to be embedded according to the number of embeddable secret information bits of each second embeddable point, and embed the secret information into the corresponding second embeddable point, so as to obtain a second stego image after all the second embeddable points embed the secret information.

[0039] Further, the image recovery unit comprises:

[0040] An original carrier image recovery module is configured to extract all first reference pixel blocks from the first carrier image in a first carrier image block manner and extract all second reference pixel blocks from the second carrier image in a second carrier image block manner, and obtain an original carrier image according to the extracted first reference pixel blocks and second reference pixel blocks.

[0041] A first information extraction module is configured to perform block processing on the original carrier image in a first carrier image block manner, and process the original carrier image according to a steganography step of the first carrier image until the anti-overflow processing is completed, and then subtract the first carrier image from the processed original carrier image to obtain a plurality of first secret information embedded in the first stego image.

[0042] A second information extraction module is configured to perform block processing on the original carrier image in a second carrier image block manner, and process the original carrier image according to a steganography step of the second carrier image until the anti-overflow processing is completed, and then subtract the second carrier image from the processed original carrier image to obtain a plurality of second secret information embedded in the second stego image.

[0043] An information conversion module is configured to convert each first secret information and each second secret information into a corresponding decimal number, and then convert each decimal number into a corresponding binary number, and sequentially splice all the binary numbers to obtain a complete secret information.

[0044] In another aspect based on the same inventive concept, the present application further provides a computer readable storage medium storing a computer program, wherein the computer program is executed by a processor to implement the steps of the double-image block-based image processing method according to any one of the above methods.

[0045] This invention uses dual images to segment and steg the secret information, storing the secret information sequentially in the pixels of the two carrier images. Based on non-overlapping block segmentation of the two carrier images, the steganographic portions of the secret information in the first and second carrier images are completely non-overlapping, facilitating rapid extraction when the secret information needs to be recovered from the carrier images. Furthermore, to prevent excessive steganography using traditional interpolation algorithms, this invention evaluates the pixels in each non-reference pixel block, only embedding the secret information into pixels that meet the embeddability criteria. The capacity of the embeddable points is calculated to write the maximum amount of secret information while ensuring both confidentiality and security. Furthermore, since the non-reference pixel blocks of the first and second carrier images completely overlap with the reference pixel blocks of the second and third carrier images when the first and second carrier images are segmented, the original carrier image can be quickly recovered by extracting the corresponding reference pixel blocks according to the segmentation order of each carrier image. Then, the original carrier image is steganized according to the steganography steps of the first and second carrier images respectively until the first embedding point and the second embedding point are respectively subjected to anti-overflow processing. At this time, the first carrier image is subtracted from the processed original carrier image to obtain multiple first secret information embedded in the first carrier image, and the second carrier image is subtracted from the processed original carrier image to obtain multiple second secret information embedded in the second carrier image. Then, the complete secret information can be recovered by performing number transformation and combination in sequence. Since it does not require lossy operations such as frequency transformation and filtering, the secret information obtained at this time is not lost, thus realizing true reversibility of steganography.

[0046] To better understand and implement this invention, the following detailed description is provided in conjunction with the accompanying drawings. Attached Figure Description

[0047] Figure 1 A flowchart of the image steganography steps of an exemplary block-based image processing method for dual images provided by the present invention;

[0048] Figure 2 To execute Figure 1 The diagram shows the structural block diagram of the image steganography unit in the image steganography step.

[0049] Figure 3 This is a schematic diagram illustrating an example of image region division;

[0050] Figure 4 A flowchart of the image restoration steps of an exemplary block-based image processing method for dual images provided by the present invention;

[0051] Figure 5 To execute Figure 4A structural block diagram of a recovery unit of the image recovery step shown in the image recovery step; DETAILED DESCRIPTION

[0052] It should be known that any image is composed of a plurality of pixels. A pixel, also known as a picture element or a pixel point, is the smallest unit of a digital image. Some existing interpolation algorithms expand the original carrier image by upsampling to increase the number of image pixels to realize image expansion, write steganographic data in the expanded image pixels, and then recover the image by downsampling during data recovery. However, some data of the original carrier image is lost during upsampling and downsampling, so the process of image steganography and recovery is not truly reversible.

[0053] For the problems found in the above research, the present application provides a block-based image processing method for two images, which includes an image steganography step and an image recovery step. The image steganography step hides secret information in two carrier images to generate two stego images. The image recovery step completely recovers the secret information and the two carrier images from the two stego images. The following two parts are used for specific description

[0054] (I) Image steganography part

[0055] Please refer to Figure 1 , Figure 1 The present application provides an exemplary flowchart of the image steganography step, Figure 2 for performing Figure 1 The structural block diagram of the image steganography unit of the image steganography step is shown. The image steganography unit is used to copy the carrier image and process the two carrier images respectively, and finally hide the secret information in the two carrier images to obtain the first stego image and the second stego image. The image steganography unit includes an image copying module 10, a first image steganography module and a second image steganography module. Specifically, the image steganography step includes:

[0056] S10: Copy the original carrier image into the first carrier image and the second carrier image; step S10 is executed by the image copying module 10.

[0057] Copy the original carrier image I(x, y) into the first carrier image I ′ (x, y) and the second carrier image I ″ (x, y), so that I ″ (x, y) = I ′ (x, y) = I(x, y).

[0058] The first image steganography module comprises a first block dividing sub-module 20.A, a first pixel average value calculating sub-module 30.A, a first absolute difference value calculating sub-module 40.A, a first embeddable point calculating sub-module 50.A and a first image steganography sub-module 60.A.

[0059] The second image steganography module comprises a second block dividing sub-module 20.B, a second pixel average value calculating sub-module 30.B, a second absolute difference value calculating sub-module 40.B, a second embeddable point calculating sub-module 50.B and a second image steganography sub-module 60.B.

[0060] In the image steganography process, the first image steganography module and the second image steganography module can be simultaneously executed, and specifically

[0061] The first block dividing sub-module 20.A performs step S20.A: dividing the first carrier image into blocks, and setting reference pixel blocks and non-reference pixel blocks according to a fixed pixel interval.

[0062] The second block dividing sub-module 20.B performs step S20.B: dividing the second carrier image into blocks, and setting reference pixel blocks and non-reference pixel blocks according to a fixed pixel interval; wherein the positions of the reference pixel blocks of the first carrier image correspond to the positions of the non-reference pixel blocks of the second carrier image.

[0063] In the present application, the first carrier image and the second carrier image are divided into non-overlapping blocks, each block containing N*M pixel points; each block of the carrier image is marked as a reference pixel block and a non-reference pixel block, only the positions of the reference pixel blocks of the first carrier image correspond to the positions of the non-reference pixel blocks of the second carrier image, and the positions of the non-reference pixel blocks of the first carrier image correspond to the positions of the reference pixel blocks of the second carrier image. Please refer to Figure 3 In order to better explain the present application, in a specific embodiment, the reference pixel blocks and the non-reference pixel blocks of each carrier image are 2*2 pixel blocks, each pixel block includes four pixel points, the non-reference pixel blocks are marked with shaded blocks, and the reference pixel blocks are marked with non-shaded blocks. P m is a non-reference pixel block, P m+1 is a reference pixel block, P m is a reference pixel block, P m+1 is a non-reference pixel block, wherein m is an odd number.

[0064] The first pixel average value calculating sub-module 30.A performs step S30.A: summing and averaging the pixel values of the first pixel points of each first reference pixel block to obtain the first pixel average value of each first reference pixel block.

[0065] The first absolute difference value calculation sub-module 40.A performs step S40.A: difference and take absolute value of the pixel value of each first non-reference pixel point of the first non-reference pixel block adjacent to the first pixel average value in each first reference pixel block, to obtain the absolute difference value of each first non-reference pixel point and the corresponding first pixel average value.

[0066] The first embeddable point calculation sub-module 50.A performs step S50.A: when the absolute difference value is less than a preset threshold, mark the first non-reference pixel point as a first embeddable point, and calculate the number of embeddable secret information bits of the first embeddable point.

[0067] The second pixel average value calculation sub-module 30.B performs step S30.B: respectively sum and average the pixel values of the second pixel points of each second reference pixel block to obtain the second pixel average value of each second reference pixel block.

[0068] The second absolute difference value calculation sub-module 40.B performs step S40.B: difference and take absolute value of the pixel value of each second non-reference pixel point of the second non-reference pixel block adjacent to the second pixel average value in each second reference pixel block, to obtain the absolute difference value of each second non-reference pixel point and the corresponding second pixel average value.

[0069] The second embeddable point calculation sub-module 50.B performs step S50.B: when the absolute difference value is less than a preset threshold, mark the second non-reference pixel point as a second embeddable point, and calculate the number of embeddable secret information bits of the second embeddable point.

[0070] In order to improve the secrecy of image steganography, secret information is not embedded in each pixel point in the non-reference image. The present application first calculates the pixel average value of each reference pixel block, and then calculates the absolute difference value of each pixel point in the non-reference pixel block adjacent to the reference pixel block and the pixel average value according to the pixel average value. Taking a first reference pixel block and its adjacent first non-reference pixel block of a first carrier image as an example, the calculation process of the absolute difference value is as follows:

[0071] First, calculate the pixel average value of the first reference pixel block

[0072]

[0073] Wherein, p m+1 (1,1), p m+1 (1,2), p m+1 (2,1), p m+1 (2,2) are the pixel values of the four pixel points in the reference pixel block.

[0074] Then, calculate the absolute difference value of each pixel point in the first non-reference pixel block Pm and the pixel average value

[0075]

[0076] wherein (x, y) ∈ {(1, 1), (1, 2), (2, 1), (2, 2)}.

[0077] Therefore is an array containing four values, the array values of which respectively correspond to the absolute difference values of the four pixel points in the non-reference pixel block and the pixel average value.

[0078] The absolute difference values of the pixel points of each non-reference pixel block are judged, and only the pixel points satisfying can be embedded with secret information. Those pixels are not used to embed secret information, so the pixel points that meet the conditions are marked as first embeddable points, but the information that each pixel point can embed is also limited. In order to ensure the secrecy after embedding information, the number of embeddable secret information bits of each embeddable point is calculated by the following formula

[0079]

[0080] wherein is the absolute difference value corresponding to the embeddable point. It is used to read the corresponding number of secret information for each embedded point, which improves the steganography efficiency.

[0081] The first image steganography sub-module 60.A performs step S60.A: according to the number of embeddable secret information bits of each first embeddable point, the corresponding number of secret information is intercepted from the secret information to be embedded, and the secret information is embedded into the corresponding first embeddable point. After all the first embeddable points embed the secret information, the first steganography image is obtained.

[0082] The second image steganography sub-module 60.B performs step S60.B: according to the number of embeddable secret information bits of each second embeddable point, the corresponding number of secret information is intercepted from the secret information to be embedded, and the secret information is embedded into the corresponding second embeddable point. After all the second embeddable points embed the secret information, the second steganography image is obtained.

[0083] According to the number of embeddable secret information bits of each embeddable point, the secret information is embedded into each embeddable point in batches, and the secret information is embedded into the embeddable points of the first carrier image and the second carrier image. From the secret information stream to be embedded bit secret information is converted into a decimal number The decimal number is converted into a binary number The preferred specific conversion formula is as follows

[0084]

[0085] Through the conversion mode, reading the secret information by bit number is converted into a decimal number, and the original pixel value change range [0-(2 n -1)] is changed to [-2 n-1 -2 n-1 -1] through parity judgment, so that after embedding, the pixel change of the embedding point is small, the image quality is greatly improved, and the secrecy of the image steganography is greatly improved.

[0086] The final pixel value after embedding is:

[0087]

[0088] At this time, the pixel value of each non-reference pixel block does not exceed the preset threshold, so its secrecy is high, and the resistance to steganographic attack is high by alternately carrying secret information through double images, so the security of steganography is also high.

[0089] In addition, in order to avoid overflow problem, the present application further includes: processing the pixel value of the embeddable point through the following formula before embedding the secret information in each embeddable point:

[0090]

[0091] Wherein is the number of embeddable secret information bits corresponding to the embeddable point.

[0092] The present application carries out segmented steganography on secret information through double images, stores the secret information in the pixel blocks of the two carrier images in sequence, and based on non-overlapping block division of the two carrier images respectively, the secret information steganography parts of the first and second carrier images are completely non-overlapping, so that the secret information can be quickly extracted when it is needed to recover the secret information from the carrier image, in addition, in order to prevent excessive information steganography of the traditional interpolation algorithm, the present application also evaluates the pixel points in each non-reference pixel block, only the pixel points meeting the embeddable condition can be embedded as embeddable points to embed secret information, and the capacity of the embeddable point is calculated, the most secret information is written under the premise of guaranteeing the secrecy and security.

[0093] (II) Image recovery part

[0094] According to the image steganography step of the image processing method, two stego images are obtained. Due to the setting of the first carrier image and the second carrier image in the block stage of the reference pixel block, the non-reference pixel block of the first carrier image corresponds to the reference pixel block of the second carrier image, and the non-reference pixel block of the second carrier image corresponds to the reference pixel block of the first carrier image, which provides great convenience for the later recovery of the original carrier image and the recovery of the secret information. Therefore, please refer to Figure 4 and Figure 5 The image processing method of the present application further comprises an image recovery step, and the image processing device further comprises an image recovery unit for quickly recovering the carrier image and the secret information from the first stego image and the second stego image. The recovery unit comprises an inverse blocking module 70, a first information extraction module 80.A, a second information extraction module 80.B, and an information conversion module 90. The image recovery step is performed by the image recovery unit, specifically:

[0095] The original carrier image recovery module 70 performs step S70: extracts all first reference pixel blocks from the first stego image in the blocking manner of the first carrier image, extracts all second reference pixel blocks from the second stego image in the blocking manner of the second carrier image, and obtains the original carrier image according to the extracted first reference pixel blocks and second reference pixel blocks.

[0096] The first information extraction module 80.A performs step S80.A: blocks the original carrier image in the blocking manner of the first carrier image, processes the original carrier image according to the steganography step of the first carrier image, until the anti-overflow processing is completed, and then subtracts the first carrier image from the processed original carrier image to obtain the plurality of first secret information embedded in the first stego image.

[0097] The second information extraction module 80.B performs step S80.B: blocks the original carrier image in the blocking manner of the second carrier image, processes the original carrier image according to the steganography step of the second carrier image, until the anti-overflow processing is completed, and then subtracts the second carrier image from the processed original carrier image to obtain the plurality of second secret information embedded in the second stego image.

[0098] After the original carrier image is recovered, the secret information needs to be recovered. Generally, the stego image information can be obtained by directly subtracting the corresponding pixel points between the images. However, due to the pixel anti-overflow processing of each embeddable point during the image steganography, the pixel points of some embeddable points have changed from the original pixels, so the image cannot be directly subtracted. At this time, the pixel points of the embeddable points are calculated by the image steganography step until the pixel values of each embeddable point after the anti-overflow processing are obtained, and then the image subtraction and the extraction of the secret information are performed. The security of the image steganography is further improved.

[0099] The extraction formula of the embedded secret information of each pixel point of the stego image is as follows:

[0100]

[0101] Where p ′ (x, y) is the pixel value of a pixel point of the original carrier image, and p(x, y) is the pixel value of the corresponding reference pixel point in the stego image.

[0102] When there is secret information, The value of is not equal to 0, and when The value of is equal to 0, which indicates that there is no secret information, so it is not necessary to down-sample the stego image to perform image transformation to extract the secret information, thereby accelerating the recovery of the secret information.

[0103] The information conversion module 90 performs step S90: converting the obtained secret information into a decimal number, and then converting the decimal number into a binary number; and sequentially splicing all the binary numbers to obtain the complete secret information.

[0104] The is converted into a decimal number according to the following formula:

[0105]

[0106] Finally, the decimal number is converted into a binary number.

[0107] ​In summary, the application carries out segmented steganography on secret information through two images, stores the secret information in pixel points of two carrier images in sequence, and based on non-overlapping block division of the two carrier images, the secret information steganography parts of the first and second carrier images are completely non-overlapping, so that the secret information can be quickly extracted when it is needed to be recovered from the carrier image. In addition, in order to prevent excessive information steganography by the traditional interpolation algorithm, the pixel points in each non-reference pixel block are evaluated, only the pixel points meeting the embeddable condition can be embedded as embeddable points, and the capacity of the embeddable points is calculated, so that the most secret information is written under the premise of ensuring secrecy and security. In addition, since the non-reference pixel blocks of the first carrier image and the reference pixel blocks of the second carrier image, and the non-reference pixel blocks of the second carrier image and the reference pixel blocks of the first carrier image are completely overlapped when the first and second carrier images are divided, as long as the corresponding reference pixel blocks are extracted according to the block division order of each carrier image, the original carrier image can be quickly recovered, and then the original carrier image is steganographed according to the steganography steps of the first carrier image and the steganography steps of the second carrier image respectively, until the first embeddable points are prevented from overflow and the second embeddable points are prevented from overflow, at this time, the first carrier image is subtracted from the processed original carrier image to obtain a plurality of first secret information embedded in the first carrier image, the second carrier image is subtracted from the processed original carrier image to obtain a plurality of second secret information embedded in the second carrier image, and then the binary conversion and combination are sequentially carried out to recover the complete secret information. Since no lossy operation such as frequency conversion and filtering is needed, the secret information obtained at this time has no loss, so that the true reversibility of steganography can be realized.

[0108] The application also provides a computer readable storage medium, which stores a computer program, and the computer program is executed by a processor to implement the block-based image processing method of the two images according to any one of the above embodiments.

[0109] The application can take the form of a computer program product implemented on one or more storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and so on) having computer readable program code embodied thereon. The computer readable storage medium includes permanent and non-permanent, removable and non-removable media, which can be implemented by any method or technology to store information. The information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read only memory (ROM), electrically erasable programmable read only memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassette, magnetic tape, magnetic disk storage or other magnetic storage device, or any other non-transmission medium that can be used to store information accessible by a computing device.

[0110] The above-described embodiments only express several embodiments of the present application, which are described in detail and specifically, but cannot be understood as a limitation on the scope of the patent. It should be noted that for those skilled in the art, without departing from the concept of the present application, a number of modifications and improvements can be made, which are within the scope of protection of the present application.

Claims

1. A block-based image processing method of dual images, characterized in that, The method comprises the following steps: copying the original carrier image to obtain a first carrier image and a second carrier image; The first carrier image is stegoed by the following steps: dividing the first carrier image into at least one first reference pixel block and at least one first non-reference pixel block; each first reference pixel block contains a plurality of first pixel points, and each first non-reference pixel block contains a plurality of first non-reference pixel points; the pixel values of the first pixel points in each first reference pixel block are averaged to obtain a first pixel average value of each first reference pixel block; the first pixel average value of each first reference pixel block is subtracted from the pixel value of each first non-reference pixel point in the adjacent first non-reference pixel block to obtain an absolute difference value between each first non-reference pixel point and the corresponding first pixel average value; when the absolute difference value is less than a preset threshold, the first non-reference pixel point is marked as a first embeddable point, and the number of embeddable secret information bits of the first embeddable point is calculated; the corresponding number of secret information bits is extracted from the secret information to be embedded according to the number of embeddable secret information bits of each first embeddable point, and the secret information is embedded into the corresponding first embeddable point, and the first stego image is obtained after all the first embeddable points are embedded with secret information. The second carrier image is stegoed by the following steps: dividing the second carrier image into at least one second reference pixel block and at least one second non-reference pixel block; each second reference pixel block contains a plurality of second pixel points, and each second non-reference pixel block contains a plurality of second non-reference pixel points; the positions of the second reference pixel block and the first non-reference pixel block correspond to each other, and the positions of the second non-reference pixel block and the first reference pixel block correspond to each other; the pixel values of the second pixel points in each second reference pixel block are averaged to obtain a second pixel average value of each second reference pixel block; the second pixel average value of each second reference pixel block is subtracted from the pixel value of each second non-reference pixel point in the adjacent second non-reference pixel block to obtain an absolute difference value between each second non-reference pixel point and the corresponding second pixel average value; when the absolute difference value is less than a preset threshold, the second non-reference pixel point is marked as a second embeddable point, and the number of embeddable secret information bits of the second embeddable point is calculated; the corresponding number of secret information bits is extracted from the secret information to be embedded according to the number of embeddable secret information bits of each second embeddable point, and the secret information is embedded into the corresponding second embeddable point, and the second stego image is obtained after all the second embeddable points are embedded with secret information.

2. The dual-image block-based image processing method of claim 1, wherein, The number of embedded secret information bits for each embeddable point is calculated by the following equation wherein is the absolute difference value for the corresponding embeddable point, P m is a non-reference pixel block, P m+1 is a reference pixel block, P m is a reference pixel block, P m+1 is a non-reference pixel block, wherein m is an odd number.

3. The dual-image block-based image processing method of claim 2, wherein, Before embedding secret information in any embeddable point, the pixel value of the corresponding embeddable point is processed by the following formula to prevent overflow: wherein is the number of embeddable secret information bits corresponding to the embeddable point.

4. The dual-image block-based image processing method of claim 3, wherein, The secret information is embedded into the corresponding first embeddable point and / or the secret information is embedded into the corresponding second embeddable point, which specifically includes: The extracted secret information is converted into a corresponding decimal number, and then the decimal number is converted into a binary number, and the binary number is embedded into the corresponding first embeddable point or second embeddable point.

5. The dual-image block-based image processing method of claim 4, wherein, The specific formula for converting the decimal number to a binary number is as follows: wherein is the decimal number that needs to be converted.

6. The dual-image block-based image processing method of claim 5, wherein, It also includes image restoration steps: All first reference pixel blocks are extracted from the first encrypted image in the manner of dividing the first carrier image into blocks, and all second reference pixel blocks are extracted from the second encrypted image in the manner of dividing the second carrier image into blocks. Based on the extracted first and second reference pixel blocks, the original carrier image is obtained. The original carrier image is divided into blocks in the same way as the first carrier image, and the original carrier image is processed using the steganography steps of the first carrier image until the overflow prevention process is completed. Then, the first secret image is subtracted from the processed original carrier image to obtain multiple first secret information embedded in the first secret image. The original carrier image is divided into blocks in the same way as the second carrier image, and the original carrier image is processed using the steganography steps of the second carrier image until the overflow prevention process is completed. Then, the second secret image is subtracted from the processed original carrier image to obtain multiple second secret information embedded in the second secret image. Each first secret message and each second secret message is converted into a corresponding decimal number, and then each decimal number is converted into a corresponding binary number; all binary numbers are then concatenated in sequence to obtain the complete secret message.

7. A dual image block-based image processing apparatus, characterized by: It includes an image steganography unit, which includes an image copying module, a first image steganography module, and a second image steganography module; The image copying module is used to copy the original carrier image into a first carrier image and a second carrier image; The first image steganography module includes: a first block submodule, used to divide the first carrier image into blocks, dividing it into at least one first reference pixel block and at least one first non-reference pixel block; wherein, each first reference pixel block contains a plurality of first pixels, and each first non-reference pixel block contains a plurality of first non-reference pixels; The first pixel average value calculation submodule is used to sum and average the pixel values ​​of the first pixel points of each first reference pixel block to obtain the first pixel average value of each first reference pixel block; The first absolute difference calculation submodule is used to calculate the difference between the first pixel average value in each first reference pixel block and the pixel value of each first non-reference pixel in its adjacent first non-reference pixel block and calculate the absolute value to obtain the absolute difference between each first non-reference pixel and the corresponding first pixel average value. The first embeddable point calculation submodule is used to mark the first non-reference pixel as the first embeddable point when the absolute difference is less than a preset threshold, and to calculate the number of embeddable secret information bits of the first embeddable point. The first image encryption submodule is used to extract the corresponding number of bits of encryption information from the encryption information to be embedded according to the number of bits of encryption information that can be embedded at each first embeddable point, and embed the encryption information into the corresponding first embeddable point. After all the first embeddable points are embedded with encryption information, the first encryption image is obtained. The second image steganography module comprises a second block sub-module, configured to block the second carrier image, so as to divide the second carrier image into at least one second reference pixel block and at least one second non-reference pixel block; wherein each second reference pixel block contains a plurality of second pixel points, and each second non-reference pixel block contains a plurality of second non-reference pixel points; the position of the second reference pixel block corresponds to the position of the first non-reference pixel block, and the position of the second non-reference pixel block corresponds to the position of the first reference pixel block; The second pixel absolute difference calculation module is configured to sum and average the pixel values of the second pixel points in each second reference pixel block, so as to obtain a second pixel average value of each second reference pixel block; The second absolute difference calculation sub-module is configured to calculate the absolute difference between the second pixel average value of each second reference pixel block and the pixel value of each second non-reference pixel point in the adjacent second non-reference pixel block, so as to obtain the absolute difference between each second non-reference pixel point and the corresponding second pixel average value; The second embeddable point calculation sub-module is configured to, when the absolute difference is less than a preset threshold, mark the second non-reference pixel point as a second embeddable point, and calculate the number of embeddable secret information bits of the second embeddable point; The second image steganography sub-module is configured to, according to the number of embeddable secret information bits of each second embeddable point, extract a corresponding number of secret information from the secret information to be embedded, and embed the secret information into the corresponding second embeddable point, so as to obtain a second stego image after all the second embeddable points embed the secret information.

8. The dual image block-based image processing apparatus of claim 7, wherein, Further comprising an image recovery unit, which comprises: The original carrier image recovery module is configured to extract all the first reference pixel blocks from the first stego image in the block manner of the first carrier image, extract all the second reference pixel blocks from the second stego image in the block manner of the second carrier image, and obtain an original carrier image according to the extracted first reference pixel blocks and second reference pixel blocks; The first information extraction module is configured to block the original carrier image in the block manner of the first carrier image, process the original carrier image according to the steganography steps of the first carrier image, until the anti-overflow processing is completed, and then subtract the first stego image from the processed original carrier image, so as to obtain a plurality of first secret information embedded in the first stego image; The second information extraction module is configured to block the original carrier image in the block manner of the second carrier image, process the original carrier image according to the steganography steps of the second carrier image, until the anti-overflow processing is completed, and then subtract the second stego image from the processed original carrier image, so as to obtain a plurality of second secret information embedded in the second stego image; The information conversion module is configured to convert each first secret information and each second secret information into a corresponding decimal number, and then convert each decimal number into a corresponding binary number; and concatenate all the binary numbers in sequence, so as to obtain complete secret information.

9. A computer-readable storage medium storing a computer program, the computer program comprising instructions that, when executed by a computer, cause the computer to perform the method of any one of claims 1 to 8. The computer program is executed by the processor to implement the steps of the block-based image processing method of the dual images according to any one of claims 1 to 6.