Estoy entrenando una ConvNet para detectar diferentes tipos de rayas en mis imágenes. Como estoy trabajando con imágenes astronómicas, los valores de mis píxeles son densidades de flujo y, por tanto, representan datos reales. Cuando yo (como humano) miro mis imágenes con el rango completo (algunas imágenes tienen rangos de -10 a 125, otras de -0,05 a 3,5, etc...), a menudo no puedo detectar estas rayas. Sin embargo, al condensar el rango a 0 - 1sigma (para x < 0: x=0, y para x > 1sigma: x=1sigma) puedo ver rayas de tipo 1. Para detectar visualmente (humanamente) la franja de tipo 2, tengo que condensar el intervalo a 0 - 3sigma.
Ahora me parece bien realizar estos pasos de preprocesamiento para construir un conjunto de entrenamiento adecuado y correcto, pero obviamente no puedo aplicar diferentes preprocesamientos dependiendo de la clase en los datos de prueba.
Así que mi pregunta es: Si etiqueto mis datos de entrenamiento basándome en los rangos condensados (donde los humanos pueden ver las rayas), pero entreno la red neuronal en las imágenes originales (donde los humanos no pueden ver las rayas debido a la mala resolución espectral), ¿será capaz el algoritmo de ver los artefactos a pesar de todo?
¿Y cómo influiría en esto el hecho de que las ConvNets a veces "aplastan" los valores entre 0 y 1? ¿O esto sólo es relevante cuando se utiliza sigmoide como función de activación?
¿Necesito normalizar o estandarizar mis imágenes? Si lo hago y miro la imagen, también es casi imposible detectar humanamente las rayas.