perjantai 10. heinäkuuta 2020

Canon R5 ja R6 - vihdoin se on virallista

Canonin eilinen tuotejulkistus oli luultavasti yhtiön historian erikoisin. R5- ja R6-kamerat aloittavat Canon-maailmassa kokonaan uuden aikakauden. Mahtavat tekniset speksit kerrottiin jo helmikuussa, netissä tiedot kiersivät jo viime vuonna. Ilmeisesti koronan viivästyttämänä kamerat tulevat markkinoille vasta nyt, mutta R5 on saatavilla jo tässä kuussa ja R6 elokuussa.

Suurin yllätys oli, että kaikki ennakkotiedot ja huhut pitivät paikkansa. Todellakin 8K-kuvaus, runkovakaaja (toimii myös vanhoilla objektiiveilla), kaksi korttipaikkaa, HEIF-kuvat, täyden kennon 4K-kuvaus, wifi, joystickin paluu... ja mikä tärkeintä: ei yhtään asteriskia, joka viittaisi sivun lopussa olevaan pieneen tekstin "ei toimi xxx kanssa" tai "tulossa myöhemmin".

Canon ei ole yleensä loistanut uusimmalla tekniikalla, mutta tällä kertaa tekniset ominaisuudet ovat todella kovia. R5 ja R6 osoittavat, että yhtiön tulevaisuus on peilittömissä. Ehkä jo talviolympialaisiin saamme R1:n, jolloin peilikoneistolla varustettuja kameroita jää korkeintaan malliston alimpaan harrastajasegmenttiin.

Kun digikameroiden markkinat ovat muuten kutistumassa ja muut valmistajat vaikeuksissa, Canonin julkistus voi olla vielä merkittävämpi kuin mitä tällä hetkellä ymmärrämme. Olympus ilmoitti jo pari viikkoa sitten luovuttavansa.

Tällä hetkellä kameroita voi kommentoida vain teknisten tietojen valossa. Käytettävyys, elektronisen etsimen toimivuus ja kuvanlaatu arvioidaan vasta myöhemmin.

Etsimällä löydän itse vain yhden heikkouden: miksei kummassakaan kamerassa ole gps-ominaisuutta? Ilmeisesti vanha ulkoinen GP-E2 toimii edelleen, mutta on vaikea ymmärtää miksei gps:ää ole sisäänrakennettuna kuten oli 5Dm4:ssä ja 1Dx-sarjan II- ja III-malleissa.

Toinen heikkous on virtakytkin. Toivoin, että R-mallissa ollut pyöritettävä vipu jäisi lyhyeksi kokeiluksi, mutta valitettavasti se on päätynyt uusiinkin malleihin. Hipaisupalkista on sentään luovuttu.

Sääsuojaus ja yleinen kestävyys arveluttavat myös. Ilmeisesti 1Dx:lle pitää antaa sentään jotain kilpailuetua. Canonin oma sivu mainitsee käyttöympäristöksi 1-40 C, max 85 % ilmankosteus, mutta sehän tarkoittaisi ettei kameraa voi käyttää pakkasella lainkaan.

Erityisen ilahtunut olen siitä, että akku on pysynyt samana, vaikka uusi LP-E6NH säilöökin hieman enemmän virtaa kuin edeltävä LP-E6N. Akku on pystynyt samana 5Dm2-mallista (LP-E6) (julk. syyskuussa 2008) lähtien. Sama akku oli myös 7D-kamerassa (julk. syyskuussa 2009). Vanhoista kameroista jääneet akut kelpaavat yhä vara-akuiksi.

Eniten nurinaa kamerat ovat saaneet hinnoittelustaan. Koronan lannistamana aikana niin ammattilaisten kuin harrastajienkin kukkaronnyörit ovat tiukoilla. Se harmittaa erityisesti nyt, kun saataville tulee jotain todella houkuttelevaa.

R5:n hinta on 4850 euroa ja R6:n 2900 euroa. Vertailun vuoksi 1Dx III hinta on 8099 euroa. R-mallien jenkkihinnat ovat 3899 ja 2499 dollaria, 1Dx:n 6500 dollaria. Tässä on kiinnostava yksityiskohta: R5 ja 1Dx III ovat täsmälleen alv:n verran (24 %) kalliimpia kuin verottomasti hinnoitellut jenkkimallit, mutta R6:n kohdalla ero on vain 16 prosenttia.

Edellinen 5-sarjan huippumalli julkaistiin neljä vuotta sitten elokuussa 2016, jolloin sen hinta oli 4200 euroa (jenkkien veroton hinta 3500 dollaria). Nyt kameraa myydään noin 2500 eurolla. Olettavasti myös R-mallien hinnat laskevat tulevina vuosina. Ominaisuuksiin suhteutettuna hintoja ei voi pitää kalliina. 

Mutta ei rahanmeno kameraan lopu! Uudet RF-objektiivit ovat huippuhienoja nekin, mutta jälleen lompakossa käy vetoa. Eilen julkistettu RF 100-500 mm maksaa 3350 euroa, kun nykyinen EF 100-400 mm maksoi tullessaan noin 2600 euroa (ja nyt noin 2400, omani ostin muutama vuosi sitten tarjouksesta 1990 eurolla). 

Telejatkeiden hinnoittelu kummastuttaa, sillä 1,4x (659 euroa) ja 2x (829 euroa) ovat tuntuvasti kalliimpia kuin EF-vastineensa (molemmat 543 euroa, eikä hinta ole juuri laskenut vuosien varrella).

Sille, jolla on varaa, Canonin uutuudet tarjoavat seikkailua kuvauksen uusimpien ihmeiden maailmassa. Maltamme tuskin odottaa ensimmäisiä todellisia käyttökokemuksia ja tuotearvioita.

Nyt tiedämme, miltä valokuvaus tulee näyttämään 2020-luvulla.

torstai 18. kesäkuuta 2020

Outo GPS-reitti aamulenkillä ja GNSS View -ohjelma

Teen normaalisti aamulenkin, jonka Runkeeper-ohjelma tunnollisesti tallentaa. 

Normaali
Tavanomainen reittiviiva

Maanantaina 15.6.2020 Runkeeperin lenkki näytti kaksinkertaista pituutta ja reitissä oli ihmeellisiä pykäliä:
Reittiviiva 15.6.2020

En ole koskaan ennen nähnyt vastaavaa, enkä osaa nytkään selittää, mistä oli kyse. Säännöllinen poikkeama aina samaan suuntaan viittaa jonkinlaiseen häirintään. Kyse voi olla myös iPhonen tai sovelluksen sekoilusta.

Seuraavana aamuna lenkki näytti taas normaalilta, samoin sitä seuraavina aamuina, joten mikä häiriön sitten aiheuttikin se tuntuu poistuneen. 

Häiriö sai kuitenkin etsimään navigointisatelliittien näyttöohjelmaa. Androidille niitä on useitakin. iPhonelle löytyi yksi hauska: GNSS View.

GNSS View aloitusnäyttö

Ohjelma näyttää taivaalla olevat eri paikannussatelliitit (GPS, Galileo, Glonassa, Baidu, japanilaisten QZS) -- ja niitä on paljon:

Taivas on täynnä satelliitteja

Hauskin on kuitenkin AR-näyttötila, jossa satelliitit voi "nähdä" suoraan kameran läpi:

Satelliitit taivaalla.

Kun pyörittelee kameran näyttöä eri suuntiin huomaa, miten valtaosa satelliiteista on lähellä eteläistä horisonttia. Pohjoisen taivaalla niitä on paljon vähemmän, mikä heikentää paikannustarkkuutta. 

Ohjelmasta on muuten hankala sanoa mitään, sillä ohjeteksti tulee nettisivulta ja se on vain japaniksi.

Jos paikannus vielä jatkossa sekoilee, ehkä tämä ohjelma paljastaa lisätietoja. 

tiistai 9. kesäkuuta 2020

Mavic Air 2 kuvanlaatu

Mavic Air 2 keulalla roikkuu gimbalin varassa 48 megapikselin kamera. Sen valovoima on F2,8 ja kennon koko puoli tuumaa. Puolen tuuman kenno on vähän isompi kuin älypuhelimissa mutta selvästi pienempi kuin oikeissa kameroissa, täyden kennon järjestelmäkameroista puhumattakaan.
Kamera lähikuvassa.
Minkälaista kuvaa tällä siis saa? Asetuksista voi valita tarkkuudeksi jo 12 tai 48 megapikseliä, jpegin lisäksi kuvat saa ulos dng-muodossa. Resoluutiot ovat 4:3 suhteessa helpot muistaa: 4000x3000 ja 8000x6000 pikseliä. Jpeg-tiedostokoot ovat noin 6 Mt ja 20 Mt, dng-tiedostot vastaavasti noin 18 Mt ja 94 Mt.

Kuvasuhteeksi voi valita myös 16:9, mutta siinä ei ole mitään järkeä, koska silloin drone vain leikkaa ylä- ja alareunat pois, ja kuvan mitaksi tulee 4000x2250 pikseliä.

Aukko on kiinteä 2,8 eikä sitä voi himmentää. Neljän millimetrin polttoväli vastaa kinokoossa 24 milliä.

Hyvässä valossa drone tuottaa mainioita jpeg-tiedostoja.
ISO 110, F 2,8, 1/1250 s.
Kuvat eivät ole yliterävöityjä, kuten kaikissa älypuhelimissa. Ne kestävät jopa suurentamista, mutta kuvanlaatu 100 % koossa paljastaa armottomasti kennon pienuuden.
Pieni kenno on pieni kenno, ei siitä mihinkään pääse.
Valotusautomatiikka toimii mainiosti.
ISO 100, F 2,8, 1/160 s.
Smart-kuvaustila matkii hdr-kuvausta, mikä toimii joissakin tilanteissa:
Smart-kuvaustila.
Seuraava testikuva on 12 megapikselin tarkkuudella:
ISO 100, F 2,8, 1/1000 s. -0,3 EV
Ruutukaappaus 100 % kuvasta:
100 % rajaus 12 megapikselin kuvasta.
48 megapikselin versiossa 100 % rajaus näyttää kohinaa jo ISO 100 -arvollakin:
100 % ruutukaappaus 48 megapikselin jpeg-kuvasta
Rajaus verrattuna alkuperäiseen:
100 % rajaus 48 megapikselin kuvasta.
Toinen testikuva on Tapiolasta, tässä 12 megapikselin versio kokonaisuudessaan:
ISO 100, F 2,8, 1/1600 s, -0,3 EV
12 ja 48 megapikselin kuvien rajaukset rinnakkain:
48 tuo vain vähän lisää tarkkuutta 12:een verrattuna.
Vaikka pikselimäärä nelinkertaistuu, kuvan tarkkuus paranee vain marginaalisesti. Parhaiten sen huomaa vasemman reunan stadium-kyltissä.

Mavicin raw-kuvaus tuottaa yllätyksen. Säätövaraa on enemmän kuin jpeg-kuvissa, mutta ei lähellekään järjestelmäkameran tasoa. Säätö auttaa pelastamaan esimerkiksi puhkipalaneita valkoisia seiniä. Drone tekee näköjään myös pienen geometriakorjauksen jpeg-kuviin.

Yllätys on siinä, ettei dng ole todellista kennolta tulevaa dataa, vaan drone prosessoi tiedoston valmiiksi. Raw-kuvien värit ovat suorstaan ylikylläisiä verrattuna aidompiin jpeg-kuvien väreihin. Smart-asetus vaikuttaa myös dng-kuvaan.

Dronen oma jpeg-käsittely on optimoitu niin hyväksi, että kuvan säätäminen raw-versiosta yhtä hyväksi vaatii paljon työtä -- ja jopa värikylläisyyden vähentämistä. Jos jaksaa nähdä vaivaa, 48 megan dng-kuvasta voi pienentämällä saada hieman lisää erottelukykyä, mutta useimmiten se ei maksa vaivaa.

perjantai 5. kesäkuuta 2020

Mavic Air 2 drone, käytännön kokemuksia

DJI julkisti keväällä uuden mallin suositusta Mavic Air -dronesta. Jätin varauksen Verkkokauppa.comiin ja sain omani toukokuun puolivälissä. Laite on ilmeisen suosittu, sillä erä meni nopeasti ja nyt kuukautta myöhemmin toimitusaika näyttää olevan muutamia viikkoja.

Mavic Air 2 on nimensä mukaisesti parannettu versio alkuperäisestä nelikopterista. Kamera on aiempaa kehittyneempi, automatiikka ja ohjain samoin. Älypuhelin sijoitetaan nyt telineeseen ohjaimen päälle ja yhdistetään ohjaimeen usb-piuhalla. Paketissa on johdosta myös Apple-versio.

Mavic Air 2 -ohjain.
Tässä onkin jo ensimmäinen havainto: läpällisellä suojakuorella varustettua puhelinta ei voi käyttää, koska läppä estää puhelimen kiinnittämisen.

Dronen kuljettaminen on helppoa, koska roottorien varret taittuvat rungon suuntaisiksi. Siinä on kuitenkin oma vaivansa ja roottorit pitää asettaa pareittain oikeisiin kulmiin. Pieni harmaa rinkula kertoo, kumpaan haaraan kukin roottori kuuluu.

Roottori, jossa on harmaa merkintä, tulee harmaaseen tukivarteen.
DJI:n pitkä kokemus alalta ja markkinajohtajan asema näkyvät käytännöllisinä yksityiskohtina. Esimerkiksi roottorin lavat ovat kääntyviä, joten pieni osuma esteeseen ei vielä riko niitä. Roottoreita mainostetaan hiljaisina, ääni muistuttaa äkäistä kärpäsparvea. Laitteen noustua ylemmäksi ääni häviää täysin.

Ohjaimen molemmat vivut voidaan irrottaa ja sijoittaa kuljetuksen ajaksi ohjaimessa oleviin koteloihin.

