CN112241302B - 基于多锚点的用户界面的提取、识别与机器学习 - Google Patents
基于多锚点的用户界面的提取、识别与机器学习 Download PDFInfo
- Publication number
- CN112241302B CN112241302B CN202010693723.XA CN202010693723A CN112241302B CN 112241302 B CN112241302 B CN 112241302B CN 202010693723 A CN202010693723 A CN 202010693723A CN 112241302 B CN112241302 B CN 112241302B
- Authority
- CN
- China
- Prior art keywords
- captured image
- computing device
- geometric
- elements
- anchor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000010801 machine learning Methods 0.000 title abstract description 19
- 238000000605 extraction Methods 0.000 title abstract description 4
- 238000000034 method Methods 0.000 claims description 19
- 230000000694 effects Effects 0.000 claims description 16
- 238000012015 optical character recognition Methods 0.000 claims description 16
- 238000012549 training Methods 0.000 abstract description 11
- 238000004801 process automation Methods 0.000 abstract description 6
- 238000011161 development Methods 0.000 description 18
- 230000018109 developmental process Effects 0.000 description 18
- 238000012545 processing Methods 0.000 description 9
- 238000013461 design Methods 0.000 description 8
- 238000004458 analytical method Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 7
- 238000004873 anchoring Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 239000003795 chemical substances by application Substances 0.000 description 4
- 239000012636 effector Substances 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000013136 deep learning model Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- 238000010897 surface acoustic wave method Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 238000012634 optical imaging Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000007790 scraping Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000012800 visualization Methods 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
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- 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
- 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
- G06F9/452—Remote windowing, e.g. X-Window System, desktop virtualisation
-
- 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/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
- G06F9/45508—Runtime interpretation or emulation, e g. emulator loops, bytecode interpretation
- G06F9/45512—Command shells
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
- G06N5/048—Fuzzy inferencing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
-
- 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/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/148—Segmentation of character regions
- G06V30/153—Segmentation of character regions using recognition of characters or words
-
- 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/10—Character recognition
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Multimedia (AREA)
- Life Sciences & Earth Sciences (AREA)
- Medical Informatics (AREA)
- General Health & Medical Sciences (AREA)
- Fuzzy Systems (AREA)
- Automation & Control Theory (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Geometry (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- User Interface Of Digital Computer (AREA)
- Image Analysis (AREA)
- Character Discrimination (AREA)
- Debugging And Monitoring (AREA)
Abstract
公开了基于多锚点的用户界面的提取、识别与机器学习。多个锚点可用于用户界面(UI)的机器人过程自动化(RPA)。多个锚点可用于确定用于RPA的UI的捕获图像中的元素之间的关系。锚定的结果可用于机器学习(ML)组件的训练或重新训练。
Description
技术领域
本公开的实施例总体涉及机器人过程自动化。
背景技术
机器人过程自动化(RPA)可以自动化企业平台、虚拟机(VM)配置、远程桌面、云计算、桌面应用等中的重复操作、功能或工作流。对于用于自动化的用户界面(UI)捕获、提取、刮取或执行,锚点或参考点可以与计算机视觉(CV)或机器视觉(MV)一起使用以识别UI的图像的目标区域中的一个或多个元素。然而,利用单个锚点或参考点的配置可能易受不期望的复制、错误、假阳性、缺失元素等的影响。
在工作流的RPA设计或执行中,也可能遇到基于每英寸点数(DPI)、大小调整、缩放、视频帧速率、阴影等的错误。这些错误在虚拟或远程计算机配置中可能更为明显。此外,UI中的按钮形状或复选框可能会导致使用CV的RPA的错误。希望使用改进的锚定来减少针对RPA的工作流生成或运行中的错误。
发明内容
公开了用于将多锚定用于一个或多个工作流的机器人过程自动化(RPA)的用户界面(UI)的方法和装置。在机器人的开发或运行时期间,对于用于自动化的一个或多个工作流,UI上的多锚点分析可用于在提取或刮取的图像上进行元素检测或训练。还可以在UI上为桌面应用、web应用以及虚拟或远程计算机配置来配置多锚点分析,以减少错误并提高性能。
附图说明
通过结合附图以示例的方式给出的以下描述可以获得更详细的理解,其中,图中相同的参考数字表示相同的元素,并且其中:
图1A是机器人过程自动化(RPA)开发、设计、操作或执行的图示;
图1B是RPA开发、设计、操作或执行的另一图示;
图1C是计算系统或环境的图示;
图2是使用RPA的反馈回路进行重新训练的图示;
图3是用于RPA的用户界面(UI)的多锚定的图示;
图4是用于RPA的UI的多锚定的另一图示;
图4A是用于RPA的UI的多锚定的另一图示;和
图5是使用用于RPA的UI的多锚定的过程的图示。
具体实施方式
对于下面描述的方法和过程,所述步骤可以不按序列以任何顺序执行,并且可以执行未明确描述或示出的子步骤。此外,“耦接”或“可操作地耦接”可以意味着对象被链接,但是在链接的对象之间可以具有零个或多个中间对象。而且,在一个或多个实施例中可以使用所公开的特征/元素的任何组合。当使用提及“A或B”时,可包括A、B或A和B,其可类似地扩展到较长的列表。当使用记号X/Y时,它可以包括X或Y。可选地,当使用记号X/Y时,它可以包括X和Y。X/Y记号可以类似地扩展到具有相同解释逻辑的较长列表。
图1A是机器人过程自动化(RPA)开发、设计、操作或执行100的图示。有时被称为工作室、开发平台、开发环境等的设计器102可以被配置为生成用于机器人执行或自动化一个或多个工作流的代码、指令、命令等。从计算系统可以提供给机器人的选择中,机器人可以确定由用户或操作者选择的视觉显示的区域的代表性数据。作为RPA的一部分,多个维度中的诸如正方形、矩形、圆形、多边形、自由形式等的形状可用于与计算机视觉(CV)操作或机器学习(ML)模型相关的UI机器人开发和运行时。
可由工作流完成的操作的非限制性示例可以是执行登录、填充表单、信息技术(IT)管理等中的一个或多个。为运行用于UI自动化的工作流,机器人可能需要唯一地标识特定的屏幕元素,例如按钮、复选框、文本域(text field,文本字段)、标签等,而不考虑应用程序访问或应用程序开发。应用程序访问的示例可以是本地、虚拟、远程、云、 远程桌面、虚拟桌面基础设施(VDI)等。应用程序开发的示例可以是win32、Java、Flash、超文本标记语言(HTML)、HTML5、可扩展标记语言(XML)、Javascript、C#、C++、Silverlight等。
工作流可以包括但不限于任务序列、流程图、有限状态机(FSM)、全局异常处理器等。任务序列可以是用于处理一个或多个应用程序或窗口之间的线性任务的线性进程。流程图可以被配置为处理复杂的业务逻辑,从而通过多个分支逻辑操作符以更多样的方式实现决策的集成和活动的连接。可以为大型工作流配置FSM。FSM可在其执行中使用有限数量的状态,这可由条件、转换、活动等触发。全局异常处理器可以被配置为在遇到执行错误时确定工作流行为,用于调试进程等。
机器人可以是应用程序、小程序、脚本等,其可以自动化对底层操作系统(OS)或硬件透明的UI。在部署时,一个或多个机器人可由指挥器104(有时称为协调器)管理、控制等。指挥器104可以指示或命令机器人或自动化执行器106执行或监视大型机、web、虚拟机、远程机、虚拟桌面、企业平台、桌面应用程序、浏览器或类似客户端、应用程序或程序中的工作流。指挥器104可以充当中心或半中心点,以指示或命令多个机器人使计算平台自动化。
在某些配置中,指挥器104可被配置用于供应、部署、配置、排队、监视、记录和/或提供互连性。供应可包括创建和维护机器人或自动化执行器106与指挥器104之间的连接或通信。部署可包括确保将数据包版本交付给指定的机器人来执行。配置可包括机器人环境和过程配置的维护和交付。排队可包括提供对队列和队列项的管理。监视可包括对机器人识别数据和维护用户权限保持跟踪。记录可包括将日志存储和索引到数据库(例如SQL数据库)和/或另一存储机制(例如它提供存储和快速查询大型数据集的能力)。指挥器104可以通过充当第三方解决方案和/或应用的集中通信点来提供互连性。
机器人或自动化执行器106可以被配置为无人值守108或有人值守110。对于无人值守108操作,可以在没有第三方输入或控制的情况下执行自动化。对于有人值守110操作,可以通过从第三方组件接收输入、命令、指令、指导等来执行自动化。
机器人或自动化执行器106可以是运行内置在设计器102中的工作流的执行代理。用于UI或软件自动化的机器人的商业示例是UiPath RobotsTM。在一些实施例中,机器人或自动化执行器106可以默认地安装Microsoft服务控制管理器(SCM)管理的服务。因此,这样的机器人可以在本地系统帐户下打开交互式会话,并具有服务的权限。
在一些实施例中,机器人或自动化执行器106可以被以用户模式安装。这些机器人可拥有与被安装了给定机器人的用户相同的权限。这一特性也适用于高密度(HD)机器人,它确保在诸如HD环境中以最大性能充分利用每台机器。
在某些配置中,机器人或自动化执行器106可以被分割、分布(等等)成若干组件,每个组件专用于特定的自动化任务或活动。机器人组件可以包括SCM管理的机器人服务、用户模式机器人服务、执行器、代理、命令行等。SCM管理的机器人服务可以管理或监视会话,并且充当指挥器104和执行主机(即,在其上执行机器人或自动化执行器106的计算系统)之间的代理。这些服务可以被信任并管理机器人或自动化执行器106的凭证。
执行器可以在会话下运行给定的作业(即,它们可以执行工作流)。执行器可以知道每监示器每英寸点数(DPI)设置。代理可以是在系统任务栏窗口中显示可用作业的展示架构(WPF)应用程序。代理可以是服务的客户端。代理可以请求启动或停止作业以及更改设置。命令行可以是服务的客户端。命令行是一个控制台应用程序,它可以请求启动作业并等待作业的输出。
在机器人或自动化执行器106的组件如上所述被拆分的配置中,帮助开发人员、支持用户和计算系统更容易地运行、识别和跟踪每个组件的执行。可以通过这种方式为每个组件配置特定行为,例如为执行器和服务设置不同的防火墙规则。在一些实施例中,执行器可以知道每个监视器的DPI设置。因此,工作流可以在任何DPI处执行,而不管创建工作流的计算系统的配置如何。来自设计器102的项目也可以独立于浏览器缩放级别。对于不知道DPI或有意标记为不知道的应用,在一些实施例中可以禁用DPI。
图1B是RPA开发、设计、操作或执行120的另一图示。工作室组件或模块122可被配置为生成用于机器人执行一个或多个活动124的代码、指令、命令等。用户界面(UI)自动化126可以由客户端上的机器人使用一个或多个驱动器组件128来执行。机器人可以使用计算机视觉(CV)活动模块或引擎130执行活动。其它驱动器132可以被机器人用于UI自动化以获得UI的元素。它们可以包括OS驱动器、浏览器驱动器、虚拟机驱动器、企业驱动器等。在某些配置中,CV活动模块或引擎130可以是用于UI自动化的驱动程序。
图1C是计算系统或环境140的图示,计算系统或环境140可以包括总线142或用于传送信息或数据的其它通信机制,以及耦接到总线142以进行处理的一个或多个处理器144。一个或多个处理器144可以是任何类型的通用或特定用途处理器,包括中央处理单元(CPU)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、图形处理单元(GPU)、控制器、多核处理单元、三维处理器、量子计算设备或其任何组合。一个或多个处理器144还可以具有多个处理核心,并且核心中的至少一些核心可以被配置为执行特定功能。还可以配置多并行处理。此外,至少一个或多个处理器144可以是包括模拟生物神经元的处理元件的神经形态电路。
存储器146可以被配置为存储要由处理器144执行或处理的信息、指令、命令或数据。存储器146可以包括随机存取存储器(RAM)、只读存储器(ROM)、闪存、固态存储器、高速缓存、诸如磁或光盘的静态存储器、或任何其它类型的非瞬态计算机可读介质或其组合的任何组合。非瞬态计算机可读介质可以是可由处理器144访问的任何介质,并且可以包括易失性介质、非易失性介质等。介质也可以是可移除的、不可移除的等。
通信设备148可以被配置为频分多址(FDMA)、单载波FDMA(SC-FDMA)、时分多址(TDMA)、码分多址(CDMA)、正交频分复用(OFDM)、正交频分多址(OFDMA),全球移动通信系统,通用分组无线业务(GPRS)、通用移动电信系统(UMTS),cdma2000、宽带CDMA(W-CDMA)、高速下行链路分组接入(HSDPA)、高速上行链路分组接入(HSUPA)、高速分组接入(HSPA)、长期演进(LTE)、高级LTE(LTE-A)、802.11x、Wi-Fi、Zigbee、超宽带(UWB)、802.16x、802.15、家庭节点B(HnB)、蓝牙、射频识别(RFID)、红外数据协会(IrDA)、近场通信(NFC)、第五代(5G)、新无线电(NR)或用于经由一个或多个天线进行通信的任何其它无线或有线设备/收发器。天线可以是单数的、阵列的、相控的、开关的、波束成形的、波束转向的等等。
一个或多个处理器144可进一步经由总线142耦接到显示设备150,例如等离子体、液晶显示器(LCD)、发光二极管(LED)、场发射显示器(FED)、有机发光二极管(OLED)、柔性OLED、柔性衬底显示器、投影显示器、4K显示器、高清晰度(HD)显示器、显示器、基于平面内切换(IPS)等的显示器。显示设备150可以被配置为触摸、三维(3D)触摸、多输入触摸或使用电阻式、电容式、表面声波(SAW)电容式、红外、光学成像、色散信号技术、声脉冲识别、受阻全内反射等如本领域普通技术人员所理解的用于输入/输出(I/O)的多点触摸显示器。
键盘152和诸如计算机鼠标、触摸板等的控制设备154可以进一步耦接到总线142,用于输入到计算系统或环境140。此外,可以经由与其通信的另一计算系统将输入远程地提供给计算系统或环境140,或者计算系统或环境140可以自主地操作。
存储器146可存储当由一个或多个处理器144执行或处理时提供功能的软件组件、模块、引擎等。这可以包括用于计算系统或环境140的OS 156。模块可进一步包括定制模块158以执行特定应用的处理或其衍生物。计算系统或环境140可以包括含一个或多个附加功能的附加功能模块160。
计算系统或环境140可被适配或配置为执行为服务器、嵌入式计算系统、个人计算机、控制台、个人数字助理(PDA)、蜂窝电话、平板计算设备、量子计算设备、云计算设备、移动设备、固定移动设备、智能显示器、可穿戴计算机等。
在本文给出的示例中,模块可以被实现为硬件电路,该硬件电路包括定制的超大规模集成(VLSI)电路或门阵列、现成的半导体,例如逻辑芯片、晶体管或其它分立组件。模块还可以在诸如现场可编程门阵列、可编程阵列逻辑、可编程逻辑器件、图形处理单元等的可编程硬件设备中实现。
模块可以至少部分地在软件中实现,以供各种类型的处理器执行。所识别的可执行代码单元可以包括计算机指令的一个或多个物理或逻辑块,计算机指令可以例如被组织为对象、过程、例程、子例程或函数。所识别的模块的可执行文件位于或存储在不同的位置,使得当逻辑地连接在一起时,可执行文件包括模块。
可执行代码的模块可以是单个指令、一个或多个数据结构、一个或多个数据集、多个指令等,分布在几个不同代码段上、不同程序之间、跨几个存储器设备等。本文中,操作或功能数据可以在模块内被识别和示出,并且可以以合适的形式体现并在任何合适类型的数据结构内组织。
在本文给出的示例中,计算机程序可以以硬件、软件或混合实现方式配置。计算机程序可以由彼此进行操作通信并传递信息或指令的模块组成。
图2是使用RPA的反馈环路进行重新训练的图示。CV模块、引擎或组件202和光学字符识别(OCR)模块或引擎204可以从机器人206接收在捕获图像中找到的元素、按钮、复选框以及相应的坐标和类型信息。捕获图像可以是在开发、运行等过程中为自动化而制作的客户端上的UI的目标视觉和文本部分的屏幕截图。图像可以是窗口、文档、报告、收据、发票、应用程序等的部分(part)或一部分(portion)。图像可以包括结构化或非结构化数据。UI的图像可以包括要自动化的应用程序的图形用户界面(GUI)。
机器人206可以识别UI的图像中的目标或元素的两个或更多个锚点、参考点等,给CV模块、引擎或组件202。在某些配置中,可以自动选择第一锚点,并且如果目标区域中的元素不是唯一的,则可以为一个或多个附加鉴别器锚点请求用户输入。作为示例,两个或更多个锚点可以帮助确定编辑框和复选框之间的关系。在某些配置中,该关系可以防止CV模块、引擎或组件202将复选框错误地识别为编辑框或单选按钮并错误地丢弃它,例如由于ML模型中的元素大小或格式。
机器人206还可以向OCR模块或引擎204发送目标区域的捕获图像或屏幕截图,以检测文本或文本域,如本领域普通技术人员所理解的,以帮助确定捕获UI图像或屏幕的关系。文本域可以包括一个或多个文本令牌。文本令牌可以包括在诸如空白、标点符号、特殊字符等的一组预定分隔符之间找到的一个或多个字符。文本令牌还可以包括数字、日期、电子邮件地址、统一资源标识符(URI)、邮政编码等。
在用于RPA 200的UI的多锚定中,UI图像中的一个或多个锚点或参考点可用于配对或创建用于元素识别、可视化、开发、生成、生产、再生、训练、重新训练等的几何、位置、定位、基于坐标等关联或关系。在某些配置中,多锚定可由RPA系统用作对UI的主捕获的额外或第二层错误检查。
在用于自动化的UI中定义为锚点的标签和文本域可以通过关系连接或形成关系。在一个示例中,文本域可以是目标,且标签可以是锚点。例如,关系可以在UI中元素的左侧,其中锚定了第一名称字段和标签,而锚定在第一名称字段之上的是第二名称字段。在RPA开发期间,可以为活动或工作流所需的一个或多个元素定义一组锚点。在某些配置中,与目标元素一起,元素和锚点可作为逻辑指纹操作,该逻辑指纹可用于在随后的执行(例如在运行时期间)中识别相同元素以用于自动化。
图3是用于RPA 300的UI的多锚定的另一图示。作为示例,UI中的窗口或应用302可以包括用于字段3041-4的标签1-4、按钮1(306)、按钮2(308)以及最小化/最大化/关闭控件310。窗口或应用302可以基本上定向或定位在窗口或应用320的前面。在某些配置中,用于RPA300的UI的多锚定可以表示虚拟机环境、远程桌面等。然而,如本领域普通技术人员所理解的,用于RPA 300的UI的多锚定可以表示其它计算环境或应用。例如,多锚点配置可应用于涉及可移植文档格式、Silverlight、Flash等的活动。
锚点X(312)可以包括与按钮2(308)的尺寸相关的坐标(x,y,宽度和高度)。在某些配置中,坐标可以是在UI的区域中保存的元素的屏幕坐标,并且在运行时期间,可以由机器人206自动推断所有元素之间的相对关系。此外,在运行时期间相对关系的使用可以在有或没有CV模块、引擎或组件202的情况下执行。
在某些配置中,坐标(x,y,宽度和高度)可以定义包围盒。参数x和y可以是顶点的坐标,而w和h可以是宽度和高度。目标和锚点之间的关系可以在UI或应用区域中的比例、DPI等的改变或变化的容差或阈值内是弹性的。改变或变化可能是不希望的或有问题的,因为对于图像匹配或基于选择器的配置,使用CV的机器人可能需要相同的结构来定位在开发期间识别的元素以自动化工作流或活动。如果应用程序不同于自动化开发期间的应用程序,那么机器人或工作流可能会在运行时崩溃。
对于具有动态或“流动”布局的应用程序,例如基于窗口大小的回流内容的web页面,弹性可能是特别需要的。弹性对于虚拟机、远程机或虚拟桌面环境的视频流或输出也可以是有益的。在某些配置中,可能希望几何锚点或参考坐标或角度是非弹性的。
通过测量按钮1(306)和字段3044之间的几何角度(θ)关系1,锚点Y(314)可以用于窗口或应用302中的元素检测。如果窗口或应用302中的元素与自动化开发期间的元素实质上不同或变化,则通过锚点X(312)和锚点Y(314)的多锚定可防止在运行时期间机器人或工作流崩溃。这可以通过机器人206和/或CV模块、引擎或组件202使用多锚点来实现,以基于屏幕元素与其它屏幕元素的关系、屏幕元素在界面中的位置、相关文本标签等唯一地识别屏幕元素。
锚点X(312)可用于确定按钮2(308)与字段3044之间的距离316关系2。按钮2(308)和字段3044之间的距离316可以是相对的或绝对的。关系1和2可由CV模块、引擎或组件202利用OCR结果用于在工作流、活动等的运行时执行期间的机器人生成或再生。如本文所解释的,对于检测到的元素的基本上全部或子集的结果也可以向机器人206提供每个元素的置信度,以减少误差并提高自动化的性能。
关系1或2还可用于更新图像数据库208,以通过ML训练模块、引擎或组件210更新模型,用于训练或重新训练。除了关系1和关系2之外,文本域可以是框的锚点或引用,以与编辑框形成关系,供机器人唯一识别。在具有两个名称标签字段的配置中,可以对一个文本框使用两个锚点。
图4是用于RPA 400的UI的多锚定的另一图示。作为示例,UI中的窗口或应用402可以包括用于字段4041-4、按钮1(406)和按钮2(408)的标签1-4。锚点X(410)可以包括关于按钮2(408)的尺寸的坐标(x,y,宽度和高度),并且对于UI中的比例、DPI等的变化是弹性的。参数x和y可以是顶点的坐标,而w和h可以是例如按钮1(406)或按钮2(408)的宽度和高度。在某些配置中,可能期望几何锚点或参考坐标或角度是弹性的或非弹性的,如本文所解释的。
锚点Y(412)和锚点X(410)可以通过在按钮1(406)、字段4043和字段4044之间形成三角形关系来用于UI中的窗口或应用402中的元素检测。可以通过确定按钮1(406)、字段4043和字段4044的角度、位置或基于距离的几何形状来实现或执行三角形关系。该三角关系可由CV模块、引擎或组件202确定或利用,以在工作流、活动等的运行时或执行期间与用于机器人生成或再生的OCR结果一起使用。
图4A是用于RPA 420的UI的多锚定的另一图示。在具有捕获的UI的存款交易422的应用中,多个锚点4261-4264可以被配置为创建用于标识元素4242的关系428。关系428可以基于形成的几何形状或基于多个锚点4261-4264计算的到元素4242的距离来确定。在某些配置中,关系428可用于在自动化生产、运行时、执行等期间将元素4242与元素4241和4243区分开。在某些配置中,当CV模块、引擎或组件202确定关系428时,锚点可被设置在客户机处或在客户机处使用。
在多锚定的其它配置中,可以使用诸如正方形、矩形、任何N边多边形的其它形状或使用本文中解释的用于三角形关系的分析的任何其它期望形状来形成关系。可以形成N边多边形,使得每个元素之间的角度是弹性的,并且可以缩放由连接所有锚点的边缘形成的N边多边形。在某些配置中,文本域可以是框的锚点或引用,以与编辑框形成关系,供机器人识别。此外,任何关系可以充当指纹、印象、模板等,以在运行时或执行期间查找或标识元素。
再次参考图2,CV模块、引擎或组件202可处理返回的结果,包括锚点或参考点信息、几何形状等,并向图像数据库208提供所检测元素的基本上全部或子集的数据或信息。图像数据库208可由服务器、工作室组件、设计组件等用来对捕获图像或图像中的元素子集进行标记或分类,并将其提供给ML训练模块、引擎或组件210,用于唯一识别和建模、训练、重新训练、深度学习、神经网络操作等。模型更新212可被提供给CV模块、引擎或组件202,以用于设计或运行时操作的分析,以减少重复、错误、减少假阳性或增加RPA自动化性能。
模糊匹配或逻辑可用于RPA 200的多锚定以补偿诸如GoogleTM cloud OCR、MicrosoftTM OCR、Tessoract OCRTM等的文本域、文本等的OCR引擎的错误。可以将图像或图像的一部分发送到OCR模块或引擎204和CV模块、引擎或组件202,并且将具有检测到的类型或元素的反馈发送到机器人206以用于UI视图的再生。作为一个示例,利用模糊匹配,标签1-4中的每一个可以被分配给名称列表。通过模糊匹配,检测“NAM”或“NME”可以逻辑上与“NAME”相关联或匹配。类似地,在图3中,字段3041-4可以均被分配给编辑框的列表。可能元素的列表可以由CV模块、引擎或组件202提供给机器人206以建立关系。
在本文给出的示例中,具有阈值化的几何匹配(例如对于与锚点相关联的相对距离)可用于UI的RPA。作为示例,UI的图像中的每个元素可以与置信度、阈值、匹配阈值、容差等相关联。可以丢弃低于阈值的元素的可能匹配以进行匹配等。利用多个锚点,适合于元素的可能关系可以利用置信区间(CI),使得减少一个或多个元素的假阳性。
作为示例,可以丢弃低于50%、60%、98%或任何参数的CI的检测到的元素。CI、置信度阈值、容忍度阈值等可基于可被训练或重新训练的ML或深度学习模型。不同的CI、置信度阈值、容差阈值或类似级别或范围可用于在由协调器开发或运行机器人或多个机器人期间匹配UI中的元素。
对于可能需要在都满足匹配阈值的两个元素之间进行选择的机器人,可以利用具有多锚点的元素、类型或信任的列表。在具有多个匹配的某些配置中,UI中的多个锚点可以充当模板或形状,以便在分析期间唯一地标识元素。在具有多锚点的某些配置中,在工作流的设计或开发期间,具有最高置信度的所选UI元素可在CV结果中示出,而在运行时期间,可由CV检查UI中元素的所有可能性以用于由机器人执行工作流。
在本文给出的示例中,多个锚点的几何形状可以水平地或垂直地以较小的几何阈值公差对齐。与另一元素水平或垂直咬合的锚点可被不同地处理。例如,对于方向可以垂直于咬合轴移动多远,可以允许较小的公差。如果按钮被用作文本域、文本、标签或类似元素的锚点,则运行时可以分层,使得当对元素进行连接时,可以在相应位置或坐标处连接其他较低概率元素。
图5是使用用于RPA 500的UI的多锚定的过程的图示。在图5中,操作可以无序执行,也可以执行未示出的子步骤。UI的区域的图像可以由用于RPA的机器人捕获(502)。在图像的分析和显示之后,CV组件和OCR引擎可以使用捕获图像和锚点(504)。在某些配置中,系统可以接收存储在工作流中的选定元素和一个或多个锚点的输入。可以计算捕获图像中的UI的元素(包括锚点)之间的几何关系(506)。如果未识别所选择的元素,则如本文所解释的,使用包围盒的选择可用于元素检测,并且可使用用于ML的几何关系来重新训练模型(508)。可以使用OCR结果和用于工作流或活动执行的几何关系来重新生成RPA机器人的UI(510)。
再次参考ML,对于捕获、分析、刮取或存储的每个图像,CV模型的结果可以包括图像中的一个或多个元素的可能性列表以及相关联的ML确定的概率,以提高精确度、防止假阳性、提高自动化性能等。这可以通过CV模块、引擎或组件202发送图像数据库208来执行,以便由ML训练模块、引擎或组件210进行机器训练或重新训练。
当UI中的元素被不恰当地标识时,用户可以通过在目标区域周围绘制边界框来进行干预。捕获图像可以存储在自动化文件中,用于在运行时期间进行搜索。另外,在某些配置中,捕获图像可用于重新训练CV模型,因为用户干预可指示或发出模型缺失元素的信号。
此外,如果CV模块、引擎或组件202检测到缺失按钮或元素的子集,则缺失元素报告可被自动发送到图像数据库208,用于由ML训练模块、引擎或组件210进行机器训练或重新训练。元素可能丢失,因为ML模型无法识别该元素。该操作可对机器人206透明。
对于元素识别,可能元素的列表可以包括类似的和替代的元素。每个可能的结果还可以与统计CI相关联,该统计CI可以与ML或深度学习模型相关联。这可以在UI中的对象选择期间或在没有任何选择的情况下执行。如果元素被错误识别,例如由于点击、用户输入、图像失真等,则多锚点算法可利用一个或多个锚点来对预期目标元素做出正确确定。例如,锚点X和锚点Y可用于搜索所有复选框的元素,即使ML引擎相信至少一个元素是单选按钮。
当一个元素被错误识别时,其他元素可能被用作分析的锚点。例如,单选按钮可能被错误地识别为最可能匹配的复选框。在具有概率的排序列表中,第二个或第三个最有可能的匹配可能是实际的或正确的匹配。添加另一锚点,例如另一附近的单选按钮,可能有助于从概率列表中识别给定组件是哪个元素。
作为本文针对自主车辆计算上下文给出的操作的另一示例,当使用CV检测道路上的物体时,可以建立准则或规则,使得“如果自行车上没有人,则它不是自行车”,以防止将物体错误地识别为自行车。目标对象可以是自行车,人和道路可以是锚点或参考点。在类似的UI上下文中,字段可以是目标、按钮和字段标签锚点。
尽管以上以特定组合描述了特征和元件,但本领域普通技术人员将理解,每个特征或元件可以单独使用或与其它特征和元件的任何组合使用。此外,本文描述的方法可以在合并在计算机可读介质中的计算机程序、软件或固件中实现,以由计算机或处理器执行。计算机可读介质的示例包括电子信号(通过有线或无线连接传输)和计算机可读存储介质。计算机可读存储介质的示例包括但不限于只读存储器(ROM)、随机存取存储器(RAM)、寄存器、高速缓冲存储器、半导体存储器装置、诸如内部硬盘和可移动盘的磁介质、磁光介质和诸如CD-ROM盘和数字多功能盘的光介质。
Claims (20)
1.一种计算设备,包括:
显示设备,被配置为显示用户界面UI;
处理器,被配置为操作机器人以使虚拟或远程机器环境中的活动自动化,其中所述机器人利用所述UI的捕获图像中的两个或更多个锚点;
收发器,被配置为将具有所述两个或更多个锚点的所述捕获图像发送到计算机视觉CV引擎,并将所述捕获图像发送到光学字符识别OCR引擎;
所述收发器被配置为接收来自所述OCR引擎的结果以及由所述CV引擎基于标签和文本域元素相对于所述捕获图像的区域中的所述两个或更多个锚点和目标元素的几何匹配而确定的关系,其中所述几何匹配与置信区间(CI)相关联;并且
其中所述机器人基于所述关系在所述UI中的所述目标元素上执行所述活动。
2.根据权利要求1所述的计算设备,其中所述关系定义锚定按钮与所述标签或所述文本域之间的几何位置。
3.根据权利要求1所述的计算设备,其中所述捕获图像来自所述虚拟或远程机器环境的视频流。
4.根据权利要求1所述的计算设备,其中所述几何匹配包括所述UI的所述捕获图像中的一个或多个元素之间的角度或三角形布置。
5.根据权利要求1所述的计算设备,其中所述几何匹配基于ML模型。
6.根据权利要求1所述的计算设备,其中重新训练基于在所述UI的所述捕获图像中检测到的缺失元素而被执行。
7.根据权利要求1所述的计算设备,其中所述几何匹配基于所述UI的所述捕获图像中的元素的弹性或非弹性几何关系。
8.根据权利要求1所述的计算设备,其中所述两个或更多个锚点中的第一锚点被定位在第一按钮上,并且所述两个或更多个锚点中的第二锚点被定位在第二按钮上。
9.一种由计算设备执行的方法,所述方法包括:
通过所述计算设备显示用户界面UI;
通过所述计算设备操作机器人以使虚拟或远程机器环境中的活动自动化,其中所述机器人利用所述UI的捕获图像中的两个或更多个锚点;
通过所述计算设备将具有所述两个或更多个锚点的所述捕获图像发送到计算机视觉CV引擎,并且通过所述计算设备将所述捕获图像发送到光学字符识别OCR引擎;
通过所述计算设备接收来自所述OCR引擎的结果和由所述CV引擎基于标签和文本域元素相对于所述捕获图像的区域中的所述两个或更多个锚点和目标元素的几何匹配而确定的关系,其中所述几何匹配与置信区间(CI)相关联;并且
其中所述机器人基于所述关系在所述UI中的所述目标元素上执行所述活动。
10.根据权利要求9所述的方法,其中所述关系定义锚定按钮与所述标签或所述文本域之间的几何位置。
11.根据权利要求9所述的方法,其中所述捕获图像来自所述虚拟或远程机器环境的视频流。
12.根据权利要求9所述的方法,其中所述几何匹配包括所述UI的所述捕获图像中的一个或多个元素之间的角度或三角形布置。
13.根据权利要求9所述的方法,其中所述几何匹配基于ML模型。
14.根据权利要求9所述的方法,其中重新训练基于在所述UI的所述捕获图像中检测到的缺失元素而被执行。
15.根据权利要求9所述的方法,其中所述几何匹配基于所述UI的所述捕获图像中的元素的弹性或非弹性几何关系。
16.根据权利要求9所述的方法,其中所述两个或更多个锚点中的第一锚点被定位在第一按钮上,并且所述两个或更多个锚点中的第二锚点被定位在第二按钮上。
17.一种计算设备,包括:
处理器,被配置为操作机器人以使虚拟或远程机器环境中的活动自动化,其中所述机器人利用用户界面UI的捕获图像中的两个或更多个锚点;
收发器,被配置为将具有所述两个或更多个锚点的所述捕获图像发送到计算机视觉CV引擎;
所述收发器被配置为接收由所述CV引擎基于标签和文本域元素相对于所述捕获图像的区域中的所述两个或更多个锚点和目标元素的几何匹配而确定的关系,其中所述几何匹配与置信区间(CI)相关联;并且
其中所述机器人基于所述关系在所述UI中的所述目标元素上执行所述活动。
18.根据权利要求17所述的计算设备,其中所述关系定义锚定按钮与所述标签或所述文本域之间的几何位置。
19.根据权利要求17所述的计算设备,其中所述几何匹配包括所述UI的所述捕获图像中的一个或多个元素之间的角度或三角形布置。
20.根据权利要求17所述的计算设备,其中所述几何匹配基于所述UI的所述捕获图像中的元素的弹性或非弹性几何关系。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210305333.XA CN114661400B (zh) | 2019-07-19 | 2020-07-17 | 基于多锚点的用户界面的提取、识别与机器学习 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/516,998 US10936351B2 (en) | 2019-07-19 | 2019-07-19 | Multi-anchor based extraction, recognition, and machine learning of user interface (UI) |
US16/516,998 | 2019-07-19 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210305333.XA Division CN114661400B (zh) | 2019-07-19 | 2020-07-17 | 基于多锚点的用户界面的提取、识别与机器学习 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112241302A CN112241302A (zh) | 2021-01-19 |
CN112241302B true CN112241302B (zh) | 2022-04-12 |
Family
ID=71670169
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210305333.XA Active CN114661400B (zh) | 2019-07-19 | 2020-07-17 | 基于多锚点的用户界面的提取、识别与机器学习 |
CN202010693723.XA Active CN112241302B (zh) | 2019-07-19 | 2020-07-17 | 基于多锚点的用户界面的提取、识别与机器学习 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210305333.XA Active CN114661400B (zh) | 2019-07-19 | 2020-07-17 | 基于多锚点的用户界面的提取、识别与机器学习 |
Country Status (5)
Country | Link |
---|---|
US (3) | US10936351B2 (zh) |
EP (1) | EP3767449B1 (zh) |
JP (2) | JP7104107B2 (zh) |
KR (2) | KR102356950B1 (zh) |
CN (2) | CN114661400B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11830605B2 (en) * | 2013-04-24 | 2023-11-28 | Koninklijke Philips N.V. | Image visualization of medical imaging studies between separate and distinct computing system using a template |
US10936351B2 (en) * | 2019-07-19 | 2021-03-02 | UiPath, Inc. | Multi-anchor based extraction, recognition, and machine learning of user interface (UI) |
US11074063B2 (en) * | 2019-09-10 | 2021-07-27 | International Business Machines Corporation | Automatic upgrade of robotic process automation using a computer |
US11054960B1 (en) * | 2019-12-30 | 2021-07-06 | UiPath Inc. | Fuzzy target selection for robotic process automation |
US11232170B1 (en) * | 2020-09-08 | 2022-01-25 | UiPath, Inc. | Application-specific graphical element detection |
US11507259B2 (en) | 2020-09-08 | 2022-11-22 | UiPath, Inc. | Graphical element detection using a combined series and delayed parallel execution unified target technique, a default graphical element detection technique, or both |
US11543930B2 (en) * | 2020-11-10 | 2023-01-03 | RealFar Ltd | Augmenting web applications with optimized workflows supporting user interaction |
US20220237404A1 (en) * | 2021-01-25 | 2022-07-28 | Sap Se | Surface automation in black box environments |
GB2609947A (en) * | 2021-08-18 | 2023-02-22 | Blue Prism Ltd | Systems and methods for determining GUI in interaction information for an end user device |
CN113495775B (zh) * | 2021-09-07 | 2021-12-03 | 长沙博为软件技术股份有限公司 | Rpa定位控件元素的组合定位系统、方法、设备及介质 |
US20230108015A1 (en) * | 2021-10-05 | 2023-04-06 | UiPath, Inc. | Semantic matching between a source screen or source data and a target screen using semantic artificial intelligence |
US20230107316A1 (en) | 2021-10-05 | 2023-04-06 | UiPath, Inc. | Automatic data transfer between a source and a target using semantic artificial intelligence for robotic process automation |
CN114035726B (zh) * | 2021-10-19 | 2023-12-22 | 四川新网银行股份有限公司 | 一种机器人流程自动化页面要素识别过程的方法及系统 |
CN114461122B (zh) * | 2022-04-12 | 2022-07-19 | 杭州实在智能科技有限公司 | Rpa元素拾取同屏切换方法及系统 |
CN115495055B (zh) * | 2022-11-03 | 2023-09-08 | 杭州实在智能科技有限公司 | 基于界面区域识别技术的rpa元素匹配方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103502936A (zh) * | 2011-05-06 | 2014-01-08 | 惠普发展公司,有限责任合伙企业 | 基于图像的自动化系统和方法 |
CN109117215A (zh) * | 2017-06-23 | 2019-01-01 | 埃森哲环球解决方案有限公司 | 自学习机器人过程自动化 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070172130A1 (en) * | 2006-01-25 | 2007-07-26 | Konstantin Zuev | Structural description of a document, a method of describing the structure of graphical objects and methods of object recognition. |
US8126907B2 (en) * | 2004-08-03 | 2012-02-28 | Nextengine, Inc. | Commercial shape search engine |
US20090063946A1 (en) | 2007-08-29 | 2009-03-05 | International Business Machines Corporation | Anchor store for transmitting multiple dynamic anchors |
US20100138775A1 (en) | 2008-11-28 | 2010-06-03 | Sharon Kohen | Method, device and system, for extracting dynamic content from a running computer application |
US9245043B2 (en) * | 2009-12-23 | 2016-01-26 | Fuji Xerox Co., Ltd. | Embedded media markers and systems and methods for generating and using them |
US9274742B2 (en) | 2012-10-25 | 2016-03-01 | PixiOnCloud, Inc. | Visual-symbolic control of remote devices having display-based user interfaces |
US20140285519A1 (en) * | 2013-03-22 | 2014-09-25 | Nokia Corporation | Method and apparatus for providing local synchronization of information for augmented reality objects |
US9075918B1 (en) * | 2014-02-25 | 2015-07-07 | International Business Machines Corporation | System and method for creating change-resilient scripts |
AU2014277851A1 (en) | 2014-12-22 | 2016-07-07 | Canon Kabushiki Kaisha | Detecting a gap between text columns from text line fragments |
US9870623B2 (en) * | 2016-05-14 | 2018-01-16 | Google Llc | Segmenting content displayed on a computing device into regions based on pixels of a screenshot image that captures the content |
US20180157386A1 (en) | 2016-12-05 | 2018-06-07 | Jiawen Su | System and Method for detection, exploration, and interaction of graphic application interface |
US10409712B2 (en) * | 2016-12-30 | 2019-09-10 | Accenture Global Solutions Limited | Device based visual test automation |
CN110168476B (zh) * | 2017-01-09 | 2022-11-04 | 斯纳普公司 | 增强现实对象操纵 |
JP6939105B2 (ja) | 2017-06-09 | 2021-09-22 | 富士フイルムビジネスイノベーション株式会社 | 情報処理装置及びプログラム |
US10600205B2 (en) * | 2018-01-08 | 2020-03-24 | Htc Corporation | Anchor recognition in reality system |
CN109492583A (zh) * | 2018-11-09 | 2019-03-19 | 安徽大学 | 一种基于深度学习的车辆重识别方法 |
US10936351B2 (en) * | 2019-07-19 | 2021-03-02 | UiPath, Inc. | Multi-anchor based extraction, recognition, and machine learning of user interface (UI) |
-
2019
- 2019-07-19 US US16/516,998 patent/US10936351B2/en active Active
-
2020
- 2020-07-17 CN CN202210305333.XA patent/CN114661400B/zh active Active
- 2020-07-17 JP JP2020122536A patent/JP7104107B2/ja active Active
- 2020-07-17 KR KR1020200088891A patent/KR102356950B1/ko active IP Right Grant
- 2020-07-17 CN CN202010693723.XA patent/CN112241302B/zh active Active
- 2020-07-17 EP EP20186561.5A patent/EP3767449B1/en active Active
-
2021
- 2021-02-26 US US17/187,166 patent/US11487563B2/en active Active
-
2022
- 2022-01-20 KR KR1020220008654A patent/KR20220013450A/ko active IP Right Grant
- 2022-04-13 JP JP2022066133A patent/JP2022109927A/ja active Pending
- 2022-10-31 US US17/977,771 patent/US11983379B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103502936A (zh) * | 2011-05-06 | 2014-01-08 | 惠普发展公司,有限责任合伙企业 | 基于图像的自动化系统和方法 |
CN109117215A (zh) * | 2017-06-23 | 2019-01-01 | 埃森哲环球解决方案有限公司 | 自学习机器人过程自动化 |
Also Published As
Publication number | Publication date |
---|---|
US11983379B2 (en) | 2024-05-14 |
EP3767449A1 (en) | 2021-01-20 |
US20210182089A1 (en) | 2021-06-17 |
CN114661400A (zh) | 2022-06-24 |
US10936351B2 (en) | 2021-03-02 |
JP7104107B2 (ja) | 2022-07-20 |
JP2022109927A (ja) | 2022-07-28 |
US11487563B2 (en) | 2022-11-01 |
KR102356950B1 (ko) | 2022-02-07 |
EP3767449B1 (en) | 2023-08-02 |
CN112241302A (zh) | 2021-01-19 |
CN114661400B (zh) | 2023-12-01 |
US20230051443A1 (en) | 2023-02-16 |
KR20220013450A (ko) | 2022-02-04 |
KR20210010833A (ko) | 2021-01-28 |
JP2021018820A (ja) | 2021-02-15 |
US20210019157A1 (en) | 2021-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112241302B (zh) | 基于多锚点的用户界面的提取、识别与机器学习 | |
JP7034217B2 (ja) | ロボティックプロセスオートメーション用のコンピュータビジョンモデルの再訓練 | |
CN113011828A (zh) | 更新或重新训练并更新动态人工智能/机器学习模型 | |
CN114556305A (zh) | 针对机器人过程自动化的基于人工智能的过程标识、提取和自动化 | |
CN114556245A (zh) | 针对机器人流程自动化的人机回圈机器人训练 | |
US10990876B1 (en) | Detecting user interface elements in robotic process automation using convolutional neural networks | |
US20230168654A1 (en) | Graphical element search technique selection, fuzzy logic selection of anchors and targets, and/or hierarchical graphical element identification for robotic process automation | |
KR20220079834A (ko) | 로봇 프로세스 자동화를 위한 인공 지능 계층 기반 프로세스 추출 | |
CN116529032A (zh) | 用于机器人流程自动化(rpa)的支持机器人的任务自动化 | |
CN114008609A (zh) | 使用截屏图像进行序列提取 | |
EP3909722A1 (en) | Graphical element search technique selection, fuzzy logic selection of anchors and targets, and/or hierarchical graphical element identification for robotic process automation | |
US20220100964A1 (en) | Deep learning based document splitter | |
CN118057367A (zh) | 在浏览器内的目标应用的自动增强 | |
CN117950649A (zh) | 用于机器人过程自动化的语义自动化构建器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |