Code Monkey home page Code Monkey logo

parkoviste's Issues

Přesun pozic obdelníků a refactor kódu

Zařídit, aby šlo přeindexovat pozice obdelníků bez toho, aby se museli přeoznačovat všechny obdelníky.
Upravit view funkci a udělat pořádně main s parametry.

Úprava CNN vstupu a výstupu

Úvod

Pro zvýšení přesnosti modelu je nutné přidat rozpoznávání aut a prázdných míst zvlášť. Tímto způsobem budeme moct rozlišovat více stavů parkovacího místa a to: auto, prázdno, nějaký šum (např. člověk).

Bude potřeba upravit několik souborů a to NeuralNetwork, DatasetCreator, trainingModel a další...

Příklad

Úprava modelu kde vstup a výstup bude tenzor s dimenzí nebo velikostí 2
car [1.0, 0.0], empty [0.0, 1.0], šum (člověk, ...) [0.0, 0.0]

Refactoring kódu

K závěru projektu by bylo vhodné upravit naše kódy tak aby byli čitelné a v podobném stylu.

Každý by si měl upravit a okomentovat svůj kód.

Rozdělení dat

Úvod

Je potřeba rozdělit pořízená data pro to abychom mohli trénovat a hodnotit kvalitu modelu. K rozdělení dat by se měli dát využít již existující knihovny nebo alespoň nástroje v nich.

Knihovny / materiály pro nastudování

knihovny např.
https://www.pluralsight.com/guides/validating-machine-learning-models-scikit-learn

potřebujeme minimálně trénovací a testovací dataset ale používají se i validační a cross-validační, nutno dostudovat

úprava ObjectPositionCoordinates

@Cemonix

důležité

  • přidat kontrolu bodů při kreslení obdélníků, pokud první je dolni pravý roh tak je prohodit

  • lépe okomentuj kód co je například legend(image_copy)? co je ar? type_p? atd...
  • argument --out přejmenovat na json (už se vlastně nejedná jen na výstup, tak je matoucí to mít jako out)
  • k argumentu --json pŕidat zkratku -j
  • k argumentu --json předělat default honotu na parkingPlaces.json
  • lépe popsat argument -view
  • #7
  • #8
  • možná zvětšit font? (u mě na 2k monitoru to je nečitelné), tady je asi možný problém že velikost je pevná, možnost dělat néjak dinamicky podle roylišení?
  • u funkce rectangle_opencv zbytečně předáváš color, buď jí definuj přímo ve funkci
  • 85 -92 proč máš barvy přímo vepsané? použij color, který más definovaný, ale nevyužitý
  • 70-80 předélej na switch když už nechceś používat tu knihovnu, kterou jsem ti navrhoval :D
  • přidat dokumentaci hlavičky + funkcí jak je zvykem podle konvencí, viz např https://sphinxcontrib-napoleon.readthedocs.io/en/latest/example_google.html
  • na druhým řádku stačí napsat import cv2

úprava parkingPlacesRecorder

@FandaCmuchar

důležité

  • přidat kontrolů bodů, pokud se jedná o dolní pravý roh, prohodit

  • přejmenovat defaultní hodnotu image4.png na image.png
  • u argumentu explicitně napsat, že pokud je specifikovaný ydroj kamery, tak je upřednostnén před fotkou
  • zdokumentuj hlavičku souboru + jednotlivé funkce, podle konvencí viz. např. https://sphinxcontrib-napoleon.readthedocs.io/en/latest/example_google.html
  • při zadávání složky pro ukládání automaticky vkládat / na konec aby se do argumentu zadávala jen cesta ke složce např. --img_dir photos

Front end

Potřebujeme vytvořit grafický výstup aktuálního stavu parkoviště ideálně prostřednictvím webové stránky.
(Flask nebo PHP) + HTML a Javascript?

Koncept jak by mohlo znázornění aktuálního stavu parkoviště vypadat:
KonceptVizualizace

Oproti konceptu každé místo může mít 3 stavy: Prázdno, Plno, Není jednoznačné. (pravděpodobně bude nastávat jen plno/prázdno)

Máme 3 typy míst: Standardní, Nestandardní, Invalida
u nestandardních budeme vykreslovat pouze pokud je místo plné (nechceme navádět lidi aby parkovali na těchto místech)

Nasbírat data pro dotrénování modelu a následně model dotrénovat

Nasazený model dělá menší počet chyby. Nejjednodušší řešení bude nasbírat data, nasekat je do obrázků a dotrénovat na nich model.

  1. Nasbírat dostatečný počet dat (během týdne)
  2. Napsat script který bude používat json s názvem fotky a číslem místa, které bylo označeno špatně a následně vyseká malé fotky.
  3. Sloučit fotky se trénovacím datasetem a dotrénovat na nich model.
  4. Vyzkoušet model.

Nová data k trénování modelu

Úvod

Potřebujeme sehnat data, která nejsou auto ani prázdné místo. K tomu můžeme využít fotky celého parkoviště a vystříhat z něj například lidi. Těchto fotek nejspíše neseženeme velké množství a proto je můžeme zkusit augumentovat tedy vytvořit jejich různé varianty (zrcadlové překlopení, šum, posun, atd...).

  • pridat runtime augumentaci dat na trénovací dataset (blur, hue)
  • namnožit fotky lidí (+- 400) a rozdělit je náhodně mezi testing a training
  • udělat hard augumentaci testovacích dat (uložit abychom měli možnost co porovnat)

Natrénovat model + ukládání statistik

Je potřeba ukládat statistiku při učení modelu (loss + auc + accuracy appendovat do csv) a přidat možnost ukládání modelu během učení. Přidat možnost vytváření grafu z loss výstupů (trénovací i testovací data)

  • Ukládání loss, auc, accuracy do csv
  • Průběžné ukládání modelu
  • Graf pro loss jak testovacího tak i trénovacího datasetu po epochách

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.