Cómo dibujar la bandera de Japón usando MATLAB

Requisito previo: Representación de imagen RGB

MATLAB, también llamado Matrix Laboratory, es un entorno de computación numérica y una plataforma para lenguajes de programación. Fue diseñado y desarrollado por MathWorks. MATLAB es un marco que nos permite realizar manipulaciones de arrays, implementar algoritmos, trazar funciones y datos, crear interfaces de usuario e interactuar con programas que están escritos en diferentes lenguajes de programación, es decir, C, C++, python, java, etc.

¿Cómo dibujar una imagen coloreada en MATLAB?
Una imagen coloreada se puede representar como una array de 3 orden. El primer orden es para las filas, el segundo orden es para las columnas y el tercer orden es para especificar el color del píxel correspondiente. Aquí usamos el formato de color RGB, por lo que el tercer orden tomará 3 valores de Rojo, Verde y Azul respectivamente. Los valores de las filas y columnas dependen del tamaño de la imagen.

Enfoque para dibujar la bandera de japón:

  • Haga una array cero de orden 3 que tenga dimensiones (300, 500, 3) donde 300 indica el número de píxeles para las filas, 600 indica el número de filas y 3 indica el código de color en formato RGB.
  • Primero colorea toda la array en color blanco. RGB para el color rojo es (255, 255, 255).
    I(:, :, :)=255;
  • Aplique bucle en filas y columnas e implemente la ecuación del círculo de manera que obtengamos un círculo en el centro de la bandera y lo coloreemos de carmesí usando el formato RGB.
    Ecuación del círculo:
    ((x-h)^2 - (y-k)^2)=r^2

    donde (h, k) son los centros, (x, y) son las coordenadas del eje x y el eje y y es el radio del círculo.
    El formato rgb para el color de la gloria carmesí es (188, 0, 45).

A continuación se muestra el código:

% create a 2-D matrix and paint it white
I = uint8(zeros(300, 500, 3))+255; 
  
%the center point 1 through which the circle will pass
circle_center1=150; 
  
%the center point 2 through which the circle will pass
circle_center2=250;  
  
radius=6.32;    % radius of the circle
x=i;            % x-axis co-ordinate
y=j;            % y-axis co-ordinate
  
%loop for rows i.e. for x-axis
 for i = 101:200
   
     %loop for columns i.e. for y-axis
      for j = 101:300
        
         %applying the equation of circle to make the circle in the center.
          if round(sqrt((i-circle_center1)^2 + (j-circle_center2)^2)) < radius^2
            
            % fill the circle with crimson glory
            % color using RGB color representation.
            I(i, j, 1) = 188;
            I(i, j, 2) = 0;
            I(i, j, 3) = 45;
              
          end        
           
      end  % end column loop.
 end       % end row loop.
   
% show the image formed. 
figure, imshow(I);  

Producción:

Publicación traducida automáticamente

Artículo escrito por kanugargng y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *