Input: A suspicious gray-scale image . |
Output: All perceptual hash feature vectors for image |
blocks in . |
Step 1. Suspicious image is divided into |
overlapping |
blocks, denoted as , where , |
, , and |
. |
Step 2. For each block |
Step 3. The pixel mean of , denoted as , |
is computed. |
Step 4. DCT is applied to generate the coefficient |
matrix for block , denoted as . |
Step 5. The coefficient matrix is divided into |
four sub-blocks, denoted as , , , |
and , respectively. |
Step 6. The mean of the first sub-block is |
calculated, denoted as . |
Step 7. The perceptual hashing matrix for each |
sub-block is computed, denoted as |
, where . |
Step 8. Each perceptual hashing matrix is |
converted into a decimal number, denoted |
as , to represent feature value for block |
, where . |
Step 9. The feature vector of block is created, |
denoted as , |
according to its pixel mean and four |
feature values. |
Step 10. End For |