CN115315690A - 用于监视在操作系统内执行的应用的使用的方法和装置 - Google Patents
用于监视在操作系统内执行的应用的使用的方法和装置 Download PDFInfo
- Publication number
- CN115315690A CN115315690A CN202180023439.4A CN202180023439A CN115315690A CN 115315690 A CN115315690 A CN 115315690A CN 202180023439 A CN202180023439 A CN 202180023439A CN 115315690 A CN115315690 A CN 115315690A
- Authority
- CN
- China
- Prior art keywords
- menu screen
- application
- data
- screen
- currently displayed
- 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
- 238000000034 method Methods 0.000 title claims abstract description 66
- 238000012544 monitoring process Methods 0.000 title claims abstract description 64
- 238000012549 training Methods 0.000 claims description 10
- 238000001514 detection method Methods 0.000 claims description 8
- 238000012545 processing Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 5
- 230000009471 action Effects 0.000 description 20
- 230000008569 process Effects 0.000 description 20
- 230000015654 memory Effects 0.000 description 9
- 238000004458 analytical method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000012015 optical character recognition Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 239000011435 rock Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3438—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3447—Performance evaluation by modeling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3419—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3419—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
- G06F11/3423—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time where the assessed time is active or idle time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/865—Monitoring of software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Human Computer Interaction (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Mathematical Physics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本公开涉及一种用于监视在电子设备(40)的操作系统内执行的应用的使用的装置和方法。该装置和方法是使用与被监视应用不同的监视应用来实现的,并且旨在不仅提供关于应用使用时间的信息,而且还提供关于被监视应用中的一些被监视应用被如何使用的信息。监视应用利用经训练的模型来获取有关被监视应用的信息。
Description
技术领域
本公开总体涉及数据分析领域。更具体地,本公开涉及一种用于监视在电子设备的操作系统内执行的应用的使用的方法。
背景技术
本章节旨在向读者介绍可能与在下面描述和/或要求保护的本公开的各方面有关的领域中的各方面。该论述被认为有助于为读者提供背景技术信息,以促进对本公开的各方面的更好理解。因此,应当理解,这些陈述要从这一角度阅读,并且不能作为现有技术被接纳。
从现场收集客户信息对于运营商(例如,互联网服务提供商、电话运营商等)积极主动并且提高客户体验至关重要。更特别地,运营商感兴趣的是收集关于哪些应用主要在电子设备(例如,智能电话、机顶盒等)上使用、它们被使用了多长时间以及它们如何被使用的信息。这些数据必须是匿名的,但是仍然可以在更大规模下推断信息。
然而,获得这样的信息通常是相当困难的。
事实上,虽然一些应用可能在他们自己的代码中实现它们自己的分析解决方案以允许用户监视它们的使用,但是通常在这些应用之外没有直接信息可用。此外,许多应用根本不实现这样的分析解决方案。此外,运营商通常无法控制安装在电子设备上的应用。
一些操作系统提供了获得有关应用使用的一些信息的手段。然而,所获得的信息通常是零散且有限的。例如,操作系统提供本机使用统计应用编程接口(“API”),该API可以被调用以通过相应的时间戳来获得关于应用是否已置于系统前台或系统后台的历史。然而,无法从这样的API直接推断出关于如何使用应用的信息。例如,考虑传送视频内容的应用,将真正用于观看视频的时间与浏览由应用提供的视频目录所花费的时间区分开是有意义的。
因此,提供一种避免这些缺点中的至少一些缺点,并且将特别允许以更精确的方式监视应用的技术是所期望的。
发明内容
本公开涉及一种用于监视在电子设备的操作系统内执行的至少一个应用的使用的方法,该方法由与至少一个应用不同的监视应用来实现,其中,在检测到输入控制接口上的输入或电子设备的输入控制接口时,该方法包括以下项的至少一次迭代:获取由被监视应用当前显示的菜单屏幕的屏幕截图;传送从屏幕截图获得的合并数据集合,数据集合包括当前显示的菜单屏幕的菜单屏幕类型和基于当前显示的菜单屏幕的菜单屏幕类型从至少一个标识的数据字段取回的数据。
本公开还涉及一种用于训练模型的方法,该训练模型能够基于至少一个其使用将被监视的应用的菜单屏幕的屏幕截图来确定该菜单屏幕的屏幕类型并且能够基于菜单屏幕的屏幕类型来标识至少的一个标识的数据字段,该训练方法包括:基于至少一个菜单屏幕的至少一个数据字段的至少一个布局来确定与菜单屏幕类型相对应的至少一个数据字段的至少一个通用布局,传送包括给定的菜单屏幕类型和标识菜单屏幕类型的数据字段列表的数据结构。
本公开中描述的另一个实体是嵌入监视应用的电子设备,该监视应用能够监视在电子设备的操作系统内执行的至少一个应用的使用,该电子设备包括至少一个处理器,在检测到输入控制接口上的输入或电子设备的输入控制接口时,该处理器被配置为:获取由被监视应用当前显示的菜单屏幕的屏幕截图;传送从屏幕截图获得的合并数据集合,该合并数据集合包括当前显示的菜单屏幕的菜单屏幕类型和基于当前显示的菜单屏幕的菜单屏幕类型从至少一个标识的数据字段取回的数据。
由本公开的元件实现的一些过程可以由计算机实现。因此,这样元件可以采取完全硬件实施例、完全软件实施例(包括固件、驻留软件、微代码等)或结合软件和硬件方面的实施例的形式,这些实施例在本文中均被总体地称为“电路”、“模块”或“系统”。此外,这样的元件可以采取被体现在任何有形的表达介质中的计算机程序产品的形式,该介质具有被体现在介质中的计算机可用程序代码。
因为本公开的元件可以被实现在软件中,所以本公开可以被体现为计算机可读代码以提供给任何合适的载体介质上的可编程装置。有形载体介质可以包括诸如软盘、CD-ROM、硬盘驱动器、磁带设备或固态存储设备等之类的存储介质。暂时性载体介质可以包括诸如电信号、电子信号、光信号、声学信号、磁信号或电磁信号等之类的信号,例如,微波或无线电频率(“RF”)信号。
附图说明
参考以下描述和附图,可以更好地理解本公开,这些描述和附图以示例的方式给出并且不限制保护范围,在附图中:
图1是根据本公开的实施例的用于监视在电子设备的操作系统内执行的至少一个应用的使用的方法的流程图。
图2表示由被监视应用显示的菜单屏幕。
图3是根据本公开的实施例的用于训练模型的方法的流程图。
图4是示出能够运行用于监视应用的方法的电子设备的示例的示意框图。
图中的组件不一定按比例绘制,而是将重点放在说明本公开的原理上。
具体实施方式
本公开涉及一种允许监视在电子设备的操作系统内执行的应用的使用的方法。该方法是由与要监视的应用不同的监视应用来实现的,并且旨在不仅提供关于应用使用时间的信息,而且还提供关于被监视应用中的一些应用被如何使用的信息。通过监视,从而可以理解的是,本文提供一种从这些应用的外部检测在操作系统内执行的应用的一些使用的方式。更特别地,所提出的技术涉及确定应用使用时间(即,检测应用何时打开和关闭),以及对于允许播放视频的应用(例如,YouTube、Netflix等)而言用于观看视频的时间与用于浏览视频目录的时间的关系。
图1是根据本公开的实施例的用于监视在电子设备的操作系统内执行的至少一个应用的使用的方法的流程图。根据特定特征,该方法由监视应用实现,该监视应用采用作为后台服务运行在操作系统顶层的系统应用的形式。电子设备可以是嵌入操作系统的任何设备,例如,智能电话、平板计算机、计算机、游戏控制台、头戴式显示器、机顶盒等。操作系统(例如,Windows、MacOS、Android、IOS等)提供了允许在电子设备上执行各种应用的环境。这些应用可以是预先安装的应用,也可以是由电子设备的用户在购买电子设备后安装的应用。
在第一步骤S1中,监视应用检测到要被监视应用(例如,称为Vueflix的应用)在电子设备上启动。
在步骤S2中,在检测到电子设备的输入控制接口上的输入时,监视应用获取由在显示设备上的被监视应用当前显示的菜单屏幕的屏幕截图。
屏幕截图是表示由被监视应用当前显示的菜单屏幕的数字图像。电子设备包括存储涉及当前被显示在显示设备上的菜单屏幕的数据的屏幕缓冲器。数据是与显示设备的每个像素相关联的值,这些值表示例如颜色以及像素的强度。获取屏幕截图包括将与当前被显示的菜单屏幕相关的这些数据复制并且存储到文件中,例如,RAW、PNG或JPEG文件。
屏幕缓冲器可以被实现为硬件缓冲器或软件缓冲器。
根据电子设备的类型,电子设备的输入控制接口可以是鼠标、键盘、远程控制单元、控制器、触摸屏等。在以下示例中,电子设备被认为是连接到显示设备并且借助于远程控制单元进行控制的机顶盒。
电子设备的输入控制接口上的输入例如是确认键或手势、输入控制接口的播放/暂停区域的动作、输入控制接口的快进/快退区域的动作、输入控制接口的停止区域的动作、输入控制接口的光标移动区域的动作等。
触发获取由被监视应用当前显示的菜单屏幕的屏幕截图的输入可以取决于当前显示的菜单屏幕的类型。
监视应用检测到在被监视应用级别的交互。这种检测例如通过获取一个或所有缓冲器存储器来执行,由用户在被监视应用的输入控制接口上执行的动作被存储在所述一个或所有缓冲存储器中。这些动作实际上可以由一个或多个操作系统驱动器临时存储,所述一个或多个操作系统驱动器例如与操作系统交互,使得操作系统可以处理或传输动作,特别是来自输入控制接口的动作。
操作系统例如通过使用该缓冲器存储器来向被监视应用通知事件和/或用户动作的发生。在其他系统中,被监视应用也可以直接访问该缓冲器存储器。无论如何,巧妙地,监视应用也监视这个缓冲器。例如,当监视应用检测到针对被监视应用的事件或用户动作时,监视应用在专用缓冲器或临时存储器中临时拷贝或复制该动作。监视应用根据过滤参数可选地执行对动作或事件的过滤(例如,如果动作是俯仰和缩放、或亮度变化动作、或其他动作,它们可以从被认为具有代表性或重要的动作中排除,并且因此为它们执行屏幕截图)。当动作或事件是应该生成屏幕截图的事件时,监视应用制作代表被监视应用显示在屏幕上的显示的缓冲器的副本。这种复制可以包括将视频存储器的内容复制到设备的存储器的另一个位置。例如,该缓冲器副本可以在监视应用控制下的单独存储器区域中制作。如果有必要,该副本可以被修改以仅保留感兴趣的区域。在这种可能的修改之后,屏幕截图被保存(可能与这个屏幕截图的来源处的事件或动作相关联并且可能带有时间戳)以进一步以电子的方式分析用户做出的动作。
由被监视应用显示的菜单屏幕的示例被示出在图2中。这样的菜单屏幕2包括多个数据字段20-28。数据字段包括文本信息或图标,借助于输入控制接口(例如,通过按下远程控制单元上的一个或多个光标移动键)对其进行的选择(其后是确认手势)触发具体动作。
在步骤S3中,对在步骤S2期间获取的屏幕截图加时间戳。这个步骤可以是可选的。
然后,在步骤S4中,通过用于监视应用的过程来分析屏幕截图,该过程例如可以使用一个或多个“经训练的模型”。作为实现方式的功能,经训练的模型本身可以直接实现用于监视应用的全部或部分过程,例如,这取决于“经训练的模型”是直接可执行的还是必须在用于监视应用的过程中用作参数或模块。若干经训练的模型根据实现方式来使用,并且可以根据数据来传送结果,该数据由用于监视应用的过程提供给经训练的模型,该数据包括一个或多个屏幕截图(可以被加时间戳以提供屏幕截图的集合)。
因此,监视应用的过程能够确定当前显示的菜单屏幕2的菜单屏幕类型,并且能够从被包括在菜单屏幕中的至少一个数据字段20-28取回数据,并且为了完成这些任务可以使用一个或多个经训练的模型。经训练的模型在学习阶段期间被建立,并且例如一旦训练完成就被嵌入或加载到电子设备中。具体的经训练的模型可以例如从网络进行动态加载,或根据分析屏幕截图的先前结果,由监视应用在电子设备的存储区域中取回。例如,可以从第一经训练的模型获得第一信息,通过监视应用的过程分析第一信息,第一信息标识对新的经训练的模型的需要,然后获得该需要以进一步分析屏幕截图。一些实现方式可以使用一个经训练的模型,该经训练的模型被划分为子模型,这些子模型是根据分析需要而获得的。
屏幕截图的分析包括标识哪个应用当前被监视应用监视及其类型,即,视频流、音频流、VoD(视频点播)等。
为了标识被监视应用,用于监视应用的过程通过使用经训练的模型,可以将菜单屏幕的布局与在学习阶段期间收集的不同类型的菜单屏幕的布局进行比较。例如,确定被监视应用的名称被嵌入在屏幕菜单2的数据字段20中。与被监视应用的名称(在示例中为“Vueflix”)对应的文本通过OCR(“光学字符识别”)算法从数据字段20中提取。基于被监视应用的名称,用于监视应用的进程通过经训练的模型能够确定被监视应用的类型。Flere,Vueflix是可以流式传输视频内容和音乐内容的多媒体流应用。
一旦被监视应用被标识,经训练的模型(和/或可以使用经训练的模型的用于监视应用的过程)标识在屏幕截图中获取的屏幕菜单的类型。可以将菜单屏幕的布局与在学习阶段期间收集的不同类型的菜单屏幕的所有布局进行比较。在被监视应用被标识的情况下,可能不需要将该布局与所有布局进行比较。在被监视应用被标识的另一种情况下,用于监视应用的过程可以将菜单屏幕与被监视应用的菜单屏幕对应的不同类型的菜单屏幕的布局的集合进行比较。
每种类型的菜单屏幕由具体的布局标识。图2表示Vueflix的内容屏幕。这样的视图屏幕由它的九个数据字段20-28和数据字段20-28在屏幕上的布局来标识,例如,数据字段20-28在屏幕上的坐标(地点、位置)、数据字段20-28的颜色背景、字符策略等。
其他类型的菜单屏幕可以包括但不限于欢迎屏幕、搜索屏幕、内容屏幕、目录屏幕、显示屏幕等。
对于每种类型的菜单屏幕,用于监视应用的过程和/或一个或若干个经训练的模型可以存储或访问被包含在这类菜单屏幕中的许多数据字段以及有关这些数据字段的信息,例如,数据字段在屏幕上的地理坐标、数据字段的颜色背景、字符策略等。
为了标识在屏幕截图中获取的屏幕菜单的类型,基于给定类型的菜单屏幕的数据字段、数据字段在屏幕上的地理坐标、数据字段的颜色背景、字符策略等,用于监视应用的过程可以使用经训练的模型将要标识的菜单屏幕的布局,即,数据字段20-28的屏幕坐标(位置、地点)、数据字段20-28的颜色背景、字符策略等与不同类型的菜单屏幕的布局进行比较。
一旦屏幕的类型被标识,用于监视应用的过程就标识出实际被包括在所分析的菜单屏幕中的数据字段。与菜单屏幕类型的通用布局相比,一些菜单屏幕可以包括更多数据字段或更少数据字段。
然后,当存储在数据字段中的数据是缩略图(例如,数据字段28)或图标(例如,数据字段26)时,用于监视应用的过程借助于OCR算法或通过图像检测算法从标识的数据屏幕提取数据。
通常,用于监视应用的过程可以通过使用经训练的模型来取回以下信息:
-屏幕菜单的类型,
-由电子设备的用户观看或访问的内容类型,例如,电影、音乐、节目、纪录片等。
-内容名称,
-其他内容信息,例如,电影种类(科幻、恐怖、戏剧等)或音乐种类(乡村、硬摇滚、流行音乐等)、演员的姓名、导演的姓名、艺术家的姓名、电影的音调,
-用户是否为内容添加了书签,
-内容是流式传输还是已被下载,
-在播放内容时,用户是否停止播放,如果停止播放,则当播放停止时,用户是否恢复播放等。
在步骤S5中,将由经训练的模型收集的所有信息或经训练的模型在用于监视应用过程中的使用情况存储在合并数据集合中。
在用于监视应用的方法的第一实施例中,为由监视应用获取的每个屏幕截图生成合并数据集合。例如,这样的合并数据集合包括被监视应用的名称和类型、由被监视应用当前显示的菜单屏幕的类型、菜单屏幕中实际包括的不同数据字段以及其相关联的数据。
在用于监视应用的方法的第二实施例中,生成全局合并数据集合。这样的全局合并数据集合包括在被监视应用运行期间从由监视应用所获取的所有的屏幕截图收集的信息。在全局合并数据集合中,信息按时间顺序存储,即,按获取屏幕截图的时间顺序。
例如,合并数据集合包括每个屏幕截图的被监视应用的名称和类型、由被监视应用当前显示的菜单屏幕的类型、菜单屏幕中实际包括的不同数据字段以及其相关联的数据。
通过按时间顺序分析在被监视应用执行期间获取的不同屏幕截图,提高收集的信息的精确性是可能的。
此外,用于监视的方法收集关于被监视应用的会话持续时间的信息,即,被监视应用已经运行了多长时间,以及用户运行诸如浏览内容等特定功能所花费的时间等。
在步骤S6中,将合并数据集合传输到远程电子设备以进行数据处理。远程电子设备例如是管理电子设备的互联网服务提供商的远程服务器。
在用于监视的方法的第一实施例中,针对每个屏幕截图传输合并数据集合。在该第一实施例中,将少量数据周期性地传输到远程电子设备。
在用于监视的方法的第二实施例中,在检测到被监视应用关闭时传输全局合并数据集合。
这种用于监视的方法使应用能够更精确地监视,并允许收集关于被监视应用的使用的有用和有价值的数据。
每当电子设备的输入控制接口上的输入被检测到时,获取由被监视应用当前显示的菜单屏幕的屏幕截图,以说明用户对被监视应用的使用。实际上,用户在电子设备的输入控制接口上的每个动作都会触发获取由被监视应用当前显示的屏幕截图,该屏幕截图包括代表用户做出的选择的数据。
因此,通过分析在被监视应用执行期间获取的不同截图,精确地判断用户如何使用应用是可能的。
图3是根据本公开的实施例的用于训练模型、传送经训练的模型的方法的流程图,这种用于训练模型的方法能够基于至少一个其使用将被监视的应用的菜单屏幕的屏幕截图来确定该菜单屏幕的屏幕类型,并且能够基于菜单屏幕的屏幕类型来标识至少一个标识的数据字段。
在步骤S10中,确定与菜单屏幕的类型相对应的至少一个通用布局。
在用于训练模型的方法的第一实施例中,执行布局分析。布局分析是能够标识和分类感兴趣的图像区域(例如,数据字段)的过程。图像(例如,菜单屏幕的屏幕截图)被分割成文本区域和非文本区域。然后,这些文本和非文本区域按照它们的阅读顺序排列。
一旦这些区域被排序,所识别的不同的感兴趣区域就被标记为文本正文、图标、缩略图等。
在步骤S10期间,将菜单屏幕的多个屏幕截图提供给学习引擎。一旦屏幕截图经过布局分析,就对屏幕截图的布局进行比较,以发现它们之间的相似性,例如,被包括在菜单屏幕中的多个数据字段以及关于这些数据字段的信息,例如,数据字段在屏幕上的坐标(地点、位置),数据字段的颜色背景、字符策略等。作为这些比较的结果,与不同类型的菜单屏幕相对应的不同的通用布局被标识。通用布局与许多数据字段、数据字段的地理坐标和数据字段的标签相关联。
在用于训练模型的方法的第二实施例中,对要被监视的每个应用执行引导性学习。
将在执行应用期间可以显示的所有菜单屏幕的屏幕截图作为输入提供给学习引擎。被提供的每个屏幕截图都被标识并且标有一种类型:欢迎屏幕、搜索屏幕等。
然后,对于每种类型的菜单屏幕,将被包括在菜单屏幕中的数据字段列表提供给学习引擎。
每个数据字段与一种类型(例如,文本、图片、图标等)、该类型在菜单屏幕中的坐标(地点、位置)以及要被提取的数据字段中包括的关于数据类别的信息(例如,内容标题、内容音调、演员表等)相关联。与数据字段相关的其他信息被提供给学习引擎,例如但不限于数据字段的颜色背景、字符策略等。
学习阶段的结果是唯一地定义每种类型的菜单屏幕的布局的关键数据字段集合。
例如,Vueflix的欢迎屏幕由位于屏幕右上角的数据字段定义,Vueflix用红色书写,而位于屏幕底部的数据字段是缩略图列表。
在步骤S20中,传送包括给定的菜单屏幕类型和标识菜单屏幕类型的数据字段列表的数据结构,并且完成模型的训练,从而根据实现方式传送一个或若干个经训练的模型和/或子模型。
图4是示出能够运行用于监视应用的方法的电子设备40的示例的示意框图。
电子设备可以包括通过总线46连接的至少一个硬件处理器41、存储单元42、输入设备43、显示设备44和接口单元45。当然,电子设备的构成元件可以通过总线连接件以外的连接件来连接。
处理器41控制电子设备的操作。存储单元42存储至少一个能够监视要由处理器41执行的应用的程序,以及各种数据,例如,由处理器41执行的计算所使用的参数、由处理器41执行的计算的中间数据等。处理器41可以由任何已知并且合适的硬件、或软件、或硬件和软件的组合形成。例如,处理器41可以由专用硬件(例如,处理电路)或由可编程处理单元(例如,执行存储在其存储器中的程序的中央处理单元(“CPU”))形成。
存储单元42可以是能够以计算机可读方式存储程序、数据等的任何合适的存储器或模块。存储单元42的示例包括非暂时性计算机可读存储介质,例如,半导体存储器设备,以及加载到读写单元中的磁、光或磁光记录介质。该程序使处理器41根据参考图1所述的本公开的实施例执行监视应用的过程。
输入设备43可以由键盘、点击设备(例如,鼠标、远程控制单元等)形成,以供用户在执行被监视应用期间用于输入命令、做出选择等。显示设备44可以由用于显示的显示设备形成,例如,图形用户接口(GUI)。例如,输入设备43和输出设备44可以被集成在触摸屏面板中。
接口单元45提供电子设备和外部装置之间的接口。接口单元45可以经由电缆或无线通信与外部装置进行通信。在实施例中,当电子设备没有嵌入显示单元44时,外部装置可以是显示设备。
重要的是要注意,本文描述的实施例不一定旨在包括本原理的相互排斥的特征或方面。除非另有说明,本文描述的或由于使用本原理而考虑到的任何实施例可以包括在任何上述实施例中描述的特征的任何组合。
虽然并入本公开的教导的实施例已经在本文中详细示出和描述,但是本领域技术人员可以容易地设计出仍然并入这些教导的许多其他不同的实施例。已经描述了用于监视在操作系统内执行的至少一个应用的使用的方法和装置的优选实施例(优选实施例旨在说明性而非限制性),应当注意,本领域技术人员可以根据上述教导进行修改和变化。因此,应当理解,可以在所附权利要求概述的本公开范围内对所公开的本公开的特定实施例进行改变。
Claims (14)
1.一种用于监视在电子设备(40)的操作系统内执行的至少一个应用的使用的方法,所述方法由与所述至少一个应用不同的监视应用实现,其中,在检测到(S2)所述电子设备的输入控制接口上的输入时,所述方法包括以下项的至少一次迭代:
获取(S2)由被监视应用当前显示的菜单屏幕(2)的屏幕截图;
在所述屏幕截图上运行(S4)经训练的模型,所述经训练的模型能够确定所述当前显示的菜单屏幕(2)的菜单屏幕类型,并且从至少一个数据字段(20-28)取回数据,所述至少一个数据字段(20-28)是从所述屏幕截图基于所述当前显示的菜单屏幕(2)的菜单屏幕类型标识的;并且
将从所述屏幕截图获得的合并数据集合传送(S5)到远程电子设备以进行数据处理,所述数据集合包括:与所述当前显示的菜单屏幕(2)相对应的菜单屏幕类型;以及从基于与所述当前显示的菜单屏幕(2)相对应的菜单屏幕类型标识的至少一个数据字段(20-28)取回的数据。
2.根据权利要求1所述的方法,还包括对所述屏幕截图加时间戳(S3)。
3.根据权利要求1所述的方法,还包括检测(S1)所述被监视应用的启动。
4.根据权利要求1所述的方法,其中,所述合并数据集合针对每次迭代进行传输。
5.根据权利要求1所述的方法,其中,所述合并数据集合在检测到所述被监视应用关闭时进行传输。
6.根据权利要求1所述的方法,其中,所述当前显示的菜单屏幕(2)的屏幕类型属于包括欢迎屏幕、目录屏幕、搜索屏幕和内容屏幕的组。
7.根据权利要求1所述的方法,其中,基于所述当前显示的菜单屏幕(2)的屏幕类型标识的数据字段(20-28)属于包括内容名称、内容类型、演员姓名和内容显示持续时间的组。
8.一种计算机程序,其特征在于,所述计算机程序包括在程序被处理器执行时用于实现根据权利要求1至9所述的方法的程序代码指令。
9.一种训练模型的方法,所述模型能够基于至少一个其使用将被监视的应用的菜单屏幕(2)的屏幕截屏来确定所述菜单屏幕(2)的屏幕类型,并且能够基于所述菜单屏幕(2)的屏幕类型来标识至少一个数据字段(20-28),该训练方法由学习引擎执行并且包括:
通过分析至少一个屏幕截图的布局,基于所述至少一个菜单屏幕(2)的至少一个布局来确定(S10)与菜单屏幕类型相对应的至少一个通用布局,将所述布局与已经分析的其他布局相比较以发现相似性,例如,被包括在菜单屏幕中的多个数据字段以及关于这些数据字段的信息;并且
向监视应用传送(S20)数据结构,该数据结构包括给定的菜单屏幕类型和标识所述菜单屏幕类型的数据字段列表。
10.根据权利要求9所述的方法,其中,所述至少一个通用布局与菜单屏幕的类型相关联。
11.根据权利要求9所述的方法,其中,所述至少一个通用布局与包括所述至少一个数据字段的列表相关联。
12.根据权利要求11所述的方法,其中,所述列表还包括所述至少一个数据字段的几何坐标。
13.一种计算机程序,其特征在于,所述计算机程序包括在程序被处理器执行时用于实现根据权利要求9至12所述的方法的程序代码指令。
14.一种电子设备(40),其中嵌入有监视应用,所述监视应用能够监视在所述电子设备的操作系统内执行的至少一个应用的使用,所述电子设备包括至少一个处理器,在检测到所述电子设备的输入控制接口上的输入时,所述处理器被配置为:
获取由被监视应用当前显示的菜单屏幕的屏幕截图;
在所述屏幕截图上运行经训练的模型,所述经训练的模型能够确定所述当前显示的菜单屏幕的菜单屏幕类型,并且从至少一个数据字段取回数据,所述至少一个数据字段是基于所述当前显示的菜单屏幕的菜单屏幕类型从所述屏幕截图标识的;并且
将从所述屏幕截图获得的合并数据集合传送到远程电子设备以进行数据处理,所述数据集合包括:所述当前显示的菜单屏幕的菜单屏幕类型;以及从基于所述当前显示的菜单屏幕的菜单屏幕类型标识的至少一个数据字段取回的数据。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP20166077.6 | 2020-03-26 | ||
EP20166077.6A EP3885917A1 (en) | 2020-03-26 | 2020-03-26 | Method and apparatus for monitoring usage of at least one application executed within an operating system |
PCT/EP2021/052996 WO2021190813A1 (en) | 2020-03-26 | 2021-02-09 | Method and apparatus for monitoring usage of at least one application executed within an operating system |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115315690A true CN115315690A (zh) | 2022-11-08 |
Family
ID=70049987
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180023439.4A Pending CN115315690A (zh) | 2020-03-26 | 2021-02-09 | 用于监视在操作系统内执行的应用的使用的方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230142311A1 (zh) |
EP (2) | EP3885917A1 (zh) |
CN (1) | CN115315690A (zh) |
WO (1) | WO2021190813A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11010679B1 (en) * | 2020-04-08 | 2021-05-18 | Curtis Ray Robinson, JR. | Systems and methods for autonomously executing computer programs |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9448908B2 (en) * | 2012-09-10 | 2016-09-20 | Applitools Ltd. | System and method for model based session management |
KR102561711B1 (ko) * | 2016-02-26 | 2023-08-01 | 삼성전자주식회사 | 컨텐트를 인식하는 방법 및 장치 |
US10038785B1 (en) * | 2017-02-02 | 2018-07-31 | Conduent Business Services, Llc | Methods and systems for automatically recognizing actions in a call center environment using video data |
US10637674B2 (en) * | 2017-06-07 | 2020-04-28 | Tg-17, Inc. | System and method for real-time decoding and monitoring for encrypted instant messaging and other information exchange applications |
US11042784B2 (en) * | 2017-09-15 | 2021-06-22 | M37 Inc. | Machine learning system and method for determining or inferring user action and intent based on screen image analysis |
-
2020
- 2020-03-26 EP EP20166077.6A patent/EP3885917A1/en active Pending
-
2021
- 2021-02-09 US US17/913,470 patent/US20230142311A1/en active Pending
- 2021-02-09 CN CN202180023439.4A patent/CN115315690A/zh active Pending
- 2021-02-09 WO PCT/EP2021/052996 patent/WO2021190813A1/en unknown
- 2021-02-09 EP EP21703041.0A patent/EP4127938A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2021190813A1 (en) | 2021-09-30 |
EP3885917A1 (en) | 2021-09-29 |
EP4127938A1 (en) | 2023-02-08 |
US20230142311A1 (en) | 2023-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6496848B2 (ja) | 動画コンテンツのハイライト映像を抽出して提供する方法およびシステム | |
KR102103312B1 (ko) | 사용자 거동 기반 콘텐츠 추천을 위한 시스템 및 방법 | |
US9538116B2 (en) | Relational display of images | |
KR101952666B1 (ko) | 비디오 스트림을 제시하기 위한 시스템 및 방법 | |
US20140052696A1 (en) | Systems and methods for visual categorization of multimedia data | |
US11755936B2 (en) | Systems and methods for determining that a media item is being presented | |
US11630862B2 (en) | Multimedia focalization | |
US20100074464A1 (en) | Object detection and user settings | |
CN107005741A (zh) | 沉浸式缩放交互式电视 | |
US20170285861A1 (en) | Systems and methods for reducing jitter using a touch screen | |
US10750239B2 (en) | Server apparatus and method for controlling same | |
US20170285860A1 (en) | Systems and methods for controlling playback of a media asset using a touch screen | |
US9544656B1 (en) | Systems and methods for recognition of sign language for improved viewing experiences | |
CN108256071B (zh) | 录屏文件的生成方法、装置、终端及存储介质 | |
US20230142311A1 (en) | Method and apparatus for monitoring usage of at least one application executed within an operating system | |
US20130254661A1 (en) | Systems and methods for providing access to media content | |
US20220317968A1 (en) | Voice command processing using user interface context | |
US20120317602A1 (en) | Channel Navigation Techniques | |
US9369354B1 (en) | Determining related content to serve based on connectivity | |
JP2014215882A (ja) | 情報処理方法、情報処理装置、及びプログラム | |
CN113490031A (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 |