Apr 14

Modem fax pluscom en linux

HOWTo Install the Pluscom fax modem

lsusb: XXXX Conexant Systems (Rockwell), Inc.

wget http://www.linuxant.com/drivers/dgc/archive/dgcmodem-1.13/dgcmodem_1.13_i386.deb.zip

unzip and make install

you will see /dev/ttyACM0

Apr 01

Evolution data server en python

Algo de codigo en python para acceder mediante python-evolution al calendario de eventos en Evolution

import evolution events = evolution.ecal.open_calendar_source('default', evolution.ecal.CAL_SOURCE_TYPE_EVENT)

for i in events.get_all_objects(): print i.get_uid(),i.get_summary(),i.get_description()

Nov 04

Dynamic time warping en C DTW

A continuación el código que implementa el algoritmo para comparar dos secuencias en variación de tiempo y velocidad.
En concreto se ha usado para un proyecto de ordenes vocales a un programa en python.
Este programa está en desarrollo y se utiliza para encontrar similitudes entre unas ordenes de audio almacenadas en una BBDD y otras ordenes que entran por microfono.

Una vez encontrado el audio con la mayor similitud se toma como una orden que permite interpretarlo en ordenes al sistema y posteriormente transmitirlas a través de un sistema domótico X10.

lo he editado yo siguiendo el algoritmo mas sencillo,
si alguien tiene problemas de memoria, tengo algun cambio en otros documentos con floats

#include <sys/param.h>
#include <math.h>
#include <stdlib.h>
#include <stdio.h>

unsigned int domodtw(int* array1[], int lenarray1, int* array2[], int lenarray2) 
{
// int unsigned 4294967295  int 2147483648
unsigned int** DTW;
unsigned int  i;
unsigned int  j;
unsigned int ret;
DTW = (unsigned int **)malloc(lenarray1  sizeof(unsigned int ));
for (i=0; i<lenarray1; i++){DTW[i]=(unsigned int ) malloc (lenarray2  sizeof(unsigned int));}

for(j = 0; j < lenarray2; j++){DTW0[j] = 9999999; }
DTW0[0]=0;
for (i=1;i<lenarray1;i++)
{
 DTW[i][0] = 9999999;//we load here the array too
  for (j=1;j<lenarray2;j++)
  {
      DTW[i][j] = abs(((unsigned int)array1[i])-((unsigned int)array2[j])) + MIN ) ;
  }

if(i==lenarray1-1){ret = DTW[lenarray1-1][lenarray2-1];}
free(DTW[i-1]);//##freeing that memory
}
free(DTW[lenarray1-1]);
free(DTW);
printf ("\n ######DOMODTW SAYS %d",ret);
return ret;
}

yo lo tengo funcionando y no da petes ni problemas de memoria

Nov 03

Django Community

A must subscribe resource for all things Django.

Visit: http://www.djangoproject.com/community/