22
Semester Review 10 Things You Have Learned from EE465 and 10 Things You Have NOT Learned from EE465 Apr. 28, 2011

Semester Review 10 Things You Have Learned from EE465 and 10 Things You Have NOT Learned from EE465 Apr. 28, 2011

Embed Size (px)

Citation preview

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)

7. How Does MRI Work?

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

5. How Does Augmented Reality Work?

4. Why is Image Retrieval So Hard?

• Google

• Bing

• Yahoo

• TinEye

• Picsearch

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

1. Everything is Connected• Image <> motion <> language

• Steve Jobs’ college life: machintosh inspired by what he learned from the caligraphy class

• Social network vs. neural network vs. immune network vs. Ising model