Don’t choose computer vision if…
Last Updated on March 31, 2024 by Editorial Team
Author(s): Enos Jeba
Originally published on Towards AI.
you are a ChatGPT programmer
In this blog, we will understand Why Computer Vision is just not about programming?
Multi-disciplinary field
You cannot just focus on one technology and get away with it.
Computer vision has its feet in multiple fields. It beautifully manages to connect geometry, linear algebra, cameras, networking, and to some extent User Experience and Design.
You would be somebody as Jack of all Trades, Master of None.
When you are thinking of a computer vision project, you will be dealing with cameras stuck on a wall and other corners of the room. Each camera will come with its own set of lenses which can view the world only up to a certain angle. The images it captures will also be based on the sensor on it. So, for your desired outcome with proper accuracy, you will have to place the optimal position with the calculated point of view.
The solution if required in real-time, should be capable of accessing the feed analyzing it with output predictions, and doing the necessary actions afterward.
The data from the camera will be of full resolution, which means more data. More data means you will be choking your model with big images and this will cause your model to take more time with each inference, Thus making your solution real-time.
Not to forget, slow inference will also result in data loss as the frames waiting for inference will be discarded as soon as there is no memory to hold it.
Thus, we cannot move in one direction, you have to spread your tentacles and think about various viewpoints to approach a solution.
Researchers vs Practitioners
The two roads in Computer Vision, which one to choose?
pub.towardsai.net
ChatGPT programmer
With the introduction of generative AI, new developers think they can get away with ChatGPT code. In the case of Computer Vision, it’s better not to use ChatGPT.
Computer Vision is mostly coded from scratch, and the reason is the level of controller we can reach on the hardware level or the level of control we have on the flow of code.
Optimization of the solution is also an important checkpoint that cannot be skipped.
ChatGPT may provide your prompts about this, and the answer would also be convincing enough, but you cannot use that code as it won’t be optimized as per our requirements.
ChatGPT also manages to snatch your thinking power or reasoning skills, which is essential for optimization. So, when you sit for optimization, you probably won’t have problem solving skills as required.
You can read below how ChatGPT will make you dumb
How User Experience Ruined the World
and Ai is helping it!
medium.com
Don’t want to step out of scope.
Stepping out of the box to optimize your solution is an essential part of computer vision.
You may have to explore fields completely unreleated to you to solve the problem at hand. You will have to understand the business requirements and study their existing solution.
Once you understand their workflow, It will be easier for you to come up with solutions. It will be easier for you to integrate your solution to their system with minimal confusion and this will allow seamless extension to ai.
You would also be entering into a field, such as user experience, during deployments. People are scared of computers, especially when they don’t know how it works. You may have to keep it user-friendly for better usage.
Let’s say you are registering people’s face for your algorithm to recognize them. Assuming you have handed them a app to capture their face, user’s have no idea how their face will be trained with ai. They will just click a random picture and hit save.
If you want a good picture of their face, You could essentially add a face detection layer to help people understand their face has been detected. Additionally, you can also draw a circle at the center to minimize distraction and the image in circle will also help the user understand how much of their face is well lit.
Now, adding small things like this itself makes your dataset strong and detailed, which further will enhance your model for better detection. You can see on the blog below How apple did this?
Revolutionary Computer Vision
How did they do it?
pub.towardsai.net
Don’t want to experiment
Experiments are the backbone of Computer Vision. If you are not ready to fiddle around with images, this may not be the field for you.
Feature extraction is another important part of model training. When a model is trained with the right features, it will perform better and also provide us with the desired results.
Selecting the features will require tons of experiments to get it right. Things affecting your data would be motion blur, noise etc. But these impurity will be existing on different amount in each of your image and only through experiments will you be able to understand the correct threshold to extract the correct feature without impurity.
Hate automation!
Experiment’s is the backbone of Computer Vision. If you are not ready to fiddle around with images, this may not be the field for you.
Feature extraction is another important part of model training. When a model is trained with the right features, it will perform better and also provide us with the desired results.
Selecting the features will require tons of experiments to get it right. Things affecting your data would be motion blur, noise etc. But these impurity will be existing on different amount in each of your image and only through experiments will you be able to understand the correct threshold to extract the correct feature without impurity.
Conclusion
Those desiring to specialize in computer vision must be willing to push themselves outside of their comfort zone, accept experimentation, and think imaginatively in order to incorporate ideas into various systems.
Read these two posts to learn more about how to get started with computer vision.
How to See Like a Machine
A Guide to Computer Vision Tools
enosjeba.medium.com
Computer Vision
Things I wish I knew before I started.
enosjeba.medium.com
Join thousands of data leaders on the AI newsletter. Join over 80,000 subscribers and keep up to date with the latest developments in AI. From research to projects and ideas. If you are building an AI startup, an AI-related product, or a service, we invite you to consider becoming a sponsor.
Published via Towards AI