Akku on irrotettava ja siinä on neliportainen varaustilan näyttö. Lentoaika on noin 30 minuuttia, tarkka aika näkyy lennon aikana puhelimen näytöltä kamerakuvan päällä. Kun akku alkaa loppua, laite palaa automaattisesti lähtöpaikkaansa. Sitä ennen se nousee ennalta-asetettuun estekorkeuteen, jotta matka ei pääty puuhun tai rakennuksen seinään, ja laskeutuu sieltä alas.

Dronessa on anturit pohjassa, edessä ja takana. Niiden pitäisi estää osuminen ilmassa oleviin esteisiin, mutta siihen ei voi koskaan täysin luottaa. Ilmajohdot ja puun oksat saattavat katkaista lennon lyhyeen, ellei pilotti ole tarkkana.

Niin, lentäminen on itse asiassa yllättävän vaikeaa. Ensin oppii tarkkailemaan tuulta, ilmatilaa ja laskeutumispaikkaa. Lennon aikana oppii tähystämään vähän joka suuntaan. Kamera lähettää koko ajan videokuvaa, mutta sen varaan ei voi lentoa laskea. Ohjeet sallivat lennättämisen vain jatkuvalla näköyhteydellä droneen. Sekin on vaikeaa, sillä pienikokoinen laite häviää hetkessä taivaan sineen tai lennättäjä erehtyy pitämään lintua omana laitteenaan. Lukulaseja käyttävän on vaikea seurata samanaikaisesti sekä lähellä olevaa puhelimen näyttöä että kaukana lentävää laitetta.

Kannattaa pysyä selvillä myös ilmansuunnista ja maamerkeistä, ilman niitä ei ole ihan helppoa löytää takaisin lähtöpaikalle laskeutumaan. Onneksi ohjaimessa on RTH-näppäin (return to home)!

Lähtöpaikaksi kannattaa valita päällystetty jalkakäytävä tai pysäköintialue. Siinä on tosin vaara, että pyöräilijät yllättävät lentäjän takaapäin kun eivät ymmärrä, miksi joku seisoo keskellä tietä taivaalle katsellen. Tämä on ollut vähällä pari kertaa yllättää itseni.

Järjestelmässä on siis kolme osaa: drone, ohjain ja älypuhelin. Kaikki pitää ladata erikseen, joskin DJI:n laturissa on kaapeli sekä akun että ohjaimen yhtäaikaiselle lataukselle. Lentoonlähtö vaatii laitteiden käynnistämisen, puhelimen kiinnittämisen, ohjelman käynnistämisen ja sieltä ohjausohjelman avaamisen. Näppärämpää tietysti olisi, jos ohjain ja näyttö olisivat samassa, mutta se lisäisi kustannuksia.

Mavic Air 2 on hinnoiteltu 849 euroon, mikä on käytännössä sama kuin edellisessä mallissa. Lisäakku maksaa 115,90 euroa, eli ei mitään halpaa huvia. Akkujen ym. hinta onkin noin kolmanneksen edellistä mallia kalliimpi, joten Fly more -paketti saattaa olla kannattava hankinta.

Akku kestää puoli tuntia lentoa, mutta sen lataaminen lähes 1,5 tuntia. Lisäakkuja siis tarvitaan, koska käytännön syistä lentoakkua ei halua päästää ihan nolliin, ja ilmassa aika kuluu yllättävän nopeasti. Muutaman kerran olen havainnut minuuttinäytön epätarkaksi: lennon alussa se näyttää vain runsasta 20 minuuttia, mutta myöhemmin aika kasvaa.

Gimbaalin suojakupu.
Kuljetuksen ajaksi herkkä kamerayksikkö kannattaa suojata kuvulla, jonka paikalleen asettaminen ei ole ihan yksinkertaista. Sen poistaminen ennen lentoa tuppaa unohtumaan. Onneksi hallintaohjelma antaa tästä ilmoituksen "gimbal stuck".

Ilmassa leijuva Mavic Air 2 on vaikuttava näky.
Mavic Air 2 ilmassa.
Tuulesta huolimatta se pysyy hyvin paikallaan ja ampaisee taivaalle pystysuoraan kuin raketti. Kauko-ohjaimessa on kolme nopeusvaihtoa: tripod, normal ja sport. Turvallisuussyistä kannattaa pysytellä hitaassa asetuksessa, jotta törmäysanturit ehtivät reagoida. Esteitä havaitessaan puhelimesta kuuluu varoitusääni, joten kaiutin kannattaa pitää päällä lennon aikana.

Gimbaalit ovat tehokkaita, mutta silti minuun tekee aina vaikutuksen nähdä, miten kuva pysyy aivan täydellisesti paikallaan, vaikka drone taivaan tuulessa hieman keinuisikin. Enpä haluaisi olla se insinööri, joka on laskenut Laplace-muunnoksilla tarvittavat säätöfunktiot! Mutta pääasia, että ne toimivat.

