Newsgroup: it.lavoro.informatica
Titolo: Esiste un software di analisi video che fa questo?

Che voi sappiate esiste un software che, analizzando un determinato 
formato video, usando una qualche funzione di correlazione mi riesca ad 
individuare eventuali fotogrammi estranei presenti nei video stessi?
Se no, ritenete sia difficile da fare?
Mi hanno messo una certa pulce nell'orecchio e vorrei sapere se ï¿œ 
possibile avere una risposta.

 individuare eventuali fotogrammi estranei presenti nei video stessi?
Mi viene in mente la puntata del Tenente Colombo che parla dei messaggi 
subliminali inseriti nei filmati pubblicitari... se ti riferisci ad una 
cosa di questo tipo, non penso che esista, ma credo che algoritmicamente 
sia simile al lavoro del codec DivX (e probabilmente anche altri, non 
sono aggiornato sull'argomento), che analizzano le differenze fra un 
fotogramma e il successivo. Perï¿œ se consideriamo delle scene movimentate 
credo diventi molto (e intrinsecamente!) difficile valutare fotogrammi 
estranei.

 possibile avere una risposta.
Se intendi "estranei" perch� si vede un vaso al posto di un tubetto di
dentifricio... non credo (almeno oggi).
Ma, come dice giustamente Mark, un cambiamento corposo tra frame "pu�"
indicare un cambio di contesto.
Forse � possibile ordinare i frame in base al peso del delta calcolato dalla
compressione...
Ehm... ma immagino tu volessi solo il nome di un programma.
:-)

SR2 ha scritto:

se esiste si, altrimenti non mi spaventa parlare di fft e quanto'altro 
possa servire per analizzare il problema nell'opportuno contesto tecnico.

 wrote in message 
news:4b09051b$0$10450$4faf...@reader2.news.tin.it...

Occorre prima mettersi d'accordo sul concetto  di fotogrammi estranei.
Ad esempio un flash fotografico (o il bagliore di una esplosione) come lo 
consideri?
A livello di similitudine del fotogramma  precedente sarebbe una cosa 
completamente diversa, dato che probabilmente nel frame t , per filmanti a 
velocitï¿œ normale (30 fps) ad esempio, non ci sarebbe e nel frame t+1 si. Se 
fosse tanto potente potrebbe saturare la capacitï¿œ di ripresa del dispositivo 
facendo diventare completamente bianco il frame stesso e molti di quelli 
successivi.
 

MarkM82 ha scritto:

Penso che invece sia molto facile (per chi ï¿œ del mestiere). Trovare 2 
immagini completamente incorrelate tra loro a distanza di qualche 
millisecondo dovrebbe essere una cosa di poco conto.

 lo consideri?
Se in pochi millisecondi c'ï¿œ uno 'stacco' per ben 2 volte, l'immagine ï¿œ 
sospetta. Forse il flash potrebbe ricadere in questa ipotesi (non so 
quanto dura un flash) ma oltre ad esso non vedo altri casi che 
potrebbero confondere.

 possibile avere una risposta.
In linea di principio si. Esistono algoritmi fatti apposta per trovare
le similitudini tra 2 immagini (es. SIFT, SURF).
Impostando una certa soglia  di decisione è possibile dire se
un'immagine è sufficientemente simile all'altra. Chiaro però che in un
filmato potrebbero esserci punti di grossa differenza del tutto
leciti: es. un cambio di scena in un film, una serie di titoli di
testa o coda, ecc.

 successivi.
A 30 fps è difficile che 2 fotogrammi immediatamente contigui abbiano
differenze molto marcate.
Almeno se parliamo della ripresa di una scena naturale,
artificialmente si può fare qualunque cosa.

 testa o coda, ecc.
come dicevo � il cambio di scena fatto 2 volte in pochi millisecondi ad 
essere sospetto ed � quello che vorrei trovare.


E se chi ti tarocca il video si diverte e invece di passare subito al 
fotogramma estaneo te ne mette in mezzo 4 o 5 a mo di morphing? Stessa cosa 
per ritornare al video originale.

 essere sospetto ed è quello che vorrei trovare.
Se non ti spaventa un pò di programmazione C, esiste una libreria
opensource, OpenCV, per il trattamento delle immagini.
http://www.intel.com/technology/computing/opencv/
Scarica la versione 2.0 Contiene un programma di esempio
dell'algoritmo SURF, che confronta tra loro 2 immagini sulla base di
punti notevoli.
Devi un pò adattare l'esempio alle tue necessità, facendogli leggere
un flusso video, AVI, ecc. La libreria contiene anche funzioni per
leggere i flussi video.


Posso scriverti in privato? Puoi giï¿œ rispondermi in privato, l'indirizzo
ï¿œ valido.

AleTV ha scritto:

Si vede uguale, che morphing vuoi fare in pochi millisecondi

 
Io avevo in mente qualcosa tipo studiare lo spettro di frequenza di 
qualche trasformata discreta e sperare che da qualche sua caratteristica 
  si possa individuare la presenza di immagini estranee.

Nick ha scritto:

scrivi pure

   si possa individuare la presenza di immagini estranee.
una volta ottenuta la funzione f_{n}=S(x_{n}, x_{n+1}), dove S e' una
similarity measure (nel tuo caso ti conviene usare normalized mutual
information, magari anche su scale di grigio per velocizzare),
costruisciti un'altra funzione g_{n}=corr(f_{n},f_{n+1}), dove "corr"
calcola un qualche coefficiente di correlazione. Analizza lo spettro
di frequenza di g, e troverai quel che cerchi.
In realta' non ci sarebbe neanche bisogno d'andare a calcolare DFT e
IDFT: ti basta uno zero crossing del first derivative di g (dopo aver
convoluto g con un filtro isotropico gaussiano).
(interessante notare come il problema potrebbe essere risolto in real
time (during acquisition) implementando S e corr su GPU)

 convoluto g con un filtro isotropico gaussiano).
ovvio che la convolution e' bene farla se i fotogrammi estranei sono
piu' di uno in sequenza.

 essere sospetto ed è quello che vorrei trovare.
Mi sa che ti sfugge il fatto che in un normale video col cappero che
cambi scena due volte in "pochi millisecondi". Il framerate è fisso,
dell'ordine dei 25 fps quando va bene - il che vuol dire un frame ogni
25/mo di secondo, pari a 40 millisecondi. Quindi per individuare una
sequenza con un frame "subliminale" hai bisogno di almeno due
transizioni pari a 80 millisecondi, circa 1/10 di secondo.
Per tornare al merito, credo che prima di tutto sei tu che devi
decidere su cos'e' che chiami "estraneo" e come classificarlo, poi si
passa a trovare come riconoscerlo...
bye!

 individuare eventuali fotogrammi estranei presenti nei video stessi?
Tutti i software migliori di video editing permettono di splittare un unico 
file video in "clip" basandosi sul cambio scena, cioè quando un frame è 
nettamente differente dal precedente, settata una certa sensibilità.
Esegui questo giro sul tuo video, e trova le clip lunghe un frame. Sono i frame 
estranei.
-- 
__________________________________
Luc (36, CO)
25 years uninterrupted programming
__________________________________

 possibile avere una risposta.
eh, ma poi ci racconti? :-)
d.
-- 
________________________________
Dan (33, MI)
33 years uninterrupted breathing
________________________________

 millisecondo dovrebbe essere una cosa di poco conto.
Tutte le volte che il regista cambia inquadratura.

 Tutte le volte che il regista cambia inquadratura.
In quel caso c'� una nuova sequenza correlata allo stacco. Lui cerca
dei fotogrammi completamente avulsi da tutto quello che c'� sia
prima che dopo.

 
Non mi occupo di messaggi subliminali, comunque immagino che debbano 
durare il tempo necessario perch� siano riconoscibili dal nostro sistema 
percettivo. Se devo fare una scommessa punterei su un tempo inferiore a 
un secondo, ma non di un altro ordine di grandezza. Inoltre immagino che 
sia necessario che i fotogrammi da trovare non suscitino una reazione 
"conscia" da parte dello spettatore. Per questo dovrebbero 
necessariamente avere una certa omogeneit� fotografica con la sequenza 
nella quale si inseriscono.
In conclusione, se dovessi investire dei soldi su un software che nasce 
con questo scopo, avrei bisogno di essere fortemente rassicurato sulla 
effettiva fattibilit�, perch� sono decisamente pessimista. A volerla 
dire tutta, sono anche pessimista sull'efficacia di inserire fotogrammi 
per veicolare messaggi subliminali, quando esiste un'ampia e 
sperimentata raccolta di tecniche di PNL.

 sperimentata raccolta di tecniche di PNL.
Che non funzionano, esattamente come non funzionano i messaggi subliminali :)

 possa servire per analizzare il problema nell'opportuno contesto tecnico.
Gi�...
Se non fossi io quello arrugginito in materia... :-\