viernes, 8 de noviembre de 2024

Introducción a MATLAB: Herramientas y Aplicaciones Prácticas para Ingenieros y Científicos


MATLAB es uno de los lenguajes de programación y entornos de desarrollo más potentes para ingenieros, científicos y profesionales que trabajan con cálculos numéricos. Creado originalmente para resolver problemas de álgebra matricial, hoy en día se utiliza ampliamente en una variedad de campos, desde el procesamiento de señales hasta la inteligencia artificial. Si estás comenzando con MATLAB o deseas saber cómo puedes aprovecharlo en tus proyectos, esta guía te ayudará a conocer las principales herramientas y aplicaciones de este software.


1. ¿Qué es MATLAB y para qué se usa?


MATLAB, abreviatura de Matrix Laboratory, es un entorno de programación diseñado para trabajar especialmente con matrices y cálculos numéricos. Su interfaz intuitiva y su capacidad para realizar cálculos rápidos lo hacen ideal para aplicaciones en ingeniería, física, biología, economía y otras ciencias. Además, MATLAB ofrece una extensa biblioteca de herramientas (toolboxes) para aplicaciones específicas, como procesamiento de imágenes, control de sistemas, análisis financiero y aprendizaje automático.


2. Principales características de MATLAB


Interfaz gráfica de usuario (GUI): Facilita la interacción sin necesidad de escribir mucho código.

Visualización de datos: MATLAB permite crear gráficos 2D y 3D, lo que facilita el análisis visual de datos.

Simulaciones y modelado: MATLAB incluye herramientas como Simulink, que permite la simulación de sistemas dinámicos complejos.

Programación de scripts y funciones: Ofrece un lenguaje de programación propio y estructuras de control como bucles y condiciones.


3. Aplicaciones prácticas de MATLAB


Análisis y visualización de datos: MATLAB es especialmente útil para analizar grandes conjuntos de datos, facilitando la creación de gráficos detallados y personalizables.

Simulación de sistemas: En áreas como la ingeniería eléctrica o la mecatrónica, MATLAB permite simular circuitos, sistemas de control y modelos físicos complejos.

Procesamiento de señales: Es ideal para el análisis de señales en tiempo real, procesamiento de audio e imágenes, y análisis de Fourier.

Aprendizaje automático: Con el Toolbox de Machine Learning, MATLAB facilita la construcción y entrenamiento de modelos predictivos sin necesidad de programar desde cero.


4. Consejos para aprovechar MATLAB en tus proyectos


Aprovecha los toolboxes: Investiga qué paquetes adicionales están disponibles para tu área. Esto te permitirá trabajar con herramientas personalizadas sin tener que programar cada función.

Usa las comunidades y foros: La comunidad de MATLAB es muy activa, y puedes encontrar soluciones a problemas comunes en foros y recursos oficiales.

Explora Simulink para simulaciones: Si tu proyecto requiere simulación de sistemas dinámicos, explora Simulink para trabajar con bloques visuales.


5. Recursos gratuitos para aprender MATLAB


Para aprender MATLAB desde cero, puedes encontrar tutoriales gratuitos en plataformas como:

MATLAB Onramp: Un curso básico interactivo ofrecido por MathWorks.

YouTube y Coursera: Con una variedad de cursos gratuitos y detallados.

Documentación de MATLAB: El sitio oficial cuenta con documentación exhaustiva y ejemplos prácticos para aprender a usar cada herramienta.


Este post ofrece una introducción completa a MATLAB, destacando tanto sus capacidades técnicas como sus aplicaciones prácticas. Puede ser útil tanto para estudiantes como para profesionales que buscan una visión general del software y sus posibles usos. ¡Espero que sea útil para tu blog!

viernes, 7 de enero de 2022

Videos ejemplo de uso de Matlab para tratar imágenes

Dos ejemplos de uso de la Image processing Toolbox de Matlab


Toma de imágenes, cálculo de mapas de profundidad y detección de bordes

https://youtu.be/fFu8xq0qALU


Lupa para lectura de textos

https://youtu.be/ZQ23ASm5Yys

jueves, 5 de julio de 2012

Leer imagen del PC con Matlab

Para leer una imagen desde el ordenador, tenemos que emplear la función imread, la cual nos devolverá una matriz con los valores de cada pixel.

A = imread('nombre_del_fichero.extensión');


Podemos comprobar el tamaño de la imagen cargada usando  [u v w]=size(A) pero si la imagen cargada es una imagen en escala de grises, la matriz A sera de 2Dimensiones, por lo que deberíamos de escribir [u v]=size(A), para conocer el número de filas y columnas.

jueves, 22 de diciembre de 2011

Representar imagen

Para la representación de imágenes en otra ventana se utiliza la función imshow. 


La función imshow representa la imagen que queramos representar en la ventana que indiquemos previamente, además tenemos la posibilidad de indicar dónde y cómo queremos que se represente esta ventana.

La estructura de la función imshow puede ser :

imshow(imagen, [low high]) : en este caso se representa una imagen en escala de grises, indicando low y high el rango de valores de los píxeles que se va a representar. El píxel con valor low o menor se representará en negro y el pixel valor high o mayor se representará en blanco. Si se utiliza un vector vacío [] el pixel de menor valor será el negro y el de mayor valor será el blanco.


imshow(rgb) :

miércoles, 14 de diciembre de 2011

Capturar imágenes desde una web cam

Para capturar imágenes con Matlab se utiliza la Image Processing Toolbox, la cual debes de tener instalada en tu equipo.

Lo primero que tenemos que saber es qué cámaras hay conectadas al equipo, para ello se utiliza la instrucción imaqhwinfo.


>> imaqhwinfo


ans = 


    InstalledAdaptors: {'matrox'  'winvideo'}
    MATLABVersion: '7.12 (R2011a)'
    ToolboxName: 'Image Acquisition Toolbox'
    ToolboxVersion: '4.1 (R2011a)'

El siguiente paso es la creación de un objeto de vídeo de entrada. Esto se hace utilizando la instrucción videoinput(adaptorname, deviceId),  donde adaptorname es un string que identifica al adaptador que se va a utilizar para comunicarnos con la cámara ('matrox', 'videoinput',..) y deviceId es un número entero que indica el dispositivo que se va a utilizar si hay varios con el mismo adaptador.

>> obj=videoinput('winvideo',1)

Summary of Video Input Object Using 'Vimicro USB2.0 UVC PC Camera'.

   Acquisition Source(s):  input1 is available.

  Acquisition Parameters:  'input1' is the current selected source.
                           10 frames per trigger using the selected source.
                           'RGB24_640x480' video data to be logged upon START.
                           Grabbing first of every 1 frame(s).
                           Log data to 'memory' on trigger.

      Trigger Parameters:  1 'immediate' trigger(s) on START.

                  Status:  Waiting for START.
                           0 frames acquired since starting.
                           0 frames available for GETDATA.

Una vez creado el objeto de vídeo, ya se puede empezar a realizar la captura de frames. Para ello se utiliza la función frame=getsnapshot(obj), que devuelve los valores del frame del objeto de vídeo creado.


No olvidar eliminar los datos de la adquisición de imagen de memoria, usando flushdata(obj) y delete(obj).


Para más información sobre cualquier función, escribid help nombredelafunción en el promt de matlab.