Vishal Monga and Prof. Brian L. Evans 2004 IEEE Int. Conference on Image Processing Robust Perceptual Image Hashing Using Feature Points Vishal Monga and Prof. Brian L. Evans October 25th , 2004 http://signal.ece.utexas.edu Embedded Signal Processing Laboratory The University of Texas at Austin Austin, TX 78712-1084 USA {vishal, bevans}@ece.utexas.edu
Database name search example Introduction Hash Example Hash function: Projects value from set with large (possibly infinite) number of members to set with fixed number of (fewer) members Irreversible Provides short, simple representation of large digital message Example: sum of ASCII codes for characters in name modulo N (= 7), a prime number Name Hash Value Ghosh 1 Monga 2 Baldick 3 Vishwanath Evans 5 Geisler Gilbert 6 Database name search example
Perceptual Hash: Desirable Properties Introduction Perceptual Hash: Desirable Properties Perceptual robustness Fragility to distinct inputs Unpredictability Necessary in security applications to minimize vulnerability against malicious attacks Symbol Meaning H(I) Hash value extracted from image I Iident Image identical in appearance to I Idiff Image clearly distinct in appearance w.r.t I m Length of hash (in bits)
Image Hashing: Motivation Introduction Image Hashing: Motivation Applications Image database search and indexing Content dependent key generation for watermarking Robust image authentication: hash must tolerate incidental modifications yet be sensitive to content changes JPEG Compressed Original Image Tampered Different hash values Same hash value h1 h2
Content Based Digital Signatures Related Work Content Based Digital Signatures Extract signature from intensity statistics Intensity histograms of image blocks [Schneider et al., 1996] Mean, variance and kurtosis of intensity values extracted from image blocks [Kailasanathan et al., 2001] Preserve coarse representations Threshold low frequency DCT coefficients [Fridrich et al., 2001] Low-res wavelet sub-bands [Mihcak & Venkatesan, 2000, 2001] Relation based methods Invariant relationship between corresponding DCT coefficients in two 8 8 blocks [Lin & Chang, 2001] Interscale relationship of wavelet coefficients [Lu & Liao, 2003]
Perceptual Image Hashing Hashing Framework Perceptual Image Hashing Two-stage hash algorithm Feature vectors extracted from “perceptually identical” images must be close in distance metric Input Image I Compression Final Hash
Hypercomplex or End-Stopped Cells End-stopping and curvature Hypercomplex or End-Stopped Cells Cells in visual cortex that help in object recognition Respond strongly to line end-points, corners and points of high curvature [Hubel et al.,1965; Dobbins, 1989] Develop filters/kernels that capture this behavior Robustness to changes in image resolution Use wavelet based approach “End-stopping and Image Geometry”, Dobbins, 1989
End-Stopped Wavelets [Vandergheynst et al., 2000] End-stopped wavelet basis Apply First Derivative of Gaussian (FDoG) operator to detect end-points of structures identified by Morlet wavelet Morlet wavelet along u frequency axis detects vertically oriented linear structures FDoG operator along v frequency axis applied on Morlet wavelet to detect end-points and corners L-shaped image Morlet End-stopped
Computing Wavelet Transform Feature Extraction Computing Wavelet Transform Generalize end-stopped wavelet Employ wavelet family Scale parameter = 2, i – scale of the wavelet Discretize orientation range [0, π] into M intervals i.e. θk = (k π/M ), k = 0, 1, … M - 1 End-stopped wavelet transform
Proposed Feature Detection Method Feature Extraction Proposed Feature Detection Method Compute wavelet transform of image I at suitably chosen scale i for several different orientations Significant feature selection: Locations (x,y) in the image that are identified as candidate feature points satisfy Avoid trivial (and fragile) features: Qualify a location as a final feature point if Randomization: Partition the image into N random regions using a secret key K, extract features from each random region Perceptual Quantization: Quantize features based on distribution (histogram) to enhance robustness
Iterative Feature Extraction Algorithm Extract feature vector f of length P from image I, quantize f perceptually to obtain a binary string bf1 (increase count*) 2. Remove “weak” image geometry: Compute 2-D order statistics (OS) filtering of I to produce Ios = OS(I;p,q,r) 3. Preserve “strong” image geometry: Perform low-pass linear shift invariant (LSI) filtering on Ios to obtain Ilp 4. Repeat step 1 with Ilp to obtain bf2 5. IF (count = MaxIter) go to step 6. ELSE IF D(bf1, bf2) < ρ go to step 6. ELSE set I = Ilp and go to step 1. 6. Set fv(I) = bf2 MaxIter, ρ, P, and count are algorithm parameters. * count = 0 to begin with fv(I) denotes quantized feature vector D(.,.) – normalized Hamming distance between its arguments
Image Features at Algorithm Convergence Feature Extraction Image Features at Algorithm Convergence Original Image JPEG, QF = 10 AWGN, σ = 10 Stirmark local geometric attack
Results: Feature Extraction Feature Vector Comparison D(fv(I), fv(Iident)) < 0.2 D(fv(I), fv(Idiff)) > 0.3 *Attack Lena Bridge Peppers JPEG, QF = 10 0.04 0.06 AWGN, σ = 20 0.03 0.02 Contrast Enhancement Gaussian Smoothing 0.01 0.05 Median Filtering 0.07 Scaling by 50% 0.08 0.14 0.11 Rotation by 20 0.12 0.15 Rotation by 50 0.18 0.20 0.19 Cropping by 10% 0.13 Cropping by 20% 0.21 0.22 0.24 Table 1. Comparison of feature vectors Normalized Hamming distance between feature vectors of original and attacked images *Attacked images generated by Stirmark benchmark software
Proposed feature point detector Feature Extraction Results: Feature Extraction Attack Thresholding of coarse wavelet coefficients (Mihcak et al.) Preserve low freq, DCT coefficients (Fridrich et al.) Proposed feature point detector JPEG, QF = 10 YES AWGN, σ = 20 Gaussian Smoothing Median Filtering NO Scaling 50% Rotation 2 degrees Cropping 10% Cropping 20% * Small object addition * Tamper with facial features YES survives attack, i.e. hash was invariant *content changing manipulations, should be detected
Highlights Invariant feature extraction Trade-offs facilitated Summary Highlights Invariant feature extraction Wavelet kernels based on cells in visual cortex Any visually robust feature point detector is a good candidate to be used with the iterative algorithm Trade-offs facilitated Robustness vs. Fragility: select feature points such that T1, T2 large enough ensures that features are retained in several attacked versions of the image, else removed easily Robustness vs. Randomization: number of random regions Until N < Nmax, robustness largely preserved else random regions shrink to the extent that they do not contain significant chunks of image geometry
Questions and Comments!
Back up slides
Conclusion & Future Work Decouple image hashing into Feature extraction and data clustering Feature point based hashing framework Iterative feature detector that preserves significant image geometry, features invariant under several attacks Trade-offs facilitated between hash algorithm goals Clustering of image features [Monga, Banerjee & Evans, 2004] Randomized clustering for secure image hashing Future Work Hashing under severe geometric attacks Provably secure image hashing?
End-Stopped Wavelet Basis Morlet wavelets [Antoine et al., 1996] To detect linear (or curvilinear) structures having a specific orientation End-stopped wavelet [Vandergheynst et al., 2000] Apply First Derivative of Gaussian (FDoG) operator to detect end-points of structures identified by Morlet wavelet x – (x,y) 2-D spatial co-ordinates ko – (k0, k1) wave-vector of the mother wavelet Orientation control – Back
Feature Vector Extraction Feature Detection Feature Vector Extraction Randomization Partition the image into N regions using k-means segmentation – extract feature points from each region Secret key K is used to generate initial guesses for the clusters (centroids of random regions) Avoid very small regions since they would not yield robust image features Back
Examples of Perceptually Identical Images Back Wavelet Decomposition Examples of Perceptually Identical Images Original Image JPEG, QF = 10 Contrast Enhanced 10% cropping 2 degree rotation 3 degree rotation
Content Changing Manipulations Feature Detection Back Content Changing Manipulations Original image Maliciously manipulated image
Outline Introduction: Motivation and applications Summary of digital signature methods Image statistics based approaches Relation based schemes (DCT/Wavelet) Perceptual hashing via image feature points Two stage hash algorithm: Feature extraction + clustering End stopped wavelets for feature detection Iterative scheme for feature extraction based on preserving significant image geometry Experimental Results Incidental and malicious attacks Conclusion & Future Work