智能AR场景模拟书法临摹系统

小艾同学已经好久没有更新博客l喽,第一是因为最近做的工作比较的杂乱,其次想不出也没有精力想去说些什么!今天带来的系统是我参加声网Agora举办的一个线上音视频比赛,很荣幸和队友一起的努力下拿到了优秀奖。谢邀在这里记录一下整个参赛的历程。

从何得知比赛

本人之前做过视频直播软件,从刚开始整体市场不景气的时候编写最底层的视频算法代码,到现在优秀的SDK可以直接拿来使用。因为之前注册过声网的开发者账号,所以是收到了声网的邮件得知这个比赛的。我查收到邮件得知比赛的时候已经是比赛的后期了,加上当时也没有一个合适的想法,本不打算参加的。但是,往往灵感也是来自一瞬间,将视频通话与书法临摹结合在一起,与队友一起报名立即参赛。

项目的由来和初心

视频通话、视频直播以及即时通信一直是我们公司在做的项目。结合比赛的相关要求要完成这个项目是完全OK的,但是关键在于怎么结合去实现一个具有价值的软件。冥冥中自有天意,最近手头在做视频增强的功能,就想到结合视频增强去做,如果只是简单的在视频界面上增加一些图像是没有太大的价值的。虽然想法没有出来,但是团队一直以来以这个为方向开始寻找。自己之前在PC端利用C#写过一个交互式的白板软件,在这个白板上可以实现毛笔字体的书写。并且为这个技术成功申请了专利。最后决定将书法绘制算法移植到web端和Android端,将线下的毛体字体教学移植到线上。我们做的就是利用鼠标(或者书写板)在web端书写,利用websocket实时通信将绘制的过程移植到Android端,实现了书法绘制的智能场景模拟。说到AR,在这个系统里面其实是通过一些特殊的放置方法,将web端绘制的效果展示在Android端,绘制的图像和图形则漂浮在观察者的视野前方,就好像它们确实是现实场景中的一部分一样,这就是简单的利用的AR的一个实现形式。说多无益,给大家张图自行脑补一下吧。
做这个的初衷是因为书法不仅仅是写字,是建立在博大精深的书法传统基础上的“写志”、“写意”、“写心”。近些年教育部门要求在教材以及中高考上增加学习体系和相关试题。在这个提笔忘字的时代,希望通过这个系统能让大家了解书法、喜欢书法、进而传承书法文化。

在这里插入图片描述

系统介绍

项目主要用到书法绘制的笔触算法、声网Agora音视频通话、websocket实时通信等。主要包含web端和android端,web端主要解决的是如何将传统的线下书法绘制教学移植到线上,这首先在观念上就难以让人接受,毕竟无论怎么绘制都难以实现现实中的字体效果,而我们就需要排除万难去实现难以实现的项目。因为天马行空的想法往往就是存在这样的困难。接下来就是着手开始写代码,结合c#的桌面版书法笔迹,首先将其进行移植,移植的过程是轻松的,可效果却不尽人意。相应的函数、方法并不是完全的一致,只是在实现相应的逻辑。鼠标绘制的快慢决定了笔迹的粗细,粗细渐变的过程要求均匀、笔迹的锯齿等都需要去除。c#利用的是贝塞尔曲线,我们将坐标点进行筛选,剔除不适合的坐标点,例如:点与点之间距离太短,产生时间相近等。贝塞尔曲线是非常平整光滑的,我们通过计算将坐标点与坐标点之间再次进行处理计算,将计算的点交给贝塞尔绘制函数得到更加细腻平滑的曲线。接下来就可以根据绘制的快慢去实现画笔的粗细,由于需要考虑整体的均匀变化,我们所做的是将每次经过的点整体的距离记录下来根据时间计算速度,再经过线性变化得到画笔粗细值。同时需要考虑的是要这个整体的距离也需要有一个固定的阈值,如果越来越长的话难免速度变化的幅度会越来越小。以这个大致的思路我们将pc端的绘制同时移植到了web端和android端。再结合websocket的实时通信,实现将坐标点实时传输来实现web端的人工绘制和android端的系统绘制,在两端实现一个一样的效果,在经过声网视频通话sdk实现将效果准确复制。

写在最后

我们团队想做的不仅于此,此次技术仅是一块引玉之砖,还有很多价值需要继续挖掘,希望更多的有相关技术和兴趣的小伙伴参与进来,在这个提笔忘字的时代。重视汉字的书写、重视汉语言文化。
我是Mr小艾

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值