Este ejercicio consiste en agregar Ruido aleatoria mente a la imagen dada. Y estas son las imagenes que utilice para el ejercicio.
![]() |
Imagen Original |
Y a continuación adjunto el fragmento de código en donde agrego el código a la imagen.
*****
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def ruido(img2, ancho,alto): | |
t1 = time() | |
pixel= img2.load() | |
for i in range(ancho): | |
for j in range(alto): | |
(r,g,b)= img2.getpixel((i,j)) #obtener pixeles | |
ruido = random.randint(0,255) #generar ruido random | |
z = random.randint(0,5000) | |
try: | |
if (ruido < 100): | |
pixel[i+z,j+z]=(0,0,0) #pixel leido mas un numero random para agregar pimienta | |
else: | |
pixel[i+z,j+z] = (255,255,255) #pixel + # rand para agregar sal | |
except: | |
pass | |
img2 = img2.save('ruido.jpg') | |
timei=time() | |
timef = timei - t1 | |
print "el tiempo para agregar ruido es:"+str(timef)+"segundos" |
*****
Aquí dejo otros ejemplos :
![]() |
Imagen Original |
Aunque en esta imagen se ve mas limpia al quitarle el ruido, en esta otra no se aprecia tanto ya que el color de la imagen no varia tanto, y la mayoría de los pixeles son iguales.
![]() |
Imagen Original |
Y aquí adjunto el código que utilice para tratar de limpiar el ruido de la imagen:
*****
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def byeruido(img2,ancho,alto): | |
pixel = img2.load() | |
t2=time() | |
for i in range(ancho): | |
for j in range(alto): | |
(r,g,b)=img2.getpixel((i,j)) | |
try: | |
if(pixel[i,j]==(0,0,0) or pixel[i,j]==(255,255,255)): | |
#print pixel[i,j] | |
#print "ya pase por aki" | |
pixel[i,j] = pixel[i+1,j] | |
#print pixel[i+1,j] | |
#print "ya pase por aka" | |
else: | |
#print "Ola k ase" #es broma | |
continue | |
except: | |
pass | |
img2.save('snruido.jpg') | |
timei = time() | |
timef = timei -t2 | |
print "el tiempo para quitar el ruido es:"+str(timef)+"segundos" |
*****
Y eso es todo por hoy. :)
Aquí la liga a mi repositorio
https://github.com/AdriC1705/Viscomp.git
Pues, más o menos bien lo de obligatorio. Van 7 pts por lab 2.
ResponderEliminar