Author Topic: Implementación preliminar de auto-star-profile-transform.js  (Read 70656 times)

Offline David Serrano

  • PTeam Member
  • PixInsight Guru
  • ****
  • Posts: 503
Implementación preliminar de auto-star-profile-transform.js
« Reply #75 on: 2007 October 25 12:35:04 »
Pues me estoy flipando en stereo... resulta que estoy añadiendo lo del desenfoque de máscaras, y me encuentro que el código que hace el recorte de sombras está puesto en el sitio incorrecto y, simplemente, no funciona :shock:.

Haced la prueba: imagen 1, con M iteraciones, mediana objetivo B y recorte de sombras 0. Image 2, con las mismas M iteraciones, misma mediana objetivo B y recorte de sombras 0.4. PixelMath (imagen1 - imagen2) con rescale activo (para que cualquier mínima diferencia salte a la vista) y... ¡no hay diferencias!

Ay ay ay.... bueno, ahora tengo que ir a cenar (ya han pasado los "5 minutos" que le dije a mi novia hace media hora jeje) y luego a ver si subo la 0.7 con esto arreglado (que ya está) y el ATW integrado.
--
 David Serrano

Offline David Serrano

  • PTeam Member
  • PixInsight Guru
  • ****
  • Posts: 503
Implementación preliminar de auto-star-profile-transform.js
« Reply #76 on: 2007 October 25 14:01:55 »
Bueno, yo me lo guiso y yo me lo como :P. Ya está la 0.7 por Alá. Corrige el bug, incorpora la eliminación de capas de wavelets para las máscaras y también tiene algunos cambios internos. Ah, y el interface ahora tiene un pelín más de orden.

Acabo de darme cuenta de que no actualicé el mensajito que aparece arriba en el interface... otro día, o mi novia me mata :^P.
--
 David Serrano

Offline edif300

  • PixInsight Addict
  • ***
  • Posts: 158
    • http://www.astrosurf.com/ilizaso
Implementación preliminar de auto-star-profile-transform.js
« Reply #77 on: 2007 October 25 14:14:15 »
Hola,

He probado el script y me da un error de sintaxis. En la consola de procesamiento pone, copio y pego:


Reading 1 script file(s):
C:/PCL/src/scripts/masked-stretch-transform.js

run -execute-mode=auto C:/PCL/src/scripts/masked-stretch-transform.js

Processing script file: C:/PCL/src/scripts/masked-stretch-transform.js
*** Error [133]: C:/PCL/src/scripts/masked-stretch-transform.js, line 143: SyntaxError: syntax error
new .scaling_function ("3x3 Linear Interpolation", [
....^




Os da lo mismo?
Astroargazkigintza
www.astrosurf.com/ilizaso

Offline David Serrano

  • PTeam Member
  • PixInsight Guru
  • ****
  • Posts: 503
Implementación preliminar de auto-star-profile-transform.js
« Reply #78 on: 2007 October 26 00:24:36 »
Quote from: "edif300"
*** Error [133]: C:/PCL/src/scripts/masked-stretch-transform.js, line 143: SyntaxError: syntax error
new .scaling_function ("3x3 Linear Interpolation", [
....^


Hay un punto en esa línea que no debería estar. ¿Puedes comprobar que en efecto ese punto (entre "new" y "scaling") aparece en la línea 143 del script? (para ir a una línea determinada, pulsar Ctrl-G en el editor de scripts). Si es el caso, supongo que habrá habido algún error durante el copy-paste y no es descartable que aparezcan más.

Estoy pensando en subir los scripts a algún sitio para así sustituir la operación de copy-paste por una descarga normal y evitar esta clase de problemas.
--
 David Serrano

Offline Juan Conejero

  • PTeam Member
  • PixInsight Jedi Grand Master
  • ********
  • Posts: 7111
    • http://pixinsight.com/
Implementación preliminar de auto-star-profile-transform.js
« Reply #79 on: 2007 October 26 01:40:44 »
David, si quieres habilitamos un espacio en el servidor para estos menesteres. Te mando un e-milio.
Juan Conejero
PixInsight Development Team
http://pixinsight.com/

Offline edif300

  • PixInsight Addict
  • ***
  • Posts: 158
    • http://www.astrosurf.com/ilizaso
Implementación preliminar de auto-star-profile-transform.js
« Reply #80 on: 2007 October 26 03:08:03 »
Hola

En la línea 143 no hay ningún punto... he borrado toda la línea y vuelto a escribir, ahora me dice que la función no está definida  :shock: , he vuelto a bajar el script entero y lo mismo :shock:  :shock:  (diferente error con respecto ayer)

Esto es lo que tengo en la lína 143 :
 
Code: [Select]
new scaling_function ("3x3 Linear Interpolation", [

Y el error que me da en la consola de programación:


Processing script file: C:/PCL/src/scripts/masked-stretch-transform.js
*** Error [001]: C:/PCL/src/scripts/masked-stretch-transform.js, line 143: ReferenceError: scaling_function is not defined


Edito:  Estoy muy oxidado en programación pero supongo la función está definida:



Code: [Select]


function mst_engine() {
    var stats = new ImageStatistics;
    var win;    // image window we'll modify
    var hist = new HistogramTransform;
    var shadows_clipping = new HistogramTransform;
    var mtf;

    this.scaling_function = function (name, kernel) {
        this.name = name;
        this.kernel = kernel;
    }

    this.scaling_functions = new Array (
        new scaling_function ("3x3 Linear Interpolation", [    //estoy lo incluyo yo, es la línea 143
            1/16, 1/8, 1/16,
            1/8,  1/4, 1/8,
            1/16, 1/8, 1/16
        ]),

Astroargazkigintza
www.astrosurf.com/ilizaso

Offline David Serrano

  • PTeam Member
  • PixInsight Guru
  • ****
  • Posts: 503
Implementación preliminar de auto-star-profile-transform.js
« Reply #81 on: 2007 October 26 03:24:35 »
Quote from: "edif300"
Estoy muy oxidado en programación pero supongo la función está definida:


Yo tampoco soy un Experto(TM) en Javascript, y no sé hasta que punto esta clase de problemas (de los que he tenido varios) son culpa mía o algún problema oscuro en Pixi.

El caso es que conseguí reproducir el problema y lo arreglé añadiendo "this." antes de "scaling_function" en las líneas 143, 148, 153 y 160:

Code: [Select]
       new this.scaling_function ("3x3 Linear Interpolation", [
        new this.scaling_function ("3x3 Gaussian", [
        new this.scaling_function ("5x5 B3 Spline", [
        new this.scaling_function ("5x5 Gaussian", [


Si lo puedes probar y confirmarme cómo respira el asunto, te lo agradecería :).
--
 David Serrano

Offline Juan Conejero

  • PTeam Member
  • PixInsight Jedi Grand Master
  • ********
  • Posts: 7111
    • http://pixinsight.com/
Implementación preliminar de auto-star-profile-transform.js
« Reply #82 on: 2007 October 26 03:34:04 »
El uso the this. aquí es obligatorio porque scaling_function es un subobjeto de this (=mst_engine). En esto JavaScript es tajante; no hay un ámbito de acceso por defecto como en C++ o Java. Todo lo que no esté cualificado como perteneciente al objeto actual se supone que está declarado en el ámbito global.
Juan Conejero
PixInsight Development Team
http://pixinsight.com/

Offline edif300

  • PixInsight Addict
  • ***
  • Posts: 158
    • http://www.astrosurf.com/ilizaso
Implementación preliminar de auto-star-profile-transform.js
« Reply #83 on: 2007 October 26 03:58:28 »
Ahora si  !!!!!!  :D  :D
Astroargazkigintza
www.astrosurf.com/ilizaso

Offline David Serrano

  • PTeam Member
  • PixInsight Guru
  • ****
  • Posts: 503
Implementación preliminar de auto-star-profile-transform.js
« Reply #84 on: 2007 October 26 04:09:40 »
Quote from: "Juan Conejero"
Todo lo que no esté cualificado como perteneciente al objeto actual se supone que está declarado en el ámbito global.


Voy a investigarlo bien, dado que esta parte del ámbito la tengo un poco descuidada y hay muchos sitios donde el código que hay es simplemente "porque así funciona, y de la otra manera da error".

He actualizado el script. Gracias Iñaki! :).
--
 David Serrano

Offline Jordi Gallego

  • PixInsight Addict
  • ***
  • Posts: 279
Implementación preliminar de auto-star-profile-transform.js
« Reply #85 on: 2007 October 26 11:17:47 »
Hola,

David te confirmo que una prueba rápida funciona la versión 0.7 :wink:


Quote from: "Jordi Gallego"
De hecho he notado que además centra todavía mejor la mediana sobre el valor objetivo: en una imagen anterior tuve que poner 0.14 para obtener 0,125 y en la imagen de prueba de hoy al poner 0.14 he obtenido 0.138


Rectifico este comentario. Lo que sucede es que el script funciona y muy bien. Clava la mediana como se le ha pedido que haga, Lo que me ha confundido es que yo miro el pico del histograma y aquí intervienen las características de la toma en cuestion: si el histograma está muy compensado y simétrico, el pico del mismo es un buen indicador a ojímetro de la mediana, pero si, como pasaba en mi imagen del otro día, tenemos un canal muy  disparado el pico de los otros dos canales que es lo que yo miraba deja de serlo.

No se si me he excplicado con este rollo, pero el mensaje es que el scrip funciona en este aspecto tan bien como funcionaba antes :wink:

Saludos
Jordi
Jordi Gallego
www.astrophoto.es

Offline David Serrano

  • PTeam Member
  • PixInsight Guru
  • ****
  • Posts: 503
Implementación preliminar de auto-star-profile-transform.js
« Reply #86 on: 2007 October 29 04:11:49 »
0.8 disponible donde siempre o también aquí (para descargar en lugar de hacer copy-paste). Ahora permite desenfocar la máscara de luminancia usando también una convolución, cuyo tamaño de filtro se elige al gusto entre 3 y 31 pixels. Se recomienda usar una deconvolución en lugar de wavelets cuando el desenfoque es pequeño (menor que 10 píxels / 3 capas).

A disfrutar :).
--
 David Serrano

Offline Ignacio.R.

  • PixInsight Enthusiast
  • **
  • Posts: 77
Implementación preliminar de auto-star-profile-transform.js
« Reply #87 on: 2007 December 26 06:04:00 »
Quote from: "David Serrano"
Ahora permite desenfocar la máscara de luminancia usando también una convolución, cuyo tamaño de filtro se elige al gusto entre 3 y 31 pixels. Se recomienda usar una deconvolución en lugar de wavelets cuando el desenfoque es pequeño (menor que 10 píxels / 3 capas).
 


Esto no me queda del todo claro. No hay ningun parametro en que salgan pixels...

Saludos

Edito para aclarar la pregunta. ¿Quiere decir lo de arriba que si utilizo menos de 3 iteraciones y tambien un valor menor a 3 en "wavelet layers to revome" es recomendable utilizar deconvolucion???

Gracias

Offline Carlos Milovic

  • PTeam Member
  • PixInsight Jedi Master
  • ******
  • Posts: 2172
  • Join the dark side... we have cookies
    • http://www.astrophoto.cl
Implementación preliminar de auto-star-profile-transform.js
« Reply #88 on: 2007 December 26 08:15:39 »
Creo que David se ha equivocado, y se ha referido a "Convolución" en su segunda frase.
Si no me equivoco, ese comentario se refiere a que una convolución es más eficiente computacionalmente que los wavelets para escalas pequeñas, y por eso el algoritmo debiera ir más rápido. Por otro lado, en la mayoría de los casos, eliminar un par de capas de wavelets y un filtro pasa-bajos son practicamente lo mismo, así que no se verán diferencias apreciables.
Regards,

Carlos Milovic F.
--------------------------------
PixInsight Project Developer
http://www.pixinsight.com

Offline Ignacio.R.

  • PixInsight Enthusiast
  • **
  • Posts: 77
Implementación preliminar de auto-star-profile-transform.js
« Reply #89 on: 2007 December 26 08:35:23 »
Ok  :D

Gracias