jueves, 24 de enero de 2013

Extra points: Problem

In this time for this entry, will solve the problem 1.5.2 of the book Introduction to Information Theory and Data Compression.

The problem here:

2. In eight tosses of a fair coin, find the probability that heads will come up
(a) exactly three times;
(b) at least three times;
(c) at most three times.

Answers:

A)
To solve this part i used next formula:


Where:
  • "k" is the number of hits.
  • "n" is the number of trials.
  • "p" is the probability of success
now resolve:

and the result is: 0.875


B)
To solve this part i used next formula


Where:
  • "k" is the number of hits.
  • "n" is the number of trials.
  • "p" is the probability of succes
  • "u" is the exactly k succes (sigma)

now resolve:

=


=



and the result is: 2.2226

C)
To resolve this part i used the next formula:

 Where:
  • P is probability of the event,
  • C (n, k) are combinations of k elements from n elements a total
  • p is the probability of success and q = (1-p) the probability of failure
  • n number of times to repeat the individual case
  • k number of successes
now resolve:

and the result is:1/256




martes, 22 de enero de 2013

Clase: RFC 768

Introduccion:
User Datagram Protocol (UDP) es un protocolo del nivel de transporte basado en el intercambio de datagramas (Encapsulado de capa 4 Modelo OSI). Permite el envío de datagramas a través de la red sin que se haya establecido previamente una conexión, ya que el propio datagrama incorpora suficiente información de direccionamiento en su cabecera.
 

Tampoco tiene confirmación ni control de flujo, por lo que los paquetes pueden adelantarse unos a otros; y tampoco se sabe si ha llegado correctamente, ya que no hay confirmación de entrega o recepción. Su uso principal es para protocolos como DHCP, BOOTP, DNS y demás protocolos en los que el intercambio de paquetes de la conexión/desconexión son mayores, o no son rentables con respecto a la información transmitida, así como para la transmisión de audio y vídeo en tiempo real, donde no es posible realizar retransmisiones por los estrictos requisitos de retardo que se tiene en estos casos.

 
Características del protocolo UDP
El protocolo UDP (Protocolo de datagrama de usuario) es un protocolo no orientado a conexión de la capa de transporte del modelo TCP/IP. Este protocolo es muy simple ya que no proporciona detección de errores (no es un protocolo orientado a conexión).

Por lo tanto, el encabezado del segmento UDP es muy simple:

Significado de los diferentes campos
  • Puerto de origen: es el número de puerto relacionado con la aplicación del remitente del segmento UDP. Este campo representa una dirección de respuesta para el destinatario. Por lo tanto, este campo es opcional. Esto significa que si el puerto de origen no está especificado, los 16 bits de este campo se pondrán en cero. En este caso, el destinatario no podrá responder (lo cual no es estrictamente necesario, en particular para mensajes unidireccionales).
  • Puerto de destino: este campo contiene el puerto correspondiente a la aplicación del equipo receptor al que se envía.
  • Longitud: este campo especifica la longitud total del segmento, con el encabezado incluido. Sin embargo, el encabezado tiene una longitud de 4 x 16 bits (que es 8 x 8 bits), por lo tanto la longitud del campo es necesariamente superior o igual a 8 bytes.
  • Suma de comprobación: es una suma de comprobación realizada de manera tal que permita controlar la integridad del segmento.

Interfaz IP 

El módulo UDP debe ser capaz de determinar las direcciones de origen y destino en un entorno internet así como el campo de protocolo de la cabecera del protocolo internet. Una posible interfaz UDP/IP devolvería el datagrama de internet completo, incluyendo toda la cabecera, en respuesta a una operación de recepción. Un interfaz de este tipo permitiría también al módulo UDP pasar un datagrama de internet completo con cabecera al módulo IP para ser enviado. IP verificaría ciertos campos por consistencia y calcularía la suma de control de la cabecera del protocolo internet.

Aplicación del Protocolo 

Entre las aplicaciones que utiliza UDP se incluyen:
  • Sistema de nombres de dominio (DNS)
  • Streaming de vídeo, es sin estado, apto para un gran número de clientes, por ejemplo, IPTV
  • Voz sobre IP (VoIP)
  • Es simple, adecuado para fines de bootstrapping o de otro sin una pila de protocolo completa, como el DHCP y el Protocolo Trivial de Transferencia de Archivos.
  • Funciona bien en la comunicación unidireccional, adecuado para la información de difusión, como en muchas clases de descubrimiento de servicios y la información compartida, como tiempo de emisión o del Protocolo de información de enrutamiento 
Conclusión
En mi opinión los protocolos de transporte están diseñados para funciones especificas, es decir, no hay uno mejor que otro si no que cada uno es empleado para distintas aplicaciones por ejemplo el protocolo udp es bastante usado en las comunicaciones de video-llamadas o video-conferencias ya que no importa que no sea orientado a coneccion, no importa que se pierdan datos durante la transmision, que los datos transmitidos tengan un numero de secuencia ya que para este tipo de aplicaciones no es tan relevante que los datos transmitidos lleguen siempre a su destino.
En este tipo de aplicaciones lo peor que puede pasar si se pierden datos es que la comunicación se entrecorte como voces robotizadas o congelamiento de las imágenes


 
BIBLIOGRAFIAS:
http://es.kioskea.net/contents/internet/udp.php3
http://www.rfc-es.org/rfc/rfc0768-es.txt 

Laboratorio 1: Escala de grises, umbral y filtro

Esta actividad consistió en realizar un programa, el cual al proporcionarle una imagen convertirla a escala de grises, también determinar umbrales para que los píxeles menores y mayores a esos rangos fueran cambiados a blancos y negros; y por último aplicar filtros a la imagen para que se distorsione.

La imagen que se utilizo es la siguiente:


Ahora veremos como se ve esta imagen con nuestro código

Aquí con escala de grises, esto se hizo tomando los píxeles y promediando su RGB y sustituyendo en los píxeles, para así sacar el color que se muestra en la imagen


Ahora vemos los umbrales, en esto se dieron dos variables globales, los umbrales negro y blanco con esto solo comparamos los píxeles en RGB y si es menor que "122" entonces el píxel se pinta negro y si es mayor que "130" se pintan de color blanco, a continuación la imagen


Juguemos con los valores globales:

100 negro
200 blanco

200 negro
100 blanco

30 negro
50 blanco


Ahora veremos un tipo de filtro donde se toman los píxeles vecinos de arriba, abajo, izquierda y derecha de pendiendo del píxel donde se tome en el dado caso en que se encuentra en una esquina solo se tomaran los píxeles de la izquierda y abajo(hablando de la esquina superior derecha), esto también se hace promediando el RGB. Aquí la imagen:


Cada función esta dada por una tecla, ya que me fallo al realizar los botones pero en proximas entrgas estaran en funcionamiento.

Para realizar el escala de grises oprimes la flecha derecha.
Para realizar el umbral oprimes la flecha izaquierda.
Para realizar el filtro oprimes la flecha arriba.

Aquí mi Repositorio

Vision computacional para asistencia en conduccion

Introducción:

La seguridad vial es un tema clave en la tecnología automotriz actual, y es un tema de investigación porque implica aspectos tanto humanos como económicos. Sus dos objetivos principales, de hecho, son la mejora de la movilidad, ayudando a los conductores y reduciendo los costos de transporte por cuidadosamente la explotación de la red de carreteras y de la optimización de combustible y el consumo de energía.


Los sistemas para la asistencia en conducción de automóviles están siendo examinados e investigados como la solución más importante para el problema de la movilidad.

Acciones que puede realizar.

Estos dispositivos también pueden proporcionar conducción vehicular automática, es decir, la automatización de una o más tareas de conducción, tales como:
  • Siguiendo el camino y mantenerse en el carril de la derecha.
  • Mantener una distancia de seguridad entre vehículos.
  • Regulación de la velocidad de la vehcle de acuerdo a las condiciones del tráfico y las características de la carretera.
  • Moviéndose a través de los carriles para rebasar vehículos y evitar los obstáculos.
  • Encontrar la ruta más corta y correcta a un destino.



Que se necesitaria?

Visión computacional es muy complejo y muy exigentes, pero puede ofrecer una gran cantidad de información, marcándolo un poderoso medio para detectar el medio ambiente.

El cumplimiento de las tareas antes mencionadas se necesita la medida de magnitudes diferentes, o el reconocimiento de patrones antes del cierre del bucle de control. Estos incluyen subtareas

  • Determinar la posición relativa en el carril del vehículo y la comprobación de obstáculos en el camino o carretera.
  • Reconocer características específicas del vehículo y calcular el tiempo de impacto.
  • Detección de carriles múltiples y obstáculos de detección (por adelantamiento de vehículos y evitar colisiones)
  • Midiendo la distancia entre los vehículos estacionados (para el estacionamiento automático)
  • Determinar la posición y siguiendo el movimiento de los ojos del conductor y la cabeza (para la supervisión de estado de controlador). 


Conclusión
Este es un buen tema que se tiene pensado hacer en un 60% pero mas adelante veremos si seguimos con este tema ya observando lo que ocurre en las clases posteriores.