CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: gianpassa con ben 2 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: 9mm con ben 9 Thanks ricevuti negli ultimi sette giorni
Utente del mese: 9mm con ben 34 Thanks ricevuti nell'ultimo mese

Visualizzazione dei risultati da 1 a 6 su 6
Discussione:

Ocr

Se questa discussione ti è stata utile, ti preghiamo di lasciare un messaggio di feedback in modo che possa essere preziosa in futuro anche per altri utenti come te!
  1. #1
    Baby Droid


    Registrato dal
    Mar 2012
    Messaggi
    4

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Ocr

    Salve, premetto che è da poco che ho iniziato lo sviluppo su android.
    Qualcuno sa darmi indicazioni o esempi su come realizzare un programma OCR per android?
    Devo scattare una foto e riconoscere un numero/codice.

  2.  
  3. #2
    Senior Droid L'avatar di frank17next


    Registrato dal
    Jan 2010
    Località
    Campobasso
    Messaggi
    739
    Smartphone
    GNexus, Galaxy Note, GT 10.1

    Ringraziamenti
    16
    Ringraziato 143 volte in 102 Posts
    Predefinito

    Quote Originariamente inviato da entity Visualizza il messaggio
    Salve, premetto che è da poco che ho iniziato lo sviluppo su android.
    Qualcuno sa darmi indicazioni o esempi su come realizzare un programma OCR per android?
    Devo scattare una foto e riconoscere un numero/codice.
    Ciao,
    se può interessarti ho utilizzato nella mia app la process library zxing - Multi-format 1D/2D barcode image processing library with clients for Android, Java - Google Project Hosting per il riconoscimento dei barcode ean, funziona egregiamente.
    Se usi eclipse, devi creare la folder 'libs' nel tuo progetto, copiare lì il file .jar della libreria zxing, dopodichè implementare nell'app una classe di 'implementazione' simile a questa (esempio):

    codice:
    package mia.applicazione.test;
    
    import android.app.Activity;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.TextView;
    import com.google.zxing.integration.android.IntentIntegrator;
    import com.google.zxing.integration.android.IntentResult;
    
    public class AndroidScanner extends Activity {
    	TextView format=null;
    	TextView contents=null;
    	Bundle bundlescanner;
    	@Override
    	public void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.screen3);
    		format=(TextView)findViewById(R.id.format);
    		contents=(TextView)findViewById(R.id.contents);
    		Button confermaScansione = (Button) findViewById(R.id.pulsanteConfermaBarCode);
    		confermaScansione.setOnClickListener(new View.OnClickListener() {
    			public void onClick(View arg0){
    				Intent intent = new Intent();
    				intent.putExtra("formato", format.getText().toString());
    		        intent.putExtra("codiceletto", contents.getText().toString());
    				setResult(RESULT_OK,intent);
    				finish();
    			}
    		});
    	}
    
    	public void doScan(View v) {
    		IntentIntegrator.initiateScan(this);
    	}
    
    	public void onActivityResult(int request, int result, Intent i) {
    		IntentResult scan=IntentIntegrator.parseActivityResult(request,result, i);
    
    		if (scan!=null) {
    			format.setText(scan.getFormatName());
    			contents.setText(scan.getContents());
    		}
    	}
    	@Override
    	public void onSaveInstanceState(Bundle state) {
    		state.putString("format", format.getText().toString());
    		state.putString("contents", contents.getText().toString());
    	}
    
    	@Override
    	public void onRestoreInstanceState(Bundle state) {
    	    format.setText(state.getString("format"));
    		contents.setText(state.getString("contents"));
           	}
    }
    oltre a queste due: http://code.google.com/p/zxing/sourc...ntegrator.java

    http://code.google.com/p/zxing/sourc...entResult.java


    a cui è associata la view di questo layout (xml):
    codice:
    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >
    	<Button
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:text="Avvia Scansione!"
    		android:onClick="doScan"
    	/>
    	<TextView android:id="@+id/format"
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
      />
    	<View
        android:layout_width="fill_parent" 
        android:layout_height="2dip"
    		android:background="#FF0000FF"
      />
    	<TextView android:id="@+id/contents"
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
      />
    	<Button
        android:id="@+id/pulsanteConfermaBarCode"
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:text="Conferma BarCode"
    	/>
    </LinearLayout>
    Ultima modifica di frank17next; 20-03-12 alle 22:29
    Nexus 6 - 5.0.1 Stock
    Nexus 5 - 5.0.1 Stock + Root
    Galaxy Note 3 GT-N9005 - 4.4.4 Stock + Root
    Galaxy Tab 10.1 Slim P7500 - [JB] CyanogenMod 10 4.1.2 Pershoot (Nightly 20121013)
    ------------------------------------------------------------------------
    https://sites.google.com/site/frank17next/

  4. #3
    Baby Droid


    Registrato dal
    Mar 2012
    Messaggi
    4

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Grazie per la completa risposta, a me interessa solo un semplice OCR non per il barcode, neanche la gestione della lingua mi interessa, perchè devo riconoscere semplicemente l'etichetta con i prezzi.
    Come ti dicevo con android ci sto mettendo le mani da poco e l'esempio è abbastanza complesso, non hai qualcosa di semplice, che scattata una foto mi riconosca il prezzo?

  5. #4
    Senior Droid L'avatar di frank17next


    Registrato dal
    Jan 2010
    Località
    Campobasso
    Messaggi
    739
    Smartphone
    GNexus, Galaxy Note, GT 10.1

    Ringraziamenti
    16
    Ringraziato 143 volte in 102 Posts
    Predefinito

    Quote Originariamente inviato da entity Visualizza il messaggio
    Grazie per la completa risposta, a me interessa solo un semplice OCR non per il barcode, neanche la gestione della lingua mi interessa, perchè devo riconoscere semplicemente l'etichetta con i prezzi.
    Come ti dicevo con android ci sto mettendo le mani da poco e l'esempio è abbastanza complesso, non hai qualcosa di semplice, che scattata una foto mi riconosca il prezzo?
    mmm... per l'esempio dobbiamo ragionarci. Sei riuscito a creare una prima app semplice con un layout e una activity? ... ad ogni modo, in pratica ti serve che da una foto tu ottenga dei numeri (che sarebbe il prezzo)... oddio, non è molto conveniente... per il semplice fatto che ci sono da superare questi punti:
    1) Conversione ocr da una image a testo (anche se sono prezzi, quei numeri sono testo).
    2) Ammesso che si riesca a trovare un modo per realizzare il punto 1, in che modo si possono gestire gli errori di conversione? E' ad alta intensità uso utente, nel senso che l'omino che fa le foto ai prezzi deve stare lì a controllare che sia stato correttamente convertito in OCR (e farebbe prima ad inserirli manualmente)....
    Chissà se l'app 'scan2pdf' può aiutare... se i sorgenti sono free si potrebbe prendere un buono spunto
    Nexus 6 - 5.0.1 Stock
    Nexus 5 - 5.0.1 Stock + Root
    Galaxy Note 3 GT-N9005 - 4.4.4 Stock + Root
    Galaxy Tab 10.1 Slim P7500 - [JB] CyanogenMod 10 4.1.2 Pershoot (Nightly 20121013)
    ------------------------------------------------------------------------
    https://sites.google.com/site/frank17next/

  6. #5
    Baby Droid


    Registrato dal
    Mar 2012
    Messaggi
    4

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Si, si sto facendo delle app, ma cose semplici per fare pratica con i widget.
    Visto che l'OCR è ormai una tecnica "vecchia" pensavo fosse più semplice, ormai ci sono librerie per il riconoscimento vocale e facciale e ancora ci sono problemi con l'ocr?
    Volevo utilizzare questa tecnica perchè se l'utente può essere propenso a premere un bottone solo per confermare se la scansione è corretta, cosa più difficile sarebbe invogliarlo a inserire tutti i prezzi manualmente.

  7. #6
    Senior Droid L'avatar di frank17next


    Registrato dal
    Jan 2010
    Località
    Campobasso
    Messaggi
    739
    Smartphone
    GNexus, Galaxy Note, GT 10.1

    Ringraziamenti
    16
    Ringraziato 143 volte in 102 Posts
    Predefinito

    Quote Originariamente inviato da entity Visualizza il messaggio
    Si, si sto facendo delle app, ma cose semplici per fare pratica con i widget.
    Visto che l'OCR è ormai una tecnica "vecchia" pensavo fosse più semplice, ormai ci sono librerie per il riconoscimento vocale e facciale e ancora ci sono problemi con l'ocr?
    Volevo utilizzare questa tecnica perchè se l'utente può essere propenso a premere un bottone solo per confermare se la scansione è corretta, cosa più difficile sarebbe invogliarlo a inserire tutti i prezzi manualmente.
    Permettimi un'osservazione: in che modo vuoi trattare i prezzi 'scansionati', ovvero le cifre? Dovrai sicuramente associarle a qualcosa... qualcosa del tipo 'articolo xxx = prezzo appena scansionato'... ma se hai già una anagrafica (articoli?) a cui associare dei prezzi scansionati, perchè non usare i barcode, che possono fare da ponte univoco al singolo elemento dell'anagrafica e al suo relativo prezzo scansionato ?
    Nexus 6 - 5.0.1 Stock
    Nexus 5 - 5.0.1 Stock + Root
    Galaxy Note 3 GT-N9005 - 4.4.4 Stock + Root
    Galaxy Tab 10.1 Slim P7500 - [JB] CyanogenMod 10 4.1.2 Pershoot (Nightly 20121013)
    ------------------------------------------------------------------------
    https://sites.google.com/site/frank17next/

LinkBacks (?)


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire risposte
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Torna su
Privacy Policy