Resumen-Industrial robots are having major involvement in assembly lines, where they are able to identify, classify and even grasp objects and place them in non-default locations; furthermore, assembling pieces autonomously. We describe step by step the image processing to determine the objects orientation located in the field of view of the NAO robot, initial step in posterior developments in task execution using those objects. The processing stages described are: RGB color space segmentation, interest points detection and objects orientation estimation with respect to a reference frame. The results are compared with measures obtained using a commercial image processing software. The absolute error is less than 1.5 o in the objects orientation angles, which is considered acceptable due to the size of the processed objects. The introduced methodology is a first step in the execution of assembling tasks or handling of tools by a robotic platform, where the artificial vision has a relevant place in the identification, location and orientation of the objects.Index Terms-Image processing, objects detection, image segmentation, humanoid robots, robotic vision systems
I. INTRODUCCIÓNLa programación por demostración (PbD por sus siglas en inglés) es una técnica donde, al contrario de la programación detallada que convencionalmente se hace al robot, este aprende movimientos parciales o incluso una tarea completa, con sólo ver una o varias demostraciones por parte de un humano.1 Docente Universidad del Quindío Entre las tareas que se espera desarrollen los robots, es común que se requiera la interacción con herramientas para llevar a cabo una determinada acción. El manejo de herramientas puede dividirse en: reconocimiento, agarre y posicionado, y reproducción de los movimientos para realizar la tarea. La plataforma utilizada, denominada NAO [1], es un robot humanoide programable de 58 centímetros de alto desarrollado por la compañía francesa Aldebaran. Entre sus principales características se encuentran: un cuerpo con 25 grados de libertad, una red de sensores, incluyendo dos cámaras, 4 micrófonos, sensor de distancia basado en ultrasonido, dos emisores y receptores infrarrojos, sensor de inercia, 9 sensores táctiles, y 8 sensores de presión. El autómata contiene una CPU Intel ATOM a 1,6 GHz que ejecuta un kernel Linux soportando el middleware propietario de Aldebaran (NAOqi). En este proyecto los programas se escribieron en lenguaje C++, accediendo desde un portátil a la cámara del robot y obteniendo el video en tiempo real.El trabajo presentado hace parte de un proyecto que pretende desarrollar técnicas que integren visión, programación por demostración y medida de fuerzas para realizar la tarea de apretar una tuerca. El robot, a partir de la demostración, aprende el movimiento de apretar, con la visión se logra flexibilidad en la tarea demostrada ya que permite variaciones de posición y orientación de la tuerca, con lo que se puede alinear la llave con la cabeza del tornillo, porúltimo se hace una medida de la corrient...