Semester Review10 Things You Have Learned
from EE465and
10 Things You Have NOT Learned from EE465
Apr. 28, 2011
10. MATLAB is an Evolving Language
• Just like any other programming language, MATLAB has its own evolutionary path – for better or for worse, remember it only serves as a tool
• Just like learning any natural or programming language, the only way to master it is through practice and emulation
9. MATLAB Programming Tips
• Know about MATLAB path setting and its limitations
• Avoid using loops/Vectorize your codes
• Functions run faster than scripts
• Load/save are faster than file I/O (including printing to the screen)
• Develop a good habit of putting comments
8. How JPEG Works
• JPEG=T+Q+C
• T: 8-by-8 Discrete Cosine Transform (admitting fast implementation)
• Q: quality factor (0-100) controls the tradeoff between compression ratio and image quality
• C: more/less frequent symbols, shorter/longer codewords
7. How Does Kmeans Work?
• Kmeans alternate between two steps– Update assignments: everyone vote for the
representatives (assigned to the nearest codeword)
– Update codewords: every precinct selects a new representative that best serves its voters (the center of the mass becomes the new representative)
6. What is Edge/Corner?
• There is no rigorous definition
• Canny edge detection might be the most popular/influential one in the engineering literature but it is not optimal
• From Harris’ corner detector to Lowe’s Scale-invariant feature transform (SIFT)– Sometimes perseverance pays off (Lowe
worked on his SIFT for many years)
5. Why Seeing is NOT Believing
• Theory– Context matters– Visual adaptation
• Applications– Data Hiding– Image forensics– Perceptive video coding (not as mature as MP3
for audio yet)
4. Hammer-Nail Match
• Tool sets: – FT, DCT, Hough/Radon transform …– median filtering, histogram equalization,
kmeans, …– edge/corner detection, SIFT …
• Problems sets:– Denoising: impulse vs. Gaussian noise – Coding vs. analysis
3. All Roads Lead to Rome
• Photo puzzle solver– Minimize the edge/corner count– Maximize the circle count (under the
assumption with circular image content)
• Image deblurring– Landweber vs. Lucy-Richardson
• Image denoising– Total-variation vs. Perona-Malik diffusion
2. Why Math is Useful?
• It turns art into science– Inverse filtering– Harris corner detection– Quantify uncertainty
• It serves as a universal language– Deterministic vs. Probabilistic– Analytical vs. geometric
1. Importance of Visual Information
• >70% information processed by human brain is visual in our everyday lives
• Higher quality, better life – acquisition, display, transmission and manipulation of images
• A vision view of brain – understanding vision could pave paths to understanding intelligence
• Visual reasoning (“a picture is worth a thousand words”)
Semester Review10 Things You Have Learned
from EE465and
10 Things You Have NOT Learned from EE465
Apr. 28, 2011
10. MATLAB speed up via MEX
• You can implement a MATLAB function by C or C++ and compile your .c/.cpp using MEX
• MEX compiler create a .dll (under windows) file that can be directly called by other MATLAB functions
• More information can be found at http://www.mathworks.com/support/tech-notes/1600/1605.html
9. MATLAB Profiling/Debugging
• Matlab profiling helps you locate where the computational bottleneck is
• Debugging in MATLAB has become more and more convenient (the interface is similar to that in Visual studio)
http://www.mathworks.com/help/techdoc/matlab_env/f9-17018.html
8. How JPEG2000 Works
• JPEG2000=T+Q+C
• T: Discrete Wavelet Transform (admitting fast implementation and progressive transmission)
• Q: rate-scalable
• C: replace Huffman coding by Arithmetic coding (covered by EE565)
6. How Does Biometrics Work?
• “You are your identity”
• Fingerprint: edge detection
• Iris: circle/pupil detection
• Face: SIFT matching
• Biometrics=sensor technology + image processing + pattern recognition
3. Why is Color So Hard?
• Famous scientists who have worked on color: Newton, Maxwell, Schrödinger,
• Famous artists have their way of working with color: Vincent Van Gogh
• From dichomatic to trichomatic vision
2. Why is Math NOT Always Good?
• Mentally reproducible vs. experimentally reproducible– “It doesn't matter how beautiful your theory is,
it doesn't matter how smart you are. If it doesn't agree with experiment, it's wrong” - Richard Feynman
• If it is abused without physical intuition– Unfortunately it is difficult to detect