Newsgroup: it.arti.fotografia.digitale
Titolo: Un file Raw si può "manipolare"?

Non nel senso che si può lavorare con un software di fotoritocco, ma 
intendo se un file raw può essere alterato facendolo sembrare sempre e 
comunque un semplice file raw non ancora processato.
Se per es. in un concorso fotografico il regolamento volesse prevedere 
che i partecipanti possono benissimo dare file jpeg, come mi pare 
normalmente si faccia, però a condizione che  il vincitore fornisca poi 
anche il file Raw relativo e che il fotritocco dello stesso sia stato 
fatto seguendo delle linee guida diciamo non tali da "stravolgere" 
l'immagine originaria in raw, ciò avrebbe senso?
  Cioè ipotizzaimo che il giudizio finale e definitivo sia condizionato 
anche al tipo di coda di sviluppo applicata al file raw e non solo al 
mero risultato finale nel jpeg sottoposto a giudizio.
Lasciamo perdere ora cosa voglia dire "stravolgere", perchè la mia è 
solo una curiosità fotografica e spero di aver chiarito cosa intendo.
Il punto è: un partecipante in una prima fase dichiarato vincitore 
potrebbe imbrogliare facendo sembrare il file raw relativo al suo jpeg 
come diverso da quello uscito originariamente dalla sua fotocamera?
 
---
Questa e-mail è stata controllata per individuare virus con Avast antivirus.
https://www.avast.com/antivirus
 
 

 comunque un semplice file raw non ancora processato.
 
Non mi risulta che si usino tecniche di signature per i file raw per cui 
dovresti poterci fare quello che ti pare.
Poi bisogna vedere se il risultato è credibile.
 
Davide.

 
 
Ecco spiegato il perché io non posso partecipare ai concorsi. Scattando 
in jpeg non potrei mai fornire il raw :-D
 
 
 
 
-- 
__________________________________________
 
Merely Job: 
http://www.sergiotressino.it/
 
Leisure: 
http://trextrips.altervista.org/
 
__________________________________________


 
+1 :-)

 comunque un semplice file raw non ancora processato. 
 
Teoricamente è possibile, nella pratica è impossibile... Anche perchè il 
formato dati è specifico e non completamente conosciuto.
 

 come diverso da quello uscito originariamente dalla sua fotocamera?
 
Penso che l'unico sistema sarebbe quello di rifotografare (in raw) la 
foto elaborata: facendo un lavoro di fino forse potrebbe passare un 
controllo poco attento.
 
E.D.


Tipo? Ci sono macchine che il raw lo salvano in DNG...
 
Davide.
 

Scusate, ma se i RAW esempio della Nikon xxx lo aprono in 1000 programmi diversi vuol dire che il formato è conosciuto, altrimenti come farebbero Lightroom, RawTherapee ed altri ad aprirlo?
Per quanto riguarda la modifica dei RAW ad esempio Nikon Capture modificava direttamente il RAW, o meglio lasciava inalterati i dati originali ma le modifiche le salvava all'interno del RAW stesso e non in un file separato come fa Photoshop con gli xmp.

 Per quanto riguarda la modifica dei RAW ad esempio Nikon Capture modificava 
direttamente il RAW, o meglio lasciava inalterati i dati originali ma le 
modifiche le salvava all'interno del RAW stesso e non in un file separato 
come fa Photoshop con gli xmp.
 
No, vuol semplicemente dire che la casa ha messo a disposizione funzioni per 
poterli leggere, che non vuol dire leggerli completamente ne poterli scrivere 
:) 
 
 

 
Ma poi quel file raw modificato si poteva leggere solo con Nikon 
Capture? Perchè in tal caso non  credo si potesse considerare ancora un 
vero file raw.



Cioè fotografare il monitor? Uhmmm!!!
Quindi dalle vostre risposte, ricapitolando, mi par di capire che la mia 
curiosità fotografica abbia come risposta che in un ipotetico concorso 
fotografico che volesse imporre un regolamento come quello 
originariamente da ma  sopra descritto un "imbroglione" non ce la 
farebbe a fregare i giudici.
La mia curosità nasceva dal gran parlare che si fa dello stravolgimento 
che spesso molti fotografi fanno di una immagine in post produzione.
Mi son imbattutto, prima di far questa domanda qui sul gruppo, su 
polemiche tipo:
https://www.juzaphoto.com/topic2.php?l=it&t=2281490&show=2
 
 
https://www.fotografidigitali.it/news/reuters-mette-al-bando-i-raw-vogliamo-solo-i-jpeg-usciti-dalla-fotocamera_59648.html
 
 
Tanto per citare alcune fonti che hanno suscitato in me la domanda.


Il 09/01/2019 19:19, emer ha scritto:
 
Ah, poi mi chiedevo anche se esiste la figura del fotoritocchista puro 
(o quasi) che si dedica essenzialmente solo alla post-produzione di foto 
ralizzate da altri e che, pur essendo magari un fotografo o che ha una 
conoscenza buona della fotografia, lo fa solo per hobby, ma non per lavoro.


 conoscenza buona della fotografia, lo fa solo per hobby, ma non per lavoro.
 
Esistono fotoritoccatori, alcuni anche notevoli e poi come sempre tanti 
praticoni improvvisati.
 


Ma nel senso che fanno solo fotoritocco, al 99 per cento, oppure sono 
fotografi professionisti prestati al fotoritocco per non so quale ragione?



Ma nel senso che fanno solo fotoritocco, al 99 per cento, oppure sono
fotografi professionisti prestati al fotoritocco per non so quale ragione?
 
---
 
on fashion e glamour in generale sì, esistono figure di Photoshop specialist 
che fanno solo quello. Ne ho visyto al lavoro - sono bravi ovvio, ma la cosa 
stupefacente è la velocità di esecuzione, più che il risultato raggiunto
 
 

 Cioè fotografare il monitor? Uhmmm!!!
 
Veramente pensavo al foto della stampa, non certo del monitor.
 
E.D.
 

 ha scritto nel messaggio 
news:q15tgg$ldg$1...@gioia.aioe.org...

ti lasciom immaginare i 12 stop di dinamica che fine fanno :D 
 
 

 ti lasciom immaginare i 12 stop di dinamica che fine fanno :D
 
Beh, ma lo scopo non sarebbe quello di avere un raw utilizzabile... 
stavo solo ipotizzando se e come qualcuno potrebbe imbrogliare una 
giuria poco attenta.
 
E.D.

 ha scritto nel messaggio 
news:q16tao$tqh$1...@gioia.aioe.org...

figurati se un giudice, magari internazionale, non è in grado di accorgersi 
che su quel raw non c'è un fico secco... oddio tutto può essere :D 
 
 

 fotografi professionisti prestati al fotoritocco per non so quale ragione?
 
Difficile stabilire una regola, per fare quel lavoro devono avere competenzze 
fotografiche però la maggior parte del tempo è occupata dal fotoritocco
 

 che su quel raw non c'è un fico secco... oddio tutto può essere :D
 
Non serve un giudice internazionale, me ne accorgerei anch'io.
 
Ma - ripeto - qui si cercava un modo per creare un raw da allegare a una 
foto spedita a un concorso, perché così richiesto dal regolamento.
Se il raw non ce l'hai (perché magari quello scatto l'hai fatto in jpg) 
l'unica soluzione che riesco a intravvedere è quella di fare una bella 
stampa, rifotografarla come si deve in raw mode e sperare che il 
controllo si limiti a una fugace apertura del raw per vedere se 
corrisponde all'immagine inviata.
 
E.D.

 Per quanto riguarda la modifica dei RAW ad esempio Nikon Capture modificava 
direttamente il RAW, o meglio lasciava inalterati i dati originali ma le 
modifiche le salvava all'interno del RAW stesso e non in un file separato 
come fa Photoshop con gli xmp.
 
