Instead of sharing links to other websites and video links. I have decided to practice writing original post based on my knowledge and experience. So here it goes…

I am an Embedded System Engineer by profession but I am very passionate and curious to understand about embedded computer vision as I believe that it is the future of our industrialize society and more work should be done to promote this exciting field of research in practical setting. My intention is to write this article to outline the importance of computer vision based application in industrial as well as in consumer-cantered environment.

Industrial automation allows factory owners to increase productivity and profit by eliminating the human factor which tends to be expensive and unreliable. In modern industrial assembly and quality control processes, that provide one of the crucial factors for the competitiveness of industry in general, there is a strong need for advanced robot-based object detection and recognition, object grasping and for the capability to perform assembling operations in non-structured environments with randomly positioned objects. Vision-based robotic assembly and quality control systems that have been a topic of continued research interest for almost four decades; have now matured to a point where they can be effectively applied to advanced robot-based assembly and quality control tasks.

Figure 1 - Typical vision based system

As advanced robotic systems are becoming more popular and widespread in many industrial assembly settings, the need for reliable operation with the least possible amount of downtime is a common, expected demand. Traditional assembly robots are programmed to pick up a part from the exact same location every time and if the part is even slightly out of the place, the robot will fail to pick that part. Significant advantages can be realized when these robots are coupled with vision systems. Modern robot vision configurations with advanced recognition systems are used more often in later time to adjust the coordinates from where the robot expected to find the object to where it actually is located. This can be achieved with using only a single camera, multiple cameras or different combination systems. Cameras, computer and software work together with the robot to adjust the robot’s position, allowing retrieval of the part. One of the examples in this direction is the continued improvements to 3D robot vision. The advances in 3D vision have made robots adept at recognizing a changing environment and adapting to it. This flexibility has allowed robots to work on projects that lack precise consistency, something that was very difficult for a robot to do in the past. Nowadays, robotic vision research is expanding into many new areas. Robots can now pick variously shaped objects from an indexing conveyor, eliminating the need for part designated in-feed systems and machines.

Figure 2 - 3D vison system for inspecting goods by Cognex

There should be no doubt that we live in a very exciting time, thanks to Moore’s Law processors are getting cheaper, faster and smaller, which means that we are now run complex processor intensive application on a low cost processor such as ARM Cortex. ARM Cortex is one of the many microprocessors that are used to power our mobile devices. The Smartphone we carry in our pocket carry enough computer power to run any complex application, given that the applications are well designed and are optimised for the targeted system. It was this notion that led me to work toward my MSc design project on designing a proof-of-concept vision based obstacle detection and avoidance system [link below].

While researching toward my MSc project, I came across an article written by Bruce G. Batchelor (n.d.), a machine and computer vision expert from Cardiff University, He has list a number of items that an embedded vision developer should take into an account when designing a vision based system. According to Batchelor (n.d), cost, dedicated electronic hardware for high speed processing, lighting, ease of use and reliable operation are some of the most important and fundamental aspect of designing a vision based system for factory setting. Batchelor’s article was used as a checklist to test and evaluate my design project as it consist of methods and techniques which should be employed to design an effective vision based robot. Moreover, the article also discusses an important different between the two terms: Machine Vision and Computer vision. The article also states that Machine Vision and Computer vision systems need to be treated individually since it satisfies different criteria but these are used interchangeable by marketing to sell the product. These are explained in the table below. However, to make this article simple to understand, I have used the term computer and machine vision interchangeably.

Table 1 - The different between a machine vision and computer vision system

Machine vision based systems are not only targeted for industrial setting. Companies like Microsoft, Google, and Apple and so on, are working toward a vision based system that would allow uses to interact with the virtual world by means of Augmented Reality. Systems like Kinect, Microsoft VR glasses and newly patented 3D system by Apple would allow gesture based recognition for consumer products mostly for Smartphone. These systems will allow the users get more personal with their devices and would make Ray Kurzwell’s idea of Singularity a possible reality.

All in all, I personally believe that computer vision based systems are the future of consumer electronics and industrial automation. More work should be done to promote this area of specialization. Currently, I am researching toward Stereo Vision based system that allows computer system to calculate depth information from two identical cameras placed side by side. The idea is similar to how humans use their eyes to locate and judge the distance of an object. If you are interested to talk, get in touch. I am always open to new ideas.

Reference: