WO2015129501A1 - 動体検出装置、動体検出方法及び制御プログラム - Google Patents

動体検出装置、動体検出方法及び制御プログラム Download PDF

Info

Publication number
WO2015129501A1
WO2015129501A1 PCT/JP2015/054118 JP2015054118W WO2015129501A1 WO 2015129501 A1 WO2015129501 A1 WO 2015129501A1 JP 2015054118 W JP2015054118 W JP 2015054118W WO 2015129501 A1 WO2015129501 A1 WO 2015129501A1
Authority
WO
WIPO (PCT)
Prior art keywords
detection
moving object
image
region
imaging
Prior art date
Application number
PCT/JP2015/054118
Other languages
English (en)
French (fr)
Inventor
健太 西行
Original Assignee
株式会社メガチップス
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 株式会社メガチップス filed Critical 株式会社メガチップス
Publication of WO2015129501A1 publication Critical patent/WO2015129501A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person

Definitions

  • the present invention relates to a moving object detection technique.
  • Patent Document 1 As described in Patent Document 1 and Non-Patent Documents 1 to 3, various techniques have been proposed for detecting moving objects such as humans.
  • the present invention has been made in view of the above points, and an object thereof is to provide a technique capable of improving the detection accuracy of a moving object.
  • One aspect of the moving object detection device is the use of a first storage unit that stores a background model including background image information, and the moving object existing in an imaging region that appears in the input image, using the background model and the input image.
  • a first detection frequency map indicating a detection frequency of a moving object for each of a plurality of partial imaging regions constituting the imaging region based on a detection result of the moving object detection unit and the moving object detection unit, Among the plurality of partial imaging regions, there is a possibility that a moving object exists in a partial imaging region in which the detection frequency in the first detection frequency map is greater than or equal to the first threshold value or greater than the first threshold value.
  • a first specifying unit that specifies the first region having a high level, a fine movement detecting unit that detects fine movement of the object in the imaging region based on an input image, and when the fine movement detection unit detects fine movement of the object,
  • a second specifying unit that specifies a second region in which the fine movement of the object occurs, a second storage unit, and a background model updating unit that updates the background model, the background model updating unit including an input image
  • the image information obtained from the image of the partial imaging region in which the moving object detection unit has detected the moving object is stored in the second storage unit as a background image information candidate, and the background model update unit is input during the period
  • the detection result of the moving object in the moving object detection unit in which the input image input in the determination period smaller than the first threshold is used, and specified by the first specifying unit And determining whether or not to register background image information candidates in the second storage unit as background image information in the background model based on the first region, and the background model update unit includes the fine motion detection unit Detects fine movement of an
  • the first specifying unit may indicate the non-detection frequency of the moving object for each of the plurality of partial imaging regions based on the detection result of the moving object detection unit.
  • a first non-detection frequency map is generated, and the first specifying unit has the non-detection frequency in the first non-detection frequency map equal to or higher than a second threshold among the plurality of partial imaging regions, or the first The detection frequency of the first detection frequency map and the non-detection frequency of the first non-detection frequency map for a partial imaging region larger than a threshold value of 2 are cleared.
  • the first specifying unit may indicate a moving object detection frequency for each of the plurality of partial imaging regions based on a detection result of the moving object detection unit.
  • 2 detection frequency maps and a second non-detection frequency map indicating the non-detection frequency of the moving object for each of the plurality of partial imaging regions, the first specifying unit, among the plurality of partial imaging regions, The partial imaging region in which the non-detection frequency in the second non-detection frequency map is greater than or equal to a third threshold value greater than the second threshold value or greater than the third threshold value.
  • the detection frequency of the second detection frequency map and the non-detection frequency of the second non-detection frequency map are cleared, and when the fine movement detection unit detects fine movement of the object, the first specifying unit Said about the region The frequency of detection of the second detection frequency maps, copying to the first detection frequency map as a value for that second area.
  • a detection unit that detects a change in brightness of the imaging region is further provided, and the fine motion detection unit includes a change in brightness of the imaging region in the detection unit. When is detected, fine movement of the object is not detected.
  • the fine movement detection unit may perform a labeling process on the moving object region included in the input image based on the detection result of the moving object detection unit, and perform the labeling process. Based on the labeling area obtained by the above, it is determined whether or not there is fine movement of the object in the imaging area.
  • the fine motion detection unit acquires a motion vector for the labeling region, and determines whether there is a fine motion of an object in the imaging region based on the motion vector. to decide.
  • the fine movement detection unit acquires a motion vector for an input image based on a detection result of the moving object detection unit, and performs the imaging based on the motion vector. It is determined whether or not there is fine movement of the object in the region.
  • one aspect of the moving object detection method is (a) using a background model that includes background image information stored in the first storage unit and an input image, and is present in an imaging region that appears in the input image. And (b) a first detection frequency map showing a detection frequency of the moving object for each of a plurality of partial imaging areas constituting the imaging area based on the detection result in the step (a). And (c) among the plurality of partial imaging areas, a moving object is present in a partial imaging area in which the detection frequency in the first detection frequency map is greater than or equal to a threshold value or greater than the threshold value.
  • a step of storing in the second storage unit as image information candidates, and (g) an input image represented by the number of input images input during that period and input during a determination period smaller than the threshold value was used Based on the detection result of the moving object in the step (a) and the first area specified in the step (c), background image information candidates in the second storage unit are used as background image information in the background model.
  • one aspect of the control program according to the present invention is a control program for controlling a moving object detection device, wherein (a) a background including background image information stored in a first storage unit is stored in the moving object detection device. Using a model and an input image, detecting a moving object present in the imaging region shown in the input image; and (b) a plurality of components constituting the imaging region based on the detection result in the step (a).
  • the detection frequency in the first detection frequency map is Identifying a partial imaging area that is greater than or equal to a threshold value or larger than the threshold as a first area where a moving object is highly likely to exist; and (d) fine movement of an object in the imaging area based on an input image. Detect And (e) a step of identifying a second region in which fine movement of the object is generated in the imaging region when fine movement of the object is detected in the step (d), and (f) included in the input image.
  • FIG. 1 is a block diagram showing a configuration of the moving object detection apparatus 1. Based on the input image, the moving object detection device 1 detects a moving object that is present in an imaging region that appears in the image, that is, in an imaging region (field-of-view range) of an imaging unit that captures the image.
  • the moving object to be detected is, for example, a person.
  • the moving object detection apparatus 1 detects a moving object (an image showing a moving object) included in an input image, thereby detecting a moving object, that is, a moving object existing in an imaging region that appears in the image.
  • the operation stage of the moving object detection apparatus 1 includes a preparation stage and an actual operation stage.
  • the moving object detection device 1 performs background model generation processing using a plurality of input images that are captured in time series and are input in the order in which they are captured.
  • the background model is a model configured by collecting information included in a plurality of input images obtained by photographing the same scene (subject).
  • the background model is used when a moving object image is detected from each input image that is captured in time series and input in the order of image capturing in the moving object detection process described later.
  • the preparation stage in which the background model generation process is executed is also referred to as a “learning stage”.
  • an input image used for generating a background model may be referred to as a “reference image”.
  • an input image that is a detection target of a moving body image may be referred to as a “detection target image”.
  • the operation stage shifts from the preparation stage to the actual operation stage.
  • the moving object detection apparatus 1 detects a moving object image from an input image, a first detection frequency map, a second detection frequency map, a first non-detection frequency map, and a second Map update processing for updating the non-detection frequency map, fine motion detection processing for detecting fine motion of the object, map correction processing for correcting the first detection frequency map, and background model update processing for updating the background model are performed.
  • the moving object to be detected is a person, but it may be a moving object other than a person, for example, an animal other than a person.
  • the moving object detection device 1 includes an image input unit 2, an image processing unit 3, a detection result output unit 4, a background model storage unit 5, and a cache model storage unit 6. .
  • FIG. 2 is a block diagram showing the configuration of the image processing unit 3.
  • the image input unit 2 inputs an input image 200 input from the outside of the moving object detection apparatus 1 to the image processing unit 3.
  • the input image 200 is a captured image captured by the imaging unit.
  • a plurality of input images 200 captured in time series are input to the image input unit 2 in the order in which they are captured.
  • the size of the input image 200 is, for example, 320 pixels ⁇ 240 pixels (QVGA).
  • FIG. 3 is a diagram illustrating an example of the imaging region 10 that appears in the input image 200, that is, the imaging region (field-of-view range) 10 of the imaging unit that captures the input image 200.
  • the imaging area 10 shown in FIG. 3 includes a conference room 100 as a subject. Therefore, in this case, the input image 200 input to the moving object detection device 1 is an image showing the conference room 100.
  • a plurality of desks 101 and a plurality of chairs 102 are arranged so as to surround the center of the floor, and the outside of the plurality of desks 101 is a passage 103.
  • a curtain 104 is provided on a part of the wall.
  • the moving body detection apparatus 1 detects a person existing in the conference room 100 by detecting a moving body image with respect to the input image 200 showing the conference room 100, for example.
  • the image processing unit 3 performs various image processing on the input image 200 input from the image input unit 2.
  • the image processing unit 3 includes a CPU 300 and a storage unit 310.
  • the storage unit 310 includes a non-transitory recording medium that can be read by the CPU 300, such as a ROM (Read Only Memory) and a RAM (Random Access Memory).
  • the storage unit 310 stores a control program 311 for controlling the moving object detection apparatus 1.
  • Various function blocks are formed in the image processing unit 3 by the CPU 300 executing the control program 311 in the storage unit 310.
  • the storage unit 310 may include a computer-readable non-transitory recording medium other than the ROM and RAM.
  • the storage unit 310 may include, for example, a small hard disk drive and an SSD (Solid State Drive).
  • the image processing unit 3 includes a background model generation unit 30, a moving object detection unit 31, a first identification unit 32, a fine movement detection unit 33, a second identification unit 34, a background model update unit 35, and the like.
  • a plurality of functional blocks are formed. These functional blocks are not realized by the CPU executing the program, but may be realized by a hardware circuit using a logic circuit or the like that does not require a program for realizing the function.
  • the background model generation unit 30 generates a background model 500 including background image information using a plurality of input images 200 (a plurality of reference images 200) sequentially input from the image input unit 2.
  • the background model 500 generated by the background model generation unit 30 is stored in the background model storage unit 5.
  • the background model update unit 35 updates the background model 500 in the background model storage unit 5.
  • the moving object detection unit 31 detects a moving object image in the input image 200 using the input image 200 input from the image input unit 2 and the background model 500 in the background model storage unit 5. In other words, the moving object detection unit 31 uses the input image 200 and the background model 500 to detect a moving object that exists in the imaging region 10 that appears in the input image 200.
  • the first specifying unit 32 specifies an area in the imaging area 10 where a moving object is highly likely to exist based on the detection result of the moving object detection by the moving object detecting unit 31. Specifically, the first specifying unit 32 generates a detection frequency map and a non-detection frequency map based on the detection result of the moving object detection unit 31, and a moving object exists in the imaging region 10 using these maps. Identify potential areas.
  • the detection frequency map indicates the distribution of the detection frequency of moving objects in a plurality of areas in the imaging area 10.
  • the non-detection frequency map indicates a distribution of non-detection frequencies of moving objects in a plurality of regions in the imaging region 10. In this embodiment, as described later, two types of detection frequency maps (first and second detection frequency maps) and two types of non-detection frequency maps (first and second non-detection frequency maps) are generated.
  • the fine motion detection unit 33 detects the fine motion of the object in the imaging region 10 based on the input image.
  • the second specifying unit 34 specifies a region where the fine movement of the object is occurring in the imaging region 10 when the fine movement detection unit 33 detects the fine movement of the object.
  • this area may be referred to as a “fine movement generation area”.
  • the background model storage unit 5 stores the background model 500 generated by the background model generation unit 30.
  • the cache model storage unit 6 stores a cache model to be described later.
  • Each of the background model storage unit 5 and the cache model storage unit 6 includes rewritable storage means such as flash memory, EPROM (Erasable Programmable Read Only Memory), or hard disk (HD).
  • the background model storage unit 5 and the cache model storage unit 6 are independent in hardware, but a part of the storage area of one storage device is used as the background model storage unit 5, Another part of the storage area may be used as the cache model storage unit 6.
  • the detection result output unit 4 outputs the detection result of the moving object detection by the moving object detection unit 31 to the outside.
  • the detection result output unit 4 includes, for example, a display unit that displays in real time the state of the imaging region 10, that is, the state of the subject existing in the imaging region 10 (the conference room 100 in the example of FIG. 3).
  • the detection result output part 4 outputs the detection result of a moving body detection to the exterior by displaying the area
  • the detection result output unit 4 may output the detection result to the outside with a sound such as voice.
  • the detection result output unit 4 may output the detection result to the outside by outputting a signal indicating the detection result to an external device.
  • the external device performs an operation according to the detection result. For example, the external device generates an alarm.
  • the external device controls the lighting apparatus in the conference room 100 to brighten only the region where a person exists.
  • the external device controls the air conditioner in the conference room 100 to cool or warm only an area where a person exists.
  • FIG. 4 is a diagram for explaining the background model 500.
  • the input image 200 captured by the imaging unit is used as the reference image 200 used for generating the background model 500. It has become.
  • a background model 500 is generated based on A (A ⁇ 2) reference images 200.
  • the imaging area 10 is divided into a plurality of rectangular imaging blocks (partial imaging areas).
  • an area indicating an image of a certain imaging block included in the input image 200 is referred to as an “image block”
  • the input image 200 includes a plurality of image blocks respectively indicating images of a plurality of imaging blocks constituting the imaging area 10. Is done.
  • the size of one image block is, for example, 3 pixels ⁇ 3 pixels.
  • the imaging block may be referred to as an imaging block corresponding to the image block.
  • the background model 500 includes a plurality of codebooks CB corresponding to the plurality of imaging blocks BK, respectively.
  • Each code book CB includes a code word CW including image information and related information related to the image information.
  • the code word CW included in the code book CB is generated based on an image block indicating an image of the imaging block BK corresponding to the code book CB in one input image 200.
  • Each code book CB includes a plurality of code words CW.
  • the image information included in the code word CW in the background model 500 may be referred to as “background image information”.
  • the code book CB in which the sand hatching is shown includes three code words CW1 to CW3 generated based on the three reference images 200a to 200c, respectively.
  • the code word CW1 included in the code book CB is generated based on the image block indicating the image of the imaging block BK corresponding to the code book CB in the reference image 200a.
  • the code word CW2 included in the code book CB is generated based on the image block indicating the image of the imaging block BK corresponding to the code book CB in the reference image 200b.
  • the code word CW3 included in the code book CB is generated based on the image block indicating the image of the imaging block BK corresponding to the code book CB in the reference image 200c.
  • FIG. 5 is a diagram for explaining the code word CW.
  • image information of an image block indicating an image of an imaging block corresponding to the code book CB including the code word CW that is, pixel values PV of a plurality of pixels constituting the image block are used as background image information.
  • the code word CW includes the latest matching time Te and the code word generation time Ti as related information. As will be described later, it is determined whether or not the image information in the code word CW included in the background model 500 matches the image information acquired from the detection target image 200.
  • the latest matching time Te included in the code word CW indicates the latest time when it is determined that the image information included in the code word CW matches the image information acquired from the detection target image 200.
  • the code word generation time Ti included in the code word CW indicates the time at which the code word CW is generated.
  • FIG. 6 is a flowchart showing background model generation processing in which such a background model 500 is generated.
  • the background model generation process shown in FIG. 6 is executed when the background model 500 is not stored in the background model storage unit 5.
  • the background model generation unit 30 selects an imaging block having the imaging region 10 in step s2. It is determined whether or not the codebook CB corresponding to the target imaging block is stored in the background model storage unit 5 as the target imaging block.
  • the background model generation unit 30 determines that the code book CB corresponding to the target imaging block is not stored in the background model storage unit 5
  • the target model imaging is performed based on the reference image 200 input in step s1 in step s3.
  • a code book CB corresponding to the block is generated and stored in the background model storage unit 5.
  • the background model generation unit 30 acquires image information from an image block indicating an image of the target imaging block in the reference image 200 input in step s1. Then, the background model generation unit 30 generates a code word CW including the acquired image information as background image information, and stores the code book CB including the code word CW in the background model storage unit 5. The latest match time Te included in the code word CW is provisionally set to the same time as the code word generation time Ti.
  • the background model generation unit 30 determines that the code book CB corresponding to the target imaging block is stored in the background model storage unit 5, the target model in the reference image 200 input in step s1 in step s4. Image information is acquired from an image block indicating an image of the imaging block. Then, the background model generation unit 30 matches the background image information in the code word CW included in the code book CB corresponding to the target imaging block and the acquired image information stored in the background model storage unit 5. It is determined whether or not. That is, the background model generation unit 30 determines whether or not there is a code word CW including background image information that matches the acquired image information in the code word CW included in the code book CB corresponding to the imaging block of interest. .
  • step s4 if the background image information in each code word CW included in the code book CB corresponding to the imaging block of interest and the acquired image information do not match in step s5, that is, attention is paid. If there is no code word CW including background image information that matches the acquired image information in the code word CW included in the code book CB corresponding to the imaging block, in step s6, the background model generation unit 30 performs step In step s4, a code word CW including the image information acquired from the reference image 200 as background image information is generated. The latest match time Te included in the code word CW is provisionally set to the same time as the code word generation time Ti.
  • the background model generation unit 30 adds the generated code word CW to the code book CB corresponding to the target imaging block stored in the background model storage unit 5. As a result, new background image information is added to the code book CB corresponding to the imaging block of interest.
  • step s7 is executed without executing step s6.
  • the background model generation unit 30 determines whether or not processing has been performed for all the imaging blocks in the imaging region 10, that is, whether or not all imaging blocks have been set as the imaging block of interest. As a result of the determination in step s7, if there is an imaging block that has not been processed, the background model generation unit 30 sets the imaging block that has not been processed yet as a new attention imaging block, and thereafter step s2 and subsequent steps. Execute.
  • the background model generation unit 30 applies to the A reference images 200 in step s8. It is determined whether or not similar processing has been performed. If the result of determination in step s8 is that the number of processed reference images 200 is smaller than A, the background model generation unit 30 newly inputs a reference to the image processing unit 3 in step s1. The process from step s2 is executed on the image 200. If the result of determination in step s8 is that the number of processed reference images 200 is A, the background model generation unit 30 ends the background model generation process. Thereby, the background model 500 as described above is generated in the background model storage unit 5.
  • FIG. 7 is a flowchart showing a schematic operation in the actual operation stage of the moving object detection apparatus 1.
  • the process shown in FIG. 7 is executed.
  • step s11 when the input image 200 is input from the image input unit 2 to the image processing unit 3 in step s11, a series of processing from steps s12 to s16 is executed with the input image 200 as a processing target. Is done.
  • step s12 the image processing unit 3 performs a moving object detection process for detecting a moving object image on the input image 200 to be processed.
  • step s13 the image processing unit 3 updates the first and second detection frequency maps and the first and second non-detection frequency maps based on the result of the moving object detection process in step s12. I do.
  • step s14 the image processing unit 3 detects fine movement of the object in the imaging area, and performs fine movement detection processing for specifying an area where the fine movement of the object occurs in the imaging area (fine movement generation area). Thereafter, in step s15, the image processing unit 3 performs map correction processing for correcting the first detection frequency map based on the result of the processing in step s14.
  • step s16 the image processing unit 3 performs background model update processing for updating the background model 500 in the background model storage unit 5 using the corrected first detection frequency map and the like.
  • the moving object detection process every time the input image 200 is input, the moving object detection process, the map update process, the fine movement detection process, the map correction process, and the background model update process are performed in this order. Executed.
  • FIG. 8 is a flowchart showing the moving object detection process.
  • the moving body detection unit 31 sets an imaging block in the imaging region 10 (for example, the upper left imaging block in the imaging region 10) as the imaging block of interest, and is input in step s11 described above.
  • a moving body image is detected for an image block indicating an image of the target imaging block (hereinafter also referred to as “target image block”). That is, the moving object detection unit 31 detects whether a moving object exists in the imaging block of interest.
  • the image information acquired from the target image block in the input image 200 and the background in each code word CW included in the code book CB corresponding to the target imaging block in the background model 500 By determining whether or not the image information matches, it is determined whether or not the target image block is a moving image.
  • the code book CB corresponding to the target imaging block may be referred to as a “target code book CB”.
  • the code word CW included in the target code book CB may be referred to as “target code word CW”. A specific method of moving object detection will be described later.
  • step s121 When step s121 is executed, in step s122, the moving object detection unit 31 stores the result of the moving object detection in step s121. Then, in step s123, the moving object detection unit 31 determines whether or not processing has been performed for all imaging blocks in the imaging region 10, that is, whether or not all imaging blocks have been set as the imaging block of interest. As a result of the determination in step s123, when there is an imaging block that has not been processed, the moving object detection unit 31 sets the imaging block that has not been processed yet as a new attention imaging block, and thereafter performs step s121 and subsequent steps. Execute.
  • step s123 if the result of determination in step s123 is that processing has been performed for all imaging blocks in the imaging area 10, that is, detection of moving object images has been completed for all areas of the input image 200.
  • the moving object detection unit 31 ends the moving object detection process.
  • the moving object detection unit 31 stores the results of moving object detection for a plurality of image blocks constituting the input image 200. That is, the moving object detection unit 31 stores the results of moving object detection for a plurality of imaging blocks constituting the imaging area 10. This detection result is input to the detection result output unit 4.
  • FIG. 9 is a diagram showing how vectors are extracted from each of the target image block of the input image 200 and the target code word CW of the background model 500.
  • FIG. 10 is a diagram illustrating a relationship between a vector extracted from the target image block of the input image 200 and a vector extracted from the target code word CW of the background model 500.
  • the image information of the target image block in the input image 200 is handled as a vector.
  • the background image information included in the target codeword CW is treated as a vector.
  • Whether or not the target image block is a moving image is determined based on whether or not the vector regarding the image information of the target image block and the vector regarding the background image information of each target code word CW are in the same direction. Is determined.
  • these two types of vectors are directed in the same direction, it can be considered that the image information of the target image block and the background image information of each target code word CW match. Therefore, in this case, the target image block in the input image 200 is determined not to be a moving body image as it is the same as the image indicating the background.
  • the target image block in the input image 200 is not an image showing the background but a moving body image.
  • the moving object detection unit 31 generates an image vector x f in which the pixel values of a plurality of pixels included in the image block of interest in the input image 200 and components.
  • Figure 9 is an image vector x f is shown that the component pixel values of respective pixels of the target image block 210 having nine pixels.
  • each pixel has pixel values of R (red), G (green), and B (blue), so the image vector xf is composed of 27 components.
  • the moving object detection unit 31 uses the background image information in the attention codeword CW included in the attention codebook CB of the background model 500 to generate a background vector that is a vector related to the background image information.
  • the background image information 510 of the target code word CW shown in FIG. 9 includes pixel values for nine pixels. Therefore, a background vector xb having the pixel values for the nine pixels as components is generated.
  • the background vector xb is generated from each of a plurality of code words CW included in the target code book CB. Therefore, a plurality of background vector x b are generated for one image vector x f.
  • the target image block in the input image 200 is not different from the image indicating the background.
  • the image vector xf and each background vector xb are considered to contain a certain amount of noise components, the image vector xf and each background vector xb are not completely in the same direction.
  • it is possible to determine that the target image block in the input image 200 is an image indicating the background.
  • the image vector xf and each background vector xb are completely the same in consideration that the image vector xf and each background vector xb include a certain amount of noise components. Even if it is not facing the direction, it is determined that the target image block in the input image 200 is an image indicating the background.
  • the relationship between the image vector x f and background vector x b to the true vector u can be expressed as in FIG. 10.
  • the image and the vector x f and background vector x b is, as an evaluation value that indicates whether the pointing how the same direction, consider the evaluation value D 2 represented by the following (1).
  • evaluation value D 2 is a minimum eigenvalue of a non-zero 2 ⁇ 2 matrix XX T. Accordingly, the evaluation value D 2 can be determined analytically. Note that the evaluation value D 2 is the minimum eigenvalue of the non-zero 2 ⁇ 2 matrix XX T is described in Non-Patent Document 3 above.
  • Decision image block of interest is whether the moving object image in the input image 200, the minimum value C of the plurality of values of the evaluation value D 2, the mean value for a plurality of values of the evaluation value D 2 mu and
  • the moving object judgment formula shown by the following formula (3) expressed using the standard deviation ⁇ is used. This moving object judgment formula is called Chebyshev's inequality.
  • k in Expression (3) is a constant, and is a value determined based on an imaging environment (an environment in which the imaging unit is installed) of the imaging unit that captures the input image 200 and the like.
  • the constant k is determined by experiments or the like.
  • the moving image detection unit 31 When the moving object detection unit 31 satisfies the moving object determination formula (inequality), the moving image detection unit 31 considers that the image vector x f and each background vector x b do not face the same direction, and the target image block is not an image indicating the background, It determines with it being a moving body image. On the other hand, the moving object detection unit 31 considers that the image vector xf and each background vector xb face the same direction when the moving object determination formula is not satisfied, and the target image block is not a moving object image but a background. It is determined that the image is shown.
  • the moving object detection is performed based on whether the direction of the image vector obtained from the target image block and the direction of the background vector obtained from each target code word CW are the same. Therefore, the moving object detection method according to the present embodiment is a moving object detection method that is relatively robust against changes in brightness in the imaging region 10 such as sunshine changes or illumination changes.
  • an image block determined to be a moving image may be referred to as a “moving image block”.
  • the detection frequency map 600 includes the detection frequency 601 of the moving object (detection target) 700 for each of the plurality of imaging blocks BK constituting the imaging region 10.
  • the non-detection frequency map 610 includes a non-detection frequency 611 of the moving object (detection target) 700 for each of the plurality of imaging blocks BK constituting the imaging region 10.
  • a plurality of detection frequencies 601 included therein are arranged in a matrix.
  • the detection frequency 601 of the moving object 700 for a certain imaging block BK is arranged at the same position as the position of the imaging block BK in the imaging area 10 in the detection frequency map 600.
  • the non-detection frequency map 610 a plurality of non-detection frequencies 611 included therein are arranged in a matrix.
  • the non-detection frequency 611 of the moving object 700 for a certain imaging block BK is arranged at the same position as the position of the imaging block BK in the imaging area 10 in the non-detection frequency map 610.
  • the first specifying unit 32 determines that the moving object 700 exists in the imaging block corresponding to the image block. Then, the detection frequency 601 of the moving object 700 for the imaging block BK corresponding to the image block in the detection frequency map 600 is increased by one.
  • the moving object detection unit 31 determines that an image block included in the input image 200 is not a moving image
  • the first specifying unit 32 determines that the moving object 700 does not exist in the imaging block corresponding to the image block. Then, the non-detection frequency 611 of the moving object 700 for the imaging block BK corresponding to the image block in the non-detection frequency map 610 is increased by one.
  • An example of 600 and a non-detection frequency map 610 are shown.
  • the detection frequency map 600 shown in FIG. 11 the detection frequency 601 of the moving object 700 for the two imaging blocks BK where the moving object 700 exists is large.
  • the non-detection frequency map 610 shown in FIG. 12 the non-detection frequency 611 of the moving object 700 for each imaging block BK other than the two imaging blocks BK in which the moving object 700 exists is large.
  • the detection frequency 601 for the imaging block BK in which the moving body 700 is frequently detected increases. Therefore, by referring to the detection frequency map 600, it is possible to identify an area where the moving object 700 is likely to exist in the imaging area 10. In the imaging region 10, for example, when a person's passage exists, the detection frequency of the imaging block corresponding to the passage increases, and it can be understood that there is a high possibility that a person exists in the imaging block.
  • the non-detection frequency 611 for the imaging block BK in which the moving body 700 is not detected so much increases. Therefore, by referring to the non-detection frequency map 610, it is possible to specify an area in which there is a high possibility that the moving object 700 does not exist in the imaging area 10.
  • the non-detection frequency map 610 when the non-detection frequency 611 for a certain imaging block BK becomes larger than the clearing threshold value, the certain imaging block BK in the detection frequency map 600 is displayed.
  • the detection frequency 601 is cleared and set to zero.
  • the non-detection frequency 611 for the imaging block BK in the non-detection frequency map 610 is also cleared and set to zero.
  • two types of detection frequency maps 600 and two types of non-detection frequency maps 610 are used. Specifically, a first detection frequency map 600 and a first non-detection frequency map 610 that are paired with each other, and a second detection frequency map 600 and a second non-detection frequency map 610 that are paired with each other are used.
  • the first and second detection frequency maps 600 are referred to as “first detection frequency map 600a” and “second detection frequency map 600b”, respectively, and the first and second non-detection frequency maps 610 are respectively referred to as “first non-detection maps”. These are called “frequency map 610a” and “second non-detection frequency map 610b”.
  • the detection frequency for the certain imaging block BK in the first detection frequency map 600a. 601 is cleared and set to zero. At this time, the non-detection frequency 611 for the imaging block BK in the first non-detection frequency map 610a is also cleared and set to zero.
  • the second detection frequency map 610b when the non-detection frequency 611 for a certain imaging block BK becomes larger than the second clearing threshold value, the second detection frequency map 600b displays the certain imaging block BK. The detection frequency 601 is cleared and set to zero. At this time, the non-detection frequency 611 for the imaging block BK in the second non-detection frequency map 610b is also cleared and set to zero.
  • the second clearing threshold value is set larger than the first clearing threshold value.
  • the second clearing threshold value is set to several tens of times the first clearing threshold value.
  • the first clearing threshold value is set to “50”, for example, and the second clearing threshold value is set to “1000”, for example.
  • FIG. 13 is a flowchart showing the map update process.
  • the first specifying unit 32 detects a moving object among a plurality of image blocks constituting the processing target input image 200 in step s131.
  • the image block determined to be a moving image by the unit 31 is specified. That is, the first specifying unit 32 specifies an imaging block determined by the moving object detection unit 31 as a moving object in a plurality of imaging blocks respectively corresponding to a plurality of image blocks constituting the input image 200 to be processed.
  • step s132 the first specifying unit 32 increases the detection frequency of the moving object by one in the imaging block determined that the moving object exists in each of the first and second detection frequency maps 600a and 600b.
  • step s133 the first specifying unit 32 determines that there is no imaging block other than the imaging block determined to have a moving object, that is, no moving object, in each of the first and second non-detection frequency maps 610a and 610b. The frequency of non-detection of moving objects in the captured imaging block is increased by one.
  • the execution order of steps s132 and s133 may be switched.
  • the first specifying unit 32 performs a clear process of the first detection frequency map 600a. Specifically, the first specifying unit 32 first determines whether or not a non-detection frequency larger than the first clearing threshold exists in the first non-detection frequency map 610a. Then, when there is a non-detection frequency larger than the first clearing threshold, the first specifying unit 32 detects the imaging block corresponding to the non-detection frequency in the first detection frequency map 600a. Clear the frequency and set it to zero. At this time, the 1st specific
  • the first specifying unit 32 determines whether there is a non-detection frequency equal to or higher than the first clearing threshold in the first non-detection frequency map 610a, and if the non-detection frequency exists, The detection frequency in the first detection frequency map 600a for the imaging block corresponding to the non-detection frequency may be cleared and set to zero.
  • specification part 32 will perform the clear process of the 2nd detection frequency map 600b in step s135. Specifically, the first specifying unit 32 first determines whether or not there is a non-detection frequency larger than the second clearing threshold in the second non-detection frequency map 610b. Then, when there is a non-detection frequency greater than the second clearing threshold, the first specifying unit 32 detects the imaging block corresponding to the non-detection frequency in the second detection frequency map 600b. Clear the frequency and set it to zero. At this time, the 1st specific
  • the first specifying unit 32 determines whether there is a non-detection frequency equal to or higher than the second clearing threshold in the second non-detection frequency map 610b, and if the non-detection frequency exists, The detection frequency in the second detection frequency map 600b for the imaging block corresponding to the non-detection frequency may be cleared and set to zero. The execution order of steps s134 and s135 may be changed.
  • the first specifying unit 32 executes steps s131 to s135 based on the result of the moving object detection process.
  • FIG. 14 is a flowchart showing the fine movement detection process.
  • the fine movement detection unit 33 performs a detection process for detecting fine movement of an object in the imaging region 10 based on the input image 200 to be processed.
  • the fine motion detection unit 33 is based on the detection result of the moving body detection unit 31 in the moving body region (all regions determined to be a moving body image) included in the input image 200 to be processed.
  • a labeling process is performed, and it is determined whether or not there is a fine movement of the object in the imaging area 10 based on the labeling area obtained by the labeling process.
  • step s141 if the fine movement of the object in the imaging region 10 is not detected, the fine movement detection process ends.
  • the second specifying unit 34 uses the second detection frequency map 600b in step s142 to detect the fine movement of the object in the imaging region 10.
  • the area (fine movement occurrence area) that occurs is specified.
  • the second specifying unit 34 specifies the imaging block BK in which the fine movement of the object has occurred in the plurality of imaging blocks BK constituting the imaging region 10.
  • FIG. 15 is a diagram schematically showing how the person 701 moves slightly in the imaging region 10.
  • objects such as chairs and desks that move in the background may move, but remain almost completely after moving.
  • the fine movement generation area is specified, and the fine movement generation area is regarded as an area where the moving object to be detected exists in the imaging area 10. Yes.
  • the fine movement generation area 750 is indicated by hatching. Details of the fine motion detection process will be described later.
  • step s15 Map correction processing>
  • the map correction process when the fine movement detection unit 33 detects the fine movement of the object, the first specifying unit 32 sets the detection frequency of the second detection frequency map 600b for the fine movement occurrence region specified by the second specifying unit 34. Then, a copy process is performed to copy the first detection frequency map 600a as a value for the fine movement occurrence area. By this copying process, the first detection frequency map 600a is corrected.
  • FIG. 16 is a diagram showing an example of the copy process.
  • the second detection frequency map 600b shown in FIG. 16 corresponds to the example shown in FIG.
  • the first detection frequency map 600a before correction shown in FIG. 16 corresponds to the example shown in FIG.
  • a detection frequency 601 surrounded by a thick line in the second detection frequency map 600b shown in FIG. 16 is a detection frequency of a moving object in the fine movement occurrence region 750 shown in FIG.
  • the detection frequency 601 surrounded by a thick line in the first detection frequency map 600a before correction shown in FIG. 16 is the detection frequency of the moving object in the fine movement occurrence region 750 shown in FIG.
  • the detection frequency for a certain imaging block BK in the first detection frequency map 600a is such that there is no moving object in the imaging block BK. Cleared immediately. Therefore, as shown in FIG. 16, the detection frequency for the fine movement occurrence region 750 in the first detection frequency map 600a before correction shows a relatively small value. Therefore, in the first detection frequency map 600a before correction, the detection frequency for the imaging block BK in which a person is present is reduced, and an area where there is a high possibility that a person is present is appropriately selected from the first detection frequency map 600a. There is a possibility that it cannot be identified.
  • the detection frequency for a certain imaging block BK in the second detection frequency map 600b is the same even if there is no moving object in the imaging block BK. It is not cleared immediately. Therefore, as shown in FIG. 16, the detection frequency for the fine movement occurrence region 750 in the second detection frequency map 600b is a relatively large value.
  • the first specifying unit 32 sets the detection frequency (detection frequency surrounded by a thick line) of the second detection frequency map 600b for the fine movement occurrence region 750 to the first level.
  • the value is copied as a value for the fine movement occurrence area 750 to the one detection frequency map 600a.
  • the first specifying unit 32 specifies a detection frequency whose detection frequency is greater than the threshold in the corrected first detection frequency map 600a. And the 1st specific
  • the threshold value compared with the detection frequency of the corrected first detection frequency map 600a is referred to as a “determination threshold value”.
  • ⁇ Background model update process> Next, the background model update process in step s16 will be described.
  • the cache model includes background image information candidates that are background image information candidates registered in the background model 500.
  • the brightness may change due to changes in sunshine or illumination.
  • the image information of the input image 200 changes, so the moving object detection unit 31 erroneously determines that the image block indicating the background included in the input image 200 is a moving object image.
  • the image information of the image block determined to be a moving image by the moving object detection unit 31 is actually background image information.
  • the background model update unit 35 once registers the image information of the image block determined to be a moving image by the moving object detection unit 31 as a background image information candidate in the cache model. Then, the background model update unit 35 determines whether the background candidate image information registered in the cache model is background image information based on the plurality of input images 200 input during the registration determination period. When the background model update unit 35 determines that the background image information candidate registered in the cache model is background image information, the background model update unit 35 registers the background image information candidate in the background model 500 as background image information. That is, the background model update unit 35 determines whether or not to register the background image information candidate stored in the cache model storage unit 6 in the background model 500 as background image information based on the input image 200 input during the registration determination period. judge.
  • FIG. 17 is a flowchart showing the background model update process.
  • the background model update unit 35 sets an imaging block having an imaging area as an imaging block of interest, and an imaging block of interest in the processing target input image 200 input in step s11 described above. It is determined whether the image block (attention image block) indicating the image is determined to be a moving image by the moving object detection unit 31. If it is determined in step s161 that the target image block is determined not to be a moving image by the moving object detection unit 31, that is, the image information of the target image block is the background image information of each target codeword CW in the background model 500. If determined to match, the background model update unit 35 executes Step s162.
  • the background model update unit 35 changes the latest match time Te of the code word CW in the background model 500 including the background image information determined to match the image information of the target image block to the current time.
  • step s161 if it is determined in step s161 that the target image block is determined to be a moving image by the moving object detection unit 31, the background model update unit 35 executes step s163.
  • step s163 the cache model is updated. Specifically, when the image information of the target image block is not included in each target code word CW included in the cache model in the cache model storage unit 6, the background model update unit 35 displays the image information.
  • a code word CW included as a background image information candidate is generated and registered in the target code book CB in the cache model.
  • the code word CW includes the latest match time Te and the code word generation time Ti in addition to the image information (background image information candidate).
  • the latest match time Te included in the code word CW generated in step s163 is provisionally set to the same time as the code word generation time Ti.
  • the background model update unit 35 when the image information of the target image block is included in the target codeword CW included in the cache model in the cache model storage unit 6, that is, the image information of the target image block
  • the latest matching time Te in the code word CW including the background image information candidate in the cache model is changed to the current time. .
  • step s163 the code word CW including the missing image information is added to the cache model, or the latest match time Te of the code word CW in the cache model is updated.
  • step s163 when the code book CB corresponding to the target imaging block is not registered in the cache model in the cache model storage unit 6, the background model update unit 35 uses the image information of the target image block as the background.
  • a code word CW included as an image information candidate is generated, and a code book CB including the code word CW is generated and registered in the cache model.
  • step s164 the background model update unit 35 sets whether or not processing has been performed for all imaging blocks in the imaging region, that is, sets all imaging blocks to the target imaging block. Determine whether or not. If it is determined in step s164 that there is an imaging block that has not been processed, the background model update unit 35 sets the imaging block that has not yet been processed as a new imaging block of interest, and then continues with step s161 and subsequent steps. Execute. On the other hand, if it is determined in step s164 that the processing has been performed for all the imaging blocks in the imaging area, the background model update unit 35 executes step s165.
  • step s165 the code word CW that is included in the cache model and whose latest match time Te has not been updated for a predetermined period is deleted. That is, when the image information included in the code word CW in the cache model does not match the image information acquired from the input image 200 for a certain period, the code word CW is deleted. If the image information included in the code word CW is background image information, that is, if it is image information obtained from an image indicating the background included in the input image 200, the code word CW includes Since the latest match time Te is frequently updated, the image information included in the code word CW for which the latest match time Te has not been updated for a predetermined period is the image information acquired from the moving body image included in the input image 200.
  • the deletion determination period occurs when a change in image information due to a change in brightness in the imaging area, a change in the environment such as a poster or desk layout change, and a moving object such as a person to be detected moves. This is a period set in advance to distinguish the change in image information. For example, if the imaging frame rate of the imaging unit that captures the input image 200 is 30 fps and the imaging area 10 is the conference room 100 (see FIG. 4), the deletion determination period is several frames to several tens of frames. It is set to a period during which the input image 200 is input.
  • step s165 when the code word CW in which the latest matching time Te is not updated in the deletion determination period is deleted, the background model update unit 35 executes step s166.
  • step s166 the background model update unit 35 identifies the code word CW registered for the cache model and having passed the registration determination period from the code words CW registered in the cache model.
  • step s163 when the code word CW is generated, the code word CW is immediately registered in the cache memory. Therefore, the code word CW is included in the code word CW as the time when the code word CW is registered in the cache model.
  • the code word generation time Ti can be used.
  • the registration judgment period is set to a larger value than the deletion judgment period.
  • the registration determination period is set to a value several times larger than the deletion determination period, for example.
  • the registration determination period is represented by the number of frames. That is, the registration determination period is represented by the number of input images 200 input during that period. If the registration determination period is, for example, “50”, the registration determination period is a period during which 50 frames of input images 200 (50 input images 200) are input.
  • step s166 When step s166 is executed, in step s167, background model registration determination processing using the corrected first detection frequency map 600a is performed. In the background model registration determination process, it is determined whether or not to register the codeword CW identified in step s166 in the background model 500 in the background model storage unit 5. The background model registration determination process will be described in detail below.
  • the first specifying unit 32 uses the first detection frequency map 600a after correction to specify a region where there is a high possibility that a moving object exists in the imaging region 10 as described above. .
  • the first specifying unit 32 is a region where there is a high possibility that a moving object exists in the imaging region 10 when there is no detection frequency greater than the determination threshold. Is determined not to exist.
  • the background model update unit 35 sets the code word CW for each code word CW specified in step s166. Whether to register in the background model 500 is determined based on the identification result of the first identification unit 32.
  • the background model update unit 35 captures an image capturing block corresponding to the image block from which the image information included in the code word CW identified in step s166 has been identified by the first identifying unit 32. If the moving object is included in the region 10 where the moving object is highly likely to exist, that is, if the moving object is highly likely to exist in the imaging block, the code word CW is determined not to be registered in the background model 500. To do.
  • the background model update unit 35 captures the image capturing area 10 in which the first identifying unit 32 identifies the image capturing block corresponding to the image block from which the image information included in the code word CW identified in step s166 is acquired.
  • the code word CW is registered in the background model 500.
  • the background model update unit 35 stores the code word CW specified in step s166. It is determined that all are registered in the background model 500.
  • the background model update unit 35 registers the code word CW determined to be registered in the background model 500 in the code block CB corresponding to the code word CW in the background model 500. Then, the background model update unit 35 deletes the codeword CW registered in the background model 500 from the cache model.
  • the background model update unit 35 is based on the detection result of the moving object in the moving object detection unit 31 using the input image 200 input in the registration determination period. It is determined whether or not the code word CW registered in the cache memory is registered in the background model 500. That is, the background model update unit 35 selects the background image information candidate registered in the cache memory based on the detection result of the moving object in the moving object detection unit 31 using the input image 200 input in the registration determination period. Whether or not to be registered in the background model 500 is determined. Thereby, the image information of the image block erroneously determined to be a moving image by the moving object detection unit 31 can be appropriately registered in the background model 500 as background image information. Therefore, the background model 500 can be updated appropriately, and the accuracy of moving object detection by the moving object detection unit 31 is improved.
  • the codeword CW that has passed the registration determination period after being registered in the cache model is unconditionally registered in the background model 500.
  • the code word CW registered in the cache model and including the image information of the moving object image is registered in the background model 500.
  • the image information of the image block indicating the image of the imaging block in which the moving object exists in the imaging area is unlikely to change. Accordingly, there is a possibility that the code word CW registered in the cache model and including the image information of the moving image indicating the moving object is not deleted from the cache model for a long time and is finally registered in the background model 500. . Thereby, the precision of the moving body detection in the moving body detection part 31 may deteriorate.
  • the first detection after correction is not performed as described above, but the codeword CW that has been registered in the cache model and that has passed the registration determination period is not registered in the background model 500 unconditionally. Whether or not to register the code word CW in the background model 500 is determined using the frequency map 600a. Thereby, it can suppress that the codeword CW containing the image information of a moving body image is registered into the background model 500 accidentally. This point will be described in detail below.
  • the first specifying unit 32 uses the corrected first detection frequency map 600a to specify an imaging block in which a moving object is likely to exist in the imaging region 10.
  • the image information of the image block indicating the image of the imaging block that is highly likely to be present in the input image 200 is the image information of the moving object image. Therefore, even if the code word CW has been registered for the cache model and the registration determination period has elapsed, the imaging block corresponding to the image block from which the image information included in the code word CW is acquired has moving objects. If the imaging block has a high possibility, the image information of the code word CW is highly likely to be image information of a moving body image.
  • the imaging block is an imaging block in which there is a high possibility that a moving object exists
  • the code word CW including the image information of the moving object image is erroneously added to the background model 500 by not adding the code word CW to the background model 500. It can be suppressed.
  • the background model update unit 35 specifies the detection result of the moving object in the moving object detection unit 31 using the input image 200 input in the registration determination period, and specifies the first specifying unit 32. Because it is determined whether or not the background image information candidate registered in the cache memory is registered in the background model 500 as background image information based on the region in which the moving object is highly likely to exist in the imaging region 10. The accuracy of moving object detection by the moving object detection unit 31 can be improved.
  • the background model update unit 35 includes a codeword CW including background image information that does not match the image information of the input image 200 for a predetermined period in the codeword CW included in the background model 500. Is deleted. That is, the background model update unit 35 deletes the code word CW that is included in the background model 500 and whose latest match time Te has not been updated for a predetermined period. Thereby, in the imaging region 10, the code word CW including the image information acquired from the image of the imaging block that is no longer the background due to the time-series imaging environment change can be deleted from the background model 500. Therefore, the information amount of the background model 500 can be reduced.
  • step s169 the background model update unit 35 determines whether or not the fine motion detection unit 33 detects the fine motion of the object in step s14. If it is determined in step s169 that the fine movement detection unit 33 has not detected the fine movement of the object, the background model update process ends.
  • the background model update unit 35 is obtained from the image of the fine movement occurrence region specified in step s14. Image information that is registered in the background model 500 as background image information is deleted from the background model 500. Specifically, the background model update unit 35 includes, for each imaging block included in the fine movement occurrence area, a code word registered in the background model 500 and included in a code book corresponding to the imaging block. Code words having a relatively newest matching time Te are deleted.
  • the background model update unit 35 for each imaging block included in the fine movement occurrence area, among the codewords registered in the background model 500 and included in the code book corresponding to the imaging block, Code words whose time Te is within a few frames from the current time are deleted.
  • step s170 ends, the background model update process ends.
  • the background model 500 that follows the change in the imaging environment is used. Moving object detection can be performed. Therefore, the accuracy of moving object detection is improved.
  • the registration determination period is set to be smaller than a determination threshold value used when specifying an area where a moving object is likely to exist in the imaging area. For example, the registration determination period is set to “50”, and the threshold for determination is set to “100”.
  • the registration determination period is longer than the determination threshold.
  • a stationary object such as a chair or a desk first appears in the imaging region
  • image information about the stationary object is not registered in the background model 500. Therefore, the image of the stationary object is determined as a moving object image. Therefore, the image information about the stationary object is temporarily registered in the cache model.
  • the detection frequency of the first detection frequency map 600a for the imaging block in which the stationary object exists is determined before the registration determination period elapses. The threshold will be exceeded. As a result, the imaging block in which the stationary object exists is determined as an area where there is a high possibility that a moving object exists.
  • the image information regarding the still object registered in the cache model is not registered in the background model 500 even after the registration determination period has elapsed. Therefore, the image of the stationary object is always determined as a moving object image, and the accuracy of moving object detection may be deteriorated.
  • the detection frequency of the first detection frequency map 600a for the imaging block in which a stationary object is present is the determination threshold. Since the registration determination period elapses before the value is exceeded, image information about a stationary object is registered in the background model 500 as background image information. Therefore, it can suppress that the image of a stationary object is a moving body image forever, and can improve the precision of a moving body detection.
  • the registration determination period is set to be smaller than the determination threshold value in order to prevent the stationary object image from being determined to be a moving object image forever as in the present embodiment, the image information of the moving object image is The background model 500 may be registered by mistake.
  • first image information image information obtained from the image block
  • the registration determination period is set before the detection frequency of the first detection frequency map 600a for the imaging block exceeds the determination threshold. Elapse.
  • the first image information (moving body image image information) in the cache model is erroneously registered in the background model 500 as background image information. Thereafter, it is determined that the image block corresponding to the imaging block is not a moving object image, and the accuracy of moving object detection may deteriorate.
  • the image information obtained from the image of the fine movement generation region is the background image information.
  • the image information registered in the background model 500 is deleted from the background model 500.
  • the fine movement generation region can be considered as a region where a moving object exists in the imaging region. Therefore, the image information obtained from the image of the fine movement occurrence area and registered in the background model 500 as the background image information (in the above example, the image information whose corresponding latest matching time Te is relatively new). Can be deleted from the background model 500, and the image information obtained from the moving body image that is erroneously registered in the background model 500 as background image information can be deleted from the background model 500. Therefore, it is possible to suppress deterioration in the accuracy of moving object detection due to setting the registration determination period to be smaller than the determination threshold value.
  • the detection frequency included in the first detection frequency map 600a increases each time the moving object is detected in the imaging block corresponding to the detection frequency in the moving object detection process in step s12. Therefore, if the detection frequency is not cleared, a state in which the detection frequency of an imaging block for which there is no high possibility that a moving object currently exists due to a layout change in the imaging region is larger than a determination threshold value occurs. The possibility increases.
  • the non-detection frequency of the imaging block in the first non-detection frequency map 610a increases.
  • step s134 of the map update process described above the first detection for the imaging block corresponding to the non-detection frequency larger than the first clearing threshold in the first non-detection frequency map 610a.
  • the detection frequency in the frequency map 600a is cleared.
  • the detection frequency of the second detection frequency map 600b is cleared using the second non-detection frequency map 610b.
  • the detection frequency for a certain imaging block BK in the first detection frequency map 600a is cleared as soon as there is no moving object in the imaging block BK. Is done. Therefore, as described above, in the first detection frequency map 600a (the first detection frequency map 600a before correction), the detection frequency for the imaging block BK in which there is a person who causes fine movement becomes small, and the first detection frequency From the map 600a, there is a possibility that an area where a person is likely to exist cannot be appropriately identified.
  • the detection frequency of the second detection frequency map 600b for the fine movement occurrence region is copied as a value for the fine movement occurrence region to the first detection frequency map 600a. Yes.
  • the detection frequency for the imaging block BK in which a person exists increases. Therefore, it is possible to appropriately specify an area where there is a high possibility that a person exists from the corrected first detection frequency map 600a. Therefore, it is possible to appropriately identify an area where a moving object is highly likely to exist in the imaging area. As a result, the accuracy of moving object detection is further improved.
  • the background model update unit 35 detects the moving object in the moving object detection unit 31 using the input image 200 input in the registration determination period, Whether to register the background image information candidate registered in the cache memory as background image information in the background model 500 based on the region specified by the first specifying unit 32 and the region where the moving object is highly likely to exist in the imaging region 10 Judging. Therefore, the accuracy of moving object detection by the moving object detection unit 31 can be improved.
  • the registration determination period is set to be smaller than the determination threshold value, it is determined that the still object image included in the input image 200 is determined to be a moving object image forever. Can be suppressed.
  • the image information obtained from the image of the fine movement occurrence area and registered in the background model 500 as background image information is deleted from the background model 500. Therefore, it is possible to delete from the background model 500 the image information obtained from the moving body image that is erroneously registered in the background model 500 as the background image information. Therefore, the accuracy of moving object detection is further improved.
  • FIG. 19 is a diagram illustrating an example of a result of moving object detection by the moving object detection unit 31.
  • a moving object region 800 detected by the moving object detection unit 31 from the input image 200 is shown superimposed on the input image 200.
  • An input image 200 shown in FIG. 19 includes an image of a room 900 in which a plurality of cardboards 920 and a plurality of chairs 930 are arranged on a floor 910 as a subject image.
  • a window (not shown) is provided on the wall 940 of the room 900.
  • Two people 990a and 990b exist in the room 900.
  • each of the people 990 a and 990 b existing in the room 900 is appropriately detected as the moving object region 800.
  • FIG. 20 is a diagram showing a corrected first detection frequency map 600a when the persons 990a and 990b are stationary at the positions shown in FIG. 19 in the room 900.
  • the floor 910 and the wall 940 are indicated by broken lines.
  • FIG. 20 shows a corrected first detection frequency map 600a by dividing the magnitude of the detection frequency into, for example, three stages from the first stage to the third stage.
  • the region belonging to the third stage where the detection frequency is the highest is shown with a left-upward hatching, and belongs to the second largest second stage. The area is shown with a right-up hatching.
  • no hatching is shown for the region belonging to the first stage with the lowest detection frequency.
  • the corrected first detection frequency map 600a shown in FIG. 20 the detection frequency for the region where the people 990a and 990b exist in the imaging region 10 is high.
  • FIG. 21 is a diagram illustrating an example of a result of moving object detection in the moving object detection unit 31 when the first detection frequency map 600a is not used for updating the background model 500, unlike the present embodiment.
  • a moving object region 800 detected by the moving object detection unit 31 from the input image 200 is shown superimposed on the input image 200.
  • two people 990a and 990b are sitting on two chairs 930, respectively.
  • the person 990 a is detected as the moving object area 800, but the person 990 b is not detected as the moving object area 800.
  • FIG. 22 is a diagram showing an example of the moving object detection result in the present embodiment. As shown in FIG. 22, when the corrected first detection frequency map 600 a is used for updating the background model 500, each of the people 990 a and 990 b is appropriately detected as the moving object region 800.
  • FIG. 23 is a flowchart illustrating a first example of the fine movement detection process.
  • the fine motion detection unit 33 based on the result of the moving object detection process in step s12, includes a plurality of image blocks constituting the input image 200 to be processed.
  • a moving object region consisting of an image block (moving object image block) determined to be a moving object image is identified.
  • the fine motion detection unit 33 performs a labeling process using 4-connection or 8-connection on the moving object region included in the input image 200 to be processed. Thereby, a plurality of adjacent moving body image blocks are connected to form one labeling region.
  • the moving object area is composed of at least one labeling area. It can be said that the labeling area included in the moving object area is an independent area (island area) included in the moving object area.
  • the labeling area is referred to as a “moving object labeling area”.
  • the fine movement detection unit 33 determines whether or not there is a moving body labeling area having a small area in at least one moving body labeling area obtained in step s242. Specifically, the fine motion detection unit 33 determines whether or not there is a moving body labeling region in which the number of pixels included in the at least one moving body labeling region obtained in step s242 is smaller than a predetermined number.
  • a moving body labeling area having a small area is obtained by performing a labeling process on the moving body area included in the input image 200 indicating the image of the imaging area. Therefore, in the at least one moving object labeling region obtained in step s242, it can be determined whether or not there is a fine movement of the object in the imaging region by determining whether or not there is a moving object labeling region with a small area.
  • step s244 When there is no moving object labeling area having a small area, that is, a moving object labeling area in which the number of pixels included in the fine movement detection unit 33 is smaller than a predetermined number, fine movement of the object is generated in the imaging area in step s244. Judge that there is no. If it is determined in step s244 that no fine movement of the object has occurred in the imaging region, the fine movement detection process ends.
  • the fine movement detection unit 33 determines in step s245 that fine movement of the object is occurring in the imaging area.
  • the fine motion detection unit 33 has the number of pixels included in the at least one moving object labeling region obtained in step s242 smaller than the first predetermined number and smaller than the second predetermined number ( ⁇ first predetermined number). If there is a large labeling area, it may be determined that fine movement of the object is occurring in the imaging area.
  • the second predetermined number is set to be less than “10”, for example.
  • the second specifying unit 34 binarizes the second detection frequency map 600b in step s246 to generate a binarized map. That is, the second specifying unit 34 compares each detection frequency included in the second detection frequency map 600b with the threshold value, replaces the detection frequency higher than the threshold value with, for example, “1”, and is equal to or lower than the threshold value.
  • the binarization map is generated by replacing the frequency of detection with “0”, for example.
  • an area indicating “1” in the binarized map is referred to as a “first area”.
  • the first region is a region having a relatively high detection frequency in the second detection frequency map 600b.
  • the second specifying unit 34 performs a labeling process using 4-connection or 8-connection on the first region of the binarized map.
  • the first region of the binarized map is divided into at least one labeling region.
  • the labeling area is referred to as a “frequency labeling area”.
  • the frequency labeling region is a single region (independent region or island region) having a relatively high detection frequency in the second detection frequency map 600b.
  • the second specifying unit 34 specifies a fine movement occurrence region in the imaging region based on at least one frequency labeling region obtained in step s247. Specifically, when the imaging block corresponding to the frequency labeling region includes all of the imaging blocks corresponding to the moving object labeling region with a small area specified in step s243, the second specifying unit 34 determines the frequency. The imaging block corresponding to the labeling area is set as the fine movement generation area.
  • the second specifying unit 34 has such a frequency that the imaging block corresponding to the at least one frequency labeling region obtained in step s247 includes all of the imaging blocks corresponding to the moving object labeling region having a small area.
  • the imaging block corresponding to the moving object labeling region having a small area is set as the fine motion generation region.
  • the second specifying unit 34 selects all of the imaging blocks corresponding to the moving object labeling region for each of the plurality of moving object labeling regions. Then, it is determined whether or not there is a frequency labeling area that is included in the corresponding imaging block.
  • FIG. 24 is a diagram showing an example of the result of the labeling process for the moving object region of the input image 200.
  • the moving object region in the input image 200 composed of a plurality of image blocks 211 is divided into two moving object labeling regions 220a and 220b.
  • the moving body labeling region 220a is a moving body labeling region having a small area.
  • two imaging blocks BKa corresponding to the moving object labeling region 220a having a small area are indicated by hatching.
  • FIG. 25 is a diagram showing an example of the result of the labeling process for the first area of the binarized map 650.
  • the first area of the binarized map 650 is divided into two frequency labeling areas 660a and 660b.
  • four imaging blocks BKb corresponding to the frequency labeling region 660a are indicated by hatching.
  • a moving object labeling region 220a having a small area shown in FIG. 24 is obtained.
  • the frequency labeling regions 660a and 660b shown in FIG. Suppose that it was obtained.
  • the four imaging blocks BKb corresponding to the frequency labeling region 660a include all the two imaging blocks BKa corresponding to the moving object labeling region 220a having a small area. Therefore, in step s248, the four imaging blocks BKb corresponding to the frequency labeling area 660a are set as the fine movement occurrence areas.
  • the labeling process is performed on the first region of the binarized map obtained by binarizing the second detection frequency map 600b. It has been broken. Then, among the frequency labeling regions obtained by the labeling process, the image capturing block corresponding to the frequency labeling region in which all the image capturing blocks corresponding to the moving object labeling region having a small area are included in the image capturing block corresponding thereto is captured.
  • the region is a region where the fine movement of the object occurs.
  • the detection frequency corresponding to the imaging block in which the fine movement of the object has occurred shows a large value. Therefore, in the binarization map obtained by binarizing the second detection frequency map 600b, there is a possibility that the first region indicating “1” corresponds to the imaging block in which the fine movement of the object occurs. high.
  • the first area of the binarized map may include an area corresponding to an imaging block in which no fine movement of the object has occurred.
  • the imaging block corresponding to the first area of the binarized map is unconditionally used as a fine movement occurrence area, it is difficult to specify an accurate fine movement occurrence area.
  • the detection frequency of the 2 detection frequency map 600b shows a large value. Therefore, in the first region of the binarization map (region where the detection frequency is high in the binarization map), it is an independent region including a portion corresponding to the moving object labeling region with a small area, in other words, a moving object labeling region with a small area.
  • the frequency labeling region including the corresponding portion can be considered as a region corresponding to the imaging block in which the fine movement of the object occurs.
  • the labeling process is performed on the first region of the binarized map, and the area of the frequency labeling region (a group of regions having a high detection frequency) obtained by the labeling process is small.
  • An imaging block corresponding to a frequency labeling area that includes all of the imaging blocks corresponding to the moving body labeling area and included in the imaging block corresponding to the imaging block is defined as a fine movement generation area.
  • FIG. 26 is a flowchart illustrating a second example of the fine movement detection process.
  • the fine motion detection unit 33 determines each moving object image block included in the input image 200 to be processed based on the result of the moving object detection process in step s12. Find the motion vector for.
  • This motion vector can be obtained by, for example, the block matching method using the input image 200 to be processed and the previous input image 200.
  • the fine motion detection unit 33 specifies a plurality of adjacent moving object image blocks having the same or similar motion vector in the input image 200 to be processed. Then, the fine motion detection unit 33 sets the region including the identified moving object image blocks as the same object region indicating the same object. Here, at least one identical object region is obtained. That is, the moving object area in the input image 200 to be processed includes at least one identical object area.
  • the fine movement detection unit 33 determines whether or not the same object region having a small area exists in at least one same object region obtained in step s252. Specifically, the fine motion detection unit 33 determines whether or not there is an identical object region in which the number of pixels included in the at least one identical object region obtained in step s252 is smaller than a predetermined number. When a fine movement of an object occurs in the imaging area, the same object area having a small area is generated in the moving object area in the input image 200 indicating the image of the imaging area. Therefore, by determining whether or not the same object region having a small area exists in at least one same object region obtained in step s252, it is possible to specify whether or not fine movement of the object is occurring in the imaging region. .
  • step s254 fine motion detection of the object has occurred in the imaging region. Judge that there is no. If it is determined in step s254 that no fine movement of the object has occurred in the imaging region, the fine movement detection process ends.
  • the fine motion detection unit 33 determines in step s255 that the fine motion of the object is occurring in the imaging region.
  • the fine motion detection unit 33 has the number of pixels included in the at least one same object region obtained in step s252 smaller than the first predetermined number and smaller than the second predetermined number. If there is a large same object region, it may be determined that fine movement of the object is occurring in the imaging region.
  • step s255 When step s255 is executed, the second specifying unit 34 binarizes the second detection frequency map 600b and generates a binarized map in step s256, as in step s246 described above.
  • step s257 the second specifying unit 34 performs a labeling process using 4-connection, 8-connection, or the like on the first region of the binarized map as in step s247 described above.
  • the first region of the binarized map is divided into at least one frequency labeling region.
  • the second specifying unit 34 specifies the fine movement occurrence region in the imaging region based on at least one frequency labeling region obtained in step s257. Specifically, when the imaging block corresponding to the frequency labeling region includes all of the imaging blocks corresponding to the same object region having a small area specified in step s253, the second specifying unit 34 determines the frequency. The imaging block corresponding to the labeling area is set as the fine movement generation area.
  • the second specifying unit 34 has such a frequency that, in at least one frequency labeling region obtained in step s257, the corresponding imaging block includes all imaging blocks corresponding to the same object region having a small area. When there is no labeling area, an imaging block corresponding to the same object area having a small area is set as a fine movement generation area.
  • the second specifying unit 34 selects all of the imaging blocks corresponding to the same object region for each of the plurality of the same object regions. Then, it is determined whether or not there is a frequency labeling area that is included in the corresponding imaging block.
  • the first area indicating “1” is the imaging block in which the fine movement of the object occurs. There is a high possibility of responding to.
  • the first area of the binarized map may include an area corresponding to an imaging block in which no fine movement of the object has occurred. Therefore, if the imaging block corresponding to the first area of the binarized map is unconditionally used as a fine movement occurrence area, it is difficult to specify an accurate fine movement occurrence area.
  • the detection frequency of the 2 detection frequency map 600b shows a large value. Therefore, in the first region of the binarization map, an independent region including a portion corresponding to the same object region having a small area, in other words, a frequency labeling region including a portion corresponding to the same object region having a small area, It can be considered that the region corresponds to the imaging block in which the slight movement is generated.
  • the labeling process is performed on the first region of the binarized map, and the frequency of the imaging block corresponding to the same object region having a small area among the frequency labeling regions obtained thereby.
  • An imaging block corresponding to a frequency labeling region that includes all of the imaging blocks corresponding thereto is used as a fine motion generation region.
  • FIG. 27 is a flowchart illustrating a third example of the fine movement detection process.
  • step s261 the fine movement detection unit 33 identifies a moving body region included in the input image 200 to be processed, as in step s241 described above.
  • step s252 the fine motion detection unit 33 performs a labeling process on the moving object region included in the input image 200 to be processed, as in step s242 described above.
  • the fine motion detection unit 33 obtains a motion vector for at least one moving object labeling region obtained by the labeling process in step s262. For example, the fine motion detection unit 33 obtains motion vectors for a plurality of moving object image blocks constituting the moving object labeling region as in the second example. Then, the fine motion detection unit 33 sets the average value of the obtained plurality of motion vectors as the motion vector of the moving object labeling region.
  • the fine motion detection unit 33 determines whether or not there is a moving body labeling region with a small motion vector size (motion amount) in at least one moving body labeling region obtained by the labeling process in step s262. Judging. Specifically, the fine motion detection unit 33 determines whether or not there is a moving body labeling region having a motion vector whose size is smaller than a predetermined value in at least one moving body labeling region obtained in step s262. .
  • a moving body labeling area with a small motion vector is obtained by performing a labeling process on the moving body area included in the input image 200 indicating the image of the imaging area. It is done. Therefore, in the at least one moving object labeling region obtained in step s262, it is determined whether there is a moving object labeling region with a small motion vector size, and whether or not a fine movement of the object has occurred in the imaging region. Can be identified.
  • the fine movement detection unit 33 determines that no fine movement of the object has occurred in the imaging area in step s265 when there is no moving body labeling area with a small motion vector. If it is determined in step s265 that no fine movement of the object has occurred in the imaging region, the fine movement detection process ends.
  • the fine movement detection unit 33 determines in step s266 that fine movement of the object is occurring in the imaging area.
  • the fine motion detection unit 33 has a motion vector size smaller than the first predetermined value and smaller than the second predetermined value ( ⁇ first predetermined value). If there is a larger labeling area, it may be determined that fine movement of the object is occurring in the imaging area.
  • step s266 When step s266 is executed, the second specifying unit 34 binarizes the second detection frequency map 600b in step s267 to generate a binarized map, as in step s246 described above.
  • step s268 the second specifying unit 34 performs a labeling process on the first region of the binarized map, similarly to step s247 described above.
  • the second specifying unit 34 specifies a fine movement occurrence region in the imaging region based on at least one frequency labeling region obtained by the labeling process in step s268. Specifically, the second specifying unit 34, when the imaging block corresponding to the frequency labeling area includes all of the imaging blocks corresponding to the moving object labeling area with the small motion vector specified in step s264. Uses the imaging block corresponding to the frequency labeling region as the fine motion generation region.
  • the second specifying unit 34 selects all of the imaging blocks corresponding to the moving object labeling region having a small motion vector size in the at least one frequency labeling region obtained in step s268. When there is no frequency labeling region that includes the image, the imaging block corresponding to the moving object labeling region having a small motion vector size is set as the fine motion generation region.
  • the second specifying unit 34 determines all of the imaging blocks corresponding to the moving object labeling region for each of the plurality of moving object labeling regions. Is determined whether or not there is a frequency labeling region such that the corresponding imaging block includes it.
  • a fine movement of the object is generated in the imaging region by determining whether or not there is a moving object labeling region having a small motion vector.
  • a moving body such as a person slightly moves as a whole
  • a moving body labeling region having a small area cannot be obtained.
  • ⁇ Modification> When a change in brightness (including fluctuations) in the imaging region 10 such as a change in sunlight or a change in illumination occurs, the accuracy of moving object detection may be reduced. As a result, there is a possibility that fine movement of the object in the imaging region cannot be detected properly. If the fine moving object detection process and the map correction process are executed when the fine movement of the object in the imaging region cannot be appropriately detected, the accuracy of the moving object detection may further decrease.
  • the moving object detection apparatus 1 does not execute the minute object detection process and the map correction process when the brightness change in the imaging region 10 occurs. Thereby, the fall of the precision of a moving body detection resulting from the fact that the fine movement of the object in an imaging area cannot be detected appropriately can be suppressed.
  • FIG. 28 is a block diagram showing the configuration of the moving object detection device 1 according to this modification.
  • the moving object detection device 1 according to this modification is the moving object detection device 1 according to the above-described embodiment, further provided with a detection unit 36.
  • the detection unit 36 detects a change in brightness in the imaging region.
  • FIG. 29 is a flowchart showing the operation of the moving object detection apparatus 1 according to this modification.
  • the process shown in FIG. 29 is executed.
  • step s11 moving object detection process
  • step s12 moving object detection process
  • step s13 map update process
  • step s17 in the moving object detection device 1 according to this modification, the detection unit 36 performs a detection process of detecting a change in brightness in the imaging region.
  • the moving object detection apparatus 1 performs the minute object detection process (step s14), the map correction process (step s15), and the background model update process. (Step s16) is sequentially executed.
  • the moving object detection device 1 when the detection unit 36 detects a change in brightness in the imaging region in step s17, the moving object detection device 1 does not perform the minute object detection process and the map correction process, and performs the background model update process. Execute. In the background model update process in this case, the above-described step s170 is not executed because the minute moving object detection process is not executed.
  • the image information may change in the entire input image 200, and the proportion of the moving object region in the input image 200 may increase.
  • the detection unit 36 determines that a change in brightness has occurred in the imaging region when the ratio of the moving object region in the processing target input image 200 is greater than the threshold value.
  • the ratio Rd of the moving object region in the processing target input image 200 is expressed by the following equation (4), where Pd is the number of pixels of the moving object region in the processing target input image 200 and Pa is the total number of pixels of the input image 200. It is represented by
  • the pixel number Pd of the moving object region in the input image 200 can be obtained by multiplying the number of moving object image blocks included in the input image 200 by the number of pixels included in one image block.
  • the detection unit 36 performs a labeling process on the moving object region included in the input image 200 to be processed, similar to step s242 described above. Then, the detection unit 36 obtains a circumscribed rectangle of the labeling area obtained by the labeling process. The detection unit 36 determines that a change in brightness has occurred in the imaging region when there is a labeling region in which the area of the circumscribed rectangle is larger than the threshold value in the obtained labeling region.
  • ⁇ Third method> it can be detected that the brightness has suddenly changed in the imaging area, but when the brightness gradually changes in the imaging area, the brightness change in the imaging area is detected. It is difficult to detect. In the first and second methods, it is difficult to detect a change that increases or decreases in brightness in the imaging area, that is, a change in brightness in the imaging area. When the brightness gradually changes in the imaging area or when the brightness changes in the imaging area, the average luminance value of the entire screen between the plurality of input images 200 becomes unstable.
  • the detection unit 36 uses the following equation (5) to detect the (N + 1) input images 200 composed of the input image 200 to be processed and the input image 200 before that.
  • the degree of instability V for the average luminance value of the entire image is obtained (N ⁇ 1). Then, when the obtained degree of instability V is greater than the threshold value, the detection unit 36 determines that a change in brightness has occurred in the imaging region.
  • vi is the i-th (0 ⁇ i ⁇ N) input image when the numbers 0 to N are assigned to the (N + 1) input images 200 in order from the oldest.
  • the average luminance value in the entire 200 is shown.
  • M in equation (5) represents an average value of average luminance values for (N + 1) input images 200, and is represented by the following equation (6).
  • the detection unit 36 may use the following equation (7) instead of equation (5).
  • the detection unit 36 detects a change in brightness in the imaging region using at least one of the first to third methods.
  • the detection unit 36 detects a change in brightness in the imaging region using a plurality of methods among the first to third methods, the imaging region is detected by any one of the plurality of methods.
  • the minute object detection process and the map correction process are not executed.
  • the determination threshold value for the first detection frequency map 600a is the first threshold value for the first non-detection frequency map 610a. It is desirable to be larger than the clearing threshold value.
  • the determination threshold value is reduced, there is a possibility of erroneously determining that there is a high possibility that a moving object exists for an imaging block in which the moving object happens to stay a little. Therefore, when the environment of the imaging region 10 is an environment where there is little movement of the moving object, the determination threshold value is increased.
  • the determination threshold value is smaller than the first clearing threshold value.
  • the determination threshold value is increased, there is a possibility that a region where a moving object is likely to exist cannot be appropriately specified. Therefore, when the environment of the imaging region 10 is an environment in which the movement of the moving object is large, the determination threshold value is decreased.
  • the size of the image block is 3 pixels ⁇ 3 pixels.
  • the size is not limited to this, and the size of the image block may be 4 pixels ⁇ 4 pixels or 5 pixels ⁇ 5 pixels. Good.
  • the code word CW for a certain image block exemplifies a case where the pixel values of all the pixels in the certain image block are included as image information.
  • the code word CW may not include the pixel values of all the pixels in the image block as the image information.
  • the code word CW may include pixel values for 5 pixels as image information.
  • each pixel in the input image 200 has a pixel value of R (red), G (green), and B (blue). It is not limited. Specifically, the pixel value of each pixel in the input image 200 may be expressed using a color space other than RGB. For example, when the input image 200 is YUV format image data, the luminance signal Y and the two color difference signals U and V are used as pixel values of each pixel.

Abstract

 第1特定部は、第1検出頻度マップでの検出頻度が第1のしきい値以上あるいは当該第1のしきい値よりも大きい部分撮像領域を、動体が存在する可能性が高い第1領域として特定する。背景モデル更新部は、判定期間において入力される入力画像が用いられた動体検出部での動体の検出結果と、第1特定部で特定される第1領域とに基づいて、第2記憶部内の背景画像情報候補を背景画像情報として背景モデルに登録するか否かを判定する。背景モデル更新部は、微動検出部で物体の微動が検出されたとき、入力画像における第2領域の画像から得られた画像情報であって、背景モデルに背景画像情報として登録されている画像情報を、当該背景モデルから削除する。

Description

動体検出装置、動体検出方法及び制御プログラム
 本発明は、動体の検出技術に関する。
 特許文献1及び非特許文献1~3にも記載されているように、人等の動体の検出技術に関して従来から様々な技術が提案されている。
特開2012-14302号公報
K.Kim,T.Chalidabhongse,D.Harwood,and L.Davis,"Real-time foreground-background segmentation using codebook model"Real-Time Imaging,vol.11,no.3,pp.172-185,Jun.2005. P.Guha,D.Palai,K.S.Venkatesh,and A.Mukerjee,"A Multiscale Co-linearity Statistic Based Approach To Robust Background Modeling."ACCV,2006. R.Mester,T.Aach,and L.Dumbgen,"Illumination-invariant change detection using a statistical colinearity criterion"Proceedings of the 23rd DAGM-Symposium on Pattern Recognition,Springer-Verlag(2001)170-177
 動体を検出する際には、その精度の向上が望まれている。
 そこで、本発明は上述の点に鑑みて成されたものであり、動体の検出精度を向上することが可能な技術を提供することを目的とする。
 本発明に係る動体検出装置の一態様は、背景画像情報を含む背景モデルを記憶する第1記憶部と、前記背景モデルと入力画像とを用いて、当該入力画像に写る撮像領域に存在する動体を検出する動体検出部と、前記動体検出部での検出結果に基づいて、前記撮像領域を構成する複数の部分撮像領域のそれぞれについての動体の検出頻度を示す第1検出頻度マップを生成し、当該複数の部分撮像領域のうち、当該第1検出頻度マップでの当該検出頻度が第1のしきい値以上あるいは当該第1のしきい値よりも大きい部分撮像領域を、動体が存在する可能性が高い第1領域として特定する第1特定部と、入力画像に基づいて前記撮像領域での物体の微動を検出する微動検出部と、前記微動検出部で物体の微動が検出されたとき、前記撮像領域において物体の微動が生じている第2領域を特定する第2特定部と、第2記憶部と、前記背景モデルを更新する背景モデル更新部とを備え、前記背景モデル更新部は、入力画像に含まれる、前記動体検出部が動体を検出した部分撮像領域の画像から得られた画像情報を背景画像情報候補として前記第2記憶部に記憶し、前記背景モデル更新部は、その期間に入力される入力画像の枚数で表され、前記第1のしきい値よりも小さい判定期間において入力される入力画像が用いられた前記動体検出部での動体の検出結果と、前記第1特定部で特定される前記第1領域とに基づいて、前記第2記憶部内の背景画像情報候補を背景画像情報として前記背景モデルに登録するか否かを判定し、前記背景モデル更新部は、前記微動検出部で物体の微動が検出されたとき、入力画像における前記第2領域の画像から得られた画像情報であって、前記背景モデルに背景画像情報として登録されている画像情報を、当該背景モデルから削除する。
 また、本発明に係る動体検出装置の一態様では、前記第1特定部は、前記動体検出部での検出結果に基づいて、前記複数の部分撮像領域のそれぞれについての動体の非検出頻度を示す第1非検出頻度マップを生成し、前記第1特定部は、前記複数の部分撮像領域のうち、前記第1非検出頻度マップでの前記非検出頻度が第2のしきい値以上あるいは当該第2のしきい値よりも大きい部分撮像領域についての、前記第1検出頻度マップの前記検出頻度及び前記第1非検出頻度マップの前記非検出頻度をクリアする。
 また、本発明に係る動体検出装置の一態様では、前記第1特定部は、前記動体検出部での検出結果に基づいて、前記複数の部分撮像領域のそれぞれについての動体の検出頻度を示す第2検出頻度マップと、前記複数の部分撮像領域のそれぞれについての動体の非検出頻度を示す第2非検出頻度マップとを生成し、前記第1特定部は、前記複数の部分撮像領域のうち、前記第2非検出頻度マップでの前記非検出頻度が、前記第2のしきい値よりも大きい第3のしきい値以上あるいは当該第3のしきい値よりも大きい部分撮像領域についての、前記第2検出頻度マップの前記検出頻度及び前記第2非検出頻度マップの前記非検出頻度をクリアし、前記第1特定部は、前記微動検出部で物体の微動が検出されたとき、前記第2領域についての前記第2検出頻度マップの前記検出頻度を、前記第1検出頻度マップに対して当該第2領域についての値としてコピーする。
 また、本発明に係る動体検出装置の一態様では、前記撮像領域の明るさの変化を検出する検出部がさらに設けられ、前記微動検出部は、前記検出部において前記撮像領域の明るさの変化が検出されたときには、物体の微動の検出を行わない。
 また、本発明に係る動体検出装置の一態様では、前記微動検出部は、前記動体検出部での検出結果に基づいて、入力画像に含まれる動体領域に対してラベリング処理を行い、当該ラベリング処理によって得られたラベリング領域に基づいて前記撮像領域において物体の微動があるか否かを判断する。
 また、本発明に係る動体検出装置の一態様では、前記微動検出部は、前記ラベリング領域についての動きベクトルを取得し、当該動きベクトルに基づいて前記撮像領域において物体の微動があるか否かを判断する。
 また、本発明に係る動体検出装置の一態様では、前記微動検出部は、前記動体検出部での検出結果に基づいて、入力画像についての動きベクトルを取得し、当該動きベクトルに基づいて前記撮像領域において物体の微動があるか否かを判断する。
 また、本発明に係る動体検出方法の一態様は、(a)第1記憶部が記憶する、背景画像情報を含む背景モデルと、入力画像とを用いて、当該入力画像に写る撮像領域に存在する動体を検出する工程と、(b)前記工程(a)での検出結果に基づいて、前記撮像領域を構成する複数の部分撮像領域のそれぞれについての動体の検出頻度を示す第1検出頻度マップを生成する工程と、(c)前記複数の部分撮像領域のうち、前記第1検出頻度マップでの前記検出頻度がしきい値以上あるいは当該しきい値よりも大きい部分撮像領域を、動体が存在する可能性が高い第1領域として特定する工程と、(d)入力画像に基づいて前記撮像領域での物体の微動を検出する工程と、(e)前記工程(d)で物体の微動が検出されたとき、前記撮像領域において物体の微動が生じている第2領域を特定する工程と、(f)入力画像に含まれる、前記工程(a)で動体が検出された部分撮像領域の画像から得られた画像情報を背景画像情報候補として第2記憶部に記憶する工程と、(g)その期間に入力される入力画像の枚数で表され、前記しきい値よりも小さい判定期間において入力される入力画像が用いられた前記工程(a)での動体の検出結果と、前記工程(c)で特定される前記第1領域とに基づいて、前記第2記憶部内の背景画像情報候補を背景画像情報として前記背景モデルに登録するか否かを判定する工程と、(h)前記工程(d)で物体の微動が検出されたとき、入力画像における前記第2領域の画像から得られた画像情報であって、前記背景モデルに背景画像情報として登録されている画像情報を、当該背景モデルから削除する工程とを備える。
 また、本発明に係る制御プログラムの一態様は、動体検出装置を制御するための制御プログラムであって、前記動体検出装置に、(a)第1記憶部が記憶する、背景画像情報を含む背景モデルと、入力画像とを用いて、当該入力画像に写る撮像領域に存在する動体を検出する工程と、(b)前記工程(a)での検出結果に基づいて、前記撮像領域を構成する複数の部分撮像領域のそれぞれについての動体の検出頻度を示す第1検出頻度マップを生成する工程と、(c)前記複数の部分撮像領域のうち、前記第1検出頻度マップでの前記検出頻度がしきい値以上あるいは当該しきい値よりも大きい部分撮像領域を、動体が存在する可能性が高い第1領域として特定する工程と、(d)入力画像に基づいて前記撮像領域での物体の微動を検出する工程と、(e)前記工程(d)で物体の微動が検出されたとき、前記撮像領域において物体の微動が生じている第2領域を特定する工程と、(f)入力画像に含まれる、前記工程(a)で動体が検出された部分撮像領域の画像から得られた画像情報を背景画像情報候補として第2記憶部に記憶する工程と、(g)その期間に入力される入力画像の枚数で表され、前記しきい値よりも小さい判定期間において入力される入力画像が用いられた前記工程(a)での動体の検出結果と、前記工程(c)で特定される前記第1領域とに基づいて、前記第2記憶部内の背景画像情報候補を背景画像情報として前記背景モデルに登録するか否かを判定する工程と、(h)前記工程(d)で物体の微動が検出されたとき、入力画像における前記第2領域の画像から得られた画像情報であって、前記背景モデルに背景画像情報として登録されている画像情報を、当該背景モデルから削除する工程とを実行させるためのものである。
 動体の検出精度が向上する。
