こんにちは、私は作成した PGM を持っています。Python を 1 行ずつ読み込みたいと思っています。
紫色のピクセルごとにLSBを変更したいので、これを行うための迅速かつ簡単な方法はありますか
ありがとう
編集
わかりました皆さん、入力画像はPNGファイルです、私たちの大学の、
これは私がこれまで持っているコードです:
テキストと画像を非表示にする必要があります。画像はPPMに変換され、ここで行き詰まります
PPM 画像を読み取って、紫の LSB、理想的には画像の最後の紫の円を変更できるようにしたい
コード:
import Image
import os
import re
import numpy #sudo apt-get install python-numpy #Also need matplotlib
#Text to be hidden within the image
text_to_be_hidden = "test"
#Converts text to binary (NO spaces)
text_to_be_hidden_binary = ''.join(format(ord(x), 'b') for x in text_to_be_hidden)
#User info
print "text to be hidden:", text_to_be_hidden
print "text to be hidden in binary:", text_to_be_hidden_binary
#Converts a png image to pgm
print "Taking image to be inputted, and converting it to ppm"
im = Image.open('Portsmouth.png')
im = im.convert('RGB')
im.save('Portsmouth.ppm')
file_size_of_pgm = os.stat('Portsmouth.ppm').st_size #Gets the file size of the image in byte
#Make sure we have enough space to add the data, if under 5mb ? then close
if file_size_of_pgm < 5000000:
print "PGM file size is too small exiting now"
sys.exit("System exiting")
編集2
私は今データを読みました:
# Open the PPM file and process the 3 first lines (HEADER)
f = open("Portsmouth.ppm")
color = f.readline().splitlines()
size_x, size_y = f.readline().split()
max = f.readline().splitlines()
print color
print size_x
print size_y
print max
data = f.read().split()
print data
新しい質問は、画像の最後の円だけをターゲットにして変更する方法だと思いますか?