当前位置: 首页 > 编程日记 > 正文

看过漫改,但你看过「改漫」吗?AI 一键让影视变漫画

作者 | 神经小兮

来源 | HyperAI超神经

头图 | 下载于视觉中国

把影视剧变成漫画,是怎样的一种神操作?来自大连理工大学和香港城市大学的团队,最新提出的 AI 框架,可自动将影视剧转换为漫画。从此,观影追剧又多了一种打开方式。

如今,电影、电视剧以及各类视频,已经成为我们生活中不可缺少的一部分。据报告,每天上传到 YouTube 的视频总时长,就需要一个人花费超过 82 年的时间才能看完。

为了节省追剧时间,2 倍速播放已经成为刷剧标配。除了倍速、跳跃式观看,以及看影评人讲解,还有一种快速追剧的方式,就是——把影视剧改成漫画。

近日,大连理工大学和香港城市大学的研究人员,发布了一个有趣的研究,可以自动将电视剧、电影或其他视频的画面生成为漫画形式,并配上文字气泡。

《泰坦尼克号》《风声》《老友记》和《在云端》的漫画版本

研究人员在论文中表示:「与最新的漫画生成系统相比,我们的系统可以合成更具表现力和吸引力的漫画。未来会将这一技术扩展到,利用文本信息生成漫画。」

看过漫改,但你看过「改漫」吗?

此前,业内已有一些类似的研究成果,提出将影片转换为漫画的自动化系统,但其在自动化和视觉效果、可读性等方面还有待提高,因此,这一研究方向仍然充满挑战。

来自大连理工大学和香港城市大学的团队,则在最近发表的论文《Automatic Comic Generation with Stylistic Multi-page Layouts and Emotion-driven Text Balloon Generation》中,提出了更优的方法。

论文地址:

https://arxiv.org/abs/2101.11111

论文中提出了一个全自动漫画生成系统,无需用户任何手动调整,就可以将任意类型的视频(电视连续剧、电影、卡通),生成高质量的漫画页面,将角色对话转化为气泡文字。而且该系统生成的漫画具有丰富的视觉效果,且可读性强。

 

三大模块,让影视剧变漫画书

该论文中提出的关键思想是,在没有任何手动指定的参数或约束的情况下,以全自动的方式设计系统。同时,团队有选择地引入用户交互,使设计更加个性化和多样化。

总体来看,该系统主要有三个模块,分别是:关键帧选择和漫画风格化、多页面布局生成、文字气泡生成和放置。

系统整体的工作流程示意图

 模块一:关键帧的提取和风格化 

系统的输入是一段视频及其字幕,其中包含对话和相应的开始和结束时间戳信息。

他们首先每 0.5 秒钟从原始视频中选择一帧,然后,利用字幕中的时间信息和两个连续帧之间的相似性,来选择信息关键帧。最后对关键帧进行风格化,也就是将普通图像转换为漫画风格的图像。

关键帧提取

关键帧的选择是尤为重要且难度比较高的一项任务,该团队主要利用时间信息来进行选择。

关键帧选择流程

如上图所示,团队首先利用每个字幕的开始和结束时间将视频分割成多个镜头,这些镜头分两种:对话镜头(有字幕的镜头)和非对话镜头(无字幕的镜头)。

对于对话镜头:系统会计算之前获得的两个连续帧之间的 GIST 相似度(如果 GIST 相似度较小,则两帧之间差异较大)。

在执行过程中,如果相似度小于预先设置的阈值 ????1,那么后一帧将被选为关键帧。如果一组字幕对应的帧都没有被选中,就选取中间一帧作为关键帧。

考虑到一个连续的对话和同一个场景可能对应多个字幕,因此团队会计算之前得到的连续关键帧之间的 GIST 相似度。如果相似度大于设置的阈值 ????2,就认为它们属于同一个场景。那么,就只保留其中一个关键帧,然后合并字幕。

另外,在同一组字幕中,系统有可能选择多个关键帧,因为计算之后,可能发现这些关键帧具有语义关系,这些关键帧将用于多页布局。

对于非对话的镜头:系统会首先选择与当前镜头中的帧最不相同的帧。为了减少选取帧的冗余,系统会计算这个镜头与之前选择的关键帧的 GIST 相似度,只有小于之前设定的阈值,才会被选为关键帧。

最后,通过比较开始时间戳和关键帧的时间戳,将字幕集分组。在关键帧的开始和结束时间戳范围内的任何字幕,都将被收集在一起。

画面风格化

团队采用了扩展的高斯差法,将源图像转换为黑白图像。饭后执行 128 级颜色量化,得到量化后的图像,实现彩色风格化。就是这样,一组组真人电影镜头,变成了漫画风格。

 模块二:多页面布局 

团队提出了一个多页布局框架,用来自动分配和组织页面的布局,同时能够呈现出更加丰富的视觉效果。

在这一模块中,首先需要计算出四个用于指导多页面布局生成的关键因素,包括:关键帧的兴趣区域(ROI)、关键帧的重要性等级、关键帧之间的语义关系和一个页面上的面板数量。

然后,团队提出了一种基于优化的面板分配方法,将关键帧分配到一个页面序列中,并使用数据驱动的漫画式布局合成方法,来生成每个页面的布局。

追漫的小伙伴都知道,漫画书中每一页的分格数量都是不固定的,为了让读者有更好的阅读体验,漫画家都会根据剧情来安排分格数量。

在此项研究中,团队将这一问题作为全局的优化问题,来完成每个镜头在漫画页面中的分配。

关键帧之间的关系分析:同一颜色虚线框内的关键帧具有语义关系,反之则不具有

 模块三:文字气泡的生成和放置 

文字气泡的生成

通常在漫画中,对于不同情境与情感下的对话,作者也会选择不同的气泡形状,这对于漫画内容的表达非常重要。而现有的相关研究一般都是只使用基本的椭圆式气泡形状,这对于情感表达来说显得不够丰富。

本文则提出的一项重要成果,即一种基于情感感知的气泡生成方法,可利用含有情感的视频音频和字幕信息,生成与之相适应的文字气泡形状。

系统根据输入视频对应音频和字幕,分析其中包含的情感

然后生成对应气泡形状

在该系统中,作者采用了三种常见的气泡形状:椭圆形气泡、思想气泡和锯齿状气泡。这三种气泡适用的感情分别为:情绪平静、想法(不说出来)、感情强烈。

对于气泡分类器的训练,团队主要利用一些动漫视频和相应的漫画书,来收集音频情感、字幕情感和气泡类型的数据。

气泡定位与放置

与之前方法类似,本文也采用了发言人检测和唇动检测,来获取说话的人在一帧中的位置,然后将气球放置在其所属的人物附近。

嘴部检测+唇动检测,定位讲话者

具体执行流程为:

  • 首先使用「Dlib」人脸检测 Python 库,来检测一帧中每个人物的嘴部;

  • 然后利用唇动分析,计算连续两帧帧间嘴部区域像素值的均方差,该差值是在当前帧中嘴巴区域周围的搜索区域上计算的,以确定其嘴唇是否有动作;

  • 最后,设置一个阈值来确定某角色是否在说话。

在得到发言者的位置后,将文字气泡放在其附近,并将气泡的尾部指向讲话者的嘴巴。

用四部经典影片,评估系统效果

为测试模型效果,团队输入了 4 部不同影片的共 16 个片段,包括:《泰坦尼克号》、《风声》、《老友记》和《在云端》。

输入视频的持续时间从 2 分钟到 6 分钟不等,每一段剪辑都包含有台词的部分。

对于每个剪辑,团队记录使用该系统生成一本漫画书所消耗的时间,并计算平均消耗的时间,来评估系统性能。

每段视频生成漫画时间不超过 10 分钟

作者总结道,与之前方法相比,本研究的方法优于其它方法。主要体现在以下三个方面:

  • 首先,该系统可以为对话生成更丰富的气泡形状,而现有的方法只使用单纯的椭圆词气球;

  • 其次,利用文本总结的方法,将一些相关的字幕进行合并,这样可确保文字气泡中的句子不会太长,增强可读性;

  • 第三,通过自动获取四个重要参数,来实现全自动多页布局(此前方法多为半自动,需人工干预),且布局结果合理、丰富。

效果展示与对比。其中,(a)-(d) 为该团队的系统生成效果;(e)-(h) 为另一团队在 2015 年发表的成果

对应电影依次为:《泰坦尼克号》、《风声》、《老友记》和《在云端》

