Rhode Islandilla Yhdysvalloissa sijaitsevan Brownin yliopiston tutkijat ovat kehittäneet algoritmin, joka muuttaa älypuhelimen tai digikameran laadukkaaksi 3D-skanneriksi. Käytännössä innovaatio tuo 3D-skannauksen kaikkien ulottuville.
Tähän asti esineiden kolmiulotteinen skannaaminen on onnistunut vain kalliilla laitteilla. Edulliset laitteet taas eivät kykene suuriresoluutioisiin kuviin, joten niiden tuottamat kuvat eivät käy sovelluksiin, joissa yksityiskohdat ovat tärkeitä.
3D-skannerit perustuvat yleensä valon heijastamiseen pinnalle ja siitä heijastuvan kuvion perusteella muodostetaan malli pinnan muodosta. Tämä edellyttää, että valoa lähettävä projektori ja kamera ovat täydellisesti synkronoituja, mikä vaatii erikoistunutta ja kallista laitteistoa.
Brownin yliopiston tutkijat kehittivät uuden algoritmin, joka ei edellytä synkronointia projektorin ja kameran välillä. Tämän ansiosta kuvauksessa voidaan käyttää edullista kameraa.
Kameran pitää ainoastaan kyetä tallentamaan pakkaamattomia kuvia purskemoodilla eli useita peräkkäisiä kuvia sekunnissa. Tähän kykenevät monet digikamerat ja yhä useammat älypuhelimet.
3D-kuvien ottamisessa ongelma ilman synkronointia on se, että projektori voi siirtyä yhdestä kuviosta toiseen aamaan aikaan, kun kuva on tallentumassa kameraan. Sen takia tallennettu kuva voi muodostua kahden tai useamman kuvion sekoitukseksi.
Toinen ongelma on se, että useimmat nykyaikaiset digikamerat käyttävät pyörivää suljinmekanismia. Sen sijaan, että ne tallentaisivat koko kuvan yhdellä otoksella, kamera skannaa kuvattavan alueen joko vaaka- tai pystysuorassa. Kuva lähetetään kameran muistiin yksi pikselirivi kerrallaan. Tämän takia kuvan osia siepataan hieman eri aikaan, mikä voi myös johtaa sekoittuneisiin kuvioihin.
Tutkijoiden kehittämä algoritmi syntesoi kuvat – yhden jokaisesta projisoidusta kuviosta – ikään kuin käytössä olisi järjestelmä, jossa projektori ja kamera olisivat synkronissa. Kameran tallennettua kuvien sarjan algoritmi osaa kalibroida kuvien ajoituksen käyttämällä pojisoituun kuvioon sisällytettyä binääri-informaatiota.
Tämän jälkeen algoritmi käy kuvat läpi pikseli kerrallaan ja kokoaa niistä uuden jakson, joka tallentaa jokaisen kuvion kokonaisuudessaan. Kun koko jakso on koostettu, voidaan standardia 3D-mallinnusalgoritmia käyttää luomaan yksi 3D-kuva halutusta objektista tai tilasta.