Commit 09268ae37095714dea2330fc0e67880b166597ff
1 parent
4a20967b
Exists in
master
An Algorithm-Bug ! (on absolution and clipping)
Showing
6 changed files
with
23 additions
and
14 deletions
Show diff stats
msteg/__init__.pyc
No preview for this file type
msteg/steganalysis/MPB.py
| @@ -7,9 +7,11 @@ import time | @@ -7,9 +7,11 @@ import time | ||
| 7 | import math | 7 | import math |
| 8 | import numpy as np | 8 | import numpy as np |
| 9 | 9 | ||
| 10 | -from .. import * | ||
| 11 | -from ...mjpeg import Jpeg,colorMap | ||
| 12 | -from ...common import * | 10 | +# from .. import * |
| 11 | +import mjpeg | ||
| 12 | +from msteg import * | ||
| 13 | +from mjpeg import Jpeg, colorMap | ||
| 14 | +from common import * | ||
| 13 | 15 | ||
| 14 | import csv | 16 | import csv |
| 15 | import json | 17 | import json |
| @@ -43,14 +45,14 @@ class MPB(StegBase): | @@ -43,14 +45,14 @@ class MPB(StegBase): | ||
| 43 | :param T: signed integer, usually 1~7 | 45 | :param T: signed integer, usually 1~7 |
| 44 | :return: TPM - 3-D tensor, numpy array of size (2*T+1, 2*T+1, 4) | 46 | :return: TPM - 3-D tensor, numpy array of size (2*T+1, 2*T+1, 4) |
| 45 | """ | 47 | """ |
| 46 | - ciq = np.absolute(ciq).clip(0, T) | 48 | + ciq = np.absolute(ciq) |
| 47 | TPM = np.zeros((2 * T + 1, 2 * T + 1, 4), np.float64) | 49 | TPM = np.zeros((2 * T + 1, 2 * T + 1, 4), np.float64) |
| 48 | # Fh = np.diff(ciq, axis=-1) | 50 | # Fh = np.diff(ciq, axis=-1) |
| 49 | # Fv = np.diff(ciq, axis=0) | 51 | # Fv = np.diff(ciq, axis=0) |
| 50 | - Fh = ciq[:-1, :-1] - ciq[:-1, 1:] | ||
| 51 | - Fv = ciq[:-1, :-1] - ciq[1:, :-1] | ||
| 52 | - Fd = ciq[:-1, :-1] - ciq[1:, 1:] | ||
| 53 | - Fm = ciq[:-1, 1:] - ciq[1:, :-1] | 52 | + Fh = (ciq[:-1, :-1] - ciq[:-1, 1:]).clip(-T, T) |
| 53 | + Fv = (ciq[:-1, :-1] - ciq[1:, :-1]).clip(-T, T) | ||
| 54 | + Fd = (ciq[:-1, :-1] - ciq[1:, 1:]).clip(-T, T) | ||
| 55 | + Fm = (ciq[:-1, 1:] - ciq[1:, :-1]).clip(-T, T) | ||
| 54 | 56 | ||
| 55 | Fh1 = Fh[:-1, :-1] | 57 | Fh1 = Fh[:-1, :-1] |
| 56 | Fh2 = Fh[:-1, 1:] | 58 | Fh2 = Fh[:-1, 1:] |
| @@ -101,14 +103,21 @@ class MPB(StegBase): | @@ -101,14 +103,21 @@ class MPB(StegBase): | ||
| 101 | 103 | ||
| 102 | 104 | ||
| 103 | # timer = Timer() | 105 | # timer = Timer() |
| 104 | - ciq = np.absolute(ciq).clip(0, T) | 106 | + # ciq = np.absolute(ciq).clip(0, T) # Fool !!! |
| 107 | + ciq = np.absolute(ciq) | ||
| 105 | TPM = np.zeros((2 * T + 1, 2 * T + 1, 4), np.float64) | 108 | TPM = np.zeros((2 * T + 1, 2 * T + 1, 4), np.float64) |
| 106 | # Fh = np.diff(ciq, axis=-1) | 109 | # Fh = np.diff(ciq, axis=-1) |
| 107 | # Fv = np.diff(ciq, axis=0) | 110 | # Fv = np.diff(ciq, axis=0) |
| 108 | - Fh = ciq[:-1, :-1] - ciq[:-1, 1:] | ||
| 109 | - Fv = ciq[:-1, :-1] - ciq[1:, :-1] | ||
| 110 | - Fd = ciq[:-1, :-1] - ciq[1:, 1:] | ||
| 111 | - Fm = ciq[:-1, 1:] - ciq[1:, :-1] | 111 | + |
| 112 | + # Fh = ciq[:-1, :-1] - ciq[:-1, 1:] | ||
| 113 | + # Fv = ciq[:-1, :-1] - ciq[1:, :-1] | ||
| 114 | + # Fd = ciq[:-1, :-1] - ciq[1:, 1:] | ||
| 115 | + # Fm = ciq[:-1, 1:] - ciq[1:, :-1] | ||
| 116 | + | ||
| 117 | + Fh = (ciq[:-1, :-1] - ciq[:-1, 1:]).clip(-T, T) | ||
| 118 | + Fv = (ciq[:-1, :-1] - ciq[1:, :-1]).clip(-T, T) | ||
| 119 | + Fd = (ciq[:-1, :-1] - ciq[1:, 1:]).clip(-T, T) | ||
| 120 | + Fm = (ciq[:-1, 1:] - ciq[1:, :-1]).clip(-T, T) | ||
| 112 | 121 | ||
| 113 | Fh1 = Fh[:-1, :-1].ravel() | 122 | Fh1 = Fh[:-1, :-1].ravel() |
| 114 | Fh2 = Fh[:-1, 1:].ravel() | 123 | Fh2 = Fh[:-1, 1:].ravel() |
| @@ -135,7 +144,7 @@ class MPB(StegBase): | @@ -135,7 +144,7 @@ class MPB(StegBase): | ||
| 135 | # 1.459668s | 144 | # 1.459668s |
| 136 | # timer.mark() | 145 | # timer.mark() |
| 137 | # for i in range(len(Fh1)): | 146 | # for i in range(len(Fh1)): |
| 138 | - # TPM[Fh1[i], Fh2[i], 0] += 1 | 147 | + # TPM[Fh1[i], Fh2[i], 0] += 1 |
| 139 | # for i in range(len(Fv1)): | 148 | # for i in range(len(Fv1)): |
| 140 | # TPM[Fv1[i], Fv2[i], 1] += 1 | 149 | # TPM[Fv1[i], Fv2[i], 1] += 1 |
| 141 | # for i in range(len(Fd1)): | 150 | # for i in range(len(Fd1)): |
msteg/steganalysis/MPB.pyc
No preview for this file type
msteg/steganography/F3.pyc
No preview for this file type
msteg/steganography/LSB.pyc
No preview for this file type
10.7 KB