New command line interface for the steganalysis by statistics.

This commit is contained in:
Cédric Bonhomme 2016-08-26 08:28:06 +02:00
parent 22a260f5b4
commit cef74dd57e
No known key found for this signature in database
GPG key ID: A1CB94DE57B7A70D
3 changed files with 55 additions and 16 deletions

View file

@ -0,0 +1,45 @@
#!/usr/bin/env python
#-*- coding: utf-8 -*-
# Stéganô - Stéganô is a basic Python Steganography module.
# Copyright (C) 2010-2016 Cédric Bonhomme - https://www.cedricbonhomme.org
#
# For more information : https://github.com/cedricbonhomme/Stegano
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>
__author__ = "Cédric Bonhomme"
__version__ = "$Revision: 0.1 $"
__date__ = "$Date: 2016/08/26 $"
__revision__ "$Date: 2016/08/26 $"
__license__ = "GPLv3"
try:
from stegano.steganalysis import statistics
except:
print("Install Stegano: sudo pip install Stegano")
from PIL import Image
import argparse
parser = argparse.ArgumentParser(prog='steganalysis-parity')
parser.add_argument("-i", "--input", dest="input_image_file",
help="Image file")
parser.add_argument("-o", "--output", dest="output_image_file",
help="Image file")
arguments = parser.parse_args()
input_image_file = Image.open(arguments.input_image_file)
output_image = statistics.steganalyse(input_image_file)
output_image.save(arguments.output_image_file)

View file

@ -19,6 +19,13 @@ packages = [
'stegano.steganalysis'
]
scripts = [
'bin/lsb',
'bin/lsb-set',
'bin/steganalysis-parity',
'bin/steganalysis-statistics'
]
requires = ['pillow', 'piexif']
with open('README.rst', 'r') as f:
@ -33,7 +40,7 @@ setup(
author_email='cedric@cedricbonhomme.org',
packages=packages,
include_package_data=True,
scripts=['bin/lsb', 'bin/lsb-set', 'bin/steganalysis-parity'],
scripts=scripts,
url='https://github.com/cedricbonhomme/Stegano',
description='A Python Steganography module.',
long_description=readme + '\n\n' + changelog,

View file

@ -20,8 +20,9 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>
__author__ = "Cedric Bonhomme"
__version__ = "$Revision: 0.1 $"
__version__ = "$Revision: 0.2 $"
__date__ = "$Date: 2010/10/01 $"
__revision__ "$Date: 2016/08/26 $"
__license__ = "GPLv3"
import operator
@ -52,17 +53,3 @@ def steganalyse(img):
#return colours.most_common(10)
return list(dict_colours.keys())[:30], most_common
if __name__ == '__main__':
# Point of entry in execution mode.
import argparse
parser = argparse.ArgumentParser(prog='steganalysis-statistics')
parser.add_argument("-i", "--input", dest="input_image_file",
help="Image file.")
parser.add_argument("-o", "--output", dest="output_image_file",
help="Image file.")
arguments = parser.parse_args()
input_image_file = Image.open(arguments.input_image_file)
output_image = steganalyse(input_image_file)
soutput_image.save(arguments.output_image_file)