A robotic fruit picking system comprising an autonomous robot that includes the following subsystems: a positioning subsystem configured to autonomously position the robot using a computer implemented guidance system, such as a computer vision guidance system; at least one picking arm; at least one picking head or other type of end effector, mounted on the picking arm to either cut a stem or branch for a specific fruit or bunch of fruits or pluck that fruit or bunch, and then transfer the fruit or bunch; a camera configured to take images of the fruit to be picked or stored, the camera mounted on the picking arm; a computer vision subsystem configured to analyse images of the fruit to be picked or stored; a control subsystem configured to control the picking arm and the picking head, and configured to decide where and when to move the robot; a storage subsystem for receiving picked fruit and storing that fruit in containers for storage or transportation, or in punnets for retail; and in which the end effector is configured to (a) grip a stem or stalk of a fruit or a bunch of fruits and (b) cut that stem or stalk and/or pluck that fruit or bunch; the end-effector being controlled by the computer vision subsystem to separate the edible and palatable part from at least a part of the stem, branch or stalk while minimising handling of the edible and palatable part; and in which the control subsystem is configured to estimate the statistical probability that a picking attempt will be successful by taking into account one or more of the following parameters determined by the computer vision subsystem: estimated pose and shape of the target fruit and it's stem or stalk, uncertainty associated with the recovered pose and shape estimates, colour of the target fruit's surface, the proximity of detected obstacles, and the range of viewpoints from which the target fruit is visible, wherein the control subsystem is configured to cause the picking head to pick a fruit when the estimated picking success is greater than a pre-defined threshold. a positioning subsystem configured to autonomously position the robot using a computer implemented guidance system, such as a computer vision guidance system; at least one picking arm; at least one picking head or other type of end effector, mounted on the picking arm to either cut a stem or branch for a specific fruit or bunch of fruits or pluck that fruit or bunch, and then transfer the fruit or bunch; a camera configured to take images of the fruit to be picked or stored, the camera mounted on the picking arm; a computer vision subsystem configured to analyse images of the fruit to be picked or stored; a control subsystem configured to control the picking arm and the picking head, and configured to decide where and when to move the robot; a storage subsystem for receiving picked fruit and storing that fruit in containers for storage or transportation, or in punnets for retail; and in which the end effector is configured to (a) grip a stem or stalk of a fruit or a bunch of fruits and (b) cut that stem or stalk and/or pluck that fruit or bunch; the end-effector being controlled by the computer vision subsystem to separate the edible and palatable part from at least a part of the stem, branch or stalk while minimising handling of the edible and palatable part; and in which the control subsystem is configured to estimate the statistical probability that a picking attempt will be successful by taking into account one or more of the following parameters determined by the computer vision subsystem: estimated pose and shape of the target fruit and it's stem or stalk, uncertainty associated with the recovered pose and shape estimates, colour of the target fruit's surface, the proximity of detected obstacles, and the range of viewpoints from which the target fruit is visible, wherein the control subsystem is configured to cause the picking head to pick a fruit when the estimated picking success is greater than a pre-defined threshold.