Steve on Image Processing

June 8th, 2009

Spatial transformations chapter in new edition of Digital Image Processing Using MATLAB

In January 2006, the first month of this blog, I wrote the following:

"Section 5.11 of Digital Image Processing Using MATLAB covers spatial transformations. I'm interested in expanding this material to a full chapter. I'd like to use this blog to explore these topics and get your feedback about them."

Well that's what happened. I wrote a whole series of posts about spatial transformations, and you provided lots of good feedback.

Now the 2nd edition of Digital Image Processing Using MATLAB is finally available! And it has a brand new chapter called Geometric Transformations and Image Registration. This chapter was my biggest contribution to the new edition.

Here are the chapter contents:

Chapter 6: Geometric Transformations and Image Registration
6.1 Transforming Points
6.2 Affine Transformations
6.3 Projective Transformations
6.4 Applying Geometric Transformations to Images
6.5 Image Coordinate Systems in MATLAB
6.5.1 Output Image Location
6.5.2 Controlling the Output Grid
6.6 Image Interpolation
6.6.1 Interpolation in Two Dimensions
6.6.2 Comparing Interpolation Methods
6.7 Image Registration
6.7.1 Registration Process
6.7.2 Manual Feature Selection and Matching Using cpselect
6.7.3 Inferring Transformation Parameters Using cp2tform
6.7.4 Visualizing Aligned Images
6.7.5 Area-Based Registration
6.7.5 Automatic Feature-Based Registration

I wrote about many of these topics here in the blog first.

6 Responses to “Spatial transformations chapter in new edition of Digital Image Processing Using MATLAB”

  1. Charalampos Kornelakis replied on :

    I have a project to finish up to this september! I need to implement two different algorithms on matlab one using feature-based technique and another one for area-based. Do you think that this book will help me to finish my project??

  2. Steve replied on :

    Charalampos—I’ll describe the sections and let you decide. The area-based registration section illustrates how one might use normalized cross-correlation to determine a translation relationship between two images and then visualize the result. Two related examples are given with MATLAB code. The automatic feature-based registration section is just a two-paragraph, bare-bones outline of a couple of techniques with some useful references.

  3. Charalampos Kornelakis replied on :

    Steve- Could you propose me some other book that it could help me to finish my project ?? where can i find information and examples on this subject ?? I have to use only these two techniques. could you help me??

  4. Steve replied on :

    Charalampos—You might want to give this tutorial by Szeliski a try. Please note that the terms “feature-based” and “area-based” are broad categories rather than specific methods.

  5. Charalampos Kornelakis replied on :

    Steve - Could you tell two or three methods on each category that could help me a lot to continue searching information.

  6. Steve replied on :

    Charalampos—The tutorial I linked to has a lot of good information about the various methods.

Leave a Reply

Wrap code fragments inside <pre> tags, like this:

<pre class="code">
a = magic(3);
sum(a)
</pre>

If you have a "<" character in your code, either follow it with a space or replace it with "&lt;" (including the semicolon).


Steve Eddins manages the Image & Geospatial development team at The MathWorks and coauthored Digital Image Processing Using MATLAB. He writes here about image processing concepts, algorithm implementations, and MATLAB.

  • Sana: hi steve, could you explain to me how i would be able to use the dir function, to do a loop through a directory...
  • Nishtha: Sir, I have preprocessed the image in following steps: [1] adaptive histogram equalization [2] thresholding...
  • Kristof: I also strongly support the idea. I have just recently bumped into the problem that im2single was not...
  • Steve: David—I’ m glad you found it useful!
  • David Lalejini: I found your example very useful for finding connected nodes in a large set of input pairs. I start...
  • tommy: Dear Steve, I have a question,please if you are kind to help me regarding the accumulator array dimensions of...
  • Steve: Abc—I don’t know how to distinguish the faces. You might try posting your question in the MATLAB...
  • Manju: well if we have a few ovals within each other like in a cell how do we measure the distance from the center...
  • Steve: Manju—What do you mean? How is each region defined?
  • Manju: if we have 2-3 regions within each other how do we measure the regions of each one?

These postings are the author's and don't necessarily represent the opinions of The MathWorks.