我正在用里德所罗门编码器在Python应用程序中对一幅图像进行编码、发送和添加一些噪声,并对其进行解码
我已将imagage从PIL转换为numpy数组。现在我试着对这个数组进行编码然后解码。但我对密码有问题。太长了。有人知道怎么解决这个问题吗。先谢谢你
错误消息: ValueError:消息长度最大为223。信息是226
import unireedsolomon as rs
from PIL import Image
import numpy as np
class REED
def __init__(self):
self.img = None
self.numpyImg = None
def loadPictureAndConvertToNumpyArray(self):
self.img = Image.open('PATH')
self.img.load()
self.numpyImg = np.array(self.img)
def reedSolomonEncode(self):
coder = rs.RSCoder(255,223)
self.numpyImg = coder.encode(self.numpyImg)
ReedSolomon包的github页清楚地表明,不能对大于k(本例中是223)的数组进行编码。这意味着您必须先分割图像,然后再对其进行编码。 您可以将其拆分为223个块,然后处理编码的块:
相关问题 更多 >
编程相关推荐