ITTO20120986A1 - Procedimento per l'estrazione di informazioni distintive da un flusso di frame video digitali, sistema e prodotto informatico relativi - Google Patents

Procedimento per l'estrazione di informazioni distintive da un flusso di frame video digitali, sistema e prodotto informatico relativi Download PDF

Info

Publication number
ITTO20120986A1
ITTO20120986A1 IT000986A ITTO20120986A ITTO20120986A1 IT TO20120986 A1 ITTO20120986 A1 IT TO20120986A1 IT 000986 A IT000986 A IT 000986A IT TO20120986 A ITTO20120986 A IT TO20120986A IT TO20120986 A1 ITTO20120986 A1 IT TO20120986A1
Authority
IT
Italy
Prior art keywords
target
pairs
descriptors
interest
points
Prior art date
Application number
IT000986A
Other languages
English (en)
Inventor
Danilo Pietro Pau
Original Assignee
St Microelectronics Srl
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by St Microelectronics Srl filed Critical St Microelectronics Srl
Priority to IT000986A priority Critical patent/ITTO20120986A1/it
Priority to US14/080,080 priority patent/US9571398B2/en
Publication of ITTO20120986A1 publication Critical patent/ITTO20120986A1/it
Priority to US15/395,405 priority patent/US9986240B2/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/783Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/7847Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using low-level visual features of the video content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • G06V10/462Salient features, e.g. scale invariant feature transforms [SIFT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/164Feedback from the receiver or from the transmission channel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters

Description

“Procedimento per l’estrazione di informazioni distintive da un flusso di frame video digitali, sistema e prodotto informatico relativiâ€
TESTO DELLA DESCRIZIONE
Campo tecnico
La presente descrizione si riferisce alle tecniche per estrarre informazioni distintive (feature) da un flusso di immagini (frame) video digitali.
Varie forme di attuazione possano applicarsi al trattamento di immagini, ad esempio nell'ambito di processi di matching (ricerca degli abbinamenti o corrispondenza) e/o di retrieval (ricerca e recupero) di immagini.
Sfondo tecnologico
Documenti quali il documento ISO/IEC JTC1/SC29/WG11/W12929, July 2012, Stockholm, SE, Test Model 3: Compact Descriptors For Visual Search descrivono tecniche di elaborazione (ad esempio con architettura pipeline) basate sull'impiego di descrittori compatti utilizzabili per funzioni di matching e retrieval di immagini.
Il documento in questione non prende peraltro in considerazione il fatto che l'uso di tali descrittori, ad esempio per operazioni di abbinamento o recupero da parte di un server, può essere soggetto a vincoli in termini di larghezza di banda o bitrate disponibile. Questa situazione può derivare, ad esempio, da limitazioni della larghezza banda disponibile su un collegamento, della variabilità della velocità di trasmissione dati, da fenomeni di congestione di rete o da considerazioni di varia natura legate alle prestazioni computazionali del server.
Scopo e sintesi
Varie forme di attuazione si prefiggono lo scopo di superare questa carenza.
Varie forme di attuazione permettono di conseguire tale scopo grazie a un procedimento avente le caratteristiche richiamate nelle rivendicazioni che seguono.
Varie forme di attuazione possono riferirsi ad un corrispondente sistema nonché ad un prodotto informatico caricabile nella memoria di almeno un elaboratore e comprendente parti di codice software suscettibili di realizzare le fasi del procedimento quando il prodotto à ̈ eseguito su almeno un elaboratore. Così come qui utilizzato, il riferimento ad un tale prodotto informatico à ̈ inteso essere equivalente al riferimento ad un mezzo leggibile da elaboratore contenente istruzioni per il controllo del sistema di elaborazione per coordinare l’attuazione del procedimento secondo l'invenzione. Il riferimento ad "almeno ad un elaboratore" à ̈ evidentemente inteso a mettere in luce la possibilità che la presente invenzione sia attuata in forma modulare e/o distribuita.
Le rivendicazioni formano parte integrante dell'insegnamento tecnico qui somministrato in relazione all’invenzione.
Varie forme di attuazione permettono di fissare il numero di informazioni distintive o feature selezionato per ciascuna frame in funzione di un valore obiettivo (target) di bitrate con la conseguente possibilità di sfruttare in modo ottimale e dinamico le risorse disponibili in termini di bitrate per l’utilizzazione dei relativi descrittori.
Varie forme di attuazione permettono di codificare e inviare verso un server descrittori compatti così da poter migliorare le prestazioni in termini di precisione e di occupazione di canale (e di risorse, in generale) ad esempio da parte di un bitstream di richieste (o query).
Breve descrizione delle figure
Varie forme di attuazione saranno ora descritte, a puro titolo di esempio non limitativo, con riferimento alle figure annesse, in cui:
- le figure 1 e 2 sono schemi a blocchi funzionali che illustrano possibili funzioni di trattamento di immagini basate sulla estrazione di informazioni distintive (feature),
- la figura 3 à ̈ uno schema a blocchi funzionale che illustra possibili modalità di estrazione di feature,
- la figura 4 Ã ̈ uno schema a blocchi genericamente illustrativo di un possibile contesto di applicazione di forme di attuazione,
- la figura 5 Ã ̈ uno schema a blocchi rappresentativo della generale architettura di esempi di attuazione, e
- la figura 6 Ã ̈ uno schema a blocchi che illustra esempi di attuazione con diretto riferimento allo schema della figura 3.
Descrizione particolareggiata
Nella seguente descrizione sono illustrati vari dettagli specifici finalizzati ad un’approfondita comprensione di vari esempi di forme di attuazione. Le forme di attuazione possono essere realizzate senza uno o più dei dettagli specifici, o con altri metodi componenti materiali, etc. In altri casi, strutture, materiali o operazioni noti non sono mostrati o descritti in dettaglio per evitare di rendere oscuri i vari aspetti delle forme di attuazione.
Il riferimento ad “una forma di attuazione†nell’ambito di questa descrizione sta ad indicare che una particolare configurazione, struttura o caratteristica descritta in relazione alla forma di attuazione à ̈ compresa in almeno una forma di attuazione. Quindi, frasi come “in una forma di attuazione†, eventualmente presenti in diversi luoghi di questa descrizione non sono necessariamente riferite alla stessa forma di attuazione. Inoltre, particolari conformazioni, strutture o caratteristiche possono essere combinate in ogni modo adeguato in una o più forme di attuazione.
I riferimenti qui utilizzati sono soltanto per comodità del lettore e non definiscono dunque l’ambito di tutela o la portata delle forme di attuazione.
Le figure 1 a 3 sono desunte dal documento ISO/IEC JTC1/SC29/WG11/W12929, già in precedenza citato, ed in particolare dal capitolo 1. Introduction e dal capitolo 2. Compact descriptor extraction del documento in questione, che, al successivo capitolo 5. Software Architecture and implementation details illustra esempi di implementazione di una architettura per la selezione delle informazioni distintive più significative da comprimere in ciascuna frame video digitale considerata.
In particolare, gli schemi delle figure 1 e 2 illustrano a livello di schema a blocchi esempi di architetture funzionali utilizzabili per svolgere una funzione di calcolo degli abbinamenti o corrispondenza (matching) M o di reperimento o ricerca (search o retrieval) S di frame video, ossia di immagini, digitali.
Nel primo caso (azione di matching M della figura 1) à ̈ possibile verificare in modo automatizzato (ad esempio tramite un computer) se due immagini rappresentano gli stessi oggetti o la stessa scena. Ciò avviene operando su su una immagine di interrogazione (Query Image) QI e su una immagine di riferimento (Reference Image) RI.
A tal fine, entrambe le immagini possono essere sottoposte ad un'operazione di estrazione di descrittori (genericamente indicata con 10) e ad un operazione di confronto condotta in M operando appunto sui descrittori ed informazioni distintive in 10 e diretta a rilevare l'eventuale adattamento o matching. Il risultato dell'elaborazione, indicato con R, indica se l'immagine di interrogazione o Query Image QI rappresenta oppure no gli stessi oggetti o la stessa scena, ossia si adatta o corrisponde a (“matches†) l'immagine di riferimento RI.
La funzione di retrieval cui fa schematicamente riferimento la figura 2 opera fondamentalmente secondo gli stessi criteri con la differenza data dal fatto che, nel caso della figura 2, il confronto in S à ̈ fatto con più immagini di riferimento RIiestratte da una base dati o database DB. In questo modo à ̈ possibile ricercare e reperire, nell'ambito del database DB, una o più immagini che riproducono gli stessi oggetti o la stessa scena dell'immagine di interrogazione QI.
Varie architetture e tecnologie di componenti suscettibili di realizzare le funzioni illustrate con riferimento alle figure 1 e 2 sono definite nel cosiddetto Test Model 3.0 (TM3) for Compact Descriptors for Visual Search (noto anche con l'acronimo di CDVS): il modello TM3 implementa le funzionalità richieste per l'estrazione e il confronto di descrittori compatti limitati ad un insieme di lunghezze di descrittore (Descriptor Length) predeterminate.
Lo schema a blocchi della figura 3 illustra un possibile schema a blocchi di un sistema di elaborazione (ad esempio strutturata come pipeline) per l'estrazione di informazioni distintive o feature da frame video.
In varie forme di attuazione, un descrittore compatto di un’immagine I (che, in termini più generali, può essere vista sotto forma di trame o frame video digitali), può comprendere, oltre ad un certo numero di descrittori locali, anche un singolo descrittore globale suscettibile di rappresentare l'immagine nel suo insieme.
Lo schema della figura 3 illustra un esempio di architettura che permette di produrre un descrittore compatto di un'immagine/frame secondo il modello TM3 attraverso una sequenza di passi di elaborazione.
Nello schema della figura 3, il riferimento 12 illustra una funzione/modulo di identificazione di punti di interesse o punti chiave (interest points o keypoints) in un’immagine basata su una rappresentazione multiscala e suscettibile di essere realizzata, ad esempio, con una tecnica di differenze gaussiane (Differences-of-Gaussians o DoG).
Nello schema esemplificativo della figura 3, la funzione/modulo DoG 12 Ã ̈ seguita da una funzione/modulo 14 in cui i cosiddetti feature point sono descritti, ad esempio, con una trasformata invariante rispetto alla scala (Scale Invariant Feature Transform o SIFT).
Nello schema esemplificativo della figura 3, i risultati dell'azione di trasformata realizzata in 14 vengono alimentati ad una funzione/modulo 16 di selezione dei punti di interesse o keypoint e descrittori locali associati, destinata a svolgere una funzione di selezione delle informazioni distintive o feature.
Ad esempio, in varie forme di attuazione, la funzione/modulo 16 può assegnare un valore positivo a ciascun tratto in funzione delle sue caratteristiche DOG, del relativo vettore SIFT e delle sue coordinate.
Ad esempio, nel caso in cui la n-esima feature di un'immagine sia indicata con sn(con una connotazione che incorpora le caratteristiche DoG, il vettore SIFT e le relative coordinate), à ̈ possibile indicare con r una grandezza indicativa della rilevanza del punto di interesse (key point relevance); in questo modo, ad un determinato tratto o feature à ̈ possibile associare un valore r(sn), ed i suddetti valori di rilevanza possono essere ordinati in una scala decrescente facendo sì che, ad esempio, soltanto le prime L feature n1, …, nLsiano mantenute, così da poter mantenere la lunghezza media della sequenza entro un certo limite di lunghezza.
Il risultato della elaborazione svolta in 16 (ossia la selezione di un numero limitato di punti chiave in grado di massimizzare una misura della qualità attesa in funzione dell'uso previsto - ad esempio per azioni di matching o search, così come esemplificate nelle figure 1 e 2) può essere sottoposto nell’ambito di una funzione/modulo 18 ad una compressione dei descrittori locali, ossia una quantizzazione scalare o vettoriale delle feature selezionate in 16.
Il risultato dell'elaborazione svolta in 18 à ̈ poi trasmesso ad una funzione/modulo 20 di compressione delle coordinate che comprime le coordinate dei punti di interesse selezionati così da generare in uscita i descrittori locali LD.
Il risultato della elaborazione svolta in 16 può poi essere inviato anche ad una funzione/modulo 22 che svolge una funzione di aggregazione delle feature (ad esempio SIFT) così da formare un descrittore globale GD.
Possibili criteri d’implementazione dello schema esemplificato nella figura 3 sono descritti in dettaglio nel documento ISO/IEC JTC1/SC29/WG11/W12929, già più volte citato, anche alla luce dell'articolo di D.G. Lowe: "Distinctive Image Features from Scale-Invariant Keypoints†, International Journal of Computer Vision, 60, 91-110 (2004). Per motivi di brevità, la relativa descrizione di dettaglio non viene quindi ripetuta in questa sede, anche perché di per sé non essenziale ai fini della comprensione delle forme di attuazione.
Lo schema della figura 4 fa riferimento ad una possibile applicazione di elaborazione e trattamento di frame video digitali (ad esempio quali funzioni di matching o di search/retrieval, così come descritte in precedenza) attuata su un flusso di frame video in cui possono essere identificabili una prima frame Fied una seconda frame Fi+1qui considerate per semplicità separate da un intervallo di tempo 1/fps dove fps à ̈ il numero di frame per secondo nel flusso di frame video considerato: si apprezzerà peraltro che, in varie forme di attuazione, le frame Fie Fi+1possono anche non essere l’una consecutiva all'altra nel flusso e cioà ̈ essere separate per multipli di 1/fps.
In varie forme di attuazione, una funzione di matching come qui considerata può trovare applicazione anche in una tecnica di codifica di un flusso di frame video digitali così come descritta in una domanda di brevetto per invenzione industriale depositato in pari data dalla stessa richiedente.
Rifacendosi a quanto detto in precedenza con riferimento alle figure 1 a 3 (ed alla illustrazione di dettaglio fornita nei documenti ISO/IEC JTC1/SC29/WG11/W12929 e Lowe in precedenza citati), l'estrazione dei descrittori attuata nell’architettura descritta a titolo di esempio con riferimento alla figura 3 può essere ricondotta ad una generazione di rispettive sequenze (ad es. le sequenze utilizzate in M e S per confrontate le immagini di “query†QI con le immagini di riferimento RI e RIi) comprendenti un insieme di coppie [KP1i, D1i], [KP2i, D2i,], ……, [Kmi, Dmi] in cui ai punti di interesse KP1i, KP2i,…… KPmisono associati i relativi descrittori D1i, D2i, ……, Dmi.
Una tale sequenza può essere compressa ad un numero limitato di bit limitando il numero delle coppie comprese nella sequenza. Ad esempio, il numero m delle coppie può essere limitato ad un valore di soglia Tiper ciascuna frame, ossia m = 1, …, Tiper la frame Ficon il numero di bit relativi limitato ad un valore num_bitsi, con la soglia Tiche identifica in pratica il numero di coppie punti di interesse/descrittori raggiunto il quale ogni ulteriore coppia, anche se rilevante, non contribuirebbe a generare bit in una sequenza corrispondente o, in alternativa, sarebbe compressa a 0 bit.
Così come illustrato nella figura 5, in varie forme di attuazione, il risultato dell’azione di estrazione, ossia la sequenza di coppie di punti di interesse e relativi descrittori [KP1i, D1i], [KP2i, D2i,], ……, [KPmi, Dmi] può essere inviato dal modulo estrattore 10 verso un server 24 destinato ad utilizzare le suddette sequenze per una funzione di elaborazione.
Come esempio, rifacendosi alle figure 1 e 2, si può pensare a contesti di impiego le sequenze [KP1i, D1i], [KP2i, D2i,], ……, [KPmi, Dmi] estratte dalle immagini di query QI siano inviate verso un server 24 che svolge le funzioni di matching M o retrieval S operando su sequenze omologhe inerenti alle immagini di riferimento RI o Rii, ad esempio residenti presso il server 24 stesso.
La trasmissione delle sequenze di query [KP1i, D1i], [KP2i, D2i,], ……, [KPmi, Dmi] può avvenire su un canale di trasmissione costituito, ad esempio, da un canale reale o virtuale nell'ambito di una rete N, con una banda o bitrate disponibile non costante, ma variabile nel tempo, ad esempio, per fenomeni di congestione della rete N e/o per il variare del rapporto segnale/rumore o segnale/interferenza sul canale di trasmissione (caso tipico delle reti wireless). Di conseguenza, il bitrate di cui il server 24 può disporre per l’elaborazione può variare e risultare limitato in modo diverso nel tempo.
Sempre a titolo di esempio, in aggiunta o in alternativa, possono determinarsi situazioni in cui il bitrate di cui il server 24 può disporre per l’elaborazione può variare per fenomeni legati al server stesso, ad esempio di eccessivo sovraccarico computazionale, perché il server 24 opera in multitasking ed il bitrate allocabile all’elaborazione delle query ricevute può variare nel tempo secondo il carico e la schedulazione dei task.
La figura 5 esemplifica il fatto che, in varie forme di attuazione, il valore corrente di bitrate disponibile al server 24 (indicato con Target_bitrate) Ã ̈ trasmesso dal server 24 verso l'estrattore 10.
Così come schematicamente illustrato nella figura 6 (in cui parti e componenti identici o equivalenti a quelli già descritti con riferimento alla figura 3 sono indicati con gli stessi riferimenti che compaiono nella figura 3), in varie forme di attuazione il valore Target_bitrate può essere utilizzato in una funzione/modulo 26 per calcolare il valore di soglia di selezione Ti utilizzato dall’estrattore 10, ad esempio in 16, per selezionare i punti chiave e limitare il numero m = 1, …, Tidelle coppie [KP1i, D1i], [KP2i, D2i,], ……, [KPmi, Dmi] estratte per la generica frame Ficosì da limitare in modo corrispondente al valore num_bitsiil numero di bit relativi
In varie forme di attuazione, il calcolo può essere quindi svolto in modo adattivo, limitando superiormente il numero di coppie punto di interesse/descrittore generate dall’estrattore 10 in funzione del valore Target_bitrate: questo valore identifica la capacità da parte del server 24 di ricevere ed elaborare tali sequenze. In varie forme di attuazione, la suddetta azione di limitazione permette di evitare di impegnare l’estrattore 10 nella estrazione di coppie punto di interesse/descrittore che al momento il server 24 non potrebbe ricevere o, anche ricevendole, non riuscirebbe ad elaborare.
In varie forme di attuazione, la funzione/modulo 26 può essere configurata per generare il suddetto valore di soglia Ti in funzione del valore di bitrate Target_bitrate indicato come disponibile dal server 24 (valore che si assume essere variabile nel tempo, idealmente da frame a frame, anche se le relative variazioni sono di solito più lente) tenendo in conto anche due altri parametri, ossia: - il parametro fps, ossia il numero di frame per secondo nel flusso di frame in ingresso al blocco 12, e - il numero di bit num_bitsiutilizzato per comprimere le coppie punto di interesse/descrittore, rilevato, ad esempio, da un contatore di bit 28 in grado di “sentire" i descrittori LD e GD.
In varie forme di attuazione, il modulo 26 può operare secondo i seguenti criteri.
Partendo dal numero bit num_bitsiutilizzato per “codificare†(ossia per esprimere) le coppie punto di interesse/descrittore per la frame Fià ̈ possibile determinare un numero di bit medio average_bit_couplei: il numero di bit utilizzato per ciascuna coppia può infatti essere diverso da coppia a coppia, ad esempio in funzione delle caratteristiche del singolo descrittore.
Per il suddetto numero medio average_bit_coupleipuò valere la seguente espressione:
average_bit_couplei= num bitsi/Ti.
Partendo dalla grandezza Target_bitrate ricevuta dal server 24 à ̈ altresì possibile calcolare un valore di bit obiettivo (target) per ciascuna frame Target_Fi, esprimibile come:
Target_Fi= Target_bitrate/fps.
È poi possibile calcolare, con riferimento alla generica frame Fi, la differenza:
Î ́i= Target_Fi- num_bitsi
ossia la differenza (con segno) fra il valore di bit obiettivo (target) per la frame i-esima ed il numero effettivo di bit effettivamente utilizzati per “codificare†la frame in questione.
Il valore assoluto della differenza Î ́iindica di quanto l’azione di estrazione svolta dall’estrattore 10 si discosta dalla capacità di ricezione/elaborazione del server 24 ed il segno identifica il verso dello scarto:
- positivo, se il server 24 può ricevere/elaborare più di quanto l’estrattore 10 gli manda;
- negativo, se il server 24 non à ̈ in grado di ricevere/elaborare quanto l’estrattore 10 gli manda.
In funzione della differenza Î ́ià ̈ allora possibile stabilire un valore obiettivo Target_Fi+1definito come:
Target_Fi+1= Target_Fi+ Î ́i
ossia aggiungendo o sottraendo dal processo di codifica così come al momento attuato dall’estrattore 10 un numero di bit pari a Î ́i, ad esempio calcolando un nuovo valore di soglia Ti+1per il numero di coppie punto di interesse/descrittore da utilizzare per la frame successiva Fi+1, ad esempio sulla base della relazione:
Ti+1=target_Fi+1/average_bit_couplei.
In varie forme di attuazione, il parametro average_bit_couple potrebbe essere stimato per la frame i+1 con un primo tentativo di codifica per poi essere applicato in un secondo passo reale di codifica.
Naturalmente, fermo restando il principio dell'invenzione, i particolari di realizzazione e le forme di attuazione potranno variare, anche in modo significativo, rispetto a quanto qui illustrato a puro titolo di esempio non limitativo senza per questo uscire dall'ambito di protezione. Tale ambito di protezione à ̈ definito dalle rivendicazioni annesse.

Claims (6)

  1. RIVENDICAZIONI 1. Procedimento per estrarre informazioni distintive o feature da frame video digitali (Fi, Fi+1) in un flusso, il procedimento comprendendo: - estrarre con un estrattore (10) da dette frame video (Fi, Fi+1) rispettive sequenze di coppie di punti di interesse/descrittori ([KP1i, D1i], [KP2i, D2i], …, [KPmi, Dmi]) limitando (16) ad un valore di soglia (Ti) il numero (m) di coppie estratte per ciascuna frame, - inviare le sequenze di coppie di punti di interesse/descrittori ([KP1i, D1i], [KP2i, D2i], …, [KPmi, Dmi]) estratte con l’estrattore (10) verso un server (24) per l’elaborazione con un bitrate avente un valore che varia nel tempo, - ricevere detto valore di bitrate variabile nel tempo all’estrattore (10) come bitrate obiettivo (Target_bitrate) per l’estrazione, - limitare (16) ad un valore di soglia (Ti) variabile nel tempo in funzione di detto bitrate obiettivo (Target_bitrate) il numero (m) di coppie di punti di interesse/descrittori ([KP1i, D1i], [KP2i, D2i], …, [KPmi, Dmi]) estratte dall’estrattore (10).
  2. 2. Procedimento secondo la rivendicazione 1, in cui detta elaborazione al server (24) comprende un'elaborazione compresa fra un abbinamento o corrispondenza (matching - M) ed un reperimento o ricerca (search o retrieval - S).
  3. 3. Procedimento secondo la rivendicazione 1 o la rivendicazione 2, comprendente: - determinare, in funzione di detto bitrate obiettivo (Target_bitrate), un numero di bit obiettivo (Target_Fi) disponibile per le coppie di punti di interesse/descrittori ([KP1i, D1i], [KP2i, D2i], …, [KPmi, Dmi]) estratte per una certa frame (Fi), - determinare, per detta frame (Fi), una differenza con segno (Î ́i) fra il suddetto numero di bit obiettivo (Target_Fi) disponibile per le coppie di punti di interesse/descrittori ([KP1i, D1i], [KP2i, D2i], …, [KPmi, Dmi]) estratte per una certa frame (Fi) ed il numero di bit (num_bitsi) compreso nelle coppie di punti di interesse/descrittori ([KP1i, D1i], [KP2i, D2i], …, [KPmi, Dmi]) estratte per la stessa frame (Fi), e - determinare un numero di bit obiettivo (Target_Fi+1) disponibile per le coppie di punti di interesse/descrittori da estrarre per una frame (Fi+1) successiva nel flusso aggiungendo detta differenza con segno (Î ́i) al suddetto numero di bit obiettivo (Target_Fi) disponibile per le coppie di punti di interesse/descrittori ([KP1i, D1i], [KP2i, D2i], …, [KPmi, Dmi]) estratte per detta certa frame (Fi).
  4. 4. Procedimento secondo la rivendicazione 3, comprendente: - determinare un numero medio di bit (average_bit_couplei) compreso nelle coppie di punti di interesse/descrittori ([KP1i, D1i], [KP2i, D2i], …, [KPmi, Dmi]) estratte per detta certa frame (Fi), e - determinare detto valore di soglia (Ti+1) per le coppie di punti di interesse/descrittori da estrarre per una frame (Fi+1) successiva nel flusso quale rapporto fra il numero di bit obiettivo (Target_Fi+1) disponibile per le coppie di punti di interesse/descrittori da estrarre per detta frame (Fi+1) successiva nel flusso e detto numero medio di bit (average_bit_couplei) compreso nelle coppie di punti di interesse/descrittori ([KP1i, D1i], [KP2i, D2i], …, [KPmi, Dmi]) estratte per detta certa frame (Fi).
  5. 5. Sistema per estrarre informazioni distintive o feature da un flusso di video frame digitali, il sistema comprendendo un estrattore (10) configurato per operare con il procedimento secondo una qualsiasi delle rivendicazioni 1 a 4.
  6. 6. Prodotto informatico caricabile nella memoria di almeno un elaboratore e comprendente porzioni di codice software per attuare le fasi del procedimento secondo una qualsiasi delle rivendicazioni 1 a 4.
IT000986A 2012-11-14 2012-11-14 Procedimento per l'estrazione di informazioni distintive da un flusso di frame video digitali, sistema e prodotto informatico relativi ITTO20120986A1 (it)

Priority Applications (3)

Application Number Priority Date Filing Date Title
IT000986A ITTO20120986A1 (it) 2012-11-14 2012-11-14 Procedimento per l'estrazione di informazioni distintive da un flusso di frame video digitali, sistema e prodotto informatico relativi
US14/080,080 US9571398B2 (en) 2012-11-14 2013-11-14 Method for extracting features from a flow of digital video frames, and corresponding system and computer program product
US15/395,405 US9986240B2 (en) 2012-11-14 2016-12-30 Method for extracting features from a flow of digital video frames, and corresponding system and computer program product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
IT000986A ITTO20120986A1 (it) 2012-11-14 2012-11-14 Procedimento per l'estrazione di informazioni distintive da un flusso di frame video digitali, sistema e prodotto informatico relativi

Publications (1)

Publication Number Publication Date
ITTO20120986A1 true ITTO20120986A1 (it) 2014-05-15

Family

ID=47633393

Family Applications (1)

Application Number Title Priority Date Filing Date
IT000986A ITTO20120986A1 (it) 2012-11-14 2012-11-14 Procedimento per l'estrazione di informazioni distintive da un flusso di frame video digitali, sistema e prodotto informatico relativi

Country Status (2)

Country Link
US (2) US9571398B2 (it)
IT (1) ITTO20120986A1 (it)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101713197B1 (ko) * 2015-04-01 2017-03-09 주식회사 씨케이앤비 서버 컴퓨팅 장치 및 이를 이용한 콘텐츠 인식 기반의 영상 검색 시스템
CN110234018B (zh) * 2019-07-09 2022-05-31 腾讯科技(深圳)有限公司 多媒体内容描述生成方法、训练方法、装置、设备及介质
CN110442749B (zh) * 2019-07-18 2023-05-23 腾讯音乐娱乐科技(深圳)有限公司 视频帧处理方法及装置
US11900662B2 (en) * 2020-12-16 2024-02-13 Here Global B.V. Method, apparatus, and computer program product for training a signature encoding module and a query processing module to identify objects of interest within an image utilizing digital signatures
US11830103B2 (en) 2020-12-23 2023-11-28 Here Global B.V. Method, apparatus, and computer program product for training a signature encoding module and a query processing module using augmented data
US11829192B2 (en) 2020-12-23 2023-11-28 Here Global B.V. Method, apparatus, and computer program product for change detection based on digital signatures

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110164679A1 (en) * 2009-06-23 2011-07-07 Shinichi Satou Moving image coding method, moving image coding apparatus, program, and integrated circuit

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1736928A1 (en) * 2005-06-20 2006-12-27 Mitsubishi Electric Information Technology Centre Europe B.V. Robust image registration
US7805015B2 (en) * 2006-10-27 2010-09-28 International Business Machines Corporation Method of point identification and tracking in a digital video environment
RU2542946C2 (ru) * 2009-11-19 2015-02-27 Нокиа Корпорейшн Способ и устройство для отслеживания и распознавания объектов с использованием дескрипторов, инвариантных относительно вращения
US20120109993A1 (en) * 2010-10-28 2012-05-03 Qualcomm Incorporated Performing Visual Search in a Network
WO2013076364A1 (en) * 2011-11-21 2013-05-30 Nokia Corporation Method for image processing and an apparatus
US9569695B2 (en) * 2012-04-24 2017-02-14 Stmicroelectronics S.R.L. Adaptive search window control for visual search

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110164679A1 (en) * 2009-06-23 2011-07-07 Shinichi Satou Moving image coding method, moving image coding apparatus, program, and integrated circuit

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
ANONYMOUS: "Test Model 3: Compact Descriptors for Visual Search", 101. MPEG MEETING;16-7-2012 - 20-7-2012; STOCKHOLM; (MOTION PICTURE EXPERT GROUP OR ISO/IEC JTC1/SC29/WG11),, no. N12929, 16 August 2012 (2012-08-16), XP030019401 *
DANILO PAU ET AL: "CDVS Whitepaper: STM proposal", 102. MPEG MEETING; 15-10-2012 - 19-10-2012; SHANGHAI; (MOTION PICTURE EXPERT GROUP OR ISO/IEC JTC1/SC29/WG11),, no. m26509, 6 October 2012 (2012-10-06), XP030054842 *
DANILO PAU ET AL: "Proposal to complement mobile requirements with automotive and surveillance ones", 100. MPEG MEETING; 30-4-2012 - 4-5-2012; GENEVA; (MOTION PICTURE EXPERT GROUP OR ISO/IEC JTC1/SC29/WG11),, no. m24695, 22 April 2012 (2012-04-22), XP030053038 *

Also Published As

Publication number Publication date
US9986240B2 (en) 2018-05-29
US9571398B2 (en) 2017-02-14
US20170111638A1 (en) 2017-04-20
US20140133310A1 (en) 2014-05-15

Similar Documents

Publication Publication Date Title
ITTO20120986A1 (it) Procedimento per l'estrazione di informazioni distintive da un flusso di frame video digitali, sistema e prodotto informatico relativi
JP4456554B2 (ja) データ圧縮方法及び圧縮データ送信方法
WO2020075781A1 (ja) 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
JPWO2020116563A1 (ja) 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
JP7358376B2 (ja) 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
JP2015015755A5 (it)
EP3158825B1 (en) Media processing services on an access node
US11750840B2 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
US20230362414A1 (en) Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
CN105453512A (zh) 视频数据传输装置、方法、服务器、基站和客户端
CN109040783A (zh) 一种视频防伪系统、方法及装置
CN103024819A (zh) 基于用户终端ip的第三代移动通信核心网数据分流方法
CN113870133A (zh) 多媒体显示及匹配方法、装置、设备及介质
CN104767997B (zh) 一种面向视频的视觉特征编码方法及装置
US11490134B2 (en) Method and system for codec of visual feature data
CN104866818A (zh) 一种用于搜索包含人脸的图片的方法和装置
CN110800047A (zh) 对帧组的比特率控制
CN109842511B (zh) 一种tcp性能参数的确定方法及系统
CN104462422A (zh) 对象的处理方法及装置
CN117501632A (zh) 使用节点信息更新神经网络参数的解码器、编码器、控制器、方法及计算机程序
CN112051974B (zh) 电子价签信息传输方法及系统、电子价签、服务器
CN104486524A (zh) 检测图像是否经历两次压缩质量相同的jpeg压缩的方法
JP4456574B2 (ja) 圧縮データ送信方法
JPWO2020032004A1 (ja) 三次元データ格納方法、三次元データ取得方法、三次元データ格納装置、及び三次元データ取得装置
CN110019985A (zh) 索引文件的建立、查询方法及装置