動体検出装置の構成を示す図である。 画像処理部の構成を示す図である。 撮像領域の一例を示す図である。 背景モデルの一例を示す図である。 コードワードの一例を示す図である。 動体検出装置の動作を示すフローチャートである。 動体検出装置の動作を示すフローチャートである。 動体検出装置の動作を示すフローチャートである。 動体検出装置の動作を説明するための図である。 画像ベクトルと背景ベクトルとの関係を示す図である。 検出頻度マップの一例を示す図である。 非検出頻度マップの一例を示す図である。 動体検出装置の動作を示すフローチャートである。 動体検出装置の動作を示すフローチャートである。 撮像領域において人が微動する様子を模式的に示す図である。 マップ補正処理を説明するための図である。 動体検出装置の動作を示すフローチャートである。 撮像領域において検出対象物が存在する可能性が高い領域の一例を示す図である。 動体検出結果の一例を示す図である。 第1検出頻度マップの一例を示す図である。 動体検出結果の一例を示す図である。 動体検出結果の一例を示す図である。 動体検出装置の動作を示すフローチャートである。 微動検出処理を説明するための図である。 微動検出処理を説明するための図である。 動体検出装置の動作を示すフローチャートである。 動体検出装置の動作を示すフローチャートである。 変形例に係る動体検出装置の構成を示す図である。 変形例に係る動体検出装置の動作を示すフローチャートである。
 <動体検出装置の動作の概要>
 図1は動体検出装置1の構成を示すブロック図である。動体検出装置1は、入力される画像に基づいて、当該画像に写る撮像領域、つまり当該画像を撮像する撮像部の撮像領域(視野範囲)に存在する動体を検出する。
 本実施の形態では、検出対象の動体は、例えば人である。動体検出装置1は、入力される画像に含まれる動体画像(動体を示す画像)を検出することによって、動体検出、つまり当該画像に写る撮像領域に存在する動体を検出する。
 動体検出装置1の動作段階として、準備段階と実動作段階とが存在する。動体検出装置1は、準備段階において、時系列で撮像されかつ撮像された順で入力される複数枚の入力画像を用いて、背景モデルの生成処理を実行する。背景モデルは、同一のシーン(被写体)を撮影して得られた複数枚の入力画像に含まれる情報が集められて構成されたモデルである。背景モデルは、後述の動体検出処理において、時系列で撮像されかつ撮像された順で入力される各入力画像から動体画像を検出する際に利用される。なお、背景モデルの生成処理が実行される準備段階は「学習段階」とも呼ばれる。以後、背景モデルの生成で使用される入力画像を「基準画像」と呼ぶことがある。また、動体画像の検出の対象となる入力画像を「検出対象画像」と呼ぶことがある。
 動体検出装置1では、背景モデルの生成が完了すると、動作段階が準備段階から実動作段階へと移行する。動体検出装置1は、実動作段階において、入力画像に対して動体画像の検出を行う動体検出処理と、後述する第1検出頻度マップ、第2検出頻度マップ、第1非検出頻度マップ及び第2非検出頻度マップを更新するマップ更新処理と、物体の微動を検出する微動検出処理と、第1検出頻度マップを補正するマップ補正処理と、背景モデルを更新する背景モデル更新処理とを行う。なお、本実施の形態では、検出対象の動体は人であるが、人以外の動体、例えば人以外の動物であっても良い。
 <動体検出装置の構成>
 図1に示されるように、動体検出装置1は、画像入力部2と、画像処理部3と、検出結果出力部4と、背景モデル記憶部5と、キャッシュモデル記憶部6とを備えている。図2は画像処理部3の構成を示すブロック図である。
 画像入力部2は、動体検出装置1の外部から入力される入力画像200を画像処理部3に入力する。入力画像200は撮像部で撮像された撮像画像である。画像入力部2に対しては、時系列で撮像された複数枚の入力画像200が撮像された順で入力される。入力画像200の大きさは、例えば、320画素×240画素(QVGA)となっている。
 図3は、入力画像200に写る撮像領域10、つまり入力画像200を撮像する撮像部の撮像領域(視野範囲)10の一例を示す図である。図3に示される撮像領域10には、被写体として会議室100が含まれている。したがって、この場合には、動体検出装置1に入力される入力画像200は、会議室100を示す画像となる。会議室100では、複数の机101と複数の椅子102が床の中央部を取り囲むように並べられており、複数の机101の外側が通路103となっている。そして、会議室100では、壁の一部にカーテン104が設けられている。本実施の形態に係る動体検出装置1は、例えば、会議室100を示す入力画像200に対して動体画像の検出を行うことによって、会議室100に存在する人を検出する。
 画像処理部3は、画像入力部2から入力される入力画像200に対して様々な画像処理を行う。画像処理部3は、CPU300と記憶部310を備えている。記憶部310は、ROM(Read Only Memory)及びRAM(Random Access Memory)等の、CPU300が読み取り可能な非一時的な記録媒体で構成されている。記憶部310には、動体検出装置1を制御するための制御プログラム311が記憶されている。CPU300が記憶部310内の制御プログラム311を実行することによって、画像処理部3には様々な機能ブロックが形成される。
 なお記憶部310は、ROM及びRAM以外の、コンピュータが読み取り可能な非一時的な記録媒体を備えていても良い。記憶部310は、例えば、小型のハードディスクドライブ及びSSD(Solid State Drive)等を備えていても良い。
 図2に示されるように、画像処理部3には、背景モデル生成部30、動体検出部31、第1特定部32、微動検出部33、第2特定部34及び背景モデル更新部35等の複数の機能ブロックが形成される。これらの機能ブロックは、CPUがプログラムを実行することによって実現されるのではなく、機能の実現にプログラムが不要な、論理回路等を用いたハードウェア回路で実現されても良い。
 背景モデル生成部30は、画像入力部2から順次入力される複数枚の入力画像200(複数枚の基準画像200)を用いて、背景画像情報を含む背景モデル500を生成する。背景モデル生成部30によって生成された背景モデル500は背景モデル記憶部5に記憶される。背景モデル更新部35は、背景モデル記憶部5内の背景モデル500の更新を行う。
 動体検出部31は、画像入力部2から入力される入力画像200と、背景モデル記憶部5内の背景モデル500とを用いて、入力画像200中の動体画像を検出する。言い換えれば、動体検出部31は、入力画像200と背景モデル500とを用いて、当該入力画像200に写る撮像領域10に存在する動体を検出する。
 第1特定部32は、動体検出部31での動体検出の検出結果に基づいて、撮像領域10において動体が存在する可能性が高い領域を特定する。具体的には、第1特定部32は、動体検出部31での検出結果に基づいて、検出頻度マップと非検出頻度マップを生成し、これらのマップを用いて撮像領域10において動体が存在する可能性が高い領域を特定する。検出頻度マップは、撮像領域10における複数の領域での動体の検出頻度の分布を示している。非検出頻度マップは、撮像領域10における複数の領域での動体の非検出頻度の分布を示している。本実施の形態では、後述するように、2種類の検出頻度マップ(第1及び第2検出頻度マップ)と、2種類の非検出頻度マップ(第1及び第2非検出頻度マップ)が生成される。
 微動検出部33は、入力画像に基づいて、撮像領域10での物体の微動を検出する。第2特定部34は、微動検出部33で物体の微動が検出されたとき、撮像領域10において物体の微動が生じている領域を特定する。以後、当該領域を「微動発生領域」と呼ぶことがある。
 背景モデル記憶部5は、背景モデル生成部30で生成される背景モデル500を記憶する。キャッシュモデル記憶部6は、後述するキャッシュモデルを記憶する。背景モデル記憶部5及びキャッシュモデル記憶部6のそれぞれは、フラッシュメモリ、EPROM(Erasable Programmable Read Only Memory)またはハードディスク(HD)等の書き換え可能な記憶手段で構成される。なお本例では、背景モデル記憶部5とキャッシュモデル記憶部6とはハードウェア的に独立しているが、一つの記憶装置が有する記憶領域の一部を背景モデル記憶部5として使用し、当該記憶領域の他の一部をキャッシュモデル記憶部6として使用しても良い。
 検出結果出力部4は、動体検出部31での動体検出の検出結果を外部に出力する。検出結果出力部4は、例えば、撮像領域10の様子、つまり撮像領域10に存在する被写体(図3の例では会議室100)の様子をリアルタイムで表示する表示部を備えている。そして、検出結果出力部4は、表示部において、動体が検出された領域を色等で表示することによって、動体検出の検出結果を外部に出力する。また、検出結果出力部4は、検出結果を音声等の音で外部に出力しても良い。また、検出結果出力部4は、検出結果を示す信号を、外部装置に対して出力することによって、当該検出結果を外部に出力しても良い。この場合には、外部装置は、検出結果に応じた動作を実行する。例えば、外部装置は、警報を発生する。あるいは、撮像領域10が図3の会議室100である場合には、外部装置は、会議室100の照明器具を制御して、人が存在する領域だけ明るくする。また、外部装置は、会議室100の空調機を制御して、人が存在する領域だけ冷却したり、暖めたりする。
 <準備段階(背景モデル生成処理)>
 次に動体検出装置1の準備段階で行われる背景モデル生成処理について説明する。図4は背景モデル500を説明するための図である。本実施の形態では、撮像領域10において人が存在しないとき(会議室100が利用されていないとき)に撮像部で撮像された入力画像200が、背景モデル500の生成で使用される基準画像200となっている。背景モデル生成処理では、A枚(A≧2)の基準画像200に基づいて背景モデル500が生成される。
 本実施の形態では、撮像領域10は、複数の矩形の撮像ブロック(部分撮像領域)に分割される。入力画像200に含まれる、ある撮像ブロックの画像を示す領域を「画像ブロック」と呼ぶと、入力画像200は、撮像領域10を構成する複数の撮像ブロックの画像をそれぞれ示す複数の画像ブロックで構成される。本実施の形態では、一つの画像ブロックの大きさは、例えば、3画素×3画素となっている。例えば、入力画像200に、人の手を示す画像が含まれているとすると、当該画像には数個の画像ブロックが含まれる。以後、撮像ブロックと、入力画像200における、当該撮像ブロックの画像を示す画像ブロックとに関して、当該撮像ブロックを、当該画像ブロックに対応する撮像ブロックと呼ぶことがある。
 図4に示されるように、背景モデル500には、複数の撮像ブロックBKにそれぞれ対応する複数のコードブック(Codebook)CBが含まれる。各コードブックCBには、画像情報と、当該画像情報に関連する関連情報とを含むコードワード(Codeword)CWが含まれている。コードブックCBに含まれるコードワードCWは、一枚の入力画像200における、当該コードブックCBが対応する撮像ブロックBKの画像を示す画像ブロックに基づいて生成される。各コードブックCBには複数のコードワードCWが含まれている。以後、背景モデル500中のコードワードCWに含まれる画像情報を「背景画像情報」と呼ぶことがある。
 図4において砂地のハッチングが示されているコードブックCBには、3枚の基準画像200a~200cに基づいてそれぞれ生成された3つのコードワードCW1~CW3が含まれている。コードブックCBに含まれるコードワードCW1は、基準画像200aにおける、当該コードブックCBが対応する撮像ブロックBKの画像を示す画像ブロックに基づいて生成される。コードブックCBに含まれるコードワードCW2は、基準画像200bにおける、当該コードブックCBが対応する撮像ブロックBKの画像を示す画像ブロックに基づいて生成される。そして、コードブックCBに含まれるコードワードCW3は、基準画像200cにおける、当該コードブックCBが対応する撮像ブロックBKの画像を示す画像ブロックに基づいて生成される。
 図5はコードワードCWを説明するための図である。コードワードCWには、当該コードワードCWを含むコードブックCBが対応する撮像ブロックの画像を示す画像ブロックの画像情報、つまり当該画像ブロックを構成する複数の画素の画素値PVが、背景画像情報として含まれている。そして、コードワードCWには、関連情報として、最新一致時刻Teとコードワード生成時刻Tiとが含まれている。後述するように、背景モデル500に含まれるコードワードCW中の画像情報については、検出対象画像200から取得された画像情報と一致する否かが判定される。コードワードCWに含まれる最新一致時刻Teは、当該コードワードCWに含まれる画像情報と、検出対象画像200から取得された画像情報とが一致すると判定された最新の時刻を示している。また、コードワードCWに含まれるコードワード生成時刻Tiは、当該コードワードCWが生成された時刻を示している。
 図6は、このような背景モデル500が生成される背景モデル生成処理を示すフローチャートである。図6に示される背景モデル生成処理は、背景モデル記憶部5に背景モデル500が記憶されていないときに実行される。
 図6に示されるように、ステップs1において、背景モデル生成部30は、画像入力部2から基準画像200が画像処理部3に入力されると、ステップs2において、撮像領域10のある撮像ブロックを注目撮像ブロックとし、注目撮像ブロックに対応するコードブックCBが背景モデル記憶部5に記憶されているか否かを判定する。
 背景モデル生成部30は、注目撮像ブロックに対応するコードブックCBが背景モデル記憶部5に記憶されていないと判定すると、ステップs3において、ステップs1で入力された基準画像200に基づいて、注目撮像ブロックに対応するコードブックCBを生成して背景モデル記憶部5に記憶する。
 具体的には、背景モデル生成部30は、ステップs1で入力された基準画像200における、注目撮像ブロックの画像を示す画像ブロックから画像情報を取得する。そして、背景モデル生成部30は、取得した画像情報を背景画像情報として含むコードワードCWを生成し、当該コードワードCWを含むコードブックCBを背景モデル記憶部5に記憶する。このコードワードCWに含まれる最新一致時刻Teは、暫定的に、コードワード生成時刻Tiと同じ時刻に設定される。
 一方で、背景モデル生成部30は、注目撮像ブロックに対応するコードブックCBが背景モデル記憶部5に記憶されていると判定すると、ステップs4において、ステップs1で入力された基準画像200における、注目撮像ブロックの画像を示す画像ブロックから画像情報を取得する。そして、背景モデル生成部30は、背景モデル記憶部5が記憶している、注目撮像ブロックに対応するコードブックCBに含まれるコードワードCW中の背景画像情報と、取得した画像情報とが一致するか否かを判定する。つまり、背景モデル生成部30は、注目撮像ブロックに対応するコードブックCBに含まれるコードワードCWにおいて、取得した画像情報と一致する背景画像情報を含むコードワードCWが存在するか否かを判定する。
 ステップs4での判定の結果、ステップs5において、注目撮像ブロックに対応するコードブックCBに含まれる各コードワードCW中の背景画像情報と、取得した画像情報とが一致しない場合には、つまり、注目撮像ブロックに対応するコードブックCBに含まれるコードワードCWにおいて、取得した画像情報と一致する背景画像情報を含むコードワードCWが存在しない場合には、ステップs6において、背景モデル生成部30は、ステップs4で基準画像200から取得した画像情報を背景画像情報として含むコードワードCWを生成する。このコードワードCWに含まれる最新一致時刻Teは、暫定的に、コードワード生成時刻Tiと同じ時刻に設定される。そして、背景モデル生成部30は、生成したコードワードCWを、背景モデル記憶部5が記憶する、注目撮像ブロックに対応するコードブックCBに追加する。これにより、注目撮像ブロックに対応するコードブックCBには新しい背景画像情報が追加される。
 一方で、ステップs5において、注目撮像ブロックに対応するコードブックCBに含まれるコードワードCW中の背景画像情報と、取得した画像情報とが一致する場合には、つまり、注目撮像ブロックに対応するコードブックCBに含まれるコードワードCWにおいて、取得した画像情報と一致する背景画像情報を含むコードワードCWが存在する場合には、ステップs6は実行されずに、ステップs7が実行される。ステップs7において、背景モデル生成部30は、撮像領域10における全ての撮像ブロックについて処理が行われた否か、つまり、全ての撮像ブロックを注目撮像ブロックに設定したか否かを判定する。ステップs7での判定の結果、処理が行われていない撮像ブロックが存在する場合には、背景モデル生成部30は、未だ処理が行われていない撮像ブロックを新たな注目撮像ブロックとして、ステップs2以降を実行する。
 一方で、ステップs7での判定の結果、撮像領域10における全ての撮像ブロックについて処理が行われている場合には、背景モデル生成部30は、ステップs8において、A枚の基準画像200に対して同様の処理が行われたか否かを判定する。背景モデル生成部30は、ステップs8での判定の結果、処理を行った基準画像200の枚数がA枚よりも少ない場合には、ステップs1において画像処理部3に対して新たに入力される基準画像200に対して、ステップs2以下の処理を実行する。背景モデル生成部30は、ステップs8での判定の結果、処理を行った基準画像200の枚数がA枚である場合には、背景モデル生成処理を終了する。これにより、上述のような背景モデル500が背景モデル記憶部5内に生成される。
 <実動作段階>
 次に動体検出装置1の実動作段階での動作について説明する。図7は、動体検出装置1の実動作段階での概略動作を示すフローチャートである。動体検出装置1では、背景モデル生成処理が終了すると、図7に示される処理が実行される。
 図7に示されるように、ステップs11において画像入力部2から入力画像200が画像処理部3に入力されると、当該入力画像200を処理対象として、ステップs12~s16までの一連の処理が実行される。
 ステップs12において、画像処理部3は、処理対象の入力画像200に対して動体画像の検出を行う動体検出処理を行う。そして、ステップs13において、画像処理部3は、ステップs12での動体検出処理の結果に基づいて、第1及び第2検出頻度マップと第1及び第2非検出頻度マップの更新を行うマップ更新処理を行う。そして、ステップs14において、画像処理部3は、撮像領域での物体の微動を検出し、撮像領域において物体の微動が生じている領域(微動発生領域)を特定する微動検出処理を行う。その後、ステップs15において、画像処理部3は、ステップs14での処理の結果に基づいて、第1検出頻度マップの補正を行うマップ補正処理を行う。そして、画像処理部3は、ステップs16において、補正後の第1検出頻度マップ等を用いて、背景モデル記憶部5内の背景モデル500を更新する背景モデル更新処理を行う。
 その後、ステップs11において、画像入力部2から画像処理部3に新たな入力画像200(新たな検出対象画像200)が入力されると、当該入力画像200を新たな処理対象として、ステップs12~s16までの一連の処理が実行される。その後、画像処理部3は同様に動作する。
 このように、本実施の形態に係る動体検出装置1では、入力画像200が入力されるたびに、動体検出処理、マップ更新処理、微動検出処理、マップ補正処理及び背景モデル更新処理がこの順番で実行される。
 <動体検出処理>
 次にステップs12での動体検出処理について詳しく説明する。図8は動体検出処理を示すフローチャートである。図8に示されるように、ステップs121において、動体検出部31は、撮像領域10のある撮像ブロック(例えば、撮像領域10における左上の撮像ブロック)を注目撮像ブロックとし、上述のステップs11で入力された処理対象の入力画像200(検出対象画像200)における、注目撮像ブロックの画像を示す画像ブロック(以後、「注目画像ブロック」と呼ぶことがある)に対して動体画像の検出を行う。つまり、動体検出部31は、注目撮像ブロックに動体が存在するか否かを検出する。
 本実施の形態に係る動体検出では、入力画像200中の注目画像ブロックから取得される画像情報と、背景モデル500における、注目撮像ブロックに対応するコードブックCBに含まれる各コードワードCW中の背景画像情報とが一致するか否かが判定されることによって、注目画像ブロックが動体画像であるか否かが判定される。以後、注目撮像ブロックに対応するコードブックCBを「注目コードブックCB」と呼ぶことがある。また、注目コードブックCBに含まれるコードワードCWを「注目コードワードCW」と呼ぶことがある。動体検出の具体的手法については後述する。
 ステップs121が実行されると、ステップs122において、動体検出部31は、ステップs121での動体検出の結果を記憶する。そして、動体検出部31は、ステップs123において、撮像領域10における全ての撮像ブロックについて処理が行われた否か、つまり、全ての撮像ブロックを注目撮像ブロックに設定したか否かを判定する。ステップs123での判定の結果、処理が行われていない撮像ブロックが存在する場合には、動体検出部31は、未だ処理が行われていない撮像ブロックを新たな注目撮像ブロックとして、ステップs121以降を実行する。一方で、ステップs123での判定の結果、撮像領域10における全ての撮像ブロックについて処理が行われている場合には、つまり、入力画像200の全領域に対して動体画像の検出が完了している場合には、動体検出部31は動体検出処理を終了する。これにより、動体検出部31には、入力画像200を構成する複数の画像ブロックに対する動体画像の検出の結果が記憶される。つまり、動体検出部31には、撮像領域10を構成する複数の撮像ブロックに対する動体検出の結果が記憶される。この検出結果は、検出結果出力部4に入力される。
 <動体検出の詳細>
 次にステップs121での動体検出の具体的手法について図9及び10を用いて説明する。図9は、入力画像200の注目画像ブロック及び背景モデル500の注目コードワードCWのそれぞれからベクトルを抽出する様子を表した図である。図10は、入力画像200の注目画像ブロックから抽出されたベクトルと、背景モデル500の注目コードワードCWから抽出されたベクトルとの関係を示す図である。
 本実施の形態では、入力画像200中の注目画像ブロックの画像情報がベクトルとして扱われる。また、背景モデル500中の各注目コードワードCWについて、当該注目コードワードCWに含まれる背景画像情報がベクトルとして扱われる。そして、注目画像ブロックの画像情報についてのベクトルと、各注目コードワードCWの背景画像情報についてのベクトルとが、同じ方向を向いているか否かに基づいて、注目画像ブロックが動体画像であるか否かが判定される。この2種類のベクトルが同じ方向を向いている場合には、注目画像ブロックの画像情報と、各注目コードワードCWの背景画像情報とは一致すると考えることができる。したがって、この場合には、入力画像200中の注目画像ブロックは、背景を示す画像と変わらず、動体画像ではないと判定される。一方、2種類のベクトルが同じ方向を向いていない場合には、注目画像ブロックの画像情報と、各注目コードワードCWの背景画像情報とは一致しないと考えることができる。したがって、この場合には、入力画像200中の注目画像ブロックは、背景を示す画像ではなく、動体画像であると判定される。
 具体的には、動体検出部31は、入力画像200中の注目画像ブロックに含まれる複数の画素の画素値を成分とした画像ベクトルxを生成する。図9には、9個の画素を有する注目画像ブロック210の各画素の画素値を成分とした画像ベクトルxが示されている。図9の例では、各画素は、R(赤)、G(緑)及びB(青)の画素値を有しているため、画像ベクトルxは、27個の成分で構成されている。
 同様に、動体検出部31は、背景モデル500の注目コードブックCBに含まれる注目コードワードCW中の背景画像情報を用いて、背景画像情報に関するベクトルである背景ベクトルを生成する。図9に示される注目コードワードCWの背景画像情報510には、9個の画素についての画素値が含まれている。したがって、当該9個の画素についての画素値を成分とした背景ベクトルxが生成される。背景ベクトルxについては、注目コードブックCBに含まれる複数のコードワードCWのそれぞれから生成される。したがって、一つの画像ベクトルxに対して複数の背景ベクトルxが生成される。
 上述のように、画像ベクトルxと各背景ベクトルxとが同じ方向を向いている場合、入力画像200中の注目画像ブロックは、背景を示す画像と変わらないことになる。しかしながら、画像ベクトルx及び各背景ベクトルxには、ある程度のノイズ成分が含まれていると考えられることから、画像ベクトルxと各背景ベクトルxとが完全に同じ方向を向いていなくても、入力画像200中の注目画像ブロックは背景を示す画像であると判定することができる。
 そこで、本実施の形態では、画像ベクトルx及び各背景ベクトルxに、ある程度のノイズ成分が含まれていることを考慮して、画像ベクトルxと各背景ベクトルxとが完全に同じ方向を向いていない場合であっても、入力画像200中の注目画像ブロックは背景を示す画像であると判定する。
 画像ベクトルx及び背景ベクトルxにノイズ成分が含まれていると仮定すると、真のベクトルuに対する画像ベクトルxと背景ベクトルxとの関係は、図10のように表すことができる。本実施の形態では、画像ベクトルxと背景ベクトルxとが、どの程度同じ方向を向いているかを示す評価値として、以下の(1)で表される評価値Dを考える。
