EP4456006A1 - Image processing apparatus, control method therefor, and program - Google Patents

Image processing apparatus, control method therefor, and program Download PDF

Info

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
Application number
EP24170417.0A
Other languages
German (de)
French (fr)
Inventor
Takato Kimura
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Publication of EP4456006A1 publication Critical patent/EP4456006A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/103Static body considered as a whole, e.g. static pedestrian or occupant recognition
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/04Context-preserving transformations, e.g. by using an importance map
    • G06T3/047Fisheye or wide-angle transformations
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/24Aligning, centring, orientation detection or correction of the image
    • G06V10/242Aligning, centring, orientation detection or correction of the image by image rotation, e.g. by 90 degrees
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/761Proximity, similarity or dissimilarity measures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing 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/80Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
    • G06V10/809Fusion, 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/58Means for changing the camera field of view without moving the camera body, e.g. nutating or panning of optics or image sensors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/61Control of cameras or camera modules based on recognised objects
    • H04N23/611Control of cameras or camera modules based on recognised objects where the recognised objects include parts of the human body
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/07Target 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

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.

Description

    BACKGROUND OF THE INVENTION Field of the Invention
  • The present invention relates to an image processing apparatus, a control method therefor, and a program.
  • Description of the Related Art
  • 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. Japanese Patent No. 7066122 is an example of a technique for deducing the position of a person by rotating an image. In the technique proposed in Japanese 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.
  • 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.
  • SUMMARY OF THE INVENTION
  • 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).
  • BRIEF DESCRIPTION OF THE 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.
    DESCRIPTION OF THE EMBODIMENTS
  • 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.
  • First Embodiment
  • 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 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. In this state, 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.
  • 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 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.
  • In step S102, 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, and the rotated image 504 is an image obtained by rotating the image 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, the rotation unit 202 provides information 505 to 508 indicating the rotation angle to the rotated images 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 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. 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 the input 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, the person 401 has been detected as a person candidate, but the person 402 has not been detected as a person candidate. In FIG. 6B, both of the persons 401 and 402 have been detected as person candidates. Also, as illustrated in FIG. 6C, 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. As illustrated in FIG. 6D, 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.
  • In 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.
  • In step S105, from among the pre-rotation person boxes 702 to 707 with a rotation angle other than 0 degrees, the removal unit 205 removes the pre-rotation person boxes 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). k = Ceiling n × r
    Figure imgb0001
  • 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, 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. As illustrated in FIGS. 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.
  • Second Embodiment
  • 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 the CPU 101. In this state, 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.
  • 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 in FIG. 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 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.
  • 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 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.
  • In 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.
  • 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, 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.
  • 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 the person likelihood distributions 1301 to 1303 illustrated in FIGS. 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 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. 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.
  • 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.
  • Third Embodiment
  • 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 the CPU 101. In this state, 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. 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 the secondary 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 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.
  • In 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.
  • 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 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.
  • In 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.
  • In 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. In this embodiment, 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.
  • In step S306, 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). 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 in FIGS. 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 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. 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.
  • Other Embodiments
  • 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)

  1. 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; and
    removing 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.
  2. 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.
  3. The image processing apparatus according to claims 1 or 2, characterized in that wherein the removing means further comprises
    categorizing 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; and
    when 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.
  4. 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.
  5. 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.
  6. 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; and
    using 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.
  7. 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.
EP24170417.0A 2023-04-26 2024-04-16 Image processing apparatus, control method therefor, and program Pending EP4456006A1 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (2)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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