Summer Work

Well my research job started last week and I'm looking forward to some results, although they won't come till later on this summer. I will be researching two areas:
  1. Image stitching
  2. Image [feature] matching
The basic idea is to take a set of photos and generate multiple panoramas from them appropriately. After this I will be estimating camera poses and with some form of a transform allow the user to travel from one panorama to the next. This should end up being a fully automated process so that one can easily create "virtual tours". It is sort of a combination of different software (such as Microsoft PhotoSynth and Quicktime VR).

I'm hoping by the end of the summer I'll have most of the concepts straightened out and some tools/software created to generate these tours and display them. Depending on the results I may carry on with this project for my honours thesis. Such a thesis would be an extension on this work and would probably include improved algorithms along with efficiency improvements, such as utilizing the GPU for tour generation.

Whenever I start getting results, I'll make another post. Once I understand the domain better I'll probably even post some technical information (for those of us who enjoy learning)!

What's up?

I've been quite inactive as of late. One reason being that I was truly inactive, the other being that my blog was locked temporarily because it was tagged as a "spam" blog!

Nevertheless, I'm back in action and I hope to start posting some things on one of my new interests: ray tracing. I have a ray tracer up and running and things are going pretty good so far. Current features include:
  • Standard reflection + refraction (no special laws yet like, for example, Fresnel)
  • Several geometries: triangles, planes, spheres, boxes, quads, and cylinders
  • Anti-aliasing
  • Lighting: area, point, directional
  • Diffuse reflections
And some plans for the near future:
  • Support for loading several common model files
  • A space partitioning scheme to reduce rendering time
  • Transformed geometry (i.e., geometry + transformation matrix)
  • Support for instancing (multiple instances of the same geometry)
  • Python bindings to control/define scenes and the ray tracer
  • Photon mapping
  • Radiosity rendering
But some of those will take time. The list is sorted in order of highest priority at the top, to the lowest priority at the bottom. That's about it. And just to whet your appetite, I will leave you with my most current rendering: