Preskočiť na obsah
Ákos Kappel
Jazyk: sk
Téma
Svetlé
Tmavé

PetGuide

Pomáha vybrať si plemeno mačky a overenú chovateľskú stanicu a neurónovou sieťou rozpozná plemeno mačky z fotky.

Úvodná stránka PetGuide s vyhľadávaním chovateľských staníc a tromi sekciami

O projekte

Semestrálny tímový projekt na FIIT STU z rokov 2022 až 2023, pod značkou maciatka.eu. Spája ľudí, ktorí hľadajú zdravú mačku s rodokmeňom, s overenými slovenskými chovateľskými stanicami a pomáha aj tým, ktorí ešte nevedia, aké plemeno chcú.

Plemeno sa dá nájsť dvoma spôsobmi. V krátkom dotazníku návštevník nastaví, aká aktívna, prítulná alebo zhovorčivá má mačka byť, zoradí vlastnosti podľa dôležitosti a dostane najbližšie plemená s percentom zhody. Alebo nahrá fotku mačky, ktorá sa mu páči, a neurónová sieť v samostatnej službe v Pythone odhadne plemeno.

Zvyšok stránky tvorí katalóg plemien a chovateľských staníc. Registrovaní používatelia môžu stanice hodnotiť a administrátor recenzie schvaľuje a spravuje stanice aj sponzorov. Stránka je po slovensky aj po anglicky.

Boli sme sedemčlenný tím a pracovali sme podľa Scrumu, so šprintmi, plánovaním a revíziami. Bol som zodpovedný za dotazník na výber plemena a jeho vyhodnotenie, databázové modely a úvodné dáta, stránky plemien, preklady a používateľské účty. Klasifikátor plemien som tiež zabalil do malej služby vo FastAPI a prepojil ho s aplikáciou v Laraveli. Ostatní členovia tímu pripravili neurónovú sieť, recenzie staníc, moderovanie v administrácii a Docker.

Čo si môžete vyskúšať

  • Dotazník na výber plemena s posuvníkmi vlastností a poradím dôležitosti cez drag and drop
  • Rozpoznanie plemena z nahratej fotky s najpravdepodobnejšími plemenami a ich pravdepodobnosťou
  • Stránky plemien s galériou, vlastnosťami, históriou a chovateľskými stanicami, ktoré plemeno chovajú
  • Zoznam chovateľských staníc s vyhľadávaním podľa názvu a plemena, s recenziami a fotkami od používateľov
  • Registrácia a prihlásenie, aj cez Google alebo Facebook, a obnovenie hesla cez e-mail

Hlavné body

  • Vyhodnotenie dotazníka: každé plemeno dostane skóre podľa váženej vzdialenosti medzi jeho vlastnosťami a odpoveďami, pričom vlastnosti vyššie v poradí majú väčšiu váhu
  • Databázové modely a vzťahy pre plemená, vlastnosti a stanice so seedermi, ktoré načítajú vlastnosti plemien z tímovej tabuľky
  • Detailné stránky plemien s galériou a zväčšením obrázka a so zoznamom staníc pre každé plemeno
  • Registrácia, prihlásenie cez Google a Facebook pomocou Laravel Socialite, pravidlá pre heslá a obnovenie hesla
  • Slovenské a anglické preklady, prepínač jazyka a vlastná chybová stránka
  • Middleware len pre administrátorov, karusel sponzorov a dotyková podpora dotazníka na mobile

Ako to funguje

  • Aplikácia v Laraveli 9 so šablónami Blade, Bootstrapom a jQuery UI nad databázou MySQL
  • Klasifikátor plemien je model v Kerase postavený na VGG16 a beží vo FastAPI; Laravel pošle fotku ako base64 a dostane späť pravdepodobné plemená
  • Webová aplikácia, služba v Pythone a databáza bežia ako samostatné kontajnery v Docker Compose
Kedy
2022 – 2023
Typ
Tímový
Vedenie
Dotazník na výber plemena, účty a prepojenie s klasifikátorom v sedemčlennom tíme
Verzie
  • Laravel 9
  • TensorFlow 2.10
Technológie
  • Laravel
  • PHP
  • MySQL
  • FastAPI
  • Python
  • TensorFlow
  • Keras
  • Bootstrap
  • Docker