Ga naar de inhoud
BV Solution. Zelfstandig softwareontwikkelaar
EN NL
Laten we praten
← Werk AI-systemen · tours

Check-in die je kunt nagaan, en commissies die daaruit volgen.

Een multi-tenant systeem om tours te plannen, aanwezigheid te bevestigen met een groeptelling op foto, en commissies te berekenen. Kloppen de tellingen niet, dan bekijkt iemand dat nog manueel.

Laravel OpenCV FastAPI Filament Tests

01 — Kort gezegd

Dit platform is een multi-tenant systeem voor tourorganisatoren. Het regelt planning, check-in door gidsen, controle van de groepsgrootte via een foto en de berekening van commissies. De fotostap telt gezichten. Hij herkent niemand.

02a — Het probleem

Tourplanning, aanwezigheidscontrole en gidsverloning liepen naast elkaar. Discussies over groepsgrootte waren moeilijk te beslechten zonder een gedeeld proces waar je later nog iets aan hebt.

02b — Wat we afspraken

Planning, check-in, bewijs en commissies in één platform. Lokale computer vision telt gezichten op een groepsfoto (niet om mensen te herkennen). Verschillen gaan naar menselijke review, ze worden niet stilzwijgend goedgekeurd.

Wat ik bouwde

  1. Multi-tenant beheer voor teams, tours, boekingen, kalenders en herboekingen.
  2. Check-in en afronding van groepen door gidsen.
  3. Een lokale OpenCV-service die gezichten telt op een geüploade groepsfoto.
  4. Afhandeling van verschillen: getelde versus opgegeven groepsgrootte, klaargezet voor review.
  5. Commissies aanmaken na een afgeronde check-in, inclusief uitzonderingstarieven per gids.
  6. Featuretests over het pad van check-in tot commissie.

Keuzes die het bepaalden

Gezichten lokaal tellen

Google Cloud Vision biedt geen gezichtsdetectie op het Europese regionale endpoint, dus foto’s van gasten zouden buiten de EU verwerkt worden. Ik koos voor YuNet van OpenCV in een kleine FastAPI-service. De foto’s blijven op de server.

Afwijkingen gaan naar een mens

Als het getelde aantal en het gemelde aantal verschillen, bevestigt of corrigeert de gids het aantal en wordt het geval gemarkeerd. Een persoon bekijkt het voor er commissie wordt uitbetaald.

Geen geverifieerde match, geen goedkeuring

Als de telservice uitvalt of traag is, krijgt de gids een foutmelding. Het systeem keurt nooit een check-in goed die het niet kon verifiëren.

05 — Wat er veranderde

Aanwezigheidsbewijs en verloning zitten in dezelfde workflow. De AI-stap helpt het proces; ze beslist niet stilzwijgend over loon. Belangrijk: dit is tellen van gezichten voor groepsgrootte, geen herkenning van wie er op de foto staat.

Wat het niet doet

Een drukke foto waarop gezichten weggedraaid zijn, geeft een te lage telling. Het systeem vergelijkt exacte aantallen en heeft geen marge, want een gemarkeerd geval is beter dan een verborgen tolerantie. Het telt gezichten om de groepsgrootte te controleren. Het is geen gezichtsherkenning.

Veelgestelde vragen

Nee. Het telt de gezichten op een groepsfoto om de grootte van de groep te controleren. Het identificeert of matcht niemand.

Naar een kleine service die naast de app draait. In productie luistert die enkel op localhost en vraagt hij een gedeeld geheim, dus de foto’s verlaten de server niet.

De gids bevestigt of corrigeert het aantal. De afwijking wordt gemarkeerd, zodat een persoon ze kan nakijken voor er commissie wordt uitbetaald.

Gerelateerd lezen

Volgende stap

Wil je AI die in een workflow past, niet alleen in een demo?

Vertel wat je wil bouwen, automatiseren of oplossen. Een paar regels is genoeg.

Ik lees alles zelf. Geen nieuwsbrief, geen CRM-reeks.