Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home2/deanpear/public_html/wp-content/plugins/wp-cache/wp-cache-phase2.php:98) in /home2/deanpear/public_html/wp-content/plugins/si-captcha-for-wordpress/si-captcha.php on line 864

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home2/deanpear/public_html/wp-content/plugins/wp-cache/wp-cache-phase2.php:98) in /home2/deanpear/public_html/wp-content/plugins/si-captcha-for-wordpress/si-captcha.php on line 864
World Wide Sandbox
March 5th, 2010 | Tags: ,

NVIDIA has issued a recall for the driver version 196.75 released earlier this week (March 2nd) due to reported problems causing the GPU fan to stop working, causing the GPU to run without cooling and eventually burn out.

Activision Blizzard first made note of the problem when its support division began receiving complaints about malfunctioning and overheating video cards. Beta testers for their upcoming game Starcraft II also made note of the issue reporting lower frame rates and game play issues. Blizzard issued this statement to all their players:

“We’re getting reports where users are getting intermittent low FPS after installing these drivers. It seems that it is related to the fan control included in these drivers not working correctly and is causing the video card to overheat on 3D applications. This will affect Warcraft 3, World of Warcraft and StarCraft 2 Beta. Please uninstall the drivers and revert back to the older ones.”

NVIDIA has since pulled the driver from their website, rolling back to the previous stable 196.21 WHQL certified driver and have requested that users downgrade to the 196.21 version of the driver.

“We are aware that some customers have reported fan speed issues with the latest 196.75 WHQL drivers on NVIDIA.com. Until we can verify and root cause this issue, we recommend that customers stay with, or return to 196.21 WHQL drivers. Release 196.75 drivers have been temporarily removed from our Web site in the meantime.”

It is recommended that if you have done a driver update recently that you check if you are running version 196.75 of the and to immediately roll back to an earlier stable version of the driver, even if you haven’t noticed any issues, until NVIDIA has resolved the failure report. Please contact NVIDIA to report graphics card failures, as it is a driver issue and not a game issue.

If you are looking for the rollback version of the driver you can find them below:

Windows XP: http://www.nvidia.com/object/winxp_196.21_whql.html
Windows XP 64-bit: http://www.nvidia.com/object/winxp64_196.21_whql.html
Windows Vista/7 32-bit: http://www.nvidia.com/object/win7_winvista_32bit_196.21_whql.html
Windows Vista/7 64-bit: http://www.nvidia.com/object/win7_winvista_64bit_196.21_whql.html

December 18th, 2009 | Tags: , ,

I have been playing with edge detection for a few weeks now, and slowly I’m gathering a solid knowledge base related to how to do object detection. Primarily I have been playing with facial recognition, but my end goal is to be able to track hands, for a virtual table PC, so that when I build my surface computer the adaption of the algorithms is easy. The goal is to use edge detection and to determine the shape of the enclosed object.

The current algorithm that I am building is based on some assumptions:

  • The person is feature complete (two eyes, two eyebrows, one nose, one mouth)
  • The room is relatively well lit (haven’t incorporated luminosity correction for shape detection, need to work on performance)
  • There is a notable edge difference between these features (enough for the algorithm to detect edges)

Assuming these things, the edge detection is mounted in a matrix and through various reduction methods, it reduces the amount of noise (isolated, or only sharing an edge with one cell). From these shapes we can determine facial structure based on clusters of a predefined shape.

While this is fun for face tracking purposes, it strays from the principle concept that is trying to be achieved with virtual touch computing. Facial features are relatively easy to track as they are static in context of each other, so predictable patterns even in rotation are possible. Fingers on the other hand are a more dynamic object to track, as spacing, position count are likely to change frequently. For example someone who wants to drag an object around may only hold out one finger and drag the object where they want to move it, while a rotation might use all five fingers.

On a surface such as a touch PC, this is relatively easy through the user of IR LEDs using the aforementioned FTIR (frustrated total internal reflection) methods of light detection, or through the idea of using a set of IR lasers close to the surface with planers to diffuse the beam over the table, but virtually there is lots of noise in the image. The algorithm that I am currently working on tries to filter out the noise through the following methods:

  • Identify the individual in the image (or what is visible of them) and filter out the background image to 0’s in the matrix
  • Process the general form outline, find where on the matrix the general shape of the hands are, and once this is processed identify the digits
  • Filter out everything except the digits and return the points which are visible

This sounds easier than it looks, however there are many limitations and issues when it comes to distinguish-ability. Another problem on top of this is light conditions, multiple people in the image and detectability of their shape. This is the area that I am working on now for performance reasons. Regardless, the skills I obtain developing this algorithm will make surface digit detection trivial in nature.

If anyone has any suggestions on how to detect full human motion based on image capture and processing, please let me know. I am always looking for a good algorithm ;)

December 13th, 2009 | Tags: ,

Whoa, it has been way too long since I have been on here, but I am coming back with some interesting new projects. I have spent many months working at the Pythian Group as a Perl software developer. Fantastic experience in my opinion, but anyways, I have been experimenting in my free time with using C# for various projects. I want to use it primarily because it is an easy and efficient language, but secondarily to help improve my skills.

I have been playing with my Neural Network software, and with the idea of starting a company. Basically I got my software to a state where it can parse data from text based sources into the neural network and firing a query would highlight related items down the neural path. I am going to continue playing with this idea as I think it has potential in specialized searching and data recollection niches.

The new toy project I am working on is Edge detection and cleaning in C#. Now I know there are like a billion projects out there that play with these ideas, but I would like to be able to play with it myself. I have assembled a working demo of this project, though the source is not quite ready to release yet for everyone’s eyes. Currently it uses a simple color edge detection algorithm, as that sort of algorithm will plug in nicely with my image signature detection algorithm that I was developing a few months back. Basically all it can do now is edge detection in real time, which is a feat for me, I have been away from the specialized programming for several months now, but am slowly getting back into it.

Edge Detection Algorithm at Work

Edge Detection Algorithm at Work

This is a sample shot from an early version of my algorithm. It detects edge colour differences in a given webcam image and currently overlays the original bitmap. While this traditionally works quite well, it tends to produce a lot of noise and wide edges. For this reason, I’m working on a newer algorithm that slices the image into zones, which then calculate the noise ratio independently and adjust the thresholds for the edge detection appropriately. Currently the changes are looking promising but need to undergo a large amount of changes before I will be able to rely on it for all my data processing.

The next step is to detect “object” edges, which are complete logical elements in images (house for example, window, etc) and process them into sub-object “textures” to be stored and signed using my other algorithms. This will allow the camera to begin to categorize and classify items in the real world, for what will be unveiled as my larger scale project in future posts. Hopefully sometime soon I will get a chance to clean the source and upload an example of my edge detection algorithms using the zone sampling method.

I am now finishing up my co-op term, meaning that I will have a lot more time now to play with programming, so expect more posts in the coming weeks and months!

July 18th, 2009 | Tags: , ,
Bing Logo

The New Face of Search?

Bing has now been with us for a little over a month now, and I was excited to hear about Microsoft’s latest offering. Something over the past couple years at Microsoft changed, as I’ve gone from strongly disliking their products to being able to actually use them in my day-to-day life. An example of this is the Windows 7 Release Candidate, which runs fantastically, and so far has been much more stable than my previous Windows XP and Vista experiences. Whatever they are doing culture-wise over at the Redmond campus seems to be working though.

As much as I would like to give Microsoft credit for their Bing offering, I am reminded by the shadows of their previous release: the MSN Network and Windows Live Search. Both of those products left a terrible taste in my mouth and I found them to be incredibly user unfriendly. It has taken years for Microsoft to finally get it right, and it seems that they have in a big way.

The first thing I noticed was the clean interface. I want to say Google-like, but there is a distinctive design use there that separates it from the competition enough to be called unique. But it isn’t the colour scheme that I’m particularly interested in; I’m much more interested in the search results and feature capabilities. On those two topics I was pleasantly surprised by the relevance and clarity of results provided. My measure of usability relies on two things: how simple of a search I can do to retrieve the content and how relevant that content actually is to my needs.

Now, I have been using Google for years, I think I started when I was maybe 14, after I got tired of dealing with the poor returns of the heavyweights of the time: AltaVista and Ask. I used Google once and was hooked. Bing almost did the same thing for me as Google did to the previous reigning champions: it got me interested in my search results again. With their snippets of information beside each search, the cleanliness of the results page and most importantly getting me to my relevant content fast. It perplexed me how much I actually enjoyed using their service, and as of right now I use Bing as my default search provider.

Now I don’t tend to use many of the other services provided on a regular basis, such as image search and news group search, but from the little I use the services, I say that they are at an equal trade off: Google is a little faster, whereas Bing has a few more nice UI features. That being said, I don’t really consider those categories when I am comparing the two engines.

Overall, I have to say yes, Bing must be a real competitor to Google, since it seems to be swaying quite a few users back the Microsoft way, even for a short while. Also based on the fact that Google seems to be alert to this new competitor is interesting, as shortly after Microsoft began to see success with Bing, Google announced their entrance into the desktop operating system market. Now if that isn’t a knee-jerk reaction to Bing, then I don’t know what is. It will be interesting to see how these two giants battle it out over the next year or so, and it will also be interesting to see what people have to say about their experience with this new search competitor.

June 21st, 2009 | Tags: ,

I guess it shouldn’t come as a shock to me that there are still people out there who do not believe that the internet is a great medium for information sharing and gathering, but in some cases I see their points. One of the latest authors to do so is Ray Bradbury, who believes that the internet is not something where tangible work can be done and shared. And while I share in his belief that libraries are a persistent and necessary tool in civilization, I don’t share his belief that the internet is not a powerful medium in his own. So to satisfy myself, I produced the following binary table:

Binary table comparing the internet to libraries.

The MPAA... So Much Hate

There, now I feel much better being in the (1,1) column of this binary table of information love. Either way, share your comments on your beliefs about the internet.

TOP