Camera boven pooltafel

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • eokken
  • Registratie: November 2008
  • Laatst online: 15-09-2020
Mijn doel is om een camera boven een pooltafel te hangen, die het spel kan analyseren en daar zoek ik een oplossing voor, voornamelijk m.b.t. hardware. Het probleem is de ruimte tussen de pooltafel en de hoogte van de lampen, die is namelijk vrij beperkt. Ik ben daarom bezig met een haalbaarheidsonderzoekje, zodat ik niet zomaar in het diepe spring. Wie heeft enig idee hoe ik dit aan zou kunnen pakken?

Optie 1 - Kinect
Het voordeel van Microsoft Kinect is dat er een SDK bij zit en dat dit perfect is voor het traceren van objecten. Ik heb gekeken naar Microsoft Kinect, met een horizontale kijkhoek van 70 graden. Met een Nyko Zoom krijg je daar een maximale winst van 40% over. Als ik de ruimte bereken (bedankt StackOverflow c# chat) die ik dan nodig heb tussen de pooltafel en de camera, dan kom ik op 108 cm. Ik ben bang dat dit in de praktijk tegen gaat vallen en/of teveel gaat zijn.

Optie 2 - Gewone camera
Een andere optie is een gewone camera of bijvoorbeeld een GoPro (met een kijkhoek van 170 graden) maar het nadeel daarvan is dat je alle calculaties m.b.t. patroonherkenning zelf moet doen, waardoor het project veel complexer wordt en een simpele mini-PC of zelfs Raspberry PI niet meer voldoet aan de eisen.

Wie heeft enig idee hoe ik dit aan zou kunnen pakken? Alle hulp is welkom!

Acties:
  • 0 Henk 'm!

  • alfaleader
  • Registratie: Mei 2009
  • Laatst online: 02-12-2024
Zou een raspberry pi met OpenCV niet gaan voor het analyseren van de pooltafel? De situatie lijkt mij redelijk ideaal (allemaal gekleurde ballen op een egaal groene ondergrond die egaal belicht is). (voordeel van OpenCV is dat er ook veel documentatie is)

Waar je wel misschien aan moet gaan denken is dat hoe meer breedhoek je gaat dat je vervorming (fisheye) effect hebt.

BTW: al iets van anderen die hetzelfde gedaan hebben: https://gocardless.com/bl...ts-the-pool-ball-tracker/

[ Voor 15% gewijzigd door alfaleader op 06-05-2015 17:42 ]


Acties:
  • 0 Henk 'm!

  • eokken
  • Registratie: November 2008
  • Laatst online: 15-09-2020
Echt ideaal is de situatie niet. De tafelkleur wordt meestal gemixt met de kleur van de lampen die vaak geel zijn. Ik weet niet in hoeverre dat echt een probleem gaat worden. Wat ik denk dat wel een probleem gaat worden is de ballen. Bij 8-ball speel je met 16 ballen, waarvan ongeveer de helft een solid kleur is, met een wit rondje waarin het nummer staat, en de andere helft van de ballen zijn wit gemixt met kleur.

http://thumbs.dreamstime....te-poolballen-2307929.jpg

Lijkt me überhaupt lastig onderscheid in te maken. (Ik weet dat dit niet in mijn oorspronkelijke bericht stond). Ongeacht van of het kan, gaat het niet veel te veel rekenkracht kosten met OpenCV? En niet al helemaal met een Raspberry PI?

Acties:
  • 0 Henk 'm!

  • CrashOverDrive
  • Registratie: Augustus 2005
  • Laatst online: 22:49
Het contrast kan met die ballen ook nog wel een aardig probleem worden. Geel en oranje lijkt van bovenaf aardig veel op elkaar afhankelijk van de belichting. Dit samen met de vervorming die je krijgt als je met relatief weinig hoogte je overzicht wilt hebben.

Hier een voorbeeldje van eigenlijk hetzelfde probleem waar ik ook aan werk :P 4 Camera's die samen een (robotvoetbal) veld van 7x5m bekijken vanaf een hoogte van slechts 2,5 meter. Grootste probleem is het contrast met de kleurdetectie. Als de lichtinval een heel klein beetje veranderd, bijv door wolken of de zon die simpelweg wat lager staat, dan scheelt het al behoorlijk in de kleurtemperatuur waardoor oranje ineens geel is en geel wit voor het oog van de camera.
Afbeeldingslocatie: http://static.tweakers.net/ext/f/uRZoGjQHiwyU4sk29NBhKAqm/full.jpg

Acties:
  • 0 Henk 'm!

  • DJSmiley
  • Registratie: Mei 2000
  • Laatst online: 16:26
CrashOverDrive schreef op woensdag 06 mei 2015 @ 17:56:
Het contrast kan met die ballen ook nog wel een aardig probleem worden. Geel en oranje lijkt van bovenaf aardig veel op elkaar afhankelijk van de belichting. Dit samen met de vervorming die je krijgt als je met relatief weinig hoogte je overzicht wilt hebben.

Hier een voorbeeldje van eigenlijk hetzelfde probleem waar ik ook aan werk :P 4 Camera's die samen een (robotvoetbal) veld van 7x5m bekijken vanaf een hoogte van slechts 2,5 meter. Grootste probleem is het contrast met de kleurdetectie. Als de lichtinval een heel klein beetje veranderd, bijv door wolken of de zon die simpelweg wat lager staat, dan scheelt het al behoorlijk in de kleurtemperatuur waardoor oranje ineens geel is en geel wit voor het oog van de camera.
[afbeelding]
Kun je geen grijskaartje in 1 van de hoeken monteren? Dat is een vaste kleursetting. Als je dat 'blokje' pixels pakt kun je die relatief eenvoudig gebruiken om een custom witbalans te creeren.

Je houd nog wel een wisselend kleurspectrum over, maar een correcte witbalans scheelt al een hele hoop.

Acties:
  • 0 Henk 'm!

  • Loy
  • Registratie: Februari 2004
  • Laatst online: 11-04 15:30

Loy

Hoe goed de Kinect SDK werkt voor het tracken van dingen die geen mensen zijn durf ik niet precies te zeggen, maar ik verwacht dat dat enorm tegenvalt.

Ik verwacht daarom dat een camera met een grote kijkhoek (zoals die GoPro met 170 graden) daarvoor beter werkt. Met OpenCV kun je de beelden wel rectifyen na camera kalibratie (http://docs.opencv.org/mo...tion.html#calibratecamera), zodat je niet van die kromme lijnen krijgt en het tracken makkelijker zou moeten worden.

Om de ballen uit het het beeld te filteren kun je background subtracktion doen, dus eerst een plaatje van een lege tafel (in het correcte licht) en dat steeds van ieder frame af trekken.

Chaos is more logic than you understand


Acties:
  • 0 Henk 'm!

Anoniem: 475099

Ik heb zojuist een topic gestart over DSP's. Zou een DSP niet geschikt zijn voor deze taak? Een DSP is uitermate geschikt om grafische beelden te analyseren. Misschien kun je de software downloaden van een community of zo. Als je zelf je zelf je wiskundige algoritmes wilt schrijven dan ben je wel even bezig, vandaar mijn suggestie om de software te downloaden. Of misschien kun je bepaalde low level routines downloaden en zelf de high level software schrijven. Ik heb nauwelijks relevante ervaring met DSP's maar wil me erin verdiepen.

Acties:
  • 0 Henk 'm!

  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 23:43

SA007

Moderator Tweaking
Houdt er sowieso rekening mee dat er 2 versies van de kinect zijn.
Er is een xbox en een pc versie, en de pc versie staat veel dichterbij 'gefocust'.

Probeer ook 's niet-zichtbaar licht.
IR kan hele leuke resultaten geven naast zichtbaar licht.
Eventueel kan je bijv 2 ballen die moeilijk te onderscheiden zijn met IR markeren.

Acties:
  • 0 Henk 'm!

  • Garyu
  • Registratie: Mei 2003
  • Laatst online: 15-05 09:37

Garyu

WW

Kinect lijkt me prima geschikt voor een dergelijk scenario, zie ook bijvoorbeeld hier:
http://123kinect.com/kinect-forums/thread-3748.html

It's Difficult to Make Predictions - Especially About the Future

Pagina: 1