Riflettendoci su, penso che uno degli scogli più grandi sarebbe invertire il 
processo di demosaicizzazione, cosa che penso non sia possibile, perché è 
funzione di fattori differenti (bilanciamento del bianco, rumore, filtri 
ecc.) e non c'è una relazione diretta "a ritroso" tra un pixel e i dati che 
l'han generato. E' come volere un acquario partendo da una zuppa di pesce.
 

 E' come volere un acquario partendo da una zuppa di pesce.
 
Prendi pesci dello stesso tipo e li metti nell'acquario.
 
ciao,
Mauro

 Prendi pesci dello stesso tipo e li metti nell'acquario.
 
Se muore il cane e ne prendi uno uguale è difficile che tuo figlio ci caschi :D
 

 Se muore il cane e ne prendi uno uguale è difficile che tuo figlio ci caschi :D
 
Il figlio conosceva il cane, chi mangia la zuppa o vede il jpeg non
conosce gli originali, quindi il finto originale lo può confrontare solo
con il risultato finale e non con il vero originale.
 
ciao,
Mauro

 con il risultato finale e non con il vero originale.
 
Era il concetto il punto :D
 

 Era il concetto il punto :D
 
Il punto è che chi organizza un concorso e si trova un file jpeg e un
raw forniti dall'autore (senza aver mai visto direttamente il file
uscito dalla macchina) si trova nella situazione di chi vede un pesce
nell'acquario e una zuppa di pesce.  Come fa a stabilire se il pesce è
lo stesso o no?  (Se vede il pesce nuotare nell'acquario dopo che la
zuppa è stata cucinata qualche sospetto gli potrebbe venire, ma
supponiamo che i tempi siano compatibili.)
 
ciao,
Mauro

 supponiamo che i tempi siano compatibili.)
 
Non basta solo tornare indietro, ma bisogna ricreare tutte le condizioni per 
cui il raw riprocessato riporti a un risultato prossimo a quello del jpg. 
Quindi l'informazione da ricreare non è solo quella dei fotositi quantizzati, 
ma dell'analisi spettrale, dei filtri, dei colori, ecc. in modo che possano 
essere riapplicati al fake. 
 

 essere riapplicati al fake.
 
Ti farei notare che non serve nulla di tutto ciò: parti dall'immagine 
finale, la trasformi in raw con dei metodi banali (simulando un semplice 
bayer) E POI dal raw riproduci una nuova versione dell'immagine finale. 
Che portà essere minimamente diversa da quella iniziale (poco male, la 
ritoccherai di quel minimo che serve) ma rispetta le caratteristiche del 
raw da cui è stata costruita.
 
Davide.
 

 bayer) E POI dal raw riproduci una nuova versione dell'immagine finale. 
 
Non esiste il "semplice" bayer, l'ho appena scritto... 
 
[...]
 
 


Fidati, stai parlando con uno che ne capisce più di te.
Leggi bene quello che ho scritto e cerca di capirlo.
Il punto è che, come giustamente dici tu, la trasformazione non è 
facilmente invertibile. Quindi la soluzione è non usare l'inversione per 
creare l'immagine finale. Pensaci.
 
Davide.

   al concorso un jpeg converito da quel raw.
 
Ma no. Quello di rifotografare è un altro, ti sei incartato nel thread.
 
Sto dicendo:
1. prendi l'immagine finale che vuoi ottenere, chiamiamola A;
2. crei un raw credibile per A utilizzando algoritmi elementari (inverti 
le curve, inverti la demosaicizzazione con una semplice simulazione di 
filtro bayer, ecc) ottenendo R (se sei pure bravino la perturbi per 
ottenere un noise pattern credibile, ma non è questo il punto);
3. "sviluppi" R ottenendo A', con un po' di tuning otterrai un'immagine 
visualmente sovrapponibile ad A ma non identica.
4. invii A' e R al concorso.
 
Ora quelli del concorso si trovano in mano R (che salvo analisi 
sofisticatissime che di certo non fanno) è credibile e A' che è ottenuto 
con il LR di turno con dei parametri che puoi mettere in un sidecar xpm 
così possono vedere da soli che il risultato che si ottiene è 
esattamente quello. Capisc?
 
