OCR på räkningar

Diskussion i 'Appförslag och idéer' startad av Buzz, 21 jul 2010.

  1. johannilsson

    johannilsson Adult Droid Medlem

    Blev medlem:
    23 jun 2009
    Inlägg:
    577
    Mottagna gillanden:
    8

    MINA ENHETER

    Tack,

    Skulle föredra ett plugin med. Finns lite olika vägar att gå för att snappa upp koden dock, ska fundera lite och förhoppningsvis få tid över till lite experiment.
     
  2. Kaj

    Kaj Senior Droid Medlem

    Blev medlem:
    12 jun 2009
    Inlägg:
    1 768
    Mottagna gillanden:
    44

    MINA ENHETER

    Jag är ju inte webbig, så du kanske kan bidra med några idéer. I förra veckan satt jag faktiskt och tänkte på detta steget, men kunde inte komma fram till några bra lösningar. Tekniskt sett tyckte jag att alla lösningarna sög på ett eller annat sätt. Mina tankar då var:

    * Koppla telefonen med sladd och trycka läsa datat från USB genom ett native program. Faller på att Android inte verkar kunna trycka data via USB på något smidigt sätt. Sedan skulle det även bli bökigt att skriva ett native program för varje plattform.

    * Pusha datat från telefonen till en webbserver. Sedan skulle man ha ett browser-plugin som läste från webbservern. Skalar dåligt, och när jag kollade på chrome-plugins så verkade de vara skrivna i javascript(?) och inte ha tillgång till clipboard (hoppas jag har fel här)
     
  3. Kaj

    Kaj Senior Droid Medlem

    Blev medlem:
    12 jun 2009
    Inlägg:
    1 768
    Mottagna gillanden:
    44

    MINA ENHETER

    Hmm, undrar om man skulle kunna gå via Google Web Clipboard
     
  4. pakerfeldt

    pakerfeldt Adult Droid Medlem

    Blev medlem:
    28 feb 2010
    Inlägg:
    716
    Mottagna gillanden:
    72

    MINA ENHETER

    Låter ju onekligen intressant.

    Annars kan man ju som sagt pusha ut datat från telefonen in i molnet. Och sedan från molnet -> webbläsaren. Då uppstår saker som:

    * Integritet - Vad tycker folk om att deras information mellanlagras i molnet
    * Kostnad - Att driva molntjänsten

    Om vi tvingar folk att ha en egen server ståendes hemma bara för detta syfte så tappar vi oerhört många användare.
     
  5. Kaj

    Kaj Senior Droid Medlem

    Blev medlem:
    12 jun 2009
    Inlägg:
    1 768
    Mottagna gillanden:
    44

    MINA ENHETER

    Förutom det finns det ett gäng andra felfall. Kan tänka mig att man ogärna vill att ett gammalt/fel OCR-nummer skall hamna på en räkning. Därför vill man nog att de bara skall kunna hämtas en gång. Att se till så att de ej är klartext och så att de endast kan dekrypteras av rätt användare är relativt enkelt.
     
  6. Me.B

    Me.B Youth Droid Medlem

    Blev medlem:
    26 aug 2009
    Inlägg:
    232
    Mottagna gillanden:
    7

    MINA ENHETER

    Bara en tanke från en okunnig person, vore det inte smidigt att köra programmet och scanna in alla räkningar, sen trycka på en export knapp som skapar en textfil som sen pushas till moln eller via usb till dator och sen importeras i chrome plugin?På det sättet behövs väl ingen arkitekt specefik kod mer än möjilgtvis i chrome plugin?
     
  7. Kaj

    Kaj Senior Droid Medlem

    Blev medlem:
    12 jun 2009
    Inlägg:
    1 768
    Mottagna gillanden:
    44

    MINA ENHETER

    Jo, men det som hade varit bäst (för mig) hade varit om det hade funkat som med en c-pen, eller vanliga skannrar. Man skannar något, och texten man skannat hamnar sedan i det textfält som för tillfället har fokus på datorn. :)

    .. Sedan kanske inte alla vill ha så.
     
  8. Zooklubba

    Zooklubba Android Medlem

    Blev medlem:
    10 jul 2010
    Inlägg:
    6 394
    Mottagna gillanden:
    2 134

    MINA ENHETER

    Hade passat mig bra också. Rör inte mina fakturor om jag inte är inloggad hos banken precis ändå. Vet inte om det är mest simpel men låter enklare än ett moln och skicka allt dit. Eller?

    Sent from my HTC Desire using Tapatalk
     
  9. Kaj

    Kaj Senior Droid Medlem

    Blev medlem:
    12 jun 2009
    Inlägg:
    1 768
    Mottagna gillanden:
    44

    MINA ENHETER

    Tråkigt nog är det jag nämnde troligtvis den lösningen som är svårast att implementera.
     
  10. Zooklubba

    Zooklubba Android Medlem

    Blev medlem:
    10 jul 2010
    Inlägg:
    6 394
    Mottagna gillanden:
    2 134

    MINA ENHETER

    Till clipboard då? Hum gör inte mig så mycket att klistra in de olika. Är mest ute efter ocrnumret.

    Sent from my HTC Desire using Tapatalk
     
  11. erlandsson

    erlandsson Baby Droid Medlem

    Blev medlem:
    14 apr 2010
    Inlägg:
    27
    Mottagna gillanden:
    1

    MINA ENHETER

    Om OCR numret skall hamn rätt på bankens sida måste väl alla banker ha samma options namn på rutan?? eller tänker jag helt fel?

    Tror det måste bli någon form av copy past funktion för att det skall gå att styra.
    Kan man inte bara skapa det som en fil på telefonen och sedan får man själv överföra den på lämpligt sätt, dropbox, g-dokument, mm eller via lämplig filhanterare via blåtand eller kabel.

    /erlandsson
     
  12. pakerfeldt

    pakerfeldt Adult Droid Medlem

    Blev medlem:
    28 feb 2010
    Inlägg:
    716
    Mottagna gillanden:
    72

    MINA ENHETER

    Klart man kan. Men det blir ju betydligt mer krångligt och många kommer nog tycka att det är mer besvärligt än att helt enkelt skriva av OCR-numret manuellt.
     
  13. johannilsson

    johannilsson Adult Droid Medlem

    Blev medlem:
    23 jun 2009
    Inlägg:
    577
    Mottagna gillanden:
    8

    MINA ENHETER

    Jag tror på det andra alternativet här.

    Ser följande framför mig;

    1. Första gången appen startar väljer jag ett befintligt google konto jag vill använda för lagring av scannade OCR's.
    2. Scannar
    3. OCR pushas till en server

    Gör om steg 2 och 3 tills alla mina räkningar är scannade.

    1. Loggar in på en server med mitt konto jag använde när jag startade appen första gången
    2. Ser lista över scannade OCR's, där finns en knapp vid respektive kod för att kunna läggas i ens urklipp.
    3. Klickar på knappen
    4. Går till banken klistrar in

    Gör om steg 2 - 4 tills alla koder är hanterade.

    Får man det här att fungera kan man senare relativt enkelt (gissar jag) skriva ett extension till sin webbläsare som automagiskt slänger in den senaste scannade koden i urklippet. Då skulle stegen kunna vara;

    1. Scanna
    2. Klistra in på bankens webbsida, alternativt att det automagiskt fylls i.

    Känns de här stegen okej? Då kan påbörja en enkel site som håller scannade koder till ett konto, troligtvis kommer jag isf bygga det för app engine.
     
  14. pakerfeldt

    pakerfeldt Adult Droid Medlem

    Blev medlem:
    28 feb 2010
    Inlägg:
    716
    Mottagna gillanden:
    72

    MINA ENHETER

    PHP:
    Låter som en rimlig första approach! Personligen har jag kanske en eller två pappersfakturor i månaden och jag tror den här lösningen är något för omständig för att jag skulle orka applicera den på en enstaka faktura. Har man däremot flera stycken så, absolut! Däremot tycker jag det är helt rätt att ta det i steg. Vi behöver inte hitta den mest optimala lösningen på en gång.
     
  15. johannilsson

    johannilsson Adult Droid Medlem

    Blev medlem:
    23 jun 2009
    Inlägg:
    577
    Mottagna gillanden:
    8

    MINA ENHETER

    Jag vet, har väldigt få pappersräkningar med men jag ser det mer som ett intressant projekt. Jag hoppas att min beskrivning låter jobbigare än vad det faktiskt kommer bli men det är inte allt för stor investering för att det ska vara värt ett försök iaf.

    Hinner inte påbörja något under dagen, men skriker till så fort jag har något och slänger upp det på github med.
     
  16. Kaj

    Kaj Senior Droid Medlem

    Blev medlem:
    12 jun 2009
    Inlägg:
    1 768
    Mottagna gillanden:
    44

    MINA ENHETER

    Nä, det behöver de egentligen inte ha. Liknande verktyg brukar läsa data från t.ex USB/Serial och skriver sedan datat till "tangentbordsbuffertet". Datat kommer då automatiskt hamna i det textfält som för tillfället har fokus.

    En sådan lösning skulle i vårt fall kräva "long-poll" från användarens dator, eller att användaren har en serversocket öppen på sin dator. Det skulle även kräva lite native kod för att skriva till tangentbordsbuffert såvida vi inte omvandlar allt data till KeyEvents (Java). Då kan vi använda klassen java.awt.Robot på användarens dator för att skriva data till det fält som har fokus.

    Detta program skriver ett 'a' i det fält som för tillfället har fokus.

    Kod:
    import java.awt.GraphicsDevice;
    import java.awt.GraphicsEnvironment;
    import java.awt.Robot;
    import java.awt.event.KeyEvent;
    
    public class RobotTest {
    	public static void main(String[] args) throws Exception {
    
    		GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
    		GraphicsDevice[] gs = ge.getScreenDevices();
    		System.out.println("Switch to e.g. notepad, you got 10 seconds to do it");
    		Thread.sleep(10000L);
    		System.out.println("Generating key events");
    		Robot robot = new Robot(gs[0]);
    		robot.keyPress(KeyEvent.VK_A);
    		robot.keyRelease(KeyEvent.VK_A);
    		System.out.println("done!");
    	}
    }
    
    
     
  17. speakman

    speakman Teen Droid Medlem

    Blev medlem:
    15 apr 2010
    Inlägg:
    262
    Mottagna gillanden:
    13

    MINA ENHETER

    Mitt förslag består av tre delar;

    * Android-appen skickar inscannade uppgifter via WiFi till PC:n.

    * På PC:n finns ett "native" program som tar emot uppgifterna och sedan gör dessa tillgängliga via JSON över HTTP (och implementerar longpolling).

    * Slutligen finns en Chrome Extension (ja det är JavaScript, men betydligt kraftfullare än den vanliga sidor har att nyttja) som är ständigt kopplad till native-appen och inväntar data.

    * Chrome Extensionen(?) har sedan anpassning till ett flertal banker för att automatiskt fylla i dess inputfält (det är ju open source så alla kan hjälpa till). Alternativt finns ett generiskt läge där man kan välja att bara klistra in inscannade värden på markerat fält.

    Med detta på plats borde det bli en fröjd att betala räkningarna. ;)
     
  18. Skywriter

    Skywriter Professional Droid Medlem

    Blev medlem:
    22 sept 2009
    Inlägg:
    2 433
    Mottagna gillanden:
    142

    MINA ENHETER

    Som användare låter det här perfekt. Det får nog inte vara så mycket krångligare än såhär om folk ska orka använda det.

    Ser fram emot att testa en sån här app.
     
  19. pakerfeldt

    pakerfeldt Adult Droid Medlem

    Blev medlem:
    28 feb 2010
    Inlägg:
    716
    Mottagna gillanden:
    72

    MINA ENHETER

    Jag har provat aGiro igen och får det lite halvt att fungera på min Nexus S. Den skannar rätt siffror om jag struntar i kontodelen till höger.
     
  20. wulax

    wulax Kid Droid Medlem

    Blev medlem:
    7 jul 2010
    Inlägg:
    61
    Mottagna gillanden:
    7

    MINA ENHETER

    Något jag funderade på att göra men inte implementerat i aGiro är någon sorts PreferenceActivity där man lätt kan ändra inställningar för scannern: nogrannhet, ljushet, kontrast, och diverse andra variabler som nu är fasta i koden. Det skulle göra det enklare att experimentera med andra telefoner och se vad som går fel. Givetvis ska inte användare behöva göra sådant, men det skulle göra det enklare att vidareutveckla den tror jag.