File Exchange

image thumbnail

Scalable MPEG compression based on DCT coefficients

version 1.2 (86.9 KB) by

This application makes 2 layers base Layer and enhancement layer from quantized coefficients

14 Downloads

Updated

No License

The aim of this application is to implement scalable mpeg type compression by varying DCT coefficients and finding minimum number of DCT coefficients that can give minimum acceptable quality..
This application only works for gray scale.
Although this program will do its work but its slow.
This code is without any comments i will try to add them. but for the time being if u have hard time understanding it you can always contact me

Comments and Ratings (14)

Rajni

Rajni (view profile)

sir, we are currently working on video compression techniques and we are using ur codes and it is a good help for us but still we have not achieved compression ratio of even 10%..please help us regarding this. pliz provide ur mail id

Sorum

Sorum (view profile)

1. I have generated a movie using following code, (which is the input file):
for mj = 1:49
surf(sin(2*pi*mj/20)*Z,Z)
F(mj) = getframe;
end

when I run main.m from 'thresholdcoding' and play the output file(movie), it is alternate black and white frames. Why does the decoded output file does not look same as the input file?
2. GOP output is dim x dim x 3 and decoded output is dim x dim. Hence in shattest1.m, in 'edge', dim error appears. How to solve?
3. I want to put these two layers on a transmission channel. Am I right if i map 'X' & 'B' directly on a constellation?

Sorum

Sorum (view profile)

1. I have generated a movie using following code, (which is the input file):
for mj = 1:49
surf(sin(2*pi*mj/20)*Z,Z)
F(mj) = getframe;
end

when I run main.m from 'thresholdcoding' and play the output file(movie), it is alternate black and white frames. Why does the decoded output file does not look same as the input file?
2. GOP output is dim x dim x 3 and decoded output is dim x dim. Hence in shattest1.m, in 'edge', dim error appears. How to solve?
3. I want to put these two layers on a transmission channel. Am I right if i map 'X' & 'B' directly on a constellation?

lsidhom lili

can any body tell me please how to run this code. I don't know where i have to start.
And if there are some commenting code file, it's interesting for me because I started working on compression / decompression of video.
tanx a lot!

Thanh

Thanh (view profile)

when i run BmotionEstARPS.m, Matlab warning this :
"Warning: Size vector should be a row vector with integer
elements"
so please show me how to fix it. thanks

Thanh

Thanh (view profile)

 hello Zahid Ali, i have question. At present i'm doing my final project. i research about the video processing, so in many of codes that you give, i don't know where i have to start.
Please explain for me. Thank you a lot

 

Yal Adm

can any body tell how to run this code submitted by Zahid Ali, when i try to enter the file name( i think input video),quantization table(by giving its path),out putfile name(i think where the out put will be kept after compression)& estimation algorithm it is not working. give me sample examples
          too urgent !
            tanx

The changes are only made in the threshold coding.I have made a function of a main file (from where excecution starts,the name of file is main.m) so that user can pass file name and quantization table name through parameters.I have also added warning if no filename for video and quantization table is not provided.

Zahid Ali

Zahid Ali (view profile)

Thanks to Syed Zeeshan Haider for correcting errors and adding error handling to the code and commenting my code.
Now main file which is main.m has a function and you can run it through command line by passing it arguments
Zeeshan has made changes after which user can now specifiy lots of options at the command prompt
fileName,quantizationTable,outputfilename,motionEstimation Algorithm ,before that all of this was hard coded

roberto Carrillo

Suayb Arslan

Bytheway the enhancement layer is not the DC component of 8X8 transformed coefficient matrix. It is found by subtracting the recontructed image from the original frame at the encoder...In efficient and incomplete.

billal moussa

Excellent

Ryan Vamondo

Noman Bukhari

Mr. Zahid Ali Has done a wonderful work. It helped me alot with my research "managing drift in scalable video coding". A good job done.

Updates

1.2

Thank you Zeeshan for correcting errors and adding error handling to the code and commenting my code.
Now main file which is main.m has a function and you can run it through command line by passing it arguments

MATLAB Release
MATLAB 6.5 (R13)
Acknowledgements

Inspired by: Block Matching Algorithms for Motion Estimation

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video

shat/

threshold coding/

zonal coding/