EDICIóN GENERAL
320 meneos
10517 clics
Un algoritmo capaz de colorear fotografías en blanco y negro automáticamente [ENG]

Un algoritmo capaz de colorear fotografías en blanco y negro automáticamente [ENG]  

El estudiante de doctorado en la Universidad de Berkeley Richard Zhang y su equipo han publicado un paper sobre la forma en que están utilizando una "red neuronal convolucional" para colorear automáticamente y sin ninguna intervención humana fotos en blanco y negro con resultados que a menudo engañan incluso al ojo humano. Para comprobarlo mostraron fotos reales a color y otras coloreadas por el software a una serie de voluntarios. En un 20% de los casos los voluntarios se equivocaron al decidir cuál era la foto real.

| etiquetas: algoritmo , berkely , blanco , negro , colorear , richard zhang
en un 20% de los casos no supieron distinguir correctamente entre la foto real y la coloreada, no es perfecto, pero es mucho más de lo que esperaban y da una idea de a qué se podría llegar en un futuro próximo

link a github y al paper richzhang.github.io/colorization/
#1 Fue más bien al revés, el 20% de las fotos "engañaron" a los humanos que tenían que decidir cuáles eran coloreadas y cuáles eran en color originalmente. Pero ya es un gran avance.
#7 es lo que digo, no? en un 20% de los casos no supieron distinguir correctamente
#9 Yo he entendido que decías que en un 20% de casos el algoritmo no fue capaz de colorear bien.

Pero igual soy yo, que es viernes y ando algo espeso :-)
#7 a ver, como yo entiendo: si el algoritmo fuese perfecto los observadores no podrían distinguir entre coloreada y original por lo tanto elegirían una al azar. Eso supone que la probabilidad de la elección tienda a ser del 50% de aciertos. Si ahora van por el 20% llevan recorrido 2/5 de la investigación, es decir el 40% del trabajo hecho. Guay
Las fotos en blanco y negro perderían todo su encanto.
#2 para según qué cosas puede ser muy útil y los resultados me parecen muy sorprendentes teniendo en cuenta que no ha habido ninguna intervención humana
#5 Puede ser... {0x1f62c}
#5 bueno, un humano debe haber escrito el algoritmo
#5 De hecho las fotografías antiguas que han puesto de ejemplo me gustan más que las que se colorean a mano. Las coloreadas normalmente tienen tonos muy planos y se ven muy artificiales; estas tienen unos colores bastante más naturales.  media
#0 April fools me da a mi
(mmm último comentario de la web opina igual, quién sabe...)
#3 nope, link al paper en cuestión (no lo han publicado hoy mismo) ;) arxiv.org/pdf/1603.08511.pdf
#8 pues de ser cierto es una maravilla
#10 lo es...
Por el enlace que puso el compañero elLocoDelMolino en #8, es tremendo el algoritmo si funciona así de bien. No en vano yo que me gusta colorear y retocar fotos, a veces. La última vez que coloreé una, muy sencilla, tardé unas 4h en hacerlo. Y no me quedó ni la mitad de bien que ese algoritmo, además que es muy trabajoso todo hay que decirlo, muchas capas y máscaras para no pifiarla y salirte de los límites. Algunos tendrán tal destreza y pulso que podrían hacerlo directamente, pero hasta ahí no llego.

Salu2
colorerar a blanco y negro...{clap}
#4 se entiende perfectamente de qué se trata, no le busquemos la quinta pata al minino :-)
#14 errata corregida, gracias por avisar
#15 De nada. El algoritmo es bastante bastante interesante. Me muero por probarlo en casa con fotos viejas de mi familia.
#16 igual descubres que tienes algún antepasado nativo americano o pelirrojo.
#19 me da a mí que no, que somos (yo incluido) típicos españoles del sur, morenos y oscuritos ;). Y hasta donde yo sé no tengo antepasados de las zonas de repoblación. Lo decía más por tener la foto en color y eso.
Ya me gustaría ver ese algoritmo torear con retablos de iglesias. Si es que eran muy colorista en aquella época y el algoritmo este no se como reaccionaría.
Las fotografias no son en blanco y negro, sino en miles de tonos.
#20 En realidad no son miles de tonos, sino 256. Ya puestos a corregir nimiedades...
#22 Si nos ponemos exquisitos serian 254 tonos, el negro y el blanco xD.
#24 Pues me has hecho pensar, oye :-) En inglés "tone" es equivalente a "lightness", y por tanto blanco y negro serían tonos también. Pero en castellano "tono" es el "hue" inglés e, irónicamente, cualquier gris (o blanco o negro) se puede conseguir desaturando cualquier tono, así que según esa acepción una imagen en blanco y negro no tiene un número de tonos definido. Qué cosas :-)

