AI Price Estimation From Images: 3 Attempts, 1 Working Solution — GridGarden

AI Prijsberekening op basis van Afbeeldingen: 3 Pogingen, 1 Werkende Oplossing

\nKort gezegd: AI-visiemodellen meten naar verluidt 63% van de tijd verkeerd. Elke best practice zegt \"meet niet op basis van foto's - classificeer in plaats daarvan\". We probeerden beide. Classificatie betekende het beperken van onze AI-beeldgenerator tot een vaste catalogus, wat de creatieve output doodde. Dus vonden we een derde weg: gebruik het product zelf als liniaal. Elke laag van ons modulaire systeem is precies 12 cm. AI telt lagen, wij doen de berekeningen, u krijgt een prijsindicatie in 5 seconden voor €0,001.\n
\n\n

Waarom zegt iedereen \"AI kan niet meten op basis van foto's\"?

\n\n

In 2024 publiceerden onderzoekers van Google SpatialVLM – een benchmark die test hoe goed visie-taalmodellen ruimtelijke relaties begrijpen. De resultaten waren sober: bij het schatten van afstanden en afmetingen uit foto's, zaten de state-of-the-art modellen slechts in 37,2% van de gevallen binnen het juiste bereik (0,5× tot 2× van de werkelijkheid). Bijna tweederde van de schattingen was meer dan dubbel zo verkeerd.

\n\n

Een vervolgstudie, SpatiaLab (2026), bevestigde dat het probleem diep zit – eerdere benchmarks overschatten zelfs hoe goed deze modellen ruimte waarnemen. De werkelijke cijfers zijn slechter.

\n\n

Het fundamentele probleem heet monoculaire ambiguïteit: vanuit een enkel 2D-beeld zonder referentiepunt is het fysiek onmogelijk om absolute 3D-afmetingen te herstellen. Een pot van 30 cm die van dichtbij wordt gefotografeerd, ziet er identiek uit als een plantenbak van 3 meter die van veraf wordt gefotografeerd. Geen hoeveelheid trainingsdata verandert dit – het is geen AI-beperking, het is geometrie.

\n\n

En AI-gegenereerde beelden maken het nog moeilijker. Echte foto's bevatten tenminste EXIF-metadata (brandpuntsafstand, sensorformaat) die theoretisch perspectiefberekeningen kunnen verankeren. Gegenereerde beelden hebben niets van dat.

\n\n

Interessant is dat het onderzoek ook onthulde waar de bottleneck werkelijk ligt: het visie-taal overdrachtsprobleem. De visuele encoder representeert ruimtelijke informatie intern correct – maar het taalmodel kan het niet extraheren bij het genereren van tekstreacties. Het model \"ziet\" de afmetingen nauwkeuriger dan het ze kan \"zeggen\".

\n\n

Dus toen we automatische prijsindicaties wilden bouwen voor AI-gegenereerde tuinontwerpen, was de academische consensus duidelijk: niet meten, maar classificeren.

\n\n

Dit is wat de industrie in plaats daarvan doet:

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
BedrijfAanpakMeet het op basis van foto's?
Zillow ZestimateClassificeert kenmerken (graniet vs. laminaat), gebruikt vergelijkbare verkoopinformatieNee – 1M+ trainingssamples, alleen classificatie
SimplyWiseClassificeert projecttype → regionale prijslijstenNee – ±10-15% nauwkeurigheid, geen pixelmeting
Hover8-10 foto's → 3D-reconstructie + menselijke QAJa – maar heeft meerdere hoeken nodig en duurt ~1 uur
AI Garden Planner, Planner 5D, etc.Alleen visualisatie – geen prijsstellingN.v.t.
\n\n

Niemand in de AI-tuinontwerpruimte (markt van $1,72 miljard, groeiend met 21,4% CAGR) biedt prijsindicaties op basis van gegenereerde ontwerpen. Geen enkele concurrent. We besloten het toch te proberen.

\n\n

Hoe onze AI tuinontwerpen genereert (en waarom dat prijsbepaling lastig maakt)

\n\n

Voordat we dieper ingaan op de prijsstelling, is het nuttig te begrijpen wat we prijzen. Onze AI Garden Designer laat gebruikers een foto van hun eigen tuin uploaden. De AI genereert vervolgens een fotorealistische visualisatie van hoe die ruimte eruit zou kunnen zien met modulaire verhoogde bedden.

\n\n

De beeldgenerator (Gemini Imagen) ontvangt twee soorten input:

\n\n
    \n
  • Productbeperkingen: Drie referentiefoto's van ons daadwerkelijke Brick-systeem – echte productfoto's die de gestapelde plankconstructie, hoeken in blokhutstijl, verweerde larikstextuur tonen. Plus een gedetailleerde tekstbeschrijving: \"dikke planken (120 mm hoog × 60 mm dik), horizontaal gestapeld met verspringende voegen rij voor rij, zoals baksteenwerk.\"
  • \n
  • Creatieve vrijheid: Al het andere – hoeveel structuren, waar ze komen te staan, welke vormen ze aannemen, hoe ze zich verhouden tot de bestaande tuin. De AI bepaalt de lay-out, de rangschikking, de soorten bedden. Een L-vorm rond een boom? Een bank geïntegreerd in een keermuur? Een trap die een helling volgt? Alles is aan het model.
  • \n
\n\n

Gebruikers regelen een dichtheidsschuif (0-100) die overeenkomt met ongeveer 0-20 structuren. Bij dichtheid 25 krijg je een natuurlijke tuin met een paar subtiele bedden tussen de wilde bloemen. Bij dichtheid 80 krijg je een volledig georganiseerde buitenruimte met duidelijke zones verbonden door paden. De AI kiest welke soorten structuren logisch zijn voor de scène.

\n\n

Deze creatieve vrijheid is het hele punt van de tool. Niemand wil een configurator die elke keer dezelfde drie rechthoekige bedden oplevert. Maar het creëert een fundamenteel prijsbepalingsprobleem: elk gegenereerd beeld is uniek. Er is geen vooraf gedefinieerde materiaalstaat. Geen SKU-lijst. Alleen een fotorealistisch beeld van houten structuren die van een enkele plantenbak tot een uitgebreide meerzijdige tuin kunnen variëren.

\n\n

Dus hoe prijs je iets dat nog niet bestaat, op basis van een afbeelding die 5 seconden geleden is gegenereerd?

\n\n

Poging #1: Vraag de AI gewoon om afmetingen

\n\n

Onze eerste aanpak was de meest naïeve: geef Gemini 2.5 Pro de gegenereerde tuinafbeelding en vraag om afmetingen in meters te schatten.

\n\n
\n// De prompt die we in productie hebben gezet\nJe bent een expert in het schatten van afmetingen van tuinconstructies\nuit foto's.\n\nVoor ELKE afzonderlijke houten structuur die je kunt identificeren\n(verhoogde bedden, banken, muren, trappen, plantenbakken),\nvermeld de afmetingen in meters:\n- lengte_m: de langste horizontale afmeting\n- breedte_m: de kortere horizontale afmeting (diepte)\n- hoogte_m: de verticale afmeting\n\nRetourneer JSON:\n{ \"structuren\": [\n    { \"type\": \"verhoogd_bed\",\n      \"lengte_m\": 2.0, \"breedte_m\": 1.0, \"hoogte_m\": 0.6 }\n]}\n
\n\n

Prijsbepaling was eenvoudige geometrie – bereken het zichtbare muuroppervlak en vermenigvuldig met €125/m²:

\n\n
\n// Muuroppervlakteberekening per structuurtype:\n// verhoogd_bed: 2 × (lengte + breedte) × hoogte\n// muur: 2 × lengte × hoogte\n// trap: lengte × hoogte × 1.5\nconst muurOppervlakte = 2 * (s.lengte_m + s.breedte_m) * s.hoogte_m;\nconst prijs = muurOppervlakte * 125; // EUR per m²\n
\n\n

Het werkte. Beter dan verwacht. Een bed dat eigenlijk 1,8 m lang was, kwam terug als 1,4 m of 2,2 m – de individuele afmetingen waren onnauwkeurig, maar de geometrie compenseerde: wanneer de lengte werd overschat, werd de hoogte vaak onderschat. De prijsindicatie kwam binnen ±20-25% van de werkelijkheid. Voor een gratis, directe schatting van een AI-gegenereerde afbeelding voelde dat verrassend nuttig.

\n\n

Het model was vooral goed in het tellen van structuren – als de afbeelding 3 verhoogde bedden en een bank toonde, vond het over het algemeen 3 verhoogde bedden en een bank. Het begreep hoe ons Brick-systeem eruitziet. De afmetingen waren vaag, maar de detectie van structuren was solide.

\n\n

Maar toen lazen we de papers. De 37,2% nauwkeurigheid van SpatialVLM. De documentatie van Google zelf die waarschuwt tegen ruimtelijke metingen uit enkele afbeeldingen. Stack Overflow-threads vol met \"dit is fundamenteel onmogelijk\". We raakten in paniek.

\n\n

\"Dit kan niet werken op de lange termijn,\" zeiden we tegen onszelf. \"We hebben gewoon geluk. Laten we het op de juiste manier doen – de manier die iedereen aanbeveelt.\""

\n\n

Poging #2: De \"Juiste\" Manier – Catalogusclassificatie

\n\n

De aanbevolen aanpak is duidelijk: niet meten, maar classificeren. Identificeer het type structuur, wijs het toe aan een maatcategorie, zoek een vaste prijs op. Geen meting, geen ambiguïteit. Dit is wat Zillow doet. Dit is wat SimplyWise doet. Dit is wat het onderzoek zegt te doen.

\n\n

Het idee was simpel:

\n\n
\n// Classificeer structuurtype + maat → vaste prijslookup\nconst PRIJS_TABEL = {\n  verhoogd_bed: { klein: 50, medium: 100, groot: 180 },\n  muur:       { klein: 25, medium: 50,  groot: 90 },\n  bank:      { klein: 30, medium: 60,  groot: 100 },\n  trap:     { klein: 45, medium: 90,  groot: 140 },\n  plantenbak:    { klein: 15, medium: 30,  groot: 55 }\n};\n
\n\n

Maar we stuitten op een probleem dat we niet hadden voorzien – en het had niets te maken met AI-nauwkeurigheid.

\n\n

Onze AI-tuinontwerper genereert creatieve ontwerpen. Een gebruiker uploadt een foto van zijn tuin, en Gemini Imagen creëert een unieke visualisatie met modulaire verhoogde bedden die zijn aangepast aan die specifieke ruimte. De structuren die het genereert zijn gevarieerd – L-vormen, rondingen die een tuinpad volgen, bedden geïntegreerd in hellingen, banken verbonden met verhoogde bedden, gelaagde arrangementen die de grens tussen \"trap\" en \"muur\" vervagen.

\n\n

Om catalogusclassificatie te laten werken, hadden we de beeldgenerator moeten beperken. \"Genereer alleen deze 5 typen. Genereer alleen deze 3 maten. Houd alles rechthoekig.\" Dat zou de prijsstelling nauwkeurig hebben gemaakt – maar het zou het ding hebben gedood dat de tool waardevol maakt: de creatieve, gepersonaliseerde ontwerpen.

\n\n

We stonden voor een fundamentele afweging: nauwkeurige prijsstelling versus creatieve vrijheid in gegenereerde beelden.

\n\n

En zelfs toen we probeerden classificatie te laten werken zonder de generator te beperken, waren de resultaten slecht:

\n\n
    \n
  • \"Klein/Medium/Groot\" betekende niets voor het model. Zonder een referentieobject in de afbeelding was hetzelfde bed in de ene analyse \"klein\" en in de volgende \"groot\". Er is geen fysiek anker voor deze woorden – \"medium\" is een taalconcept, geen meting.
  • \n
  • Creatieve structuren passen niet in nette categorieën. Is een L-vormig bed één \"groot\" verhoogd bed of twee \"medium\" bedden? Is een bank geïntegreerd in een verhoogd bed een \"bank\" of onderdeel van het bed? De categorieën waren te rigide voor wat de generator daadwerkelijk produceerde.
  • \n
  • We voegden hacks toe. Een kortingsregel voor overtelling (-15% voor elke structuur boven de 3, omdat het model extra's hallucineerde). Een herclassificatiestap. Een handmatige override-tabel. Elke hack was een teken dat de aanpak niet paste bij onze use case.
  • \n
\n\n

Het kernprobleem: catalogusprijsstelling gaat uit van een catalogus. Het werkt voor Zillow omdat huizen bekende typen hebben (ranch, koloniaal, split-level) met tientallen jaren aan vergelijkbare verkoopinformatie. Het werkt voor SimplyWise omdat bouwprojecten overeenkomen met gestandaardiseerde categorieën. Onze AI genereert elke keer unieke ontwerpen – er is geen catalogus om tegen te classificeren.

\n\n

We hebben deze versie nooit uitgebracht. In plaats daarvan gingen we terug naar wat werkte – meting – maar met een cruciaal inzicht.

\n\n

Poging #3: Maak van het product de liniaal

\n\n

Het onderzoek had één ding goed: je kunt geen absolute afmetingen herstellen uit een enkele afbeelding zonder referentiepunt. Maar het had één aanname fout – dat er geen referentiepunt bestaat.

\n\n

Ons product heeft een ingebouwde liniaal.

\n\n

Het Brick modulaire systeem maakt gebruik van 60 mm dikke houten planken die op elkaar gestapeld zijn. Elke horizontale laag – zichtbaar als een duidelijke lijn in elke gegenereerde afbeelding – is precies 12 cm (0,12 m) hoog. Dit is een fysieke constante van het product. Het is hetzelfde in elke afbeelding, elk ontwerp, elke hoek. En de beeldgenerator weet er al van – elke prompt specificeert \"60 mm Brick-systeem\", dus de planken worden consistent weergegeven.

\n\n

Met V1 hadden we gevraagd: \"Hoeveel meter lang is dit bed?\" – een vraag die het probleem van monoculaire ambiguïteit oplost.

\n\n

Met V3 vragen we: \"Hoeveel planklagen zie je, en hoe vaak langer is de muur vergeleken met zijn hoogte?\" – vragen die alleen tellen en een verhouding schatten vereisen. Beide zijn dingen die visiemodellen goed doen.

\n\n
\n// De daadwerkelijke prompt in productie (v3)\nSCHAALREFERENTIE: Elke horizontale planklaag = precies 12 cm\n(0,12 m) hoog. Tel lagen om de hoogte te krijgen, schat dan de\nlengte ten opzichte van de bekende hoogte.\n\nMEET elke structuur:\n- lagen: tel zichtbare horizontale planklagen (elk = 12 cm)\n- lengte_verhouding: hoe vaak langer de muur is vergeleken met zijn hoogte\n- zichtbare_zijden: hoeveel muurzijden zichtbaar zijn\n\nVERIFIEER: Typische tuinen hebben 2-5 structuren.\nAls je >6 hebt gevonden, heb je waarschijnlijk te veel geteld.\n\nRetourneer JSON:\n{\"structuren\": [\n  {\"redenering\": \"4 horizontale lagen zichtbaar, muur strekt zich ongeveer 3,5x de hoogte uit, voorkant en zijkant zichtbaar\",\n   \"type\": \"verhoogd_bed\",\n   \"lagen\": 4,\n   \"lengte_verhouding\": 3.5,\n   \"zichtbare_zijden\": 2}\n]}\n
\n\n

De prijsengine doet de berekeningen:

\n\n
\nconst LAAG_HOOGTE_M = 0.12;\nconst PRIJS_PER_M2 = 120;\n\nfunction berekenPrijs(structuur) {\n  const hoogte = structuur.lagen * LAAG_HOOGTE_M;\n  // 4 lagen = 0,48 m\n\n  const lengte = hoogte * structuur.lengte_verhouding;\n  // 0,48 m × 3,5 = 1,68 m\n\n  const zijdeOppervlakte = hoogte * lengte;\n  // 0,48 × 1,68 = 0,81 m²\n\n  const totaalM2 = zijdeOppervlakte * structuur.zichtbare_zijden;\n  // 2 zijden = 1,61 m²\n\n  return totaalM2 * PRIJS_PER_M2;\n  // 1,61 × €120 = €193\n}\n
\n\n

Waarom dit werkt waar V1 en V2 faalden:

\n\n
    \n
  • Tellen is waar visiemodellen goed in zijn. Horizontale lijnen in gestapelde plankstructuren zijn contrastrijke, repetitieve visuele kenmerken. Het tellen van discrete lagen is fundamenteel anders dan het schatten van \"hoeveel meter\" – het is patroonherkenning, geen ruimtelijk redeneren.
  • \n
  • Verhoudingen zijn gemakkelijker dan absolute waarden. \"Deze muur is ongeveer 3,5 keer langer dan hij hoog is\" is een visuele beoordeling van de verhouding. Het model hoeft de absolute grootte niet te weten – alleen de vorm. Dit omzeilt de monoculaire ambiguïteit volledig.
  • \n
  • De schaalreferentie is echt. 12 cm per laag is geen aanname – het is een productiespecificatie die is ingebakken in zowel het fysieke product als de prompt voor beeldgeneratie. De AI \"weet\" de plankdikte omdat het de afbeelding heeft gegenereerd met die beperking.
  • \n
  • Creatieve vrijheid blijft behouden. In tegenstelling tot de catalogusaanpak van V2, beperken we niet wat de generator kan creëren. L-vormen, rondingen, geïntegreerde banken – alles is mogelijk. De laag-tel-aanpak werkt op elke vorm omdat het zichtbaar muuroppervlak meet, niet vooraf gedefinieerde categorieën.
  • \n
  • De AI observeert, code berekent. We hebben de taak opgesplitst in wat AI goed kan (visuele patroonherkenning) en wat code goed kan (rekenkunde). Geen van beide doet het werk van de ander. Het redenering veld dwingt het model om te beschrijven wat het ziet voordat het getallen geeft, wat slechte schattingen in de logs naar boven brengt en outputs gegrond houdt.
  • \n
\n\n

Wat veranderde er tussen de benaderingen

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
V1: Directe MetingV2: CatalogusclassificatieV3: Laag Tellen
Wat we de AI vragen\"Hoeveel meter?\"\"Wat voor type en maat?\"\"Hoeveel lagen? Welke verhouding?\"
AnkerpuntGeen (gokken)Vaste catalogus (beperkend)12 cm planklaag (fysiek)
Creatieve vrijheidVolledigBeperkt (vereist vooraf gedefinieerde typen)Volledig
Nauwkeurigheid±20-25% (onvoorspelbaar)Inconsistent (nooit uitgebracht)±20% (voorspelbaar, conservatief)
Prijsbereik±20% symmetrischVaste lookup (geen bereik)-20% / +10% (opzettelijk conservatief)
ModelGemini 2.5 Pro (~$0,005)Gemini 2.5 Flash (~$0,001)Gemini 2.5 Flash (~$0,001)
StatusWerkte, maar verlaten na onderzoekNooit uitgebracht – te beperkendIn productie
\n\n

Het asymmetrische prijsbereik in V3 verdient een opmerking. We neigen bewust naar onderschatting: -20% aan de onderkant, +10% aan de bovenkant. We geven liever €160-€210 op en hebben de werkelijke prijs €190, dan €190-€250 op te geven en iemand weg te jagen voordat ze überhaupt vragen. Minder beloven en meer leveren is beter dan andersom.

\n\n

Van gegenereerde afbeelding naar prijsindicatie in 5 seconden

\n\n

Dit is wat er gebeurt nadat een gebruiker een tuinontwerp heeft gegenereerd:

\n\n

Voor geregistreerde gebruikers wordt de prijsindicatie automatisch geactiveerd – geen knop nodig. De gegenereerde afbeelding wordt geschaald naar 1024px en naar een tweede AI-model gestuurd (Gemini 2.5 Flash, geconfigureerd voor visuele analyse op temperatuur 0,2 voor deterministisch tellen). Dit is een andere modelaanroep dan degene die de afbeelding heeft gegenereerd – de generator creëert, de analist meet.

\n\n

De analist retourneert een JSON met zijn redenering voor elke structuur: \"4 horizontale lagen zichtbaar, muur strekt zich ongeveer 3,5x de hoogte uit, voorkant en zijkant zichtbaar.\" Onze code vermenigvuldigt lagen met 0,12 m, past de verhouding toe, berekent m², en telt alles bij elkaar op.

\n\n

Het resultaat verschijnt direct onder de gegenereerde afbeelding – een groen paneel met een gedetailleerde tabel per structuur. Elke rij toont: structuurtype, afmetingen (hoogte × lengte), zichtbare zijden, muuroppervlak in m², en geschatte prijs. Het totaal toont X,XX m² × €120/m² met het prijsbereik in grote letters. Geen black box – gebruikers kunnen precies zien hoe de schatting is berekend en zelf beoordelen of het aantal lagen correct lijkt.

\n\n

Tegelijkertijd komt er een e-mail binnen met dezelfde details plus de tuinafbeelding. Als de gebruiker niet binnen 3 dagen reageert, volgt een enkele herinnering: \"Nog aan het nadenken over uw tuin?\" met een knop met één klik om een exacte offerte aan te vragen bij een mens. De hele keten – beeldgeneratie tot prijsindicatie tot e-mail – kost minder dan €0,01.

\n\n

De Economie: €0,135 Per Afbeelding, €0,001 Per Prijsopgave

\n\n

Een AI-gestuurde tool bouwen is één ding. Het economisch duurzaam maken is iets anders. Dit zijn de werkelijke cijfers.

\n\n

Beeldgeneratie kost €0,134 per afbeelding. We gebruiken het Pro-beeldmodel van Gemini – de duurste laag. We probeerden het goedkopere Flash-model vroegtijdig. De uitvoerkwaliteit was niet goed genoeg: texturen zagen er vlak uit, houtnerf was inconsistent, de plankverhoudingen van Brick liepen uiteen. Voor een tool waarbij visuele kwaliteit het product is, was het besparen van 60% op generatiekosten terwijl beelden werden geproduceerd die niet overtuigend leken, geen afweging waard.

\n\n

Prijsindicatie kost €0,001 per offerte. Hier is de berekening omgekeerd – we gebruiken Gemini 2.5 Flash voor de visuele analyse. Het tellen van planklagen en het schatten van verhoudingen vereist niet hetzelfde model dat fotorealistische beelden genereert. Flash behandelt tel taken betrouwbaar tegen een fractie van de kosten. Het kiezen van het juiste model voor elke taak – Pro waar kwaliteit ertoe doet, Flash waar de nauwkeurigheid van een specifieke smalle taak ertoe doet – is het verschil tussen een duurzaam en een onhoudbaar product.

\n\n

Een typische gebruikerssessie ziet er als volgt uit:

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
StapModelKosten
Genereer tuinontwerp (×2 gratis)Gemini Pro (beeld)€0,268
PrijsindicatieGemini 2.5 Flash (visie)€0,001
Prijsberekening + e-mailNode.js (geen API-aanroep)€0,000
Totaal per sessie~$0,27
\n\n

Elke gebruiker krijgt 2 gratis generaties zonder registratie. Het verstrekken van een e-mail ontgrendelt nog eens 3 (5 totaal per dag). Daarbuiten kopen gebruikers creditpakketten – 3 afbeeldingen voor €1 tot 50 voor €10. Tegen €0,134 per generatie, werken de marges uit tot ongeveer 40-60% afhankelijk van de pakketgrootte.

\n\n

De prijsindicatie zelf is altijd gratis – voor €0,001 per offerte zou het achter een betaalmuur plaatsen meer kosten aan verloren betrokkenheid dan het bespaart aan API-kosten. En de prijsberekening (lagen × 0,12 m × verhouding × zijden × €120/m²) draait volledig in onze code zonder API-aanroepen. Zodra Gemini Flash de laag-aantallen retourneert, is al het andere deterministische rekenkunde.

\n\n

We optimaliseren ook de invoerkosten bij elke stap. Door gebruikers geüploade foto's worden voorbewerkt met Sharp – geschaald naar maximaal 2048px en ontdaan van EXIF-gegevens voordat ze de API bereiken. Voor prijsopgave-analyse wordt de gegenereerde afbeelding verder gecomprimeerd tot 1024px JPEG. Drie referentieproductfoto's worden lokaal in de cache opgeslagen en vanaf de schijf geserveerd in plaats van van CDN te worden opgehaald bij elke aanvraag. De generatieprompt blijft onder de 150 woorden – boven de 200 begint het beeldmodel delen van de instructie te negeren.

\n\n

Het Businessmodel: We Verliezen Geld op Generatie. Dat is het Punt.

\n\n

Laten we eerlijk zijn over de economie. De meeste gebruikers genereren 2-5 afbeeldingen met hun gratis tegoed en kopen nooit een creditpakket. De weinigen die credits kopen, dekken bij lange na niet de totale API-kosten voor alle gebruikers. Puur op basis van generatie-inkomsten opereren we met verlies.

\n\n

Dat is opzettelijk. De AI Garden Designer is geen product – het is een trechter.

\n\n

Dit is wat we daadwerkelijk krijgen van een gebruiker die een tuinontwerp genereert en zijn e-mail invoert:

\n\n
    \n
  • Een warme lead met aankoopintentie. Iemand die een foto van zijn tuin uploadt, een ontwerp met verhoogde bedden genereert en een prijsindicatie bekijkt, is geen toevallige surfer. Ze overwegen actief een tuinproject. Dat is kwalitatief anders dan iemand die op een advertentie heeft geklikt.
  • \n
  • Een gepersonaliseerd prijsanker. De gebruiker heeft nu een specifiek getal in gedachten – \"mijn tuin zou ongeveer €350 kosten.\" Dat is veel effectiever dan een generieke productpagina met plankprijzen per stuk.
  • \n
  • Een visual waar ze al verliefd op zijn geworden. Ze hebben het ontwerp zelf gegenereerd. Ze hebben de dichtheid, de stijl, de rangschikking gekozen. Er is eigenaarschap in die afbeelding dat geen enkele catalogusfoto kan evenaren.
  • \n
\n\n

De e-mailreeks versterkt dit. Direct na het genereren van een ontwerp ontvangt de gebruiker een e-mail met een prijsopgave en de ingesloten tuinafbeelding – het specifieke ontwerp dat ze hebben gemaakt, geen stockfoto. De e-mail bevat een gedetailleerde uitsplitsing per structuur (type, muuroppervlak, geschatte prijs) en een prominente knop om een exacte offerte van een mens aan te vragen.

\n\n

Als ze niet binnen drie dagen reageren, komt er één herinnering: \"Nog aan het nadenken over uw tuin?\" – dezelfde afbeelding, hetzelfde prijsbereik, dezelfde knop met één klik. Slechts één herinnering, geen drip-campagne. We willen behulpzaam zijn, niet vervelend.

\n\n

Onder het gegenereerde ontwerp op de website staan altijd twee CTA's: een link naar de 3D-configurator waar ze exacte afmetingen kunnen specificeren, en een link om de webshop te bekijken. De reis van \"Ik vraag me af hoe mijn tuin eruit zou kunnen zien\" naar \"Ik ben mijn bestelling aan het configureren\" kan in één sessie plaatsvinden.

\n\n

Over privacy: e-mailinzending gaat altijd gepaard met een link naar ons privacybeleid en een duidelijke opmerking dat gebruikers zich op elk moment kunnen afmelden. De prijsopgave-e-mail is transactioneel – de gebruiker heeft expliciet een prijsindicatie aangevraagd. Marketing-e-mails (nieuwsbrief) vereisen een aparte expliciete opt-in-checkbox. We slaan alleen op wat nodig is: e-mail, locatie, de ontwerpafbeelding en de prijsuitsplitsing. GDPR-naleving is niet alleen een wettelijke vereiste – het is de enige manier om vertrouwen op te bouwen met mensen die u hun contactgegevens geven, samen met een foto van hun huis.

\n\n

De Grotere Les: Vraag de AI om te Observeren, Niet om te Antwoorden

\n\n

De fout in V1 was niet het gebruik van AI voor ruimtelijke taken – het was het vragen aan het model om direct het eindantwoord te produceren. \"Hoeveel meter lang is dit?\" vereist dat het model monoculaire ambiguïteit oplost, visuele kenmerken omzet naar fysieke eenheden en een gekalibreerd getal produceert. Dat zijn drie moeilijke problemen opgestapeld.

\n\n

V3 breekt het op in stukken. \"Hoeveel horizontale lagen?\" is een tel taak – een van de meest betrouwbare dingen die visiemodellen doen. \"Hoeveel keer langer dan hoog?\" is een schatting van de verhouding – ook betrouwbaar, omdat verhoudingen schaal-invariant zijn. De conversie van lagen naar meters, en van verhoudingen naar absolute afmetingen, is deterministische code met een bekende fysieke constante.

\n\n

Hetzelfde principe geldt buiten onze use case:

\n\n
    \n
  • Vraag niet \"hoe hoog is dit gebouw?\" – vraag \"hoeveel verdiepingen?\" en vermenigvuldig met de standaard verdiepingshoogte.
  • \n
  • Vraag niet \"hoe breed is deze kamer?\" – vraag \"hoeveel tegels breed?\" en vermenigvuldig met de tegelmaat.
  • \n
  • Vraag niet \"hoe lang is dit hek?\" – vraag \"hoeveel palen?\" en vermenigvuldig met de standaard afstand.
  • \n
\n\n

Als uw product of scène een herhalend, zichtbaar, dimensionaal consistent element bevat, heeft u al een liniaal. U hoeft de AI niet te laten meten – u hoeft hem alleen maar te laten tellen.

\n\n

Probeer het Zelf

\n\n

Upload een foto van uw tuin, laat de AI deze ontwerpen met modulaire verhoogde bedden, en krijg een directe prijsindicatie. Het hele proces duurt ongeveer 30 seconden. Het ontwerp en de prijsindicatie zijn gratis.

\n\n
\n

Krijg een Prijsindicatie in 30 Seconden

\n

Upload een foto → AI genereert uw tuinontwerp → directe prijsuitsplitsing.

\nProbeer AI Garden Designer\nOf Gebruik de 3D-configurator\n
\n\n

Veelgestelde Vragen

\n\n\n\n

Hoe nauwkeurig zijn AI-gegenereerde prijsindicaties van tuinbeelden?

\n

Ons systeem bereikt een nauwkeurigheid van ongeveer ±20%, met een opzettelijk conservatief asymmetrisch bereik (-20%/+10%). Dit betekent dat schattingen doorgaans iets lager zijn dan de werkelijke prijs, in plaats van hoger – we geven liever een onderschatting dan een overschatting.

\n\n

Welk AI-model wordt gebruikt voor de prijsindicatie?

\n

We gebruiken Google's Gemini 2.5 Flash voor visuele analyse. Elke schatting kost ongeveer $0,001 (een tiende van een cent). We zijn overgestapt van het duurdere Gemini 2.5 Pro nadat we ontdekten dat Flash vergelijkbaar presteert voor onze specifieke use case van het tellen van structurele lagen.

\n\n

Kan AI echt afmetingen meten uit een enkele foto?

\n

Niet direct – onderzoek toont aan dat AI-visiemodellen absolute metingen 63% van de tijd verkeerd krijgen. Onze aanpak omzeilt dit door de eigen structuur van het product (12 cm planklagen) te gebruiken als een ingebouwde schaalreferentie. De AI telt lagen en schat verhoudingen, waarna onze code de berekeningen uitvoert.

\n\n

Waarom niet GPT-4 Vision gebruiken in plaats van Gemini?

\n

Gemini Flash is ongeveer 4x goedkoper met vergelijkbare prestaties op het gebied van ruimtelijk redeneren voor onze specifieke use case. Aangezien we één API-aanroep per schatting doen, is de kosten per aanroep belangrijk – voor $0,001 per stuk kunnen we onbeperkte gratis schattingen aanbieden.

\n\n

Kan deze aanpak werken voor andere producten?

\n

Ja – als uw product een bekend, zichtbaar, dimensionaal consistent kenmerk heeft dat in afbeeldingen verschijnt. Baksteenlagen in metselwerk, vloertegels, standaard houtmaten, betonblokken – alles met een vaste reële afmeting die AI kan tellen, kan als schaalreferentie dienen.

\n\n

Is de prijsindicatie een bindende offerte?

\n

Nee, het is een indicatieve schatting om u te helpen plannen. U kunt met één klik een exacte offerte aanvragen – een mens beoordeelt het ontwerp en geeft binnen 24 uur een precieze prijs.

Terug naar blog