[0001] The present invention relates to a method of image analysis and an apparatus for
carrying out the method. The invention is particularly, although not exclusively,
suited to surveillance applications.
[0002] US Patent 4 249 207 relates to a surveillance system in which an image received by
a television camera is divided electronically into an array of cells or 'tiles'. The
tiles are dimensioned to allow for perspective, so that they each cover substantially
the same area regardless of the particular part of the image to which they respectively
correspond. This is illustrated in Figure 1 of the accompanying drawings. The system
monitors each cell to determine whether a potentially significant event is occurring
in each cell. If such an event is detected in one cell, neighbouring cells are checked
and if an event is occurring in, say two, of these, it is taken as indicative of a
track of a moving person or object of interest.
[0003] Occurrence of a potentially significant event in a cell is determined according to
changes in the average light intensity received from that cell. Each cell consists
of an array of pixels. These are analysed line by line and the integrated incident
light intensity for that cell is computed. Over time, a weighted comparison is continuously
made between the average present intensity and the average intensity in a previous
frame. If the result of this comparison exceeds a predetermined threshold, then that
is taken as a potentially significant event occurring in that cell.
[0004] The aforementioned US Patent states that this system provides good discrimination
against false events such as moving cloud shadows. However, that system is best suited
to generally empty scenes such as the area between two perimeter fences sited in an
open landscape. It is much less able to discriminate against false events in a busy
scene, such as may occur in an urban environment.
[0005] Specific disadvantages of this known system are:-
a. It is overly sensitive to certain small variations in the image e.g. due to weather
changes, clouds, tree movement, etc. This leads to a large number of false alarms
resulting from normal changes in a scene;
b. it has low sensitivity to certain large variations in the image, eg. a small light
change spread across a tile has the same effect as a large light change in part of
a tile. This can cause some events of interest to be missed; and
c. large changes in the image desensitise the system for a while. As a result, a return
to a normal scene will cause an activity alarm, and this reduces the ability to track
movement and identify the shape of objects, since tiles vacated by a slow object have
the same activity as a tile being entered by the object.
[0006] The above problems explain why this existing system is only effective in scenes with
very little variation in light levels. In fact it is only effective for monitoring
indoor scenes or outdoor scenes where there is no expectation of movement, e.g. dead
zones between fences surrounding a prison.
[0007] The present invention in its various aspects has a significant advantage over that
described in the aforementioned US patent in that it provides the ability to 'learn'
the nature of a complex backround. This enables it to discriminate better for genuine
events of interest in an otherwise crowded or busy scene.
[0008] Another previously known system called 'WISARD' is described by I. Aleksander et
al in Sensor Review, July 1984, pp 120-124. Pixels within a cell are interrogated
pseudo-randomly. In the latter disclosure it is stated that the intensity of light
incident on a pixel can be converted to a Grey-scale signal or alternatively, binary
signal.
[0009] In the latter case, the detected light level is compared with a threshold and a 1
or 0 is set according to whether the intensity is below the threshold or not. These
binary signals are then combined into groups, which form pointers into an array stored
in a random access memory (RAM). Each time an array element is addressed by a pointer,
its value is set to "on" otherwise it is left unchanged. This process is carried out
over a number of "frames".
[0010] Thus, with WISARD, over successive frames, values in certain elements of the array
become set. This is in effect a 'training period'. After sufficient frames have elapsed,
the array is considered suitably primed and the system is put into run mode and pointers
are generated in the same way. Then, if a pointer addresses an element which is set,
this indicates that the intensities in pixels forming the pointer are similar to values
which occurred in the training set. Pointers which address elements which are not
set indicate that the situation is different from the training period. In this way
WISARD detects when the scene changes.
[0011] It will be apparent that WISARD can only compare the present situation with what
happened during its finite 'training' period and has no memory for events before or
since. Also, transient events in the training period have as much effect as common
events. As a result, WISARD cannot continuously improve its record of background,
and so is limited in its ability to discriminate between significant events and the
background.
[0012] The present invention is capable of continuously improving its record of the background
and so can provide better discrimination than WISARD.
[0013] We acknowledge, by way of background, that US-A-4774570 discloses a video signal
processing system which detects a change of the video data in the video signal supplied
by a source by comparing the source video signal with a variable reference signal
derived from a predetermined number of sampled fields of the source video signal but
which excludes the video data of those pixels whose video data fluctuates during the
sampled frames.
[0014] The invention provides a method of analyzing an electronic image signal, as defined
in Claim 1, and a corresponding device as claimed in Claim 7.
[0015] Preferred embodiments of the invention may comprise:
(a) processing the image signal to regard it as representing one or more cells each
comprising a plurality of pixels;
(b) for consecutive frames of the monitored image, generating characteristic values
according to the detailed content of the image; and
(c) for consecutive image frames, accumulating the characteristic values so that in
a single operational mode, both a time history of the image, stored in a memory, is
updated and an indication is produced indicative of the occurrence or non-occurrence
of an event not associated with image background.
[0016] The device may comprise electronic means for effecting steps (a)-(c) in the aforementioned
method.
[0017] The present invention in general, mitigates the problems of the prior art referred
to above and can extend the possibilities for scene monitoring to a wider variety
of scenes. In particular, the invention is suited to monitoring scenes with a large
amount of normal activity, for example to monitor busy street scenes to identify specific
events. Examples of such events are:
- arrival of an obstruction on a railway line,
- arrival or departure of a vehicle through a gate,
- arrival or departure of a person through a door,
- occurence of congestion on a railway platform.
[0018] Although in its widest definition, the invention requires only one cell, it is preferred
that the image is represented as a plurality of cells, most preferably adjusted for
perspective as hereinbefore described.
[0019] Preferably at least one pair of pixels is so selected for each of a plurality of
cells. It is also much preferred to select in the same way, a plurality of pixels
for each cell of the image field.
[0020] Once one or more pairs of pixels are selected in a given cell, the same pixels can
then be used in subsequent frames until the end of the operating session. In a subsequent
session, the same pairs could be used again or different pairs selected for the remainder
of that session.
[0021] When a plurality of pixel pairs are used in a given cell, it is possible for the
same pixel to be used in more than one pair, although this is not absolutely necessary.
It is also possible, although not mandatory, for one or some of the pixels not to
be used in any pair.
[0022] For different cells, the pair or pairs of pixels could be chosen at the same relative
positions in each although again, this is not necessary.
[0023] We also prefer utilising the characteristic values to generate pointers for addressing
the memory containing the time history of the image. A particularly advantageous means
of doing this is to generate a set of pointers a
1,...,a
m, each of n binary bits and sequentially setting these bits according to the respective
binary values of the signals resulting from the comparisons of the pixel pairs. In
other words, pairs 1,...,n of the pixel pairs are used to set the values of a
1[1,...,n] then pairs (n+1),...,2n are used to set a
2[1,...,n] and so on.
[0024] Therefore, a preferred method comprises:
(a)processing the image signal to regard it as representing one or more cells each
comprising a plurality of pixels;
(b)for consecutive frames of the monitored image, generating characteristic values
according to the detailed content of the image; and
(c)generating a set of pointers a1,...., am, each of n binary bits and sequentially setting these bits according to the characteristic
values.
[0025] The device for analysing an image signal preferably comprises electronic means for
effecting steps (a) - (c) of the method.
[0026] The values of n and m may be any convenient numbers and may be the same or different,
but n x m will be equal to the number of characteristic values. Therefore, in this
context n x m will be equal to half the number of pixels selected in each cell.
[0027] In a preferred embodiment, these pointers are used to address a memory comprising
an array of addresses comprising rows 1,...,m and columns 1,...,2
n. When the characteristic values have been used to set the values of the pointers,
the latter address the memory as follows. Pointer a
1 addresses row 1. The pointer contains a binary number of value somewhere between
0 and 2
n. The pointer points to the column in row 1 having a column number corresponding to
the value in a
1. The value in that address is then incremented by 1 (at the outset, all addresses
will be set to zero). This is done for all rows up to m. In the next frame, the whole
process is repeated, updating the value by 1 in a particular address pointed to in
each row.
[0028] Therefore, the method preferably comprises:-
(a)procossing the image signal to regard it as representing one or more cells each
comprising a plurality of pixels;
(b)for consecutive frames of the monitored image, generating a set of pointers each
containing a value related to the detailed content of the image; and
(c) using the pointers to address a memory array and for successive frames, updating
the value of an address in each row of the array indicated by the pointer corresponding
to that row.
[0029] In a preferred embodiment, the set of pointers comprises pointers a
1, ...., a
m, each of n binary bits and the memory array has m rows and 2
n columns.
[0030] It will be appreciated that in terms of a memory array, the terms 'rows' and 'columns'
are purely arbitrary and therefore may be transposed.
[0031] A further advantageous feature is the way in which the values in the memory are used
to discriminate between the background and unusual or unexpected occurrences. In successive
frames, for each row in the memory, the maximum value at any address in the row is
determined, the value currently pointed at also being known. For all the rows, the
ratio of the sum of values in currently pointed to addresses, divided by the sum of
the maxima is calculated. This ratio is compared with a time weighted average for
the same ratio from previous frames. If this ratio is less than a chosen proportion
of the time weighted average then it is taken as indicative of an unusual or unexpected
event occuring in the relevant cell.
[0032] Thus the method preferably comprises:-
(a)processing the image signal to regard it as representing one or more cells each
comprising a plurality of pixels;
(b)for consecutive frames of the monitored image, updating one address in each row
of a memory array in dependence on the detailed content of the image; and
(c)over all the rows, summing the values in the addresses being updated and summing
the maximum value in each row, subjecting the ratio of the two sums to a time weighted
averaging with respect to the ratios obtained from previous frames, comparing the
ratio with the time weighted average and using the result to determine the occurence
or non-occurence of a significant event within the image.
[0033] When the present invention in any of its aspects is manifested as a device as opposed
to a method, the device may be implemented as hardware/firmware arranged to operate
under the control of appropriate software or it may be realised in terms only of hardware/firmware
configured from logic gates, flip-flops etc, arranged to carry out the required functions.
[0034] The invention will now be illustrated by way of the following description of a preferred
embodiment and with reference to the accompanying drawings in which: -
Figure 1 shows the arrangement of cell boundaries to take account of perspective;
Figure 2 is a diagramatic representation of a device according to the present invention,
for computing activity levels;
Figure 3 is a block diagram of the hardware of the device shown in Figure 2;
Figure 4 is a flowchart showing the logic applied to each cell to determine the existence
or absence of a track; and
Figure 5 shows the spatial relationship of local cells for movement from top right
to bottom left.
[0035] Before describing the preferred embodiment in detail it is convenient first to define
the following terms, these definitions applying only to the described embodiment and
not limiting the scope of the claimed invention:-
Pixel
[0036] A pixel (picture element) defines a grey level at a point in an image. Typically
up to 256 grey levels are represented in 8-bits.
Image
[0037] An image is an array of pixels, typically 512 x 512.
Tile
[0038] A tile (cell) is a subset of an image made up of N pixels. N must be even. The pixels
in a tile are denoted:
P1, P2, ..., PN.
Pixel Ordering
[0040] The pixels are randomly ordered and divided into two halves:
p1, p2, ..., pM,
q1, q2, ..., qM.
Pointer Generation
[0041] Generate bits b
1,b
2,b
3,...,b
M as:
if p
1>q
1 then b
1=0 else b
1 = 1,
if p
2>q
2 then b
2=0 else b
2 = 1,
if p
M>q
M then b
M = 0 else b
M = 1.
[0043] Generate m n-bit binary addresses:

