mirror of
https://github.com/cedricbonhomme/Stegano.git
synced 2025-05-12 17:18:30 +02:00
Closes #4.
This commit is contained in:
parent
eeb8132b4b
commit
6cd22dfe72
2 changed files with 11 additions and 8 deletions
|
@ -55,18 +55,17 @@ def hide(input_image_file, message, auto_convert_rgb=False):
|
|||
index = 0
|
||||
|
||||
message = str(len(message)) + ":" + str(message)
|
||||
#message_bits = tools.a2bits(message)
|
||||
message_bits = "".join(tools.a2bits_list(message))
|
||||
message_bits += '0' * ((3 - (len(message_bits) % 3)) % 3)
|
||||
|
||||
npixels = width * height
|
||||
if len(message_bits) > npixels * 3:
|
||||
len_message_bits = len(message_bits)
|
||||
if len_message_bits > npixels * 3:
|
||||
raise Exception("""The message you want to hide is too long (%s > %s).""" % (len(message_bits), npixels * 3))
|
||||
|
||||
for row in range(height):
|
||||
for col in range(width):
|
||||
|
||||
if index + 3 <= len(message_bits) :
|
||||
if index + 3 <= len_message_bits :
|
||||
|
||||
# Get the colour component.
|
||||
(r, g, b) = img.getpixel((col, row))
|
||||
|
@ -79,7 +78,10 @@ def hide(input_image_file, message, auto_convert_rgb=False):
|
|||
# Save the new pixel
|
||||
encoded.putpixel((col, row), (r, g , b))
|
||||
|
||||
index += 3
|
||||
index += 3
|
||||
else:
|
||||
img.close()
|
||||
return encoded
|
||||
|
||||
img.close()
|
||||
return encoded
|
||||
|
|
|
@ -62,12 +62,13 @@ def hide(input_image_file, message, generator_function, auto_convert_rgb=False):
|
|||
message_bits += '0' * ((3 - (len(message_bits) % 3)) % 3)
|
||||
|
||||
npixels = width * height
|
||||
if len(message_bits) > npixels * 3:
|
||||
raise Exception("""The message you want to hide is too long (%s > %s).""" % (len(message_bits), npixels * 3))
|
||||
len_message_bits = len(message_bits)
|
||||
if len_message_bits > npixels * 3:
|
||||
raise Exception("""The message you want to hide is too long (%s > %s).""" % (len_message_bits, npixels * 3))
|
||||
|
||||
generator = getattr(generators, generator_function)()
|
||||
|
||||
while index + 3 <= len(message_bits) :
|
||||
while index + 3 <= len_message_bits :
|
||||
generated_number = next(generator)
|
||||
(r, g, b) = img_list[generated_number]
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue