Registrarse
Resultados 1 al 35 de 35
  1. #1
    Ingreso
    07 Mar, 06
    Ubicación
    Madrid (a ratos Alicante)
    Mensajes
    9,450
    Post Thanks / Like

    Qué pasa si abro, edito y guardo un JPEG 2000 veces?

    Al hilo de estos dos hilos:

    http://www.ojodigital.com/foro/showthread.php?t=115331
    http://www.ojodigital.com/foro/showthread.php?t=94838

    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&#233; pasar&#237;a si los cambios entre guardado y guardado fueran m&#225;s dr&#225;sticos? pues ni idea, seguramente se note m&#225;s. Si ten&#233;is alguna idea de perrer&#237;as que hacer a la imagen entre guardado y guardado soy todo oidos.
    Pero lo que est&#225; claro es que si apenas se toca la imagen, poco empeora la calidad. El 99% de la degradaci&#243;n viene con el primer paso de TIFF a JPEG.

    Salu2
    Última edición por Guillermo Luijk; 12/12/2006 a las 00:07
    "En ocasiones veo halos."

    http://www.guillermoluijk.com para suscribirte haz clic aquí
    Último contenido: EL MITO DEL TRÍPODE QUE ASESINÓ A UN ESTABILIZADOR

  2. #2
    Ingreso
    31 May, 06
    Ubicación
    Cerdanyola del Vallés (BCN)
    Mensajes
    2,703
    Post Thanks / Like
    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

  3. #3
    Ingreso
    31 Aug, 05
    Ubicación
    Argentino viviendo en el Caribe Sur
    Mensajes
    3,811
    Post Thanks / Like
    Como iniciativa para investigar, excelente
    Pero perm&#237;teme decirte que si s&#243;lo se le cambia UN pixel a la foto, no se puede decir que se est&#233; "editando". Los algoritmos de compresi&#243;n JPG justamente deterioran la imagen donde hay cambios. Ese cielo di&#225;fano que no ha cambiado de foto a foto no se ver&#225; afectado por la re-compresi&#243;n.

    La prueba l&#243;gica es abrir, editar el cuadro completo, es decir cambiar el valor de TODOS los pixeles, por ejemplo elevando saturaci&#243;n o luminosidad, o cualquier par&#225;metro global, y luego guardar. Apostar&#237;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"
    __________________________________________

  4. #4
    Ingreso
    31 Jul, 04
    Ubicación
    Bilbao
    Mensajes
    2,875
    Post Thanks / Like
    Qu&#233; 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/

  5. #5
    Ingreso
    05 Oct, 05
    Ubicación
    En el Norte
    Mensajes
    144
    Post Thanks / Like
    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?

  6. #6
    Ingreso
    21 Feb, 05
    Ubicación
    Sanlúcar de Barrameda
    Mensajes
    567
    Post Thanks / Like
    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

  7. #7
    Ingreso
    09 Mar, 04
    Mensajes
    532
    Post Thanks / Like
    Muy interesante el trabajo realizado y de agradecer la informaci&#243;n.

    Por si viene al caso dir&#233; que "antiguamente" tiraba en raw, tanto proviniendo de nikon como de canon.
    Hasta que me li&#233; 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&#237; a laboratorio.

    Ese mismo jpg que proven&#237;a del DPP ya ajustado: abierto con el potochop cs2 y puesto encima el n&#250;mero 1, guardado, y vuelta a empezar abrir y poniendo el 2, as&#237; hasta la numeraci&#243;n 38.

    Compar&#233; la numeraci&#243;n del 1 con la foto del 38, y llev&#233; a laboratorio, resultado no pude distinguir sin un cuentahilos cu&#225;l era cu&#225;l, tan solo por el numerito.

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

    slds.

  8. #8
    Ingreso
    07 Mar, 06
    Ubicación
    Madrid (a ratos Alicante)
    Mensajes
    9,450
    Post Thanks / Like
    Cita Iniciado por Marc EOS
    La prueba l&#243;gica es abrir, editar el cuadro completo, es decir cambiar el valor de TODOS los pixeles, por ejemplo elevando saturaci&#243;n o luminosidad, o cualquier par&#225;metro global, y luego guardar. Apostar&#237;a a que con menos de 20 repeticiones ya comienza a presentar artefactos varios
    Tens tota la ra&#242;. As&#237; 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&#237; un pixel con componente azul por ejemplo 200 pasar&#237;a a 220, y en la siguiente vuelta me lo vuelvo a traer a 200, as&#237; las muestras impares salen claritas, y las pares similares al primer JPEG guardado arriba.
    Imagino que alg&#250;n pixel se habr&#225; quemado en uno o m&#225;s de sus canales pero la verdad es que no ha parecido interferir en la compresi&#243;n JPEG ni en el aspecto global de la foto.

    Os paso algunas muestras. Aqu&#237; no llego a 2000 porque ya le cuesta un poco m&#225;s pero mientras escribo esto la m&#225;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&#237;a Marc han ido apareciendo artefactos (ver los cuadraditos a la derecha), sobre la versi&#243;n 40 que a medida que se guardaban se incrementaban en notoriedad.
    Pero a&#250;n as&#237; creo que el JPEG lo hace bastante bien no? pensad que es un JPEG de calidad mediocre adem&#225;s (el ratio de compresi&#243;n ha sido de 14 respecto al BMP: de 1250KB a 88KB).

    Os pongo el c&#243;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&#237;a.
    Última edición por Guillermo Luijk; 12/12/2006 a las 01:39
    "En ocasiones veo halos."

    http://www.guillermoluijk.com para suscribirte haz clic aquí
    Último contenido: EL MITO DEL TRÍPODE QUE ASESINÓ A UN ESTABILIZADOR

  9. #9
    Ingreso
    07 Mar, 06
    Ubicación
    Madrid (a ratos Alicante)
    Mensajes
    9,450
    Post Thanks / Like
    Cita Iniciado por Bandini
    ¿Que devuelve FileFormat() exactamente? ¿AX_JPEG?
    eso es
    .......................
    "En ocasiones veo halos."

    http://www.guillermoluijk.com para suscribirte haz clic aquí
    Último contenido: EL MITO DEL TRÍPODE QUE ASESINÓ A UN ESTABILIZADOR

  10. #10
    Ingreso
    10 Aug, 05
    Ubicación
    .
    Mensajes
    4,676
    Post Thanks / Like
    el degradado es bastante leve( para lo que yo pensaba que se degradaba) , buena prueba


  11. #11
    Ingreso
    31 Aug, 05
    Ubicación
    Argentino viviendo en el Caribe Sur
    Mensajes
    3,811
    Post Thanks / Like
    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"
    __________________________________________

  12. #12
    Ingreso
    21 Feb, 05
    Ubicación
    Sanlúcar de Barrameda
    Mensajes
    567
    Post Thanks / Like
    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();

    }

  13. #13
    Ingreso
    09 Mar, 04
    Mensajes
    532
    Post Thanks / Like
    Ya, Marc, lo que dices lo he tenido clar&#237;simo desde hace mucho.
    Pero 1800 tomas cada finde, da que pensar si para 20x30 es producente o no.
    Me remitir&#237;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&#225;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&#233;s mejor que mejor, y por mi abuela: casi dir&#237;a que las dejo clavaditas, tan solo las enfoco algo.

    Pero en fin, &#233;sto es forma de cada uno y coment&#225;ndolo puede m&#225;s gente enterarse o adoptar su forma de trabajo.
    Gracias por la aclaraci&#243;n.

    slds.

  14. #14
    Ingreso
    07 Mar, 06
    Ubicación
    Madrid (a ratos Alicante)
    Mensajes
    9,450
    Post Thanks / Like
    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."

    http://www.guillermoluijk.com para suscribirte haz clic aquí
    Último contenido: EL MITO DEL TRÍPODE QUE ASESINÓ A UN ESTABILIZADOR

  15. #15
    Ingreso
    09 Mar, 04
    Mensajes
    532
    Post Thanks / Like
    Gui, creo que solamente he tirado iso100 en estudio con reala 220 con hassel, el resto nhp400 con pentax, y desde las digis pu&#233;s dir&#237;a que de isos 400 para arriba pu&#233;s soy un incr&#233;dulo del flash, i un amant de la calidez. La vida no la veo a flash-azos, sino m&#225;s sencilla y natural.
    Alg&#250;n dia os ense&#241;ar&#233; la colecci&#243;n de unas tomas que estoy preparando hechas no con mis querid&#237;simos 50, 17/40 i 24/70 que uso solamente, sino con un simpatiquito cristalito hecho de palo de chupachups: i barato, ch&#233;: el 18/55, que no defiendo ni n&#225;. Si le hubiesen puesto plomo en su interior y lo cobrasen a 650 euros, ver&#237;ais.

    Yo los huecos con las focales, lo cubro con los pi&#233;s.


    slds.

  16. #16
    Ingreso
    07 Mar, 06
    Ubicación
    Madrid (a ratos Alicante)
    Mensajes
    9,450
    Post Thanks / Like
    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."

    http://www.guillermoluijk.com para suscribirte haz clic aquí
    Último contenido: EL MITO DEL TRÍPODE QUE ASESINÓ A UN ESTABILIZADOR

  17. #17
    Ingreso
    09 Mar, 04
    Mensajes
    532
    Post Thanks / Like
    Bueno, yo es que tengo muy claro qu&#233; 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&#243;nde co&#241;e est&#225;n los smiles.??


    slds.

  18. #18
    Ingreso
    03 Dec, 06
    Ubicación
    Madrid
    Mensajes
    31
    Post Thanks / Like
    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.

  19. #19
    Ingreso
    07 Mar, 06
    Ubicación
    Madrid (a ratos Alicante)
    Mensajes
    9,450
    Post Thanks / Like
    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."

    http://www.guillermoluijk.com para suscribirte haz clic aquí
    Último contenido: EL MITO DEL TRÍPODE QUE ASESINÓ A UN ESTABILIZADOR

  20. #20
    Ingreso
    03 Dec, 06
    Ubicación
    Madrid
    Mensajes
    31
    Post Thanks / Like
    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.

  21. #21
    Ingreso
    07 Mar, 06
    Ubicación
    Madrid (a ratos Alicante)
    Mensajes
    9,450
    Post Thanks / Like
    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."

    http://www.guillermoluijk.com para suscribirte haz clic aquí
    Último contenido: EL MITO DEL TRÍPODE QUE ASESINÓ A UN ESTABILIZADOR

  22. #22
    GMAN Guest
    iNTEREsante resultado,se nota pero 2000 son 2000^^...

  23. #23
    Ingreso
    25 Feb, 04
    Ubicación
    el Cielo
    Mensajes
    1,625
    Post Thanks / Like
    Lo de girar la imagen una mil&#233;sima de grado no es mala idea, aunque necesitar&#237;amos 365.000 ciclos para volver a verla derecha. Adem&#225;s, la degradaci&#243;n ya no ser&#237;a achacable al sistema de compresi&#243;n, sin&#243; 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&#225;gica, pero es simplemente una secuencia de c&#225;lculos), pero el funcionamiento de la compresi&#243;n jpg es bastante elaborado y complejo, y es &#250;nico. Lo que var&#237;a en cada programa es el modo en que se cuantifica la profundidad de la compresi&#243;n (nivel de calidad).

    La prueba que has hecho, GUI, es muy llamativa. Y lo que est&#225; demostrando es que cambios peque&#241;os apenas suponen degradaci&#243;n acumulativa. Lo malo es que normalmente cuando editamos realmente una imagen hacemos m&#225;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&#243;n, se explica entendiendo como funcionan los pasos 2&#186; y 4&#186; de la compresi&#243;n jpg.

    El segundo paso elimina de forma bastante limpia la mitad del tama&#241;o del archivo. Se trata de igualar los valores crom&#225;ticos de cada grupo de cuatro p&#237;xeles, conservando s&#243;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&#237; como reducir a la mitad la resoluci&#243;n de los datos crom&#225;ticos:


    El cuarto paso, en el que interviene el nivel de calidad, se dividen los coeficientes TDC de todos los p&#237;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&#243;n act&#250;a como un redondeo, por lo que los valores muy parecidos se igualan. Aqu&#237; es donde puede estar la explicaci&#243;n. Imaginemos que una serie de valores especificados hasta el segundo decimal se redondea a n&#250;meros enteros. Se guardan, se abren, y ninguno tiene decimales. Si queremos volver a redondearlos, no va a significar ninguna p&#233;rdida acumulada de informaci&#243;n, a no ser que primero hagamos modificaciones suficientes como para que vuelvan a diferenciarse hasta las cent&#233;simas. Y a&#250;n si lo hici&#233;semos, si los cambios no fueron significativos la mayor&#237;a de los redondeos a n&#250;meros enteros pueden volver a coincidir.

    Eso es probablemente lo que est&#225; pasando con estas im&#225;genes. Y lo mismo podemos pensar de la reducci&#243;n de color.

    Se demuestra por tanto la persistencia de la primera versi&#243;n comprimida a los cambios puntuales o sutiles. Lo que no quita ser conscientes del l&#237;mite que supone manejar la compresi&#243;n con p&#233;rdida.

    Quiz&#225; notes m&#225;s cambios con rotaciones de 90 grados. Se alterar&#237;a el sentido del zig-zag de registro de los bloques de p&#237;xeles, y probablemente producir&#237;a m&#225;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&#250;n efecto.

    Saludos

  24. #24
    Ingreso
    07 Mar, 06
    Ubicación
    Madrid (a ratos Alicante)
    Mensajes
    9,450
    Post Thanks / Like
    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."

    http://www.guillermoluijk.com para suscribirte haz clic aquí
    Último contenido: EL MITO DEL TRÍPODE QUE ASESINÓ A UN ESTABILIZADOR

  25. #25
    Ingreso
    03 Dec, 06
    Ubicación
    Madrid
    Mensajes
    31
    Post Thanks / Like
    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...

  26. #26
    Ingreso
    25 Feb, 04
    Ubicación
    el Cielo
    Mensajes
    1,625
    Post Thanks / Like
    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"

  27. #27
    Ingreso
    14 Apr, 05
    Ubicación
    Zaragoza
    Mensajes
    18,843
    Post Thanks / Like
    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

  28. #28
    Ingreso
    20 Apr, 04
    Ubicación
    Madrid
    Mensajes
    4,998
    Post Thanks / Like
    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
    En la perseverancia está el éxito.
    No te tomes la vida tan en serio,al fin y al cabo no saldrás vivo de ella.
    -------------------------
    mi web.
    -------------------------

  29. #29
    Ingreso
    20 Feb, 04
    Ubicación
    CyL
    Mensajes
    3,501
    Post Thanks / Like
    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&#225;s que abrir y guardar, el hecho de a&#241;adir esas acciones, invalida en cierto sentido la siguiente parte del experimento... estas midiendo otras cosas que intervienen en la degradaci&#243;n

    con respecto a lo de girar, es com&#250;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&#241;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 &#191;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...
    ¿estaba abstracto?

    me parece inaceptable lo de las "nuevas condiciones"

  30. #30
    Ingreso
    15 Feb, 07
    Ubicación
    Moaña
    Mensajes
    840
    Post Thanks / Like
    Cita Iniciado por _GUI_ Ver mensaje
    Al hilo de estos dos hilos:

    http://www.ojodigital.com/foro/showthread.php?t=115331
    http://www.ojodigital.com/foro/showthread.php?t=94838

    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 ??

  31. #31
    Ingreso
    07 Mar, 06
    Ubicación
    Madrid (a ratos Alicante)
    Mensajes
    9,450
    Post Thanks / Like
    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."

    http://www.guillermoluijk.com para suscribirte haz clic aquí
    Último contenido: EL MITO DEL TRÍPODE QUE ASESINÓ A UN ESTABILIZADOR

  32. #32
    Ingreso
    23 Aug, 07
    Ubicación
    Valencia
    Mensajes
    52
    Post Thanks / Like

    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

  33. #33
    Ingreso
    11 May, 07
    Ubicación
    Vilafranca del Penedès
    Mensajes
    644
    Post Thanks / Like
    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.
    Panasonic LX5
    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/

  34. #34
    Ingreso
    23 Aug, 07
    Ubicación
    Valencia
    Mensajes
    52
    Post Thanks / Like
    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

  35. #35
    Ingreso
    07 Mar, 06
    Ubicación
    Madrid (a ratos Alicante)
    Mensajes
    9,450
    Post Thanks / Like
    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."

    http://www.guillermoluijk.com para suscribirte haz clic aquí
    Último contenido: EL MITO DEL TRÍPODE QUE ASESINÓ A UN ESTABILIZADOR


 

Marcadores

Marcadores

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •