A method and system for correcting the motion vector histogram for video steganography

By calculating and using the correction function of motion vector in video steganography to divide the embedding pairs, the problem of motion vector information embedding resulting in video visual quality reduction is solved, and the embedding capacity and invisibility are improved.

CN114900700BActive Publication Date: 2025-06-10ENG UNIV OF THE CHINESE PEOPLES ARMED POLICE FORCE
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210462012.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-04-28
Publication Date
2025-06-10
Estimated Expiration
2042-04-28

AI Technical Summary

Technical Problem

When the prior art uses motion vectors to embed information in video steganography, it is easy to lead to lower video visual quality and changes in statistical characteristics, affecting the security of hidden communication.

Method used

By selecting preset specific frames and dividing them into square areas, calculating parameters such as the average value of the motion vector value, direction angle variance, etc., obtaining correction functions, and dividing embedding pairs according to these functions to achieve information embedding.

Benefits of technology

The embedding capacity and invisibility of the video steganography algorithm are improved, the steganography efficiency and concealment are enhanced, and the negative impact on the video visual quality is reduced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114900700B_ABST
    Figure CN114900700B_ABST
Patent Text Reader

Abstract

The present invention provides a method for correcting a motion vector histogram for video steganography, comprising the following steps: selecting a preset specific frame, dividing the specific frame into m square regions; obtaining a correction function according to the average value of motion vector values, the variance of motion vector direction angles, a balance coefficient, and the number m of divided regions within the specific frame; repeating the above steps until all correction functions of the specific frame are obtained; dividing the correction functions into n parts according to a preset ratio and sorting them in a preset order; obtaining correction parameters according to the sorting of the correction functions; taking the horizontal component and the vertical component of the motion vector as an embedding pair; dividing the embedding pair into multiple sets according to the embedding pair value and the correction parameters; extracting corresponding information according to the set where the motion vector is located after video decoding, and correcting the motion vector value. This method can effectively improve the embedding capacity and invisibility of a steganography algorithm using video as a carrier.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of data encryption, and particularly to a method and system for correcting a motion vector histogram for video steganography. Background Art

[0002] Current information has become an important resource for people, and the transmission of information is more important for people's lives. With the development of network technology and the popularization of various multimedia data, relying solely on cryptographic technology can no longer fully meet the requirements of current data secure communication. In order to further enrich the technical means of secure communication, information hiding technology has emerged. Information hiding technology can embed secret information into publicly available carriers to hide the behavior of secret communication from third parties. The embedded carriers can be videos, images, audio, etc. Among them, digital videos have a large amount of data and a relatively complex coding structure. Due to the absolute amount of information that can be embedded in them, steganalysis is relatively difficult. At the same time, with the popularity of short videos, information hiding technology based on videos has good performance in practical applications.

[0003] Due to the relatively complex video structure, the encoded motion vectors, DCT coefficients, inter-frame and intra-frame prediction modes, data block modes, etc. can all be used as information embedding points. Among them, using motion vectors and DCT coefficients to embed information is the current mainstream method. Motion vector data has the characteristics of strong independence, a large absolute quantity, and a relatively simple structure. Therefore, it has the characteristics of controllable security, large embedding capacity, and fast embedding speed after information embedding. However, after its modification, error accumulation and motion offset are likely to occur, thus greatly affecting the visual quality of the video.

[0004] Information embedding will reduce the video visual quality and video statistical characteristics. Especially when the amount of information embedded is too large, it will have a more serious impact on the video visual quality. At the same time, the video statistical characteristics change significantly, affecting the security of covert communication. The reason is that when information is embedded, the original encoded data and structure are greatly changed.

[0005] When a steganographer selects a histogram correction algorithm based on motion vectors in covert communication, a large-capacity histogram often selects small-value motion vectors for information embedding in design because the number of small-value motion vectors is relatively large, resulting in poor video visual quality. When the communication volume is small and there is no longer a need to embed information in too many small-value motion vectors, the histogram cannot be adjusted to improve the video visual quality either.

