Gliese Publicado 30 de Abril del 2009 Publicado 30 de Abril del 2009 Hace tiempo que tengo la idea de hacer un script para el CHDK para hacer mas fácil la toma de fotos con las digicam. Principalmente la idea es para fotos planetarias, donde se necesitan muchos cuadros y que usemos el timer para que no salgan movidas, aprovechando la resolución de la cámara en megapíxeles en vez de los 640x480 que nos da un video. Por ejemplo la foto esta de Mariano Ribas aprovecha la resolución de fotos máxima de las cámaras: http://www.espacioprofundo.com.ar/foros/about8828.html Pero sacarlas se vuelve un trabajo tedioso y que lleva tiempo, y en casos como el de Júpiter que tiene una rápida rotación no tenemos mucho tiempo para sacar los frames a apilar. Hasta ahora intenté hacer uno que "mantenga" presionado el botón de disparo y aproveche el modo ráfaga, pero sólo me saca una, no se como solucionarlo. El otro que hice y es el que voy a postear es No se si se puede reducir más el tiempo entre foto y foto, traté de sacarle el dark frame sustraction (opción de CHDK) pero el planeta queda con un halo de ruido y tarda lo mismo. http://img403.imageshack.us/img403/4315/img5117o.jpg Para pasar los scripts a la cámara copian lo que esta en código a un archivo .bas de 8 letras, lo pasan a la carpeta scripts del chdk en la tarjeta de memoria de la cámara y lo cargan desde la opción de scripts junto con el seteo de los parámetros. Este es el intento fallido de hacer un script que mantenga pulsado el botón de disparo por x segundos, en teoría debería andar pero en la práctica saca sólo la primera foto. Aclaro que hay que poner la cámara en modo ráfaga antes de disparar y el valor a "Duracion" controla cuanto tiempo se quiere mantener presionado el botón de disparo (por default es 30 segundos), el b "Espera" controla cuanto tiempo pasa desde que activas el script hasta que hace la primera foto (para eliminar vibraciones por presionar los botones de la cámara, default 5 segundos). @title Secuencia @param a Duracion @default a 30 @param b Espera @default b 5 sleep b*100 press "shoot_half" sleep 500 press "shoot_full" sleep a*1000 release "shoot_full" sleep 500 release "shoot_half" end El que sigue es el que funciona, pero saca una foto cada 7 segundos mas o menos y no puedo bajarlo más (tal vez necesite una SD de alta velocidad, SDHC). Los valores a modificar se explican por sí solos. @title Secuencia @param a Cantidad de fotos @default a 10 @param b Espera (seg) @default b 5 sleep b*100 for n=1 to a press "shoot_half" sleep 500 press "shoot_full" sleep 500 release "shoot_full" sleep 500 release "shoot_half" sleep 500 next n end A ver si alguien quiere probarlos o alguna recomendación para mejorar los scripts es bienvenida también.
mauriciocasilda Publicado 30 de Abril del 2009 Publicado 30 de Abril del 2009 Gliese . yo para fotos planetarias estaba usando del scripts llamado motion detec al cual le daba un valor de grillaro de 15x15 lo cual lo transformaba en muy sensible y disparaba fotos una tras otra ya que la camara encontraba diferencias de brillo continuamente , y el otro mas sensible aun es el scripts llamado lightning que esta desarrollado para cazar rayos en tormentas , ese ya es sensible por naturaleza jajaja creo que yo ya los habia posteado en el foro hace tiempo , cualquier cosa te los vuelvo a subir y los probas Saludos , Mauricio
agarro Publicado 30 de Abril del 2009 Publicado 30 de Abril del 2009 Gliese: No tengo el chdk ni digicam pero mirando el codigo del script (el que funciona), éste se divide en dos partes: 1) la instruccion de espera en la primera linea (azul) 2) el bucle (rojo) @title Secuencia @param a Cantidad de fotos @default a 10 @param b Espera (seg) @default b 5 sleep b*100 for n=1 to a press "shoot_half" sleep 500 press "shoot_full" sleep 500 release "shoot_full" sleep 500 release "shoot_half" sleep 500 next n end En el bucle o loop los valores de sleep son de aparentemente medio segundo que son referenciales nada mas...si el procesador esta muy ocupado haciendo otra cosa esos valores se multiplican.. Que quiero decir? que el codigo esta ok pero que hay algo que le esta retrasando el reloj que marca el ritmo...esto puede ser que cada foto en formato RAW tarde demasiado (en ese caso podrias probar la diferencia de calidad sin RAW)....o que el equipo se demore haciendo el dark Frame Substaction....o ambos.. Si estas dos opciones está activadas..proba sacandolas y corre el script aa ver que pasa. En planetaria no le veo demasiada utilidad al RAW ni a la sustracción de darkframes.. Suerte Alejandro
Gliese Publicado 1 de Mayo del 2009 Autor Publicado 1 de Mayo del 2009 Mauricio, me podrías pasar los scripts que mencionás? Ale, el problema es que tiene que tener un poco de pausa entre las "presiones" de botón porque sino lo hace todo seguido y es como si hubiera apretado una sola vez. Anduve cambiando los valores y me paso eso, que sacaba una sola y terminaba, puse a cargar las pilas para seguir probando mañana.
agarro Publicado 1 de Mayo del 2009 Publicado 1 de Mayo del 2009 Leandro: Como te decia en mi post, el problema no es el codigo del script..esta OK. Mi sugerencia apunta a que no uses la funcion RAW como formato ni el Dark frame Substraction ya que el procesador DIGIC tiene que ocuparse de "bayerizar" la imagen , generar un dark, restarlo y guardar el nuevo RAW que es pesadito...Eso es lo que puede estar generando la demora entre disparo y disparo. No perdés nada con probar.. Para mi, coicido con lo que dice Baxter...el mayor valor del CHDK es el tiempo de exposicion, el resto es de valor muy relativo. Alejandro
mauriciocasilda Publicado 1 de Mayo del 2009 Publicado 1 de Mayo del 2009 Gliese aca te dejo los scripts que te comente anteriormente: Motion detection ( detector de movimiento) , este scripts cambiando los valores de grillado desde el setup del scripts en la camara a valores por ejemplo de 15 x 15 y elvalor mas importante es el que se le da a threshold , por defecto es 10 , te da un rango a elegir desde 0 a 255 , mientras mas cerca del 0 elijas mas sencible es la captura de movimiento yo uso un valor de 5 copien y peguen esto en la carpeta scripts de la camara rem Author: MLuna - based om MX3 sample script rem Tested on S3IS only rem Requires Fingalo's build v 119 rem Use with caution! @title Motion Detection rem Shot without auto-focus/with auto-focus/continously (nedd to put in continous mode manually) rem T implies test mode with MD cells drawing and no shots taken @param a Shot (0=nf/1=f/2=c/3=t) @default a 1 rem How long the shutter button will be pressed in continous mode @param b Continuos shoot (secs) @default b 10 @param c Threshold (0-255) @default c 5 @param d Compare Interval (msecs) @default d 20 @param e Compare Interval (secs) @default e 0 rem If this value is too small, the camera goes continously shooting after the 1st shot. rem Experiment with this value to find one fitted to your needs @param f Begin Delay (secs) @default f 5 @param g Pix step(speed/accuracy adj) @default g 5 @param h Columns @default h 6 @param i Rows @default i 6 rem Frame width in which no MD is performed (in cell units) @param j Dead frame @default j 0 if a<0 then let a=0 if a>3 then let a=3 if c<0 then let c=0 if d<0 then let d-0 if e<0 then let e=0 if g<1 then let g=1 if h<1 then let h=1 if i<1 then let i=1 if j<0 then let j=0 rem Conversions secs to msecs let b=b*1000 let e=e*1000 let f=f*1000 let d=d+e rem This is the timeout in msecs. After this period, the motion trap is rearmed. let T=600000 rem Parameters for the Dead Frame let J=j+1 let H=h-j let I=i-j let t=0 print "press Shutter Button to Stop" :repete md_detect_motion h, i, 1, T, d, c, 1, t, 1, J, J, H, I, 0, g, f if a=0 and t>0 then click "shoot_full" if a=1 and t>0 then shoot if a=2 and t>0 then goto "continuos" if a=3 then goto "test" let t=0 goto "repete" :continuos let X=get_tick_count press "shoot_full" :contloop let U=get_tick_count let V=(U-X) if V release "shoot_full" goto "repete" :test if t>0 then print "Detected cells: ",t else print "No detection in 10 min!" let t=0 goto "repete" end y el otro que es similar pero con mas sensibilidad es MD Lightning , este scripts se usa para la captura de relampagos y rayos en tormentas copien y peguen esto en la carpeta scripts de la camara rem Author: fudgey - based on BarneyFive's MD Lightning6 and MLuna's Motion Detect scripts rem Tested on A570IS, Allbest build 16 rem For bursts, set the camera in continuous shooting mode and set j>0 rem If j>0 in single shot mode, you will see your shot for j seconds on screen. @title Fast MD with Burst/Preview 080205 @param a Columns @default a 6 @param b Rows @default b 4 @param c Threshold (0-255) @default c 10 @param d Compare Interval (ms) @default d 1 @param e Trigger Delay (0.1 sec) @default e 42 @param f Rows to Exclude @default f 0 @param g Pix-Step(speed/accuracy adj) @default g 8 @param h Reg Mode(0-no,1-incl,2-excl) @default h 0 @param i Measure Mode (1-Y,0-U,2-V) @default i 1 @param j Burst/Preview (sec,0=off) @default j 0 if a<1 then a=1 if b<1 then b=1 if c<0 then c=0 if g<1 then g=1 if f<1 then f=1 if j<0 then j=0 e=e*100 j=j*1000 print ">[";a;",";b;"] threshold: ";c x=30000 if j>0 then goto "md_burst" :md_singleshot press "shoot_half" t=0 do md_detect_motion a, b, i, x, d, c, 1, t, h, 1, 1, a, f, 0, g, e until t>0 click "shoot_full" goto "md_singleshot" :md_burst press "shoot_half" t=0 do md_detect_motion a, b, i, x, d, c, 1, t, h, 1, 1, a, f, 0, g, e until t>0 press "shoot_full" let X=get_tick_count :contloop let U=get_tick_count let V=(U-X) if V release "shoot_full" goto "md_burst" Cualquier cosa me avisan o preguntan Saludos Mauricio
Publicaciones recomendadas
Crear una cuenta o conéctate para comentar
Tienes que ser miembro para dejar un comentario
Crear una cuenta
Regístrese para obtener una cuenta nueva en nuestra comunidad. ¡Es fácil!
Registrar una nueva cuentaConectar
¿Ya tienes una cuenta? Conéctate aquí.
Conectar ahora