Riconoscimento delle immagini


11

Alla ricerca di un sistema open source che consenta a un uso commerciale di riconoscere le immagini in una raccolta di immagini 2D estesa e in crescita organica in cui le uniche varianti conosciute saranno:

  • Ridimensionamento dell'immagine,
  • L'angolazione che prende l'immagine della foto,
  • Offset di sincronizzazione del colore, il che significa che a causa di irregolarità nell'acquisizione e nel rendering di un colore dell'immagine sorgente varia da istanza a istanza,
  • Ritaglio della foto,
  • Aggiunta di filigrana o testo,
  • Possibili variazioni di messa a fuoco, il che significa che l'acquisizione non è stata messa a fuoco, non che è stato applicato un filtro di manipolazione dell'immagine.

Sono d'accordo con il fatto di dover addestrare l'applicazione, a condizione che il ritorno su ciò pagherà - detto ciò, a lungo termine mi aspetto che il conteggio delle istanze 2-D cresca oltre le poche migliaia iniziali verso le centinaia di migliaia; ma a lungo termine, e sarei felice solo di avere una soluzione che funzioni bene con un set di formazione di 1000 istanze e 10 esempi per istanza.

AGGIORNAMENTO: la licenza deve poter essere utilizzata per la distribuzione interna commerciale senza rilascio del codice sorgente anche interno a tutti coloro che hanno il binario. Il codice non verrà mai venduto, utilizzato solo all'interno, ma non tutti gli utenti avranno accesso al codice sorgente, ma solo all'interfaccia.


2
Hai considerato OpenCV?

+1 @pwny: Grazie - quindi no, non ho mai provato nessun sistema di visione artificiale (CV), sto solo cercando di farmi un'idea del modo in cui sto pensando al problema sia corretto. Vorrei dichiarare di cosa sono le immagini, ma dal momento che si riferisce a un'impresa commerciale e il sistema CV sarebbe solo per uso interno, sto cercando di non indicare quale sistema verrà elaborato, ma le sfide che dovrà affrontare. Se OpenCV soddisfa i requisiti attuali, si prega di pubblicarlo come risposta e tentare di collegarsi ai documenti correlati che coprono i requisiti funzionali forniti, se possibile. Grazie ancora!

1
Non esiste una "distribuzione interna", secondo la legge sul copyright. Pertanto la maggior parte delle licenze (tutto ciò di cui sono a conoscenza) non si preoccupa delle restrizioni a tale riguardo.
Salmo

+1 @MSalters: Grazie, hai un link al "secondo la legge sul copyright" - il che significa che stai dicendo che questo è dichiarato nella legge sul copyright degli Stati Uniti, anche se forse sto solo leggendo il tuo commento.

1
@blunders: tecnicamente, proviene da TRIPS (articolo 1.3), che stabilisce che una persona giuridica (ad esempio una società) deve essere trattata come una persona fisica.
Saluti

Risposte:


10

Potrebbe essere un po 'di basso livello, ma OpenCV potrebbe fornirti gli strumenti necessari per creare tale software di riconoscimento delle immagini. Ovviamente, OpenCV non fornisce tutto ciò di cui hai bisogno (credo di non essere un professionista) ma mira a fornire ciò che è necessario per la visione artificiale in tempo reale.

Puoi iniziare a leggere sulla documentazione qui . Alcuni buoni libri sono elencati anche in quella pagina.

Spero che questo ti aiuti, buona fortuna!


La licenza GPLV2 di OpenCV significa che non è possibile distribuirla internamente all'interno di un sistema chiuso? Grazie!

Dove vedi la licenza GPLV2? Nel primo paragrafo della home page è elencato come una licenza BSD.

@deterb: nel piè di pagina, in fondo alla pagina.

@deterb: sembra che il link GPL sia per il motore Wiki MoinMoin utilizzato per la wiki di OpenCV, non OpenCV - grazie per aver sottolineato il mio errore!

+1 @pwny: Quindi, come sottolineato, OpenCV è sotto una licenza BSD, che è dichiarata sulla homepage del sito Web (sembra che la licenza GPLV2 a piè di pagina non si applica a OpenCV), ha anche tentato di confermarlo scaricando OpenCV e cerca la licenza di ricerca all'interno tutti i suoi file; che restituiscono tra le altre licenze di terze parti, una licenza che sembra essere per OpenCV sotto forma di una licenza BSD, anche se non afferma che è una licenza BSD. Quindi, proseguendo, la tua risposta è di grande aiuto e sembra abbastanza buona per andare avanti. Grazie!


2

Solo per aggiungere alla discussione sto attualmente lavorando sulla corrispondenza delle immagini e ho scoperto che l' ORB di OpenCV è gratuito; tuttavia SURF e SIFT non lo sono. Puoi guardare questo esempio come possibile punto di partenza.


1

Pastec http://www.pastec.io dovrebbe soddisfare i requisiti della domanda iniziale.

È un indice open source e un motore di ricerca per il riconoscimento delle immagini rilasciato sotto la LGPL. Permette di aggiungere, rimuovere e cercare facilmente le immagini corrispondenti nell'indice usando una semplice API HTTP. Si basa su OpenCV e utilizza il descrittore ORB, che è privo di brevetto a differenza di SURF e SIFT.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.