Figure JPOXMLDOC01-appb-M000001
 そして、行列Xを画像ベクトルxと背景ベクトルxとを用いて、式(2)のように表すと、評価値Dは、2×2行列XXの非ゼロの最小固有値となる。したがって、評価値Dについては解析的に求めることができる。なお、評価値Dが2×2行列XXの非ゼロの最小固有値となることについては、上記の非特許文献3に記載されている。
Figure JPOXMLDOC01-appb-M000002
 上述のように、一つの画像ベクトルxに対して複数の背景ベクトルxが生成されることから、画像ベクトルxと背景ベクトルxとを用いて表される評価値Dの値も、背景ベクトルxの数と同じ数だけ得られることになる。
 入力画像200中の注目画像ブロックが動体画像であるか否かの判定は、評価値Dの複数の値のうちの最小値Cと、評価値Dの複数の値についての平均値μ及び標準偏差σとを用いて表される、以下の式(3)で示される動体判定式が用いられる。この動体判定式はチェビシェフ(Chebyshev)の不等式と呼ばれる。
Figure JPOXMLDOC01-appb-M000003
 ここで、式(3)のkは定数であって、入力画像200を撮像する撮像部の撮像環境(撮像部が設置される環境)等に基づいて定められる値である。定数kは実験等によって決定される。
 動体検出部31は、動体判定式(不等式)を満たす場合、画像ベクトルxと各背景ベクトルxとが同じ方向を向いていないと考えて、注目画像ブロックは、背景を示す画像ではなく、動体画像であると判定する。一方で、動体検出部31は、動体判定式を満たさない場合、画像ベクトルxと各背景ベクトルxとは同じ方向を向いていると考えて、注目画像ブロックは動体画像ではなく、背景を示す画像であると判定する。
 このように、本実施の形態では、注目画像ブロックから得られた画像ベクトルの方向と、各注目コードワードCWから得られた背景ベクトルの方向とが、同じか否かに基づいて動体検出が行われているため、本実施の形態に係る動体検出手法は、日照変化あるいは照明変化などの撮像領域10での明るさの変化に対して比較的頑健な動体検出手法である。以後、動体画像であると判定された画像ブロックを「動体画像ブロック」と呼ぶことがある。
 <検出頻度マップ及び非検出頻度マップ>
 図11,12は検出頻度マップ600及び非検出頻度マップ610の一例をそれぞれ示す図である。検出頻度マップ600には、撮像領域10を構成する複数の撮像ブロックBKのそれぞれについての動体(検出対象物)700の検出頻度601が含まれている。一方で、非検出頻度マップ610には、撮像領域10を構成する複数の撮像ブロックBKのそれぞれについての動体(検出対象物)700の非検出頻度611が含まれている。
 検出頻度マップ600では、それに含まれる複数の検出頻度601が行列状に配置されている。ある撮像ブロックBKについての動体700の検出頻度601は、検出頻度マップ600において、撮像領域10での当該撮像ブロックBKの位置と同じ位置に配置されている。同様に、非検出頻度マップ610では、それに含まれる複数の非検出頻度611が行列状に配置されている。ある撮像ブロックBKについての動体700の非検出頻度611は、非検出頻度マップ610において、撮像領域10での当該撮像ブロックBKの位置と同じ位置に配置されている。
 第1特定部32は、入力画像200に含まれるある画像ブロックが動体画像であると動体検出部31で判定されると、つまり、当該画像ブロックに対応する撮像ブロックに動体700が存在すると判定されると、検出頻度マップ600における、当該画像ブロックに対応する撮像ブロックBKについての動体700の検出頻度601を1つ増加する。
 また第1特定部32は、入力画像200に含まれるある画像ブロックが動体画像でないと動体検出部31で判定されると、つまり、当該画像ブロックに対応する撮像ブロックに動体700が存在しないと判定されると、非検出頻度マップ610における、当該画像ブロックに対応する撮像ブロックBKについての動体700の非検出頻度611を1つ増加する。
 図11,12には、撮像領域10を構成する複数の撮像ブロックBKのうち、中央の下側の2つの撮像ブロックBKにおいて動体(人)700が静止している場合に生成される検出頻度マップ600及び非検出頻度マップ610の一例が示されている。図11に示される検出頻度マップ600では、動体700が存在する2つの撮像ブロックBKについての動体700の検出頻度601が大きくなっている。一方で、図12に示される非検出頻度マップ610では、動体700が存在する2つの撮像ブロックBK以外の各撮像ブロックBKについての動体700の非検出頻度611が大きくなっている。
 このような検出頻度マップ600では、動体700が頻繁に検出される撮像ブロックBKについての検出頻度601は大きくなる。したがって、検出頻度マップ600を参照することによって、撮像領域10において動体700が存在する可能性が高い領域を特定することができる。撮像領域10において、例えば、人の通路が存在する場合には、当該通路に対応する撮像ブロックについての検出頻度が大きくなり、当該撮像ブロックに人が存在する可能性が高いことが理解できる。
 また非検出頻度マップ610では、動体700があまり検出されない撮像ブロックBKについての非検出頻度611は大きくなる。したがって、非検出頻度マップ610を参照することによって、撮像領域10において動体700が存在しない可能性が高い領域を特定することができる。
 本実施の形態では、後述するように、非検出頻度マップ610において、ある撮像ブロックBKについての非検出頻度611がクリア用しきい値よりも大きくなると、検出頻度マップ600において、当該ある撮像ブロックBKについての検出頻度601がクリアされて零に設定される。このとき、非検出頻度マップ610における当該撮像ブロックBKについての非検出頻度611もクリアされて零に設定される。
 また本実施の形態では、2種類の検出頻度マップ600と2種類の非検出頻度マップ610が使用される。具体的には、互いに対を成す第1検出頻度マップ600及び第1非検出頻度マップ610と、互いに対を成す第2検出頻度マップ600及び第2非検出頻度マップ610とが使用される。以後、第1及び第2検出頻度マップ600をそれぞれ「第1検出頻度マップ600a」及び「第2検出頻度マップ600b」と呼び、第1及び第2非検出頻度マップ610をそれぞれ「第1非検出頻度マップ610a」及び「第2非検出頻度マップ610b」と呼ぶ。
 第1非検出頻度マップ610aにおいて、ある撮像ブロックBKについての非検出頻度611が第1のクリア用しきい値よりも大きくなると、第1検出頻度マップ600aにおいて、当該ある撮像ブロックBKについての検出頻度601がクリアされて零に設定される。このとき、第1非検出頻度マップ610aにおける当該撮像ブロックBKについての非検出頻度611もクリアされて零に設定される。また、第2非検出頻度マップ610bにおいて、ある撮像ブロックBKについての非検出頻度611が第2のクリア用しきい値よりも大きくなると、第2検出頻度マップ600bにおいて、当該ある撮像ブロックBKについての検出頻度601がクリアされて零に設定される。このとき、第2非検出頻度マップ610bにおける当該撮像ブロックBKについての非検出頻度611もクリアされて零に設定される。
 本実施の形態では、第2のクリア用しきい値が、第1のクリア用しきい値よりも大きく設定される。例えば、第2のクリア用しきい値は、第1のクリア用しきい値の数十倍に設定される。具体的な数値例としては、第1のクリア用しきい値は例えば“50”に設定され、第2のクリア用しきい値は例えば“1000”に設定される。これにより、第2検出頻度マップ600bの検出頻度がクリアされる間隔は、第1検出頻度マップ600aの検出頻度がクリアされる間隔よりも長くなる。つまり、第2検出頻度マップ600bの検出頻度は、第1検出頻度マップ600aの検出頻度よりもクリアされにくくなる。
 <マップ更新処理>
 次にステップs13でのマップ更新処理について説明する。図13はマップ更新処理を示すフローチャートである。ステップs12において、処理対象の入力画像200に対して動体検出処理が行われると、第1特定部32は、ステップs131において、処理対象の入力画像200を構成する複数の画像ブロックのうち、動体検出部31で動体画像であると判定された画像ブロックを特定する。つまり、第1特定部32は、処理対象の入力画像200を構成する複数の画像ブロックにそれぞれ対応する複数の撮像ブロックにおいて、動体検出部31が動体が存在すると判定した撮像ブロックを特定する。
 次にステップs132において、第1特定部32は、第1及び第2検出頻度マップ600a,600bのそれぞれにおいて、動体が存在すると判定された撮像ブロックでの動体の検出頻度を1つ増加させる。そして、ステップs133において、第1特定部32は、第1及び第2非検出頻度マップ610a,610bのそれぞれにおいて、動体が存在すると判定された撮像ブロック以外の撮像ブロック、つまり動体が存在しないと判定された撮像ブロックでの動体の非検出頻度を1つ増加させる。なお、ステップs132,s133の実行順序を入れ替えても良い。
 次にステップs134において、第1特定部32は第1検出頻度マップ600aのクリア処理を行う。具体的には、第1特定部32は、まず、第1非検出頻度マップ610aにおいて、第1のクリア用しきい値よりも大きい非検出頻度が存在するかを判定する。そして、第1特定部32は、第1のクリア用しきい値よりも大きい非検出頻度が存在する場合には、当該非検出頻度に対応する撮像ブロックについての第1検出頻度マップ600aでの検出頻度をクリアして零に設定する。このとき、第1特定部32は、第1非検出頻度マップ610aでの当該非検出頻度をクリアして零に設定する。なお、第1特定部32は、第1非検出頻度マップ610aにおいて、第1のクリア用しきい値以上の非検出頻度が存在するかを判定し、当該非検出頻度が存在する場合には、当該非検出頻度に対応する撮像ブロックについての第1検出頻度マップ600aでの検出頻度をクリアして零に設定しても良い。
 ステップs134が実行されると、第1特定部32はステップs135において第2検出頻度マップ600bのクリア処理を行う。具体的には、第1特定部32は、まず、第2非検出頻度マップ610bにおいて、第2のクリア用しきい値よりも大きい非検出頻度が存在するかを判定する。そして、第1特定部32は、第2のクリア用しきい値よりも大きい非検出頻度が存在する場合には、当該非検出頻度に対応する撮像ブロックについての第2検出頻度マップ600bでの検出頻度をクリアして零に設定する。このとき、第1特定部32は、第2非検出頻度マップ610bでの当該非検出頻度をクリアして零に設定する。なお、第1特定部32は、第2非検出頻度マップ610bにおいて、第2のクリア用しきい値以上の非検出頻度が存在するかを判定し、当該非検出頻度が存在する場合には、当該非検出頻度に対応する撮像ブロックについての第2検出頻度マップ600bでの検出頻度をクリアして零に設定しても良い。また、ステップs134,s135の実行順序は入れ替えても良い。
 以後、第1特定部32は、次の新たな処理対象の入力画像200に対して動体検出処理が実行されるたびに、その動体検出処理の結果に基づいてステップs131~s135を実行する。
 <微動検出処理>
 次にステップs14での微動検出処理について説明する。図14は微動検出処理を示すフローチャートである。図14に示されるように、ステップs141において、微動検出部33は、処理対象の入力画像200に基づいて、撮像領域10での物体の微動を検出する検出処理を行う。本実施の形態では、微動検出部33は、例えば、動体検出部31での検出結果に基づいて、処理対象の入力画像200に含まれる動体領域(動体画像であると判定された全領域)に対してラベリング処理を行い、当該ラベリング処理によって得られたラベリング領域に基づいて撮像領域10において物体の微動があるか否かを判断する。
 ステップs141において、撮像領域10での物体の微動が検出されなければ、微動検出処理は終了する。一方で、ステップs141において、撮像領域10での物体の微動が検出されれば、ステップs142において、第2特定部34は、第2検出頻度マップ600bを用いて、撮像領域10において物体の微動が生じている領域(微動発生領域)を特定する。具体的には、第2特定部34は、撮像領域10を構成する複数の撮像ブロックBKにおいて、物体の微動が発生している撮像ブロックBKを特定する。
 ここで、人等の動体は、静止しているといっても完全に静止していることはほとんど無く、微動することがある。例えば、机に座っている人や、通路で立ち止まって他の人と話をしている人は、その全体的な位置はほとんど変化しないものの(巨視的にはほとんど静止しているものの)、手(腕や手の指)、頭、体、脚等が微動する。図15は、撮像領域10において人701が微動する様子を模式的に示す図である。一方で、椅子、机等の背景となる物体は、移動することはあるものの、移動した後においてはほぼ完全に静止する。
 本実施の形態では、撮像領域10において物体の微動が検出されたときに微動発生領域を特定し、当該微動発生領域を、検出対象である動体が撮像領域10において存在している領域と見なしている。図15には、微動発生領域750が斜線で示されている。なお、微動検出処理の詳細については後述する。
 <マップ補正処理>
 次にステップs15でのマップ補正処理について説明する。マップ補正処理では、微動検出部33で物体の微動が検出されると、第1特定部32が、第2特定部34で特定された微動発生領域についての第2検出頻度マップ600bの検出頻度を、第1検出頻度マップ600aに対して当該微動発生領域についての値としてコピーするコピー処理を行う。このコピー処理によって、第1検出頻度マップ600aが補正される。図16は当該コピー処理の一例を示す図である。
 図16に示される第2検出頻度マップ600bは、上述の図15に示される例に対応している。また、図16に示される補正前の第1検出頻度マップ600aも上述の図15に示される例に対応している。図16に示される第2検出頻度マップ600bにおいて太線で囲まれる検出頻度601は、図15に示される微動発生領域750での動体の検出頻度である。また、図16に示される補正前の第1検出頻度マップ600aにおいて太線で囲まれる検出頻度601は、図15に示される微動発生領域750での動体の検出頻度である。
 上述のように、第1のクリア用しきい値は小さく設定されることから、第1検出頻度マップ600aにおける、ある撮像ブロックBKについての検出頻度は、当該撮像ブロックBKに動体が存在しなくなると、すぐにクリアされる。したがって、図16に示されるように、補正前の第1検出頻度マップ600aにおける、微動発生領域750についての検出頻度は比較的小さい値を示す。よって、補正前の第1検出頻度マップ600aにおいては、人が存在する撮像ブロックBKについての検出頻度が小さくなり、当該第1検出頻度マップ600aから、人が存在する可能性が高い領域を適切に特定できない可能性がある。
 一方で、第2のクリア用しきい値は大きく設定されることから、第2検出頻度マップ600bにおける、ある撮像ブロックBKについての検出頻度は、当該撮像ブロックBKに動体が存在しなくなっても、すぐにはクリアされない。したがって、図16に示されるように、第2検出頻度マップ600bにおける、微動発生領域750についての検出頻度は比較的大きい値を示す。
 そこで、本実施の形態では、図16に示されるように、第1特定部32は、微動発生領域750についての第2検出頻度マップ600bの検出頻度(太線で囲まれた検出頻度)を、第1検出頻度マップ600aに対して当該微動発生領域750についての値としてコピーする。これにより、補正後の第1検出頻度マップ600aにおいては人が存在する撮像ブロックBKについての検出頻度が大きくなり、当該第1検出頻度マップ600aから、人が存在する可能性が高い領域を適切に特定することができる。
 本実施の形態では、第1特定部32は、補正後の第1検出頻度マップ600aにおいて、検出頻度がしきい値よりも大きい検出頻度を特定する。そして、第1特定部32は、しきい値よりも大きい検出頻度に対応する撮像ブロックBKを、撮像領域10において動体が存在する可能性が高い領域とする。つまり、第1特定部32は、補正後の第1検出頻度マップ600aにおいて、撮像ブロックBKについて動体の検出頻度がしきい値よりも大きい場合には、当該撮像ブロックBKには動体が存在する可能性が高いと判定する。なお、第1特定部32は、しきい値以上の検出頻度に対応する撮像ブロックBKを、撮像領域10において動体が存在する可能性が高い領域としても良い。以後、補正後の第1検出頻度マップ600aの検出頻度と比較されるしきい値を「判定用しきい値」と呼ぶ。
 <背景モデル更新処理>
 次にステップs16での背景モデル更新処理について説明する。背景モデル更新処理では、キャッシュモデルを記憶するキャッシュモデル記憶部6が使用される。キャッシュモデルには、背景モデル500に登録される背景画像情報の候補である背景画像情報候補が含められる。
 ここで、撮像領域では、日照変化あるいは照明変化などによって、明るさが変化することがある。撮像領域での明るさが変化すると、入力画像200の画像情報が変化することから、動体検出部31は、入力画像200に含まれる、背景を示す画像ブロックを誤って動体画像であると判定する可能性がある。したがって、動体検出部31において動体画像あると判定された画像ブロックの画像情報が、実際には背景の画像情報である可能性がある。
 そこで、本実施の形態では、背景モデル更新部35は、動体検出部31において動体画像であると判定された画像ブロックの画像情報を背景画像情報候補として、いったんキャッシュモデルに登録する。そして、背景モデル更新部35は、登録判定期間に入力される複数枚の入力画像200に基づいて、キャッシュモデルに登録した背景候補画像情報が、背景の画像情報であるか否かを判定する。背景モデル更新部35は、キャッシュモデルに登録した背景画像情報候補が背景の画像情報であると判定すると、当該背景画像情報候補を背景画像情報として背景モデル500に登録する。つまり、背景モデル更新部35は、登録判定期間に入力される入力画像200に基づいて、キャッシュモデル記憶部6に記憶した背景画像情報候補を背景画像情報として背景モデル500に登録するか否かを判定する。
 図17は背景モデル更新処理を示すフローチャートである。図17に示されるように、ステップs161において、背景モデル更新部35は、撮像領域のある撮像ブロックを注目撮像ブロックとし、上述のステップs11で入力された処理対象の入力画像200における、注目撮像ブロックの画像を示す画像ブロック(注目画像ブロック)が動体検出部31において動体画像であると判定されたか否かを判定する。ステップs161において、注目画像ブロックが動体検出部31において動体画像ではないと判定されたと判断されると、つまり、注目画像ブロックの画像情報が、背景モデル500中の各注目コードワードCWの背景画像情報と一致すると判定されると、背景モデル更新部35はステップs162を実行する。
 ステップs162では、背景モデル更新部35は、注目画像ブロックの画像情報と一致すると判定された背景画像情報を含む、背景モデル500中のコードワードCWの最新一致時刻Teを現在時刻に変更する。
 一方で、ステップs161において、注目画像ブロックが動体検出部31において動体画像であると判定されたと判断されると、背景モデル更新部35はステップs163を実行する。ステップs163では、キャッシュモデルの更新が行われる。具体的には、背景モデル更新部35は、注目画像ブロックの画像情報が、キャッシュモデル記憶部6内のキャッシュモデルに含まれる各注目コードワードCWに含まれていない場合には、当該画像情報を背景画像情報候補として含むコードワードCWを生成してキャッシュモデル内の注目コードブックCBに登録する。このコードワードCWには、画像情報(背景画像情報候補)以外にも、最新一致時刻Te及びコードワード生成時刻Tiが含まれている。ステップs163で生成されたコードワードCWに含まれる最新一致時刻Teは、暫定的に、コードワード生成時刻Tiと同じ時刻に設定される。また背景モデル更新部35は、注目画像ブロックの画像情報が、キャッシュモデル記憶部6内のキャッシュモデルに含まれる注目コードワードCWに含まれている場合には、つまり、注目画像ブロックの画像情報と一致する背景画像情報候補を含む注目コードワードCWがキャッシュモデルに含まれている場合には、キャッシュモデルにおける、当該背景画像情報候補を含むコードワードCW中の最新一致時刻Teを現在時刻に変更する。
 このように、ステップs163では、不足している画像情報を含むコードワードCWのキャッシュモデルへの追加、あるいはキャッシュモデル中のコードワードCWの最新一致時刻Teの更新が行われる。
 なお、ステップs163において、背景モデル更新部35は、キャッシュモデル記憶部6内のキャッシュモデルに、注目撮像ブロックに対応するコードブックCBが登録されていない場合には、注目画像ブロックの画像情報を背景画像情報候補として含むコードワードCWを生成し、当該コードワードCWを含むコードブックCBを生成してキャッシュモデルに登録する。
 ステップs162あるいはステップs163が実行されると、ステップs164において、背景モデル更新部35は、撮像領域における全ての撮像ブロックについて処理が行われた否か、つまり、全ての撮像ブロックを注目撮像ブロックに設定したか否かを判定する。ステップs164において、処理が行われていない撮像ブロックが存在すると判定された場合には、背景モデル更新部35は、未だ処理が行われていない撮像ブロックを新たな注目撮像ブロックとして、ステップs161以降を実行する。一方で、ステップs164において、撮像領域における全ての撮像ブロックについて処理が行われたと判定されると、背景モデル更新部35はステップs165を実行する。
 ステップs165では、キャッシュモデルに含まれる、最新一致時刻Teが所定期間更新されていないコードワードCWが削除される。つまり、キャッシュモデル中のコードワードCWに含まれる画像情報が、ある程度の期間、入力画像200から取得された画像情報と一致しない場合には、当該コードワードCWが削除される。コードワードCWに含まれる画像情報が、背景の画像情報である場合には、つまり入力画像200に含まれる、背景を示す画像から取得された画像情報である場合には、当該コードワードCW中の最新一致時刻Teは頻繁に更新されることから、最新一致時刻Teが所定期間更新されていないコードワードCWに含まれる画像情報については、入力画像200に含まれる動体画像から取得された画像情報である可能性が高いと考えることができる。最新一致時刻Teが所定期間更新されていないコードワードCWがキャッシュモデルから削除されることによって、動体画像の画像情報がキャッシュモデルから削除される。以後、この所定期間を「削除判定用期間」と呼ぶことがある。削除判定用期間は、撮像領域での明るさの変化、及びポスターの設置あるいは机の配置変更などの環境の変化等による画像情報の変化と、検出対象とする人等の動体が動くときに生じる画像情報の変化とを区別するために予め設定される期間である。例えば、入力画像200を撮像する撮像部の撮像フレームレートが30fpsであり、撮像領域10が会議室100(図4参照)であるとすると、削除判定用期間は、数フレーム~数十フレーム分の入力画像200が入力される期間に設定される。
 ステップs165において、キャッシュモデルに含まれる、最新一致時刻Teが削除判定用期間更新されていないコードワードCWが削除されると、背景モデル更新部35はステップs166を実行する。ステップs166では、背景モデル更新部35は、キャッシュモデルに登録されているコードワードCWのうち、キャッシュモデルに登録されてから登録判定期間経過しているコードワードCWを特定する。ステップs163では、コードワードCWが生成されると、当該コードワードCWはすぐにキャッシュメモリに登録されることから、コードワードCWがキャッシュモデル内に登録された時刻として、当該コードワードCWに含まれるコードワード生成時刻Tiを使用することができる。
 登録判定期間は削除判定用期間よりも大きな値に設定される。登録判定期間は、削除判定用期間よりも例えば数倍程度大きな値に設定される。本実施の形態では、登録判定期間はフレーム数で表されるものとする。つまり、登録判定期間は、その期間に入力される入力画像200の枚数で表されるものとする。登録判定期間が例えば“50”であるとすると、登録判定期間は、50フレーム分の入力画像200(50枚の入力画像200)が入力される期間となる。
 ステップs166が実行されると、ステップs167において、補正後の第1検出頻度マップ600aが用いられた背景モデル登録判定処理が行われる。背景モデル登録判定処理では、ステップs166で特定されたコードワードCWを、背景モデル記憶部5内の背景モデル500に登録するか否かが決定される。以下に背景モデル登録判定処理について詳細に説明する。
 背景モデル登録判定処理では、まず第1特定部32が、上述のようにして、補正後の第1検出頻度マップ600aを用いて、撮像領域10において動体が存在する可能性が高い領域を特定する。
 図18は補正後の第1検出頻度マップ600aの一例を示す図である。判定用しきい値=100とすると、図18に示される補正後の第1検出頻度マップ600aでは、一番右の列の下から一行目と二行目の2つの検出頻度が判定用しきい値よりも大きくなっている。したがって、撮像領域10において、一番右の列の下から一行目と二行目の撮像ブロックBKから成る領域(斜線で示された領域)が、撮像領域10において動体が存在する可能性が高い領域120となる。
 なお、第1特定部32は、補正後の第1検出頻度マップ600aにおいて、判定用しきい値よりも大きい検出頻度が存在しない場合には、撮像領域10において動体が存在する可能性が高い領域が存在しないと判定する。
 第1特定部32において、撮像領域10において動体が存在する可能性が高い領域が特定されると、背景モデル更新部35は、ステップs166で特定された各コードワードCWについて、当該コードワードCWを背景モデル500に登録するか否かを、第1特定部32の特定結果に基づいて決定する。
 具体的には、背景モデル更新部35は、ステップs166で特定されたコードワードCWに含まれる画像情報が取得された画像ブロックに対応する撮像ブロックが、第1特定部32で特定された、撮像領域10において動体が存在する可能性が高い領域に含まれる場合には、つまり、当該撮像ブロックに動体が存在する可能性が高い場合には、当該コードワードCWを背景モデル500に登録しないと決定する。
 一方で、背景モデル更新部35は、ステップs166で特定されたコードワードCWに含まれる画像情報が取得された画像ブロックに対応する撮像ブロックが、第1特定部32で特定された、撮像領域10において動体が存在する可能性が高い領域に含まれない場合には、つまり、当該撮像ブロックに動体が存在する可能性が高くない場合には、当該コードワードCWを背景モデル500に登録すると決定する。
 なお、第1特定部32において、撮像領域10において動体が存在する可能性が高い領域が存在しないと判定された場合には、背景モデル更新部35は、ステップs166で特定されたコードワードCWのすべてを背景モデル500に登録すると決定する。
 背景モデル更新部35は、背景モデル500に登録すると決定されたコードワードCWを、背景モデル500内の当該コードワードCWに対応するコードブロックCBに登録する。そして、背景モデル更新部35は、背景モデル500に登録したコードワードCWをキャッシュモデルから削除する。
 上記の説明から理解できるように、本実施の形態では、背景モデル更新部35は、登録判定期間において入力される入力画像200が用いられた動体検出部31での動体の検出結果に基づいて、キャッシュメモリに登録したコードワードCWを背景モデル500に登録するか否かを判定している。つまり、背景モデル更新部35は、登録判定期間において入力される入力画像200が用いられた動体検出部31での動体の検出結果に基づいて、キャッシュメモリに登録した背景画像情報候補を背景画像情報として背景モデル500に登録するか否かを判定している。これにより、動体検出部31において動体画像であると誤って判定された画像ブロックの画像情報を、背景画像情報として背景モデル500に適切に登録することができる。よって、背景モデル500を適切に更新することができ、動体検出部31での動体検出の精度が向上する。
 また、本実施の形態とは異なり、キャッシュモデルに登録されているコードワードCWのうち、キャッシュモデルに登録されてから登録判定期間経過しているコードワードCWを無条件で背景モデル500に登録する場合には、キャッシュモデルに登録された、動体画像の画像情報を含むコードワードCWが背景モデル500に登録される可能性がある。具体的には、撮像領域において動体が一時的に静止している場合には、撮像領域における、当該動体が存在する撮像ブロックの画像を示す画像ブロックの画像情報が変化しにくい。したがって、キャッシュモデルに登録された、当該動体を示す動体画像の画像情報を含むコードワードCWが、キャッシュモデルから長時間削除されずに、最終的には背景モデル500に登録される可能性がある。これにより、動体検出部31での動体検出の精度が劣化する可能性がある。
 そこで、本実施の形態では、キャッシュモデルに登録されてから登録判定期間経過しているコードワードCWを無条件で背景モデル500に登録するのではなく、上述のように、補正後の第1検出頻度マップ600aを用いて当該コードワードCWを背景モデル500に登録するか否かを決定している。これにより、動体画像の画像情報を含むコードワードCWが誤って背景モデル500に登録されることを抑制することができる。以下にこの点について詳細に説明する。
 上述のように、第1特定部32は、補正後の第1検出頻度マップ600aを用いて、撮像領域10において動体が存在する可能性が高い撮像ブロックを特定している。入力画像200に含まれる、動体が存在する可能性が高い撮像ブロックの画像を示す画像ブロックの画像情報については、動体画像の画像情報である可能性が高い。したがって、キャッシュモデルに登録されてから登録判定期間経過しているコードワードCWであっても、当該コードワードCWに含まれる画像情報が取得された画像ブロックに対応する撮像ブロックが、動体が存在する可能性が高い撮像ブロックであれば、当該コードワードCWの画像情報は動体画像の画像情報である可能性が高い。よって、本実施の形態のように、キャッシュモデルに登録されてから登録判定期間経過しているコードワードCWであっても、当該コードワードCWに含まれる画像情報が取得された画像ブロックに対応する撮像ブロックが、動体が存在する可能性が高い撮像ブロックであれば、当該コードワードCWを背景モデル500に追加しないことによって、動体画像の画像情報を含むコードワードCWが誤って背景モデル500に追加されることを抑制することができる。
 このように、本実施の形態では、背景モデル更新部35が、登録判定期間において入力される入力画像200が用いられた動体検出部31での動体の検出結果と、第1特定部32で特定される、撮像領域10において動体が存在する可能性が高い領域とに基づいて、キャッシュメモリに登録した背景画像情報候補を背景画像情報として背景モデル500に登録するか否かを判定しているため、動体検出部31での動体検出の精度を向上することができる。
 ステップs167が終了すると、ステップs168において、背景モデル更新部35は、背景モデル500に含まれるコードワードCWにおいて、入力画像200の画像情報と所定期間にわたって一致しなかった背景画像情報を含むコードワードCWを削除する。つまり、背景モデル更新部35は、背景モデル500に含まれる、最新一致時刻Teが所定期間更新されていないコードワードCWを削除する。これにより、撮像領域10において、時系列的な撮像環境の変化により既に背景ではなくなった撮像ブロックの画像から取得された画像情報を含むコードワードCWを背景モデル500から削除することができる。よって、背景モデル500の情報量を低減することができる。
 ステップs168が終了すると、ステップs169において、背景モデル更新部35は、ステップs14において微動検出部33が物体の微動を検出したか否かを判断する。ステップs169において、微動検出部33が物体の微動を検出していないと判断されると、背景モデル更新処理は終了する。
 一方で、ステップs169において、微動検出部33が物体の微動を検出したと判断されると、ステップs170において、背景モデル更新部35は、ステップs14で特定された微動発生領域の画像から得られた画像情報であって、背景画像情報として背景モデル500に登録されている画像情報を、当該背景モデル500から削除する。具体的には、背景モデル更新部35は、微動発生領域に含まれる各撮像ブロックについて、背景モデル500に登録されている、当該撮像ブロックに対応するコードブックに含まれるコードワードのうち、それに含まれる最新一致時刻Teが比較的新しいコードワードを削除する。例えば、背景モデル更新部35は、微動発生領域に含まれる各撮像ブロックについて、背景モデル500に登録されている、当該撮像ブロックに対応するコードブックに含まれるコードワードのうち、それに含まれる最新一致時刻Teが現在時刻よりも数フレーム以内にあるコードワードを削除する。ステップs170が終了すると、背景モデル更新処理が終了する。
 このような背景モデルの更新処理を行うことによって、撮像領域10での明るさの変化等の撮像環境の変化が生じた場合であっても、撮像環境の変化に追従した背景モデル500を用いて動体検出を行うことができる。よって、動体検出の精度が向上する。
 <登録判定期間と第1検出頻度マップに関する判定用しきい値との関係>
 本実施の形態では、登録判定期間は、撮像領域において動体が存在する可能性が高い領域を特定する際に使用される判定用しきい値よりも小さく設定されている。例えば、登録判定期間は“50”に設定され、判定用しきい値は“100”に設定される。
 ここで、本実施の形態とは異なり、登録判定期間が判定用しきい値よりも大きい場合について考える。この場合には、撮像領域において椅子や机等の静止物体が初めて現れたとき、当該静止物体についての画像情報は背景モデル500に登録されていない。したがって、当該静止物体の画像は動体画像として判定される。そのため、当該静止物体についての画像情報はキャッシュモデルに一旦登録される。その後、当該静止物体の画像は、動体画像であると判定され続けると、登録判定期間が経過する前に、当該静止物体が存在する撮像ブロックについての第1検出頻度マップ600aの検出頻度が判定用しきい値を越えることになる。これにより、当該静止物体が存在する撮像ブロックは、動体が存在する可能性が高い領域として判定される。そうすると、キャッシュモデルに登録されている、当該静止物体についての画像情報は、登録判定期間を経過したとしても、背景モデル500には登録されなくなる。よって、当該静止物体の画像はいつまでも動体画像として判定され、動体検出の精度が劣化する可能性がある。
 一方で、本実施の形態のように、登録判定期間が判定用しきい値よりも小さい場合には、静止物体が存在する撮像ブロックについての第1検出頻度マップ600aの検出頻度が判定用しきい値を越える前に、登録判定期間が経過することから、静止物体についての画像情報が背景画像情報として背景モデル500に登録される。よって、静止物体の画像はいつまでも動体画像であると判定されることを抑制することができ、動体検出の精度を向上することができる。
 本実施の形態のように、静止物体の画像がいつまでも動体画像であると判定されることを抑制するために、登録判定期間を判定用しきい値よりも小さく設定すると、動体画像の画像情報が誤って背景モデル500に登録されることがある。
 例えば、ある動体が撮像ブロックに初めて現れた場合、当該動体についての画像情報は背景モデル500に登録されていない。したがって、当該撮像ブロックに対応する画像ブロックは動体画像として判定される。そのため、当該画像ブロックから得られた画像情報(以後、「第1画像情報」と呼ぶ)はキャッシュモデルに一旦登録される。その後、当該撮像ブロックに対応する画像ブロックが動体画像であると判定され続けると、当該撮像ブロックについての第1検出頻度マップ600aの検出頻度が判定用しきい値を越える前に、登録判定期間が経過する。その結果、キャッシュモデル内の第1画像情報(動体画像の画像情報)が背景画像情報として誤って背景モデル500に登録される。以後、当該撮像ブロックに対応する画像ブロックは動体画像でないと判定され、動体検出の精度が劣化する可能性がある。
 そこで、本実施の形態では、上述のステップs169において物体の微動が検出されたと判定された場合には、ステップs170において、微動発生領域の画像から得られた画像情報であって、背景画像情報として背景モデル500に登録されている画像情報を当該背景モデル500から削除している。微動発生領域は、撮像領域において動体が存在する領域であると考えることができる。したがって、微動発生領域の画像から得られた画像情報であって、背景画像情報として背景モデル500に登録されている画像情報(上記の例では、対応する最新一致時刻Teが比較的新しい画像情報)を当該背景モデル500から削除することによって、背景画像情報として誤って背景モデル500に登録された、動体画像から得られた画像情報を当該背景モデル500から削除することができる。よって、登録判定期間を判定用しきい値よりも小さく設定したことに起因して動体検出の精度が劣化するということを抑制することができる。
 <検出頻度マップのクリア処理のメリットについて>
 第1検出頻度マップ600aに含まれる検出頻度は、ステップs12での動体検出処理において、当該検出頻度に対応する撮像ブロックでの動体の存在が検出されるたびに増加する。したがって、検出頻度をクリアしない場合には、撮像領域でのレイアウトの変更等によって現在は動体が存在する可能性は高くない撮像ブロックについての検出頻度が判定用しきい値よりも大きい状態が発生する可能性が高くなる。
 一方で、ある撮像ブロックについて、動体が存在する可能性が高い状態からそうではない状態へ遷移すると、第1非検出頻度マップ610aでの当該撮像ブロックの非検出頻度が大きくなる。
 そこで、本実施の形態では、上述のマップ更新処理のステップs134において、第1非検出頻度マップ610aにおいて第1のクリア用しきい値よりも大きい非検出頻度に対応する撮像ブロックについての第1検出頻度マップ600aでの検出頻度をクリアしている。これにより、現在は動体が存在する可能性が高くない撮像ブロックについての検出頻度が判定用しきい値よりも大きい状態が発生することを抑制することができる。したがって、第1検出頻度マップ600aを用いて撮像領域10において動体が存在する可能性が高い領域を正確に特定することができる。よって、動体画像の画像情報が背景モデル500に登録されることをさらに抑制することができる。その結果、動体検出の精度がさらに向上する。
 なお、第2検出頻度マップ600bにおいても、撮像領域10でのレイアウトの変更等によって現在は動体が存在する可能性は高くない撮像ブロックについての検出頻度が大きい状態が発生することを抑制するために、上述のステップs135において、第2検出頻度マップ600bの検出頻度を、第2非検出頻度マップ610bを用いてクリアしている。
 <マップ補正処理のメリットについて>
 第1非検出頻度マップ610aの非検出頻度と比較される第1のクリア用しきい値が大きい場合には、撮像領域10でのレイアウトの変更等によって現在は動体が存在する可能性は高くない撮像ブロックについての検出頻度がなかなかクリアされない。したがって、当該検出頻度が判定用しきい値よりも大きい状態が発生する可能性が高くなる。したがって、このような状態の発生を抑制するためには、第1のクリア用しきい値はできる限り小さい方が好ましい。
 一方で、第1のクリア用しきい値が小さく設定されると、第1検出頻度マップ600aにおける、ある撮像ブロックBKについての検出頻度は、当該撮像ブロックBKに動体が存在しなくなるとすぐにクリアされる。したがって、上述のように、第1検出頻度マップ600a(補正前の第1検出頻度マップ600a)においては、微動が生じる人が存在する撮像ブロックBKについての検出頻度が小さくなり、当該第1検出頻度マップ600aから、人が存在する可能性が高い領域を適切に特定できない可能性がある。
 そこで、本実施の形態では、上述のステップs15において、微動発生領域についての第2検出頻度マップ600bの検出頻度を、第1検出頻度マップ600aに対して当該微動発生領域についての値としてコピーしている。これにより、第1のクリア用しきい値が小さく設定されたとしても、補正後の第1検出頻度マップ600aにおいては、人が存在する撮像ブロックBKについての検出頻度が大きくなる。したがって、補正後の第1検出頻度マップ600aから、人が存在する可能性が高い領域を適切に特定することができる。よって、撮像領域において動体が存在する可能性が高い領域を適切に特定することができる。その結果、動体検出の精度がより向上する。
 以上のように、本実施の形態に係る動体検出装置1では、背景モデル更新部35が、登録判定期間において入力される入力画像200が用いられた動体検出部31での動体の検出結果と、第1特定部32で特定される、撮像領域10において動体が存在する可能性が高い領域とに基づいて、キャッシュメモリに登録した背景画像情報候補を背景画像情報として背景モデル500に登録するか否かを判定している。そのため、動体検出部31での動体検出の精度を向上することができる。
 また、本実施の形態では、登録判定期間が判定用しきい値よりも小さく設定されていることから、入力画像200に含まれる、静止物体の画像がいつまでも動体画像であると判定されることを抑制することができる。一方で、本実施の形態では、微動発生領域の画像から得られた画像情報であって、背景画像情報として背景モデル500に登録されている画像情報が当該背景モデル500から削除される。そのため、背景画像情報として誤って背景モデル500に登録された、動体画像から得られた画像情報を当該背景モデル500から削除することができる。よって、動体検出の精度がさらに向上する。
 図19は動体検出部31での動体検出の結果の一例を示す図である。図19には、動体検出部31が入力画像200から検出した動体領域800が入力画像200に重ねて示されている。図19に示される入力画像200には、被写体の画像として、床910に複数のダンボール920と複数の椅子930が配置された部屋900の画像が含まれている。部屋900の壁940には図示しない窓が設けられている。部屋900には二人の人990a,990bが存在している。図19の例では、部屋900に存在する人990a,990bのそれぞれが、動体領域800として適切に検出されている。
 図20は、部屋900において、人990a,990bが図19に示される位置で静止している場合の補正後の第1検出頻度マップ600aを示す図である。図20では床910及び壁940が破線で示されている。図20では、理解し易いように、検出頻度の大きさを例えば第1段階から第3段階の3段階に分けて補正後の第1検出頻度マップ600aを示している。図20に示される補正後の第1検出頻度マップ600aにおいては、検出頻度が、最も大きい第3段階に属する領域については左上がりのハッチングが示されており、2番目に大きい第2段階に属する領域については右上がりのハッチングが示されている。そして、図20に示される補正後の第1検出頻度マップ600aにおいては、検出頻度が、最も小さい第1段階に属する領域についてはハッチングが示されていない。図20に示される補正後の第1検出頻度マップ600aにおいては、撮像領域10における、人990a,990bが存在する領域についての検出頻度が大きくなっている。
 図21は、本実施の形態とは異なり、背景モデル500の更新に第1検出頻度マップ600aが使用されない場合での動体検出部31での動体検出の結果の一例を示す図である。図21には、動体検出部31が入力画像200から検出した動体領域800が入力画像200に重ねて示されている。図21に示される入力画像200では、二人の人990a,990bが二つの椅子930にそれぞれ座っている。図21に示される動体検出結果では、人990aは動体領域800として検出されているものの、人990bは動体領域800として検出されていない。
 図22は、本実施の形態での動体検出結果の一例を示す図である。図22に示されるように、背景モデル500の更新に補正後の第1検出頻度マップ600aが使用された場合には、人990a,990bのそれぞれが動体領域800として適切に検出されている。
 <微動検出処理の詳細について>
 以下に、微動検出処理についての3つの具体例について説明する。
 <第1の例>
 第1の例では、物体の微動の検出にラベリング処理が使用される。図23は、微動検出処理の第1の例を示すフローチャートである。
 図23に示されるように、第1の例では、ステップs241において、微動検出部33は、ステップs12での動体検出処理の結果に基づいて、処理対象の入力画像200を構成する複数の画像ブロックにおいて動体画像であると判断された画像ブロック(動体画像ブロック)から成る動体領域を特定する。
 次にステップs242において、微動検出部33は、処理対象の入力画像200に含まれる動体領域に対して4連結あるいは8連結等を用いたラベリング処理を行う。これにより、隣接する複数の動体画像ブロックが連結して一つのラベリング領域となる。動体領域は少なくとも一つのラベリング領域で構成される。動体領域に含まれるラベリング領域は、動体領域に含まれる独立領域(島領域)であるとも言える。以後、当該ラベリング領域を「動体ラベリング領域」と呼ぶ。
 次にステップs243において、微動検出部33は、ステップs242で得られた少なくとも一つの動体ラベリング領域において、面積が小さい動体ラベリング領域が存在するか否かを判断する。具体的には、微動検出部33は、ステップs242で得られた少なくとも一つの動体ラベリング領域において、それに含まれる画素の数が所定数よりも小さい動体ラベリング領域が存在するか否かを判断する。撮像領域において物体の微動が生じている場合には、当該撮像領域の画像を示す入力画像200に含まれる動体領域に対してラベリング処理を行うと、面積が小さい動体ラベリング領域が得られる。したがって、ステップs242で得られた少なくとも一つの動体ラベリング領域において、面積が小さい動体ラベリング領域が存在するか否かを判断することによって、撮像領域において物体の微動が発生しているか否かを特定できる。
 微動検出部33は、面積が小さい動体ラベリング領域、つまりそれに含まれる画素の数が所定数よりも小さい動体ラベリング領域が存在しない場合には、ステップs244において、撮像領域において物体の微動が発生していないと判断する。ステップs244において、撮像領域で物体の微動が発生していないと判断されると、微動検出処理は終了する。
 一方で、微動検出部33は、面積が小さい動体ラベリング領域が存在する場合には、ステップs245において、撮像領域において物体の微動が発生していると判断する。
 なお、あまりにも小さい動体ラベリング領域、例えば数画素程度しか含まれない動体ラベリング領域はノイズによって発生したと考えることができる。したがって、微動検出部33は、ステップs242で得られた少なくとも一つの動体ラベリング領域において、それに含まれる画素の数が第1所定数よりも小さく、第2所定数(<第1所定数)よりも大きいラベリング領域が存在する場合に、撮像領域において物体の微動が発生していると判断しても良い。第2所定数は例えば“10”未満に設定される。
 ステップs245が実行されると、第2特定部34は、ステップs246において、第2検出頻度マップ600bを2値化して2値化マップを生成する。つまり、第2特定部34は、第2検出頻度マップ600bに含まれる各検出頻度としきい値とを比較して、しきい値よりも大きい検出頻度を例えば“1”に置き換え、しきい値以下の検出頻度を例えば“0”に置き換えて2値化マップを生成する。以後、2値化マップにおける、“1”を示す領域を「第1領域」と呼ぶ。第1領域は、第2検出頻度マップ600bにおいて、検出頻度が比較的大きい領域である。
 次にステップs247において、第2特定部34は、2値化マップの第1領域に対して4連結あるいは8連結等を用いたラベリング処理を行う。これにより、2値化マップの第1領域は、少なくとも一つのラベリング領域に分けられる。以後、当該ラベリング領域を「頻度ラベリング領域」と呼ぶ。頻度ラベリング領域は、第2検出頻度マップ600bにおいて検出頻度が比較的大きい一塊の領域(独立領域あるいは島領域)である。
 次にステップs248において、第2特定部34は、ステップs247で得られた少なくとも一つの頻度ラベリング領域に基づいて、撮像領域での微動発生領域を特定する。具体的には、第2特定部34は、頻度ラベリング領域に対応する撮像ブロックが、ステップs243で特定された、面積が小さい動体ラベリング領域に対応する撮像ブロックのすべてを含む場合には、当該頻度ラベリング領域に対応する撮像ブロックを微動発生領域とする。
 なお、第2特定部34は、ステップs247で得られた少なくとも一つの頻度ラベリング領域の中に、それに対応する撮像ブロックが、面積が小さい動体ラベリング領域に対応する撮像ブロックのすべてを含むような頻度ラベルリング領域が存在しない場合には、面積が小さい動体ラベリング領域に対応する撮像ブロックを微動発生領域とする。
 また、第2特定部34は、ステップs243において、面積が小さい動体ラベリング領域が複数特定された場合には、複数の当該動体ラベリング領域のそれぞれについて、当該動体ラベリング領域に対応する撮像ブロックのすべてを、それに対応する撮像ブロックが含むような頻度ラベリング領域が存在するか否かを判定する。
 図24は入力画像200の動体領域に対するラベリング処理の結果の一例を示す図である。図24の例では、複数の画像ブロック211から成る入力画像200中の動体領域は2つの動体ラベリング領域220a,220bに分けられている。そして、動体ラベリング領域220aが、面積の小さい動体ラベリング領域となっている。また図24には、面積の小さい動体ラベリング領域220aに対応する2つの撮像ブロックBKaが斜線で示されている。
 図25は2値化マップ650の第1領域に対するラベリング処理の結果の一例を示す図である。図25の例では、2値化マップ650の第1領域は2つの頻度ラベリング領域660a,660bに分けられている。また図25には、頻度ラベリング領域660aに対応する4つの撮像ブロックBKbが斜線で示されている。
 ここで、ステップs242でのラベリング処理の結果、図24に示される、面積の小さい動体ラベリング領域220aが得られ、ステップs247でのラベリング処理の結果、図25に示される頻度ラベリング領域660a,660bが得られたとする。この場合には、頻度ラベリング領域660a,660bのうち、頻度ラベリング領域660aに対応する4つの撮像ブロックBKbが、面積が小さい動体ラベリング領域220aに対応する2つの撮像ブロックBKaのすべてを含んでいる。そのため、ステップs248では、頻度ラベリング領域660aに対応する4つの撮像ブロックBKbが微動発生領域とされる。
 このように第1の例では、撮像領域での物体の微動が検出されると、第2検出頻度マップ600bを2値化して得られる2値化マップの第1領域に対してラベリング処理が行われている。そして、当該ラベリング処理によって得られた頻度ラベリング領域のうち、面積が小さい動体ラベリング領域に対応する撮像ブロックのすべてを、それに対応する撮像ブロックが含むような頻度ラベリング領域に対応する撮像ブロックが、撮像領域において物体の微動が生じている領域とされている。
 検出頻度がクリアされにくい第2検出頻度マップ600bでは、物体の微動が発生している撮像ブロックに対応する検出頻度は大きな値を示す。したがって、第2検出頻度マップ600bを2値化することによって得られた2値化マップでは、“1”を示す第1領域が、物体の微動が発生している撮像ブロックに対応する可能性が高い。
 一方で、第2検出頻度マップ600bの検出頻度はクリアされにくいことから、第2検出頻度マップ600bにおいては、物体の微動が過去には発生していたものの、現在は発生していない撮像ブロックに対応する検出頻度も大きな値を示すことがある。したがって、2値化マップの第1領域には、物体の微動が発生していない撮像ブロックに対応する領域が含まれる可能性がある。
 よって、2値化マップの第1領域に対応する撮像ブロックを無条件に微動発生領域とすると、正確な微動発生領域を特定することが難しくなる。
 面積が小さい動体ラベリング領域に対応する撮像ブロックでは、物体の微動が発生しており、互いに隣接する複数の撮像ブロックに渡って存在する物体が微動する場合には、当該複数の撮像ブロックについての第2検出頻度マップ600bの検出頻度は大きな値を示す。したがって、2値化マップの第1領域(2値化マップにおいて検出頻度が大きい領域)のうち、面積が小さい動体ラベリング領域に対応する部分を含む独立領域、言い換えれば、面積が小さい動体ラベリング領域に対応する部分を含む頻度ラベリング領域については、物体の微動が発生している撮像ブロックに対応した領域であると考えることができる。
 そこで、本例では、上記のように、2値化マップの第1領域に対してラベリング処理を行い、それによって得られた頻度ラベリング領域(検出頻度が大きい一塊の領域)のうち、面積が小さい動体ラベリング領域に対応する撮像ブロックのすべてを、それに対応する撮像ブロックが含むような頻度ラベリング領域に対応する撮像ブロックを微動発生領域としている。
 <第2の例>
 第2の例では、物体の微動の検出に動きベクトルが使用される。動きベクトルは「オプティカルフロー」あるいは「速度ベクトル」とも呼ばれる。図26は、微動検出処理の第2の例を示すフローチャートである。
 図26に示されるように、第2の例では、ステップs251において、微動検出部33は、ステップs12での動体検出処理の結果に基づいて、処理対象の入力画像200に含まれる各動体画像ブロックについての動きベクトルを求める。この動きベクトルは、処理対象の入力画像200と、それよりも一つ前の入力画像200とを用いて、例えばブロックマッチング法によって求めることができる。
 次にステップs252において、微動検出部33は、処理対象の入力画像200において、同一あるいは近似する動きベクトルを有し、かつ隣接する複数の動体画像ブロックを特定する。そして、微動検出部33は、特定した当該複数の動体画像ブロックから成る領域を、同一の物体を示す同一物体領域とする。ここでは、少なくとも一つの同一物体領域が求められる。つまり、処理対象の入力画像200中の動体領域には、少なくとも一つの同一物体領域が含まれている。
 次にステップs253において、微動検出部33は、ステップs252で求めた少なくとも一つの同一物体領域において、面積が小さい同一物体領域が存在するか否かを判断する。具体的には、微動検出部33は、ステップs252で求めた少なくとも一つの同一物体領域において、それに含まれる画素の数が所定数よりも小さい同一物体領域が存在するか否かを判断する。撮像領域において物体の微動が生じている場合には、当該撮像領域の画像を示す入力画像200中の動体領域には、面積が小さい同一物体領域が生じる。したがって、ステップs252で得られた少なくとも一つの同一物体領域において、面積が小さい同一物体領域が存在するか否かを判断することによって、撮像領域において物体の微動が発生しているか否かを特定できる。
 微動検出部33は、面積が小さい同一物体領域、つまりそれに含まれる画素の数が所定数よりも小さい同一物体領域が存在しない場合には、ステップs254において、撮像領域において物体の微動が発生していないと判断する。ステップs254において、撮像領域において物体の微動が発生していないと判断されると、微動検出処理は終了する。
 一方で、微動検出部33は、面積が小さい同一物体領域が存在する場合には、ステップs255において、撮像領域において物体の微動が発生していると判断する。
 なお、あまりにも小さい同一物体領域はノイズによって発生したと考えることができる。したがって、第1の例と同様に、微動検出部33は、ステップs252で得られた少なくとも一つの同一物体領域において、それに含まれる画素の数が第1所定数よりも小さく、第2所定数よりも大きい同一物体領域が存在する場合に、撮像領域において物体の微動が発生していると判断しても良い。
 ステップs255が実行されると、第2特定部34は、ステップs256において、上記のステップs246と同様に、第2検出頻度マップ600bを2値化して2値化マップを生成する。
 次にステップs257において、第2特定部34は、上記のステップs247と同様に、2値化マップの第1領域に対して4連結あるいは8連結等を用いたラベリング処理を行う。これにより、2値化マップの第1領域は、少なくとも一つの頻度ラベリング領域に分けられる。
 次にステップs258において、第2特定部34は、ステップs257で得られた少なくとも一つの頻度ラベリング領域に基づいて、撮像領域での微動発生領域を特定する。具体的には、第2特定部34は、頻度ラベリング領域に対応する撮像ブロックが、ステップs253で特定された、面積が小さい同一物体領域に対応する撮像ブロックのすべてを含む場合には、当該頻度ラベリング領域に対応する撮像ブロックを微動発生領域とする。
 なお、第2特定部34は、ステップs257で得られた少なくとも一つの頻度ラベリング領域の中に、それに対応する撮像ブロックが、面積が小さい同一物体領域に対応する撮像ブロックのすべてを含むような頻度ラベリング領域が存在しない場合には、面積が小さい同一物体領域に対応する撮像ブロックを微動発生領域とする。
 また、第2特定部34は、ステップs253において、面積が小さい同一物体領域が複数特定された場合には、複数の当該同一物体領域のそれぞれについて、当該同一物体領域に対応する撮像ブロックのすべてを、それに対応する撮像ブロックが含むような頻度ラベリング領域が存在するか否かを判定する。
 ここで、上記のように、第2検出頻度マップ600bを2値化することによって得られた2値化マップでは、“1”を示す第1領域が、物体の微動が発生している撮像ブロックに対応する可能性が高い。一方で、2値化マップの第1領域には、物体の微動が発生していない撮像ブロックに対応する領域が含まれる可能性もある。したがって、2値化マップの第1領域に対応する撮像ブロックを無条件に微動発生領域とすると、正確な微動発生領域を特定することが難しくなる。
 面積が小さい同一物体領域に対応する撮像ブロックでは、物体の微動が発生しており、互いに隣接する複数の撮像ブロックに渡って存在する物体が微動する場合には、当該複数の撮像ブロックについての第2検出頻度マップ600bの検出頻度は大きな値を示す。したがって、2値化マップの第1領域のうち、面積が小さい同一物体領域に対応する部分を含む独立領域、言い換えれば、面積が小さい同一物体領域に対応する部分を含む頻度ラベリング領域については、物体の微動が発生している撮像ブロックに対応した領域であると考えることができる。
 そこで、本例では、上記のように、2値化マップの第1領域に対してラベリング処理を行い、それによって得られた頻度ラベリング領域のうち、面積が小さい同一物体領域に対応する撮像ブロックのすべてを、それに対応する撮像ブロックが含むような頻度ラベリング領域に対応する撮像ブロックを微動発生領域としている。
 <第3の例>
 第3の例では、物体の微動の検出にラベリング処理と動きベクトルとが使用される。図27は、微動検出処理の第3の例を示すフローチャートである。
 図27に示されるように、第3の例では、ステップs261において、微動検出部33は、上述のステップs241と同様に、処理対象の入力画像200に含まれる動体領域を特定する。次にステップs252において、微動検出部33は、上述のステップs242と同様に、処理対象の入力画像200に含まれる動体領域に対してラベリング処理を行う。
 次にステップs263において、微動検出部33は、ステップs262でのラベリング処理で得られた少なくとも一つの動体ラベリング領域についての動きベクトルを求める。例えば、微動検出部33は、動体ラベリング領域を構成する複数の動体画像ブロックについての動きベクトルを第2の例のように求める。そして、微動検出部33は、求めた複数の動きベクトルの平均値を、当該動体ラベリング領域の動きベクトルとする。
 次にステップs264において、微動検出部33は、ステップs262でのラベリング処理で得られた少なくとも一つの動体ラベリング領域において、動きベクトルの大きさ(動き量)が小さい動体ラベリング領域が存在するか否かを判断する。具体的には、微動検出部33は、ステップs262で得られた少なくとも一つの動体ラベリング領域において、その大きさが所定値よりも小さい動きベクトルを有する動体ラベリング領域が存在するか否かを判断する。撮像領域において物体の微動が生じている場合には、当該撮像領域の画像を示す入力画像200に含まれる動体領域に対してラベリング処理を行うと、動きベクトルの大きさが小さい動体ラベリング領域が得られる。したがって、ステップs262で得られた少なくとも一つの動体ラベリング領域において、動きベクトルの大きさが小さい動体ラベリング領域が存在するか否かを判断することによって、撮像領域において物体の微動が発生しているか否かを特定できる。
 微動検出部33は、動きベクトルの大きさが小さい動体ラベリング領域が存在しない場合には、ステップs265において、撮像領域において物体の微動が発生していないと判断する。ステップs265において、撮像領域において物体の微動が発生していないと判断されると、微動検出処理は終了する。
 一方で、微動検出部33は、動きベクトルの大きさが小さい動体ラベリング領域が存在する場合には、ステップs266において、撮像領域において物体の微動が発生していると判断する。
 なお、動きベクトルの大きさがあまりにも小さい動体ラベリング領域はノイズによって発生したと考えることができる。したがって、微動検出部33は、ステップs262で得られた少なくとも一つの動体ラベリング領域において、その動きベクトルの大きさが、第1所定値よりも小さく、第2所定値(<第1所定値)よりも大きいラベリング領域が存在する場合に、撮像領域において物体の微動が発生していると判断しても良い。
 ステップs266が実行されると、第2特定部34は、ステップs267において、上述のステップs246と同様に、第2検出頻度マップ600bを2値化して2値化マップを生成する。次にステップs268において、第2特定部34は、上述のステップs247と同様に、2値化マップの第1領域に対してラベリング処理を行う。
 次にステップs269において、第2特定部34は、ステップs268でのラベリング処理で得られた少なくとも一つの頻度ラベリング領域に基づいて、撮像領域での微動発生領域を特定する。具体的には、第2特定部34は、頻度ラベリング領域に対応する撮像ブロックが、ステップs264で特定された、動きベクトルの大きさが小さい動体ラベリング領域に対応する撮像ブロックのすべてを含む場合には、当該頻度ラベリング領域に対応する撮像ブロックを微動発生領域とする。
 なお、第2特定部34は、ステップs268で得られた少なくとも一つの頻度ラベリング領域の中に、それに対応する撮像ブロックが、動きベクトルの大きさが小さい動体ラベリング領域に対応する撮像ブロックのすべてを含むような頻度ラベルリング領域が存在しない場合には、動きベクトルの大きさが小さい動体ラベリング領域に対応する撮像ブロックを微動発生領域とする。
 また、第2特定部34は、ステップs264において、動きベクトルが小さい動体ラベリング領域が複数特定された場合には、複数の当該動体ラベリング領域のそれぞれについて、当該動体ラベリング領域に対応する撮像ブロックのすべてを、それに対応する撮像ブロックが含むような頻度ラベリング領域が存在するか否かを判定する。
 このように、本例では、動きベクトルの大きさが小さい動体ラベリング領域が存在するか否かを判断することによって、撮像領域において物体の微動が発生しているか否かを特定している。人等の動体が全体的に微動する場合には、面積が小さい動体ラベリング領域が得られない可能性がある。本例では、動きベクトルの大きさが小さい動体ラベリング領域が存在するか否かを判断することによって、撮像領域において物体の微動が発生しているか否かを特定している。したがって、動体が全体的に微動する場合にであっても、撮像領域において物体の微動が発生しているか否かを正しく判断することができる。
 以上のように、撮像領域において微動発生領域を特定することによって、静止している、人等の動体と、背景物体とを適切に区別することができる。その結果、動体検出の精度が向上する。
 <変形例>
 日照変化あるいは照明変化などの撮像領域10での明るさの変化(変動も含む)が生じた場合には、動体検出の精度が低下する可能性がある。その結果、撮像領域での物体の微動を適切に検出できない可能性がある。撮像領域での物体の微動を適切に検出できない場合に、微動物体検出処理及びマップ補正処理が実行されると、動体検出の精度がさらに低下する可能がある。
 そこで、本変形例に係る動体検出装置1は、撮像領域10での明るさの変化が生じた場合には、微動物体検出処理及びマップ補正処理を実行しない。これにより、撮像領域での物体の微動が適切に検出できないことに起因する、動体検出の精度の低下を抑制することができる。
 図28は本変形例に係る動体検出装置1の構成を示すブロック図である。本変形例に係る動体検出装置1は、上述の実施の形態に係る動体検出装置1において、検出部36をさらに設けたものである。検出部36は、撮像領域での明るさの変化を検出する。
 図29は本変形例に係る動体検出装置1の動作を示すフローチャートである。本変形例に係る動体検出装置1では、背景モデル生成処理が終了すると、図29に示される処理が実行される。
 図29に示されるように、本変形例に係る動体検出装置1では、上述のステップs11、ステップs12(動体検出処理)及びステップs13(マップ更新処理)が順番に実行される。
 次にステップs17において、本変形例に係る動体検出装置1では、検出部36が、撮像領域での明るさの変化を検出する検出処理を行う。ステップs17において、検出部36が撮像領域での明るさの変化を検出しない場合には、動体検出装置1は、微動物体検出処理(ステップs14)、マップ補正処理(ステップs15)及び背景モデル更新処理(ステップs16)を順次実行する。
 一方で、ステップs17において、検出部36が撮像領域での明るさの変化を検出した場合には、動体検出装置1は、微動物体検出処理及びマップ補正処理を実行せずに、背景モデル更新処理を実行する。この場合の背景モデル更新処理においては、微動物体検出処理が実行されていないことから、上述のステップs170は実行されない。
 このように、撮像領域での明るさの変化が生じた場合に、物体の微動を検出しないようにすることによって、物体の微動が適切に検出されないことに起因する、動体検出の精度の劣化を抑制することができる。
 撮像領域での明るさの変化の検出方法については様々な方法が考えられる。以下に、撮像領域での明るさの変化の検出方法についての具体例を説明する。
 <第1の方法>
 撮像領域での明るさが変化すると、入力画像200全体で画像情報が変化することがあり、入力画像200での動体領域の割合が大きくなることがある。
 そこで、検出部36は、処理対象の入力画像200での動体領域の割合がしきい値よりも大きい場合に、撮像領域において明るさの変化が発生したと判断する。処理対象の入力画像200中の動体領域の割合Rdは、処理対象の入力画像200での動体領域の画素数をPd、当該入力画像200の全画素数をPaとすると、以下の式(4)で表される。
Figure JPOXMLDOC01-appb-M000004
 入力画像200中の動体領域の画素数Pdは、当該入力画像200に含まれる動体画像ブロックの数に、1つの画像ブロックに含まれる画素数を乗じることによって得ることができる。
 <第2の方法>
 入力画像200を撮像する撮像部の撮像環境(撮像部が設置される環境)等によっては、撮像領域での明るさが変化した場合、入力画像200において画像情報が変化した領域全体での面積はそれほど大きくはないものの、入力画像200全体に渡って、画像情報が変化した領域が繋がって広がることがある。
 そこで、検出部36は、上記のステップs242と同様に、処理対象の入力画像200に含まれる動体領域に対してラベリング処理を行う。そして、検出部36は、当該ラベリング処理によって得られたラベリング領域の外接矩形を求める。検出部36は、求めたラベリング領域において、その外接矩形の面積がしきい値よりも大きいラベリング領域が存在する場合には、撮像領域において明るさの変化が発生したと判断する。
 <第3の方法>
 上記の第1及び第2の方法では、撮像領域において明るさが急激に変化したことは検出できるものの、撮像領域において明るさが徐々に変化する場合には、撮像領域での明るさの変化を検出することが難しい。また、第1及び第2の方法では、撮像領域において明るさが大きくなったり小さくなったりするような変化、つまり撮像領域での明るさの変動を検出することは難しい。撮像領域において明るさが徐々に変化する場合や、撮像領域において明るさが変動する場合には、複数枚の入力画像200の間での画面全体の平均輝度値は不安定となる。
 そこで、検出部36は、以下の式(5)を用いて、処理対象の入力画像200と、それよりも前の入力画像200とで構成された(N+1)枚の入力画像200の間での画像全体の平均輝度値についての不安定度Vを求める(N≧1)。そして、検出部36は、求めた不安定度Vがしきい値よりも大きい場合には、撮像領域において明るさの変化が発生したと判断する。
