Introduction to Computer Vision — My Learning Journey

1. Introduction

Hello everyone, welcome to my blog!

Today, I want to share my learning journey in Artificial Intelligence, especially Computer Vision.

In our previous lessons, I learned about Natural Language Processing, which helps computers understand human language. This time, I started learning about Computer Vision, which helps computers understand images and videos.

During this lesson, I explored how a computer processes an image, how it recognizes objects, and how we can use AI to understand visual information.

I also tried some practical activities using a computer vision notebook. Let me take you through what I learned, what I tried, and what I discovered.

2. What Is Computer Vision?

First, let me explain what Computer Vision means.

Computer Vision is a field of Artificial Intelligence that helps computers extract meaning from images and videos.

For example, when I look at a photo, I can easily recognize a person, a car, a cat, or a cup of coffee. But a computer does not see these things the same way I do. It receives numerical information from the image and uses a model to recognize patterns and make predictions.

The main questions Computer Vision tries to answer are:

  • What is in the image?
  • Where is it located?
  • What is happening in the video?

3. How Does a Computer See an Image?

Next, I learned that an image is made up of tiny squares called pixels.

Each pixel contains numerical values representing its color. For a normal color image, we use three channels: Red, Green, and Blue, also known as RGB.

For example, a small image with 400 pixels in height and 600 pixels in width contains 720,000 color values because we multiply 400 by 600 by 3.

This means that a computer starts with numbers, and the challenge is to use those numbers to understand what the image represents.

4. What I Learned About Filters

I learned about filters and how they help computers find patterns in images.

I tried to understand how a filter works by looking at a small grid of numbers called a kernel. The filter moves across the image and performs mathematical calculations using nearby pixels.

I discovered that different filters have different purposes. For example, a blur filter smooths an image, while a Sobel filter helps detect edges.

I also learned that the Sobel X filter detects changes in brightness from left to right, which helps identify vertical edges. The Sobel Y filter detects changes from top to bottom, helping identify horizontal edges.

This showed me that even simple mathematical operations can help a computer find useful visual information.

5. What I Learned About Classification, Object Detection, and Segmentation

After learning about pixels and filters, I moved to three important tasks in Computer Vision: classification, object detection, and segmentation.

5.1 Image Classification

First, I learned about image classification.

Image classification means giving one label to an entire image. For example, if I upload a photo of a cat, a classification model may predict that the image contains a cat.

I learned that the model analyzes the image and predicts which category best matches what it sees.

I discovered that classification is useful when we want to know what an image contains, but we do not need to know the exact location of each object.

5.2 Object Detection

Next, I learned about object detection.

Object detection helps a computer identify objects in an image and show where they are located.

I tried to understand how the model uses bounding boxes. A bounding box is a rectangle drawn around a detected object.

For example, if an image contains a bus and several people, an object detection model may identify the bus and the people and draw boxes around them. It can also display labels and confidence scores for its predictions.

I discovered that object detection gives us more information than classification because it tells us both what the model detects and where the objects are located.

5.3 Image Segmentation

After object detection, I learned about image segmentation.

Segmentation identifies which pixels belong to an object or a region of an image.

For example, instead of drawing a rectangle around a person, a segmentation model can mark the pixels that form the person's body.

I learned that segmentation provides more detailed information about the shape of an object than a simple bounding box.

I discovered that these three tasks have different purposes: classification gives a label to an image, object detection identifies objects and their locations, and segmentation identifies the pixels belonging to objects.

6. Trying My Own Photo

After learning about classification, object detection, and segmentation, I reached the part where I could try an image myself.

I learned that I could change the image and observe how a Computer Vision model analyzes it.

When I upload a photo, the computer does not understand it in the same way a human does. It processes numerical values representing the image's pixels and uses a trained model to make predictions.

I discovered that different models can give different types of results. A classification model predicts what the image contains, an object detection model identifies objects and their locations, and a segmentation model marks the pixels belonging to objects.

This part helped me connect what I had learned in theory with practical experiments.

I also learned that choosing a clear image can help me understand the model's predictions more easily.

7. When Computer Vision Models Fail

One of the most interesting things I learned was that Computer Vision models do not always give correct answers.

Before this experiment, I might have thought that a trained model could recognize objects correctly in every image. However, I discovered that changing the appearance or quality of an image can affect the model's predictions.

7.1 The Original Image

In the original image used in our notebook demonstration, the object detection model detected one bus and four people.

This gave me an example of how a model can identify several objects in one image and show their locations using bounding boxes.

7.2 A Very Dark Image

Next,i tested a very dark version of the image.

The model made a mistake by detecting a skateboard that was not actually present.

I learned that poor lighting can make it difficult for a model to recognize objects correctly. It may produce a false detection because the image does not provide clear visual information.

7.3 An Upside-Down Image

I also tested an upside-down version of the image.

In this experiment, the model failed to detect the bus.

This helped me understand that changing the orientation of an image can affect a model's ability to recognize objects.

7.4 A Low-Resolution Image

Finally, we tested a low-resolution version of the image.

The model did not detect any objects.

I learned that when an image loses too much detail, the model may struggle to identify what is inside it.

7.5 What I Discovered

From these experiments, I discovered that Computer Vision models have limitations.

Their predictions can be affected by lighting, image orientation, and image resolution.

I also learned that we should not automatically trust every prediction made by an AI model. We need to examine its results and understand when it can make mistakes.

This is important because Computer Vision is used in real-world applications such as agriculture, healthcare, security, and environmental conservation. In these areas, incorrect predictions can have serious consequences.

8. My Final Conclusion

This is the end of my introduction to Computer Vision.

During this learning journey, I learned how computers process images, how filters help us detect edges, and how AI models recognize objects using classification, object detection, and segmentation.

I also discovered that Computer Vision models can make mistakes when images are dark, upside down, or have low resolution.

My biggest lesson is that Artificial Intelligence is powerful, but we should understand its limitations and test its predictions carefully.

I enjoyed learning these concepts through practical experiments because they helped me connect theory with real-world applications.

This is only the beginning of my journey in Artificial Intelligence. I look forward to learning more, building projects, and discovering how Computer Vision can solve real-world problems, especially in Africa.

Thank you for reading my vlog and following my learning journey.

See you in my next blog!