“In the Shadow of Saturn” - a photograph of the dark side of Saturn, as the planet eclipses the sun. The pale 4-pixel dot in the left-middle of the image (you need to zoom in to see it) is us, the Earth. Stunning.
This was on APOD back in ‘06, but I saw it for the first time today at a talk by Niel deGrasse Tyson at UW. The lecture was titled ”Musings of an Astrophysicist”, and apart from a few sporadic factoids wasn’t necessarily focused on academic aspects of astrophysics or science, but was rather a commentary by Tyson on various interesting subjects like life on Mars, black holes, Pluto, asteroids, the Big Bang, doomsday, astronomical naming rights, the ‘nobility’ of gases, the LHC, science illiteracy in modern society, the role of education etc. The lecture was brilliantly delivered and spawned a real sense of wonder and cosmic perspective. Awesome and humbling.
I particularly enjoyed the conclusion, where Tyson requested the lights be dimmed, and concluded his narration, as images from the Hubble were projected on the screen. Very planetarium like. (Fitting, since Tyson directs the Hayden Planetarium in NY)
The talk was fun and engaging and I’m glad that I was able to attend. Dr. Tyson is a wonderful speaker, entertaining, eloquent and genuinely passionate about what he does. Science really needs more people like him.
(Image: NASA APOD)
HTML5 Panorama Viewer
Recently, while working with panoramic images for my research, I decided to implement a panorama viewer purely in HTML5. Most panorama viewers online require plugins like Flash or Java, but since HTML5 has a shiny new canvas element, I thought it would be a worthwhile experiment.
The viewer assumes a cylindrical projection. Essentially, by slicing up the original image, we can independently stretch out each slice to give the image surface the appearance of a 3D cylinder. The math to re-project a rectangular panorama onto a cylinder is fairly simple (involves cosecants, more details in code).

With num_slices = 20. Individual slices are visible.
If the number of slices is fairly high, it’s hard to make out that there’s any slicing at all.

With num_slices = 600
Of course, the more slices there are, the better the panorama will look, but consequently, the poorer it will perform.
Here’s a couple of demos I threw together. Click (or touch) and drag to pan:
If you’re interested, feel free to delve into the source code and reuse/hack it as you see fit. Hopefully in the near future, I’ll add support for zoom, vertical panning, spherical projections and improve the overall performance.
PS: Requires an HTML5 compatible browser (Chrome/Safari/Firefox/Opera). Works on the iPhone/iPad too.


