   2D photo-manip. algorightms (color changing as well).
  I've been looking for a good resources on photo manipulation.  I've not been finding anything very specific, and there seems to be a lot of overlap between 3D math as image processing and the 2D color correction, edge finding, filter, histogram, opacity, etc.  With possible fractal generation sorts of stuff too.I'd really appreciate it if anyone knew of a good resource for general photo manipulation algorithms.Thanks,L-   
Quote:Original post by LucidquietI'd really appreciate it if anyone knew of a good resource for general photo manipulation algorithms.The GIMP, its plugins, and their source code?;Quote:Original post by LucidquietI'd really appreciate it if anyone knew of a good resource for general photo manipulation algorithms.What is your math and programming background ? :PThere is always Numerical Recipes (just look for it in google)... else check for FFT, convolution and filters.JFF   ;  Comp Sci degree, with a Math minor (so the math isn't a terrible problem).  Thanks, the Wiki on FFT gives me a boat load of ideas.  There's something there on convolution as well.I've never studied the properties of light from a mathematical standpoint.  Has light, as far as representing color with a 4 byte integer something parallel to the mathematics?  I don't know yet... but I'm curious if it is.Thanks,L-   ;Quote:Original post by LucidquietComp Sci degree, with a Math minor (so the math isn't a terrible problem).  Thanks, the Wiki on FFT gives me a boat load of ideas.  There's something there on convolution as well.Ok, so first thing FFT and convolution will be your friends ! :P.  It is important to understand what are those concepts, how they works and how to use them. Those are the tools you need for almost all the processing. Well, in fact, there  are a lot of algorithms that can work without FFT but you will need the convolution anyway since it is the way you're applying your filters to the image.A convolution with FFT is as simple as a multiplication of complex numbers for all pixels.  A convolution without a fourrier transform (FFT: fast fourrier transform), is a multiplication for all pixels of the filter for all the pixels in the image. So the FFT approach will be quicker if you filters are big and if you want to apply a lot of them. (Hint : A quick optimisation here with multiple filters would be to use the properties of exponents (e^) and just convolve all your As for tutorials I don't know what to point you to. I actually learned all the stuff I know from school. We didn't use any books either except some parts of "Numerical Recipes in C++" which you can google for it and read it online or buy a hard copy.  But this book won't cover all you want, it covers mostly the mathematical background for the fourrier transform, what are the different transforms based on FT (DFT, FFT, etc which are all the same thing but with different algorithms), what is a convolution, etc.  What you want is the filters : sobel (for edge detection), gaussian blur, laplacian (for edge detection and a lot other things I can't remember right now).Also, don't lose your time writing FFT unless it is required, this is hard to debug unless you know what the results are going to be, there are a lot of algorithms to optimize it and you will need a lot of time to be as efficient as libraries like FFTW.EDIT: Another good thing to check might be computer vision, stereovision, etc which are the things I'm studying right now. You can actually recreate a 3D scene from the photos :D.JFF   