Home

Tom Stepleton

Recent Entries

Advertisement

You are viewing the most recent 20 entries

November 1st, 2009

11:51 pm: Today I ran a half marathon. I did not train. A friend injured her ankle a while back, and this week we all had the idea that I would take her tag. (It said "Laura" on it in large letters. I told the race organizers afterward so I wouldn't interfere with prize-giving, although there was probably no great risk.) My time was 2:00:00 to the second, a 9:10 mile pace. I'm pretty happy with that.

October 30th, 2009

10:46 pm: It's the original Man of Steel! It's... Joe Magarac?

Real legend or not, he antedates Superman by at least a year. But Kal-El didn't have to worry about US immigration officials. No matter where he came from (underground?), people say he is from Pittsburgh, perhaps specifically Braddock.

Am I unusual for not having heard of this guy, even though I've lived here for over seven years? Did anyone else know about this legend?

October 27th, 2009

01:14 am: Think not of them, thou hast thy music too—


I don't know where I'll be next year. The soaring season is ending soon---depending on next weekend's weather, it may have already ended. This picture might show the last time I turn final at Bandel. Thanks L. for the beautiful photo.

October 24th, 2009

02:48 pm: You might one day have to add some non-negative numbers together.

Unfortunately, these numbers are so small or so large that you can't represent them directly with floating point numbers on your computer. They're numbers like e-4000, e4000, and so on. So you do the sensible logarithmic number system thing and store their logarithm instead. -4000, 4000, no problem.

How do you perform the addition? Let's assume that you have a reasonable set of numbers that are either all small or all large, since nobody except skinny triangle people like [info]bhudson is likely to care if you lie and say e4000 + e-4000 = e4000. One thing you can do is shift the logarithmic representation temporarily, take the numbers out of log representation, do the addition, take the logarithm of the result, and undo the original shift. So, for example, Read more... ).

This approach can be problematic, however, if there are still orders of magnitude differences in the numbers you are trying to represent. The shifted logarithmic representation can still lead to numerical underflow (or overflow, depending on how you shift) when you raise e to the shifted values. In some applications, this can lead to real problems. HMM-related computations, for example, can compound errors from underflow---you can arrive in a situation where your algorithm determines that the chance of producing a certain sequence of observations is 0, even though it really isn't.

There is a better way to add logarithmic representations of non-negative numbers: use the so-called Gaussian logarithms. This method avoids many of the overflow/underflow problems that plague the shifting-based approach. I'd explain more, but I need to go back to working on my thesis now, and anyway, there's the Wikipedia page.

That said, I have written logsum, a MATLAB MEX function that works in a way analogous to the sum command for 1-D and 2-D arrays of doubles. Who knows, it might be useful to you someday.

October 19th, 2009

04:14 pm: Someone snuck me into an art show
December SPACE gallery show card

It's because Lindsay and I are working together. Come check it out!

September 21st, 2009

07:34 pm: A first solo
Another video from the gliderport: Chris's first solo, filmed by Lyle.



It was near the end of the day, and by the time Chris is landing, everyone who's on the ground is going to stay on the ground. That's why Pete was sipping on a Molson Canadian; hence the product plug.

September 20th, 2009

09:09 pm:
A quick flight in the Schweizer 2-33 with Lyle (rear). As part of the Pittsburgh Soaring Club annual picnic, we fly over a target laid out at the airport (not shown) and drop flour sacks with streamers on them. One of the bombs on this flight was the winner---it fell the closest to the target, a distance of about, oh, 25 yards.

August 31st, 2009

09:24 am: Farewell Hobart Street
Moving out for good today, but I decided to leave something useful for the next tenants:

Something for the next tenants

August 24th, 2009

03:20 pm: Movin' out
So I'm moving out of Mangrill Manor, the apartment that scarred me for life. I'll be staying with some friends temporarily while I finish up at CMU. After that, I'm not sure. So, for the time being, I am putting the things I didn't give away to the RI first-years in a mobile storage container. It shouldn't break the bank to keep stuff in there for a while.

Here is my pod, all loaded up. I guess I don't have as much as I thought---it's only half full. It looks like things might slide around, though, doesn't it?

Storage container

I found myself at Lowe's on Sunday night, searching for a way to keep things from sloshing in the pod. Gradually I hit on a solution.

Lotsa towels

Storage container, now with padding

Tutto sistemato! For those keeping score at home, that's 56 sheets/roll * 8 rolls/pack * 10 packs = 4480 sheets of Bounty Basic paper towels. After I unpack the box, even if I use one paper towel a day for the next ten years, I'll still have 828 or so left over. Well, maybe I can make friends with new neighbors as Paper Towel Santa. At least for now, I know my NeXT cube cluster/coffee table is safe.

August 20th, 2009

02:13 am: Crustwood
Hey St. Louis diaspora:

Did you know that once-vibrant Crestwood Plaza went zombie a few years ago? And that plans are for it to be razed and redeveloped in about two years? And that in the interim, the management has offered cut-rate leases to artists and art groups who wanna sell stuff, offer classes, and put on performances for the public in a place with a comfy down-at-the-heels-mall-like vibe? And that there are now a few crummy YouTube videos bearing witness to this experiment?

Well, I didn't know that!

August 11th, 2009

10:32 pm: Farewell, old paint
I donated my old bike back to Free Ride yesterday. The Brompton will serve for the time being, and perhaps when I have an income, I'll buy or fix up a road bike that isn't made of 1020 steel.

Adieu, Motobécane

So long, old friend---you were as faithful as you were heavy, and you were the reason for the other time I was in the paper. May you find another loving owner soon!

July 27th, 2009

10:27 pm: Also, go see this:



09:33 pm: If you've ever wanted to see detailed PDF construction plans for a large, modern, cable-stayed suspension bridge (central span 1,500') that bears a four- to six-lane interstate highway across a major commercial river in an earthquake zone, including extensive structural details, routing of utilities, soil and bedrock characteristics, and even your duties and provisions as a contractor building this bridge (should you be so interested), then you should check this out. No terroristing now!

04:37 pm: Well, they've finally done it.

"They" seem to be a rather traditional go-into-jungles-and-convert-the-heathen culture-displacing evangelical Christian missionary organization named ITEC (wiki), which to be fair appears to make nontrivial efforts toward developing viable technologies that improve the quality of life of at least the people they convert. Those they don't convert, who knows... part of their mission is to "train and equip indigenous God-followers to care for the physical and spiritual needs of their people", so maybe communities of the unsaved don't get free spectacles. Anyway.

The remarkable "it" that they have done is invent a practical flying car. If you can get past the over-the-top theo-colonialist praise pop, you can see it fly here:


Unlike most flying car attempts, the Terrafugia Transition being a prime example, the "Maverick" abandons the rigid wing and empennage---the hardest things to deal with in most flying car designs, since they like to stick out so far from the wheels---for a paraglider-like fabric wing. The Maverick is not the first flying car to try this approach---there's a recent British flying buggy that does it too. What distinguishes the Maverick is a tall, retractable mast that holds the wing steady when there's not enough wind to keep it aloft, like before and after landing. Traditional powered parachutes (and the British vehicle, as far as I know) will drag the wing on the ground when they're not moving very fast. After you land, you have to rearrange the wing for takeoff before you depart again, and there's always the risk of snags, the hassle of packing and unpacking when you're on the ground, and so on. As best I can tell, most of these issues are sharply reduced or eliminated by the Maverick design.

Along with the smart mast design, the Maverick looks simple, cheap, and as tough as nails. It seems to be able to handle unimproved roads. It can hold four people, or two and a stretcher. It takes off in, say, less than two hundred feet, and lands in about the same (and these may be overestimates). In the event of engine failure in flight, the parachute is already deployed. It looks easy to fly. In fact, the fact that it flies at all gives it a considerable lead over a number of "competitor" projects.

I don't expect that the family of four in Racine will have one of these, but I do expect that something like this will see regular use in low-infrastructure regions, within the next decade or so.

The second video down on this page was produced by the EAA and not ITEC, and hence has (a) more cool technical info (b) less Christian rock. Check it out.

July 14th, 2009

02:20 pm: Should probably mention it here, too: The PITETSBKRRH story, or now, the TPEBTSAURGH story, will be on tonight's All Things Considered at about 5:15 PM EDT or so.

The interview took place at 1 PM at the WQED FM studios on 5th Avenue. I spoke with Robert Siegel over an ISDN line from Washington. Even in the Internet age, being told "You should be able to hear Washington now" brings an unexpected little bit of excitement.

