Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Biomédica
Herramientas computacionales
Mario Valderrama
mvalderr@uniandes.edu.co
Herramientas computacionales: lenguajes de programación
➢ C, C++
-Propósito general
-Implementación de software de sistema y aplicaciones
-Gran mayoría de arquitecturas de computador
-Acceso a recursos de bajo nivel (p.ej. apuntadores a direcciones
de memoria)
-Portabilidad limitada
-Adecuado para sistemas en tiempo-real (velocidad, robustez,
etc.)
-Mayor tiempo de programación
Herramientas computacionales: lenguajes de programación
➢ C
- Programación procedimental
- Top-down
- Function-driven
- No acepta funciones dentro de estructuras
➢ C ++
- Programación multi-paradigmas (p.ej. objet-oriented, proced., etc.)
- Bottom-up
- Object-driven
- Acepta funciones dentro de estructuras
Herramientas computacionales: lenguajes de programación
Algunos GUIs
Algunos GUIs
CodeBlocks (Multi-plataforma)
Herramientas computacionales: lenguajes de programación
Ejemplos VTK
Herramientas computacionales: lenguajes de programación
➢ GNU Octave
-Free y open-source
-Multiplataforma
-Lenguaje interpretado de alto nivel
-Computación numérica (problemas lineales y no-lineales)
-Altas capacidades gráficas para visualización y manipulación
-Muy similar a Matlab (corre scripts de Matlab)
-Disponibilidad de poderosos toolboxes (p.ej. signals, control,
statistics, etc.)
Herramientas computacionales: lenguajes de programación
➢ GNU Octave
Herramientas computacionales: lenguajes de programación
➢ GNU R
-Free y open-source
Multiplataforma
-Estadísticas (modelamiento lineal y no lineal, clásicos tests,
time-series analysis, clasificación, clustering)
-Manipulación de datos, computación numérica y facilidades
gráficas.
-Disponibilidad de third-party packages
Herramientas computacionales: lenguajes de programación
➢ GNU R
Herramientas computacionales: lenguajes de programación
➢ Matlab
-Propietario (www.mathworks.com)
-Multiplataforma
-Lenguaje interpretado de alto nivel
-Poderosas capacidades de computo
-Reducido tiempo de programación (comparado a C,C++ p.ej.)
-Disponibilidad de toolboxes nativos y contribuciones externas:
• Parallel computing, Statistics, Optimization, Control, Signal
and Image processing, Data base, etc.
Herramientas computacionales: lenguajes de programación
➢ Matlab
Herramientas computacionales: lenguajes de programación
-Free y open-source
-Multiplataforma
-Lenguaje interpretado
-Programación multi-paradigma (p.ej. object-oriented,
imperative, etc.)
-Uso de scripts
-Uso de identación para la delimitación de bloques
-Librerías nativas y third-party toolboxes (p.ej. numpy, scipy,
matplotlib, complex systems, etc.)
Herramientas computacionales: lenguajes de programación
Herramientas computacionales: lenguajes de programación
https://beeware.org/
-Genera aplicaciones para diversas plataformas (incluidos
sistemas móviles), a partir de un único programa escrito
en Python!
-Integra librerías para generar interfaces gráficas (GUI)
con múltiples funcionalidades.
Herramientas: bases de datos
www.physionet.org
-MIT, Beth Israel Deaconess Medical Center, Harvard Medical
School, Boston University, McGill University.
-Gran colección de señales fisiológicas y software de acceso libre
que puede ser usado para investigación.
Herramientas: bases de datos
PhysioNet (www.physionet.org)
PhysioBank
• Multi-Parameter: ECG, presión sanguínea, respiración,
saturación de oxígeno, EEG, entre otras.
• ECG databases: normales y patológicos (p.ej. arritmias,
etc)
• Neuroelectric (EEG) y Myoelectric (EMG)
• Imágenes (MRI)
Herramientas: bases de datos
PhysioNet (www.physionet.org)