[0006] Therefore, it is an urgent problem for those skilled in the art to provide a method and system for correcting a motion vector histogram for video steganography that can effectively improve the embedding capacity and invisibility of steganography algorithms based on videos. Summary of the Invention

[0007] The object of the present invention is to provide a method and system for correcting the motion vector histogram for video steganography. The method has clear logic, is safe, effective, and reliable, and the system has a simple structure and is easy to operate, which can effectively improve the embedding capacity and invisibility of the steganography algorithm using video as a carrier, thereby improving the steganography efficiency and concealment.

[0008] Based on the above object, the technical solution provided by the present invention is as follows:

[0009] A method for correcting the motion vector histogram for video steganography includes the following steps:

[0010] Select a preset specific frame and divide the specific frame into m square regions;

[0011] Obtain a correction function according to the average value of the motion vector values, the variance of the motion vector direction angles, the balance coefficient, and the number m of divided regions in the specific frame;

[0012] Repeat the above steps until all correction functions of the specific frame are obtained;

[0013] Divide all correction functions of the specific frame into n parts according to a preset ratio and sort them in a preset order;

[0014] Obtain correction parameters according to the sorting of all correction functions of the specific frame;

[0015] Take the horizontal component and the vertical component of the motion vector as an embedding pair;

[0016] Divide the embedding pair into multiple sets according to the embedding pair value and the correction parameters;

[0017] Extract corresponding information according to the set where the motion vector obtained after video decoding is located, and correct the value of the motion vector.

[0018] Preferably, obtaining the average value of the motion vector values includes the following steps:

[0019] Obtain the motion vector value of the i-th macroblock according to the horizontal component and the vertical component of the motion vector;

[0020] Obtain the average value of the motion vector values according to the motion vector value and the total number of motion vectors.

[0021] Preferably, obtaining the variance of the motion vector direction angles includes the following steps:

[0022] Obtain the average value of the motion vector direction angles according to the total number of the motion vectors and the motion vector direction angle of the i-th macroblock;

[0023] Obtain the variance of the motion vector direction angle according to the motion vector direction angle of the \(i\)-th macroblock and the average value of the motion vector direction angles.

[0024] Preferably,

[0025] The balance coefficient is used to balance the proportion of the speed and direction characteristics of the motion vector in the correction function.

[0026] Preferably, the specific formula for obtaining the correction function is:

[0027]

[0028] where \(H(p)\) is the correction function of the \(p\)-th specific frame, \(\eta\) is the balance coefficient, and \(m\) is the number of divided regions within the reference frame.

[0029] Preferably,

[0030] The sorting in the preset order is specifically sorting from largest to smallest in sequence.

[0031] Preferably, the specific operation of dividing all the correction functions of the specific frame into \(n\) parts according to a preset ratio, sorting them from largest to smallest, and obtaining the correction parameters according to the sorting of all the correction functions of the specific frame is:

[0032] When \(n = 3\), divide all the correction functions of the specific frame into 3 parts according to a preset ratio, and sort them from largest to smallest as \(h(1)\), \(h(2)\), \(h(3)\);

[0033] The specific formula for the correction parameter \((k, j)\) is:

[0034]

[0035] where \(k\) is the horizontal component of the motion vector and \(j\) is the vertical component of the motion vector.

[0036] A motion vector histogram correction system for video steganography includes:

[0037] A selection module for selecting a specific frame;

[0038] A first division module for dividing the specific frame into \(m\) square regions;

[0039] A first calculation module for calculating and obtaining the correction function according to the average value of the motion vector values within the square region, the method of the motion vector direction angle, the balance coefficient, and the number \(m\) of divided regions of the specific frame;

[0040] An arrangement module for dividing all the correction functions of the specific frame into \(n\) parts according to a preset ratio and sorting them in a preset order;

[0041] A second calculation module, configured to calculate and obtain correction parameters according to the sorting of all correction functions of the specific frame;

[0042] A second partitioning module, configured to partition the embedding pairs into multiple sets according to the embedded pair values and correction parameters;

[0043] An extraction module, configured to extract corresponding information according to the set where the motion vector obtained after video decoding is located;

[0044] A correction module, configured to correct the motion vector according to the set where the motion vector obtained after video decoding is located.

[0045] The method for correcting the motion vector histogram for video steganography provided by the present invention. First, the sender selects a video as an embedding carrier, and selects a preset specific frame in the video. After selecting the specific frame, the specific frame is divided into m square regions; the average value of the motion vector values and the variance of the motion vector direction angles are obtained within a square region, and combined with the balance coefficient and the number m of the spending regions within the specific frame, correction functions are calculated and obtained; the above two steps are repeated until all correction functions of the specific frame are obtained; all correction functions of the specific frame are divided into n parts according to a preset ratio and sorted in a preset order; correction parameters are calculated and obtained according to the arranged correction functions; subsequently, the horizontal component and the vertical component in the motion vector are used as an embedding pair, and combined with the obtained correction parameters, the embedding pairs are divided into multiple non-overlapping sets; according to the set where the motion vector obtained after video decoding is located, in cooperation with the above-divided sets, corresponding information is extracted and the motion vector is restored. Since in a video, the data of several adjacent frames has a great correlation, it can be considered that the current frame can represent certain characteristics of its subsequent several frames. To improve the invisibility of the steganography algorithm, the present invention designs the correction parameters of the subsequent several frames by statistically analyzing the speed and direction characteristics of the motion vectors in the specific frame. To increase the information embedding amount, a two-dimensional histogram is selected for embedding. The two components of the motion vector, namely the horizontal component and the vertical component, are used as an embedding pair. These embedding pairs are divided into multiple non-overlapping sets according to the embedded pair values and correction parameters. Different sets correspond to different embedding algorithms, and the values of the embedding pairs are corrected according to the corresponding algorithms, realizing the embedding of information in the motion vector, and can effectively improve the embedding capacity and invisibility of the steganography algorithm with the video as the carrier. Description of the Drawings

[0046] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the following will briefly introduce the drawings required for use in the description of the embodiments or the prior art. Obviously, the drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other drawings can be obtained according to these drawings.

[0047] Figure 1 Flow chart of a motion vector histogram correction method for video steganography provided by an embodiment of the present invention;

[0048] Figure 2 Flow chart of obtaining the average value of motion vector values provided by an embodiment of the present invention;

[0049] Figure 3 Flow chart of obtaining the variance of motion vector direction angles provided by an embodiment of the present invention;

[0050] Figure 4 Structure diagram of a motion vector histogram correction system for video steganography provided by an embodiment of the present invention. Detailed implementation manners

[0051] Next, the technical solutions in the embodiments of the present invention will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention.

[0052] The embodiments of the present invention are written in a progressive manner.

[0053] The embodiments of the present invention provide a motion vector histogram correction method for video steganography. It mainly solves the technical problems in the prior art that when information is embedded in motion vectors with small values, the visual quality of the video is poor. When the communication volume is small and there is no longer a need to embed information in too many small-value motion vectors, the histogram cannot be adjusted to improve the visual quality of the video.

[0054] A motion vector histogram correction method for video steganography includes the following steps:

[0055] S1. Select a preset specific frame and divide the specific frame into m square regions;

[0056] S2. Obtain a correction function according to the average value of motion vector values, the variance of motion vector direction angles, the balance coefficient, and the number m of divided regions in the specific frame within the square region;

[0057] S3. Repeat the above steps until all correction functions of the specific frame are obtained;

[0058] S4. Divide all correction functions of the specific frame into n parts according to a preset ratio and sort them in a preset order;

[0059] S5. Obtain correction parameters according to the sorting of all correction functions of the specific frame;

[0060] S6. Take the horizontal component and the vertical component of the motion vector as an embedding pair;

[0061] S7. Divide the embedding pairs into multiple sets according to the embedding pair values and the correction parameters;

[0062] S8. Extract corresponding information according to the set where the motion vector is located after video decoding, and correct the value of the motion vector.

[0063] In step S1, select a specific frame of the input video through the reference frame transformation technique, and divide the frame into M×M regions.

[0064] In step S2, calculate and obtain the correction function H(p) according to the average value of the motion vector values, the variance of the motion vector direction angles, the balance coefficient, and the number m of divided regions within the specific frame in one of the square regions.

[0065] In step S3, repeat the above steps until all the correction functions H(p) of the specific frame are obtained.

[0066] In step S4, divide all the correction functions H(p) of the specific frame into n parts according to a preset ratio and sort them in a preset order. In this embodiment, n = 3.

[0067] In step S5, after sorting, obtain the correction parameters (k, j).

[0068] In step S6, the horizontal component and the vertical component of the motion vector are taken as an embedding pair.

[0069] In step S7, divide these embedding pairs into multiple non - overlapping sets A according to the embedding pair values and the correction parameters (k, j).

[0070] In step S8, according to the set where the motion vector is located after decoding the video, extract corresponding information and correct the value of the embedding pair (i.e., the value of the motion vector).

[0071] The present invention designs the correction parameters of several subsequent frames by statistically analyzing the speed and direction characteristics of the motion vectors in a specific frame. To increase the information embedding amount, a two - dimensional histogram is used for embedding. The two components of the motion vector, namely the horizontal component and the vertical component, are taken as an embedding pair. These embedding pairs are divided into multiple non - overlapping sets according to the embedding pair values and the correction parameters. Different sets correspond to different embedding algorithms, and the value of the embedding pair is corrected according to the corresponding algorithm, realizing the embedding of information in the motion vector, which can effectively improve the embedding capacity and invisibility of the steganography algorithm with video as the carrier.

[0072] Preferably, obtaining the average value of the motion vector values includes the following steps:

[0073] A1. Obtain the motion vector value of the i-th macroblock according to the horizontal and vertical components of the motion vector;

[0074] A2. Obtain the average value of the motion vector values according to the motion vector value and the total number of motion vectors.

[0075] In step A1, the specific formula for obtaining the motion vector value of the i-th macroblock is:

[0076] where L(i) represents the magnitude of the motion vector of the i-th macroblock in this region, mv x and mv y represent the horizontal and vertical components of the motion vector respectively.

[0077] In step A2, the specific formula for obtaining the average value of the motion vector values is:

[0078] where, represents the average value of the magnitudes of the motion vectors in the q-th region of this frame, and n represents the total number of motion vectors in this region. The value range of i is from 1 to n.

[0079] Preferably, obtaining the variance of the motion vector direction angle includes the following steps:

[0080] B1. Obtain the average value of the motion vector direction angles according to the total number of motion vectors and the motion vector direction angle of the i-th macroblock;

[0081] B2. Obtain the variance of the motion vector direction angles according to the motion vector direction angle of the i-th macroblock and the average value of the motion vector direction angles.

[0082] In step B1, the specific formula for obtaining the average value of the motion vector direction angles is:

[0083] where represents the average value of the motion vector direction angles in the q-th region of this frame, and θ(i) represents the motion vector direction angle of the i-th macroblock in this region.

[0084] In step B2, the specific formula for obtaining the variance of the motion vector direction angles is:

[0085] where D(q) represents the variance of the motion vector direction angles in the q-th region of this frame.

[0086] Preferably,

[0087] The balance coefficient is used to balance the proportion of the speed and direction characteristics of the motion vector in the correction function.

[0088] In the actual application process, the balance coefficient η is used to balance the proportion of the velocity and direction characteristics of the motion vector in the correction function.

[0089] Preferably, the specific formula for obtaining the correction function is:

[0090]

[0091] Where H(p) is the correction function of the p-th specific frame, η is the balance coefficient, and m is the number of divided regions within the reference frame.

[0092] Preferably,

[0093] The specific sorting in the preset order is in descending order.

[0094] In the actual application process, multiple orders can also be selected for the preset order. In this embodiment, for the convenience of calculation, the sorting is in descending order.

[0095] Preferably, all the correction functions of the specific frame are divided into n parts according to a preset ratio and sorted in descending order. According to the sorting of all the correction functions of the specific frame, the specific method for obtaining the correction parameters is:

[0096] When n = 3, all the correction functions of the specific frame are divided into 3 parts according to a preset ratio and sorted in descending order as h(1), h(2), h(3);

[0097] The specific formula for the correction parameter (k, j) is:

[0098]

[0099] Where k is the horizontal component of the motion vector and j is the vertical component of the motion vector.

[0100] In the actual application process, in step S7, according to the embedded pair values and the correction parameter (k, j), the specific set A in which these embedded pairs are divided into multiple non-overlapping sets A is:

[0101]

[0102] Where B 1 , B 2 are respectively 4 times the horizontal and vertical components of the motion vector.

[0103] In step S8, according to the set where the motion vector is located after decoding the video, the values of the embedded pairs are corrected specifically as:

[0104] (1) When (B 1 , B 2 ) ∈ A 1 :

[0105]

[0106] Among them, B' 1 and B' 2 respectively represent the modified B 1 , B 2 , m t and m t+1 respectively represent the secret information of the t-th bit and the (t + 1)-th bit.

[0107] (2) When (B 1 , B 2 ) ∈ A 2 :

[0108]

[0109] (3) When (B 1 , B 2 ) ∈ A 3 :

[0110]

[0111] (4) When (B 1 , B 2 ) ∈ A 4 :

[0112]

[0113] (5) When (B 1 , B 2 ) ∈ A 5 :

[0114]

[0115] (6) When (B 1 , B 2 ) ∈ A 6 :

[0116]

[0117] (7) When (B 1 , B 2 ) ∈ A 7 :

[0118]

[0119] (8) When (B 1 , B 2 ) ∈ A 8 :

[0120]

[0121] (9) When (B 1 , B 2 ) ∈ A 9 :

[0122]

[0123] (10) When (B 1 , B 2 ) ∈ A 10 ∪ A 11 ∪ A 12 ∪ A 13 ∪ A 14 ∪ A 15 ∪ A 16 ∪ A 17 ∪ A 18 : Only make corrections:

[0124]

[0125] When the corresponding information needs to be extracted, the specific set A formed is:

[0126]

[0127] Among them, B 1 , B 2 are respectively 4 times the horizontal and vertical components of the motion vector.

[0128] In step S8, according to the set where the motion vector is located after decoding the video, use the corresponding algorithm to extract information and restore the motion vector to the state before modification, specifically:

[0129] (1). When (B 1 , B 2 ) ∈ A 9 ∪ A 10 ∪ A 13 ∪ A 22 : Extract information m t = 0:

[0130]

[0131] (2). When (B 1 , B 2 ) ∈ A 11 ∪ A 12 ∪ A 25 : Extract information m t = 1:

[0132]

[0133] (3). When (B 1 , B2 ) ∈ A 1 ∪A 2 ∪A 3 ∪A 4 ∪A 21 When, extract information m t m t+1 = 00:

[0134]

[0135] (4). When (B 1 , B 2 ) ∈ A 5 ∪A 6 ∪A 7 ∪A 8 ∪A 19 When, extract information m t m t+1 = 01:

[0136]

[0137] (5). When (B 1 , B 2 ) ∈ A 14 ∪A 16 ∪A 20 ∪A 24 When, extract information m t m t+1 = 10:

[0138]

[0139] (6). When (B 1 , B 2 ) ∈ A 15 ∪A 17 ∪A 18 ∪A 23 When, extract information m t m t+1 = 11:

[0140]

[0141] (7). When (B 1 , B 2 ) ∈ A 26 ∪A 27 ∪A 28 ∪A 29 ∪A 30 ∪A 31 ∪A 32 ∪A 33 ∪A 34 When, only make corrections:

[0142]

[0143] A motion vector histogram correction system for video steganography, comprising:

[0144] A selection module for selecting a specific frame;

[0145] A first partitioning module for partitioning the specific frame into m square regions;

[0146] A first calculation module for calculating and obtaining a correction function according to the average value of the motion vector values within a square region, the motion vector direction angle method, the balance coefficient, and the number m of regions into which the specific frame is partitioned;

[0147] An arrangement module for dividing all the correction functions of the specific frame into n parts according to a preset ratio and sorting them in a preset order;

[0148] A second calculation module for calculating and obtaining correction parameters according to the sorting of all the correction functions of the specific frame;

[0149] A second partitioning module for partitioning the embedding pairs into multiple sets according to the embedding pair values and the correction parameters;

[0150] An extraction module for extracting corresponding information according to the set where the motion vector is located after video decoding;

[0151] A correction module for correcting the motion vector according to the set where the motion vector is located after video decoding.

[0152] In the actual application process, the selection module selects a specific frame from the video, and the first partitioning module partitions the specific frame into m square regions; the first calculation module calculates and obtains a correction function according to the average value of the motion vector values within one of the square regions, the motion vector direction angle method, the balance coefficient, and the number m of regions into which the specific frame is partitioned; after multiple calculations by the first calculation module, all the correction functions of the specific frame are obtained; the arrangement module divides all the correction functions of the specific frame into n parts and sorts them in a preset order; according to the sorted all the correction functions of the specific frame, the second calculation module calculates and obtains correction parameters; the second partitioning module partitions the embedding pairs into multiple sets according to the embedding pair values and the correction parameters; after video decoding, the set where the motion vector is located is obtained, and the extraction module extracts corresponding information according to this set; the correction module corrects the motion vector according to this set.

[0153] In the embodiments provided in this application, it should be understood that the disclosed methods and devices can be implemented in other ways. The device embodiments described above are merely illustrative. For example, the division of modules is only a logical function division. In actual implementation, there may be other division methods. For example, multiple modules or components can be combined, or can be integrated into another system, or some features can be ignored, or not executed. In addition, the coupling, direct coupling, or communication connection between the components shown or discussed with each other can be through some interfaces, and the indirect coupling or communication connection of devices or modules can be electrical, mechanical, or other forms.

[0154] In addition, in each embodiment of the present invention, each functional module can be fully integrated in a processor, or each module can be separately used as a device, or two or more modules can be integrated in a device; each functional module in each embodiment of the present invention can be implemented in the form of hardware, or in the form of a combination of hardware and software functional units.

[0155] Those of ordinary skill in the art can understand that all or part of the steps of implementing the above method embodiments can be completed through program instructions and related hardware. The foregoing program instructions can be stored in a computer-readable storage medium. When the program instructions are executed, the steps of the above method embodiments are executed; and the foregoing storage medium includes: various media that can store program codes such as removable storage devices, read-only memory (ROM), magnetic disks, or optical discs.

[0156] It should also be noted that in this article, relational terms such as first and second are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the term "comprising", "including" or any other variant thereof is intended to cover a non-exclusive inclusion, so that a process, method, article or device including a series of elements not only includes those elements, but also includes other elements not expressly listed, or also includes elements inherent to such process, method, article or device. Without further limitation, an element defined by the statement "including a..." does not exclude the existence of another identical element in the process, method, article or device including the element.

[0157] The above has introduced in detail a method and system for correcting a motion vector histogram for video steganography provided by the present invention. The above description of the disclosed embodiments enables those skilled in the art to implement or use the present invention. Various modifications to these embodiments will be obvious to those skilled in the art, and the general principles defined herein can be implemented in other embodiments without departing from the spirit or scope of the present invention. Therefore, the present invention will not be limited to these embodiments shown herein, but rather will be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A method for correcting the motion vector histogram for video steganography, characterized in that, it includes the following steps: Select a preset specific frame and divide the specific frame into m square regions; According to the average value of the motion vector values, the variance of the motion vector direction angles, the balance coefficient within the square region, and the number of divided regions within the specific frame m , a correction function is obtained; Repeat the above steps until all correction functions for the specific frame are obtained; Divide all the correction functions of the specific frame into n parts according to a preset ratio, and sort them in a preset order; Obtain correction parameters according to the sorting of all correction functions for the specific frame; Take the horizontal component and the vertical component of the motion vector as an embedding pair; Divide the embedding pairs into multiple sets according to the embedding pair values and the correction parameters; Extract corresponding information according to the set where the motion vector is located after video decoding, and correct the value of the motion vector; The specific formula of the correction function is: ; Among them, is the correction function of the p th specific frame, is the balance coefficient, m is the number of divided regions within the specific frame; represents the average value of the magnitude of the motion vector of the q th region within the frame; D(q) represents the variance of the direction angle of the motion vector of the q th region within the frame. Dividing the embedding pairs into multiple sets according to the embedding pair values and the correction parameters specifically includes: according to the embedding pair values and the correction parameters , dividing these embedding pairs into multiple non-overlapping sets A; The corresponding information specifically is: m t and m t+1 respectively represent the secret information of the t-th bit and the t+1 bit.

2. The method for correcting the motion vector histogram for video steganography according to claim 1, characterized in that, The steps for obtaining the average value of the motion vector values include: Obtain the motion vector value of the i th macroblock according to the horizontal and vertical components of the motion vector; Obtain the average value of the motion vector values according to the motion vector values and the total number of motion vectors.

3. The method for correcting the motion vector histogram for video steganography according to claim 2, characterized in that, The steps for obtaining the variance of the motion vector direction angle include: Obtain an average motion vector direction angle based on the total number of the motion vectors and the motion vector direction angle of the i n-th macroblock; According to the motion vector direction angle of the i th macroblock and the average value of the motion vector direction angles, obtain the variance of the motion vector direction angles.

4. The method for correcting the motion vector histogram for video steganography according to claim 2, characterized in that, The balance coefficient is used to balance the proportion of the speed and direction characteristics of the motion vector in the correction function.

5. The method for correcting the motion vector histogram for video steganography according to claim 4, characterized in that, Dividing all the correction functions of the specific frame into n parts according to a preset ratio, sorting them from largest to smallest, and obtaining the correction parameters according to the sorting of all the correction functions of the specific frame, specifically: n When = 3, all the correction functions of the specific frame are divided into three parts according to a preset ratio and sorted in descending order as and and ; Correction parameter The specific formula is as follows: ; Among them, k is the horizontal component of the motion vector, j is the vertical component of the motion vector.

6. A system for correcting the motion vector histogram for video steganography, characterized in that, it includes, A selection module for selecting a specific frame; A first partitioning module, configured to partition the specific frame into m square regions; The first calculation module is used to calculate and obtain a correction function according to the average value of motion vector values within a square region, the motion vector direction angle method, the balance coefficient, and the number of regions obtained by dividing the specific frame m , and calculate and obtain a correction function; An arrangement module, configured to divide all the correction functions of the specific frame into n parts according to a preset ratio and sort them in a preset order; A second calculation module for calculating and obtaining correction parameters according to the sorting of all correction functions for the specific frame; A second division module for dividing the embedding pairs into multiple sets according to the embedding pair values and the correction parameters; An extraction module for extracting corresponding information according to the set where the motion vector is located after video decoding; A correction module for correcting the motion vector according to the set where the motion vector is located after video decoding; The specific formula of the correction function is: ; Among them, is the correction function of the p th specific frame, is the balance coefficient, m is the number of divided regions within the specific frame; represents the average value of the magnitudes of the motion vectors of the q th region within the frame; D(q) represents the variance of the direction angles of the motion vectors of the q th region within the frame. Dividing the embedding pairs into multiple sets according to the embedding pair values and the correction parameters specifically includes: according to the embedding pair values and the correction parameters , dividing these embedding pairs into multiple non-overlapping sets A; The corresponding information specifically is: m t and m t+1 respectively represent the secret information of the t-th bit and the t+1 -th bit.

Citation Information

Patent Citations

  • Video steganography analysis method based on motion vector difference correlation

    CN106131553A

  • Video steganography algorithm based on motion vector difference

    CN106713917A