QIN CHUQI

Introduction to the project


The project aims to introduce us the basic ideas and areas of Artificial Intelligence, Machine Learning, Computer Vision and related topics.The value of such a project is to give us more general knowledge about Artificial Intelligence, understand how it functions and what are its application, and learn the basic flow of constructing a computer vision neural network, so that we could be able to set up the foundation for further exploration and application of AI in the future. This would be very important and significant as AI is playing a more and more important role in our society. The resources put into this project are perfect workplace, our project mentor and machine used during the project. We were allocated to work at AI@A*STAR office at North Towel. A specialist in computer vision guided us through the project as our mentor and helped us with all the problems we came up with. Each of us were allocated to our own working area, and a specific machine was assigned to us during our task of training the computer vision neural network.

We were assigned 5 tasks in order to strengthen our knowledge about AI and how computer vision works specifically, and managed to complete them, and the way it could be done is in the following.


Tasks

Our first task was to train a CNN to identify handwritten numbers, given basic building blocks, to arrange them in different order so as to come up with a relatively accurate and precise CNN.

We successfully set up the CNN and the accuracy of it recognising handwritten numbers went up to 95%.



The second task was using a pretrained CNN to identify faces in a given photo/video, and subsequently overlay the image with different shapes and colour. We learned about basic rules of coding in python and installed relevant package. We used the given codes to set up a computer vision function in live camera, it is able to identify human faces in a video. We then enabled it to draw bounding boxes around the detected faces. We learnt to change variables in the code so that the bounding boxes could change their colour, shape and size.

The third task we did was to Train a CNN with our datasets such the programme is able to identify specific people and give a guess. This time, instead of using provided data (The handwritten numbers set and the pretrained face detection AI), we collected our own data through the internet and trained the AI with our dataset including a few specific people(labels of their names) and the pictures of them. It was then able to guess the identity of the people in a picture during the test and also show how confident it was.

Task 4 is to use a text recognition model to recognise text given in a picture. It went smoothly as we have learnt how to apply a pre-trained module in computer vision. It successfully recognises the words appeared in the picture and is able to convert them into machine-coded text.


Our group and our mentor

The last task we had was to train a more advanced model with higher accuracy in order to enable it to classify trash that appeared in pictures and videos. This may significantly help with automatic trash classification. We collected pictures of different types of trash and labelled them manually. More complicated and accurate network was used to train the module in the dataset. Subsequently, the module was successfully trained and was able to identify different types of trash with an accuracy up to 95%.



Significance of our project

Through this project, we gained wider and deeper understanding of AI, how it works and what are its possible applications. This helps us in developing the interest for this important industry and we learnt the basics of developing AI which would help us in future explorations. The tasks were certainly challenging as it is hard for us to get familiar with all the concepts and skills in such a long time, and thus sometimes we could not understand or solve the problems that appeared by ourselves. However, with the help of our tutors and all the other staffs at AI@A*STAR, we were able to learn fast and gradually solve the problems that appeared to us. Our final project is very meaningful and useful as trash classification is becoming more and more important in our society as a part of the effort to create a clean and sustainable environment. Recognising and classifying trash automatically can increase the efficiency of recycling. Hence, it is very inspiring for us and will be beneficial for the earth.



Some content knowledge that we learnt

  1. Types of AI Learning

Supervised Learning is the type of learning when AI is given human recorded data and labels. The AI learns to form connections with data and labels, thus AI can us data given in the future to form its own labels ( E.g Alpha GO, the data of previously recorded human data was fed to Alpha GO and thus it learnt to play).Unsupervised Learning is a type of learning when AI is not given human recorded data. The AI learns to play by playing against itself over and over again instead of depending on human information and unseen strategies ( E.g OpenAI).

2. Areas of Applications of AI

Computer Vision: Computer vision tasks include methods for acquiring, processing, analyzing and understanding digital images, and extraction of high-dimensional data from the real world in order to produce numerical or symbolic information, e.g. in the forms of decisions. It is typically used for Face recognition, Image retrieval, Gaming and controls, Surveillance, Biometrics, Smart cars

Natural Language Processing (NLP): Natural Language Processing is the technology used to aid computers to understand the human’s natural language. The ultimate objective of NLP is to read, decipher, understand, and make sense of the human languages in a manner that is valuable. It can be currently used as Chatbots, Sir, Alexa

Speech is listening to and understanding what a person says. Its current uses are: Google home, mobile devices applications (siri, cortana) currently they have similar capabilities revolve around scheduling, reminders, managing playlists, connecting with retailers, managing emails, making food orders, and online searches.

Robotics is creating robots to complete the work done by humanity in much less time with better efficiency. Robotics is through an AI program developed in a tightly knit environment.

Current use: The addition of AI adds a perception and decision-making instincts that need a decorated algorithm. artificial intelligent robot. For example, a heat receptor to prevent the robot from entering furnaces while operating as the robot would be handling heat-sensitive items. Also, a camera can add a perception vision to the robot. This will prevent it from colliding different elements in the factory; Software Robots have no existence in reality and are actually computer programs. For example, a web-crawler scans the website and categorises them for search. They keep track to new websites and collect specific data. It might include AI engines for better performance.

Expert systems is defined as an interactive and reliable computer-based decision-making system which uses both facts and heuristics to solve complex decision-making problems. Current applications are information management, hospitals and medical facilities, help desks management, employee performance evaluation, loan analysis etc.

3. Applications of Computer Vision

Image classification, Object detection, Scene Understanding, Image Captioning, Pose Estimation, Optical character Recognition, Image segmentation, Style Transfer, Image Colourisation, Image reconstruction, 3D reconstruction, Image synthesis

Summary and takeaways

During this WOW! attachment, I have realised the importance of AI in our society, and its potentials in developing devices and services that will bring more convenience to our lives. I have also learnt a lot of important basic ideas and skills related to AI, especially about computer vision. Through this project, I am now able to understand more AI-related information and make simple applications using computer vision knowledge.

One of my biggest takeaways is that we need to have passion for our work and never stop trying to make progress. I realised that there will always be problems along the way, but it is important that we never give up finding the solutions to it. The persistence demonstrated by my instructors and peers has encouraged me to face these difficulties with more confidence and patience. I have also gained more interest towards the related issues and I am inspired to explore more about these issues in the future.