GB2442512A - Motion detector using video frame differences with noise filtering and edge change accentuation - Google Patents
Motion detector using video frame differences with noise filtering and edge change accentuation Download PDFInfo
- Publication number
- GB2442512A GB2442512A GB0617785A GB0617785A GB2442512A GB 2442512 A GB2442512 A GB 2442512A GB 0617785 A GB0617785 A GB 0617785A GB 0617785 A GB0617785 A GB 0617785A GB 2442512 A GB2442512 A GB 2442512A
- Authority
- GB
- United Kingdom
- Prior art keywords
- change
- motion
- motion detector
- camera
- edges
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 230000001944 accentuation Effects 0.000 title 1
- 238000001914 filtration Methods 0.000 title 1
- 230000001629 suppression Effects 0.000 claims abstract description 5
- 238000004590 computer program Methods 0.000 claims abstract description 3
- 238000005096 rolling process Methods 0.000 abstract description 4
- 238000001514 detection method Methods 0.000 abstract description 3
- 238000001444 catalytic combustion detection Methods 0.000 description 5
- 230000035945 sensitivity Effects 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 210000001525 retina Anatomy 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G06T7/2033—
-
- G06T7/2053—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/254—Analysis of motion involving subtraction of images
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/14—Picture signal circuitry for video frequency region
- H04N5/144—Movement detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/14—Picture signal circuitry for video frequency region
- H04N5/147—Scene change detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/14—Picture signal circuitry for video frequency region
- H04N5/142—Edging; Contouring
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Closed-Circuit Television Systems (AREA)
Abstract
A motion detector comprises a computer program that uses a digital camera data stream to detect image scene changes; differences between the current and previous video frames are used, e.g. by subtracting (RGB) pixels. A filter can be used to reduce noise in the frame images, and edges of change may be accentuated by a change summation algorithm; that is, edges of true moving features - indicated by contiguous pixels, for example - score more highly than random pixel changes. The amount of noise suppression and the threshold for motion detection may be configured. Upon movement detection, the camera can record or stream live video or save images to a local or remote computer, and optionally alert an operator. Rows and columns are traversed and corrected change scores are summed providing a total change score; previous and current pixel changes are multiplied together so actual motion scores highest. The total sum of change is then used to calculate an average change threshold (rolling basis).
Description
MOTION DETECTOR
This invention relates to a camera motion detector.
Digital cameras are well known devices that convert light intensity into digital values. They are normally based on charge coupled devices (CDD) that are imprinted onto a chip that acts like a digital retina. Light is focused onto the chip using normal lenses, and the light intensity hitting each pixel is converted into a digital value.
There are monochrome and colour CCDs, although most these days are designed to detect human colour: red, green and blue. CCDs have been used for some time for various tasks such as security cameras. Recently however, CCDs have become ubiquitous since the cost of fabrication of the CCDs has fallen.
In the retail market, some cameras are portable and some are used as web cameras attached to a computer. Sometimes they are built into other devices such as mobile phones. Many cameras nowadays combine both standalone picture taking (and video clip recording) with web camera functionality.
When used as a web camera, the camera is usually attached to a computer and a software program grabs the pixels from the camera device (driver). The pixels are then used to display the image onto the screen or sent (via the internet) to another computer that displays the image on its screen (web conferencing).
Some web camera software also allows the recording of video clips and the taking of pictures. Most web cameras support a mode of 320 x 240 (red, green and blue) pixels at 15 frames per second. That means that the data stream is about 3.5 Megabytes per second. Hence, even with compression (e.g. MPEG) video clips are very large files.
When digital cameras are used in the security camera role, the digital data stream is sent to a computer and the images can be displayed on the screen by an operator. One computer can then be used to select to display one or more video streams from the cameras at its disposal.
The computer can also record the video stream if the operator so desires. Most security systems require continuous (periodic) monitoring by an operator who can decide to take appropriate action should something occur. Hence there is a limit as to how many cameras a single operator can cope with.
Many scenes are static scenes: that is, nothing moves in the scene. If nothing is happening, then the operator does not need to monitor the camera. Therefore it makes sense to have some method to detect motion such that the operator need only to monitor those cameras in which something is happening.
According to the present invention there is provided a motion detector whereby a computer program uses the data stream from a digital camera to detect changes in a scene.
Detecting the motion of objects is actually rather difficult because computers have no innate understanding of a scene. However, all the software is required to do is detect changes over time in the pixel intensities. Thus the program uses the differences between two or more frames (current plus previous) to detect motion.
Of course, the data from all cameras contains noise. Therefore a noise filter is used to suppress noise so that sensitivity to actual motion is improved. Different cameras exhibit different characteristics, and hence the noise filter can be configured using the software.
Actual motion is then detected by summing the (corrected) differences between each frame. Various algorithms can be used to excentuate actual motion. Although a simple summation does work, the sensitivity can be increased by introducing various assumptions about what constitutes actual motion.
If we take a scene of a blank background, and move a different colour ball across the front of the camera, the differences look like two crescents, one along the leading edge of motion, and one along the trailing edge. The edges comprise at least several contiguous pixels (of change). It is these edges of change that The detection (summation) algorithm is therefore designed to score edges of change higher than just random change. Hence the sensitivity to actual motion is increased because greater credence is placed on edges of change. Finally, once the sum passes a threshold value, motion is deemed to have occurred, and a motion event is fired.
The invention will now be described by way of example with reference to the accompanying figures in which: Figure 1 shows a screenshot of a typical scene in normal view.
Figure 2 shows a screenshot of a typical scene in diffing mode.
Figure 3 is the source code listing of the camera display/detector class.
Figure 4 is the source code of the camera renderer class.
Figure 5 is the source code of the camera controller class.
Figure 6 is the source code of the top level smooth frame class.
Figure 7 is the source code of the BMP file saving class.
The motion detector comprises a Java program which grabs pixels from a web camera attached to the computer using the standard 320x240 RGB byte array mode at 15 frames per second. Each video frame (or image) is then compared with the previous one to detect changes in the scene (on a pixel by pixel basis).
The first stage of comparison comprises noise suppression since there is normally quite a lot of (random) noise in each image which needs to be filtered out. In general, the amount of noise (red, green and blue) varies on a pixel by pixel basis.
This is because not only are there imperfections in the fabrication of the CCD, the noise actually varies with the intensity of light at each point (pixel). Thus a rolling" noise average needs to be calculated for each (red, green and blue) pixel.
This average is then used to suppress noise in the image by allowing each pixel value to vary by an amount proportional to the average noise, without being classed as a change. This is achieved by subtracting the average change (times a suitable proportion) from the actual change. The proportion will vary on a camera by camera basis and hence the software allows the proportion to be configured.
Although the noise suppression reduces the amount of random change considerably, simply summing the differences between the (previous and current) frames is not particularly sensitive. Remember that when an object moves in the scene, the edges of the object become highlighted by the differencing algorithm. It is these edges of change that we wish to accentuate so that moving objects can be detected with greater sensitivity.
The second stage of comparison is a summation algorithm that emphasises the edges of change. However, because the data rate (3.5 Megabytes per second) is very high, a fast and hence simple algorithm is required. Therefore two further assumptions are introduced: 1) The edges of change comprise contiguous areas of change.
2) Individual objects do not need to be tracked separately.
The initial noise reduction algorithm descends through the rows, traversing each horizontal line (per column). Thus it makes sense to have a second stage process that can be applied at the same time. A pure summation of the changes does work, but random noise and actual change score the same and hence is not particularly sensitive.
With random noise, it is very unlikely that two neighbouring pixels will fire at once, however in actual motion that is very likely. Therefore, for each pixel the previous change is multiplied by the current change. That means that two pixels of change (contiguous horizontally) are required to cause an addition to the change sum.
The algorithm is fast since the noise suppression and change summation can be performed in the same loops. And since actual motion scores much higher than random noise, the sensitivity is excellent. The threshold of motion for the sum can be adjusted on a camera by camera basis.
A "rolling" average total change score is kept, since it the relative amount of motion that is of actual importance. Thus the threshold is actually a proportion of this "rolling" average total change. When the current total change rises above the average total change times the threshold, motion is deemed to have been detected.
Once motion is detected the software then takes a picture by saving the current image into a (BMP) file. Of course, this is a simple example. Other actions could be performed. For example, a remote operator could be alerted over a network and the image streamed over the network (e.g. via RTP) for perusal.
Also, the images could be uploaded to a web site (e.g. via FTP) or sent to an email address or mobile phone so that the "operator" could peruse the scene whilst, for
example, on holiday.
Claims (6)
1) A motion detector comprising a computer program that uses the data stream from a digital camera to detect changes in a scene.
2) A motion detector according to claim 1 whereby the differences between the current and previous video frames are used to detect motion.
3) A motion detector according to claims 1 & 2 whereby a filter can be used to reduce noise in the frame images.
4) A motion detector according to claims 1 & 2 whereby the edges of change are accentuated by the change summation algorithm.
5) A motion detector according to claims 1, 2, 3 & 4 whereby the amount of noise suppression and the threshold of motion may be configured.
6) A motion detector according to claim I whereby when motion occurs the camera can record or stream live video or save still images to a local or remote computer, and optionally alert an operator.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0617785A GB2442512A (en) | 2006-09-09 | 2006-09-09 | Motion detector using video frame differences with noise filtering and edge change accentuation |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0617785A GB2442512A (en) | 2006-09-09 | 2006-09-09 | Motion detector using video frame differences with noise filtering and edge change accentuation |
Publications (2)
Publication Number | Publication Date |
---|---|
GB0617785D0 GB0617785D0 (en) | 2006-10-18 |
GB2442512A true GB2442512A (en) | 2008-04-09 |
Family
ID=37232673
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB0617785A Withdrawn GB2442512A (en) | 2006-09-09 | 2006-09-09 | Motion detector using video frame differences with noise filtering and edge change accentuation |
Country Status (1)
Country | Link |
---|---|
GB (1) | GB2442512A (en) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2959897A1 (en) * | 2010-05-10 | 2011-11-11 | Web Securite Systeme | Internet protocol camera configuring method for Ethernet network, involves recovering public Internet protocol address of camera automatically by application server, and sending router port associated to camera to application server |
EP2570989A2 (en) * | 2010-04-23 | 2013-03-20 | Flir Systems AB | Resolution and contrast enhancement with fusion in low-resolution IR images |
US9171361B2 (en) | 2010-04-23 | 2015-10-27 | Flir Systems Ab | Infrared resolution and contrast enhancement with fusion |
EP3016383A1 (en) | 2014-11-03 | 2016-05-04 | Axis AB | Method, device, and system for pre-processing a video stream for subsequent motion detection processing |
US9706138B2 (en) | 2010-04-23 | 2017-07-11 | Flir Systems, Inc. | Hybrid infrared sensor array having heterogeneous infrared sensors |
US9716843B2 (en) | 2009-06-03 | 2017-07-25 | Flir Systems, Inc. | Measurement device for electrical installations and related methods |
US9843743B2 (en) | 2009-06-03 | 2017-12-12 | Flir Systems, Inc. | Infant monitoring systems and methods using thermal imaging |
US9848134B2 (en) | 2010-04-23 | 2017-12-19 | Flir Systems, Inc. | Infrared imager with integrated metal layers |
US10044946B2 (en) | 2009-06-03 | 2018-08-07 | Flir Systems Ab | Facilitating analysis and interpretation of associated visible light and infrared (IR) image information |
WO2020215227A1 (en) * | 2019-04-23 | 2020-10-29 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Method and system for non-false motion detection |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0025730A1 (en) * | 1977-04-14 | 1981-03-25 | ETAT FRANCAIS repr. par le Secrétaire d'Etat aux Postes et Télécomm. et à la Télédiffusion (CENT. NAT. D'ETUDES DES TELECOMM.) | Movement detector for systems for reducing noise visibility in television pictures |
GB2266023A (en) * | 1992-03-31 | 1993-10-13 | Sony Broadcast & Communication | Motion dependent video signal processing |
GB2277845A (en) * | 1993-05-03 | 1994-11-09 | Philips Electronics Nv | Monitoring system |
GB2308262A (en) * | 1995-12-16 | 1997-06-18 | Paul Gordon Wilkins | Method for analysing the content of a video signal |
EP1383309A2 (en) * | 2002-07-16 | 2004-01-21 | Broadcom Corporation | Adaptive motion detection and control |
WO2004054223A1 (en) * | 2002-12-12 | 2004-06-24 | Patria Ailon Oy | Arranging motion detection in mobile station |
-
2006
- 2006-09-09 GB GB0617785A patent/GB2442512A/en not_active Withdrawn
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0025730A1 (en) * | 1977-04-14 | 1981-03-25 | ETAT FRANCAIS repr. par le Secrétaire d'Etat aux Postes et Télécomm. et à la Télédiffusion (CENT. NAT. D'ETUDES DES TELECOMM.) | Movement detector for systems for reducing noise visibility in television pictures |
US4352126A (en) * | 1977-04-14 | 1982-09-28 | Jacques Poncin | System for reducing visible noise in television images |
GB2266023A (en) * | 1992-03-31 | 1993-10-13 | Sony Broadcast & Communication | Motion dependent video signal processing |
GB2277845A (en) * | 1993-05-03 | 1994-11-09 | Philips Electronics Nv | Monitoring system |
GB2308262A (en) * | 1995-12-16 | 1997-06-18 | Paul Gordon Wilkins | Method for analysing the content of a video signal |
EP1383309A2 (en) * | 2002-07-16 | 2004-01-21 | Broadcom Corporation | Adaptive motion detection and control |
WO2004054223A1 (en) * | 2002-12-12 | 2004-06-24 | Patria Ailon Oy | Arranging motion detection in mobile station |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9716843B2 (en) | 2009-06-03 | 2017-07-25 | Flir Systems, Inc. | Measurement device for electrical installations and related methods |
US10044946B2 (en) | 2009-06-03 | 2018-08-07 | Flir Systems Ab | Facilitating analysis and interpretation of associated visible light and infrared (IR) image information |
US9843743B2 (en) | 2009-06-03 | 2017-12-12 | Flir Systems, Inc. | Infant monitoring systems and methods using thermal imaging |
US9706138B2 (en) | 2010-04-23 | 2017-07-11 | Flir Systems, Inc. | Hybrid infrared sensor array having heterogeneous infrared sensors |
EP2570988A3 (en) * | 2010-04-23 | 2013-08-28 | Flir Systems AB | Resolution and contrast enhancement with fusion in IR images |
US9171361B2 (en) | 2010-04-23 | 2015-10-27 | Flir Systems Ab | Infrared resolution and contrast enhancement with fusion |
US11514563B2 (en) | 2010-04-23 | 2022-11-29 | Flir Systems Ab | Infrared resolution and contrast enhancement with fusion |
US10249032B2 (en) | 2010-04-23 | 2019-04-02 | Flir Systems Ab | Infrared resolution and contrast enhancement with fusion |
US9471970B2 (en) | 2010-04-23 | 2016-10-18 | Flir Systems Ab | Infrared resolution and contrast enhancement with fusion |
US10110833B2 (en) | 2010-04-23 | 2018-10-23 | Flir Systems, Inc. | Hybrid infrared sensor array having heterogeneous infrared sensors |
EP2570989A2 (en) * | 2010-04-23 | 2013-03-20 | Flir Systems AB | Resolution and contrast enhancement with fusion in low-resolution IR images |
EP2570989A3 (en) * | 2010-04-23 | 2013-09-04 | Flir Systems AB | Resolution and contrast enhancement with fusion in low-resolution IR images |
US8565547B2 (en) | 2010-04-23 | 2013-10-22 | Flir Systems Ab | Infrared resolution and contrast enhancement with fusion |
US9848134B2 (en) | 2010-04-23 | 2017-12-19 | Flir Systems, Inc. | Infrared imager with integrated metal layers |
FR2959897A1 (en) * | 2010-05-10 | 2011-11-11 | Web Securite Systeme | Internet protocol camera configuring method for Ethernet network, involves recovering public Internet protocol address of camera automatically by application server, and sending router port associated to camera to application server |
US9628751B2 (en) | 2014-11-03 | 2017-04-18 | Axis Ab | Method, device, and system for pre-processing a video stream for subsequent motion detection processing |
CN105574890B (en) * | 2014-11-03 | 2019-02-12 | 安讯士有限公司 | Preprocessed video stream is used for the methods, devices and systems of subsequent motion detection processing |
CN105574890A (en) * | 2014-11-03 | 2016-05-11 | 安讯士有限公司 | Method, device, and system for pre-processing a video stream for subsequent motion detection processing |
EP3016383A1 (en) | 2014-11-03 | 2016-05-04 | Axis AB | Method, device, and system for pre-processing a video stream for subsequent motion detection processing |
WO2020215227A1 (en) * | 2019-04-23 | 2020-10-29 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Method and system for non-false motion detection |
Also Published As
Publication number | Publication date |
---|---|
GB0617785D0 (en) | 2006-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
GB2442512A (en) | Motion detector using video frame differences with noise filtering and edge change accentuation | |
KR101945194B1 (en) | Image processing apparatus, image processing method, and program | |
TWI459324B (en) | Modifying color and panchromatic channel cfa image | |
KR101031386B1 (en) | Automatic flicker correction in an image capture device | |
US8115818B2 (en) | Imaging device and image processing method of same | |
CN105262954B (en) | The method and apparatus that triggering camera focuses automatically | |
JP5427935B2 (en) | Camera and method for optimizing the exposure of an image frame in a series of image frames that capture a scene based on the level of motion in the scene | |
US20110181752A1 (en) | Imaging element and imaging device | |
KR20080023745A (en) | Imaging device | |
JP2004522372A (en) | Spatio-temporal adaptive noise removal / high-quality image restoration method and high-quality image input device using the same | |
EP2008446A2 (en) | Adjustable neutral density filter system for dynamic range compression from scene to imaging sensor | |
CN106488115A (en) | Control device and the control method of image sensing apparatus | |
US20170064338A1 (en) | Method of pre-processing digital images, and digital image preprocessing system | |
JP2010136224A (en) | Imaging apparatus and imaging method | |
JP2007082044A (en) | Imaging method and imaging apparatus | |
JP2009159559A (en) | Image capturing device and program thereof | |
CN114666492A (en) | Camera and method for facilitating installation of the same | |
WO2010116400A1 (en) | Object movement detection device and method | |
JP2008005365A (en) | Imaging device | |
JP2007323635A (en) | Recursive filtering of video image | |
KR101941266B1 (en) | CCTV Image Providing System for Ultra-Low Light | |
JP5300413B2 (en) | Motion vector detection device, motion vector detection method, imaging device, and program | |
JP2010226646A (en) | Video processing apparatus | |
JP4288954B2 (en) | Defect detection circuit and defect detection method | |
JP4877165B2 (en) | Monitoring system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WAP | Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1) |