Libertonia
Portada · Todo · Software Libre · Desarrolladores · Comunidad · Internet · Tecnología · Meta · Diarios
Procesado de señal y linux

ridiculum's Diary
Por ridiculum
departamento busca-busca-y-encontraras , Sección Diarios
Puesto a las Tue Oct 21st, 2003 at 08:06:01 PM CET
Hace no mas de 2 semanas fue mi cumple y andaba buscando un libro para mi regalo. Estaba dandole un poco a goole, y la verdad es que es econtre un par de cosas interesantes.

 


Buscaba libros sobre receptores de comunicaciones digitales y que a ser posible no pasasen de los 100€. Tenia uno ya en el punto de mira: Digital comunications receivers: synchronization, channel estimation and signal processing.

Pues mientras buscaba eso, me tope con un proyecto en sourceforge con una pinta muy interesante: Signal Processing Using C++ Classes o spuc.

En ese instante me acorde de otro proyecto que tambien pinta muy bien: libDSP

A esto tambien le podemos añadir la bibliteca cientifica GNU

No he usado ninguna de estas bibliotecas, pero por el conjunto de funciones la verdad es que promete bastante y se parece (asi por encima) al toolbox de tratamiento de señales de matlab, o al menos a la parte que yo recuerdo haber usado de ese aberrante lenguaje.

¿Podrian en las escuelas universitarias eliminar matlab y usar octave/python+Numeric/perl+pdl/C++ ?

¿Conoceis o usais alguna biblioteca de este estilo ?

< Programando con Ruby y GTK+ (y II) (0 comments) | Extremadura y Small-Land - LinEx y Squeak (0 comments) >
Enlaces Relacionados
· Digital comunications receivers: synchronization, channel estimation and signal processing
· spuc
· libDSP
· la bibliteca cientifica GNU
· More on ridiculum's Diary
· Also by ridiculum

Menu
· crear cuenta
· FAQ
· búsqueda
· Fuentes de Noticias

Login
Nueva cuenta
Usuario:
Contraseña:

Ver: Modo: Orden:
Procesado de señal y linux | 14 comentarios (14 temáticos, editoriales, 0 ocultos)
Felicidades (5.00 / 1) (#1)
por advocatux a las Tue Oct 21st, 2003 at 09:56:53 PM CET
(Información Usuario)

Muchas felicidades por tu cumple.

Dentro del proyecto vaporware propongo, ya que no hay ninguno de los cumpleañeros que se arranque con la iniciativa de invitarnos a unas cañas, que se organice un reagrupamiento por Libertoniano(a)/mes de cumple para ir haciendo un grep -L pasta-gansa y subvencionar una gira de fiestas libertonianas :)

Respecto a los libros que preguntas no tengo ni idea. Igualmente desconozco como habrás dejado al pobre "Goole" después de que comentes: "Estaba dandole un poco a goole" X'DDD
--
- Por una Europa libre de Patentes de Software - EuropeSwPatentFree


 
Felicidades! (none / 0) (#2)
por d Orb a las Wed Oct 22nd, 2003 at 11:57:59 AM CET
(Información Usuario) http://skint.shef.ac.uk/

Pues felicidades en tu cumple, y vete pensando en otro tipo de libros: esos que quieres hacen que se te caiga el pelo pronto, pierdas vigor sexual y engordes :-) Con menos cachondeo, yo estoy trabajando en una mezcla de procesamiento de señales, imágenes y microondas (sistemas de radar de apertura sintética). El tema éste tiene bastante de programar algoritmos, algebra lineal, análisis espectral, estadística... Y hasta ahora me he servido de las siguientes herramientas:
  • GSL: es una librería excelente. Por otro lado, tiene cosas que son mejorables, aunque me dá que es más bien que es por el C que por GSL (ej: álgebra lineal. Duele).
  • Octave: si conoces matlab, es sencillo de usar, y a no ser que tengas que hacer gráficas muy complejas (en cuyo caso hay que hacerlo en gnuplot a pelo, casi), pues está muy bien
  • SciPy Una virguería, aunque aun está bastante en desarrollo. En general, funciona bien, tiene unas funciones gráficas simpáticas, y es más o menos estable. Desgraciadamente, dá la impresión de que el desarrollo no va lo rápido que uno quisiera. Lo que sí que promete muchísimo es Chaco, una librería para gráficos que complementa a SciPY. Los ejemplos se salen, y éso que es versión 0.1alpha!
  • Compilador de fortran 95 (propietario; libre aun no hay). Es fácil de programar en F95, tienes un porrón de librerías disponibles, y a no ser que te encebolles con alguna librería rara, es portable. Lástima de no tener soporte de F95 en gcc aun

Skint resources <http://skint.shef.ac.uk>


Ohh SAR rocks :) (none / 0) (#4)
por ridiculum a las Wed Oct 22nd, 2003 at 04:11:26 PM CET
(Información Usuario)

vete pensando en otro tipo de libros: esos que quieres hacen que se te caiga el pelo pronto, pierdas vigor sexual y engordes

Por lo pronto llevo melena y peso 53kg. Espero que eso que cuentas no se cumpla en todos sus puntos :)

Con menos cachondeo, yo estoy trabajando en una mezcla de procesamiento de señales, imágenes y microondas (sistemas de radar de apertura sintética)

Ohh, yo quiero de eso. Donde hay que echar un CV para trabajar en eso?. Curras justo en las dos de las cosa que a mi me gustaria hacer para ganarme la vida: microondas y tratamiento de señales :)

Ahora vayamos a la parte tecnica.

No se que problemas tiene GSL con el algebra lineal por que no he usado aun esa biblioteca. Podrias darme algun ejemplo o alguna url donde comenten eso?

Si, se matlab. El problema es que no me gusta matlab. Me parece una herramienta abobinable, que se esta sacando en muchos sitios de contexto y se esta usando para todo, cosa que a mi me parece una salvajada.
Ahora mismo estoy junto con otro compi convirtiendo un programa en matlab de unas 4000 lineas de matlab (con su horrible y lento GUI) y la verdad es que como lenguaje es infumable.

Con Scypy ya empezamos a hablar de algo normal y util. Python si me parece algo mas adecuado para hacer programas largos. Ademas, sino recuerdo mal, NumPy (ahora llamado numeric por lo visto) proporciona unas caracteristicas similares en cuanto a la hora de usar arrays/matrices que las que tenemos en matlab/octave.
Tambien hay cosillas para tratamiento de imagenes, pero ahora mismo no soy capaz de encontrarlo en mi bookmark. Solo veo python-imaging y PARC pero creo que habia algunas cosas más.

Respecto a fortran, la verdad es que poca cosa puedo decir, excepto que ya podia la UIT-R haber modernizado sus programas de calculo, no que ahora me toca enfrentarme a ellos para poder continuar mi proyecto final de carrera. Argg, que pesadez.

[ Padre ]


