Video Image Processing: Algorithms for Motion Detection

Click For Summary

Discussion Overview

The discussion revolves around algorithms for motion detection in video image processing, specifically focusing on identifying human movements such as arm or leg motions and distinguishing between different actions like running. The conversation touches on various methodologies, including traditional algorithms and neural networks, as well as practical applications in commercial products.

Discussion Character

  • Exploratory
  • Technical explanation
  • Debate/contested

Main Points Raised

  • One participant inquires about algorithms capable of detecting specific human movements, such as whether a person is moving their right arm or feet.
  • Another participant discusses the limitations of cameras and the potential for algorithms to recognize patterns in images, suggesting the use of Fourier transforms to create "fingerprints" for distinguishing between different figures.
  • A participant highlights the potential of neural networks for this type of image recognition, contrasting the computational challenges faced by computers compared to human cognitive abilities.
  • Further elaboration on neural networks mentions the reduction of pixel inputs to harmonics to facilitate decision-making, raising questions about the configuration of neural networks for effective learning.
  • One participant confirms the existence of such algorithms in commercial products, mentioning Microsoft's XBox and Kinnect, and notes the variety of techniques used in the field, including decision trees and open-source libraries like OpenCV.

Areas of Agreement / Disagreement

Participants express differing views on the effectiveness and methodologies of algorithms for motion detection. While some agree on the potential of neural networks, others emphasize traditional techniques and the complexity of accurately recognizing human movements. The discussion remains unresolved regarding the best approach to achieve reliable motion detection.

Contextual Notes

Participants reference various techniques and tools without reaching a consensus on the most effective method for motion detection. There are also mentions of the challenges in training neural networks and the need for careful configuration.

btb4198
Messages
570
Reaction score
10
Is there a computer algorithm that can determine if a person it moving their right arm or there feet, or if they are running or not ?
 
Technology news on Phys.org
I guess there are programs that can determine it ( not algorithms ).

The only thing a camera/computer can see is an amount of pixels with different colors within a frame. You can make an algorithm that recognizes some patterns in the image, like an edge: Scanning the image horizontally and finding a sudden color change along a vertical line, it has found a vertical edge. In this way you can convert the image into a cartoon:
figur5.gif

There are a lot of ways to recognize a figure as a person. One way is to Fourier transform the outline of the figure, regarding the edges as a series of complex coordinates. The Fourier transform is a "finger print" of a person. Adding a tail to the right figure, the Fourier transform will change and become a finger print of a dog. The "smart" charasteristic is, that if you cancel the 1. harmonic of the right figure, you can rotate him and let him crawl uphill or downhill: He will still be recognized as a person because the angle doesn't matter when the 1. harmonic is missing.

So the idea is to sketch a lot of persons/dogs in various positions, make "finger prints" and tell the computer: this is a person and this is a dog. When the computer has such a look-up-table of finger prints and sees a person or dog, it can distinguish a dog/person by closest match.

To distisguish left/right arm is more complicated: Am I seeing the front or the back of a person?
 

Attachments

  • ikon taendstikmand.jpg
    ikon taendstikmand.jpg
    1.2 KB · Views: 466
This is the type of things that neural networks will be good at. Computers are not great at this yet, there is a joke in computer science that highlights the differences between what computers and the brain are good at.

Boss: I need a program that takes the entire literary history of humanity, and maps out the use of pronouns throughout history.
Engineer: Sure, give me twenty minutes.

Boss: I need a program that tells me if this picture is of a dog.
Engineer: Sure, give me five years and a dozen research assistants.
 
newjerseyrunner said:
This is the type of things that neural networks will be good at.
Well, reducing 6 million pixels as inputs in a neural network, to say 200 harmonics will make it easier for the network to make a decision.

Often neural networks are trained by the "steepest chase" method. How will a neural network by itself find a steepest chase?
You are the one to configure groups of neurons and the network between them. Where will you start amongst 6 million pixels?
 
Yes, such algorithms exist and are present in commercial products -- such as Microsoft's XBox and Kinnect system. Note that neural networks can be used, but so are various forms of decision trees with Harr-like features and other techniques. You may want to find a general text on Computer Vision / Machine Vision as it is a very broad and active area of research and there are open source libraries like OpenCV that may interest you. There are even javascript implementations of some algorithms like face detection -- see trackingjs.com
 

Similar threads

  • · Replies 11 ·
Replies
11
Views
2K
  • · Replies 6 ·
Replies
6
Views
3K
  • · Replies 9 ·
Replies
9
Views
2K
  • · Replies 13 ·
Replies
13
Views
6K
Replies
5
Views
2K
  • · Replies 10 ·
Replies
10
Views
2K
  • · Replies 5 ·
Replies
5
Views
2K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 19 ·
Replies
19
Views
2K
  • · Replies 1 ·
Replies
1
Views
2K