<?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>TODAY, CREATE. &#187; Computer Vision</title>
	<atom:link href="http://www.todaycreate.com/category/computer-vision/feed" rel="self" type="application/rss+xml" />
	<link>http://www.todaycreate.com</link>
	<description>Home of the daily creative output and exploration of ideas for Mike Creighton, artist and programmer.</description>
	<lastBuildDate>Mon, 06 Feb 2012 03:01:52 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Test Render of Groggy Self Portrait</title>
		<link>http://www.todaycreate.com/2010/01/01/test-render-of-groggy-self-portrait</link>
		<comments>http://www.todaycreate.com/2010/01/01/test-render-of-groggy-self-portrait#comments</comments>
		<pubDate>Sat, 02 Jan 2010 05:41:13 +0000</pubDate>
		<dc:creator>Mike Creighton</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[Computer Vision]]></category>
		<category><![CDATA[Drawing]]></category>
		<category><![CDATA[Flow]]></category>
		<category><![CDATA[Generative]]></category>
		<category><![CDATA[openFrameworks]]></category>
		<category><![CDATA[Sketches]]></category>

		<guid isPermaLink="false">http://www.todaycreate.com/?p=376</guid>
		<description><![CDATA[+ View the piece on Flickr. Today I finished up a drawing &#8212; a bad self portrait. This is the first piece I&#8217;ve used as a data source for the new Flow Receiver capture system. It was drawn over a couple days / sessions. As soon as I finished it, I immediately exported the captured [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/mikecreighton/4235885644/" title="View the piece on Flickr."><img class="hasLargeImage" src="http://www.todaycreate.com/wp-content/creations/2010/01/2010-01-01_self_portrait_for_flow.jpg" alt="" border="0" /></a><span class="imageLinkHolder">+ <a href="http://www.flickr.com/photos/mikecreighton/4235885644/" title="View the piece on Flickr.">View the piece on Flickr.</a></span></p>
<p>Today I finished up a drawing &#8212; a bad self portrait. This is the first piece I&#8217;ve used as a data source for the new <strong><a href="http://www.todaycreate.com/2009/12/27/flow-receiver-completed">Flow Receiver</a></strong> capture system. It was drawn over a couple days / sessions. As soon as I finished it, I immediately exported the captured data, a 9MB XML file consisting of about 150,000 points.</p>
<p>Then I made the simplest visualization of the data I could. Using <a href="http://openframeworks.cc">openFrameworks</a> and the <a href="http://www.grinninglizard.com/tinyxml/">TinyXML</a> C++ library, I plotted a semi-transparent circle for each point in the data set. You can see the output rendered here:</p>
<p><object width="560" height="749"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=8494480&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=AAC132&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=8494480&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=AAC132&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="560" height="749"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.todaycreate.com/2010/01/01/test-render-of-groggy-self-portrait/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flow Receiver Completed</title>
		<link>http://www.todaycreate.com/2009/12/27/flow-receiver-completed</link>
		<comments>http://www.todaycreate.com/2009/12/27/flow-receiver-completed#comments</comments>
		<pubDate>Mon, 28 Dec 2009 03:58:03 +0000</pubDate>
		<dc:creator>Mike Creighton</dc:creator>
				<category><![CDATA[AIR]]></category>
		<category><![CDATA[Computer Vision]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Flow]]></category>
		<category><![CDATA[Realtime]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.todaycreate.com/?p=370</guid>
		<description><![CDATA[Note: Super sorry about the seriously shaky footage above. Next time I&#8217;ll make sure it doesn&#8217;t happen. Yesterday, I spent about 12 hours making what I thought would take &#8220;a couple hours&#8221; &#8212; the Flow Receiver module. In the video above, you can see me demoing the system. Everything is up and running and working [...]]]></description>
			<content:encoded><![CDATA[<p><object width="560" height="315"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=8415172&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=AAC132&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=8415172&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=AAC132&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="560" height="315"></embed></object></p>
<p><em><strong>Note:</strong></em> Super sorry about the seriously shaky footage above. Next time I&#8217;ll make sure it doesn&#8217;t happen.</p>
<p>Yesterday, I spent about 12 hours making what I thought would take &#8220;a couple hours&#8221; &#8212; the <strong>Flow Receiver</strong> module. In the video above, you can see me demoing the system. Everything is up and running and working seemingly well. This means it&#8217;s time to start creating &#8220;art.&#8221;</p>
<p>I designed the UI for this thing to be as simple as I could make it while also accounting for the fact that I&#8217;d be using it on a touch-enabled display. It only has three different &#8220;views&#8221; which you can see below.</p>
<p><a href="http://www.flickr.com/photos/mikecreighton/4221160970/" title="View larger on Flickr."><img class="hasLargeImage" src="http://www.todaycreate.com/wp-content/creations/2009/12/flow_receiver_home_screen.jpg" alt="" border="0" /></a><span class="imageLinkHolder">+ <a href="http://www.flickr.com/photos/mikecreighton/4221160970/" title="View larger on Flickr.">View larger on Flickr.</a></span></p>
<p><a href="http://www.flickr.com/photos/mikecreighton/4221160984/" title="View larger on Flickr."><img class="hasLargeImage" src="http://www.todaycreate.com/wp-content/creations/2009/12/flow_receiver_new_project_screen.jpg" alt="" border="0" /></a><span class="imageLinkHolder">+ <a href="http://www.flickr.com/photos/mikecreighton/4221160984/" title="View larger on Flickr.">View larger on Flickr.</a></span></p>
<p><a href="http://www.flickr.com/photos/mikecreighton/4220397505/" title="View larger on Flickr."><img class="hasLargeImage" src="http://www.todaycreate.com/wp-content/creations/2009/12/flow_receiver_project_recording_screen.jpg" alt="" border="0" /></a><span class="imageLinkHolder">+ <a href="http://www.flickr.com/photos/mikecreighton/4220397505/" title="View larger on Flickr.">View larger on Flickr.</a></span></p>
<p>Everything for <strong>Flow Receiver</strong> is built using <a href="http://www.adobe.com/go/air" title="rich Internet applications | Adobe AIR">Adobe AIR</a>. It communicates with <a href="http://ccv.nuigroup.com/" title="Community Core Vision">Community Core Vision</a> using CCV&#8217;s built-in UDP->TCP bridge which sends out TUIO data associated with the tracked blobs.</p>
<p><strong>Flow Receiver</strong> intercepts this TUIO data and displays the incoming data in the right-side panel. I&#8217;ll also use this software to interface with the <strong>Flow Storage</strong> back-end module for creating projects and recording the TUIO data to those projects.</p>
<p>When in &#8220;recording mode&#8221;, <strong>Flow Receiver</strong> buffers the incoming TUIO points until its internal &#8220;cache&#8221; is full, then sends that info via HTTP POST request to <strong>Flow Storage</strong> which dumps it into a MySQL database. I&#8217;m also storing a timestamp (to the millisecond) with each TUIO point collected so that I can later determine velocity data between &#8220;frames&#8221; as needed.</p>
<p>When it&#8217;s time to export a project&#8217;s data, I&#8217;ll use <strong>Flow Receiver</strong> to export the data as either an XML or CSV text file.</p>
<p>Not much else to it than that; it&#8217;s a super-simple application.</p>
<p>On a side note, I&#8217;m pretty amazed at what we can do with technology these days, the number of options from which we have to choose, and the speed at which we can produce this stuff. I&#8217;ve somehow managed to create a fully-functioning toolset in a total of about 20 man-hours, cobbled together from open source libraries, applications, and various other technologies &#8212; all at pretty much zero cost (aside from the time put in).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.todaycreate.com/2009/12/27/flow-receiver-completed/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flow Lives, but Now with No Glove</title>
		<link>http://www.todaycreate.com/2009/11/02/flow-lives-but-now-with-no-glove</link>
		<comments>http://www.todaycreate.com/2009/11/02/flow-lives-but-now-with-no-glove#comments</comments>
		<pubDate>Mon, 02 Nov 2009 20:16:21 +0000</pubDate>
		<dc:creator>Mike Creighton</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[Color]]></category>
		<category><![CDATA[Computer Vision]]></category>
		<category><![CDATA[Flow]]></category>
		<category><![CDATA[openFrameworks]]></category>
		<category><![CDATA[Processing]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.todaycreate.com/?p=282</guid>
		<description><![CDATA[Last year, I started a pet project called &#8220;Flow&#8220;. The point of the project was to find some intersection with more traditional art-making techniques and my interests in the digital realm. Well, that itch has resurfaced, and I realized I was making things way too complicated. This time, I&#8217;ve turned to using some open source [...]]]></description>
			<content:encoded><![CDATA[<p>Last year, I started a pet project called &#8220;<a href="http://www.todaycreate.com/category/flow" title="TODAY, CREATE. &raquo; Flow">Flow</a>&#8220;. The point of the project was to find some intersection with more traditional art-making techniques and my interests in the digital realm.</p>
<p>Well, that itch has resurfaced, and I realized I was making things way too complicated. This time, I&#8217;ve turned to using some open source tools for the data capture portion of the project. Components include:</p>
<ul>
<li>Computer</li>
<li>Webcam</li>
<li><a href="http://nuicode.com/projects/tbeta" title="Community Core Vision - Overview - NUI Group Community Code">Community Core Vision</a> (CCV)</li>
<li><a href="http://www.pixtream.com.br/?page_id=53" title="CCV Color Tracking | pixtream.com.br">Color Tracking Patch for CCV</a></li>
<li><a href="http://www.tuio.org/?processing" title="TUIO Processing">Processing TUIO Client API</a></li>
</ul>
<p>It&#8217;s actually really simple to get set up. Here&#8217;s a little demo of how it all comes together.</p>
<p><object width="560" height="420"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=7399668&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=AAC132&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=7399668&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=AAC132&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="560" height="420"></embed></object></p>
<p>Next steps include making a client to listen for the <a href="http://www.tuio.org/" title="TUIO">TUIO</a> data generated by CCV. I&#8217;m probably going to opt for an AS3 AIR client, since it&#8217;ll be fastest for me to create. Then create a web application that captures and stores this data. This I&#8217;ll build in <a href="http://codeigniter.com/" title="CodeIgniter - Open source PHP web application framework">CodeIgniter</a>, again, since it&#8217;ll be fastest for me to create in this environment.</p>
<p>I&#8217;ve got a lot of stuff on my plate this month, and I want to participate in this month&#8217;s <a href="http://www.flickr.com/groups/1219303@N25/" title="Flickr: NaNoDrawMo 2009">NaNoDrawMo</a> on top of it. So, we&#8217;ll see where things net out.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.todaycreate.com/2009/11/02/flow-lives-but-now-with-no-glove/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Wiimote Calibrator Demo</title>
		<link>http://www.todaycreate.com/2008/12/24/wiimote-calibrator-demo</link>
		<comments>http://www.todaycreate.com/2008/12/24/wiimote-calibrator-demo#comments</comments>
		<pubDate>Thu, 25 Dec 2008 04:13:50 +0000</pubDate>
		<dc:creator>Mike Creighton</dc:creator>
				<category><![CDATA[Computer Vision]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Flow]]></category>
		<category><![CDATA[Processing]]></category>
		<category><![CDATA[Wiimote]]></category>

		<guid isPermaLink="false">http://www.todaycreate.com/?p=150</guid>
		<description><![CDATA[I really didn&#8217;t think this was going to get finished today, but I managed to create the calibrator for tracking my glove using the Wiimote. Here&#8217;s a video demoing how it works: It&#8217;s written in Processing, uses the WiiuseJ open source Java library (which I highly recommend, at least on the Windows side), and leverages [...]]]></description>
			<content:encoded><![CDATA[<p>I really didn&#8217;t think this was going to get finished today, but I managed to create the calibrator for tracking my glove using the Wiimote. Here&#8217;s a video demoing how it works:</p>
<p><object width="560" height="422"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=2625861&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=c9ff23&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=2625861&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=c9ff23&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="560" height="422"></embed></object></p>
<p>It&#8217;s written in <a href="http://processing.org">Processing</a>, uses the <a href="http://wiiusej.googlecode.com">WiiuseJ</a> open source Java library (which I highly recommend, at least on the Windows side), and leverages the &#8220;Warper&#8221; class from Johnny Chung Lee&#8217;s <a href="http://www.cs.cmu.edu/~johnny/projects/wii/">Interactive Whiteboard project</a> for mapping the x,y position of my hand on my desk to the correct x,y position in my Processing sketch.</p>
<p>I ended up moving <a href="http://todaycreate.com/2008/12/23/wiimote-holder-and-glove-completed">the contraption</a> that holds the Wiimote up as high as I could, since the FOV was definitely cramped (and still is). I think I need to open up the hole in the cardboard holder a bit so the FOV gets extended even more.</p>
<p>I ran into an issue with the tracking becoming very unreliable if the IR LED wasn&#8217;t pointed directly at the Wiimote up above. To compensate, I created a little cone out of aluminum foil and wrapped it around the LED. It has a wedge that&#8217;s open and faces the general direction of the Wiimote. This definitely did the trick as the light from the LED reflects off the foil and creates a much bigger target for the Wiimote to see.</p>
<p>Now I can start moving onto the other physical components of this piece.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.todaycreate.com/2008/12/24/wiimote-calibrator-demo/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Flow Project Kickoff with Wiimote and IR LED</title>
		<link>http://www.todaycreate.com/2008/12/22/flow-project-kickoff-with-wiimote-and-ir-led</link>
		<comments>http://www.todaycreate.com/2008/12/22/flow-project-kickoff-with-wiimote-and-ir-led#comments</comments>
		<pubDate>Tue, 23 Dec 2008 05:34:18 +0000</pubDate>
		<dc:creator>Mike Creighton</dc:creator>
				<category><![CDATA[Computer Vision]]></category>
		<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Flow]]></category>
		<category><![CDATA[Wiimote]]></category>

		<guid isPermaLink="false">http://www.todaycreate.com/?p=131</guid>
		<description><![CDATA[So, I&#8217;ve officially begun my sabbatical and with that comes the beginning of a new project I&#8217;m entitling &#8220;Flow.&#8221; In the next post, I&#8217;ll try to detail more of the planning, but for this one, let&#8217;s talk about what I made today. Above, you&#8217;ll see the infrared (IR) LED contraption I&#8217;m making, which will eventually [...]]]></description>
			<content:encoded><![CDATA[<p>So, I&#8217;ve officially begun my sabbatical and with that comes the beginning of a new project I&#8217;m entitling &#8220;Flow.&#8221; In the next post, I&#8217;ll try to detail more of the planning, but for this one, let&#8217;s talk about what I made today.</p>
<p><img src="http://todaycreate.com/wp-content/creations/2008/12/flow_led_being_assembled.jpg" alt="Final IR LED assembly" border="0" /></p>
<p>Above, you&#8217;ll see the infrared (IR) LED contraption I&#8217;m making, which will eventually be mounted to a glove that I&#8217;ll be wearing while actually working on the project. The goal with this portion is to track the movements of my hand (the process of mark-making) &#8212; capturing the data for use in derivative pieces.</p>
<p>After seeing Johnny Chung Lee&#8217;s <a href="http://www.cs.cmu.edu/~johnny/projects/wii/">Wiimote Whiteboard</a> project, I was driven to use the following components to accomplish my goal:</p>
<ul>
<li>Nintendo Wiimote for IR LED tracking</li>
<li><a href="http://www.newegg.com/Product/Product.aspx?Item=N82E16833340002">AZiO BTD603-132 USB 2.0 BlueTooth Adapter</a>, which uses the Toshiba Bluetooth stack &#8212; aparently the best for making the most of the Wiimote</li>
<li>Battery-powered IR LED mounted on my hand to represent the gestural motion</li>
<li>A Java-based library for capturing the IR LED point data (currently leaning toward <a href="http://code.google.com/p/wiiusej/">WiiuseJ</a>)</li>
</ul>
<p>The final IR LED assembly (pre-glove-mounted) looks like this:</p>
<p><img src="http://todaycreate.com/wp-content/creations/2008/12/flow_completed_led_assembly.jpg" alt="LED being assembled." border="0" /></p>
<p>Now, I&#8217;ve never done anything with electronics, so this is my first encounter with a soldering iron, solder, resistors, ohms, amps, and volts. But, with some help from Instructables (check out <a href="http://www.instructables.com/id/LEDs-for-Beginners/">LEDs for Beginners</a>) and a <a href="http://ledcalc.com/">current resisting calculator</a>, things came together within an hour.</p>
<p>And here I am doing a goofy demo of what came of the afternoon:</p>
<p class="vimeo">
<object width="560" height="422"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=2608017&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=c9ff23&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=2608017&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=c9ff23&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="560" height="422"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.todaycreate.com/2008/12/22/flow-project-kickoff-with-wiimote-and-ir-led/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>

