Aihearkisto: Digitalisaatio

Virtuaalitodellisuuden mahdollisuudet opetuksessa ja yritystoiminnassa

Kävimme Digi2Market hankkeen tiimoilta Oulussa Virtual Reality Nordic 2020 tapahtumassa tutustumassa virtuaalitodellisuuden (VR) tarjoamiin mahdollisuuksiin erityisesti opetuksessa ja yritystoiminnassa. Esitykset tarjosivat erilaisia näkökulmia sekä esimerkkejä aiheeseen.

Virtuaalitodellisuus opetuksessa ja kirurgiassa

Virtuaaliteknologiaa on hyödynnetty kirurgiassa ja siihen liittyvässä opetuksessa ja harjoittelussa. Reaalimaailman esimerkkien simuloinnilla päästään lähemmäs todellista leikkauskokemusta. Varjo on luonut yhdet kehittyneemmistä virtuaalilaseista ammattilaisten käyttöön, joissa hyödynnetään muun muussa silmän liikkeen seurantaan liittyvää teknologiaa. Kirurgiassa painottuu erityisesti suuren resoluution virtuaalilasit, jotta työskentely leikkauksissa olisi mahdollisimman tarkkaa. Tutkimuksen mukaan kirurgit, jotka ovat harjoitelleet leikkausta virtuaaliteknologian avulla ovat pystyneet menemään laboratorioympäristöön minimaalisella ohjeistuksella. Varjon virtuaalilaseja tarkemmin esitteli Kim Härkönen.

Virtuaaliteknologian mahdollisuuksia opetuksessa esitteli Pekka Ouli. Esimerkiksi uusille opiskelijoille järjestettävät kampuskierrokset voidaan korvata virtuaalisilla kampuskierroksilla. Virtuaalikierrokset voidaan toteuttaa 360 kuvalla ja käyttäen esimerkiksi thinklink alustaa.

XR teknologialla lisäarvoa yrityksen toimintaan

Pääpuhujana toiminut Sami Heinonen Zoanilta esitteli kuinka luoda todellista liikearvoa immersiivisillä teknologioilla. Immersiivisillä teknologioilla tarkoitetaan XR teknologioita, joita ovat muun muassa virtuaalitodellisuuden (VR) ja lisätyn todellisuuden (AR) teknologiat. Virtuaalitodellisuutta voidaan hyödyntää esimerkiksi opetuksessa, koulutuksessa, yritysten markkinoinnissa, matkustuksessa, vähittäiskaupassa ja virtuaaliostoksien tekemisessä.

Miten yrityksissä löydetään virtuaaliteknologian käyttökohteet?

Virtuaaliteknologian käyttöönoton suunnittelu lähtee liikkeelle yrityksen strategiasta, arvoista ja visiosta. Näistä lähtökohdista määritellään virtuaaliteknologian käyttöönotolle tavoitteet ja käyttökohteet sekä toimenpiteet, kuinka nämä tavoitteet saavutetaan. Suunniteltaessa tulee miettiä, mitä lisäarvoa virtuaaliteknologia tarjoaa yritykselle.

Tavoitteita virtuaaliteknologian käytölle yrityksissä voi löytyä esimerkiksi HR:stä, hallituksen työskentelystä, tuotekehityksestä, asiakaspalvelusta tai myynnistä ja markkinoinnista. Tavoitteita voi olla esimerkiksi työntekijöiden nopeampi perehdyttäminen, hallituksen matkakulujen vähentäminen, kustannustehokkaampi tuotesuunnittelu, parempi asiakaskokemus asiakaspalvelussa tai myynnissä ja markkinoinnissa tehokkaampi myyntiputki.

Ratkaisuja näihin tavoitteisiin voi olla esimerkiksi virtuaalikierros uusille työntekijöille, virtuaaliympäristöjen käyttäminen hallituksen kokouksiin, tuotetestaukset virtuaaliympäristössä, etätuen tarjoaminen käyttäen virtuaalista assistenttia, kuluttajien sitouttaminen aikaisemmassa vaiheessa hyödyntäen immersiivistä sisältöä.

Suunnitteluprosessi

XR teknologian käyttöönoton suunnitteluprosessi lähtee liikkeelle tavoitteiden suunnittelusta. Seuraavaksi ideoidaan XR teknologialla toteutettavat kohteet ja priorisoidaan ne liiketoiminnan tavoitteiden mukaisesti. Teknologialla toteutetaan prototyyppi ja laaditaan mittarit, joita seurataan suhteessa alussa määriteltyihin tavoitteisiin. Toteutuksesta kerätään dataa ja sitä arvioidaan liiketoiminnan kannalta. Datan perusteella tehdään liiketoimintaan vaikuttavat päätökset.

Etäyhteistyötä virtuaalitodellisuudessa

Etäyhteistyö mahdollisuuksia virtuaalitodellisuudessa esitteli Jonas Rajanto. Virtuaalitodellisuudessa voidaan järjestää esimerkiksi etäkokouksia tai tapaamisia asiakkaiden kanssa. Kokouksissa toimitaan virtuaalihahmojen eli avattarien välityksellä ja kommunikoidaan osallistujien kanssa kuten normaalissa elämässä.

Etuna perinteisiin videokokouksiin on se, että kaikki osallistujat voidaan nähdä samassa tilassa virtuaalilasien välityksellä. Avattarien eleet ja ilmeet välittyvät myös kuuntelijoille. Virtuaalikokouksissa häiritsevää voi olla alkeelliset hahmot ja niiden kankeat ja robottimaiset liikkeet. Haasteita voi tulla vastaan verkon hidastelusta ja virtuaalitekniikan käyttäminen voi vaatia tehokkaammat kokouslaitteet. Kokouksien osalta virtuaalilasien ja ohjelmistojen käyttöönotto vaatii enemmän ennakkosuunnittelua ja testausta kuin perinteisten videoneuvotteluohjelmistojen ja laitteiden.

Virtuaalimaailmoja on hyödynnetty jo pitkään opetuksessa. Esimerkiksi Second Life on virtuaalimaailma, jossa on pidetty virtuaalisia luentoja ja ohjauksia. Virtuaalilasien käyttäminen tuo tähän vielä uuden ulottuvuuden, jolloin opetustilanteesta saadaan luotua aidompi ja vaikuttavampi kokemus.

Kirjoittaja: lehtori, Mikko Hyttinen

Yhtä aikaa läsnä verkossa

Etä- ja verkko-opiskelun suosio on kasvanut huomattavasti viimevuosina ja nyt poikkeustilan päällä ollessa entisestään. Luokkahuoneessa tapahtuva, perinteinen opetus on nyt estynyt. Siirtyminen etä- ja verkko-opiskeluun on Kareliassa mahdollista muun muassa Moodle-oppimisympäristöä käyttäen.

Karelian oppimisympäristöt tuovat vapautta, mutta samalla myös vastuuta jokaiselle niiden käyttäjälle ja osaamista kartuttavalle. Opiskelijat ovat vastuussa oman opiskeluaikataulun järjestämisestä monessa kohtaa enemmän kuin luokkahuoneessa, oppilaitoksen tiloissa opiskeltaessa. Vastuunotto omista opinnoista ja myös vertaisten edistymisestä opinnoissa kasvaa yksilötasolla huomattavasti. Etä- ja verkko-opiskelussa oma-aloitteisuus ja itsenäinen vastuunotto korostuu. Hatunnosto jokaiselle opiskelijalle sekä opettajalle eri digivälineiden pikaisesta haltuunotosta.

Karelian Moodle-oppimisympäristössä Collaboraten kautta etä- ja verkko-opetus toteutuu näin:

Ennakkoon:

  1. Luo opintojakson Moodle-tilaan Collaborate-aktiviteetti.
  2. Tiedota opiskelijoille, että opetus toteutetaan Collaboraten kautta.

Online:

  1. Avaa esitettävät materiaalit (dokumentit / verkkosivut / jne.) Firefox-selaimeen.
  2. Avaa tietokoneelta Chrome-selain ja sitä kautta Moodle ja siellä oleva Collaborate kurssihuone.
  3. PowerPoint-esityksen tai PDF-dokumentin jakaminen:
    • Collaborate kurssihuoneen avautuduttua avaa näytön oikeasta alakulmasta ”Collaborate-paneeli / Open collaborate panel”.
    • Valitse ”Jaa sisältöä / Share content”.
    • Valitse ”Jaa tiedostoja / Share Files”.
    • Valitse ”Lisää tiedostoja / Add Files”  ja lataa koneeltasi haluamasi tiedosto.
    • Tiedoston latauduttua, valitse oikeasta alakulmasta ”Jaa nyt / Share Now”.
  4. Laita mikrofoni päälle Collaborate ikkunan alaosasta.

Tarvittaessa opettajan voit tallentaa verkkosession. Ohjeet Moodlen opettajan ohjeessa.

Lopettaaksesi Collaboraten sulje kaikki ikkunat. Collaborate sulkeutuu automaattisesti samalla.

Opettaja voi halutessaan käyttää myös muita reaaliaikaisia yhteyksiä. Osa opettajista hyödyntää AC:ta tai Teams:a opetuksessaan.

Kirjoittajat monimuotopedagogiikan suunnittelija Maarit Ignatius ja opetusteknologia-asiantuntija Minna Rokkila

Digiaikanakin tarvitaan… yhteisiä tiloja oppimiseen!

Karelia–ammattikorkeakoulun oppimisympäristöjen kehittämishanke ja siihen liittyvä pedagogisen kehittämisen hanke tarjosivat iskuryhmällemme (Pilvi Dufva, Mikko Hyttinen, Päivi Sihvo, Marika Turkia ja minä) syyn pakata laukkumme ja suunnata askeleet kohti Hollantia ja Delftin teknillistä yliopistoa. Tavoitteenamme oli tutustua korkeakoulun digitaalisten opetusmateriaalien tuotantoympäristöihin sekä Teaching Lab –toimintaan, joka keskittyy opettajien pedagogisen osaamisen kehittämiseen.

TU Delft onkin maailman ykkösiä MOOC–tuotannossa. Kurssituotannossa he eivät enää yritä kilpailla määrällä, vaan löytää aiheet, joille on suuri kysyntä. Tavoitteena on koulutuksen vaikuttavuuden kehittäminen ajatuksella “Educate the World”. TU Delftin suosituin kurssi liittyykin tällä hetkellä sähköautoihin – toki robotisaatio ja kiertotalouskin ovat vahvasti esillä. Kurssitarjonnasta esimerkki.

MOOC–tuotantoa on opettajan tukena toteuttamassa yhdeksän henkilön tuotantotiimi, josta löytyy asiantuntemusta mm. käsikirjoittamiseen, tekijänoikeuksiin ja videomateriaalien tuotantoon. Digitaalisen materiaalin tuotantotiloja löytyy aina ammattimaisista studioista yksinkertaisiin ja helppokäyttöisiin tee-se-itse-studioihin, joissa opettaja voi huolehtia nauhoituksesta yhtä nappia painamalla. Toki yliopistolta löytyvät myös laajat AR/VR-tekniikan tuotantotilat.

Hienojen digitaalisten tuotantotilojen sijaan ehkä suurimman vaikutuksen itseeni tekivät kampuksen monipuoliset oppimisympäristöt. Erilaisia tiloja löytyi runsaasti niin yksinopiskeluun kuin ryhmätöihinkin eri puolilta kampusta – ja ne olivat aivan täynnä opiskelijoita. Monimuoto-opetukseen panostaminen on nostanut pinnalle tarpeen erilaisten fyysisten oppimisympäristöjen rakentamiseen. Digitaalisuus ei suinkaan tarkoita, että fyysisten oppimisympäristöjen tarve katoaa: sen sijaan tarvitaan monipuolisia ja viihtyisiä tiloja yksin ja yhdessä oppimiseen!

Kirjoittaja Koulutuksen kehittämispäällikkö, Marjo Nenonen

Kesätentit EXAM:ssa

EXAM:n kesätentit

Kesäkuussa 2019 Kareliassa siirryttiin uusinta- ja korotustenttien osalta EXAM-sähköiseen tenttijärjestelmään. Käytännössä tämä tarkoitti sitä, että EXAM:in Tenttitupa Tikkarinteellä oli auki läpi kesän arkipäivisin. Opiskelijat sopivat keväällä opettajien kanssa, mikäli halusivat tenttiä kesän aikana uusinta- ja korotustenttejä. Tentin julkaisun jälkeen opiskelijoilla oli mahdollista tenttiä haluamanaan ajankohtana.

Kesän aikana (kesä-, heinä- ja elokuussa) suoritettiin yhteensä 81 tenttiä. Tällä ajanjaksolla ilmeni vain muutamia yksittäisiä ongelmatapauksia, mitkä saatiin ratkottua joko tentin alkaessa tai heti sen jälkeen. Kesällä 2018 suoritettiin vain satunnaisia tenttejä, eikä Tenttitupa ollut lainkaan auki heinäkuussa. Alla kesän 2018 sekä 2019 kesätenttimäärät.

Kesätentit EXAM:ssa

Kesätentit EXAM:ssa 2018 sekä 2019

EXAM:in kesätentit toivat opiskelijoille lisää valinnan varaa tenttimisen ajankohtiin. Järjestelmällistä palautetta ei kesän tenttijöiltä kerätty, mutta muutama tenttijä kommentoi tämän tavan antaneen enemmän vaihtoehtoja ja mahdollisuuksia tenttimiseen.

Minna Rokkila, EXAM-pääkäyttäjä

Kohtio 2019 – Opetusteknologia-alan konferenssi

Kohtio 2019 on uusi opetusteknologia-alan konferenssi: ”Suomen paras opetusteknologia-alan konferenssi. Kohtio on yhtä kuin Koulutus, Oppijat, Henkilöstö, Teknologia, Interaktiivisuus ja Osaaminen. Olemme ainutlaatuinen sekoitus kaikkea sitä mikä on kivaa ja kaunista, koodia ja koulutusta.”

Kontio 2019 konferenssi järjestettiin ensimmäisen kerran huhtikuussa Hämeenlinnan Verkatehtaalla. Kohtio oli kaksipäiväinen konferenssi, jossa pääosassa olivat opetusalan asiantuntijat ja kehittäjät. Puheenvuoroissa tarjottiin opetusalalle ajankohtaista tietoa opetusteknologiasta ja osaamisen kehittämisestä.

Kohtio2019

Osallistuin Kohtioon Karelia amk:n edustajana ja pääsin pitämään puheenvuoron aiheesta ”Automatisoitujen oppimispolkujen luonti Moodlessa”. Tämä aihe herätti runsaasti mielenkiintoa osallistujissa ja sali olikin täynnä viimeistä paikkaa myöten, osa jopa kääntyi ovelta pois. Esityksessä keskityin melko pitkälti Moodlessa olevaan PLD-työkaluun, jonka avulla voidaan luoda automaattisia sääntöjä, ohjata opiskelijan etenemistä Moodle-kurssilla automaattisesti sekä lähettää automatisoituja viestejä sekä opiskelijoille että opettajille. Puheenvuoron aikana kävimme hyvää keskustelua ja sain mukaan muutamia ideoita jatkokehitettäväksi.

Runsaasta ohjelmasta esille nousivat parhaiten ne puheenvuorot, joissa esiteltiin konkreettisesti tehtyjä ratkaisuja.

Savonia amk:n sairaanhoitajakoulutuksessa on hyödynnetty interaktiivisia videoita, jotka on tuotettu H5P-työkalulla Moodleen. Opiskelijat tutustuvat ennen laboraatioita aiheeseen, jolloin se on jo heille tuttu käytännön harjoitusten alkaessa.

EU:n saavutettavuusdirektiivi (2016/2102) on uusi haaste suomalaisille korkeakouluille. Se vaatii korkeakouluja tekemään digitaaliset palvelut saavutettaviksi sekä valvomaan saavutettavuuden toteutumista. Saavutettavuus digitaalisessa ympäristössä ei tarkoita pelkästään teknologisia ratkaisuja vaan myös sisältöä, pedagogisia ratkaisuja ja viestintää. Saavutettavuus-työpajassa pääsimme tutustumaan tulevaan direktiiviin konkreettisesti ja saimme runsaasti tärkeää tietoa valmistautumiseen tämän osalta.

Mitä saavutettavuus tarkoittaa digitaalisissa ympäristöissä?

Mitä saavutettavuus tarkoittaa digitaalisissa ympäristöissä?

Tuleviin Kohtio-konferensseihin suosittelen osallistumista sekä opetus-, tuki- että johdon henkilöstölle!

Kirjoittaja
Minna Rokkila

Mitä Peppi tuo tullessaan?

Peppi – Winha – SoleOPS – muut

Winhan ja SoleOPSin jäädessä pois käytöstä korvaavaksi järjestelmäksi tulee Peppi. Järjestelmää kehittää Peppi-konsortio, joka on koulutusorganisaatioiden yhteenliittymä. Pepissä on tällä hetkellä mukana noin 80 prosenttia Suomen korkeakouluista. Ammattikorkeakoulujen FTE-opiskelijoista 94% ja yliopistojen FTE-opiskelijoista 80% on erilaisten Peppi-palveluiden piirissä. Tarkempaa tietoa konsortiosta löydettävissä konsortion sivuilta:
http://www.peppi-konsortio.fi/

Pepin työpöydät

 Pepin perusajatuksena on se, että käyttäjä saa erilaisten roolimäärityksien kautta käyttöönsä tarvittavat työpöydät. Näin ollen esim. lehtori / tuntiopettaja / yliopettaja nimikkeellä olevat henkilöt saavat kirjautumisen kautta automaattisesti käyttöönsä opettajan työpöydän. Samoin opiskelija saa käyttöönsä automaattisti opiskelijan työpöydän. Näiden nk. automaattisten roolien lisäksi on olemassa myös manuaalisesti tehtäviä rooleja, joilla annetaan oikeuksia tehdä tiettyjä yksilöidympiä toimenpiteitä Pepissä.

Pepin työpöydät ja palvelut

Pepin liitännäiset

Peppi itsessään on suljettu järjestelmä ja vaatii voimassa olevat käyttäjätunnukset. Jotta opetukseen liittyviä asioita saadaan näkyville myös ulospäin, tarvitaan liitännäisiä. Karelian osalta tällä hetkellä hankittuja liitännäisiä ovat:

Metropolia:                          Opinto-opas
https://opiskelija.testipeppi.karelia.csc.fi/opinto-opas/public/

Eduix:                                 Lukkarikone
https://opiskelija.testipeppi.karelia.csc.fi/lukkarikone/

Eduix:                                 Koulutushaku
https://opiskelija.testipeppi.karelia.csc.fi/koulutushaku/

Edellä olevista linkeistä avautuvat järjestelmät ovat vielä tällä hetkellä ulkoasultaan ja sisällöltään keskeneräisiä ja nämä asiat päivittyvät sitä mukaan, kun toimittajat saavat tehtyä päivityksiä.

Nykyisten käytössä olevien ”liitännäisten” säilyminen

Meerkado säilyy ainakin toistaiseksi käytössä.
SoleOPSiin kytketyn sähköisen asioinnin jatkuvuus on vielä keskustelujen alla ja lopullinen päätös asiassa tulee myöhemmin.
TimeEdit jää pois käytöstä 2019 vuoden lopulla ja sen sijalle tulee Pepin oma resurssisuunnittelu sekä edellä kuvattu Lukkarikone.

 Pepin koulutukset

 Jotta Pepin filosofia avautuisi riittävällä tarkkuudella, järjestetään eri käyttäjäryhmille koulutusta kevään ja syksyn 2019 aikana.

  • Koulutuspäälliköiden osalta koulutukset aloitettiin tammikuussa ja niitä jatketaan syksyllä 2019.
  • Opiskelijapalveluiden osalta koulutukset aloitettiin maaliskuussa ja ne jatkuvat osaltaan syksyyn 2019.
  • Opettajien osalta ensimmäiset koulutukset pidetään toukokuussa ja niitä jatketaan elokuussa.
  • Opiskelijaohjauksen osalta koulutukset alkavat kesäkuussa ja niitä jatketaan syksyllä 2019.
  • Muun henkilökunnan osalta koulutuksia toteutetaan tarpeen mukaan syksyllä 2019.
  • Opiskelijoiden osalta Peppiin tutustuminen aloitetaan syksyllä 2019, kun opiskelijat aloittavat uuden lukuvuoden.

Koulutuksien tarkemmat ajankohdat on löydettävistä Karelian intrasta:
https://intranet.karelia.fi/koulutus/OHOSprojektin%20aineisto/Materiaalia/Koulutukset.xlsx

Peppiin siirtyminen

Karelian osalta lopullinen siirtyminen Peppiin tapahtuu lokakuun lopulla ja marraskuun alussa 2019. Ensimmäisessä vaiheessa opetuksen suunnittelupuoli siirretään lopulliseen tuotantoympäristöön ja sen jälkeen tapahtuu opiskelijahallinnon siirtyminen.

Tuotantoon siirtyminen aiheuttaa katkon järjestelmien käytössä, mutta katson pituutta ei tässä vaiheessa pystytä vielä arvioimaan.

Peppiin siirtymisen yhteydessä huomioitavia seikkoja

Seuraavassa on lueteltu muutamia muutoksia, jotka tulee huomioida Peppiin siirtymisen yhteydessä:

  • Opintojen arvioinnit tulee huolehtia ajoillaan nykyiseen Winha -järjestelmään. Tämä tulee huomioida ennen kaikkea kesäopintojen osalta ja myös kesällä tehtävien harjoittelujen osalta.
  • Kevään 2020 opintojaksojen toteutuksille ilmoittautumiset joudutaan aikaistamaan nykyisestä lokakuusta niin, että ilmoittautumisaika on
    • 15.9. – 6.10.2019

Kirjoittaja:
Jukka Asp
OHOS-projekti, Peppi-pääkäyttäjä

SMErec: Virtuaalihologrammien tallentamisesta ja visualisoinnista

Aiemmissa blogimerkinnöissäni olen käsitellyt yleisesti syvyyskameroita, sekä niiden avulla rakennettavaa testiympäristöä virtuaalihologrammien tallennukseen. Sittemmin kiinnostusta hologrammiteknologian hyödyntämiseen on tullut esille myös opetusteknologian puolella (Hyttinen & Hatakka, 2019). Tässä blogimerkinnässäni käsittelen teknisestä näkökulmasta, miten virtuaalihologrammeja on mahdollista tallentaa ja esittää, kun käytettynä menetelmänä on jokaisen kameran erilliseen syvyystietoon perustuvien pistepilvien piirtäminen.  

Virtuaalihologrammeilla tarkoitetaan tässä yhteydessä kolmiulotteista, animoitua esitystä kohteesta, jota voi tarkastella monesta eri suunnasta. Virtuaalihologrammi tehdään tallentamalla useammalla syvyyskameralla kuva- ja syvyystieto esityksestä, joka puolestaan toistetaan erityisen sovelluksen avulla. Sovellus siirtää datan visualisointisovellukselle, josta voi tarkastella tallennettua kohdetta. Sinällään holotallenteen tekeminen ei eroa normaalin videon tekemisestä. Kamerat kytketään päälle, ja esiintyjä pääsee vauhtiin. Ero onkin lähinnä tekninen – kohteesta tallentuu samalla useampi kuvakulma syvyystietoineen.  

Miten tallennus tapahtuu?

Wärtsilä-kampuksen fyysisten laboratoriotilojen rajoitteiden vuoksi käytämme toistaiseksi virtuaalihologrammien kuvaamiseen pelkästään kahta Intel Realsense-syvyyskameraa. Intel Realsensekirjaston mukana tulevat apuohjelmat mahdollistavat kunkin kameran tuottaman pistepilven tallentamisen ROS bag-muotoon. Valitettavasti bag-muoto on optimoimaton, ja tallennettu pistepilvitieto pelkästään yhden kameran osalta vaatii noin 100 megatavua  / sekunti, joka tuottaa varsin reippaan kokoisia tiedostoja. Mikäli kameroita käytetäisiin useampia, vaadittu tallennustila kerrotaan kameroiden lukumäärällä.

Mikäli tallennustilavaatimus tuntuu hankalalta hahmottaa, niin kaksituntinen elokuva HD 1080p-tarkkuudella vie noin kaksi gigatavua pakattuna h264-koodekilla. Kaksituntinen holotallenne kahdella kameralla bag-muodossa veisi puolestaan 1440 gigatavua, eli 1.4 teratavua.

Kokovaatimusten takia kehitin uuden ratkaisun pistepilvitiedon tallentamiseen. Rajoitin tallennettavan metatiedon määrää, sekä sovelsin pakkausalgoritmeja siten, että saamme pienennettyä tallennettavan tilan määrää kahdessadasosaan alkuperäiseen nähden. Tällöin kolmen minuutin esitys pakattuna vie noin 65-90 megatavua, mikä voi todeta olevan hyvä tulos, sillä kaksituntinen holotallenne veisi enää noin 2.4 gigatavua. Ratkaisun osaltaan mahdollisti myös syvyyssuunnassa kuvattavan alueen sekä syvyystiedon tarkkuuden rajoittaminen, sillä tallenteilla kuvattavien kohteiden vaatima alue ei ole kovin suuri.

Tallennus tapahtuu kahdessa vaiheessa. Ensimmäisessä vaiheessa ohjelmisto tallentaa kameroiden tuottaman tiedon, sekä mikrofonin kaappaaman äänen levylle. Toisessa vaiheessa yhdistetään ääni-, kuva- ja syvyystieto yhdeksi virtuaalihologrammivideoksi. Sen jälkeen video onkin mahdollista toistaa 3D-mallina sitä tukevan erityisen visualisointiohjelmiston avulla.  

Miten visualisointi tapahtuu?

Virtuaalihologrammeja toistava visualisointiohjelmisto rakentaa katsojalle näkyvän 3D-pistepilven hologrammivideoon tallennetun datan perusteella. Virtuaalihologrammien tarkastelua varten käytämme Meta 2 AR–laseja, joille kehitetään sovelluksia Unity-pelimoottorilla. Virtuaalihologrammeja on toki mahdollista tarkastella myös VR-lasien avulla. 

Pistepilvien osien kalibrointi ja visualisointiparametrien asettaminen tehdään Unityssä.

Pistepilven tehokas renderöinti vaatii erikseen kehitetyn ratkaisun. Tätä varten olen rakentanut GPU-kiihdytetyn version Intel Realsense2-kirjaston visualisointilogiikasta. Realsense2-kirjasto on julkaistu avoimena lähdekoodina Apache License 2.0:n alla, joten siinä käytetyt ratkaisut ovat kehittäjien hyödynnettävissä. 

Visualisointitoteutusta tehdessä on kuitenkin huomioita muutamia seikkoja.  Jokaisen kameran tuottama syvyystieto on riippuvainen laitteen tallennuskomponenttien ominaisuuksista. Tämä tarkoittaa käytännössä sitä, että kukin hologrammitallenne vaatii myös tietyt ulkoiset kamerakohtaiset parametrit 3D-pistepilven tuottamiseen. Tallenteen tekemisen yhteydessä on siis ladattavia metatietoa laitteesta, jotta hologrammit piirtyvät oikein, ja nämä arvot on ladattava visualisointiohjelmistoon. 

Myös kameroiden sijoittelu ja orientaatio vaikuttaa hologrammien piirtämiseen. Tämän vuoksi visualisointiohjelmisto on kalibroitava kameroiden fyysisen sijoittelun mukaiseksi, että kaikki hologrammin osat toistuvat oikein suhteessa toisiinsa. Kalibrointi on toistaiseksi vielä tehtävä käsin, ja se on varsin aikaa vievää. Kun jatkossa käytämme useampaa kameraa, kalibrointi on rakennettava siten, että se on mahdollista tehdä vastaavilla menetelmillä, kuin mitä useamman kameran liikkeenkaappauslaitteistojen yhteydessäkin.  

Miten tästä eteenpäin?

Hologrammi ei ole täydellinen 3D-malli kohteesta, sillä yksinkertaistetun 3D-mallin muodostaminen pistepilvestä vaatisi enemmän kuva- ja syvyystiedon ohjelmallista käsittelyä. Esimerkiksi Microsoftin Holoportaatio-teknologia todennäköisesti tekee kuvanlaadun parantamiseksi vaativampaa laskentaa, mutta meidän tapauksessamme siihen ei ole syytä ryhtyä. Ratkaisumme on kuvanlaadultaan ehkä heikompi, sillä tuotetussa 3D-mallissa on vielä aukkoja joissain kohdin. Mutta toisaalta, ratkaisu on varsin suorituskykyinen ja toteuttavissa pienemmilläkin laitteistopanostuksilla, sekä lopputulos onnistuu välittämään esiintyjän kehonkielen katsojalle 3D-mallin puutteista huolimatta. 

Koska vaativimmat tekniset ongelmat tallennuksen ja visualisoinnin osalta on ratkaistu, pääsemmekin SMErec-hankkeen puitteissa esittelemään uutta teknologiaa Taitaja 2019-messuilla Joensuu Areenalla toukokuussa 2019. Lisäksi virtuaalihologrammien soveltamiselle opetusteknologian parissa on luotu pohjatyö, joten tuloksilla on mahdollisuus jäädä henkiin Kareliassa myös SMErec-hankkeen päättymisen jälkeen.

Kirjoittaja Anssi Gröhn, tietojenkäsittelyn lehtori

Oppimisanalytiikka – merkityksellistä aktiivisuuden visualisointia

Edellisessä oppimisanalytiikkaa käsittelevässä blogimerkinnässäni mainitsin, että esittelen vielä lisäksi erilaisen aktiivisuuskaavion toteutusta, jolla saadaan seurattua opiskelijan edistymistä vaikkapa tietyn aihealueen parissa. Tässä merkinnässä avaan sen taustoja sekä teknistä toteutusta.

Miksi tämä visualisointi tarvitaan?

Ohjelmointi I –opintojaksolle oli tarpeen saada selville opiskelijan opiskelumotivaatio, suhteutettuna ryhmän motivaatioon. Suoraviivaisin lähestymistapa, joka antaa edes jotain osviittaa aiheesta, on Moodlen aktiviteettiraportti.  Sen tarjoama tieto on yleinen ryhmän aktiivisuus kurssin aikana. Se ei kohdistu tiettyyn aihealueeseen, emmekä voi määrittää milloin kukakin opiskelijoista on keskittynyt mihinkin. Lisäksi jälkikäteen tarkasteltuna Moodlen tuottama aktiivisuuskaavion saa näyttämään dataa pelkästään aina tietystä takarajasta tähän päivään saakka, joten sen visuaalinen ulosanti ei ole niin hyvä. Yhtenä rajoituksena voi ajatella olevan myös Moodlen hakuparametri – kaukaisin hakuaika aktiivisuudelle on kaksi vuotta.

Moodlen aktiivisuuskaavio. Sen saa auki kohdasta Raportit -> Tilasto.

Ratkaisun hahmottaminen

Ensimmäiseksi lähdimme liikkeelle hahmottelemalla tulevan käyttöliittymä paperille. Tämän pohjalta keskusteltiin tarpeellisista ja tarpeettomista ominaisuuksista. Havaittiin, että jos on mahdollista valita pelkästään merkityksellisiä tapahtumia, saamme parempaa tietoa aktiivisuudesta. Tätä varten hahmottelimme valintalaatikot käyrään panoksen antaville materiaaleille ja aktiviteeteille.

Karkea käyttöliittymähahmotelma syksyltä 2018

Alustavan hahmottelun jälkeen oli syytä tarkastella mitä on tehtävissä. Esimerkiksi arvosanojen näkyminen käyrällä ei ainakaan tällä tavalla esitettynä tuottanut mitään lisäarvoa, joten ne jätettiin pois. Lisäksi kaikkien tehtävien hakeminen datasta osoittautui hieman hankalaksi tuossa vaiheessa, joten rajasimme ne pois. Lisäksi verbeiksi valittiin oletuksena yleiset selkeää aktiivisuutta ilmaisevat, kuten lähettää, kommentoida, päivittää ja vastata, sekä näiden eri ilmenemistavat xAPI-rekisterissä.

Seuraavaksi voimmekin siirtyä itse kyselyn toteuttamiseen! Asioiden yksinkertaisemiseksi jätämme käsittelemättä web-teknologioilla tapahtuvan tiedon hakemiseen sekä tietoliikenteen suojaukseen liittyvät osat, ja keskitymme itse visualisoinnissa tarvittavaan dataan. Kysely suoritetaan MongoDB-tietokantaan.

Miten data noudetaan tietovarastosta?

Aloitamme kyselyn suorittavan palvelimen puolelta. Visualisoitavaa dataa varten tarvitsemme siis kurssin tapahtumien päiväysten ääripäät, sillä on turhaa visualisoida ajanhetkiä, milloin mitään ei tapahdu. Tätä varten käytämme MongoDB:n aggregaatio-ominaisuutta.

Ensimmäiseksi rajaamme tapahtumat tietyn opintojakson sisälle.

