Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Like walking, but with paper.
JavaScript PHP Smarty Python CSS HTML Other
Pull request Compare This branch is 1697 commits ahead, 1 commit behind migurski:master.
Fetching latest commit...
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Paperwalking is the codebase behind
Copyright (C) 2009-2010, Michal Migurski <>

See INSTALL for a guide to installing Paperwalking.

This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation; either version 2 of the License, or (at your option) any later

This program is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.  See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with
this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
Street, Fifth Floor, Boston, MA 02110-1301 USA.

There are two main components here.

1. Site

The user-facing website is written in PHP and MySQL, and has been developed
to work adequately well in a commodity shared hosting environment, such as
the "webmaster" account I use to host Walking Papers.

2. Decoder

The ugly math bits are done in an offline process that consumes a queue
of freshly-scanned images from the main site, runs them through the
image-recognition algorithm, and posts back georectified image tiles
for editing. You can run a bunch of these in parallel to make jobs go
faster, and they should be perfectly fine on small EC2 instances or
a box plugged into plain old residential DSL.

It's worth mentioning that the image recognition part of the work relies
on a patented algorithm called SIFT:
Something went wrong with that request. Please try again.