Hva skal vi utvikle?
Hva skal vi utvikle?
Vi skal utvikle en proof of concept (PoC) digital tvilling av et jordbruksareal, basert på fotogrammetri.
Input til systemet er bilder og/eller video av et faktisk jorde (eventuelt en syntetisk 3D-modell), og output er en punktsky og/eller 3D-mesh som kan brukes videre i senere prosesser.
Hovedaktivitetene i prosjektet er:
Innhenting av bildedata (kamera / mobil / scanner)
Rekonstruksjon av 3D-representasjon (punktsky / mesh)
Segmentering av hvert enkelt planteobjekt
Separasjon av bakke som en geolokalisert baseplane
Dokumentasjon og evaluering av valgt løsning
Eventuelle AI-integrasjoner vurderes dersom tid og kompleksitet tillater det.
Viktige kvalitetsaspekter i produktet
Følgende kvalitetsaspekter vurderes som mest sentrale for prosjektets mål:
Rekonstruksjonskvalitet
Presis og konsistent 3D-representasjon av jordet
Segmenteringsnøyaktighet
Hver plante skal være identifisert som et eget objekt
Bakke skal være korrekt separert
Reproduserbarhet
Samme input gir tilnærmet samme output
Teknisk gjennomførbarhet
Løsningen skal fungere med realistiske ressurser og verktøy
Dokumenterbarhet
Metoder, valg og begrensninger skal være tydelig beskrevet
Disse kvalitetsaspektene er valgt fordi de dekker det mest nødvendige for at proof of concept løsningen skal ha en videre nytteverdi, og fordi de største risikoene blir adressert.
Plan, estimat, backlogg, ressursbruk
Prosjektet organiseres som et iterativt utviklingsløp, inspirert av smidige metoder:
Overordnet prosjektplan med milepæler
Produkt-backlogg med prioriterte oppgaver
Estimater per oppgave (timer / kompleksitet)
Løpende timerapportering per gruppemedlem
Dette gir oversikt, sporbarhet og mulighet for justering underveis.
Da dette prosjektet tar form i å eksperimentere med ulike teknologier, kvaltietssikres planen ved å ha klare mål på hva som defineres som et ferdig "produkt". Prosjektet består i hovedsak av tre deler hvor første dek er worst case minimumsresultat, altså minimum viable product. Andre del er forventet resultat, og siste del er above and beyond.
Første del:
Ta bilde/video og analysere dette for å sitte igjen med et mesh eller en punktsky som kan benyttes for videre behandling.
Andre del:
Segmentering/rekonstruering av objekter videre ut fra første fase. Altså at f.eks. gulroten skilles ut fra åkeren som et eget separat objekt og returnere dette som separate punktskyer/meshes.
Tredje del:
Identifisering/annotering av de separate objektene. Altså en den ene gulroten blir alltid gjenkjent som den samme gulroten.
Visualisering
Dette er en ekstra del av prosjektet som anses som out-of-scope, men vil være relevant for å kommunisere resultater om det lar seg gjøre.
Definering av akseptansekriterier for hver enkelt fase vil også være nyttig for å definere i hvilken grad en fase kan anses som "ferdig". Disse er per nå ikke definert da det fortsett er noe mangel på kunnskap rundt teknologier, og fotogrammetri generelt.
Utover dette vil også et fast testdatasett og en fast testrutine være et kvalitetssikrende aspekt ved planen ved at det reduserer usikkerhet og muliggjøt sammenligning mellom iterasjoner. Dette vil åpenbart ikke være så enkelt å oppnå for dette prosjektets del med tanke på eksterne faktorer som vær, sesong, vekst osv. Per nå er det diskutert å sette opp en simulert lab for dette formålet før evt. testing i et real-world scenario.
For å kunne kvalitetssikre backloggen, er det essensielt å knytte backloggoppgavene til hver enkelt fase, samt definere oppgavene som must-haves, nice-to-haves etc. basert på hva som må til for å oppnå målet utifra akseptansekriterier og kvalitetsaspekter.
I tillegg vil backloggoppgavene være tydelig definerte med output, kriterier, testgrunnlag samt eventuelle avhengigheter og estimater (tid og kostnad). Oppgaven skal ikke tas med inn i sprinten før dette er definert.
Tidsestimatet defineres først med et forventet eller planlagt forbruk av tid for en oppgave, hvor timerapportering viser den faktiske tiden brukt og forteller hva som skjedde. Dett gjør det mulig å oppdage avvik/problemer tidlig samt gjrøe prioriteringer basert på fakta.
Utifra dette kan en gjøre nødvendige handlinger som å splitte opp oppgaver, omfordele ansvar osv. om det skulle vise seg at faktisk tid brukt er mer en den estimerte tiden.
Over tid bidrar dette til mer presise tidsestimater og en bedre forstålese om hvilke oppgaver som er mer krevende enn andre.
Ressursene antas å være godt utnyttet om tidsestimatene generelt sett overholdes, og at arbeid som utføres gir en progresjon som ledes fra del 1 til del 3 av prosjektet, samt at en kommer i mål med de ulike delene.