Davide.

 creare l'immagine finale. Pensaci.
 
Ci ho pensato ancor prima e mi pare di essere più avanti di te col 
ragionamento. 
Non basta creare degli array di luminanza e crominanza (quello si che sarebbe 
semplice), ma bisogna crearli in modo che riprocessati riportino a un risultato 
quanto più vicino all'immagine che si vuole simulare. Vuol dire ricostruire a 
ritroso tutti gli step del processo, che sono complessi e neppure completamente 
documentati. Questo perchè il raw che falsifichi non verrà usato fine così 
com'è, ma dovrà essere riprocessato per compararlo e se l'origine è sbagliata 
lo sarà anche il risultato. 
 
 
 
 
 
 
 
 

 ottenere un noise pattern credibile, ma non è questo il punto);
[...]
 
Non può funzionare così. La demosaicizzazione non è una semplice conversione da 
luminanza/crominanza a pixel, per cui non è reversibile. 
Un pixel viene generato in funzione di svariati calcoli complessi(qui una lista 
dei diversi approcci negli anni 
http://www.danielemenon.netsons.org/top/demosaicking-list.php
) che ricreare 
l'origine (anche solo verosimile) dovrebbe invertire. Altrimenti il raw falso 
riprocessato per ottenere il jpg non potrebbe mai generare un'immagine simile a 
quella che si vuole. 
 
 
 

   di quel formato/modello lo sgamano in 2 secondi..
 
Ti sgamano chi?
Stiamo cercando di risolvere problemi diversi.
Enunciato generale del problema: mandare una foto taroccata ad un 
concorso e non farsi sgamare.
Ora bisogna capire cosa fanno per sgamarti.
Ipotesi 1: sviluppano il raw a caso con un programma qualunque e vedono 
a occhio se ci differenze rilevanti (a parte esposizione, contrasto, 
ecc...).
Ipotesi 2: si fanno dare un xmp e verificano che dal raw si produca 
esattamente la stessa immagine inviata.
Ipotesi 3: come la 2 + fanno un'analisi accurata del raw per verificare 
che non sia taroccato.
Qualcuno sa come funzionano veramente i concorsi?
Tu assumi l'ipotesi 3. Lo sai per sicuro o è una tua idea?
 
Davide.

 ottenere un noise pattern credibile, ma non è questo il punto);
 
aggiungo:
0. prendi il raw originale da cui e' stata estrapolata A, chiamiamolo RA
2b. copi bit per bit l'header di RA in R, cosi' copi anche i campi non documentati del raw, e modifichi eventuali campi specifici ad R per eliminare le incoerenze tra R ed A.

 2b. copi bit per bit l'header di RA in R, cosi' copi anche i campi non 
documentati del raw, e modifichi eventuali campi specifici ad R per eliminare 
le incoerenze tra R ed A.
 
E non funziona. Perchè quello che tu vai a inserire negli array di luminanza e 
crominanza sono dati ottenuti da pixel già processati. Anche se copi i dati di 
contorno (che non sono noti al 100%, quindi sarebbe già difficile così), avrai 
un raw che dato in pasto a un convertitore non ti riporterà all'immagine che 
vuoi. 
 


Quello che dici è vero in parte. L'immagine restituita non sarà in 
effetti identica a quella di partenza. Ma le differenze saranno talmente 
minuscole da essere trascurabili e, nella maggior parte dei casi, visto 
che comunque l'immagine poi va processata, con un po' di "massaggio" in 
più in post le pur minuscole differenze verranno facilmente annullate 
dal punto di vista della percezione dell'osservatore. Dal punto di vista 
"numerico" le differenze ci saranno comunque, ma è importante questo?
 
Davide.
 


probabilmente non mi sono spiegato bene, rendo un po' piu' esplicito quello che ho scritto sopra:
(A) "copi bit per bit l'header" e  (B) "modifichi eventuali campi specifici".
Esegui prima (A) e poi (B).
la parte (A) l'hai afferrata: copi bit per bit l'header
la parte (B) consiste nel modificare eventuali campi specifici tra cui magari anche luminanza e crominanza che citi tu, dopo aver copiato tutti gli altri campi. Non ho specificato direttamente questi due campi, perche' possono variare da formato a formato.
Piu' chiaro ora?
Praticamente, anziché creare un file raw da zero, prendi un file raw della dimensione del file finale, con tutti i campi gia' inseriti per l'immagine di partenza. Ovviamente, poi cambi i campi specifici all'immagine finale (luminaria, crominanza, o altro, specifici all'immagine), non lasci i campi dell'immagine di partenza!!! Ovviamente!!!
 

 "numerico" le differenze ci saranno comunque, ma è importante questo?
 
In realta', si potrebbero persino annullare le differenze dal punto di vista puramente numerico ;-)
Il trucchetto sta nel fare il FFT dell'immagine di partenze e dell'immagine di arrivo (demosaicizzate), copiare le ampiezze dell'immagine di partenza nell'immagine di arrivo (lasciando inalterata la fase), e calcolare l'IFFT. Mosaicizzare l'immagine finale, e voila', che non hai neanche bisogno di cambiare l'header ;-) :-)

 Praticamente, anziché creare un file raw da zero, prendi un file raw della dimensione del file finale, con tutti i campi gia' inseriti per l'immagine di partenza. Ovviamente, poi cambi i campi specifici all'immagine finale (luminaria, crominanza, o altro, specifici all'immagine), non lasci i campi dell'immagine di partenza!!! Ovviamente!!!
 
Ho capito, ma non funziona :D è come strappare delle pagine da un libro e sostituirle con fotocopie senza sapere neanche che numero erano e sperare che nessuno se n'accorga. 
 
Copiare bit a bit gli header non puoi, primo perchè non li conosci completamente e non sai neppure dove iniziano e dove finiscono (almeno per le parti segrete e/o crittate), secondo perché qualsiasi indirizzo interno/riferimento sarebbe sballato. 
 
La funzione di demosaicizzazione non è lineare, quindi non è banalmente invertibile. Ci vorrebbe una fase di reverse engineering per capire effettivamente cosa viene fatto (può richiedere un'enormità di tempo) e poi capire se e cosa è reversibile, probabilmente niente visto il numero di incognite della funzione. 
 
Se poi stabiliamo che il giudice è abelinato, allora la cosa più semplice è cambiare l'estensione del file .jpg in .nef e sperare che il sw non evidenzi la cosa :D

 La funzione di demosaicizzazione non è lineare, quindi non è banalmente invertibile. Ci vorrebbe una fase di reverse engineering per capire effettivamente cosa viene fatto (può richiedere un'enormità di tempo) e poi capire se e cosa è reversibile, probabilmente niente visto il numero di incognite della funzione.
 
Sì, ma siamo d'accordo che non ti serve "ricreare" un raw finto che 
corrisponda all'immagine finale ma un raw che sviluppato dia un 
risultato sufficientemente simile perché quello che avrà per le mani il 
giudice sarà una immagine ricavata da questo raw farlocco?
 
Per quello che riguarda il formato non conosciuto credo che dipenda dal 
formato di cui parliamo, nef piuttosto che cr2 sono abbastanza 
conosciuti, non so se in ogni dettaglio. Non so nemmeno se includano 
campi di fingerprinting (un checksum crittato con una chiave privata 
immersa nel firmware o cose simili). Considera però che ci sono macchine 
che producono direttamente dei dng che sono pienamente conosciuti.
 
Davide.

> banalmente invertibile. Ci vorrebbe una fase di reverse engineering 
 
Ma non scherziamo ... tutti i programmi di sviluppo raw si basano sulla 
conoscenza esatta del formato del file raw.
Gli algoritmi di sviluppo del raw sono fatti dagli stessi programmatori 
i qulai sanno esattamente come vengono elaborati i dati.
Faccio presente che i programmi di elaborazione dei raw non sono forniti 
solo dai costruttori di macchine fotografiche ma sono anche prodotti da 
terze parti per non parlare dei prodotti Open Source.
In breve non serve nessun reverse engineering.


Ma cosa c'entra col fatto che la funzione non è lineare?! L'algoritmo non prende 4 fotositi da una parte e crea un pixel dall'altra, fa calcoli, applica filtri... Hai presente quanti metodi esistono per fare il demosaicing? Ad es. 
https://rawpedia.rawtherapee.com/Demosaicing
 
 

 conoscenza esatta del formato del file raw. [...]
 
Non è vero che il formato è completamente conosciuto, è conosciuto quel tanto che basta per tradurlo, ma ci sono dati specifici che non sono pubblicati e sono conosciuti solo dalla casa madre. Faccio notare che leggere un raw e (ri)crearlo sono due cose diverse. 

 
https://rawpedia.rawtherapee.com/Demosaicing
 
 
Possono essercene cento diversi anche mille ... non cambia nulla.
Ne scegli uno a caso, con dei parametri a caso e fai il processo inverso.
Forse non è chiaro che si vuole un RAW verosimile e non il RAW ORIGINALE.
 

 Forse non è chiaro che si vuole un RAW verosimile e non il RAW ORIGINALE.
 
Tagliamo la testa al toro, ti do un'immagine sviluppata e ne riparliamo quando l'avrai fatta tornare un NEF :)


Sul NEF no ho certezze, ma un DNG sicuro...
 
Davide.
 

 Sul NEF no ho certezze, ma un DNG sicuro...
 
Il dng è un'altra cosa, è public domain


Appunto. E come scrivevo sopra ci sono macchine che come formato raw 
usano proprio quello.
 
Davide.
 

 niente visto il numero di incognite della funzione. 
 
basta normalizzare la media e la deviazione standard di ogni canale per avere un'approssimazione che ad occhio nudo e' difficilmente riconoscibile. Se poi vuoi un'equivalenza numerica, normalizzi le ampiezze del segnale e non se ne accorge neanche il produttore della macchina fotografica :-)
 
Che poi uno si voglia prendere la briga di implementare un sistema che modifichi il raw per uniformarlo automaticamente all'immagine sviluppata e' un altro discorso. Se mi paghi abbastanza lo faccio volentieri io ;-) 

 Che poi uno si voglia prendere la briga di implementare un sistema che modifichi il raw per uniformarlo automaticamente all'immagine sviluppata e' un altro discorso. Se mi paghi abbastanza lo faccio volentieri io ;-)
 
Col tempo e soldi costruisco una navicella spaziale e vado sulla luna :) Se mi paghi abbastanza lo faccio ;-)
 

 usano proprio quello.
 
Era il caso della domanda? mi pare di no...


Boh, e quale sarebbe la domanda? "Si può manipolare un raw"? Dipende da 
dal formato del raw, se il raw usa dng molto probabilmente sì, se usa 
altri formati forse sì o forse no.
 
Davide.

 altri formati forse sì o forse no.
 
Ok, in questo senso ci sta :)

 Se mi paghi abbastanza lo faccio ;-)
 
Se hai esperienza nel costruire navicelle spaziali e andare sulla luna ci credo..
Io in passato ne ho scritto diversi di  programmi per leggere immagini raw da varie attrezzature scientifiche/cliniche proprietarie, e il problema di ricalibrare i colori di un'immagine, o aggiungere un po' di rumore, non mi sembra per niente una cosa da rocket science. E con gli header malconci ho sempre fatto come scritto sopra: copiato bit per bit e poi modificato alcuni campi specifici. Con le macchinette fotografiche non credo sia granché differente, e i sorgenti di dcraw lo confermano. Non mi sembra neanche un problema cosi' interessante per cui ci perderei altro tempo, anche solo per discuterne ;-)
 
 
 

 Non mi sembra neanche un problema cosi' interessante per cui ci perderei altro tempo, anche solo per discuterne ;-)
 
Su questo sono d'accordo, anche perché potremmo discuterne all'infinito ;-)