Я загружаю изображение и беру его DCT.После этого я выполняю IDCT на изображении, и результат таков.Это код, который я использую:
image = load_image()
new_image = image.copy()
IMAGE_H = image.shape[0]
IMAGE_W = image.shape[1]
for row in np.arange(IMAGE_H - BLOCK_HEIGHT + 1, step=BLOCK_HEIGHT):
for col in np.arange(IMAGE_W - BLOCK_WIDTH + 1, step=BLOCK_WIDTH):
block_dct = dct(dct(image[row:row+BLOCK_HEIGHT,
col:col+BLOCK_WIDTH].T).T)
new_image[row:row + BLOCK_HEIGHT, col:col + BLOCK_WIDTH] = idct(idct(
block_dct.T).T)
image = PIL.Image.fromarray(new_image)
image.show()
Как я могу на 100% воссоздать изображение?