jump to navigation

Gráficos de superficie en scilab 16.10.11

Posted by Migsar in Scilab.
Tags: , , , , , , , , ,
add a comment

Este es el primero de una serie de pequeños tutoriales de Scilab que espero subir a este blog, pensé en abrir un blog dedicado solamente a cosas de ingeniería, sin embargo, decidí que hasta ahora he puesto aquí todas las cosas de mi vida juntas y siempre está la opción de ver los posts por categorías.

Lo primero es decir que Scilab es un software francés para cálculo matemático, similar a Matlab, Mathcad y otros tantos, pero de código libre, lamentablemente en México no es tan usado por lo que en el sitio oficial (http://www.scilab.org) no aparece documentación en español, este ejemplo lo publico en español con la esperanza de fomentar un poco su uso. La ayuda de Scilab 5.3.3 en inglés se encuentra en (http://help.scilab.org/docs/5.3.3/en_US/index.html) creo que es uno de los sitios que se visitan seguido al usar Scilab.

Objetivo. Construir una matriz de 20×20 con números aleatorios, después normalizarla a 255 para que represente tonos de gris para una imagen, mostrar la imagen y construir una gráfica de superficie de la misma.


// Se crea la matriz a con rand, se multiplica por 1000 y se saca modulo 255.
A=modulo(rand(20,20)*1000,255);

// Se convierte a enteros sin signo de 1 byte (para poder mostrarla).
A=uint8(A);

// Se muestra, es necesario tener instalado el módulo SIVP.
imshow(A);

// Se hace una copia con números reales, para hacer la gráfica de superficie.
Af=iconvert(A,0);

// Se muestra la gráfica de superficie.
surf(Af);

// Si se prefiere usar plot3d se necesita un vector para los ejes.
e=1:20;
//plot3d(e,e,Af);

Las funciones utilizadas fueron:

Es importante notar que imshow es parte del modulo SIVP (Scilab Image and Video Processing) y que utiliza números enteros de 1 byte sin signo, por lo que es necesario hacer la conversión, las funciones para gráficos de Scilab requieren números reales de punto flotante. Finalmente muestro las imágenes del ejemplo que obtuve yo.




Anuncios