|Timothy B. Terriberry:||
I am currently in the process of designing a next-generation video codec to replace Theora. See my presentation from FOMS 2007 for some of the highlights of the design and current status. Several papers are in the works, waiting on experimental data to be collected and evaluated. Progress at the moment is slow without dedicated funding.
I am currently involved in the design and development of the CELT (Constrained-Energy Lapped Transform) codec, an extremely low-latency audio codec that scales all the way to CD quality. It has an order of magnitude smaller latency than MP3, and yet ranks higher on listening tests at the same bitrate.
I developed a new, continuous 3-D medial shape model for biological objects. This model is based on Catmull-Clark subdivision surfaces and represents a shape using a continuous, analyticaly evaluatable medial axis. See the project homepage for more details.
This project sought to develop a method for comparing two populations of medially described shapes for statistically significant shape differences. Previous work with m-reps had been restricted to performing statistics on just some of the parameters of the shape model, and did not have a method of combining multiple parameter types into a single test nor of accounting for correlation among neighboring sites. We developed a new non-parametric test based on a multivariate framework developed by Fortunato Pesarin. This was the first test capable of using information in the spoke vectors of discrete m-reps, and of combining them with position and radius parameters into a single test. It is designed for high-dimensional spaces composed of direct products of many simpler metric spaces. The metrics on each component need not be commensurate, and no other tools on the space are required. The computational tractability of computing the Fréchet mean is greatly improved, however, by having the structure of a differentiable manifold, which admits a gradient descent algorithm in spaces where it is has no closed form.
Other research interests include computer vision, structure from motion, object tracking and recognition, optical character recognition, and general purpose computation on GPUs. However, most of this work is carried out for my employer, Argon ST, and as such is not currently publicly available.
The following list includes only open source projects which I lead or on which I am a lead developer. Minor contributions to other projects are omitted.
A free, patent-unencumbered video codec. See also:
In preparation for a trip to Japan, I ported the Gnome Japanese dictionary Gjiten to the Nokia N800 internet tablet.
I wrote a QR Code decoder for this project. The goals were a robust detector, small code footprint, and no floating point operations. The result successfully decodes more codes than any other open source decoder I've tried, is the only one I know that can find multiple codes in a single image, and a simple stand-alone reader application compiles to less than 64K. The decoder has been incorporated into the general ZBar bar code reader library, and should be available in the next release.
A quick one-off application to provide the Nokia N800 with separate brightness level and screen blank settings depending on whether or not it is connected to AC power or running off battery.
The daemon starts automatically upon installation and reboot.
Configuration is automatic based on the current state, plugged in or on battery.
Plug it in, change your settings, unplug it, change your settings, plug it back
in, it goes back to whatever it was last time it was plugged in.
It tracks brightness and blank time.
And while plugged in will periodically ping
www.google.com to keep
your net connection up.
You can add longer blank timeouts to the settings dialog by running the following commands from the shell:
gconftool-2 -t list --list-type=int -s \ /system/osso/dsm/display/possible_display_dim_timeouts \ \[10,30,60,120,300,600,1800,3600\] gconftool-2 -t list --list-type=int -s \ /system/osso/dsm/display/possible_display_blank_timeouts \ \[30,60,120,300,600,1800,3600\]
The daemon also pings a remote host once a minute while on AC power (N800
version only), which helps ensure the network interface will continue to
accept remote connections (e.g., via sshd) after idle periods.
If you'd like to change the host that's being pinged, use
gconftool-2 to set
Set this to a blank entry to disable this feature.
Reports indicate that acmonitor does not work with OS2007 Hacker Edition. Apparently it sends a different set of dbus messages that make it appear to acmonitor that the adapter is always plugged in.
This was completed as a class project for CS 4204 "Computer Graphics" while I was an undergraduate student in Computer Science at Virginia Tech.