#28 No importa cuántos tonos tuviera la fotografía original, porque la fotografía original no te la está coloreando nadie. La fotografía que sí se está coloreando es la escaneada en RGB, con sus 256 tonos en escala de grises :-)
#32, uhm, si escaneas en un modo de imagen de 48 bits, si no me equivoco los tonos grises posibles serían 2^16=65.536 posibilidades. Lo que tú dices será si se escanea la imagen en la típica paleta de grises de 8 bits o si escaneas en color pero con 24 bits, ¿no? No sé los escáners actuales cuantos colores pueden diferenciar, así que me puedo estar colando, pero photoshop mismo puede trabajar con imágenes de 48 bits actualmente.
#37 Si, desde luego, hay muchas formas de almacenar una imagen. He asumido 24 bits RGB porque es el formato que tienen las imágenes que vienen junto al código, así que asumo que son las que usa el algoritmo. Igual vale para otros formatos también, no lo sé :-)
#32 Dado que RGB se perfila como un cubo de colores cuya diagonal (0,0,0),(256,256,256) seria la de grises puros, tendriamos que calcular los píxeles que atraviesa, dándonos 443 tonos de grises
#69 o_o Tengo mucho interés en saber qué cuentas has hecho para llegar a este resultado...
#70 Habia aplicado www.ditutor.com/geometria/diagonal_cubo.html

Sorry, Reconozco que lo he aplicado como si el cubo fuera un contínuo {0x1f4cf} , cuando lo deberia haber pensado como un "cubo de cubitos" de tamaño 1 --saliendo algo así como un pinchito moruno de 256 cubitos-- con unas distancias de sqrt(12+12+12) en cada cubo.

Gracias por darte cuenta

Aun a riesgo de cagarla de nuevo, decir que dada la psicologia del color, la recta del cubo no sea correcta, inclinándome por una curva que se acerque al eje de mayores azules, ya que los vemos menos.
#71 Ok, ahora entiendo el razonamiento y de dónde venía el error :-)

En cuanto a tu segunda parte, supongo que todo depende de cómo definamos "gris". Yo me estaba refiriendo simplemente a los colores del espacio RGB en que sus tres coordenadas son iguales. Por tanto hay 256. Geométricamente esto es equivalmente a trazar la linea que comentabas.

Si entendemos gris como colores que excitan por igual los conos S, M y L como creo que es tu caso en tu última linea, entonces la…   » ver todo el comentario
#22, ¿las cámaras de fotos por entonces tomaban solo 256 todos distintos solamente teniendo además en cuenta que no eran digitales? Me da a mi que deben de ser unos cuantos más. Otra cosa es que en el ordenador con paleta de colores en blanco y negro sea solo 256 tonos...
#22 Una vez digitalizado no te diré que no. Un negativo creo te dará muchos más. Luego viene lo de reducir los tonos a "Zonas". Lo que hacía Ansel Adams entre otros, es.wikipedia.org/wiki/Sistema_de_zonas
Me parece muy interesante... ¿Pero no hay ejemplos de comparativa entre color real y color recreado? O sea, fotos en color que se han pasado a blanco y negro, aplicado el algoritmo y la comparativa entre el resultado final y la foto en color real. Me interesaría mucho ver esa comparativa.
#21 Sí lo hay. Lo tienes en el propio artículo científico, Figura 6. Está enlazado al final de la noticia, "full paper". Además, el artículo te enlaza a la siguiente web, con más comparativas aún: richzhang.github.io/colorization/
Seguro que lo tenemos disponible en la próxima versión de Photoshop.
Para cuando en GIMP jajajajaja
Pues debe ser la polla, porque colorear en blanco y negro es harto difícil :troll:
Como era es de que siempre habrá cosas que solo podamos hacer los humanos? :roll:
#29 entiendo que han de reconocer objetos e inferir un color, así que es necesario entrenarlo con muchas imágenes y siempre habrá colores que no se sepan (mueble gris).
#31, no conozco los detalles ni si utiliza técnicas de machine learning para inferir el color a patir del tono y la posición de los píxeles vecinos o incluso va más allá y aplica reconocimiento de patrones para deducir de qué objeto se trata o simplemente se trata de un modelo predefinido, en todo caso con el tema de la IA está ocurriendo que cada día que se muestra más capaz de hacer cosas que creíamos que requerían un alto grado de cognición e inteligencia. Veremos que nos depara el futuro, pero auguro que el grado de desplazamiento de trabajos en los que se consideraba imprescindible la intervención humana será muy superior al planteado inicialmente.
Los trajes militares se le resisten un poco -> richzhang.github.io/colorization/resources/bot_0_index.html .

Eso sí, la piel no se le da muy mal.
#33 sip, queda trabajo por hacer, "sólo" consiguió engañar a los voluntarios en un 20% de los casos y los trajes militares están en la categoría "mala" con muy pocos aciertos, en cambio en la sección pájaros algunas te sorprenden realmente como esta (blanco y negro - foto colorizada - foto real)  media
Muy interesante. Habría que probarlo para ver sus aciertos y sus fallos. Sería interesante hacer una prueba con un cuadro.
Hay muy buenos ejemplos en este enlace, pero colorear fotos o videos del blanco y negro siempre deja bastante "falsete" y engaño al ojo humano. Hay cientos de colores y matices distintos en la "realidad" que coloreado así solo aparece como un color plano.
Algunos profesores de photoshop se van a quedar sin un recurso clásico de sus clases.
#34 Uno de los fallos es que parece que los objetos "brillan" o tienen un aura de su color a su alrededor.
ala pucha !
No encuentro la forma de probarlo yo mismo
De aquí a una década activas el filtro en la tele mientras echan Casablanca y esta hace todo el trabajo en tiempo real.

Los gafapasta pondrán la funcionalidad a caldo como no.
Con un clic de ratón, dice el artículo. ¿El algoritmo hace todo el trabajo? ¿Sin definir previamente una paleta de colores ni nada por el estilo? Me cuesta creerlo, parece una tomadura de pelo.
#45 no lo es, mira el link que he puesto en el primer comentario y verás las pruebas que han hecho, tienen las fotos ordenadas por categorías (las que mejor consiguen "engañar" al ojo humano y las que menos) ;)
#46 #51 Me quito la cabeza señores. Cuando veo este tipo de cosas me siento taaaan estúpido. Suerte que la felicidad reside en la ignorancia.
#45 Si no sabes lo que es puede sonar a trampa, pero una red neuronal es una estructura que a cierto nivel simula el funcionamiento de aprendizaje del cerebro.

A esa red neuronal le pasas imágenes de entrenamiento, con las que aprende de que color son las cosas, y ese sería el "definir previamente una paleta de colores".
Yo no acabo de comprender una cosa.

Si tenemos en cuenta que las cámaras toman la información del sensor en blanco y negro y luego es pasado por un filtro BAYER para convertirlas a RGB... ¿No se puede aplicar ese mismo sistema en las fotos en blanco y negro?

