下载附件得到一张png图片:
解法一:
这里是个低位的隐写,勾选上Red色道的低位0就可,Bit Order处的MSB First和LSB First选哪个好像都一样。
然后根据文件头可得知这是个jpg,然后Save Bin ,即可。
解法二:
既然是png图片,就先zsteg看一下:
b1,r,lsb,xy 报红,提取下:zsteg -E b1,r,lsb,xy red_green.png >result.jpg
解法三:
from PIL import Image
import bitstring
import os
image_name = 'red_green.png'
current_path = os.path.dirname(__file__) #获取打当前脚本的文件路径
im = Image.open(os.path.join(current_path,image_name)) #先是拼接上文件名,然后依照拼接后的文件路径获取对象
#这里也可以直接指明文件路径,
# 例如:im_m = "D:/Firefox download/MISC/red_green_/red_green.png"
#im = Image.open(im_m)
image_width = im.size[0] # 0为宽,1为高
image_height = im.size[1]
pix = im.load() #获取像素
result = ''
for row in range(image_height):
for col in range(image_width):
if pix[col,row][0] == 255:
result += '1'
else:
result += '0'
with open(os.path.join(current_path,'result.jpg'),'wb') as f:
f.write(bitstring.BitArray(bin = result).bytes)