martes, 30 de abril de 2013

Shape Context Based Corresponding Point Models

El Ejemplo 2D creará un modelo de punto correspondiente (PCM) para un conjunto de 10 contorno de la mano 2D.

El Ejemplo 3D creará un PCM de un conjunto de mandíbula 10 3D superficies trianguladas.

También hay ejemplos utilizando el PCM de entrenar y utilizar modelos 2D/3D forma activa (ASM) y modelos de apariencia activa (AAM). (carpeta "ActiveModels_version7")

El ejemplo 2D toma un par de minutos. El 3D-ejemplo alrededor de 7 horas, y requiere 64 bits Matlab.

La asignación no rígida entre conjuntos de datos se mantiene difeomorfa para evitar doblar la malla. Sin embargo, el optimizador no tuvo éxito en todos los casos de la 3D-ejemplo (tal vez en la próxima actualización)



DESCARGAR 



jueves, 25 de abril de 2013

Aplicacion de Matlab a la Economia


En este ejemplo se pondrá de relieve cómo MATLAB se puede utilizar para llevar a cabo:

Análisis de distribución de valor actual neto de una mina

Modelización y simulación de los precios futuros de tasas de interés y rutas

Las evaluaciones de riesgo basadas en la distribución de los resultados económicos




lunes, 22 de abril de 2013

interpolación ecuación cuadrática, en Matlab

Determinar coeficientes de una ecuación de interpolación cuadrática al tener 3 valores de x, y.

se supone que tiene una ecuación cuadrática y = ax ^ 2 + bx + c y tienen 3 puntos en x y 3 puntos en y. Este script determina a, b​​, c




jueves, 18 de abril de 2013

Ecuacion de Segundo Grado en Python 3 usando Tkinter

En el post anterior (16/abril) publicamos el código para la resolucion de ecuaciones  de segundo grado en python 3.x. Partiendo de este código anterior desarrollamos una aplicacion con interfaz de usuario, usando la librería tkinter, en nuestro intento por aprender programacion en python 3.3. El código queda como sigue.

## graficador de  la funciones
from tkinter import*
from tkinter import messagebox
import matplotlib.pyplot as plt
import numpy as np
ventana = Frame(height = 400, width = 400)
ventana.pack(padx = 10, pady = 10)
### Declarando Variables
a = DoubleVar()
b = DoubleVar()
c= DoubleVar()
restx1 = StringVar()
restx2 = StringVar()

#Declarando funciones 
### funcion graficar
def graficar():
     a = aA.get()
     b = bB.get()
     c = cC.get()
     ax = float(a)
     bx = float(b)
     cx  = float (c)
     x = np.arange(-10,10,0.5)
     y = ax*x**2 + bx*x + cx
     plt.plot(x,y)
     plt.title('a*x^2 + b*x + c = 0')
     plt.xlabel('X')
     plt.ylabel('Y')
     plt.show()

##termina funcion graficar
### inica funcion calcular
def calcular():

        
        a = aA.get()
        b = bB.get()
        c = cC.get()
        ax = float(a)
        bx = float(b)
        cx  = float (c)
        ## calculando Delta
        delta = float(bx**2-4*ax*cx)
           
        if delta<0:
                
                messagebox.showerror('Eror', 'No hay solucion')

        elif delta ==0:
            s == float(-bx/2*ax)
            messagebox.showinfo('resultado','Solucion unica ', s)
        else:
             
             
                  resultado = Label(ventana, text =
                                   "Resultado")
                  resultado.place(bordermode = OUTSIDE, height = 30, width= 100, x = 150, y= 250)
                  resultado1 = Label(ventana, text =
                                   "X1")
                  resultado1.place(bordermode = OUTSIDE, height = 30, width= 50, x = 180, y= 280)
                  resultado2 = Label(ventana, text =
                                   "X2")
                  resultado2.place(bordermode = OUTSIDE, height = 30, width= 50, x = 180, y= 310)
                  x1 = float((-bx+((bx**2 - 4*ax*cx))**0.5)/(2*ax))
                  x2 = float((-bx-((bx**2 - 4*ax*cx))**0.5)/(2*ax))
                  r1 = Label(ventana,textvariable = restx1)
                  r1.place(bordermode = OUTSIDE, height = 30, width= 50, x = 230, y= 280)
                  restx1.set(x1)
                  r2 = Label(ventana,textvariable = restx2) 
                  r2.place(bordermode = OUTSIDE, height = 30, width= 50, x = 230, y= 310)
                  restx2.set(x2)
                  
##iniciando maquetado de  interfaz
aA = Entry(ventana, textvariable = a)
aA.place(bordermode = OUTSIDE, height = 30, width = 50, x = 10, y = 40)
bB = Entry (ventana, textvariable = b)
bB.place(bordermode = OUTSIDE, height = 30, width = 50, x = 130, y = 40)
cC = Entry(ventana, textvariable = c)
cC.place(bordermode = OUTSIDE, height = 30, width = 50, x = 230, y = 40)
## entrada de TExto

xa = Label(ventana, text = "X^2 + ")
xa.place(bordermode = OUTSIDE, height = 30, width = 50, x =70,y=40 )
xb = Label(ventana, text = "X + ")
xb.place(bordermode = OUTSIDE, height = 30, width = 50, x = 180, y = 40)
xc = Label(ventana, text = "= 0 ")
xc.place(bordermode = OUTSIDE, height = 30, width = 50, x=280, y = 40)

### boton de graficar

graficar = Button ( ventana, text = "Graficar", command = graficar)
graficar.place(bordermode= OUTSIDE, height= 40, width = 100, x = 40, y = 200)

## boton calcular
calcular = Button (ventana, text = "Calcular", command = calcular)
calcular.place(bordermode = OUTSIDE, height = 40, width = 100, x = 160, y = 200)
## terminado el  maquetetado de la  GUI

ventana.mainloop()
Nuestro codigo ha crecido en gran manera, en el post anterios solo eran aproximadamente 30 lineas  y en este momento tenemos un total de 100 lineas de codigo  ptyhon 3.3. La apliacion queda de la siguiente manera.



















Compara la cantidad de codigo Python  vs la cantida de  Codigo Matlab, ¿Cual crees que es mas conveniente?, ¿Cual se te hace mas facil?, ¿Cual te enseñan en la facultad de ingenieria? Tu tienes la unica respuesta si deseas aprender python.

martes, 16 de abril de 2013

Ecuacion de Segundo Grado en Python

## Ecuacion de segundo grado 
print ('Modelo de la ecuacion  a*x^2 + b*x + c = 0')
a = float(input('Valor de a: '))
b = float(input('Valor de b: '))
c = float(input('Valor de c: '))
#calculando  las  delta
delta = float(b**2-4*a*c)
          
if delta < 0:
    print('Ecuacion no tiene solucion')

elif delta ==0:
    s == float(-b/2*a)
    print ('Solucion unica: ',s)
else:
    x1 = float((-b+((b**2 - 4*a*c))**0.5)/(2*a))
    x2 = float((-b-((b**2 - 4*a*c))**0.5)/(2*a))
    print('Las soluciones son las siguientes')
    print('X1: ',x1)
    print('X2: ',x2)

## viene mi intento de graficar
import matplotlib.pyplot as plt
import math
import numpy as np
x = np.arange(-10,10,0.5)
y = a*x**2 + b*x + c
plt.plot(x,y)
plt.title('a*x^2 + b*x + c = 0')
plt.xlabel('X')
plt.ylabel('Y')
plt.show()

miércoles, 10 de abril de 2013

Serie de Fourier en Matlab

Analisis de fourier en matlab, la apliacion esta desarrollada con interfaz de usuario para su mayor comprension


Enlace de Descarga: DESCARGAR