Osa hallintaohjelmasta on yhä kiinaksi. 
Älypuhelimessa toimiva hallintaohjelma on varsin selkeä ja helppokäyttöinen.

Hallintaohjelma näyttää lentokorkeuden, pysty- ja vaakanopeuden ym. tietoja.
Se sisältää myös kartan, johon on merkitty erilaisia varoitusalueita. Helsingin Munkkiniemen kieltoaluetta ei kuitenkaan ollut kartalla, joten pelkkään ohjelmaan ei voi luottaa. Tampereen Ratinan stadionin kohdalta löytyi rajoitusalue, jota ilmailukartta ei tuntenut.

Laitteen kuvausominaisuuksissa lisää seuraavassa kirjoituksessa. 

tiistai 2. kesäkuuta 2020

DosBox ajaa nostalgisia ohjelmia ja pelejä

Uusissa Windows-versioissa ei enää ole DOS-tilaa lainkaan, joten vanhat merkkipohjaiset sovellukset jäävät ajamatta. Unohduksen yöhön ne kuuluvatkin. Moni voi tosin kaivata vanhoja legendaardisia pc-pelejä tai haluta pelastaa Wordstarilla tai WordPerfectillä aikoinaan tekemänsä opinnäytetyön.

DosBox on emulaattoriohjelma, joka herättää vanhat dos-ohjelmat henkiin. Toinen vaihtoehto on asentaa aito DOS virtuaalikoneeseen (esim. VirtualBox), mutta DosBox on helpompi eikä tarvitse alkuperäisiä dos-levykkeitä.

Käynnistyksen jälkeen.
DosBox käynnistyy Z-asemalta ja ajaa AUTOEXEC.BATin, joka asettaa SoundBlaster-äänikortin keskeytyksen (I), osoitteen (A), DMA-kanavan (1) jne. Tästä jo näkee, mihin tekijät ovat ohjelman ajatelleet. CD-ROMin käyttöönotto voi vaatia pientä viilausta, mutta onnistuu sekin.

DosBox ei ole aito DOS, joten kaikki wanhat komennot eivät toimi. Emuloitu MEM näyttää muistialueiden määrät:

Muistialueet.
Vau, täysi 640 kilon perusmuisti (lähes), ylämuistialueen lohko ja peräti 15 megatavua jatko- ja EMS-muisteja. Harvalla oli tällaista arsenaalia omassa koneessaan.

Ajamani nopeustestin perusteella DosBox vastasi 10-12 MHz 286-prosessoria. Mutta mikä parasta: nopeutta voi nostaa tai laskea F11- ja F12-toimintonäppäimillä. Kuin ohjelmallinen turboruuvi, joka nosti nopeuden muutamalla painalluksella yli kolminkertaiseksi. Olisipa tällainen turbo ollut koneissa silloin DOS-aikanakin!

DOS-asema täytyy kiinnittää emulaattoriin mount-komennolla. Esimerkiksi MOUNT C C:\user\matti\dosprogs kytkee hakemiston näkymään DOSille kiintolevynä, jonka päähakemisto alkaa ko. tasolta.

Sopivasti levyltä löytyi Flight Simulator 4 dos-versio jostain 1980-luvun lopulta. Se lähti käyntiin heittämällä:
Flight Simulator FS4 valmiina nousuun.
Tietenkin emulaattorilla voi ajaa myös vanhoja hyötyohjelmia, kuten vanhaa Wordstaria.

Wordstar 3.4 jostain 80-luvulta tämäkin.
DosBox on saatavilla myös Mac-koneille. MacOS-versiosta riippuen sen asennus antaa erilaisia suojausvaroituksia, mutta kunhan lataa ohjelman suoraan sivustolta, mitään vaaraa ei pitäisi olla.

Käytännön ongelmana on tilde-merkki, jonka MOUNT-komento tarvitsee viittauksena kotihakemistoon. Sekin löytyy oikealla näppäinyhdistelmällä: KEYB SU -komennon jälkeen oikea Alt, ¨ ja lopuksi vielä välilyönti.

Ja näin saadaan käyntiin todellinen sekasikiö: WordPerfect 5.0 kaikkine ohjauskoodeineen 2020-luvun graafisessa ympäristössä!
Merkkipohjainen WordPerfect 5.0 Macissä
Jos ei muuta, niin WP:n ajaminen Macissä opettaa havainnollisesti, miten paljon tietotekniikka on kehittynyt muutamassa vuosikymmenessä. Tämän päivän sovellusten graafisuus ja käytön helppous ovat aivan eri tasolla kuin kultaisella DOS-aikakaudella 1980- ja 1990-luvuilla.

perjantai 15. toukokuuta 2020

Tekoäly arvioi kuvien laatua

Everypixel Aesthetics arvioi valokuvien laatua, jotta se voisi löytää esimerkiksi parhaat koirakuvat kuvapankin tuhansien joukosta. Ohjelma ei arvioi kuvan hienoutta sinänsä vaan lähinnä teknistä laatua - eli kuten palvelu itse sanoo:

"...service doesn't measure the coolness or beauty of a person or any object in a photo. It cares only about technical parts like brightness, contrast, noise and so on."

Kokeillaanpa.

Heti aluksi tulee vastaan kuva, jota ohjelma itse pitää oikein laadukkaana:

Töölö HDR 92,3 %
Kokeillaan toisella HDR-kuvalla, mutta nyt tulos onkin jotain ihan muuta:

Öinen kaupunki vain 13,5 %
Entä koira?

Koirakuvan laatu 67 %
Huomaa, että ohjelma tunnistaa koiran rodunkin oikein. Viulistin kuva saa laaduksi 53 %:

Viulisti 52,8 %
Suurkirkko kesäillassa ei tee vaikutusta, mutta ohjelma löytää kuvasta ristin ja tunnistaa sen katedraaliksi:

Iltainen suurkirkko vain 1,4 %
Kesäinen autokuva saa surkean arvion:

Kesäautot vain 0,1 %
Pelkät jalat on kuvana hauska ja tekoäly tunnistaa, että ne kuuluvat naiselle. Ohjelma antaa tylyn arvion: nolla pistettä:

Pelkät jalat 0,0 %.
Sambaaja saa vain vähän paremman arvion:

Samba 5,7 %
Yllättäen tavanomainen rullalautailijan kuva saa huippuarvion:

Rullalautailija 96,5 %
Palataan vielä testikuvana olleeseen koiraan:

Peruskuva vain 0,2 %
Kohinan pitäisi laskea kuvan pisteitä, mutta käykin päinvastoin. Keinotekoisesti lisätty 20 % kohina ei vielä tuota muutosta, mutta 40 % saa jo paremmat pisteet ja 60 % kohina ylittää jo 10 % rajan:

Kohiseva koirakuva 10,5 %
Kun kohinaa yhä vain lisätään, 80 % tasolla kuva saa vielä paremman arvion:

Kohiseva koirakuva 28,8 %
Loppupäätelmä on selvä: Everypixel tunnistaa erinomaisesti kuvassa näkyviä asioita ja hahmoja, mutta kuvien laatumittarina se on surkea. Ilmeisesti kohina saa algoritmin niin sekaisin, että se suorastaan pitää kohinalla sotketuista kuvista. 

Ihmisellä on vielä etulyöntiasema kuvia arvioitaessa. Onneksi.

keskiviikko 13. toukokuuta 2020

Jääkaapin data Googlesta Pythonilla Exceliin

Kirjoitin työläästä muunnoksesta, jonka älyjääkaapin Google Docsiin lähettämä tiedostomuoto tarvitsi ennen kuin Excel tunnisti sen aikamerkinnät oikein. Kommenteissa nimimerkki Zarr antoi hyvän vinkin: Pythonissa on valmiina aikamerkintöjen muuntamiseen sopivat työkalut.

Totta! Siispä töihin.

Ongelma on siinä, että älyjääkaappi lähettää tiedot oven avauksista hassussa formaatissa ja tallentaa ne IFTTT-rajapinnan kautta Google Docsin laskentamalliin näin:

Google Docsin laskentamallin alkua.
Googlen omilla toiminnoilla datan saa haettua omalle levylle Excel-tiedostoon, mutta päivämäärien muokkaus Excelin ymmärtämään muotoon on työlästä.

Niinpä tallensin datan Excelistä tekstitiedostoon:

Data tekstimuodossa 12h kellonaikoina.
Sen jälkeen tein pienen Python-ohjelman. Siitä on lukuisia vuosia, kun olen viimeksi ohjelmoinut mitään, saati opetellut kokonaan uutta kieltä. Python on kuitenkin suosittu ja sillä on helppo tehdä asioita, jotka muilla olisivat erittäin työläitä. Tässä auttavat kirjastot, joita on saatavissa liki jokaiseen tarkoitukseen. Käytin itse openpyxl-nimistä kirjastoa, jonka avulla oma Python-sovellus pystyy lukemaan ja kirjoittamaan Excel-tiedostoja. Se avaa hienoja mahdollisuuksia tiedostomassojen analysointiin tai esimerkiksi lokitiedostojen esiprosessointiin, kuten tässä.

Python-ohjelma mahtuu muutamaan riviin.
Valmiiden kirjastojen ansiosta omasta ohjelmasta tulee yksinkertainen: se vain lukee tekstimuotoisen lokitiedoston, poimii riveiltä jääkaapin tuottaman aikaleiman ja palastelee sen uudelleen, sekä kirjoittaa lopputuloksen Excel-tiedostoon. Ohjelman rivejä voisi vielä vähentää tekemällä kaiken yhdessä luupissa.

