OJODIGITAL

 
Respuesta
  #1 (permalink)  
Antiguo 11-dic-2006, 23:51
Avatar de Guillermo Luijk
RAW RAW la botella de RAW
 
Fecha de Ingreso: marzo-2006
Ubicación: Madrid (a ratos Alicante)
Mensajes: 7.686
Enviar un mensaje por MSN a Guillermo Luijk
Qué pasa si abro, edito y guardo un JPEG 2000 veces?

Al hilo de estos dos hilos:

JPEG y degradación
Sobre el JPG, TIFF, RAW, Prueba cientifica

he hecho la prueba de abrir, editar y guardar un JPEG 2000 veces para ver qué degradación de calidad se tiene. Entre cada apertura y guardado, he dibujado un pixel de color aleatorio formando diagonales no vaya a ser que en el caso de no tocar nada de nada en la imagen la calidad permaneciese intacta por vete a saber qué extraño juego matemático o coincidencia de transformadas de Fourier y bla bla bla.

El resultado es que guardando en un JPEG de 88KB un bitmap de 800x533 pixels, que viene a equivaler (al menos por el tamaño que ocupa) con una calidad del "Guardar para Web" de PS de entre 50 y 51 sobre 100, la calidad se deteriora mucho menos de lo que yo esperaba.
No he podido elegir otra calidad para guardar porque la librería que uso para hacer la rutina viene prefijada a esta.


IMAGEN ORIGINAL GUARDADA EN JPEG DE CALIDAD ALTA (197 KB)



PRIMER JPEG GUARDADO EN LA PRUEBA (88 KB)



1000-ÉSIMO JPEG GUARDADO EN LA PRUEBA (89 KB)



2000-ÉSIMO JPEG GUARDADO (90 KB)



Si sabéis un poquito de programación podéis ver en el código fuente que no hay trampa ni cartón.


For i = 1 To 2000
Set MyObj1 = New GflAx.GflAx
MyObj1.LoadBitmap (sFileName)


j = i Mod 255
MyObj1.LineColor = RGB(Int(Rnd * 255), Int(Rnd * 255), Int(Rnd * 255))
MyObj1.DrawPoint i Mod 800, i Mod 533


iFormat = FileFormat()
MyObj1.SaveFormat = iFormat
sFileName = sRoot & "test_" & IIf(i < 10, "000" & i, IIf(i < 100, "00" & i, IIf(i < 1000, "0" & i, i))) & _
Extension(iFormat)


MyObj1.SaveBitmap (sFileName)
Set MyObj1 = Nothing


Next i


Qué pasaría si los cambios entre guardado y guardado fueran más drásticos? pues ni idea, seguramente se note más. Si tenéis alguna idea de perrerías que hacer a la imagen entre guardado y guardado soy todo oidos.
Pero lo que está claro es que si apenas se toca la imagen, poco empeora la calidad. El 99% de la degradación viene con el primer paso de TIFF a JPEG.

Salu2
__________________
"En ocasiones veo halos."

Canon EOS 5D | EOS 350D | EOS 300 | 10-22 | TS-E 24 f3.5L II | 24-70 f2.8L | 70-200 f4L
http://www.guillermoluijk.com para suscribirte pulsa aquí

Última edición por Guillermo Luijk; 12-dic-2006 a las 00:07.
Responder Citando
Publicidad
  #2 (permalink)  
Antiguo 11-dic-2006, 23:57
Avatar de Emilio-BCN
Vivo en los foros
 
Fecha de Ingreso: junio-2006
Ubicación: Cerdanyola del Vallés (BCN)
Mensajes: 2.702
Bueno _GUI_ ya la has liado otra vez .Ahora vendrá el alubión de opiniones que voy a esperar ansioso. Despues de leer hasta la saciedad que cada vez que se abre y guarda perdemos jodemos de manera importante la foto, esta prueba lo deja en entredicho, vamos que lo hace de manera relativa, vamos que no es tan malo como se dice, en fin, siempre son de agradecer estas pruebas y por eso te lo agradezco, ahora a ver que se dice.

Saludos
Responder Citando
  #3 (permalink)  
Antiguo 12-dic-2006, 00:08
Avatar de Marc EOS
Noble escudero.
 
Fecha de Ingreso: agosto-2005
Ubicación: Argentino viviendo en el Caribe Sur
Mensajes: 3.811
Enviar un mensaje por MSN a Marc EOS
Como iniciativa para investigar, excelente
Pero permíteme decirte que si sólo se le cambia UN pixel a la foto, no se puede decir que se esté "editando". Los algoritmos de compresión JPG justamente deterioran la imagen donde hay cambios. Ese cielo diáfano que no ha cambiado de foto a foto no se verá afectado por la re-compresión.

La prueba lógica es abrir, editar el cuadro completo, es decir cambiar el valor de TODOS los pixeles, por ejemplo elevando saturación o luminosidad, o cualquier parámetro global, y luego guardar. Apostaría a que con menos de 20 repeticiones ya comienza a presentar artefactos varios

Saludos y enhorabuena nuevamente por tu entusiasmo...
__________________
Marc ***
Avatar por Mulatiña --- "Sumido en tus pensamientos"
__________________________________________
Responder Citando
  #4 (permalink)  
Antiguo 12-dic-2006, 00:16
Avatar de aitormen
mas aitor que men
 
Fecha de Ingreso: julio-2004
Ubicación: Bilbao
Mensajes: 2.870
Qué pasa si abro, edito y guardo un JPEG 2000 veces? -

pues ke tienes mucho tiempo libre y eres un poco rarito jeje

pedona pero no podia aguantar jeje
menudo estudio ke te has currao yo sabia ke perdia cada vez ke guardabas pero ke era insignificante hacerlo un par de veces pero 2000 veces me parece exagerado y ke apenas pierda
ahora es cuando la gente te pedira ke pruebes ke si con recortes al 100% ke lo guardes 2001 ke los impares son mas bonitos y esas cosas
gracias por compartir estas cosas
__________________
carta de Juan a los Corintios versiculo F/10 - F12 segun Mellado
No soy digno de ke veas una foto mia pero un comentario tuyo bastara para alegrarme
para los ke no me conozcan ke sepan ke 5 de cada 10 fotos mias son la mitad
http://aitormen.ojodigital.net/
Responder Citando
  #5 (permalink)  
Antiguo 12-dic-2006, 00:31
Avatar de Bandini
Lleva poco por aquí
 
Fecha de Ingreso: octubre-2005
Ubicación: -
Mensajes: 137
A mi no me parece tan llamativo que no pierda tanto.

¿Que devuelve FileFormat() exactamente? ¿AX_JPEG?

PD: Tan raro es esto como escribir con k donde no se debe sin razón aparente ¿no?
Responder Citando
  #6 (permalink)  
Antiguo 12-dic-2006, 00:48
Avatar de manolowarr
Habitual
 
Fecha de Ingreso: febrero-2005
Ubicación: Sanlúcar de Barrameda
Mensajes: 567
La verdad es que teóricamente tiene perdida cada copia que guarda, por lo meno los algoritmo lo refleja así, pero parece interesante hacer esas pruebas para comprobarlo in situ, y realmente ver la cantidad de perdida. Pero pienso que para ver unos resultados más fieles deberías de hacer las pruebas con Photoshop, porque todos los programas no utilizan el mismo algoritmo de compresión.

Saludos
__________________
Visita mi Web

http://www.photoshop-scripts.com

Softwares y Plugins
.
Responder Citando
  #7 (permalink)  
Antiguo 12-dic-2006, 01:30
Avatar de espilber
Habitual
 
Fecha de Ingreso: marzo-2004
Mensajes: 538
Muy interesante el trabajo realizado y de agradecer la información.

Por si viene al caso diré que "antiguamente" tiraba en raw, tanto proviniendo de nikon como de canon.
Hasta que me lié con el jpg probando lo siguiente: original realizado en jpg, tanto con cualquiera de las marcas citadas, tratamiento con el DPP y guardado en jpg.
De ahí a laboratorio.

Ese mismo jpg que provenía del DPP ya ajustado: abierto con el potochop cs2 y puesto encima el número 1, guardado, y vuelta a empezar abrir y poniendo el 2, así hasta la numeración 38.

Comparé la numeración del 1 con la foto del 38, y llevé a laboratorio, resultado no pude distinguir sin un cuentahilos cuál era cuál, tan solo por el numerito.

Conclusión, tirando en jpg, ocupa menos, tengo más tarjetas disponibles, los discos duros tardo más en llenarlos etc. y lo más importante: los jpg salen prácticamente a punto de llevar a copias.
Digo ésto porque después de las pruebas se acabó tirar en raw.

slds.
Responder Citando
  #8 (permalink)  
Antiguo 12-dic-2006, 01:32
Avatar de Guillermo Luijk
RAW RAW la botella de RAW
 
Fecha de Ingreso: marzo-2006
Ubicación: Madrid (a ratos Alicante)
Mensajes: 7.686
Enviar un mensaje por MSN a Guillermo Luijk
Cita:
Iniciado por Marc EOS
La prueba lógica es abrir, editar el cuadro completo, es decir cambiar el valor de TODOS los pixeles, por ejemplo elevando saturación o luminosidad, o cualquier parámetro global, y luego guardar. Apostaría a que con menos de 20 repeticiones ya comienza a presentar artefactos varios
Tens tota la raò. Así que ahora he hecho que en cada guardado se alteren los niveles de los 3 canales de color de todos los pixels en nada menos que 20 niveles. Así un pixel con componente azul por ejemplo 200 pasaría a 220, y en la siguiente vuelta me lo vuelvo a traer a 200, así las muestras impares salen claritas, y las pares similares al primer JPEG guardado arriba.
Imagino que algún pixel se habrá quemado en uno o más de sus canales pero la verdad es que no ha parecido interferir en la compresión JPEG ni en el aspecto global de la foto.

Os paso algunas muestras. Aquí no llego a 2000 porque ya le cuesta un poco más pero mientras escribo esto la máquina de churros sigue sacando JPEG's y la calidad se mantiene muy aceptable.


20-AVO JPEG (87 KB)



21-AVO JPEG (87 KB)



Y si nos vamos al...

523-AVO JPEG (87 KB)



524-AVO JPEG (87 KB)




Como decía Marc han ido apareciendo artefactos (ver los cuadraditos a la derecha), sobre la versión 40 que a medida que se guardaban se incrementaban en notoriedad.
Pero aún así creo que el JPEG lo hace bastante bien no? pensad que es un JPEG de calidad mediocre además (el ratio de compresión ha sido de 14 respecto al BMP: de 1250KB a 88KB).

Os pongo el código fuente (k=20 niveles):

For i = 1 To 2000
Set MyObj1 = New GflAx.GflAx
MyObj1.LoadBitmap (sFileName)

For lX = 0 To 532
For lY = 0 To 799

lColour = MyObj1.GetColorAt(lX, lY)
iRGB(1) = GetR(lColour) + k
iRGB(2) = GetG(lColour) + k
iRGB(3) = GetB(lColour) + k
For l = 1 To 3
If iRGB(l) < 0 Then
iRGB(l) = 0
ElseIf iRGB(l) > 255 Then
iRGB(l) = 255
End If
Next l

lColour = RGB(iRGB(1), iRGB(2), iRGB(3))
MyObj1.LineColor = lColour
MyObj1.DrawPoint lX, lY

Next lY
Next lX
k = -k

MyObj1.SaveFormat = iFormat
sFileName = sRoot & "test_" & IIf(i < 10, "000" & i, IIf(i < 100, "00" & i, IIf(i < 1000, "0" & i, i))) & _
Extension(iFormat)
MyObj1.SaveBitmap (sFileName)
Set MyObj1 = Nothing
frmPrincipal.txtRuta = sFileName
DoEvents
Next i



Manolowar, yo es que de PS no tengo ni idea sino lo usaría.
__________________
"En ocasiones veo halos."

Canon EOS 5D | EOS 350D | EOS 300 | 10-22 | TS-E 24 f3.5L II | 24-70 f2.8L | 70-200 f4L
http://www.guillermoluijk.com para suscribirte pulsa aquí

Última edición por Guillermo Luijk; 12-dic-2006 a las 01:39.
Responder Citando
  #9 (permalink)  
Antiguo 12-dic-2006, 01:35
Avatar de Guillermo Luijk
RAW RAW la botella de RAW
 
Fecha de Ingreso: marzo-2006
Ubicación: Madrid (a ratos Alicante)
Mensajes: 7.686
Enviar un mensaje por MSN a Guillermo Luijk
Cita:
Iniciado por Bandini
¿Que devuelve FileFormat() exactamente? ¿AX_JPEG?
eso es
.......................
__________________
"En ocasiones veo halos."

Canon EOS 5D | EOS 350D | EOS 300 | 10-22 | TS-E 24 f3.5L II | 24-70 f2.8L | 70-200 f4L
http://www.guillermoluijk.com para suscribirte pulsa aquí
Responder Citando
  #10 (permalink)  
Antiguo 12-dic-2006, 01:37
Avatar de danielniel
Ayudantes Ojo Digital
 
Fecha de Ingreso: agosto-2005
Ubicación: .
Mensajes: 4.253
el degradado es bastante leve( para lo que yo pensaba que se degradaba) , buena prueba
__________________

Responder Citando
  #11 (permalink)  
Antiguo 12-dic-2006, 02:02
Avatar de Marc EOS
Noble escudero.
 
Fecha de Ingreso: agosto-2005
Ubicación: Argentino viviendo en el Caribe Sur
Mensajes: 3.811
Enviar un mensaje por MSN a Marc EOS
Cita:
Iniciado por espilber
...
Conclusión, tirando en jpg, ocupa menos, tengo más tarjetas disponibles, los discos duros tardo más en llenarlos etc. y lo más importante: los jpg salen prácticamente a punto de llevar a copias.
Digo ésto porque después de las pruebas se acabó tirar en raw.

slds.
El problema más grave del jpg no es que pierde mucho o poco en la descompresión y re-compresión. Nuestro amigo _GUI_ está arribando a excelentes conclusiones con sus experimentos en la churrera

La gran desventaja del jpg es que sólo tiene 8 bits de profundidad de color, esto es 256 niveles en R, y otros tantos en G y B. Cuando comienzas a procesar la imagen que ya salió pre-procesada de cámara (no olvides que el jpg en la tarjeta ya tiene saturación, nitidez, etc. retocadas por la cámara) hay siempre pérdida de algunos niveles. Esto se puede comprobar fácilmente mirando el histograma: aparece el efecto peine. Y en determinadas circunstancias pueden notarse escalonamientos en los degradados (posterización), como habrás visto cielos que no van parejos de celeste a azul, sino que presentan saltos visibles de luminosidad.
Trabajando con los TIFF -y esto sólo es posible a partir de archivos RAW de 12 bits- se tienen 4096 niveles en cada canal, cosa que nos asegura que aunque se pierdan muchos en el procesamiento, nunca el ojo va a detectar efectos tipo posterización...

Saludos
__________________
Marc ***
Avatar por Mulatiña --- "Sumido en tus pensamientos"
__________________________________________
Responder Citando
  #12 (permalink)  
Antiguo 12-dic-2006, 02:20
Avatar de manolowarr
Habitual
 
Fecha de Ingreso: febrero-2005
Ubicación: Sanlúcar de Barrameda
Mensajes: 567
Podéis disparar en el formato que queráis, pero ahora, a la hora de guardar, cuando yo quiero la máxima calidad de mis originales la guardo en PSD y seguro que no hay perdida, yo tengo mi PC lleno de miles de PSD y algunos con capas, total hoy en día los discos duros son muy baratos.


El código para hace el experimento en Photoshop
Hay que guardarlo como JS o JSX y archivo guiones explorar

//-------------------------
var jpegOptions = new JPEGSaveOptions()

jpegOptions.embedColorProfile = false;
jpegOptions.matte = MatteType.NONE;
jpegOptions.quality = 12; // Calidad
jpegOptions.formatOptions = FormatOptions.STANDARDBASELINE;
// jpgSaveOptions.scans = 3;


for (var i=1; i<=2000; i++){

var fileRef = new File("~/Escritorio/MiFoto.jpg");

open (fileRef);

var docRef = activeDocument

docRef.saveAs (fileRef, jpegOptions, false, Extension.LOWERCASE);

docRef.close();

}
__________________
Visita mi Web

http://www.photoshop-scripts.com

Softwares y Plugins
.
Responder Citando
  #13 (permalink)  
Antiguo 12-dic-2006, 02:35
Avatar de espilber
Habitual
 
Fecha de Ingreso: marzo-2004
Mensajes: 538
Ya, Marc, lo que dices lo he tenido clarísimo desde hace mucho.
Pero 1800 tomas cada finde, da que pensar si para 20x30 es producente o no.
Me remitiría al uso de negativo, que mucha gente usaba 135 y la otra mucha gente 6x4,5 con varias marcas y diversas sensibilidades con resultados muy dispares, y que cada uno pillaba su truquillo usando el material.

Conozco cuál es la desventaja del jpg, pero la conoce el laboratorio, usando material brillo o mate, KodakE3 o Fuji Crystal ??. Y cuantos laboratorios pro utilizan lo correcto para nuestras correctas capturas y tratamientos deliciosos.??
Es que me duelen los ojos de tanto tratamientos y ajustes, que si me puedo a provechar de que salga casi terminada la toma, pués mejor que mejor, y por mi abuela: casi diría que las dejo clavaditas, tan solo las enfoco algo.

Pero en fin, ésto es forma de cada uno y comentándolo puede más gente enterarse o adoptar su forma de trabajo.
Gracias por la aclaración.

slds.
Responder Citando
  #14 (permalink)  
Antiguo 12-dic-2006, 02:42
Avatar de Guillermo Luijk
RAW RAW la botella de RAW
 
Fecha de Ingreso: marzo-2006
Ubicación: Madrid (a ratos Alicante)
Mensajes: 7.686
Enviar un mensaje por MSN a Guillermo Luijk
Cita:
Iniciado por espilber
Es que me duelen los ojos de tanto tratamientos y ajustes, que si me puedo a provechar de que salga casi terminada la toma, pués mejor que mejor, y por mi abuela: casi diría que las dejo clavaditas, tan solo las enfoco algo.
la vuelta al JPEG, si no para todas las tomas sí para aquellas que como dices bien pueden clavarse con la propia cámara sin necesidad de más artificios, es algo que yo cada vez me planteo más.
lástima que la 350D no tenga un botón directo para pasar de un modo a otro porque aunque parezca una chorrada a mí lo que me hunde es la pereza de andar buceando en menús.
otros pilares que creía tenía claros hace unos meses se me están cayendo, como por ejemplo que el ISO 100 sea obligatorio, o que no importa tener huecos de focales en tu juego de lentes.

esto debe ser el cambio como decía Heráclito (o que uno ya va empezando a tener puñetera idea vamos).
__________________
"En ocasiones veo halos."

Canon EOS 5D | EOS 350D | EOS 300 | 10-22 | TS-E 24 f3.5L II | 24-70 f2.8L | 70-200 f4L
http://www.guillermoluijk.com para suscribirte pulsa aquí
Responder Citando
  #15 (permalink)  
Antiguo 12-dic-2006, 02:54
Avatar de espilber
Habitual
 
Fecha de Ingreso: marzo-2004
Mensajes: 538
Gui, creo que solamente he tirado iso100 en estudio con reala 220 con hassel, el resto nhp400 con pentax, y desde las digis pués diría que de isos 400 para arriba pués soy un incrédulo del flash, i un amant de la calidez. La vida no la veo a flash-azos, sino más sencilla y natural.
Algún dia os enseñaré la colección de unas tomas que estoy preparando hechas no con mis queridísimos 50, 17/40 i 24/70 que uso solamente, sino con un simpatiquito cristalito hecho de palo de chupachups: i barato, ché: el 18/55, que no defiendo ni ná. Si le hubiesen puesto plomo en su interior y lo cobrasen a 650 euros, veríais.

Yo los huecos con las focales, lo cubro con los piés.


slds.
Responder Citando
  #16 (permalink)  
Antiguo 12-dic-2006, 03:12
Avatar de Guillermo Luijk
RAW RAW la botella de RAW
 
Fecha de Ingreso: marzo-2006
Ubicación: Madrid (a ratos Alicante)
Mensajes: 7.686
Enviar un mensaje por MSN a Guillermo Luijk
Cita:
Iniciado por espilber
Yo los huecos con las focales, lo cubro con los piés
vale, y si la toma que tú quieres no entra en el 70-200, y te obligaría a recortar más de lo que tú quisieras en el 50mm, y delante de ti hay un río... haces como Jesus Christ y caminas sobre las aguas?
Por cierto en la foto que he usado como ejemplo me pasó esto mismísimo y opté por pereza por dejar el 70-200 y que saliera apretujá como la ves.

Mañana más.
__________________
"En ocasiones veo halos."

Canon EOS 5D | EOS 350D | EOS 300 | 10-22 | TS-E 24 f3.5L II | 24-70 f2.8L | 70-200 f4L
http://www.guillermoluijk.com para suscribirte pulsa aquí
Responder Citando
  #17 (permalink)  
Antiguo 12-dic-2006, 03:23
Avatar de espilber
Habitual
 
Fecha de Ingreso: marzo-2004
Mensajes: 538
Bueno, yo es que tengo muy claro qué es lo que hago. Me gusta estar encima de la gente, disfruto y necesito los angulares. En sociales me gusta estar dentro de la escena.
Los teles no puedo utilizarlos en los interiores.
Dónde coñe están los smiles.??


slds.
Responder Citando
  #18 (permalink)  
Antiguo 12-dic-2006, 03:39
Avatar de dani3D
Lleva poco por aquí
 
Fecha de Ingreso: diciembre-2006
Ubicación: Madrid
Mensajes: 31
Rota la imágen 1/1000 de grado cada vez, dará un par de vueltas. Eso debería hacerle la puñeta pero bién y se editarán todos los pixeles por narices. Ahora que no termino de entender pa qué tanta tortura

De todos modos lo de 12bit=4096 niveles por canal tiene un matiz importante, y es que creo que en el RAW esa escala es logarítmica y no lineal, por eso la equivalencia con un TIFF lineal es de al menos 16 bit.

Como cada fabricante y modelo tienen su subformato de RAW, vete tu a saber qué hay dentro exactamente. Podemos estar seguros de que cuando hacemos el cambio a PSD/tiff 16bit ya no tenemos lo mismo que en el RAW, aunque se parece mucho, eso sí, pero los formatos de 16bit también tienen desventajas.

Para mi gusto, el formato de alto rango dinámico mas completo y avanzado es el Open EXR. Trabajo en postpro de cine y vídeo y últimamente me he lanzado a por él, y la verdad es que dá gusto. Voy a investigar qué tal funcionaría para foto, pero me imagino que no habrá mucho cambio.

La explicación completa aquí:
http://www.openexr.com/about.html


Y ya paro, que me he alargado mas que un día sin pan.
Responder Citando
  #19 (permalink)  
Antiguo 12-dic-2006, 10:23
Avatar de Guillermo Luijk
RAW RAW la botella de RAW
 
Fecha de Ingreso: marzo-2006
Ubicación: Madrid (a ratos Alicante)
Mensajes: 7.686
Enviar un mensaje por MSN a Guillermo Luijk
Cita:
Iniciado por dani3D
De todos modos lo de 12bit=4096 niveles por canal tiene un matiz importante, y es que creo que en el RAW esa escala es logarítmica y no lineal, por eso la equivalencia con un TIFF lineal es de al menos 16 bit
No si las ventajas del RAW en cuanto a su mayor número de niveles están claras y ya se han discutido mucho. Y también ha quedado patente la mejora que supone RAW frente al ruido previa sobreexposición de la imagen para luego subexponer.
Pero aquí de lo que se trataba es de ver si la compresión JPEG en sí afecta mucho o poco cuando se aplican sucesivos procesos de edición+guardado.
En el ejemplo concreto que he puesto, subo todos los pixels 20 niveles y luego los bajo otros tantos 20, lo que hace que no haya efecto de pérdida de niveles (más que los pocos píxeles que pudieran quemarse en algún canal como comentaba) por agregación, así que da igual en ese sentido trabajar a 8 o a 16 bits.

De todos modos lo de los RAW y sus bits y sus escalas logarítmicas o lineales al menos para mí es aún un misterio. Con 12 bits mi cabeza me dice que se codifican 4096 niveles, impepinablemente, da igual que la escala sea logarítmica, lineal o dibujada a mano alzada por tu sobrino. Otra cosa es que una escala no lineal expanda las sombras para mejorar la definición en ellas, a costa de perder definición en las luces. Pero lo que son niveles tendremos 4.096.
Luego todo esto se me va al traste cuando hice la prueba con un RAW de la Leica M8 que son .DNG supuestamente de 8 bits (256 niveles), y que en cambio soportaban todo tipo de procesados sobre niveles sin que estos se empezasen a agregar hasta hacer muchas pero muchas perrerías, lo que me hace pensar que de 256 niveles nada, hay muchos más.
Así que, no entiendo nada.
__________________
"En ocasiones veo halos."

Canon EOS 5D | EOS 350D | EOS 300 | 10-22 | TS-E 24 f3.5L II | 24-70 f2.8L | 70-200 f4L
http://www.guillermoluijk.com para suscribirte pulsa aquí
Responder Citando
  #20 (permalink)  
Antiguo 12-dic-2006, 11:38
Avatar de dani3D
Lleva poco por aquí
 
Fecha de Ingreso: diciembre-2006
Ubicación: Madrid
Mensajes: 31
Cita:
Iniciado por _GUI_
Luego todo esto se me va al traste cuando hice la prueba con un RAW de la Leica M8 que son .DNG supuestamente de 8 bits (256 niveles), y que en cambio soportaban todo tipo de procesados sobre niveles sin que estos se empezasen a agregar hasta hacer muchas pero muchas perrerías, lo que me hace pensar que de 256 niveles nada, hay muchos más.
Así que, no entiendo nada.
¿Con qué los estabas procesando y de qué manera?. Si al importar una imágen la cambias de modo es como si la "descorchases" por arriba y abajo abriéndose un mundo nuevo en lo que a procesarla se refiere.

Una cosa sobre las "logarítmicas" es que no tienen por fuerza que usar un logaritmo. Lo que se hace a veces es usar una LUT (look up table) que hace que sólo queden registrados los rangos importantes de la imágen hasta con huecos entre medias, lo que quiere decir que en realidad esos 4096 niveles pueden estar elegidos entre muchos mas.
También hay formatos que aplican una curva distinta a cada canal RGB, como el Cineon, y entonces aunque son 10 bit la imágen tiene bastánte mas rango de lo que debiera, y eso que deja 2 bit sin usar. Ahora los cineones los estan sustituyendo por DPX.

Echa un ojo:
http://en.wikipedia.org/wiki/Cineon

Puede ser lo que te esté pasando con la M8, mira a ver si en el raw viene una LUT o al menos un par de valores para el punto negro de referencia y el blanco de referencia, así estaría comprimiendo la gama mucho mas de lo que en teoría dan 8 bit. Es poco frecuente que en una foto tengas negro total y blanco total y eso es aprovechable.

En cuanto al lo del JPG, si siempre utilizas el mismo algoritmo y el mismo ratio de compresión es normal que obtengas resultados casi casi iguales, ¿no?. Ya ha hecho las optimizaciones con pérdida la primera vez, el resto tiene que hacer menos trabajo.
Responder Citando
  #21 (permalink)  
Antiguo 12-dic-2006, 12:05
Avatar de Guillermo Luijk
RAW RAW la botella de RAW
 
Fecha de Ingreso: marzo-2006
Ubicación: Madrid (a ratos Alicante)
Mensajes: 7.686
Enviar un mensaje por MSN a Guillermo Luijk
Cita:
Iniciado por dani3D
Una cosa sobre las "logarítmicas" es que no tienen por fuerza que usar un logaritmo. Lo que se hace a veces es usar una LUT (look up table) que hace que sólo queden registrados los rangos importantes de la imágen hasta con huecos entre medias, lo que quiere decir que en realidad esos 4096 niveles pueden estar elegidos entre muchos mas.
Sí, algo de eso tiene que haber. Optimizaciones internas para obtener más niveles con menos bits.
Lo que no sé es porqué entonces en la bibliografía que te encuentras por ahí (Luminous Landscape, Mellado,...) dan por sentado la famosa cifra: 12 bits = 4.096 niveles que yo me había tomado como dogma de fe. Eso será en unas cámaras sí, en otras no, en otras a medias,... vamos que hay mucha tela entre bastidores donde cada fabricante tendrá sus propios trucos del almendruco y pocas ganas de desvelarlos.

Un saludo y gracias.
__________________
"En ocasiones veo halos."

Canon EOS 5D | EOS 350D | EOS 300 | 10-22 | TS-E 24 f3.5L II | 24-70 f2.8L | 70-200 f4L
http://www.guillermoluijk.com para suscribirte pulsa aquí
Responder Citando
  #22 (permalink)  
Antiguo 12-dic-2006, 12:14
Avatar de GMAN
g0t s0mE siZZurp?
 
Fecha de Ingreso: noviembre-2005
Ubicación: L.A. oOMURSIAOo
Mensajes: 5.230
Enviar un mensaje por MSN a GMAN
iNTEREsante resultado,se nota pero 2000 son 2000^^...
__________________


Responder Citando
  #23 (permalink)  
Antiguo 12-dic-2006, 23:08
Avatar de Eternauta
Vivo en los foros
 
Fecha de Ingreso: febrero-2004
Ubicación: el Cielo
Mensajes: 1.627
Lo de girar la imagen una milésima de grado no es mala idea, aunque necesitaríamos 365.000 ciclos para volver a verla derecha. Además, la degradación ya no sería achacable al sistema de compresión, sinó al remuestreo necesario para cada giro arbitrario.

Lo de variar el programa tampoco lo veo interesante. Se piensa mucho que cada programa utiliza sus propios algoritmos (algoritmo parece ya una palabra mágica, pero es simplemente una secuencia de cálculos), pero el funcionamiento de la compresión jpg es bastante elaborado y complejo, y es único. Lo que varía en cada programa es el modo en que se cuantifica la profundidad de la compresión (nivel de calidad).

La prueba que has hecho, GUI, es muy llamativa. Y lo que está demostrando es que cambios pequeños apenas suponen degradación acumulativa. Lo malo es que normalmente cuando editamos realmente una imagen hacemos más cosas.

Para mi la causa de que haya incluso menos diferencia entre la copia 1000 y la 1 que entre la 1 y el original sin compresión, se explica entendiendo como funcionan los pasos 2º y 4º de la compresión jpg.

