camscanner(扫描全能王)功能解析与复现 - 页面矫正之曲面矫正方案

扫描王里,给定了8个关键点,4个角点,4个边点,其边点处理方式为调整边直线。

其实拍照页面不完全是平面,更可能是曲面,所以可以设想用二次样条曲线(再复杂也可以,感觉不必要)来拟合边线,其中边点不在调整边直线,而是作为样条曲线的控制点来形成边线。

效果如下,也有些误差,但比直线好,感觉这种情况常见,实现也简单,关键是既然可以手动调整了,总要整个精度高些的。

 

有了这个之后,可以对边界4条曲线根据长度等分提取关键点,与设定平面页面的等分点,形成一组匹配点对。

接下来就是:As-projective-as-possible image stitching with moving DLT,这篇文章介绍的技术,在给定匹配点对下,对图片对进行多homography变换。

 

流程总结:

- 按直线自动提取4个角度和4个边点

- 用户参与调整,获取精度更高的8个关键点

- 根据2次样条曲线拟合对应匹配点对

- Moving Direct Linear Transformation(MDLT)求解mutil-homography矩阵,然后 页面warping

- 页面增强,输出

 

【win demo】

链接:https://pan.baidu.com/s/1BLkiOA4dUG9ErkEVhmgjtA 
提取码:vcsm