Artificial Intelligence for Robotics Build Intelligent Robots Using ROS 2, Python, OpenCV, and AI/ML Techniques for Real-World Tasks
Unlock the potential of your robots by enhancing their perception with cutting-edge artificial intelligence and machine learning techniques. From neural networks to computer vision, this book equips you with the tools and practical use cases to create truly smart robots. Starting with robotics basic...
Otros Autores: | , |
---|---|
Formato: | Libro electrónico |
Idioma: | Inglés |
Publicado: |
Birmingham, England :
Packt Publishing Ltd
[2024]
|
Edición: | Second edition |
Materias: | |
Ver en Biblioteca Universitat Ramon Llull: | https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009810645906719 |
Tabla de Contenidos:
- Cover
- Title Page
- Copyright and Credits
- Foreword
- Contributors
- Table of Contents
- Preface
- Part 1: Building Blocks for Robotics and Artificial Intelligence
- Chapter 1: The Foundation of Robotics and Artificial Intelligence
- Technical requirements
- The basic principle of robotics and AI
- What is AI and autonomy (and what is it not)?
- Are recent developments in AI anything new?
- What is a robot?
- Our sample problem - clean up this room!
- The basics of robotics
- The techniques used in this book
- When do you need AI for your robot?
- Introducing the robot and our development environment
- Software components (ROS, Python, and Linux)
- Robot control systems and a decision-making framework
- Summary
- Questions
- Further reading
- Chapter 2: Setting Up Your Robot
- Technical requirements
- Understanding the anatomy of a robot
- Introducing subsumption architecture
- A brief introduction to ROS
- Hardware and software setup
- Preparing the laptop
- Summary
- Questions
- Further reading
- Chapter 3: Conceptualizing the Practical Robot Design Process
- A systems engineering-based approach to robotics
- Understanding our task - cleaning up the playroom
- Use cases
- Our robot's task - part 1
- Our robot's task - part 2
- What is our robot to do?
- Using storyboards
- Storyboard - put away the toys
- Project goals
- Understanding the scope of our use case
- Identifying our hardware needs
- Breaking down our software needs
- Writing a specification
- Summary
- Questions
- Further reading
- Part 2: Adding Perception, Learning, and Interaction to Robotics
- Chapter 4: Recognizing Objects Using Neural Networks and Supervised Learning
- Technical requirements
- A brief overview of image processing
- Understanding our object recognition task
- Image manipulation
- Convolution.
- Artificial neurons
- Training a CNN
- Using YOLOv8 - an object recognition model
- Understanding how to train our toy detector
- Building the toy detector
- Summary
- Questions
- Further reading
- Chapter 5: Picking Up and Putting Away Toys using Reinforcement Learning and Genetic Algorithms
- Technical requirements
- Task analysis
- Designing the software
- Setting up the solution
- Machine learning for robot arms
- How do we pick actions?
- Creating the interface to the arm
- Introducing Q-learning for grasping objects
- Writing the code
- Introducing GAs
- Understanding how the GA process works
- Building a GA process
- Alternative robot arm ML approaches
- Google's SAC-X
- Amazon Robotics Challenge
- Summary
- Questions
- Further reading
- Chapter 6: Teaching a Robot to Listen
- Technical requirements
- Exploring robot speech recognition with NLP
- Briefly introducing the NLP concept
- Setting our goals
- Understanding the STT process
- Clarifying the intent
- Programming our robot
- Setting up the hardware
- Setting up the Mycroft software
- Adding skills
- Summary
- Questions
- Further reading
- Part 3: Advanced Concepts - Navigation, Manipulation, Emotions, and More
- Chapter 7: Teaching the Robot to Navigate and Avoid Stairs
- Technical requirements
- Task analysis
- Understanding the SLAM methodology
- Exploring alternative navigation techniques
- Introducing the Floor Finder technique
- Implementing neural networks
- Processing the image
- Training the neural network for navigation
- CNN robot control implementation
- Summary
- Questions
- Further reading
- Chapter 8: Putting Things Away
- Technical requirements
- Task analysis
- Introducing decision trees
- What do we mean by pruning?
- Creating self-classifying decision trees
- Understanding entropy.
- Implementing one-hot encoding
- Random forests
- Introducing robot path planning
- Understanding the coordinate system
- Developing a map based on our knowledge
- Introducing the A* algorithm
- Introducing the D* (D-star or dynamic A*) algorithm
- GPS path finding
- Summary
- Questions
- Further reading
- Chapter 9: Giving the Robot an Artificial Personality
- Technical requirements
- What is an artificial personality?
- A brief introduction to the (obsolete) Turing test, chatbots, and generative AI
- The art and science of simulation
- An emotion state machine
- Playing the emotion game
- Creating a model of human behavior
- Integrating an artificial personality into our robot
- Constructing a personality
- Adding context
- Under construction
- Developing the robot emotion engine
- Creating a human emotion model
- Creating human information storage
- Context memory
- Summary
- Questions
- Further reading
- Chapter 10: Conclusions and Reflections
- Learning when to stop
- Careers in robotics
- Exploring the current state of AI
- Looking ahead in AI and robotics
- Is AI phobia reasonable?
- Comparing the needs of humans and AI
- Understanding risk in AI
- Summary
- Questions
- Further reading
- Answers
- Appendix
- Introducing MOSA
- A brief overview of ROS 2
- Understanding the basic concepts
- Comparing ROS 2 and ROS
- Software requirements for the robot
- Installing ROS 2
- Installing other packages
- Basic ROS 2 commands
- Introducing the hardware for the robot
- Effectors - base, motors, and wheels
- Battery
- DC/DC power supply
- CPU - the brains of the outfit
- Effectors - robot arm
- Arm controller
- Arduino microcontroller and motor controller
- Sensor - USB camera
- Sensor and effector - audio interface
- Robot safety tips
- Index
- Other Books You May Enjoy.