2018-05-23汇报中文草稿

1.安卓视频通话项目:

  • 原OpenVideoCall:
    支持多人视频聊天与频道文字消息(ArrayList),只要同频道
    即可(channelName+EncryptionKey)
    同一APP:APPID,不用用户:UID(user ID) /config id
  • 加入信令系统:
    • 账号登录
    • 加入单人点对点视频模式:
      (1) 发起呼叫:
      查询对方是否在线(public void queryUserStatus(String account);)
      如果在线,则邀请对方加入特定频道(channelName = MyAccount + Subscriber;)
      (2)接受呼叫
    • 发送点对点文本聊天消息
      channel name: friends name
    • 发送频道文本聊天消息
      基于Agora-rtc-sdk

text chat
select channel mode: single/group

消息系统:
MessageBean
MessageListBean
MessageAdapter:RecyclerView: 布局视图

2.视频后处理
滤镜:像素处理
2.1 画面素描化
(1).图像灰度化
Gray = R0.299 + G0.587 + B*0.114
参考
(2).求图像的底片
底片的原理就是对RGB取补色即可。也就是将当前像素点的RGB值分别与255之差后的值作为当前点的RGB值,即
R = 255 – R;G = 255 – G;B = 255 – B;
(3).对底片进行高斯模糊
图像平滑,基于正态分布的高斯模糊滤波器。(中心像素与高斯模板做卷积)参考
(4).模糊后的结果与灰度图像进行图像混合,效果为颜色减淡
图像混合:将两张图像的重叠,分别取相同位置的两个像素点上的RGB值,通过特定的公式计算出新的RGB值,不同公式产生不同效果。
颜色减淡:(b[i] == 255) ? b[i] : Math.min(255, ((a[i] << 8 ) / (255 - b[i])))

2018-05-23汇报中文草稿_第1张图片
素描化

2.2 画面卡通化
逐帧处理画面
(1). 应用双边滤波器来减少图像的色彩(平滑图像并保留边缘)
(2). 将彩色图像转换为灰度,应用中值滤波器减少图像中的图像噪点
(3). 使用自适应阈值处理灰度图像创建轮廓(或用其他方法生成素描图)
(4). 将来自步骤1的彩色图像与来自步骤3的轮廓叠加
整个画面处理,较粗糙,若精细处理

特征传递:
三维人脸重建,在发送端做处理,选择模型
表情特征数据驱动现有动画模型
morphing 算法,需捕捉运动位移
camera的视频流经过人乱跟踪检测,输出顶点坐标,然后制作的时候,保持和输出相同等价顶点,经过retarget系统就可以达到精准的转换。
三维人脸重建、脸部动作捕捉、动画驱动
利用了人脸的先验知识,即只是看到一个人的照片,也可以想象出这个人的长相及三维特征。使用普通摄像头的二维图像作为输入,然后基于相芯科技长期积累的大量真实的三维人脸数据,并借助深度学习算法,重建出人脸三维模型,进而实时地进行人脸的三维定位跟踪。
然后通过实时精确捕捉47个面部肌肉运动,将获得的面部表情系数同步到虚拟形象的表情上,实现实时驱动。

SD-RTN(Software-Defined Real Time Network),软件定义实时传输网络。是由声网http://Agora.io设计,专为内容实时传输而设计的网络架构。底层传输协议,我们选择了UDP。

2018-05-23汇报中文草稿_第2张图片
image.png

你可能感兴趣的:(2018-05-23汇报中文草稿)