Hoofdcategorieën
Device Settings

Nederlandse ontwikkelaar brengt bewegingsdetectie naar DSi

Door Paul Hulsebosch, donderdag 7 januari 2010 19:09, views: 11.628

De Nederlandse ontwikkelaar Engine Software heeft bewegingsdetectie op de Nintendo DSi mogelijk gemaakt. Het bedrijf brengt nog voor de zomer een game met de software uit, en de programmatuur zal ook in games van derden worden gebruikt.

Het in Doetinchem gevestigde Engine Software heeft een video vrijgegeven waarin het de software demonstreert. Nintendo's DSi beschikt niet over motion sensors, maar met de software van Engine blijkt het toch mogelijk te zijn om beweging te detecteren. De techniek zal uiteraard vooral gebruikt worden om games te besturen.

Tegenover Tweakers.net gaf Engines Ivo Wubbels aan dat het bedrijf aan een toepassing voor de programmatuur werkt; de desbetreffende game zal nog voor de zomer als DSiWare te downloaden  zijn. Volgens Wubbels zijn er echter ook enkele grote uitgevers die de techniek in DSi-games willen gebruiken, al wilde hij geen namen noemen.

De software van Engine maakt gebruik van de in de DSi ingebouwde camera om bewegingen van de handheld te detecteren. Engine Software spreekt om die reden dan ook van een 'tilting mechanisme.' Volgens Wubbels, oprichter en managing director van Engine, is het idee eenvoudig, maar was de uitvoering 'erg gecompliceerd'. Hij vindt echter dat de implementatie erg goed geslaagd is: 'het voelt erg natuurlijk aan, het werkt precies zo als je verwacht dat het werkt.'

Nintendo-directeur Satoru Iwata maakte eerder deze week bekend dat de Japanse gamesgigant  eveneens bewegingsdetectie voor de opvolger van de huidige DSi ontwikkelt. De vraag is alleen nog of Nintendo bewegingen met software of met hardware detecteert.

Volgende 20:02 CES: Boxee introduceert afstandsbediening met qwerty-keyboard
Vorige 18:44 CES: Sony kondigt nieuwe Cyber-shot-camera's aan
Advertentie

Reacties

«  1  2  3  »

Zo "complex" is dat toch niet? Ik bedoel...

- Maak plaatje1
- Maak plaatje2
- Vergelijk de beide
- Check in welke richting het beeld is verschoven.

Iets als gezichtsherkenning is ook heel complex terwijl het voor ons mensen heel simpel lijkt. Ik denk dat hier toch net wat meer complexiteit achter zit dan 2 plaatjes met elkaar vergelijken.

Dat is toch net wat anders.

tja, klinkt simpel, maar je moet wel rekening houden met de beperkte processingpower...

Oke daar heb je wel een punt ja daar heb ik niet aangedacht :P het is immers geen computer.

Ja wel, het is wel een computer

ik vraag me af, is dit niet eigenlijk hetzelfde als een optische muis? Dat zijn namelijk ook gewoon camera's die 2 plaatjes vergelijken en daar dan een beweging aan koppelen. En zoveel rekenkracht heeft een muis niet :)

ja, alleen hoeft die muis geen rekening te houden met mensen die langs de camera lopen.
of licht dat ineens even wegvalt.

"Zo "complex" is dat toch niet?"

Totdat je je gaat afvragen welke programmeeropdrachten je gaat intypen om dmv een vergelijking de bewegingsrichting te bepalen. Een functie in de trant van CheckDirectionOfMovement() is niet standaardonderdeel van een programmeertaal.

Het zal niet heel veel anders zijn als een richtings-vector produceren tussen een aantal punten op frame 1 en een aantal punten op frame 2. Als je een punt of 5 neemt en die averaged dan kom je al een heel eind, daarna hoef je de zy beweging alleen maar om te zetten naar xz beweging. Volgens mij is het niet extreem complex om te doen.

Het enige echte probleem is om het performant te houden want vziw heeft dat ding niet eens een vector unit, of uberhaupt floating point ondersteuning. Kortom, er zal best hardcore fixed-point gedaan moeten worden, maar dat is iets wat je op zich wel mag kunnen verwachten van een DS developer.

[Reactie gewijzigd door PrisonerOfPain op donderdag 7 januari 2010 22:37]


Je Tweakers CV ziet er indrukwekkend uit en je praat met dure woorden, maar toch vraag ik me af of je enig idee hebt waar dit over gaat!!!

Ben zelf eens met beeldverwerking bezig geweest voor de HTS, kan je verzekeren dat het niet eenvoudig was. En dan deden we dat slechts met zwart wit foto's die van goede kwaliteit waren. Dan maakten we ook nog eens gebruik van een krachtige PC met een goed rekenpakket (Matlab). Functies als erosie om verschillende vormen te detecteren zijn met 256 kleuren dan nog goed te doen. Maar met kleuren afbeeldingen zal dit echt niet zo makkelijk gaan!!!