Figure JPOXMLDOC01-appb-M000005
 式(5)中のviは、(N+1)枚の入力画像200に対して古いものから順に0番からN番までの番号をそれぞれ付与した場合のi番目(0≦i≦N)の入力画像200全体での平均輝度値を示している。また式(5)中のMは、(N+1)枚の入力画像200についての平均輝度値の平均値を示しており、以下の式(6)で表される。
Figure JPOXMLDOC01-appb-M000006
 検出部36は、式(5)の代わりに以下の式(7)を用いても良い。
Figure JPOXMLDOC01-appb-M000007
 検出部36は、上記の第1乃至第3の方法のうちの少なくとも一つの方法を用いて、撮像領域での明るさの変化を検出する。検出部36が、第1乃至第3の方法のうちの複数の方法を用いて撮像領域での明るさの変化を検出する場合には、当該複数の方法のうちのいずれかの方法で撮像領域での明るさの変化が検出された場合には、微動物体検出処理及びマップ補正処理が実行されなくなる。
 <その他の変形例>
 撮像領域の環境が、会議室などのように動体の動きが少ない環境である場合には、第1検出頻度マップ600aについての判定用しきい値は、第1非検出頻度マップ610aについての第1のクリア用しきい値よりも大きい方が望ましい。動体の動きが少ない環境では、動体が同じ場所に留まる可能性が高いことから、動体が存在する可能性が高い撮像ブロックの検出頻度は大きくなりやすい。このような環境において、判定用しきい値を小さくすると、動体がたまたま少しだけ留まった撮像ブロックについて、動体が存在する可能性が高いと誤って判断する可能性がある。よって、撮像領域10の環境が動体の動きが少ない環境である場合には、判定用しきい値を大きくする。
 また、撮像領域の環境が、人通りの多い場所など、動体の動きが多い環境である場合には、判定用しきい値は第1のクリア用しきい値よりも小さい方が望ましい。動体の動きが多い環境では、動体が同じ場所に留まる可能性は低い。したがって、動体が存在する可能性が高い撮像ブロックであっても、当該撮像ブロックの検出頻度は大きくなりにくい。このような環境において、判定用しきい値を大きくすると、動体が存在する可能性が高い領域を適切に特定できない可能性がある。よって、撮像領域10の環境が動体の動きが多い環境である場合には、判定用しきい値を小さくする。
 また、上記の例では、画像ブロックの大きさを、3画素×3画素としていたが、これに限定されず、画像ブロックの大きさは、4画素×4画素、または5画素×5画素としてもよい。
 また、上記の例では、ある画像ブロックについてのコードワードCWには、当該ある画像ブロック内の全ての画素の画素値が画像情報として含まれている場合を例示したが、これに限定されず、コードワードCWには、画像情報として画像ブロック内の全ての画素の画素値が含まれていなくてもよい。具体的には、画像ブロックの大きさが、3画素×3画素であった場合、コードワードCWには、5画素分の画素値が画像情報として含まれていてもよい。このように、コードワードCW内の情報量を減らすことによって、処理量を低減することができるので、動体検出処理を高速化することができる。
 また、上記の例では、入力画像200中の各画素が、R(赤)、G(緑)及びB(青)のそれぞれの画素値を有している場合を想定していたが、これに限定されない。具体的には、入力画像200中の各画素の画素値は、RGB以外の他の色空間を用いて表されていてもよい。例えば、入力画像200がYUV形式の画像データである場合、輝度信号Y並びに2つの色差信号U,Vが、各画素の画素値として用いられることになる。
 以上のように、動体検出装置1は詳細に説明されたが、上記した説明は、全ての局面において例示であって、この発明がそれに限定されるものではない。また、上述した各種変形例は、相互に矛盾しない限り組み合わせて適用可能である。そして、例示されていない無数の変形例が、この発明の範囲から外れることなく想定され得るものと解される。
 1 動体検出装置
 5 背景モデル記憶部
 6 キャッシュモデル記憶部
 31 動体検出部
 32 第1特定部
 33 微動検出部
 34 第2特定部
 35 背景モデル更新部
 36 検出部
 311 制御プログラム

Claims (9)

  1.  背景画像情報を含む背景モデルを記憶する第1記憶部と、
     前記背景モデルと入力画像とを用いて、当該入力画像に写る撮像領域に存在する動体を検出する動体検出部と、
     前記動体検出部での検出結果に基づいて、前記撮像領域を構成する複数の部分撮像領域のそれぞれについての動体の検出頻度を示す第1検出頻度マップを生成し、当該複数の部分撮像領域のうち、当該第1検出頻度マップでの当該検出頻度が第1のしきい値以上あるいは当該第1のしきい値よりも大きい部分撮像領域を、動体が存在する可能性が高い第1領域として特定する第1特定部と、
     入力画像に基づいて前記撮像領域での物体の微動を検出する微動検出部と、
     前記微動検出部で物体の微動が検出されたとき、前記撮像領域において物体の微動が生じている第2領域を特定する第2特定部と、
     第2記憶部と、
     前記背景モデルを更新する背景モデル更新部と
    を備え、
     前記背景モデル更新部は、入力画像に含まれる、前記動体検出部が動体を検出した部分撮像領域の画像から得られた画像情報を背景画像情報候補として前記第2記憶部に記憶し、
     前記背景モデル更新部は、その期間に入力される入力画像の枚数で表され、前記第1のしきい値よりも小さい判定期間において入力される入力画像が用いられた前記動体検出部での動体の検出結果と、前記第1特定部で特定される前記第1領域とに基づいて、前記第2記憶部内の背景画像情報候補を背景画像情報として前記背景モデルに登録するか否かを判定し、
     前記背景モデル更新部は、前記微動検出部で物体の微動が検出されたとき、入力画像における前記第2領域の画像から得られた画像情報であって、前記背景モデルに背景画像情報として登録されている画像情報を、当該背景モデルから削除する、動体検出装置。
  2.  請求項1に記載の動体検出装置であって、
     前記第1特定部は、前記動体検出部での検出結果に基づいて、前記複数の部分撮像領域のそれぞれについての動体の非検出頻度を示す第1非検出頻度マップを生成し、
     前記第1特定部は、前記複数の部分撮像領域のうち、前記第1非検出頻度マップでの前記非検出頻度が第2のしきい値以上あるいは当該第2のしきい値よりも大きい部分撮像領域についての、前記第1検出頻度マップの前記検出頻度及び前記第1非検出頻度マップの前記非検出頻度をクリアする、動体検出装置。
  3.  請求項2に記載の動体検出装置であって、
     前記第1特定部は、前記動体検出部での検出結果に基づいて、前記複数の部分撮像領域のそれぞれについての動体の検出頻度を示す第2検出頻度マップと、前記複数の部分撮像領域のそれぞれについての動体の非検出頻度を示す第2非検出頻度マップとを生成し、
     前記第1特定部は、前記複数の部分撮像領域のうち、前記第2非検出頻度マップでの前記非検出頻度が、前記第2のしきい値よりも大きい第3のしきい値以上あるいは当該第3のしきい値よりも大きい部分撮像領域についての、前記第2検出頻度マップの前記検出頻度及び前記第2非検出頻度マップの前記非検出頻度をクリアし、
     前記第1特定部は、前記微動検出部で物体の微動が検出されたとき、前記第2領域についての前記第2検出頻度マップの前記検出頻度を、前記第1検出頻度マップに対して当該第2領域についての値としてコピーする、動体検出装置。
  4.  請求項3に記載の動体検出装置であって、
     前記撮像領域の明るさの変化を検出する検出部をさらに備え、
     前記微動検出部は、前記検出部において前記撮像領域の明るさの変化が検出されたときには、物体の微動の検出を行わない、動体検出装置。
  5.  請求項1に記載の動体検出装置であって、
     前記微動検出部は、前記動体検出部での検出結果に基づいて、入力画像に含まれる動体領域に対してラベリング処理を行い、当該ラベリング処理によって得られたラベリング領域に基づいて前記撮像領域において物体の微動があるか否かを判断する、動体検出装置。
  6.  請求項5に記載の動体検出装置であって、
     前記微動検出部は、前記ラベリング領域についての動きベクトルを取得し、当該動きベクトルに基づいて前記撮像領域において物体の微動があるか否かを判断する、動体検出装置。
  7.  請求項1に記載の動体検出装置であって、
     前記微動検出部は、前記動体検出部での検出結果に基づいて、入力画像についての動きベクトルを取得し、当該動きベクトルに基づいて前記撮像領域において物体の微動があるか否かを判断する、動体検出装置。
  8.  (a)第1記憶部が記憶する、背景画像情報を含む背景モデルと、入力画像とを用いて、当該入力画像に写る撮像領域に存在する動体を検出する工程と、
     (b)前記工程(a)での検出結果に基づいて、前記撮像領域を構成する複数の部分撮像領域のそれぞれについての動体の検出頻度を示す第1検出頻度マップを生成する工程と、
     (c)前記複数の部分撮像領域のうち、前記第1検出頻度マップでの前記検出頻度がしきい値以上あるいは当該しきい値よりも大きい部分撮像領域を、動体が存在する可能性が高い第1領域として特定する工程と、
     (d)入力画像に基づいて前記撮像領域での物体の微動を検出する工程と、
     (e)前記工程(d)で物体の微動が検出されたとき、前記撮像領域において物体の微動が生じている第2領域を特定する工程と、
     (f)入力画像に含まれる、前記工程(a)で動体が検出された部分撮像領域の画像から得られた画像情報を背景画像情報候補として第2記憶部に記憶する工程と、
     (g)その期間に入力される入力画像の枚数で表され、前記しきい値よりも小さい判定期間において入力される入力画像が用いられた前記工程(a)での動体の検出結果と、前記工程(c)で特定される前記第1領域とに基づいて、前記第2記憶部内の背景画像情報候補を背景画像情報として前記背景モデルに登録するか否かを判定する工程と、
     (h)前記工程(d)で物体の微動が検出されたとき、入力画像における前記第2領域の画像から得られた画像情報であって、前記背景モデルに背景画像情報として登録されている画像情報を、当該背景モデルから削除する工程と
    を備える、動体検出方法。
  9.  動体検出装置を制御するための制御プログラムであって、
     前記動体検出装置に、
     (a)第1記憶部が記憶する、背景画像情報を含む背景モデルと、入力画像とを用いて、当該入力画像に写る撮像領域に存在する動体を検出する工程と、
     (b)前記工程(a)での検出結果に基づいて、前記撮像領域を構成する複数の部分撮像領域のそれぞれについての動体の検出頻度を示す第1検出頻度マップを生成する工程と、
     (c)前記複数の部分撮像領域のうち、前記第1検出頻度マップでの前記検出頻度がしきい値以上あるいは当該しきい値よりも大きい部分撮像領域を、動体が存在する可能性が高い第1領域として特定する工程と、
     (d)入力画像に基づいて前記撮像領域での物体の微動を検出する工程と、
     (e)前記工程(d)で物体の微動が検出されたとき、前記撮像領域において物体の微動が生じている第2領域を特定する工程と、
     (f)入力画像に含まれる、前記工程(a)で動体が検出された部分撮像領域の画像から得られた画像情報を背景画像情報候補として第2記憶部に記憶する工程と、
     (g)その期間に入力される入力画像の枚数で表され、前記しきい値よりも小さい判定期間において入力される入力画像が用いられた前記工程(a)での動体の検出結果と、前記工程(c)で特定される前記第1領域とに基づいて、前記第2記憶部内の背景画像情報候補を背景画像情報として前記背景モデルに登録するか否かを判定する工程と、
     (h)前記工程(d)で物体の微動が検出されたとき、入力画像における前記第2領域の画像から得られた画像情報であって、前記背景モデルに背景画像情報として登録されている画像情報を、当該背景モデルから削除する工程と
    を実行させるための制御プログラム。
PCT/JP2015/054118 2014-02-25 2015-02-16 動体検出装置、動体検出方法及び制御プログラム WO2015129501A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014-033901 2014-02-25
JP2014033901A JP6177708B2 (ja) 2014-02-25 2014-02-25 動体検出装置、動体検出方法及び制御プログラム

Publications (1)

Publication Number Publication Date
WO2015129501A1 true WO2015129501A1 (ja) 2015-09-03

Family

ID=54008824

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/054118 WO2015129501A1 (ja) 2014-02-25 2015-02-16 動体検出装置、動体検出方法及び制御プログラム

Country Status (2)

Country Link
JP (1) JP6177708B2 (ja)
WO (1) WO2015129501A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105830437A (zh) * 2015-12-19 2016-08-03 张北江 一种监控系统中背景识别的方法及系统

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6630140B2 (ja) * 2015-12-10 2020-01-15 株式会社メガチップス 画像処理装置、制御プログラム及び前景画像特定方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009140307A (ja) * 2007-12-07 2009-06-25 Glory Ltd 人物検出装置
JP2012234494A (ja) * 2011-05-09 2012-11-29 Canon Inc 画像処理装置、画像処理方法、及びプログラム
JP2013254291A (ja) * 2012-06-06 2013-12-19 Mega Chips Corp 動体検出装置、動体検出方法およびプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009140307A (ja) * 2007-12-07 2009-06-25 Glory Ltd 人物検出装置
JP2012234494A (ja) * 2011-05-09 2012-11-29 Canon Inc 画像処理装置、画像処理方法、及びプログラム
JP2013254291A (ja) * 2012-06-06 2013-12-19 Mega Chips Corp 動体検出装置、動体検出方法およびプログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105830437A (zh) * 2015-12-19 2016-08-03 张北江 一种监控系统中背景识别的方法及系统
WO2017101124A1 (zh) * 2015-12-19 2017-06-22 张北江 一种监控系统中背景识别的方法及系统
CN105830437B (zh) * 2015-12-19 2019-08-09 新联智慧信息技术(深圳)有限公司 一种监控系统中背景识别的方法及系统

Also Published As

Publication number Publication date
JP6177708B2 (ja) 2017-08-09
JP2015158837A (ja) 2015-09-03

Similar Documents

Publication Publication Date Title
JP4542207B1 (ja) 移動体検出方法および移動体検出装置
JP6024658B2 (ja) 物体検出装置、物体検出方法及びプログラム
EP2965262A1 (en) Method for detecting and tracking objects in sequence of images of scene acquired by stationary camera
KR101414670B1 (ko) 온라인 랜덤 포레스트 및 파티클 필터를 이용한 열 영상에서의 객체 추적 방법
JP2019145174A (ja) 画像処理システム、画像処理方法及びプログラム記憶媒体
JP7272024B2 (ja) 物体追跡装置、監視システムおよび物体追跡方法
US10762372B2 (en) Image processing apparatus and control method therefor
US10614336B2 (en) Method, system, and computer-readable recording medium for image-based object tracking
US20180205877A1 (en) Information processing apparatus, information processing method, system, and non-transitory computer-readable storage medium
JP6177708B2 (ja) 動体検出装置、動体検出方法及び制御プログラム
US10643096B2 (en) Image processing apparatus, image processing method, and non-transitory computer-readable storage medium
JP2009182624A (ja) 目標追尾装置
JP2019067377A (ja) 画像処理装置及び方法及び監視システム
WO2015146582A1 (ja) エリア状態推定装置、エリア状態推定方法および環境制御システム
KR102516172B1 (ko) 전경의 색상 추출 시스템, 방법 및 컴퓨터 판독 가능한 기록매체
KR102161212B1 (ko) 움직임 검출 시스템 및 방법
CN108711164B (zh) 一种基于LBP和Color特征的运动检测方法
JP6378483B2 (ja) 検出装置、検出対象物の検出方法及び制御プログラム
WO2015093231A1 (ja) 画像処理装置
JP6162492B2 (ja) 動体検出装置、動体検出方法及び制御プログラム
JP2016152467A (ja) 追尾装置、追尾方法及び追尾プログラム
JP6362939B2 (ja) 検出装置、検出方法及び制御プログラム
JP2020071717A (ja) 情報処理装置、情報処理方法及びプログラム
JP6468642B2 (ja) 情報端末装置
JP6266461B2 (ja) 対象検出装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15756015

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15756015

Country of ref document: EP

Kind code of ref document: A1