Dokumentaation mukaan %d lukee päivän numeron silloin, kun alle kymmenen numeroita edeltää nolla (01, 02, 03...) ja että normipäiviin (1, 2, 3...) pitäisi käyttää muotoa %-d. Ilmeisesti dokumentaatio on vanhentunut, sillä %-d ei toiminut ja %d tuotti oikeat numerot kaikilla päivämäärillä.

Muutaman sekunnin ajo ja C:\temp-hakemistoon syntyy tiedosto ajat.xlsx. Onneksi Excel ymmärtää suoraan Pythonin käyttämää formaattia, joten aikaleimaa ei tarvitse muokata merkkijonona ennen kirjoittamista, mutta tarvittaessa sekin olisi helppo koodata.

Data Excelissä sen ymmärtämässä päiväysformaatissa 24h kellonaikoina.
Kouluissa olisi hyvä opettaa kaikille ohjelmoinnin perusteet, sillä se auttaa ymmärtämään koneiden ja tietojärjestelmien toimintaa -- ja varsinkin toimimattomuutta. Pienellä vaivalla apuohjelmista ja omatekoisista pikkuohjelmista saa itselleen tehokkaita työkaluja, kuten tässä.

tiistai 12. toukokuuta 2020

Tekoäly arvioi ministerien ikää kuvan perusteella

Edellisen kirjoituksen aiheena oli Everypixel-palvelu, jossa on monia kiinnostavia ominaisuuksia. Yksi niistä arvioi kuvassa näkyvän ihmisen ikää. Microsoftilla on vastaava palvelu osoitteessa https://www.how-old.net/.

Iän arviointi on yksinkertaista: annetaan tekoälylle valtava joukko ihmisten kasvokuvia ja niihin liittyvä ikätieto. Koneoppiminen muodostaa neuroverkon, joka tunnistaa kasvoista piirteitä ja yhdistää ne ikätietoon. Sitten vain kokeilemaan, millaisia arvioita uudet henkilöt saavat.

Kokeilua varten etsin netistä kuvia, joissa esiintyy hallituksen maailmankuulu naisviisikko. Todelliset iät ovat (syntymävuoden mukaan laskettuna suhteessa vuoteen 2020): Sanna Marin (35), Katri Kulmuni (33), Li Andersson (33), Maria Ohisalo (35) sekä Ann-Maja Henriksson (56).

Ensimmäinen testikuva:
Ensimmäinen testikuva
Tässä kuvassa Andersson 31, Kulmuni 29, Marin 30 ja Ohisalo 36.

Toinen testikuva.
Tässä Andersson 29, Kulmuni 29, Marin 35, Henriksson 44 ja Ohisalo 33.

Kolmas testikuva.
Kolmannessa kuvassa Andersson 32, Kulmuni 30, Marin 31 ja Ohisalo 32.

Neljäs testikuva.
Neljännessä kuvassa Andersson 24, Kulmuni 27, Marin 34, Henriksson 52 ja Ohisalo 33.

Kaikki neljä lehtikuvaa ovat ilmeisesti samasta tilaisuudesta Smolnasta. Siksi viides kuva on kiinnostava, koska siinä ministerit poseeraavat omissa passikuvissaan.

Viides testikuva.
Tässä Andersson 27, Kulmuni 20, Marin 30, Henriksson 49 ja Ohisalo 31.

Viiden testikuvan keskiarvot ovat Andersson 29, Kulmuni 27, Marin 32, Henriksson (3 kuvaa) 48 ja Ohisalo 33. Tarkimmin ohjelma arvioi Ohisalon iän, sillä keskiarvo 33 on kaksi vuotta todellista ikää nuorempi. Tekoälyn mielestä Ohisalo on siten eniten ikäisensä näköinen. Pahimmin pieleen menee Henriksson, jonka kohdalla 48,3 vuoden keskiarvo on peräti 7,7 vuotta todellista nuorempi. Marinilla ero on kolme vuotta, Anderssonilla 4,4 ja Kulmunilla 6 vuotta.

Eniten hajontaa on Henrikssonin ja Kulmunin kuvissa, vähiten Ohisalon kuvissa. Kulmunin tulosta selittää viimeinen kuva, jonka tekoäly arvioi peräti 13 vuotta todellista ikää nuoremmaksi.

Merkillepantavaa on, että vaikka neljä ensimmäistä kuvaa on otettu samassa tilanteessa, arviot kunkin ministerin iästä vaihtelevat 7, 3, 5, 8 ja 5 vuoden verran. Kuvakulma, valaistus ja ilmeisesti myös kuvatiedoston koko ja laatu vaikuttavat analyysin tulokseen.