Statements.aggregate([{ 
    $match : { 
      "statement.context.contextActivities.grouping.0.id" : courseUrl
    } 
  },

Tämän jälkeen ryhmittelemme datan uudelleen tapahtumien aikaleimojen perusteella, ja laskemme niistä minimi- sekä maksimiarvon.

 { 
    $group : { 
      _id : "$statement.context.contextActivities.grouping.0.id", 
      maxDate: { $max: "$statement.timestamp"}, 
      minDate: { $min: "$statement.timestamp"} 
    } 
  }],

Palautuneen datan perusteella voimme laskea montako päivää kurssi on kestänyt, ja toteuttaa sen avulla päiväkohtaisten pistekeskiarvojen laskennan.

Seuraavaksi haemme uuden datajoukon. Selvitämme kurssille osallistuvat opiskelijat rajaamalla distinct-hakumääreellä vain yksilölliset nimet annetun kurssin sisältä.

  Statements.distinct('statement.actor.name', { 
    "statement.context.contextActivities.grouping.0.id" : courseUrl 
  },

Kun data on palautunut, laskemme kunkin opiskelijan osalta erillisen summataulukon kertyneille pisteille.

        for( var a=0;a<numStudents;a++)
        {
          var student = {
            name: studentRows[a],
            scores: []
          };
          for(var sc=0;sc<numCourseDays;sc++)  student.scores[sc]=0;
          studentsTmp[student.name] = student;
        }

Itse pisteet saamme seuraavalla kyselyllä, jossa hyväksymme mukaan palautettavaan tietuejoukkoon kaikki aktiivista tekemistä määrittävät verbit. Haku rajatataan  tietyn opintojakson sisälle, ja tuotetun joukon alkiot sisältävät palautuessaan ainoastaan aikaleiman sekä opiskelijan nimen. Tässä kyselyssä on huomioitava, että käytetyt xAPI-verbit ovat järjestelmäkohtaisia, joten on aina syytä varmistaa, miten data on kuvattu eri tietovarastoissa – samaa voidaan ilmaista joskus usemmallakin tavalla.

  Statements.find( 
    { "$and": [ 
      {  "verbs": { $in : [ 
        "http://adlnet.gov/expapi/verbs/scored",
        "http://activitystrea.ms/schema/1.0/join",
        "http://id.tincanapi.com/verb/replied",
        "http://activitystrea.ms/schema/1.0/start",
        "http://activitystrea.ms/schema/1.0/submit",
        "http://activitystrea.ms/schema/1.0/follow",
        "http://activitystrea.ms/schema/1.0/update",
        "http://activitystrea.ms/schema/1.0/attach",
        "http://activitystrea.ms/schema/1.0/complete"
      ]}},
      { "statement.context.contextActivities.grouping.0.id" : courseUrl }}
   ]  
}, 
{    'statement.timestamp': 1,    'statement.actor.name': 1,  } 
)

Nyt kun kasassa on riittävät tiedot, voimme laskea pistekertymän kullekin opiskelijalle päiväkohtaisesti. Käymme läpi edellisestä kyselystä palautuneet tietueet, ja lisäämme kunkin opiskelijan tapahtumapäivälle pisteisiin yhden.

for(var s=0;s<scores.length;s++) 
{ 
   var scoreDay = moment(scores[s].statement.timestamp,"YYYY-MM-DDTHH:mmZ").startOf('day'); 
   if ( scoreDay.isSameOrAfter(start) && scoreDay.isBefore(end)){ 
     var numDaysSinceBeginning = scoreDay.diff(start, 'days'); 
     var studentName = scores[s].statement.actor.name; 
     studentsTmp[studentName].scores[numDaysSinceBeginning] += 1; 
   } 
}

Seuraavaksi laskemme pistekertymistä kumulatiivisen version siten, että aiempien päivien kertyneet pisteet lisätään nykyisen päivän pisteisiin. Samalla laskemme pisteiden summat päiväkohtaisiin keskiarvoihin.

          for(var property in studentsTmp ) 
          { 
            if ( studentsTmp.hasOwnProperty(property)){ 
              if ( studentsTmp[property].scores.length != numCourseDays ) 
                     averageScores[0] += studentsTmp[property].scores[0]; 
                     for(var d=1;d<studentsTmp[property].scores.length;d++) 
                     { 
                       studentsTmp[property].scores[d] += studentsTmp[property].scores[d-1];
                       averageScores[d] += studentsTmp[property].scores[d]; 
                   } 
              } 
          } 

Päiväkohtaiset pistesummat on jaettava vielä opiskelijoiden lukumäärällä keskiarvon laskemiseksi.

for( var day=0;day<averageScores.length;day++) 
{ 
   averageScores[day] /= numStudents; 
}

Tämän jälkeen edessä on ainoastaan palautettavan datan muotoilu selaimen koodissa.

Miten data saadaan selaimeen?

Selaimessa kyselyn lähettäminen tapahtuu seuraavalla tavalla. Muodostamme POST-metodikutsun, jonka avulla lähetetään haettavan opintojakson tunnus kyselyä varten. D3.js-kirjaston mukana tulevan asynkronisen palvelupyyntötoiminnon avulla saamme sen aikaan helposti. Kyselyssä rajaavana parametrina on kurssin URL-osoite, jota aiemmin kuvattu palvelinsovelluksen logiikka käyttää tulosjoukon rajaamisessa.

var url2 = '<PALVELUN URL-OSOITE>; 
d3.json(url2, { 
         method: "POST", 
         body: JSON.stringify({ course: url}), 
         headers: { 
             'Content-Type': 'application/json; charset=utf-8' 
         } 
}).then( function (json) {

then-osuus ottaa vastaan palautuvan datan käsittelyfunktion. Käsittelyfunktiossa ensimmäisenä muodostamme dataan erillisen date-kentän, johon liitämme tekstimuotoisesta aikaleimasta luodun javascriptin päiväysobjektin. Se antaa mahdollisuuden vertailla datan aikaleimoja helposti myöhemmin.

for(var x=0;x<json.length;x++) {
   var parse = d3.timeParse("%Y-%m-%dT%H:%MZ");
   json[x]["date"] = parse(json[x].timestamp); 
}

Tässä yhteydessä otamme käyttöön crossfilter-kirjaston. Muodostamme ensiksi dimensiot (x-akselille tuotettavat arvot) opiskelijoiden nimelle ja päiväykselle. Sen jälkeen laskemme ryhmittelysummat (y-akselille tuotettavat arvot) opiskelijoiden pisteille, sekä ryhmän pisteiden keskiarvoille päiväkohtaisesti.

  var ndx = crossfilter(json); 
  var studentDim = ndx.dimension(d => d.name ); 
  var dayDim = ndx.dimension(function (d) { return d3.timeDay(d.date); }); 
  var scoreDim = ndx.dimension(d => d.value ); 
  var scoresGroup = dayDim.group().reduceSum(d => d.value ); 
  var avgGroup    = dayDim.group().reduceSum(d => d.avg );

Minimi- ja maksimipäiväykset, sekä maksimipisteet saadaan datasta irti seuraavasti:

         var maxDate = d3.timeDay(dayDim.top(1)[0].date);
         var minDate = d3.timeDay(dayDim.bottom(1)[0].date);
         var scoreGroup = scoreDim.group();
         var maxScore = scoreDim.top(1)[0].value;

Opiskelijoiden valinta toteutetaan valikkorakenteella, joka onnistuu dc.js-kirjastolla seuraavasti. Valikkorakennetta voi ajatella ikään kuin omana “kaavionaan”, jossa tehdyt valinnat heijastuvat kaikkiin muihinkin dc.js:n NDX-kontekstilla luotuihin kaavioihin.  Valikon yhteyteen rakennamme toiminnallisuuden, jolla voimme piirtää valitun opiskelijan nimen kaavion oikeaan yläreunaan. Tämä auttaa tarkastelijaa hahmottamaan paremmin kenen datasta onkaan kyse.

var studentMenu = 
    dc.selectMenu('#dc-student-menu') 
      .dimension(studentDim) 
      .group(studentDim.group()) 
      .controlsUseVisibility(true) 
      .on('filtered.monitor', function(chart,filter) { 
          if (filter === null ) $('#name').html("Kaikki opiskelijat"); 
          else $('#name').html(filter);                                        
       });

Palkkikaavio päiväkohtaisia pisteitä varten saadaan aikaan seuraavasti.

var barChart = dc.barChart("#dc-bar-hits"); 
barChart 
  .width(990)
  .height(60) 
  .elasticY(true)
  .elasticX(true)
  .dimension(dayDim)
  .group(scoresGroup)
  .mouseZoomable(true)
  .x(d3.scaleTime().domain([minDate,maxDate]))
  .brushOn(true)
  .xUnits(d3.timeDays);

Koska haluamme esittää kaksi erillistä käyrää samassa kaaviossa, tarvitsemme dc.js:n yhdistelmäkaavion. Sen perusasetuksilla määritämme muodostettavan kaavion koon ja akseleiden ohjetekstit. Lisäksi ns. ohjauskaavioksi (.rangeChart) määritämme aiemmin luodun palkkikaavion, että voimme järkevästä valita tietyn aikavälin tarkasteltavaksi tarkemmin.

var compositeChart = dc.compositeChart('#dc-line-progress');
compositeChart
   .width(990)
   .height(400)
   .mouseZoomable(true)
   .dimension(dayDim)
   .legend(dc.legend().x(80).y(20).itemHeight(13).gap(5))
   .elasticY(true)
   .x(d3.scaleTime().domain([minDate,maxDate]))
   .xAxisLabel("Kurssin päivät")
   .yAxisLabel("Kertyneet pisteet")
   .rangeChart(barChart) 

Varsinaiset käyrät tuottavat kaaviot muodostetaan compose-funktiolle välitetyn javascript-taulukon avulla. Kaksi erillistä käyrää saadaan esittämään eri tietoja group-määrityksen avulla. Ensimmäinen esittää valittujen opiskelijoiden pisteiden summaa päiväkohtaisesti (scoresGroup), ja tähän vaikuttaa valikon avulla määritelty opiskelijakohtainen suodatus.

 .compose([ 
     dc.lineChart(compositeChart) 
        .width(990) 
        .height(120)
        .transitionDuration(1000) 
        .dimension(dayDim) 
        .x(d3.scaleTime().domain([minDate,maxDate])) 
        .round(d3.timeDay.round) 
        .xUnits(d3.timeDays) 
        .elasticY(true) 
        .colors('#f77') 
        .group(scoresGroup, "Saavutetut pisteet") 
        .brushOn(false),

Toinen käyristä esittää puolestaan koko ryhmän keskiarvoa. Tähän dataan opiskelijakohtainen suodatus ei vaikuta, sillä jokaiseen opiskelijatietueeseen on tallennettu myös kunkin päivän ryhmäkohtainen keskiarvo.

dc.lineChart(compositeChart) 
    .width(990)
    .height(120) 
    .transitionDuration(1000) 
    .dimension(dayDim) 
    .x(d3.scaleTime().domain([minDate,maxDate])) 
    .elasticY(true) 
    .colors('#ffff00') 
    .group(avgGroup, "Ryhmän keskimää¤rin saavuttamat pisteet") 
    .brushOn(false) 
]) 
.brushOn(false);

Lopuksi käskytämme kaikkia kaavioita piirtymään.

dc.renderAll(); 
}); 
} 

Miten visualisointi auttaa hahmottamaan edistymistä paremmin?

Kun tarkastelemme vaikkapa Moodlen tuottamaa kaaviota ja uutta aktiivisuuskaaviota samasta datasta, on havaittavissa, että jälkimmäinen osoittaa selkeästi paremmin suvanto- ja edistymiskohdat. Ryhmän keskiarvo on kaaviossa esitetty keltaisella värillä, ja opiskelijan puolestaan punaisella. Esimerkiksi tässä tapauksessa voidaan tulkita, että eräs opiskelija on suorittanut kurssia neljän erillisen rupeaman aikana, jotka ovat olleet kestoltaan lyhyitä, mutta niiden aikana on tapahtunut paljon. Kaaviosta paljastuu myös, että opiskelija on työskennellyt hieman jälkijättöisesti ryhmän keskimääräiseen työskentelyyn verrattuna, mutta lopuksi saavuttanut saman aktiivisuustason kuin ryhmä keskimäärin.

Myöhässä tehneen opiskelijan kaavio

Valittaessa erään toisen opiskelijan data tarkasteltavaksi, havaitsemme että tilanne on hieman toisin, ja aktiivisuutta on ollut ryhmän keskiarvoa enemmän heti alusta lähtien. Kuitenkin tällä opiskelijalla on ollut keskivaiheilla pitkiä jaksoja, jolloin aktiivisuus ei ole ollut niin suurta – nähtävästi alussa kiritty matka on antanut tilaa edetä loput kurssista rauhallisemmin.

Alussa aktiivisemman opiskelijan kaavio

Kun edellä olevaa kaaviota verrataan mitä Moodlesta oletuksena saadaan esille, voimme todeta yllä olevan kaavion olevan paljon yksityiskohtaisempi, sekä täsmällisempi. Moodlen kaavio ei erottele opiskelijoita, vaan näyttää kunkin päivän osalta roolikohtaiset tapahtumat yleisesti.  Uusista kaavioista saa tietoa ohjauksen tueksi, ja on helposti nähtävissä, milloin on syytä selvittää opiskelijalta tämän aktiivisuuden laskun syyt.

Mitä tämän jälkeen?

Mikäli samaan kaavioon liitetään eri aihe-alueisiin liittyviä aktiivisuuskäyriä, voimme nähdä entistä paremmin substanssikohtaista etenemistä. Silloin ohjauksen kohdistaminen on yhä täsmällisempää, ja se avaa myös (ainakin teoreettisen) mahdollisuuden niputtaa saman aihealueen parissa ohjausta tarvitsevat samalle ohjauskerralle.

Lisäksi erilaisten tapahtumien pistemäärän painottaminen voisi tulevaisuudessa olla tarpeellinen toiminto. Erilaiset oppimiskäsitykset voivat vaatia aina erilaista tekemistä, jolloin oppimiskäsityksen mukaiset erot pitäisi saada korostetusti esille.

Kirjoittaja Anssi Gröhn, tietojenkäsittelyn lehtori

Järjestemämuutoksista – mietteitä menneestä ja tulevasta

Strategiakauden 2016–2020 kääntyessä loppusuoralle on aika pysähtyä hetkeksi tekemään väliarviointia. Strategiakauden ensimmäiset vuodet ovat tuoneet mukanaan monia järjestelmämuutoksia ja niihin liittyvää osaamisen kehittämistä. O365-pilvipalvelut, Moodle(rooms), Reportronic, EXAM ovat enemmän tai vähemmän osa arkeamme. Se, että järjestelmä on käytettävissä ei vielä takaa sitä, että sitä aktiivisesti käytetään. Uuden omaksuminen vaatii osaamisen kehittämisen lisäksi usein uusia toimintatapoja ja niitä hyviä esimerkkejä. Tällainen on varmaan myös sähköinen tenttiympäristö EXAM. Hyvät mallit onnistuneista käyttäjäkokemuksista ovat yksi tapa lisätä kiinnostusta ympäristöön, joka tuo opiskelijalle joustavuutta opintoihin ja opettajalle ajan myötä lisää joustavuutta ja toivottavasti myös helpotusta työn tekemiseen.

Järjestelmien rinnalla strategiakauden ensimmäiset vuodet ovat painottuneet vahvasti henkilöstön osaamisen kehittämiseen. Järjestelmämuutoksiin liittyvän osaamisen kehittämisen rinnalla on toteutettu osaamiskartoitus, järjestetty verkkopedagogiikkaan liittyvää koulutusta ja pedagogista tukea, kehitetty verkko- ja monimuoto-opetusta, otettu käyttöön osaamismerkkejä, piltoitu verkko-opetuksen tuottemistamismallia ja uudistettu kampusten digimentorointia. Myös palvelujen digitalisaatiota on kehitetty esim. ottamalla käyttöön erityisesti opiskelijoille suunnattuja skype-ohjaus- ja neuvontapalveluita. Karelian digitaalisuutta ei kehitä digiryhmä, vaan koko korkeakouluyhteisö. Monet asiat syntyvät ja etenevät yksittäisten henkilöiden ja työryhmien aloitteesta ja innostuksesta uuteen.

Digitaalisuuden kehittämisen ajureina ja työkaluina toimivat meillä useat hankkeet, joissa viedään eteenpäin digitaalisuuden kehittämistä laajalla rintamalla. Hankkeet tuovat mukanaan mahdollisuuksia oman osaamisen, opetuksen menetelmien ja sisältöjen kehittämiseen. Ne tuovat mukanaan myös uusia resursseja, verkostoja ja työkaluja kehittämistyöhön näinä aikoina, joina kehittämiseen kohdennettavia resursseja on niukasti käytettävissä.

Strategiakauden loppuvaiheen kehittämiskohteiksi on määritelty BYOD-toimintamallin (opiskelijan oman laitteen käyttö) käyttöönotto, monimuoto-opetuksen ja –opiskelun tuki, järjestelmien, palvelujen ja prosessien sujuvuus, digiosaamisen tuotteistaminen sekä digitaalisaation vaikutus opetuksen toteutukseen ja sisältöihin. Digiryhmä on ottanut tavoitteekseen myös entistä aktiivisemman viestinnän digitaalisuuden kehittämiseen liittyen. Ja vaaniihan siellä nurkan takana jo se suuri tietojärjestelmiin liittyvä muutoskin – Peppi – jo ensi marraskuussa. Vaikka järjestelmämuutokset ovat aina työllistäviä ja työläitä, tämän muutoksen perusteleminen on poikkeuksellisen helppoa. Kun Winha loppuu, tarvitaan tilalle uusi opiskelijahallintojärjestelmä. Samalla luovumme SoleOPS-järjestelmästä ja keskitämme toimintoja Peppi-ympäristöön. Mikään järjestelmä ei ratkaise kaikkia ongelmia, mutta toivottavasti palvelujen ja järjestelmien sujuvuus paranee, kun rajapintojen määrä vähenee.

Yhteistyöterveisin kirjoittaja Marjo Nenonen, koulutuksen kehittämispäällikkö

SMErec: Virtuaalihologrammien testiympäristön rakentaminen

Edellisessä DigiIT! –blogimerkinnässäni käsittelin yleisesti Intel Realsense-syvyyskameroita, sekä totesin lopussa että virtuaalihologrammien tekemistä varten on rakennettava useamman kameran testiympäristö, sekä tutkia tallennusmenetelmiä ja rakentaa soveltuva visualisointiohjelmisto. Tässä blogimerkinnässä keskitytään näistä kolmesta kohdasta ensimmäiseen, eli testiympäristön rakentamiseen.

Lähtökohdat

Tavoitteena on siis luoda kaksi erillistä ympäristöä virtuaalihologrammien tallennukseen. AC-tilaan 101b rakennetaan tuotantoympäristö: työasema, sekä neljä kameraa tallenteiden tekemistä varten.  Työhuoneeseeni puolestaan rakennetaan vastaava kehitysympäristö, jolloin on suoraviivaisempaa toteuttaa ohjelmistokehitystä. Lähdemme joka tapauksessa liikkeelle kehitysympäristön rakentamisesta – sen jälkeen tiedämme miten tuotantoympäristö kannattaa lopulta tehdä.

Ensimmäiset puutteet havaitaan kiinnitysvälineistä. Kameroissa on mukana kolmijalat, mutta niiden kiinnittäminen seinään ei ole mahdollista. Eräs tapa hankkia sopivat kiinnitysosat on suunnitella ja tulostaa ne itse 3D-tulostimella, joten miksipä sitä ei kokeiltaisi. Seinäkiinnikkeiden mallinnusta varten tarvitaan sopiva malli kameran jalustaruuviksi, että kamera on ylenpäätänsä mahdollista liittää kiinnikkeeseen. Sellainen on saatavilla esimerkiksi Thingiversestä CC-lisenssillä julkaistuna, jolloin siihen on luvallista tehdä myös muutoksia (kiitokset Basic3dprinting/Rob mcnulty). Tätä mallia hyödyntämällä loput osat on laadittavissa pienellä vaivalla, mikäli 3D-mallintaminen on hallussa.

Suunnittelu

Seinäkiinnikkeen toimintaperiaate on varsin yksinkertainen. Tarvitsemme siihen kolmisen osaa. Kameraan tulevan kiinnitysruuvin, jossa on toisessa päässä pallo. Sitten tarvitsemme itse kulmaosan, jonka yksi sivu kiinnitetään seinään. Kulmaosaan jätetään sopivat reiät ruuveille. Sitten tarvitsemme kulmaosaan kiinnitettävän kotelon palloruuville. Itse palloruuvi kiilataan koteloon asennusruuvilla, jolloin kamera pysyy paikoillaan.

Mallinnukseen käytin ilmaista avoimen lähdekoodin Blender-ohjelmistoa, josta mallin saa vietyä useisiin eri tiedostomuotoihin. Alla Blenderin näkymien kuvakaappaukset mallinnuksen loppuvaiheesta.

 

Seinäkiinnikkeen osat ortogonaalisesti esitettynä.

Seinäkiinnikkeen 3D-malli Blenderissä sivuilta ja ylhäältä kuvattuna.

Tulostus

Realsense-kameran seinäkiinnike tulostettuna sekä koottuna alkukantaisella, mutta tehokkaalla tavalla.

Tulostimena toimi Delta-tyyppinen Anycubic Kossel ja varsinaiseen tulostukseen käytin valkoista PLA-lankaa. Tulostusohjelmana käytin ilmaista Cura-ohjelmistoa. Tulostuspään koko oli 0.4mm, tulostetavan kerroksen paksuus 0.2mm, ja tulostuslämpötila 210 astetta. Sisäisenä tukirakenteena oli verkko, ja täyttömääränä 25%. Tulostusjäljen osalta tavoitteena ei ollut huippulaatu, joten tulostaminen ei kestänyt kovin pitkään (n. 2h). Siitä huolimatta näillä asetuksilla saatiin yllättävän kestävä lopputulos – ainakaan itse en pelkillä käsilläni saanut väännettyä seinään tulevaa kulmaosaa rikki, joten arvelen että kameran sekä kaapelin painokaan ei sitä riko.

Sen tietää sitten kun se on tehty…

Alun perin suunnittelin kiinnikkeeseen lisäksi erillisen kiristyslevyn, sekä siipiruuvin sen kiristämistä varten, mutta se osoittautui varsin huteraksi ratkaisuksi. Loppujen lopuksi sivuun liitetty asennusruuvi hoiti asian paremmin, ja kamera pysyy paikoillaan varsin luotettavasti. Jälkikäteen sain myös kehitysehdotuksia kiinnikkeiden parantamiseen asiantuntevalta kollegalta (kiitos Jukka!), mutta toistaiseksi kiinnikkeet tuntuvat toimivan niiden selkeistä puutteista huolimatta. Todettakoon että tämä on karu, mutta tähän hätään toimiva ratkaisu. Tuotantoympäristöön on myöhemmin suunniteltava parempi ja miellyttävämmän näköinen versio.

Asennus

Kameroiden saamiseksi seinälle tarvittiin kuitenkin vahtimestarin vakaata kättä (kiitos Vellu!), sekä kättä pidempää. Tämän jälkeen kameroiden kytkeminen oli varsin suoraviivaista.

Mitä Hiltillä ei voi tehdä, sitä ei tarvita.

Kamerat kytkettynä USB 3.0-laajennuskorttiin  jatkokaapeleilla.

Toinen kamera kiinnitettynä tiiliseinään.

Yksi kameroista kiinnitettynä hyllyyn.

Miten tästä eteenpäin

Kameroiden asentamisen jälkeen voin aloittaa syvyyskuvien yhteensovittamisen. Kameroiden tuottamat pistepilvet on suunnattava sekä sijoitettava sopivasti niitä toistavassa ohjelmassa, että ne muodostavat yhtenäisen mallin. Vaikka kamerat ovatkin nyt asennettuna vaakasuoraan, voi olla parempi että ne asennetaankin tuotantoympäristössä pystyyn, jolloin saadaan parempi esitys kuvattavasta kohteesta. Luvassa on siis varsin mielenkiintoinen vaihe!

Seuraavassa Digit!-blogimerkinnässäni käsittelenkin päivittyvän syvyystiedon tallennusmenetelmiä, sekä miten pistepilven voi muodostaa tehokkaasti kameroiden tuottamasta syvyystiedosta.

Kirjoittaja Anssi Gröhn, tietojenkäsittelyn lehtori