Actually, "unexpected" is a good word for the whole deal here...

July 12th, 2009

02:01 am: PITETSBKRRH is in the newspaper!
Given the topic, I'm glad readers of the story will learn that I do actually have friends...

July 11th, 2009

01:15 am: vidfs
A nice nerdy post for you now.

MATLAB is slow at reading frames from movies on my Mac, for no reason I can readily discern. Like, really, really slow---about 10 FPS for a 640x480 H.264 movie.

Today I got fed up and wrote my own facility for reading movie frames. It works... differently.

stepletron:vidfs tom$ ./vidfs ~/Desktop/rawmatte/Movie\ 3\ matte.mov -f mnt &
[1] 70872
stepletron:vidfs tom$ ls -l mnt/
total 80
-rw-r--r--  1 root  wheel     3 Jul  9 13:00 INFO_depth
-rw-r--r--  1 root  wheel     4 Jul  9 13:00 INFO_height
-rw-r--r--  1 root  wheel    46 Jul  9 13:00 INFO_movie_file
-rw-r--r--  1 root  wheel     2 Jul  9 13:00 INFO_num_channels
-rw-r--r--  1 root  wheel     7 Jul  9 13:00 INFO_num_frames
-rw-r--r--  1 root  wheel     5 Jul  9 13:00 INFO_row_step
-rw-r--r--  1 root  wheel     4 Jul  9 13:00 INFO_width
dr-xr-xr-x  3 root  wheel  4096 Jul  9 13:00 MATLAB
dr-xr-xr-x  3 root  wheel  4096 Jul  9 13:00 PPMPPM
dr-xr-xr-x  3 root  wheel  4096 Jul  9 13:00 RAWRAW
stepletron:vidfs tom$ cat mnt/INFO_width mnt/INFO_height 
640
480
stepletron:vidfs tom$ file mnt/PPMPPM/15
mnt/PPMPPM/15: Netpbm PPM "rawbits" image data
stepletron:vidfs tom$ ls mnt/PPMPPM | wc -l
  188020
stepletron:vidfs tom$ umount mnt
stepletron:vidfs tom$ ls -l mnt/
[1]+  Done                    ./vidfs ~/Desktop/rawmatte/Movie\ 3\ matte.mov -f mnt
stepletron:vidfs tom$


So basically the vidfs program turns the movie file into mounted filesystem. Each frame is its own file---actually, it's three files, in three formats, in three separate folders (PPM, a raw format, and a format convenient for reading into MATLAB). You can open the frame in an image editor if you like---of course, you can't save a modified frame back into the movie, but I don't need that.

Two things make this really easy to do. The first is OpenCV---for all its ugliness, it's good at reading single frames from movies without having you deal with the QuickTime/GStreamer/whatever API. The second is FUSE, which does a wonderful job of making userspace filesystems fall-off-a-log simple to implement. You implement four callbacks and your read-only filesystem is ready to go. GNU Hurd translators on an OS that people actually use... not too shabby. VMWare Fusion installs FUSE so that you can read disk images; if you have a Mac, you may already have FUSE. Otherwise, you can get it from MacPorts or just build it yourself. Linux folks can turn to their package manager, I assume.

Right now MATLAB pulls frames from vidfs at about 50 FPS. A custom MEX routine for reading files from vidfs will likely yield improvements.

vidfs.cc, quick 'n dirty, but works on a Mac at least. Needs OpenCV and FUSE, as noted.

July 6th, 2009

01:26 am: Pittsburgh morse code fail
I noticed something while watching the 4th of July fireworks...


It's supposed to spell "Pittsburgh".

June 30th, 2009

10:43 pm: I came back from the UK last week. To do that, I had to come back from Scotland.

photo

After finishing up at Cambridge, I had about ten extra days in the UK. I wanted to go someplace remote---someplace I could be sure to get lots of work done on my thesis without many distractions. Rural Scotland seemed like the key. My first stop was a guest house near Thurso, a town on the distant northern shore of Great Britain. The train journey started at 6 AM: from Cambridge to Ely, transferring there for a train to Peterborough, then another train to Edinburgh, then another for Inverness, and finally a two-carriage local for Thurso, wending its way along a shrub-choked single track on the eastern Caithness coast.

It turns out I wasn't the only one who ever thought rural Scotland was a good place to get work done...

Read more... )

Powered by LiveJournal.com