哎呀妈,咔咔的,今天分享的这个案例挺有趣,增强现实+机器学习在Web端实现AR数独应用,代码开源,文末下载~
该项目利用了OpenCV,Tensorflow和用Rust编写的AR数独求解器。它巧妙地演示了WebAssembly如何允许你使用多种语言编写对性能至关重要的基于Web的应用程序。
整体流程如下:
简单来说,每个视频帧的处理步骤如下:
-
采用自适应阈值法定位边缘,得到黑白图像
-
边缘近似为轮廓;数独网格应该是最大的四边轮廓
-
为了将网格渲染成正方形图像,应用了(反向)透视变换
-
网格线被删除
-
卷积神经网络用于识别9x9网格中的数字
-
填充网格通过一个基于rust的模块来解决
-
从(3)步骤的透视变换应用于将解决方案投影回图像上
-
解决方案被合并回原始图像
通过一个性能配置文件,你可以看到在OpenCV WebAssembly代码中花费了多少时间:
代码地址:
演示地址:
colineberhardt.github.io/wasm-sudoku…
文章思路地址:
公众号[三次方AIRX]:三次方•数字化人才在线教育平台。帮助Z时代大学生和0-5年职场人获得混合现实、人工智能、游戏开发、大数据等能力。