Onzin. Het kan inderdaad zo eenvoudig als prisonerofpain zegt.
In de eerste plaats vind ik het een beetje apart dat je denkt dat matlabscriptjes representatief zijn voor de performance. Uit ervaring weet ik wel dat in matlab met wat optimalisatie real-time tracking van vormen uit 256-bit 320x240 kleurenafbeeldingen met 15fps rauw uit een webcam prima lukt, waarbij je gewoon een vector met plaatsinformatie terugkrijgt, voor een stuk of 5 vormen per plaatje. Als je hier je eigen C-routines van maakt draait het op een PC van 10 jaar geleden net zo vloeiend (waarschijnlijk afgezien van het grabben van de plaatjes van de webcam). Matlab is gewoon crap qua performance en een heleboel algoritmes zijn inefficient (qua tijd/aantal operaties; soms is er een reden om iets op een bepaalde manier te doen) geschreven. Daarnaast zijn de meeste mensen gewoon crappy programmeurs omdat het vaak niet meer nodig is om efficient code te schrijven. Ik heb behoorlijk vaak variabeledeclaraties in een loop voorbij zien komen. Of matrices die 'omdat het zo netjes lijkt' aan het eind van een operatie weer helemaal op nul worden gezet, om vervolgens weer helemaal overschreven te worden in de volgende operatie.

Om terug te komen op je post: zwart-wit- of kleurenfoto's van een goede kwaliteit lijken me helemaal niet nodig, ik denk dat je met de juiste thresholding met een binair plaatje al een heel eind komt (het lichtste punt / de lichtste punten uit een afbeelding lijkt me bij kleine bewegingen niet zoveel veranderen).

En, hoe weet de DS welke 5 punten hij moet pakken? Juist, dat moet je eerst laten bepalen. En voor het volgende frame moeten wel dezelfde 5 feature points gebruikt worden, anders gaat het mis. Er is geen sprake van een Wii-bar met een paar lichtjes als vast referentiekader, dat zou het inderdaad redelijk eenvoudig maken, maar hier gaat het om "onbekende" beeldinput, en dat is een stuk lastiger/rekenintensiever.

-het perspectief verandert
-de lichtinval verandert
-de kwaliteit is slecht
-je hebt een erg kleine rekenkracht

Het idee erachter is idd vrij simpel, maar ga dat maar eens uitwerken. Het is heus niet 2 keer exact hetzelfde plaatje bekijken, en zien hoe de tweede versie enkel maar verschoven is. Het gaat een pak verder. En dat moet je dan allemaal vlot geprogrammeerd krijgen op zo'n apparaat. Peuk werk zeg ik daartegen!

met histogram kun je dit soort dingen maken

Nou leg je het weer iets té simpel uit, want met een histogram weet je nog niets als je er niet een bepaald algoritme op loslaat.

