CN116503439A - 视频处理方法、视频播放方法及相关装置 - Google Patents

视频处理方法、视频播放方法及相关装置 Download PDF

Info

Publication number
CN116503439A
CN116503439A CN202210059701.7A CN202210059701A CN116503439A CN 116503439 A CN116503439 A CN 116503439A CN 202210059701 A CN202210059701 A CN 202210059701A CN 116503439 A CN116503439 A CN 116503439A
Authority
CN
China
Prior art keywords
target
video image
data
target object
target video
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
Application number
CN202210059701.7A
Other languages
English (en)
Inventor
张莉娜
岳忠刚
屈小刚
张晨光
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202210059701.7A priority Critical patent/CN116503439A/zh
Priority to PCT/CN2023/071497 priority patent/WO2023138436A1/zh
Publication of CN116503439A publication Critical patent/CN116503439A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/292Multi-camera tracking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Image Analysis (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本申请公开了一种视频处理方法、视频播放方法及相关装置,属于视频处理技术领域。所述方法包括:获取目标视频图像的第一码流数据,所述目标视频图像为目标视频中的一帧视频图像,所述目标视频是对目标场景进行采集得到,所述目标场景中包括一个或多个运动对象;基于所述第一码流数据确定所述目标视频图像中目标对象的骨骼数据,所述目标对象为所述一个或多个运动对象中的一个运动对象;封装所述目标视频图像的第一码流数据以及所述目标视频图像中所述目标对象的骨骼数据,以得到所述目标视频图像的第二码流数据。本申请将目标视频图像的第一码流数据和目标视频图像中目标对象的骨骼数据封装在一起,有助于对目标对象的运动情况进行分析。

Description

视频处理方法、视频播放方法及相关装置
技术领域
本申请涉及视频处理技术领域,特别涉及一种视频处理方法、视频播放方法及相关装置。
背景技术
目前,对于速度滑冰、篮球、足球、排球、羽毛球等运动场景来说,在运动员的训练过程和比赛过程中通常都会录制视频,以便教练员分析运动员的运动数据,进而能够针对性地制定单个运动员的训练计划。但是,这种方式的分析准确性较低,从而导致最终确定的训练计划的针对性不强。
发明内容
本申请提供了一种视频处理方法、视频播放方法及相关装置,可以提高分析的准确性。所述技术方案如下:
第一方面,提供了一种视频处理方法,在该方法中,获取目标视频图像的第一码流数据,目标视频图像为目标视频中的一帧视频图像,目标视频是对目标场景进行采集得到,目标场景中包括一个或多个运动对象。基于第一码流数据确定目标视频图像中目标对象的骨骼数据,目标对象为一个或多个运动对象中的一个运动对象。封装目标视频图像的第一码流数据以及目标视频图像中目标对象的骨骼数据,以得到目标视频图像的第二码流数据。
通过确定目标视频图像中目标对象的骨骼数据,从而将目标视频图像中目标对象的骨骼数据与目标视频图像的第一码流数据封装在一起,保证第一码流数据和分析得到的骨骼数据同步,增加数据处理的灵活性、实时性、相关性,从而有助于对目标对象的运动情况进行分析,提高分析的准确率。而且,在运动员训练的场景中,可以使最终确定的训练计划更具针对性。
在一些实施例中,目标场景中部署有多个相机,目标视频为该多个相机中任一相机对目标场景进行采集得到的视频;或者,目标视频为目标对象对应的视频,目标对象对应的视频是将该多个相机采集得到的视频进行视频合成后得到的,且用于记录目标对象在目标场景中的运动过程。而且,该多个相机可以对应多个不同的视角,也即是,该多个相机可以从多个视角来拍摄目标场景。
在目标视频为目标对象的合成视频的情况下,通过上述方法能够分析出目标对象在目标场景中的全程运动过程,有助于对目标对象的运动情况进行更全面的分析。
相机可以将采集得到的视频发送给视频分析设备,也可以将采集得到的视频进行编码压缩之后,将视频流发送给视频分析设备。以目标视频为例,在相机将采集得到的目标视频发送给视频分析设备的情况下,视频分析设备可以将目标视频中的目标视频图像进行编码压缩,以得到目标视频图像的第一码流数据。在相机将采集得到的目标视频流发送给视频分析设备的情况下,视频分析设备可以直接从该目标视频流中获取目标视频图像的第一码流数据。接下来以相机将目标视频流发送给视频分析设备为例进行介绍。
目标场景可以为运动员的训练场景或比赛场景,还可以为应急逃生指挥场景、旅游场景、动物保护场景等等。在目标场景不同的情况下,目标场景中的运动对象也不同。比如,在目标场景为运动员的训练场景或比赛场景的情况下,运动对象可以为运动员。在目标场景为应急逃生指挥场景的情况下,运动对象可以为需要逃生的人员。在目标场景为旅游场景的情况下,运动对象可以为游客。在目标场景为动物保护场景的情况下,运动对象可以为动物。本申请还可以应用于其他的场景,此时,运动对象也会随着场景的不同而不同,此处不再一一赘述。
可选地,骨骼数据包括骨骼点的成像坐标,该成像坐标为骨骼点在目标视频图像中的坐标。此时,视频分析设备基于目标视频图像的第一码流数据确定目标视频图像中目标对象的骨骼数据的实现过程包括:解析目标视频图像的第一码流数据,以得到目标视频图像。对目标视频图像中的目标对象进行检测,以确定目标对象的成像区域。基于目标对象的成像区域确定目标对象的骨骼点的成像坐标。
通过确定目标对象的骨骼点的成像坐标,可以保证在后续显示目标视频图像之后,能够基于目标对象的骨骼点的成像坐标快速确定出目标对象的骨骼点,以及目标对象所处的位置。这样,能够快速地在播放界面中显示目标对象的标记框。
作为一种示例,视频分析设备在确定出目标对象的成像区域之后,可以对目标对象的成像区域进行骨骼分析,以确定目标对象的骨骼点的成像坐标。
可选地,骨骼数据除了包括骨骼点的成像坐标之外,还可以包括骨骼点在世界坐标系中的坐标。此时,视频分析设备基于上述过程确定出目标对象的骨骼点的成像坐标之后,还可以将目标对象的骨骼点的成像坐标转换至世界坐标系,以得到目标对象的骨骼点在世界坐标系中的坐标。
在对目标对象的运动情况进行分析的过程中,通常需要确定目标对象的运动轨迹、瞬时速度、运动位移等运动数据,从而借助这些运动数据来分析目标对象的运动情况。然而,这些运动数据通常需要借助世界坐标系中的数据来确定,所以,通过确定目标对象的骨骼点在世界坐标系中的坐标,进而将这个坐标也封装在一起,能够提高目标对象的运动情况的分析速度和分析准确度。
在本申请中,相机都是固定部署在目标场景中的,且每个相机的相机参数都是预先设置好的。在拍摄过程中,每个相机的拍摄区域和拍摄焦点都是固定不变的,因此每个相机的图像坐标系都是固定不变的。而且,在相机部署之后,还可以对相机进行标定,以确定相机的图像坐标系和世界坐标系之间的变换关系。这样,在确定出目标对象的骨骼点的成像坐标之后,可以按照用于拍摄目标视频的相机的图像坐标系与世界坐标系之间的变换关系,将该成像坐标从相机的图像坐标系转换至世界坐标系中,以得到目标对象的骨骼点在世界坐标系中的坐标。
需要说明的是,骨骼数据也可以只包括骨骼点的成像坐标,或者只包括骨骼点在世界坐标系中的坐标。而且骨骼数据还可能包括其他的数据,本申请对此不作限定。另外,目标对象可以泛指一个或多个运动对象。
可选地,视频分析设备封装目标视频图像的第一码流数据以及目标视频图像中目标对象的骨骼数据,以得到目标视频图像的第二码流数据之后,还可以生成媒体描述信息,该媒体描述信息包括第一码流数据的描述信息和目标对象的骨骼数据的描述信息。
视频分析设备不仅可以将目标视频图像的第一码流数据以及目标视频图像中目标对象的骨骼数据封装在一起,还可以将其他的数据也封装在一起。比如,音频数据、运动数据等等。
作为一种示例,视频分析设备还可以获取与目标视频图像对应的目标音频数据,封装目标视频图像的第一码流数据、目标视频图像中目标对象的骨骼数据、以及目标音频数据,以得到目标视频图像的第二码流数据。也即是,视频分析设备将目标视频图像的第一码流数据、目标视频图像中目标对象的骨骼数据、以及目标音频数据封装在一起。
作为另一种示例,视频分析设备还可以确定与目标视频图像对应的运动数据,该运动数据用于描述采集目标视频图像时目标对象在目标场景中的运动情况。然后,视频分析设备封装目标视频图像的第一码流数据、目标视频图像中目标对象的骨骼数据、以及与目标视频图像对应的运动数据,以得到目标视频图像的第二码流数据。也即是,视频分析设备将目标视频图像的第一码流数据、目标视频图像中目标对象的骨骼数据、以及与目标视频图像对应的运动数据封装在一起。
视频分析设备在封装目标视频图像的第一码流数据和目标对象的骨骼数据的同时,还可以将目标对象的运动数据也一起封装,这样,在显示目标视频图像时,可以直接显示目标对象的运动数据,无需经过各种运算来确定目标对象的运动数据,提高了显示效率。
与目标视频图像对应的运动数据包括瞬时速度、运动轨迹、运动位移、平均速度、步数等等。在该运动数据包括瞬时速度的情况下,该瞬时速度用于描述采集目标视频图像的瞬间目标对象在目标场景中的速度。在该运动数据包括运动轨迹的情况下,该运动轨迹用于描述采集目标视频图像时目标对象在目标场景中已运动过程的轨迹。在该运动数据包括运动位移的情况下,该运动位移用于描述采集目标视频图像时目标对象在目标场景中已运动过程的位移。在该运动数据包括平均速度的情况下,该平均速度用于描述采集目标视频图像时目标对象在目标场景中已运动过程的平均速度。在该运动数据包括步数的情况下,该步数用于描述采集目标视频图像时目标对象在目标场景中已运动过程的步数。也即是,瞬时速度用于描述目标视频图像的采集时刻目标对象在目标场景中的运动情况,运动轨迹、运动位移、平均速度和步数用于描述目标对象在目标场景中从目标视频的开始采集时刻到目标视频图像的采集时刻之间的运动情况。
在运动数据包括瞬时速度的情况下,视频分析设备确定目标对象在目标场景中的运动数据的实现过程包括:基于目标视频图像中目标对象的关键骨骼点在世界坐标系中的坐标,以及目标视频流中位于目标视频图像之前的一帧或多帧相邻视频图像中目标对象的关键骨骼点在世界坐标系中的坐标,确定目标对象的瞬时速度。
通过目标视频图像以及位于目标视频图像之前相邻的一帧视频图像确定出的瞬时速度的误差通常比较大,所以,本申请可以采用位于目标视频图像之前的多帧相邻视频图像来确定目标对象的瞬时速度,从而降低确定出的瞬时速度的误差,提高瞬时速度的准确度。
在运动数据包括运动轨迹的情况下,视频分析设备确定目标对象在目标场景中的运动数据的实现过程包括:基于目标视频图像中目标对象的关键骨骼点在世界坐标系中的水平坐标,生成目标对象的运动轨迹。也即是,视频分析设备每分析一帧视频图像,生成一段运动轨迹,所以,视频分析设备可以在分析目标视频图像的上一帧视频图像时生成的运动轨迹的基础上,基于目标视频图像中目标对象的关键骨骼点在世界坐标系中的水平坐标,增加上一帧视频图像与目标视频图像之间的轨迹,从而得到采集目标视频图像时目标对象在目标场景中的运动轨迹。换句话说,采集目标视频图像时目标对象在目标场景中的运动轨迹是基于目标视频图像以及目标视频图像之前的视频图像中目标对象的关键骨骼点在世界坐标系中的水平坐标确定得到。其中,该关键骨骼点可以为一个骨骼点。
在视频分析设备将目标视频图像的第一码流数据、目标视频图像中目标对象的骨骼数据、以及与目标视频图像对应的目标音频数据、运动数据也封装在一起的情况下,视频分析设备生成的媒体描述信息中不仅包括目标视频图像的第一码流数据的描述信息和目标对象的骨骼数据的描述信息,还可以包括目标音频数据的描述信息、运动数据的描述信息等。
在本申请实施例中,视频分析设备可以采用dash、hls等封装格式,对上述数据进行封装。当然,还可以采用其他的封装格式,本申请对此不作限定。在采用dash、hls的封装格式,对上述数据进行封装的情况下,将目标视频图像的第二码流数据写入一个数据分片中。而且一个数据分片中可以包括多帧数据,比如一个数据分片包括25帧的数据、32帧的数据等等,本申请对此不作限定。
第二方面,提供了一种视频播放方法,在该方法中,获取目标视频图像的第二码流数据,第二码流数据包括目标视频图像的第一码流数据以及目标视频图像中目标对象的骨骼数据。终端设备解析目标视频图像的第二码流数据,以得到目标视频图像的第一码流数据以及目标视频图像中目标对象的骨骼数据。基于目标视频图像的第一码流数据在播放界面中显示目标视频图像,以及基于目标视频图像中目标对象的骨骼数据,在播放界面中显示目标对象的标记框。
由于视频分析设备将目标视频图像中目标对象的骨骼数据与目标视频图像的第一码流数据封装在一起。这样,在显示目标视频图像的同时,还可以基于目标视频图像中目标对象的骨骼数据在播放界面中显示目标对象的标记框。也即是,在显示目标视频图像的同时,还可以实时地在播放界面中标记出目标对象,从而有助于对目标对象的运动情况进行分析,提高分析的准确率。而且,在运动员训练的场景中,可以使最终确定的训练计划更具针对性。
基于上文描述,目标对象的骨骼数据可以包括目标对象的骨骼点的成像坐标,也可以包括目标对象的骨骼点在世界坐标系中的坐标。在目标对象的骨骼数据包括目标对象的骨骼点的成像坐标的情况下,可以基于目标对象的骨骼点的成像坐标,确定目标对象在目标视频图像中的成像区域,进而显示目标对象的标记框。在目标对象的骨骼数据包括目标对象的骨骼点在世界坐标系中的坐标的情况下,可以将目标对象的骨骼点在世界坐标系中的坐标转换为成像坐标,基于目标对象的骨骼点的成像坐标,确定目标对象在目标视频图像中的成像区域,进而显示目标对象的标记框。
在目标视频图像的第二码流数据还包括与目标视频图像对应的目标音频数据的情况下,终端设备通过解析第二码流数据,还可以得到目标音频数据。在播放界面中显示目标视频图像以及目标对象的标记框的同时,还可以播放目标音频数据。
在目标视频图像的第二码流数据还包括与目标视频图像对应的运动数据的情况下,通过解析第二码流数据,还可以得到与目标视频图像对应的运动数据。在播放界面中显示目标视频图像以及目标对象的标记框的同时,还可以在播放界面中显示该运动数据。
在目标视频图像的第二码流数据不包括与目标视频图像对应的运动数据的情况下,基于目标视频图像中目标对象的骨骼数据,确定与目标视频图像对应的运动数据在播放界面中显示目标视频图像以及目标对象的标记框的同时,还可以在播放界面中显示该运动数据。
在显示目标视频图像以及目标对象的标记框的同时,显示该目标对象的运动数据,包括但不限目标对象的运动轨迹、目标对象的步数、目标对象的位移或目标对象的运动速度等。也即是,终端设备在显示目标视频图像时,还可以在播放画面上叠加显示对目标对象的实时运动分析结果,例如在播放画面上叠加显示目标对象的实时运动轨迹、实时步数、实时位移和实时速度等,以使原始的视频图像和分析得到的骨骼数据、运动数据等保持同步,增加数据处理的灵活性、实时性、相关性,从而有助于对目标对象的运动分析。
第三方面,提供了一种视频处理装置,所述视频处理装置具有实现上述第一方面中视频处理方法行为的功能。所述视频处理装置包括至少一个模块,该至少一个模块用于实现上述第一方面所提供的视频处理方法。
第四方面,提供了一种视频播放装置,所述视频处理装置具有实现上述第二方面中视频播放方法行为的功能。所述视频播放装置包括至少一个模块,该至少一个模块用于实现上述第二方面所提供的视频播放方法。
第五方面,提供了一种视频分析设备,所述视频分析设备包括处理器和存储器,所述存储器用于存储执行上述第一方面所提供的视频处理方法的计算机程序。所述处理器被配置为用于执行所述存储器中存储的计算机程序,以实现上述第一方面所述的视频处理方法。
可选地,所述视频分析设备还可以包括通信总线,该通信总线用于该处理器与存储器之间建立连接。
第六方面,提供了一种视频播放设备,所述视频播放设备包括处理器和存储器,所述存储器用于存储执行上述第一方面所提供的视频播放方法的计算机程序。所述处理器被配置为用于执行所述存储器中存储的计算机程序,以实现上述第一方面所述的视频播放方法。
可选地,所述视频播放设备还可以包括通信总线,该通信总线用于该处理器与存储器之间建立连接。其中,所述视频播放设备可以为终端设备,也可以为具有显示功能的管理设备。
第七方面,提供了一种计算机可读存储介质,所述存储介质内存储有指令,当所述指令在计算机上运行时,使得计算机执行上述第一方面所述的视频处理方法的步骤,或者执行上述第二方面所述的视频播放方法的步骤。
第八方面,提供了一种包含指令的计算机程序产品,当所述指令在计算机上运行时,使得计算机执行上述第一方面所述的视频处理方法的步骤,或者执行上述第二方面所述的视频播放方法的步骤。
或者说,提供了一种计算机程序,当所述计算机程序在计算机上运行时,使得计算机执行上述第一方面所述的视频处理方法的步骤,或者执行上述第二方面所述的视频播放方法的步骤。
上述第三方面至第八方面所获得的技术效果与第一方面和第二方面中对应的技术手段获得的技术效果近似,在这里不再赘述。
本申请提供的技术方案至少可以带来以下有益效果:
通过对目标视频图像进行分析,能够确定出目标视频图像中目标对象的骨骼数据,从而将目标视频图像中目标对象的骨骼数据与目标视频图像的第一码流数据封装在一起。这样,在显示目标视频图像的同时,还可以基于目标视频图像中目标对象的骨骼数据在播放界面中显示目标对象的标记框。也即是,将目标视频图像的第一码流数据和分析得到的骨骼数据封装在一起,保证第一码流数据和分析得到的骨骼数据同步,增加数据处理的灵活性、实时性、相关性,从而有助于对目标对象的运动情况进行分析,提高分析的准确率。而且,在运动员训练的场景中,可以使最终确定的训练计划更具针对性。
附图说明
图1是本申请实施例提供的一种视频处理系统的结构示意图;
图2是本申请实施例提供的一种相机分布位置示意图;
图3是本申请实施例提供的另一种视频处理系统的结构示意图;
图4是本申请实施例提供的一种视频处理方法的流程示意图;
图5是本申请实施例提供的一种人体骨骼点的分布示意图;
图6是本申请实施例提供的一种目标对象的运动轨迹示意图;
图7是本申请实施例提供的一种播放界面示意图;
图8是本申请实施例提供的另一种播放界面示意图;
图9是本申请实施例提供的一种视频处理装置的结构示意图;
图10是本申请实施例提供的一种视频播放装置的结构示意图;
图11是本申请实施例提供的一种计算机设备的结构示意图;
图12是本申请实施例提供的一种终端设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
图1是本申请实施例提供的一种视频处理系统的结构示意图。请参考图1,该视频处理系统包括媒体源101和视频分析设备102。媒体源101与视频分析设备102进行通信连接,该通信连接为有线连接或无线连接。
媒体源101用于提供一路或多路视频流。在图1中,媒体源101包括一个或多个相机1011,该一个或多个相机1011部署在目标场景中。每个相机1011用于对目标场景进行采集,以得到一路视频流。图1中相机的数量仅用作示例性说明,不作为对本申请实施例提供的视频处理系统的限制。其中,目标场景可以为运动员的训练场景或比赛场景,还可以为应急逃生指挥场景、旅游场景、动物保护场景等等,本申请实施例对目标场景不做限定。
在目标场景中部署有多个相机1011的情况下,该多个相机1011可以采用环形排布方式、扇形排布方式、直线排布方式或其它不规则排布方式等,可根据实际部署场景设计相应的相机排布方式。例如,该多个相机1011用于采集运动员在环形的速滑赛道中的运动视频,则可以采用环形排布方式围绕速滑赛道部署多个相机1011。图2是本申请实施例提供的一种相机分布位置示意图。如图2所示,速滑赛道附近部署有20个相机,分别记为相机1-20。该20个相机采用环形排布方式,且该20个相机的拍摄方向均朝向速滑赛道。可选地,该20个相机的拍摄区域可完整地覆盖整个速滑赛道,也即是,当某个运动员在该速滑赛道中运动时,每个采集时刻该20个相机中始终存在至少一个相机能够采集到包含该运动员的成像的视频图像。
视频分析设备102用于接收来自媒体源101中每个相机1011的一路视频流,基于每路视频流中每帧视频图像的第一码流数据,确定每帧视频图像中目标对象的骨骼数据,进而封装每帧视频图像的第一码流数据和每帧视频图像中目标对象的骨骼数据,以得到每帧视频图像的第二码流数据。也即是,对于任意一帧视频图像来说,基于该视频图像的第一码流数据确定该视频图像中目标对象的骨骼数据,将该视频图像的第一码流数据和该视频图像中目标对象的骨骼数据封装在一起,以得到该视频图像的第二码流数据。
上述是以媒体源101中的每个相机1011通过对目标场景进行采集来得到一路视频流,并将该路视频流发送给视频分析设备102,由视频分析设备102进行处理为例进行说明。也即是,媒体源101中的每个相机1011通过对目标视频进行采集,以得到一路视频,对该路视频进行编码压缩,以得到一路视频流,将该路视频流发送给视频分析设备102。视频分析设备102对该路视频流进行处理。当然,媒体源101中的每个相机1011也可以通过对目标场景进行采集来得到一路视频,直接将该路视频发送给视频分析设备102,并不对该路视频进行编码压缩。由视频分析设备102获取每帧视频图像的第一码流数据,并执行后续的处理过程。
在一些实施例中,视频分析设备102不仅可以对来自每个相机1011的一路视频流进行处理,还可以对来自多个相机1011的多路视频流进行视频合成,以得到目标对象对应的视频流,从而对目标对象对应的视频流进行处理。也即是,视频分析设备102接收到来自多个相机1011的多路视频流之后,提取该多路视频流中包含目标对象的成像的视频图像,进而合成该目标对象对应的视频流,对合成得到的目标对象对应的视频流进行处理。其中,合成得到的目标对象对应的视频流中的每帧视频图像都包括目标对象的成像,该视频流也可称为目标对象对应的合成视频流。
在一些实施例中,请参考图3,该视频处理系统还可以包括管理设备103,该管理设备103可以为第三方设备。在视频分析设备102将每路视频流中每帧视频图像的第一码流数据和每帧视频图像中目标对象的骨骼数据封装在一起之后,可以将封装后得到的码流发送给管理设备103。可选地,在图3中,该视频处理系统还可以包括多个终端设备104,每个终端104可以从视频分析设备102中获取封装后得到的码流,通过对码流进行解析来展示每帧视频图像和每个视频图像中目标对象的骨骼数据。或者,每个终端设备104可以从管理设备103中获取封装后得到的码流,通过对码流进行解析来展示每帧视频图像和每个视频图像中目标对象的骨骼数据。
其中,相机1011可以为任何一种相机,例如单目相机、双目相机、多目相机等等。
视频分析设备102以及管理设备103可以是一台独立的服务器,也可以是由多台物理服务器组成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(contentdelivery network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器,或者是一个云计算服务中心。
终端设备104可以是任何一种可与用户通过键盘、触摸板、触摸屏、遥控器、语音交互或手写设备等一种或多种方式进行人机交互的电子产品,例如个人计算机(personalcomputer,PC)、手机、智能手机、个人数字助手(personal digital assistant,PDA)、掌上电脑PPC(pocket PC)、平板电脑等。
本领域技术人员应能理解上述相机1011、视频分析设备102、管理设备103和终端设备104仅为举例,其他现有的或今后可能出现的设备如可适用于本申请实施例,也应包含在本申请实施例保护范围以内,并在此以引用方式包含于此。
需要说明的是,本申请实施例描述的系统架构是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着系统架构的演变,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
请参考图4,图4是本申请实施例提供的一种视频处理方法的流程示意图。该方法包括如下几个步骤。
步骤401:视频分析设备获取目标视频图像的第一码流数据,目标视频图像为目标视频中的一帧视频图像,目标视频是对目标场景进行采集得到,目标场景中包括一个或多个运动对象。
在一些实施例中,目标场景中部署有多个相机,目标视频为该多个相机中任一相机对目标场景进行采集得到的视频;或者,目标视频为目标对象对应的视频,目标对象对应的视频是将该多个相机采集得到的视频进行视频合成后得到的,且用于记录目标对象在目标场景中的运动过程。而且,该多个相机可以对应多个不同的视角,也即是,该多个相机可以从多个视角来拍摄目标场景。
基于上文描述,相机可以将采集得到的视频发送给视频分析设备,也可以将采集得到的视频进行编码压缩之后,将视频流发送给视频分析设备。以目标视频为例,在相机将采集得到的目标视频发送给视频分析设备的情况下,视频分析设备可以将目标视频中的目标视频图像进行编码压缩,以得到目标视频图像的第一码流数据。在相机将采集得到的目标视频流发送给视频分析设备的情况下,视频分析设备可以直接从该目标视频流中获取目标视频图像的第一码流数据。接下来以相机将目标视频流发送给视频分析设备为例进行介绍。
基于上文描述,目标场景可以为运动员的训练场景或比赛场景,还可以为应急逃生指挥场景、旅游场景、动物保护场景等等。在目标场景不同的情况下,目标场景中的运动对象也不同。比如,在目标场景为运动员的训练场景或比赛场景的情况下,运动对象可以为运动员。在目标场景为应急逃生指挥场景的情况下,运动对象可以为需要逃生的人员。在目标场景为旅游场景的情况下,运动对象可以为游客。在目标场景为动物保护场景的情况下,运动对象可以为动物。本申请实施例还可以应用于其他的场景,此时,运动对象也会随着场景的不同而不同,此处不再一一赘述。
步骤402:视频分析设备基于目标视频图像的第一码流数据确定目标视频图像中目标对象的骨骼数据,目标对象为目标场景包括的一个或多个运动对象中的一个运动对象。
在一些实施例中,骨骼数据包括骨骼点的成像坐标,该成像坐标为骨骼点在目标视频图像中的坐标。此时,视频分析设备基于目标视频图像的第一码流数据确定目标视频图像中目标对象的骨骼数据的实现过程包括:解析目标视频图像的第一码流数据,以得到目标视频图像。对目标视频图像中的目标对象进行检测,以确定目标对象的成像区域。基于目标对象的成像区域确定目标对象的骨骼点的成像坐标。
作为一种示例,视频分析设备在确定出目标对象的成像区域之后,可以对目标对象的成像区域进行骨骼分析,以确定目标对象的骨骼点的成像坐标。
可选地,目标对象为人体。人体的骨骼点包括但不限于鼻子、眼睛、耳朵、肩膀、手肘、手腕、髋部、膝盖和脚踝等。例如,图5是本申请实施例提供的一种人体骨骼点的分布示意图。如图5所示,人体可以包括17个骨骼点,分别为鼻子0、左眼1、右眼2、左耳3、右耳4、左肩5、右肩6、左胳膊肘7、右胳膊肘8、左手腕9、右手腕10、左髋11、右髋12、左膝13、右膝14、左脚踝15、右脚踝16。在视频分析设备确定出目标对象的成像区域之后,可以对目标对象的这17个骨骼点进行检测,来确定目标对象的各个骨骼点的成像坐标。
在某些情况下,目标对象的17个骨骼点并不一定都能检测到,比如,在目标对象侧身的情况下,可能只有部分骨骼点能够检测到。即,目标对象的成像区域中可能存在直接能够体现的骨骼点,还可能存在无法体现的骨骼点。此时,视频分析设备可以只确定能够直接体现的骨骼点的成像坐标。当然,视频分析设备也可以按照相关算法推断得到成像上无法体现的骨骼点的成像坐标。
在另一些实施例中,骨骼数据除了包括骨骼点的成像坐标之外,还可以包括骨骼点在世界坐标系中的坐标。此时,视频分析设备基于上述过程确定出目标对象的骨骼点的成像坐标之后,还可以将目标对象的骨骼点的成像坐标转换至世界坐标系,以得到目标对象的骨骼点在世界坐标系中的坐标。
本申请实施例中,相机都是固定部署在目标场景中的,且每个相机的相机参数都是预先设置好的。在拍摄过程中,每个相机的拍摄区域和拍摄焦点都是固定不变的,因此每个相机的图像坐标系都是固定不变的。而且,在相机部署之后,还可以对相机进行标定,以确定相机的图像坐标系和世界坐标系之间的变换关系。这样,在确定出目标对象的骨骼点的成像坐标之后,可以按照用于拍摄目标视频的相机的图像坐标系与世界坐标系之间的变换关系,将该成像坐标从相机的图像坐标系转换至世界坐标系中,以得到目标对象的骨骼点在世界坐标系中的坐标。
需要说明的是,骨骼数据也可以只包括骨骼点的成像坐标,或者只包括骨骼点在世界坐标系中的坐标。而且骨骼数据还可能包括其他的数据,本申请实施例对此不作限定。另外,目标对象可以泛指一个或多个运动对象。
步骤403:视频分析设备封装目标视频图像的第一码流数据以及目标视频图像中目标对象的骨骼数据,以得到目标视频图像的第二码流数据。
也即是,视频分析设备将目标视频图像的第一码流数据以及目标视频图像中目标对象的骨骼数据封装为一帧数据,以得到目标视频图像的第二码流数据。
在一些实施例中,视频分析设备封装目标视频图像的第一码流数据以及目标视频图像中目标对象的骨骼数据,以得到目标视频图像的第二码流数据之后,还可以生成媒体描述信息,该媒体描述信息包括第一码流数据的描述信息和目标对象的骨骼数据的描述信息。
视频分析设备不仅可以将目标视频图像的第一码流数据以及目标视频图像中目标对象的骨骼数据封装在一起,还可以将其他的数据也封装在一起。比如,音频数据、运动数据等等。
作为一种示例,视频分析设备还可以获取与目标视频图像对应的目标音频数据,封装目标视频图像的第一码流数据、目标视频图像中目标对象的骨骼数据、以及目标音频数据,以得到目标视频图像的第二码流数据。也即是,视频分析设备将目标视频图像的第一码流数据、目标视频图像中目标对象的骨骼数据、以及目标音频数据封装在一起。
其中,目标视频中可以包括音频数据,所以,视频分析设备可以从目标视频中获取与目标视频图像对应的目标音频数据。当然,视频分析设备也可以为目标视频进行配音,所以,视频分析设备可以从配音音频中确定与目标视频图像对应的目标音频数据。
作为另一种示例,视频分析设备还可以确定与目标视频图像对应的运动数据,该运动数据用于描述采集目标视频图像时目标对象在目标场景中的运动情况。然后,视频分析设备封装目标视频图像的第一码流数据、目标视频图像中目标对象的骨骼数据、以及与目标视频图像对应的运动数据,以得到目标视频图像的第二码流数据。也即是,视频分析设备将目标视频图像的第一码流数据、目标视频图像中目标对象的骨骼数据、以及与目标视频图像对应的运动数据封装在一起。
与目标视频图像对应的运动数据包括瞬时速度、运动轨迹、运动位移、平均速度、步数等等。在该运动数据包括瞬时速度的情况下,该瞬时速度用于描述采集目标视频图像的瞬间目标对象在目标场景中的速度。在该运动数据包括运动轨迹的情况下,该运动轨迹用于描述采集目标视频图像时目标对象在目标场景中已运动过程的轨迹。在该运动数据包括运动位移的情况下,该运动位移用于描述采集目标视频图像时目标对象在目标场景中已运动过程的位移。在该运动数据包括平均速度的情况下,该平均速度用于描述采集目标视频图像时目标对象在目标场景中已运动过程的平均速度。在该运动数据包括步数的情况下,该步数用于描述采集目标视频图像时目标对象在目标场景中已运动过程的步数。也即是,瞬时速度用于描述目标视频图像的采集时刻目标对象在目标场景中的运动情况,运动轨迹、运动位移、平均速度和步数用于描述目标对象在目标场景中从目标视频的开始采集时刻到目标视频图像的采集时刻之间的运动情况。
在运动数据包括瞬时速度的情况下,视频分析设备确定目标对象在目标场景中的运动数据的实现过程包括:基于目标视频图像中目标对象的关键骨骼点在世界坐标系中的坐标,以及目标视频流中位于目标视频图像之前的一帧或多帧相邻视频图像中目标对象的关键骨骼点在世界坐标系中的坐标,确定目标对象的瞬时速度。
目标视频存在一定的帧率,比如一秒25帧。所以,视频分析设备能够确定出相邻两帧视频图像之间的时长。这样,视频分析设备可以基于目标视频图像中目标对象的关键骨骼点在世界坐标系中的坐标,以及目标视频流中参考视频图像中目标对象的关键骨骼点在世界坐标系中的坐标,确定该关键骨骼点的移动距离。参考视频图像为该一帧或多帧相邻视频图像中最靠前的一帧视频图像。确定目标视频图像与参考视频图像之间的时长,将该移动距离除以该时长,以得到目标对象的瞬时速度。
在参考视频图像距离目标视频图像多帧的情况下,通过上述方法确定出的瞬时速度的误差较小,比如,参考视频图像距离目标视频图像5帧的情况下,通过上述方法确定出的瞬时速度的误差较小。
关键骨骼点为目标对象的骨骼点中的一个或多个骨骼点。在关键骨骼点包括多个骨骼点的情况下,视频分析设备可以按照上述方法确定出每个关键骨骼点对应的瞬时速度。然后将该多个关键骨骼点的瞬时速度取平均值,以得到目标对象的瞬时速度。当然,还可以按照其他的方式进行处理,本申请对此不作限定。
在运动数据包括运动轨迹的情况下,视频分析设备确定目标对象在目标场景中的运动数据的实现过程包括:基于目标视频图像中目标对象的关键骨骼点在世界坐标系中的水平坐标,生成目标对象的运动轨迹。也即是,视频分析设备每分析一帧视频图像,生成一段运动轨迹,所以,视频分析设备可以在分析目标视频图像的上一帧视频图像时生成的运动轨迹的基础上,基于目标视频图像中目标对象的关键骨骼点在世界坐标系中的水平坐标,增加上一帧视频图像与目标视频图像之间的轨迹,从而得到采集目标视频图像时目标对象在目标场景中的运动轨迹。换句话说,采集目标视频图像时目标对象在目标场景中的运动轨迹是基于目标视频图像以及目标视频图像之前的视频图像中目标对象的关键骨骼点在世界坐标系中的水平坐标确定得到。其中,该关键骨骼点可以为一个骨骼点。
例如,图6是本申请实施例提供的一种目标对象的运动轨迹示意图。如图6所示,目标对象在速滑赛道上运动,目标对象的关键骨骼点在第一帧视频图像的采集时刻的二维水平坐标为(xt1,yt1),在第二帧视频图像的采集时刻的二维水平坐标为(xt2,yt2),在第三帧视频图像的采集时刻的二维水平坐标为(xt3,yt3),在第四帧视频图像的采集时刻的二维水平坐标为(xt4,yt4),在第五帧视频图像的采集时刻的二维水平坐标为(xt5,yt5)。假设,目标视频图像为第五帧视频图像,所以,视频分析设备可以在前四帧视频图像得到的运动轨迹的基础上,增加第四帧与第五帧之间的运动轨迹,最终得到一条位于水平面上的运动轨迹。其中,二维水平坐标反映世界坐标系下的水平位置。
对于运动位移、平均速度、步数来说,视频分析设备可以按照相关方式来确定。比如,在视频分析设备确定出瞬时速度之后,可以确定目标视频的开始采集时刻到目标视频图像的采集时刻之间的时长,并确定这段时间已运动的位移,从而通过运动位移除以该时长,得到平均速度。又比如,在计算目标对象的步数时,可以基于目标视频流,将目标对象的左右脚踝每交叉一次判定成一步,以此实现步数的计算。
在视频分析设备将目标视频图像的第一码流数据、目标视频图像中目标对象的骨骼数据、以及与目标视频图像对应的目标音频数据、运动数据也封装在一起的情况下,视频分析设备生成的媒体描述信息中不仅包括目标视频图像的第一码流数据的描述信息和目标对象的骨骼数据的描述信息,还可以包括目标音频数据的描述信息、运动数据的描述信息等。
在本申请实施例中,视频分析设备可以采用dash、hls等封装格式,对上述数据进行封装。当然,还可以采用其他的封装格式,本申请实施例对此不作限定。在采用dash、hls的封装格式,对上述数据进行封装的情况下,将目标视频图像的第二码流数据写入一个数据分片中。而且一个数据分片中可以包括多帧数据,比如一个数据分片包括25帧的数据、32帧的数据等等,本申请实施例对此不作限定。
上述提到的描述信息可以包括标识、类型、编码格式等等,当然,还可以包括其他的信息,本申请实施例对此不作限定。比如,视频分析设备将目标视频图像的第一码流数据、目标视频图像中目标对象的骨骼数据、以及与目标视频图像对应的目标音频数据封装在一起,而且视频分析设备采用dash封装格式来封装,此时,媒体描述信息可以称为媒体展示描述(media presentation description,MPD),在该媒体描述信息中包括三个自适应集合(Adaptation Set),第一个自适应集合的标识为0、内容类型为audio。第一个自适应集合中包括目标音频数据的描述信息,即目标音频数据的标识为0、媒体展示类型为audio/mp4、编码格式为mp4a.40.2。第二个自适应集合的标识为cam1、内容类型为video。第二个自适应集合中包括目标视频图像的第一码流数据的描述信息,即目标视频图像的第一码流数据的标识为cam1、媒体展示类型为video/mp4、编码格式为avc1。第三个自适应集合的标识为personPose、内容类型为text。第三个自适应集合包括目标视频图像中目标对象的骨骼数据的描述信息,即骨骼数据的标识为标识cam1_2dPose、媒体展示类型为application/mp4、编码格式为zip。
MPD的内容可以如下所示:
可选地,在视频分析设备确定得到目标视频图像的第二码流数据之后,还可以将目标视频图像的第二码流数据发送给终端设备,由终端设备来展示。或者,视频分析设备还可以将目标视频图像的第二码流数据发送给管理设备,由管理设备将目标视频图像的第二码流数据发送给终端设备,由终端设备来展示。可选地,在管理设备具有显示功能的情况下,管理设备也可以进行展示。接下来以终端设备来展示为例进行介绍。
在一些实施例中,终端设备获取目标视频图像的第二码流数据,第二码流数据包括目标视频图像的第一码流数据以及目标视频图像中目标对象的骨骼数据。终端设备解析目标视频图像的第二码流数据,以得到目标视频图像的第一码流数据以及目标视频图像中目标对象的骨骼数据。基于目标视频图像的第一码流数据在播放界面中显示目标视频图像,以及基于目标视频图像中目标对象的骨骼数据,在播放界面中显示目标对象的标记框。
终端设备可以解析目标视频图像的第一码流数据,以得到目标视频图像,并在播放界面中显示目标视频图像。同时,终端设备基于目标视频图像中目标对象的骨骼数据,确定目标对象的成像区域,并在目标对象的成像区域处显示目标对象的标记框。
基于上文描述,目标对象的骨骼数据可以包括目标对象的骨骼点的成像坐标,也可以包括目标对象的骨骼点在世界坐标系中的坐标。在目标对象的骨骼数据包括目标对象的骨骼点的成像坐标的情况下,可以基于目标对象的骨骼点的成像坐标,确定目标对象在目标视频图像中的成像区域,进而显示目标对象的标记框。在目标对象的骨骼数据包括目标对象的骨骼点在世界坐标系中的坐标的情况下,可以将目标对象的骨骼点在世界坐标系中的坐标转换为成像坐标,基于目标对象的骨骼点的成像坐标,确定目标对象在目标视频图像中的成像区域,进而显示目标对象的标记框。
在目标视频图像的第二码流数据还包括与目标视频图像对应的目标音频数据的情况下,终端设备通过解析第二码流数据,还可以得到目标音频数据。终端设备在播放界面中显示目标视频图像以及目标对象的标记框的同时,还可以播放目标音频数据。
在目标视频图像的第二码流数据还包括与目标视频图像对应的运动数据的情况下,终端设备通过解析第二码流数据,还可以得到与目标视频图像对应的运动数据。终端设备在播放界面中显示目标视频图像以及目标对象的标记框的同时,还可以在播放界面中显示该运动数据。
在目标视频图像的第二码流数据不包括与目标视频图像对应的运动数据的情况下,终端设备可以基于目标视频图像中目标对象的骨骼数据,确定与目标视频图像对应的运动数据。终端设备在播放界面中显示目标视频图像以及目标对象的标记框的同时,还可以在播放界面中显示该运动数据。其中,终端设备基于目标视频图像中目标对象的骨骼数据,确定与目标视频图像对应的运动数据的实现过程与上述视频分析设备确定运动数据的过程类似,此处不再赘述。
例如,以运动员在速滑场景中进行训练为例,图7是本申请实施例提供的一种播放界面示意图。如图7所示,该播放界面上显示有目标视频图像,以及目标运动员的标记框。而且,在图7中,目标运动员包括选手1和选手2,在该播放界面中还显示有选手1的瞬时速度和选手2的瞬时速度。
可选地,播放界面可以包括多个区域,该多个区域分别用于显示上述的各种数据。比如,该多个区域分别为视角选择区域、视频播放区域、运动轨迹显示区域、速度显示区域、步数显示区域等等。视角选择区域用于显示该多个相机分别对应的视角,这样,用户可以从该视角选择区域中选择需要显示的播放画面的视角。视频播放区域用于显示所选的各个视角的视频图像。运动轨迹显示区域用于显示目标对象的运动轨迹。速度显示区域用于显示目标对象的速度,步数显示区域用于显示目标对象的步数。可选地,在目标视频包括多个运动对象的情况下,该播放界面还可以包括运动对象选择区域。
例如,图8是本申请实施例提供的另一种播放界面示意图。如图8所示,该播放界面包括运动对象选择区域、视角选择区域、视频播放区域、运动轨迹显示区域、速度显示区域和步数显示区域。运动对象选择区域包括两个运动员,用户可以从这两个运动员中选择一个运动员,从而其他区域可以显示这个运动员的相关信息。视角选择区域中包括8个视角,每个视角对应一个相机,进而对应一个视频画面。假设用户选择视角1、视角3和视角5,视频播放区域中可以显示这几个视角的视频画面。速度显示区域用于显示运动员的百分分段速度,步数显示区域包括两个子区域,分别为每百米步数区域和每5秒步数区域,每百米步数区域用于显示这个运动员在百米内的步数,每5秒步数区域用于显示这个运动员在5秒内的步数。
本申请实施例中,终端设备在显示目标视频图像以及目标对象的标记框的同时,显示该目标对象的运动数据,包括但不限目标对象的运动轨迹、目标对象的步数、目标对象的位移或目标对象的运动速度等。也即是,终端设备在显示目标视频图像时,还可以在播放画面上叠加显示对目标对象的实时运动分析结果,例如在播放画面上叠加显示目标对象的实时运动轨迹、实时步数、实时位移和实时速度等,以使原始的视频图像和分析得到的骨骼数据、运动数据等保持同步,增加数据处理的灵活性、实时性、相关性,从而有助于对目标对象的运动分析。
本申请实施例提供的视频处理方法的步骤的先后顺序能够进行适当调整,步骤也能够根据情况进行相应增减。任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本申请的保护范围之内。另外,目标场景中部署的相机也可以由远程操控无人机等方式实现。
在本申请实施例中,通过对目标视频图像进行分析,能够确定出目标视频图像中目标对象的骨骼数据、目标音频数据、运动数据等等,从而将这些数据与目标视频图像的第一码流数据封装在一起。这样,在显示目标视频图像的同时,还可以实时显示这些数据。也即是,将原始的目标视频图像的第一码流数据和分析得到的一些数据封装在一起,保证第一码流数据和分析得到的数据同步,增加数据处理的灵活性、实时性、相关性,从而有助于对目标对象的运动情况进行分析,提高分析的准确率。而且,在运动员训练的场景中,可以使最终确定的训练计划更具针对性。
图9是本申请实施例提供的一种视频处理装置的结构示意图,该视频处理装置可以由软件、硬件或者两者的结合实现成为视频分析设备的部分或者全部,该视频分析设备可以为图1或图3所示的视频分析设备。参见图9,该装置包括:码流数据获取模块901、骨骼数据确定模块902和数据封装模块903。
码流数据获取模块901,用于获取目标视频图像的第一码流数据,目标视频图像为目标视频中的一帧视频图像,目标视频是对目标场景进行采集得到,目标场景中包括一个或多个运动对象;
骨骼数据确定模块902,用于基于第一码流数据确定目标视频图像中目标对象的骨骼数据,目标对象为一个或多个运动对象中的一个运动对象;
数据封装模块903,用于封装目标视频图像的第一码流数据以及目标视频图像中目标对象的骨骼数据,以得到目标视频图像的第二码流数据。
可选地,骨骼数据包括骨骼点的成像坐标,成像坐标为骨骼点在目标视频图像中的坐标;
骨骼数据确定模块902具体用于:
解析第一码流数据,以得到目标视频图像;
对目标视频图像中的目标对象进行检测,以确定目标对象的成像区域;
基于成像区域确定目标对象的骨骼点的成像坐标。
可选地,骨骼数据还包括骨骼点在世界坐标系中的坐标;
骨骼数据确定模块902还用于:
将目标对象的骨骼点的成像坐标转换至世界坐标系,以得到目标对象的骨骼点在世界坐标系中的坐标。
可选地,该装置还包括:
描述信息生成模块,用于生成媒体描述信息,媒体描述信息包括第一码流数据的描述信息和目标对象的骨骼数据的描述信息。
可选地,该装置还包括:
音频数据获取模块,用于获取与目标视频图像对应的目标音频数据;
数据封装模块903具体用于:
封装目标视频图像的第一码流数据、目标视频图像中目标对象的骨骼数据、以及目标音频数据,以得到目标视频图像的第二码流数据。
可选地,该装置还包括:
运动数据确定模块,用于确定与目标视频图像对应的运动数据,运动数据用于描述采集目标视频图像时目标对象在目标场景中的运动情况;
数据封装模块903具体用于:
封装目标视频图像的第一码流数据、目标视频图像中目标对象的骨骼数据、以及运动数据,以得到目标视频图像的第二码流数据。
可选地,目标场景中部署有多个相机,目标视频为多个相机中任一相机对目标场景进行采集得到的视频;或者,
目标视频为目标对象对应的视频,目标对象对应的视频是将多个相机采集得到的视频进行视频合成后得到的,且用于记录目标对象在目标场景中的运动过程。
在本申请实施例中,通过对目标视频图像进行分析,能够确定出目标视频图像中目标对象的骨骼数据、目标音频数据、运动数据等等,从而将这些数据与目标视频图像的第一码流数据封装在一起。这样,在显示目标视频图像的同时,还可以实时显示这些数据。也即是,将原始的目标视频图像的第一码流数据和分析得到的一些数据封装在一起,保证第一码流数据和分析得到的数据同步,增加数据处理的灵活性、实时性、相关性,从而有助于对目标对象的运动情况进行分析,提高分析的准确率。而且,在运动员训练的场景中,可以使最终确定的训练计划更具针对性。
需要说明的是:上述实施例提供的视频处理装置在视频处理时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的视频处理装置与视频处理方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图10是本申请实施例提供的一种视频播放装置的结构示意图,该视频播放装置可以由软件、硬件或者两者的结合实现成为管理设备或终端设备的部分或者全部,该设备可以为图3所示的管理设备或终端设备。参见图10,该装置包括:码流数据获取模块1001、码流解析模块1002和第一显示模块1003。
码流数据获取模块1001,用于获取目标视频图像的第二码流数据,第二码流数据包括目标视频图像的第一码流数据以及目标视频图像中目标对象的骨骼数据,目标视频图像为目标视频中的一帧视频图像,目标视频是对目标场景进行采集得到,目标对象为目标场景包括一个或多个运动对象中的一个运动对象;
码流解析模块1002,用于解析第二码流数据,以得到目标视频图像的第一码流数据以及目标视频图像中目标对象的骨骼数据;
第一显示模块1003,用于基于第一码流数据在播放界面中显示目标视频图像,以及基于目标视频图像中目标对象的骨骼数据,在播放界面中显示目标对象的标记框。
可选地,第二码流数据还包括与目标视频图像对应的运动数据,运动数据用于描述采集目标视频图像时目标对象在目标场景中的运动情况;该装置还包括:
第二显示模块,用于在播放界面中显示运动数据。
可选地,该装置还包括:
运动数据确定模块,用于基于目标视频图像中目标对象的骨骼数据,确定与目标视频图像对应的运动数据,运动数据用于描述采集目标视频图像时目标对象在目标场景中的运动情况;
第三显示模块,用于在播放界面中显示运动数据。
可选地,目标场景中部署有多个相机,目标视频流为多个相机中任一相机对目标场景进行采集得到的视频流;或者,
目标视频流为目标对象对应的视频流,目标对象对应的视频流是将多个相机采集得到的视频流进行视频合成后得到的,且用于记录目标对象在目标场景中的运动过程。
在本申请实施例中,通过对目标视频图像进行分析,能够确定出目标视频图像中目标对象的骨骼数据、目标音频数据、运动数据等等,从而将这些数据与目标视频图像的第一码流数据封装在一起。这样,在显示目标视频图像的同时,还可以实时显示这些数据。也即是,将原始的目标视频图像的第一码流数据和分析得到的一些数据封装在一起,保证第一码流数据和分析得到的数据同步,增加数据处理的灵活性、实时性、相关性,从而有助于对目标对象的运动情况进行分析,提高分析的准确率。而且,在运动员训练的场景中,可以使最终确定的训练计划更具针对性。
需要说明的是:上述实施例提供的视频播放装置在视频播放时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的视频播放装置与视频播放方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
请参考图11,图11是根据本申请实施例示出的一种计算机设备的结构示意图,该计算机设备可以是图1或图3中所示的视频分析设备或管理设备。该计算机设备包括处理器1101和存储器1102。存储器1102,用于存储计算机程序,所述计算机程序包括程序指令;处理器1101,用于调用所述计算机程序,实现如上述方法实施例中图4示出的方法步骤。
处理器1101可以是一个通用中央处理器(central processing unit,CPU)、网络处理器(network processor,NP)、微处理器、或者可以是一个或多个用于实现本申请方案的集成电路,例如,专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD)、现场可编程逻辑门阵列(field-programmable gate array,FPGA)、通用阵列逻辑(generic array logic,GAL)或其任意组合。
存储器1102可以是只读存储器(read-only memory,ROM),也可以是随机存取存储器(random access memory,RAM),也可以是电可擦可编程只读存储器(electricallyerasable programmable read-only Memory,EEPROM)、光盘(包括只读光盘(compact discread-only memory,CD-ROM)、压缩光盘、激光盘、数字通用光盘、蓝光光盘等)、磁盘存储介质或者其它磁存储设备,或者是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但不限于此。存储器1102可以是独立存在,并与处理器1101相连接。存储器1102也可以和处理器1101集成在一起。
可选地,该网络设备还可以包括通信总线1103、以及至少一个通信接口1104。通信总线1103用于在上述组件之间传送信息。通信总线1103可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口1104使用任何收发器一类的装置,用于与其它设备或通信网络通信。通信接口1104包括有线通信接口,还可以包括无线通信接口。其中,有线通信接口例如可以为以太网接口。以太网接口可以是光接口、电接口或其组合。无线通信接口可以为无线局域网(wireless local area networks,WLAN)接口、蜂窝网络通信接口或其组合等。
可选地,作为一种实施例,处理器1101可以包括一个或多个CPU,如图11中所示的CPU0和CPU1。
可选地,作为一种实施例,网络设备可以包括多个处理器,如图11中所示的处理器1101和处理器1105。这些处理器中的每一个可以是一个单核处理器,也可以是一个多核处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(如计算机程序指令)的处理核。
在一些实施例中,存储器1102用于存储执行本申请实施例的程序代码1106,处理器1101可以执行存储器1102中存储的程序代码1106。该程序代码1106中可以包括一个或多个软件模块,该网络设备可以通过处理器1101以及存储器1102中的程序代码1106,来实现上文图4所示实施例提供的方法。
请参考图12,图12是本申请实施例提供的一种终端设备的结构示意图。该终端设备100可以包括存储器和处理器,存储器用于存储计算机程序,所述计算机程序包括程序指令;处理用于调用所述计算机程序,实现如上述方法实施例中的视频播放方法步骤。当然,该终端设备100还可以包括其他的部件。
在一些实施例中,该终端设备100包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L等。
可以理解的是,本申请实施例示意的结构并不构成对终端设备100的具体限定。在本申请另一些实施例中,终端设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。处理器110可以执行计算机程序,以实现本申请实施例中任一种视频播放方法。
其中,控制器可以是终端设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用,避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I1C)接口,集成电路内置音频(inter-integrated circuitsound,I1S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对终端设备100的结构限定。在本申请另一些实施例中,终端设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。
终端设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
在一些可行的实施方式中,终端设备100可以使用无线通信功能和其他设备通信。例如,终端设备100可以和第二电子设备通信,终端设备100与第二电子设备建立投屏连接,终端设备100输出投屏数据至第二电子设备等。其中,终端设备100输出的投屏数据可以为音视频数据。
天线1和天线2用于发射和接收电磁波信号。终端设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在终端设备100上的包括1G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线2转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在终端设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线1接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,终端设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得终端设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
终端设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,终端设备100可以包括1个或N个显示屏194,N为大于1的正整数。
在一些可行的实施方式中,显示屏194可用于显示终端设备100的系统输出的各个界面。
终端设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,终端设备100可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。
视频编解码器用于对数字视频压缩或解压缩。终端设备100可以支持一种或多种视频编解码器。这样,终端设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG1,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现终端设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展终端设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行终端设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如本申请实施例中的室内定位方法等)等。存储数据区可存储终端设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
终端设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。在一些可行的实施方式中,音频模块170可用于播放视频对应的声音。例如,显示屏194显示视频播放画面时,音频模块170输出视频播放的声音。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。
耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。陀螺仪传感器180B可以用于确定终端设备100的运动姿态。气压传感器180C用于测量气压。
加速度传感器180E可检测终端设备100在各个方向上(包括三轴或六轴)加速度的大小。当终端设备100静止时可检测出重力的大小及方向。还可以用于识别终端设备姿态,应用于横竖屏切换,计步器等应用。
距离传感器180F,用于测量距离。
环境光传感器180L用于感知环境光亮度。
指纹传感器180H用于采集指纹。
温度传感器180J用于检测温度。
触摸传感器180K,也称“触控面板”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于终端设备100的表面,与显示屏194所处的位置不同。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。终端设备100可以接收按键输入,产生与终端设备100的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意结合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络或其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如:同轴电缆、光纤、数据用户线(digital subscriber line,DSL))或无线(例如:红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质,或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如:软盘、硬盘、磁带)、光介质(例如:数字通用光盘(digital versatile disc,DVD))或半导体介质(例如:固态硬盘(solid state disk,SSD))等。值得注意的是,本申请实施例提到的计算机可读存储介质可以为非易失性存储介质,换句话说,可以是非瞬时性存储介质。
应当理解的是,本文提及的“多个”是指两个或两个以上。在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,为了便于清楚描述本申请实施例的技术方案,在本申请实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
以上所述为本申请提供的实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (25)

1.一种视频处理方法,其特征在于,所述方法包括:
获取目标视频图像的第一码流数据,所述目标视频图像为目标视频中的一帧视频图像,所述目标视频是对目标场景进行采集得到,所述目标场景中包括一个或多个运动对象;
基于所述第一码流数据确定所述目标视频图像中目标对象的骨骼数据,所述目标对象为所述一个或多个运动对象中的一个运动对象;
封装所述目标视频图像的第一码流数据以及所述目标视频图像中所述目标对象的骨骼数据,以得到所述目标视频图像的第二码流数据。
2.如权利要求1所述的方法,其特征在于,所述骨骼数据包括骨骼点的成像坐标,所述成像坐标为所述骨骼点在所述目标视频图像中的坐标;
所述基于所述第一码流数据确定所述目标视频图像中目标对象的骨骼数据,包括:
解析所述第一码流数据,以得到所述目标视频图像;
对所述目标视频图像中的所述目标对象进行检测,以确定所述目标对象的成像区域;
基于所述成像区域确定所述目标对象的骨骼点的成像坐标。
3.如权利要求2所述的方法,其特征在于,所述骨骼数据还包括所述骨骼点在世界坐标系中的坐标;
所述基于所述第一码流数据确定所述目标视频图像中目标对象的骨骼数据,还包括:
将所述目标对象的骨骼点的成像坐标转换至所述世界坐标系,以得到所述目标对象的骨骼点在所述世界坐标系中的坐标。
4.如权利要求1-3任一所述的方法,其特征在于,所述方法还包括:
生成媒体描述信息,所述媒体描述信息包括所述第一码流数据的描述信息和所述目标对象的骨骼数据的描述信息。
5.如权利要求1-4任一所述的方法,其特征在于,所述方法还包括:
获取与所述目标视频图像对应的目标音频数据;
所述封装所述目标视频图像的第一码流数据以及所述目标视频图像中所述目标对象的骨骼数据,以得到所述目标视频图像的第二码流数据,包括:
封装所述目标视频图像的第一码流数据、所述目标视频图像中所述目标对象的骨骼数据、以及所述目标音频数据,以得到所述目标视频图像的第二码流数据。
6.如权利要求1-4任一所述的方法,其特征在于,所述方法还包括:
确定与所述目标视频图像对应的运动数据,所述运动数据用于描述采集所述目标视频图像时所述目标对象在所述目标场景中的运动情况;
所述封装所述目标视频图像的第一码流数据以及所述目标视频图像中所述目标对象的骨骼数据,以得到所述目标视频图像的第二码流数据,包括:
封装所述目标视频图像的第一码流数据、所述目标视频图像中所述目标对象的骨骼数据、以及所述运动数据,以得到所述目标视频图像的第二码流数据。
7.如权利要求1-6任一所述的方法,其特征在于,所述目标场景中部署有多个相机,所述目标视频为所述多个相机中任一相机对所述目标场景进行采集得到的视频;或者,
所述目标视频为所述目标对象对应的视频,所述目标对象对应的视频是将所述多个相机采集得到的视频进行视频合成后得到的,且用于记录所述目标对象在所述目标场景中的运动过程。
8.一种视频播放方法,其特征在于,所述方法包括:
获取目标视频图像的第二码流数据,所述第二码流数据包括所述目标视频图像的第一码流数据以及所述目标视频图像中目标对象的骨骼数据,所述目标视频图像为目标视频中的一帧视频图像,所述目标视频是对目标场景进行采集得到,所述目标对象为所述目标场景包括一个或多个运动对象中的一个运动对象;
解析所述第二码流数据,以得到所述目标视频图像的第一码流数据以及所述目标视频图像中所述目标对象的骨骼数据;
基于所述第一码流数据在播放界面中显示所述目标视频图像,以及基于所述目标视频图像中所述目标对象的骨骼数据,在所述播放界面中显示所述目标对象的标记框。
9.如权利要求8所述的方法,其特征在于,所述第二码流数据还包括与所述目标视频图像对应的运动数据,所述运动数据用于描述采集所述目标视频图像时所述目标对象在所述目标场景中的运动情况;所述方法还包括:
在所述播放界面中显示所述运动数据。
10.如权利要求8所述的方法,其特征在于,所述方法还包括:
基于所述目标视频图像中所述目标对象的骨骼数据,确定与所述目标视频图像对应的运动数据,所述运动数据用于描述采集所述目标视频图像时所述目标对象在所述目标场景中的运动情况;
在所述播放界面中显示所述运动数据。
11.如权利要求8-10任一所述的方法,其特征在于,所述目标场景中部署有多个相机,所述目标视频流为所述多个相机中任一相机对所述目标场景进行采集得到的视频流;或者,
所述目标视频流为所述目标对象对应的视频流,所述目标对象对应的视频流是将所述多个相机采集得到的视频流进行视频合成后得到的,且用于记录所述目标对象在所述目标场景中的运动过程。
12.一种视频处理装置,其特征在于,所述装置包括:
码流数据获取模块,用于获取目标视频图像的第一码流数据,所述目标视频图像为目标视频中的一帧视频图像,所述目标视频是对目标场景进行采集得到,所述目标场景中包括一个或多个运动对象;
骨骼数据确定模块,用于基于所述第一码流数据确定所述目标视频图像中目标对象的骨骼数据,所述目标对象为所述一个或多个运动对象中的一个运动对象;
数据封装模块,用于封装所述目标视频图像的第一码流数据以及所述目标视频图像中所述目标对象的骨骼数据,以得到所述目标视频图像的第二码流数据。
13.如权利要求12所述的装置,其特征在于,所述骨骼数据包括骨骼点的成像坐标,所述成像坐标为所述骨骼点在所述目标视频图像中的坐标;
所述骨骼数据确定模块具体用于:
解析所述第一码流数据,以得到所述目标视频图像;
对所述目标视频图像中的所述目标对象进行检测,以确定所述目标对象的成像区域;
基于所述成像区域确定所述目标对象的骨骼点的成像坐标。
14.如权利要求13所述的装置,其特征在于,所述骨骼数据还包括所述骨骼点在世界坐标系中的坐标;
所述骨骼数据确定模块还用于:
将所述目标对象的骨骼点的成像坐标转换至所述世界坐标系,以得到所述目标对象的骨骼点在所述世界坐标系中的坐标。
15.如权利要求12-14任一所述的装置,其特征在于,所述装置还包括:
描述信息生成模块,用于生成媒体描述信息,所述媒体描述信息包括所述第一码流数据的描述信息和所述目标对象的骨骼数据的描述信息。
16.如权利要求12-15任一所述的装置,其特征在于,所述装置还包括:
音频数据获取模块,用于获取与所述目标视频图像对应的目标音频数据;
所述数据封装模块具体用于:
封装所述目标视频图像的第一码流数据、所述目标视频图像中所述目标对象的骨骼数据、以及所述目标音频数据,以得到所述目标视频图像的第二码流数据。
17.如权利要求12-15任一所述的装置,其特征在于,所述装置还包括:
运动数据确定模块,用于确定与所述目标视频图像对应的运动数据,所述运动数据用于描述采集所述目标视频图像时所述目标对象在所述目标场景中的运动情况;
所述数据封装模块具体用于:
封装所述目标视频图像的第一码流数据、所述目标视频图像中所述目标对象的骨骼数据、以及所述运动数据,以得到所述目标视频图像的第二码流数据。
18.如权利要求12-17任一所述的装置,其特征在于,所述目标场景中部署有多个相机,所述目标视频为所述多个相机中任一相机对所述目标场景进行采集得到的视频;或者,
所述目标视频为所述目标对象对应的视频,所述目标对象对应的视频是将所述多个相机采集得到的视频进行视频合成后得到的,且用于记录所述目标对象在所述目标场景中的运动过程。
19.一种视频播放装置,其特征在于,所述装置包括:
码流数据获取模块,用于获取目标视频图像的第二码流数据,所述第二码流数据包括所述目标视频图像的第一码流数据以及所述目标视频图像中目标对象的骨骼数据,所述目标视频图像为目标视频中的一帧视频图像,所述目标视频是对目标场景进行采集得到,所述目标对象为所述目标场景包括一个或多个运动对象中的一个运动对象;
码流解析模块,用于解析所述第二码流数据,以得到所述目标视频图像的第一码流数据以及所述目标视频图像中所述目标对象的骨骼数据;
第一显示模块,用于基于所述第一码流数据在播放界面中显示所述目标视频图像,以及基于所述目标视频图像中所述目标对象的骨骼数据,在所述播放界面中显示所述目标对象的标记框。
20.如权利要求19所述的装置,其特征在于,所述第二码流数据还包括与所述目标视频图像对应的运动数据,所述运动数据用于描述采集所述目标视频图像时所述目标对象在所述目标场景中的运动情况;所述装置还包括:
第二显示模块,用于在所述播放界面中显示所述运动数据。
21.如权利要求19所述的装置,其特征在于,所述装置还包括:
运动数据确定模块,用于基于所述目标视频图像中所述目标对象的骨骼数据,确定与所述目标视频图像对应的运动数据,所述运动数据用于描述采集所述目标视频图像时所述目标对象在所述目标场景中的运动情况;
第三显示模块,用于在所述播放界面中显示所述运动数据。
22.如权利要求19-21任一所述的装置,其特征在于,所述目标场景中部署有多个相机,所述目标视频流为所述多个相机中任一相机对所述目标场景进行采集得到的视频流;或者,
所述目标视频流为所述目标对象对应的视频流,所述目标对象对应的视频流是将所述多个相机采集得到的视频流进行视频合成后得到的,且用于记录所述目标对象在所述目标场景中的运动过程。
23.一种视频分析设备,其特征在于,所述视频分析设备包括存储器和处理器;
所述存储器,用于存储计算机程序,所述计算机程序包括程序指令;
所述处理器,用于调用所述计算机程序,实现如权利要求1至7任一所述的视频处理方法。
24.一种视频播放设备,其特征在于,所述视频播放设备包括存储器和处理器;
所述存储器,用于存储计算机程序,所述计算机程序包括程序指令;
所述处理器,用于调用所述计算机程序,实现如权利要求8至11任一所述的视频播放方法。
25.一种计算机可读存储介质,其特征在于,所述存储介质内存储有指令,当所述指令在所述计算机上运行时,使得所述计算机执行权利要求1-11任一所述的方法的步骤。
CN202210059701.7A 2022-01-19 2022-01-19 视频处理方法、视频播放方法及相关装置 Pending CN116503439A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210059701.7A CN116503439A (zh) 2022-01-19 2022-01-19 视频处理方法、视频播放方法及相关装置
PCT/CN2023/071497 WO2023138436A1 (zh) 2022-01-19 2023-01-10 视频处理方法、视频播放方法及相关装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210059701.7A CN116503439A (zh) 2022-01-19 2022-01-19 视频处理方法、视频播放方法及相关装置

