Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm a senior in college that hasn't done much image processing before (except for some basic image compression on smartphones). I'm starting a research project on machine learning next semester that would require some biomedical image processing. What's the best way to get up to speed with the basics of image processing in about two months? Or is this impractical?

It's my impression that once I'm good with the basics learning more from other resources would be easier.

share|improve this question

We're looking for long answers that provide some explanation and context. Don't just give a one-line answer; explain why your answer is right, ideally with citations. Answers that don't include explanations may be removed.

closed as off-topic by MichaelT, gnat, Bart van Ingen Schenau, Dynamic, Kilian Foth May 19 '14 at 6:56

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions seeking career or education advice are off topic on Programmers. They are only meaningful to the asker and do not generate lasting value for the broader programming community. Furthermore, in most cases, any answer is going to be a subjective opinion that may not take into account all the nuances of a (your) particular circumstance." – Community, gnat, Bart van Ingen Schenau, Dynamic, Kilian Foth
If this question can be reworded to fit the rules in the help center, please edit the question.

It's my impression that once I'm good with the basics learning more from other resources would be easier. Well that's true for everything. – Yannis Nov 10 '11 at 7:04
what sort of level is your maths at? – jk. Nov 10 '11 at 7:44
If you can afford it, get a copy of Digital Image Processing Using MATLAB and MATLAB with Image Processing Toolbox. They're horribly expensive but worth it. – Joonas Pulakka Nov 10 '11 at 7:50
It's a pretty broad field. What are you most interested in? Anyways, google is your friend, here's one starting point that looks promising: . There's also MIT and Stanford lectures on signal and image processing. – Guy Sirton Nov 10 '11 at 8:00
If I were you I would invest some time learning more about matrices – A.Rashad Nov 10 '11 at 11:09
up vote 3 down vote accepted

I don't think you can learn much in 2 months. Image processing is really broad field, and to get better in it you'll need at least several years.

Some of the very basics stuff you can do :

  • take a look into 2d filters (or better yet find a book describing 2d image filtering).
  • get octave and try to play with some filters. Try to process images on your own
  • join processing group, and follow sci.image.processing news group
  • try to play with opencv filters, although I think it is an advanced field

By the way, I hope your math is really good.

share|improve this answer
My math is decent. From the amount of mention this is getting, I assume this is really math heavy. – rdasxy Nov 10 '11 at 21:31

Books are good if you are already knowledgeable about something. But if you are just starting out, a real course is better. For the human brain, is easier to learn something from another person, rather than from an inanimate book.

Anyhow it is not always possible to follow a course at your local college, or maybe you want to have the best possible education, without having to pay for the most expensive tuition.

This is why I love to follow courses online. I prefer american colleges, but Lecture 1 Introduction to Digital Image Processing seems good too.

Luckily, there are online courses for almost everything in the IT, and for most of the scientific courses: You don't need to be at MIT to get an MIT-grade education, without paying a cent. This is Great way to improve your skills and thus your market value.

Take your time to have a look here:

share|improve this answer
This is very helpful, thanks! – rdasxy Nov 10 '11 at 21:19
there are online courses for almost everything in the IT, and for most of the scientific courses in colleges... you don't need to be at MIT to get an MIT-grade education... for free... Great way to improve your skills and your salary :D – Mascarpone Nov 10 '11 at 22:59
This is not a helpful list at all. These are all just links to generic online university courses. – stackoverflowuser2010 Nov 11 '11 at 21:08
read twice before downvoting. – Mascarpone Nov 11 '11 at 21:35
@MarkTrapp I found the youtube link to the lectures the most helpful. – rdasxy Nov 12 '11 at 7:20

You cannot learn image processing in two months. Go take a class in a local university's EE department on digital signal processing. That will provide the needed mathematical background and will perhaps touch on image processing as well.

share|improve this answer

If looking for the basics, I learned via the PBM/Netpbm programs. It is a rudimentary way to very clearly define an arbitrary-depth image (in ASCII format) and process not just with provided libraries and utilities, but also you can very easily process with your favorite program or shell.

I even used this during several projects at Uni doing remote sensing and calibrating these raster images. My code was not the fastest, but it did run correctly and programmed all in AWK ;) Point is, once you understand your data, you can do almost anything. Might be a good start there.

share|improve this answer

I started out by actually making a program from scratch. No books, classes, or math. My math does't go far beyond basic algebra.

I ended up making an effective barcode reader that blows away the commercial trials I tested. Jump in and do it!!!

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.