I recently participated in an automated guided vehicle (AGV) project. In order to accomplish material handling, computer vision integration with robotics was used. I was able to contribute to the robotic arm of the robot during the project, but I was really interested in learning more about the AGVs camera module. I found myself drawn to the camera over time, which made me want to learn more about computer vision in depth.
I would like to introduce the next series of computer vision algorithms employing microcomputers/microprocessors and a camera in this paper.
The robot's trajectory movement and path planning in the project were accomplished by computer vision. The processing was carried out by a Raspberry Pi 4, which also interfaced with the other modules, and the camera was utilized for object detection.
Because it can detect an object's distance and send a command to the DC to stop the robot, the ultrasonic sensor was employed for obstacle avoidance.
Additionally, the camera images were utilized to extract particular elements from the live image that was captured in order to identify the image.
OpenCV was used to train the Machine Learning Model that was installed on the Raspberry Pi, enabling object detection.
Python3.10: The high-level Python programming language is the one most frequently used for computer vision. When utilized, the language provides the following benefits.
1. In addition to being open source, it has a sizable fan base.
2. It has a huge collection of libraries with various functions.
3. It readily incorporates other technologies.
4. It is capable of data science and machine learning.
Google Colab, anyone can write and run any Python code through a browser, making it particularly useful for data analysis, machine learning, and teaching.
Python code can be executed in your web browser with Colab. You may use Graphic Power Units (GPUs) and storage, among other free cloud resources, using it. On notebooks, you may create, share, and work together with others.
The camera first takes a picture to get an input image. Then the system checks if there are any objects nearby in the image.
If no objects are detected, the camera takes a new picture, hoping to find objects this time.
When objects are found in the image, the system looks at the shapes in the picture. It tries to match these shapes to known objects it can identify.
It keeps repeating this process of taking new pictures and searching for matching shapes until some object is recognized.
Once an object is matched successfully, the system can conclude the object is detected in the image.
In summary:
Camera takes picture
Check for objects
If no objects, takes a new picture
Look for matching shapes
Repeat until detection
Since its introduction, computer vision and object detection algorithms have continuously advanced. They started out simple and have since evolved with new feature integrations. In the upcoming tutorial series, I am excited to try the following.
Edge Impulse to generate the model
R-CNN -Stands for "Regions with Convolutional Neural Network" features.
Fast R-CNN -Refers to "Fast Regions with Convolutional Neural Network" features.
SSD - Stands for "Single Shot MultiBox Detector."
YOLO - Stands for "You Only Look Once”
References