Publications (1)

Publication Number Publication Date
CN116503439A true CN116503439A (zh) 2023-07-28

Family

ID=87329011

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210059701.7A Pending CN116503439A (zh) 2022-01-19 2022-01-19 视频处理方法、视频播放方法及相关装置

Country Status (2)

Country Link
CN (1) CN116503439A (zh)
WO (1) WO2023138436A1 (zh)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170264973A1 (en) * 2016-03-14 2017-09-14 Le Holdings (Beijing) Co., Ltd. Video playing method and electronic device
WO2020210004A1 (en) * 2019-04-12 2020-10-15 University Of Iowa Research Foundation System and method to predict, prevent, and mitigate workplace injuries
CN112422863B (zh) * 2019-08-22 2022-04-12 华为技术有限公司 一种视频拍摄方法、电子设备和存储介质
CN111444890A (zh) * 2020-04-30 2020-07-24 汕头市同行网络科技有限公司 一种基于机器学习的体育数据分析系统和方法
CN112818807A (zh) * 2021-01-27 2021-05-18 深圳英飞拓科技股份有限公司 摔倒检测方法、装置、设备和存储介质
CN113705520A (zh) * 2021-09-03 2021-11-26 广州虎牙科技有限公司 动作捕捉方法、装置及服务器

Also Published As