为了避免主观因素干扰,团队还通过 Amazon Mechanical Turk 招募了 40 名志愿者,对团队的生成结果和其他同类系统生成的结果进行比较。

志愿者首先会观看原视频,然后阅读各种不同方法生成的漫画,给出效果评级。为了避免主观偏见,视频和相应的漫画都是随机排列的。

最终结果是,无论志愿者之前是否看过视频,该系统获得的评价都比其他方法更好。

一键生成漫画,还能怎么玩?

虽然已经取得用户好评,但该系统当然称不上完美,仍有一些问题待解决。

比如,对于关键帧的选择,仍然可能有相似度过高的情况出现,这会带来画面的冗余。

另外,如果输入的视频没有字幕,那么在生成漫画之前,系统还要首先通过语音识别来提取台词,但是语音识别的结果往往容易出现错误,因此这也是该系统面临的一个挑战。不过,团队表示,相信随着语音识别技术的不断进步,这一问题未来也将迎刃而解。

未来,当这一技术足够成熟,很多视频作品都会多一种打开方式,用漫画的形式来「观看」一部影片,对于读者来说,或许会带来更丰富的想象空间。

不同于视频,漫画的画面都为静态,且文字较少

但正因如此,读者得以加入更多个人情感与想象

此外,对于普通人来说,不需具备绘画功底,就能轻松将视频转换为漫画,这或许也会像此前能将照片转换为绘画风格图像的 Prisma App 一样,成为新的大众娱乐工具。

而团队还计划,下一步将这一方法扩展到利用文本信息来生成漫画。也就是说,只要给出漫画剧本,系统就能够自动生成漫画,为漫画师节省大量时间。

漫画追剧,岂止是 2 倍速

更多精彩推荐
☞30 周岁的 Python,“虐”我 20 年☞疫情期间网络攻击花样翻新,全年 81748 起安全事件背后暗藏规律☞高手的习惯:pythonic风格代码☞最低售价17999元,华为发布新一代折叠屏手机Mate X2
点分享点收藏点点赞点在看

相关文章:

跨越企业的“中等收入陷阱”

在国际经济学中,有一个“中等收入陷阱”的概念,含义为:新兴市场国家突破人均GDP1000美元的“贫困陷阱”后,很快会奔向1000美元至3000美元的“起飞阶段”;但到人均GDP3000美元附近以后,快速发展中积聚的矛盾…

docker 数据卷与容器卷

2019独角兽企业重金招聘Python工程师标准>>> 容器中管理数据主要有两种方式: 数据卷(Data Volumes) 数据卷容器(Data Volumes Dontainers) 数据卷 使用-v可以挂载一个本地的目录到容器中作为数据卷。 [root…

document.all与WEB标准

1、DOM  WEB标准现在可真是热门中热门,不过下面讨论的是一个不符合标准的document.all[]。DOM--DOCUMENT OBJECT MODEL文档对象模型,提供了访问文档对象的方法.例如文档中有一个table,你要改变它的背景颜色,那就可…

终于有人把Python讲清楚了!

经常有人问我,Python初学者该怎么学好Python?其实从事Python开发的这些年中,我见过很多相关的教程和书籍,他们大都这样讲 :先介绍 Python 的基本语法规则、list、dict、tuple 等数据结构,然后再介绍字符串处…

开源 免费 java CMS - FreeCMS1.5-建站向导

2019独角兽企业重金招聘Python工程师标准>>> 下载地址:http://code.google.com/p/freecms/ 建站向导 从FreeCMS 1.5开始支持 为了方便用户创建站点,系统提供了建站向导功能。 从左侧管理菜单点击建站向导进入。 第一步:创建…

Python实战之网络编程socket学习笔记及简单练习

sk socket.socket(socket.AF_INET,socket.SOCK_STREAM,0) 参数一:地址簇 socket.AF_INET IPv4(默认) socket.AF_INET6 IPv6 socket.AF_UNIX 只能够用于单一的Unix系统进程间通信 参数二:类型 socket.SOCK_STREAM 流式socke…

用IE重起计算机或者关机

<script language"JavaScript"> var Applicationnew ActiveXObject(Shell.Application.1); </script> <button οnclickApplication.ShutdownWindows();>关机</button><br> <button οnclickApplication.Suspend();>挂起</bu…

系统故障分析和排查

日志的功能 用于记录系统、程序运行中发生的各种事件通过阅读日志&#xff0c;有助于诊断和解决系统故障日志文件的分类内核及系统日志由系统服务syslog统一进行管理&#xff0c;日志格式基本相似用户日志记录系统用户登录及退出系统的相关信息程序日志由各种应用程序独立管理的…

用数据分析《你好,李焕英》“斐妈”爆红的真相

作者 | 俊欣来源 | 数据分析与篮球头图 | 下载于视觉中国《你好&#xff0c;李焕英》成为了春节档最热门最火爆的电影之一。截止目前&#xff0c;根据猫眼电影专业版的数据显示&#xff0c;该影片的票房已经突破了43亿&#xff1b;在抖音搜索上&#xff0c;因为其“好哭”而冲上…

[转] Android开发之如何保证Service不被杀掉(broadcast+system/app)

转发&#xff1a;原文链接http://blog.csdn.net/mad1989/article/details/22492519 序言 最近项目要实现这样一个效果&#xff1a;运行后&#xff0c;要有一个service始终保持在后台运行&#xff0c;不管用户作出什么操作&#xff0c;都要保证service不被kill&#xff0c;这可真…

如何使得按确定和取消按纽转到两个不同的页面!

问&#xff1a; 如何使得按确定和取消按纽转到两个不同的页面&#xff01; confirm(),后面的具体参数是什么&#xff1f; ______________________________________________________________________________________________ 答1&#xff1a; 看个例子吧&#xff01; <scrip…

PHP函数学习nl2br(),strlen(),mb_strlen()

2019独角兽企业重金招聘Python工程师标准>>> 1 nl2br($str): 注意&#xff1a;n之后的是字母L的小写&#xff0c;不要当做数字1. 函数作用&#xff1a;在$str中的每个新行(\n)之前插入HTML换行符( <br/> ) 示例&#xff1a; echo nl2br("One line.\nAnot…

携手中国电信、中国联通,华为正式发布首个5G超级刀片站 A+P 2.0天线商用网络

近日&#xff0c;在2021 MWC 上海期间&#xff0c;中国电信、中国联通携手华为发布首个5G超级刀片站 AP 2.0天线商用网络。 中国电信5G共建共享工作组高级项目经理李志军分享中国电信部署AP 2.0后的商用体验。AP 2.0颜值与实力兼备&#xff0c;解决了无空间部署5G以及5G挂高低…

『干货』分享你最喜欢的技巧和提示(Xcode,objective-c,swift,c...等等)

亲爱的读者们,你们好 !年底将近,分享从过去一年你最喜欢的技巧和建议作为礼物送给新手们。提交你的最喜欢的迅速或objc琐事,实用的提示,意外的发现,实用的解决方法,没用的迷恋,或不论什么其它你认为今年非常酷。就在以下写下你的评论! 笔者分享总结例如以下(本篇会不定期进行更…

一口一个,超灵活的Python迷你项目

来源 | 法纳斯特责编 | 寇雪芹头图 | 下载于视觉中国在使用Python的过程中&#xff0c;我最喜欢的就是Python的各种第三方库&#xff0c;能够完成很多操作。下面就给大家介绍22个通过Python构建的项目&#xff0c;以此来学习Python编程。大家也可根据项目的目的及提示&#xff…

说说大型高并发高负载网站的系统架构【转】

我在CERNET做过拨号接入平台的搭建&#xff0c;而后在Yahoo&3721从事过搜索引擎前端开发&#xff0c;又在MOP处理过大型社区猫扑大杂烩的架构升级等工作&#xff0c;同时自己接触和开发过不少大中型网站的模块&#xff0c;因此在大型网站应对高负载和并发的解决方案上有一些…

DataGrid 的 全选/取消全选 控制(CheckBox)

DataGrid控件: <Columns> <asp:TemplateColumn> <HeaderStyle Width"10px"></HeaderStyle> <HeaderTemplate> <INPUT id"CheckAll" name"CheckAll" type"checkbox"…

k8s入门系列之介绍篇

Kubernetes介绍1.背景介绍  云计算飞速发展    - IaaS    - PaaS    - SaaS  Docker技术突飞猛进    - 一次构建&#xff0c;到处运行    - 容器的快速轻量    - 完整的生态环境2.什么是kubernetes  Kubernetes(k8s)是Google开源的容器集群管理系…

元宵节就要到了,花灯要不要来一盏?3D的那种

又是一年元宵佳节&#xff01;我国各地庆祝元宵节的方式很有讲究&#xff0c;有的地方吃汤圆&#xff0c;一个个软糯香圆&#xff1b;有的地方办灯展&#xff0c;十分热闹。当然&#xff0c;疫情当下&#xff0c;为了大家的安全&#xff0c;不建议线下聚众集会。但是&#xff0…

Android Timer的使用

1&#xff1a;服务端使用PHP <?phpecho date(Y-m-d H:i:s); ?> 2&#xff1a;activity_main.xml <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"xmlns:tools"http://schemas.android.com/tools"android:layout_w…

屏蔽相应键盘按钮

<script language"Javascript"><!-- //屏蔽鼠标右键、CtrlN、ShiftF10、F11、F5刷新、退格键 //Author: meizz(梅花雨) 2002-6-18 function document.oncontextmenu(){event.returnValuefalse;}//屏蔽鼠标右键function window.onhelp(){return false} //…

MySQL查询缓存

2019独角兽企业重金招聘Python工程师标准>>> MySQL 查询缓存保存查询返回的完整结果。当查询命中改缓存&#xff0c;MySQL 会立刻返回结果&#xff0c;跳过了解析、优化和执行阶段。 查询缓存系统会跟踪查询涉及查询中的每个表&#xff0c;如果这些表发生变化&#…

事半功倍系列 javascript

清华大学出版的《事半功倍系列 javascript》,本人照着书敲出来的,有些翻译了一下.前几年看了一下,最近无事,重新翻了翻,很有帮助.本书应该有光盘的,但学校的书,光盘不知在哪.希望对你学 javascript有帮助 第一章javascript简介 1.在地址栏输入javascript语句 Javascript:Doc…

Golang 本地帮助文档

2019独角兽企业重金招聘Python工程师标准>>> godoc -http:8000 url: http://127.0.0.1:8000 转载于:https://my.oschina.net/koalaone/blog/169626

2021版Java知识体系详解!(赠视频)

本篇文章是我们整理的一份架构师的成长路线&#xff0c;包括了并发编程、设计模式、常用框架、中间件、微服务与分布式、常用工具、JVM、MySQL、数据结构与算法&#xff0c;还有架构师精选视频、架构师成长路线高清大图。又是新的一年&#xff0c;每一年都会有人在成为架构师的…

【6】font-size 字体属性

font-style -- 字体风格font-variant -- 小型大写字母文本font-weight -- 文本的粗细font-size/line-height -- 大小/行高font-family -- 字体常用格式&#xff1a; fo…

MIS开发中.net Framework的打印功能

Microsoft .net Framework的打印功能都以组件的方式提供&#xff0c;为程序员提供了很大的方便&#xff0c;但是这几个组件的使用还是很复杂的&#xff0c;有必要解释一下。 打印操作通常包括以下四个功能 1 打印设置 设置打印机的一些参数比如更改打印机驱动程序等 2 页面设置…

UML部署图(转载)

概述: 部署图用于可视化的软件组件部署的系统中的物理组件的拓扑结构。 因此&#xff0c;部署图是用来描述一个系统的静态部署视图。部署图由节点和它们之间的关系。 目的: 部署名称本身描述的原理图的目的。部署图用于描述软件组件部署的硬件组件。组件图和部署图是密切相关的…

一年新增457万例,用 Python 揭示癌症的可怕之处

来源 | 数据分析与篮球作者 | 俊欣头图 | 下载于视觉中国2月27日下午5时许&#xff0c;香港著名演员吴孟达去世&#xff0c;引发了众多影星以及网友在社交媒体上面的悼念&#xff0c;根据其好友田启文的透露&#xff0c;吴孟达是去年年底发现自己患上肝癌的&#xff0c;当时癌细…

深度学习与计算机视觉系列(9)_串一串神经网络之动手实现小例子

深度学习与计算机视觉系列(9)_串一串神经网络之动手实现小例子 作者&#xff1a;寒小阳 时间&#xff1a;2016年1月。 出处&#xff1a;http://blog.csdn.net/han_xiaoyang/article/details/50521072 声明&#xff1a;版权所有&#xff0c;转载请联系作者并注明出处 1.引言 前面…