CN111163241B - Reversible information hiding method based on predicted value correlation - Google Patents

Reversible information hiding method based on predicted value correlation Download PDF

Info

Publication number
CN111163241B
CN111163241B CN201911257070.4A CN201911257070A CN111163241B CN 111163241 B CN111163241 B CN 111163241B CN 201911257070 A CN201911257070 A CN 201911257070A CN 111163241 B CN111163241 B CN 111163241B
Authority
CN
China
Prior art keywords
information
pixels
data set
prediction
method based
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911257070.4A
Other languages
Chinese (zh)
Other versions
CN111163241A (en
Inventor
常杰
朱国普
钱静
李应灿
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Institute of Advanced Technology of CAS
Original Assignee
Shenzhen Institute of Advanced Technology of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Institute of Advanced Technology of CAS filed Critical Shenzhen Institute of Advanced Technology of CAS
Priority to CN201911257070.4A priority Critical patent/CN111163241B/en
Publication of CN111163241A publication Critical patent/CN111163241A/en
Application granted granted Critical
Publication of CN111163241B publication Critical patent/CN111163241B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • H04N1/32149Methods relating to embedding, encoding, decoding, detection or retrieval operations
    • H04N1/32347Reversible embedding, i.e. lossless, invertible, erasable, removable or distorsion-free embedding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • H04N1/32149Methods relating to embedding, encoding, decoding, detection or retrieval operations
    • H04N1/32203Spatial or amplitude domain methods
    • H04N1/32229Spatial or amplitude domain methods with selective or adaptive application of the additional information, e.g. in selected regions of the image

Abstract

The application belongs to the technical field of image processing, and particularly relates to a reversible information hiding method based on predicted value correlation. The current reversible information embedding method realizes image pixel prediction based on the correlation of the distance between pixels. And realizing the prediction of the target pixel according to the characteristic that the target pixel has larger correlation with the pixel close to the target pixel. This prediction method is affected by distance and the resulting prediction accuracy is less than ideal. The method is based on a diamond prediction method, namely, the target pixels are predicted by using the average value of the target peripheral pixels, and then the original pixels are sequenced according to the sequence of the predicted values from small to large to produce a one-dimensional sequence. And finally, predicting the target pixel by utilizing the sequenced adjacent pixels, and realizing information embedding of the image based on a prediction error expansion method. Pixels with the same prediction value have larger correlation. And on the basis, the pixel prediction is realized to obtain higher prediction accuracy.

Description

Reversible information hiding method based on predicted value correlation
Technical Field
The application belongs to the technical field of image processing, and particularly relates to a reversible information hiding method based on predicted value correlation.
Background
In recent years, with the rapid development of internet technology and the popularization of digital devices such as mobile phones and computers, digital multimedia including images, texts, videos, audios and the like as information carriers are gradually recognized and accepted by the public. But at the same time, the multimedia information is easy to be maliciously tampered, copied and spread by illegal persons, and the interests of property owners are seriously damaged, so that the implementation of information security is beyond the limits of delay. The traditional encryption technology is to protect the content during the transmission of data by a sender, but after the data is received and decrypted, the data is very likely to be illegally copied and falsified. The information hiding technology is developed according to the defects in copyright protection and information security of the traditional cryptography. Reversible information hiding is an important method for information hiding. Reversible information hiding refers to a special method that an embedded carrier can completely recover after information is embedded in an image embedded in the carrier. Compared with the traditional information hiding method, reversible information hiding has stricter requirements on lossless recovery of an embedded carrier, is generally used for distortion-free protection of important images, and has important application value in military images and medical images.
The current reversible information embedding method realizes image pixel prediction based on the correlation of the distance between pixels. And realizing the prediction of the target pixel according to the characteristic that the target pixel has larger correlation with the pixel close to the target pixel. This prediction method is affected by distance and the resulting prediction accuracy is less than ideal.
Disclosure of Invention
1. Technical problem to be solved
The current reversible information embedding-based method realizes image pixel prediction based on the correlation of the distance between pixels. And realizing the prediction of the target pixel according to the characteristic that the target pixel has larger correlation with the pixel close to the target pixel. The method for predicting the reversible information of the mobile terminal is influenced by the distance, and the obtained prediction accuracy is not ideal.
2. Technical scheme
In order to achieve the above object, the present application provides a reversible information hiding method based on a predicted value correlation, the method including the following steps:
step 1: acquiring an image, and dividing the image into a first data set and a second data set, wherein the first data set and the second data set are arranged alternately;
step 2: predicting a target pixel in the first data set to obtain a predicted value;
and step 3: calculating the complexity of the target pixel;
and 4, step 4: rearranging original pixels and complexity based on the sequence of the predicted values from small to large, setting a judgment threshold T of the image complexity, and selecting pixels with the complexity smaller than T from the sorted pixels for prediction;
and 5: embedding information when the error value is 0, and recording the position of finishing embedding after embedding half of the information;
step 6: and repeating the step 2-5, embedding the other half of information into the second data set, and recording the position of finishing embedding.
Another embodiment provided by the present application is: the second data set is processed in the same way as the first data set in the step 1.
Another embodiment provided by the present application is: the predicted value in the step 2 is
Figure GDA0002316754020000021
Figure GDA0002316754020000022
Where floor (x) denotes that x is rounded down, and a, b, c, d are the four pixel values nearest to the target pixel P.
Another embodiment provided by the present application is: the complexity in said step 3 is NL,
NL=|a-d|+|b-c|+|a+c-b-d|+|c+d-a-b|。
another embodiment provided by the present application is: in the step 4, the prediction is realized by performing smooth movement on the screened pixels according to the window size of 1 × n (n ∈ (3, 20)).
Another embodiment provided by the present application is: the prediction error
Figure GDA0002316754020000023
Figure GDA0002316754020000024
Is a predicted value.
Another embodiment provided by the present application is: in the step 5, the embedded information is i, i is 0 or 1, and the prediction error after the information is embedded is e'.
Another embodiment provided by the present application is: further comprising extracting information, said information extraction processing said second data set first.
Another embodiment provided by the present application is: the method further comprises the steps of:
and 7: predicting a target pixel in the second data set to obtain a predicted value, and calculating the complexity of the target pixel;
and 8: sorting original pixels according to the sequence of the predicted values from small to large, and screening out pixels with complexity < T for information extraction;
and step 9: and 7, repeating the steps 7 and 8, finishing the extraction of the first data set information, and finally restoring to the original image.
Another embodiment provided by the present application is: and in the step 8, the information extraction is to extract the information in the screened pixels in a reverse order according to the end position of the second data set.
3. Advantageous effects
Compared with the prior art, the reversible information hiding method based on the correlation of the predicted values has the advantages that:
according to the reversible information hiding method based on the correlation of the predicted values, pixel prediction is achieved by crossing the correlation of the distances among the pixels, prediction accuracy is improved, embedding capacity is improved, and distortion degree is reduced.
According to the reversible information hiding method based on the correlation of the predicted values, the correlation between the pixels with the same predicted values is larger. And on the basis, the pixel prediction is realized to obtain higher prediction accuracy.
Drawings
FIG. 1 is a schematic representation of the image obtained in step 1 of the present application;
FIG. 2 is a schematic diagram of the pixel prediction process of the present application;
FIG. 3 is a schematic diagram of the pixel prediction reverse order process of the present application;
figure 4 is a graph comparing the results of the barbarbara test of the present application with the prior art.
Detailed Description
Hereinafter, specific embodiments of the present application will be described in detail with reference to the accompanying drawings, and it will be apparent to those skilled in the art from this detailed description that the present application can be practiced. Features from different embodiments may be combined to yield new embodiments, or certain features may be substituted for certain embodiments to yield yet further preferred embodiments, without departing from the principles of the present application.
Reversible information hiding method based on predicted value correlation and based on prediction error expansion
According to the correlation of adjacent pixels, the adjacent pixels are adopted to predict the current pixel x to obtain a predicted value
Figure GDA0002316754020000031
The prediction error p is then:
Figure GDA0002316754020000032
when the prediction error is 0, the embedded information i, i is 0 or 1, and the other prediction error values are shifted, specifically:
Figure GDA0002316754020000033
the pixels after embedding the information are:
Figure GDA0002316754020000034
extracting the embedded information i as follows:
Figure GDA0002316754020000035
restore original pixel values:
Figure GDA0002316754020000036
thus, the embedding and extraction of information can be realized, and the original image can be restored.
Referring to fig. 1 to 4, the present application provides a reversible information hiding method based on a predicted value correlation, including the following steps:
step 1: acquiring an image, and dividing the image into a first data set and a second data set, wherein the first data set and the second data set are arranged alternately;
step 2: predicting a target pixel in the first data set to obtain a predicted value;
and step 3: calculating the complexity of the target pixel;
and 4, step 4: rearranging original pixels and complexity based on the sequence of the predicted values from small to large, wherein the arranged pixels are one-dimensional vectors; selecting pixels with complexity smaller than T from the sorted pixels for prediction;
and 5: embedding information when the error value is 0, and recording the position of finishing embedding after embedding half of the information;
step 6: and repeating the step 2-5, embedding the other half of information into the second data set, and recording the position of finishing embedding.
The image is divided into non-overlapping blue and white two-part datasets in a checkerboard fashion as shown in figure 1. The processing method of the two data sets of blue and white is the same, and the gray data set is taken as an example here to describe the whole embedding process. The embedded information is divided equally into two parts, one part being embedded in the gray dataset and the other part being embedded in the white dataset.
Further, the second data set in step 1 is processed in the same way as the first data set.
Further, the predicted value in the step 2 is
Figure GDA0002316754020000041
Figure GDA0002316754020000042
Where floor (x) denotes that x is rounded down.
Further, the complexity in step 3 is NL,
NL=|a-d|+|b-c|+|a+c-b-d|+|c+d-a-b|。
further, the prediction in step 4 is to perform smooth motion on the filtered pixels according to the window size of 1 × n (n ∈ (3,20)), so as to realize the prediction of the pixels. The filtered pixels are smoothly shifted by a window size of 1 x n (n e (3, 20)). Fig. 2 is a window with n-5, where pixel p1 uses 5 pixels in window 1 for prediction, pixel p2 uses 5 pixels in window 2 for prediction, and so on to achieve prediction of other pixels. The set of pixels within the window is denoted by C. C ═ C (C1, C2, …, C5).
Further, the prediction error
Figure GDA0002316754020000043
Figure GDA0002316754020000044
Is a predicted value.
Let the predicted value be
Figure GDA0002316754020000045
Then
Figure GDA0002316754020000046
Is composed of
Case 1: max (C) ≠ min (C)
Figure GDA0002316754020000047
Case 2: max (C) ═ min (C)
Figure GDA0002316754020000048
Prediction error
Figure GDA0002316754020000049
In step 5, the embedded information is i, i is 0 or 1, and the prediction error after the information is embedded is e'.
The method comprises the following specific steps;
case 1: max (C) ≠ min (C)
Figure GDA0002316754020000051
Case 2: max (C) ═ min (C)
Figure GDA0002316754020000052
The pixel p' after embedding the information is:
Figure GDA0002316754020000053
after half of the information is embedded, the end-location 1 of the end of the embedding is recorded.
And (3) repeating the steps 2-5 for a new image formed by the modified gray data set and the unmodified white data set, embedding the other half of information in the white data set, and recording the end embedding position end _ similarity 2.
Further, the method further comprises extracting information, and the information extraction is used for processing the second data set.
The image is divided into non-overlapping blue and white two-part datasets in a checkerboard fashion as shown in figure 1. The process of extracting information of the blue and white data sets is identical, and only the sequence is changed slightly. In the information embedding process, information is embedded in the gray data set and then embedded in the white data set. Then in extracting the information, it is necessary to first extract the information in the white data set and recover the pixels in the white data set. On the basis, the information in the gray data set is extracted again to recover the pixels in the gray data. Here, white data set extraction information is taken as an example.
Further, the method comprises the following steps:
and 7: predicting a target pixel in the second data set to obtain a predicted value, and calculating the complexity of the target pixel;
and 8: sorting original pixels according to the sequence of the predicted values from small to large, and screening out pixels with complexity < T for information extraction;
and step 9: and 7, repeating the steps 7 and 8, finishing the extraction of the first data set information, and finally restoring to the original image.
Further, the information extraction in step 8 is to extract the information in the filtered pixels in a reverse order according to the end position of the second data set.
And (3) setting the pixel in the white data set as X, realizing the prediction of the pixel X in the white pixel set according to the prediction method of the embedded information by using the predicted value X, and calculating the image complexity of the pixel X according to the complexity when the information is embedded.
And sequencing the original pixels according to the sequence of the predicted values from small to large, and screening out the pixels with NL < T for information extraction. The information in the filtered pixel s' is extracted in reverse order according to the end position end _ proximity 2.
Extracting invertible information
If NL < T
Case 1: max (C) ≠ min (C)
Figure GDA0002316754020000061
The original pixel value s is
Figure GDA0002316754020000062
Case 2: max (C) ═ min (C)
Figure GDA0002316754020000063
The original pixel value s is
s′-1 s′>max(C)+1
Figure GDA0002316754020000064
The method adopts different embedding methods instead of one embedding method aiming at different image complexity, spans the obstacle of the distance between pixels, and realizes accurate prediction of the target pixel by utilizing the characteristic that the pixels with the same or similar predicted values have larger correlation. Compared with the prior art, the method improves the embedding capacity and effectively reduces the distortion degree of the image.
Specific experimental procedures and experimental results are given herein.
The data test set was derived from the SIPI data set, where standard test images Lena, Baboon, Barbara, Peppers, etc. were obtained with an image size of 512 x 512. The Peak Signal Noise Ratio (PSNR) value was used to measure the experimental effect.
The PSNR value calculation method comprises the following steps:
PSNR=10*log10(2552/MSE)
Figure GDA0002316754020000065
Xi,j,X′i,jrepresenting pixels before and after embedding information.
Different determination thresholds are set for different images. Figure 4 is a graph comparing the results of the barbarbara test of the present application with the prior art.
Through comparison of fig. 4, it is found that the method proposed by the present application is superior to the existing research method.
The method is based on a diamond prediction method, namely, the target pixels are predicted by using the average value of the target peripheral pixels, and then the original pixels are sequenced according to the sequence of the predicted values from small to large to produce a one-dimensional sequence. And finally, predicting the target pixel by utilizing the sequenced adjacent pixels, and realizing information embedding of the image based on a prediction error expansion method. Pixels with the same prediction value have larger correlation. And on the basis, the pixel prediction is realized to obtain higher prediction accuracy.
Although the present application has been described above with reference to specific embodiments, those skilled in the art will recognize that many changes may be made in the configuration and details of the present application within the principles and scope of the present application. The scope of protection of the application is determined by the appended claims, and all changes that come within the meaning and range of equivalency of the technical features are intended to be embraced therein.

Claims (10)

1. A reversible information hiding method based on predicted value correlation is characterized in that: the method comprises the following steps:
step 1: acquiring an image, and dividing the image into a first data set and a second data set, wherein the first data set and the second data set are arranged alternately;
step 2: predicting a target pixel in the first data set to obtain a predicted value;
and step 3: calculating the complexity of the target pixel;
and 4, step 4: rearranging original pixels and complexity based on the sequence of the predicted values from small to large, setting a judgment threshold T of the image complexity, and selecting pixels with the complexity smaller than T from the sorted pixels for prediction;
and 5: embedding information when the error value is 0, and recording the position of finishing embedding after embedding half of the information;
step 6: and repeating the step 2-5, embedding the other half of information into the second data set, and recording the position of finishing embedding.
2. The reversible information hiding method based on predictor correlation according to claim 1, characterized in that: the second data set is processed in the same way as the first data set in the step 1.
3. The reversible information hiding method based on predictor correlation according to claim 1, characterized in that: the predicted value in the step 2 is
Figure FDA0003147308440000011
Figure FDA0003147308440000012
Where floor (x) denotes that x is rounded down, and a, b, c, d are the four pixel values nearest to the target pixel P.
4. The reversible information hiding method based on predictor correlation according to claim 1, characterized in that: the complexity in said step 3 is NL,
NL=|a-d|+|b-c|+|a+c-b-d|+|c+d-a-b|
where a, b, c, d are the four pixel values nearest to the target pixel P.
5. The reversible information hiding method based on predictor correlation according to claim 1, characterized in that: in the step 4, the prediction is realized by performing smooth movement on the screened pixels according to the window size of 1 × n (n ∈ (3, 20)).
6. The reversible information hiding method based on predictor correlations as claimed in claim 5, characterized in that: prediction error of the prediction
Figure FDA0003147308440000013
Figure FDA0003147308440000014
Is a predicted value.
7. The reversible information hiding method based on predictor correlation according to claim 1, characterized in that: in the step 5, the embedded information is i, i is 0 or 1, and the prediction error after the information is embedded is e'.
8. The reversible information hiding method based on predictor correlation according to claim 1, characterized in that: the method further comprises extracting information, wherein the extracting information processes the second data set.
9. The reversible information hiding method based on predicted value correlation according to claim 8, wherein the information extracting process is characterized by: the method further comprises the steps of:
and 7: predicting a target pixel in the second data set to obtain a predicted value, and calculating the complexity of the target pixel;
and 8: sorting original pixels according to the sequence of the predicted values from small to large, and screening out pixels with complexity < T for information extraction;
and step 9: and 7, repeating the steps 7 and 8, finishing the data information extraction of the first data set, and finally recovering to the original image.
10. The reversible information hiding method based on predictor correlations according to claim 9, characterized in that: and in the step 8, the information extraction is to extract the information in the screened pixels in a reverse order according to the end position of the second data set.
CN201911257070.4A 2019-12-10 2019-12-10 Reversible information hiding method based on predicted value correlation Active CN111163241B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911257070.4A CN111163241B (en) 2019-12-10 2019-12-10 Reversible information hiding method based on predicted value correlation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911257070.4A CN111163241B (en) 2019-12-10 2019-12-10 Reversible information hiding method based on predicted value correlation

Publications (2)

Publication Number Publication Date
CN111163241A CN111163241A (en) 2020-05-15
CN111163241B true CN111163241B (en) 2021-08-20

Family

ID=70556642

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911257070.4A Active CN111163241B (en) 2019-12-10 2019-12-10 Reversible information hiding method based on predicted value correlation

Country Status (1)

Country Link
CN (1) CN111163241B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112528234B (en) * 2020-12-04 2023-12-19 中国科学院深圳先进技术研究院 Reversible information hiding method based on prediction error expansion
CN113099067B (en) * 2021-03-18 2022-02-22 西安交通大学 Reversible information hiding method and system based on pixel value sequencing prediction and diamond prediction

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109523453A (en) * 2018-11-02 2019-03-26 中山大学 Reversible information based on diamond shape prediction and image pixel sequence hides and extracting method
CN109741233A (en) * 2018-12-29 2019-05-10 广东工业大学 A kind of insertion and extracting method of reversible water mark
CN109949199A (en) * 2019-02-27 2019-06-28 北京交通大学 The reversible information hidden method adaptively extended based on two-dimensional prediction histogram of error
CN109948307A (en) * 2019-03-01 2019-06-28 北京交通大学 Reversible data concealing method based on pixel multi-scale prediction

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69943294D1 (en) * 1999-01-25 2011-05-05 Nippon Telegraph & Telephone Method Apparatus and program storage medium for digital watermark embedding and detection

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109523453A (en) * 2018-11-02 2019-03-26 中山大学 Reversible information based on diamond shape prediction and image pixel sequence hides and extracting method
CN109741233A (en) * 2018-12-29 2019-05-10 广东工业大学 A kind of insertion and extracting method of reversible water mark
CN109949199A (en) * 2019-02-27 2019-06-28 北京交通大学 The reversible information hidden method adaptively extended based on two-dimensional prediction histogram of error
CN109948307A (en) * 2019-03-01 2019-06-28 北京交通大学 Reversible data concealing method based on pixel multi-scale prediction

Also Published As

Publication number Publication date
CN111163241A (en) 2020-05-15

Similar Documents

Publication Publication Date Title
Kim et al. Skewed histogram shifting for reversible data hiding using a pair of extreme predictions
Al-Dmour et al. A steganography embedding method based on edge identification and XOR coding
Li et al. Efficient reversible data hiding based on multiple histograms modification
Liu et al. Neighboring joint density-based JPEG steganalysis
Dalal et al. Steganography and Steganalysis (in digital forensics): a Cybersecurity guide
Yu et al. Digital watermarking based on neural networks for color images
He et al. Reversible data hiding using multi-pass pixel value ordering and prediction-error expansion
Chamlawi et al. Authentication and recovery of images using multiple watermarks
Weng et al. Optimal PPVO-based reversible data hiding
Hong An efficient prediction-and-shifting embedding technique for high quality reversible data hiding
Weng et al. Reversible data hiding based on flexible block-partition and adaptive block-modification strategy
CN109948307B (en) Reversible data hiding method based on pixel multi-scale prediction
Rad et al. Reversible data hiding by adaptive group modification on histogram of prediction errors
Kadhim et al. Improved image steganography based on super-pixel and coefficient-plane-selection
Gao et al. Reversibility improved lossless data hiding
CN111163241B (en) Reversible information hiding method based on predicted value correlation
Lu et al. Reversible data hiding using local edge sensing prediction methods and adaptive thresholds
Chakraborty et al. A novel local binary pattern based blind feature image steganography
Chen et al. Reversible image watermarking based on a generalized integer transform
Lakshmi et al. Difference expansion based reversible watermarking algorithms for copyright protection of images: state-of-the-art and challenges
Kumar et al. A review of different prediction methods for reversible data hiding
Su et al. Reversible data hiding using the dynamic block-partition strategy and pixel-value-ordering
Weng et al. Adaptive reversible data hiding based on a local smoothness estimator
Bhatnagar et al. Reversible Data Hiding scheme for color images based on skewed histograms and cross-channel correlation
Weng et al. Reversible watermarking based on two embedding schemes

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant