EP4456006A1 - Image processing apparatus, control method therefor, and program - Google Patents
Image processing apparatus, control method therefor, and program Download PDFInfo
- Publication number
- EP4456006A1 EP4456006A1 EP24170417.0A EP24170417A EP4456006A1 EP 4456006 A1 EP4456006 A1 EP 4456006A1 EP 24170417 A EP24170417 A EP 24170417A EP 4456006 A1 EP4456006 A1 EP 4456006A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- person
- image
- detection
- rotated
- candidate region
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/103—Static body considered as a whole, e.g. static pedestrian or occupant recognition
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/04—Context-preserving transformations, e.g. by using an importance map
- G06T3/047—Fisheye or wide-angle transformations
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/24—Aligning, centring, orientation detection or correction of the image
- G06V10/242—Aligning, centring, orientation detection or correction of the image by image rotation, e.g. by 90 degrees
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/761—Proximity, similarity or dissimilarity measures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
- G06V10/809—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of classification results, e.g. where the classifiers operate on the same input data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/58—Means for changing the camera field of view without moving the camera body, e.g. nutating or panning of optics or image sensors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/61—Control of cameras or camera modules based on recognised objects
- H04N23/611—Control of cameras or camera modules based on recognised objects where the recognised objects include parts of the human body
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
Definitions
- the present invention relates to an image processing apparatus, a control method therefor, and a program.
- Person detection techniques for detecting in images are techniques that detect a person box (typically, a bounding box) that encloses a person region of an object in an image. This technique is used in human behavior recognition and people counting. Many person detection techniques using machine learning have been proposed in recent years. Among these, a method using a person detection model using a deep neural network (hereinafter, referred to as "DNN”) has shown high recognition accuracy ( Wang, Chien-Yao, Alexey Bochkovskiy, and Hong-Yuan Mark Liao.
- DNN deep neural network
- a person detection model is obtained by learning from training data including pairs of an image showing a person (hereinafter, referred to as a person image) and a correct answer label corresponding to a person box of a person.
- the person posture that is detectable by the person detection model is limited to person postures sufficiently included in the training data.
- people being imaged in an upright posture is relatively common, but people being imaged in a horizontal posture is relatively uncommon and is thus not sufficiently included in training data.
- person detection for people in an upright posture is easy, but person detection for people in a person posture that is not sufficiently included in the training data, such as a horizontal posture, is difficult.
- one plausible method includes generating training data of people in a horizontal posture. However, this requires person boxes of people in images to be manually generated as correct answer labels for a large number of images. The cost in terms of manpower for this task is high, and building sufficient training data is not easy.
- the present invention has been made in consideration of the aforementioned problems and realizes a technique for suppressing an increase in false detections and increasing the detection accuracy of person detection for person postures that are difficult for person detection.
- the present invention in its first aspect provides an image processing apparatus as specified in claims 1 to 5.
- the present invention in its second aspect provides a method as specified in claim 6.
- the present invention in its second aspect provides a program as specified in claim 7.
- person detection is performed on a plurality of rotated images obtained by rotation of a plurality of rotation angles and person boxes with a high false detection possibility are removed from person boxes obtained from rotated images of a predetermined rotation angle.
- FIG. 1 is a block diagram illustrating an example of the hardware configuration of an image processing apparatus 100 according to the first embodiment.
- the image processing apparatus 100 includes a CPU 101, ROM 102, RAM 103, a secondary storage apparatus 104, an image capture apparatus 105, an input apparatus 106, a display apparatus 107, a network I/F 108, and a bus 109 that connects these so that they are able to communicate.
- the CPU 101 executes commands in accordance with programs stored in the ROM 102 and RAM 103.
- the ROM 102 is non-volatile memory (for example, EEPROM) and stores a program for the present embodiment and programs and data required for other control.
- the RAM 103 is volatile memory and stores transient data such as image data and person detection results.
- the secondary storage apparatus 104 is a rewritable secondary storage apparatus such as a hard disk drive or flash memory and stores image information, programs, various types of settings content, and the like. This information is transferred to the RAM 103, and the CPU 101 executes programs and uses data.
- the image capture apparatus 105 is constituted by an image capturing lens, an imaging sensor such as CCD or CMOS, a video signal processing unit, and the like and captures video (30 frames per second).
- the input apparatus 106 is a keyboard and mouse, for example, and transfers instruction inputs from a user to the CPU 101.
- the display apparatus 107 is a Braun tube CRT or liquid crystal display and displays to the user processing results and the like. For example, the display apparatus 107 displays a list of four images illustrated in FIGS. 7A to 7D described below in detail and displays frames indicating a person has been detected, likelihood, and rotation angle superimposed.
- the network I/F 108 is a modem or LAN interface for connecting to a network such as the Internet or an intranet. Note that the type of communication may be wired or wireless.
- the CPU 101 loads software containing processing corresponding to each step of the flowchart described below from the secondary storage apparatus 104 onto the RAM 103 and executes the software.
- FIG. 2 is a functional configuration diagram of software for image processing according to this embodiment being executed by the CPU 101.
- the image processing apparatus 100 includes an image obtaining unit 201, a rotation unit 202, a person detection unit 203, a reverse rotation unit 204, a removal unit 205, and an integration unit 206. Note that a part of the illustrated configuration may be implemented by a dedicated circuit or the like instead of the CPU 101.
- FIG. 3 is a flowchart illustrating the flow of the processing of the image processing apparatus 100 according to the present embodiment.
- FIG. 4 is a schematic view illustrating an image according to the present embodiment.
- FIGS. 5A to 5D are schematic views illustrating a rotated image according to the present embodiment.
- FIGS. 6A to 6D are schematic views illustrating a person detection result according to the present embodiment.
- FIGS. 7A to 7D are schematic views illustrating a pre-rotation person box according to the present embodiment.
- FIGS. 8A and 8B are schematic views illustrating grouping of person detection results according to the present embodiment.
- step S101 the image obtaining unit 201 obtains an image obtained via image capture by the image capture apparatus 105.
- FIG. 4 is an example of an image 400 captured in this manner. In the image 400, two people, a person 401 and a person 402, are shown, and a non-person 403 is also shown. Any number of people may be included in an image including zero people or three or more people. The example of FIG. 4 should be understood to be merely an example in which there are two people.
- the rotation unit 202 rotates the image 400 obtained by the image obtaining unit 201 to generate rotated images 501 to 504 illustrated in FIGS. 5A to 5D .
- the rotated image 501 is an image obtained by rotating the image 400 0 degrees
- the rotated image 502 is an image obtained by rotating the image 400 90 degrees
- the rotated image 503 is an image obtained by rotating the image 400 180 degrees
- the rotated image 504 is an image obtained by rotating the image 400 270 degrees.
- the anticlockwise direction in the rotation direction is defined as the positive direction.
- the rotation angle is expressed within a range from 0 degrees to 360 degrees. For example, a rotation angle of 270 degrees + 180 degrees is equivalent to a rotation angle of 90 degrees.
- any number of rotated images and any rotation angle may be used, and the present embodiment is not limited to those used in the example.
- the rotation unit 202 provides information 505 to 508 indicating the rotation angle to the rotated images 501 to 504.
- step S103 the person detection unit 203 executes person detection processing in accordance with a person detection method using the DNN described in Document "Wang" on the rotated images 501 to 504 obtained by the rotation unit 202 to generate person detection results 601 to 607 (detection information indicating a person candidate region) illustrated in FIGS. 6A to 6D .
- the person detection results 601 to 607 include a bounding box (hereinafter, referred to as a person box) for each person, a person likelihood, and the rotation angle of the rotated image which is the detection target.
- the person likelihood is a real number value from 0 to 1 and a value that indicates a higher possibility of a person existing in the person box when the value is closer to 1.
- a person candidate is determined when the person likelihood is equal to or greater than a preset threshold (for example, 0.2). The threshold is changed and set by the user operating the input apparatus 106.
- the rotated image may be converted in a predetermined size (for example, the size of the image 400) via scaling up/down and padding. Conversion to a predetermined size can reduce the amount of processing for changing the shape of the entire DNN model which is required each time the input shape of the DNN model changes. Also, person detection may be performed after converting the images to a mini-batch with a size of B ⁇ H ⁇ W ⁇ C by connecting a plurality of rotated images converted to a predetermined size along a new axis.
- a predetermined size for example, the size of the image 400
- Conversion to a predetermined size can reduce the amount of processing for changing the shape of the entire DNN model which is required each time the input shape of the DNN model changes.
- person detection may be performed after converting the images to a mini-batch with a size of B ⁇ H ⁇ W ⁇ C by connecting a plurality of rotated images converted to a predetermined size along a new axis.
- B is the number of rotated images simultaneously subjected to person detection
- H is a predetermined size (height)
- W is a predetermined size (width)
- C is a predetermined size (channel number).
- person detection may be performed after mapping the plurality of rotated images simultaneously subjected to person detection onto a single mapping image.
- a mapping image has a size that allows the plurality of rotated images to be mapped without overlap. This is because the greater the number of elements in the images input into the DNN, the more effective the parallel processing performance of the processor can be.
- the person 401 has been detected as a person candidate, but the person 402 has not been detected as a person candidate.
- both of the persons 401 and 402 have been detected as person candidates.
- the person 402 and the non-person 403 have been detected as a person candidate, and the person 401 has not been detected as a person candidate.
- the person 401 and the non-person 403 have been detected as a person candidate, but the person 402 has not been detected as a person candidate.
- step S104 the reverse rotation unit 204 converts (coordinates representing) the person box of the person detection results 601 to 607 obtained by the person detection unit 203 into coordinates in the image 400 on the basis of each rotation angle to generate pre-rotation person boxes 701 to 707 illustrated in FIG. 7 .
- Ceiling (x) is a ceiling function that returns the smallest integer that is not less than a real number x.
- r is a parameter for adjusting what percentage of the person detection results to remove with respect to the number of person detection results and may be any value such as 0.1 or 0.2 and may be selected by the user from a preset range.
- pre-rotation person box outside of the highest ranking k may be removed for each rotation angle from the entire pre-rotation person boxes 702 to 707 with a rotation angle other than 0 degrees.
- pre-rotation person boxes with a value less than a predetermined threshold may be removed.
- a rotation angle other than 0 degrees is used, but a pre-rotation person box with a different rotation angle may be removed.
- person detection may be applied to evaluation data, positive detection numbers for each rotation angle may be calculated, and from the positive detection numbers, which rotation angle pre-rotation person boxes to remove may be decided.
- Any method can be used that can remove pre-rotation person boxes with a high false detection possibility from among the pre-rotation person boxes obtained from rotated images with a rotation angle with a few number of person boxes that can be detected.
- the present embodiment is not limited to these methods.
- step S 106 the integration unit 206 calculates the intersection over union (IoU) representing an evaluation index between pre-rotation person boxes after the removal processing of step S 105.
- IoU is a value indicating the degree of match between boxes.
- the person detection results corresponding to the pre-rotation person boxes with an IoU equal to or greater than a predetermined threshold are grouped in groups of person detection results for the same person. This example is merely an example, and the person detection results corresponding to pre-rotation person boxes with a distance between center coordinates equal to or less than a predetermined threshold may be grouped as person detection results for the same person. Any method can be used that can group person detection results for the same person.
- the present embodiment is not limited these methods.
- the result with the highest person likelihood is selected from the grouped person detection results.
- This example is merely an example, and the result with the largest person box size may be selected, or, in the case of images with plurality frames, the result with smallest amount of positional movement in the person box between frames may be selected. Any method able to generate a highly accurate person detection result can be used, and the present embodiment is not limited to these examples.
- person detection is performed on rotated images of a plurality of rotation angles and the person box with the lowest degree of certainty is removed from among the person boxes obtained from the rotated image of a predetermined rotation angle.
- the person box with a lowest degree of certainty is removed from among the person boxes obtained from rotated images of a rotation angle with a few number of person boxes that can be detected.
- person detection is performed on rotated images of a plurality of rotation angles and person boxes with a high false detection possibility are removed using person likelihood distribution.
- FIG. 9 is a block diagram illustrating the basic functional configuration of an image processing apparatus according to the present second embodiment.
- FIG. 9 is also a functional configuration diagram of software for image processing according to the second embodiment being executed by the CPU 101.
- the image processing apparatus 100 includes the image obtaining unit 201, the rotation unit 202, the person detection unit 203, the reverse rotation unit 204, a distribution calculation unit 901, the removal unit 205, and the integration unit 206. Note that a part of the illustrated configuration may be implemented by a circuit or the like other than the CPU 101.
- FIG. 10 is a flowchart illustrating the flow of processing according to the present second embodiment.
- FIGS. 11A to 11D are schematic views illustrating a person detection result according to the present second embodiment.
- FIGS. 12A to 12D are schematic views illustrating a pre-rotation person box according to the present second embodiment.
- FIGS. 13A to 13D are schematic views of person likelihood distribution according to the present second embodiment. Also, in the present second embodiment, FIGS. 4 and 5A to 5D will be referenced.
- step S201 the image obtaining unit 201 obtains a captured image (reference sign 400 in FIG. 4 ).
- the detailed processing is the same as that in the first embodiment, and thus the description thereof will be omitted.
- step S202 the rotation unit 202 executes processing to rotate the image 400 obtained by the image obtaining unit 201 to generate the rotated images 501 to 504 illustrated in FIGS. 5A to 5D .
- the detailed processing is the same as that in the first embodiment, and thus the description thereof will be omitted.
- step S203 the person detection unit 203 executes person detection processing in accordance with a person detection method using the DNN described in Document "Wang" on the rotated images 501 to 504 obtained by the rotation unit 202 to generate person detection results 1101 to 1112 illustrated in FIGS. 11A to 11D .
- the detailed processing is the same as that in the first embodiment, and thus the description thereof will be omitted.
- step S204 the reverse rotation unit 204 converts the person box of the person detection results 1101 to 1112 obtained by the person detection unit 203 into coordinates in the image 400 on the basis of each rotation angle to generate pre-rotation person boxes 1201 to 1212 illustrated in FIGS. 12A to 12D .
- step S205 the distribution calculation unit 901 calculates the IoU representing an evaluation index between pre-rotation person boxes, and the person detection results corresponding to the pre-rotation person boxes with an IoU equal to or greater than a predetermined threshold are grouped in groups of person detection results for the same person.
- This example is merely an example, and the person detection results corresponding to pre-rotation person boxes with a distance between center coordinates equal to or less than a predetermined threshold may be grouped as person detection results for the same person. Any method can be used that can group person detection results for the same person. The present embodiment is not limited these methods.
- the distribution calculation unit 901 calculates the person likelihood distribution for each rotation angle from the grouped person detection results. As illustrated in FIGS. 13A to 13C , person likelihood distributions 1301 to 1303 indicating target person candidates are generated by categorizing per region of the same position in the original image.
- step S206 the removal unit 205 removes person detection results corresponding to a condition that the absolute value of a difference between the maximum person likelihood and the person likelihood of the region obtained from a rotated image of a rotation angle which is the rotation angle of the maximum person likelihood plus 180 degrees is less than a predetermined threshold for each of the person likelihood distributions 1301 to 1303 illustrated in FIGS. 13Ato 13C .
- the threshold is 0.3, for example.
- the person likelihood distribution 1303 since only the person likelihood distribution 1303 has an absolute value of a difference between the maximum person likelihood and the person likelihood obtained from a rotated image of a rotation angle which is the rotation angle of the maximum person likelihood plus 180 degrees of 0.1, which is less than the threshold, the corresponding person detection results 1102, 1105, 1108, 1111 are removed.
- This allows false detection objects to be removed by utilizing the tendency of person likelihood changing greatly depending on the rotation angle in the case of a person with both a head portion and a leg portion due to looking different in the up-and-down direction, namely having high direction dependence and the tendency of person likelihood changing little depending on the rotation angle in the case of a false detection object with low direction dependence.
- the threshold can be any value such as 0.5 or 0.2 that is appropriate for the value range of person likelihood.
- the threshold can be any value such as 0.5 or 0.2 that is appropriate for the value range of person likelihood.
- the corresponding person detection result may be removed, or when the person likelihood at a plurality of rotation angles does not satisfy a predetermined threshold, the corresponding person detection result may be removed. Any method using person likelihood distribution can be used that can remove pre-rotation person boxes with a high false detection possibility. However, the present embodiment is not limited to these methods.
- step S207 the integration unit 206 calculates the evaluation index IoU between pre-rotation person boxes.
- the person detection results corresponding to the pre-rotation person boxes with an IoU equal to or greater than a predetermined threshold are grouped in groups of person detection results for the same person.
- the detailed processing for grouping is the same as that in the first embodiment, and thus the description thereof will be omitted.
- the result with the highest person likelihood is selected from the grouped person detection results.
- the detailed processing for selecting the person detection result is the same as that in the first embodiment, and thus the description thereof will be omitted.
- person detection is performed on rotated images of a plurality of rotation angles and person boxes with a high false detection possibility are removed using person likelihood distribution. According to the second embodiment, even when the person likelihood of a person box with a high possibility of false detection is higher than the person likelihood of a person box for a person, it can be removed.
- FIG. 14 is a block diagram illustrating the basic functional configuration of an image processing apparatus according to the present third embodiment.
- FIG. 14 is also a functional configuration diagram of software for image processing according to the third embodiment being executed by the CPU 101.
- the image processing apparatus 100 includes the image obtaining unit 201, the rotation unit 202, the person detection unit 203, the reverse rotation unit 204, an allocation unit 1401, the removal unit 205, and the integration unit 206. Note that a part of the illustrated configuration may be implemented by a circuit or the like other than the CPU 101.
- FIG. 15 is a flowchart illustrating the flow of processing according to the present embodiment.
- FIG. 16 is a diagram illustrating an example of a captured image according to the present embodiment.
- FIGS. 17A to 17D are schematic views illustrating a rotated image according to the present third embodiment.
- FIGS. 18A to 18D are schematic views illustrating a person detection result according to the present embodiment.
- FIGS. 19A to 19D are schematic views illustrating a pre-rotation person box according to the present embodiment.
- FIG. 20 is a schematic view illustrating an allocation map for when the area of the field of view of the image capture apparatus 105 according to the present embodiment is divided into a plurality (four in the illustrated example) of field of view regions.
- FIG. 20 is a schematic view illustrating an allocation map for when the area of the field of view of the image capture apparatus 105 according to the present embodiment is divided into a plurality (four in the illustrated example) of field of view regions.
- FIG. 20 is a schematic view illustrating an allocation map
- FIGS. 22A and 22B are schematic views illustrating grouping of person detection results according to the present embodiment.
- the image obtaining unit 201 obtains a captured image by the image capture apparatus 105 using a fisheye lens.
- FIG. 16 illustrates an example of an image 1600 captured in this manner.
- the illustrated image 1600 shows two people, a person 1601 and a person 1602. Note that the number of people in the image may be any number such as zero or three or more people, and the number of people is not particularly limited.
- step S302 the rotation unit 202 executes processing to rotate the image 1600 obtained by the image obtaining unit 201 to generate rotated images 1701 to 1704 illustrated in FIGS. 17A to 17D .
- step S303 the person detection unit 203 performs person detection in accordance with a person detection method using the DNN described in Document "Wang" on the rotated images 1701 to 1704 obtained by the rotation unit 202 to generate person detection results 1801 to 1806 illustrated in FIGS. 18A to 18D .
- the detailed processing is the same as that in the first embodiment, and thus the description thereof will be omitted.
- step S304 the reverse rotation unit 204 converts (reverse-rotates) the person box of the person detection results 1801 to 1806 obtained by the person detection unit 203 into coordinates in the image 1600 on the basis of each rotation angle to generate pre-rotation person boxes 1901, 1905, and 1906 illustrated in FIGS. 19A to 19D .
- step S305 the allocation unit 1401 allocates the pre-rotation person boxes 1901 to 1906 obtained via reverse rotation processing by the reverse rotation unit 204 with a label from 1 to 4 depending on which label region of an allocation map 2000 ( FIG. 20 ) the center coordinates of the person boxes correspond to.
- the pre-rotation person boxes 1901 and 1903 are allocated the label 1 and the pre-rotation person boxes 1902 and 1904 to 1906 are allocated the label 3. Any number/position may be used for the number of labels and the position of the label regions, and the present embodiment is not limited by these.
- the removal unit 205 references a target removal rotation angle table 2100 (stored in a non-volatile memory) illustrated in FIG. 21 and removes the pre-rotation person boxes 1902 to 1904 which, from among the pre-rotation person boxes 1901 to 1906, have a rotation angle that corresponds to a rotation angle for removal corresponding to a label and has a person likelihood of less than a predetermined threshold (0.5).
- a predetermined threshold 0.5
- the threshold can be any value such as 0.6 or 0.3 that is appropriate for the value range of person likelihood.
- a pre-rotation person box outside of the highest ranking k may be removed.
- the rotation angle for removal may be any rotation angle
- person detection may be applied to evaluation data
- positive detection numbers for each rotation angle may be calculated
- a rotation angle for removal may be determined from the positive detection numbers. Any method can be used that can remove pre-rotation person boxes with a high false detection possibility from among the pre-rotation person boxes obtained from rotated images with a rotation angle with a few number of person boxes that can be detected.
- the present embodiment is not limited to these methods.
- step S307 the integration unit 206 calculates the evaluation index IoU between pre-rotation person boxes.
- the person detection results corresponding to the pre-rotation person boxes with an evaluation index IoU equal to or greater than a predetermined threshold are grouped in groups of person detection results for the same person by the integration unit 206.
- the detailed processing for grouping is the same as that in the first embodiment, and thus the description thereof will be omitted.
- the result with the highest person likelihood is selected from the grouped person detection results.
- the detailed processing for selecting the person detection result is the same as that in the first embodiment, and thus the description thereof will be omitted.
- the third embodiment for a captured image obtained by a fisheye camera, person detection is performed on rotated images of a plurality of rotation angles and person boxes with a high false detection possibility are removed from person boxes obtained from rotated images of different rotation angles according to the position in the image of the person box. According to the third embodiment, even when a person with the same orientation looks greatly different depending on the position in the image as in an image captured using a fisheye camera, a person box with a high possibility of a false detection can be removed.
- Embodiment(s) of the present invention can also be realized by a computer of a system or apparatus that reads out and executes computer executable instructions (e.g., one or more programs) recorded on a storage medium (which may also be referred to more fully as a 'non-transitory computer-readable storage medium') to perform the functions of one or more of the above-described embodiment(s) and/or that includes one or more circuits (e.g., application specific integrated circuit (ASIC)) for performing the functions of one or more of the above-described embodiment(s), and by a method performed by the computer of the system or apparatus by, for example, reading out and executing the computer executable instructions from the storage medium to perform the functions of one or more of the above-described embodiment(s) and/or controlling the one or more circuits to perform the functions of one or more of the above-described embodiment(s).
- computer executable instructions e.g., one or more programs
- a storage medium which may also be referred to more fully as
- the computer may comprise one or more processors (e.g., central processing unit (CPU), micro processing unit (MPU)) and may include a network of separate computers or separate processors to read out and execute the computer executable instructions.
- the computer executable instructions may be provided to the computer, for example, from a network or the storage medium.
- the storage medium may include, for example, one or more of a hard disk, a random-access memory (RAM), a read only memory (ROM), a storage of distributed computing systems, an optical disk (such as a compact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (BD) TM ), a flash memory device, a memory card, and the like.
- An image processing apparatus for detecting a person region representing a person in an image comprises one or more memories storing instructions; and one or more processors executing the instructions to obtain an image, generate a plurality of rotated images by rotating an obtained image by a plurality of preset angles, execute person detection processing on each one of the plurality of rotated images and obtain detection information including information indicating a candidate region of a detected person and information indicating a likelihood as a person in the candidate region, and using detection information obtained via detection of the detected person, determine a candidate region to be removed from a person region in accordance with each likelihood and remove the candidate region.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Human Computer Interaction (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Medical Informatics (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Geometry (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
Description
- The present invention relates to an image processing apparatus, a control method therefor, and a program.
- Person detection techniques for detecting in images are techniques that detect a person box (typically, a bounding box) that encloses a person region of an object in an image. This technique is used in human behavior recognition and people counting. Many person detection techniques using machine learning have been proposed in recent years. Among these, a method using a person detection model using a deep neural network (hereinafter, referred to as "DNN") has shown high recognition accuracy (Wang, Chien-Yao, Alexey Bochkovskiy, and Hong-Yuan Mark Liao. "YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors." arXiv preprint arXiv:2207.02696 (2022), hereinafter, referred to as Document "Wang").
- A person detection model is obtained by learning from training data including pairs of an image showing a person (hereinafter, referred to as a person image) and a correct answer label corresponding to a person box of a person.
- The person posture that is detectable by the person detection model is limited to person postures sufficiently included in the training data. For example, typically, people being imaged in an upright posture is relatively common, but people being imaged in a horizontal posture is relatively uncommon and is thus not sufficiently included in training data. Accordingly, person detection for people in an upright posture is easy, but person detection for people in a person posture that is not sufficiently included in the training data, such as a horizontal posture, is difficult. To solve this, one plausible method includes generating training data of people in a horizontal posture. However, this requires person boxes of people in images to be manually generated as correct answer labels for a large number of images. The cost in terms of manpower for this task is high, and building sufficient training data is not easy.
- A plausible method for enabling person detection of person postures that are difficult for person detection such as a horizontal posture includes a method in which images are rotated, images of people in an upright posture that is easy for person detection are artificially generated, and person detection is performed on these images.
is an example of a technique for deducing the position of a person by rotating an image. In the technique proposed inJapanese Patent No. 7066122 , a plurality of rotated images obtained by rotating a person image are generated, posture deduction is performed on the plurality of rotated images to deduce the position of the joints of a person in the images as the posture, and the positions of the joints with the highest reliability are output.Japanese Patent No. 7066122 - However, when the posture deduction technique of Document "Wang" is applied to person detection, a plurality of rotated images of the person images are generated, person detection is performed on the plurality of rotated images, and the person boxes with the highest reliability are output. In this case, false detection may occur in each rotated image. Thus, compared to not using a plurality of rotated images, the percentage of false detections is increased.
- The present invention has been made in consideration of the aforementioned problems and realizes a technique for suppressing an increase in false detections and increasing the detection accuracy of person detection for person postures that are difficult for person detection.
- The present invention in its first aspect provides an image processing apparatus as specified in
claims 1 to 5. - The present invention in its second aspect provides a method as specified in claim 6.
- The present invention in its second aspect provides a program as specified in claim 7.
- Further features of the present invention will become apparent from the following description of exemplary embodiments (with reference to the attached drawings).
-
-
FIG. 1 is a block diagram illustrating an example of the hardware configuration of an image processing apparatus according to a first embodiment. -
FIG. 2 is a block diagram illustrating an example of the functional configuration of the image processing apparatus according to the first embodiment. -
FIG. 3 is a flowchart illustrating the operations of the image processing apparatus according to the first embodiment. -
FIG. 4 is a schematic view illustrating an image according to the first embodiment. -
FIG. 5A is a schematic view illustrating a rotated image according to the first embodiment. -
FIG. 5B is a schematic view illustrating a rotated image rotated 90 degrees according to the first embodiment. -
FIG. 5C is a schematic view illustrating a rotated image rotated 180 degrees according to the first embodiment. -
FIG. 5D is a schematic view illustrating a rotated image rotated 270 degrees according to the first embodiment. -
FIG. 6A is a schematic view illustrating a person detection result according to the first embodiment. -
FIG. 6B is a schematic view illustrating a person detection result for a rotated image rotated 90 degrees according to the first embodiment. -
FIG. 6C is a schematic view illustrating a person detection result for a rotated image rotated 180 degrees according to the first embodiment. -
FIG. 6D is a schematic view illustrating a person detection result for a rotated image rotated 270 degrees according to the first embodiment. -
FIG. 7A is a schematic view illustrating a pre-rotation person box according to the first embodiment. -
FIG. 7B is a schematic view illustrating a pre-rotation person box of a rotated image rotated 90 degrees according to the first embodiment. -
FIG. 7C is a schematic view illustrating a pre-rotation person box of a rotated image rotated 180 degrees according to the first embodiment. -
FIG. 7D is a schematic view illustrating a pre-rotation person box of a rotated image rotated 270 degrees according to the first embodiment. -
FIG. 8A is a schematic view illustrating grouping of a person detection result according to the first embodiment. -
FIG. 8B is a schematic view illustrating grouping of a person detection result according to the first embodiment. -
FIG. 9 is a block diagram illustrating an example of the functional configuration of the image processing apparatus according to a second embodiment. -
FIG. 10 is a flowchart illustrating the operations of the image processing apparatus according to the second embodiment. -
FIG. 11A is a schematic view illustrating a person detection result according to the second embodiment. -
FIG. 11B is a schematic view illustrating a person detection result for a rotated image rotated 90 degrees according to the second embodiment. -
FIG. 11C is a schematic view illustrating a person detection result for a rotated image rotated 180 degrees according to the second embodiment. -
FIG. 11D is a schematic view illustrating a person detection result for a rotated image rotated 270 degrees according to the second embodiment. -
FIG. 12A is a schematic view illustrating a pre-rotation person box according to the second embodiment. -
FIG. 12B is a schematic view illustrating a pre-rotation person box of a rotated image rotated 90 degrees according to the second embodiment. -
FIG. 12C is a schematic view illustrating a pre-rotation person box of a rotated image rotated 180 degrees according to the second embodiment. -
FIG. 12D is a schematic view illustrating a pre-rotation person box of a rotated image rotated 270 degrees according to the second embodiment. -
FIG. 13A is a schematic view illustrating person likelihood distribution according to the second embodiment. -
FIG. 13B is a schematic view illustrating person likelihood distribution according to the second embodiment. -
FIG. 13C is a schematic view illustrating person likelihood distribution according to the second embodiment. -
FIG. 14 is a block diagram illustrating an example of the functional configuration of the image processing apparatus according to a third embodiment. -
FIG. 15 is a flowchart illustrating the operations of the image processing apparatus according to the third embodiment. -
FIG. 16 is a schematic view illustrating an image according to the third embodiment. -
FIG. 17A is a schematic view illustrating a rotated image according to the third embodiment. -
FIG. 17B is a schematic view illustrating a rotated image rotated 90 degrees according to the third embodiment. -
FIG. 17C is a schematic view illustrating a rotated image rotated 180 degrees according to the third embodiment. -
FIG. 17D is a schematic view illustrating a rotated image rotated 270 degrees according to the third embodiment. -
FIG. 18A is a schematic view illustrating a person detection result according to the third embodiment. -
FIG. 18B is a schematic view illustrating a person detection result for a rotated image rotated 90 degrees according to the third embodiment. -
FIG. 18C is a schematic view illustrating a person detection result for a rotated image rotated 180 degrees according to the third embodiment. -
FIG. 18D is a schematic view illustrating a person detection result for a rotated image rotated 270 degrees according to the third embodiment. -
FIG. 19A is a schematic view illustrating a pre-rotation person box according to the third embodiment. -
FIG. 19B is a schematic view illustrating a pre-rotation person box of a rotated image rotated 90 degrees according to the third embodiment. -
FIG. 19C is a schematic view illustrating a pre-rotation person box of a rotated image rotated 180 degrees according to the third embodiment. -
FIG. 19D is a schematic view illustrating a pre-rotation person box of a rotated image rotated 270 degrees according to the third embodiment. -
FIG. 20 is a schematic view illustrating an allocation map according to the third embodiment. -
FIG. 21 is a schematic view illustrating a rotation angle for removal table according to the third embodiment. -
FIG. 22A is a schematic view illustrating grouping of a person detection result according to the third embodiment. -
FIG. 22B is a schematic view illustrating grouping of a person detection result according to the third embodiment. - Hereinafter, embodiments will be described in detail with reference to the attached drawings. Note, the following embodiments are not intended to limit the scope of the claimed invention. Multiple features are described in the embodiments, but limitation is not made to an invention that requires all such features, and multiple such features may be combined as appropriate. Furthermore, in the attached drawings, the same reference numerals are given to the same or similar configurations, and redundant description thereof is omitted.
- In the processing of the present embodiment described herein, person detection is performed on a plurality of rotated images obtained by rotation of a plurality of rotation angles and person boxes with a high false detection possibility are removed from person boxes obtained from rotated images of a predetermined rotation angle.
-
FIG. 1 is a block diagram illustrating an example of the hardware configuration of animage processing apparatus 100 according to the first embodiment. - The
image processing apparatus 100 includes aCPU 101,ROM 102,RAM 103, asecondary storage apparatus 104, animage capture apparatus 105, aninput apparatus 106, adisplay apparatus 107, a network I/F 108, and abus 109 that connects these so that they are able to communicate. - The
CPU 101 executes commands in accordance with programs stored in theROM 102 andRAM 103. TheROM 102 is non-volatile memory (for example, EEPROM) and stores a program for the present embodiment and programs and data required for other control. TheRAM 103 is volatile memory and stores transient data such as image data and person detection results. - The
secondary storage apparatus 104 is a rewritable secondary storage apparatus such as a hard disk drive or flash memory and stores image information, programs, various types of settings content, and the like. This information is transferred to theRAM 103, and theCPU 101 executes programs and uses data. - The
image capture apparatus 105 is constituted by an image capturing lens, an imaging sensor such as CCD or CMOS, a video signal processing unit, and the like and captures video (30 frames per second). - The
input apparatus 106 is a keyboard and mouse, for example, and transfers instruction inputs from a user to theCPU 101. - The
display apparatus 107 is a Braun tube CRT or liquid crystal display and displays to the user processing results and the like. For example, thedisplay apparatus 107 displays a list of four images illustrated inFIGS. 7A to 7D described below in detail and displays frames indicating a person has been detected, likelihood, and rotation angle superimposed. - The network I/
F 108 is a modem or LAN interface for connecting to a network such as the Internet or an intranet. Note that the type of communication may be wired or wireless. - The
CPU 101 loads software containing processing corresponding to each step of the flowchart described below from thesecondary storage apparatus 104 onto theRAM 103 and executes the software. -
FIG. 2 is a functional configuration diagram of software for image processing according to this embodiment being executed by theCPU 101. In this state, theimage processing apparatus 100 includes animage obtaining unit 201, arotation unit 202, aperson detection unit 203, areverse rotation unit 204, aremoval unit 205, and anintegration unit 206. Note that a part of the illustrated configuration may be implemented by a dedicated circuit or the like instead of theCPU 101. -
FIG. 3 is a flowchart illustrating the flow of the processing of theimage processing apparatus 100 according to the present embodiment.FIG. 4 is a schematic view illustrating an image according to the present embodiment.FIGS. 5A to 5D are schematic views illustrating a rotated image according to the present embodiment.FIGS. 6A to 6D are schematic views illustrating a person detection result according to the present embodiment.FIGS. 7A to 7D are schematic views illustrating a pre-rotation person box according to the present embodiment.FIGS. 8A and 8B are schematic views illustrating grouping of person detection results according to the present embodiment. - The process of detecting a person box of a person in an image according to this embodiment will be described below with reference to
FIGS. 1 to 8 . - First, the overall processing operation will be described with reference to the flowchart of
FIG. 3 . - In step S101, the
image obtaining unit 201 obtains an image obtained via image capture by theimage capture apparatus 105.FIG. 4 is an example of animage 400 captured in this manner. In theimage 400, two people, aperson 401 and aperson 402, are shown, and anon-person 403 is also shown. Any number of people may be included in an image including zero people or three or more people. The example ofFIG. 4 should be understood to be merely an example in which there are two people. - In step S102, the
rotation unit 202 rotates theimage 400 obtained by theimage obtaining unit 201 to generate rotatedimages 501 to 504 illustrated inFIGS. 5A to 5D . The rotatedimage 501 is an image obtained by rotating theimage 400 0 degrees, the rotatedimage 502 is an image obtained by rotating theimage 400 90 degrees, the rotatedimage 503 is an image obtained by rotating theimage 400 180 degrees, and the rotatedimage 504 is an image obtained by rotating theimage 400 270 degrees. Note that hereinafter, the anticlockwise direction in the rotation direction is defined as the positive direction. Also, the rotation angle is expressed within a range from 0 degrees to 360 degrees. For example, a rotation angle of 270 degrees + 180 degrees is equivalent to a rotation angle of 90 degrees. Also, any number of rotated images and any rotation angle may be used, and the present embodiment is not limited to those used in the example. Also, therotation unit 202 providesinformation 505 to 508 indicating the rotation angle to the rotatedimages 501 to 504. - In step S103, the
person detection unit 203 executes person detection processing in accordance with a person detection method using the DNN described in Document "Wang" on the rotatedimages 501 to 504 obtained by therotation unit 202 to generate person detection results 601 to 607 (detection information indicating a person candidate region) illustrated inFIGS. 6A to 6D . This is merely an example, and any method able to perform person detection can be used, and the present embodiment is not limited to these examples. The person detection results 601 to 607 include a bounding box (hereinafter, referred to as a person box) for each person, a person likelihood, and the rotation angle of the rotated image which is the detection target. The person likelihood is a real number value from 0 to 1 and a value that indicates a higher possibility of a person existing in the person box when the value is closer to 1. Note that in the embodiment, a person candidate is determined when the person likelihood is equal to or greater than a preset threshold (for example, 0.2). The threshold is changed and set by the user operating theinput apparatus 106. - To increase the speed of the person detection processing, before performing person detection using a DNN, the rotated image may be converted in a predetermined size (for example, the size of the image 400) via scaling up/down and padding. Conversion to a predetermined size can reduce the amount of processing for changing the shape of the entire DNN model which is required each time the input shape of the DNN model changes. Also, person detection may be performed after converting the images to a mini-batch with a size of B × H × W × C by connecting a plurality of rotated images converted to a predetermined size along a new axis. Here, B is the number of rotated images simultaneously subjected to person detection, H is a predetermined size (height), W is a predetermined size (width), and C is a predetermined size (channel number). Also, person detection may be performed after mapping the plurality of rotated images simultaneously subjected to person detection onto a single mapping image. Here, a mapping image has a size that allows the plurality of rotated images to be mapped without overlap. This is because the greater the number of elements in the images input into the DNN, the more effective the parallel processing performance of the processor can be.
- Note that as illustrated in
FIG. 6A , theperson 401 has been detected as a person candidate, but theperson 402 has not been detected as a person candidate. InFIG. 6B , both of the 401 and 402 have been detected as person candidates. Also, as illustrated inpersons FIG. 6C , theperson 402 and thenon-person 403 have been detected as a person candidate, and theperson 401 has not been detected as a person candidate. As illustrated inFIG. 6D , theperson 401 and thenon-person 403 have been detected as a person candidate, but theperson 402 has not been detected as a person candidate. - In step S104, the
reverse rotation unit 204 converts (coordinates representing) the person box of the person detection results 601 to 607 obtained by theperson detection unit 203 into coordinates in theimage 400 on the basis of each rotation angle to generatepre-rotation person boxes 701 to 707 illustrated inFIG. 7 . - In step S105, from among the
pre-rotation person boxes 702 to 707 with a rotation angle other than 0 degrees, theremoval unit 205 removes the 703, 705, 706, and 707 that are outside of the highest ranking k = 2 for person likelihood. The example here is merely an example, and k can be any natural number of 1 or greater such as 1 or 3 and may be set by the user. Also, k may be set on the basis of a number n of person detection results as in the following Formula (1).pre-rotation person boxes - Here, Ceiling (x) is a ceiling function that returns the smallest integer that is not less than a real number x. Also, r is a parameter for adjusting what percentage of the person detection results to remove with respect to the number of person detection results and may be any value such as 0.1 or 0.2 and may be selected by the user from a preset range.
- Instead of removing the pre-rotation person boxes outside of the highest ranking k, pre-rotation person box outside of the highest ranking k may be removed for each rotation angle from the entire
pre-rotation person boxes 702 to 707 with a rotation angle other than 0 degrees. Instead of those outside of the highest ranking k, pre-rotation person boxes with a value less than a predetermined threshold may be removed. In this example, a rotation angle other than 0 degrees is used, but a pre-rotation person box with a different rotation angle may be removed. Also, person detection may be applied to evaluation data, positive detection numbers for each rotation angle may be calculated, and from the positive detection numbers, which rotation angle pre-rotation person boxes to remove may be decided. Any method can be used that can remove pre-rotation person boxes with a high false detection possibility from among the pre-rotation person boxes obtained from rotated images with a rotation angle with a few number of person boxes that can be detected. However, the present embodiment is not limited to these methods. - In
step S 106, theintegration unit 206 calculates the intersection over union (IoU) representing an evaluation index between pre-rotation person boxes after the removal processing ofstep S 105. IoU is a value indicating the degree of match between boxes. As illustrated inFIGS. 8A and 8B , the person detection results corresponding to the pre-rotation person boxes with an IoU equal to or greater than a predetermined threshold are grouped in groups of person detection results for the same person. This example is merely an example, and the person detection results corresponding to pre-rotation person boxes with a distance between center coordinates equal to or less than a predetermined threshold may be grouped as person detection results for the same person. Any method can be used that can group person detection results for the same person. The present embodiment is not limited these methods. Lastly, the result with the highest person likelihood is selected from the grouped person detection results. This example is merely an example, and the result with the largest person box size may be selected, or, in the case of images with plurality frames, the result with smallest amount of positional movement in the person box between frames may be selected. Any method able to generate a highly accurate person detection result can be used, and the present embodiment is not limited to these examples. - As described above, in the first embodiment, person detection is performed on rotated images of a plurality of rotation angles and the person box with the lowest degree of certainty is removed from among the person boxes obtained from the rotated image of a predetermined rotation angle. According to the first embodiment, by removing the person box with a lowest degree of certainty from among the person boxes obtained from rotated images of a rotation angle with a few number of person boxes that can be detected, an increase in false detection can be suppressed and the detection accuracy of person detection for person postures that are difficult for person detection can be increased.
- In the processing of the second embodiment described herein, person detection is performed on rotated images of a plurality of rotation angles and person boxes with a high false detection possibility are removed using person likelihood distribution.
- The hardware configuration diagram of the image processing apparatus is the same as in
FIG. 1 of the first embodiment and thus will not be described.FIG. 9 is a block diagram illustrating the basic functional configuration of an image processing apparatus according to the present second embodiment.FIG. 9 is also a functional configuration diagram of software for image processing according to the second embodiment being executed by theCPU 101. In this state, theimage processing apparatus 100 includes theimage obtaining unit 201, therotation unit 202, theperson detection unit 203, thereverse rotation unit 204, adistribution calculation unit 901, theremoval unit 205, and theintegration unit 206. Note that a part of the illustrated configuration may be implemented by a circuit or the like other than theCPU 101. -
FIG. 10 is a flowchart illustrating the flow of processing according to the present second embodiment.FIGS. 11A to 11D are schematic views illustrating a person detection result according to the present second embodiment.FIGS. 12A to 12D are schematic views illustrating a pre-rotation person box according to the present second embodiment.FIGS. 13A to 13D are schematic views of person likelihood distribution according to the present second embodiment. Also, in the present second embodiment,FIGS. 4 and5A to 5D will be referenced. - The process of detecting a person box of a person in an image according to the second embodiment will be described below with reference to
FIGS. 4 ,5A to 5D, 9, 10, and 11A to 11D to 13Ato 13C. - First, in step S201, the
image obtaining unit 201 obtains a captured image (reference sign 400 inFIG. 4 ). The detailed processing is the same as that in the first embodiment, and thus the description thereof will be omitted. - In step S202, the
rotation unit 202 executes processing to rotate theimage 400 obtained by theimage obtaining unit 201 to generate the rotatedimages 501 to 504 illustrated inFIGS. 5A to 5D . The detailed processing is the same as that in the first embodiment, and thus the description thereof will be omitted. - In step S203, the
person detection unit 203 executes person detection processing in accordance with a person detection method using the DNN described in Document "Wang" on the rotatedimages 501 to 504 obtained by therotation unit 202 to generateperson detection results 1101 to 1112 illustrated inFIGS. 11A to 11D . The detailed processing is the same as that in the first embodiment, and thus the description thereof will be omitted. - In step S204, the
reverse rotation unit 204 converts the person box of theperson detection results 1101 to 1112 obtained by theperson detection unit 203 into coordinates in theimage 400 on the basis of each rotation angle to generatepre-rotation person boxes 1201 to 1212 illustrated inFIGS. 12A to 12D . - In step S205, the
distribution calculation unit 901 calculates the IoU representing an evaluation index between pre-rotation person boxes, and the person detection results corresponding to the pre-rotation person boxes with an IoU equal to or greater than a predetermined threshold are grouped in groups of person detection results for the same person. This example is merely an example, and the person detection results corresponding to pre-rotation person boxes with a distance between center coordinates equal to or less than a predetermined threshold may be grouped as person detection results for the same person. Any method can be used that can group person detection results for the same person. The present embodiment is not limited these methods. Lastly, thedistribution calculation unit 901 calculates the person likelihood distribution for each rotation angle from the grouped person detection results. As illustrated inFIGS. 13A to 13C ,person likelihood distributions 1301 to 1303 indicating target person candidates are generated by categorizing per region of the same position in the original image. - In step S206, the
removal unit 205 removes person detection results corresponding to a condition that the absolute value of a difference between the maximum person likelihood and the person likelihood of the region obtained from a rotated image of a rotation angle which is the rotation angle of the maximum person likelihood plus 180 degrees is less than a predetermined threshold for each of theperson likelihood distributions 1301 to 1303 illustrated inFIGS. 13Ato 13C . - Here, the threshold is 0.3, for example. In this case, since only the
person likelihood distribution 1303 has an absolute value of a difference between the maximum person likelihood and the person likelihood obtained from a rotated image of a rotation angle which is the rotation angle of the maximum person likelihood plus 180 degrees of 0.1, which is less than the threshold, the corresponding 1102, 1105, 1108, 1111 are removed. This allows false detection objects to be removed by utilizing the tendency of person likelihood changing greatly depending on the rotation angle in the case of a person with both a head portion and a leg portion due to looking different in the up-and-down direction, namely having high direction dependence and the tendency of person likelihood changing little depending on the rotation angle in the case of a false detection object with low direction dependence. This example is merely an example, and the threshold can be any value such as 0.5 or 0.2 that is appropriate for the value range of person likelihood. Also, instead of using the absolute value of a difference between the maximum person likelihood and the person likelihood at a rotation angle which is the rotation angle of the maximum person likelihood plus 180 degrees, when the person likelihood dispersionis less than a predetermined threshold, the corresponding person detection result may be removed, or when the person likelihood at a plurality of rotation angles does not satisfy a predetermined threshold, the corresponding person detection result may be removed. Any method using person likelihood distribution can be used that can remove pre-rotation person boxes with a high false detection possibility. However, the present embodiment is not limited to these methods.person detection results - In step S207, the
integration unit 206 calculates the evaluation index IoU between pre-rotation person boxes. The person detection results corresponding to the pre-rotation person boxes with an IoU equal to or greater than a predetermined threshold are grouped in groups of person detection results for the same person. The detailed processing for grouping is the same as that in the first embodiment, and thus the description thereof will be omitted. Lastly, the result with the highest person likelihood is selected from the grouped person detection results. The detailed processing for selecting the person detection result is the same as that in the first embodiment, and thus the description thereof will be omitted. - In the second embodiment described above, person detection is performed on rotated images of a plurality of rotation angles and person boxes with a high false detection possibility are removed using person likelihood distribution. According to the second embodiment, even when the person likelihood of a person box with a high possibility of false detection is higher than the person likelihood of a person box for a person, it can be removed.
- In the processing of the third embodiment described herein, for a captured image obtained by a fisheye camera, person detection is performed on rotated images of a plurality of rotation angles and person boxes with a high false detection possibility are removed from person boxes obtained from rotated images of different rotation angles according to the position in the image of the person box.
- The hardware configuration diagram of the image processing apparatus is the same as in
FIG. 1 of the first embodiment and thus will not be described.FIG. 14 is a block diagram illustrating the basic functional configuration of an image processing apparatus according to the present third embodiment.FIG. 14 is also a functional configuration diagram of software for image processing according to the third embodiment being executed by theCPU 101. In this state, theimage processing apparatus 100 includes theimage obtaining unit 201, therotation unit 202, theperson detection unit 203, thereverse rotation unit 204, anallocation unit 1401, theremoval unit 205, and theintegration unit 206. Note that a part of the illustrated configuration may be implemented by a circuit or the like other than theCPU 101. -
FIG. 15 is a flowchart illustrating the flow of processing according to the present embodiment.FIG. 16 is a diagram illustrating an example of a captured image according to the present embodiment.FIGS. 17A to 17D are schematic views illustrating a rotated image according to the present third embodiment.FIGS. 18A to 18D are schematic views illustrating a person detection result according to the present embodiment.FIGS. 19A to 19D are schematic views illustrating a pre-rotation person box according to the present embodiment.FIG. 20 is a schematic view illustrating an allocation map for when the area of the field of view of theimage capture apparatus 105 according to the present embodiment is divided into a plurality (four in the illustrated example) of field of view regions.FIG. 21 is a schematic view illustrating a table in which each field of view region and the rotation angle for removal are associated with one another. The table is stored in thesecondary storage apparatus 104, for example.FIGS. 22A and 22B are schematic views illustrating grouping of person detection results according to the present embodiment. - The process of detecting a person box of a person in an image according to the third embodiment will be described below with reference to
FIGS. 14 to 22 . - First, in step S301, the
image obtaining unit 201 obtains a captured image by theimage capture apparatus 105 using a fisheye lens.FIG. 16 illustrates an example of animage 1600 captured in this manner. The illustratedimage 1600 shows two people, aperson 1601 and aperson 1602. Note that the number of people in the image may be any number such as zero or three or more people, and the number of people is not particularly limited. - In step S302, the
rotation unit 202 executes processing to rotate theimage 1600 obtained by theimage obtaining unit 201 to generate rotatedimages 1701 to 1704 illustrated inFIGS. 17A to 17D . - In step S303, the
person detection unit 203 performs person detection in accordance with a person detection method using the DNN described in Document "Wang" on the rotatedimages 1701 to 1704 obtained by therotation unit 202 to generateperson detection results 1801 to 1806 illustrated inFIGS. 18A to 18D . The detailed processing is the same as that in the first embodiment, and thus the description thereof will be omitted. - In step S304, the
reverse rotation unit 204 converts (reverse-rotates) the person box of theperson detection results 1801 to 1806 obtained by theperson detection unit 203 into coordinates in theimage 1600 on the basis of each rotation angle to generate 1901, 1905, and 1906 illustrated inpre-rotation person boxes FIGS. 19A to 19D . - In step S305, the
allocation unit 1401 allocates thepre-rotation person boxes 1901 to 1906 obtained via reverse rotation processing by thereverse rotation unit 204 with a label from 1 to 4 depending on which label region of an allocation map 2000 (FIG. 20 ) the center coordinates of the person boxes correspond to. In this embodiment, the 1901 and 1903 are allocated thepre-rotation person boxes label 1 and the 1902 and 1904 to 1906 are allocated thepre-rotation person boxes label 3. Any number/position may be used for the number of labels and the position of the label regions, and the present embodiment is not limited by these. - In step S306, the
removal unit 205 references a target removal rotation angle table 2100 (stored in a non-volatile memory) illustrated inFIG. 21 and removes thepre-rotation person boxes 1902 to 1904 which, from among thepre-rotation person boxes 1901 to 1906, have a rotation angle that corresponds to a rotation angle for removal corresponding to a label and has a person likelihood of less than a predetermined threshold (0.5). This example is merely an example, and the threshold can be any value such as 0.6 or 0.3 that is appropriate for the value range of person likelihood. Instead of removing a pre-rotation person box with a value less than a predetermined threshold, from among the pre-rotation person boxes with a rotation angle for removal, a pre-rotation person box outside of the highest ranking k may be removed. The rotation angle for removal may be any rotation angle, person detection may be applied to evaluation data, positive detection numbers for each rotation angle may be calculated, and a rotation angle for removal may be determined from the positive detection numbers. Any method can be used that can remove pre-rotation person boxes with a high false detection possibility from among the pre-rotation person boxes obtained from rotated images with a rotation angle with a few number of person boxes that can be detected. However, the present embodiment is not limited to these methods. - In step S307, the
integration unit 206 calculates the evaluation index IoU between pre-rotation person boxes. As illustrated inFIGS. 22A and 22B , the person detection results corresponding to the pre-rotation person boxes with an evaluation index IoU equal to or greater than a predetermined threshold are grouped in groups of person detection results for the same person by theintegration unit 206. The detailed processing for grouping is the same as that in the first embodiment, and thus the description thereof will be omitted. Lastly, the result with the highest person likelihood is selected from the grouped person detection results. The detailed processing for selecting the person detection result is the same as that in the first embodiment, and thus the description thereof will be omitted. - As described above, according to the third embodiment, for a captured image obtained by a fisheye camera, person detection is performed on rotated images of a plurality of rotation angles and person boxes with a high false detection possibility are removed from person boxes obtained from rotated images of different rotation angles according to the position in the image of the person box. According to the third embodiment, even when a person with the same orientation looks greatly different depending on the position in the image as in an image captured using a fisheye camera, a person box with a high possibility of a false detection can be removed.
- Embodiment(s) of the present invention can also be realized by a computer of a system or apparatus that reads out and executes computer executable instructions (e.g., one or more programs) recorded on a storage medium (which may also be referred to more fully as a 'non-transitory computer-readable storage medium') to perform the functions of one or more of the above-described embodiment(s) and/or that includes one or more circuits (e.g., application specific integrated circuit (ASIC)) for performing the functions of one or more of the above-described embodiment(s), and by a method performed by the computer of the system or apparatus by, for example, reading out and executing the computer executable instructions from the storage medium to perform the functions of one or more of the above-described embodiment(s) and/or controlling the one or more circuits to perform the functions of one or more of the above-described embodiment(s). The computer may comprise one or more processors (e.g., central processing unit (CPU), micro processing unit (MPU)) and may include a network of separate computers or separate processors to read out and execute the computer executable instructions. The computer executable instructions may be provided to the computer, for example, from a network or the storage medium. The storage medium may include, for example, one or more of a hard disk, a random-access memory (RAM), a read only memory (ROM), a storage of distributed computing systems, an optical disk (such as a compact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (BD)™), a flash memory device, a memory card, and the like.
- While the present invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions.
- An image processing apparatus for detecting a person region representing a person in an image comprises one or more memories storing instructions; and one or more processors executing the instructions to obtain an image, generate a plurality of rotated images by rotating an obtained image by a plurality of preset angles, execute person detection processing on each one of the plurality of rotated images and obtain detection information including information indicating a candidate region of a detected person and information indicating a likelihood as a person in the candidate region, and using detection information obtained via detection of the detected person, determine a candidate region to be removed from a person region in accordance with each likelihood and remove the candidate region.
Claims (7)
- An image processing apparatus for detecting a person region representing a person in an image, characterized by comprising:obtaining means for obtaining an image;generating means for generating a plurality of rotated images by rotating an obtained image by a plurality of preset angles;executing means for executing person detection processing on each one of the plurality of rotated images and obtain detection information including information indicating a candidate region of a detected person and information indicating a likelihood as a person in the candidate region; andremoving means, using detection information obtained via detection of the detected person, for determining a candidate region to be removed from a person region in accordance with each likelihood and for removing the candidate region.
- The image processing apparatus according to claim 1, characterized in that wherein the removing means, from among each detection information detected with the detection of the detected person, sets detection information not satisfying a preset highest ranking k (k being a natural number) as removal.
- The image processing apparatus according to claims 1 or 2, characterized in that wherein the removing means further comprisescategorizing means for categorizing into corresponding candidate regions for each rotated image detected with the detection of the detected person;calculating means for calculating a difference between a maximum likelihood of a target candidate region categorized in the categorize and a likelihood of the target candidate region obtained from a rotated image with a rotation angle 180 degrees from that of a rotated image with the maximum likelihood;comparing means for comparing the calculated difference and a preset threshold; andwhen a result of the compare indicate that the difference does not satisfy the threshold, remove the target candidate region from being a candidate for a person region.
- The image processing apparatus according to any one of claims 1 to 3, characterized in that further comprising an imaging unit that captures an image targeted for the obtain using a fisheye lens.
- The image processing apparatus according to claim 4, characterized in that further comprises storing means for storing a table in which a plurality of divided field of view regions with a preset field of view area in the capture are associated with a rotation angle for removal, and
the removing means
determines which pre-rotation field of view region a target candidate region detected with the detection of the detected person is located in and removes the target candidate region from being a candidate for a person region on a condition that a rotation angle for removal obtained by referencing the table and a rotation angle of a rotated image where the target candidate region exists match and a likelihood in the target candidate region is less than a preset threshold. - A control method for an image processing apparatus for detecting a person region representing a person in an image, characterized by comprising:obtaining an image;generating a plurality of rotated images by rotating an obtained image by a plurality of preset angles;executing person detection processing on each one of the plurality of rotated images and obtaining detection information including information indicating a candidate region of a detected person and information indicating a likelihood as a person in the candidate region; andusing detection information obtained via detection of the detected person, determining a candidate region to be removed from a person region in accordance with each likelihood and removing the candidate region.
- A program for causing a computer to execute the steps of the method according to claim 6 by being loaded and executed by the computer.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2023072672A JP2024157967A (en) | 2023-04-26 | 2023-04-26 | Image processing device, control method thereof, and program |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| EP4456006A1 true EP4456006A1 (en) | 2024-10-30 |
Family
ID=90735277
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP24170417.0A Pending EP4456006A1 (en) | 2023-04-26 | 2024-04-16 | Image processing apparatus, control method therefor, and program |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US20240362947A1 (en) |
| EP (1) | EP4456006A1 (en) |
| JP (1) | JP2024157967A (en) |
| CN (1) | CN118865432A (en) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP2816502A1 (en) * | 2013-06-17 | 2014-12-24 | Betser Information Technologies Limited | Retouching of portait images based on supervised face feature detection |
| JP7066122B2 (en) | 2018-06-21 | 2022-05-13 | 日本電信電話株式会社 | Posture estimation device, posture estimation method, and program |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2004282535A (en) * | 2003-03-18 | 2004-10-07 | Mitsubishi Electric Corp | Angle of view adjustment device |
| JP4373828B2 (en) * | 2004-03-22 | 2009-11-25 | 富士フイルム株式会社 | Specific area detection method, specific area detection apparatus, and program |
| US8064655B2 (en) * | 2007-04-20 | 2011-11-22 | Panasonic Corporation | Face image detection device, face image detection method and imaging apparatus |
| JP5385182B2 (en) * | 2010-03-05 | 2014-01-08 | セコム株式会社 | Object detection device |
| US9031286B2 (en) * | 2010-12-09 | 2015-05-12 | Panasonic Corporation | Object detection device and object detection method |
| CN109313806A (en) * | 2016-06-22 | 2019-02-05 | 索尼公司 | Image processing device, image processing system, image processing method and program |
| CN108875723B (en) * | 2018-01-03 | 2023-01-06 | 北京旷视科技有限公司 | Object detection method, device and system, and storage medium |
| US11610385B2 (en) * | 2018-04-26 | 2023-03-21 | Nec Corporation | Information processing apparatus, control method, and non-transitory storage medium |
-
2023
- 2023-04-26 JP JP2023072672A patent/JP2024157967A/en active Pending
-
2024
- 2024-04-16 EP EP24170417.0A patent/EP4456006A1/en active Pending
- 2024-04-18 US US18/638,899 patent/US20240362947A1/en active Pending
- 2024-04-23 CN CN202410488262.0A patent/CN118865432A/en active Pending
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP2816502A1 (en) * | 2013-06-17 | 2014-12-24 | Betser Information Technologies Limited | Retouching of portait images based on supervised face feature detection |
| JP7066122B2 (en) | 2018-06-21 | 2022-05-13 | 日本電信電話株式会社 | Posture estimation device, posture estimation method, and program |
Non-Patent Citations (3)
| Title |
|---|
| LI SHENGYE ET AL: "Supervised People Counting Using An Overhead Fisheye Camera", 2019 16TH IEEE INTERNATIONAL CONFERENCE ON ADVANCED VIDEO AND SIGNAL BASED SURVEILLANCE (AVSS), IEEE, 18 September 2019 (2019-09-18), pages 1 - 8, XP033642125, DOI: 10.1109/AVSS.2019.8909877 * |
| TANG JINTING ET AL: "PHD: A Deep Learning Based Human Detection Framework for Panoramic Videos", 2019 11TH INTERNATIONAL CONFERENCE ON WIRELESS COMMUNICATIONS AND SIGNAL PROCESSING (WCSP), IEEE, 23 October 2019 (2019-10-23), pages 1 - 6, XP033671932, DOI: 10.1109/WCSP.2019.8928143 * |
| WANG, CHIEN-YAOALEXEY BOCHKOVSKIYHONG-YUAN MARK LIAO: "YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors", ARXIV PREPRINT ARXIV:2207.02696, 2022 |
Also Published As
| Publication number | Publication date |
|---|---|
| US20240362947A1 (en) | 2024-10-31 |
| JP2024157967A (en) | 2024-11-08 |
| CN118865432A (en) | 2024-10-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11657514B2 (en) | Image processing apparatus, image processing method, and storage medium | |
| CN112489077B (en) | Target tracking method, device and computer system | |
| CN104123529B (en) | human hand detection method and system | |
| CN110297545B (en) | Gesture control method, gesture control device and system, and storage medium | |
| US7426287B2 (en) | Face detecting system and method using symmetric axis | |
| CN105308618B (en) | Face Recognition with Parallel Detection and Tracking and/or Grouped Feature Motion Shift Tracking | |
| JP7272024B2 (en) | Object tracking device, monitoring system and object tracking method | |
| EP3093822B1 (en) | Displaying a target object imaged in a moving picture | |
| US8693739B2 (en) | Systems and methods for performing facial detection | |
| US20190370982A1 (en) | Movement learning device, skill discriminating device, and skill discriminating system | |
| EP2639743A2 (en) | Image processing device, image processing program, and image processing method | |
| JP2021108193A (en) | Image processing device, image processing method, and program | |
| JP6255944B2 (en) | Image analysis apparatus, image analysis method, and image analysis program | |
| KR101324250B1 (en) | optical axis error compensation method using image processing, the method of the same, and the zoom camera provided for the compensation function of the optical axis error | |
| EP3438875A1 (en) | Image processing apparatus and control method therefor | |
| CN111325798A (en) | Camera model correction method, device, AR implementation device and readable storage medium | |
| CN108229281B (en) | Neural network generation method, face detection device and electronic equipment | |
| JPWO2020111139A1 (en) | Coordinate calculation device, coordinate calculation method, and program | |
| WO2020137193A1 (en) | Human detection device and human detection method | |
| CN109934185B (en) | Data processing method and device, medium and computing equipment | |
| US20180114339A1 (en) | Information processing device and method, and program | |
| JP5704909B2 (en) | Attention area detection method, attention area detection apparatus, and program | |
| EP4456006A1 (en) | Image processing apparatus, control method therefor, and program | |
| CN120196216B (en) | Desktop multi-point touch interactive projection system | |
| CN117831082B (en) | Palm area detection method and device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION HAS BEEN PUBLISHED |
|
| AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC ME MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
| 17P | Request for examination filed |
Effective date: 20250430 |
|
| GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: GRANT OF PATENT IS INTENDED |
|
| INTG | Intention to grant announced |
Effective date: 20260210 |
|
| RIC1 | Information provided on ipc code assigned before grant |
Ipc: G06V 10/24 20220101AFI20260202BHEP Ipc: G06V 10/25 20220101ALI20260202BHEP Ipc: G06V 10/80 20220101ALI20260202BHEP Ipc: G06V 40/10 20220101ALI20260202BHEP Ipc: G06V 10/82 20220101ALN20260202BHEP |