CTRL+F Android-sovellus



Samankaltaiset tiedostot
PELAAJAPROFIILI Mobiilisovellus

1. Ceepos Mobiilimaksu... 3

Useimmin kysytyt kysymykset

Salon kaupunki. Ceepos Mobiilimaksu

Asentaminen Android-laitteeseen

SELIGSON & CO:n mobiilisovellus TASKUSALKKU

OPPIMISSOVELLUKSEN KÄYTTÖOHJEET

Pedacode Pikaopas. Java-kehitysympäristön pystyttäminen

RAY MOBIILIASIAKASKORTTI

Mobiilitulostus-/- skannausopas Brother iprint&scanille (Android )

ipad maahanmuuttajien ohjauksessa Laitteen käyttöönotto Kotomaatti 2016

Googlen palvelut synkronoinnin apuna. Kampin palvelukeskus Jukka Hanhinen, Urho Karjalainen, Rene Tigerstedt, Pirjo Salo

FTP -AINEISTOSIIRRON OHJE PC / MAC Ympäristö

Palvelemme arkisin klo. 08:00-17:00

Webinaarin osallistujan ohje

Skype for Business pikaohje

RAY MOBIILIASIAKASKORTTI

lizengo Asennusopas Windows: in kopioiminen

Siirtyminen Outlook versioon

Senioriliiton oma jäsenkorttiapplikaatio! Tehty

ALVin käyttöohjeet. Kuvaus, rajaus ja tallennus puhelimella ALVin -mobiilisovelluksen avulla dokumentit kuvataan, rajataan ja tallennetaan palveluun.

Brother ScanViewerin opas ios- / OS X -järjestelmille

zotero

Älypuhelimet. Sisällysluettelo

Ceepos mobiilimaksaminen

Moodle-oppimisympäristö

DENACODE NUDDIS Käsikirja huoltajalle

Hallintaliittymän käyttöohje

Sonera Yrityssähköposti. Outlook 2013 lataus ja asennus

FOTONETTI BOOK CREATOR

Käyttöohje. Ticket Inspector. Versio 1.0. Sportum Oy

Brother Image Viewer Android -opas

Salusfin Mobiilisovellus Käyttöohje

Ksenos Prime Käyttäjän opas

DIGILEHTI KUULUU KAIKILLE!

Tutustu REMUC:illa ohjattavan laitteen käyttö-, huolto- ja turvaohjeisiin

PrettyBitServer Tuote-esite

Luku 7 Uusien Mallien Tiedostot

Ennen varmenteen asennusta varmista seuraavat asiat:

Käytön aloittaminen NSZ-GS7. Verkkomediasoitin. Näyttökuvia, toimintoja ja teknisiä ominaisuuksia voidaan muuttua ilman erillistä ilmoitusta.

Lumme-verkkokirjaston tiedonhaun opas Pieksämäen kaupunginkirjasto

ETÄPALVELU. HALTIK Videoportaali - osallistujan ohje

Käyttöopas. Confienta Piccolo

BaseMidlet. KÄYTTÖOHJE v. 1.00

Android ohjelmointi. Mobiiliohjelmointi 2-3T5245

M-FILES JÄSENREKISTERIN KÄYTTÖOHJE

Collector for ArcGIS. Ohje /

KÄYTTÖOHJE. Servia. S solutions

EeNet materiaalit ohje

Prospektini. Usein kysytyt kysymykset SISÄLLYS

Octo käyttöohje 1. Sisältö

WR-R10- langattoman kauko-ohjaimen laiteohjelman päivittäminen

Active Life Tracker Bluetooth Smart Watch B2205

Vahva tunnistautuminen Office palveluihin. MFA Suojauksen lisätarkistus

Windows 10 -käyttöohje

HUOM! Latauskaapelia ei saa kytkeä laitteeseen ennen hyväksytyn maksuprosessin suorittamista! Kirjaudu

Mobiilitulostus-/- skannausopas Brother iprint&scanille (ios)

Googlen pilvipalvelut tutuksi / Google Drive

Uutiskirjesovelluksen käyttöohje

Ohje UCPorin julkisten lukujärjestyksien käyttöön

Office 365 OneDrive Opiskelijan ohje 2017

Kirkkopalvelut Office365, Opiskelijan ohje 1 / 17 IT Juha Nalli

PLA Mobiiliohjelmointi. Mika Saari

CAD-kuvat, käyttöohjeet ja muut dokumentit helposti netistä

Googlen pilvipalvelut tutuksi / Google Drive

Sivuston muokkaus WordPressin kanssa

Harjoitus 3 Antti Hartikainen

Twitter-yhteisöpalvelu ja sen käyttäminen

Käyttöohje: LAPIO latauspalvelu

iphone ja ipad

BiiSafe Buddy Ohje. (C) Copyright 2017

DIGILEHTI KUULUU KAIKILLE!

TimeEdit opiskelijan ohje TimeEdit-instructions for students from this link

Arkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14

Skype for Business ohjelman asennus- ja käyttöohje Sisällys

Novell Messenger Mobile -aloitusopas

PIKAOPAS NOKIA PC SUITE 4.3. Nokia puhelimelle. Copyright Nokia Mobile Phones Kaikki oikeudet pidätetään Issue 6

Hyvä mobiilikortin käyttäjä!

Java Runtime -ohjelmiston asentaminen

Tikon Web-sovellukset

Uusi RAPIDMATCH -ohjelma Pikaohje

Vaihdoitko puhelinta? Yhteystietojen siirto Lumian, iphonen ja Androidin välillä käy näin

Sense tiedostot Käyttöohje Opastinsilta 8 ae Helsinki

BT BBiQ laite / W042 Käyttöohjeet 1.3 FIN Käyttöohjeet BBiQ

Windows. Valmistelut. Windows

Lue käyttöohje huolellisesti läpi ennen tuotteen käyttöönottoa.

JOVISION IP-KAMERA Käyttöohje

Windows 8.1:n tietosuoja-asetukset

Epooqin perusominaisuudet

M-Files jäsenrekisterin käyttöohje

PLA Mobiiliohjelmointi. Mika Saari

Kameran laiteohjelman päivittäminen

Taskutulostin KÄYTTÖOPAS

VIP Mobile Windows Phone. Opas asennukseen ja tärkeimpien toimintojen käyttöön

Digitaalisen SLR-kameran laiteohjelmiston päivittäminen

Selaimen asetukset. Toukokuu (7) Selaimen asetukset Tikon Oy. All rights reserved.

2020 Fusion. What s New in Version 6? What s New in Version 6? 1 of Fusion

Tiedonhaku ja varaaminen

Transkriptio:

CTRL+F Android-sovellus Vili-Robert Hietala Opinnäytteen raportointi Sähköosasto Toukokuu 2015

KUVAILULEHTI 14.04.2015 Tekijä(t) Vili-Robert Hietala Työn laji Opinnäytteen raportointi Sivumäärä 7 Luottamuksellisuus salainen saakka Työn nimi Ctrl+f Android-sovellus Osasto/tutkinto Sähköosasto, ICT-asentaja, kolmoistutkinto Työn ohjaaja Juha Eskola, Mika Lukkarinen Toimeksiantaja(t) - Tiivistelmä Ctrl+f on Android-sovellus tekstin hakemiseen muun muassa kirjoista käyttäen Android-puhelimien kameraa. Projektissa hyödynsin Tesseract OCR:ää, joka on yksi parhaimmista avoimen lähdekoodin tekstintunnistuskirjastoista. Sovellus jäi hieman keskeneräiseksi enkä sitä tule jatkamaan nykyiseltä pohjaltaan. Avainsanat (asiasanat) Java, Android, puhelin, sovellus, haku

SISÄLTÖ 1. 1. JOHDANTO 1 2. ALUSTA 2 3. TYÖKALUT 3 4. SOVELLUKSEN KÄYTTÖ JA TOIMINTA 4 4.1. Sovelluksen päänäkymä 4 4.2. Sovelluksen asetukset 4 4.3. Historia 5 5. PÄÄTÄNTÖ 6 LÄHTEET 7

1 2. JOHDANTO Idean projektiini sain Tuomas Laitalalta luultavasti 2014 vuoden alussa. Projektin aloitin kesäkuussa 2014. Ctrl+f on Javalla ohjelmoitu Android-sovellus tekstin hakemiseen muun muassa kirjoista käyttäen Android-puhelimien omaa kameraa. Tavoitteena on, että käyttäjä voi kirjoittaa hakusanan ja osoittaa tekstiä, jolloin sovellus automaattisesti osaa hakea hakusanaa tekstistä ja korostaa osumat. Nykyisillään sovellus kuitenkin vaatii käyttäjää painamaan nappia ottaakseen kuvan, jonka jälkeen sovellus skannaa kuvan läpi ja korostaa osumat.

2 3. ALUSTA Kehitysalustana päädyin käyttämään Googlen Androidia. Syinä valintaani olivat muun muassa Androidin korkea käyttäjämäärä, edullisuus kehitysalustana sekä hyvä tuki kehitykseen. Android ei vaadi maksullista kehittäjälisenssiä sovelluksen testaamiseen puhelimella toisin kuin Applen ios. Yksi syistä oli myös puhelimien saatavuus. Kenelläkään tutullani ei ollut lainattavissa iphonea tai Windows Phonea. Itselläni ei myöskään Android-puhelinta projektia aloittaessani ollut, mutta Anttu Suhonen lainasi vanhaa puhelintansa projektia varten. Käytin projektissani ohjelmointikielenä Javaa, koska siihen löytyy hyvät dokumentaatiot ja sen käyttäminen suhteellisen helppoa. Tätä ennen olin tehnyt Androidille Javalla yhden yksinkertaisen pelin, joten minulla oli jonkinlainen pohja Javasta ja Androidista ennen työn alkua.

3 4. TYÖKALUT Ohjelmointiympäristönä käytin Eclipseä, josta Google tarjoaa omaa jakelupakettiaan Android-sovelluskehitystä varten. Kyseinen paketti sisältää useita työkaluja Androidkehittämistä varten, esimerkiksi sovelluksen ulkoasuun WYSIWYG-editorin (What You See Is What You Get, mitä näet on mitä saat ) sekä kääntämiseen ja ajamiseen vaadittavat kirjastot. Mukana ohjelmistossa tulee myös Android-emulaattori, jolla pystyy testaamaan sovellusta ilman fyysistä laitetta. Varsinaisella puhelimella sovelluksen käyttäminen ja testaaminen oli kuitenkin miellyttävämpää ja nopeampaa. Versionhallintaa varten hyödynsin Git-versionhallintaohjelmistoa, joka mahdollistaa useiden erilaisten versioiden tekemisen ilman että pääversio projektista muuttuu. Myöhemmin muutokset eri versioista voi liittää pääversioon. Lähdekoodit ja muut tiedostot olen laittanut Bitbucket-pilvipalveluun, joiden hakemiseen ja päivittämiseen käytän Atlassian SourceTree Git-asiakasohjelmaa. Itse sovellusta varten merkittävin kirjasto on Tesseract OCR:sta Androidille luotu Tess- Two kirjasto. Kyseinen kirjasto mahdollistaa tekstintunnistuksen hyvällä tarkkuudella, varsinkin englanninkielisillä teksteillä. Tesseract OCR tukee yli 60 eri kieltä, vaihtelevalla tarkkuudella. Kuva 1 selittää tekstintunnistusprosessin vaiheet yksinkertaisesti. KUVA 1. Tekstintunnistusprosessi (Ray Smith, Google Inc, OSCON 2007)

4 5. SOVELLUKSEN KÄYTTÖ JA TOIMINTA Teksti kertoo sovelluksen käytön ja toiminnan nykyisessä tilassaan. Kaikki ei siis vastaa täydellisesti mahdollisen lopullisen version käyttöä ja toimintaa. Sovelluksen voi jakaa kolmeen osaan: Päänäkymä, joka sisältää kaikki päätoiminnot. Asetukset, joka sisältää asetukset. Kolmas on historia, joka tulisi näyttämään hakuhistorian. Päänäkymän tein ensin, asetukset seuraavaksi ja viimeiseksi olen jättänyt historian tekemisen vähäisen tarpeellisuuden vuoksi. 5.1. Sovelluksen päänäkymä Sovelluksen päänäkymä tulee näkyviin ensimmäiseksi kun sovelluksen käynnistää. Se sisältää napit, joista käyttäjä pääsee asetuksiin ja historiaan, hakukentän sekä hakunapin. Käyttäjä syöttää hakusanan hakukenttään, jonka jälkeen osoittaa kameralla haettavaa tekstiä ja painaa hakunappia. Sovellus näyttää käyttäjälle otetun kuvan ja hetken päästä korostaa osumat. Käyttäjän syötettyä hakusanan ja painettua hakunappia, sovellus ottaa kuvan ja vie sen bittikarttamuotoon. Bittikartasta tunnistetaan teksti Tess-Two funktioiden avulla. Sovellus käy sitten läpi kaikki tunnistetut sanat ja vertaa niitä hakusanaan. Vastaavien sanojen koordinaatit lisätään listaan, jonka sovellus käy läpi piirtäessä korostukset otetun kuvan päälle. KUVA 2. Kuvan muuttaminen kaksiväriseksi ja osuman korostaminen 5.2. Sovelluksen asetukset Asetuksista käyttäjä voi vaihtaa tekstintunnistuksessa käytettävää kieltä, historian pituutta, ladata uusia kieliä ja poistaa niitä puhelimesta. Käyttäjä voi valita tekstintunnistuksessa käytettävän kielen painamalla Language ja valitsemalla halutun kielen avautuvasta listasta. Muiden asetusten muuttaminen tapahtuu samalla tavalla.

