A computing device for robotic process automation comprising: a display device configured to display a user interface; a robot configured to capture an image of the user interface; a processor configured to operate the robot to automate an activity in a virtual or remote machine environment; an optical character recognition engine configured to identify text fields and labels in the captured image; characterised in that the robot is further configured to utilize two or more anchors in the captured image of the UI, wherein the two or more anchors are configured to create a geometrical relationship for identifying a target element in the user interface, and wherein the geometrical relationship is determined based on geometries formed between the two or more anchors and the target element; and the computing device further comprising: a computer vision engine configured to use the captured image and the two or more anchors; a transceiver configured to transmit the captured image with the two or more anchors to the computer vision engine and transmit the captured image to the optical character recognition engine; the transceiver configured to receive results from the optical character recognition engine and a relationship determined by the computer vision engine based on a geometric match of labels and text field elements in relation to the two or more anchors and the target element in an area of the captured image, wherein the geometric match is associated with a confidence interval; and wherein the robot is configured to perform the activity on the target element in the UI based on the relationship. a display device configured to display a user interface; a robot configured to capture an image of the user interface; a processor configured to operate the robot to automate an activity in a virtual or remote machine environment; an optical character recognition engine configured to identify text fields and labels in the captured image; characterised in that the robot is further configured to utilize two or more anchors in the captured image of the UI, wherein the two or more anchors are configured to create a geometrical relationship for identifying a target element in the user interface, and wherein the geometrical relationship is determined based on geometries formed between the two or more anchors and the target element; and the computing device further comprising: a computer vision engine configured to use the captured image and the two or more anchors; a transceiver configured to transmit the captured image with the two or more anchors to the computer vision engine and transmit the captured image to the optical character recognition engine; the transceiver configured to receive results from the optical character recognition engine and a relationship determined by the computer vision engine based on a geometric match of labels and text field elements in relation to the two or more anchors and the target element in an area of the captured image, wherein the geometric match is associated with a confidence interval; and wherein the robot is configured to perform the activity on the target element in the UI based on the relationship. a computer vision engine configured to use the captured image and the two or more anchors; a transceiver configured to transmit the captured image with the two or more anchors to the computer vision engine and transmit the captured image to the optical character recognition engine; the transceiver configured to receive results from the optical character recognition engine and a relationship determined by the computer vision engine based on a geometric match of labels and text field elements in relation to the two or more anchors and the target element in an area of the captured image, wherein the geometric match is associated with a confidence interval; and wherein the robot is configured to perform the activity on the target element in the UI based on the relationship.