{'fraction_non_alphanumeric': 0.017216470021671083, 'fraction_numerical': 0.005056585600770528, 'mean_word_length': 4.717136958017894, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Assistive Robot For Visually Impaired People

The proposed robot aims to serve as a personal assistant for visually impaired people in obstacle avoidance, in identifying the person (known or unknown) with whom they are interacting with and in navigating. The robot has a special feature in truly locating the subject’s location using GPS. The novel feature of this robot is to identify people with whom the subject interacts. Facial detection and identification in real-time has been a challenge and achieved with accurate image processing using viola jones and SURF algorithms. An obstacle avoidance design has been implanted in the system with many sensors to guide in the correct path. Hence, the robot is a fusion of providing the best of the comfort and safety with minimal cost.


1.
Introduction In the entire world there are 285 million people who are visually impaired. There is a necessity for an assistant. Hence our robot can replace a human assistant. The robot will make the blind person independent on other humans. This helps is finishing all day to day tasks at a faster rate like every other human being on this planet. This robot has the flexibility of outdoor and indoor navigation. It also has dedicated systems that are built for obstacle avoidance and facial identification. The robotic system [1] with a visual sensor, laser range finders and the speaker gives visually impaired people information about things around them. The laser output helps in detecting obstacles. A visual sensor helps in differentiating objects and humans. PC analyses the data and sends information to the person. The present existing systems use GPS [2] to help the person to know the current location [3] and helps in navigation [4]. Another model is designed for helping the blind person in navigation [5], but the model is limited only to indoor navigation. This can be used only for indoor navigation purpose [6] and cannot be used for guiding the person outside. Another existing model is the cane that could communicate with the users through voice alert and vibration [7]. It only helps the blind person by giving vibration when there is any obstacle coming in their path. Similar models help the blind person only in detecting obstacles [8]. Models with infrared sensors help in detecting the obstacles coming on the path of the person and help in warning the person with the help of voice guidance tool [9]. The obstacle detection and location tracking model [10] helps the person to know the obstacles and alerts the person. In the existing models, the GPS module and sensors help the person in navigation and obstacle detection [11]. There are face detection frameworks which use AdaBoost learning algorithm to select small visual features from a huge set of features [12]. Another model helps the visually impaired person in obstacle detection and indoor navigation where the user is guided about the obstacles using audio alerts [13]. This model does not use image processing for facial recognition. Another model is used as a reading assistant for visually impaired people by taking the image and training the picture based on image processing [14]. This model is only limited to the image detection of texts and not facial detection. Need for Assistive Robot. From the literature survey, it was observed that there is no single system which performs all the above objectives like navigation, obstacle avoidance and face recognition. Therefore, there is a need to improve the existing systems by implementing all the objectives in a single system. The advancement to the existing systems will have the face recognition which helps the blind person to identify the person with whom they are interacting and helps to know whether the person is known or unknown using (Viola jones + SURF) algorithm with the help of image processing along with navigation and obstacle avoidance in a single system.

2.
Materials and Methods In this section, the overall methodology of the model is discussed.

Image Processing Algorithm
The first main objective is on face detection and later identification. Face detection can be achieved through the Viola-Jones algorithm on feature identification. This algorithm has four stages which are haar feature selection, creating an integral image, Adaboost training and cascading classifiers. Haar feature selection identifies all the lighter and darker regions in a given image then applies a rectangle with a particular dimension as part of integral image creation. Using Adaboost training and cascading classifiers, Viola-Jones applies N number of filters over the trained rectangle and tries to identify any human facial feature. Each filter provides a result. If the results for the particular rectangle turns to be negative the algorithm applies the next filter. If the result is positive, immediately the rectangle is moved to other pixels with similar dimensions. Thus face detection is processed and the image is then moved for face identification. Facial Identification is processed using speeded up robust features (SURF) algorithm. SURF uses square-shaped filters as an approximation of Gaussian smoothing. By creating a database of known people and training the model with N number of faces for each person. Later the detection and identification algorithms are applied. This will give results to an accuracy of 92%.

Flow Chart for Image Processing
The flow chart for detecting and identifying the person is shown in figure 2. Image processing is the main functionality of the proposed model. This feature functionality with maximum repeatability and precision can be achieved through a dedicated processor for image processing. The training model uses around 250 to 300 images per person. These images are of different angles and different sides of a human face. This database is initially created for close and frequent contacts of the subject. The detected face is processed further and matched with the database for identification. In Identification, there are multiple iterations for accurate results. The identified face is further compared to achieve a match percentile which is either equal or greater than the previously achieved score. Later the identified person's name is fed as an output through any audio device.

Obstacle Avoidance
Obstacle avoidance is a great challenge for visually impaired people. There has to be a person who can assist them over the path. Obstacle avoidance becomes a difficult task when it comes to indoor movement. Day to day activities will be at stake and seeking help or depending on other person is a mandate to overcome this problem unless there can be a personal robotic assistant which makes use of sensors to avoid obstacles. The proposed model has as many as 10 ultrasonic sensors which are categorized into the top right, top left, bottom right and bottom left. 2 sensors on right and 2 sensors on left are aligned along with 6 sensors placed at the bottom of the robot. These sensors are positioned at particular places to cover a wide range of angle. These sensors work parallelly and send data to the controller. The controller then analyses all the data and take decisions accordingly. The controller controls the wheels of the robot hence obstacle avoidance can be achieved at a higher accuracy of 100%. The third objective is the navigation system. The navigation is done to help the person to reach the right destination safely. When the person sets the location, it guides the person in particular direction to reach the destination in a correct way. The gripper is used as support for the visually impaired person as they hold the gripper and the robot guides the person with their path. Since it is a mobile robot, it walks along with the person to reach the location given by the person.

Results
The software results include the design of the robot and the image processing. The robot model is designed in such a way that it is easy to hold and walk considering the comfort of the person. The output of the face recognition is shown in the figure 4 above. The faces are detected and recognized by using Viola jones and SURF algorithm using image processing. By using voice recognition tool, the name of the person is read out to help the blind person to know with whom they are interacting