I was recently asked by a client for some code that shows how to do the basic SDL and OpenGL initialization needed to write a 3D application on Linux. I pulled out some of the code from my old 3D graphics engine and whittled it down to something appropriately sized. I also had an ulterior motive in putting this example together: another post to this blog, source code included. Features included:

  • Display lists incorporated into the rendering loop.
  • “Picking” support. [The ability to determine the 3D object under a 2D screen/mouse coordinate.]
  • Well written and commented C++ code.

I’m licensing this code under the GPL, I hope that someone finds it useful.

I’m opening QuickScriptsNow.com today. It will be offering various PHP, Python, and Javascript scripts. Our featured (and currently only) product is our Ad Rotator script, which uses XmlHttpRequest to pull an XML configuration file off the web host and then uses the configuration details in that to choose which ads to display. I’m pretty excited about this site, and I hope that the products that I can bring to market through it will get other people excited as well.

Well, I said I would try to get some code from my OCR project out, and here it is. This is my implementation of the Munkres linear assignment problem over a rectangular matrix. I also included a bare-bones matrix utility class. I am releasing this code under the GPL.

16 April 2007 Update: There seems to be an issue with my implementation when dealing with NxN matrices with N greater than 100. Also, the example code in munkes.h is not correct. I will be posting fixes shortly in a separate post.

22 May 2007 Update: Sorry it took so long… please see my new post.

As promised, here are some details about my new OCR project. It is an implementation of Shape Context matching, using the Munkres assignment algorithm to solve the weighted bipartite matching problem. I will be using Thin Plate Splines to evaluate potential matches. I am also implementing the Canny edge detection algorithm for this project.

I hope to be able to release some code examples in the next couple of weeks, so stay tuned.

Sorry for the delay in posting, but the holidays were quite hectic. I recently got a new project doing OCR work, and I’ll post some more details about what I’m doing in the next couple of days.