Ir al contenido principal

Entradas

Mostrando las entradas etiquetadas como Information theory and coding methods

Ultima entrega - Transformada "Haar"

Que tal para esta ultima entrega se nos encargo hacer un python que comprimiera una imagen y se nos dio como base la transformada de Wavelet. El proceso a seguir para el desarrollo de este programa es el siguiente: Diagrama de flujo. Como se muestra en la imagen anterior, el algoritmo actúa en sobre un imagen(no importa el tipo) y mediante una serie de procesos obtiene la imagen comprimida. Introducción La comprensión consiste en sustituir una cadena de datos por otra mas corta cuando se guarda un archivo. Ciertos metodos son reversibles("lossless data compression"), porque permite la reconstrucción exacte de la original. Pero con otros("lossy data compression""), la información original solo se recupera aproximadamente, ya que se descarta una parte de los datos. Pero ambos metodos intentan cumplir objetivos: El código de compresión debe ser lo mas compacto posible que el original. Eliminar toda o casi toda la redund...

Tarea #5 - Codigo Hamming - Python

Codigo hamming Liga al repo Teoria segun wikipedia Antes de los códigos Hamming se utilizaron ciertos códigos detectores de error, como lo fueron el código linteing, pero ninguno llegó a ser tan eficaz como los de Hamming. A continuación se describen algunos de estos códigos. Paridad   La   paridad   consiste en añadir un bit, denominado   bit de paridad , que indique si el número de los bits de valor 1 en los datos precedentes es par o impar. Si un solo bit cambiara por error en la transmisión, el mensaje cambiará de paridad y el error se puede detectar (nótese que el bit donde se produzca el error puede ser el mismo bit de paridad). La convención más común es que un valor de paridad   1   indica que hay un número impar de unos en los datos, y un valor de paridad de   0   indica que hay un número par de unos en los datos. info. completa y un vídeo que me ayudo mucho para esta tarea: (TIENEN QUE VERLO - OBLIGATORIO) http://www.you...

Tarea #4 - Codigo Adaptativo

Para esta semana se nos encargo un método de compresión que se adaptara según la entrada. La idea es que el programa lea una cadena en paquetes y cuando el paquete llegue a cierto limite el python sea capaz de comprimirlo y enviarlo. La variante es que se tiene que estar adaptando según el paquete de entrada. La idea que yo tengo/tenia era tomar la frecuencia de las letras del alfabeto español y con el primer paquete que le llegue al python hacer lo siguiente: 1.- Identificábamos las letras únicas del paquete y las ordenábamos por frecuencias de apariciones. 2.- Sustituíamos o creábamos otra lista(conservando el orden) pero ahora con el agregábamos el  valor de la probabilidad del que la letra apareciera en el alfabeto español. 3.- Escogíamos un umbral que fuera el promedio de la suma de frecuencias del alfabeto 4.- Por cada paquete se aseguraba que la letra n...

Tarea#3 - Codificación Huffman python

Que tal para esta entrada se nos encargo implementar el código Huffman en "x" lenguaje yo escogí python. A continuación una breve explicación y Un poco de teoria: El término se refiere al uso de una tabla de códigos de longitud variable para codificar un determinado símbolo (como puede ser un carácter en un archivo), donde la tabla ha sido rellenada de una manera específica basándose en la probabilidad estimada de aparición de cada posible valor de dicho símbolo. Fue desarrollado por David A. Huffman mientras era estudiante de doctorado en el MIT, y publicado en "A Method for the Construction of Minimum-Redundancy Codes". El algoritmo de construcción del árbol puede resumirse así: Crear un nodo hoja para cada símbolo, asociando un peso según su frecuencia de aparición e insertarlo en la lista ordenada ascendentemente. Mientras haya mas de un nodo en la lista: Eliminar los dos nodos con menor probabilidad de la lista Crear un nuevo nodo interno que enlac...

Tarea #2 - Métodos de acoplamiento de texto

Que tal para esta entrada se nos encargo hacer un .py que buscara un patrón en un texto e hizieramos un reporte como conclusiones. En clase vimos temas de búsqueda de patrones mas aparte escribimos uno en clase y nos llevamos 2 de tarea el Boyer-Moore y el Morris-Pratt. Así que si mas rollo aquí esta el código. BOYER-MOORE Es el mejor sistema de búsqueda de patrones en un texto, lo que las comparaciones no las hace 1 por 1 este hace un brinco según... la llamaremos tabla de saltos, para ir descartando palabras en donde no se encuentre el patrón. La tabla lo que hace es sacar los indices de cada letra del patrón empezando de izquierda a derecha, cuando alla terminado a esa lista de patrón se le agregaran todas las letras del texto que no aparezcan en en patrón e ir contando su indice, NOTA: esta lista no puede contener letras repetidas. Supongamos que tenemos el ...

Tarea #1 - Métodos de codificación - Canal de comunicación

Que tal para esta entrada se nos encarga hacer un ".py" que simulara la  transmisión de una palabra binaria. La idea es generar aleatoriamente una palabra binaria con una densidad de apariciones de ceros o unos definida por el usuario(parámetro de entrada). Después esa palabra pasa por un canal, el cual tenia que identificar si se envía un cero o un uno, base a eso, y con ayuda de la tabla Q, decidir si recibe un 0 o un 1 y estar guardando ese resultado. Después de eso compara si la palabra original es igual la palabra resultante, se incrementa el contador de éxito. Este contador no ayudara a sacar la probabilidad de éxitos. Parámetros Generador de palabras  binarias: Transmisor Comparador El archivo regresa el porcentaje de éxito que tuvo la palabra a través del canal. Código completo.  Estadísticas  :|

Information theory and coding methods - EXTRA POINTS

Good day, to this entry we were given the freedom to choose a problem of any exercise of chapter 1 of this book . My problem is a follows: Exercises 1.3 1. An urn contains six red balls, five green balls, and three yellow balls. Two are drawn without replacement. What is the probability that at least one is yellow? Traducción: 1. Una urna contiene seis bolas rojas, cinco bolas verdes, y tres bolas amarillas. Dos se extrae sin reemplazo. ¿Cuál es la probabilidad de que al menos uno es de color amarillo? Solution We make clear that at least one ball is yellow, so...w e have many "answers":   green - YELLOW   red - YELLOW   YELLOW - YELLOW   YELLOW - red   YELLOW - green Make a drawing to explain better... so, the probability of getting at least one yellow ball is 30%