# Robotic Grasping of Unknown Objects Based on Deep-Learning Based Feature Detection
## 1 Introduction
However, it was noted that these systems are highly unscalable due to the limitations of the training dataset and are unable to deal with objects outside of the training. Another trade-off of cascaded algorithms is the runtimes. [PERSON] et al. [16] found that it ran up to 4 times slower than just having the object detector alone. To deal with this limitation, multiple studies have gone beyond just robotic grasping and delved into unknown object robotic grasping. This refers to objects that are not seen by the system during the training process. One of the earliest works specifically targeting unknown object grasping is by [PERSON] et al. [18]. In that work, 2500 datapoints were synthetically generated to train the algorithm and it predicts a grasp pose directly as a function of the images via triangulation of a grasping point, hence removing the need to be trained on any specific objects. The algorithm has a 87.5% success rate on a collection of eight unknown objects. [PERSON] et al. [19] developed Dex-Net 2.0 with a synthetic dataset of 6.7 million datapoints. The algorithm showed an 80% success rate in grasping a set of 10 unknown objects. [PERSON] et al. [20] developed a generative grasping convolutional neural network (GG-CNN) which directly generates a dense prediction of antipodal grasp poses and a quality measure for every pixel in an input depth image. They achieved a 94% success rate on a set of 12 unseen household items with a training size of 51,100 datapoints. [PERSON] et al. [21] tackle unknown object grasping by integrating visual information with tactile information as part of their data-driven algorithm. The trained model's performance varies greatly with the unknown object experimented with, having an accuracy of between 40% and 92%. Coupled with the large training dataset of 23,600 datapoints, the algorithm does not seem to generalize well to all unknown objects. A more recent study by [PERSON] et al. [22] approaches the unknown object grasping problem from a different perspective. Data-driven techniques are not used and the algorithm falls back on a more classical grasping approach using contact forces. The robot first touches the unknown object to collect more information through tactile sensors, which are combined with the RGB-D image to form a valid grasp position. As the robot is not trained via any CNN to recognize any object, all objects are new to the robot and it has good grasp performance. However, this two-step approach is slower. It requires 0.5 s to generate a grasp position, which is considerably slower than many other visual-based data-driven grasping algorithms that can do the same in less than 0.1 s. As such, some approaches with increased complexity or combining contact forcescan improve the performance when approaching unknown objects but have a significant trade-off in speed. In a world with an infinite number of different objects, it is both inefficient and impossible to train the algorithms to recognize every object. As such, a purely data-driven approach for object grasping is not ideal. Therefore, it stands as a critical challenge in the literature of robotic grasping to develop an efficient method that will not require a large amount of training data but still can achieve a high success rate in actual grasping of unknown objects. To tackle this problem, a novel method is presented in this paper for robotic grasping by combining data-driven techniques with information obtained through image segmentation and logical deduction to propose a grasp pose for each unknown object. Instead of training a robot to recognize objects and their grasp positions, the algorithm is trained to identify common object features, namely straight edges and corners. Combining these with some basic object information that can be extracted from the image of an object, the algorithm can logically deduce a grasp position. This algorithm does not require the tedious labelling of grasp positions on different objects, neither does it need to identify what class of object it encounters.