Commit 09268ae37095714dea2330fc0e67880b166597ff

Authored by Chunk
1 parent 4a20967b
Exists in master

An Algorithm-Bug ! (on absolution and clipping)

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
res/lopez5.jpg 0 → 100644

10.7 KB