from PIL import Image
import os
import bitstring
image_name = '1.png'
current_path = os.path.dirname(__file__)
im = Image.open(os.path.join(current_path,image_name))
image_width = im.size[0]
image_height = im.size[1]
# load pixel
pim = im.load()
bin_result = ''
for row in range(image_height):
for col in range(image_width):
if pim[col,row][0] == 255:
bin_result += '1'
else:
bin_result += '0'
with open(os.path.join(current_path,'result.jpg'),'wb') as f:
f.write(bitstring.BitArray(bin=bin_result).bytes)
https://blog.csdn.net/zhangziju/article/details/79123275
在spyder中安装模块 https://blog.csdn.net/weixin_44241793/article/details/107019397?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-3&spm=1001.2101.3001.4242
真的不会,
zsteg查看是否有低位隐写。
imagedata .. file: dBase III DBT, version number 0, next free block index 65281
b1,r,lsb,xy .. file: JPEG image data, JFIF standard 1.01, aspect ratio, density 100x100, segment length 16, Exif Standard: [TIFF image data, big-endian, direntries=10, manufacturer=Canon, model=Canon EOS DIGITAL REBEL XTi, orientation=upper-left, xresolution=168, yresolution=176, resolutionunit=2, software=Adobe Photoshop CS2 Windows, datetime=2010:02:03 08:]
b1,bgr,lsb,xy .. text: "E\"QE\"QI$"
显然有张图片,直接提取。
zsteg -E b1,r,lsb,xy 2ec5da20345342909d2336aa7418afed.png > new.jpg
zsteg -E b1,r,lsb,xy 11.png > new.jpg