We are independent & ad-supported. We may earn a commission for purchases made through our links.
Advertiser Disclosure
Our website is an independent, advertising-supported platform. We provide our content free of charge to our readers, and to keep it that way, we rely on revenue generated through advertisements and affiliate partnerships. This means that when you click on certain links on our site and make a purchase, we may earn a commission. Learn more.
How We Make Money
We sustain our operations through affiliate commissions and advertising. If you click on an affiliate link and make a purchase, we may receive a commission from the merchant at no additional cost to you. We also display advertisements on our website, which help generate revenue to support our work and keep our content free for readers. Our editorial team operates independently of our advertising and affiliate partnerships to ensure that our content remains unbiased and focused on providing you with the best information and recommendations based on thorough research and honest evaluations. To remain transparent, we’ve provided a list of our current affiliate partners here.
Technology

Our Promise to you

Founded in 2002, our company has been a trusted resource for readers seeking informative and engaging content. Our dedication to quality remains unwavering—and will never change. We follow a strict editorial policy, ensuring that our content is authored by highly qualified professionals and edited by subject matter experts. This guarantees that everything we publish is objective, accurate, and trustworthy.

Over the years, we've refined our approach to cover a wide range of topics, providing readers with reliable and practical advice to enhance their knowledge and skills. That's why millions of readers turn to us each year. Join us in celebrating the joy of learning, guided by standards you can trust.

What Is Optical Flow?

By Mal Baxter
Updated: Feb 19, 2024
Views: 10,057
Share

Optical flow describes computerized tracking of moving objects by analyzing content differences between video frames. In a video, both object and the observer may be in motion; the computer can locate cues that mark the boundaries, edges, and regions of individual still images. Detecting their progressions allows the computer to follow an object through time and space. The technology is employed in industries and research, including the operation of unmanned aerial vehicles (UAV) and security systems.

Two primary methods generate this computer vision: gradient-based and feature-based motion detection. Gradient-based optical flow measures changes in image intensity through space and time. It scans a dense flow field plane. Feature-based flows overlay edges of objects within frames to mark progress.

This technique resembles camcorder image stabilization, allowing a computed field of vision to be locked into the frame despite camera shake. Optical flow algorithms calculate matches between images in sequence. The computer divides each image into square grids. Overlaying two images permits comparisons to find the best matches of squares. When the computer locates a match, it draws a line between the points of difference, sometimes called needles.

Algorithms work systematically from coarse to fine resolutions. This permits motion tracking between images with differences in resolution. The computer does not recognize objects, but only detects and follows those characteristics of objects that can be compared between frames.

Computing optical flow vectors can detect and track objects and also extract an image's dominant plane. This can aid in robotic navigation and visual odometry, or robot orientation and position. It notes not only objects but also surrounding environs in three dimensions, and gives robots more lifelike spatial awareness. Vectors computed in a plane allow the processor to infer and respond to movements extracted from the frames.

Some weaknesses of the optical flow technique include data loss that results from squares the computer cannot match between images. These unmatched areas remain vacant and create planar voids, reducing accuracy. Clear edges or stable elements like corners contribute to flow analysis.

Detailed factors may be obscured if the observer is also in motion, since it can't distinguish certain elements from frame to frame. The analysis divides motion into apparent global flow and localized object motion, or egomotion. Spatial-temporal changes in edges or image intensity get lost in the motion of the camera and the global flow of the moving environment. Analysis is enhanced if the computer can eliminate the effect of the global flow.

Share
WiseGeek is dedicated to providing accurate and trustworthy information. We carefully select reputable sources and employ a rigorous fact-checking process to maintain the highest standards. To learn more about our commitment to accuracy, read our editorial process.

Editors' Picks

Discussion Comments
By SkyWhisperer — On Nov 12, 2011

@nony - I have image stabilization on my camera, but honestly I can’t really tell the difference with or without it. It must be useful for only limited camera movement. I can’t see how the camera could be effective in determining optical flow from my rather shaky handheld motions.

By nony — On Nov 12, 2011

@Mammmood - I think optical flow sensors for robots probably use gradient-based detection, which uses image intensity. I say this because robots (some of them) are used to detect the motion of other human beings.

The best way to do this is to look for infrared radiation, since humans generate more body heat in a plane of vision than regular inanimate objects. That radiation will be sure to register as intensified images and the robots can latch on to that and begin tracking the object.

By Mammmood — On Nov 11, 2011

Optical flow sounds very similar to motion detection. I am not an expert by I’ve found a few motion detection libraries on the Internet that I’ve been able to use to build my own programs.

Basically motion detection compares two or more frames of an image to determine if there are any differences. It sets a threshold for variances, so if the differences are above a certain threshold then that means that motion has taken place.

To extend the use to optical flow applications, once the computer identifies that motion has taken place, it can then define boundaries for the object and begin tracking it on a frame by frame basis. I think they use this technology in security cameras in addition to the other applications mentioned in this piece.

Share
https://www.wise-geek.com/what-is-optical-flow.htm
Copy this link
WiseGeek, in your inbox

Our latest articles, guides, and more, delivered daily.

WiseGeek, in your inbox

Our latest articles, guides, and more, delivered daily.