Ignoro cómo hace un filtro BAYER para dar color a una imagen en escala de grises, pero lo único que podría ser es que dependiendo de la cantidad de luz que reciba el sensor la transforme en un color o en otro, algo que no se podría hacer mediante software, creo...
#47 Tampoco sé como funciona, pero si tienes solo escala de grises necesariamente estás perdiendo información, ya que un gris podría corresponderse a muchos colores distintos. Así que probablemente su funcionamiento no sea exactamente ese.
#50 El funcionamiento del algoritmo en cuestión no lo sé. Lo que sí que sé es que las cámaras «creo entendido que todas, compactas, réflex y de medio y gran formato» usan el sistema que comento. Edito: La mayoría pero no todas

El sensor capta la luz y luego de una imagen en blanco y negro crea una en color gracias al filtro BAYER basándose en su luminosidad.

es.wikipedia.org/wiki/Mosaico_de_Bayer
#52 Por lo que veo se trata de filtrar la luz que llega a los sensores (que entiendo que en sí mismos no distingue colores) así que aunque solo te quedas con su luminosidad pero sí tienes información sobre a qué luz de qué color pertenece esa luminosidad.

Que forma más curiosa de capturar colores, no sabía que hacían eso.
#53 Pues sí, pero se pierde algo de información, ya que el sensor muchas veces adivina.
Aquí hay otros métodos, pero ya te digo que el más común es el BAYER

www.xatakafoto.com/hasselblad/que-hay-despues-del-sensor-bayer
#52 #53 de una fotografía en blanco y negro no se pude deducir el color de ninguna de las maneras, sólo se puede deducir la intensidad de luz. Básicamente el algoritmo parte de una fotografía en blanco y negro y utiliza una base de datos de fotografías reales en color para tratar de adivinar qué objetos se parecen, luego les aplica el color que tengan esos objetos en las fotografías reales. Dependiendo del tamaño de la base de datos los resultados pueden ser sorprendentes o desastrosos, pero en ningún caso se puede deducir el color directamente con ningún filtro.
#56 A mí me extrañaba al tratarse de colores neutros. Pero es que ignoro como funciona el filtro BAYER por dentro. El mecanismo que hace que de la luz saque el color.

Por eso lo comentaba.
#57 el filtro Bayer te permite hacer fotografías en color directamente. Recibe luz directa y la descompone en rojo, verde y azul, nada más. Las fotografías antiguas en blanco y negro no contienen ninguna información relativa al color, ningún filtro puede "adivinar" el color. Si las quieres colorear sólo hay dos opciones:

1) un especialista que entienda el contexto de la foto y que la coloree a mano -> resultados muy realistas y muy buenos, pero cuesta muchísimo trabajo
2) un…   » ver todo el comentario
#58 Lo sé, lo sé. Yo he intentado colorear alguna foto en blanco y negro y me ha salido cada chapuza...
#59 No seas vago, al algoritmo lo habrán entrenado con muchísimas imágenes, sigue haciendo pruebas y ya te saldrá mejor. :-D
#60 El problema grande es cuando hay cosas que no sabes de que color son. La piel es rosada, el cielo azúl, etc. Sin chistes... Pero cuando hay camisas, pantalones, cortinas,... Es chungo de narices.
#47 No usa un filtro bayer para dar color a una imagen en blanco y negro, sino para generar una imagen con las imágenes de cada color "intercaladas".
#64 El sensor capta la información en escala de grises. Al menos así lo he estudiado yo. Y luego según los valores de iluminación el filtro BAYER (RGGB) la transforma en color. Pero el sensor no capta los colores, sólo la intensidad de la luz.
He de decir opinar, que las de Ansel Adams pierden mucho en color.
En las fotos con uniformes se hace la picha un lío fenomenalmente (richzhang.github.io/colorization/resources/bot_0_index.html), pero sí que es impresionante lo que este algoritmo puede hacer (otra cosa ya sería preguntarnos por la utilidad real de lo que hace).

Tal vez las teles del futuro lo incluyan para quienes no soporten las películas en blanco y negro, junto a la opción de estirar los vídeos que no ocupan toda la pantalla. xD
Yo que me dedico a esto... sorprendido me he. Sobre todo las de los paisajes... alucinantes. Que me quedo sin trabajo en unos añitos...
comentarios cerrados

menéame