Enmascaramiento en MATLAB

Sheeraz Gul 20 junio 2023
Enmascaramiento en MATLAB

Este tutorial demuestra el concepto de enmascaramiento en MATLAB.

Enmascaramiento en MATLAB

Una Máscara se considera una interfaz personalizada para un bloque que se utiliza para ocultar el contenido de ese bloque y hacer que aparezca como un bloque atómico con el cuadro de diálogo de parámetros dado y el icono del bloque.

La máscara encapsulará la lógica del bloque y proporcionará acceso controlado a los datos del bloque; también simplifica la apariencia gráfica del modelo.

Se creará una definición de máscara y se guardará con el bloque cada vez que enmascaremos un bloque. Una máscara no cambiará las características de un bloque; solo cambiará la interfaz del bloque.

Podemos proporcionar acceso a uno o más parámetros de bloque subyacentes definiendo el parámetro de máscara en la máscara. El enmascaramiento se puede utilizar por las siguientes razones.

  1. Para mostrar un icono en el bloque.
  2. Cuando se necesita un cuadro de diálogo personalizado para el bloque.
  3. Inicializar parámetros usando código MATLAB.
  4. Cuando se necesita una descripción personalizada que sea específica del bloque enmascarado.

También podemos generar máscaras lógicas utilizando código MATLAB además del editor de máscaras. Aquí hay un ejemplo.

%random structure with size(x) = size(y) = size(z)
Demo_Struct.x = round(rand(3,7)*2-1);
Demo_Struct.y = round(rand(3,7)*2-1);
Demo_Struct.z = round(rand(3,7)*2-1);

%logical mask
mask = Demo_Struct.x>=0;

%applying the mask to each field
New_Struct = structfun(@(p) p(mask),Demo_Struct,'UniformOutput',0)

El código anterior intenta crear una máscara a partir de uno de los campos de un tipo de datos de estructura y luego la aplica a toda la estructura. La salida mostrará que la máscara se aplica a toda la estructura.

New_Struct =

    x: [15x1 double]
    y: [15x1 double]
    z: [15x1 double]
Sheeraz Gul avatar Sheeraz Gul avatar

Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.

LinkedIn Facebook