GithubHelp home page GithubHelp logo

edgedetector's Introduction

☕ I am a software developer that loves coffee and bicycling, with an affection for state machines, event sourcing and functional programming

edgedetector's People

Contributors

mantono avatar

Watchers

 avatar  avatar  avatar  avatar

edgedetector's Issues

Mät ljusstyrka på serversidan

Mät ljusstyrkan på bilden av provet för att säkerställa att tillräckligt med ljus har funnits vid fotograferingstillfället och korrekt färgåtergivning kan erhållas.

Läs in hur kamerans sensorplan ligger i förhållande till prov

Läs in hur snett kamerans sensorplan låg i förhållande till mätplattan/provet vid fotograferingen (pitch)

Kan vara användbart att läsa in värden från kamerans accelerometer vid fotograferingstillfället, om sådan data finns tillgängling, och förutsatt att provet ligger på en plan yta.

  • Jämför storlek på kontrollfält eller läs accelerometer-data
  • Räkna ut pitch

Skapa ColorFunction och/eller ColorInterval

Just nu anges vilka färger som kan accepteras som indata för varje fält som en lite med RGB-värden i mappen permittedColors. Det är ett ganska enkelt och smidigt sätt när det rör sig om ett fåtal färger, men när det rör sig om väldigt många så måste man höja tröskelvärdet (större sannolikhet för fel) eller lägga till fler färger manuellt (väldigt tidskrävande). Att lägga till fler färger ökar dessutom antalet element i en algoritm som redan har väldigt hög tidskomplexitet.

Ett alternativ är istället att definera en funktion eller ett interval som beskriver rymden av tillåtna färger för en given reagens och dess fält. Exempelvis så är det tillåtna färgerna för ketoner definerat i filen KETONES.csv och har för tillfället detta innehåll:

254, 250, 202
254, 221, 188
223, 179, 196
177, 87, 141
110, 95, 114
81, 0, 77

Problemet är att vi missar många tillåtna färger i intervallet mellan dessa värden ovan. För att kompensera för detta måste vi istället öka tröskelvärdet för avvikelser från färgerna ovan, men det ökar som sagt också risken för felaktig indata. Ett trevligare alternativ hade varit att ange något i stil med
new ColorFunction(new Color(81, 0, 77), new Color(254, 250, 202), 15)
som avser lägsta färg, högsta färg och tröskelvärde. Tanken är att det skulle bli färre färger att ange, men ändå bättre precision om man kan ange ett lägre tröskelvärde.

Hantera otillräckligt ljus

Om en bild tagits med för låg ljussstyrka:

  • Kasta ett undantag som innebär att användaren är tvungen att ta ett nytt foto
    eller
  • Om möjligt kompensera för ljusbortfallet genom att öka ljusstyrkan med efterbehandling (kan även kräva ökad färgmättnad)

Analysera värdet på varje fält

Analysera värdet på varje enskilt fält och generera användbart medicinskt data för varje reagens.

  • Kompensera värderna för skiftning i vitbalans
  • Räkna ut genomsnittlig färg för all färgdata
  • Matcha färg mot rätt utlåtande/diagnos

Depends on #6

Ta emot foto på server

Ta emot foto på prov som skickats från mobiltelefon och lägg denna i kö för bearbetning.

Lokalisera värde-fält

Lokalisera var i bilden fälten för de olika mätreagenserna ligger i förhållande till kontrollfälten. Detta är förmodligen redan fixa då det gjorts en generell metod för detta som fungerar för vitbalans, men det finns ännu inte testfall som kan bekräfta detta.

  • Ange för enums i Fieldype värden för: Tröskelvärde, relativ x-position, relativ y-position (63e2892)
  • Ange tillåtna färgvärden för varje FieldType i separata filer (3b253c0)
  • Möjliggör inläsning av dessa filer i konstruktorn för FieldType (54e8c62).

Mät ljusstyrka på klientsida/app

När ett foto tas i appen eller innan det tas, mät ljusförhållandera och kontroller att dessa är tillräckliga för att ge ett okej resultat. Detta är redan implementerat på serversidan (#11) och bör kompletteras med felhantering (#12) när det mätning existerar i appen.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.