Neural networks in robotic vision and guidance
Shashank V Raghavan
Engineer??| Product and Program Management ??| Resident Robot Geek ?? | Quantum Computing ??| Autonomous systems???
Humans see "stereoscopically" the eyes view two slightly different images of something and combine them into a three-dimensional image in the brain, those inputs are made into a scene with depth, color, and texture. Neurons in the brain do the work.?
If we can give robots new abilities, they can take on new jobs, or work faster and more repeatably.?
Robots guided by 3D vision systems can recognize objects and are generally repeatable. But these work cells are typically slower than humans, struggle with randomness and don’t always take the optimal path. Customized programming and specialized lighting complicate their deployment.?
If the existing way of giving robots better sight has reached its limits, what’s the new alternative??
Teach a neural network to see stereoscopically?
Neural networks offer a powerful method for interpreting 2D images into 3D scenes. They mimic neurons in the human brain and can give robots human-like sight. AI is sometimes called a “black box,” but the math can be fully understood. A neural network is a software function. If you opened the code, you would see a huge list of constants, the numerical values of the image taken by the 2D cameras, an enormous series of multiplications, additions, replacing negative values with zero, and not a lot more.?
The special part to focus on advanced neural network is how it can be written. The human part of building the neural network is defining the problem and how the resulting robotic work cell should perform. Defining the problem involves these questions:?
To train a neural network, we gather a large collection of images along with the desired outputs. For each one, we can question “what small change can be made to the list of constants that will make the output closer to the desired output?” Then make the change. It could be good or bad change. Gradually, the functions will improve.??
The process involves an accelerated computing machine analyzing a large dataset of images of the object, subject to a high level of variation in each image, including its position and contact against other objects, dimensions, finish (e.g. shiny) and interaction with light.?
How to approach?
Synthetic data is a path out of this trap. We can create images that parallel the real world, like sockets in a bin, or the assembly of a part.?For example consider the below image, it represents a visual representation of box of items, when feed into neural network it will teach neural network a understanding of how objects can present themselves in the real world.?
The alternative method is to write a traditional code. That would collect several images, along with the desired outputs. The logic would be gradually built up, attempting to match actual outputs to desired outputs, until the complexity was overwhelming, and the problem declared too hard.?
One advantage of training neural networks is that it’s a data-driven strategy. If one has a function to write, the main requirement is to gather a large set of images and desired outputs.
Here’s a detailed look at how neural networks can be utilized in various aspects of robot control:
1. Learning Control Policies
Neural networks can be used to learn control policies through methods like reinforcement learning (RL). In this approach:
2. Sensor Fusion and Perception
Neural networks can process and integrate data from multiple sensors to enhance a robot’s perception:
领英推荐
3. Trajectory Planning and Motion Control
Neural networks can assist in planning and controlling robot trajectories:
4. Adaptive Control Systems
Neural networks can be used to adapt control parameters in real-time:
5. Human-Robot Interaction
Neural networks can enhance interactions between robots and humans:
6. Simulation and Training
Neural networks are useful for training robots in simulated environments:
7. Fault Detection and Recovery
Neural networks can be employed to detect and recover from faults:
What are the conclusions we reach from this information?
AI allows us to build sophisticated mathematical models that create human-like vision and speed. Modern image processing technology and computing power makes it all possible. Their inner workings can be reverse engineered, reweighted and fully understood. And AI/ML will become closer and closer to human sight, speed and perception.?