Publication number Publication date
WO2023138436A1 (zh) 2023-07-27

Similar Documents

Publication Publication Date Title
WO2021031915A1 (zh) 一种智能录像方法和装置
CN113038362B (zh) 超宽带定位方法及系统
CN114710640B (zh) 基于虚拟形象的视频通话方法、装置和终端
CN111429517A (zh) 重定位方法、重定位装置、存储介质与电子设备
CN110244840A (zh) 图像处理方法、相关设备及计算机存储介质
CN113261271A (zh) 一种拍摄方法及电子设备
US20230152084A1 (en) Height Measurement Method and Apparatus, and Terminal
WO2021169515A1 (zh) 一种设备间数据交互的方法及相关设备
WO2021213031A1 (zh) 图像合成方法及相关装置
CN112087649B (zh) 一种设备搜寻方法以及电子设备
CN113052056B (zh) 一种视频处理的方法以及装置
CN114111704B (zh) 测量距离的方法、装置、电子设备及可读存储介质
WO2021175097A1 (zh) 一种非视距物体的成像方法和电子设备
CN111815666A (zh) 图像处理方法及装置、计算机可读存储介质和电子设备
CN115619858A (zh) 一种物体重建方法以及相关设备
CN115147451A (zh) 目标跟踪方法及其装置
WO2022206595A1 (zh) 一种图像处理方法以及相关设备
CN110956571A (zh) 基于slam进行虚实融合的方法及电子设备
CN111249728B (zh) 一种图像处理方法、装置及存储介质
CN116703995B (zh) 视频虚化处理方法和装置
WO2022214004A1 (zh) 一种目标用户确定方法、电子设备和计算机可读存储介质
WO2022033344A1 (zh) 视频防抖方法、终端设备和计算机可读存储介质
WO2022179412A1 (zh) 识别方法及电子设备
WO2023138436A1 (zh) 视频处理方法、视频播放方法及相关装置
CN114812381A (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