CN110062272B - 一种视频数据处理方法和相关装置 - Google Patents
一种视频数据处理方法和相关装置 Download PDFInfo
- Publication number
- CN110062272B CN110062272B CN201910358569.8A CN201910358569A CN110062272B CN 110062272 B CN110062272 B CN 110062272B CN 201910358569 A CN201910358569 A CN 201910358569A CN 110062272 B CN110062272 B CN 110062272B
- Authority
- CN
- China
- Prior art keywords
- video frame
- target
- matrix
- pixel point
- position information
- 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 20
- 238000000034 method Methods 0.000 claims abstract description 67
- 239000011159 matrix material Substances 0.000 claims description 638
- 238000006073 displacement reaction Methods 0.000 claims description 536
- 230000003287 optical effect Effects 0.000 claims description 64
- 238000012216 screening Methods 0.000 claims description 42
- 238000013507 mapping Methods 0.000 claims description 41
- 238000004364 calculation method Methods 0.000 claims description 30
- 238000012545 processing Methods 0.000 claims description 28
- 238000004891 communication Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 14
- 230000006870 function Effects 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 6
- 238000001914 filtration Methods 0.000 claims description 4
- 230000000007 visual effect Effects 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 27
- 230000010354 integration Effects 0.000 description 19
- 230000000694 effects Effects 0.000 description 16
- 230000008569 process Effects 0.000 description 13
- 230000014509 gene expression Effects 0.000 description 8
- 238000000926 separation method Methods 0.000 description 7
- 230000009466 transformation Effects 0.000 description 7
- 230000009286 beneficial effect Effects 0.000 description 6
- 238000012937 correction Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000007781 pre-processing Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 2
- GIYXAJPCNFJEHY-UHFFFAOYSA-N N-methyl-3-phenyl-3-[4-(trifluoromethyl)phenoxy]-1-propanamine hydrochloride (1:1) Chemical compound Cl.C=1C=CC=CC=1C(CCNC)OC1=CC=C(C(F)(F)F)C=C1 GIYXAJPCNFJEHY-UHFFFAOYSA-N 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/80—2D [Two Dimensional] animation, e.g. using sprites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration by the use of more than one image, e.g. averaging, subtraction
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/2387—Stream processing in response to a playback request from an end-user, e.g. for trick-play
-
- 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/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
- H04N21/4312—Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
-
- 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/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
- H04N21/44008—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
-
- 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/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
- H04N21/47217—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks
-
- 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/47—End-user applications
- H04N21/488—Data services, e.g. news ticker
- H04N21/4884—Data services, e.g. news ticker for displaying subtitles
-
- 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8455—Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
-
- 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8547—Content authoring involving timestamps for synchronizing content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20092—Interactive image processing based on input by user
- G06T2207/20101—Interactive definition of point of interest, landmark or seed
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30241—Trajectory
Abstract
本发明实施例公开了一种视频数据处理方法、装置以及存储介质,该方法包括:响应针对目标视频的触发操作,从所述目标视频的关键视频帧中确定目标对象,并获取与所述目标对象相关联的多媒体信息;基于所述目标对象中的目标像素点在所述关键视频帧中的位置信息,确定所述目标像素点对应的轨迹获取请求;基于所述轨迹获取请求获取与所述目标像素点在所述关键视频帧中的位置信息相关联的目标轨迹信息;当播放所述关键视频帧的下一视频帧时,基于所述目标轨迹信息中的所述目标像素点在所述关键视频帧的下一视频帧中的位置信息显示所述多媒体信息。采用本发明,可以丰富视频中的用户文字的视觉效果。
Description
技术领域
本发明涉及互联网技术领域,尤其涉及一种视频数据处理方法和相关装置。
背景技术
用户在通过用户终端观看视频的过程中,可以在视频播放界面上看到该用户或其它用户发表的用户文字。然而在现有的用户文字显示方式中,每个输出至视频播放界面中的用户文字,均通过该视频播放界面中固定的文字显示轨道进行输出和显示,换言之,在该视频播放界面上所显示的用户文字是独立于所播放的视频内容,以至于显示在该用户终端中的用户文字与所述视频内容之间缺乏一定的相关性,进而降低了用户文字在该视频播放界面上的展示效果。
此外,当用户需要发送一条用户文字时,该用户终端可以将该获取到的用户文字通过文字显示轨道进行输出,因此,对于每个用户所发送的用户文字而言,均是通过同一文字显示轨道进行输出,从而导致用户文字的视觉展示效果比较单一。
发明内容
本发明实施例提供一种视频数据处理方法和相关装置,可以丰富视频中的用户文字的视觉展示效果。
本发明实施例一方面提供了一种视频数据处理方法,所述方法应用于移动终端,包括:
响应针对目标视频的触发操作,从所述目标视频的关键视频帧中确定目标对象,并获取与所述目标对象相关联的多媒体信息;
基于所述目标对象中的目标像素点在所述关键视频帧中的位置信息,确定所述目标像素点对应的轨迹获取请求;
基于所述轨迹获取请求获取与所述目标像素点在所述关键视频帧中的位置信息相关联的目标轨迹信息;所述目标轨迹信息包含所述目标像素点在所述关键视频帧的下一视频帧中的位置信息;所述关键视频帧的下一视频帧中的位置信息是通过跟踪所述目标对象得到的;
当播放所述关键视频帧的下一视频帧时,基于所述目标轨迹信息中的所述目标像素点在所述关键视频帧的下一视频帧中的位置信息显示所述多媒体信息。
本发明实施例一方面提供了一种视频数据处理方法,所述方法应用于业务服务器,包括:
响应针对关键视频帧中的目标像素点的轨迹获取请求,获取与目标视频相关联的轨迹信息;所述目标像素点是指所述目标视频的所述关键视频帧中目标对象所包含的像素点;所述轨迹信息是由所述目标视频中的像素点在所述目标视频的每个视频帧中的位置信息所确定的;
从所述目标视频相关联的轨迹信息中,筛选与所述目标像素点在所述关键视频帧中的位置信息相关联的目标轨迹信息,并返回所述目标轨迹信息;所述目标轨迹信息包含目标位置信息;所述目标位置信息用于触发在所述关键视频帧的下一视频帧中显示与所述目标对象相关联的多媒体信息。
本发明实施例一方面提供了一种视频数据处理方法,所述方法包括:
从目标视频中获取相邻的第一视频帧和第二视频帧;
基于所述目标视频对应的光流追踪规则、所述第一视频帧中的像素点、所述第二视频帧中的像素点,确定所述第一视频帧对应的平均位移矩阵;
基于所述平均位移矩阵对所述第一视频帧中的像素点的位置信息进行跟踪,并在所述第二视频帧中确定所跟踪得到的像素点的位置信息;
基于所述第一视频帧中的像素点的位置信息、所述跟踪得到的像素点在所述第二视频帧中的位置信息,生成所述目标视频相关联的轨迹信息;所述轨迹信息中包含用于对目标视频中的目标对象所关联的多媒体信息进行跟踪显示的目标轨迹信息。
其中,所述基于所述目标视频对应的光流追踪规则、所述第一视频帧中的像素点、所述第二视频帧中的像素点,确定所述第一视频帧对应的平均位移矩阵,包括:
获取所述目标视频对应的光流追踪规则,并将所述第一视频帧中的像素点的位置信息确定为第一位置信息,并将所述第二视频帧中的像素点的位置信息确定为第二位置信息;
基于所述光流追踪规则、所述第一视频帧中的像素点的第一位置信息、所述第二视频帧中的像素点的第二位置信息,获取所述第一视频帧对应的正向位移矩阵,并获取所述第二视频帧对应的反向位移矩阵;
基于所述第一视频帧中的像素点的第一位置信息、所述正向位移矩阵、所述反向位移矩阵,将所述像素点中满足目标筛选条件的像素点确定为有效像素点;
基于所述有效像素点对所述第一视频帧对应的初始状态矩阵和所述正向位移矩阵进行修正,得到所述第一视频帧对应的目标状态矩阵和目标位移矩阵;
基于所述目标状态矩阵和所述目标位移矩阵,确定所述第一视频帧对应的平均位移矩阵。
其中,所述基于所述光流追踪规则、所述第一视频帧中的像素点的第一位置信息、所述第二视频帧中的像素点的第二位置信息,获取所述第一视频帧对应的正向位移矩阵,并获取所述第二视频帧对应的反向位移矩阵,包括:
基于所述第一视频帧中的像素点的第一位置信息和所述光流追踪规则,将所述第一视频帧中的像素点正向映射到所述第二视频帧,并在所述第二视频帧中确定所映射得到的第一映射点的第二位置信息,并基于所述像素点的第一位置信息、所述第一映射点的第二位置信息确定所述第一视频帧对应的正向位移矩阵;
基于所述第二视频帧中的像素点的第二位置信息和所述光流追踪规则,将所述第二视频帧中的像素点反向映射到所述第一视频帧,并在所述第一视频帧中确定所映射得到第二映射点的第三位置信息,并基于所述第一映射点的第二位置信息、所述第二映射点的第三位置信息确定所述第二视频帧对应的反向位移矩阵。
其中,所述基于所述第一视频帧中的像素点的第一位置信息、所述正向位移矩阵、所述反向位移矩阵,将所述像素点中满足目标筛选条件的像素点确定为有效像素点,包括:
从所述第一视频帧中的像素点中获取第一像素点,并在所述第一视频帧中确定所述第一像素点的第一位置信息,并从所述正向位移矩阵中确定所述第一像素点对应的第一横向位移和第一纵向位移;
基于所述第一像素点的第一位置信息、所述第一像素点对应的第一横向位移和第一纵向位移,将所述第一像素点正向映射到所述第二视频帧,并在所述第二视频帧中确定所映射得到的第二像素点的第二位置信息;
从所述反向位移矩阵中确定所述第二像素点对应的第二横向位移和第二纵向位移,并基于所述第二像素点的第二位置信息、所述第二像素点对应的第二横向位移和第二纵向位移,将所述第二像素点反向映射到所述第一视频帧,并在所述第一视频帧中确定所映射得到的第三像素点的第三位置信息;
基于所述第一像素点的第一位置信息、所述第三像素点的第三位置信息,确定所述第一像素点与所述第三像素点之间的误差距离,并根据所述第一像素点的第一位置信息、所述第二像素点的第二位置信息,确定包含第一像素点的图像块与包含所述第二像素点的图像块之间的相关系数;
将所述像素点中误差距离小于误差距离阈值、且所述相关系数大于等于相关系数阈值的像素点确定为有效像素点。
其中,所述基于所述有效像素点对所述第一视频帧对应的初始状态矩阵和所述正向位移矩阵进行修正,得到所述第一视频帧对应的目标状态矩阵和目标位移矩阵,包括:
获取第一视频帧对应的初始状态矩阵;所述初始状态矩阵中的每个矩阵元素的状态值均为第一数值,一个矩阵元素对应所述像素点中的一个像素点;
在所述初始状态矩阵中将与所述有效像素点对应的矩阵元素的状态值由第一数值切换为第二数值,并将包含第二数值的初始状态矩阵确定为所述第一视频帧对应的目标状态矩阵;
在所述正向位移矩阵中将所述剩余像素点对应的矩阵元素的位移设置为所述第一数值,并将包含所述第一数值的正向位移矩阵确定为目标位移矩阵;所述剩余像素点为所述像素点中除所述有效像素点之外的像素点。
其中,所述在所述正向位移矩阵中将所述剩余像素点对应的矩阵元素的位移设置为所述第一数值,并将包含所述第一数值的正向位移矩阵确定为目标位移矩阵,包括:
若所述正向位移矩阵包含初始横向位移矩阵和初始纵向位移矩阵,则在所述初始横向位移矩阵中将所述剩余像素点对应的矩阵元素的第一横向位移设置为所述第一数值,并将包含所述第一数值的初始横向位移确定为所述第一视频帧对应的横向位移矩阵;
在所述初始纵向位移矩阵将所述剩余像素点对应的矩阵元素的第一纵向位移设置为所述第一数值,并将包含所述第一数值的初始纵向位移确定为所述第一视频帧对应的纵向位移矩阵;
将所述第一视频帧对应的横向位移矩阵和所述第一视频帧对应的纵向位移矩阵确定为目标位移矩阵。
其中,所述基于所述目标状态矩阵和所述目标位移矩阵,确定所述第一视频帧对应的平均位移矩阵,包括:
在所述第一视频帧中对所述目标状态矩阵进行位移积分运算,得到所述第一视频帧中的像素点对应的状态积分矩阵;
在所述第一视频帧中对所述目标状态矩阵中的横向位移矩阵进行位移积分运算,得到所述第一视频帧中的像素点对应的横向位移积分矩阵;
在所述第一视频帧中对所述目标状态矩阵中的纵向位移矩阵进行位移积分运算,得到所述第一视频帧中的像素点对应的纵向位移积分矩阵;
从所述第一视频帧中确定位移差分运算对应的差分区域,基于所述差分区域的尺寸信息、状态积分矩阵、横向位移积分矩阵和纵向位移积分矩阵,确定所述第一视频帧对应的平均位移矩阵。
其中,所述基于所述差分区域的尺寸信息、状态积分矩阵、横向位移积分矩阵和纵向位移积分矩阵,确定所述第一视频帧对应的平均位移矩阵,包括:
基于所述差分区域对应的长度信息和宽度信息,对所述状态积分矩阵进行位移差分运算,得到所述第一图像帧对应的状态差分矩阵;
基于所述差分区域对应的长度信息和宽度信息,分别对所述横向位移积分矩阵和纵向位移积分矩阵进行位移差分运算,得到所述第一图像帧对应的横向位移差分矩阵和纵向位移差分矩阵;
将所述横向位移差分矩阵与所述状态差分矩阵之间的比值确定为横向平均位移矩阵,并将所述纵向位移差分矩阵与所述状态差分矩阵之间的比值确定为纵向平均位移矩阵;
将所述纵向位移差分矩阵和所述纵向平均位移矩阵确定为所述第一视频帧对应的平均位移矩阵。
本发明实施例一方面提供了一种视频数据处理装置,所述装置应用于移动终端,包括:
对象确定模块,用于响应针对目标视频的触发操作,从所述目标视频的关键视频帧中确定目标对象,并获取与所述目标对象相关联的多媒体信息;
请求确定模块,用于基于所述目标对象中的目标像素点在所述关键视频帧中的位置信息,确定所述目标像素点对应的轨迹获取请求;
轨迹获取模块,用于基于所述轨迹获取请求获取与所述目标像素点在所述关键视频帧中的位置信息相关联的目标轨迹信息;所述目标轨迹信息包含所述目标像素点在所述关键视频帧的下一视频帧中的位置信息;所述关键视频帧的下一视频帧中的位置信息是通过跟踪所述目标对象得到的;
文本显示模块,用于当播放所述关键视频帧的下一视频帧时,基于所述目标轨迹信息中的所述目标像素点在所述关键视频帧的下一视频帧中的位置信息显示所述多媒体信息。
本发明实施例一方面提供了一种视频数据处理装置,所述装置应用于业务服务器,包括:
请求响应模块,用于响应针对关键视频帧中的目标像素点的轨迹获取请求,获取与目标视频相关联的轨迹信息;所述目标像素点是指所述目标视频的所述关键视频帧中目标对象所包含的像素点;所述轨迹信息是由所述目标视频中的像素点在所述目标视频的每个视频帧中的位置信息所确定的;
轨迹筛选模块,用于从所述目标视频相关联的轨迹信息中,筛选与所述目标像素点在所述关键视频帧中的位置信息相关联的目标轨迹信息,并返回所述目标轨迹信息;所述目标轨迹信息包含目标位置信息;所述目标位置信息用于触发在所述关键视频帧的下一视频帧中显示与所述目标对象相关联的多媒体信息。
本发明实施例一方面提供了一种视频数据处理装置,所述装置包括:
第一获取模块,用于从目标视频中获取相邻的第一视频帧和第二视频帧;
矩阵获取模块,用于基于所述目标视频对应的光流追踪规则、所述第一视频帧中的像素点、所述第二视频帧中的像素点,确定所述第一视频帧对应的平均位移矩阵;
位置跟踪模块,用于基于所述平均位移矩阵对所述第一视频帧中的像素点的位置信息进行跟踪,并在所述第二视频帧中确定所跟踪得到的像素点的位置信息;
轨迹生成模块,用于基于所述第一视频帧中的像素点的位置信息、所述跟踪得到的像素点在所述第二视频帧中的位置信息,生成所述目标视频相关联的轨迹信息;所述轨迹信息中包含用于对目标视频中的目标对象所关联的多媒体信息进行跟踪显示的目标轨迹信息。
其中,所述矩阵获取模块包括:
第一确定单元,用于获取所述目标视频对应的光流追踪规则,并将所述第一视频帧中的像素点的位置信息确定为第一位置信息,并将所述第二视频帧中的像素点的位置信息确定为第二位置信息;
矩阵确定单元,用于基于所述光流追踪规则、所述第一视频帧中的像素点的第一位置信息、所述第二视频帧中的像素点的第二位置信息,获取所述第一视频帧对应的正向位移矩阵,并获取所述第二视频帧对应的反向位移矩阵;
像素点筛选单元,用于基于所述第一视频帧中的像素点的第一位置信息、所述正向位移矩阵、所述反向位移矩阵,将所述像素点中满足目标筛选条件的像素点确定为有效像素点;
矩阵修正单元,用于基于所述有效像素点对所述第一视频帧对应的初始状态矩阵和所述正向位移矩阵进行修正,得到所述第一视频帧对应的目标状态矩阵和目标位移矩阵;
第二确定单元,用于基于所述目标状态矩阵和所述目标位移矩阵,确定所述第一视频帧对应的平均位移矩阵。
其中,所述矩阵确定单元包括:
第一追踪子单元,用于基于所述第一视频帧中的像素点的第一位置信息和所述光流追踪规则,将所述第一视频帧中的像素点正向映射到所述第二视频帧,并在所述第二视频帧中确定所映射得到的第一映射点的第二位置信息,并基于所述像素点的第一位置信息、所述第一映射点的第二位置信息确定所述第一视频帧对应的正向位移矩阵;
第二追踪子单元,基于所述第二视频帧中的像素点的第二位置信息和所述光流追踪规则,将所述第二视频帧中的第一映射点反向映射到所述第一视频帧,并在所述第一视频帧中确定所映射得到第二映射点的第三位置信息,并基于所述第一映射点的第二位置信息、所述第二映射点的第三位置信息确定所述第二视频帧对应的反向位移矩阵。
其中,所述像素点筛选单元包括:
第一位置确定子单元,用于从所述第一视频帧中的像素点中获取第一像素点,并在所述第一视频帧中确定所述第一像素点的第一位置信息,并从所述正向位移矩阵中确定所述第一像素点对应的第一横向位移和第一纵向位移;
第二位置确定子单元,用于基于所述第一像素点的第一位置信息、所述第一像素点对应的第一横向位移和第一纵向位移,将所述第一像素点正向映射到所述第二视频帧,并在所述第二视频帧中确定所映射得到的第二像素点的第二位置信息;
第三位置确定子单元,用于从所述反向位移矩阵中确定所述第二像素点对应的第二横向位移和第二纵向位移,并基于所述第二像素点的第二位置信息、所述第二像素点对应的第二横向位移和第二纵向位移,将所述第二像素点反向映射到所述第一视频帧,并在所述第一视频帧中确定所映射得到的第三像素点的第三位置信息;
误差确定子单元,用于基于所述第一像素点的第一位置信息、所述第三像素点的第三位置信息,确定所述第一像素点与所述第三像素点之间的误差距离,并根据所述第一像素点的第一位置信息、所述第二像素点的第二位置信息,确定包含第一像素点的图像块与包含所述第二像素点的图像块之间的相关系数;
有效筛选子单元,用于将所述像素点中误差距离小于误差距离阈值、且所述相关系数大于等于相关系数阈值的像素点确定为有效像素点。
其中,所述矩阵修正单元包括:
初始获取子单元,获取第一视频帧对应的初始状态矩阵;所述初始状态矩阵中的每个矩阵元素的状态值均为第一数值,一个矩阵元素对应所述像素点中的一个像素点;
数值切换子单元,用于在所述初始状态矩阵中将与所述有效像素点对应的矩阵元素的状态值由第一数值切换为第二数值,并将包含第二数值的初始状态矩阵确定为所述第一视频帧对应的目标状态矩阵;
位移设置子单元,用于在所述正向位移矩阵中将所述剩余像素点对应的矩阵元素的位移设置为所述第一数值,并将包含所述第一数值的正向位移矩阵确定为目标位移矩阵;所述剩余像素点为所述像素点中除所述有效像素点之外的像素点。
其中,所述位移设置子单元,具体用于若所述正向位移矩阵包含初始横向位移矩阵和初始纵向位移矩阵,则在所述初始横向位移矩阵中将所述剩余像素点对应的矩阵元素的第一横向位移设置为所述第一数值,并将包含所述第一数值的初始横向位移确定为所述第一视频帧对应的横向位移矩阵;
所述位移设置子单元,还具体用于在所述初始纵向位移矩阵将所述剩余像素点对应的矩阵元素的第一纵向位移设置为所述第一数值,并将包含所述第一数值的初始纵向位移确定为所述第一视频帧对应的纵向位移矩阵;
所述位移设置子单元,还具体用于将所述第一视频帧对应的横向位移矩阵和所述第一视频帧对应的纵向位移矩阵确定为目标位移矩阵。
其中,所述第二确定单元包括:
第一积分子单元,用于在所述第一视频帧中对所述目标状态矩阵进行位移积分运算,得到所述第一视频帧中的像素点对应的状态积分矩阵;
第二积分子单元,用于在所述第一视频帧中对所述目标状态矩阵中的横向位移矩阵进行位移积分运算,得到所述第一视频帧中的像素点对应的横向位移积分矩阵;
第三积分子单元,用于在所述第一视频帧中对所述目标状态矩阵中的纵向位移矩阵进行位移积分运算,得到所述第一视频帧中的像素点对应的纵向位移积分矩阵;
差分运算子单元,用于从所述第一视频帧中确定位移差分运算对应的差分区域,基于所述差分区域的尺寸信息、状态积分矩阵、横向位移积分矩阵和纵向位移积分矩阵,确定所述第一视频帧对应的平均位移矩阵。
其中,所述位移差分运算子单元包括:
第一差分子单元,用于基于所述差分区域对应的长度信息和宽度信息,对所述状态积分矩阵进行位移差分运算,得到所述第一图像帧对应的状态差分矩阵;
第二差分子单元,用于基于所述差分区域对应的长度信息和宽度信息,分别对所述横向位移积分矩阵和纵向位移积分矩阵进行位移差分运算,得到所述第一图像帧对应的横向位移差分矩阵和纵向位移差分矩阵;
第三差分子单元,用于将所述横向位移差分矩阵与所述状态差分矩阵之间的比值确定为横向平均位移矩阵,并将所述纵向位移差分矩阵与所述状态差分矩阵之间的比值确定为纵向平均位移矩阵;
平均确定子单元,用于将所述纵向位移差分矩阵和所述纵向平均位移矩阵确定为所述第一视频帧对应的平均位移矩阵。
本发明实施例一方面提供了一种计算机设备,包括:处理器、存储器、网络接口;
所述处理器与存储器、网络接口相连,其中,网络接口用于提供数据通信功能,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以执行如本发明实施例中一方面中的方法。
本发明实施例一方面提供了一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行如本发明实施例中一方面中的方法。
本发明实施例可以在获取到目标用户针对目标视频的触发操作时,将该目标视频中该触发操作对应的视频帧称之为关键视频帧,从而可以从该关键视频帧中确定目标对象,并获取该目标对象关联的多媒体信息(例如,该多媒体信息可以为该目标视频中的用户文字、图片、表情等弹幕数据);进一步地,基于该目标对象中的目标像素点在该关键视频帧中的位置信息确定所述目标像素点对应的轨迹获取请求,进而可以基于该轨迹获取请求获取所述目标像素点在所述关键视频帧中的位置信息相关联的目标轨迹信息,以便于在播放该关键视频帧的下一视频帧时,能够基于该目标轨迹信息显示与该目标对象相关联的弹幕数据;由此可见,本发明实施例可以在确定出关键视频帧时,进一步从该关键视频帧中的所有像素点的轨迹信息中筛选出目标像素点的轨迹信息,并将筛选出的目标像素点的轨迹信息称之为目标轨迹信息,以便于能够基于得到的目标轨迹信息丰富弹幕数据的展示效果,比如,对于不同目标对象中的目标像素点,所得到的目标轨迹信息可能会不同,进而使得弹幕数据的展示效果会不同。此外,基于目标对象与弹幕数据之间的关联关系,可以快速确定出该弹幕数据在该关键视频帧之后的每个视频帧中的位置信息,换言之,该弹幕数据会在该目标视频中一直跟着该目标对象进行变动,进而可以丰富视频中的用户文字的视觉展示效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种网络架构的结构示意图;
图2是本发明实施例提供的一种目标视频中的多个视频帧的示意图;
图3是本发明实施例提供的一种获取目标视频的场景示意图;
图4是本发明实施例提供的一种视频数据处理方法的流程示意图;
图5是本发明实施例提供的一种获取多媒体信息的示意图;
图6是本发明实施例提供的一种全图像素追踪的示意图;
图7是本发明实施例提供的一种在连续多个视频帧中跟踪弹幕数据的示意图;
图8是本发明实施例另一种视频数据处理方法的示意图;
图9是本发明实施例提供的一种确定有效像素点的方法;
图10是本发明实施例提供的一种基于轨迹信息显示弹幕数据的示意图;
图11是本发明实施例提供的一种视频数据处理装置的结构示意图;
图12是本发明实施例提供的一种计算机设备的结构示意图;
图13是本发明实施例提供的另一种视频数据处理装置的结构示意图;
图14是本发明实施例提供的另一种计算机设备的结构示意图;
图15是本发明实施例提供的又一种视频数据处理装置的结构示意图;
图16是本发明实施例提供的又一种计算机设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,是本发明实施例提供的一种网络架构的结构示意图。如图1所示,所述网络架构可以包括业务服务器2000和用户终端集群,所述用户终端集群可以包括多个用户终端,如图1所示,具体可以包括用户终端3000a、用户终端3000b、用户终端3000c、…、用户终端3000n;如图1所示,用户终端3000a、用户终端3000b、用户终端3000c、…、用户终端3000n可以分别与所述业务服务器2000进行网络连接,以便于每个用户终端可以通过该网络连接与应用服务器2000之间进行数据交互。
如图1所示,该用户终端集群中的每个用户终端均可以集成安装有目标应用,当该目标应用运行于各用户终端中时,可以分别与上述图1所示的业务服务器2000之间进行数据交互。其中,该目标应用可以包含多媒体应用、社交应用、娱乐应用等具有视频播放功能的应用。为便于理解,本发明实施例以所述多个用户终端中的一个用户终端作为目标用户终端为例,以阐述集成有该目标应用的目标用户终端通过业务数据展示平台与所述业务服务器2000之间实现数据交互的具体过程。其中,本发明实施例中的目标用户终端可以包含个人电脑、平板电脑、笔记本电脑、智能手机等集成有上述目标应用的移动终端。其中,该业务服务器2000可以为该目标应用的后台服务器,该后台服务器对应的业务数据库可以用于存储展示在该业务数据展示平台上的每个业务数据信息,该业务数据信息可以包含视频数据等互联网信息。应当理解,该业务数据展示平台上可以显示多个视频,当目标用户在该目标用户终端中通过该业务数据展示平台触发多个视频中的一个视频时,可以获取该视频对应的视频数据,进而可以在该目标用户终端中播放该视频数据,并可以进一步将当前正在该目标用户终端中播放的视频数据称之为目标视频。该目标视频是由该业务服务器2000基于目标用户终端所发送的数据加载指令所返回的视频数据。
其中,所述目标视频中可以包含多个视频帧,每个视频帧均可以称之为一个图像数据,且每个视频帧均对应于该目标视频的播放时长中的一个播放时间戳(即一个时刻),以便于后续目标用户终端在加载并播放该目标视频时,可以基于该目标视频中的每个视频帧对应的播放时间戳在播放显示界面中显示相应的视频帧。
其中,业务服务器2000可以在视频的预处理阶段,将业务数据库中所存储的视频集中的每个视频进行分帧处理,从而可以将每个视频所包含的多个视频帧中的每个视频帧拆分成一张张图片。为便于理解,进一步地,请参见图2,是本发明实施例提供的一种目标视频中的多个视频帧的示意图。其中,该目标视频可以为前述业务数据库中的视频A,如图2所示,该视频A可以包含n个视频帧,n为大于0的正整数,业务服务器2000可以预先将该视频A中的n个视频拆分为n个图片,从而可以将这n个图片中的每前后相邻的两个图片称之为一个图像对。比如,如图2所示,本发明实施例可以将图2所示的第一时刻对应的视频帧与第二时刻对应的视频帧称之为一个图像对,并可以将第二时刻对应的视频帧与第三时刻对应的视频帧称之为一个图像对,…,并可以将第n-1时刻的视频帧与第n时刻对应的视频帧称之为第一图像对。换言之,对于一个目标视频而言,可以从该目标视频对应的多个视频帧中确定出多个图像对,每个图像对中均可以包含前后相邻的两个时刻对应的视频帧,即每个图像对中均可以包含两个相邻的视频帧。
为便于理解,本发明实施例以所述多个图像对中的首个图像对为例,在视频预处理阶段,本发明实施例可以将该首个图像对中的一个视频帧(例如,图2所示的第一时刻对应的视频帧)称之为第一视频帧,并可以将该图像对中的另一个视频帧(即第二时刻对应的视频帧)称之为第二视频帧,进而可以基于光流追踪规则,对该图像对中第一视频帧中的所有像素点的位置信息进行跟踪,以追踪得到该第一视频帧中的每个像素点出现在第二视频帧中的位置信息。由于每个图像对中均包含两个相邻的视频帧,从而可以计算得到每个图像对中第一视频帧中的像素点出现在下一视频中的位置信息,最后可以在该业务服务器2000中确定出该视频A中的所有像素点的运动轨迹,并可以将这些像素点的运动轨迹统称为像素点的轨迹信息。
由于业务服务器2000可以预先计算好该视频A中的所有像素点的轨迹信息,因此,当目标用户在目标用户终端中播放该视频A时,可以将该当前播放的视频A称之为一个目标视频。在播放该目标视频的过程中,若目标用户需要跟踪某个对象,则可以在目标用户终端中将需要跟踪的这个对象(即目标对象)中与触发操作对应的像素点称之为目标像素点,即该目标像素点是由该目标用户针对当前播放的视频帧中的目标对象所执行的触发操作而确定的,该触发操作是用于在当前所播放的视频帧中选择需要进行跟踪的目标对象。其中,本发明实施例可以将该触发操作对应的视频帧称之为关键视频帧,换言之,本发明实施例可以将当前包含该目标像素点的视频帧称之为该目标视频中的关键视频帧。可以理解的是,该关键视频帧可以为上述图2所对应实施例中的第一时刻对应的视频帧,可选地,该关键视频帧也可以为上述图2所对应实施例中第二时刻对应的视频帧,这里将不一一列举。
应当理解,本发明实施例可以将该关键视频帧、该关键视频帧中的目标像素点以及该目标像素点的位置信息给到上述图1所对应实施例中的业务服务器2000,以使该业务服务器2000可以基于该目标像素点在该关键视频帧中的位置信息,从预先计算得到的该目标视频中的所有像素点的轨迹信息中,筛选与该目标像素点的位置信息相匹配的轨迹信息作为目标轨迹信息,进而可以将该目标轨迹信息返回给该目标用户终端,以使目标用户终端可以在播放该关键视频帧的下一视频帧时,进一步根据该目标轨迹信息确定目标像素点在该关键视频帧的下一视频帧中的位置信息,即可以得到该目标像素点的目标位置信息,进而可以基于该目标位置信息显示该目标对象对应的多媒体信息。
其中,进一步地,请参见图3,是本发明实施例提供的一种获取目标视频的场景示意图。如图3所示的目标用户终端可以为上述图1所对应实施例中的用户终端3000a。如图3所示,目标用户可以在接入该目标应用之后,在该目标用户终端(例如,智能手机)中显示该目标应用对应的业务数据展示平台,该业务数据展示平台上可以显示图3所示的视频10a、视频20a、视频30a和视频40a。当目标用户需要在目标用户终端中播放图3所示的视频30a(该视频30a可以为上述图3所对应实施例中的视频A)时,可以对该视频30a所在区域执行播放操作(例如,目标用户可以对该视频30a执行点击操作),进而可以将该视频30a对应的目标标识信息添加到图3所示的数据加载指令中,以将该数据加载指令进一步给到与该目标用户终端具有网络连接关系的应用服务器,该应用服务器可以为上述图1所对应实施例中的业务服务器2000。可以理解的是,该应用服务器可以在获取到数据加载指令时,从业务数据库中查找该目标标识信息对应的视频数据,并可以将查找到的视频数据统称为目标数据,以便于能够将该目标数据给到图3所示的目标用户终端,以使该目标用户终端可以在图3所示的视频播放界面中播放该视频数据,此时,该目标用户终端可以将该目标用户所选取并播放的视频30称之为目标视频,即此时,该目标用户终端可以按照上述图3所示的播放时间戳播放视频A中的每个视频帧。
其中,上述目标用户终端获取目标对象以及获取目标轨迹信息的具体过程,可以参见如下图4至图7所对应的实施例所提供的实现方式。另外,上述业务服务器2000获取所述像素点在所述第二视频帧中的位置信息。以及筛选所述目标像素点对应的目标轨迹信息的具体过程,可以参见如下图8至图10所对应的实施例所提供的实现方式。
请参见图4,是本发明实施例提供的一种视频数据处理方法的流程示意图。如图4所示,该方法可以应用于上述图1所对应实施例中的目标用户终端,该方法可以包括:
步骤S101,响应针对目标视频的触发操作,从所述目标视频的关键视频帧中确定目标对象,并获取与所述目标对象相关联的多媒体信息。
具体地,目标用户终端可以在访问目标应用时,在该目标应用对象的显示界面上显示用于承载多个业务数据信息的业务数据展示平台,例如,该业务数据展示平台上的每个业务数据信息可以为一个视频。在该业务数据展示平台上所展示的业务数据信息可以是由与该目标用户终端具有网络连接关系的应用服务器基于该目标用户的用户画像数据(例如,该目标用户的历史行为数据)进行筛选后所确定的。当目标用户针对该业务数据展示平台上的一个业务数据信息(例如,一个视频)执行播放操作时,可以从该应用服务器对应的业务数据库中加载得到该视频对应的视频数据,进而可以在该目标用户终端的视频播放界面中播放该加载到的视频数据。进一步地,目标用户终端可以在播放该视频数据的过程中,获取该目标用户针对该视频播放界面中的目标对象(即需要跟踪的对象)执行的触发操作,并可以将该触发操作对应的视频帧称之为关键视频帧,并可以在该关键视频帧中将触发操作对应的像素点称之为目标像素点。与此同时,该目标用户终端还可以在独立于该视频播放界面的子窗口中创建一个文本框,以便于该目标用户可以在该文本框中录入与该目标对象具有关联关系的多媒体信息,当目标用户在该文本框中输入多媒体信息之后,该目标用户终端可以获取与该目标对象相关联的多媒体信息,即与该目标对象相关联的多媒体信息可以统称为该目标用户所录入的用户文字。
其中,所述目标用户终端可以为具有视频数据播放功能的终端设备,所述目标用户终端可以为上述图1所对应实施例中的用户终端3000a,该目标用户终端可以理解为一种移动终端。其中,所述应用服务器可以为上述图1所对应实施例中的业务服务器2000。
为便于理解,进一步地,请参见图5,是本发明实施例提供的一种获取多媒体信息的示意图。如图5所示,当目标用户终端在播放上述图3所对应实施例中视频30的过程中,该目标用户终端可以将当前播放的视频30称之为目标视频。可以理解的是,目标用户可以在播放该视频30的任意一个时刻,对该视频30所包含的多个视频帧中的某个视频帧执行触发操作,进而可以将该触发操作对应的视频帧称之为关键视频帧。例如,如图5所示,目标用户可以在图5所示的显示界面100a中选取对象A作为目标对象,并可以将当前所播放的视频帧称之为关键视频帧,换言之,该目标用户终端可以将该触发操作对应的视频帧称之为关键视频帧,并可以在该关键视频帧中将该触发操作对应的像素点称之为目标像素点。此时,该目标像素点为该目标用户终端所获取到的目标视频内的关键视频帧中的像素点。
如图5所示,当目标用户在图5所示的视频播放界面100a中针对对象A执行触发操作之后,可以在图5所示的视频播放界面200a中弹出图5所示的文本框,该文本框也可以称之为一个对话框。如图5所示的文本框可以理解为独立于该视频播放界面200a的一个浮窗,且图5所示的文本框可以与图5所示的对象A之间存在关联关系(例如,可以与该对象A中的目标像素点之间存在显示位置上的相对关系,以构建得到该视频30a中的目标对象的目标像素点与该目标对象相关联的多媒体信息之间的关联性)。应当理解,在本发明实施例的对话框中所录入的多媒体信息可以包含用户文字、用户图片和用户表情等数据,并可以将该目标用户在该对话框中所录入的用户文字(即文本信息)、用户图片(即图片信息)和用户表情(即表情信息)等统称为弹幕数据。
因此,当目标用户在图5所示的视频播放界面200a中的文本框中输入文本信息A之后,可以在图5所示的视频播放界面300a中显示该输入的文本信息A。该输入的文本信息A可以为图5所示的与该对象A中的目标像素点之间存在一定位置间隔距离的文本信息,显示在该视频播放界面300a中的文本信息A可以称之为与该目标对象相关联的弹幕数据。
步骤S102,基于所述目标对象中的目标像素点在所述关键视频帧中的位置信息,确定所述目标像素点对应的轨迹获取请求;
具体地,目标用户终端可以在该关键视频帧中确定该目标像素点的位置信息,并可以基于该关键视频帧在目标视频中的帧号、该目标像素点以及该目标像素点在该关键视频帧中的位置信息,生成该目标像素点对应的轨迹获取请求,以便于可以进一步执行步骤S103;
其中,该轨迹获取请求可以用于指示应用服务器从预先计算得到的该目标视频中的所有像素点对应的轨迹信息中筛选与该目标像素点相匹配的轨迹信息。
步骤S103,基于所述轨迹获取请求获取与所述目标像素点在所述关键视频帧中的位置信息相关联的目标轨迹信息;
其中,所述目标轨迹信息包含所述目标像素点在所述关键视频帧的下一视频帧中的位置信息;所述关键视频帧的下一视频帧中的位置信息是通过跟踪所述目标对象得到的。
在本发明实施例中,该目标用户终端可以基于应用服务器预先计算得到的目标视频中的所有像素点的运动轨迹(每个像素点的运动轨迹可以统称为一个轨迹信息),从这些像素点对应的运动轨迹中筛选与目标像素点相匹配的像素点的运动轨迹作为与该目标像素点在所述关键视频帧中的位置信息相关联的目标轨迹信息。换言之,该目标用户终端在获取到该目标轨迹信息时,可以基于该目标轨迹信息中所包含的该关键视频帧的下一视频帧的位置信息,快速确定上述图5所对应实施例中目标对象中的目标像素点与该目标对象相关联的多媒体信息之间的位置间隔距离,即可以快速得到该多媒体信息出现在该关键视频帧的下一视频帧中的位置信息。
可以理解的是,该位置间隔距离可以理解为该关键视频帧中的目标像素点与该关键视频帧对应的弹幕数据之间的相对位置间隔距离。即该位置间隔距离可以包含水平(即横向)方向上的相对位置间隔距离,也可以包含垂直(即纵向)方向上的相对位置间隔距离,从而可以确保该目标用户终端在得到该目标对象中的目标像素点在该关键视频的下一个视频帧中的位置信息时,可以基于该相对位置间隔距离快速计算得到该文本信息A在该关键视频帧的下一视频帧中的位置信息。即此时,显示在上述图5所对应实施例中的视频播放界面300a中的文本信息A的位置信息是完全取决与该目标对象的目标像素点在该关键视频帧之后的其他视频帧的位置信息。在目标用户终端的计算性能比较一般的情况下,该目标用户终端可以从与该目标用户终端具有网络连接关系的应用服务器中获取与该关键视频帧中的目标像素点的位置信息相符的轨迹信息作为目标轨迹信息,以使该目标用户终端能够在获取到该应用服务器预先计算好的该目标像素点的目标轨迹信息时,进一步基于该目标轨迹信息中的目标像素点出现在该关键视频帧的下一视频帧的位置信息,在有效时长内快速且准确地实现对该弹幕数据的快速跟踪,从而可以有效地降低该目标用户终端的计算量,以确保在该目标用户终端的计算性能比较一般的情况下,也可以快速对该弹幕数据进行跟踪。
其中,该有效时长可以为弹幕数据对应的显示时长,即该目标用户终端可以在该显示时长内对该目标对象所关联的弹幕数据进行跟踪。
应当理解,由于该目标视频内的每个像素点的运动轨迹(即每个像素点的轨迹信息)是由每个像素点在该目标视频的每个视频帧中的位置信息所确定的。其中,对于包含多个视频帧的目标视频而言,本发明实施例可以将该多个视频帧中任意相邻的两个视频帧确定为一个图像对。应当理解,从该多个视频帧中所确定出的每个图像对所包含的两个视频帧中的一个视频帧可以称之为第一视频帧,另一个视频帧可以称之为第二视频帧。对于上述图2所对应实施例中的第1时刻所对应的视频帧和第2时刻所对应的视频帧所构成的图像对1而言,可以将该图像对1中的第1时刻所对应的视频帧可以称之为第一视频帧,并可以将该第2时刻所对应的视频帧称之为第二视频帧,进而可以基于预先计算出的该图像对1中的这两个视频帧之间的平均位移矩阵对该第一视频帧中所有像素点进行追踪,以确定出该第一视频帧中的所有像素点出现在第二视频帧中的位置信息。同理,对于上述图2所对应实施例中的第2时刻所对应的视频帧和第3时刻所对应的视频帧所构成的图像对2而言,也可以将该第2时刻所对应的视频帧称之为第一视频帧,并将该第3时刻所对应的视频帧称之为第二视频帧,从而可以基于预先计算好的该图像对2中的这两个视频帧之间的平均位移矩阵对该第一视频帧中所有像素点进行追踪,以确定出该第一视频帧中的所有像素点出现在第二视频帧中的位置信息。以此类推,本发明实施例可以得到每个图像对对应的平均位移矩阵,每个图像对对应的平均位移矩阵可以称之为每个图像对中的第一视频帧对应的平均位移矩阵,每个第一视频帧对应的平均位移矩阵可以用于将第一视频帧中的所有像素点映射到第二视频帧中,以在第二视频帧中准确得到这些映射得到的像素点的位置信息。应当理解,本发明实施例中的平均位移矩阵可以包含纵向平均位移矩阵和横向平均位移矩阵,通过纵向平均位移矩阵可以将第一视频帧中的每个像素点的第一纵向坐标值(例如,y值)进行纵向坐标变换,以得到相应像素点映射到第二视频帧中的第二纵向坐标;同理,通过横向平均位移矩阵可以将第一视频帧中的每个像素点的第一横向坐标值(例如,x值)进行横向坐标变换,以得到相应像素点映射到第二视频帧中的第二横向坐标。应当理解,本发明实施例可以将每个像素点在第一视频帧中的第一横向坐标和第一纵向坐标值称之为该第一视频帧中的每个像素点的第一位置信息,并可以将每个像素点映射在第一视频帧中的第二横向坐标和第二纵向坐标值称之为该第二视频帧中的每个映射得到的像素点的第二位置信息。由于每个图像对均对应一个平均位移矩阵,从而可以基于在第一视频帧中像素点的第一位置信息计算得到相应的第二位置信息,并可以将计算所得到的每个第二视频帧中所映射得到的像素点的第二位置信息进行保留,进而可以将同一像素点在每个视频帧中的位置信息进行整合,以得到该视频帧中的所有像素点的运动轨迹,从而可以实现对该目标视频的所有视频帧内的所有像素点的跟踪。
应当理解,上述图2所对应实施例所显示的该目标视频中的多个视频可以为多个连续的图像帧,因此,通过将上述图2所示的目标视频进行拆分后,可以对每个拆分所得到的图像帧(即视频帧)按照播放顺序设置相应的视频帧号,例如,上述第1时刻所得到的视频帧的视频帧号可以为1,该视频帧号1则可以用于表示该第1时刻所得到的视频帧为该目标视频中的第一帧;同理,上述第2时刻所得到的视频帧的视频帧号可以为2,该视频帧号2则可以用于表示该第2时刻所得到的视频帧为该目标视频中的第二帧。依次类推,上述第n-1时刻所得到的视频帧的视频帧号可以为n-1,该视频帧号n-1则可以用于表示该第n-1时刻所得到的视频帧为该目标视频中的第n-1帧;上述第n时刻所得到的视频帧的视频帧号可以为n,该视频帧号n则可以用于表示该第n时刻所得到的视频帧为该目标视频中的第n帧,即该目标视频中的最后一帧。
为便于理解,本发明实施例可以将上述图2所示的多个视频帧的第一帧和第二帧所构成的图像对称之为首个图像对,以阐述通过平均位移矩阵将第一帧中的像素点平移变换到第二帧中实现像素跟踪的具体过程。其中,该首个图像对中的第一帧即为上述图2所对应实施例中的第1时刻对应的视频帧,该首个图像对中的第二帧即为上述图2所对应实施例中的第2时刻对应的视频帧。进一步地,请参见图6,是本发明实施例提供的一种全图像素追踪的示意图。如图6所示的图像对(1,2)可以为前述首个图像对。该首个图像对中的第一视频帧可以为前述第1时刻对应的视频帧(即第一帧),该首个图像对中的第二视频帧可以为前述第2时刻对应的视频帧(即第二帧)。其中,应当理解,该图像对(1,2)中的数值1即为第一帧的视频帧号,数值2即为第二帧的视频帧号,因此,可以用该目标视频中的每一个视频帧的视频帧号来表征该目标视频中的任意两个前后相邻的视频帧。如图6所示的像素点显示区域100a可以用于显示从该图像对的第一视频中所提取到的所有像素点,比如,该像素点显示区域100a中的每个像素点均可以对应一个区域标识。应当理解,本发明实施例仅以从该第一视频帧中所获取到的像素点为20个像素点为例,在实际情况下,从该第一视频帧中所获取到的像素点的数量会远远多于本发明实施例所列举的20个。应当理解,由于同一视频内的多个视频帧是由同一终端进行图像采集后所得到的,因此,对于同一视频内所包含的每个视频帧中的像素点的数量是相同的。
如图6所示,在获取到该第一视频帧中的每个像素点之后,可以将这些获取到的所有像素点统称为像素点,进而可以通过图6所示的平均位移矩阵对该显示点显示区域100a中的所有像素点进行跟踪,进而可以在第二视频帧对应的像素点显示区域200a中确定所映射得到的像素点的位置信息。比如,以图5所示的像素点A为例,该像素点A在图6所示的像素点显示区域100a中的位置信息可以为区域标识5的坐标位置信息,通过该平均位移矩阵可以将该像素点A映射到图6所示的像素点显示区域200a中,该像素点A在图6所示的像素点显示区域200a中的位置信息可以为区域标识10的坐标位置信息。本发明实施例在计算得到该像素点A在该第二视频帧中的位置信息之后,可以对其进行存储。由于该目标视频中的每个图像对均可以对应一个平均位移矩阵,因此,可以计算出每个第一视频帧中的像素点映射到第二视频帧中的位置信息。通过将每一个图像对中同一像素点出现在连续视频帧内的位置信息进行整合,可以得到该像素点A出现在该目标视频中的每个视频帧中的位置信息,进而可以基于该像素点A在该目标视频中的每个视频帧中的位置信息,得到该像素点A的运动轨迹。
同理,对于该视频帧中的所有像素点中的其他像素点而言,也可以通过每个图像对对应的平均位移矩阵(即每个图像对中的第一视频帧对应的平均位移矩阵)确定出其他像素点中的每个像素点在该目标视频的每个视频帧中的位置信息,进而可以得到其他像素点的运动轨迹,以实现对每个图像对中的第一视频帧中的所有像素点的全图像素追踪,进而可以得到该目标视频的所有像素点在每个视频帧中的位置信息。应当理解,本发明实施例可以将该目标视频中所有像素点对应的轨迹信息统称为像素点对应的轨迹信息。
其中,若该目标用户终端的计算性能难以满足跟踪大量像素点的计算要求时,为了减小该目标用户终端的计算量,可以通过与该目标用户终端具有网络连接关系的应用服务器预先计算好该目标视频内的所有像素点的运动轨迹,进而可以在该目标用户终端中预先计算好该目标视频内的所有像素点的运动轨迹,从而可以在该目标用户终端实际播放该目标视频时,接收目标用户终端所发送的目标像素点在关键视频帧中的位置信息,从预先计算好的像素点对应的轨迹信息中筛选与该目标像素点匹配的轨迹信息作为目标轨迹信息,进而将该目标轨迹信息返回给目标用户终端,以使目标用户终端可以基于该获取到的目标轨迹信息进一步执行步骤S104。其中,该目标像素点为目标用户所选取的关键视频帧内的目标对象中的像素点。
可选地,若该目标用户终端具有良好的计算性能,则可以在该目标用户终端中预先计算好该目标视频内的所有像素点的运动轨迹,从而可以在该目标用户终端实际播放该目标视频时,进一步基于目标用户所选取的目标对象内的目标像素点在这些像素点对应的轨迹信息中筛选与该目标像素点匹配的轨迹信息作为目标轨迹信息,以便于可以进一步执行步骤S104。
步骤S104,当播放所述关键视频帧的下一视频帧时,基于所述目标轨迹信息中的所述目标像素点在所述关键视频帧的下一视频帧中的位置信息显示所述多媒体信息。
为便于理解,进一步地,请参见图7,是本发明实施例提供的一种在连续多个视频帧中跟踪弹幕数据的示意图。应当理解,本发明实施例中用于进行弹幕跟踪的连续多个视频帧可以包含当前正在播放的关键视频帧,以及尚未播放的位于该目标视频内的关键视频帧之后的视频帧。比如,当如图7所示的视频帧10作为关键视频帧时,可以在该关键视频帧后的每个视频帧(例如,视频帧20、视频帧30等视频帧)中对出现在视频帧10中的弹幕数据进行弹幕跟踪。其中,图7所示的视频帧10可以为上述5所对应实施例中的显示在视频播放界面300a中的视频帧,即图7所示的视频帧10可以为当前正在目标用户终端中播放的目标视频中与该目标用户相关联的关键视频帧,换言之,本发明实施例中的关键视频帧可以理解为目标用户选取目标对象时所执行的触发操作对应的视频帧。应当理解,本发明实施例中的目标对象可以包含目标用户在正在播放的视频帧通过点击操作所选取的人物、动物、植物等对象,换言之,该目标用户终端可以将该目标用户所选取的对象称之为目标对象,并可以在该关键视频帧中将目标对象内与触发操作对应的像素点称之为目标像素点,进而可以从应用服务器预先计算好的该目标视频内的所有像素点的轨迹信息中获取与该目标对象中目标像素点相关联的轨迹信息,从而可以将获取到的轨迹信息称之为该目标像素点对应的目标轨迹信息。该目标轨迹信息中可以包含该目标像素点在该关键视频帧中的位置信息,还可以包含该目标像素点在该关键视频帧之后的每个视频帧(例如,该关键视频帧的下一视频帧)中的位置信息。应当理解,基于该目标像素点在该关键视频帧后的每个视频帧中的位置信息,可以快速计算得到与目标对象关联的多媒体信息(即上述图5所对应实施例中的弹幕数据)在该关键视频帧后的每个视频帧中的位置信息,以实现对该目标对象相关联的弹幕数据的快速跟踪,从而可以在该目标用户终端播放该关键视频帧的下一视频帧时基于计算得到该弹幕数据在该关键视频帧中的位置信息实时显示该弹幕数据。
应当理解,本发明实施例通过将弹幕数据与该关键视频帧中的目标对象进行关联,可以实现弹幕数据与该目标对象之间的如影随行,即用户所输入的弹幕可以在有效跟踪时长内一直跟着这个要跟踪的目标对象进行相对运动。比如,在该目标视频内,若该关键视频帧后的连续多个视频帧中均存在目标对象,则可以基于该目标对象中的目标像素点在这几个连续视频帧中的位置信息,显示与该目标对象相关联的弹幕数据(即前述文本信息A)。
应当理解,对于在目标用户终端中播放的任意一个视频而言,目标用户可以在当前时刻为T1时刻时,从当前播放的视频帧中选择出该目标用户认为需要进行跟踪的对象,并可以将该选择的对象称之为目标对象,进而可以基于从预先计算好的该视频内的所有像素点对应的轨迹信息筛选出与该目标对象中的目标像素点相关联的轨迹信息,快速得到该目标对象中的目标像素点对应的目标轨迹信息。其中,应当理解,预先计算好的该视频内的每个像素点的任意一个像素点对应的轨迹信息,均可以用于描述该像素点在该视频内的每个视频帧中的位置信息。因此,当目标用户终端将在T1时刻播放的视频帧称之为关键视频帧时,可以在该关键视频帧内得到该目标对象中的目标像素点,进而可以从该目标像素点对应的目标轨迹信息中快速得到该目标像素点像素点在该关键视频帧后的每个视频帧中的位置信息,从而可以基于该目标轨迹信息显示该目标对象所关联的多媒体信息。其中,可以理解的是,若目标像素点在每个视频帧中所构成的轨迹信息为一个圆,则与该目标对象相关联的多媒体信息则可以同步跟着该轨迹信息转圈,由此可以,通过预先对该目标视频内的所有像素点进行跟踪,可以预先得到每个像素点对应的轨迹信息,从而可以在目标用户终端中播放该目标视频时,可以基于目标用户所执行的触发操作,将触发操作所对应的目标对象中的像素点作为目标像素点,以获取与该目标像素点相关联的轨迹信息作为目标轨迹信息,进而可以快速基于该获取到的目标轨迹信息,快速实现对该目标对象所关联的多媒体信息的准确跟踪。
那么,对于在该关键视频帧中的不同对象而言,可以得到不同对象中的目标像素点分别对应的运动轨迹,从而使得与不同目标对象相关联的弹幕数据可以绕着不同的轨迹进行运动,进而可以丰富弹幕数据的视觉展示效果,还可以提升弹幕数据的显示方式的灵活度。
本发明实施例可以在获取到目标用户针对目标视频的触发操作时,将该目标视频中该触发操作对应的视频帧称之为关键视频帧,从而可以从该关键视频帧中确定目标对象,并获取该目标对象关联的多媒体信息(例如,该多媒体信息可以为该目标视频中的用户文字、图片、表情等弹幕数据);进一步地,基于该目标对象中的目标像素点在该关键视频帧中的位置信息确定所述目标像素点对应的轨迹获取请求,进而可以基于该轨迹获取请求获取所述目标像素点在所述关键视频帧中的位置信息相关联的目标轨迹信息,以便于在播放该关键视频帧的下一视频帧时,能够基于该目标轨迹信息显示与该目标对象相关联的弹幕数据;由此可见,本发明实施例可以在确定出关键视频帧时,进一步从该关键视频帧中的所有像素点的轨迹信息中筛选出目标像素点的轨迹信息,并将筛选出的目标像素点的轨迹信息称之为目标轨迹信息,以便于能够基于得到的目标轨迹信息丰富弹幕数据的展示效果,比如,对于不同目标对象中的目标像素点,所得到的目标轨迹信息可能会不同,进而使得弹幕数据的展示效果会不同。此外,基于目标对象与弹幕数据之间的关联关系,可以快速确定出该弹幕数据在该关键视频帧之后的每个视频帧中的位置信息,换言之,该弹幕数据会在该目标视频中一直跟着该目标对象进行变动,进而可以丰富视频中的用户文字的视觉展示效果。
为便于理解,进一步地,请参见图8,是本发明实施例另一种视频数据处理方法的示意图。该方法主要用于阐述目标用户终端与应用服务器之间的数据交互过程,该方法可以包含以下步骤:
步骤S201,从目标视频中获取相邻的第一视频帧和第二视频帧;
具体地,应用服务器可以从目标视频所包含的多个视频中确定多个图像对,该多个图像对中的每个图像对均是由该目标视频中的两个相邻的视频帧所构成的。
换言之,应用服务器可以在对该目标视频进行视频预处理的阶段中,先把该目标视频进行分帧处理,以将该目标视频中的多个视频帧按照播放时间序列分成一张张的图片,即可以得到上述图2所示的基于播放时间序列进行排布的多个视频帧,通过对该目标视频中的每个视频帧进行拆分,可以得到每个视频帧对应的图片,即一个图像可以视为一个图像帧。进一步地,该应用服务器可以通过前向后向光流法对每个图像对中的两个视频帧内的像素点进行像素追踪。比如,以包含n个视频帧的目标视频而言,该应用服务器可以根据该目标视频内的每个视频帧的视频帧号,将具有相邻帧号的两个视频帧确定为一个图像对。换言之,该应用服务器可以将视频帧号为1的视频帧和视频帧号为2的视频帧确定为一个图像对。同理,该该应用服务器可以将视频帧号为2的视频帧和视频帧号为3的视频帧确定为一个图像对。以此类推,该应用服务器可以将视频帧号为n-1的视频帧和视频帧号为n的视频帧确定为一个图像对。
对于该目标视频内的每个图像对而言,可以用每个视频帧的视频帧帧号来描述相应图像对中的两个视频帧。因此,对于前述包含n个视频帧的目标视频而言,可以得到n-1个图像对,这n-1个图像对可以表示为:(1,2),(2,3),(3,4),…,(n-1,n)。其中,图像对中的视频帧号为1的视频帧可以称之为该目标视频的第一帧,视频帧号为2的视频帧可以称之为该目标视频的第二帧,以此类推,可以将图像对中的视频帧号为n-1的视频帧可以称之为该目标视频的第n-1帧,视频帧号为n的视频帧可以称之为该目标视频的第n帧。进一步地,该应用服务器可以通过云端前向后向光流法对该目标视频的每个图像对中的像素点进行跟踪。其中,该云端前向后向光流法可以统称为光流法,该光流法可以用于对每个图像对中的两个视频帧之间的位移进行计算。
可以理解的是,由于每个图像对均是由前后相邻的两个视频帧所构成的,因此,可以将每个图像对中的一个视频帧称之为第一视频帧,并将每个图像对中的另一个视频帧称之为第二视频帧,以便于可以进一步执行步骤S202。
其中,为便于理解,本发明实施例可以将从目标视频中所获取到的每个图像对中的两个视频帧统称为第一视频帧和第二视频帧,即该应用服务器可以从目标视频中获取相邻的第一视频帧和第二视频帧。
步骤S202,基于所述目标视频对应的光流追踪规则、所述第一视频帧中的像素点、所述第二视频帧中的像素点,确定所述第一视频帧对应的平均位移矩阵。
具体地,应用服务器可以对第一视频帧的所有像素点进行提取,并可以将提取到的所有像素点统称为像素点。其中,该目标视频对应的光流追踪规则可以包含前述云端前向后向光流法,还可以包含云端位移积分法和云端位移差分法。应当理解,通过该光流追踪规则可以对每个图像对中的第一视频帧中的像素点、第二视频帧中的像素点进行光流运算,以得到每个图像对对应的光流追踪结果,进而可以基于该光流追踪结果确定每个图像对对应的目标状态矩阵和目标位移矩阵;此外,通过该光流追踪规则还可以进一步对每个图像对对应的目标状态矩阵和目标位移矩阵进行位移积分运算,以得到每个图像对对应的状态积分矩阵和位移积分矩阵;进一步地,通过该光流追踪规则还可以对每个图像对对应的状态积分矩阵和位移积分矩阵进行位移差分运算,以得到每个图像对对应的平均位移矩阵。换言之,通过该光流追踪规则可以准确得到能够用于对每个图像对中的第一视频帧中的像素点的位置信息进行准确跟踪的平均位移矩阵。
其中,云端前向后向光流法可以用于同步对每个图像对中的第一视频帧和第二视频帧进行正向反向光流法计算,以得到每个图像对对应的光流追踪结果。换言之,应用服务器所得到的光流追踪结果可以包含每个图像对中的第一视频帧对应的正向位移矩阵,还可以包含每个图像对中的第二视频帧对应的反向位移矩阵。在本发明实施例中,正向位移矩阵和反向位移矩阵的中的每个矩阵元素均可以包含两个维度上的位移(比如,(Δx,Δy))。其中,这两个维度上的位移可以理解为同一像素点分别在水平方向上的位移(即Δx)和竖直方向上的位移(即Δy)。应当理解,对于该目标视频中的每个图像对而言,通过该光流法进行计算后均可以得到一个正向水平方向位移矩阵、一个正向垂直方向位移矩阵、一个反向水平方向位移矩阵、一个反向垂直方向位移矩阵,并可以将得到的四个矩阵称之为光流结果。进一步地,应用服务器可以为每个图像对中的第一视频帧设置一个初始状态矩阵,进而可以根据前面所得到的正向位移矩阵和反向位移矩阵判断每个图像对中的第一视频帧中的像素点是否满足目标筛选条件,若是第一视频帧中存在满足目标筛选条件的像素点,则可以将满足目标筛选条件的像素点确定为有效像素点,进而可以根据确定出的有效像素点对所述第一视频帧对应的初始状态矩阵和所述正向位移矩阵进行修正,以得到每个图像对中的第一视频帧对应的目标状态矩阵和目标位移矩阵。进一步地,应用服务器可以通过上述云端位移积分法和云端位移差分法。以及所得到的目标状态矩阵和目标位移矩阵,确定得到每个图像对中的第一视频帧对应的平均位移矩阵。
其中,本发明实施例可以将该正向水平方向位移矩阵和正向垂直方向位移矩阵统称为正向位移矩阵,并可以将反向水平方向位移矩阵、反向垂直方向位移矩阵统称为反向位移矩阵。为便于理解,本发明实施例以多个图像对中的一个图像对为例,以阐述通过该图像对中的第一视频帧和第二视频帧得到该图像对对应的平均位移矩阵的过程。其中,该图像对中的第一视频帧可以为上述视频帧号为1的视频帧,第二视频帧可以为上述视频帧号为2的视频帧。因此,由该视频帧号为1的视频帧和视频帧号为2的视频帧所构成的图像对称之为图像对1,且该图像对1可以表示为(1,2)。
其中,通过光流法计算后所得到的该图像对1对应的正向位移矩阵可以包含正向水平位移矩阵(例如,该正向水平位移矩阵可以为矩阵Q1,2,x)和正向垂直位移矩阵(例如,该正向垂直位移矩阵可以为矩阵Q1,2,y)。其中,应当理解,矩阵Q1,2,x中的每个矩阵元素可以理解为第一视频帧中的像素点在第二视频帧中的水平方向上的位移,即该正向水平位移矩阵中的每个矩阵元素可以称之为第一视频帧中的像素点对应的第一横向位移。同理,矩阵Q1,2,y中的每个矩阵元素可以理解为第一视频帧中的像素点在第二视频帧中的垂直方向上的位移,即该正向水平位移矩阵中的每个矩阵元素可以称之为第一视频帧中的像素点对应的第一纵向位移。换言之,通过光流计算法所得到的这两个矩阵(即矩阵Q1,2,x和矩阵Q1,2,x)的矩阵大小与第一视频帧的大小一样,即一个矩阵元素可以对应第一视频帧中的一个像素点。
同理,通过光流法计算后所得到的该图像对1对应的反向位移矩阵可以包含反向水平位移矩阵(即该反向水平位移矩阵可以为矩阵Q2,1,x),和反向垂直位移矩阵(即该反向垂直位移矩阵可以为矩阵Q2,1,y)。其中,应当理解,矩阵Q2,1,x中的每个矩阵元素可以理解为第二视频帧中的像素点在第一视频帧中的水平方向上的位移,即该反向水平位移矩阵中的每个矩阵元素可以称之为第二视频帧中的像素点对应的第二横向位移。同理,矩阵Q2,1,y中的每个矩阵元素可以理解为第二视频帧中的像素点在第一视频帧中的垂直方向上的位移,即该反向垂直位移矩阵中的每个矩阵元素可以称之为第二视频帧中的像素点对应的第二纵向位移。换言之,通过光流计算法所得到的这两个矩阵(即矩阵Q2,1,x和矩阵Q2,1,y)的矩阵大小与第二视频帧的大小一样,即一个矩阵元素可以对应第二视频帧中的一个像素点。
应当理解,对于目标视频内的每个视频帧而言,每个视频帧中的像素点的数量是相同的,因此,通过光流计算法所得到的与该图像对1对应的这四个矩阵(即矩阵Q1,2,x、矩阵Q1,2,x、矩阵Q2,1,x、矩阵Q2,1,y)的矩阵大小是相同的。比如,若每个视频帧中的像素点数为m×n个,则所得到的这四个矩阵的矩阵大小均可以为m×n。由此可见,正向水平位移矩阵和正向垂直位移矩阵中的每个矩阵元素均能够与第一视频帧中的相应像素点进行对应。因此,该图像对1对应的正向位移矩阵中的每个矩阵元素可以表示第一视频帧中的像素点在第二视频帧中的两个维度上的位移,并可以将该图像对1对应的正向位移矩阵统称为第一视频帧对应的正向位移矩阵。同理,图像对1对应的反向位移矩阵中的每个矩阵元素可以表示第二视频帧中的像素点在第一视频帧中的两个维度上的位移,并可以将该图像对1对应的反向位移矩阵统称为第二视频帧对应的正向位移矩阵。
由此可见,应用服务器可以基于所述第一视频帧中的像素点的第一位置信息和所述光流追踪规则,将所述第一视频帧中的像素点正向映射到所述第二视频帧,并在所述第二视频帧中确定所映射得到的第一映射点的第二位置信息,并可以进一步基于所述像素点的第一位置信息、所述第一映射点的第二位置信息确定所述第一视频帧对应的正向位移矩阵;进一步地,应用服务器可以基于所述第二视频帧中的像素点的的第二位置信息和所述光流追踪规则,将所述第二视频帧中的像素点反向映射到所述第一视频帧,并在所述第一视频帧中确定所映射得到第二映射点的第三位置信息,并进一步基于所述第一映射点的第二位置信息、所述第二映射点的第三位置信息确定所述第二视频帧对应的反向位移矩阵。其中,所述第一映射点和第二映射点均为通过光流法将图像对中的一个视频帧中的像素点映射到另一个视频帧中所得到的像素点。
进一步地,应用服务器可以基于所述第一视频帧中的像素点的第一位置信息、所述正向位移矩阵、所述反向位移矩阵,将所述像素点中满足目标筛选条件的像素点确定为有效像素点。其中,该应用服务器确定有效像素点的具体过程可以描述为:
应用服务器可以从所述第一视频帧中的像素点中获取第一像素点,并在所述第一视频帧中确定所述第一像素点的第一位置信息,并从所述正向位移矩阵中确定所述第一像素点对应的第一横向位移和第一纵向位移;进一步地,应用服务器可以基于所述第一像素点的第一位置信息、所述第一像素点对应的第一横向位移和第一纵向位移,将所述第一像素点正向映射到所述第二视频帧,并在所述第二视频帧中确定所映射得到的第二像素点的第二位置信息;进一步地,应用服务器可以从所述反向位移矩阵中确定所述第二像素点对应的第二横向位移和第二纵向位移,并基于所述第二像素点的第二位置信息、所述第二像素点对应的第二横向位移和第二纵向位移,将所述第二像素点反向映射到所述第一视频帧,并在所述第一视频帧中确定所映射得到的第三像素点的第三位置信息;进一步地,应用服务器可以基于所述第一像素点的第一位置信息、所述第三像素点的第三位置信息,确定所述第一像素点与所述第三像素点之间的误差距离,并根据所述第一像素点的第一位置信息、所述第二像素点的第二位置信息,确定包含第一像素点的图像块与包含所述第二像素点的图像块之间的相关系数;进一步地,应用服务器可以将所述像素点中误差距离小于误差距离阈值、且所述相关系数大于相关系数阈值的像素点确定为有效像素点。
为了验证通过上述得到的光流跟踪结果中的正向位移矩阵和反向位移矩阵中的矩阵元素的正确性,本发明实施例可以通过矩阵变换的方式对上述四个位移矩阵中的矩阵元素进行筛选,即可以通过所构建的初始状态矩阵中的相应像素点所在位置上的矩阵元素的变化情况,从这四个矩阵中去除相应像素点对应位置上的、存在较大位移误差的矩阵元素,即可以从第一视频帧的像素点中确定出有效像素点。
为便于理解,进一步地,请参见图9,是本发明实施例提供的一种确定有效像素点的方法。如图9所示,该应用服务器在对这四个矩阵中的矩阵元素进行筛选之前,可以首先初始化一个与该第一视频具有相同大小的状态矩阵S1,此时,该应用服务器可以将该状态矩阵S1称之为初始状态矩阵。其中,该初始状态矩阵中与各像素点对应的矩阵元素的值可以称之为第一数值,此时,该初始状态矩阵中的第一数值均为零,该初始状态矩阵中的矩阵元素的值的变化情况可以用来表示第一视频帧中的像素点是否满足目标筛选条件,从而可以将满足目标筛选条件的像素点称之为有效跟踪像素点(即有效像素点)。
其中,如图9所示的第一图像帧可以为上述图像对1中的视频帧号为1的视频帧。该第一视频帧中的像素点中可以包含如图9所示的第一像素点p1,即该第一像素点p1可以为该第一视频帧的所有像素点中的一个像素点,并可以在图9所示的第一视频帧中将该第一像素点p1的位置信息称之为第一位置信息。进一步地,应用服务器可以从上述正向位移矩阵中的正向水平位移矩阵中找到该第一像素点p1对应的第一横向位移,并从上述正向位移矩阵中的正向垂直位移矩阵中找到该第一像素点p1对应的第一纵向位移,进而可以基于该第一像素点p1的第一位置信息、该第一像素点p1对应的第一横向位移和第一纵向位移,将该第一像素点p1正向映射到图9所示的第二视频帧,并在第二视频帧中确定出所映射得到的第二像素点p2的第二位置信息。可以理解的是,此时,该第二像素点p2是通过将第一像素点p1进行矩阵变换后所得到的像素点。进一步地,该应用服务器可以从上述反向位移矩阵中确定该第二像素点p2对应的第二横向位移和第二纵向位移,并可以根据该第二像素点p2的第二位置信息、该第二像素点p2对应的第二横向位移和第二纵向位移,将该第二像素点p2反向映射回图9所示的第一视频帧,并可以在该第一视频帧中确定所映射得到的第三像素点p1’的第三位置信息。可以理解的是,此时,该第三像素点p1’是通过将由第一像素点p1映射所得到的第二像素点p2进行矩阵变换后所得到的像素点。
进一步地,该应用服务器可以在第一视频帧中,对第一像素点p1的第一位置信息和矩阵变换后所得到的第三像素点p1’的第三位置信息,确定出这两个位置之间的位置误差t11’。进一步地,应用服务器可以在图9所示的第一视频帧中以第一像素点p1的第一位置信息为中心,选取一个k*k(例如,8*8)大小的图像块10,另外,如图9所示,应用服务器可以在图9所示的第二视频帧中以第二像素点p2的第二位置信息为中心,同样选取一个k*k大小的图像块20,进而可以计算这两个图像块之间的相关系数(该相关系数可以为N1,2)。
其中,相关系数N1,2的计算表达式如下:
在公式(1)中的patch1(a,b)可以表示图9所示的图像块10的第a行b列位置上的像素点的像素值。E(patch1)表示图9所示的图块10的平均像素值。patch2(a,b)表示图9所示的图像块20的第a行b列位置上的像素点的像素值。E(patch2)表示图9所示的图像块20的平均像素值。
其中,可以理解的是,本发明实施例在计算得到图9所示的第一像素点p1和第三像素点p1’之间的误差距离之后,可以将该计算得到的误差距离与预设的误差距离进行比较,如果t11'<TB且N1,2>=TA(其中,TB为设定的误差距离阈值,TA为设定的相关系数阈值),则表示该第一视频帧中的第一像素点p1满足前述目标筛选条件,从而可以确定该第一像素点p1是有效像素点。
进一步地,该应用服务器可以将与该第一像素点p1对应的初始状态矩阵S1中对应位置上的矩阵元素的值设置为第二数值,即可以将该初始状态矩阵S1中与第一像素点p1对应的元素的值由0切换为1,以表示第一视频帧中的第一像素点p1为有效像素点。反之,如果t11'>=TB且N1,2<TA,则表示该第一视频帧中的第一像素点p1不满足前述目标筛选条件,此时,该应用服务器可以判断上述图9所示的第一像素点p1为无效跟踪像素点,即在该初始状态矩阵S1中与第一像素点p1对应的元素的值仍然为0。与此同时,该应用服务器可以进一步对上述正向位移矩阵(即上述矩阵Q1,2,x和矩阵Q1,2,y)中与该第一像素点p1对应位置上的矩阵元素的值设置为0,从而可以将该包含所述第一数值的正向位移矩阵确定为目标位移矩阵(例如,正向水平位移矩阵Qx1和正向水平位移矩阵Qy1),即该目标位移矩阵中的这些位置上的矩阵元素可以用于表示从上述正向位移矩阵中所筛选出、并过滤掉存在较大误差的误跟踪位移之后所确定的矩阵。
可以理解的是,对于上述图9所示的其他像素点而言,可以依次从图9所示的第一视频帧中选取一个像素点作为第一像素点,以重复上面确定有效像素点的步骤,直到该第一视频帧中的所有像素点都作为第一像素点之后,可以确定出该第一视频帧中的所有有效像素点,从而可以基于该有效像素点在该初始状态矩阵中的位置信息对该初始状态矩阵中的矩阵元素进行更新,进而可以将包含第二数值的初始状态矩阵确定为所述第一视频帧对应的目标状态矩阵S1。并可以得到该第一视频帧对应的目标位移矩阵(即目标水平位移矩阵Qx,1和目标水平位移矩阵Qy,1)。同理,对于多个图像对中的其他图像对而言,通过重复上面从图像对1中确定有效像素点的步骤,也可以得到剩余图像对中的每一个图像对中的第一视频帧对应的目标状态矩阵,目标位置矩阵。比如,以目标视频内的视频帧号分别为1、2、3、4、···、n的连续多个视频帧为例,则组成的多个图像对可以分别表示为(1,2)、(2,3)、(3,4)、···、(n-1,n)。那么,根据每个图像对对应的光流追踪结果而言,可以通过上述有效像素点的判断方式最后得到图像对(1,2)对应的目标状态矩阵S1和图像对(1,2)对应的目标位移矩阵Q1(即前述目标水平位移矩阵Qx,1和目标水平位移矩阵Qy,1)。依次类推,可以得到图像对(n-1,n)对应的目标状态矩阵Sn-1和图像对(1,2)对应的目标位移矩阵Qn-1(即前述目标水平位移矩阵Qx,n-1和目标水平位移矩阵Qy,n-1)。
进一步地,应用服务器可以通过云端位移积分法对上述图像对1对应的目标状态矩阵S1和所述目标位移矩阵Q1进行积分运算,以得到该第一视频帧中的像素点对应的状态积分矩阵Sin(x,y)和位移积分矩阵Qin(x,y)。其中,位移积分矩阵Qin(x,y)可以包含横向位移积分矩阵Qx,in(x,y)和纵向位移积分矩阵Qy,in(x,y)。且该状态积分矩阵Sin(x,y)、横向位移积分矩阵Qx,in(x,y)和纵向位移积分矩阵Qy,in(x,y)可以通过如下矩阵积分公式得到:
在公式(2)、公式(3)、公式(4)中的x和y可以用于表示与第一视频帧对应的状态积分矩阵、位移积分矩阵中的所有矩阵元素的坐标,比如Sin(x,y)可以表示状态积分矩阵的第x行y列的矩阵元素的值。另外,在公式(2)、公式(3)、公式(4)中的x’和y’可以表示目标状态矩阵和目标位移矩阵中的矩阵元素的坐标,比如S(x’,y’)可以表示目标状态矩阵的第x’行y’列的矩阵元素的值。
进一步地,应用服务器可以通过云端位移差分方法,在第一视频帧中选取一个高度为M和宽度为N的目标框,进而可以在该目标框内进一步对由公式(2)、公式(3)、公式(4)所得到的这三个积分矩阵进行位移差分运算,以分别得到状态差分矩阵Sdif(x,y)和位移差分矩阵Qdif(x,y)。其中,位移差分矩阵Qdif(x,y)可以包含横向位移差分矩阵Qx,dif(x,y)和纵向位移积分矩阵Qy,dif(x,y)。该状态积分矩阵Sdif(x,y)、横向位移差分矩阵Qx,dif(x,y)和纵向位移积分矩阵Qy,dif(x,y)可以通过如下矩阵差分公式(5)得到。
其中,可以理解的是,本发明实施例可以将该第一视频帧中该目标框所在的区域称之为差分区域,从而可以基于该差分区域的尺寸信息,状态积分矩阵、横向位移积分矩阵和纵向位移积分矩阵,确定所述第一视频帧对应的平均位移矩阵。其中,即该位移差分运算公式中的M和N即为该差分区域的长度值和宽度值。其中,该位移差分运算公式中的x和y分别为第一视频帧中的每个像素点的位置信息。通过该位移差分运算公式,可以快速得到该该差分区域内的所有像素点的平均值,比如,对于状态积分矩阵而言,可以得到该状态积分矩阵Sin(x,y)对应的状态差分矩阵Sdif(x,y)。而对于横向位移积分矩阵Qx,in(x,y)和纵向位移积分矩阵Qy,in(x,y)而言,可以得到横向位移差分矩阵Qx,dif(x,y)和纵向位移差分矩阵Qy,dif(x,y)。
进一步地,该应用服务器可以将横向位移差分矩阵Qx,dif(x,y)与所述状态差分矩阵Sdif(x,y)之间的比值确定为横向平均位移矩阵Qy,F(x,y),并将所述纵向位移差分矩阵Qy,in(x,y)与所述状态差分矩阵Sdif(x,y)之间的比值确定为纵向平均位移矩阵Qy,F(x,y)。
在公式(6)和公式(7)中的e用于表示一个人为设定的比较小的数字,比如0.001,即在公式(6)和公式(7)中的e是为了避免当状态差分矩阵Sdif(x,y)中的所有矩阵元素的值为0时,从而可以避免直接除以0,进而可以进一步执行步骤S203,以在该目标用户终端中预先计算出该第一视频帧中的像素点出现在第二视频帧中的位置信息。
步骤S203,基于所述平均位移矩阵对所述第一视频帧中的像素点的位置信息进行跟踪,并在所述第二视频帧中确定所跟踪得到的像素点的位置信息;
具体地,应用服务器可以基于前述步骤S203所得到的平均位移矩阵(该平均位移矩阵可以包含横向平均位移矩阵Qx,F(x,y)和纵向平均位移矩阵Qy,F(x,y)),因此,当该应用服务器计算得到该第一视频帧对应的平均位移矩阵时,可以进一步对该第一视频帧中的像素点出现在下一视频帧(即上述图像对1中的第二视频帧)中的位置信息进行快速、且准确地跟踪,即通过进行位移变换,可以在所述第二视频帧中确定出对该第一视频帧中的像素点进行跟踪所得到的像素点的位置信息。
Cx(x,y)=x+Qx,F(x,y) 公式(8)
Cy(x,y)=y+Qy,F(x,y) 公式(9)
其中,公式(8)中的x为该第一视频帧中的像素点的横向位置坐标,Qx,F(x,y)为该第一视频帧对应的横向平均位移矩阵,通过该公式(8)可以将第一视频帧中的像素点的横向位置坐标进行坐标变换,以得到该第一视频帧中的像素点的下一视频帧中的横向位置坐标;同理,公式(9)中的y为该第一视频帧中的像素点的纵向位置坐标,Qx,y(x,y)为该第一视频帧对应的纵向平均位移矩阵,通过该公式(9)可以将第一视频帧中的像素点的纵向位置坐标进行坐标变换,以得到该第一视频帧中的像素点的下一视频帧中的纵向位置坐标。
可以理解的是,对于每个图像对而言,通过每个图像对中的第一视频帧对应的平均位移矩阵,都可以将相应图像对中的第一视频帧中的像素点进行快速追踪,从而可以在相应图像对中的第二视频帧中确定所追踪得到的像素点的位置坐标,即可以在每个图像对的第二视频帧中确定所跟踪得到的像素点的位置信息。该应用服务器可以进一步对将每个图像对中所跟踪得到的像素点的位置信息进行存储,以便于可以进一步执行步骤S204。
步骤S204,基于所述第一视频帧中的像素点的位置信息、所述跟踪得到的像素点在所述第二视频帧中的位置信息,生成所述目标视频相关联的轨迹信息;
其中,所述轨迹信息中包含用于对目标视频中的目标对象所关联的多媒体信息进行跟踪显示的目标轨迹信息。
步骤S205,响应针对目标视频的触发操作,从所述目标视频的关键视频帧中确定目标对象,并获取与所述目标对象相关联的多媒体信息;
步骤S206,基于所述目标对象中的目标像素点在所述关键视频帧中的位置信息,确定所述目标像素点对应的轨迹获取请求;
其中,步骤S205和步骤S206的具体实现方式可以参见上述图4所对应实施例中对目标用户终端的描述,这里将不再继续进行赘述。
步骤S207,响应针对关键视频帧中的目标像素点的轨迹获取请求,获取与目标视频相关联的轨迹信息;
具体地,应用服务器可以接收目标用户终端基于关键视频帧中的目标像素点发送的轨迹获取请求,并可以进一步获取上述应用服务器所预先计算得到的与该目标视频中的所有像素点相关联的轨迹信息,以便于进一步执行步骤S208。
步骤S208,从所述目标视频相关联的轨迹信息中,筛选与所述目标像素点在所述关键视频帧中的位置信息相关联的目标轨迹信息,并返回所述目标轨迹信息;
具体地,应用服务器可以从该轨迹获取请求中得到该关键视频帧在目标视频中的视频帧号和目标像素点在该关键视频帧中的位置信息,从而可以进一步从该应用服务器预先得到的与该目标视频相关联的轨迹信息中筛选出与该目标像素点相关联的轨迹信息,并可以将筛选得到的轨迹信息称之为目标轨迹信息,从而可以进一步将该目标轨迹信息返回给目标用户终端,以使该目标用户终端可以基于该关键视频帧的帧号,快速从该接收到的目标轨迹信息中找出目标像素点出现在该关键视频帧的下一视频中的位置信息,直到得到该目标像素点出现在该关键视频帧后的每个视频帧中的位置信息,此时,该目标用户终端可以将该目标像素点出现在该关键视频帧后的每个视频帧中的位置信息所构成的新的轨迹信息。可选地,应当理解,该应用服务器在得到该关键视频帧的帧号时,可以快速从该筛选出的轨迹信息中找出目标像素点出现在该关键视频帧的下一视频中的位置信息,直到得到该目标像素点出现在该关键视频帧后的每个视频帧中的位置信息,此时,该应用服务器可以将该目标像素点出现在该关键视频帧后的每个视频帧中的位置信息所构成的新的轨迹信息称之为目标轨迹信息。
其中,可以理解的是,若目标用户终端的计算性能无法满足对象跟踪需求,则该目标用户终端可以在生成该目标像素点对应的轨迹获取请求时,可以将该轨迹获取请求发送至应用服务器,以使应用服务器可以基于所述轨迹获取请求获取与所述目标像素点在所述关键视频帧中的位置信息相关联的目标轨迹信息,并可以将获取到的目标轨迹信息返回给该目标用户终端;
可选地,若目标用户终端的计算性能能够满足对象跟踪需求,则该目标用户终端可以在该目标用户终端中执行上述步骤S201-步骤S204,以在该目标用户终端中预先对该目标视频内的所有像素点的进行全图像素跟踪,以预先得到该目标视频内的所有像素点在每个视频帧中的位置信息,进而可以对该目标视频内的每个像素点在每个视频帧中的位置信息进行位置整合,以得到该目标视频内的每个像素点对应的轨迹信息。此时,该目标用户终端可以直接基于所述目标对象中的目标像素点在所述关键视频帧中的位置信息,在该目标用户终端中获取与该目标像素点在所述关键视频帧中的位置信息相关联的目标轨迹信息,以便于可以进一步执行步骤S209。
其中,所述目标轨迹信息包含所述目标像素点在所述关键视频帧的下一视频帧中的位置信息;所述关键视频帧的下一视频帧中的位置信息是通过跟踪所述目标对象得到的。
比如,以当前正在播放的视频(即目标视频)所包含的多个连续视频帧为以下6个视频帧为例,这6个视频帧可以为视频帧a、视频帧b、视频帧c、视频帧d、视频帧e、视频帧f。因此,应用服务器在视频预处理阶段,可以预先对该目标视频内的每个视频帧进行预处理,即可以基于上述光流追踪规则确定该目标视频内的每两个相邻视频帧所构成的图像对对应的平均位移矩阵,进而可以根据每个图像对对应的平均位移矩阵(也可以称之为根据每个图像对中第一视频帧对应的平均位移矩阵)对该第一视频帧中的所有像素点进行跟踪,以得到该第一视频帧中的所有像素点出现在第二视频帧中的位置信息,进而可以得到该目标视频的所有像素点在每个视频帧(即可以得到该目标视频的所有像素点在上述视频帧a、视频帧b、视频帧c、视频帧d、视频帧e、视频帧f)中的位置信息,即可以基于该目标视频的所有像素点在每个视频帧中的位置信息,得到该目标视频的所有像素点对应的轨迹信息,并可以将该目标视频的所有像素点对应的轨迹信息称之为与该目标视频相关联的轨迹信息。
又比如,应用服务器在对该目标视频进行预处理时,该应用服务器可以预先计算得到的该目标视频中的像素点A(例如,该像素点A可以为该该目标视频中的所有像素点中的一个像素点)对应的轨迹信息,若该像素点A对应的轨迹信息中包含该像素点A在该目标视频的每个视频帧(即在上述视频帧a、视频帧b、视频帧c、视频帧d、视频帧e、视频帧f)中的位置信息,则在目标用户终端中的目标像素点对应的关键视频帧为该目标视频的视频帧c时,可以进一步将该视频帧c中的目标对象内的像素点A作为目标像素点,进而可以在该目标像素点为像素点A时,可以从应用服务器中筛选出该像素点A的轨迹信息,进而可以基于该筛选出的像素点A的轨迹信息得到该像素点A在该关键视频帧后的每个视频帧(即视频帧d、视频帧e、视频帧f)中的位置信息。
在本发明实施例中,若关键视频帧为该目标视频内的首个视频帧,则目标用户终端所获取到的目标轨迹信息可以为预先计算得到的轨迹信息;例如,以前述关键视频帧为目标视频内的视频帧a(首个视频帧)为例,则该目标用户终端所获取到的目标轨迹信息可以包含该目标像素点在上述视频帧a、视频帧b、视频帧c、视频帧d、视频帧e、视频帧f的位置信息。可选地,若关键视频帧为该目标视频内的非首个视频帧,则目标用户终端所获取到的目标轨迹信息可以为从预先计算得到的轨迹信息中所确定出的部分位置信息所构成的轨迹信息,例如,以前述关键视频帧为目标视频内的视频帧c(即非首个视频帧)为例,则该目标用户终端所获取到的目标轨迹信息可以包含该目标像素点在视频帧d、视频帧e、视频帧f中的位置信息,并可以将目标像素点在视频帧d、视频帧e、视频帧f中的位置信息称之为部分位置信息。
可以理解的是,可选地,该目标用户终端还可以将该应用服务器所查找到的包含该目标像素点的在关键视频帧中的位置信息的轨迹信息(即上述像素点A对应的轨迹信息)统称为目标轨迹信息,此时,该目标轨迹信息可以视为从该目标视频的所有像素点中所查找到与目标像素点相匹配的像素点A对应的轨迹信息。由于该轨迹信息中可以包含该像素点A在该目标视频的每个视频帧中的位置信息,自然,也可以快速从该轨迹信息中得到该目标像素点在该关键视频后的每个视频帧中的位置信息。
步骤S209,当播放所述关键视频帧的下一视频帧时,基于所述目标轨迹信息中的所述目标像素点在所述关键视频帧的下一视频帧中的位置信息显示所述多媒体信息。
其中,可以理解的是,本发明实施例可以在获取到目标用户所选取的目标对象中的目标像素点时,可以从这些预先计算好的所有像素点对应的轨迹信息中筛选出该关键视频帧中的目标像素点的位置信息相关联的轨迹信息,进而可以将筛选出的轨迹信息称之为目标轨迹信息。由于本发明实施例可以预先对该视频内的每个视频帧中的像素点进行像素跟踪,因此,在获取到每个图像对中的第一视频帧对应的平均位移矩阵时,可以快速得到该视频内的每个像素点在相应视频帧中的位置信息。应当理解,预先计算得到的每个像素点在相应视频帧中的位置信息,可以用于表征在当前视频播放界面中所播放的该视频内的每个像素点在相应视频帧中的位置信息。因此,当在目标用户终端获取到目标对象中的目标像素点以及目标对象相关联的多媒体信息时,可以快速将从所有像素点对应的轨迹信息中所筛选出的该目标像素点对应的轨迹信息称之为目标轨迹信息,进而可以将该目标轨迹信息返回给目标用户终端,以使该目标用户终端可以基于该目标轨迹信息中所携带的该目标像素点在关键视频帧之后的每个视频帧中的位置信息,对该目标对象所关联的多媒体信息(例如,弹幕数据)进行跟踪显示。
可以理解的是,若该目标像素点在该关键视频帧后的连续多个视频帧中的位置信息所构成的轨迹为一个圈,则该弹幕数据在该目标用户终端中可以跟踪这个轨迹进行转圈显示。
为便于理解,请参见图10,是本发明实施例提供的一种基于轨迹信息显示弹幕数据的示意图。如图10所示的视频帧100中可以包含多个对象,例如,可以包含图10所示的对象1、对象2和对象3。若目标用户在目标用户终端中将图10所示的对象1作为目标对象时,可以将该视频帧100称之为关键视频帧,并可以在该目标对象中将与该目标用户所执行的触发操作对应的像素点称之为目标像素点。若该目标用户终端具有较强的计算性能时,则可以在该目标用户终端中预先计算好该目标视频中的每个像素点在每个视频帧中的位置信息,从而可以在该目标用户终端中得到与该目标视频相关联的轨迹信息。例如,可以得到预先计算得到图10所示的轨迹信息1,即该轨迹信息1中的位置信息均是由该目标视频中的像素点在该目标视频中的每个视频帧中的位置信息所确定的。因此,该目标用户终端可以快速从基于该对象1中的目标像素点的位置信息,将图10所示的轨迹信息1视为目标轨迹信息,从而可以基于该轨迹信息1中的对象1在该关键视频帧后的每个视频帧(即图10所示的视频帧200和视频帧300)中的位置信息,快速对该目标对象(即对象1)所关联的多媒体信息(即图10所示的弹幕数据1为BBBBB)进行跟踪和显示。即显示在图10所示的视频帧200和视频帧300中的弹幕数据均是由图10所示的轨迹信息系1中的位置信息所决定的。
可以理解的是,图10所示的目标视频相关联的轨迹信息还可以为上述应用服务器所预先计算好的,从而可以在应用服务器接收到上述针对对象1中的目标像素点轨迹获取请求时,也可以快速从图10所示的目标视频相关联的轨迹信息中获取该关键视频帧中的目标像素点的位置信息相关联的轨迹信息,即通过将对目标视频中的所有像素点的全图像素跟踪放在应用服务器中执行,可以有效地减小目标用户终端的计算量,从而可以确保目标用户终端在得到图10所示的轨迹信息1时,可以基于该轨迹信息1中的位置信息对图10所示的弹幕数据1进行快速跟踪和显示,从而可以提升弹幕数据的显示的灵活度。应当理解,视频播放界面中可以存在与该目标对象相关联的多个弹幕,但是当目标用户终端检测到该视频播放界面中所存在的多条弹幕存在重合时,可以对这些存在重合的弹幕进行合并,以在这些存在重合的弹幕中保留该目标用户终端最新得到的弹幕。
本发明实施例可以在获取到目标用户针对目标视频的触发操作时,将该目标视频中该触发操作对应的视频帧称之为关键视频帧,从而可以从该关键视频帧中确定目标对象,并获取该目标对象关联的多媒体信息(例如,该多媒体信息可以为该目标视频中的用户文字、图片、表情等弹幕数据);进一步地,基于该目标对象中的目标像素点在该关键视频帧中的位置信息确定所述目标像素点对应的轨迹获取请求,进而可以基于该轨迹获取请求获取所述目标像素点在所述关键视频帧中的位置信息相关联的目标轨迹信息,以便于在播放该关键视频帧的下一视频帧时,能够基于该目标轨迹信息显示与该目标对象相关联的弹幕数据;由此可见,本发明实施例可以在确定出关键视频帧时,进一步从该关键视频帧中的所有像素点的轨迹信息中筛选出目标像素点的轨迹信息,并将筛选出的目标像素点的轨迹信息称之为目标轨迹信息,以便于能够基于得到的目标轨迹信息丰富弹幕数据的展示效果,比如,对于不同目标对象中的目标像素点,所得到的目标轨迹信息可能会不同,进而使得弹幕数据的展示效果会不同。此外,基于目标对象与弹幕数据之间的关联关系,可以快速确定出该弹幕数据在该关键视频帧之后的每个视频帧中的位置信息,换言之,该弹幕数据会在该目标视频中一直跟着该目标对象进行变动,进而可以丰富视频中的用户文字的视觉展示效果。
进一步地,请参见图11,是本发明实施例提供的一种视频数据处理装置的结构示意图。如图11所示,该视频数据处理装置1可以应用于上述图1所对应实施例中的目标用户终端。该视频数据处理装置1可以包含:对象确定模块10,请求确定模块20,轨迹获取模块30,文本显示模块40;
对象确定模块10,用于响应针对目标视频的触发操作,从所述目标视频的关键视频帧中确定目标对象,并获取与所述目标对象相关联的多媒体信息;
请求确定模块20,用于基于所述目标对象中的目标像素点在所述关键视频帧中的位置信息,确定所述目标像素点对应的轨迹获取请求;
轨迹获取模块30,用于基于所述轨迹获取请求获取与所述目标像素点在所述关键视频帧中的位置信息相关联的目标轨迹信息;所述目标轨迹信息包含所述目标像素点在所述关键视频帧的下一视频帧中的位置信息;所述关键视频帧的下一视频帧中的位置信息是通过跟踪所述目标对象得到的;
文本显示模块40,用于当播放所述关键视频帧的下一视频帧时,基于所述目标轨迹信息中的所述目标像素点在所述关键视频帧的下一视频帧中的位置信息显示所述多媒体信息。
其中,对象确定模块10,请求确定模块20,轨迹获取模块30,文本显示模块40的具体执行方式可参见上述图4所对应实施例中对步骤S101-步骤S104的描述,这里将不再继续进行赘述。
本发明实施例可以在获取到目标用户针对目标视频的触发操作时,将该目标视频中该触发操作对应的视频帧称之为关键视频帧,从而可以从该关键视频帧中确定目标对象,并获取该目标对象关联的多媒体信息(例如,该多媒体信息可以为该目标视频中的用户文字、图片、表情等弹幕数据);进一步地,基于该目标对象中的目标像素点在该关键视频帧中的位置信息确定所述目标像素点对应的轨迹获取请求,进而可以基于该轨迹获取请求获取所述目标像素点在所述关键视频帧中的位置信息相关联的目标轨迹信息,以便于在播放该关键视频帧的下一视频帧时,能够基于该目标轨迹信息显示与该目标对象相关联的弹幕数据;由此可见,本发明实施例可以在确定出关键视频帧时,进一步从该关键视频帧中的所有像素点的轨迹信息中筛选出目标像素点的轨迹信息,并将筛选出的目标像素点的轨迹信息称之为目标轨迹信息,以便于能够基于得到的目标轨迹信息丰富弹幕数据的展示效果,比如,对于不同目标对象中的目标像素点,所得到的目标轨迹信息可能会不同,进而使得弹幕数据的展示效果会不同。此外,基于目标对象与弹幕数据之间的关联关系,可以快速确定出该弹幕数据在该关键视频帧之后的每个视频帧中的位置信息,换言之,该弹幕数据会在该目标视频中一直跟着该目标对象进行变动,进而可以丰富视频中的用户文字的视觉展示效果。
进一步地,请参见图12,是本发明实施例提供的一种计算机设备的结构示意图。如图12所示,计算机设备1000可以为上述图1对应实施例中的目标用户终端。上述计算机设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,上述计算机设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1004可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图12所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图12所示的计算机设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
响应针对目标视频的触发操作,从所述目标视频的关键视频帧中确定目标对象,并获取与所述目标对象相关联的多媒体信息;
基于所述目标对象中的目标像素点在所述关键视频帧中的位置信息,确定所述目标像素点对应的轨迹获取请求;
基于所述轨迹获取请求获取与所述目标像素点在所述关键视频帧中的位置信息相关联的目标轨迹信息;所述目标轨迹信息包含所述目标像素点在所述关键视频帧的下一视频帧中的位置信息;所述关键视频帧的下一视频帧中的位置信息是通过跟踪所述目标对象得到的;
当播放所述关键视频帧的下一视频帧时,基于所述目标轨迹信息中的所述目标像素点在所述关键视频帧的下一视频帧中的位置信息显示所述多媒体信息。
应当理解,本发明实施例中所描述的计算机设备1000可执行前文图4所对应实施例中对上述视频数据处理方法的描述,也可执行前文图11所对应实施例中对上述视频数据处理装置1的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本发明实施例还提供了一种计算机存储介质,且上述计算机存储介质中存储有前文提及的视频数据处理装置1所执行的计算机程序,且上述计算机程序包括程序指令,当上述处理器执行上述程序指令时,能够执行前文图4所对应实施例中对上述视频数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本发明所涉及的计算机存储介质实施例中未披露的技术细节,请参照本发明方法实施例的描述。
进一步地,请参见图13,是本发明实施例提供的另一种视频数据处理装置的结构示意图。如图13所示,该视频数据处理装置2可以应用于上述图8所对应实施例中的应用服务器,该应用服务器可以为上述图1所对应实施例中的业务服务器2000。该视频数据处理装置2可以包含:请求响应模块100和轨迹筛选模块200;
请求响应模块100,用于响应针对关键视频帧中的目标像素点的轨迹获取请求,获取与目标视频相关联的轨迹信息;所述目标像素点是指所述目标视频的所述关键视频帧中目标对象所包含的像素点;所述轨迹信息是由所述目标视频中的像素点在所述目标视频的每个视频帧中的位置信息所确定的;
轨迹筛选模块200,用于从所述目标视频相关联的轨迹信息中,筛选与所述目标像素点在所述关键视频帧中的位置信息相关联的目标轨迹信息,并返回所述目标轨迹信息;所述目标轨迹信息包含目标位置信息;所述目标位置信息用于触发在所述关键视频帧的下一视频帧中显示与所述目标对象相关联的多媒体信息。
其中,请求响应模块100和轨迹筛选模块200的具体实现方式可以参见上述图8所对应实施例中对步骤S207和步骤S208的描述,这里将不再继续进行赘述。
进一步地,请参见图14,是本发明实施例提供的另一种计算机设备的结构示意图。如图14所示,计算机设备2000可以为上述图1对应实施例中的目标业务服务器2000。上述计算机设备2000可以包括:处理器2001,网络接口2004和存储器2005,此外,上述计算机设备2000还可以包括:用户接口2003,和至少一个通信总线2002。其中,通信总线2002用于实现这些组件之间的连接通信。其中,用户接口2003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口2003还可以包括标准的有线接口、无线接口。网络接口2004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器2004可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器2005可选的还可以是至少一个位于远离前述处理器2001的存储装置。如图14所示,作为一种计算机存储介质的存储器2005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图14所示的计算机设备2000中,网络接口2004可提供网络通讯功能;而用户接口2003主要用于为用户提供输入的接口;而处理器2001可以用于调用存储器2005中存储的设备控制应用程序,以实现:
响应针对关键视频帧中的目标像素点的轨迹获取请求,获取与目标视频相关联的轨迹信息;所述目标像素点是指所述目标视频的所述关键视频帧中目标对象所包含的像素点;所述轨迹信息是由所述目标视频中的像素点在所述目标视频的每个视频帧中的位置信息所确定的;
从所述目标视频相关联的轨迹信息中,筛选与所述目标像素点在所述关键视频帧中的位置信息相关联的目标轨迹信息,并返回所述目标轨迹信息;所述目标轨迹信息包含目标位置信息;所述目标位置信息用于触发在所述关键视频帧的下一视频帧中显示与所述目标对象相关联的多媒体信息。
应当理解,本发明实施例中所描述的计算机设备2000可执行前文图8所对应实施例中对上述视频数据处理方法的描述,也可执行前文图13所对应实施例中对上述视频数据处理装置2的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本发明实施例还提供了一种计算机存储介质,且上述计算机存储介质中存储有前文提及的视频数据处理装置2所执行的计算机程序,且上述计算机程序包括程序指令,当上述处理器执行上述程序指令时,能够执行前文图8所对应实施例中对上述视频数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本发明所涉及的计算机存储介质实施例中未披露的技术细节,请参照本发明方法实施例的描述。
进一步地,请参见图15,是本发明实施例提供的又一种视频数据处理装置的结构示意图。如图15所示,该视频数据处理装置3可以应用于上述图1所对应实施例中的业务服务器2000,也可以应用于上述图1所对应实施例中的目标用户终端。该视频数据处理装置3可以包含:第一获取模块300、矩阵获取模块400、位置跟踪模块500、轨迹生成模块600;
第一获取模块300,用于从目标视频中获取相邻的第一视频帧和第二视频帧;
矩阵获取模块400,用于基于所述目标视频对应的光流追踪规则、所述第一视频帧中的像素点、所述第二视频帧中的像素点,确定所述第一视频帧对应的平均位移矩阵;
其中,所述矩阵获取模块400包括:第一确定单元4001、矩阵确定单元4002、像素点筛选单元4003、矩阵修正单元4004、第二确定单元4005;
第一确定单元4001,用于获取所述目标视频对应的光流追踪规则,并将所述第一视频帧中的像素点的位置信息确定为第一位置信息,并将所述第二视频帧中的像素点的位置信息确定为第二位置信息;
矩阵确定单元4002,用于基于所述光流追踪规则、所述第一视频帧中的像素点的第一位置信息、所述第二视频帧中的像素点的第二位置信息,获取所述第一视频帧对应的正向位移矩阵,并获取所述第二视频帧对应的反向位移矩阵;
其中,其中,矩阵确定单元4002包括:第一追踪子单元4021和第二追踪子单元4022;
第一追踪子单元4021,用于基于所述第一视频帧中的像素点的第一位置信息和所述光流追踪规则,将所述第一视频帧中的像素点正向映射到所述第二视频帧,并在所述第二视频帧中确定所映射得到的第一映射点的第二位置信息,并基于所述像素点的第一位置信息、所述第一映射点的第二位置信息确定所述第一视频帧对应的正向位移矩阵;
第二追踪子单元4022,基于所述第二视频帧中的像素点的第二位置信息和所述光流追踪规则,将所述第二视频帧中的第一映射点反向映射到所述第一视频帧,并在所述第一视频帧中确定所映射得到第二映射点的第三位置信息,并基于所述第一映射点的第二位置信息、所述第二映射点的第三位置信息确定所述第二视频帧对应的反向位移矩阵。
其中,第一追踪子单元4021和第二追踪子单元4022的具体实现方式可以参见上述图8所对应实施例中对云端前向后向光流法的描述,这里将不再继续进行赘述。
像素点筛选单元4003,用于基于所述第一视频帧中的像素点的第一位置信息、所述正向位移矩阵、所述反向位移矩阵,将所述像素点中满足目标筛选条件的像素点确定为有效像素点;
其中,所述像素点筛选单元4003包括:第一位置确定子单元4031、第二位置确定子单元4032、第三位置确定子单元4033、误差确定子单元4034和有效筛选子单元4035;
第一位置确定子单元4031,用于从所述第一视频帧中的像素点中获取第一像素点,并在所述第一视频帧中确定所述第一像素点的第一位置信息,并从所述正向位移矩阵中确定所述第一像素点对应的第一横向位移和第一纵向位移;
第二位置确定子单元4032,用于基于所述第一像素点的第一位置信息、所述第一像素点对应的第一横向位移和第一纵向位移,将所述第一像素点正向映射到所述第二视频帧,并在所述第二视频帧中确定所映射得到的第二像素点的第二位置信息;
第三位置确定子单元4033,用于从所述反向位移矩阵中确定所述第二像素点对应的第二横向位移和第二纵向位移,并基于所述第二像素点的第二位置信息、所述第二像素点对应的第二横向位移和第二纵向位移,将所述第二像素点反向映射到所述第一视频帧,并在所述第一视频帧中确定所映射得到的第三像素点的第三位置信息;
误差确定子单元4034,用于基于所述第一像素点的第一位置信息、所述第三像素点的第三位置信息,确定所述第一像素点与所述第三像素点之间的误差距离,并根据所述第一像素点的第一位置信息、所述第二像素点的第二位置信息,确定包含第一像素点的图像块与包含所述第二像素点的图像块之间的相关系数;
有效筛选子单元4035,用于将所述像素点中误差距离小于误差距离阈值、且所述相关系数大于等于相关系数阈值的像素点确定为有效像素点。
其中,第一位置确定子单元4031、第二位置确定子单元4032、第三位置确定子单元4033、误差确定子单元4034和有效筛选子单元4035的具体实现方式可以参见上述图8所对应实施例中对确定有效像素点的具体过程的描述,这里将不再继续进行赘述。
矩阵修正单元4004,用于基于所述有效像素点对所述第一视频帧对应的初始状态矩阵和所述正向位移矩阵进行修正,得到所述第一视频帧对应的目标状态矩阵和目标位移矩阵;
其中,所述矩阵修正单元4004包括:初始获取子单元4041、数值切换子单元4042、位移设置子单元4043;
初始获取子单元4041,获取第一视频帧对应的初始状态矩阵;所述初始状态矩阵中的每个矩阵元素的状态值均为第一数值,一个矩阵元素对应所述像素点中的一个像素点;
数值切换子单元4042,用于在所述初始状态矩阵中将与所述有效像素点对应的矩阵元素的状态值由第一数值切换为第二数值,并将包含第二数值的初始状态矩阵确定为所述第一视频帧对应的目标状态矩阵;
位移设置子单元4043,用于在所述正向位移矩阵中将所述剩余像素点对应的矩阵元素的位移设置为所述第一数值,并将包含所述第一数值的正向位移矩阵确定为目标位移矩阵;所述剩余像素点为所述像素点中除所述有效像素点之外的像素点。
其中,所述位移设置子单元4043,具体用于若所述正向位移矩阵包含初始横向位移矩阵和初始纵向位移矩阵,则在所述初始横向位移矩阵中将所述剩余像素点对应的矩阵元素的第一横向位移设置为所述第一数值,并将包含所述第一数值的初始横向位移确定为所述第一视频帧对应的横向位移矩阵;
所述位移设置子单元4043,还具体用于在所述初始纵向位移矩阵将所述剩余像素点对应的矩阵元素的第一纵向位移设置为所述第一数值,并将包含所述第一数值的初始纵向位移确定为所述第一视频帧对应的纵向位移矩阵;
所述位移设置子单元4043,还具体用于将所述第一视频帧对应的横向位移矩阵和所述第一视频帧对应的纵向位移矩阵确定为目标位移矩阵。
初始获取子单元4041、数值切换子单元4042、位移设置子单元4043的具体实现方式可以参见上述图8所对应实施例中对修正初始状态矩阵和正向位移矩阵的描述,这里将不再继续进行赘述。
第二确定单元4005,用于基于所述目标状态矩阵和所述目标位移矩阵,确定所述第一视频帧对应的平均位移矩阵。
其中,所述第二确定单元4005包括:第一积分子单元4051、第二积分子单元4052、第三积分子单元4053、差分运算子单元4054;
第一积分子单元4051,用于在所述第一视频帧中对所述目标状态矩阵进行位移积分运算,得到所述第一视频帧中的像素点对应的状态积分矩阵;
第二积分子单元4052,用于在所述第一视频帧中对所述目标状态矩阵中的横向位移矩阵进行位移积分运算,得到所述第一视频帧中的像素点对应的横向位移积分矩阵;
第三积分子单元4053,用于在所述第一视频帧中对所述目标状态矩阵中的纵向位移矩阵进行位移积分运算,得到所述第一视频帧中的像素点对应的纵向位移积分矩阵;
差分运算子单元4054,用于从所述第一视频帧中确定位移差分运算对应的差分区域,基于所述差分区域的尺寸信息、状态积分矩阵、横向位移积分矩阵和纵向位移积分矩阵,确定所述第一视频帧对应的平均位移矩阵。
其中,所述差分运算子单元4054包括:第一差分子单元4055、第二差分子单元4056、第三差分子单元4057、平均确定子单元4058;
第一差分子单元4055,用于基于所述差分区域对应的长度信息和宽度信息,对所述状态积分矩阵进行位移差分运算,得到所述第一图像帧对应的状态差分矩阵;
第二差分子单元4056,用于基于所述差分区域对应的长度信息和宽度信息,分别对所述横向位移积分矩阵和纵向位移积分矩阵进行位移差分运算,得到所述第一图像帧对应的横向位移差分矩阵和纵向位移差分矩阵;
第三差分子单元4057,用于将所述横向位移差分矩阵与所述状态差分矩阵之间的比值确定为横向平均位移矩阵,并将所述纵向位移差分矩阵与所述状态差分矩阵之间的比值确定为纵向平均位移矩阵;
平均确定子单元4058,用于将所述纵向位移差分矩阵和所述纵向平均位移矩阵确定为所述第一视频帧对应的平均位移矩阵。
其中,第一积分子单元4051、第二积分子单元4052、第三积分子单元4053、差分运算子单元4054的具体实现方式可以参见上述图8所对应实施例中对云端位移积分方法和云端位移差分方法的描述,这里将不再继续进行赘述。
其中,第一确定单元4001、矩阵确定单元4002、像素点筛选单元4003、矩阵修正单元4004、第二确定单元4005的具体实现方式可以参见上述图8所对应实施例中对步骤S202的描述,这里将不再继续进行赘述。
位置跟踪模块500,用于基于所述平均位移矩阵对所述第一视频帧中的像素点的位置信息进行跟踪,并在所述第二视频帧中确定所跟踪得到的像素点的位置信息;
轨迹生成模块600,用于基于所述第一视频帧中的像素点的位置信息、所述跟踪得到的像素点在所述第二视频帧中的位置信息,生成所述目标视频相关联的轨迹信息;所述轨迹信息中包含用于对目标视频中的目标对象所关联的多媒体信息进行跟踪显示的目标轨迹信息。
其中,第一获取模块300、矩阵获取模块400、位置跟踪模块500、轨迹生成模块600的具体实现方式可以参见上述图8所对应实施例中对步骤S201-步骤S204的描述,这里将不再继续进行赘述。
进一步地,请参见图16,是本发明实施例提供的又一种计算机设备的结构示意图。如图16所示,上述计算机设备3000可以应用于上述图1对应实施例中的业务服务器2000。上述计算机设备3000可以包括:处理器3001,网络接口3004和存储器3005,此外,上述视频数据处理装置3000还可以包括:用户接口3003,和至少一个通信总线3002。其中,通信总线3002用于实现这些组件之间的连接通信。其中,用户接口3003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口3003还可以包括标准的有线接口、无线接口。网络接口3004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器3004可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器3005可选的还可以是至少一个位于远离前述处理器3001的存储装置。如图16所示,作为一种计算机存储介质的存储器3005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图16所示的计算机设备3000中,网络接口3004可提供网络通讯功能;而用户接口3003主要用于为用户提供输入的接口;而处理器3001可以用于调用存储器3005中存储的设备控制应用程序,以实现:
从目标视频中获取相邻的第一视频帧和第二视频帧;
基于所述目标视频对应的光流追踪规则、所述第一视频帧中的像素点、所述第二视频帧中的像素点,确定所述第一视频帧对应的平均位移矩阵;
基于所述平均位移矩阵对所述第一视频帧中的像素点的位置信息进行跟踪,并在所述第二视频帧中确定所跟踪得到的像素点的位置信息;
基于所述第一视频帧中的像素点的位置信息、所述跟踪得到的像素点在所述第二视频帧中的位置信息,生成所述目标视频相关联的轨迹信息;所述轨迹信息中包含用于对目标视频中的目标对象所关联的多媒体信息进行跟踪显示的目标轨迹信息。
应当理解,本发明实施例中所描述的计算机设备3000可执行前文图8所对应实施例中对上述视频数据处理方法的描述,也可执行前文图15所对应实施例中对上述视频数据处理装置3的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本发明实施例还提供了一种计算机存储介质,且上述计算机存储介质中存储有前文提及的视频数据处理装置3所执行的计算机程序,且上述计算机程序包括程序指令,当上述处理器执行上述程序指令时,能够执行前文图8所对应实施例中对上述视频数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本发明所涉及的计算机存储介质实施例中未披露的技术细节,请参照本发明方法实施例的描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,上述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (14)
1.一种视频数据处理方法,所述方法应用于移动终端,其特征在于,包括:
响应针对目标视频的触发操作,从所述目标视频的关键视频帧中确定目标对象,并获取与所述目标对象相关联的多媒体信息;
基于所述目标对象中的目标像素点在所述关键视频帧中的位置信息,确定所述目标像素点对应的轨迹获取请求;
基于所述轨迹获取请求从业务服务器获取与所述目标像素点在所述关键视频帧中的位置信息相关联的目标轨迹信息;所述目标轨迹信息包含所述目标像素点在所述关键视频帧的下一视频帧中的位置信息;所述目标像素点在所述关键视频帧的下一视频帧中的位置信息是所述业务服务器在获取到所述关键视频帧与所述关键视频帧的下一视频帧之间的平均位移矩阵时,通过所述平均位移矩阵跟踪所述关键视频帧中的所述目标对象的目标像素点得到的;所述目标轨迹信息为所述业务服务器基于所述目标像素点在所述关键视频帧中的位置信息,从预先计算得到的所述目标视频中的所有像素点的轨迹信息中所筛选得到的;所述平均位移矩阵是所述业务服务器基于目标状态矩阵和目标位移矩阵所确定的;所述目标状态矩阵和目标位移矩阵是由所述业务服务器基于筛选出的有效像素点对所述关键视频帧对应的初始状态矩阵和正向位移矩阵进行修正后得到的;所述有效像素点为所述业务服务器基于所述关键视频帧中的像素点的第一位置信息、所述关键视频帧的正向位移矩阵、所述关键视频帧的下一视频帧的反向位移矩阵,从所述像素点中所确定的满足目标筛选条件的像素点;所述正向位移矩阵和所述反向位移矩阵均是所述业务服务器基于所述目标视频对应的光流追踪规则、所述关键视频帧中的像素点的第一位置信息、所述关键视频帧的下一视频帧中的像素点的第二位置信息所获取到的;
当播放所述关键视频帧的下一视频帧时,基于所述目标轨迹信息中的所述目标像素点在所述关键视频帧的下一视频帧中的位置信息显示所述多媒体信息。
2.一种视频数据处理方法,所述方法应用于业务服务器,其特征在于,包括:
响应移动终端针对关键视频帧中的目标像素点的轨迹获取请求,获取与目标视频相关联的轨迹信息;所述目标像素点是指所述目标视频的所述关键视频帧中目标对象所包含的像素点;所述轨迹信息是由所述业务服务器预先根据所述目标视频中的像素点在所述目标视频的每个视频帧中的位置信息所确定的;
从所述目标视频相关联的轨迹信息中,筛选与所述目标像素点在所述关键视频帧中的位置信息相关联的目标轨迹信息,并向所述移动终端返回所述目标轨迹信息;所述目标轨迹信息包含目标位置信息;所述目标位置信息用于触发在所述关键视频帧的下一视频帧中显示与所述目标对象相关联的多媒体信息;所述目标位置信息为所述目标像素点在所述关键视频帧的下一视频帧中的位置信息,且所述目标像素点在所述关键视频帧的下一视频帧中的位置信息是所述业务服务器在获取到所述关键视频帧与所述关键视频帧的下一视频帧之间的平均位移矩阵时,通过所述平均位移矩阵跟踪所述关键视频帧中的所述目标对象的目标像素点得到的;所述平均位移矩阵是所述业务服务器基于目标状态矩阵和目标位移矩阵所确定的;所述目标状态矩阵和目标位移矩阵是由所述业务服务器基于筛选出的有效像素点对所述关键视频帧对应的初始状态矩阵和正向位移矩阵进行修正后得到的;所述有效像素点为所述业务服务器基于所述关键视频帧中的像素点的第一位置信息、所述关键视频帧的正向位移矩阵、所述关键视频帧的下一视频帧的反向位移矩阵,从所述像素点中所确定的满足目标筛选条件的像素点;所述正向位移矩阵和所述反向位移矩阵均是所述业务服务器基于所述目标视频对应的光流追踪规则、所述关键视频帧中的像素点的第一位置信息、所述关键视频帧的下一视频帧中的像素点的第二位置信息所获取到的。
3.一种视频数据处理方法,其特征在于,包括:
从目标视频中获取相邻的第一视频帧和第二视频帧;
获取所述目标视频对应的光流追踪规则,并将所述第一视频帧中的像素点的位置信息确定为第一位置信息,并将所述第二视频帧中的像素点的位置信息确定为第二位置信息;
基于所述光流追踪规则、所述第一视频帧中的像素点的第一位置信息、所述第二视频帧中的像素点的第二位置信息,获取所述第一视频帧对应的正向位移矩阵,并获取所述第二视频帧对应的反向位移矩阵;
基于所述第一视频帧中的像素点的第一位置信息、所述正向位移矩阵、所述反向位移矩阵,将所述像素点中满足目标筛选条件的像素点确定为有效像素点;
基于所述有效像素点对所述第一视频帧对应的初始状态矩阵和所述正向位移矩阵进行修正,得到所述第一视频帧对应的目标状态矩阵和目标位移矩阵;
基于所述目标状态矩阵和所述目标位移矩阵,确定所述第一视频帧对应的平均位移矩阵;
基于所述平均位移矩阵对所述第一视频帧中的像素点的位置信息进行跟踪,并在所述第二视频帧中确定所跟踪得到的像素点的位置信息;
基于所述第一视频帧中的像素点的位置信息、所述跟踪得到的像素点在所述第二视频帧中的位置信息,生成所述目标视频相关联的轨迹信息;所述轨迹信息中包含用于在移动终端中对目标视频中的目标对象所关联的多媒体信息进行跟踪显示的目标轨迹信息。
4.根据权利要求3所述的方法,其特征在于,所述基于所述光流追踪规则、所述第一视频帧中的像素点的第一位置信息、所述第二视频帧中的像素点的第二位置信息,获取所述第一视频帧对应的正向位移矩阵,并获取所述第二视频帧对应的反向位移矩阵,包括:
基于所述第一视频帧中的像素点的第一位置信息和所述光流追踪规则,将所述第一视频帧中的像素点正向映射到所述第二视频帧,并在所述第二视频帧中确定所映射得到的第一映射点的第二位置信息,并基于所述像素点的第一位置信息、所述第一映射点的第二位置信息确定所述第一视频帧对应的正向位移矩阵;
基于所述第二视频帧中的像素点的第二位置信息和所述光流追踪规则,将所述第二视频帧中的像素点反向映射到所述第一视频帧,并在所述第一视频帧中确定所映射得到第二映射点的第三位置信息,并基于所述第一映射点的第二位置信息、所述第二映射点的第三位置信息确定所述第二视频帧对应的反向位移矩阵。
5.根据权利要求3所述的方法,其特征在于,所述基于所述第一视频帧中的像素点的第一位置信息、所述正向位移矩阵、所述反向位移矩阵,将所述像素点中满足目标筛选条件的像素点确定为有效像素点,包括:
从所述第一视频帧中的像素点中获取第一像素点,并在所述第一视频帧中确定所述第一像素点的第一位置信息,并从所述正向位移矩阵中确定所述第一像素点对应的第一横向位移和第一纵向位移;
基于所述第一像素点的第一位置信息、所述第一像素点对应的第一横向位移和第一纵向位移,将所述第一像素点正向映射到所述第二视频帧,并在所述第二视频帧中确定所映射得到的第二像素点的第二位置信息;
从所述反向位移矩阵中确定所述第二像素点对应的第二横向位移和第二纵向位移,并基于所述第二像素点的第二位置信息、所述第二像素点对应的第二横向位移和第二纵向位移,将所述第二像素点反向映射到所述第一视频帧,并在所述第一视频帧中确定所映射得到的第三像素点的第三位置信息;
基于所述第一像素点的第一位置信息、所述第三像素点的第三位置信息,确定所述第一像素点与所述第三像素点之间的误差距离,并根据所述第一像素点的第一位置信息、所述第二像素点的第二位置信息,确定包含第一像素点的图像块与包含所述第二像素点的图像块之间的相关系数;
将所述像素点中误差距离小于误差距离阈值、且所述相关系数大于等于相关系数阈值的像素点确定为有效像素点。
6.根据权利要求3所述的方法,其特征在于,所述基于所述有效像素点对所述第一视频帧对应的初始状态矩阵和所述正向位移矩阵进行修正,得到所述第一视频帧对应的目标状态矩阵和目标位移矩阵,包括:
获取第一视频帧对应的初始状态矩阵;所述初始状态矩阵中的每个矩阵元素的状态值均为第一数值,一个矩阵元素对应所述像素点中的一个像素点;
在所述初始状态矩阵中将与所述有效像素点对应的矩阵元素的状态值由第一数值切换为第二数值,并将包含第二数值的初始状态矩阵确定为所述第一视频帧对应的目标状态矩阵;
在所述正向位移矩阵中将剩余像素点对应的矩阵元素的位移设置为所述第一数值,并将包含所述第一数值的正向位移矩阵确定为目标位移矩阵;所述剩余像素点为所述像素点中除所述有效像素点之外的像素点。
7.根据权利要求6所述的方法,其特征在于,所述在所述正向位移矩阵中将所述剩余像素点对应的矩阵元素的位移设置为所述第一数值,并将包含所述第一数值的正向位移矩阵确定为目标位移矩阵,包括:
若所述正向位移矩阵包含初始横向位移矩阵和初始纵向位移矩阵,则在所述初始横向位移矩阵中将所述剩余像素点对应的矩阵元素的第一横向位移设置为所述第一数值,并将包含所述第一数值的初始横向位移确定为所述第一视频帧对应的横向位移矩阵;
在所述初始纵向位移矩阵将所述剩余像素点对应的矩阵元素的第一纵向位移设置为所述第一数值,并将包含所述第一数值的初始纵向位移确定为所述第一视频帧对应的纵向位移矩阵;
将所述第一视频帧对应的横向位移矩阵和所述第一视频帧对应的纵向位移矩阵确定为目标位移矩阵。
8.根据权利要求3所述的方法,其特征在于,所述基于所述目标状态矩阵和所述目标位移矩阵,确定所述第一视频帧对应的平均位移矩阵,包括:
在所述第一视频帧中对所述目标状态矩阵进行位移积分运算,得到所述第一视频帧中的像素点对应的状态积分矩阵;
在所述第一视频帧中对所述目标状态矩阵中的横向位移矩阵进行位移积分运算,得到所述第一视频帧中的像素点对应的横向位移积分矩阵;
在所述第一视频帧中对所述目标状态矩阵中的纵向位移矩阵进行位移积分运算,得到所述第一视频帧中的像素点对应的纵向位移积分矩阵;
从所述第一视频帧中确定位移差分运算对应的差分区域,基于所述差分区域的尺寸信息、状态积分矩阵、横向位移积分矩阵和纵向位移积分矩阵,确定所述第一视频帧对应的平均位移矩阵。
9.根据权利要求8所述的方法,其特征在于,所述基于所述差分区域的尺寸信息、状态积分矩阵、横向位移积分矩阵和纵向位移积分矩阵,确定所述第一视频帧对应的平均位移矩阵,包括:
基于所述差分区域对应的长度信息和宽度信息,对所述状态积分矩阵进行位移差分运算,得到所述第一视频帧对应的状态差分矩阵;
基于所述差分区域对应的长度信息和宽度信息,分别对所述横向位移积分矩阵和纵向位移积分矩阵进行位移差分运算,得到所述第一视频帧对应的横向位移差分矩阵和纵向位移差分矩阵;
将所述横向位移差分矩阵与所述状态差分矩阵之间的比值确定为横向平均位移矩阵,并将所述纵向位移差分矩阵与所述状态差分矩阵之间的比值确定为纵向平均位移矩阵;
将所述纵向位移差分矩阵和所述纵向平均位移矩阵确定为所述第一视频帧对应的平均位移矩阵。
10.一种视频数据处理装置,所述装置应用于移动终端,其特征在于,包括:
对象确定模块,用于响应针对目标视频的触发操作,从所述目标视频的关键视频帧中确定目标对象,并获取与所述目标对象相关联的多媒体信息;
请求确定模块,用于基于所述目标对象中的目标像素点在所述关键视频帧中的位置信息,确定所述目标像素点对应的轨迹获取请求;
轨迹获取模块,用于基于所述轨迹获取请求从业务服务器获取与所述目标像素点在所述关键视频帧中的位置信息相关联的目标轨迹信息;所述目标轨迹信息包含所述目标像素点在所述关键视频帧的下一视频帧中的位置信息;所述目标像素点在所述关键视频帧的下一视频帧中的位置信息是所述业务服务器在获取到所述关键视频帧与所述关键视频帧的下一视频帧之间的平均位移矩阵时,通过所述平均位移矩阵跟踪所述目标对象的目标像素点得到的;所述目标轨迹信息为所述业务服务器基于所述目标像素点在所述关键视频帧中的位置信息,从预先计算得到的所述目标视频中的所有像素点的轨迹信息中所筛选得到的;所述平均位移矩阵是所述业务服务器基于目标状态矩阵和目标位移矩阵所确定的;所述目标状态矩阵和目标位移矩阵是由所述业务服务器基于筛选出的有效像素点对所述关键视频帧对应的初始状态矩阵和正向位移矩阵进行修正后得到的;所述有效像素点为所述业务服务器基于所述关键视频帧中的像素点的第一位置信息、所述关键视频帧的正向位移矩阵、所述关键视频帧的下一视频帧的反向位移矩阵,从所述像素点中所确定的满足目标筛选条件的像素点;所述正向位移矩阵和所述反向位移矩阵均是所述业务服务器基于所述目标视频对应的光流追踪规则、所述关键视频帧中的像素点的第一位置信息、所述关键视频帧的下一视频帧中的像素点的第二位置信息所获取的;
文本显示模块,用于当播放所述关键视频帧的下一视频帧时,基于所述目标轨迹信息中的所述目标像素点在所述关键视频帧的下一视频帧中的位置信息显示所述多媒体信息。
11.一种视频数据处理装置,所述装置应用于业务服务器,其特征在于,包括:
请求响应模块,用于响应移动终端针对关键视频帧中的目标像素点的轨迹获取请求,获取与目标视频相关联的轨迹信息;所述目标像素点是指所述目标视频的所述关键视频帧中目标对象所包含的像素点;所述轨迹信息是由所述业务服务器预先根据所述目标视频中的像素点在所述目标视频的每个视频帧中的位置信息所确定的;
轨迹筛选模块,用于从所述目标视频相关联的轨迹信息中,筛选与所述目标像素点在所述关键视频帧中的位置信息相关联的目标轨迹信息,并向所述移动终端返回所述目标轨迹信息;所述目标轨迹信息包含目标位置信息;所述目标位置信息用于触发在所述关键视频帧的下一视频帧中显示与所述目标对象相关联的多媒体信息所述目标位置信息为所述目标像素点在所述关键视频帧的下一视频帧中的位置信息,且所述目标像素点在所述关键视频帧的下一视频帧中的位置信息是所述业务服务器在获取到所述关键视频帧与所述关键视频帧的下一视频帧之间的平均位移矩阵时,通过所述平均位移矩阵跟踪所述关键视频帧中的所述目标对象的目标像素点得到的;所述平均位移矩阵是所述业务服务器基于目标状态矩阵和目标位移矩阵所确定的;所述目标状态矩阵和目标位移矩阵是由所述业务服务器基于筛选出的有效像素点对所述关键视频帧对应的初始状态矩阵和正向位移矩阵进行修正后得到的;所述有效像素点为所述业务服务器基于所述关键视频帧中的像素点的第一位置信息、所述关键视频帧的正向位移矩阵、所述关键视频帧的下一视频帧的反向位移矩阵,从所述像素点中所确定的满足目标筛选条件的像素点;所述正向位移矩阵和所述反向位移矩阵均是所述业务服务器基于所述目标视频对应的光流追踪规则、所述关键视频帧中的像素点的第一位置信息、所述关键视频帧的下一视频帧中的像素点的第二位置信息所获取的。
12.一种视频数据处理装置,其特征在于,包括:
第一获取模块,用于从目标视频中获取相邻的第一视频帧和第二视频帧;
矩阵获取模块,用于获取所述目标视频对应的光流追踪规则,并将所述第一视频帧中的像素点的位置信息确定为第一位置信息,并将所述第二视频帧中的像素点的位置信息确定为第二位置信息;
所述矩阵获取模块,还用于基于所述光流追踪规则、所述第一视频帧中的像素点的第一位置信息、所述第二视频帧中的像素点的第二位置信息,获取所述第一视频帧对应的正向位移矩阵,并获取所述第二视频帧对应的反向位移矩阵;
所述矩阵获取模块,还用于基于所述第一视频帧中的像素点的第一位置信息、所述正向位移矩阵、所述反向位移矩阵,将所述第一视频帧中满足目标筛选条件的像素点确定为有效像素点;
所述矩阵获取模块,还用于基于所述有效像素点对所述第一视频帧对应的初始状态矩阵和所述正向位移矩阵进行修正,得到所述第一视频帧对应的目标状态矩阵和目标位移矩阵;
所述矩阵获取模块,还用于基于所述目标状态矩阵和所述目标位移矩阵,确定所述第一视频帧对应的平均位移矩阵;
位置跟踪模块,用于基于所述平均位移矩阵对所述第一视频帧中的像素点的位置信息进行跟踪,并在所述第二视频帧中确定所跟踪得到的像素点的位置信息;
轨迹生成模块,用于基于所述第一视频帧中的像素点的位置信息、所述跟踪得到的像素点在所述第二视频帧中的位置信息,生成所述目标视频相关联的轨迹信息;所述轨迹信息中包含用于在移动终端中对目标视频中的目标对象所关联的多媒体信息进行跟踪显示的目标轨迹信息。
13.一种计算机设备,其特征在于,包括:处理器、存储器、网络接口;
所述处理器与存储器、网络接口相连,其中,网络接口用于提供数据通信功能,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以执行如权利要求1、2、3-9任一项所述的方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行如权利要求1、2、3-9任一项所述的方法。
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910358569.8A CN110062272B (zh) | 2019-04-30 | 2019-04-30 | 一种视频数据处理方法和相关装置 |
KR1020217022717A KR102562208B1 (ko) | 2019-04-30 | 2020-04-10 | 비디오 데이터 프로세싱 방법 및 관련 디바이스 |
SG11202105410RA SG11202105410RA (en) | 2019-04-30 | 2020-04-10 | Video data processing method and related device |
EP20799151.4A EP3965431A4 (en) | 2019-04-30 | 2020-04-10 | VIDEO DATA PROCESSING METHOD AND RELATED DEVICE |
PCT/CN2020/084112 WO2020220968A1 (zh) | 2019-04-30 | 2020-04-10 | 一种视频数据处理方法和相关装置 |
JP2021531593A JP7258400B6 (ja) | 2019-04-30 | 2020-04-10 | ビデオデータ処理方法、ビデオデータ処理装置、コンピュータ機器、及びコンピュータプログラム |
US17/334,678 US11900614B2 (en) | 2019-04-30 | 2021-05-28 | Video data processing method and related apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910358569.8A CN110062272B (zh) | 2019-04-30 | 2019-04-30 | 一种视频数据处理方法和相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110062272A CN110062272A (zh) | 2019-07-26 |
CN110062272B true CN110062272B (zh) | 2021-09-28 |
Family
ID=67321748
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910358569.8A Active CN110062272B (zh) | 2019-04-30 | 2019-04-30 | 一种视频数据处理方法和相关装置 |
Country Status (7)
Country | Link |
---|---|
US (1) | US11900614B2 (zh) |
EP (1) | EP3965431A4 (zh) |
JP (1) | JP7258400B6 (zh) |
KR (1) | KR102562208B1 (zh) |
CN (1) | CN110062272B (zh) |
SG (1) | SG11202105410RA (zh) |
WO (1) | WO2020220968A1 (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110062272B (zh) * | 2019-04-30 | 2021-09-28 | 腾讯科技(深圳)有限公司 | 一种视频数据处理方法和相关装置 |
CN111161309B (zh) * | 2019-11-19 | 2023-09-12 | 北航航空航天产业研究院丹阳有限公司 | 一种车载视频动态目标的搜索与定位方法 |
CN111193938B (zh) * | 2020-01-14 | 2021-07-13 | 腾讯科技(深圳)有限公司 | 视频数据处理方法、装置和计算机可读存储介质 |
CN112258551B (zh) * | 2020-03-18 | 2023-09-05 | 北京京东振世信息技术有限公司 | 一种物品掉落检测方法、装置、设备及存储介质 |
CN111753679B (zh) * | 2020-06-10 | 2023-11-24 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 微运动监测方法、装置、设备及计算机可读存储介质 |
CN111901662A (zh) * | 2020-08-05 | 2020-11-06 | 腾讯科技(深圳)有限公司 | 视频的扩展信息处理方法、设备和存储介质 |
CN114449326A (zh) * | 2020-11-06 | 2022-05-06 | 上海哔哩哔哩科技有限公司 | 视频标注方法、客户端、服务器及系统 |
CN114584824A (zh) * | 2020-12-01 | 2022-06-03 | 阿里巴巴集团控股有限公司 | 数据处理方法、系统、电子设备、服务端及客户端设备 |
CN112884830B (zh) * | 2021-01-21 | 2024-03-29 | 浙江大华技术股份有限公司 | 一种目标边框确定方法及装置 |
CN113034458B (zh) * | 2021-03-18 | 2023-06-23 | 广州市索图智能电子有限公司 | 室内人员轨迹分析方法、装置及存储介质 |
US20220351236A1 (en) * | 2021-05-03 | 2022-11-03 | Refercloud Llc | System and methods to predict winning tv ads, online videos, and other audiovisual content before production |
CN114281447B (zh) * | 2021-12-02 | 2024-03-19 | 武汉华工激光工程有限责任公司 | 一种载板激光加工软件界面处理方法、系统及存储介质 |
CN114827754B (zh) * | 2022-02-23 | 2023-09-12 | 阿里巴巴(中国)有限公司 | 视频首帧时间检测方法及装置 |
CN117270982A (zh) * | 2022-06-13 | 2023-12-22 | 中兴通讯股份有限公司 | 数据处理方法、控制装置、电子设备、计算机可读介质 |
CN115297355B (zh) * | 2022-08-02 | 2024-01-23 | 北京奇艺世纪科技有限公司 | 弹幕显示方法、生成方法、装置、电子设备及存储介质 |
CN116152301B (zh) * | 2023-04-24 | 2023-07-14 | 知行汽车科技(苏州)股份有限公司 | 一种目标的速度估计方法、装置、设备及介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101930779A (zh) * | 2010-07-29 | 2010-12-29 | 华为终端有限公司 | 一种视频批注方法及视频播放器 |
CN104881640A (zh) * | 2015-05-15 | 2015-09-02 | 华为技术有限公司 | 一种获取向量的方法及装置 |
CN105872442A (zh) * | 2016-03-30 | 2016-08-17 | 宁波三博电子科技有限公司 | 一种基于人脸识别的即时弹幕礼物赠送方法及系统 |
WO2018105290A1 (ja) * | 2016-12-07 | 2018-06-14 | ソニーセミコンダクタソリューションズ株式会社 | 画像センサ |
CN108242062A (zh) * | 2017-12-27 | 2018-07-03 | 北京纵目安驰智能科技有限公司 | 基于深度特征流的目标跟踪方法、系统、终端及介质 |
CN109087335A (zh) * | 2018-07-16 | 2018-12-25 | 腾讯科技(深圳)有限公司 | 一种人脸跟踪方法、装置和存储介质 |
CN109558505A (zh) * | 2018-11-21 | 2019-04-02 | 百度在线网络技术(北京)有限公司 | 视觉搜索方法、装置、计算机设备及存储介质 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8363109B2 (en) * | 2009-12-10 | 2013-01-29 | Harris Corporation | Video processing system providing enhanced tracking features for moving objects outside of a viewable window and related methods |
WO2014013690A1 (ja) * | 2012-07-17 | 2014-01-23 | パナソニック株式会社 | コメント情報生成装置およびコメント情報生成方法 |
US20140245350A1 (en) * | 2013-02-27 | 2014-08-28 | Blendagram, Inc. | System for and method of processing a video clip to identify an occluding object |
US20190096439A1 (en) * | 2016-05-23 | 2019-03-28 | Robert Brouwer | Video tagging and annotation |
WO2018017936A1 (en) * | 2016-07-22 | 2018-01-25 | Vid Scale, Inc. | Systems and methods for integrating and delivering objects of interest in video |
US20180082428A1 (en) * | 2016-09-16 | 2018-03-22 | Qualcomm Incorporated | Use of motion information in video data to track fast moving objects |
US10592786B2 (en) * | 2017-08-14 | 2020-03-17 | Huawei Technologies Co., Ltd. | Generating labeled data for deep object tracking |
CN109559330B (zh) * | 2017-09-25 | 2021-09-10 | 北京金山云网络技术有限公司 | 运动目标的视觉跟踪方法、装置、电子设备及存储介质 |
CN108389217A (zh) * | 2018-01-31 | 2018-08-10 | 华东理工大学 | 一种基于梯度域混合的视频合成方法 |
US20190392591A1 (en) * | 2018-06-25 | 2019-12-26 | Electronics And Telecommunications Research Institute | Apparatus and method for detecting moving object using optical flow prediction |
US10956747B2 (en) * | 2018-12-31 | 2021-03-23 | International Business Machines Corporation | Creating sparsely labeled video annotations |
CN110062272B (zh) * | 2019-04-30 | 2021-09-28 | 腾讯科技(深圳)有限公司 | 一种视频数据处理方法和相关装置 |
-
2019
- 2019-04-30 CN CN201910358569.8A patent/CN110062272B/zh active Active
-
2020
- 2020-04-10 EP EP20799151.4A patent/EP3965431A4/en active Pending
- 2020-04-10 SG SG11202105410RA patent/SG11202105410RA/en unknown
- 2020-04-10 KR KR1020217022717A patent/KR102562208B1/ko active IP Right Grant
- 2020-04-10 JP JP2021531593A patent/JP7258400B6/ja active Active
- 2020-04-10 WO PCT/CN2020/084112 patent/WO2020220968A1/zh unknown
-
2021
- 2021-05-28 US US17/334,678 patent/US11900614B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101930779A (zh) * | 2010-07-29 | 2010-12-29 | 华为终端有限公司 | 一种视频批注方法及视频播放器 |
CN104881640A (zh) * | 2015-05-15 | 2015-09-02 | 华为技术有限公司 | 一种获取向量的方法及装置 |
CN105872442A (zh) * | 2016-03-30 | 2016-08-17 | 宁波三博电子科技有限公司 | 一种基于人脸识别的即时弹幕礼物赠送方法及系统 |
WO2018105290A1 (ja) * | 2016-12-07 | 2018-06-14 | ソニーセミコンダクタソリューションズ株式会社 | 画像センサ |
CN108242062A (zh) * | 2017-12-27 | 2018-07-03 | 北京纵目安驰智能科技有限公司 | 基于深度特征流的目标跟踪方法、系统、终端及介质 |
CN109087335A (zh) * | 2018-07-16 | 2018-12-25 | 腾讯科技(深圳)有限公司 | 一种人脸跟踪方法、装置和存储介质 |
CN109558505A (zh) * | 2018-11-21 | 2019-04-02 | 百度在线网络技术(北京)有限公司 | 视觉搜索方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20210287379A1 (en) | 2021-09-16 |
CN110062272A (zh) | 2019-07-26 |
JP7258400B2 (ja) | 2023-04-17 |
EP3965431A1 (en) | 2022-03-09 |
SG11202105410RA (en) | 2021-06-29 |
JP2022511828A (ja) | 2022-02-01 |
EP3965431A4 (en) | 2022-10-12 |
JP7258400B6 (ja) | 2024-02-19 |
KR102562208B1 (ko) | 2023-07-31 |
WO2020220968A1 (zh) | 2020-11-05 |
US11900614B2 (en) | 2024-02-13 |
KR20210095953A (ko) | 2021-08-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110062272B (zh) | 一种视频数据处理方法和相关装置 | |
KR102281017B1 (ko) | 이미지 처리를 위한 신경망 모델 훈련 방법, 장치 및 저장 매체 | |
CN107948529B (zh) | 图像处理方法及装置 | |
US11488346B2 (en) | Picture rendering method and apparatus, storage medium, and electronic apparatus | |
CN108762505B (zh) | 基于手势的虚拟对象控制方法、装置、存储介质和设备 | |
US10825187B2 (en) | Method and system for object tracking | |
US20120044263A1 (en) | Terminal device and method for augmented reality | |
CN110288614B (zh) | 图像处理方法、装置、设备及存储介质 | |
EP3127086B1 (en) | Method and apparatus for processing a video file | |
US20220377235A1 (en) | Data simulation method and device for event camera | |
CN112950640A (zh) | 视频人像分割方法、装置、电子设备及存储介质 | |
CN115022679B (zh) | 视频处理方法、装置、电子设备和介质 | |
CN114071223A (zh) | 基于光流的视频插帧的生成方法、存储介质及终端设备 | |
CN114913182A (zh) | 图像分割方法、装置、设备和存储介质 | |
CN110689014A (zh) | 感兴趣区域的检测方法、装置、电子设备及可读存储介质 | |
CN111722891A (zh) | 显示方法、装置、计算机可读存储介质和计算机设备 | |
US20230401806A1 (en) | Scene element processing method and apparatus, device, and medium | |
CN115439386A (zh) | 图像融合方法、装置、电子设备和存储介质 | |
CN113255700B (zh) | 图像的特征图的处理方法及装置、存储介质、终端 | |
US20170163903A1 (en) | Method and electronic device for processing image | |
CN116506680B (zh) | 一种虚拟空间的评论数据处理方法、装置及电子设备 | |
JPWO2019224947A1 (ja) | 学習装置、画像生成装置、学習方法、画像生成方法及びプログラム | |
CN112597334B (zh) | 通信数据中心的数据处理方法 | |
CN117726963A (zh) | 画面数据处理方法、装置、电子设备及介质 | |
CN116193279A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |