Author Topic: Redondear las estrellas  (Read 38294 times)

Offline caliu

  • PixInsight Addict
  • ***
  • Posts: 210
    • http://www.caliu.fotografiaastronomica.com
Redondear las estrellas
« on: 2007 August 19 04:08:12 »
Hola, necesito vuestra ayuda, por culpa de Dios sabe qué me han quedado las estrellas un poco cuadradas y me gustaria redondearlas sin tener que volver a procesar de nuevo y protegiendo el perfil de brillo que tienen ahora, ¿es posible con Morphological?, ¿como se hace esto?, tambien ví un dia como Juan dismulaba muy bien la deriva de las estrellas usando esta herramienta pero yo por mas que lo intento no consigo que surta ningun efecto, evidentemente estoy haciendo algo o todo mal ¡¡¡ned help!!! :cry:

Offline Juan Conejero

  • PTeam Member
  • PixInsight Jedi Grand Master
  • ********
  • Posts: 7111
    • http://pixinsight.com/
Redondear las estrellas
« Reply #1 on: 2007 August 19 06:03:45 »
Hola Ferrán

Ante todo pido disculpas por el retraso en publicar las nuevas versiones. La culpa ha sido de varios problemas con la versión para Windows que nos han impedido cumplir con los plazos previstos. Lo siento si os hemos dejado parados unas horas, pero tampoco está mal que dejéis de procesar un ratito el domingo por la mañana, que sois unos obsesos!  :lol:

Ya podéis descargar las nuevas versiones desde nuestro sitio.

Bueno creo que lo que necesitas es una rutina de "star shaping", o sea algo así como centrifugar las estrellas  8)

Vamos a hacer un pequeño experimento:

- Crea una máscara de estrellas. Conviene que sólo sea blanca para las estrellas de cierto tamaño, o destrozaremos fácilmente las más pequeñas.

- En Script Editor selecciona File > New > JavaScript Source File.

- Copia y pega el siguiente script:

Code: [Select]
function main()
{
   console.hide();

   var window = ImageWindow.activeWindow;

   if ( window.isNull )
      throw Error( "There is no active image window!" );

   var view = window.currentView;

   view.beginProcess();

   view.image.convolve( [ 1,  2,  4,  2, 1,
                          2,  6, 12,  6, 2,
                          4, 12, 24, 12, 4,
                          2,  6, 12,  6, 2,
                          1,  2,  4,  2, 1 ] );

   view.endProcess();
}

main();


Este script lo que hace es aplicar una convolución (algo así como un filtro de desenfoque) con una función que tiende a proteger la parte central de cada estrella. Si lo usas con una buena máscara de estrellas yo creo que te dará un perfil estelar bastante aceptable. Podemos probar a cambiar los valores si es necesario.
Juan Conejero
PixInsight Development Team
http://pixinsight.com/

Offline caliu

  • PixInsight Addict
  • ***
  • Posts: 210
    • http://www.caliu.fotografiaastronomica.com
Redondear las estrellas
« Reply #2 on: 2007 August 19 06:25:23 »
Voy de cabeza a probarlo...bueno...primero voy a bajarme la ultima versión, es raro pero estoy toda la noche y parte de la mañana procesando con PI y me funcionaba :? , ¿es que solo es necesaria la conexión a intermet para arrancarlo?, está toda la noche el ordenador en marcha y con el PI abierto :roll: ¿será por eso?, porque yo soy capaz de arrancarlo en casa conectarlo a la bateria del coche y llevarmelo a Lleida desde Castellon sin apagar el PC :lol:  :lol:  :lol:

Offline caliu

  • PixInsight Addict
  • ***
  • Posts: 210
    • http://www.caliu.fotografiaastronomica.com
Redondear las estrellas
« Reply #3 on: 2007 August 19 07:03:58 »
Una pregunta mas y ya termino, ya he fabricado la mascara, tengo abierta la foto y la mascara y ésta protegiendo la nebulosa y dejando transparentes las estrellas mas brillantes, he copiado el codigo tal como me has dicho pero y ahora viene lo bueno, le doy a Execute ¿y que más? :lol:

Offline ManoloL

  • PixInsight Addict
  • ***
  • Posts: 220
