📷Computer Vision

📅Update: 2020/09/02

Introduction

The Rotrics computer vision kit is the official camera kit that allows you to easily implement vision applications with DexArm. Our plan for this camera kit is not only to use it for vision applications, but also use it in laser engraving to preview the engraving work. At the first stage, we plan to integrate the vision kit into the Rotrics Studio's Scratch programming function. We are working on it and it's planned to be released in early October.

Before that, it's recommended to use the Vision Terminal to deploy computer vision projects. In the Vision Terminal, we provide two demos(woodblocks recognizing and chocolate bean sorting) for you to experience the color recognizing process.

We've proudly open-sourced the project on our GitHub page. If you want to integrate the computer vision kit into your current project, feel free to download and try it out.

Welcome to share your vision projects to the community, really looking forward to your creations! For any questions, please email us at support@rotrics.com‌.

Table of Contents

🧙♂ Tips: You can also click the TOP RIGHT table of contents to read the corresponding section​ 👉

1) First use set-up

2) Calibrate the recognizing parameter

3) Start recognizing

4) Program your own project

Color Recognizing Workflow

1) First use set-up

2) Calibrate the recognizing parameter

3) Start recognizing

1. First use set-up

1.1 Download the Rotrics Vision Terminal

1.2 Assemble the camera

1.2.1 Assemble the left camera mount on the camera.

1.2.2 Mount the left part on DexArm and assemble the right part.

1.3 Connect it to your computer

2. Calibrate the recognizing parameter

2.1 Connect with DexArm and camera

Open Rotrics Vision Terminal and connect with DexArm and camera.

Once DexArm has been connected, it will automatically move to the height preview position. You can check the camera's sight area on the TOP LEFT image. DexArm couldn't pick up the items that out of the sight area. If you couldn't see all the items in the area, please move DexArm or the items and make sure they are in the sight area.

2.2 Choose the demo and adjust the color value.

  • Select the Wood Block Demo or Chocolate Bean Demo.

  • Choose the target color.

  • Adjust the HSV value until you can see the woodblocks in the TOP RIGHT result area.

2.3 Set the target position.

Choose the color and use the DexArm panel to move DexArm to the corresponding place position.

🧙♂ Tips: Click HOME button every time you set a target position for a new color.

3. Start recognizing.

After all color are set, click Start to run the demo.

If you find that DexArm couldn't pick at the center of the item, try to adjust the XY Multiple values and run again.

  • X Multiple: the X axis's ratio between image coordinate and DexArm's cartesian coordinate. The value is different in different Z height.

  • Y Multiple: the Y axis's ratio between image coordinate and DexArm's cartesian coordinate. The value is different in different Z height.

4. Program your own project

Thanks for the continued support from the crowdfunding and maker community, we finally able to bring our dream to life and ship DexArm to you. Now it's time for us to pay back. We've proudly open-sourced the Rotrics Vision Terminal on GitHub. If you are interested in integrating it into your project, you can get the source code on our GitHub Page.

Before building your own vision project, please make sure you've learned to program python.

The concept of the Vision Terminal is to use a camera to recognize the items' color and shape. Here are the IDE and tools we use:

  • Programming Language: Python 3.6

  • Python IDE: Visual Studio Code

  • Image Process Tools: OpenCV-Python 3.4.1.15

  • Serial Port Communication: pySerial 3.1

  • Interface Construction: PyQt5

The project is built on Visual Studio Code and it's recommended to use the same platform to build it. But you can also use the other Python IDE such as PyCharm, Idle, PyDev to build it.