# Direction-Based Hybrid Strategy Combining Pushing and Hitting for Fast Object Singulation
## 5 Experimental Verification  
This section deals with experimentation related to both pushing and hitting. We have used an Intel RealSense D435i Depth Camera and applied the image segmentation technique to see whether the objects are in contact with each other or not. The RGB image is converted to HSV color space because HSV color space is less affected by brightness compared to RGB. As shown in Figure 7, the circular disks are segmented according to the HSV range. As an example, if the circular disk is red, the area is set to 255 and in all other cases, it is set as 0. The results of segmentation for each color are stored. To remove noise, erosion is performed immediately after dilation and the image is returned to the original image size. As a result of each segmentation, the contour of the image is obtained. The image contour is defined as the line formed when circular disks contact each other. The thickness of each contour is made thicker so that contours can overlap when there exist adjacent circular disks. To find the overlapping between two adjacent circular disks, each image of the circular disk is compared. The contour has a start point and an end point. The nearest point of contour facing the manipulator is selected as the start point and the end point is the point where the contour finishes applying Principal Component Analysis (PCA) to the region of the overlapping contour. Rows and columns constitute 2D image coordinates. In a 2D binary image, two vectors are used to represents the 255 intensity region, where 255 changed to 1 represents white, while black is represented by 0. These two vectors represent the longest and shortest axes and the direction of pushing is chosen along the longest axis. The length of the pushing stroke is a combination of the length of contour and the length of the end effector such that the manipulator does not stop at the end point of the contour and moves further equal to the length of the end effector to singulate the contacting disks. Figures 8 and 9 show the cases of single pushing, where two and three circular disks contact each other. Initially, a vision algorithm based on PCA-based image segmentation is used to create a contour and pushing arrow. Resultantly, the robot will push along the arrow in order to singulate the circular disks contacting together. After the first push, the manipulator again uses the RealSense camera view to see any other contour. It is found that for both two and three circular disk cases as shown in Figures 8 and 9, one push is able to yield the desired singulation. In Figure 9, the RealSense camera view shows three arrows. The green arrow that is between the blue and purple disks is chosen as the pushing arrow since it lies closer to the end effector of the manipulator. Figure 10 shows the four circular disk formation and as explained earlier the vision algorithm will be used to predict the pushing directions and in the case of four disks, it will require two pushes in order to get the desired singulation among the disks. First, the robot tries to singulate them by the upper-left arrow between the blue and red disks. The four circular disks can be singulated using two pushes. Figure 11 shows the billiard formation of six discs. The position of the first circular disk is set a little far from the other five disks so that it acts as a cue disk like a cue ball in billiards. The manipulator will hit the blue disk and then the blue disk will hit two disks in level 2. Then it will be propagated to level 3. As discussed earlier, if we use only pushing, it needs multiple pushes to separate this formation, which is time-consuming. Before conducting the real experiment, we have performed hitting virtually using the Matlab simulation tool to estimate an appropriate robot velocity for the singulation of all of the objects. Figure 11c,d shows both the virtual view and the real view of singulation, and only one hit can result in the desired singulation.