<?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>Patrick Bader&#039;s Blog</title>
	<atom:link href="http://patrickbader.eu/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://patrickbader.eu</link>
	<description>a blog about software development</description>
	<lastBuildDate>Thu, 29 Jul 2010 13:30:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>ScreenBrightness v2</title>
		<link>http://patrickbader.eu/?p=136</link>
		<comments>http://patrickbader.eu/?p=136#comments</comments>
		<pubDate>Thu, 29 Jul 2010 13:30:41 +0000</pubDate>
		<dc:creator>Patrick Bader</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://patrickbader.eu/?p=136</guid>
		<description><![CDATA[I finally updated my ScreenBrightness tool to fix some crashes when running at startup. The new version can be found in the Projects page. Feel free to give some feedback!]]></description>
			<content:encoded><![CDATA[<p>I finally updated my ScreenBrightness tool to fix some crashes when running at startup.<br />
The new version can be found in the <a href="http://patrickbader.eu/?page_id=8">Projects page</a>.<br />
Feel free to give some feedback!</p>
]]></content:encoded>
			<wfw:commentRss>http://patrickbader.eu/?feed=rss2&amp;p=136</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Adjusting screen brightness with shortcuts</title>
		<link>http://patrickbader.eu/?p=118</link>
		<comments>http://patrickbader.eu/?p=118#comments</comments>
		<pubDate>Sat, 23 Jan 2010 19:31:00 +0000</pubDate>
		<dc:creator>Patrick Bader</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Backlight]]></category>
		<category><![CDATA[Brightness]]></category>
		<category><![CDATA[Laptop]]></category>
		<category><![CDATA[LCD]]></category>

		<guid isPermaLink="false">http://patrickbader.eu/?p=118</guid>
		<description><![CDATA[A while ago I installed Windows 7 on my Sony laptop. The good thing about it is it runs quite stable and most things just work. The bad thing some of the shortcuts with the blue "Fn" key don't work anymore. Adjusting the volume works perfectly fine, but setting the brightness of the LCD backlight [...]]]></description>
			<content:encoded><![CDATA[<p>A while ago I installed Windows 7 on my Sony laptop. The good thing about it is it runs quite stable and most things just work. The bad thing some of the shortcuts with the blue "Fn" key don't work anymore. Adjusting the volume works perfectly fine, but setting the brightness of the LCD backlight does not.<br />
Since Sony is not going to release any Windows 7 64 bit drivers for my model, I finally decided to write a little programm myself. This took several hours of searching for the right API to use. There are actualy three different ones:</p>
<ol>
<li>The first API I tried is called the <a href="http://msdn.microsoft.com/en-us/library/dd692962%28VS.85%29.aspx">Monitor Configuration</a> of the Win32 API but did not work for my laptop (some kind of I2C transmission error occured)</li>
<li>The <a href="http://msdn.microsoft.com/en-us/library/aa372656%28VS.85%29.aspx">Backlight Control Interface</a> using IOCTL was the first approach that worked for me, but getting the current brightness is not supported on newer Windows versions</li>
<li>So I ended up using <a href="http://msdn.microsoft.com/en-us/library/aa384642%28VS.85%29.aspx">WMI</a> which is available for .NET and works surprisingly quite well.</li>
</ol>
<p>Further usage information and a downloadable binary can be found on my <a href="http://patrickbader.eu/?page_id=8">Projects page</a><br />
If you encounter bugs or have any suggestions please do not hesitate and give some feedback.</p>
]]></content:encoded>
			<wfw:commentRss>http://patrickbader.eu/?feed=rss2&amp;p=118</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Bandpass Filtering and LCD Testing</title>
		<link>http://patrickbader.eu/?p=94</link>
		<comments>http://patrickbader.eu/?p=94#comments</comments>
		<pubDate>Wed, 02 Dec 2009 14:43:07 +0000</pubDate>
		<dc:creator>Patrick Bader</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://patrickbader.eu/?p=94</guid>
		<description><![CDATA[As promised here are some results of a test session with the LCD. I ordered a bandpass filter for 850 nm near-IR light for the PS3 camera a while ago at ebay. The filter blocks all light except in a small range around 850 nm wavelength. I am trying to build a multi-touch screen with [...]]]></description>
			<content:encoded><![CDATA[<p>As promised here are some results of a test session with the LCD. I ordered a bandpass filter for 850 nm near-IR light for the PS3 camera a while ago at ebay. The filter blocks all light except in a small range around 850 nm wavelength.</p>
<p>I am trying to build a multi-touch screen with the DSI technique, explained <a href="http://wiki.nuigroup.com/Diffused_Surface_Illumination">here</a> but instead of using a projector and some special projection surface I will be using the recently disassembled LCD.</p>
<p>So why not using a projector? The answer is quite simple: I don't own one <img src='http://patrickbader.eu/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  But there are some other facts that lead me to try it with an LCD:</p>
<ul>
<li>Projectors need quite a lot of distance from the projection surface but I am not intending to build a multi-touch table.</li>
<li>Even HD projectors which are quite expensive do have very limited resolution in relation to the size of the projection surface. So small text can hardly be read on such a table.</li>
<li>I wanted to build something smaller so one person is able to reach the whole screen from one location.</li>
</ul>
<p>There are basically two issues with the LCD approach:</p>
<ol>
<li>The camera is located behind the LC-panel thus has to track blobs through the panel which normally is covered by the backlight (with a white opaque layer) and some metal. This directly leads to the second problem.</li>
<li>The backlight has to be replaced with one that is itself transparent.</li>
</ol>
<p>My first approach was to use Plexiglass Endlighten for both backlight and IR illumination but I was not able to detect any blobs with the Plexiglass behind the LC-panel. So I bought another Plexiglass Endlighten which is located in front of the LC-panel for blob tracking purposes only.</p>
<p>I took some picture to test whether IR light is blocked on dark regions on the LCD image as visible light is. The results were quite surprising, the visibility of IR light is not affected by the picture shown by the LC-panel at all as can be seen below.</p>
<div id="attachment_100" class="wp-caption alignnone" style="width: 310px"><a rel="attachment wp-att-100" href="http://patrickbader.eu/?attachment_id=100"><img class="size-medium wp-image-100" title="Backlight on" src="http://patrickbader.eu/wp-content/uploads/2009/12/Backlight-on-300x224.PNG" alt="Display with normal Backlight on" width="300" height="224" /></a><p class="wp-caption-text">Display with backlight on.</p></div>
<div id="attachment_105" class="wp-caption alignnone" style="width: 310px"><a rel="attachment wp-att-105" href="http://patrickbader.eu/?attachment_id=105"><img class="size-medium wp-image-105" title="Backlight on IR LEDs on" src="http://patrickbader.eu/wp-content/uploads/2009/12/Backlight-on-IR-LEDs-on-300x224.PNG" alt="Backlight and IR lighting on" width="300" height="224" /></a><p class="wp-caption-text">Backlight and IR lighting on</p></div>
<div id="attachment_106" class="wp-caption alignnone" style="width: 310px"><a rel="attachment wp-att-106" href="http://patrickbader.eu/?attachment_id=106"><img class="size-medium wp-image-106" title="IR LEDs on" src="http://patrickbader.eu/wp-content/uploads/2009/12/IR-LEDs-on-300x224.PNG" alt="Only the IR lighting is on." width="300" height="224" /></a><p class="wp-caption-text">Only IR lighting on.</p></div>
<div id="attachment_107" class="wp-caption alignnone" style="width: 310px"><a rel="attachment wp-att-107" href="http://patrickbader.eu/?attachment_id=107"><img class="size-medium wp-image-107" title="Backlight on IR LEDs on with Camera Filter" src="http://patrickbader.eu/wp-content/uploads/2009/12/Backlight-on-IR-LEDs-on-with-Camera-Filter-300x224.PNG" alt="Both backlight and IR lighting on but with bandpass filter on top of the camera." width="300" height="224" /></a><p class="wp-caption-text">Both backlight and IR lighting on. Bandpass filter on top of the camera.</p></div>
<p>My next step will be to build a prototype and experiment with different types of LEDs for a brighter backlight.</p>
]]></content:encoded>
			<wfw:commentRss>http://patrickbader.eu/?feed=rss2&amp;p=94</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>LCD Disassembly</title>
		<link>http://patrickbader.eu/?p=77</link>
		<comments>http://patrickbader.eu/?p=77#comments</comments>
		<pubDate>Wed, 18 Nov 2009 23:18:31 +0000</pubDate>
		<dc:creator>Patrick Bader</dc:creator>
				<category><![CDATA[LCD]]></category>
		<category><![CDATA[Disassembly]]></category>
		<category><![CDATA[Sony SDM-S71R]]></category>

		<guid isPermaLink="false">http://patrickbader.eu/?p=77</guid>
		<description><![CDATA[Quite some time passed since my last post. If you were wondering what I was doing in the meantime and why news took so long, read on. After the successful testing in my last post, I wanted to try the whole thing on with an LCD. The problem with that was how to get one. [...]]]></description>
			<content:encoded><![CDATA[<p>Quite some time passed since my last post. If you were wondering what I was doing in the meantime and why news took so long, read on.</p>
<p>After the successful testing in my last post, I wanted to try the whole thing on with an LCD. The problem with that was how to get one. Luckily my brother has an old Sony SDM-S71R with 17" which is not needed anymore. It's not really big, but for a first test it will do.</p>
<p>Disassembling the whole thing was quite easy, only the first part, getting the plastic casing off, was a bit tricky. If you are unsure how to do it, search online for 'Sony SDM-S71R Service Manual'. After removing some plastic and metal casing two circuit boards will be revealed. Both of them shown below:</p>
<div id="attachment_78" class="wp-caption alignnone" style="width: 310px"><a href="http://patrickbader.eu/wp-content/uploads/2009/11/IMG_1382.JPG"><img class="size-medium wp-image-78  " title="LCD_power_supply" src="http://patrickbader.eu/wp-content/uploads/2009/11/IMG_1382-300x200.jpg" alt="Power supply of the Sony LCD" width="300" height="200" /></a><p class="wp-caption-text">Power supply of the Sony LCD</p></div>
<p>This one is the power supply for both the electronics controlling the LCD and the four fluorescent tubes for the backlight. Since I do not want to use the original backlight I do not need the high voltage part. That made me look for some alternative to the power supply. The pinout of the connection to the lcd controller is described directly on the board and is shown below:</p>
<div id="attachment_79" class="wp-caption alignnone" style="width: 309px"><a href="http://patrickbader.eu/wp-content/uploads/2009/11/Wiring.png"><img class="size-medium wp-image-79 " title="Wiring" src="http://patrickbader.eu/wp-content/uploads/2009/11/Wiring-299x22.png" alt="Wiring of the connector from the LCD power supply to the controller" width="299" height="22" /></a><p class="wp-caption-text">Wiring of the connector from the LCD power supply to the controller</p></div>
<p>The purple, grey, white, and black cables on the right need not be connected. So there are only the +12V, +5V, and ground wires left. These voltages are also used in computers, so the choice was easy: I used the power supply of an old PC.</p>
<p>Next is the controller board:</p>
<p><a href="http://patrickbader.eu/wp-content/uploads/2009/11/IMG_1386.JPG"><img class="alignnone size-medium wp-image-80" title="lcd_controller_board" src="http://patrickbader.eu/wp-content/uploads/2009/11/IMG_1386-300x200.jpg" alt="lcd_controller_board" width="300" height="200" /></a></p>
<p>Nothing exciting here aside from the many wires on the right that go to the display itself.</p>
<p>The display consists of the LC layer on top of a glass plate and the backlight with some plastic films between them. Again some pictures of the parts ordered top-down:</p>
<div id="attachment_82" class="wp-caption alignnone" style="width: 310px"><a href="http://patrickbader.eu/wp-content/uploads/2009/11/IMG_13891.JPG"><img class="size-medium wp-image-82  " title="LC Layer" src="http://patrickbader.eu/wp-content/uploads/2009/11/IMG_13891-300x200.jpg" alt="LC Layer with controller" width="300" height="200" /></a><p class="wp-caption-text">LC Layer with controller</p></div>
<div id="attachment_83" class="wp-caption alignnone" style="width: 310px"><a href="http://patrickbader.eu/wp-content/uploads/2009/11/IMG_1392.JPG"><img class="size-medium wp-image-83  " title="lcd plastic films" src="http://patrickbader.eu/wp-content/uploads/2009/11/IMG_1392-300x200.jpg" alt="Diffuser with some other plastic films on top of a plastic panel and a white paper" width="300" height="200" /></a><p class="wp-caption-text">Diffuser with some other plastic films on top of a plastic panel and a white paper</p></div>
<div id="attachment_84" class="wp-caption alignnone" style="width: 310px"><a href="http://patrickbader.eu/wp-content/uploads/2009/11/IMG_1390.JPG"><img class="size-medium wp-image-84  " title="lcd fluorescence tubes" src="http://patrickbader.eu/wp-content/uploads/2009/11/IMG_1390-300x200.jpg" alt="Fluorescence tubes that shine from the side into the plastic panel" width="300" height="200" /></a><p class="wp-caption-text">Fluorescence tubes that shine from the side into the plastic panel</p></div>
<p>These are the most important parts of the LCD. If you have any questions about the disassembly, just ask.</p>
<p>So much for the LCD disassembly. I've already done some testing with it in combination with a self-made backlight, some IR LEDs, and a bandpass filter for the camera. But this will be the topic of the next post,...</p>
]]></content:encoded>
			<wfw:commentRss>http://patrickbader.eu/?feed=rss2&amp;p=77</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Blob Detection Reloaded</title>
		<link>http://patrickbader.eu/?p=73</link>
		<comments>http://patrickbader.eu/?p=73#comments</comments>
		<pubDate>Tue, 03 Nov 2009 18:36:33 +0000</pubDate>
		<dc:creator>Patrick Bader</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[Multitouch]]></category>
		<category><![CDATA[Blob Detection]]></category>
		<category><![CDATA[IR-LED]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[PS3 Eye]]></category>

		<guid isPermaLink="false">http://patrickbader.eu/?p=73</guid>
		<description><![CDATA[Today, I finally got the 50 Osram SFH 4350 LEDs I ordered. These shine at 850 nm, a wavelength at which the PS3 Eye is quite sensitive. The first thing to do with these LEDs was to test them somehow. Since I haven't got an IR bandpass filter for the cam (I ordered one from [...]]]></description>
			<content:encoded><![CDATA[<p>Today, I finally got the 50 Osram SFH 4350 LEDs I ordered. These shine at 850 nm, a wavelength at which the PS3 Eye is quite sensitive. The first thing to do with these LEDs was to test them somehow. Since I haven't got an IR bandpass filter for the cam (I ordered one from ebay), I had to test them without the filter.</p>
<p>So how did I run the test? A few days ago I ordered a sample of some Plexiglass EndLighten, which is available <a title="Plexiglass EndLighten" href="http://www.plexiglas-shop.com/DE/en/platte/plexiglas-endlighten-35vvzqzrfz2.html">here</a>. It's a special glass that shines diffuse when light shines from the side into the sheet. The final setup was simple: I connected 8 LEDs in row with a 1 ohm resistor and powered the setting with 12 Volts, the LEDs were attached to the Plexiglass and and everything was filmed with the cam.</p>
<p>A Screenshot with blobs detected on my hands is below, the other blobs in the surface come from a screw clamp.</p>
<p><img class="alignnone size-full wp-image-74" title="blob_detection_hand" src="http://patrickbader.eu/wp-content/uploads/2009/11/blob_detection_hand.png" alt="blob_detection_hand" width="641" height="482" /></p>
<p>stay tune for some more news in the near future <img src='http://patrickbader.eu/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://patrickbader.eu/?feed=rss2&amp;p=73</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Paper &#8220;On Language Support for Application Scalability&#8221;</title>
		<link>http://patrickbader.eu/?p=65</link>
		<comments>http://patrickbader.eu/?p=65#comments</comments>
		<pubDate>Mon, 02 Nov 2009 16:38:24 +0000</pubDate>
		<dc:creator>Patrick Bader</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Erlang]]></category>
		<category><![CDATA[Scalability]]></category>

		<guid isPermaLink="false">http://patrickbader.eu/?p=65</guid>
		<description><![CDATA[I finally finished my work on a paper for the lecture "Ultra-large scale Sites". The paper is about programming language requirements for building highly scalable systems. The paper can be downloaded here.]]></description>
			<content:encoded><![CDATA[<p>I finally finished my work on a paper for the lecture "Ultra-large scale Sites". The paper is about programming language requirements for building highly scalable systems.</p>
<p>The paper can be downloaded <a title="On Language Support for Application Scalability" href="http://patrickbader.eu/wp-content/uploads/2009/11/On-Language-Support-for-Application-Scalability.pdf" target="_blank">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://patrickbader.eu/?feed=rss2&amp;p=65</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Upgrading PS3 Eye Camera and Blob Detection</title>
		<link>http://patrickbader.eu/?p=54</link>
		<comments>http://patrickbader.eu/?p=54#comments</comments>
		<pubDate>Mon, 19 Oct 2009 19:22:20 +0000</pubDate>
		<dc:creator>Patrick Bader</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[Multitouch]]></category>
		<category><![CDATA[PS3]]></category>

		<guid isPermaLink="false">http://patrickbader.eu/?p=54</guid>
		<description><![CDATA[As noted in my last posting, the images of the modified Eye camera were quite blurry. That was the case because the IR filter was missing and so the camera got out of focus. I was asking myself for the reason, since the filter is not a lense at all. Glass has a different refraction [...]]]></description>
			<content:encoded><![CDATA[<p>As noted in my last posting, the images of the modified Eye camera were quite blurry. That was the case because the IR filter was missing and so the camera got out of focus. I was asking myself for the reason, since the filter is not a lense at all. Glass has a different refraction index than air resulting in diagonal rays becoming offset. I tried to visualize the effect in the following picture:</p>
<p><img class="alignnone size-full wp-image-55" title="Camera_offset" src="http://patrickbader.eu/wp-content/uploads/2009/10/Camera_offset.PNG" alt="Camera_offset" width="353" height="210" /></p>
<p>More on that can be found on <a title="Wikipedia - Refraction" href="http://en.wikipedia.org/wiki/Refraction" target="_blank">wikipedia</a>.</p>
<p>I have finally managed to correct this issue. I had to find a replacement for the filter. It had to be of glass or a similar material with the same width as the filter. Quite tough to find a piece of glass or plastic with a depth of about a millimeter. Suprisingly the cap of a CD case did the job as a filter replacement. I first sawed a piece off and afterwards filed it into shape.</p>
<p>The room was quite dark but the results are  better than without the replacement, I think:</p>
<div id="attachment_58" class="wp-caption alignnone" style="width: 650px"><img class="size-full wp-image-58" title="PS3 Eye Capture with IR filter replacement" src="http://patrickbader.eu/wp-content/uploads/2009/10/Capture.PNG" alt="PS3 Eye Capture with IR filter replacement" width="640" height="480" /><p class="wp-caption-text">PS3 Eye Capture with IR filter replacement</p></div>
<p>Now the second part of this posting, blob detection. Blob detection is about finding bright or dark spots in an image. I used some kind of global flood fill algorithm to find the blobs. Sadly I was not able to programm this part in the pixel shader so I implemented an algorithm on the CPU. On my laptop CPU power is fairly restricted so it took me a few attempts to do blob detection at 60 fps. The algorithm is a scanline algorithm which searches for horizontal lines of bright pixels. After the complete image has been scanned, one or more connected lines become a blob. The blob center is the barycenter of the pixels, at the moment without regard of their brightness. I have to test this algorithm for robustness, but can already give you a first impression:</p>
<div id="attachment_59" class="wp-caption alignnone" style="width: 650px"><img class="size-full wp-image-59" title="Blob detection" src="http://patrickbader.eu/wp-content/uploads/2009/10/Blob_Detection.PNG" alt="A first test of blob detection. The red dots are centers of detected blobs." width="640" height="480" /><p class="wp-caption-text">A first test of blob detection. The red dots are centers of detected blobs.</p></div>
<p>Hope I could help anyone with the camera focus problem. Maybe I release the source code of the project when it is out of experimental stage, or to say it straight: When it's a bit less messy. <img src='http://patrickbader.eu/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://patrickbader.eu/?feed=rss2&amp;p=54</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Edge detection with PS3 Eye cam</title>
		<link>http://patrickbader.eu/?p=42</link>
		<comments>http://patrickbader.eu/?p=42#comments</comments>
		<pubDate>Thu, 15 Oct 2009 21:17:37 +0000</pubDate>
		<dc:creator>Patrick Bader</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[DirectX]]></category>
		<category><![CDATA[HLSL]]></category>
		<category><![CDATA[edge detection]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[PS3 Eye]]></category>

		<guid isPermaLink="false">http://patrickbader.eu/?p=42</guid>
		<description><![CDATA[I recently bought a Playstation Eye camera because I would like to get my hands on multitouch surfaces. At first, I disassembled my camera according to Peter Kirn's instruction videos to remove the IR filter. I was quite lucky since I bought the cam at Saturn in Germany and did not know that there are [...]]]></description>
			<content:encoded><![CDATA[<p>I recently bought a Playstation Eye camera because I would like to get my hands on multitouch surfaces. At first, I disassembled my camera according to Peter Kirn's <a href="http://createdigitalmotion.com/2009/08/06/trick-out-your-ps3-eye-webcam-best-cam-for-vision-augmented-reality/trackback/">instruction videos</a> to remove the IR filter. I was quite lucky since I bought the cam at Saturn in Germany and did not know that there are two versions of the cam. The filter of the one mostly sold in the USA can be removed easily, as seen in the video. The other version cannot be modified that way, so the complete lens has to be exchanged.<br />
With the help of Alex Popovich's <a href="http://alexpopovich.wordpress.com/2008/10/02/sony-ps3eye-camera-directshow-capture-source-filter/">Driver</a> which nicely works on Windows 7 64 bit edition and two days of learning some Direct3D programming, I was finally able to render the captured images on screen. After some experimenting with HLSL I had my very first realtime edge detector running.<br />
The detection is quite simple, only a simple 3x3 filter matrix is applied to each frame. Here is the matrix:<br />
<code><br />
0.0,   -1.0,    0.0,<br />
F=  -1.0,    4.0,   -1.0,<br />
0.0,   -1.0,    0.0<br />
</code><br />
And some threshold operations afterwards leads to these results:</p>
<p><img src="http://patrickbader.eu/wp-content/uploads/2009/10/edge_detection_original.jpg" alt="Screenshot without edge detection" /></p>
<p><img src="http://patrickbader.eu/wp-content/uploads/2009/10/edge_detection.jpg" alt="Screenshot with edge detection enabled" /></p>
<p>As you can see, the picture is quite blurry which has a negative impact on corner detection. That is because of the missing IR filter, now I am unable to set the focus right, maybe I can put a piece of glass into the lens to correct the error.</p>
]]></content:encoded>
			<wfw:commentRss>http://patrickbader.eu/?feed=rss2&amp;p=42</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&#8230; but how is it called in English?</title>
		<link>http://patrickbader.eu/?p=29</link>
		<comments>http://patrickbader.eu/?p=29#comments</comments>
		<pubDate>Sat, 29 Aug 2009 10:20:19 +0000</pubDate>
		<dc:creator>Patrick Bader</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Translator]]></category>

		<guid isPermaLink="false">http://patrickbader.eu/?p=29</guid>
		<description><![CDATA[English is not my mother tounge as you can surely guess. So I often have to translate some words from German to English and vica verse or look up words I don't know. I had a nice tool called Babylon Translator. It was just a trial version and ceased to work after the trial period. [...]]]></description>
			<content:encoded><![CDATA[<p>English is not my mother tounge as you can surely guess. So I often have to translate some words from German to English and vica verse or look up words I don't know. I had a nice tool called Babylon Translator. It was just a trial version and ceased to work after the trial period. After living without a translation program for some years and having to look up words in online dictionaries I decided to write a translation program myself since I did not want to open my browser everytime I wanted to look up a word.<br />
The result of a few C# programming hours was a little tool called Translator. At the moment it uses the dictionary at Leo.org to look up words maybe some more dictionaries will follow.<br />
You can find the tool and source code <a href="http://patrickbader.eu/?page_id=8">here</a>.</p>
<p>Have fun testing it and don't forget to give some feedback</p>
]]></content:encoded>
			<wfw:commentRss>http://patrickbader.eu/?feed=rss2&amp;p=29</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hello Web2.0!</title>
		<link>http://patrickbader.eu/?p=3</link>
		<comments>http://patrickbader.eu/?p=3#comments</comments>
		<pubDate>Tue, 11 Aug 2009 12:45:36 +0000</pubDate>
		<dc:creator>Patrick Bader</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://patrickbader.eu/?p=3</guid>
		<description><![CDATA[Now, I've got my own domain and blog running. Setting up everything was easier than I thought... I know this site surely needs some customization and content so stay tuned for some news about projects that I am working on, my studies and other things I'm spending time on.]]></description>
			<content:encoded><![CDATA[<p>Now, I've got my own domain and blog running. Setting up everything was easier than I thought...</p>
<p>I know this site surely needs some customization and content so stay tuned for some news about projects that I am working on, my studies and other things I'm spending time on.</p>
]]></content:encoded>
			<wfw:commentRss>http://patrickbader.eu/?feed=rss2&amp;p=3</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