El segundo paso elimina de forma bastante limpia la mitad del tamaño del archivo. Se trata de igualar los valores cromáticos de cada grupo de cuatro píxeles, conservando sólamente su diferencia de luminosidad. Esto se hace considerando que el ojo resuelve mejor las diferencias de valor que las de tono, y significa algo así como reducir a la mitad la resolución de los datos cromáticos:


El cuarto paso, en el que interviene el nivel de calidad, se dividen los coeficientes TDC de todos los píxeles de cada grupo de 8x8, que se disponen en una secuencia de lectura que forma un zig-zag diagonal, anotando un exponente para luego recuperar -aproximadamente- los valores reales.

Esta división actúa como un redondeo, por lo que los valores muy parecidos se igualan. Aquí es donde puede estar la explicación. Imaginemos que una serie de valores especificados hasta el segundo decimal se redondea a números enteros. Se guardan, se abren, y ninguno tiene decimales. Si queremos volver a redondearlos, no va a significar ninguna pérdida acumulada de información, a no ser que primero hagamos modificaciones suficientes como para que vuelvan a diferenciarse hasta las centésimas. Y aún si lo hiciésemos, si los cambios no fueron significativos la mayoría de los redondeos a números enteros pueden volver a coincidir.

Eso es probablemente lo que está pasando con estas imágenes. Y lo mismo podemos pensar de la reducción de color.

Se demuestra por tanto la persistencia de la primera versión comprimida a los cambios puntuales o sutiles. Lo que no quita ser conscientes del límite que supone manejar la compresión con pérdida.

Quizá notes más cambios con rotaciones de 90 grados. Se alteraría el sentido del zig-zag de registro de los bloques de píxeles, y probablemente produciría más artefactos en las zonas de borde. Sin embargo subiendo y bajando como ya has hecho algunos valores en bloque, no creo que se note ningún efecto.

Saludos
Responder Citando
  #24 (permalink)  
Antiguo 13-dic-2006, 00:45
Avatar de Guillermo Luijk
RAW RAW la botella de RAW
 
Fecha de Ingreso: marzo-2006
Ubicación: Madrid (a ratos Alicante)
Mensajes: 7.686
Enviar un mensaje por MSN a Guillermo Luijk
Ahí le has dao Eternauta, ciertamente la rotación es un calvario para el JPEG (que malo eres). Os pongo los resultados tras rotaciones consecutivas de 90º en sentido horario:


4 ROTACIONES (90 KB)
Se puede aguantar, no?





20 ROTACIONES (93 KB)
Ya hay claros artefactos





500 ROTACIONES (99 KB)
Ufff



El código fuente para curiosos:

For i = 1 To 2000
Set MyObj1 = New GflAx.GflAx
MyObj1.LoadBitmap (sFileName)

lWidth = MyObj1.Width
lHeight = MyObj1.Height

Set MyObj2 = New GflAx.GflAx
MyObj2.NewBitmap lHeight, lWidth

For lX = 0 To lWidth - 1
For lY = 0 To lHeight - 1

lColour = MyObj1.GetColorAt(lX, lY)
MyObj2.LineColor = lColour
MyObj2.DrawPoint lHeight - lY - 1, lX

Next lY
Next lX

MyObj2.SaveFormat = iFormat
sFileName = sRoot & "test_" & IIf(i < 10, "000" & i, IIf(i < 100, "00" & i, IIf(i < 1000, "0" & i, i))) & _
Extension(iFormat)
MyObj2.SaveBitmap (sFileName)
frmPrincipal.txtRuta = sFileName
DoEvents
Next i


Curiosamente la librería que uso dispone de una función predefinida muy potente para rotar JPEG 90º, 180º o 270º sin absolutamente ninguna pérdida (no pongo muestra porque tras 500 rotaciones con sus correspondientes guardados se tiene una imagen idéntica a la original pixel a pixel). Esto me hace pensar que en el algoritmo de JPEG ya previeron "algo" que permite incluir en el fichero JPEG esta información de orientación de la imagen, sin que por ello se alteren lo más mínimo los datos de cada pixel (seguramente ni se deshace la compresión JPEG).
En cambio si en Photoshop cogemos una imagen, la rotamos 90º, y a continuación la volvemos a guardar, SÍ que hay pérdida. PS no es tan listo para ponerse a indagar si a la imagen le hemos aplicado solo una rotación pura y dura de 90º o le has hemos hecho más perrerías, con lo que NO utiliza esta facilidad que brinda el JPEG y al deshacer y rehacer la compresión JPEG produce pérdida.

Es una función así de tonta:

Ret = gflJpegLosslessTransform("C:\imagen.jpg", GFL_LOSSLESS_TRANSFORM_ROTATE90)

Guarda de nuevo imagen.jpg rotada (en este caso 90º), pero sin la más mínima pérdida.
__________________
"En ocasiones veo halos."

Canon EOS 5D | EOS 350D | EOS 300 | 10-22 | TS-E 24 f3.5L II | 24-70 f2.8L | 70-200 f4L
http://www.guillermoluijk.com para suscribirte pulsa aquí
Responder Citando
  #25 (permalink)  
Antiguo 13-dic-2006, 19:24
Avatar de dani3D
Lleva poco por aquí
 
Fecha de Ingreso: diciembre-2006
Ubicación: Madrid
Mensajes: 31
Cita:
Iniciado por Eternauta
Lo de girar la imagen una milésima de grado no es mala idea, aunque necesitaríamos 365.000 ciclos para volver a verla derecha.
Jarl, el típico problema del piñón de bicicleta, mira que soy canelo...
Responder Citando
  #26 (permalink)  
Antiguo 14-dic-2006, 01:05
Avatar de Eternauta
Vivo en los foros
 
Fecha de Ingreso: febrero-2004
Ubicación: el Cielo
Mensajes: 1.627
jeje

Estaba claro que querías decir otra cosa. Bueno, la misma, pero a otra escala.



Para mi que esa función lo que hace no es exactamente abrir la imagen, sinó probablemente leer el archivo, y modificar el orden de los datos tal y como se hubiesen registrado si se hubiese rotado la foto antes de la compresión. Para éllo habría que reorganizar la última parte de la codificación jpg. Tampoco lo sé, no soy programador.

Hace un par de años aparecían esas funciones de rotación sin pérdida en programas catalogadores y visores, y se decía que realmente consistía en incrustar en el archivo una instrucción para que al abrir el jpg se aplicase la rotación de 90 grados. Los datos jpg no se menean.

Cita:
Iniciado por _GUI_
PS no es tan listo para ponerse a indagar si a la imagen le hemos aplicado solo una rotación pura y dura de 90º o le has hemos hecho más perrerías, con lo que NO utiliza esta facilidad que brinda el JPEG y al deshacer y rehacer la compresión JPEG produce pérdida
PhotoShop hace lo que le mandes. Las rotaciones de 90 grados no comportan ninguna pérdidad e informacion en lo que es la edición de la imagen. Luego viene la compresión jpg, que es una utilidad externa para guardar. No tendría mucho sentido que el programa "considerase" que solamente se ha rotado la imagen, y modifique el archivo en lugar de guardar lo que tiene. Ahora, sí que sería más lógico incorporar esta opción de rotación sin pérdidas, por ejemplo entre las utilidades del menú "Automatizar"
Responder Citando
  #27 (permalink)  
Antiguo 14-dic-2006, 01:20
Avatar de Palacios
Gurú Ojodigitalero
 
Fecha de Ingreso: abril-2005
Ubicación: Zaragoza
Mensajes: 11.759
Curioso estudio el que nos muestras, sin duda que el mayor degradado se realiza en la primera compresión, de tif a jpg y si despues apenas la tocas, aunque la edites, no degraba mucho.muy curioso
__________________
Responder Citando
  #28 (permalink)  
Antiguo 14-dic-2006, 21:00
Avatar de Moli
Vivo y dejo vivir.
 
Fecha de Ingreso: abril-2004
Ubicación: Madrid
Mensajes: 5.005
Cita:
Iniciado por _GUI_
la vuelta al JPEG, si no para todas las tomas sí para aquellas que como dices bien pueden clavarse con la propia cámara sin necesidad de más artificios, es algo que yo cada vez me planteo más.
lástima que la 350D no tenga un botón directo para pasar de un modo a otro porque aunque parezca una chorrada a mí lo que me hunde es la pereza de andar buceando en menús.
otros pilares que creía tenía claros hace unos meses se me están cayendo, como por ejemplo que el ISO 100 sea obligatorio, o que no importa tener huecos de focales en tu juego de lentes.

esto debe ser el cambio como decía Heráclito (o que uno ya va empezando a tener puñetera idea vamos).
mira en las finc personales. el punto 1 "Func. SET al disp" pones cambiar calidad. entonces siempre que presiones set y le des a la rueda pasas de RAW a JPG en sus diversas calidades.

lo hacia la 300D con el crak, la 20D, y en adelante, asi que la 350D me imagino que tambien
__________________
[COLOR=RoyalBlue]En la perseverancia está el éxito.[/COLOR]
[COLOR=DarkRed]No te tomes la vida tan en serio,al fin y al cabo no saldrás vivo de ella.[/COLOR]
-------------------------
[FONT=Arial][COLOR=DarkSlateBlue][FONT=Arial Black][URL=http://usuarios.lycos.es/moliterni]mi web.[/URL] [/FONT] [/COLOR] [/FONT] :xxlmas:
-------------------------
Responder Citando
  #29 (permalink)  
Antiguo 14-dic-2006, 22:39
Avatar de juancar
Vivo en los foros
 
Fecha de Ingreso: febrero-2004
Ubicación: CyL
Mensajes: 3.366
interesante el post, sobre todo en cuanto a lo que comentais de los giros y como funciona el jpeg a la hora de comprimir

desde luego lo que yo tenia claro es que hay una serie de acciones que deterioran la imagen mucho más que abrir y guardar, el hecho de añadir esas acciones, invalida en cierto sentido la siguiente parte del experimento... estas midiendo otras cosas que intervienen en la degradación

con respecto a lo de girar, es común tambien el hecho de que es mejor por ejemplo imprimir la fotografia que tenga algo de caida y enderezarla en un corte que enderezarla y luego imprimirla, photoshop no es perfecto en los giros, yo noto que pierde "nitidez" en los giros sean grandes o pequeños, los de 90 grados no lo he comprobado la verdad

finalmente seria interesante conocer como se estructuran los datos en los raw de la camara, me parece que ahi esta la clave de algunas cualidades de las imagenes de las camaras, no todo es sensor y objetivos, la ¿superioridad? de la s3 en cuanto al rango esta basada en el sensor o en el raw y el software??? siento una enorme curiosidad al respecto...
__________________
¿estoy abstracto?
Responder Citando
  #30 (permalink)  
Antiguo 11-oct-2007, 17:32
Avatar de ultreia
Enganchad@ a los foros
 
Fecha de Ingreso: febrero-2007
Ubicación: Moaña
Mensajes: 841
Cita:
Iniciado por _GUI_ Ver Mensaje
Al hilo de estos dos hilos:

JPEG y degradación
Sobre el JPG, TIFF, RAW, Prueba cientifica

he hecho la prueba de abrir, editar y guardar un JPEG 2000 veces para ver qué degradación de calidad se tiene. Entre cada apertura y guardado, he dibujado un pixel de color aleatorio formando diagonales no vaya a ser que en el caso de no tocar nada de nada en la imagen la calidad permaneciese intacta por vete a saber qué extraño juego matemático o coincidencia de transformadas de Fourier y bla bla bla.

El resultado es que guardando en un JPEG de 88KB un bitmap de 800x533 pixels, que viene a equivaler (al menos por el tamaño que ocupa) con una calidad del "Guardar para Web" de PS de entre 50 y 51 sobre 100, la calidad se deteriora mucho menos de lo que yo esperaba.
No he podido elegir otra calidad para guardar porque la librería que uso para hacer la rutina viene prefijada a esta.


IMAGEN ORIGINAL GUARDADA EN JPEG DE CALIDAD ALTA (197 KB)



PRIMER JPEG GUARDADO EN LA PRUEBA (88 KB)



1000-ÉSIMO JPEG GUARDADO EN LA PRUEBA (89 KB)



2000-ÉSIMO JPEG GUARDADO (90 KB)



Si sabéis un poquito de programación podéis ver en el código fuente que no hay trampa ni cartón.


For i = 1 To 2000
Set MyObj1 = New GflAx.GflAx
MyObj1.LoadBitmap (sFileName)


j = i Mod 255
MyObj1.LineColor = RGB(Int(Rnd * 255), Int(Rnd * 255), Int(Rnd * 255))
MyObj1.DrawPoint i Mod 800, i Mod 533


iFormat = FileFormat()
MyObj1.SaveFormat = iFormat
sFileName = sRoot & "test_" & IIf(i < 10, "000" & i, IIf(i < 100, "00" & i, IIf(i < 1000, "0" & i, i))) & _
Extension(iFormat)


MyObj1.SaveBitmap (sFileName)
Set MyObj1 = Nothing


Next i


Qué pasaría si los cambios entre guardado y guardado fueran más drásticos? pues ni idea, seguramente se note más. Si tenéis alguna idea de perrerías que hacer a la imagen entre guardado y guardado soy todo oidos.
Pero lo que está claro es que si apenas se toca la imagen, poco empeora la calidad. El 99% de la degradación viene con el primer paso de TIFF a JPEG.

Salu2
Has probado a hacer algo similar con un procesado por lotes de Photoshop a ver si tambieén pierde calidad ??
__________________
www.outrafoto.net /[URL="http://www.ojodigital.com/foro/showthread.php?t=182930"][B] Preparando iluminación[/B][/URL] / [URL="http://www.ojodigital.com/foro/deportes-y-espectaculos/223853-red-bull-air-race-2008-porto-4-fotos.html"][B]Última Foto OD[/B][/URL] / [B][URL="http://vi.sualize.us/ultreia/"]PhotoBookMarks[/URL]
[/B]
Responder Citando
  #31 (permalink)  
Antiguo 11-oct-2007, 18:40
Avatar de Guillermo Luijk
RAW RAW la botella de RAW
 
Fecha de Ingreso: marzo-2006
Ubicación: Madrid (a ratos Alicante)
Mensajes: 7.686
Enviar un mensaje por MSN a Guillermo Luijk
Cita:
Iniciado por ultreia Ver Mensaje
Has probado a hacer algo similar con un procesado por lotes de Photoshop a ver si tambieén pierde calidad ??
no tengo ni idea de como se procesa por lotes en PS pero el resultado debería ser el mismo pues JPEG es un formato estandar.
lo puedes hacer tú?
__________________
"En ocasiones veo halos."

Canon EOS 5D | EOS 350D | EOS 300 | 10-22 | TS-E 24 f3.5L II | 24-70 f2.8L | 70-200 f4L
http://www.guillermoluijk.com para suscribirte pulsa aquí
Responder Citando
  #32 (permalink)  
Antiguo 12-oct-2007, 01:04
Lleva poco por aquí
 
Fecha de Ingreso: agosto-2007
Ubicación: Valencia
Mensajes: 45
Thumbs up Mu curioso

Joder Gui, que ya nos has demostrado que no eres de este planeta . Te imagino contando las grabaciones jpg: 1441, 1442, 1443.... je je je.

Ahora en serio, pensaba que la degradación de guardar varias veces el jpg sería mayor (2 o 3 como mucho). Ahora tocaré los jpg sin tanto miedo. Lo de la degradación si que me habia dado cuenta y pensaba que era algo que hacia mal, ahora me doy cuenta que es propio del formato.

Salu2
jb
Responder Citando
  #33 (permalink)  
Antiguo 12-oct-2007, 01:10
Avatar de shard
Habitual
 
Fecha de Ingreso: mayo-2007
Ubicación: Vilafranca del Penedès
Mensajes: 551
Otro post de culto por parte de GUI.

No tengo mucha idea, pero se me ocurre que una manera de editar la imagen de una manera no tan drástica como la rotación, podría ser hacer el negativo y positivo alternativamente.

Teóricamente no estamos alterando la imagen ya que siempre podremos conseguir el positivo del color de un pixel si conocemos su color negativo, de modo que el resultado tiene que ser el mismo que en la primera prueba de GUI (a excepción de los efectos de las diagonales añadidas).

He metido una pedrada o es digno de estudio? Lo haría yo mismo si supiera cómo, pero como no sé, os invito a probarlo.

Si he dicho alguna memez corregidme.
__________________
Nikon D80.
Nikon 18-70 AF DX, Nikon Series E 50 1.8 Manual, Peleng 8mm Fisheye, Nikkor 85 1.8 AF D.
Nikon Sb900.
http://www.flickr.com/photos/eshard/
Responder Citando
  #34 (permalink)  
Antiguo 12-oct-2007, 10:51
Lleva poco por aquí
 
Fecha de Ingreso: agosto-2007
Ubicación: Valencia
Mensajes: 45
Sería interesante saber como girar un jpg sin que se viese afectada su calidad.
Entiendo que con un raw o un Tiff esto no pasa, ¿no?

Salu2
jb
Responder Citando
  #35 (permalink)  
Antiguo 12-oct-2007, 17:07
Avatar de Guillermo Luijk
RAW RAW la botella de RAW
 
Fecha de Ingreso: marzo-2006
Ubicación: Madrid (a ratos Alicante)
Mensajes: 7.686
Enviar un mensaje por MSN a Guillermo Luijk
Cita:
Iniciado por jotab Ver Mensaje
Sería interesante saber como girar un jpg sin que se viese afectada su calidad.
Entiendo que con un raw o un Tiff esto no pasa, ¿no?

Salu2
jb
un JPEG se puede girar en múltiplos de 90º sin pérdida de calidad. en realidad solo se altera un parámetro de los metadatos del JPEG (es decir NO VALE abrirla, girarla y guardarla de nuevo), quedando los datos intactos. creo que en este hilo lo comenté en algún sitio, eso sí a saber ande...
__________________
"En ocasiones veo halos."

Canon EOS 5D | EOS 350D | EOS 300 | 10-22 | TS-E 24 f3.5L II | 24-70 f2.8L | 70-200 f4L
http://www.guillermoluijk.com para suscribirte pulsa aquí
Responder Citando
Respuesta

Marcadores

Herramientas
Desplegado Califica este Tema
Califica este Tema:

Normas de Publicación
No puedes crear nuevos temas
No puedes responder mensajes
No puedes subir archivos adjuntos
No puedes editar tus mensajes

Los Códigos BB están Activado
Las Caritas están Activado
[IMG] está Activado
El Código HTML está Desactivado
Trackbacks are Activado
Pingbacks are Activado
Refbacks are Activado

Ir al Foro