Social Icons

twitterfacebookgoogle plusemail

Featured Posts

Lenguajes de Programación

Diversos lenguajes de programación

Dispositivos Móviles

Mini apps en Android, iOS y algunos temas de interés.

Cómputo Integrado

Mini proyectos de sistemas embebidos.

miércoles, 29 de mayo de 2013

Image Compression

In this entry I'm gonna talk about image compression using Huffman
method to compress the image. Huffman is a method that makes a three
keywords where each keyword has a value that have less weight than the
one that is replaced, and as you get more large the three the high
frequencies are more weight than the ones with high frequencies.
Below we can see an example of how does it work.



In the program that I made you need to put a keyword "comprimir" to
select that you wanna compress a file or "descomprimir" to select that
you wanna descompress a file, after you press enter you are gonna put
you're file name once that you put it, the compression or
decompression begins.



When you compress a file with my program you are gonna see in the
terminal a dictionary of frequencies of the values followed by a
binary file created with the Huffman's algorithm and then the time
of execution.




The flow for compress is the next one:


And the flow for decompress is the follow one:

All this happen using the pixel value of each coordinate of the image,
and then using the flow that I mencioned before we can get the image
compressed or decompress (once is compressed).

A good way to examine the performance is saving the time of execution
and the size of the file that print out my program. To see how the performance
is going I recommend a linear graph.

The program just is working for compression, I had problems to decompress
the file but the logic pretty much the same as previous programs that I made
about using Huffman's algorithm.

This is the code that I made:

martes, 28 de mayo de 2013

Bioinformatic

For this homework I have to search an article in the web that talk
about Bioinformatic related with Theory Information. The articule that
I found is the next one:
 
  Integrating Biological Research through Web Services
  Hong Tina Gao, Jane Huffman Hayes, et al.

In this topic they talk about a case of study where demostrates that
Web Services could be key to coordinating and standardizing
incompatible applications in bioinformatics, an effort that is
becoming increasingly critical to meaningful biological research.

This starts with the disadvantage with the people that work in biology,
they need to analyze microarray to search certain proteins, look for
some patterns, certain sequence, etc., in a microarray are aproximatetly hundreds of
millons of molecules so it's to hard to make a search manually, for
this they make scripts where they implement algorithms depending in
what they are working for, then when they get a result they have to
make readable that result. As you see it's very difficult to make a
script, implement an algorithm and then make readable the information.
 
This is a microarray, a set of molecules.


That's why in these guys implement Web Services to avoid that the
people that work in Biology need to know about programming, need to
implement algorithms and then making readable, they said that the
biologist just need to know about basic skills about computer like
uploading a file in a web page, use keyboard and mouse, then they can
put some kind of rules to say if they need to look for some sequence,
search and certain of molecules, proteins, etc., after they put the
rules they just wait like a 10 or 15 minutes for a result, here is
important to say that in normal experiments in a normal computers is
about 1 hour or 10 hours to wait for a result, and after wait the time
necessary you just get a file in the result wished and ready to read.

Below we can see an diagram of how the web service that takes as inputs
microarray works.

  


This way any biologist can make experiments in just minutes, avoiding
that the biologist the need of programming skills.

Conclusion

I think this is a great idea because the biologist just need to make
some clicks to get his results and then get some conclusiones in some
minutes. This help to make a good improvement of the biologist and
increase the levels of experiments, invents and progress in biology.
 

Reference

Gao, H. and Huffman Hayes, J. (2005) Integrating Biological Research
through Web Services. Disponible en:
http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1413114&tag=1
[Accesado: 28 Mayo 2013].

Glosary of Information Theory

Cyclic codes
They are linear block error-correcting codes that have convenient algebraic structures for efficient error detection and correction.

Matrix theory
It's a branch of mathematics which is focused on study of matrices. Initially, it was a sub-branch of linear algebra, but soon it grew to cover subjects related to graph theory, algebra, combinatorics and statistics as well.

Merge
In the context of information theory is like mixing, adding in dictionaries, matrixes and files. 
 
Signal
In the context of information theory is a kind of signal generated by a electromagnetic phenomenon and in each sign codify a content that can be analyzed.

Previous
In the context of theory information could be a file size before it's compressed.

Weakness
In the context of theory information could be if the compression ratio is too low.

Unique
In the context of theory information could be a unique key that could be used for the dictionary as a reference.

Ignore
In the context of theory information could a certain bits that can be used for represent white spaces.

Emit
In the context of theory information could apply in adaptative encoding while the code is compressing a file and when it's require to change some logic of the code you can emit a kind of signal.

Reconstruction
In the context of theory information can be a method that decode a compress file.

Target
 In the context of theory information can be a method that encode a file that is a target.

References.

Cyclic code
http://en.wikipedia.org/wiki/Cyclic_code

Matrix theory
http://en.wikipedia.org/wiki/Category:Matrix_theory

lunes, 27 de mayo de 2013

Redes Sensoras

Para esta semana se buscaron papers sobre el tema de Redes Sensoras
para la clase de Redes de la Telecomunicación, el paper que encontre
se llama

         The Deployment of a Smart Monitoring System using Wireless
         Sensors and Actuators Networks
         Nicola Bressan, Leonardo Bazzaco, Nicola Bui, et al.


Lo que proponían en este paper es una implementación de un sistema de
vigilancia inteligente en una red de sensores inalámbricos, en donde
se enfocan en un protoloco de enrutamiento sólido a tráves de un protocolo de
enrutamiento que es de  bajo costo de energía y con poco ruidos (RPL).
Su estructura se basa en una aplicación ligera de transferencia de
estado de representación (REST) paradigma por medio de un servicio web
binario, y en un mecanismo de publicación y suscripción, por lo que
cada nodo tiene un conjunto de recursos (por ejemplo, sensores
ambientales) a disposición de las partes interesadas.

Realizaron pruebas dentro de una red que se encuentra en prueba dentro
de algunas regiones de Estados Unidos esta red se llama WSAN ahí
buscan modelar el comportamiento de un tamaño de construcción de redes
inteligentes y se centran en la comprensión de si las soluciones
estándar WSAN están preparados para soportar los requerimientos de las
redes inteligentes, las redes sensoras se pueden beneficiar en gran
medida si con usados como los servicios web y que si se utilizan
ampliamente podría tener éxito en mecanismos de integración de algunos
sistemas que permite crear una mayor distribución en cualquier sistema
que sea construido en componentes estándar en cualquier sistema, por
ejemplo en la industria, casa de automatización, así como sistemas de
gestión de energía entre muchas cosas.

TinyREST implementa de una manera eficiente servicios web dentro de la
red WSAN al minimiazar cuidadosamente la sobrecarga introducida por la
capa de transporte, usando formato de datos como XML y WSDL. Los
servicios web se pueden clasificar en base RESTful y base SOAP, aunque
el enfoque le quieren hacer es a RESTful ya que es ligero.

Demostraron la viabilidad de WSAN basada en IP, donde los nodos envían
datos a tráves de servicios web. Este trabajo parte de la
implementación ligera de los servicios web basados en REST en la
arquitectura WSAN.

Hicieron algunos experimentos sobre el enrutamiento, en particular en
la focalización sobre la fase de configuración y las principales
funciones de control como son los parámetros de la función de
configuración del algorítmo RPL. El experimento lo realizaron en la
universidad de Pandova.



En el despliegue del servidor central se mantiene la conexión a un
nodo que es un sensor que esta colocado en la esquina superior
izquierda de la imagen. La topología de la red se encuentra con 80
nodos de los cuales se han escogido de diferentes area y diferentes
densidades de nodo; lugares como cuellos de botella (pasillos), así
como salas de laboratorio y esto permite probar el rendimiento de
enruteamiento en un entorno de reproducción de un despliegue de redes
inteligentes realista. Cada nodo ejecuta ejecuta el protocolo RPL.

Con el fin de probar el impacto de los parámetros de RPL en la
creación de la infraestructura de enruteamiento dejaron que las
constantes varien un poco en cambios en un tiempo de intervalos
preconfigurados.

Ahora veamos la evaluación de desempeño en donde se muestran los nodos
registrados en tiempo en donde K representa el número de transmisiones
realizadas con el servidor central.


 
Conclusión

Este trabajo tiene un gran futuro como para cuidades inteligentes, por
medio de este tipo de comunicación podríamos llegar a obtener
servicios de la web sin necesidad de estar conectados en la web esto
ayudaría a que cualquier tipo de lugar inteligente pueda mantener
comunicación con sus actuadores y que así envie información en tiempo
real sin la necesidad de comprar componentes que son relativamente
caros.


Referencias

Nicola Bressan, Leonardo Bazzaco, Nicola Bui, et al. (2013) The Deployment of a Smart Monitoring
System using Wireless Sensors and Actuators Networks.
Disponible en :
http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=5622015
[Acesado en: 27 Mayo 2013].