Steve on Image Processing
January 8th, 2010
In my mailbox this week: MCALab, astronomy, dmperm, and Sudoku
Some interesting IEEE articles arrived in my mailbox this week. Computing in Science and Engineering has "MCALab: Reproducible Research in Signal and Image Decomposition and Inpainting," by Fadili, Starck, Elad, and Donoho. MCA means morphological component analysis, which is a new term for me. MCALab is an open-source library of MATLAB routines for signal and image decomposition and inpainting. The library is available from www.morphologicaldiversity.org/mcalab.html.
This month's Signal Processing Magazine has a special section on astronomy and cosmology packed with image processing theory and applications, including:
- "Synthetic Aperture Radio Telescopes," by Levanda and Leshem
- "Calibration Challenges for Future Radio Telescopes," by Wijnholds, van der Tol, Nijboer, and van der Veen
- "Bayesian Source Separation for Cosmology," by Kuruoglu
- "Precision Cosmology with the Cosmic Microwave Background," by Cardoso
- "Cosmic Microwave Background Images," by Herranz and Vielva
- "Light on Dark Matter with Weak Gravitational Lensing," by Pires, Starck, and Réfrégier.
- "Multidimensional Image Reconstruction in Astronomy," by Kamalabadi
- "Image Reconstruction in Optical Interferometry," by Thiébaut and Giovannelli
- "Imaging with Linc-Nirvana," by Bertero, Boccacci, Desiderà, La Camera, Carbillet, and Lantéri
Finally, another article in Computing in Science and Engineering caught my eye: "Whip Until Solved," by Sullivan. This article describes a method for solving Sudoku puzzles that makes use of the MATLAB function dmperm. I confess that I can't think of a connection between Sudoku and image processing (take that as a challenge, dear reader), and I've never even solved a Sudoku puzzle. But I have written about dmperm, though, in my series on connected components labeling. And, coincidentally, MATLAB creator Cleve Moler wrote an article in the most recent MathWorks News & Notes about a different way to use MATLAB to solve Sudoku puzzles.
I've got an item on my to-do list that says "Study Cleve's Sudoku code to see how it works." Not sure when I'll get the time to do that, though.
15:35 UTC |
Posted in Uncategorized |
Permalink |
2 Comments »
You can follow any responses to this entry through the RSS 2.0 feed.
Both comments and pings are currently closed.
|
 |
Steve Eddins is a software development manager in the MATLAB and image processing areas at MathWorks. Steve coauthored Digital Image Processing Using MATLAB. He writes here about image processing concepts, algorithm implementations, and MATLAB. 
|
 |
|
If I recall from the article, Cleve Moler’s algorithm is as brute-force as it can be.
It starts in the leftmost and uppermost empty cell and fills in the lowest possible value (of those not precluded by the Sudoku rules and numbers already on the board). Then it goes to the next empty cell, does the same thing, and so on. When it gets stuck (i.e. no valid value), it backtracks and tries the next possible value in the most recent empty cell. “Lather, rinse, repeat” until a solution is found.
Cyclist—Yes, I believe that’s right. I understood the algorithm description at that level, but I was curious to know more. “Brute-force” isn’t always a bad thing. Brute-force solutions can be quite useful in many circumstances.