Monday, February 26, 2024

DIY: A Robot That Can Dream!

Ashwini Kumar Sinha

- Advertisement -

“More intelligent than you think.”

A first-of-its-kind dreaming robot that can recognize faces and see dreams – like a human.

Dreaming Robot

- Advertisement -

Robot Dream

Robot Dreaming

Humans have the capability to speak, recognize feelings and emotions, and even see dreams, which makes us different from machines. But does it make us more intelligent than them? Can machines like robots also acquire this capability? If yes, then this can blur the line between how humans and robots think. 

How can these Intelligent Robots be used?

As artificial assistants in the workplace, as companions for the elderly and children, and for welcoming guests in hotels – these intelligent robots can have multiple uses.

Very few present-day robots are emotionally intelligent. The already available ones are quite expensive, costing up to several lakhs of INR. 

Keeping this in mind, I have decided to make an intelligent robot using several open-source tools and libraries. And so can you. I have used an InMoov robot face mask. You can also use this robotic face or any other of your choice. 

How Does this Dreaming Robot Work?

Using Google’s open-source Deep Dream library, a camera takes a picture and then creates dreams based on it. 

Next, I used Ai and Python to make a robot to recognize your face and talks to you.

Designing IoT Face Recognition AI Robot

Robot Creating dream
Fig 3. Robot Creating dream

Now, let’s start our project by collecting the following components:  

Bill of Material

Dreaming Robot BoM


Our project includes two different features, for which we need to create a basic setup of deep dream and Face recognition. 

Face Recognition Requirements/setup 

For emotion recognition, we need to set up the following libraries in Raspberry Pi.

  • Keras
  • OpenCV
  • eSpeak
  • Dlib
  • Face Recognition

To install the above library, open the terminal window in Raspberry Pi and then run

sudo  apt-get update
sudo apt-get upgrade
sudo apt-get install build-essential cmake pkg-config 
sudo apt-get install libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev 
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev  
sudo apt-get install libxvidcore-dev libx264-dev
sudo apt-get install libgtk2.0-dev libgtk-3-dev  
sudo apt-get install libatlas-base-dev gfortran

After this, we need to swap the file size. To do so, run the following command:

sudo nano /etc/dphys-swapfile

Then change the line CONF_SWAPSIZE=100 to CONF_SWAPSIZE=1024

sudo /etc/init.d/dphys-swapfile stop  
sudo /etc/init.d/dphys-swapfile start
sudo pip3 install opencvsudo pip3 install numpy
pip install dlib
Raspberry Pi Setup
Fig 4.


This is PREMIUM content, which means that only
REGISTERED users of our website can read it, by logging in.

If you ARE a registered user, CLICK HERE to login.
Else, CLICK HERE to register for FREE!

If you have any doubt regarding this project, please feel free to ask in the comments below.


Electronics News

Truly Innovative Tech

MOst Popular Videos

Electronics Components