Be the first to rate this file! 5 Downloads (last 30 days) File Size: 488.35 KB File ID: #21883

Image Processing Subset

by Anthony Gabrielson

 

24 Oct 2008

I have started to write a subset of the Image Processing toolbox.

| Watch this File

File Information
Description

The Image Processing toolbox toolbox is lacking a key feature I need, namely the support of all data types.

Quick list of the source included:
imhist_thresh.cpp: Generate histogram from data, # of bins based on unique values.
imsmarthist_thresh.cpp: equalize data based on histogram
imsmartstd_thresh.cpp: equalize data based on standard deviation
im_absdiff.cpp: Absolute difference of two images
im_add.cpp: Add two images
im_addelem.cpp: Add a variable to an image
im_complement.cpp: Inverse of an image
im_div.cpp: Divide one image by another (pixel wise, not linear algebra)
im_divelem.cpp: divide an image by an element
im_find.cpp: generate a new image based on conditions, will be booleanish
im_fliplr.cpp: Flip image left right
im_flipud.cpp: Flip image up down
im_hist.cpp: Histogram of image, notes will explain how to display results
im_log10.cpp: Take the log of the image
im_max.cpp: Max value in the image
im_mean.cpp: Mean value of the image
im_median.cpp: Median value of the image
im_min.cpp: Min value of the image
im_mult.cpp: Multiply one image by another
im_multelem.cpp: Multiply an image by a value
im_rgb2bw.cpp: Convert an RGB image to a BW image
im_sobelEdge.cpp: Sobel Edge of a BW image
im_square.cpp: Square of an image
im_stdDev.cpp: Standard deviation pixel wise, generates a new image
im_stdDevVal.cpp: Standard deviation of the image
im_sub.cpp: Subtract one image from another
im_subelem.cpp: Subtract a value from an image
im_transpose.cpp: Transpose an image

Image.hpp: Parent Class, does need to be used with Matlab.
MatlabImage.hpp: Child Class, only matlab specific code
helperTemplates.hpp: As the name explains
matlabIO.hpp: Convenient way to get data in and out of Matlab. Many templates are intuitive, much better than previous versions.
statistics.hpp: Convenient math templates

buildMex.m: A convenient way of building the entire package

MATLAB release MATLAB 7.4 (R2007a)
Other requirements I have only tested this with the MS Visual Studio compiler, I don't have the resources to test g++ under linux.
Tags for This File  
Everyone's Tags
Tags I've Applied
Add New Tags Please login to tag files.
Comments and Ratings (3)
07 Nov 2008 Steve Eddins

I'm curious - at least 15 of the functions you list in your package have Image Processing Toolbox or MATLAB equivalents that handle all data types. Was there something else besides data type support that motivated you to develop this package?

08 Nov 2008 Anthony Gabrielson

So the first driver for this was really type support, I needed uint64 type support and Matlab just didn't have it. The more I worked on this code set the more I wanted to be able to link the same code against other C++ projects, a process that worked really well for me in grad school. Later in the project I was also curious about the speed differences between IPPL and non IPPL compiled code, interestingly enough at least for these tools there wasn't a big difference.

In the process of writing this code I think I made I/O between Mex & Matlab dramatically easier than the published way. I hope people dig it and are able to build upon it. What do you think of it?

13 Nov 2008 Steve Eddins

Anthony, you're right about the uint64 support. It's not there for many operations. I haven't looked at your code, so I don't have an opinion about it.

Good luck!

Please login to add a comment or rating.
Tag Activity for this File
Tag Applied By Date/Time
signal processing Anthony Gabrielson 27 Oct 2008 09:26:35
image processing Anthony Gabrielson 27 Oct 2008 09:26:35
data export Anthony Gabrielson 27 Oct 2008 09:26:35
data import Anthony Gabrielson 27 Oct 2008 09:26:35
mathematics Anthony Gabrielson 27 Oct 2008 09:26:35
matrix Anthony Gabrielson 27 Oct 2008 09:26:35
optimization Anthony Gabrielson 27 Oct 2008 09:26:35
c Anthony Gabrielson 27 Oct 2008 09:26:35
mex Anthony Gabrielson 27 Oct 2008 09:26:35
mathematics Cristina McIntire 07 Nov 2008 13:00:26
signal processing Cristina McIntire 10 Nov 2008 10:56:05
image processing Cristina McIntire 10 Nov 2008 10:56:09
optimization Cristina McIntire 10 Nov 2008 10:56:12
mex shahnaz fatima 04 Oct 2009 09:11:30

Contact us at files@mathworks.com