5 Käyttäjän avatessa asetukset sovellus tutkii kansion, joka sisältää ladatut kielet ja luo löydetyistä kielistä listan. Lista näytetään käyttäjälle, josta käyttäjä voi valita haluamansa kielen. Nykyisessä tilassaan sovellus ei kuitenkaan välitä valinnasta vaan käyttää aina suomen kieltä tekstintunnistuksessa. Sovellus luo oman prosessin kielen lataukselle käyttäjän halutessa ladata uuden kielen. Näin käyttäjä voi poistua sovelluksesta ilman että lataus keskeytyy. Latauksen tila näytetään Androidin ilmoituksissa. Keskeneräisessä latauksessa tiedostonimessä on pääte.part, jotta sovellus tietää luodessaan listaa kielistä, että kyseistä kieltä ei ole vielä ladattu kokonaan. Latauksen valmistuttua sovellus luo ilmoituksen latauksen valmistumisesta ja poistaa.part päätteen tiedostosta sekä päivittää kielilistan. KUVA 3. Latauksen tila ilmoituksissa 5.3. Historia Historianäkymä on käytännössä täysin tyhjä eikä sisällä tällä hetkellä mitään. Lopullisemmassa versiossa sovellus lisäisi kaikki haut listaan, josta valitsemalla käyttäjä näkisi uudelleen edellisten hakujen tulokset. KUVA 4. Asetukset

6 6. PÄÄTÄNTÖ Sovellus on toivottua hitaampi hakemaan eikä ole tämän takia kovin käytännöllinen. Tekstin tunnistuksen tarkkuus on myös sovelluksen nykyisessä tilassa liian epävarma. Nopeutta ja haun varmuutta voisi parantaa ainakin muutamilla keinolla. Nopeutta voisi kasvattaa jakamalla kuvan pienempiin osiin sekä mahdollisesti muokkaamalla kuvaa yksinkertaisemmaksi ennen tekstintunnistusta. Kuvan muokkaaminen pitää kuitenkin tehdä varovaisesti, ettei teksti menetä tarkkuutta. Nykyisellään sovellus korostaa vain ne skannatut sanat, jotka ovat täysin identtiset hakusanan kanssa. Järkevää olisi käyttää yksinkertaista algoritmia tutkimaan onko skannattu sana lähes identtinen hakusanan kanssa. Nykyään on enemmän kokemusta Javasta ja sovelluskehittämisestä Androidille ja jos projektia lähtisin jatkamaan, aloittaisin koko projektin alusta. Nykyinen koodi ei ole hyvää ja sitä on turha lähteä jatkamaan.

7 LÄHTEET Google:DokumentaatiotAndroid3sovelluskehitykseen. http://developer.android.com/ StackOverflow:OhjelmointiaiheinenQ&A3sivusto. http://stackoverflow.com/ Tess3Two:Tess3Two kirjastondokumentaatiotjalähdekoodit. https://github.com/rmtheis/tess3two/ (Kuva1)RaySmith,GoogleInc,OSCON2007: https://tesseract3ocr.googlecode.com/files/tesseractoscon.pdf

LIITTEET Englanninkielinendokumentaatio,jonkakirjoitinsuurimmaksiosaksiennenprojektin aloittamista.sisältäämyösprojektilokin. https://drive.google.com/file/d/0b5g3bdxh4yk4bgfpn0pqzdjxuda/view KUVA 5. Sovelluksen kuvake