Get the latest tech news

Page Dewarping (2016)


Flattening images of curled pages, as an optimization problem.

Aside from browsing through the Leptonica code, I also skimmed a few papers on the topic, including a summary of the results of a dewarping contest, as well as an article about the contest-winning Coordinate Transform Model (CTM) method. I use PCA to estimate the mean orientation of all spans; the resulting principal components are used to analytically establish the initial guess of the \(x\) and \(y\) coordinates, along with the pose of a flat, curvature-free page using cv2.solvePnP. The way this project unfolded represents a fairly typical workflow for me these days: do a bit of reading to collect background knowledge, and then figure out how to formulate the entire problem as the output of some optimization process.

Get the Android app

Or read this on Hacker News

Read more on:

Photo of Page Dewarping

Page Dewarping