Redondear las estrellas
« Reply #4 on: 2007 August 19 08:28:21 »
Quote from: "caliu"
Voy de cabeza a probarlo...bueno...primero voy a bajarme la ultima versión, es raro pero estoy toda la noche y parte de la mañana procesando con PI y me funcionaba :? , ¿es que solo es necesaria la conexión a intermet para arrancarlo?, está toda la noche el ordenador en marcha y con el PI abierto :roll: ¿será por eso?, porque yo soy capaz de arrancarlo en casa conectarlo a la bateria del coche y llevarmelo a Lleida desde Castellon sin apagar el PC :lol:  :lol:  :lol:

Hola Caliu:
Aunque procesando sea un manazas si te puedo contestar a esta pregunta, pues por algún sitio ya lo han explicado. Efectivamente el programa solo comprueba la fecha al arrancar y mientras dura la sesión no hace ninguna comprobación nueva. Lo que no he comprobado es si en estado de suspensión se conserva la operatividad. Si fuera así seria más sencillo que llevar el ordenador encendido. ¡No te vaya a salir ardiendo! que yo ya me llevé un susto el otro día por un cortocircuito en una bateria.
Saludos.

Editado:
He probado dejando en suspensión el portatil, he desconectado el modem y he activado el PC. Ha continuado trabajando sin dar el error de conexión al reloj de Internet.
Ya sabes, ahora todo depende de cuanto aguante el portatil en suspensión sin agotar la bateria, pués supongo que en este estado tendrá que consumir algo. Pero un viaje seguro que lo aguanta.
Saludos de nuevo.
Saludos.

Manolo L.

Offline C. Sonnenstein

  • PixInsight Addict
  • ***
  • Posts: 262
    • http://astrosurf.com/astro35mm
Redondear las estrellas
« Reply #5 on: 2007 August 19 09:05:40 »
Quote from: "caliu"
he copiado el codigo tal como me has dicho pero y ahora viene lo bueno, le doy a Execute ¿y que más? :lol:


¿Qué es lo que te indica en Processing Console? ¿Algún error? ¿Console.hide is not a function, tal vez?
Carlos Sonnenstein

Offline caliu

  • PixInsight Addict
  • ***
  • Posts: 210
    • http://www.caliu.fotografiaastronomica.com
Redondear las estrellas
« Reply #6 on: 2007 August 19 10:34:16 »
Quote from: "C. Sonnenstein"
Quote from: "caliu"
he copiado el codigo tal como me has dicho pero y ahora viene lo bueno, le doy a Execute ¿y que más? :lol:


¿Qué es lo que te indica en Processing Console? ¿Algún error? ¿Console.hide is not a function, tal vez?


No no me indica nada, lo que yo pregunto es una vez copiado y pegado el codigo  ¿donde le doy para ejecutar el proceso?

Offline Juan Conejero

  • PTeam Member
  • PixInsight Jedi Grand Master
  • ********
  • Posts: 7111
    • http://pixinsight.com/
Redondear las estrellas
« Reply #7 on: 2007 August 19 10:45:23 »
Me vais a perdonar, pero me equivoqué con el script. El problema es que un script no se puede enmascarar. O sea, que el script se ejecutará, pero ignorará la máscara.

En un momento lo rehago y lo pongo aquí corregido.

Por cierto, sí es verdad que PI sólo verifica la fecha en el momento del arranque. En teoría podríais tener a PI funcionando por tiempo ilimitado si siempre suspendéis el equipo, y si no hay ningún cuelgue, claro :) Pillines que sois  :twisted:
Juan Conejero
PixInsight Development Team
http://pixinsight.com/

Offline Juan Conejero

  • PTeam Member
  • PixInsight Jedi Grand Master
  • ********
  • Posts: 7111
    • http://pixinsight.com/
Redondear las estrellas
« Reply #8 on: 2007 August 19 10:47:05 »
Quote from: "caliu"
No no me indica nada, lo que yo pregunto es una vez copiado y pegado el codigo  ¿donde le doy para ejecutar el proceso?


Simplemente tienes que tener la imagen abierta y seleccionada, luego ejecutas el script en Script Editor (Execute > Compile & Run, o pulsas F9) y ya está. Mira la imagen ampliada y verás cómo te la ha "desenfocado".
Juan Conejero
PixInsight Development Team
http://pixinsight.com/

Offline Juan Conejero

  • PTeam Member
  • PixInsight Jedi Grand Master
  • ********
  • Posts: 7111
    • http://pixinsight.com/
Redondear las estrellas
« Reply #9 on: 2007 August 19 12:11:21 »
Ahora sí que funciona:

