How to apply a quantization step to a 2D transformed image?

2 次查看(过去 30 天)
Hi all of you, I need some help here, my problem is how can i use quantization to the result of that code below?,knowing that the result (XDFT) is complex arry, example: XDFT(1,1)=125+ i*2562. So how values like XDFT(1,1) will be on an interval between 0 and 255.
[filename, pathname] = uigetfile('*.bmp', 'open image');% getting a Bitmap image.
[X,MAP]=imread(fullfile(pathname, filename));%Image reading.
R=input('R=');%bloc size(8*8 or 16*16 or 32*32).
XDFT= blkproc(X,[R R],'fft2');%DFT Transformation of X.

采纳的回答

Matt J
Matt J 2016-2-5
Why not quantize the real and imaginary parts? Or, like in JPEG compression, why not use the DCT, instead of the DFT, so that the block spectra are real-valued?
  2 个评论
Said BOUREZG
Said BOUREZG 2016-2-6
I don't have a problem with DCT or DWT, my problem with DFT coefficients if I separate real and imaginary parts and I quantize them, the compression of them can't give a good results.
Walter Roberson
Walter Roberson 2016-2-6
Why is it not possible for the compression to give good results? If you keep 5 real components and 5 imaginary components, that is as good a compression as keeping 10 real components.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Denoising and Compression 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by