<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Johannes &#34;jfk&#34; Kuhlmann&#039;s Blog &#187; face</title>
	<atom:link href="http://johanneskuhlmann.de/blog/tag/face/feed/" rel="self" type="application/rss+xml" />
	<link>http://johanneskuhlmann.de/blog</link>
	<description></description>
	<lastBuildDate>Fri, 11 Jun 2010 10:27:17 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Maemo Face Detection/Tracking on HardWorkingBee.com</title>
		<link>http://johanneskuhlmann.de/blog/2010/05/17/maemo-face-detectiontracking-on-hardworkingbee-com/</link>
		<comments>http://johanneskuhlmann.de/blog/2010/05/17/maemo-face-detectiontracking-on-hardworkingbee-com/#comments</comments>
		<pubDate>Mon, 17 May 2010 10:33:15 +0000</pubDate>
		<dc:creator>jfk</dc:creator>
				<category><![CDATA[maemo]]></category>
		<category><![CDATA[3d]]></category>
		<category><![CDATA[article]]></category>
		<category><![CDATA[detection]]></category>
		<category><![CDATA[face]]></category>
		<category><![CDATA[game]]></category>
		<category><![CDATA[head]]></category>
		<category><![CDATA[n900]]></category>
		<category><![CDATA[nokia]]></category>
		<category><![CDATA[tracking]]></category>

		<guid isPermaLink="false">http://johanneskuhlmann.de/blog/?p=690</guid>
		<description><![CDATA[I recently wrote a short article on my face detection and tracking endeavors on the Maemo platform for the blog HardWorkingBee.com. Basically, it&#8217;s a summary of my two previous two blog posts here (1, 2). As the blog is only available in German (currently), the article is also written in German.
They split my original article [...]]]></description>
			<content:encoded><![CDATA[<p>I recently wrote a short article on my face detection and tracking endeavors on the Maemo platform for the blog <a href="http://www.hardworkingbee.com/" target="_blank">HardWorkingBee.com</a>. Basically, it&#8217;s a summary of my two previous two blog posts here (<a href="http://johanneskuhlmann.de/blog/2010/02/25/face-detection-and-tracking-on-the-nokia-n900/" target="_blank">1</a>, <a href="http://johanneskuhlmann.de/blog/2010/04/28/3d-on-the-nokia-n900-through-head-tracking/" target="_blank">2</a>). As the blog is only available in German (currently), the article is also written in German.</p>
<p>They split my original article in two parts:</p>
<ul>
<li><a href="http://www.hardworkingbee.com/2010/05/11/experimental-face-detection-tracking/" target="_blank">Experimental: Face Detection &#038; Tracking</a></li>
<li><a href="http://www.hardworkingbee.com/2010/05/14/experimental-3d-effekt-maemo-nokia-n900/" target="_blank">Experimental: 3D-Effekt Maemo Nokia N900</a></li>
</ul>
<p>The original article is this:</p>
<blockquote><p>
Im Rahmen meiner Diplomarbeit &#8220;Face Detection und Tracking für Computerspiele auf mobilen Endgeräten&#8221; habe ich mich damit beschäftigt, Gesichter in Bildern zu detektieren. Das hört sich erst mal nicht spannend an, ermöglicht aber interessante Anwendungen.</p>
<p>Als Plattform kommt das Nokia N900 zum Einsatz. Eine wichtige Voraussetzung ist eine Kamera auf der Vorderseite des Geräts, welche das N900 besitzt. In den durch die Kamera aufgenommenen Bildern wird jeweils die Position des Gesichts des Benutzers bestimmt. So kann das Gerät die Position des Benutzers relativ zum Gerät herausfinden und diese Position kann als Eingabe benutzt werden.</p>
<p>Als erste Anwendung habe ich ein einfaches Spiel mit dem Namen BurgerFace entwickelt. Das Ziel des Spiels ist, bestimmte Objekte (Burger) einzusammeln und anderen auszuweichen (Messer). Um das zu erreichen, muss der Spieler seinen Kopf relativ zum N900 bewegen. Das kann durch Bewegen des Kopfes selbst oder durch Bewegen des Geräts umgesetzt werden. Trotz dieses einfachen Spielprinzips haben die meisten Spieler sehr viel Spaß gehabt. Da das Spiel mit den eigenen Bewegungen gesteuert wird, ist es sehr intuitiv. Es ist nicht nötig, dass man vorher irgendwelche Tastenbelegungen erlernt.</p>
<p><center><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/A-Wh4NuRfeU&#038;hl=en_US&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/A-Wh4NuRfeU&#038;hl=en_US&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object></center></p>
<p>Die zweite Anwendung ist ein einfacher, aber sehr eindrucksvoller 3D-Effekt. Er erweckt beim Benutzer den Eindruck, dass der Bildschirm des Geräts eine gewissen Tiefe hat. Unter bestimmten Umständen können Gegenstände auch so erscheinen, als würden sie aus dem Bildschirm herausragen. Der Bildschirm wirkt wie ein Fenster in eine virtuelle Welt.</p>
<p>Das Prinzip ist, dass die Position der Kamera, durch die die 3D-Szene aufgenommen wird, und die Projektion entsprechend der Position des Betrachters relativ zum Gerät angepasst werden. Setzt man das richtig um, wird die Sicht auf die 3D-Szene immer gerade so angepasst, wie sich auch die Sicht durch ein echtes Fenster ändern würde.</p>
<p><center><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/yWPNNBepBUw&#038;hl=en_US&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/yWPNNBepBUw&#038;hl=en_US&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object></center></p>
<p>Abgesehen von den beiden vorgestellten Demos gibt es noch viele andere spannende Anwendungen. Ich habe auch bereits einige interessante Vorschläge bekommen. Derzeit überlege ich, was ich als nächstes mache.
</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://johanneskuhlmann.de/blog/2010/05/17/maemo-face-detectiontracking-on-hardworkingbee-com/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>3D On The Nokia N900 Through Head Tracking</title>
		<link>http://johanneskuhlmann.de/blog/2010/04/28/3d-on-the-nokia-n900-through-head-tracking/</link>
		<comments>http://johanneskuhlmann.de/blog/2010/04/28/3d-on-the-nokia-n900-through-head-tracking/#comments</comments>
		<pubDate>Wed, 28 Apr 2010 21:07:21 +0000</pubDate>
		<dc:creator>jfk</dc:creator>
				<category><![CDATA[maemo]]></category>
		<category><![CDATA[3d]]></category>
		<category><![CDATA[detection]]></category>
		<category><![CDATA[face]]></category>
		<category><![CDATA[front camera]]></category>
		<category><![CDATA[head]]></category>
		<category><![CDATA[n900]]></category>
		<category><![CDATA[nokia]]></category>
		<category><![CDATA[opengl es 2.0]]></category>
		<category><![CDATA[thesis]]></category>
		<category><![CDATA[tracking]]></category>

		<guid isPermaLink="false">http://johanneskuhlmann.de/blog/?p=676</guid>
		<description><![CDATA[Building on the algorithms I&#8217;ve implemented as part of my Diplom Thesis, I&#8217;ve now implemented a demo of a 3D view on the Nokia N900. The idea is to adjust the camera through which the 3D scene is viewed to the user&#8217;s head position. The screen then appears to be a window into the virtual [...]]]></description>
			<content:encoded><![CDATA[<p>Building on the algorithms I&#8217;ve implemented as part of my Diplom Thesis, I&#8217;ve now implemented a demo of a 3D view on the Nokia N900. The idea is to adjust the camera through which the 3D scene is viewed to the user&#8217;s head position. The screen then appears to be a window into the virtual world.</p>
<p>The 3D scene is easily constructed on the N900 using OpenGL ES 2.0. A small box and a few foreground objects are sufficient. In order to determine the head position I use the face detection and tracking code I&#8217;ve recently implemented (<a href="http://johanneskuhlmann.de/blog/2010/02/25/face-detection-and-tracking-on-the-nokia-n900/" target="_blank">and already used for a little tech demo</a>). The two things are easily put together and the result is this:</p>
<p><center><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/yWPNNBepBUw&#038;hl=en_US&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/yWPNNBepBUw&#038;hl=en_US&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object></center></p>
<p>The method is not new:</p>
<ul>
<li><a href="http://www.youtube.com/watch?v=Jd3-eiid-Uw" target="_blank">It was first publicized by Johnny Lee in 2007 using a Wiimote.</a></li>
<li><a href="http://www.youtube.com/watch?v=h5QSclrIdlE" target="_blank">It was recently used in a Nintendo DSi game where hidden objects have to be found.</a></li>
</ul>
<p>The most difficult thing is to get the perspective right as there is a lot of conflicting information out there. Johnny Lee used the Direct3D function <code>PerspectiveOffCenterLH</code>, which is obviously not available in OpenGL. The best hint I found is <a href="http://forum.quest3d.com/index.php?topic=67720.0" target="_blank">here</a>. There projection matrix M should look like this:</p>
<p><center><img src="http://johanneskuhlmann.de/blog/wp-content/uploads/2010/04/projection_matrix.png" alt="Projection matrix" title="Projection matrix" width="244" height="88" class="size-full wp-image-685" /></center></p>
<p>Where n is the distance to the near clipping plane, f the distance to the far clipping plane, t and b define the horizontal clipping planes, l and r define the vertical clipping planes.</p>
<p>I think the effect is pretty cool and I&#8217;m currently contemplating making a game with it.</p>
]]></content:encoded>
			<wfw:commentRss>http://johanneskuhlmann.de/blog/2010/04/28/3d-on-the-nokia-n900-through-head-tracking/feed/</wfw:commentRss>
		<slash:comments>36</slash:comments>
		</item>
		<item>
		<title>Face Detection And Tracking On The Nokia N900</title>
		<link>http://johanneskuhlmann.de/blog/2010/02/25/face-detection-and-tracking-on-the-nokia-n900/</link>
		<comments>http://johanneskuhlmann.de/blog/2010/02/25/face-detection-and-tracking-on-the-nokia-n900/#comments</comments>
		<pubDate>Thu, 25 Feb 2010 20:30:57 +0000</pubDate>
		<dc:creator>jfk</dc:creator>
				<category><![CDATA[uni]]></category>
		<category><![CDATA[burgerface]]></category>
		<category><![CDATA[detection]]></category>
		<category><![CDATA[face]]></category>
		<category><![CDATA[game]]></category>
		<category><![CDATA[head]]></category>
		<category><![CDATA[maemo]]></category>
		<category><![CDATA[n900]]></category>
		<category><![CDATA[test]]></category>
		<category><![CDATA[thesis]]></category>
		<category><![CDATA[tracking]]></category>

		<guid isPermaLink="false">http://johanneskuhlmann.de/blog/?p=633</guid>
		<description><![CDATA[These last months I&#8217;ve been working on my Diplom Thesis and now it&#8217;s slowly coming to an end. The topic of my thesis is Face Detection and Tracking for Computer Games on Mobile Devices. I started out working on the Nintendo DSi, but then had to change to the Nokia N900 because the company I [...]]]></description>
			<content:encoded><![CDATA[<p>These last months I&#8217;ve been working on my Diplom Thesis and now it&#8217;s slowly coming to an end. The topic of my thesis is <b>Face Detection and Tracking for Computer Games on Mobile Devices</b>. I started out working on the Nintendo DSi, but then had to change to the Nokia N900 because the company I worked at  <a href="http://johanneskuhlmann.de/blog/?p=627">went insolvent</a>.</p>
<p>I&#8217;ve implemented two different face detection systems on the Nokia N900 of which one works pretty well. On top of that I&#8217;ve created a very simple game &#8211; a technology demo &#8211; that uses the player&#8217;s head position as the input. The game is called <b>BurgerFace</b> and looks like this:</p>
<p><center><div id="attachment_644" class="wp-caption aligncenter" style="width: 310px"><a href="http://johanneskuhlmann.de/blog/wp-content/uploads/2010/02/Screenshot-20100225-020343.png"><img src="http://johanneskuhlmann.de/blog/wp-content/uploads/2010/02/Screenshot-20100225-020343-300x180.png" alt="BurgerFace Screenshot" title="BurgerFace Screenshot" width="300" height="180" class="size-medium wp-image-644" /></a><p class="wp-caption-text">BurgerFace Screenshot</p></div></center></p>
<p>The goal is to pick up the burgers that increase the score and dodge the knives that cost lives. I&#8217;ve also created a video that shows the game in action:</p>
<p><center><object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/A-Wh4NuRfeU&#038;hl=en_US&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/A-Wh4NuRfeU&#038;hl=en_US&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object></center></p>
<p>Now I need to evaluate how well this input method works and if it&#8217;s fun. For that, I need <b>your help</b>. I&#8217;ve put the game online. <a href="http://johanneskuhlmann.de/projects/facedetect/burgerface_0.1-1_armel.deb">Download it here</a> (764 KB). It&#8217;s a .deb package that can easily be installed on your N900 by opening the file after downloading it (it depends on SDL, SDL_mixer and SDL_ttf and yes, it&#8217;s optified). It can also be uninstalled easily through the application manager.</p>
<p>Please download the game and play it as much as you like. <del>Afterwards, take the <a href="" target="_blank">survey that asks you some questions about the game and the input method</a>. You can either take part in the survey on your computer or directly on the N900. If you want to do it on your N900 you can easily open the survey directly from the game.</del></p>
<p>I&#8217;d be very happy if you played the game and took the survey as that would greatly improve my thesis. <img src='http://johanneskuhlmann.de/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p><b>Update:</b> I also posted this on <a href="http://talk.maemo.org/showthread.php?t=45866" target="_blank">Maemo Talk</a>.</p>
<p><b>Update:</b> The survey is closed now. Thanks to all participants! The download is still online though.</p>
]]></content:encoded>
			<wfw:commentRss>http://johanneskuhlmann.de/blog/2010/02/25/face-detection-and-tracking-on-the-nokia-n900/feed/</wfw:commentRss>
		<slash:comments>42</slash:comments>
		</item>
	</channel>
</rss>