Code: [Select]
#include <pjsr/ColorSpace.jsh>
#include <pjsr/UndoFlag.jsh>

function main()
{
   console.hide();

   var window = ImageWindow.activeWindow;

   if ( window.isNull )
      throw Error( "There is no active image window!" );

   var view = window.mainView;

   var workingWindow = new ImageWindow( view.image.width,
                                        view.image.height,
                                        view.image.numberOfChannels,
                                        window.bitsPerSample,
                                        window.isFloatSample,
                                        view.image.colorSpace != ColorSpace_Gray,
                                        "temporary" );
   
   var workingView = workingWindow.mainView;
   workingView.beginProcess( UndoFlag_NoSwapFile );
   workingView.image.apply( view.image );
   workingView.image.convolve( [ 1,  2,  4,  2, 1,
                                 2,  6, 12,  6, 2,
                                 4, 12, 24, 12, 4,
                                 2,  6, 12,  6, 2,
                                 1,  2,  4,  2, 1 ] );
   workingView.endProcess();

   var mergeThem = new PixelMath;
   mergeThem.expression = workingView.id;
   mergeThem.useSingleExpression = true;
   mergeThem.rescale = false;
   mergeThem.executeOn( view );

   workingWindow.close();
}

main();


El script aplica una convolución a una copia temporal de la imagen y después utiliza una instancia de PixelMath para aplicarla, con lo cual funciona la máscara que esté activa en el momento de ejecutar el script.

Al aplicarlo, aseguraos de que la imagen activa es la imagen que queréis procesar, no la máscara de estrellas ;-)
Juan Conejero
PixInsight Development Team
http://pixinsight.com/

Offline caliu

  • PixInsight Addict
  • ***
  • Posts: 210
    • http://www.caliu.fotografiaastronomica.com
Redondear las estrellas
« Reply #10 on: 2007 August 19 13:57:45 »
Funciona!!! :D

Offline Pep

  • PixInsight Addict
  • ***
  • Posts: 124
    • COELLO-PEDRAPIQUER
Redondear las estrellas
« Reply #11 on: 2007 September 21 23:52:15 »
Yo he probado el scrip y a mi no me funciona. Cuando le doy a F9 me pide guardar el escrip, cuando le doy a Save me sale un mensaje de error:

File I/O Error: Unable to create file:
C:/Program Files (x86)/Pleiades Astrophoto/PCL/include/pjsr/NewScriptFile1.js

Saludos
Pep
Pep Ferrer
Observatorio:
COELLO-PEDRAPIQUER
Callosa d'en Sarria (Alicante)

Offline Pep

  • PixInsight Addict
  • ***
  • Posts: 124
    • COELLO-PEDRAPIQUER
Redondear las estrellas
« Reply #12 on: 2007 September 22 00:08:01 »
Al hilo del mensaje anterior el error me lo da cuando compilo con extensión: .js

Si realizo la compilación con la extensión: .jsh, entonces el error es en la línea 4: comando no reconocido.
Pep Ferrer
Observatorio:
COELLO-PEDRAPIQUER
Callosa d'en Sarria (Alicante)

Offline David Serrano

  • PTeam Member
  • PixInsight Guru
  • ****
  • Posts: 503
Redondear las estrellas
« Reply #13 on: 2007 September 22 09:53:37 »
Quote from: "Pep"
File I/O Error: Unable to create file:
C:/Program Files (x86)/Pleiades Astrophoto/PCL/include/pjsr/NewScriptFile1.js


Me extraña que a estas alturas todavía haya problemas con esto de los espacios en los nombres de archivos y directorios pero, por si acaso y para descartarlo, prueba a guardar en otro directorio sin espacios, por ejemplo directamente en C:\.

Como ya se ha explicado en otro mensaje, siempre es necesario guardar el archivo en disco, desde donde PixInsight lo ejecuta. De esta forma evitas ejecutar cosas que están en la memoria y que "alguien" puede haber "manipulado" sin tu consentimiento...
--
 David Serrano

Offline Pep

  • PixInsight Addict
  • ***
  • Posts: 124
    • COELLO-PEDRAPIQUER
Redondear las estrellas
« Reply #14 on: 2007 September 22 20:30:29 »
David lo he probado y el mismo error.
Yo estoy usando Vista x64, no se si esto tendrá algo o más bien mucho que ver.
Pep Ferrer
Observatorio:
COELLO-PEDRAPIQUER
Callosa d'en Sarria (Alicante)