CN110705497A - 图像帧处理方法、装置、终端设备及计算机可读存储介质 - Google Patents
图像帧处理方法、装置、终端设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN110705497A CN110705497A CN201910963155.8A CN201910963155A CN110705497A CN 110705497 A CN110705497 A CN 110705497A CN 201910963155 A CN201910963155 A CN 201910963155A CN 110705497 A CN110705497 A CN 110705497A
- Authority
- CN
- China
- Prior art keywords
- image frame
- algorithm
- preset
- power consumption
- gpu
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
- G06V30/41—Analysis of document content
- G06V30/413—Classification of content, e.g. text, photographs or tables
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/80—Camera processing pipelines; Components thereof
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Signal Processing (AREA)
- Artificial Intelligence (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Studio Devices (AREA)
Abstract
本申请适用于数据处理技术领域,提供了图像帧处理方法、装置、终端设备及计算机可读存储介质,所述图像帧处理方法包括:若接收到拍照应用启动指令,则通过摄像头获取图像帧并发送至硬件抽象层HAL;若检测到预设算法为图形处理器GPU算法且所述HAL输出图像帧序列,则采用所述预设算法对所述图像帧序列进行文本识别,其中,所述图形处理器GPU算法通过所述GPU运行。通过上述方法,能够保证图像的实时性。
Description
技术领域
本申请属于数据处理技术领域,尤其涉及图像帧处理方法、装置、终端设备及计算机可读存储介质。
背景技术
硬件抽象层(Hardware Abstraction Layer,HAL)是在具体的硬件平台上抽象出来的一个硬件接口层,这个接口层负责实现具体硬件平台的功能和控制,同时又为其他软件模块提供统一的API接口。
目前,若进行文本识别,则会将HAL返回的图像帧,逐帧进行算法的识别处理。如图1所示,F1、F2、F3、F4、F5、F6、F7是从HAL出来的图像帧,这些图像帧都会排队等待中央处理器(Central Processing Unit,CPU)上的算法(Algorithm)进行文本识别。但现有的方法常常会导致等待算法处理的队列不断累积,算法的结果出现一定程度的延迟,从而无法保证图像的实时性。
发明内容
本申请实施例提供了图像帧处理方法、装置、终端设备及计算机可读存储介质,可以解决CPU上的算法难以实时图像的问题。
第一方面,本申请实施例提供了一种图像帧处理方法,所述图像帧处理方法应用于终端设备,所述图像帧处理方法包括:
若接收到拍照应用启动指令,则通过摄像头获取图像帧并发送至硬件抽象层HAL;
若检测到预设算法为图形处理器GPU算法且检测到所述HAL输出图像帧序列,则采用所述预设算法对所述图像帧序列进行文本识别,其中,所述图形处理器GPU算法通过所述GPU运行。
第二方面,本申请实施例提供了一种图像帧处理装置,所述图像帧处理装置应用于终端设备,所述图像帧处理装置包括:
拍照应用启动指令接收单元,用于若接收到拍照应用启动指令,则通过摄像头获取图像帧并发送至硬件抽象层HAL;
文本识别单元,用于若检测到预设算法为图形处理器GPU算法且检测到所述HAL输出图像帧序列,则采用所述预设算法对所述图像帧序列进行文本识别,其中,所述图形处理器GPU算法通过所述GPU运行
第三方面,本申请实施例提供了一种终端设备,包括摄像头、存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的方法。
第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面中任一项所述的方法。
本申请实施例与现有技术相比存在的有益效果是:
由于预设算法为图形处理器GPU算法,即通过GPU运行该预设算法,而由于GPU运行速度高于CPU,因此,其能够更快速地对图像帧进行文本识别,从而保证图像的实时性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1是本申请一实施例提供的从HAL输出图像帧到算法的流程示意图;
图2是本申请一实施例提供的图像帧处理方法所适用于的手机的结构示意图;
图3是本申请一实施例提供的图像帧处理方法的流程示意图;
图4是本申请一实施例提供的图像帧处理装置的结构示意图;
图5是本申请一实施例提供的终端设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
本申请实施例提供的图像帧处理方法可以应用于手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)等终端设备上,本申请实施例对终端设备的具体类型不作任何限制。
以所述终端设备为手机为例。图2示出的是与本申请实施例提供的手机的部分结构的框图。参考图2,手机包括:射频(Radio Frequency,RF)电路110、存储器120、输入单元130、显示单元140、传感器150、音频电路160、无线保真(wireless fidelity,WiFi)模块170、处理器180、以及电源190等部件。本领域技术人员可以理解,图2中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图2对手机的各个构成部件进行具体的介绍:
RF电路110可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器180处理;另外,将设计上行的数据发送给基站。通常,RF电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low NoiseAmplifier,LNA)、双工器等。此外,RF电路110还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(GlobalSystem of Mobile communication,GSM)、通用分组无线服务(General Packet RadioService,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE))、电子邮件、短消息服务(Short Messaging Service,SMS)等。
存储器120可用于存储软件程序以及模块,处理器180通过运行存储在存储器120的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元130可用于接收输入的数字或字符信息,以及产生与手机100的用户设置以及功能控制有关的键信号输入。具体地,输入单元130可包括触控面板131以及其他输入设备132。触控面板131,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板131上或在触控面板131附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器180,并能接收处理器180发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板131。除了触控面板131,输入单元130还可以包括其他输入设备132。具体地,其他输入设备132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元140可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元140可包括显示面板141,可选的,可以采用液晶显示器(Liquid CrystalDisplay,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板141。进一步的,触控面板131可覆盖显示面板141,当触控面板131检测到在其上或附近的触摸操作后,传送给处理器180以确定触摸事件的类型,随后处理器180根据触摸事件的类型在显示面板141上提供相应的视觉输出。虽然在图2中,触控面板131与显示面板141是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板131与显示面板141集成而实现手机的输入和输出功能。
手机100还可包括至少一种传感器150,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板141的亮度,接近传感器可在手机移动到耳边时,关闭显示面板141和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路160、扬声器161,传声器162可提供用户与手机之间的音频接口。音频电路160可将接收到的音频数据转换后的电信号,传输到扬声器161,由扬声器161转换为声音信号输出;另一方面,传声器162将收集的声音信号转换为电信号,由音频电路160接收后转换为音频数据,再将音频数据输出处理器180处理后,经RF电路110以发送给比如另一手机,或者将音频数据输出至存储器120以便进一步处理。
WiFi属于短距离无线传输技术,手机通过WiFi模块170可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图2示出了WiFi模块170,但是可以理解的是,其并不属于手机100的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器180是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器120内的软件程序和/或模块,以及调用存储在存储器120内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器180可包括一个或多个处理单元;优选的,处理器180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器180中。
手机100还包括给各个部件供电的电源190(比如电池),优选的,电源可以通过电源管理系统与处理器180逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机100还可以包括摄像头。可选地,摄像头在手机100的上的位置可以为前置的,也可以为后置的,本申请实施例对此不作限定。
可选地,手机100可以包括单摄像头、双摄像头或三摄像头等,本申请实施例对此不作限定。
例如,手机100可以包括三摄像头,其中,一个为主摄像头、一个为广角摄像头、一个为长焦摄像头。
可选地,当手机100包括多个摄像头时,这多个摄像头可以全部前置,或者全部后置,或者一部分前置、另一部分后置,本申请实施例对此不作限定。
另外,尽管未示出,手机100还可以包括蓝牙模块等,在此不再赘述。
以下实施例可以在具有上述硬件结构/软件结构的手机100上实现。以下实施例将以手机100为例,对本申请实施例提供的图像帧处理方法进行说明。
图3示出了本申请实施例提供的一种图像帧处理方法的流程图,所述图像帧处理方法应用于终端设备,所述图像帧处理方法包括:
步骤S31,若接收到拍照应用启动指令,则通过摄像头获取图像帧并发送至硬件抽象层HAL;
该步骤中,用户可通过点击显示在终端设备界面的拍照应用图标发出拍照应用启动指令,或者,通过预设的快捷操作发出拍照应用启动指令。其中,启动拍照应用包括启动安装在终端设备的摄像头,通过该摄像头抓取周围环境的图像信息,该抓取的图像信息将作为输入HAL的图像帧。
步骤S32,若检测到预设算法为图形处理器GPU算法且检测到所述HAL输出图像帧序列,则采用所述预设算法对所述图像帧序列进行文本识别,其中,所述图形处理器GPU算法通过所述GPU运行。
其中,图像帧序列包括至少一个图像帧,通过HAL逐个输出图像帧形成对应的图像帧序列。
该步骤中的预设算法用于识别图像帧是否存在文本,其为图形处理器(GraphicsProcessing Unit,GPU)算法,该预设算法安装在GPU中,通过GPU实现算法的处理过程。
在一些实施例中,在所述步骤S32之后,包括,输出对所述图像帧序列进行文本识别后得到的识别结果。
需要指出的是,由于中央处理器(Central Processing Unit,CPU)需要响应各种应用的请求,因此,其被各种应用占用了很多资源,且由于CPU是顺序执行,因此对通过CPU实现处理过程的算法的速度产生一定的限制,而GPU通常只需要响应与图像处理有关的请求,且由于其是并行执行,因此,通过GPU运行预设算法能够及时对图像帧进行文本识别。
本申请实施例中,若接收到拍照应用启动指令,则通过摄像头获取图像帧并发送至硬件抽象层HAL,若检测到预设算法为图形处理器GPU算法且检测到所述HAL输出图像帧序列,则采用所述预设算法对所述图像帧序列进行文本识别。由于预设算法为图形处理器GPU算法,即通过GPU运行该预设算法,而由于GPU运行速度高于CPU,因此,其能够更快速地对图像帧进行文本识别,从而保证图像的实时性。
在一些实施例中,虽然GPU的处理效率可以达到对HAL出来的每一帧都进行处理,但考虑到功耗的问题,若对每一个图像帧都进行计算,则计算量太大,功耗增加,从而导致终端设备发热严重,因此,为了降低功耗,可主动从图像帧序列中选取部分图像帧,并采用预设算法对选取的部分图像帧进行文本识别。此时,步骤S32包括:
若检测到预设算法为图形处理器GPU算法且检测到所述HAL输出图像帧序列,则按照预设间隔选取帧策略从所述图像帧序列中选取目标图像帧,并采用所述预设算法对所述目标图像帧进行文本识别。
上述的预设间隔选取帧策略包括:等间隔选取帧策略和动态间隔选取帧策略。
在一些实施例中,若预设间隔选取帧策略为等间隔选取帧策略,所述等间隔选取帧策略包括:在选取一个图像帧后,每次达到预设的间隔阈值将再次选取下一图像帧的策略,所述间隔阈值包括间隔帧数和间隔时间;
对应地,所述若检测到预设算法为图形处理器GPU算法且检测到所述HAL输出图像帧序列,则按照预设间隔选取帧策略从所述图像帧序列中选取目标图像帧,并采用所述预设算法对所述目标图像帧进行文本识别,具体为:
若检测到预设算法为图形处理器GPU算法且检测到所述HAL输出图像帧序列,则按照等间隔选取帧策略从所述图像帧序列中选取目标图像帧,并采用所述预设算法对所述目标图像帧进行文本识别。
其中,在预设的间隔阈值为预设的间隔帧数时,预设的间隔帧数可以为3帧或5帧等,具体可根据实际情况确定,只需保证预设算法对目标图像帧进行文本识别后的识别结果在用户可接受范围即可,此处不作限定。假设预设的间隔帧数为3帧,且选取图像帧序列的第一个图像帧为目标图像帧,采用预设算法对该第一个图像帧进行文本识别,后续则选取图像帧序列的第四个图像帧作为目标图像帧,后续选取目标图像帧的过程与此类似,此处不再赘述。
其中,在预设的间隔阈值为预设的间隔时间时,预设的间隔时间可以为5ms,10ms等。假设预设的间隔时间为5ms,且选取图像帧序列的第一个图像帧为目标图像帧,采用预设算法对该第一个图像帧进行文本识别,确定5ms内从所述HAL输出的图像帧数量X,再选取图像帧序列的第X个图像帧作为目标图像帧,后续选取目标图像帧的过程与此类似,此处不再赘述。
本实施例中,由于图像帧序列中,相邻图像帧的内容是很接近的,通过预设算法对相邻图像帧进行文本识别后的识别结果也是很接近的,因此,可设置预设算法只对选取的部分图像帧进行文本识别来减少计算量。
在一些实施例中,由于采用预设算法对图像帧进行文本识别的速度与终端设备当前的功耗有关,因此,可根据终端设备的功耗确定预设的间隔阈值,此时,在所述若检测到预设算法为图形处理器GPU算法且所述HAL输出图像帧序列,则按照等间隔选取帧策略从所述图像帧序列中选取目标图像帧之前,包括:
确定终端设备的功耗,根据所述功耗确定预设的间隔阈值,所述功耗与所述预设的间隔阈值为正比例关系。
本实施例中,确定终端设备当前的功耗,若功耗越大,则预设的间隔阈值越大,这样,预设算法需处理的图像帧的数量越少,图像的实时性越高。以预设的间隔阈值为预设的间隔帧数为例,设定两个功耗值,若确定的终端设备的功耗小于或等于第一功耗值,则预设的间隔帧数为第一间隔帧数;若确定的终端设备的功耗大于或等于第一功耗值,且小于或等于第二功耗值,则预设的间隔帧数为第二间隔帧数,且第一间隔帧数小于第二间隔帧数。
在一些实施例中,为了快速确定终端设备在GPU上的功耗,则只计算预设算法进行文本识别所产生的功耗,并将计算的功耗作为终端设备的功耗,此时,所述确定终端设备的功耗,根据所述功耗确定预设的间隔阈值,包括:
A1、统计所述预设算法在进行文本识别的预设时长内所产生的功耗,统计的所述功耗作为所述终端设备的功耗;
A2、根据所述终端设备的功耗确定预设的间隔阈值。
本实施例中,统计预设算法在进行文本识别的预设时长内所产生的功耗,比如,统计预设算法在开始文本识别后5分钟内所产生的功耗,若统计的功耗较大,则预估后续采用该预设算法继续对图像帧进行文本识别时所产生的功耗也较大,因此,根据统计的功耗确定预设的间隔阈值,且所述功耗与预设的间隔阈值为正比例关系。
在一些实施例中,为了保证确定的终端设备在GPU上的功耗更准确,则计算终端设备当前在GPU上实际的功耗,此时,所述确定终端设备的功耗,根据所述功耗确定预设的间隔阈值,包括:
B1、统计终端设备的功耗,所述终端设备的功耗包括所述预设算法在进行文本识别的预设时长内所产生的功耗,以及,在所述预设时长内其他启动的应用所产生的功耗;
B2、根据所述终端设备的功耗确定所述预设的间隔阈值。
本实施例中,统计GPU在预设时长内的功耗,包括统计预设算法在该预设时长内进行文本识别所产生的功耗,以及,统计在该预设时长内其他启动的应用占用GPU资源所产生的功耗。由于统计了预设时长内终端设备的GPU的功耗,而预设算法对图像帧进行文本识别的速度是与GPU的功率有关的,因此,使得根据该终端设备的功耗确定的预设的间隔阈值更准确,进而使得预设算法能够及时对后续的图像帧进行处理,从而保证图像的实时性。
在一些实施例中,由于图像帧包含的图像信息可能变化比较大,也可以变化比较小,因此,为了更灵活地选取目标图像帧进行文本识别,若预设间隔选取帧策略为动态间隔选取帧策略,所述动态间隔选取帧策略包括:选取一个图像帧作为前一图像帧,每次达到确定的动态间隔帧数将再次选取所述前一个图像帧间隔所述动态间隔帧数的下一个图像帧的策略,所述动态间隔帧数根据相邻图像帧的相似度确定,且所述动态间隔帧数与所述相邻图像帧的相似度成正比例关系;
则所述若检测到预设算法为图形处理器GPU算法且检测到所述HAL输出图像帧序列,则采用所述预设算法对所述图像帧序列进行文本识别,包括:
若检测到预设算法为图形处理器GPU算法且检测到所述HAL输出图像帧序列,则按照动态间隔选取帧策略从所述图像帧序列中选取目标图像帧,并采用所述预设算法对所述目标图像帧进行文本识别。
其中,相邻图像帧的相似度可通过像素值和包含的特征确定。
本实施例中,当判断出相邻图像帧的相似度较高时,增大动态间隔帧数,这样能够减少需进行文本识别的图像帧的数量,从而既减少了功耗又保证了图像的实时性;当判断出相邻图像帧的相似度较低时,减小动态间隔帧数,这样能够增加需进行文本识别的图像帧的数量,以保证数据的完整性。同时,由于GPU本身的处理速度较快,因此,也能够保证图像的实时性。
在一些实施例中,若通过CPU运行预设算法,则预设算法只对HAL最迟输出的图像帧进行文本识别,以保证图像的实时性,此时,所述图像帧处理方法还包括:
若检测到预设算法为中央处理器CPU算法且硬件抽象层HAL输出图像帧序列,则在所述预设算法对一个图像帧进行文本识别结束之后,再采用所述预设算法对最迟加入所述图像帧序列中的图像帧进行文本识别,并丢弃所述图像帧序列中的其他图像帧,其中,所述中央处理器CPU算法通过所述CPU运行。
本实施例中,为避免由于预设算法难以及时对HAL输出的图像帧进行文本识别而出现识别结果延迟的现象,则在HAL输出的图像帧序列中,只选取最迟从HAL输出的图像帧,预设算法只对选取的图像帧进行文本识别,不会对图像帧序列的其他图像帧进行文本识别,从而保证图像的实时性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
对应于上文实施例所述的图像帧处理方法,图4示出了本申请实施例提供的图像帧处理装置的结构框图,所述图像帧处理装置应用于终端设备,为了便于说明,仅示出了与本申请实施例相关的部分。
参照图4,该图像帧处理装置4包括:拍照应用启动指令接收单元41和第一文本识别单元42。其中:
拍照应用启动指令接收单元41,用于若接收到拍照应用启动指令,则通过摄像头获取图像帧并发送至硬件抽象层HAL;
具体地,用户可通过点击显示在终端设备界面的拍照应用图标发出拍照应用启动指令,或者,通过预设的快捷操作发出拍照应用启动指令。其中,启动拍照应用包括启动安装在终端设备的摄像头,通过该摄像头抓取周围环境的图像信息,该抓取的图像信息将作为输入HAL的图像帧。
第一文本识别单元42,用于若检测到预设算法为图形处理器GPU算法且所述HAL输出图像帧序列,则采用所述预设算法对所述图像帧序列进行文本识别,其中,所述图形处理器GPU算法通过所述GPU运行。
本申请实施例中,由于预设算法为图形处理器GPU算法,即通过GPU运行该预设算法,而由于GPU运行速度高于CPU,因此,其能够更快速地对图像帧进行文本识别,从而保证图像的实时性。
在一些实施例中,虽然GPU的处理效率可以达到对HAL出来的每一帧都进行处理,但考虑到功耗的问题,若对每一个图像帧都进行计算,则计算量太大,功耗增加,从而导致终端设备发热严重,因此,为了降低功耗,可主动从图像帧序列中选取部分图像帧,并采用预设算法对选取的部分图像帧进行文本识别。此时,所述第一文本识别单元42具体用于:
若检测到预设算法为图形处理器GPU算法且检测到所述HAL输出图像帧序列,则按照预设间隔选取帧策略从所述图像帧序列中选取目标图像帧,并采用所述预设算法对所述目标图像帧进行文本识别。
上述的预设间隔选取帧策略包括:等间隔选取帧策略和动态间隔选取帧策略。
在一些实施例中,若预设间隔选取帧策略为等间隔选取帧策略,所述等间隔选取帧策略包括:在选取一个图像帧后,每次达到预设的间隔阈值将再次选取下一图像帧的策略,所述间隔阈值包括间隔帧数和间隔时间;
则所述第一文本识别单元42具体用于:若检测到预设算法为图形处理器GPU算法且检测到所述HAL输出图像帧序列,则按照等间隔选取帧策略从所述图像帧序列中选取目标图像帧,并采用所述预设算法对所述目标图像帧进行文本识别。
在一些实施例中,由于采用预设算法对图像帧进行文本识别的速度与终端设备当前的功耗有关,因此,可根据终端设备的功耗确定预设的间隔帧数,此时,该图像帧处理装置4包括:
预设的间隔阈值确定单元,用于确定终端设备的功耗,根据所述功耗确定预设的间隔阈值,所述功耗与预设的间隔阈值为正比例关系。
本实施例中,确定终端设备当前的功耗,若功耗越大,则预设的间隔阈值越大,这样,预设算法需处理的图像帧的数量越少,图像的实时性越高。
在一些实施例中,为了快速确定终端设备在GPU上的功耗,则只计算预设算法进行文本识别所产生的功耗,并将计算的功耗作为终端设备的功耗,此时,所述预设的间隔阈值确定单元包括:
预设算法的功耗统计模块,用于统计所述预设算法在进行文本识别的预设时长内所产生的功耗,统计的所述功耗作为所述终端设备的功耗;
第一预设的间隔阈值确定模块,用于根据所述功耗确定预设的间隔阈值。
在一些实施例中,为了保证确定的终端设备在GPU上的功耗更准确,则计算终端设备当前在GPU上实际的功耗,此时,所述预设的间隔阈值确定单元包括:
终端设备的功耗统计模块,用于统计终端设备的功耗,所述终端设备的功耗包括所述预设算法在进行文本识别的预设时长内所产生的功耗,以及,在所述预设时长内其他启动的应用所产生的功耗;
第二预设的间隔帧数确定模块,用于根据所述终端设备的功耗确定所述预设的间隔阈值。
在一些实施例中,由于图像帧包含的图像信息可能变化比较大,也可以变化比较小,因此,为了更灵活地选取目标图像帧进行文本识别,若预设间隔选取帧策略为动态间隔选取帧策略,所述动态间隔选取帧策略包括:选取一个图像帧作为前一图像帧,每次达到确定的动态间隔帧数将再次选取所述前一个图像帧间隔所述动态间隔帧数的下一个图像帧的策略,所述动态间隔帧数根据相邻图像帧的相似度确定,且所述动态间隔帧数与所述相邻图像帧的相似度成正比例关系;
则所述第一文本识别单元42具体用于:
若检测到预设算法为图形处理器GPU算法且检测到所述HAL输出图像帧序列,则按照动态间隔选取帧策略从所述图像帧序列中选取目标图像帧,并采用所述预设算法对所述目标图像帧进行文本识别。
在一些实施例中,若通过CPU运行预设算法,则预设算法只对HAL最迟输出的图像帧进行文本识别,以保证图像的实时性,此时,所述图像帧处理装置还包括:
第二文本识别单元,用于若检测到预设算法为中央处理器CPU算法且硬件抽象层HAL输出图像帧序列,则在所述预设算法对一个图像帧进行文本识别结束之后,再采用所述预设算法对最迟加入所述图像帧序列中的图像帧进行文本识别,并丢弃所述图像帧序列中的其他图像帧。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
图5为本申请一实施例提供的终端设备的结构示意图。如图5所示,该实施例的终端设备5包括:至少一个处理器50(图5中仅示出一个处理器)、存储器51、存储在所述存储器51中并可在所述至少一个处理器50上运行的计算机程序52以及摄像头53,所述处理器50执行所述计算机程序52时实现上述任意各个方法实施例中的步骤:
若接收到拍照应用启动指令,则通过摄像头获取图像帧并发送至硬件抽象层HAL;
若检测到预设算法为图形处理器GPU算法且所述HAL输出图像帧序列,则采用所述预设算法对所述图像帧序列进行文本识别,其中,所述图形处理器GPU算法通过所述GPU运行。
所述终端设备5可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。该终端设备可包括,但不仅限于,处理器50、存储器51。本领域技术人员可以理解,图5仅仅是终端设备5的举例,并不构成对终端设备5的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。
所称处理器50可以是中央处理单元(Central Processing Unit,CPU),该处理器50还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器51在一些实施例中可以是所述终端设备5的内部存储单元,例如终端设备5的硬盘或内存。所述存储器51在另一些实施例中也可以是所述终端设备5的外部存储设备,例如所述终端设备5上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器51还可以既包括所述终端设备5的内部存储单元也包括外部存储设备。所述存储器51用于存储操作系统、应用程序、引导装载程序(BootLoader)、数据以及其他程序等,例如所述计算机程序的程序代码等。所述存储器51还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供了一种网络设备,该网络设备包括:至少一个处理器、存储器以及存储在所述存储器中并可在所述至少一个处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任意各个方法实施例中的步骤。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在移动终端上运行时,使得移动终端执行时实现可实现上述各个方法实施例中的步骤。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/网络设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/网络设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (11)
1.一种图像帧处理方法,其特征在于,所述图像帧处理方法应用于终端设备,所述图像帧处理方法包括:
若接收到拍照应用启动指令,则通过摄像头获取图像帧并发送至硬件抽象层HAL;
若检测到预设算法为图形处理器GPU算法且检测到所述HAL输出图像帧序列,则采用所述预设算法对所述图像帧序列进行文本识别,其中,所述图形处理器GPU算法通过所述GPU运行。
2.如权利要求1所述的图像帧处理方法,其特征在于,所述若检测到预设算法为图形处理器GPU算法且检测到所述HAL输出图像帧序列,则采用所述预设算法对所述图像帧序列进行文本识别,包括:
若检测到预设算法为图形处理器GPU算法且检测到所述HAL输出图像帧序列,则按照预设间隔选取帧策略从所述图像帧序列中选取目标图像帧,并采用所述预设算法对所述目标图像帧进行文本识别。
3.如权利要求2所述的图像帧处理方法,其特征在于,所述预设间隔选取帧策略为等间隔选取帧策略,所述等间隔选取帧策略包括:在选取一个图像帧后,每次达到预设的间隔阈值将再次选取下一图像帧的策略,所述间隔阈值包括间隔帧数和间隔时间;
对应地,所述若检测到预设算法为图形处理器GPU算法且检测到所述HAL输出图像帧序列,则按照预设间隔选取帧策略从所述图像帧序列中选取目标图像帧,并采用所述预设算法对所述目标图像帧进行文本识别,具体为:
若检测到预设算法为图形处理器GPU算法且检测到所述HAL输出图像帧序列,则按照所述等间隔选取帧策略从所述图像帧序列中选取目标图像帧,并采用所述预设算法对所述目标图像帧进行文本识别。
4.如权利要求3所述的图像帧处理方法,其特征在于,在所述若检测到预设算法为图形处理器GPU算法且检测到所述HAL输出图像帧序列,则按照等间隔选取帧策略从所述图像帧序列中选取目标图像帧之前,包括:
确定终端设备的功耗,根据所述功耗确定预设的间隔阈值,所述功耗与所述预设的间隔阈值为正比例关系。
5.如权利要求4所述的图像帧处理方法,其特征在于,所述确定终端设备的功耗,根据所述功耗确定预设的间隔阈值,包括:
统计所述预设算法在进行文本识别的预设时长内所产生的功耗,统计的所述功耗作为所述终端设备的功耗;
根据所述终端设备的功耗确定预设的间隔阈值。
6.如权利要求4所述的图像帧处理方法,其特征在于,所述确定终端设备的功耗,根据所述功耗确定预设的间隔阈值,包括:
统计所述终端设备的功耗,所述终端设备的功耗包括所述预设算法在进行文本识别的预设时长内所产生的功耗,以及,在所述预设时长内其他启动的应用所产生的功耗;
根据所述终端设备的功耗确定所述预设的间隔阈值。
7.如权利要求2所述的图像帧处理方法,其特征在于,所述预设间隔选取帧策略为动态间隔选取帧策略,所述动态间隔选取帧策略包括:选取一个图像帧作为前一图像帧,每次达到确定的动态间隔帧数将再次选取所述前一个图像帧间隔所述动态间隔帧数的下一个图像帧的策略,所述动态间隔帧数根据相邻图像帧的相似度确定,且所述动态间隔帧数与所述相邻图像帧的相似度成正比例关系;
对应地,若检测到预设算法为图形处理器GPU算法且检测到所述HAL输出图像帧序列,则采用所述预设算法对所述图像帧序列进行文本识别,具体为:
若检测到预设算法为图形处理器GPU算法且检测到所述HAL输出图像帧序列,则按照动态间隔选取帧策略从所述图像帧序列中选取目标图像帧,并采用所述预设算法对所述目标图像帧进行文本识别。
8.如权利要求1所述的图像帧处理方法,其特征在于,所述图像帧处理方法还包括:
若检测到预设算法为中央处理器CPU算法且检测到硬件抽象层HAL输出图像帧序列,则在所述预设算法对一个图像帧进行文本识别结束之后,再采用所述预设算法对最迟加入所述图像帧序列中的图像帧进行文本识别,并丢弃所述图像帧序列中的其他图像帧,其中,所述中央处理器CPU算法通过所述CPU运行。
9.一种图像帧处理装置,其特征在于,所述图像帧处理装置应用于终端设备,所述图像帧处理装置包括:
拍照应用启动指令接收单元,用于若接收到拍照应用启动指令,则通过摄像头获取图像帧并发送至硬件抽象层HAL;
第一文本识别单元,用于若检测到预设算法为图形处理器GPU算法且检测到所述HAL输出图像帧序列,则采用所述预设算法对所述图像帧序列进行文本识别,其中,所述图形处理器GPU算法通过所述GPU运行。
10.一种终端设备,包括摄像头、存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至8任一项所述的方法。
11.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910963155.8A CN110705497A (zh) | 2019-10-11 | 2019-10-11 | 图像帧处理方法、装置、终端设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910963155.8A CN110705497A (zh) | 2019-10-11 | 2019-10-11 | 图像帧处理方法、装置、终端设备及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110705497A true CN110705497A (zh) | 2020-01-17 |
Family
ID=69198465
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910963155.8A Pending CN110705497A (zh) | 2019-10-11 | 2019-10-11 | 图像帧处理方法、装置、终端设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110705497A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111310694A (zh) * | 2020-02-26 | 2020-06-19 | 苏州猫头鹰智能科技有限公司 | 基于预测的低帧延迟行为识别方法 |
CN113139547A (zh) * | 2020-01-20 | 2021-07-20 | 阿里巴巴集团控股有限公司 | 文本识别方法、装置、电子设备及存储介质 |
CN116055897A (zh) * | 2022-08-25 | 2023-05-02 | 荣耀终端有限公司 | 拍照方法及其相关设备 |
CN116347212A (zh) * | 2022-08-05 | 2023-06-27 | 荣耀终端有限公司 | 一种自动拍照方法及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107729857A (zh) * | 2017-10-26 | 2018-02-23 | 广东欧珀移动通信有限公司 | 人脸识别方法、装置、存储介质和电子设备 |
CN108959462A (zh) * | 2018-06-19 | 2018-12-07 | Oppo广东移动通信有限公司 | 图像处理方法和装置、电子设备、计算机可读存储介质 |
CN109840465A (zh) * | 2017-11-29 | 2019-06-04 | 三星电子株式会社 | 识别图像中的文本的电子装置 |
CN110177218A (zh) * | 2019-06-28 | 2019-08-27 | 广州鲁邦通物联网科技有限公司 | 一种安卓设备的拍照图像处理方法 |
-
2019
- 2019-10-11 CN CN201910963155.8A patent/CN110705497A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107729857A (zh) * | 2017-10-26 | 2018-02-23 | 广东欧珀移动通信有限公司 | 人脸识别方法、装置、存储介质和电子设备 |
CN109840465A (zh) * | 2017-11-29 | 2019-06-04 | 三星电子株式会社 | 识别图像中的文本的电子装置 |
CN108959462A (zh) * | 2018-06-19 | 2018-12-07 | Oppo广东移动通信有限公司 | 图像处理方法和装置、电子设备、计算机可读存储介质 |
CN110177218A (zh) * | 2019-06-28 | 2019-08-27 | 广州鲁邦通物联网科技有限公司 | 一种安卓设备的拍照图像处理方法 |
Non-Patent Citations (1)
Title |
---|
杨开广: "基于安卓平台的具有实时滤镜功能的Camera开发", 《中国优秀硕士论文全文数据库》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113139547A (zh) * | 2020-01-20 | 2021-07-20 | 阿里巴巴集团控股有限公司 | 文本识别方法、装置、电子设备及存储介质 |
CN111310694A (zh) * | 2020-02-26 | 2020-06-19 | 苏州猫头鹰智能科技有限公司 | 基于预测的低帧延迟行为识别方法 |
CN111310694B (zh) * | 2020-02-26 | 2023-07-14 | 苏州猫头鹰智能科技有限公司 | 基于预测的低帧延迟行为识别方法 |
CN116347212A (zh) * | 2022-08-05 | 2023-06-27 | 荣耀终端有限公司 | 一种自动拍照方法及电子设备 |
CN116347212B (zh) * | 2022-08-05 | 2024-03-08 | 荣耀终端有限公司 | 一种自动拍照方法及电子设备 |
CN116055897A (zh) * | 2022-08-25 | 2023-05-02 | 荣耀终端有限公司 | 拍照方法及其相关设备 |
CN116055897B (zh) * | 2022-08-25 | 2024-02-27 | 荣耀终端有限公司 | 拍照方法及其相关设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110705497A (zh) | 图像帧处理方法、装置、终端设备及计算机可读存储介质 | |
CN106850978B (zh) | 一种应用程序控制方法及相关设备 | |
EP3627823A1 (en) | Image selection method and related product | |
CN110752981B (zh) | 一种信息控制方法及电子设备 | |
CN108984066B (zh) | 一种应用程序图标显示方法及移动终端 | |
CN108881719B (zh) | 一种切换拍摄方式的方法及终端设备 | |
CN109714476B (zh) | 数据处理方法、装置、移动终端及存储介质 | |
EP3416130B1 (en) | Method, device and nonvolatile computer-readable medium for image composition | |
CN110704191A (zh) | 一种游戏优化方法、游戏优化装置及移动终端 | |
CN111651030B (zh) | 传感器检测方法、装置、存储介质及移动终端 | |
CN110442297B (zh) | 分屏显示方法、分屏显示装置及终端设备 | |
CN107800869B (zh) | 一种分屏显示方法、移动终端和存储介质 | |
CN110418003B (zh) | 一种亮度调节方法、亮度调节装置及移动终端 | |
CN105513098B (zh) | 一种图像处理的方法和装置 | |
CN108564539B (zh) | 一种显示图像的方法和装置 | |
CN106815078B (zh) | 一种内存控制方法及设备 | |
CN111210299B (zh) | 一种单号生成及管理方法及装置 | |
CN106709856B (zh) | 一种图形渲染方法及相关设备 | |
CN110767950B (zh) | 充电方法、装置、终端设备及计算机可读存储介质 | |
CN111143580B (zh) | 多媒体数据存储方法、装置、存储介质及电子设备 | |
CN110706158B (zh) | 图像处理方法、图像处理装置及终端设备 | |
CN109902484B (zh) | 一种关联应用的处理方法以及终端 | |
CN113296664A (zh) | 屏幕分辨率调整方法、装置、终端设备及存储介质 | |
CN108073508B (zh) | 一种兼容性检测方法及装置 | |
CN106933456B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200117 |