Generally when you want to make an icon in multiple sizes, you start with vector graphics which will allow you to resize without losing any information. From there, you can resize it to the size of the icon and make the icon. This is ideal. Resizing from existing images is problematic since, unless it is a precise reduction in size (1/2x 1/4x 1/8x, etc.), pixels are going to have to be approximated even by the best algorithms.
If you have the original image, there are ways of "tracing" the image to be drawn as a svg file in Inkscape. You lose a little bit of definition, but you can also make adjustments until it is closer to what you started with. Once you have that, it is much easier to switch from svg format to other formats.
Hope that helps!