0% encontró este documento útil (0 votos)
5 vistas3 páginas

Qué es un píxel en informática

El documento describe tres problemas de programación relacionados con el manejo de datos y procesamiento de imágenes. El primer problema implica la creación de un módulo para guardar y recuperar puntajes en un archivo CSV, el segundo se centra en la conversión de imágenes a escala de grises utilizando bibliotecas de Python, y el tercero aborda la construcción de un árbol genealógico utilizando la biblioteca 'anytree'. Cada problema incluye instrucciones detalladas y ejemplos de código para su implementación.

Cargado por

doradetodo.ok
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
5 vistas3 páginas

Qué es un píxel en informática

El documento describe tres problemas de programación relacionados con el manejo de datos y procesamiento de imágenes. El primer problema implica la creación de un módulo para guardar y recuperar puntajes en un archivo CSV, el segundo se centra en la conversión de imágenes a escala de grises utilizando bibliotecas de Python, y el tercero aborda la construcción de un árbol genealógico utilizando la biblioteca 'anytree'. Cada problema incluye instrucciones detalladas y ejemplos de código para su implementación.

Cargado por

doradetodo.ok
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Programación.

Maestría en Ciencia de Datos.


Instituto de Ingeniería y Agronomía.

Práctica 6
Problema 1:
A) Escriba un módulo llamado puntajes_csv.py, que permita guardar y leer puntajes de
n archuivo con la siguiente estructura:

import csv

def guardar_puntajes(nombre_archivo, puntajes):


código para abrir el archivo y escribir el puntaje

def recuperar_puntajes(nombre_archivo):
código para leer el archivo e imprimir el puntaje

B) Escriba un programa que escriba puntajes en el archivo y que imprima lo escrito.

Problema 2: Cargue una imagen color en el directorio de google colab y transforme


dicha imagen a escala de grises. Para esto deberá seguir los siguientes pasos:
Paso 1: Importamos los módulos necesarios para trabajar con imágenes
# importamos el módulo pyplot, y lo llamamos plt

import [Link] as plt


#configuración necesaria de pyplot para ver las imágenes en escala de grises

[Link]['[Link]'] = 'gray'
# comando de Jupyter para que las imagenes se muestren automáticamente

%matplotlib inline
#tambien importamos numpy ya que lo usamos para crear y manipular matrices

import numpy as np

Paso 2: Para leer imágenes utilizaremos el módulo io de la librería skimage. Provee la


función imread para leer imágenes de un archivo
from skimage import io
image=[Link]("nombre_de_archivo.jpg")/255.0
# imread lee las imágenes con los pixeles codificados como enteros
# en el rango 0-255. Por eso la convertimos a flotante y en el rango 0-1
print("- Dimensiones de la imagen:")
print([Link]) #muestra las dimensiones de la imagen
[Link](image,vmin=0,vmax=1) #muestra la imagen en pantalla

Paso 3: Las Dimensiones de la imagen color RGB son 3 (num_fila, num_columna,


num_canal)
- num_fila nos permite posicionarnos sobre una fila de la imagen
- num_column nos permite posicionarnos sobre una columna de la imagen
- num_canal sobre uno de los 3 canales (rojo, verde o azul)
-

Programación.
Maestría en Ciencia de Datos.
Instituto de Ingeniería y Agronomía.

Con las siguientes líneas de código podrá visualizar los 3 canales por separado:
[Link](image[:,:,0],vmin=0,vmax=1)
[Link]("Canal Rojo")
[Link]()
[Link](image[:,:,1],vmin=0,vmax=1)
[Link]("Canal Verde")
[Link]()
[Link](image[:,:,2],vmin=0,vmax=1)
[Link]("Canal Azul")

Paso 4: Conversión de color a escala de grises

Una forma simple para hacer la conversión consiste en sacar el promedio de los tres canales y usar
el resultado como la intensidad de gris para ese pixel.

Entonces cada trio (r,g,b) que representa un pixel se reemplaza por su promedio (r+g+b)/3
La tarea a realizar por el estudiante consiste en realizar el promedio para obtener cada
pixel de la imagen en escala de grises dentro del bucle for anidado:

# obtenemos el tamaño de la imagen original (h representa filas y w columnas)


h,w,c=[Link]
# creamos una matriz donde generar la imagen en escala de grises
imagen_gris=[Link]((h,w))
# implementamos bucles anidados para recorrer los pixeles de los 3 canales
for i in range(h):
for j in range(w):
#aquí debe sumar la intensidad del pixel de cada canal y
#dividir por 3, el resultado se debe asignar imagen_gris [i][j]
[Link](imagen_gris)

Problema 3:
a) Realice un programa que permita armar un árbol genealógico de dos generaciones
ingresando los integrantes desde teclado partiendo de la primera generación. Para esto
use la biblioteca “anytree” ideal para trabajar con árboles. Primero se debe instalar la
librería con:
- pip install anytree

Una vez instalada, se debe importar:

- from anytree import Node, RenderTree

b) Indique cómo podría modificar el código para poder agregar la cantidad de


generaciones que se deseen.

También podría gustarte