tag:blogger.com,1999:blog-43831702968036107842024-03-13T14:13:23.144+01:00MacAcademiaPierrehttp://www.blogger.com/profile/15464461536281112118noreply@blogger.comBlogger17125tag:blogger.com,1999:blog-4383170296803610784.post-13242064270812319122009-06-25T01:16:00.001+02:002009-06-25T01:20:05.830+02:00Memories of Iceland (test #2)<object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=5312688&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=5312688&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><p><a href="http://vimeo.com/5312688">Memories of Iceland (test #2)</a>.</p><br /><br />A sequence of compressed panoramic landscape shots of Iceland, processed through a Processing (processing.org) script implementing a particles system, based on on Rui Madeira's "particulas220000" (<a href="http://rui-m.com/p5/particulas220000/">http://rui-m.com/p5/particulas220000/</a>). Each image was animated based on the brightness of its pixels.Pierrehttp://www.blogger.com/profile/15464461536281112118noreply@blogger.com0tag:blogger.com,1999:blog-4383170296803610784.post-83181553317600663052009-06-18T19:49:00.003+02:002009-06-25T01:21:26.108+02:00Memories of Iceland (test)<object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=5051460&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=5051460&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><p><a href="http://vimeo.com/5051460">Memories of Iceland (test)</a>.</p><br /><br />Made with Processing (processing.org) based on some of my own video footage and leveraging Andrés Colubri's glgraphics library (users.design.ucla.edu/~acolubri/processing/glgraphics/home/index.html) to do semi real-time filtering of video through stacking of OpenCV filters and GLSL shaders.Pierrehttp://www.blogger.com/profile/15464461536281112118noreply@blogger.com0tag:blogger.com,1999:blog-4383170296803610784.post-70893251887221592672009-05-18T00:45:00.004+02:002009-05-18T00:53:51.546+02:00Flash red blue (variation)LED-based light painting, processed by the <a href="http://processing.org">Processing</a> sketch used for <a href="http://macacademia.blogspot.com/2009/04/brightness-gradient-driven-particles.html">this video</a>. <br /><br /><a href="http://www.deviantart.com/deviation/122223664/"><img src="http://fc07.deviantart.com/fs43/i/2009/131/c/e/Flash_red_blue_II_by_tanepierre.png"/><br/>Flash-red-blue II</a> on <a href="http://tanepierre.deviantart.com/">deviantART</a><br /><br /><br /><a href="http://www.deviantart.com/deviation/122223377/"><img src="http://fc08.deviantart.com/fs42/f/2009/131/e/a/ea086d0ccf8ddcc95a639447665067af.png" alt="" /><br />Flash-red-blue</a> on <a href="http://tanepierre.deviantart.com/">deviantART</a>Pierrehttp://www.blogger.com/profile/15464461536281112118noreply@blogger.com0tag:blogger.com,1999:blog-4383170296803610784.post-50911920156678451302009-05-17T22:21:00.002+02:002009-05-17T22:29:36.107+02:00There is something in the hair (variation)<a href="http://www.deviantart.com/deviation/122222978/"><img src="http://fc07.deviantart.com/fs44/i/2009/131/9/e/There_is_something_in_the_hair_by_tanepierre.png" alt="" /><br />There is something in the hair</a> on ~<a href="http://tanepierre.deviantart.com/">deviantART</a><br /><br />A variation on <a href="http://www.flickr.com/photos/tanepierre/3346556370/">this Flickr photograph</a> based on the <a href="http://processing.org">Processing</a> sketch used for <a href="http://macacademia.blogspot.com/2009/04/brightness-gradient-driven-particles.html"> this video</a>.Pierrehttp://www.blogger.com/profile/15464461536281112118noreply@blogger.com0tag:blogger.com,1999:blog-4383170296803610784.post-21323221150532585292009-04-07T09:08:00.002+02:002009-04-07T09:11:04.781+02:00Square drop ripplesRandomly placed drops that create square-shaped ripples which expand outwards and fade out.<br /><br />Made with <a href="http://processing.org">Processing</a><br /><br /><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=4033178&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=4033178&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><br /><a href="http://vimeo.com/4033178">Square drop ripples</a>.Pierrehttp://www.blogger.com/profile/15464461536281112118noreply@blogger.com0tag:blogger.com,1999:blog-4383170296803610784.post-56036338317778941862009-04-02T21:48:00.003+02:002009-04-02T21:53:57.804+02:00Light breeze over the moonlit sea (test #1)Inspired by the Seigaiha Japanese wave pattern, tries to emulate a light breeze over a moonlit sea. I'm trying to refine the wave movement behaviour for it to have a more natural look.<br /><br /><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3976539&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=3976539&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><br /><a href="http://vimeo.com/3976539">Light breeze over the moonlit sea (test #1)</a>.<br /><br />Made with <a href="http://processing.org">Processing</a>.Pierrehttp://www.blogger.com/profile/15464461536281112118noreply@blogger.com0tag:blogger.com,1999:blog-4383170296803610784.post-38383023261860161142009-04-02T11:26:00.003+02:002009-04-02T11:33:53.616+02:00Brightness-gradient driven particles testA simple brightness-gradient-driven particles test. <br /><br />Starting from a base image, the maximum slope between the brightness of a pixel and its neighbours determines a flowfield that drives particles down the brightness gradient. Once the particles reach local minimum of brightness of the initial image (as determined by the flowfield), the flowfield is reinitialized based on the current resulting image.<br /><br />Made with <a href="http://processing.org">Processing</a>.<br /><br /><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3969340&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=3969340&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><br /><a href="http://vimeo.com/3969340">Brightness-gradient driven particles test</a>.Pierrehttp://www.blogger.com/profile/15464461536281112118noreply@blogger.com0tag:blogger.com,1999:blog-4383170296803610784.post-1976137042313679272009-04-01T22:58:00.002+02:002009-04-01T23:02:02.129+02:00Squares and circles, take 2Yet another exploration of combination of squares and circles in black and white. Made with <a href="http://processing.org">Processing</a>.<br /><br /><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3961876&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=3961876&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><br /><a href="http://vimeo.com/3961876">Untitled</a>.<br /><br /><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3962016&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=3962016&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><br /><a href="http://vimeo.com/3962016">Untitled</a>.<br /><br /><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3962314&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=3962314&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><br /><a href="http://vimeo.com/3962314">Untitled</a>.Pierrehttp://www.blogger.com/profile/15464461536281112118noreply@blogger.com0tag:blogger.com,1999:blog-4383170296803610784.post-16501290700138358672009-03-27T18:39:00.000+01:002009-03-27T18:39:00.364+01:00Squares and circles, combined (continued)Some sligth variations on the previous script. Made with <a href="http://processing.org">Processing</a>.<br /><br /><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3842913&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=3842913&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><br /><a href="http://vimeo.com/3842913">Squares and circles, combined (II)</a>.<br /><br /><br /><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3872080&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=3872080&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><br /><a href="http://vimeo.com/3872080">Squares and circles, combined (III)</a>.Pierrehttp://www.blogger.com/profile/15464461536281112118noreply@blogger.com0tag:blogger.com,1999:blog-4383170296803610784.post-59383416117171626602009-03-25T00:30:00.000+01:002009-03-25T00:30:01.011+01:00Squares and circles, combinedTesting different renditions mode (left is OpenGL renderer while center and right are normal Processing renderer with smooth enabled). Rendering of circles using OpenGL under <a href="http://processing.org">Processing 1.0.3</a> using that script tends to be quite noisy.<br /><br />Lag induced by capture software.<br /><br /><br /><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3841266&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=3841266&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><br /><a href="http://vimeo.com/3841266">Squares, circles, combined</a>.Pierrehttp://www.blogger.com/profile/15464461536281112118noreply@blogger.com0tag:blogger.com,1999:blog-4383170296803610784.post-24578235834714213022009-03-24T22:43:00.003+01:002009-03-24T22:47:43.376+01:00Meiotic Clusters ersatzLoosely inspired by Jarod Tarbell's Meiotic Clusters (levitated.net/bones/meotic/index.html). The script runs smoothly, the lag seems to be induced by the capture software. Implemented as a set of stacked alternating black and white circles, each rotating around an axis slightly off the main axis of the stack.<br /><br /><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3824227&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=3824227&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><br /><a href="http://vimeo.com/3824227">Meiotic Clusters ersatz</a>.Pierrehttp://www.blogger.com/profile/15464461536281112118noreply@blogger.com0tag:blogger.com,1999:blog-4383170296803610784.post-51185419581446003492009-03-24T00:15:00.000+01:002009-03-24T00:15:00.691+01:00Square in a circleA simple iterative <a href="http://processing.org">Processing</a> script inscribing a square in a circle.<br /><br /><br /><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3823850&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=3823850&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><br /><a href="http://vimeo.com/3823850">Square in a circle</a>.Pierrehttp://www.blogger.com/profile/15464461536281112118noreply@blogger.com0tag:blogger.com,1999:blog-4383170296803610784.post-75728590205933588532009-03-23T12:59:00.002+01:002009-03-23T13:03:57.976+01:00Black and white square spiralA simple square spiral from the upper left corner towards the center with pixels' colours variating from black to white and from black to white. The script runs smoothly on my machine but the capture (as shown on Vimeao) seems to slow down after a few seconds: probably too many programs running at once for iShowU to keep up. Made with <a href="http://processing.org">Processing</a>.<br /><br /><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3807678&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=3807678&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><br /><a href="http://vimeo.com/3807678">Black and white square spiral</a>.Pierrehttp://www.blogger.com/profile/15464461536281112118noreply@blogger.com0tag:blogger.com,1999:blog-4383170296803610784.post-74756330476236813222009-03-23T00:25:00.003+01:002009-03-23T00:31:46.134+01:00Processing - squares, circles (continued)The output of a script which is a simple composition of the two previous ones (i.e. mixes squares and rectangles).<br /><br /><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3804820&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=3804820&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><br /><a href="http://vimeo.com/3804820">Circle,square,square,circle-01</a>.<br /><br /><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3805841&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=3805841&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><br /><a href="http://vimeo.com/3805841">Square,circle,circle,square-01</a>.Pierrehttp://www.blogger.com/profile/15464461536281112118noreply@blogger.com0tag:blogger.com,1999:blog-4383170296803610784.post-57848065780955021742009-03-22T19:58:00.004+01:002009-03-23T00:24:38.337+01:00Processing - squares, circlesThe output of two simple <a href="http://processing.org">Processing</a> scripts.<br /><br /><object height="300" width="400"><param name="allowfullscreen" value="true"><param name="allowscriptaccess" value="always"><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3802360&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1"><embed src="http://vimeo.com/moogaloop.swf?clip_id=3802360&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" height="300" width="400"></embed></object><br /><a href="http://vimeo.com/3802360">circles-01</a>.<br /><br /><object height="300" width="400"><param name="allowfullscreen" value="true"><param name="allowscriptaccess" value="always"><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3802573&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1"><embed src="http://vimeo.com/moogaloop.swf?clip_id=3802573&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" height="300" width="400"></embed></object><br /><a href="http://vimeo.com/3802573">square-01</a>.Pierrehttp://www.blogger.com/profile/15464461536281112118noreply@blogger.com0tag:blogger.com,1999:blog-4383170296803610784.post-45734086460322661172008-01-25T22:57:00.000+01:002008-01-25T23:19:44.646+01:00Executing Python scripts importing the CoreGraphics moduleIf you get the following error<br /><code><br />Traceback (most recent call last):<br />File "spiraler.py", line 5, in ?<br /> from CoreGraphics import *<br />ImportError: No module named CoreGraphics<br /></code><br />when trying to execute a Python script which imports the <span style="font-style: italic;">CoreGraphics</span> module, e.g. via<br /><code><br />from CoreGraphics import *<br /></code><br />the problem lies with the fact that the referred <span style="font-style: italic;">CoreGraphics</span> module is only available in the Python distribution that comes installed with OS X in <tt>/System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/plat-mac/Carbon/CoreGraphics.py</tt> and doesn't come with standard distributions from <a href="http://www.python.org/">www.python.org</a> which install <span style="font-style:italic;">symlinks</span> in <tt>/usr/local/bin</tt> and modify the <tt>PATH</tt> environment variable to put <tt>/usr/local/bin</tt> in front.<br /><br />A way to address the issue consists, at least for scripts that would be executed directly from the terminal (through <tt>chmod u+x</tt>), in adding the following line to the first line of the script:<br /><code><br />#!/usr/bin/python<br /></code><br /><br />Initially took me some time to figure out what was the problem so i hope this will allow anybody reading this to save some time by not having to search for a solution.Pierrehttp://www.blogger.com/profile/15464461536281112118noreply@blogger.com0tag:blogger.com,1999:blog-4383170296803610784.post-222125318793790032008-01-25T02:21:00.001+01:002008-01-25T22:48:44.803+01:00Errors in Apple "Image Unit Tutorial"While following the <a href="http://developer.apple.com/documentation/GraphicsImaging/Conceptual/ImageUnitTutorial/Introduction/chapter_2_section_1.html">Image Unit Tutorial</a> (the 2007-10-31) version, i found a few errors that prevented the correct building of the sample Image Units.<br /><br />In summary, the errors affect the Detective Lens Image Unit and the Pixellate Filter.<br /><br />For the Detective Lens Filter ImageUnit example, the following changes are required in the <a href="http://developer.apple.com/documentation/GraphicsImaging/Conceptual/ImageUnitTutorial/WritingtheObjective-CPortion/chapter_5_section_5.html">Detective Lens Objective-C section</a>:<br /><ol><li>To be in line with <tt>DetectiveLensFilter.h</tt> of step 5, <tt>DetectiveLensFilter.m</tt> shall be corrected by changing <tt>inputWidth</tt> in customAttributes (step 10) into <tt>inputLensDiameter</tt></li><li>Accordingly, method <tt>outputImage</tt> shall be modified (step 13) so that all occurences of <tt>inputWidth</tt> are changed into <tt>inputLensDiameter</tt></li><li>Also in step 13, in <tt>outputImage</tt>, <tt>CIFilter *f;</tt> shall read <tt>CIFilter *compositedImage;</tt></li><li>In <tt>DetectiveLensFilter.m</tt>, the <tt>init</tt> method shall be modified so that path and url variables are declared as follows:</li></ol><code> NSString *path = nil;<br /> NSURL *url = nil;<br /></code><br />For the Pixellate filter:<br /><ol><li>In <tt>Pixellate.m</tt>, in method <tt>outputImage</tt> (step 8), <tt>PixellateTwoFilterKernel</tt> shall be changed to <tt>PixellateFilterKernel</tt></li></ol>Put online in the hope that it may help somebody.Pierrehttp://www.blogger.com/profile/15464461536281112118noreply@blogger.com0