我在研究加密算法。我需要在第一步实现Baker映射。但我没有找到贝克地图的算法。这就是matlab代码。(2D Baker map for image pixel shuffling matlab code)
我正在写的文章:Article
我回顾了上述matlab代码,并作为一些研究的结果,我做了以下工作:
#lenna image: 512x512
def main():
(Image.open('Lenna.png').convert('LA')).save("LennaGray.png")
image = Image.open("LennaGray.png")
row, col=image.size
for i in range(row):
for j in range(col):
if 1<=j and j<row/2:
newcord1=((2*(j-1))+((i-1)%2))
newcord2=math.floor(0.5*(i-mod(i-1,2))+1)
im(i,j)=im(newcord2,newcord1)
elif row/2<=j and j<=row:
newcord1=((2*(j-64))+(i%2))
newcord2=math.floor(0.5*(i-(i%2))+63)
im(i,j)=im(newcord2,newcord1)
print(list(image.getdata()))
del image
if (__name__=="__main__"):
main()
获取像素值:
list(image.getdata())
这里:create image from a list of pixel values。这就是我能做的。你知道吗
所以。 我想把图像和贝克的地图混在一起。你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