Best filters/ways to improve ISO 800 image

I took a photo using an “analogic camera”, reflex.
~1 min expos.
it was a foggy night, storms in the horizon, and I was testing several exposures time.

My goal is the little red spot in the center of the image. Also, there is blue points up corner left: stars.
Is there any way to process the image to better define this spot, stars, and some features that might be around?

For example, improve the mountains edges.
Fuji film, ASA 800.
The negative it was digitalized.

I want test filters that could improve the image below.
Color, grains, etc.

I accept suggestions!

Hi Marcelo,

there are a lot of possibilities, even a simple Wiener filter gives a good result:

image = Import[
   "http://community.wolfram.com/c/portal/getImageAttachment?filename=000007.jpg&userId=33625"];
scale = 5;

wiener = ImageSubtract[image, WienerFilter[image, scale, 1]];
noise = ImageSubtract[image, WienerFilter[image, scale]];

result = ImageMultiply[ImageSubtract[wiener, noise], 2]

which is almost independent on the parameter “scale”.
But you can do something more clever:

nonlocal = NonlocalMeansFilter[image, 2];

It works terribly slow because it has to compare a lot of image patches but the result is good. Then you have a numer of possibilities to remove background features from the image. For example:

topHat = TopHatTransform[nonlocal, 3];

or

fillingTransform = ImageSubtract[nonlocal, ColorNegate@FillingTransform@ColorNegate[nonlocal]];

I don’t know that is better so let’s use both:

combination = ImageAdjust@ImageMultiply[topHat, fillingTransform];

If you need to find only colored stars then you can subtract white background:

coloredOnly = ImageAdjust@ImageSubtract[combination, ColorConvert[combination, "Grayscale"]];

If you don’t want to remove white stars completely, you can enhance colors:

coloredOnly = ImageAdd[combination, ImageSubtract[combination, ColorConvert[combination, "Grayscale"]]];

One more enhancement trick is:

minFilter = ImageAdd[coloredOnly, MinFilter[coloredOnly, 1]];

Finally, we can enjoy by the automatic thresholding in MorphologicalBinarize provided by Mathematica.

ImageMultiply[ImageMultiply[minFilter, 5], 
 Dilation[MorphologicalBinarize[ImageMultiply[minFilter, 10]], 1]]

One more comment. In order to extract position you can use:

morph = ImageMultiply[ImageMultiply[minFilter, 10], ImageMultiply[GaussianFilter[MorphologicalBinarize[ImageMultiply[minFilter, 10]],5], 2]]

and then

ImageAdd[image, MorphologicalPerimeter[Binarize[GaussianFilter[Dilation[Binarize@morph, DiskMatrix[10]], 10]]]]

Hi Grisha,

Thanks a Lot!! In fact I want to pick the stars that might be around in the field. And I could compare to a star map as Stellarium, for example. And really define the field of view of that picture, as I do not remember the F I used, (Lens :50mm-70mm). There is small blues points in the upper part but how to decide if it is a false or true star?, the three small blue points are actual starr, but if you zoom the image more blueish points come to view. I did some filtering and I am adding a new image of the pic.
ImagSondatratada6.bmp (6.39 MB)