一种显示设备及健身视频播放方法与流程

文档序号:33005676发布日期:2023-01-18 03:46阅读:99来源:国知局
1.本技术涉及显示设备
技术领域
:,尤其涉及一种显示设备及健身视频播放方法。
背景技术
::2.当前大屏健身应用主要包括2类:一类是普通健身,只播放健身视频,人跟随视频进行动作;另一类是ai(artificialintelligence,人工智能)健身,健身视频提前生成日志打点文件,在健身视频播放过程中,同时开启设备摄像头拍摄个人动作,通过检测个人动作肢体关键点与日志打点文件中该时间段的动作关键点信息进行匹配,识别动作准确率。3.健身视频中日志打点文件是记录健身视频内动作信息的文件,包括视频内包含动作名称、动作起止时间、动作采样肢体关键点位置信息等。一个动作时间周期内根据采样频率会有多个全身肢体点的点位信息。日志打点文件内包含1个或多个动作信息,根据视频提前生成,并与健身视频对应,主要用于检测跟练动作与视频动作符合度,用于准确度打分和卡路里消耗等。4.当前ai跟练也是跟随视频动作进行跟练,由于视频是连续播放的,无法提前获知健身视频动作信息,只能被动跟随,动作延迟性及准确度较差。技术实现要素:5.本技术一些实施例提供了一种显示设备及健身视频播放方法,通过解析健身视频对应的日志打点文件,提取健身视频内肢体关键点信息,通过肢体关键点信息生成动作提示人物,可预知动作,便于用户提前准备,提高动作准确度,提升用户体验。6.第一方面,本技术一些实施例中提供一种显示设备,包括:7.显示器;8.控制器,被配置为:9.响应于播放健身视频的指令,下载所述健身视频的媒资数据和日志打点文件,所述日志打点文件包括肢体关键点信息及所述肢体关键点信息对应的时间;10.控制所述显示器显示所述媒资数据;11.根据所述媒资数据的播放进度确定目标范围,以及获取所述目标范围内目标肢体关键点信息;12.根据所述目标肢体关键点信息生成动作提示人物图像;13.控制所述显示器在所述媒资数据上显示所述动作提示人物图像,所述动作提示人物图像按目标肢体关键点信息对应的时间排列显示。14.在一些实施例中,所述控制器执行根据媒资数据的播放进度确定目标范围,以及获取所述目标范围内目标肢体关键点信息,被进一步配置为:15.如果所述日志打点文件中包括标志点,确定目标范围,所述标志点为标志动作对应的时间,所述目标范围以第一时间点为起始点,以第二时间点为终止点,所述播放进度与所述第一时间点的差值为第一预设值,所述第一预设值大于或等于0,所述第二时间点与所述播放进度的差值为第二预设值,所述第二预设值大于0;16.获取所述目标范围内标志点的肢体关键点信息。17.在一些实施例中,所述控制器执行根据媒资数据的播放进度确定目标范围,以及获取所述目标范围内目标肢体关键点信息,被进一步配置为:18.如果所述日志打点文件中不包括标志点,确定固定点,所述固定点为以所述媒资数据的预设进度为基准点每间隔预设时长的时间点;19.确定目标范围,所述目标范围以第一时间点为起始点,以第二时间点为终止点,所述播放进度与所述第一时间点的差值为第一预设值,所述第一预设值大于或等于0,所述第二时间点与所述播放进度的差值为第二预设值,所述第二预设值大于0;20.获取所述目标范围内固定点的肢体关键点信息。21.在一些实施例中,所述控制器执行根据媒资数据的播放进度确定目标范围,以及获取所述目标范围内目标肢体关键点信息,被进一步配置为:22.如果所述日志打点文件中包括标志点,确定所述播放进度对应的标志点为目标点,所述标志点为标志动作对应的时间;23.确定目标范围,所述目标范围包括目标点,在所述目标点之前第一预设数量的标志点,以及在所述目标点之后第二预设数量的标志点;24.获取所述目标范围内标志点的肢体关键点信息。25.在一些实施例中,所述控制器执行根据媒资数据的播放进度确定目标范围,以及获取所述目标范围内目标肢体关键点信息,被进一步配置为:26.如果所述日志打点文件中不包括标志点,确定固定点,所述固定点为以所述媒资数据的预设进度为基准点每间隔预设时长的时间点;27.确定所述播放进度对应的固定点为目标点;28.确定目标范围,所述目标范围包括目标点,在所述目标点之前第一预设数量的固定点,以及在所述目标点之后第二预设数量的固定点;29.获取所述目标范围内固定点的肢体关键点信息。30.在一些实施例中,所述控制器,被配置为:31.根据所述目标肢体关键点信息对应的时间及所述播放进度确定所述动作提示人物图像的显示位置;32.控制所述显示器按照所述显示位置显示所述动作提示人物图像。33.在一些实施例中,所述控制器,被配置为:34.根据所述目标肢体关键点信息对应的时间及所述播放进度确定所述动作提示人物图像的显示颜色或透明度;35.控制所述显示器按照所述颜色或透明度显示所述动作提示人物图像。36.在一些实施例中,所述控制器,被配置为:37.根据所述目标肢体关键点信息对应的时间及所述播放进度确定所述动作提示人物图像的缩放比例;38.控制所述显示器按照所述缩放比例显示所述动作提示人物图像。39.在一些实施例中,所述控制器执行根据所述目标肢体关键点信息生成动作提示人物图像,被进一步配置为:40.获取所述目标肢体关键点信息中的基础肢体关键点的信息;41.基于所述基础肢体关键点的信息画点和连线,生成动作提示人物图像。42.第二方面,本技术一些实施例中提供一种健身视频播放方法,包括:43.响应于播放健身视频的指令,下载所述健身视频的媒资数据和日志打点文件,所述日志打点文件包括肢体关键点信息及所述肢体关键点信息对应的时间;44.控制所述显示器显示所述媒资数据;45.根据所述媒资数据的播放进度确定目标范围,以及获取所述目标范围内目标肢体关键点信息;46.根据所述目标肢体关键点信息生成动作提示人物图像;47.控制所述显示器在所述媒资数据上显示所述动作提示人物图像,所述动作提示人物图像按目标肢体关键点信息对应的时间排列显示。48.本技术的一些实施例提供一种显示设备及健身视频播放方法,所述方法在健身视频的媒资数据时同步下载日志打点文件,获取日志打点文件中当前播放进度后的肢体关键点信息,并基于目标肢体关键点信息生成动作提示人物图像,在播放媒资数据的同时,显示动作提示人物图像,可预知后续动作,便于用户提前准备,提高动作准确度,提升用户体验。附图说明49.图1示出了根据一些实施例的显示设备与控制装置之间操作场景;50.图2示出了根据一些实施例的控制设备的硬件配置框图;51.图3示出了根据一些实施例的显示设备的硬件配置框图;52.图4示出了根据一些实施例的显示设备中软件配置图;53.图5示出了根据一些实施例提供的一种控制器执行步骤的流程图;54.图6示出了根据一些实施例提供的一种人体肢体关键点的示意图;55.图7示出了根据一些实施例提供的第一种确定目标范围的示意图;56.图8示出了根据一些实施例提供的第二种确定目标范围的示意图;57.图9示出了根据一些实施例提供的第三种确定目标范围的示意图;58.图10示出了根据一些实施例提供的第四种确定目标范围的示意图;59.图11示出了根据一些实施例提供的一种健身视频播放用户界面的示意图;60.图12示出了根据一些实施例提供的另一种健身视频播放用户界面的示意图;61.图13示出了根据一些实施例提供的又一种健身视频播放用户界面示意图。具体实施方式62.为使本技术的目的和实施方式更加清楚,下面将结合本技术示例性实施例中的附图,对本技术示例性实施方式进行清楚、完整地描述,显然,描述的示例性实施例仅是本技术一部分实施例,而不是全部的实施例。63.需要说明的是,本技术中对于术语的简要说明,仅是为了方便理解接下来描述的实施方式,而不是意图限定本技术的实施方式。除非另有说明,这些术语应当按照其普通和通常的含义理解。64.本技术中说明书和权利要求书及上述附图中的术语“第一”、“第二”和“第三”等是用于区别类似或同类的对象或实体,而不必然意味着限定特定的顺序或先后次序,除非另外注明。应该理解这样使用的用语在适当情况下可以互换。65.术语“包括”以及他们的任何变形,意图在于覆盖但不排他的包含,例如,包含了一系列组件的产品或设备不必限于清楚地列出的所有组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。66.本技术实施方式提供的显示设备可以具有多种实施形式,例如,可以是电视、智能电视、激光投影设备、显示器(monitor)、电子白板(electronicbulletinboard)、电子桌面(electronictable)等。图1和图2为本技术的显示设备的一种具体实施方式。67.图1为根据实施例中显示设备与控制装置之间操作场景的示意图。如图1所示,用户可通过智能设备300或控制装置100操作显示设备200。68.在一些实施例中,控制装置100可以是遥控器,遥控器和显示设备的通信包括红外协议通信或蓝牙协议通信,及其他短距离通信方式,通过无线或有线方式来控制显示设备200。用户可以通过遥控器上按键、语音输入、控制面板输入等输入用户指令,来控制显示设备200。69.在一些实施例中,也可以使用智能设备300(如移动终端、平板电脑、计算机、笔记本电脑等)以控制显示设备200。例如,使用在智能设备上运行的应用程序控制显示设备200。70.在一些实施例中,显示设备可以不使用上述的智能设备或控制设备接收指令,而是通过触摸或者手势等接收用户的控制。71.在一些实施例中,显示设备200还可以采用除了控制装置100和智能设备300之外的方式进行控制,例如,可以通过显示设备200设备内部配置的获取语音指令的模块直接接收用户的语音指令控制,也可以通过显示设备200设备外部设置的语音控制设备来接收用户的语音指令控制。72.在一些实施例中,显示设备200还与服务器400进行数据通信。可允许显示设备200通过局域网(lan)、无线局域网(wlan)和其他网络进行通信连接。服务器400可以向显示设备200提供各种内容和互动。服务器400可以是一个集群,也可以是多个集群,可以包括一类或多类服务器。73.图2示例性示出了根据示例性实施例中控制装置100的配置框图。如图2所示,控制装置100包括控制器110、通信接口130、用户输入/输出接口140、存储器、供电电源。控制装置100可接收用户的输入操作指令,且将操作指令转换为显示设备200可识别和响应的指令,起用用户与显示设备200之间交互中介作用。74.如图3,显示设备200包括调谐解调器210、通信器220、检测器230、外部装置接口240、控制器250、显示器260、音频输出接口270、存储器、供电电源、用户接口中的至少一种。75.在一些实施例中控制器包括处理器,视频处理器,音频处理器,图形处理器,ram,rom,用于输入/输出的第一接口至第n接口。76.显示器260包括用于呈现画面的显示屏组件,以及驱动图像显示的驱动组件,用于接收源自控制器输出的图像信号,进行显示视频内容、图像内容以及菜单操控界面的组件以及用户操控ui界面。77.显示器260可为液晶显示器、oled显示器、以及投影显示器,还可以为一种投影装置和投影屏幕。78.显示器260还包括触控屏,触控屏用于接收用户手指在触控屏上滑动或点击等动作输入控制指令。79.通信器220是用于根据各种通信协议类型与外部设备或服务器进行通信的组件。例如:通信器可以包括wifi模块,蓝牙模块,有线以太网模块等其他网络通信协议芯片或近场通信协议芯片,以及红外接收器中的至少一种。显示设备200可以通过通信器220与外部控制设备100或服务器400建立控制信号和数据信号的发送和接收。80.用户接口,可用于接收控制装置100(如:红外遥控器等)的控制信号。81.检测器230用于采集外部环境或与外部交互的信号。例如,检测器230包括光接收器,用于采集环境光线强度的传感器;或者,检测器230包括图像采集器,如摄像头,可以用于采集外部环境场景、用户的属性或用户交互手势,再或者,检测器230包括声音采集器,如麦克风等,用于接收外部声音。82.外部装置接口240可以包括但不限于如下:高清多媒体接口接口(hdmi)、模拟或数据高清分量输入接口(分量)、复合视频输入接口(cvbs)、usb输入接口(usb)、rgb端口等任一个或多个接口。也可以是上述多个接口形成的复合性的输入/输出接口。83.调谐解调器210通过有线或无线接收方式接收广播电视信号,以及从多个无线或有线广播电视信号中解调出音视频信号,如以及epg数据信号。84.在一些实施例中,控制器250和调谐解调器210可以位于不同的分体设备中,即调谐解调器210也可在控制器250所在的主体设备的外置设备中,如外置机顶盒等。85.控制器250,通过存储在存储器上中各种软件控制程序,来控制显示设备的工作和响应用户的操作。控制器250控制显示设备200的整体操作。例如:响应于接收到用于选择在显示器260上显示ui对象的用户命令,控制器250便可以执行与由用户命令选择的对象有关的操作。86.在一些实施例中控制器包括中央处理器(centralprocessingunit,cpu),视频处理器,音频处理器,图形处理器(graphicsprocessingunit,gpu),ramrandomaccessmemory,ram),rom(read-onlymemory,rom),用于输入/输出的第一接口至第n接口,通信总线(bus)等中的至少一种。87.用户可在显示器260上显示的图形用户界面(gui)输入用户命令,则用户输入接口通过图形用户界面(gui)接收用户输入命令。或者,用户可通过输入特定的声音或手势进行输入用户命令,则用户输入接口通过传感器识别出声音或手势,来接收用户输入命令。[0088]“用户界面”,是应用程序或操作系统与用户之间进行交互和信息交换的介质接口,它实现信息的内部形式与用户可以接受形式之间的转换。用户界面常用的表现形式是图形用户界面(graphicuserinterface,gui),是指采用图形方式显示的与计算机操作相关的用户界面。它可以是在电子设备的显示屏中显示的一个图标、窗口、控件等界面元素,其中控件可以包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、widget等可视的界面元素。[0089]参见图4,在一些实施例中,将系统分为四层,从上至下分别为应用程序(applications)层(简称“应用层”),应用程序框架(applicationframework)层(简称“框架层”),安卓运行时(androidruntime)和系统库层(简称“系统运行库层”),以及内核层。[0090]在一些实施例中,应用程序层中运行有至少一个应用程序,这些应用程序可以是操作系统自带的窗口(window)程序、系统设置程序或时钟程序等;也可以是第三方开发者所开发的应用程序。在具体实施时,应用程序层中的应用程序包不限于以上举例。[0091]框架层为应用程序提供应用编程接口(applicationprogramminginterface,api)和编程框架。应用程序框架层包括一些预先定义的函数。应用程序框架层相当于一个处理中心,这个中心决定让应用层中的应用程序做出动作。应用程序通过api接口,可在执行中访问系统中的资源和取得系统的服务。[0092]如图4所示,本技术实施例中应用程序框架层包括管理器(managers),内容提供者(contentprovider)等,其中管理器包括以下模块中的至少一个:活动管理器(activitymanager)用与和系统中正在运行的所有活动进行交互;位置管理器(locationmanager)用于给系统服务或应用提供了系统位置服务的访问;文件包管理器(packagemanager)用于检索当前安装在设备上的应用程序包相关的各种信息;通知管理器(notificationmanager)用于控制通知消息的显示和清除;窗口管理器(windowmanager)用于管理用户界面上的括图标、窗口、工具栏、壁纸和桌面部件。[0093]在一些实施例中,活动管理器用于管理各个应用程序的生命周期以及通常的导航回退功能,比如控制应用程序的退出、打开、后退等。窗口管理器用于管理所有的窗口程序,比如获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕,控制显示窗口变化(例如将显示窗口缩小显示、抖动显示、扭曲变形显示等)等。[0094]在一些实施例中,系统运行库层为上层即框架层提供支撑,当框架层被使用时,安卓操作系统会运行系统运行库层中包含的c/c++库以实现框架层要实现的功能。[0095]在一些实施例中,内核层是硬件和软件之间的层。如图4所示,内核层至少包含以下驱动中的至少一种:音频驱动、显示驱动、蓝牙驱动、摄像头驱动、wifi驱动、usb驱动、hdmi驱动、传感器驱动(如指纹传感器,温度传感器,压力传感器等)、以及电源驱动等。[0096]健身视频中日志打点文件是记录健身视频内动作信息的文件,用于表示视频内包含动作名称、动作起止时间、动作采样肢体关键点位置信息等。一个动作时间周期内根据采样频率会有多个全身肢体点的点位信息。日志打点文件内包含1个或多个动作信息,根据视频提前生成,并与健身视频对应,主要用于检测跟练动作与视频动作符合度,用于准确度打分和卡路里消耗等。ai跟练是跟随视频动作进行跟练,由于视频是连续播放的,无法提前获知健身视频动作信息,只能被动跟随,动作延迟性及准确度较差。[0097]为了解决以上技术问题,本技术实施例提供一种显示设备200,显示设备200的结构及各部分的功能可以参阅上述实施例。此外,在上述实施例示出的显示设备200的基础上,本实施例对显示设备200的一些功能做进一步的完善。如图5所示,控制器250执行以下步骤:[0098]步骤s501:接收用户输入的播放健身视频的指令;[0099]在一些实施例中,用户可通过打开某一应用程序并在该应用程序的界面选择健身视频的控件,输入播放该健身视频的指令。[0100]步骤s502:响应于播放健身视频的指令,下载所述健身视频的媒资数据和日志打点文件;[0101]其中,日志打点文件包括肢体关键点信息及所述肢体关键点信息对应的时间。[0102]响应于用户播放健身视频的指令,获取用户选中控件对应的媒资标识,并将所述媒资标识发送至服务器,显示设备可从服务器中下载所述媒资标识对应的媒资数据和日志打点文件。[0103]日志打点文件的生成步骤如下:[0104]以一定采样频率抓取健身视频中的视频帧;[0105]检测所述视频帧中人物的肢体动作,生成肢体关键点信息;[0106]其中,肢体关键点信息包括人体17个或19个点的位置坐标信息。其中,以人体17个点为例,如图6所示,人体17个点分别包括:鼻子、左眼、右眼、左耳、右耳、左肩、右肩、左肘、右肘、左腕、右腕、左胯、右胯、左踝和右踝。[0107]连续采集的肢体关键点信息生成动作日志打点文件。[0108]健身视频类型包括动作类视频和舞蹈类视频。[0109]动作类视频包含多个健身动作,一个健身动作是相对独立完整的过程,如卧推、推举、硬拉等,且重复性较高,具有一定规律。所有基于动作的视频打点文件分为两类文件,一类是唯一1个包含所有动作信息的动作库索引文件。动作库索引文件包含所有动作信息,如150个动作的id,名称,多个动作肢体关键点位置信息(包括动作肢体范围框坐标信息);一类是视频打点文件,视频打点文件与具体健身视频一对一对应。视频打点文件是包含对应健身视频内多个不同动作的id,起止时间信息,通过动作id匹配查找动作库索引文件内对应动作的肢体动作位置信息。因此,在日志打点文件制作过程中,可针对每一类动作,抽取某个标志动作的肢体关键点信息并进行标记。标志动作的肢体关键点信息包括标志动作的名称和起止时间等。[0110]舞蹈类健身视频整体是一个连续动作过程,没有区分明显的多个动作组成。舞蹈类打点日志文件没有动作信息,只有按照一定时间间隔肢体关键帧信息组成,肢体关键帧信息包含关键帧时间、关键肢体点坐标。因此,在日志打点文件制作过程中,无需对肢体关键点信息进行标记,或者每间隔预设时长标记。[0111]其中,日志打点文件的生成可由电脑或其他终端完成,并将生成的日志打点文件与健身视频的媒资数据对应上传至服务器。当用户需要播放时,可从服务器中下载。[0112]在一些实施例中,标志动作的肢体关键点信息可以指一个动作的肢体关键点信息。例如:某一套动作的起止时间是00:02:00-00:03:00,标志动作是时间为00:02:15时人物动作对应的肢体关键点信息,所以将00:02:15对应的肢体关键点信息作为标志动作的肢体关键点信息,其起止时间是00:02:00-00:03:00。[0113]在一些实施例中,标志动作的肢体关键点信息可以指多个动作的肢体关键点信息的集合。例如:某一套动作的起止时间是00:02:00-00:03:00,标志动作是时间为00:02:10、00:02:12及00:02:14时人物动作对应的肢体关键点信息,所以将00:02:10、00:02:12及00:02:14对应的肢体关键点信息作为标志动作的肢体关键点信息,其起止时间是00:02:00-00:03:00。[0114]步骤s503:控制所述显示器260显示所述媒资数据;[0115]在一些实施例中,下载所述健身视频的媒资数据后,需要对媒资数据进行解码。媒资数据包括视频数据和音频数据。将解码后的视频数据经渲染后发送至显示器260显示。将解码后的音频数据发送至音频输出接口270播放。其中,视频数据和音频数据同步播放。[0116]步骤s504:根据所述媒资数据的播放进度确定目标范围,获取所述目标范围内目标肢体关键点信息;[0117]在确定目标范围的步骤之前,需要检测所述日志打点文件中是否包括标志点,标志点为标志动作对应的时间;[0118]在一些实施例中,所述检测所述日志打点文件中是否包括标志点的步骤,包括:[0119]检测所述日志打点文件中标志点标志位的数值;[0120]如果所述日志打点文件中标志点标志位的数值为1,则确定日志打点文件中包括标志点;[0121]如果所述日志打点文件中标志点标志位的数值为0,则确定日志打点文件中不包括标志点。[0122]在一些实施例中,所述检测所述日志打点文件中是否包括标志点的步骤,包括:[0123]检测所述日志打点文件中视频类型标志位的数值;[0124]如果所述日志打点文件中视频类型标志位的数值为1,则确定健身视频的类型为动作类视频,即日志打点文件中包括标志点;[0125]如果所述日志打点文件中视频类型标志位的数值为2,则确定健身视频的类型为舞蹈类视频,即日志打点文件中不包括标志点。[0126]在一些实施例中,如果检测所述日志打点文件中包括标志点,确定目标范围,所述目标范围以第一时间点为起始点,以第二时间点为终止点,所述播放进度与所述第一时间点的差值为第一预设值,所述第一预设值大于或等于0,所述第二时间点与所述播放进度的差值为第二预设值,所述第二预设值大于0。[0127]基于媒资数据的播放进度确定目标范围的步骤包括:[0128]将所述播放进度与第一预设值相减,得到第一时间点;[0129]将所述播放进度与第二预设值相加,得到第二时间点;[0130]确定所述目标范围是以第一时间点为起始点,以第二时间点为终止点的时间段,如图7所示。[0131]获取所述目标范围内目标肢体关键点信息,其中,目标肢体关键点信息是指标志点的肢体关键点信息。[0132]在一些实施例中,日志打点文件中包含大量的肢体关键点信息,肢体关键点信息包括标志动作(标志点)的肢体关键点信息和非标志动作(非标记点)的肢体关键点信息。[0133]获取所述目标范围内标记点的肢体关键点信息的步骤,包括:[0134]遍历目标范围内肢体关键点信息;[0135]检测所述肢体关键点信息的标志位的数值;[0136]如果所述肢体关键点信息的标志位的数值为1,则确定所述肢体关键点信息为标志点的肢体关键点信息,获取标志点的肢体关键点信息;[0137]如果所述肢体关键点信息的标志位的数值为0,则确定所述肢体关键点信息为非标志点的肢体关键点信息,继续检测下一个肢体关键点信息的标志位的数值。[0138]在一些实施例中,将健身视频中的标志点的肢体关键点信息单独保存在一个文件内,可在该文件中直接获取在目标范围内的标志点的肢体关键点信息。[0139]在一些实施例中,第一预设值和第二预设值为固定值。[0140]示例性的,第一预设值为60秒,第二预设值为120秒,当前播放进度为00:10:23,则第一时间点为00:09:23,第二时间点为00:12:23。目标范围为00:09:23-00:12:23。获取00:09:23-00:12:23内标志点的肢体关键点信息。[0141]在一些实施例中,健身视频的时长不固定。如果健身视频的总时长较短,但是第一预设值和第二预设值较大,则会发生标志点对应的动作人物图像显示过于密集,甚至有可能叠加在一起,用户无法识别。如果健身视频的总时长较长,但是第一预设值和第二预设值较小,则会发生标志点对应的动作人物图像显示过于稀松,甚至导致在目标范围内无法获取到其他标志点,从而无法起到预测作用。[0142]将健身视频的总时长与第一预设倍数相除并取整,得到第一预设值;[0143]将健身视频的总时长与第二预设倍数相除并取整,得到第二预设值。[0144]示例性的,当前播放进度为00:02:23,健身视频的总时长5分30秒,第一预设倍数为15,第二预设倍数为10,第一预设值为22s,第二预设值为33s,则第一时间点为00:02:01,第二时间点为00:02:56。目标范围为00:02:01-00:02:56。获取00:02:01-00:02:56内的标志点肢体关键点信息。[0145]在一些实施例中,标志点对应的时间往往是一个时间段,只要标志点对应的时间段中有落入目标范围的点,即可确定该标志点在目标范围内。示例性的,目标范围为00:02:01-00:02:56,标志点的起止时间为00:01:40-00:02:10,则该标志点在目标范围内。[0146]在一些实施例中,标志点对应的时间往往是一个时间段,只要标志点对应的时间段中未全部落入目标范围内,确定该标志点不在目标范围内。示例性的,目标范围为00:02:01-00:02:56,标志点1的起止时间为00:01:40-00:02:10,标志点2的起止时间为00:02:11-00:02:30,则标志点1不在目标范围内,标志点2在目标范围内。[0147]在一些实施例中,如果所述日志打点文件中不包括标志点,确定固定点。[0148]其中,固定点为以媒资数据预设进度为基准点每间隔预设时长的时间点。预设进度可以指起始进度、结束进度或媒资数据中的任意进度。示例性的,媒资数据的预设进度为媒资数据的起始进度。如图8所示,从起始进度00:00:00开始,每间隔t时间确定一个固定点。[0149]基于媒资数据的播放进度确定目标范围的步骤包括:[0150]将所述播放进度与第一预设值相减,得到第一时间点,所述第一预设值大于或等于0;[0151]将所述播放进度与第二预设值相加,得到第二时间点,所述第二预设值大于0;[0152]确定所述目标范围是以第一时间点为起始点,以第二时间点为终止点的时间段,如图8所示。[0153]获取所述目标范围内目标肢体关键点信息,其中,目标肢体关键点信息是指固定点的肢体关键点信息。[0154]在一些实施例中,日志打点文件中包含大量的肢体关键点信息,肢体关键点信息包括固定点肢体关键点信息和非固定点的肢体关键点信息。[0155]获取所述目标范围内固定点的肢体关键点信息的步骤,包括:[0156]遍历目标范围内肢体关键点信息;[0157]检测所述肢体关键点信息的固定标志位的数值;[0158]如果所述肢体关键点信息的固定标志位的数值为1,则确定所述肢体关键点信息为固定点的肢体关键点信息,获取固定点的肢体关键点信息;[0159]如果所述肢体关键点信息的固定标志位的数值为0,则确定所述肢体关键点信息为非固定点的肢体关键点信息,继续检测下一个肢体关键点信息的固定标志位的数值。[0160]在一些实施例中,将健身视频中的固定点的肢体关键点信息单独保存在一个文件内,可在该文件中直接获取在目标范围内的固定点的肢体关键点信息。[0161]在一些实施例中,如果肢体关键点信息中并没有固定标志位,即日志打点文件中没有对固定点进行标记,控制器可自行依据以预设进度为基准点每间隔预设时长选取固定点,并将固定点对应的肢体关键点信息及起止时间的信息保存在文件中,在该文件中直接获取在目标范围内的固定点的肢体关键点信息。[0162]在一些实施例中,固定点的肢体关键点信息可以指一个动作的肢体关键点信息。例如:以媒资数据起始进度为基准点每间隔1分钟确定一个固定点,则固定点的时间是00:00:00、00:01:00、00:02:00…固定点的肢体关键点信息为00:00:00、00:01:00、00:02:00时对应的肢体关键点信息。[0163]在一些实施例中,固定点的肢体关键点信息可以指多个动作的肢体关键点信息的集合。例如:以媒资数据起始进度为基准点每间隔1分钟确定一个固定点,则固定点的时间是00:00:00、00:01:00、00:02:00…固定点00:01:00的肢体关键点信息为00:01:00、00:01:01、00:01:02时对应的肢体关键点信息。[0164]在一些实施例中,如果检测所述日志打点文件中包括标志点,确定所述播放进度对应的标志点为目标点;[0165]其中,确定播放进度对应的标志点可通过确定播放进度落入哪个标志点对应的起止时间内。例如:播放进度为00:01:00,标志点a的起止时间为00:00:50-00:01:20,则播放进度对应的标志点为标志点a。[0166]确定目标范围,所述目标范围包括目标点,在所述目标点之前第一预设数量的标志点,以及在所述目标点之后第二预设数量的标志点,其中,第一预设数量大于或等于0,第二预设数量大于0,如图9所示;[0167]其中,在目标点之前第一预设数量的标志点是指在所述目标点之前且与目标点时间最近的第一预设数量的标志点。在目标点之后第二预设数量的标志点是指在目标点之后且与目标点时间最近的第二预设数量的标志点。例如:按起止时间排序有标志点1-8,如果目标点是标志点5,第一预设数量和第二预设数量均是2,则目标范围为标志点3-7。[0168]获取所述目标范围内目标肢体关键点信息,其中,目标肢体关键点信息是指标志点的肢体关键点信息。[0169]在一些实施例中,如果所述日志打点文件中不包括标志点,确定固定点,所述固定点为以媒资数据预设进度为基准点每间隔预设时间的时间点;[0170]确定所述播放进度对应的固定点为目标点;[0171]其中,如果播放进度正好与固定点的时间相同,则确定该固定点为目标点,如果播放进度与固定点的时间不同,则确定播放进度位于哪两个固定点之间,并以时间靠前的固定点作为目标点。例如:以媒资数据起始进度为基准点每间隔1分钟确定一个固定点,则固定点的时间是00:00:00、00:01:00、00:02:00…如果播放进度为00:01:00,则确定播放进度对应的固定点00:01:00为目标点。如果播放进度为00:01:30,该播放进度落入固定点00:01:00-固定点00:02:00之间,则确定播放进度对应的固定点00:01:00为目标点。[0172]确定目标范围,所述目标范围包括目标点,在所述目标点之前第一预设数量的固定点,以及在所述目标点之后第二预设数量的固定点,其中,第一预设数量大于或等于0,第二预设数量大于0,如图10所示;[0173]其中,在目标点之前第一预设数量的固定点是指在所述目标点之前且与目标点时间最近的第一预设数量的固定点。在目标点之后第二预设数量的固定点是指在目标点之后且与目标点时间最近的第二预设数量的固定点。例如:按时间排序有固定点1-8,如果目标点是固定点5,第一预设数量和第二预设数量均是1,则目标范围为固定点4-6。[0174]获取所述目标范围内目标肢体关键点信息,其中,目标肢体关键点信息是指固定点的肢体关键点信息。[0175]步骤s505:根据所述目标肢体关键点信息生成动作提示人物图像;[0176]在一些实施例中,根据所述目标肢体关键点信息生成动作提示人物图像的步骤,包括:[0177]获取所述目标肢体关键点信息中的基础肢体关键点的信息;[0178]其中,目标肢体关键点信息中包括17或19个肢体点的坐标信息,而基础肢体关键点的信息为17或19个肢体点中的部分肢体点。例如:基础肢体关键点包括鼻子0、左肩5、右肩6、左肘7、右肘8、左腕9、右腕10、左胯11、右胯12、左膝13、右膝14、左踝15和右踝16。[0179]基于所述基础肢体关键点的信息画点和连线,生成动作提示人物图像。[0180]在一些实施例中,将肢体点进行分类、关联。[0181]a)将鼻子0及两肩(5和6)的中心点组成头部;[0182]b)将两肩(5,6)、两胯(11,12)组成躯干;[0183]c)将右肩(6)、肘(8)、腕(10)组成右臂;[0184]d)将左肩(5)、肘(7)、腕(9)组成左臂;[0185]e)将右胯(12)、膝(14)、踝(16)组成右腿;[0186]f)将左胯(11)、膝(13)、踝(15)组成左腿;[0187]g)虚拟动画形象以上述六部分肢体部位组成。[0188]以鼻子坐标为圆心,固定值作为半径画圆,绘制出虚拟动画形象的头部,并将以上肢体以简单线条连接起来,即可生成如火柴人的动作提示人物图像。还可基于以上肢体的信息对人物图像进行填充,生成卡通形象的动作提示人物图像。[0189]步骤s506:控制所述显示器260在所述媒资数据上显示所述动作提示人物图像,所述动作提示人物图像按目标肢体关键点信息对应的时间排列显示。[0190]在一些实施例中,媒资数据在视频播放层显示,在视频播放层的上层创建一个透明浏览器窗口,并在浏览器窗口上按比例显示动作提示人物图像。[0191]其中,考虑到屏幕上需要的显示区域与识别画面尺寸不一致,需要将全部坐标点保持比例缩放到显示区域内。摄像头拍摄画面的宽dw,高dh;显示范围宽rw,高rh;画面缩放比例r=math.min(rw/dw,rh/dh),拍摄画面缩放后的宽w=dw*r,高h=dh*r。将所有坐标点按照同样缩放比例进行处理,得到人体关键点在显示区域内的位置。[0192]在一些实施例中,动作提示人物图像按目标肢体关键点信息对应的时间倒序横向排列显示,如图11所示。[0193]在一些实施例中,动作提示人物图像按目标肢体关键点信息对应的时间倒序纵向排列显示,如图12所示。[0194]在一些实施例中,根据所述目标肢体关键点信息对应的时间及所述播放进度确定所述动作提示人物图像的显示位置。[0195]在一些实施例中,确定当前播放进度对应动作提示人物图像并在第三位置显示当前播放进度对应动作提示人物图像,获取该动作提示人物图像对应的第一时间;[0196]如果动作提示人物图像对应的时间与第一时间的第一差值大于第一预设差值,则在第一位置显示该动作提示人物图像,第一预设差值大于0;[0197]如果动作提示人物图像对应的时间与第一时间的第一差值小于第一预设差值且大于0,则在第二位置显示该动作提示人物图像;[0198]如果第一时间与动作提示人物图像对应的时间的第二差值大于第二预设差值,则在第四位置显示该动作提示人物图像,第二预设差值大于0;[0199]如果第一时间与动作提示人物图像对应的时间的第二差值小于第二预设差值且大于0,则在第五位置显示该动作提示人物图像;[0200]其中,如果动作提示人物图像对应的是标志点,则动作提示人物图像对应的时间是指标志点的起始时间。如果动作提示人物图像对应的是固定点,则动作提示人物图像对应的时间是指固定点的时间。如果有多个动作提示人物图像在同一位置显示,可将多个动作提示人物图像并列显示。[0201]示例性的,如图12所示,当前播放进度为00:04:00,一共生成动作人物图像1-6,其对应的时间分别是00:02:00、00:03:20、00:03:40、00:04:00、00:04:30和00:06:00,第一预设差值和第二预设差值为60s,第一位置的坐标为(1800,100),第二位置的坐标为(1800,300),第三位置的坐标为(1800,500),第四位置的坐标为(1800,700),第三位置的坐标为(1800,900)。则动作人物图像1显示在第五位置,动作人物图像2和3显示在第四位置,动作人物图像4显示在第三位置,动作人物图像5显示在第二位置,动作人物图像6显示在第一位置。[0202]在一些实施例中,确定动作提示人物图像显示的第一位置、第二位置和第三位置,第一位置为动作提示人物图像显示的起始位置。第二位置为当前播放进度对应目标肢体关键点信息生成动作提示人物图像的显示位置。第三位置为动作提示人物图像显示的结束位置,第二位置可与第三位置相同。第一位置、第二位置和第三位置均是指动作提示人物图像中心点的位置。[0203]获取第一位置与第二位置的第一距离,以及第二位置与第三位置的第二距离;[0204]确定当前播放进度对应动作提示人物图像并在第二位置显示当前播放进度对应动作提示人物图像,获取该动作提示人物图像对应的第一时间;[0205]如果动作提示人物图像对应的时间与第一时间的第一差值大于第一预设差值,则在第一位置显示该动作提示人物图像,第一预设差值大于0;[0206]如果动作提示人物图像对应的时间与第一时间的第一差值小于第一预设差值且大于0,则根据所述第一差值、第一预设差值和第一距离确定动作提示人物图像的显示位置;该动作提示人物图像距离第二位置的距离为(第一差值/第一预设差值)*第一距离;[0207]如果第一时间与动作提示人物图像对应的时间的第二差值大于第二预设差值,则在第三位置显示该动作提示人物图像,第二预设差值大于0;[0208]如果第一时间与动作提示人物图像对应的时间的第二差值小于第二预设差值且大于0,则根据所述第二差值、第二预设差值和第二距离确定动作提示人物图像的显示位置;该动作提示人物图像距离第二位置的距离为(第二差值/第二预设差值)*第二距离;[0209]其中,如果动作提示人物图像对应的是标志点,则动作提示人物图像对应的时间是指标志点的起始时间。如果动作提示人物图像对应的是固定点,则动作提示人物图像对应的时间是指固定点的时间。如果有多个动作提示人物图像在同一位置显示,可将多个动作提示人物图像并列显示,也可将多个动作提示人物图像叠加显示,最上层为离播放进度时间最近的动作提示人物图像。[0210]示例性的,如图11所示,当前播放进度为00:04:00,一共生成动作人物图像1-5,其对应的时间分别是00:02:00、00:03:20、00:04:00、00:05:30和00:06:00,第一预设差值和第二预设差值为60s,第一位置的坐标为(100,1000),第二位置的坐标为(1200,1000),第三位置的坐标为(1800,1000),第一距离为1100,第二距离为600。则动作人物图像1显示在第三位置,动作人物图像2的横坐标=1200+(1800-1200)*40/60=1600,显示位置为(1600,1000),动作人物图像3显示在第二位置,动作人物图像4的横坐标=1200-(1200-100)*30/60=650,显示位置为(650,1000),动作人物图像5显示在第一位置。[0211]在一些实施例中,如图13所示,动作人物图像显示在右上角,动作人物图像的显示位置横向纵向均发生改变,可采用以上方式对动作人物图像的横坐标和纵坐标均进行计算。[0212]在一些实施例中,标志动作和固定点的肢体关键点信息可以指一个动作的肢体关键点信息,在指定位置显示该肢体关键点信息对应的动作人物图像即可。[0213]在一些实施例中,标志动作和固定点的肢体关键点信息可以指多个动作的肢体关键点信息的集合。在该标志点对应的位置可按照一定顺序和频率显示多个动作。例如:该标志点对应三个肢体关键点信息,即有三个动作人物图像,可间隔1s循环切换动作人物图像的显示,以达到简单的动画效果。[0214]在一些实施例中,根据所述目标肢体关键点信息对应的时间及所述播放进度确定所述动作提示人物图像的显示颜色。[0215]确定当前播放进度对应动作提示人物图像,并将动作提示人物图像的颜色设置为第一颜色,获取该动作提示人物图像对应的第一时间;[0216]如果动作提示人物图像对应的时间与第一时间的第一差值大于第一预设差值,则将该动作提示人物图像的颜色设置为第二颜色,第一预设差值大于0;[0217]如果动作提示人物图像对应的时间与第一时间的第一差值小于第一预设差值且大于0,则将该动作提示人物图像的颜色设置为第三颜色;[0218]如果动作提示人物图像对应的时间与第一时间的第一差值小于0,则将该动作提示人物图像的颜色设置为第四颜色,第二颜色可以与第四颜色相同。[0219]在一些实施例中,根据所述目标肢体关键点信息对应的时间及所述播放进度确定所述动作提示人物图像的透明度。[0220]确定当前播放进度对应动作提示人物图像,并将动作提示人物图像的透明度设置为第一透明度,获取该动作提示人物图像对应的第一时间;[0221]在一些实施例中,如果动作提示人物图像对应的时间与第一时间的第一差值大于第一预设差值,将动作提示人物图像的透明度设置为第二透明度,第一预设差值大于0;[0222]如果动作提示人物图像对应的时间与第一时间的第一差值小于第一预设差值且大于0,将动作提示人物图像的透明度设置为第三透明度;[0223]如果动作提示人物图像对应的时间与第一时间的第一差值小于0,则将动作提示人物图像的透明度设置为第四透明度,第一透明度>第三透明度>第二透明度≥第四透明度。[0224]在一些实施例中,如果动作提示人物图像对应的时间与第一时间的第一差值大于第一预设差值,并将动作提示人物图像的透明度设置为第二透明度,第一预设差值大于0;[0225]如果动作提示人物图像对应的时间与第一时间的第一差值小于第一预设差值且大于0,则根据所述第一差值、第一预设差值第一透明度和第二透明度,确定动作提示人物图像的透明度;该动作提示人物图像的透明度为(第一差值/第一预设差值)*(第一透明度-第二透明度)。[0226]如果动作提示人物图像对应的时间与第一时间的第一差值小于0,则将动作提示人物图像的透明度设置为第二透明度,第一透明度大于第二透明度。[0227]在一些实施例中,根据所述目标肢体关键点信息对应的时间及所述播放进度确定所述动作提示人物图像的缩放比例。[0228]确定当前播放进度对应动作提示人物图像,并将动作提示人物图像的缩放比例设置为第一缩放比例,获取该动作提示人物图像对应的第一时间;[0229]在一些实施例中,如果动作提示人物图像对应的时间与第一时间的第一差值大于第一预设差值,将动作提示人物图像的缩放比例设置为第二缩放比例,第一预设差值大于0;[0230]如果动作提示人物图像对应的时间与第一时间的第一差值小于第一预设差值且大于0,将动作提示人物图像的缩放比例设置为第三缩放比例;[0231]如果动作提示人物图像对应的时间与第一时间的第一差值小于0,则将动作提示人物图像的缩放比例设置为第二缩放比例,第一缩放比例>第三缩放比例>第二缩放比例。[0232]在一些实施例中,如果动作提示人物图像对应的时间与第一时间的第一差值大于第一预设差值,并将动作提示人物图像的缩放比例设置为第二缩放比例,第一预设差值大于0;[0233]如果动作提示人物图像对应的时间与第一时间的第一差值小于第一预设差值且大于0,则根据所述第一差值、第一预设差值第一缩放比例和第二缩放比例,确定动作提示人物图像的缩放比例;该动作提示人物图像的透明度为(第一差值/第一预设差值)*(第一缩放比例-第二缩放比例)。[0234]如果动作提示人物图像对应的时间与第一时间的第一差值小于0,则将动作提示人物图像的缩放比例设置为第二缩放比例。[0235]在一些实施例中,在显示播放进度对应的动作提示人物图像时,可适当加入一些特效或者动作提示人物图像周围加上格外的标记或图像处理,使得用户可以快速辨别哪个动作提示人物图像是当前动作。[0236]在一些实施例中,可以将标志动作的名称显示在动作提示人物图像的下面,可以便于用户更好提前了解到下一个动作,有利于提高动作的准确度。[0237]本技术的一些实施例提供一种健身视频播放方法,所述方法适用于显示设备,显示设备包括显示器和控制器,所述控制器被配置为:响应于播放健身视频的指令,下载所述健身视频的媒资数据和日志打点文件,所述日志打点文件包括肢体关键点信息及所述肢体关键点信息对应的时间;控制所述显示器显示所述媒资数据;根据所述媒资数据的播放进度确定目标范围,获取所述目标范围内目标肢体关键点信息;根据所述目标肢体关键点信息生成动作提示人物图像;控制所述显示器显示所述动作提示人物图像,所述动作提示人物图像按目标肢体关键点信息对应的时间排列显示。通过解析健身视频对应的日志打点文件,提取健身视频内肢体关键点信息,通过肢体关键点信息生成动作提示人物,可预知动作,便于用户提前准备,提高动作准确度,提升用户体验。[0238]最后应说明的是:以上各实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述各实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的范围。[0239]为了方便解释,已经结合具体的实施方式进行了上述说明。但是,上述示例性的讨论不是意图穷尽或者将实施方式限定到上述公开的具体形式。根据上述的教导,可以得到多种修改和变形。上述实施方式的选择和描述是为了更好的解释原理及实际的应用,从而使得本领域技术人员更好的使用所述实施方式以及适于具体使用考虑的各种不同的变形的实施方式。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1