Inductive Machine Learning with Image Processing for Objects Detection of a Robotic Arm with Raspberry PI
Goals. The present study was designed to build a prototyping and develop algorithms that allow the detection, classification, and movement of objects of a robotic arm of 4 DOF with the following technologies: ArmUno arm structure, Raspberry Pi 3 B+, PiCam 2.1, driver PCA9685 for servomotors, Opencv3, and python. Another goal was to measure the effectiveness of prediction and classification of objects photographed by the robotic arm, using machine learning with the KNN classifier method.
Methodology. The generation of a dataset of 800 photographic images was proposed, in 4 categories: volumetric geometric shapes conformed by 200 images each one of them. With this, processing techniques were applied to the image captured by the camera to detect the object in the image: Grayscale filtering, Gaussian filtering, and threshold.
Then, the characteristics of the object were obtained through the first two invariant moments of HU, and finally, the machine learning method KNN was applied to predict, that the image captured by the robotic arm belongs or not to a certain category. In this way, the robotic arm decides to move the object or not.
Results. According to the plot of the obtained data described in the results section; the level of correct answers increases markedly by using the techniques described above. The prediction and classification using KNN were remarkable, For all the tests carried out The average effectiveness of KNN method was 95.42%. Once the scripts were integrated, the operation of the robotic arm was satisfactory.
KeywordsOpencv3 Python Machine learning KNN Robotics Raspberry Pi
- 3.Vazquez Navarro, D.: Control of a robotic arm using an Omega 2+ module. Thesis, Universitat Politècnica de Catalunya (2018)Google Scholar
- 4.Rahman, M.F., Patterson, D., Cheok, A., Betz, R.: 30 - motor drives. In: Rashid, M.H. (ed.) Power Electronics Handbook, 4th edn, pp. 945–1021. Butterworth-Heinemann, Oxford (2018). https://doi.org/10.1016/B978-0-12-811407-0.00034-9. ISBN 978-0-12-811407-0CrossRefGoogle Scholar
- 9.Beyeler, M.: Machine Learning for OpenCV. Intelligent Image Processing with Python, 1st edn. Packt Publishing, Birmingham (2017). ISBN 978-1-78398-028-4Google Scholar
- 10.Muller, A.C., Guido, S.: Introduction to Machine Learning with Python, Kindle edn. O’Reilly Media, Sebastopol (2017). ISBN 978-1-449-36941-5Google Scholar
- 11.Monk, S.: Raspberry Pi CookBook, 2nd edn. O’Reilly Media, Sebastopol (2016). ISBN 978-1-491-93910-9Google Scholar
- 13.Tlach, V., Kuric, I., Kumicakova, D., Rengevic, A.: Possibilities of a robotic end of arm tooling control within the software platform ROS. Proc. Eng. 192, 875–880 (2017). https://doi.org/10.1016/j.proeng.2017.06.151. 12th International Scientific Conference of Young Scientists on Sustainable, Modern and Safe Transport. ISSN 1877-7058CrossRefGoogle Scholar
- 15.Sunny, T.D., Aparna, T., Neethu, P., Venkateswaran, J., Vishnupriya, V., Vyas, P.S.: Robotic arm with brain. Computer interfacing. Proc. Technol. 24, 1089–1096 (2016). https://doi.org/10.1016/j.protcy.2016.05.241. International Conference on Emerging Trends in Engineering, Science and Technology, ICETEST 2015. ISSN 2212-0173CrossRefGoogle Scholar