[0044] The m addresses a
1, a
2, .., a
m characterise the instantaneous image in the tile and act as pointers into the memory
array defined below.
Memory
[0045] Memory is an m x 2
n array of data values holding information about the past history of the scene. This
array is continually updated as the process proceeds.
[0046] In addition, the maximum value in each row of Memory is maintained in an array max.
The notation is that, for j = 1,...,m:

[0047] Address a
j points to a cell in the
jth row of the memory. This cell is denoted:
Memory[j,aj].
Frame Rate
[0048] Image frames are processed at a chosen rate, which will be application specific.
The time at which the current frame is processed is denoted by t, and the time at
which the previous frame was processed is denoted t-1.
Parameters
[0049] Parameters f, UpperLimit and k are selected to determine time constants over which
a history is required.
[0050] Threshold is a parameter which determines the detection sensitivity of the technique.
[0051] The purpose of the mechanisms is to compute, for each tile, an activity level indicating
if the image is in a normal state.
[0052] The mechanisms are implemented by the following means:
a. a TV camera which captures images and outputs these images in a standard format,
b. an Image Frame Grabber which captures the images at the frame rate of the camera,
digitises each frame and stores it in a digital frame buffer,
c. a Computer Processor which performs Pointer
[0053] Generation by
- accessing the Image Frame Buffer and
- computing pointers into a Memory array,
d. a Digital store, the Memory array, to accumulate statistics about Images,
e. a Computer Processor which uses the pointers to increment the Memory array (Memory
Update),
f. a Computer Processor which accesses the Memory array to compute measures of Activity
in the Image.
[0054] The Computer Processors in c), e) and f) may be a single processor, or these activities
may be distributed across several processors.
[0055] Running the process is preceded by defining tiles and pixel orders. The choice and
size of tiles is application specific.
When running, images are captured in the Frame Buffer at the frame rate of the camera.
The Computer Processors then carry out the following actions relating to each frame
analysed. The Computation is described below and is carried out for each tile and
the relationship between the separate processes is represented in Figure 2 and the
precise nature of the computer hardware is shown in Figure 3.
Pointer Generation
[0056] Generate pointers into the Memory, as follows.
[0057] For each j = 1, ..., m
generate address a
j, as described above.
Memory Update
[0058] Perform Memory Update to maintain a history of past images as follows:
[0059] For each j = 1, ...,m
Increment Memory [j,a
j] by 1, and
update max
j to be the maximum element in the jth row of Memory.
If Memory [j,a
j] > UpperLimit then scale the jth row of Memory, ie:
[0060] Compute Memory [j,i] = f* Memory[j,i], i= 1,...,2
n, and compute max
j = f* max
j.
Image Asseesment
[0061] Perform Image Assessment to determine the current state of the image by computing
a Score, to be compared against an Average Score.
Sum the values Memory[j,a
j], j = 1,...,m, denoted Score.
Sum the values max
j, j = 1,...,m, denoted Maximum. Calculate a value A
t defining the instantaneous Activity in the image at time t cy computing:

(Note: A
t can take values between 0 and 1).
Calculate the Average Activity in the image at time t by computing:

(Note: Average
t can take values between 0 and 1). Calculate the measured Activity
t at time t by:

(Note: Activity
t can take values between -1 and 1). If Activity
t > Threshold then indicate that the Tile is Active.
[0062] The overall technique described above derives a single value (Activity
t) which indicates whether the current scene has changed from recent scenes. The time
frame over which the change is being determined is specified by choice of the parameters
f and k. For example; for a slowly varying background scene values of f and k close
to 1 could be used. Smaller values would be necessary where the background scene changes
rapidly.
[0063] Unlike other previously known schemes, the technique is sensitive to real changes
to the scene and discriminates between these and typical acceptable changes to the
scene. This is because the memory array remembers the characteristics of a normal
scene.
[0064] The calculation of the pointers as described above is very sensitive to local changes
in a tile, but is insensitive to global light changes in a tile. Each pointer causes
a location in Memory to be incremented. Thus scenes which are common will cause certain
Memory locations to be incremented frequently, whilst other locations will be incremented
rarely.
[0065] Whilst a scene is in a common state (note that the light levels may be changing significantly
and the content of the scene may be changing) then the pointers will be addressing
Memory locations containing large values. Then the derived values of Activity will
be small or negative.
[0066] However, when an unusual change occurs in the image, this will affect several pointers
which will now address Memory locations containing low values. The resulting value
of Activity will then be high (ie close to. 1).
[0067] In this way, the technique immediately identifies changes in the image. A local change,
caused for example by a person moving in the scene, may affect only a small number
of pixels. Suppose, for example that ten pixels are affected, then because of the
way the pointers are generated, this change will typically affect ten pointers. Thus
a small local change will have a large affect on the Activity score.
[0068] Also, because of the way the Memory remembers past scenes, when the activity ends
the computed Activity immediately reverts to a small value. In this way the presence
or absence of an event in a tile can be monitored accurately.
[0069] The result of the computations is to derive, for each image processed, an attribute
Active, which can take the value true or false, for each tile. These Active values
can be input to a process which determines the nature of an event in the scene. Such
a process can track events and compute shape and size attributes of objects in the
scene. The reliability of the claimed procedure for identifying active tiles, as opposed
to ambient light changes, makes it possible to perform Event Recognition successfully.
[0070] In general, the number of pixels in a tile is application specific. The size of a
tile will depend upon the size of object to be identified in the scene. Also, because
of perspective, the number of pixels in each tile will vary.
[0071] In the same way, the number of pixel pairs in a tile, M, is also application specific
and tile specific. In general not all pixels in a tile need be considered and pixels
can generally be undersampled. However, given the definition in the present preferred
embodiment, M should be no smaller than 8.
[0072] In order to exploit the 8-bit memory addressing of modern computers, n is generally
selected as 8. Also, elements of Memory are typically 8-bit locations, and so UpperLimit
would normally be chosen as 255.
[0073] Each tile is processed separately, and generates m pointers into the Memory array.
In practice, more sensitivity can be gained by repeating the pixel generation a number
of times to define more pointers. Typically three re-orderings of pixels are used,
generating 3m pointers which implies a Memory array of 3m x 2
n elements.
[0074] The rate at which images are processed is typically 25 frames per second. This could
be less depending on the rate at which events occur in the scene. The mechanism incorporates
flexibility so that the system can be implemented on a single computer or several
computers depending on the frame rate required.
[0075] The processing mechanisms previously defined show how each tile is assessed to see
if it is Active. The determination of events in the scene can then be carried out
by consideration of how the Activity values vary temporally and spatially.
[0076] In contrast to other previously known schemes, the determination of events can be
carried out successfully using simple logic based on Activity values. This is because
the claimed mechanisms reduce the false alarm rate, i.e. the rate at which tiles are
indicated as Active when they are not.
[0077] The active values can be used to Track objects passing through the scene. In this
case a tile has the additional attribute Track, which can take the value true or false,
to indicate if an object is currently passing through that tile.
[0078] The logic applied to each tile is indicated in the Flowchart presented in Figure
4. The tests are applied at time step t based on the Active value at time t and the
Track values at time t-1.
[0079] Tracks in an arbitrary direction are determined by defining local tiles to be:
a. all tiles contiguous to the tile of interest, including,
b. the tile itself.
[0080] To detect movement in a particular direction, "local tiles" is defined accordingly.
For example as indicated in Figure 5 to track movement from the top right to the bottom
left of a scene, local tiles would be chosen to be:
a. contiguous tiles above and to the right of the tile of interest, and
b. the tile itself.
[0081] Tiles which have a Track value of true can be indicated on an image to show moving
objects. Also, a combination of track direction can be used to detect objects which
exhibit specific behaviour, e.g:
a. movement down followed by across the image,
b. an object moving in a specific direction and then pausing in the image (see below),
c. an object moving through the scene and then passing through a door, or vice versa.
[0082] The Active and Track values can be used to detect objects which move into the scene
and then stop. This is achieved by counting for each tile, the consecutive frames
for which the tile has a Track value of true. The event is identified when this count
passes a prescribed threshold.
[0083] This process can identify, for example, a vehicle parking in a busy street, or a
person loitering in a busy walkway.
[0084] Various aspects of the present invention may also be embodied in the known WISARD
system hereinbefore described. It will now be explained how WISARD can be so adapted.
[0085] The original WISARD system involves generation of pointers into a binary memory array
for a fixed period, i. e. , a fixed number of frames. The scheme is unsuccessful because:
a. it cannot adapt to changing scenes, and is therefore only applicable to fixed scenes,
b. it is very sensitive to certain small light changes because of the way it replaces
a grey scale image by a binary (black/white) image.
[0086] Suitably modified, a combination of the WISARD Pointer Generation together with the
Memory Update and Image Assessment of the present invention can be more effective.
The following description identifies these modifications in presenting a Pointer Generation
scheme which can be very effective so long as the images processed have a large contrast
(i.e. a wide range of light levels). The notation is essentially the same as used
hereinbefore and has the same meanings.
[0087] Given a threshold T
2, bits b
1, b
2 ... , b
N are generated as follows:
If P
1>T
2 then b =0 else b = 1,
if P
2>T
2 then b =0 else b = 1,
.... if P
N>T
2 then b
N=0 else b
N=1.
[0088] Generate 1 n-bit binary addresses, where 1 = N/n

pointing to an 1x2
n memory array.
[0089] This method of pointer generation is sensitive to choice of threshold T
2. In particular, an object which is a similar grey level to the background may have
no effect on the pointers. This deficiency can be reduced by maintaining a second
1x2
n memory array and deriving a second set of pointers as follows:
If T
1<P
2<T
3 then b
1 = 0 else b
1=1,
If T
1<P
2<T
3 then b
2 = 0 else b
2=1,
.... if T
1<P
N<T
3 then b
N = 0 else b
N = 1.
[0090] In the same way as above, a second set of 1 n-bit addresses are generated from this
second set of bits b
1, b
2, ..., b
N, which act as pointers into the second memory array. The Activity values derived
from the two memory arrays are then averaged to give an accumulated Activity.
[0091] Then if the threshold T
1, T
2, T
3 are carefully chosen, a scheme based upon these pointers can also be successful.
[0092] The threshold must be chosen to accommodate to variation in light level across the
image. An effective way is to adjust them so that, across the whole image (i.e. across
all the tiles):
25% of pixel values are less than T1,
25% of pixel values lie between T1 and T2,
25% of pixel values lie between T2 and T3,
25% of pixel values are greater than T3.
[0093] Then T
1, T
2 and T
3 must be adjusted for every image which is processed.
[0094] Clearly, this scheme could be extended to accommodate more light levels by introducing
more thresholds.
These Pointer Generation techniques are specific examples of a general process which
generates bits b
j (taking the values 0 or 1) as a function of pixel pairs and parameters. Thus the
examples given take the form:
if p> q then b = 0 else b = 1
if p> T then b = 0 else b = 1
[0095] A further example is:
if p > q + epsilon then b = 0 else b = 1,
where epsilon is a fixed parameter value determined by the level of noise present
in the image (due to camera and transmission effects).
1. A method of analyzing an electronic image signal associated with an image comprising
a plurality of pairs of pixels to be monitored, the method comprising:
processing the image signal as one or more cells each comprising a plurality of pixels;
characterized by generating, for each consecutive frame of the image being monitored, characteristic
values by randomly or pseudo-randomly selecting pairs of pixels in the cell or cells
within a frame and, for each pair, establishing a binary signal in dependence upon
whether or not the intensity of light incident on one predetermined pixel of the pair
of pixels is greater than the intensity of light incident on the other.
2. A method according to claim 1, wherein at least one pair of pixels is selected for
each of a plurality of cells.
3. A method according to claim 2, wherein a plurality of pixels are selected for each
cell of an image field.
4. A method according to claim 1, wherein the same pixels are used in each frame until
an end of a subsequent operating session.
5. A method according to claim 1, further comprising:
for consecutive image frames, accumulating the characteristic values so that in a
single operational mode a time history of the image stored in a memory, wherein each
cell has its own memory array, is updated during monitoring of the image and an indication
is produced indicative of the occurrence or nonoccurrence of an event not associated
with image background.
6. A method according to claim 1, wherein the image is represented as a plurality of
cells, the plurality of cells being adjusted for perspective.
7. A device for analyzing an electronic image signal associated with an image comprising
a plurality of pairs of pixels to be monitored, the device comprising:
means for processing the image signal as one or more cells each comprising a plurality
of pixels;
characterized by means for generating characteristic values, for each consecutive frame of the image
being monitored, by randomly or pseudo-randomly selecting pairs of pixels in the cell
or cells within a frame and, for each pair, establishing a binary signal in dependence
upon whether or not the intensity of light incident on one predetermined pixel of
the pair of pixels is greater than the intensity of light incident on the other.
8. A device according to claim 7, wherein said means for generating characteristic values
is adapted to select at least one pair of pixels for each of a plurality of cells.
9. A device according to claim 7, wherein said means for generating characteristic values
is adapted to select a plurality of pixels for each cell of an image field.
10. A device according to claim 7, wherein said means for generating characteristic values
is adapted to use the same pixels in each frame until an end of a subsequent operating
session.
11. A device according to claim 7, wherein said means for generating characteristic values
comprises an image frame grabber, a memory, and one or more computer processors.
12. A device according to claim 7, further comprising:
means for accumulating the characteristic values, for consecutive image frames, so
that in a single operational mode a time history of the image stored in a memory,
wherein each cell has its own memory array, is updated during monitoring of the image
and an indication is produced indicative of the occurrence or nonoccurrence of an
event not associated with image background.
13. A device according to claim 7, wherein the image is represented as a plurality of
cells, the plurality of cells being adjusted for perspective.
1. Verfahren zum Analysieren eines elektronischen Bildsignals, welches zu einem Bild
gehört, welches gerade überwacht wird, umfassend:
Verarbeiten des Bildsignals als eine Vielzahl von Zellen, die jeweils eine Vielzahl
von Pixeln umfassen;
Erzeugen, für jeden aufeinanderfolgenden Rahmen des Bild, welches gerade überwacht
wird, von charakteristischen Werten durch zufälliges und pseudo-zufälliges Wählen
von wenigstens einem Paar von Pixeln in jeder einer Vielzahl von Zellen innerhalb
eines Rahmens, und, für jedes Paar, Einrichten eines binären Signals in Abhängigkeit
davon, ob die Intensität von Licht, welches auf ein vorbestimmtes Pixel des Paars
von Pixeln einfällt, größer als die Intensität von Licht, welches auf das Andere einfällt,
ist oder nicht, wobei die binären Signale verwendet werden, um Zeiger zum Adressieren
eines Speichers, der eine Zeitgeschichte des Bilds enthält, zu erzeugen.
2. Verfahren nach Anspruch 1, wobei eine Vielzahl von Pixeln für jede Zelle eines Bildfelds
gewählt werden.
3. Verfahren nach Anspruch 1, wobei die gleichen Pixel in jedem Rahmen verwendet werden
bis zu einem Ende einer nachfolgenden Betriebssession.
4. Verfahren nach Anspruch 1, wobei ein Satz von Zeigern a1,...,am erzeugt wird, jeder aus n binären Bits, und die Bits sequentiell in Übereinstimmung
mit jeweiligen binären Werten der Signale, die sich aus Vergleichen der Pixelpaare
ergeben, gesetzt werden.
5. Verfahren nach Anspruch 1, ferner umfassend:
für aufeinanderfolgende Bildrahmen, Akkumulieren der charakteristischen Werte, so
dass in einem Einzelbetriebsmodus eine Zeitgeschichte des Bilds, die in dem Speicher
gespeichert wird, wobei jede Zelle ihr eigenes Speicherfeld aufweist, während einer
Überwachung des Bilds aktualisiert wird und eine Anzeige erzeugt wird, die das Auftreten
oder Nicht- Auftreten eines Ereignisses anzeigt, das nicht zu einem Bildhintergrund
gehört.
6. Verfahren nach Anspruch 1, wobei das Bild als eine Vielzahl von Zellen dargestellt
wird, wobei die Vielzahl von Zellen für eine Perspektive eingestellt sind.
7. Verfahren nach Anspruch 1, ferner umfassend:
Erzeugen eines Satzes von Zeigern a1,..., am durch zufälliges oder pseudo-zufälliges Wählen von Paaren von Pixeln innerhalb einer
Zelle und, für jedes Paar, Vergleichen einer Lichtintensität eines Pixels mit einer
Lichtintensität des anderen Pixels, jeder Zeiger mit n Bits und sequentielles Setzen
von diesen Bits in Übereinstimmung mit den charakteristischen Werten während einer
Überwachung des Bilds.
8. Verfahren nach Anspruch 7, wobei die Zeiger verwendet werden, um ein Speicherfeld
mit m Zeilen und 2n Spalten zu adressieren, wobei jeder Zeiger einer Zeile des Speicherfelds entspricht
und der Inhalt von jedem Zeiger auf ein Speicherelement in der entsprechenden Zeile
zeigt.
9. Verfahren nach Anspruch 8, ferner umfassend:
für jeden aufeinanderfolgenden Rahmen des Bilds, welches gerade überwacht wird, Aktualisieren
eines Werts, der zu einer vorgegebenen Adresse gehört, die durch einen Inhalt jedes
Zeigers in jeder Zeile des Speicherfelds identifiziert wird; und
über alle Zeilen, Aktualisieren des Werts, der zu der vorgegebenen Adresse gehört,
auf die durch den Inhalt jedes Zeigers gezeigt wird;
Aufsummieren der aktualisierten Werte für jede Zeile;
Wählen eines maximalen Werts in jeder Zeile;
Aufsummieren des maximalen Werts für alle Zeilen;
Unterziehen des Verhältnisses der zwei Summen einer zeitgewichteten Mittelung in Bezug
auf die Verhältnisses, die von vorangehenden Rahmen erhalten werden;
Vergleichen des Verhältnisses mit der zeitgewichteten Mittelung und Verwenden des
Ergebnisses, um das Auftreten oder Nicht-Auftreten eines signifikanten Ereignisses
innerhalb des Bilds zu bestimmen.
10. Einrichtung zum Analysieren eines elektronischen Bildsignals, welches zu einem Bild
gehört, welches gerade überwacht wird, wobei die Einrichtung umfasst:
eine Einrichtung zum Verarbeiten des Bildsignals als eine Vielzahl von Zellen, die
jeweils eine Vielzahl von Pixeln umfassen;
eine Einrichtung zum Erzeugen von charakteristischen Werten, für jeden aufeinanderfolgenden
Rahmen des Bild, welches gerade überwacht wird, durch zufälliges und pseudo-zufälliges
Wählen von wenigstens einem Paar von Pixeln in jeder einer Vielzahl von Zellen innerhalb
eines Rahmens, und, für jedes Paar, Einrichten eines binären Signals in Abhängigkeit
davon, ob die Intensität von Licht, welches auf ein vorbestimmtes Pixel des Paars
von Pixeln einfällt, größer als die Intensität von Licht, welches auf das Andere einfällt,
ist oder nicht, wobei die Einrichtung zum Erzeugen von charakteristischen Werten dafür
ausgelegt ist die binären Signale zu verwenden, um Zeiger zum Adressieren eines Speichers,
der eine Zeitgeschichte des Bilds enthält, zu erzeugen.
11. Einrichtung nach Anspruch 10, wobei die Einrichtung zum Erzeugen von charakteristischen
Werten ausgelegt ist, um eine Vielzahl von Pixeln für jede Zelle eines Bildfelds zu
wählen.
12. Einrichtung nach Anspruch 10, wobei die Einrichtung zum Erzeugen von charakteristischen
Werten ausgelegt ist, um die gleichen Pixel in jedem Rahmen bis zu einem Ende einer
nachfolgenden Betriebssession zu verwenden.
13. Einrichtung nach Anspruch 10, wobei die elektrische Einrichtung zum Erzeugen von charakteristischen
Werten ausgelegt ist, um einen Satz von Zeigern a1,..., am zu erzeugen, jeder aus n binären Bits, und die Bits sequentiell in Übereinstimmung
mit jeweiligen binären Werten der Signale, die sich aus Vergleichen der Pixelpaare
ergeben, zu setzen.
14. Einrichtung nach Anspruch 10, wobei die Einrichtung zum Erzeugen von charakteristischen
Werten eine Bildrahmen-Ergreifungseinheit, einen Speicher, und einen oder mehrere
Computerprozessoren umfasst.
15. Einrichtung nach Anspruch 10, ferner umfassend:
eine Einrichtung zum Akkumulieren der charakteristischen Werte, für aufeinanderfolgende
Bildrahmen, so dass in einem Einzelbetriebsmodus eine Zeitgeschichte des Bilds, die
in dem Speicher gespeichert wird, wobei jede Zelle ihr eigenes Speicherfeld aufweist,
während einer Überwachung des Bilds aktualisiert wird und eine Anzeige erzeugt wird,
die das Auftreten oder Nicht- Auftreten eines Ereignisses anzeigt, das nicht zu einem
Bildhintergrund gehört.
16. Einrichtung nach Anspruch 10, wobei das Bild als eine Vielzahl von Zellen dargestellt
wird, wobei die Vielzahl von Zellen für eine Perspektive eingestellt sind.
17. Einrichtung nach Anspruch 10, ferner umfassend:
eine Einrichtung zum Erzeugen eines Satzes von Zeigern a1,..., am durch zufälliges oder pseudo-zufälliges Wählen von Paaren von Pixeln innerhalb einer
Zelle und, für jedes Paar, Vergleichen einer Lichtintensität eines Pixels mit einer
Lichtintensität des anderen Pixels, jeder Zeiger mit n Bits und sequentielles Setzen
von diesen Bits in Übereinstimmung mit den charakteristischen Werten während einer
Überwachung des Bilds.
18. Einrichtung nach Anspruch 17, wobei die Zeiger verwendet werden, um ein Speicherfeld
mit m Zeilen und 2n Spalten zu adressieren, wobei jeder Zeiger einer Zeile des Speicherfelds entspricht
und der Inhalt von jedem Zeiger auf ein Speicherelement in der entsprechenden Zeile
zeigt.
19. Einrichtung nach Anspruch 18, ferner umfassend:
eine Einrichtung zum Aktualisieren, für jeden aufeinanderfolgenden Rahmen des Bilds,
welches gerade überwacht wird, eines Werts, der zu einer vorgegebenen Adresse gehört,
die durch einen Inhalt jedes Zeigers in jeder Zeile des Speicherfelds identifiziert
wird; und
eine Einrichtung zum Aktualisieren des Werts, über alle Zeilen, der zu der vorgegebenen
Adresse gehört, auf die durch den Inhalt jedes Zeigers gezeigt wird;
eine Einrichtung zum Aufsummieren der aktualisierten Werte für jede Zeile;
eine Einrichtung zum Wählen eines maximalen Werts in jeder Zeile;
eine Einrichtung zum Aufsummieren des maximalen Werts für alle Zeilen;
eine Einrichtung zum Unterziehen des Verhältnisses der zwei Summen einer zeitgewichteten
Mittelung in Bezug auf die Verhältnisses, die von vorangehenden Rahmen erhalten werden;
eine Einrichtung zum Vergleichen des Verhältnisses mit der zeitgewichteten Mittelung
und Verwenden des Ergebnisses, um das Auftreten oder Nicht-Auftreten eines signifikanten
Ereignisses innerhalb des Bilds zu bestimmen.
1. Procédé d'analyse d'un signal d'image électronique qui est associé à une image qui
est en train d'être surveillée, le procédé comprenant:
le traitement du signal d'image en tant qu'une pluralité de cellules dont chacune
comprend une pluralité de pixels;
génération, pour chaque trame consécutive de l'image qui est surveillée, de valeurs
de caractéristique en sélectionnant de façon aléatoire ou de façon pseudo-aléatoire
au moins une paire de pixels dans chacune d'une pluralité de cellules à l'intérieur
d'une trame et pour chaque paire, en établissant un signal binaire en fonction de
si oui ou non l'intensité de la lumière qui arrive en incidence sur un pixel prédéterminé
de la paire de pixels est supérieure à l'intensité de la lumière qui arrive en incidence
sur l'autre, dans lequel les signaux binaires sont utilisés pour générer des pointeurs
pour adresser une mémoire qui contient un historique temporel de l'image.
2. Procédé selon la revendication 1, dans lequel les pixels d'une pluralité de pixels
sont sélectionnés pour chaque cellule d'une zone d'image.
3. Procédé selon la revendication 1, dans lequel les mêmes pixels sont utilisés dans
chaque trame jusqu'à une fin d'une session de fonctionnement qui suit.
4. Procédé selon la revendication 1, dans lequel un jeu de pointeurs a1, ..., am est généré, chacun comportant n bits binaires, et lesdits bits sont établis de façon
séquentielle conformément aux valeurs binaires respectives des signaux résultant de
comparaisons des paires de pixels.
5. Procédé selon la revendication 1, comprenant en outre:
pour des trames d'image consécutives, l'accumulation de valeurs de caractéristique
de telle sorte que selon un unique mode de fonctionnement, un historique temporel
de l'image stockée dans une mémoire, où chaque cellule dispose de son propre réseau
de mémoire, soit mis à jour pendant la surveillance de l'image et qu'une indication
qui est indicative de la survenue ou de la non survenue d'un événement non associé
à un fond d'image soit produite.
6. Procédé selon la revendication 1, dans lequel l'image est représentée en tant que
pluralité de cellules, les cellules de la pluralité de cellules étant réglées quant
à la perspective.
7. Procédé selon la revendication 1, comprenant en outre:
la génération d'un jeu de pointeurs a1, ..., am en sélectionnant de façon aléatoire ou de façon pseudo-aléatoire des paires de pixels
à l'intérieur d'une cellule et, pour chaque paire, en comparant une intensité lumineuse
d'un pixel à une intensité lumineuse de l'autre pixel, chaque pointeur comportant
n bits, et en établissant de façon séquentielle ces bits conformément aux valeurs
de caractéristique pendant la surveillance de l'image.
8. Procédé selon la revendication 7, dans lequel les pointeurs sont utilisés pour adresser
un réseau de mémoire qui comporte m rangées et 2n colonnes, chaque pointeur correspondant à une rangée du réseau de mémoire, et le
contenu de chaque pointeur pointant sur un élément de mémoire dans la rangée correspondante.
9. Procédé selon la revendication 8, comprenant en outre:
pour chaque trame consécutive de l'image qui est en train d'être surveillée, la mise
à jour d'une valeur qui est associée à une adresse prédéterminée qui est identifiée
au moyen d'un contenu de chaque pointeur dans chaque rangée du réseau de mémoire;
et
sur toutes les rangées, la mise à jour de la valeur qui est associée à l'adresse prédéterminée
sur laquelle le contenu de chaque pointeur pointe;
la sommation des valeurs mises à jour pour chaque rangée;
la sélection d'une valeur maximum dans chaque rangée;
la sommation de la valeur maximum pour toutes les rangées;
la soumission du rapport des deux sommes à un calcul de moyenne pondérée temporellement
par rapport aux rapports qui sont obtenus à partir de trames précédentes; et
la comparaison du rapport avec la moyenne pondérée temporellement et l'utilisation
du résultat pour déterminer la survenue ou la non survenue d'un événement significatif
à l'intérieur de l'image.
10. Dispositif pour analyser un signal d'image électronique qui est associé à une image
qui est en train d'être surveillée, le dispositif comprenant:
un moyen pour traiter le signal d'image en tant que pluralité de cellules dont chacune
comprend une pluralité de pixels;
un moyen pour générer des valeurs de caractéristique, pour chaque trame consécutive
de l'image qui est en train d'être surveillée, en sélectionnant de façon aléatoire
ou de façon pseudo-aléatoire au moins une paire de pixels dans chacune d'une pluralité
de cellules à l'intérieur d'une trame et, pour chaque paire, en établissant un signal
binaire en fonction de si oui ou non l'intensité de la lumière qui arrive en incidence
sur un pixel prédéterminé de la paire de pixels est supérieure à l'intensité de la
lumière qui arrive en incidence sur l'autre, dans lequel ledit moyen pour générer
des valeurs de caractéristique est adapté pour utiliser les signaux binaires pour
générer des pointeurs pour adresser une mémoire qui contient un historique temporel
de l'image.
11. Dispositif selon la revendication 10, dans lequel ledit moyen pour générer des valeurs
de caractéristique est adapté pour sélectionner une pluralité de pixels pour chaque
cellule d'une zone d'image.
12. Dispositif selon la revendication 10, dans lequel ledit moyen pour générer des valeurs
de caractéristique est adapté pour utiliser les mêmes pixels dans chaque trame jusqu'à
une fin d'une session de fonctionnement qui suit.
13. Dispositif selon la revendication 10, dans lequel ledit moyen électronique est adapté
pour générer un jeu de pointeurs a1, ..., am, dont chacun comporte n bits binaires, et pour établir de façon séquentielle ces
bits conformément aux valeurs binaires respectives des signaux résultant de comparaisons
des paires de pixels.
14. Dispositif selon la revendication 10, dans lequel ledit moyen pour générer des valeurs
de caractéristique comprend un dispositif de saisie de trame d'image, une mémoire
et un ou plusieurs processeurs d'ordinateur.
15. Dispositif selon la revendication 10, comprenant en outre:
un moyen pour accumuler les valeurs de caractéristique, pour des trames d'image consécutives,
de telle sorte que selon un unique mode de fonctionnement, un historique temporel
de l'image stockée dans une mémoire, où chaque cellule dispose de son propre réseau
de mémoire, soit mis à jour pendant la surveillance de l'image et qu'une indication
qui est indicative de la survenue ou de la non survenue d'un événement qui n'est pas
associé à un fond d'image soit produite.
16. Dispositif selon la revendication 10, dans lequel l'image est représentée en tant
que pluralité de cellules, les cellules de la pluralité de cellules étant réglées
quant à la perspective.
17. Dispositif selon la revendication 10, comprenant en outre:
un moyen pour générer un jeu de pointeurs a1, ..., am en sélectionnant de façon aléatoire ou de façon pseudo-aléatoire des paires de pixels
à l'intérieur d'une cellule et, pour chaque paire, en comparant une intensité lumineuse
d'un pixel à une intensité lumineuse de l'autre pixel, chaque pointeur comportant
n bits, et en établissant de façon séquentielle ces bits conformément aux valeurs
de caractéristique pendant la surveillance de l'image.
18. Dispositif selon la revendication 17, dans lequel les pointeurs sont utilisés pour
adresser un réseau de mémoire qui comporte m rangées et 2n colonnes, chaque pointeur correspondant à une rangée du réseau de mémoire, et le
contenu de chaque pointeur pointant sur un élément de mémoire dans la rangée correspondante.
19. Dispositif selon la revendication 18, comprenant en outre:
un moyen pour mettre à jour, pour chaque trame consécutive de l'image qui est en train
d'être surveillée, une valeur qui est associée à une adresse prédéterminée qui est
identifiée au moyen d'un contenu de chaque pointeur dans chaque rangée du réseau de
mémoire;
un moyen pour mettre à jour la valeur, sur toutes les rangées, qui est associée à
l'adresse prédéterminée sur laquelle le contenu de chaque pointeur pointe;
un moyen pour sommer les valeurs mises à jour pour chaque rangée;
un moyen pour sélectionner une valeur maximum dans chaque rangée;
un moyen pour sommer la valeur maximum pour toutes les rangées;
un moyen pour soumettre le rapport des deux sommes à un calcul de moyenne pondérée
temporellement par rapport aux rapports qui sont obtenus à partir de trames précédentes;
et
un moyen pour comparer le rapport avec la moyenne pondérée temporellement et pour
utiliser le résultat pour déterminer la survenue ou la non survenue d'un événement
significatif à l'intérieur de l'image.