CN113766330A - 基于视频生成推荐信息的方法和装置 - Google Patents
基于视频生成推荐信息的方法和装置 Download PDFInfo
- Publication number
- CN113766330A CN113766330A CN202110578112.5A CN202110578112A CN113766330A CN 113766330 A CN113766330 A CN 113766330A CN 202110578112 A CN202110578112 A CN 202110578112A CN 113766330 A CN113766330 A CN 113766330A
- Authority
- CN
- China
- Prior art keywords
- recommended
- video
- recommendation information
- target object
- shot
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/466—Learning process for intelligent management, e.g. learning user preferences for recommending movies
- H04N21/4668—Learning process for intelligent management, e.g. learning user preferences for recommending movies for recommending content, e.g. movies
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种基于视频生成推荐信息的方法、装置、计算设备、计算机可读存储介质以及计算机程序产品。该方法包括识别视频中的关键帧;检测关键帧中的目标对象,以确定目标对象所在的图像区域;基于图像区域的图像数据,提取目标对象的特征向量;基于目标对象的特征向量,在待推荐对象库中选取推荐对象;生成推荐对象的推荐信息,其中推荐信息包括链接到推荐对象的展示接口的入口,并且其中响应于推荐信息在呈现时被触发而引起推荐对象的展示接口被呈现;以及,将推荐信息相对于视频的呈现时间与关键帧相关联。本申请的方法操作简单,能够对视频中的对象进行精确且高效的识别,并且快速到达对象的展示接口。
Description
技术领域
本申请涉及视频处理的领域,尤其涉及一种基于视频生成推荐信息的方法和装置、计算设备及存储介质。
背景技术
观看影视剧作品是一种常见的休闲娱乐方式。随着影视剧的播放,剧中出现的对象(例如,剧中出现的物品)也常常受到人们的追捧。不过,获取影视剧中对象的同款并非十分容易,很多人并不知道如何找到同款对象。即使有的人能够找到相似度比较接近的对象,他们通常采用的方法是,对视频进行截图,或者暂停播放视频并对暂停时的画面截图,然后借助于终端设备的程序退出功能或程序切换功能从视频播放软件退出,再进入具有图像识别功能的搜索程序并将截图由用户自行导入以进行图像识别,以识别图像中的对象的具体信息。或者,也可能在退出视频播放软件后进入具有图像识别功能的电商程序或软件,在导入截图后查询该电商程序中是否销售与该对象相似度较高的对象。因此,这些操作方法非常复杂,用户学习这些方法的意愿并不强,甚至因此可能会降低用户的购买意愿。而且由于这种方法非常复杂,即使用户愿意学习这种方法,培养用户的掌握这些操作的教育成本也是很大的。
另外,在视频播放时手动截图是十分不精准的操作。在用户截图时,视频很可能已经从用户感兴趣的对象所在的画面进入另一个画面,使得用户不得不对视频的进度进行前后调整,以找到对象所在的画面。而且,即使画面包含用户感兴趣的对象,通过手动截图所得到的画面很可能是不清晰的,从而导致难以准确识别视频中的对象。为了获得更清晰的画面,用户可能不得不对视频播放进度反复进行调整。这无疑是效率较低的。而且,由于用户的手动操作的精度较低,即使反复调整视频播放进度,也无法确保获得足够清晰的画面。
另一方面,既然用户是通过影视剧作品来知晓这些同款对象的,那么应该认为,这些对象的成交客观上得益于影视剧作品的推广。鉴于此,影视剧制作者和播放者在这些交易中获得相应的收益也是合理的。然而,在当前的获取同款对象的方法中,当用户从视频播放软件退出后,影视剧制作者和播放者与用户的关系就被切断了,使得它们无法从对象的成交中得到任何收益。
发明内容
本申请提供了一种基于视频生成推荐信息的方法和装置、计算设备及存储介质,期望克服上面描述的问题中的部分或者全部。
根据本申请的一方面,提供了一种基于视频生成推荐信息的方法。该方法包括:识别所述视频中的关键帧;检测所述关键帧中的目标对象,以确定所述目标对象所在的图像区域;基于所述图像区域的图像数据,提取所述目标对象的特征向量;基于所述目标对象的特征向量,在待推荐对象库中选取推荐对象,其中所述推荐对象与所述目标对象的相似度满足预定相似度标准,并且所述待推荐对象库中的待推荐对象的属性包括链接到所述待推荐对象的展示接口的入口;生成所述推荐对象的推荐信息,其中所述推荐信息包括链接到所述推荐对象的展示接口的入口,并且其中响应于所述推荐信息在呈现时被触发而引起所述推荐对象的展示接口被呈现;以及,将所述推荐信息相对于所述视频的呈现时间与所述关键帧相关联。
在一些实施例中,识别所述视频中的关键帧包括:对所述视频进行镜头分析,以获得所述视频的镜头片段;对所述镜头片段内的视频帧进行边缘检测,以获得所述镜头片段内的视频帧的锐度;以及,基于所述镜头片段内的视频帧的锐度确定所述镜头片段的关键帧。
在一些实施例中,基于所述镜头片段内的视频帧的锐度确定所述镜头片段的关键帧包括:将所述镜头片段内的视频帧中的锐度最高的视频帧确定为所述镜头片段的关键帧。
在一些实施例中,基于所述镜头片段内的视频帧的锐度确定所述镜头片段的关键帧包括:将所述镜头片段内的低清晰度视频帧区间的相邻视频帧确定为所述镜头片段的关键帧,其中所述低清晰度视频帧区间由所述镜头片段内的视频帧中锐度低于锐度阈值的连续的视频帧组成。
在一些实施例中,基于所述图像区域的图像数据,提取所述目标对象的特征向量包括:利用包括多个特征提取层的特征提取模型对所述图像区域的图像数据进行特征提取;以及,聚合所述多个特征提取层提取的特征,以得到所述目标对象的特征向量。
在一些实施例中,基于所述目标对象的特征向量,在待推荐对象库中选取推荐对象包括:在待推荐对象库中获取拟推荐对象,其中所述待推荐对象库中的待推荐对象的属性还包括预设推荐权重,并且所述拟推荐对象与所述目标对象的相似度大于预设相似度阈值或者所述拟推荐对象与所述目标对象的相似度排名大于预设排名阈值;以及,基于所述拟推荐对象的预设推荐权重,在所述拟推荐对象中确定所述推荐对象。
在一些实施例中,基于所述目标对象的特征向量,在待推荐对象库中选取推荐对象包括:提取所述目标对象的特征向量的子空间向量和所述待推荐对象库中的待推荐对象的特征向量的子空间向量;基于所述目标对象的特征向量的子空间向量和所述待推荐对象的特征向量的子空间向量,确定所述待推荐对象与所述目标对象的相似度;以及,将与所述目标对象的相似度满足预定相似度标准的待推荐对象确定为所述推荐对象。
在一些实施例中,将所述推荐信息相对于所述视频的呈现时间与所述关键帧相关联包括:将所述推荐信息相对于所述视频的呈现时间确定为包含所述关键帧相对于所述视频的呈现时刻。
在一些实施例中,将所述推荐信息相对于所述视频的呈现时间与所述关键帧相关联包括:将所述推荐信息相对于所述视频的呈现时间确定为:在所述关键帧相对于所述视频的呈现时刻,所述推荐信息出现在所述关键帧的水平方向的中部。
在一些实施例中,生成所述推荐对象的推荐信息包括:以弹幕或弹窗作为载体生成所述推荐对象的推荐信息。
根据本申请的另一方面,提供了一种基于视频生成推荐信息的装置,其特征在于,所述装置包括:视频获取模块,其配置成获取所述视频;关键帧识别模块,其配置成识别所述视频中的关键帧;目标对象检测模块,其配置成检测所述关键帧中的目标对象,以确定所述目标对象所在的图像区域;特征向量提取模块,其配置成基于所述图像区域的图像数据,提取所述目标对象的特征向量;推荐对象获取模块,其配置成基于所述目标对象的特征向量,在待推荐对象中获取推荐对象,其中所述推荐对象与所述目标对象的相似度满足预定相似度标准,所述待推荐对象的属性包括链接到所述待推荐对象的展示接口的入口;推荐信息生成模块,其配置成生成所述推荐对象的推荐信息,其中所述推荐信息包括链接到所述推荐对象的展示接口的入口,并且其中响应于所述推荐信息在呈现时被触发而引起所述推荐对象的展示接口被呈现;以及,呈现时间关联模块,其配置成将所述推荐信息相对于所述视频的呈现时间与所述关键帧相关联。
根据本申请的又一方面,提供了一种计算设备,其特征在于,所述计算设备包括:存储器,其被配置成存储计算机可执行指令;处理器,其被配置成当所述计算机可执行指令被处理器执行时执行本申请任一实施例所述的方法。
根据本申请的又一方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,其特征在于,当所述计算机可执行指令被执行时,执行本申请任一实施例所述的方法。
在本申请描述的基于视频生成推荐信息的方法、装置中,通过简单操作对视频中的对象进行精确且高效的识别,并且快速到达对象的展示接口(例如,对象销售界面)。在本申请中,通过识别视频中的关键帧并且检测所述关键帧中的目标对象,可以更准确地识别视频中的目标对象,改善了由于手动截图不清楚而导致的目标对象识别准确率低的问题。此外,基于所述目标对象所在的图像区域的图像数据来提取所述目标对象的特征向量,避免了视频的背景信息影响目标对象的特征向量的提取,进一步提高了目标对象的识别准确率。本申请通过推荐信息被触发的方式,实现了直接从视频播放接口跳转到推荐对象的展示接口,因此操作非常简单,节省了系统的计算资源,并提高了接口切换的速度。同时,由于推荐对象的展示接口是通过推荐信息中的入口而跳转的,因此可以使影视剧制作者和视频播放平台在该过程中获取收益。
附图说明
现在将更详细并且参考附图来描述本申请的实施例,其中:
图1示意性地示出了根据本申请实施例的技术方案可以实施在其中的一种网络架构的结构;
图2示意性地示出了根据本申请实施例的一种基于视频生成推荐信息的方法被实施的示例性场景示意图;
图3示意性地示出了根据本申请实施例的基于视频生成推荐信息的方法的流程图;
图4示意性地示出了根据本申请实施例的基于镜头的关键帧提取方法的一种实现过程的示意图;
图5示意性地示出了根据本申请实施例的同一镜头内的两个不同的视频帧的清晰度对比的示意图;
图6示意性地示出了根据本申请实施例的一个镜头内的各视频帧的锐度的变化的示意图;
图7示出了根据本申请实施例的关键帧中的目标对象的图像区域的示意图;
图8示意性地示出了根据本申请实施例的基于图像数据获得目标对象的特征向量的过程的示意图;
图9示意性地示出了聚合构建特征向量的过程的示意图;
图10示意性地示出了在待推荐对象库中选取推荐对象的示例性方法的流程图;
图11示意性地示出了提取目标对象和待推荐对象的特征向量的子空间向量的方法;
图12示意性地示出了关键帧中出现多个目标对象时的场景;
图13示出了根据本申请实施例的基于视频生成推荐信息的装置的结构框图;
图14示意性地示出了可以实现本申请描述的各种技术的示例计算设备。
具体实施方式
下面将结合本申请中的附图,对本申请中的技术方案进行清楚和完整的描述。所描述的实施例仅仅是本申请的一部分实施例,而不是全部实施例。基于本申请的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例都属于本申请保护的范围。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器来模拟、延伸和扩展人的智能,感知环境,获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。其专门研究计算机如何模拟或实现人类的学习行为,以获取新的知识或技能,并重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习等技术。
计算机视觉(Computer Vision,CV)是一门研究如何使机器“看”的科学。更进一步的说,计算机视觉用摄影机和电脑代替人眼和大脑对目标进行识别、跟踪和测量,并进一步做图形处理,使经处理的图像成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、光学字符识别(OCR)、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。自然语言处理(Natural Language Processing,NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。
本申请涉及视频处理的领域,尤其涉及一种基于视频生成推荐信息的方法、装置、计算设备及存储介质。
为了便于对本发明实施例的理解,下面先对几个概念进行简单介绍:
弹幕:视频领域术语,常常出现于智能终端观看视频的过程中,是指观看视频时飘入到视频画面中的评论性语言或图案。弹幕可以由视频观看者输入,然后由视频播放平台呈现。或者,视频平台可以自己制作并显示或呈现一些弹幕。视频的观看者可以通过“弹幕”即时表达自己对视频内容的想法,同时,也可以与他人进行互动。
视频帧:视频内容由一系列帧组成。每个视频帧是静止图像,当按顺序播放多个视频帧时,可以创建运动图像。
关键帧:计算机动画术语,指角色或者物体运动或变化中的关键动作所处的那一帧。视频的关键帧可以是能够反映视频的代表性内容。通过提取视频的关键帧,可以把视频数据转化成更容易处理的图像数据,同时也可以保留视频的主要内容。
镜头:视频领域术语,指一台摄像机从开始拍摄直到停止拍摄之间所拍下一组连续的画面。由于每个摄像机的所拾取的场景是相对独立的,在观看视频时,场景的变换一般意味着镜头的切换。
对象:视频领域术语,指视频内存在的人或物等实体。
发明人发现,在相关技术中,获取视频内对象的方法的效率很低。用户常常需要自己获取对象所在的视频画面的截图,然后借助于终端设备的程序退出功能或程序切换功能从视频播放接口退出并进入搜索引擎接口或电商接口,以检索截图内的对象并寻找与该对象相似的对象。由于视频画面的截图由用户自己获取,用户未必能准确地截获对象所在的视频画面,并且即使截获了对象所在的视频画面,所截获的视频画面可能很不清楚,以致影响画面中的对象的识别准确率,导致无法找到与该对象相似的对象。另外,为了来到相似对象的获取接口,例如该对象的购买界面,用户需要借助于视频播放接口所在的终端设备的程序退出功能或接口切换功能先离开视频播放接口,然后进入搜索引擎接口或电商接口,然后在搜索引擎接口或电商接口中输入之前截获的视频画面,以寻找相似的对象,最后来到相似对象的获取界面。这个流程包含多个步骤,非常复杂,可能减少用户获取视频内对象的意愿,且培养用户掌握这种方法的教育成本也是很大的。在一些实施例中,视频内的对象可以是视频内的物品,而对象的相似对象可以是与视频内的物品在外观上相似的物品,尤其是在市场上可通过购买而获得的商品。
本申请提供了一种基于视频生成推荐信息的方法。图1示意性地示出了根据本申请实施例的技术方案可以实施在其中的一种网络架构100的结构。如图1所示,网络架构100可以包括服务器105和终端设备的集群。终端设备集群可以包括至少一个终端设备,例如终端设备110a、终端设备110b等。本申请不对终端设备的数量进行限制。如图1所示,每个终端设备100a、110b可以分别与服务器105通过网络进行连接,以便每个终端设备可以与服务器105进行数据交互。
本申请中的服务器105例如可以是独立的物理服务器,也可以是由多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备例如可以是智能手机、平板电脑、笔记本电脑、桌上型电脑、智能电视等智能终端。
下面以终端设备110a与服务器105之间的通信为例,描述本申请的实施例。根据本申请实施例的基于视频生成推荐信息的方法既可以在终端设备110a中完成,也可以在服务器105中完成,也可以在终端设备110a与服务器105的组合体中完成。例如,本申请的视频可以是已经被制作好,并上传到服务器105(中的存储器)的视频,也可以是从服务器105下载到终端设备110a中的视频,甚至可以是由终端设备110a摄制并存储于终端设备110a中的视频。本申请的基于视频生成推荐信息的方法涉及视频关键帧提取、视频内对象检测及特征向量提取、相似对象检索及生成推荐信息等过程。这些过程可能仅在终端设备110a中完成,也可能仅在服务器105中完成,还可能部分在终端设备110a中完成、部分在服务器105中完成。当然,这不是限制性的,为目标视频确定对应的标签还可以在终端上或者由终端和服务器协作实现。
图2示意性地示出了根据本申请实施例的一种基于视频生成推荐信息的方法被实施的示例性场景示意图。服务器203获取待播放的视频,并且识别视频的至少一个关键帧205。图2的示意性地示出了视频的关键帧205,其中包含至少一个目标对象210。关键帧205是清晰度足够高的帧,其中的目标对象210比较清楚,因此可被更准确地识别。提取关键帧的目的是,用关键帧来代表一个镜头的主要内容。因为同一个镜头内的各帧之间具有内容上的相似性,而使用关键帧来表示一个镜头能够最大程度上对镜头的内容进行压缩处理,而不需要对每一帧都重复提取。可见,关键帧具有代表性。通过选取关键帧,可以大大减少进行视频内容索引时所需要的数据量。
由于视频帧中可能存在多个目标对象210,因此首先需对关键帧进行对象主体检测,以确定各目标对象所在的图像区域212,也就是各目标对象210的位置和大小,避免目标对象210后方的背景影响目标对象210的特征向量的确定。然后,将基于各个图像区域212提取各个目标对象210的特征向量。特征向量应当准确地反映目标对象210,以便之后在待推荐对象库中找到与目标对象210最接近甚至一致的待推荐对象作为推荐对象220。
然后,基于所提取的目标对象210的特征向量,在待推荐对象库中选取推荐对象220。待推荐对象库是由待推荐对象构成的库。其可以由电商平台制作,也可以根据电商平台提供的数据由视频播放平台制作。待推荐对象库可以位于所述视频所在的服务器203上,也可位于另一独立的服务器上。推荐对象220即为在待推荐对象库中选取的与目标对象210的相似度满足预定相似度标准的待推荐对象。每个待推荐对象的属性都包括链接到该待推荐对象的展示接口225(例如,该待推荐对象的购买界面)的入口。可理解,相应地,每个推荐对象220的属性也都包括链接到该推荐对象220的展示接口225的入口。展示接口225可以是视频播放接口所在的终端设备201中的另一软件或程序的接口,也可能是该视频播放接口中的新加载的接口(例如,画中画)。展示接口225显示了推荐对象220的详细信息,并且用户可以通过展示接口225获取该推荐对象220。
在确定推荐对象220后,可以生成推荐对象220的推荐信息215。推荐信息215可以包括推荐对象的缩略图、价格、销量、标题等,具体形式不限。当推荐信息215被呈现时,其呈现形式可以是弹幕或弹窗。图2示出了推荐信息215的形式为弹幕时的实施例。在一些实施例中,如果关键帧205中包括多个目标对象210,那么可以依据用户设置的推荐信息的呈现数量来决定被呈现的推荐对象的数量。推荐信息215包含了链接到推荐对象220的展示接口225的入口,例如该展示接口225的链接。当推荐信息215被触发时,例如当用户点击弹幕时,将通过所述入口从视频播放接口直接跳转到推荐对象的展示接口,或者直接在视频播放接口中加载展示接口。因此,用户只进行了一步操作,便来到了推荐对象220的展示接口225。这是因为,这种跳转并不需要触发终端设备的程序退出功能或程序切换功能来引起展示接口225的出现。因此,这种跳转是很迅速的。
然后,可以将推荐信息215相对于视频的呈现时间与关键帧205相关联。如图2所示,在目标对象210出现在视频的画面中时,推荐对象220的推荐信息215也出现在视频中。这使得,如果用户对目标对象210感兴趣,那么该用户可以立刻触发与该目标对象210相似的推荐对象220的推荐信息215,以通过推荐信息所包含的链接到推荐对象220的展示接口225的入口,跳转到推荐对象220的展示接口225。由于目标对象210是在关键帧205中检测到的,目标对象210在视频中出现的时间段显然包括关键帧205相对于视频的呈现时间(例如,关键帧205的时间戳)。因此,通过将推荐信息215相对于视频的呈现时间与关键帧205相关联,可以使得推荐信息215出现在视频中的时间与目标对象210出现在视频中的时间相关联。例如,可以将推荐信息215的呈现时间设置为,当目标对象210出现在视频中时,推荐信息215恰好也出现在视频中。进一步地,如果考虑到弹幕的漂移速度,可以设置推荐信息215的呈现时间,使得当目标对象210出现在视频中时,推荐信息215正好出现在视频画面的水平方向的中部,或者使推荐信息215的水平方向位置与目标对象210的水平方向位置对齐。
在本申请的实施例中,通过提取视频的关键帧可以获得清晰度高的图像,从而有助于更准确地识别视频中的目标对象,改善了由于手动截图不清楚而导致的目标对象识别准确率低的问题。通过对关键帧中的目标对象进行检测,可以找到关键帧中的目标对象。由于本申请的实施例首先确定了目标对象所在的图像区域,使得目标对象的位置和大小被确定,以避免视频的背景信息影响目标对象的特征向量的提取,即,影响目标对象的识别,进一步提高了目标对象的识别准确率。本申请实施例在基于目标对象的特征向量在待推荐对象库中找到与目标对象相似的推荐对象后,生成了推荐对象的推荐信息,以供在视频画面中以弹幕或弹窗的形式呈现。并且,推荐信息中包含链接到推荐对象的展示接口的入口,使得响应于所呈现的推荐信息在呈现时被触发,可以直接从视频播放接口跳转到推荐对象的展示接口。这种进入展示接口的方式十分便捷,需要用户进行的操作非常简单,节省了系统的计算资源,并提高了接口切换的速度,并且基于识别准确度的提升和操作便捷度的提升,在客观上改善了用户寻找和获取推荐对象的意愿。在一些实施例中,目标对象是视频中出现的物品,而推荐对象是电商平台中可购买的与视频中的物品相似的商品,推荐对象的展示接口是该商品的购买界面。借助于本申请的方法,所找到的商品与视频中的物品的相似度非常高,甚至可能就是视频中的物品。而且从视频播放画面跳转到商品的购买界面所需要的用户操作非常简单便捷,提升了用户的购物体验。同时,由于推荐对象的展示接口是通过推荐信息中的入口而跳转的,因此可以确定展示接口的跳转触发来源是否为视频播放软件。在目标对象是视频中出现的物品,而推荐对象是电商平台中可购买的与视频中的物品相似的商品的情境下,影视剧制作者和视频播放平台可以以此为依据,向电商平台索取应得的佣金,增加它们的收益。
图3示意性地示出了根据本申请实施例的基于视频生成推荐信息的方法的流程图。该方法例如可以由终端设备110a、110b执行,也可以由服务器105执行,还可以由终端设备和服务器共同协作执行。为便于理解,本申请的实施例以该方法由上述服务器执行为例进行说明。如图3所示,该方法可以包括如下步骤:
在步骤S305,识别所述视频中的关键帧;
在步骤S310,检测所述关键帧中的目标对象,以确定所述目标对象所在的图像区域;
在步骤S315,基于所述图像区域的图像数据,提取所述目标对象的特征向量;
在步骤S320,基于所述目标对象的特征向量,在待推荐对象库中选取推荐对象,其中所述推荐对象与所述目标对象的相似度满足预定相似度标准,并且所述待推荐对象库中的待推荐对象的属性包括链接到所述待推荐对象的展示接口的入口;
在步骤S325,生成所述推荐对象的推荐信息,其中所述推荐信息包括链接到所述推荐对象的展示接口的入口,并且其中响应于所述推荐信息在呈现时被触发而引起所述推荐对象的展示接口被呈现;以及
在步骤S330,将所述推荐信息相对于所述视频的呈现时间与所述关键帧相关联。
下面将对这些步骤进行详细描述。
首先,对识别所述视频中的关键帧的步骤S305进行详细描述。
识别/提取关键帧可以采用多种方法。例如,可以采用基于镜头的方法来提取关键帧。镜头是指由一个摄像机镜头连续拍摄的一组内在相关的连续帧,它用来表现在时空上连续的一组运动。图4示意性地示出了基于镜头的关键帧提取方法的一种实现过程。如图4所示,该过程可以包括,对视频进行镜头分析,以获得所述视频的镜头片段(步骤S405)。
镜头分析的基本原理是是计算视频中各连续帧之间底层视觉特征的帧差值z,再将帧差值z与预先设定或自适应的域值T作比较,若z>T,则镜头边界存在;反之,则不存在。为了确定帧差值z和域值T,可以采用不同的方法。
例如,可以采用基于直方图的方法来确定帧差值z和域值T。基于直方图的算法通常是将相邻帧的各个像素的灰度、亮度或颜色等分成N个等级,再针对每个等级统计像素数做成直方图比较,得到帧差值z。该方法统计了总体的灰度或颜色分布数量,它对镜头内的运动和摄像机的慢速运动有着良好的容忍能力。上述方法是计算整体的灰度或颜色的变化,而没有考虑镜头内局部的运动。若局部运动引起灰度或颜色产生较大的变化就会导致误检。为了减少运动、干扰等引起的帧差值的变化,可以将各帧分块处理,将每个帧分成多个大小相同的块,分别比较每个块的颜色直方图,差值最大的块被剔除,余下块的直方图差值再做帧差值的计算。该方法对检验包含摄像机镜头的推移和缩放是有改进效果的。总的来说,基于直方图的方法比较方便简单,易于实现,计算复杂度较低,而且在一般的镜头切变的判断上可以得到较好的结果。对于一般的切变和渐变镜头,如果域值设置得当,直方图算法可以达到较好的结果。
又如,可以采用基于轮廓的方法。场景变化后,整个画面的内容都会发生改变,因此场景上各对象的轮廓也就改变了,因此可以通过跟踪轮廓的改变情况来判断镜头的转换。进一步的,在提取轮廓前可以通过高斯滤波或小波变换滤波以减少细微轮廓的干扰。对画面简单的视频进行分割时,基于轮廓的算法效果很好,在渐变镜头的检测上尤为突出。
如图4所示,在获得视频的镜头片段后,可以对所述镜头片段内的视频帧进行边缘检测,以获得所述镜头片段内的视频帧的锐度(步骤S410)。图像的锐度(sharpness)是衡量图像清晰度的指标之一。镜头自身的运动和镜头内对象的运动都可能造成图像清晰度的降低。图5示意性地示出了同一镜头内的两个不同的视频帧510和515的清晰度对比。由于镜头出现了晃动,可以看出,两个视频帧的清晰度不同。视频帧510的清晰度高于视频帧515的清晰度。显然,期望将更清晰的视频帧认定为关键帧,因为此视频帧内的各个目标对象的识别是更准确的。
图像的锐度可由图像中灰度边缘决定。同一个场景的不同图像,图片的边缘越多越锋利,锐度越高,图像也越清晰。因此,可以通过计算图像的边缘锐度变化,提取最清晰的关键帧。边缘检测算法例如可以采用Sobel算法、Roberts算法、Laplacian算法等多种算法。以Laplacian算法为例,首先对图像进行快速卷积计算,然后统计整个图像的标准差,然后将其方差值作为结果,得到锐度值。图6示意性地示出了一个镜头内的各视频帧的锐度的变化。图6所表示的镜头包括视频的第150帧到第201帧。在这些视频帧中第166帧的锐度最高,第168帧的锐度最低。图6中还示出了高锐度阈值。锐度高于该阈值的视频帧可以被认为是高锐度帧,而锐度低于该阈值的视频帧可以被认为是低锐度帧。在图6中,第167帧至第172帧是低锐度帧。连续的至少两个视频帧可以形成视频帧区间。例如,第167帧至第172帧构成了低锐度视频帧区间,这可能表示在此期间发生了运动模糊或镜头模糊。
在确定各视频帧的锐度之后,如图4所示,可以基于镜头片段内的视频帧的锐度确定镜头片段的关键帧(步骤S415)。基于视频帧的锐度确定关键帧的步骤可以具体是,将所述镜头片段内的视频帧中的锐度最高的视频帧确定为所述镜头片段的关键帧(步骤S420)。通常认为,一个镜头片段内的各视频帧中出现的对象是一致的。换句话说,如果两个视频帧内的对象不一致,则一般认为这两个视频帧属于不同的镜头。因此,在一个镜头的前提下,各个视频帧的锐度不同将主要是由视频帧的清晰度导致(而不是因为各视频帧内出现的对象不同而导致)。因此,一个镜头内的锐度最高的帧可以被认为是描绘了相同对象的清晰度最高的帧。通过将锐度最高的视频帧确定为镜头片段的关键帧,可以获得目标对象的最清晰的图像和以供后续识别。该方法的计算相对简单,所需计算资源较少。例如,在图6所示的镜头中,第166帧的锐度最高。那么可以将第166帧认定为该镜头的关键帧。
在替代的实施例中,如图4所示,基于视频帧的锐度确定关键帧的步骤可以具体是,将镜头片段内的低清晰度视频帧区间的相邻视频帧确定为该镜头片段的关键帧,其中该低清晰度视频帧区间由该镜头片段内的视频帧中锐度低于锐度阈值的连续的视频帧组成(步骤S425)。该方法基于的原理是,并非只有清晰度最高的帧才能准确的识别帧内各对象。只要视频帧的清晰度达到某阈值,则可认为该视频帧足以用于帧内对象的识别。在此基础上,只要将低清晰度视频帧区间找到,则该区间之外的帧就是高清晰度视频帧。另外,虽然在图6所描绘的实施例中,该镜头片段仅包含一个低清晰度视频帧区间,但是在实际操作中,一个镜头内可能包含两个或更多个低清晰度视频帧区间。这意味着,即使一个视频帧位于低清晰度视频帧区间之外,也不一定能确保该视频帧是高清晰度视频帧,因为该视频帧可能属于另一低清晰度视频帧区间。因此,可以选择低清晰度视频帧区间的相邻视频帧确定为所述镜头片段的关键帧,因为并不会有紧挨的两个低清晰度视频帧区间(事实上,紧挨的两个低清晰度视频帧区间会被认定为一个低清晰度视频帧区间)。在该实施例中,仅需识别一个低清晰度视频帧区间,即可获得镜头的关键帧,即,可能并不需要识别该镜头内的每个视频帧的锐度。这可以提高系统的运行速度和效率,节省计算资源。在图6所示的镜头中,第167帧至第172帧构成了低锐度视频帧区间。那么可以将该区间相邻的视频帧,如第166帧认定为该镜头的关键帧。
此外,除了通过锐度来表示关键帧的清晰度,还可采用以下任一算法计算视频帧的清晰度,例如Brenner梯度函数、方差函数、EAV点锐度算法函数等。本申请对此不再赘述。
上面的实施例描述了基于镜头识别视频的关键帧的方法。除此之外,在其它实施例中,还可以采用别的方法来识别视频的关键帧。例如,可以采用基于运动分析的方法来识别视频的关键帧。这种方法的实现过程是:在视频镜头中分析物体运动的光流量,每次选择视频镜头中光流移动次数最少的视频帧作为提取到的关键帧。这种方法可以从大部分视频镜头中提取适量的关键帧,提取到的关键帧也可以有效地表达出视频运动的特征。
在其它实施例中,可以采用基于视频聚类的方法来提取视频的关键帧。通过聚类把视频帧划分为若干个簇,然后在每个簇中选取离聚类中心最近的视频帧作为关键帧。该算法的主要原理是:首先,初始地设定若干个聚类中心。然后,通过计算聚类中心与各视频帧的特征向量之间的范围,确定参考帧,以作为类的新聚类中心。最后,选择离聚类中心最近的视频帧处理成关键帧。更具体的,该方法的主要过程可以包括,首先,基于视频帧的颜色直方图的属性来提取各帧的特征值,根据提取到的颜色特征值划分聚类个数。然后,将视频帧的第一帧对应的特征向量归入到第一个类中,并且将第一帧对应的颜色直方图的特征值作为第一个类的初始质心。接下来,计算各视频帧到质心的距离。如果距离大于给定的初始阈值T,则把该帧归入到新的类中;反之,则把该帧归入到距离它最近的类中,并且更新该类的质心。然后重复上述过程,直到最后一帧对应特征向量的值归入某一个类中。最后,将距离聚类中心最近的视频帧作为关键帧。利用这种方法提取出的关键帧不仅冗余度小,而且关键帧可以很准确的反映出视频中发生的全部内容。
接下来,首先,对检测所述关键帧中的目标对象,以确定所述目标对象所在的图像区域的步骤S310进行详细描述。
图7示出了关键帧中的目标对象的图像区域。由于关键帧中可能存在多个目标对象704、709、714、719,因此首先需对视频帧进行目标对象检测,以检测出各个目标对象的图像区域705、710、715、720,也即各个目标对象的位置和大小,从而确保每个目标对象的识别不被其它目标对象和视频帧内的其它元素(如视频帧背景中的元素)所干扰。
目标对象检测可以采用基于深度学习的物件检测方法,包括双阶段(two-stage)模型和单阶段(single-stage)模型。作为示例,双阶段模型主要包括区域卷积神经网络(Region-CNN,简称R-CNN)系列模型等,单阶段模型主要包括YOLO模型(You Only LookOnce)和SSD模型(Single Shot MultiBox Detector,中文名称:单镜头多盒检测器)等。在一些实施例中,可以采用服务器离线检测目标对象。在这些实施例中,可以选择精度更好但速度稍弱的双阶段R-CNN模型来确定目标对象的图像区域。本申请主要利用R-CNN模型的第一阶段,通过训练区域候选网络(Region Proposal Network, 简称RPN)输出粗粒度的物体候选框(proposal)。具体的,首先借助ImageNet数据集训练CNN网络,即,预训练过程,然后再针对特定任务进行数据集微调。然后,使用选择性搜索(selective search)算法,提取出2000个候选框。选择性搜索综合考虑图像的颜色、纹理、尺寸相似性和空间重合度来划分区域,并将小区域按照相似性合并为大区域。最后,将提取出来的候选框的尺寸归一化到 CNN网络所需要的尺寸。这是因为,CNN网络输入的图像尺寸是固定的,所以需要将不同大小的候选框重新调整到CNN网络所需要的尺寸。经过上述过程,可以得到目标对象的图像区域,并且可以进一步得到图像区域内的图像数据。
接下来将详细描述步骤315:基于所述图像区域的图像数据,提取所述目标对象的特征向量。
图8示意性地示出了基于图像数据获得目标对象的特征向量的过程。在这个过程中,首先按照CNN卷积层(即,特征提取层),在多个卷积层中进行特征提取,然后将各卷积层的特征进行聚合,最后得到多维度的特征向量。由于一种产品可能存在着多种不同的颜色、规格、尺寸,并且其在图像中的呈现还受到不同的光照、尺度、视角、遮挡等因素的影响,而传统的基于图像的特征提取方法只能识别简单的视觉特征,缺乏高层的图像理解能力,因此基于图像的特征提取方法所提取的特征向量无法准确地描述目标对象。为此,可以使用基于CNN的特征提取方法,因为通过CNN可提取到图像更深层次的语义信息,表现出远优于传统特征的效果。
通过可视化预训练的图像分类模型的不同卷积层,可以发现图像的底层特征(例如边、角等细节),具有一定抽象能力的中层特征,以及具有较强抽象能力的语义特征。通过将不同层级的特征进行聚合,所得到的特征向量保留了更多的特征和空间信息,因此对图像的理解能力更加丰富。多卷积层提取时可以是利用第一层对图像提取特征,得到第一层特征,然后利用第二层对第一层的特征进行特征提取,得到第二层特征,以此类推。
图9示意性地示出了聚合构建特征向量的过程。在聚合过程中,可以为图像的不同区域赋予权重,如空间权重(Spatial Weight)和通道权重(Channel Weight)。具体的,对于出现频率非常大,但对识别目标对象没有用处的特征图,可以降低其权重;对于与识别目标对象有关的特征图,应该加大其权重。然后对加权特征图进行池化,以得到聚合的特征向量。在一些实施例中,可以采用CroW方法(Cross-dimensional Weighting)或RMAC(Regional Maximum Activation of Convolutions)方法等进行聚合。Crow方法通过某种权重自适应的方式,加大有物体区域的权重,而减小非物体区域的权重。CROW方法能够在一定程度上加大感兴趣区域的权重,降低非物体区域的权重。
在获得了目标对象的特征向量后,可以基于目标对象的特征向量,在待推荐对象库中选取推荐对象(步骤S320)。推荐对象与目标对象的相似度满足预定相似度标准,并且待推荐对象库中的待推荐对象的属性包括链接到待推荐对象的展示接口的入口。下面,将对步骤S320进行详细描述。
为了找到与目标对象相似的推荐对象,需要构建大规模的待推荐对象库。待推荐对象库由大量待推荐对象组成。每个待推荐对象也具有相应的特征向量。在一些实施例中,可以采用与提取目标对象(的图像数据)的特征向量相同的方法提取待推荐对象的特征向量。
这些待推荐对象中,与目标对象的相似度满足预定相似度标准的待推荐对象可能成为推荐对象。在一些实施例中,具体的,可以在待推荐对象库中获取与目标对象的相似度大于预设相似度阈值的待推荐对象作为拟推荐对象,然后在所选择的拟推荐对象中选择推荐对象。例如,可以将特征向量匹配程度大于一定标准的待推荐对象选择为拟推荐对象。在其它的一些实施例中,可以在待推荐对象库中选择与目标对象的相似度排名大于预设排名阈值的待推荐对象作为拟推荐对象,然后在所选择的拟推荐对象中选择推荐对象。例如,可以在比较全部或一定数量的待推荐对象与目标对象的相似度后,对这些待推荐对象的相似度进行排名,取排名前N位的待推荐对象作为拟推荐对象。
在数据规模较小的情况下,可将目标对象的特征向量和待推荐对象库中的所有待推荐对象的特征向量按欧式距离或余弦距离等方式进行相似度。
在数据规模较大的情况下,可以牺牲掉一部分精度,将特征向量分割成很多小的子空间,然后在子空间中进行遍历。图10示意性地示出了在待推荐对象库中选取推荐对象的示例性方法的流程图。如图10所示,基于目标对象的特征向量,在待推荐对象库中选取推荐对象(步骤S320)可以包括提取所述目标对象的特征向量的子空间向量和所述待推荐对象库中的待推荐对象的特征向量的子空间向量(步骤S1005);基于所述目标对象的特征向量的子空间向量和所述待推荐对象的特征向量的子空间向量,确定所述待推荐对象与所述目标对象的相似度(步骤S1010);以及,将与所述目标对象的相似度满足预定相似度标准的待推荐对象确定为所述推荐对象(步骤S1015)。
图11示意性地示出了提取目标对象的特征向量的子空间向量和待推荐对象库中的待推荐对象的特征向量的子空间向量(步骤S1005)的方法。该方法采用近似最近邻搜索技术(Approximate Nearest Neighbor,ANN)。ANN主要有三类方案:第一类是矢量量化方法(vector quantization),也就是在向量空间对向量进行压缩的方法,代表算法为乘积量化(product quantization,PQ)、PCA降维、K-means聚类等方法。第二类是基于树的结构对向量空间进行分割,代表算法为KD树。第三类是以局部敏感哈希(LSH)为代表的哈希方法。图11所描绘的实施例主要针对K-mean聚类方法。
下面以待推荐对象库中有N个待推荐对象,每个待推荐对象的特征向量具有128维,且人为地将特征向量分为4个子空间(子空间的数量不是限制性的),将子空间向量聚类为256类为例,描述用子空间向量表示特征向量的方法。
由于每个特征向量的维度为128维,且将其划分为例如4个子空间,那么可知,每一个子空间的维度为32维。然后对每一个子空间的子空间向量聚类。可以对子空间向量采用K-Means聚类法聚类。例如,可以将子空间向量聚成256类。这样,每个子空间向量将得到一个介于0到255之间的类码。由于特征向量被划分为4个子空间,那么原本128为的特征向量将可以用一个4维类码的向量来表示。当获得目标对象的特征向量后,可以将其同样分成相同数量的子空间,然后计算每个子空间到前述256个聚类中心得距离,将最近距离所在的聚类确定为每个子空间的类码。
经过上述操作,目标对象和待推荐对象的高维度特征向量将以很短的子空间类码向量来表示。这将极大地减少寻找相似对象时所耗费的计算资源。
在获得目标对象的特征向量的子空间向量和待推荐对象的特征向量的子空间向量之后,可以基于所述目标对象的特征向量的子空间向量和所述待推荐对象的特征向量的子空间向量,确定所述待推荐对象与所述目标对象的相似度(步骤S1010)。例如,在一些实施例中,可以通过欧式距离(Eucledian Distance)、曼哈顿距离(Manhatten Distance)或明科夫斯基距离(Minkowski Distance)计算两个对象的相似度。在另一些实施例中,也可以通过计算两个向量之间的夹角余弦相似度(Cosine Similarity)或雅可比相似性(Jaccard Similarity)来度量两个对象之间的相似性。在另一些实施例中,还可以通过皮尔斯相关系数来度量两个对象的相似性。
在获得目标对象与各待推荐对象的相似度后,可以将与所述目标对象的相似度满足预定相似度标准的待推荐对象确定为所述推荐对象(步骤S1015)。例如,可以在待推荐对象库中获取与目标对象的相似度大于预设相似度阈值的待推荐对象作为推荐对象,或者,可以在待推荐对象库中选择与目标对象的相似度排名大于预设排名阈值的待推荐对象作为推荐对象。
在更进一步的实施例中,可以在待推荐对象库中获取与目标对象的相似度大于预设相似度阈值的待推荐对象作为拟推荐对象,或者,可以在待推荐对象库中选择与目标对象的相似度排名大于预设排名阈值的待推荐对象作为拟推荐对象。然后,在拟推荐对象中,根据预设推荐权重确定推荐对象。待推荐对象的属性包括预设推荐权重。基于预设推荐权重,从拟推荐对象中确定推荐对象。术语“预设推荐权重”可以理解为各待推荐对象的推荐优先级或概率,其用于当一个以上的待推荐对象成为拟推荐对象时,作为在拟推荐对象中选择推荐对象的选择标准。例如,可以根据各个商家向电商平台支付的推荐费用,为支付更多推荐费用的商家的待推荐对象设置更高的优先级,又如,可以以每次推荐成功或者每次交易成功时,视频播放平台获得的收益为标准,为使视频播放平台获得更高收益的待推荐对象设置更高的优先级。此外,也可以以其它标准设置各待推荐对象的预设推荐权重。基于这些过程,可以确定推荐对象。
接下来,将详细描述生成推荐对象的推荐信息的步骤S325。
推荐信息包括链接到推荐对象的展示接口的入口。并且,响应于所述推荐信息在呈现时被触发而引起所述推荐对象的展示接口被呈现。推荐信息是用于在视频呈现(例如播放)时,在视频播放平台、甚至是在视频画面中显示的内容。推荐信息可以包括推荐对象的缩略图、价格、销量、标题等,具体形式不限。当推荐信息被呈现时,其呈现形式可以是弹幕或弹窗。推荐信息例如隐含地包含了链接到推荐对象的展示接口的入口。当推荐信息在呈现时被触发时,例如当弹幕被点击时,可以通过该入口跳转到推荐对象的展示接口,以供用户浏览和购买该推荐对象。
接下来,将详细描述步骤S330:所述推荐信息相对于所述视频的呈现时间与所述关键帧相关联。
通过将推荐信息相对于视频的呈现时间与关键帧相关联,从而可以在目标对象出现在视频画面中时,恰好使推荐信息出现在视频画面中。在一些实施例中,通过设置推荐信息的动态属性,例如漂移速度,从而可以使推荐信息在期望的时机出现在正确的位置。前文已对此进行了描述,此处将不再赘述。
在一些实施例中,视频帧中可能出现多个目标对象。但是,由于视频帧中可用于呈现推荐信息的空间是有限的,因此需要在多个目标对象中确定一个或若干目标对象,以为这些目标对象的推荐对象制作推荐信息。例如,可能通过用户画像和用户行为日志,预估用户对于不同目标对象的偏好。然后在视频帧中出现多个目标的情况下,保证优先展示用户感兴趣的目标对象的推荐对象的推荐信息。另外,可根据各推荐对象的销量、价格、佣金等属性排序选择决定优先展示哪个推荐对象的推荐信息。为了避免过多的推荐信息对于用户的打扰,推荐信息的数量可通过用户设置的推荐信息数量进行相应调整。
图12示意性地示出了关键帧中出现多个目标对象时的场景。当出现多个目标对象1205时,可以在待推荐对象库中寻找每个目标对象的相似的对象(例如,同款商品)。由于并非每个目标对象都能够在待推荐对象库中找到相似的对象,因此可能仅一部分的目标对象能够找到待推荐对象1210。然后,在从待推荐对象中确定推荐对象后1215,有可能基于用户的偏好或推荐信息数量的限制,仅呈现一部分的推荐对象的推荐信息。
根据本申请的另一方面,还公开了一种基于视频生成推荐信息的装置。图13示出了该装置的结构框图。如图13所示,该装置1300包括关键帧识别模块1310、目标对象检测模块1315、特征向量提取模块1320、推荐对象获取模块1325、推荐信息生成模块1330和呈现时间关联模块1335。关键帧识别模块1310配置成识别视频中的关键帧。关键帧中的目标对象的清晰度较高。通过识别视频中的关键帧,可以提高目标对象的识别准确度。目标对象检测模块1315配置成检测所述关键帧中的目标对象,以确定所述目标对象所在的图像区域。通过为目标对象确定图像区域,可以将目标对象与视频画面中的背景元素和其它目标对象区分开,有利于目标对象的特征向量的精确确定。特征向量提取模块1320配置成基于所述图像区域的图像数据,提取所述目标对象的特征向量。特征向量的提取可以采用基于CNN的包括多个特征提取层的特征提取模型并将各层特征聚合,以使所得到的特征向量更准确地反映图像数据的内容。推荐对象获取模块1325配置成基于所述目标对象的特征向量,在待推荐对象库中获取推荐对象。所述推荐对象与所述目标对象的相似度满足预定相似度标准,所述待推荐对象的属性包括链接到所述待推荐对象的展示接口的入口。通过推荐对象获取模块1325,可以在待推荐对象中找到与目标对象的相似度满足预定相似度标准的待推荐对象作为推荐对象。在查找推荐对象前,可以先为待推荐对象和目标对象的特征向量确定低维度的子空间向量,以减少计算量。推荐信息生成模块1330配置成生成所述推荐对象的推荐信息。所述推荐信息包括链接到所述推荐对象的展示接口的入口,并且响应于所述推荐信息在呈现时被触发而引起所述推荐对象的展示接口被呈现。推荐信息生成模块1330生成的推荐对象的推荐信息在被呈现后可以接收用户的触发,然后作为响应,引起呈现对象所包含的链接到所述推荐对象的展示接口的入口被触发,以打开推荐对象的展示接口。呈现时间关联模块1335配置成将所述推荐信息相对于所述视频的呈现时间与所述关键帧相关联。通过将推荐信息的呈现时间与关键帧相关联,可以使目标对象出现在画面中时,推荐信息恰好出现,以在用户对目标对象具有较高注意力时,为用户提供打开推荐对象的展示接口的途径。
图14示意性地图示了示例系统1400,其包括代表可以实现本文描述的各种技术的一个或多个系统和/或设备的示例计算设备1410。计算设备1410可以是例如服务提供商的服务器、与服务器相关联的设备、片上系统、和/或任何其它合适的计算设备或计算系统。上面参照图13描述的基于视频生成推荐信息的装置1300可以采取计算设备1410的形式。替换地,基于视频生成推荐信息的装置1300可以以应用1416的形式被实现为计算机程序。
如图示的示例计算设备1410包括彼此通信耦合的处理系统1411、一个或多个计算机可读介质1412以及一个或多个I/O接口1413。尽管未示出,但是计算设备1410还可以包括系统总线或其他数据和命令传送系统,其将各种组件彼此耦合。系统总线可以包括不同总线结构的任何一个或组合,所述总线结构诸如存储器总线或存储器控制器、外围总线、通用串行总线、和/或利用各种总线架构中的任何一种的处理器或局部总线。还构思了各种其他示例,诸如控制和数据线。
处理系统1411代表使用硬件执行一个或多个操作的功能。因此,处理系统1411被图示为包括可被配置为处理器、功能块等的硬件元件1414。这可以包括在硬件中实现为专用集成电路或使用一个或多个半导体形成的其它逻辑器件。硬件元件1414不受其形成的材料或其中采用的处理机构的限制。例如,处理器可以由(多个)半导体和/或晶体管(例如,电子集成电路(IC))组成。在这样的上下文中,处理器可执行指令可以是电子可执行指令。
计算机可读介质1412被图示为包括存储器/存储装置1415。存储器/存储装置1415表示与一个或多个计算机可读介质相关联的存储器/存储容量。存储器/存储装置1415可以包括易失性介质(诸如随机存取存储器(RAM))和/或非易失性介质(诸如只读存储器(ROM)、闪存、光盘、磁盘等)。存储器/存储装置1415可以包括固定介质(例如,RAM、ROM、固定硬盘驱动器等)以及可移动介质(例如,闪存、可移动硬盘驱动器、光盘等)。计算机可读介质1412可以以下面进一步描述的各种其他方式进行配置。
一个或多个I/O接口1413代表允许用户使用各种输入设备向计算设备1410输入命令和信息并且可选地还允许使用各种输出设备将信息呈现给用户和/或其他组件或设备的功能。输入设备的示例包括键盘、光标控制设备(例如,鼠标)、麦克风(例如,用于语音输入)、扫描仪、触摸功能(例如,被配置为检测物理触摸的容性或其他传感器)、相机(例如,可以采用可见或不可见的波长(诸如红外频率)将不涉及触摸的运动检测为手势)等等。输出设备的示例包括显示设备(例如,监视器或投影仪)、扬声器、打印机、网卡、触觉响应设备等。因此,计算设备1410可以以下面进一步描述的各种方式进行配置以支持用户交互。
计算设备1410还包括应用1416。应用1416可以例如是基于视频生成推荐信息的装置1300的软件实例,并且与计算设备1410中的其他元件相组合地实现本文描述的技术。
本文可以在软件硬件元件或程序模块的一般上下文中描述各种技术。一般地,这些模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、元素、组件、数据结构等。本文所使用的术语“模块”,“功能”和“组件”一般表示软件、固件、硬件或其组合。本文描述的技术的特征是与平台无关的,意味着这些技术可以在具有各种处理器的各种计算平台上实现。
所描述的模块和技术的实现可以存储在某种形式的计算机可读介质上或者跨某种形式的计算机可读介质传输。计算机可读介质可以包括可由计算设备1410访问的各种介质。作为示例而非限制,计算机可读介质可以包括“计算机可读存储介质”和“计算机可读信号介质”。
与单纯的信号传输、载波或信号本身相反,“计算机可读存储介质”是指能够持久存储信息的介质和/或设备,和/或有形的存储装置。因此,计算机可读存储介质是指非信号承载介质。计算机可读存储介质包括诸如易失性和非易失性、可移动和不可移动介质和/或以适用于存储信息(诸如计算机可读指令、数据结构、程序模块、逻辑元件/电路或其他数据)的方法或技术实现的存储设备之类的硬件。计算机可读存储介质的示例可以包括但不限于RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字通用盘(DVD)或其他光学存储装置、硬盘、盒式磁带、磁带,磁盘存储装置或其他磁存储设备,或其他存储设备、有形介质或适于存储期望信息并可以由计算机访问的制品。
“计算机可读信号介质”是指被配置为诸如经由网络将指令发送到计算设备1410的硬件的信号承载介质。信号介质典型地可以将计算机可读指令、数据结构、程序模块或其他数据体现在诸如载波、数据信号或其它传输机制的调制数据信号中。信号介质还包括任何信息传递介质。术语“调制数据信号”是指这样的信号,该信号的特征中的一个或多个被设置或改变,从而将信息编码到该信号中。作为示例而非限制,通信介质包括诸如有线网络或直接连线的有线介质以及诸如声、RF、红外和其它无线介质的无线介质。
如前所述,硬件元件1414和计算机可读介质1412代表以硬件形式实现的指令、模块、可编程器件逻辑和/或固定器件逻辑,其在一些实施例中可以用于实现本文描述的技术的至少一些方面。硬件元件可以包括集成电路或片上系统、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、复杂可编程逻辑器件(CPLD)以及硅中的其它实现或其他硬件设备的组件。在这种上下文中,硬件元件可以作为执行由硬件元件所体现的指令、模块和/或逻辑所定义的程序任务的处理设备,以及用于存储用于执行的指令的硬件设备,例如,先前描述的计算机可读存储介质。
前述的组合也可以用于实现本文所述的各种技术和模块。因此,可以将软件、硬件或程序模块和其它程序模块实现为在某种形式的计算机可读存储介质上和/或由一个或多个硬件元件1414体现的一个或多个指令和/或逻辑。计算设备1410可以被配置为实现与软件和/或硬件模块相对应的特定指令和/或功能。因此,例如通过使用处理系统的计算机可读存储介质和/或硬件元件1414,可以至少部分地以硬件来实现将模块实现为可由计算设备1410作为软件执行的模块。指令和/或功能可以由一个或多个制品(例如,一个或多个计算设备1410和/或处理系统1011)可执行/可操作以实现本文所述的技术、模块和示例。
在各种实施方式中,计算设备1410可以采用各种不同的配置。例如,计算设备1410可以被实现为包括个人计算机、台式计算机、多屏幕计算机、膝上型计算机、上网本等的计算机类设备。计算设备1410还可以被实现为包括诸如移动电话、便携式音乐播放器、便携式游戏设备、平板计算机、多屏幕计算机等移动设备的移动装置类设备。计算设备1410还可以实现为电视类设备,其包括具有或连接到休闲观看环境中的一般地较大屏幕的设备。这些设备包括电视、机顶盒、游戏机等。
本文描述的技术可以由计算设备1410的这些各种配置来支持,并且不限于本文所描述的技术的具体示例。功能还可以通过使用分布式系统、诸如通过如下所述的平台1422而在“云”1420上全部或部分地实现。
云1420包括和/或代表用于资源1424的平台1422。平台1422抽象云1420的硬件(例如,服务器)和软件资源的底层功能。资源1424可以包括在远离计算设备1010的服务器上执行计算机处理时可以使用的应用和/或数据。资源1424还可以包括通过因特网和/或通过诸如蜂窝或Wi-Fi网络的订户网络提供的服务。
平台1422可以抽象资源和功能以将计算设备1010与其他计算设备连接。平台1422还可以用于抽象资源的分级以提供遇到的对于经由平台1422实现的资源1424的需求的相应水平的分级。因此,在互连设备实施例中,本文描述的功能的实现可以分布在整个系统1400内。例如,功能可以部分地在计算设备1410上以及通过抽象云1420的功能的平台1422来实现。
本申请还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算设备执行上述各种可选实现方式中提供的基于视频生成推荐信息的方法。
应当理解,为清楚起见,参考不同的功能单元对本申请的实施例进行了描述。然而,将明显的是,在不偏离本申请的情况下,每个功能单元的功能性可以被实施在单个单元中、实施在多个单元中或作为其它功能单元的一部分被实施。例如,被说明成由单个单元执行的功能性可以由多个不同的单元来执行。因此,对特定功能单元的参考仅被视为对用于提供所描述的功能性的适当单元的参考,而不是表明严格的逻辑或物理结构或组织。因此,本申请可以被实施在单个单元中,或者可以在物理上和功能上被分布在不同的单元和电路之间。
将理解的是,尽管第一、第二、第三等术语在本文中可以用来描述各种设备、元件、部件或部分,但是这些设备、元件、部件或部分不应当由这些术语限制。这些术语仅用来将一个设备、元件、部件或部分与另一个设备、元件、部件或部分相区分。
尽管已经结合一些实施例描述了本申请,但是其不旨在被限于在本文中所阐述的特定形式。相反,本申请的范围仅由所附权利要求来限制。附加地,尽管单独的特征可以被包括在不同的权利要求中,但是这些可以可能地被有利地组合,并且包括在不同权利要求中不暗示特征的组合不是可行的和/或有利的。特征在权利要求中的次序不暗示特征必须以其工作的任何特定次序。此外,在权利要求中,词“包括”不排除其它元件,并且术语“一”或“一个”不排除多个。权利要求中的附图标记仅作为明确的例子被提供,不应该被解释为以任何方式限制权利要求的范围。
Claims (13)
1.一种基于视频生成推荐信息的方法,包括
识别所述视频中的关键帧;
检测所述关键帧中的目标对象,以确定所述目标对象所在的图像区域;
基于所述图像区域的图像数据,提取所述目标对象的特征向量;
基于所述目标对象的特征向量,在待推荐对象库中选取推荐对象,其中所述推荐对象与所述目标对象的相似度满足预定相似度标准,并且所述待推荐对象库中的待推荐对象的属性包括链接到所述待推荐对象的展示接口的入口;
生成所述推荐对象的推荐信息,其中所述推荐信息包括链接到所述推荐对象的展示接口的入口,并且其中响应于所述推荐信息在呈现时被触发而引起所述推荐对象的展示接口被呈现;以及,
将所述推荐信息相对于所述视频的呈现时间与所述关键帧相关联。
2.如权利要求1所述的方法,其中,识别所述视频中的关键帧包括:
对所述视频进行镜头分析,以获得所述视频的镜头片段;
对所述镜头片段内的视频帧进行边缘检测,以获得所述镜头片段内的视频帧的锐度;以及,
基于所述镜头片段内的视频帧的锐度确定所述镜头片段的关键帧。
3.如权利要求2所述的方法,其中,基于所述镜头片段内的视频帧的锐度确定所述镜头片段的关键帧包括:
将所述镜头片段内的视频帧中的锐度最高的视频帧确定为所述镜头片段的关键帧。
4.如权利要求2所述的方法,其中,基于所述镜头片段内的视频帧的锐度确定所述镜头片段的关键帧包括:
将所述镜头片段内的低清晰度视频帧区间的相邻视频帧确定为所述镜头片段的关键帧,其中所述低清晰度视频帧区间由所述镜头片段内的视频帧中锐度低于锐度阈值的连续的视频帧组成。
5.如权利要求1所述的方法,其中,基于所述图像区域的图像数据,提取所述目标对象的特征向量包括:
利用包括多个特征提取层的特征提取模型对所述图像区域的图像数据进行特征提取;以及,
聚合所述多个特征提取层提取的特征,以得到所述目标对象的特征向量。
6.如权利要求1所述的方法,其中,基于所述目标对象的特征向量,在待推荐对象库中选取推荐对象包括:
在待推荐对象库中获取拟推荐对象,其中所述待推荐对象库中的待推荐对象的属性还包括预设推荐权重,并且所述拟推荐对象与所述目标对象的相似度大于预设相似度阈值或者所述拟推荐对象与所述目标对象的相似度排名大于预设排名阈值;以及,
基于所述拟推荐对象的预设推荐权重,在所述拟推荐对象中确定所述推荐对象。
7.如权利要求1所述的方法,其中,基于所述目标对象的特征向量,在待推荐对象库中选取推荐对象包括:
提取所述目标对象的特征向量的子空间向量和所述待推荐对象库中的待推荐对象的特征向量的子空间向量;
基于所述目标对象的特征向量的子空间向量和所述待推荐对象的特征向量的子空间向量,确定所述待推荐对象与所述目标对象的相似度;以及,
将与所述目标对象的相似度满足预定相似度标准的待推荐对象确定为所述推荐对象。
8.如权利要求1所述的方法,其中,将所述推荐信息相对于所述视频的呈现时间与所述关键帧相关联包括:
将所述推荐信息相对于所述视频的呈现时间确定为包含所述关键帧相对于所述视频的呈现时刻。
9.如权利要求1所述的方法,其中,将所述推荐信息相对于所述视频的呈现时间与所述关键帧相关联包括:
将所述推荐信息相对于所述视频的呈现时间确定为:在所述关键帧相对于所述视频的呈现时刻,所述推荐信息出现在所述关键帧的水平方向的中部。
10.如权利要求1所述的方法,其中,生成所述推荐对象的推荐信息包括:
以弹幕或弹窗作为载体生成所述推荐对象的推荐信息。
11.一种基于视频生成推荐信息的装置,包括:
视频获取模块,其配置成获取所述视频;
关键帧识别模块,其配置成识别所述视频中的关键帧;
目标对象检测模块,其配置成检测所述关键帧中的目标对象,以确定所述目标对象所在的图像区域;
特征向量提取模块,其配置成基于所述图像区域的图像数据,提取所述目标对象的特征向量;
推荐对象获取模块,其配置成基于所述目标对象的特征向量,在待推荐对象中获取推荐对象,其中所述推荐对象与所述目标对象的相似度满足预定相似度标准,所述待推荐对象的属性包括链接到所述待推荐对象的展示接口的入口;
推荐信息生成模块,其配置成生成所述推荐对象的推荐信息,其中所述推荐信息包括链接到所述推荐对象的展示接口的入口,并且其中响应于所述推荐信息在呈现时被触发而引起所述推荐对象的展示接口被呈现;以及,
呈现时间关联模块,其配置成将所述推荐信息相对于所述视频的呈现时间与所述关键帧相关联。
12.一种计算设备,包括:
存储器,其被配置成存储计算机可执行指令;
处理器,其被配置成当所述计算机可执行指令被处理器执行时执行如权利要求1-10中的任一项所述的方法。
13.一种计算机可读存储介质,其存储有计算机可执行指令,当所述计算机可执行指令被执行时,执行如权利要求1-10中的任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110578112.5A CN113766330A (zh) | 2021-05-26 | 2021-05-26 | 基于视频生成推荐信息的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110578112.5A CN113766330A (zh) | 2021-05-26 | 2021-05-26 | 基于视频生成推荐信息的方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113766330A true CN113766330A (zh) | 2021-12-07 |
Family
ID=78787226
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110578112.5A Pending CN113766330A (zh) | 2021-05-26 | 2021-05-26 | 基于视频生成推荐信息的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113766330A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114629882A (zh) * | 2022-03-09 | 2022-06-14 | 北京字跳网络技术有限公司 | 信息展示方法、装置、电子设备、存储介质和程序产品 |
CN114648534A (zh) * | 2022-05-24 | 2022-06-21 | 成都理工大学 | 基于视频帧聚类的管网缺陷智能识别方法及装置、介质 |
CN114786062A (zh) * | 2022-03-07 | 2022-07-22 | 维沃移动通信有限公司 | 信息推荐方法、装置和电子设备 |
CN115134636A (zh) * | 2022-08-29 | 2022-09-30 | 北京达佳互联信息技术有限公司 | 信息推荐方法及装置 |
CN116452152A (zh) * | 2023-05-15 | 2023-07-18 | 哈尔滨商业大学 | 一种基于物联网的工程管理系统 |
WO2023241321A1 (zh) * | 2022-06-15 | 2023-12-21 | 北京有竹居网络技术有限公司 | 推荐方法、装置、设备、存储介质及计算机程序产品 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106485567A (zh) * | 2016-09-14 | 2017-03-08 | 北京小米移动软件有限公司 | 物品推荐方法及装置 |
CN107577758A (zh) * | 2017-08-31 | 2018-01-12 | 桂林电子科技大学 | 一种基于多区域交叉权值的图像卷积特征的生成方法 |
CN108509436A (zh) * | 2017-02-24 | 2018-09-07 | 阿里巴巴集团控股有限公司 | 一种确定推荐对象的方法、装置及计算机存储介质 |
CN108629224A (zh) * | 2017-03-15 | 2018-10-09 | 北京京东尚科信息技术有限公司 | 信息呈现方法和装置 |
CN109151501A (zh) * | 2018-10-09 | 2019-01-04 | 北京周同科技有限公司 | 一种视频关键帧提取方法、装置、终端设备及存储介质 |
CN109495780A (zh) * | 2018-10-16 | 2019-03-19 | 深圳壹账通智能科技有限公司 | 一种产品推荐方法、终端设备及计算机可读存储介质 |
CN113344012A (zh) * | 2021-07-14 | 2021-09-03 | 马上消费金融股份有限公司 | 物品识别方法、装置及设备 |
-
2021
- 2021-05-26 CN CN202110578112.5A patent/CN113766330A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106485567A (zh) * | 2016-09-14 | 2017-03-08 | 北京小米移动软件有限公司 | 物品推荐方法及装置 |
CN108509436A (zh) * | 2017-02-24 | 2018-09-07 | 阿里巴巴集团控股有限公司 | 一种确定推荐对象的方法、装置及计算机存储介质 |
CN108629224A (zh) * | 2017-03-15 | 2018-10-09 | 北京京东尚科信息技术有限公司 | 信息呈现方法和装置 |
CN107577758A (zh) * | 2017-08-31 | 2018-01-12 | 桂林电子科技大学 | 一种基于多区域交叉权值的图像卷积特征的生成方法 |
CN109151501A (zh) * | 2018-10-09 | 2019-01-04 | 北京周同科技有限公司 | 一种视频关键帧提取方法、装置、终端设备及存储介质 |
CN109495780A (zh) * | 2018-10-16 | 2019-03-19 | 深圳壹账通智能科技有限公司 | 一种产品推荐方法、终端设备及计算机可读存储介质 |
CN113344012A (zh) * | 2021-07-14 | 2021-09-03 | 马上消费金融股份有限公司 | 物品识别方法、装置及设备 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114786062A (zh) * | 2022-03-07 | 2022-07-22 | 维沃移动通信有限公司 | 信息推荐方法、装置和电子设备 |
WO2023169361A1 (zh) * | 2022-03-07 | 2023-09-14 | 维沃移动通信有限公司 | 信息推荐方法、装置和电子设备 |
CN114629882A (zh) * | 2022-03-09 | 2022-06-14 | 北京字跳网络技术有限公司 | 信息展示方法、装置、电子设备、存储介质和程序产品 |
CN114648534A (zh) * | 2022-05-24 | 2022-06-21 | 成都理工大学 | 基于视频帧聚类的管网缺陷智能识别方法及装置、介质 |
WO2023241321A1 (zh) * | 2022-06-15 | 2023-12-21 | 北京有竹居网络技术有限公司 | 推荐方法、装置、设备、存储介质及计算机程序产品 |
CN115134636A (zh) * | 2022-08-29 | 2022-09-30 | 北京达佳互联信息技术有限公司 | 信息推荐方法及装置 |
CN116452152A (zh) * | 2023-05-15 | 2023-07-18 | 哈尔滨商业大学 | 一种基于物联网的工程管理系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9436876B1 (en) | Video segmentation techniques | |
CN113766330A (zh) | 基于视频生成推荐信息的方法和装置 | |
CA3111455C (en) | System and method for improving speed of similarity based searches | |
De Geest et al. | Online action detection | |
US9176987B1 (en) | Automatic face annotation method and system | |
EP3731110B1 (en) | Method, system and computer program product for synthesizing a video synopsis | |
US9122931B2 (en) | Object identification system and method | |
US8804999B2 (en) | Video recommendation system and method thereof | |
US10380461B1 (en) | Object recognition | |
US20190325197A1 (en) | Methods and apparatuses for searching for target person, devices, and media | |
CN110737783A (zh) | 一种推荐多媒体内容的方法、装置及计算设备 | |
US10963700B2 (en) | Character recognition | |
US9652675B2 (en) | Identifying presentation styles of educational videos | |
Asghar et al. | Video indexing: a survey | |
US20160034748A1 (en) | Computerized Prominent Character Recognition in Videos | |
CN111581423B (zh) | 一种目标检索方法及装置 | |
CN111783712A (zh) | 一种视频处理方法、装置、设备及介质 | |
CN111491187A (zh) | 视频的推荐方法、装置、设备及存储介质 | |
CN111209897A (zh) | 视频处理的方法、装置和存储介质 | |
CN112101344B (zh) | 一种视频文本跟踪方法及装置 | |
CN111797850A (zh) | 视频分类方法、装置、存储介质及电子设备 | |
CN108235114A (zh) | 视频流的内容解析方法和系统、电子设备、存储介质 | |
Meena et al. | A review on video summarization techniques | |
JP2013195725A (ja) | 画像表示システム | |
CN113395584A (zh) | 一种视频数据处理方法、装置、设备以及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |