martes, 29 de junio de 2010

Delimitar Un Objeto

En la presente práctica delimitaremos un objeto. (Monedas)

Para obtener los limites de área de un objeto lo primero hay que tomar en cuenta su tamaño par poder tomar el valor de área de cada posición.




Debido a que cada moneda tiene diferente posición se pude obtener el área y determinar un rango de medidas



Declararemos variables en la cual podremos almacenar en rango de valores del área para cada moneda
cantidad=0;

Monedas1=find (areas>5202&areas<5252&excentricidad<0.5);

Utilizamos el operador find que calcula las componentes que lo verifican

Como bien podemos observar área de cada moneda.



Monedas1=find(areas>5202&areas<5252&excentricidad<0.5);
statsMonedas4=stats(Monedas4)
figure;imshow(I_moneda)

%Permite mantener abierta para seguir modificando la imagen

hold on;

%StatsMonedas tiene almacenado 5 objetos

cantidad=cantidad+length(statsMonedas4)*0.10

for idx=1:length(statsMonedas4);
h=rectangle('Position',statsMonedas4(idx).BoundingBox,'Curvature',
[0.4,0.4],'LineWidth',2,'LineStyle','-.');
set(h,'EdgeColor',[0.5 0 0]);
hold on
end

La variable cantidad es en donde almacenamos el valor de cada una de las monedas que en nuestro caso son 5 a continuación presentaremos cada una de las monedas delimitadas.

Delimitamos la moneda de 1 peso


cantidad=length(statsMonedas1)*0.01+cantidad;
--------------------------------------------------------

Delimitamos la moneda de 5 peso


cantidad=cantidad+length(statsMonedas2)*0.05
---------------------------------------------------------

Delimitamos la moneda de 50 pesos

cantidad=cantidad+length(statsMonedas3)*0.50
---------------------------------------------------------


Delimitamos la moneda de 10 peso

cantidad=cantidad+length(statsMonedas4)*0.10
---------------------------------------------------------

Delimitamos la moneda de 25 peso

cantidad=cantidad+length(statsMonedas5)*0.25
---------------------------------------------------------



En la variable cantiad almacenamos el valor de cada moneda.

3 comentarios:

  1. Para delimitar un objeto hay que tomar en cuenta el tamaño del objeto, y mediante la toma de valores de área podemos dar un rango de medidas en diferentes posiciones.
    Mediante las investigaciones en internet se hallo recomendaciones que para delimitar objetos con el mismo tamaño se procede a cambiar de posiciones para obtener valores de área. Ya que al no hacerlo se presentaría problemas de intersección de aéreas.

    ResponderEliminar
  2. h=rectangle('Position',statsMonedas4(idx).BoundingBox,'Curvature',[0.4,0.4],'LineWidth',2,'LineStyle','-.');
    set(h,'EdgeColor',[0.5 0 0]);
    hold on

    A través de este codigo es importante observar el como vamos a designar la forma el color y estilo de la linea con la cual se rodeara la imagen deseada esto se lo puede modificar al gusto de cada persona. El delimitar un objeto permite al sistema o al programa identificar el tipo de objeto que se esta seleccionando dentro de la imagen esta si es fija o en caso contrario en movimiento para que en un cierto intervalo de tiempo este actualice su captura

    ResponderEliminar
  3. La delimitación muy importante en las aplicaciones mediante imágenes.
    Particularmente en este codigo se verifica el tamaño de la moneda para identificarla.

    Con esto podemos realizar una aplicacion, la cual mediante una camara que apunto a un conjunto de monedas pueda devolver la cantidad de dinero que se tiene en aquel lugar, una de las tantas aplicaciones

    ResponderEliminar