Steve on Image Processing with MATLAB

Image processing concepts, algorithms, and MATLAB

R2014a shipped! (And the developer says, “Wait, what?”)

At MathWorks, the software developers' sense of calendar time is SO out of sync with the real world. In the real world, MathWorks shipped R2014a, the first of our two annual releases, last week. In the developers' world, R2014a is old news. Right now all the developers are heads-down and sprinting toward the feature deadline for the next release, R2014b.

(On a personal, but somewhat related, side note, I recently reached my 20-year milestone with MathWorks. In my first decade with the company, MATLAB releases happened several years apart in unpredictable and somewhat chaotic fashion. The transition in 2004-2005 to a regular, repeatable, and completely reliable twice-per-year release schedule is one of the most impressive changes I've seen here.)

For image processing, the big news in MATLAB R2014a is webcam support. You can use MATLAB to bring in live images from USB Video Class webcams, which includes those built into laptops and those that plug into your computer via a USB port. Here's a video that explains how it all works.

Winning the award for "why didn't you do that years ago?" is multidimensional array support for flipud, fliplr, and rot90 functions. For image processing applications, that means you can use these functions directly on truecolor (M-by-N-by-3) images, like this:

rgb = imread('peppers.png');
subplot(1,3,1)
imshow(rgb)
title('Original')

subplot(1,3,2)
rgb2 = fliplr(rgb);
imshow(rgb2)
title('fliplr result')

subplot(1,3,3)
rgb3 = rot90(rgb);
imshow(rgb3)
title('rot90 result')

Those of you building small robots to take over the world might want to check out the new Raspberry Pi hardware support.

The MATLAB Math Team was busy making a collection of functions that make it easier to write linear algebra algorithms, including a bunch of is* functions (ishermitian, istril, etc.), an efficient Sylvester equation solver, and an option for computing left eigenvectors. The control system experts here seemed very excited about the Sylvester equation solver. I have no idea why, because in my senior year in EE I decided to specialize in signal processing instead of controls.

For the software developers among you, the still-new matlab.unittest framework is growing rapidly, with support for new custom plugins, the Test Anything Protocol (TAP), and automatic test parameterization. (I recently used the automatic test parameterization feature to update the test for the suite of examples in the book Digital Image Processing Using MATLAB.)

There are many other capabilities introduced in the new MATLAB version. I've mentioned here only a few of them that particularly caught my eye. I encourage you to take a look at the MATLAB release notes or watch the the R2014a Highlights video.

I don't think I've ever mentioned product licensing on this blog, but I wanted to give a shout to MATLAB Home, a new license option intended to support MATLAB for personal and hobby use.

Finally, Cleve was in my office yesterday and said I should write a blog about these MATLAB bottlecap refrigerator magnets that my son made for me. They are very popular. Just about everyone picks them up to play with them. I think I like the one with the white background better.

What's your vote?




Published with MATLAB® R2014a

|
  • print

Comments

To leave a comment, please click here to sign in to your MathWorks Account or create a new one.