Mathlab for the wi... Oh ja tis een DS... :(

?! yeah right, dit is real time en real life, en dus geen matlab op een quad core.

Klinkt als een geavanceerde versie van een optische muis, die doet toch zo'n beetje hetzelfde. Alleen moet je nu wel rekening houden met dat de beelden op de plaatjes niet helemaal hetzelfde zijn, door bewegingen van de gebruiker of achter hem. Een hele opgave dus als iemand in de trein voor het raam gaat zitten bijvoorbeeld. Een hele hippe optische muis dus.

Hmm, is het werkelijk?

Hoe detecteer je linksom? Hoe detecteer je rechtsom? Hoe leg je de processor uit dat dit het geval is? Hoe leg je de processor uit hoe snel dit gaat? Hoe leg je de processor uit in welke hoek dit precies gaat?

Komt toch langzaam aan wat meer bij kijken he? Detectie is 1 ding, uitleggen is nr. 2

Uhh uitleggen? Als je het eenmaal gedetecteerd hebt dan ben je er toch?

Als je weet hoeveel bepaalde punten verschoven zijn, moet je daaruit nog de snelheid, acceleratie, draaiing etc. berekenen.

Beetje kort door de bocht, mag je mij vertellen hoe jij dat softwarematig gaat oplossen! Ik weet wel een manier, maar heb het magische woord hier nog niet gelezen (nml: auto correlatie).

[Reactie gewijzigd door jjkewl op vrijdag 8 januari 2010 00:19]


Dit gaat zeker onmogenlijk bestuurbaar worden als het maar een beetje duister word.. Zo gaat het ook met mijn mobiel!

Geinig maar vraag me af hoe goed het werkt als er heel veel achter je beweegt

Ik denk niet dat het goed genoeg werkt om er hele games mee te maken

[Reactie gewijzigd door Rendeer op donderdag 7 januari 2010 19:16]


Als er heel veel achter je beweegt kun je met een normale D-pad ook niet normaal spelen.

leuk dat het eens van eigen bodem komt

Ik zou het wel fijn vinden dat dit bedrijf de grote namen kan strikken voordat Nintendo dat zelf doet.

En als de camera de bewegingen waarneemt betekend dat je je DS niet hoeft te bewegen maar gewoon met de hoofd kan bewegen, en als je de DS beweegt en je beweegt mee zal de DS misschien geen beweging registreren.

Maar is dat nou net niet een nadeel? als dus de software 'denkt' dat jij de DSi beweegt, maar dit niet doet... ik zie dit eerder dus als een nadeel dan als een voordeel.

Dit is toch voor de DSi, die heeft toch 2 camera's, zou er dan niet gewoon gebruik gemaakt worden van de camera aan de andere kant?

Moet je natuurlijk niet te veel met je benen bewegen :P

Tja heb je bij de Wii ook als je aan je reet wil krabben. Een lekkere controller of muis heeft daar geen probleem mee.
'K zie mezelf ook niet op het OV met mijn hoofd wiebelen langs alle kanten ipv een Dpad te gebruiken die we al decennia gebruiken en die onmogelijk nog kan verbeterd worden. En de nekpijn missen we natuurlijk ook allemaal liever.

kan je beter een kaartje met hardware support nemen zoals deze: http://www.ic2005.com/sho...=101&cat=5&page=1 ik iwl geen reclame maken maar das gewoon een flashcart die beweging ondersteunt.

Alleen is het kaartje voor de DS, niet voor de DSi

Is ook zo lekker officiëel van Nintendo en zo, dat kaartje :X ....

Ik snap deze niet helemaal :
'De vraag is alleen nog of Nintendo bewegingen met software of met hardware detecteert."
Leuk maar hardware kan toch niet functioneren zonder software ?

Die begrijp ik ook niet helemaal..het zal altijd wel hardware zijn, misschien slaat dit op de complexiteit? (balletje in tube of een gyroscoop)?

Of is het nou dat een camera wordt gebruikt?

[Reactie gewijzigd door citruspers op donderdag 7 januari 2010 20:04]


Ze bedoelen of Ninendo ook iets met de bestaande hardware doet om een tilt sensor te emuleren of dat men bijvoorbeeld een sensor in de cartridge in heeft gebouwd.

Ik denk dat ze bedoelen:

Hardwarematig - Een X/Y/Z axis accelometer binnenin een DS kaartje (wat er al is bij sommige homebrew kaarten)

Softwarematig - Software controlleert elke frame die de camera maakt, en kijkt zo of je beweegt.

Beide gebruiken natuurlijk software, maar een Acceleratie meter werkt met stroom IPV camerabeelden

Ze bedoelen met software waarschijnlijk dat er geen extra hardware wordt gebruikt die nog niet in de DSi zit, en met hardware dat er dus wel hardware bij wordt gedaan. (gyroscoop e.d).

De oplossing uit het artikel is dan softwarematig omdat het gebruikt van de hardware die al op het apparaat zit (de camera)

Want we weten allemaal hoe goed bewegingsdetectie werkt met de PS3 controller, en hoe precies de detectie van de wii is. :Y)

Cynisme aside, ben ik natuurlijk benieuwd of nintendo met iets goeds op de proppen kan komen, of dat het een grote gimmick wordt.

[Reactie gewijzigd door citruspers op donderdag 7 januari 2010 19:55]


Beweging op de PS3 gaat imo veel nauwkeuriger en sneller dan op een Wii. Bij de PS3 is eerder het probleem dat plat ook betekent dat je de controller plat moet houden, niet leuk als je in de zetel kruipt met een controller. De Wiimote is sowieso te traag om nog verdere nadelen te moeten ervaren.

Ms had al jaren gamepads die je kon tilten en echt interessant zijn die daar ook niet geworden. Er zijn gewoon veel betere inputs.

Op de iPhone is dit de gewoonste zaak van de wereld.

[Reactie gewijzigd door wfh op donderdag 7 januari 2010 20:17]


In een vliegtuig ook....
Maar all kidding en offtopicness aside, het is tegenwoordig een vrij logische evolutie...de meeste mobieltjes ("gaming platforms") hebben wel zo'n ding aan boord, en als je kijkt naar het succes van de wii lijkt het er op dat er een markt voor is.

Is het op de iPhone ook de gewoonste zaak van de wereld dat er 2 schermen opzitten?

Beetje appels met peren vergelijken.
«  1  2  3  »

Op dit item kan niet meer gereageerd worden.

Volgende 20:02 CES: Boxee introduceert afstandsbediening met qwerty-keyboard
Vorige 18:44 CES: Sony kondigt nieuwe Cyber-shot-camera's aan
VNU Media logo Hosted by True

© 1998 - 2012 Tweakers.net B.V. - Alle rechten voorbehouden - Contact - Jouw privacy - Algemene Voorwaarden

Uitgever van:

Website van het jaar 2011