程序员应该这样解读《隐秘的角落》

2020-07-06 08:29:29 +08:00
 netpi

原文地址: https://mp.weixin.qq.com/s/GPJ2TjgIdA-XG5rNWVCXZQ

前两天,我一口气看完了电视剧《隐秘的角落》,剧情相当精彩。美中不足的是,剧组为了让片子过审, 导致 11 集,12 集的剪辑顺序被打乱,甚至台词被修改,以至于片中有几个处演员口型与台词对不上,剧情也有点让人摸不到头脑。因此我尝试通过人工智能技术还原了被修改的台词,从而还原了一部分原本的剧情,一个更加黑暗的真相。

因要过审而被修改的台词

被修改的台词主要集中在 12 集,朱朝阳、严良两人火海逃生后在天台上的对话:

这段对话其实被后期修改过了,口型和内容不吻合。至于「隐秘」剧组为什么要修改这段台词,我也是在还原了原对话之后才知道答案,因为原对话实在过于黑暗了,坐实了朱朝阳的黑化,是不可能过审的。 那么原对话到底是什么?往下看,我用深度学习来告诉你答案。

用机器学习识别唇语,还原对话

这部分主要演示用机器学习的手段识别唇语,唇语识别就是靠分析人说话时嘴唇与面部的特征来解读人说话的内容。这里我并不介绍唇语识别模型的基础架构(篇幅太长,后面有机会单独讲),而是通过以识别张朝阳唇语为例,演示一下唇语识别的一个简单流程。

这个案例中的模型我选使用基于 Tensorflow 的 Facemash 模型进行二次训练。Facemash 的主要作用是获取面部表情的特征。之后通过分析嘴唇的运动特征,来预测出说话内容的汉语拼音的声母和韵母。(直接通过嘴型预测汉字难度太大,所以我要先预测出拼音,之后再根据剧情+拼音还原出原对话) 第一步先通过 Facemash 拿到朱朝阳对话的面部特征,如图: 这张「面膜」就是 Facemash 模型识别出来的特征点间的连接,下图是某一帧的面部识别数据:

我们将一系列连续的数据展示在 3D 空间坐标轴下的话,就是一张对话中的的脸了。

拿到嘴唇和面部特征后,就要进行预测了,这部分我直接给大家展示动态流程图:

利用这种方法,我还原了这句原台词汉语拼音的几种可能:

把「你不想报仇么」带入对话,发现口型也对上了。bingo,这才是原台词呀:

同样的方法,我又还原了几处原对话,如下: 严良:「那该怎么办」而不是「~~告诉警察吧~~」

朱朝阳:「除非让他被抓...」而不是「~~像我爸希望的那样~~」

朱朝阳:「你不想报仇么」而不是「~~你想报警么~~」

好了以上就是我用机器学习 + 剧情联想还原的天台对话。接下来我就要来解读剧情了,解读为什么这段对话会坐实朱朝阳的黑化,不能过审。

解读被修改的台词

国产剧的过审有两个最重要的原则: 1 不能出现悬案 2 坏人必须被绳之以法

知道了这个前提,我们再来审视一下被修改的台词。 全剧出现了三张内存卡,原卡最后给了张东升,空卡给了严良,而复制卡一直在朱朝阳手里。 也就是说 11 集大火之后,朱朝阳本可以将复制卡交给警察,从而将张东升绳之以法。但是这时候的朱朝阳并不敢报警,因为他并不知道普普是否将朱晶晶的真实死因告诉了严良,因此他不敢冒险。那么对于朱朝阳来说,此时此刻对于自己最有利的方案就是:利用张东升的手杀死严良,然后再把复制卡交给警察,逮捕张东升。所以根据上面还原的台词,天台上的真实对话很可能是:

严良问:「那该怎么办?」 朱朝阳应该说了一个抓捕张东升的计划,这里由于被剪辑过,不知道剧情,还原难度比较大,但我还是还原了一句话:「除非让他被抓...」。根据还原的这句话,我认为朱朝阳告诉严良的计划应该是这样的: 1.朱朝阳把张东升约到船头 2.张东升与严良冲突 3.朱朝阳立刻报警当场抓住张东升犯罪事实** 然而这时候,严良对朱朝阳没有了之前的信任,因此对这个计划有些犹豫。 最后朱朝阳补刀:「你不想报仇么?」

最终善良的严良为替普普报仇,还是同意了这个计划。

以上就是我结合剧情大致还原的对话。朱朝阳的目的是借张东升的手杀死严良,利用这个计划借刀杀人,让严良送死的。 而朱朝阳内心真实计划我想是这样的:

1.引导张东升与严良见面发生冲突(自己并不报警,后面警察来了之后朱朝阳的表情是震惊的,因为并不是他报警的) 2.如果胜利回来的是严良,那么他就会乘其不备杀死严良(朱朝阳和严良学过打架),然后嫁祸给张东升 3.如果胜利回来的是张东升,那么他就会跳进大海逃生(朱朝阳一直在练习憋气),然后把复制卡交给警察 分析到这里,朱朝阳的内心的阴暗已经不忍直视。可能这也正是「隐秘」剧组原本想要呈现的坏小孩,就像原著小说「坏小孩」里说的那样**「在成年人眼里,小孩子永远是简单的。即使小孩会撒谎,那谎言也是马上能戳穿的,他们根本想象不到小孩子的诡计多端,哪怕他们自己也曾经当过小孩。」** 以上。

最后送大家一个彩蛋: 12 集在船上张东升对朱朝阳有一句概括性的评价,也是不能播的...,所以这句台词也被「隐秘」剧组修改了,想知道是什么吗?请在「东泽聊技术」公众号回复「朝阳东升」获得彩蛋。

10290 次点击
所在节点    推广
78 条回复
buyaoxiangcai
2020-07-06 15:00:28 +08:00
666
hjw45611
2020-07-06 16:41:32 +08:00
张东升,一开始是程序员,为了老婆来到大城市,天天 996,最后身体搞垮头也秃了。
后来到 35 岁后转行当代课数学老师,但一直和老婆没孩子,最终导致闹离婚


第一眼看到张东升秃头后,内心马上脑补以上剧情、、
BryceBu
2020-07-06 17:40:29 +08:00
硬核观影,牛逼
hpan
2020-07-06 18:17:08 +08:00
高手
AllenHua
2020-07-06 19:04:05 +08:00
厉害 这是楼主实现的么 棒!
EyreYoung
2020-07-06 19:38:43 +08:00
@huntrue 你才是高手
grimpil
2020-07-06 19:42:17 +08:00
原著才叫黑暗,电视剧已改的面目全非,不过不这么改也过不了审,所以还是看原著吧
billk
2020-07-06 19:44:32 +08:00
厉害厉害
SbloodyS
2020-07-06 20:42:37 +08:00
厉害厉害
gdt
2020-07-06 20:47:47 +08:00
唇语识别吗?
hideinbush
2020-07-06 22:21:27 +08:00
只有「高手」,才能活下来~隐秘之主朱朝阳
minamike
2020-07-06 22:56:18 +08:00
我觉得「除非让他被抓...」那句更像「除非他们抓张东升」
systemcall
2020-07-07 02:19:22 +08:00
想起了 2001 太空漫游
sarlanori
2020-07-07 07:10:56 +08:00
我是怀着很大的期待看的,结果很失望,这个跟韩国那些比差太远了,即使是原著也差太远。
netpi
2020-07-07 15:00:59 +08:00
@runking 怎样的输入法呢
auto8888
2020-07-07 15:58:32 +08:00
牛逼 炸裂
yujiang
2020-07-07 21:43:29 +08:00
唇语识别基础是演员台词和剧本一样,如果演员念 12345678 这样后期重配音那就没招了
Cu635
2020-12-20 13:54:27 +08:00
@zihuyishi
如果是“演员”,那就不会了,因为演员就知道后期配音要和现场口型对得上,因此后期配音也还是要表演台词的。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/687429

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX