不管H264还是H265还是AV1,都是按照传统的方法对视频,或者说连续的图像流进行压缩的,也就是将视频在频谱上进行处理,减少人眼不太关注的部分,然后通过对时间域的分析,去掉相邻图像帧之间的重复部分等等。
当然在这中间,利用分块技术减少运算复杂度,或者自适应分块技术,在编码效率和编码质量之间进行自动的权衡。
王一男决定独辟蹊径,完全按照神经网络的方式来处理问题,就像米歌的狗狗Zero版本一样,他抛弃了所有预先的知识,甚至包括频率的概念。
神经网络唯一的输入来源是图像的序列,评价算法的质量标准是解码之后图像序列跟原始图像之间的偏差,这是有一个人眼视觉方差评估办法的。
采用这样的方法对神经网络进行训练,王一男将算法时间也作为训练的一个基本参数,也就是说,最小的大小,最快的时间,最小的人眼视觉方差,用所有能获得的样本进行训练。
王一男回到帝都之后,简单跟大卫计划的团队碰了碰,看了看他们的原型,然后要求团队开始针对原型系统的问题,开发2.0版本,重点是可扩展的架构,以及服务的稳定性。
而他自己又开始闭关了,学校显然不是一个很好的闭关地点,周慧家就更不是了,王一男把自己关在容与公司的大本营,这样也好,离哥德尔系统更近一些。
闭关时候的王一男,就像完全变了个人,六亲不认,目光呆滞,和平常那个平民模样的年轻人完全对不上号,整个就是一个疯狂科学家的形象,不过呢,效率确实高的惊人。
周慧忍不住去容与公司看了他两次,结果每次呆不了多一会就狼狈逃窜了,用她的话来说,太瘆人了,王一男大部分时间坐在键盘前面疯狂的打字,有时候像一个目光没有焦距的幽灵一样在办公室里面飘来飘去,嘴里还念念有词,真是吓死人不赔命。
哥德尔系统开始利用无数的视频样本开始训练,什么youtobe,什么爱艺,什么又酷,反正王一男给哥德尔系统买了无数个VIP账号,疯狂的让它看视频,至于会不会走火入魔,那就不是王一男考虑的范畴了。
但是这些视频样本的数量貌似不太够啊,关键是基本上所有的素材都经过了各种后期处理,或者美颜啊,或者剪接啊,反正对于神经网络学习来说,不是原生态的,噪声有点多。
这个时候,王一男不禁要感谢王校长引发的直播风潮了,除了为风投找到一个疯狂砸钱的红海,为部分二次元屌丝男女提供致富的渠道以外,无数直播软件,还给哥德尔系统提供了无数真实的视频样本。
于是在容与公司总部,无数直播的视频流被接了进来,然后转换成哥德尔系统一个视频压缩的专用神经网络权重。
这可是一个抛弃了所有先验知识的神经网络,没有傅里叶分析,没有小波分析,没有运动预测,没有分块,更没有离散余弦变换。
神经网络的目标也很明确,压缩原始的视频数据,或者说时间域上的离散图像帧,用尽可能小的尺寸、尽可能快的速度、还有尽可能小的人眼视觉方差,至于原理是什么,谁关心呢?
王一男的任务很简单,也很繁重,他要找到一系列的数学工具,形式化技巧,并且把这些程序化,这样哥德尔系统就能将训练完成的神经网络编译成LLVM的字节码,
再经过多次迭代,优化之后,最终得到一个精简版本的LLVM字节码,
这些字节码,就可以定位到特定的CPU架构中,比如说X86或者ARM,得到可以实际工作的压缩、解压缩程序。
不知道哥德尔系统看多了直播,会不会学会东北话,想来是不会的,不过王一男坚决没让哥德尔系统用那个发抖短视频来训练,科学家也是有洁癖的,“那么Low的东西,就污染我好了,别污染哥德尔系统了”,王一男想。
时光荏苒,这期间,王一男还去上了两堂课,陪周慧看了两次电影,毕竟,疯狂的科学家还是个正常人不是。
哥德尔系统的视频压缩神经网络也逐步的稳定下来了,编译到LLVM指令的工作还没完成,王一男迫不及待的要先看看直接用神经网络进行视频压缩的效果,毕竟,要是还没有H265强,那还不如洗洗睡了呢。
他选中了一个蓝光的4K分辨率片源,就是那种电视机厂商用来做广告的几分钟的短视频,使用H265标准压缩后,大小大概是700M。
将H265视频输入到FFMPEG,解压出JPEG格式的每一帧图像数据,再送往哥德尔系统,这中间当然会有画质损失,不过王一男已经顾不得那么多了,
他屏住呼吸,两眼紧盯着屏幕。