Koiran tunnistaminen kuvasta on helppoa, iän arviointi on paljon vaikeampaa. Todennäköisesti tekoälyn ikäarvio olisi tarkempi kuin mihin suurin osa oikeista ihmisistä pystyy.

Osui silmään sopivasti Iltalehden juttu, jossa Tia Andersson valittaa muiden arvioivan hänet kymmenen vuotta todellista, pian 40 vuoden ikää nuoremmaksi. Jokainen voi tehdä oman arvionsa, mutta Microsoft arvioi iäksi 39 (täsmälleen oikein) ja Everypixel 45 vuotta.
Everypixel arvioi iäksi 45 vuotta.
Ehkä puolueeton algoritmi osaa sittenkin arvioida ihmisten ikää paremmin kuin me ihmiset itse?

Lopuksi tuttu varoituksen sana: jos olet huolissasi tietosuojasta, ei kannata lähettää omaa kuvaansa arvioitavaksi. Koskaan ei voi tietää, mihin käyttöön kuvat päätyvät.

Lisäys 13.5.2020: Joku ehti jo kritisoida iän päättelemistä kuvan perusteella. Päivän Hesari antaa esimerkin käyttökohteista: "Vastaavasti yhtiön järjestelmä voisi tunnistaa, kuinka paljon ihmisjoukossa on esimerkiksi yli 70-vuotiaita. Näin saataisiin nopeasti tietoa, että viruksen kannalta riskiryhmään kuuluvia on kerääntynyt johonkin enemmän kuin suositellaan." Käyttökohteita siis löytyy, eri asia on, miten luotettavasti yli 70-vuotiaiden tunnistus toimisi ja miten perusteltua se olisi edes ajatuksen tasolla.

maanantai 11. toukokuuta 2020

Tekoäly tunnistaa kuvia osa 3: Everypixel tunnistaa mainiosti

Microsoft, Google ja Apple tunnistavat kuvia muiden lisätoimintoina. Entä yritys, joka on erikoistunut valokuvien tunnistamiseen (ja jopa kuvan hienouden arviointiin, mutta siitä toisessa kirjoituksessa)?

Everypixel on kehittänyt kuvantunnistusta esimerkiksi kuvapankkien käyttöön. Koneellinen arviointi säästää aikaa ja auttaa ohittamaan huonoimmat kuvat.

Sivulla https://www.everypixel.com/aesthetics on palvelu, johon voi lähettää omia kuvia sen analysoitavaksi. Peruskuva ei tuota palvelulle ongelmia:

Everypixel tunnistaa jopa koiran rodun.
Toisella sivulla nähdään kunkin luokituksen varmuustaso:

Luokitusten varmuustaso: 98 % varmuudella tämä on koira.
Luokitukset ovat lähes kaikki oikeita, tosin koira ei varsinaisesti ole pentu (22 %) eikä istu (23 %). Everypixel tunnistaa koiran jopa pelkästä kirsusta (varmuus 92 %):

Kirsu paljastaa koiran.
Silmä riittää jopa rodun tunnistamiseen:

Silmä paljastaa koiran ja jopa noutajan.
Toinen käännettyjen palojen testikuva on ohjelmalle liikaa, mutta toinen samantapainen riitti tunnistukseen. Tässä se epäonnistunut versio:

Mikä tässä on kirjekuorta ja bisnestä?
16 ruudun palapeli ei hämää tunnistusta:

Koira 16 palassa.
36 palasta tunnistetaan vielä koira, mutta 49 palaa on jo tekoälyllekin liikaa:

Eläin ja lemmikki se on, mutta muusta ei ole tietoa.
Silmien ja kirsun peittäminen tuottaa yllättäviä tuloksia:

Nyt menee liian vaikeaksi!
Tekoälyn mielestä kuvassa on kyllä koira, mutta se taitaa olla pelkkä arvaus, sillä muut luokitukset ovat internet (!), länsimainen valkoihoinen ihminen, ihmiskäsi, miehet sekä terveydenhuolto ja lääkitys.

Rodun tunnistus on yllättävän hyvä:

German Shepherd - yes!
Hieman yllättäviä luokituksia ovat kodittomuus ja koditon eläin. Tätä koiraa ei liioin voi sanoa enää pennuksi.

Tunnistus yllättää pomeraanin kohdalla:

Pomeranian - indeed!
Osumatarkkuus ei kuitenkaan ole ihan niin hyvä kuin aluksi vaikuttaa, sillä myös toinen koira tuottaa saman tuloksen:

Tämä ei kylläkään ole pomeraani.
Everypixel osoittaa, että parhaimmillaan tekoälyn tunnistuskyky yllättää -- mutta silti taustalta paistaa tekoälyn matematiikka, eikä virheiltä voida välttyä.