SAR-Ao (none / 0) (#5)
por d Orb a las Wed Oct 22nd, 2003 at 04:35:17 PM CET
(Información Usuario) http://skint.shef.ac.uk/

Ohh, yo quiero de eso. Donde hay que echar un CV para trabajar en eso?.


En el extranjero :-/// Prueba DLR, por ejemplo :-)

Sobre lo de las trobas, caída del cabello, bueno, estar estoy un poco (sólo un poco :D) más orondo que tú, o sea que algo de verdad habrá...

El problema con el álgebra lineal de GSL es que no es tan facil como escribir A .ix. B (por ejmplo). Los vectores y las matrices se atienen a una estructura propia, que supongo que viene de que en C no hay un estándar para definirlos, así que te tienes que ajustar a ella. Y si piensas en utilizarla desde un principio, bien. Si lo a haces a posteri, pues no tan bien. De todas maneras, es un proyecto que recibe muy poco eco, pero que sale adelante muy rápidamente. La cantidad de funciones especiales raras que tiene implementadas da verdadero vértigo. Si tienes que hacer ajustes de parámetros estadísticos, es una maravilla.

Python estaría muy bien si fuese algo más estable. Me explico: tener que estar bajándose la versión del CVS, compilando y demás macanas es un cristo, cuando hay apt-get (me pongo el capuchón de nazareno). Los gráficos siguen siendo más complicados de lo que deberían ser. Y no es tan completo como GSL (aunque yo tengo casi todo lo que necesito). Como scipy está bajo licencia BSD (o parecida), no pueden utilizar GSL (GPL), lo cual es una pena (es código validado, eficiente, portable etc etc etc). Así que hay un poco de reinventar la rueda. Además, la comunidad python es genial sacando proyectos para gráficos y dejarlos a medias.
Skint resources <http://skint.shef.ac.uk>
[ Padre ]


 
matlabing (none / 0) (#6)
por preage a las Wed Oct 22nd, 2003 at 08:27:27 PM CET
(Información Usuario) http://geocities.com/dariapra

Si, se matlab. El problema es que no me gusta matlab. Me parece una herramienta abobinable, que se esta sacando en muchos sitios de contexto y se esta usando para todo, cosa que a mi me parece una salvajada. Ahora mismo estoy junto con otro compi convirtiendo un programa en matlab de unas 4000 lineas de matlab (con su horrible y lento GUI) y la verdad es que como lenguaje es infumable.

Servidor, como todo aquel que fue estudiante de teleco, tuvo que andar con Matlab, incluyendo su proyecto de fin de carrera (PFC).

No estoy de acuerdo contigo en que Matlab sea una herramienta abobinable. En mi opinión, está bien para la implementación de algoritmos. Otra ventaja es que es fácil de utilizar para cualquier usuario que tenga unos conocimientos muy básicos de programación.

Para lo que, en mi opinión, no vale, es para implementar sistemas (que no algoritmos) complejos. El lenguaje de programación, en este sentido, es bastante limitado y esto probablemente sea consecuencia de haberlo hecho tan fácil. Y si se quiere velocidad, Matlab tampoco me parece una elección acertada, estamos hablando de un lenguaje interpretado.

El fabricante de este producto, consciente de estas limitaciones, hace tiempo que vende Matlab Compiler. El compilador Matlab permite convertir scripts y funciones Matlab (m-files) en código C o C++, bien ya compilado o en código fuente. Lo utilizé en mi PFC y el funcionamiento fue correcto. Por desgracia no pude hacer mi PFC con Linux, sino con Windows y no pude probar el compilador Matlab bajo Linux; de hecho, ni siquiera sé si existe en la versión de Matlab para Linux. Si hay funciones excritas en Matlab que te interesan y si puedes utilizar el compilador Matlab, quizás puedas ahorrar tiempo.

Pena que no exista, que yo sepa, nada paracido para Octave.

[ Padre ]


Octave (3.00 / 1) (#7)
por d Orb a las Wed Oct 22nd, 2003 at 11:32:46 PM CET
(Información Usuario) http://skint.shef.ac.uk/

Creo que para Octave no hay compilador; Scilab tiene una especie de compilador (traduce a Fortran 77 o algo así), aunque sólo lo he visto mencionado en la documentación y nunca lo he probado. También está MatWrap, que no se ha movido mucho desde el 2001, que hace interfaces para Octave (o Matlab) a partir de clases de C++, funciones de C, etc. El compilador de Matlab para Linux funciona, aunque no tiene soporte para gráficos. O sea que es relativamente fácil compilar funciones y cosas numéricas, pero hace falta el interpréte para los gráficos o GUIs, si mal no recuerdo.
Skint resources <http://skint.shef.ac.uk>
[ Padre ]


 
Algo iba a pasar con matlab (none / 0) (#8)
por ridiculum a las Thu Oct 23rd, 2003 at 03:13:46 AM CET
(Información Usuario)

Intuia que mis adjetivos a matlab no iban a pasar desapercibidos.

He hablado con muchos compañeros sobre matlab y creo que muy pocos son los que no les guste la herramienta. El problema es que a mi me disgusta enormente.

Si como tu dices, matlab fuera algo maravilloso para crear algoritmos de forma rapida y probarlos pues cojonudo, pero la cuestion es que yo creo que esta en tierra de nadie.

Yo tuve que escribir un vocoder, y el algoritmo de codificacion/decodificacion, lo escribí en matlab. Sin embargo, en algunas asignatura, como Comunicacines moviles, o radar, o incluso radiodifusion, mandaban practicas mas o menos complejas, con su GUI y todo, y la gente las hacia integras en matlab. A mi eso me parece aberrante.

Y lo que me parece ya el descojone es escribir un PFC en matlab.

Si mathworks fuera conciente de la limitacion de su producto, este no tendria la posibilidad de crear GUI's (por poner un ejemplo).

El lenguaje en si es realmente simple, asi que no veo la posiblidad de escribir un programa medianamente largo sin volverse loco. Es como el basic mas o menos. Lo unico que sostiene a matlab, no es el lenguaje, ni el IDE (que hasta la version 5 no tuvo depuraror, que yo recuerde). Es el cojunto de toolbox. Es algo asi a java o c#. Lo bueno de ellos no es el lenguaje (aunque no es comparable), es el framework que tiene a su alrededor.

Por cierto, si hay version de matlab para linux.

Para octave, creo que se intento hacer algo. La idea era utilizar swig para generar los cabos necesarios para crear un .so y poder utilizarlo desde octave. Creo que no se avanzó.
Actualmente, swig genera cabos para php, python, perl, c#, tlc, ruby, java, scheme y ocaml.

[ Padre ]


Matlab (none / 0) (#9)
por d Orb a las Thu Oct 23rd, 2003 at 12:16:06 PM CET
(Información Usuario) http://skint.shef.ac.uk/

Hombre, Matlab es una buena opción para un montonazo de cosas (precio, libertad aparte). El lenguaje no es un lenguaje bonito, de fácil extensión y demás, pero bueno, tampoco lo es Visual Basic (o Perl, por favor, no me inmoléis), y tampoco pasa nada: la gente lo usa. En realidad, Matlab tiene un montón de facilidades para hacer cosas que en C o C++ son una carrera de obstáculos (en F95 no: vieron lo que hacía matlab, y lo han copiado!). Por ejemplo, seleccionar "cachos" de un tensor:
Matlab
A(7:8,:,5)
C
Para empezar, reservar memoria para un tensor de almacenamiento, copiarlo todo por bucles...
F95
A(7:8,:,5)


Otra cosa importante es que para GUIs y demás, Matlab es fácil. Hasta tiene un creador de GUIs que hace que la gente que va a utilizar Matlab se sienta a gusta haciéndolo. En C/C++ aparte de tragarte los truños de código anteriormente citados, tienes que hacer dos doctorados: uno para entender el toolkit gráfico, y otro para desarrollar una serie de widgets que hagan las gráficas bonitas y presiosas (y que te las salven en EPS). La mayor de las GUIs de matlab no dejan de ser una serie de selectores y gráficas. Y hacer eso no tiene que ser difícil. La gente utiliza Matlab para hacer algoritmos, analizar datos y demás, no para hacer interfaces de usuario curradas.

Además, Matlab es multiplataforma. Al menos, a mí me va bien en Solaris, Linux y Windows sin ninguna librería extra. En realidad, scipy (y IPython en particular) toman bastante prestando de Matlab.
Skint resources <http://skint.shef.ac.uk>
[ Padre ]


En defensa del C++ (none / 0) (#12)
por javiernoval a las Fri Oct 24th, 2003 at 11:40:25 AM CET
(Información Usuario)

Si quieres hacer aplicaciones de cálculo numérico en C, efectivamente casi no te queda más remedio que hacer lo que dices en tu comentario. Pero para C++ al menos sí que existen muy buenas bibliotecas que, aún sin ser tan cómodas como el lenguaje del Matlab, sí que simplifican bastante el trabajo. Creo recordar que boost incluía alguna utilidad al respecto, pero la verdad, la que mejor conozco (no tanto por el uso, sino por el estudio de su documentación y de las técnicas que emplea) es Blitz++. Con ella, el ejemplo que has puesto sería algo así:
Array<float, 2> A(20, 20);   // Un array de floats de 2 dimensiones, tamaño 20x20

// unas líneas más abajo...

Array<float,2> C = A(Range(6, 7), Range(fromStart,4));


Desde luego más cómodo que reservar memoria y usar bucles es, y con un optimizador decente no se pierde mucho rendimiento.

Tienes más información sobre Blitz++ en su documentación o en artículos como éste..

[ Padre ]


Blitz++ (none / 0) (#13)
por d Orb a las Fri Oct 24th, 2003 at 12:25:00 PM CET
(Información Usuario) http://skint.shef.ac.uk/

Hace tiempo (un par de años) intenté utilizar Blitz++, y bueno, sí que prometía. Ahora bien, por aquellas calendas, la documentación era complicadísima, y yo no tenía aun demasiada idea de Templates, STLs, namespaces ni nada de éso, con lo que se me hacía muy cuesta arriba en un principio hacer nada. Y como yo, supongo que la mayoría de los científicos/ingenieros. Con el tiempo, te das cuenta de que no es tan fiero el león como lo pintan, pero de buenas a primeras, asusta. Está también el tema de los gráficos, pero bueno, eso es a parte.

Si mal no recuerdo, Scipy venía con weave, un rollo que te permitía meter código en C/C++ en medio de tus scripts the python, y los compilaba automáticamente en tiempo de ejecución. Otra de las cosas que hacía era convertir expresiones de python en C++. Aquí hay un ejemplo. Nunca lo he usado
Skint resources <http://skint.shef.ac.uk>
[ Padre ]


 
un respeto, por favor (none / 0) (#11)
por preage a las Thu Oct 23rd, 2003 at 04:39:45 PM CET
(Información Usuario) http://geocities.com/dariapra

Intuia que mis adjetivos a matlab no iban a pasar desapercibidos.

Si en lugar como Libertonia opinas sobre Matlab, un SO, o el software que sea, lo más probable es que otros miembros de esta comunidad den sus opiniones, que no tienen por que coincidir con las tuyas. Si a eso le llamas "no pasar desapercibido"...

Lo que para mí no pasa desapercibido es el tono ofensivo de tu comentario.

Y lo que me parece ya el descojone es escribir un PFC en matlab.

Por "descojone" entiendo que te ríes de mí, ya que para hacer mi PFC utilicé Matlab.

Para empezar, creo que hablas sin saber. Lo digo porque no sabes quién soy y, por lo tanto, no puedes saber si para hacer la parte de programación de mi PFC yo elegí libremente utilizar Matlab o, por el contrario, quien fue mi tutor me impuso utilizar Matlab.

Supongamos que en su día yo elegí libremente utilizar Matlab. Entiendo, en ese caso, que te descojonas, que te ríes de mí. Si es así, creo que deberías aprender a distinguir que el que algo te disguste (como por ejemplo, Matlab) no implica que sea malo. A mí, por ejemplo, no me gusta PHP (prefiero JSPs/servlets) y no por ello pienso que PHP sea una m**rd*; ni siquiera pienso que la tecnología JSP/servlet sea mejor que PHP.

[ Padre ]


 
RFB: qué pasa con los links (none / 0) (#3)
por thibaut (asp16 [ykwim] alu.ua.es) a las Wed Oct 22nd, 2003 at 02:35:39 PM CET
(Información Usuario)

Departamento busca-busca-y-encontrarás, nunca mejor dicho, porque para seguir los links hay que buscar y buscar en el source...

A ver si un BOFH caritativo se pasa por aquí y corrige los tres primeros links esos que no tiran (los dos primeros tienen un href del tipo href=""http://..., y al tercero, aparte de hacer publicidad subliminal de BSD :-), le faltan los dos puntos en el http://).

P.S.: ¿Alguien no sabe lo que es un RFB?



links (none / 0) (#10)
por Reboot a las Thu Oct 23rd, 2003 at 04:05:04 PM CET
(Información Usuario)

links corregidos


Reboot

[ Padre ]


 
Otra lib mas (none / 0) (#14)
por ridiculum a las Wed Oct 29th, 2003 at 02:11:18 AM CET
(Información Usuario)

Acabo de ver en freshmeat una nueva lib para estos temas: IzSound

Parece bastante nueva, va solo por la version 0.3, y como el nombre indica orientada al tratamiendo de audio. Ademas, es C++.





 
Procesado de señal y linux | 14 comentarios (14 temáticos, editoriales, 0 ocultos)
Ver: Modo: Orden:

ecol Logo Powered by Scoop
Todas las Marcas Registradas y copyrights de esta página son propiedad de sus respectivos dueños.
Los comentarios son propiedad del que los escribe.
Los iconos de las noticias y el logotipo son propiedad de Javier Malonda.
El Resto © 2002 Escomposlinux.org y aledaños.

Puedes sindicar los contenidos de libertonia en formato RSS 1.0 y RDF 0.9. También se puede sindicar la cola de envíos pendientes de moderación.

El proyecto escomposlinux.org está dedicado a la memoria de tas

crear cuenta | faq | búsqueda