WO2023189195A1 - 画像処理装置、画像処理方法、及びプログラム - Google Patents

画像処理装置、画像処理方法、及びプログラム Download PDF

Info

Publication number
WO2023189195A1
WO2023189195A1 PCT/JP2023/007942 JP2023007942W WO2023189195A1 WO 2023189195 A1 WO2023189195 A1 WO 2023189195A1 JP 2023007942 W JP2023007942 W JP 2023007942W WO 2023189195 A1 WO2023189195 A1 WO 2023189195A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
face
region
converted
image processing
Prior art date
Application number
PCT/JP2023/007942
Other languages
English (en)
French (fr)
Inventor
孝嗣 牧田
英生 野呂
Original Assignee
キヤノン株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP2022212106A external-priority patent/JP2023152671A/ja
Application filed by キヤノン株式会社 filed Critical キヤノン株式会社
Publication of WO2023189195A1 publication Critical patent/WO2023189195A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis

Definitions

  • the present invention relates to an image processing device, an image processing method, and a program.
  • a method for detecting a person's face from an image there is a method of searching an image for a person's face area and outputting a face candidate area whose likelihood is equal to or higher than a certain value as a detection result. Since a face may not exist in the face candidate area detected by this method, it is further determined whether a face candidate area with a high likelihood is a face area. Additionally, when creating images for machine learning models to learn face detection methods, face recognition methods, etc., and images used in face recognition systems, it is necessary to eliminate low-quality images that do not show a person's face. .
  • Patent Document 1 detects facial organs such as the inner corners of both eyes and the center of the mouth from face candidate regions with high likelihood, and based on the number of detected facial organs, A method for determining whether a face candidate area is a face area is proposed.
  • the method of Patent Document 1 determines that the face candidate area with high likelihood is a face area when there is no human face in the face candidate area with high likelihood but a large number of facial organs are detected.
  • the method of Patent Document 1 determines that a face candidate area with a low likelihood is not a face area when a person's face is captured in a face candidate area with a low likelihood, but the number of facial organs detected is small.
  • the technique disclosed in Patent Document 1 has a problem in that the accuracy of determining whether or not a face candidate area is a face area is low, so that an image that does not include a face is created.
  • an object of the present invention is to improve the accuracy of extracting an image in which a person's face is captured from an image.
  • an image processing device has the following configuration. That is, the image processing device includes a detection unit that detects a face candidate area from an image using a first face detector, and a face organ detector that detects a face candidate area from an image of the first area detected as the face candidate area. an acquisition means for acquiring the position of the facial organ using the image forming apparatus; a generating means for generating a transformed image obtained by transforming the image of the first region based on the position of the facial organ; and a generating means for generating a transformed image from the transformed image. The apparatus further includes a control means for controlling whether or not to output an image of the first area based on a detection result obtained by detecting a face using a detector.
  • FIG. 1 is a diagram showing an example of the hardware configuration of an image processing system.
  • FIG. 2 is a diagram showing an example of the hardware configuration of the image processing device.
  • FIG. 3 is a diagram showing an example of the functional configuration of the image processing device.
  • FIG. 4 is a diagram showing an example of an image to be subjected to image processing.
  • FIG. 5 is a diagram showing an example of a detection result of a face candidate area.
  • FIG. 6 is a diagram showing an example of the detection results of facial organs detected from the face candidate area.
  • FIG. 7 is a flowchart illustrating the flow of processing for generating a converted image.
  • FIG. 8 is a diagram for explaining the correspondence between the positions of facial organs.
  • FIG. 9 is a diagram showing an overview of generating a converted image from an image.
  • FIG. 10 is a flowchart illustrating the flow of image processing.
  • FIG. 11 is a block diagram showing an example of the functional configuration of the image processing device.
  • FIG. 12 is a flowchart explaining the flow of image processing.
  • FIG. 13 is a flowchart illustrating the flow of image processing.
  • FIG. 14 is a flowchart explaining the flow of image processing.
  • FIG. 15 is a flowchart illustrating the flow of image processing.
  • FIG. 16 is a flowchart illustrating the flow of image processing.
  • FIG. 17 is a flowchart illustrating the flow of image processing.
  • FIG. 18 is a flowchart illustrating the flow of image processing.
  • FIG. 19 is a block diagram showing an example of the functional configuration of the image processing device. (Example 3)
  • This embodiment can be used as an image processing system that combines an imaging device and an image processing device.
  • FIG. 1 is a diagram showing an example of the hardware configuration of an image processing system according to the first embodiment.
  • the image processing system 10 includes an imaging device 100, an image processing device 110, and a network 120.
  • the imaging device 100 is a camera that images a subject, and is, for example, a digital camera or a network camera. Although the imaging device 100 is one camera, it may be two or more cameras.
  • the image processing device 110 is a device that detects the candidate face area and the position of facial organs of a person from an image, and is, for example, a desktop computer or a laptop computer, but is not limited thereto.
  • the image processing device 110 may be, for example, a smartphone, a tablet terminal, or the like.
  • the network 120 connects the imaging device 100 and the image processing device 110.
  • the network 120 is, for example, a wired LAN or a wireless LAN.
  • FIG. 2 is a block diagram showing an example of the hardware configuration of the image processing device according to the first embodiment.
  • the image processing device 110 includes an input section 201, a display section 202, an I/F 203, a CPU 204, a RAM 205, a ROM 206, a storage section 207, and a data bus 208.
  • the input unit 201 is a device through which the user inputs various data, and includes, for example, a keyboard, a mouse, a touch panel, and the like.
  • the display unit 202 is a device that displays various data, and includes, for example, a liquid crystal display (LCD).
  • LCD liquid crystal display
  • the I/F 203 transmits and receives various information between the image processing device 110 and other devices (not shown) via a network 120 such as the Internet.
  • the CPU 204 is a processor that centrally controls each section within the image processing device 110.
  • the CPU 204 reads a control program from the ROM 206, loads it into the RAM 205, and executes the program to perform various controls.
  • the CPU 204 executes the image processing program in the ROM 206 and the storage unit 207, image processing on the image data is realized.
  • the RAM 205 is a temporary storage area for programs executed by the CPU 204, work memory, and the like.
  • the ROM 206 stores a control program for controlling each part within the image processing device 110.
  • the storage unit 207 is a device that stores various data, such as image data, setting parameters, and various programs. Furthermore, the storage unit 207 can also store data from an external device (not shown) via the I/F 203.
  • the data bus 208 is a transmission path for transmitting data, and transmits image data etc. received from an external device via the I/F 203 to the CPU 204, RAM 205, and ROM 206. Further, the data bus 208 transmits image data and the like from the image processing device 110 to an external device.
  • FIG. 3 is a block diagram showing an example of the functional configuration of the image processing device according to the first embodiment.
  • the image processing device 110 includes a face area detection unit 300, a facial organ detection unit 301, a generation unit 302, a face detection unit 303, a determination unit 304, a DNN_A 305, a DNN_B 306, and a DNN_C 307.
  • DNN Deep Neural Network
  • the face area detection unit 300 acquires an image from the storage unit 207 or the like.
  • the image is at least one of an image captured by the imaging device 100 and an image stored in advance in the storage unit 207 or the like.
  • the face area detection unit 300 detects a face candidate area of a person in the image using the DNN_A 305, and generates an image including the face candidate area.
  • the face area detection unit 300 transmits an image including the face candidate area to the facial organ detection unit 301.
  • the facial organ detection unit 301 receives an image including a face candidate area from the facial area detection unit 300.
  • the facial organ detection unit 301 detects facial organs from the face candidate area of the image using the DNN_B 306. Further, the facial organ detecting unit 301 transmits information on facial organs detected from the face candidate area to the generating unit 302.
  • the facial organ information includes, for example, information such as the position (two-dimensional coordinates), size, and orientation of the facial organ.
  • the generation unit 302 receives information on facial organs detected from the face candidate area from the facial organ detection unit 301.
  • the generation unit 302 transforms the image by geometric transformation (for example, affine transformation) based on facial organ information, and generates a transformed image. Further, the generation unit 302 transmits the converted image to the face detection unit 303.
  • geometric transformation for example, affine transformation
  • the face detection unit 303 receives the converted image from the generation unit 302.
  • the face detection unit 303 detects a person's face from the converted image using the DNN_C 307. Further, the face detection unit 303 transmits the detection result to the determination unit 304.
  • the determination unit 304 receives the converted image from the generation unit 302.
  • the determination unit 304 receives the detection result of the person's face detected within the converted image from the face detection unit 303. Then, the determination unit 304 determines whether or not to output information indicating a detection area detected as a face candidate area from the original image as information indicating a face area, based on the detection result of a person's face in the converted image. judge. Further, the determination unit 304 outputs the detection area of the original image determined to be a face area to the storage unit 207 or the like based on the determination result.
  • the DNN_A 305 of the face area detection unit 300, the DNN_B 306 of the face organ detection unit 301, and the DNN_C 307 of the face detection unit 303 are different from each other, but are not limited to this.
  • the DNN of the face area detection section 300 and the DNN of the face detection section 303 may be the same.
  • the DNNs of the face area detection unit 300, facial organ detection unit 301, and face detection unit 303 may all be the same. good.
  • the DNN of the face area detection unit 300 is the “first face detector”
  • the DNN of the facial organ detection unit 301 is the “facial organ detector”
  • the DNN of the face detection unit 303 is the “second face detector.” ”.
  • DNN learning is performed using images captured under various photographing conditions for people, such as the size of the image to be processed, and the size and orientation of the person's face in the image.
  • the face area detection unit 300 and the face detection unit 303 each detect a face candidate area and a face area from the image with high accuracy using the DNN learned using images of people taken under various shooting conditions. Can be detected.
  • the facial organ detection unit 301 uses the DNN learned by the face area detection unit 300 using images of face candidate areas (corresponding to images of the first area) detected from images of people taken under various shooting conditions. Using this method, the positions of facial organs can be detected with high precision from images.
  • Examples 1 to 3 will be described in which applying different DNNs to each of the face area detection unit 300 and the face detection unit 303 is effective in improving the detection accuracy of the face candidate area and the face area. Note that although the methods in Examples 1 to 3 are independent methods, methods based on a combination of Examples 1 to 3 may be used.
  • the DNN of the face area detection unit 300 is a general-purpose DNN that can operate regardless of the size of the image.
  • the DNN of the face detection unit 303 is a DNN obtained by additionally learning a general-purpose DNN using learning data in which the image size is fixed.
  • Example 2 There are large variations in the size and orientation of the faces of people appearing in the input images of the face area detection unit 300.
  • variations in the size and orientation of the face of a person appearing in the input image of the face detection unit 303 that is, the converted image generated (converted) by the generation unit 302 may cause variations in the size and orientation of the face of the person appearing in the input image of the face area detection unit 300. This is smaller than the variation in face size and orientation.
  • the DNN of the face area detection section 300 and the DNN of the face detection section 303 may be different from each other.
  • the DNN of the face area detection unit 300 is a general-purpose DNN that can operate regardless of the size and orientation of the face.
  • the DNN of the face detection unit 303 is a DNN obtained by additionally learning the general-purpose DNN using learning data (that is, converted images) created using the conversion method by the generation unit 302.
  • additional learning for the general-purpose DNN may be performed in advance using software, a learning device, etc. that are separate from the image processing device 110.
  • learning of the general-purpose DNN may be performed using the learning unit 1905 connected to the image processing device 110 and the input image of the image processing device 110.
  • Example 3 Facial recognition systems that require high-speed operation in real time, and facial recognition systems that operate on computers with small physical hardware and low processing performance (e.g. cameras, smartphones), etc. , face detection processing with low computational complexity is required.
  • DNN_1 which has a small number of DNN layers and a low correct detection rate
  • DNN_2 which has a large number of DNN layers and a high correct detection rate
  • the input image of the face area detection unit 300 is larger than the input image of the face detection unit 303, it is preferable to apply DNN_1 to the face area detection unit 300 and DNN_2 to the face detection unit 303, respectively. Further, when the input image of the face area detection unit 300 is smaller than the input image of the face detection unit 303, it is preferable to apply DNN_2 to the face area detection unit 300 and DNN_1 to the face detection unit 303, respectively.
  • the face area detection unit 300 and the face detection unit 303 each have the least It is preferable to apply DNN_1 that can operate with computational resources.
  • DNN_1 there are many computational resources that can be allocated to the face recognition system, from the perspective of maximizing the authentication accuracy of the face recognition system, each of the face area detection unit 300 and the face detection unit 303 can operate with the most computational resources. It is better to apply DNN_2. Note that it is not limited to the example of DNN_1 and DNN_2 described above, and it is also possible to provide DNN_3 that can operate with intermediate calculation resources between DNN_1 and DNN_2. In other words, it is possible to appropriately select the DNN to be assigned to each of the face area detection unit 300 and the face detection unit 303 based on the overall computational resources of the face recognition system, DNNs that can operate with various computational resources, and the operational environment. be.
  • FIG. 4 is a diagram showing an example of an image to be subjected to image processing according to the first embodiment. Three people are shown on the image 400. The number of people on the image 400 is not limited to three, and may be two or less or four or more.
  • FIG. 5 is a diagram showing an example of a detection result of a face candidate area according to the first embodiment.
  • FIG. 5 shows an example of five face candidate areas detected from the image 400 by the face area detection unit 300.
  • Image 400 includes region 510, region 520, region 530, region 540, and region 550.
  • the area 510 is an area that includes a person's face.
  • the area 520 is an area that includes a part of the right side of the person as a part of the area of the person.
  • Area 530 is an area that includes a person's face.
  • Area 540 is an area that does not include a person's face.
  • Area 550 is an area that does not include a person's face. A portion of the region 550 is located outside the image 400. At this time, the face area detection unit 300 complements a part of the area 550 located outside the image 400 with pixels having a luminance value of 0.
  • the face area detection unit 300 may complement a part of the area 550 with a brightness value other than 0, for example, or fill in a part of the area 550 with a partial area of the original image or a brightness value obtained by inverting the partial area. It is also possible to supplement this area.
  • FIG. 6 is a diagram showing an example of a detection result of facial organs detected from a face candidate area according to the first embodiment.
  • FIG. 6 shows an example in which the facial organ detection unit 301 detects five facial organs from the area 510.
  • Region 510 includes facial organ 610, facial organ 620, facial organ 630, facial organ 640, and facial organ 650.
  • the generation unit 302 when the region 510 includes all of the facial organs 610 to 650, the generation unit 302 generates a partial image, which will be described later, by converting the region 510. On the other hand, if the region 510 includes four or less facial organs, or if the facial organs are located outside the region 510, the generation unit 302 ends the process without generating a partial image from the region 510. do.
  • FIG. 7 is a flowchart illustrating the flow of processing for generating a converted image according to the first embodiment.
  • the generation unit 302 performs geometric image transformation on the image based on facial organ information (eg, position) to generate a transformed image.
  • the processing for generating a converted image by the generation unit 302 will be described below.
  • the generation unit 302 generates a region of the converted image.
  • the area of the converted image is an area that is set based on the size and shape of the desired image. For example, the generation unit 302 generates a square area of 112x112 pixels as the area of the converted image.
  • the generation unit 302 sets reference positions 810 to 850 (FIG. 8) of facial organs corresponding to the five facial organs 610 to 650 in the area of the converted image.
  • the reference position of a facial organ is a position defined in advance as a position of a facial organ in a region of a converted image.
  • the generation unit 302 converts the image so that the positions of the five facial organs 610 to 650 are as close as possible to the reference positions 810 to 850.
  • the reference positions 810 to 850 in FIG. 8 are average positions of facial organs determined from face images taken from the front of many people.
  • the reference positions 810 to 850 will be explained.
  • the right direction of the image is defined as the positive X direction
  • the downward direction of the image is defined as the positive Y direction.
  • the positions of the center of the left eye, the center of the right eye, the tip of the nose, the left end point of the mouth, and the right end point of the mouth are represented by two-dimensional coordinates (X, Y).
  • the generation unit 302 generates the two-dimensional coordinates (40, 60), (73, 60), (55, 80), (42, 100), (81, 100) corresponding to the reference positions 810 to 850, respectively. Set.
  • the generation unit 302 calculates a transformation matrix for generating a transformed image. For example, the generation unit 302 calculates a transformation matrix M that brings the positions of the five facial organs 610 to 650 as close to the reference positions 810 to 850 as possible through image transformation processing.
  • FIG. 8 is a diagram for explaining the correspondence between the positions of facial organs according to the first embodiment.
  • FIG. 8 shows the correspondence between the positions of five facial organs 610 to 650 and reference positions 810 to 850.
  • the generation unit 302 calculates a transformation matrix M that makes the difference as small as possible by convergence calculation of the difference between the position of the facial organ and the reference position.
  • the generation unit 302 calculates the sum of the differences between the positions of the facial organs 610 to 650 and the reference positions 810 to 850 as the difference size, the calculation is not limited to this.
  • the generation unit 302 may calculate the total value of the differences in the gradient distribution by evaluating the distance between specific points as low. For example, since the tip of the nose (facial organ 630) is located at a large distance from the facial surface, the positional shift may become large with respect to a change in the orientation of the face. Therefore, the generation unit 302 may calculate by multiplying the difference in position between the point at the tip of the nose (facial organ 630) and the reference position 830 by 0.5.
  • the generation unit 302 generates a transformed image by transforming the original image 400 using the transformation matrix M calculated in S702.
  • FIG. 9 is a diagram showing an overview of generating a converted image from an image according to the first embodiment.
  • FIG. 9 shows an image 400 before the conversion process and a converted image 900 after the image 400 has been subjected to the conversion process.
  • Image 400 includes region 510.
  • the converted image 900 is an image obtained by rotating the image 400 counterclockwise, and includes a partial image 910.
  • the generation unit 302 cuts out a partial image 910 from the converted image 900, and stores the partial image 910 in the storage unit 207.
  • FIG. 10 is a flowchart illustrating the flow of image processing according to the first embodiment.
  • the user prepares an image showing a person's face.
  • a user prepares an image of a person taken with a general digital camera.
  • the image processing device 110 detects a person's face from one image will be described below. Note that when detecting a person's face from two or more images, the image processing device 110 sequentially performs the process of detecting a person's face from one image depending on the number of images. Thereby, the image processing device 110 can detect a person's face without depending on the number of images.
  • the face area detection unit 300 detects a candidate face area of a person from the image acquired from the storage unit 207 or the like.
  • the face area detection unit 300 detects a rectangular area surrounded by line segments parallel to the vertical and horizontal directions of the image as a face candidate area.
  • the face candidate area is not limited to a rectangular area, and may be, for example, an elliptical area centered on the center of the face.
  • the facial organ detection unit 301 detects the position of the facial organ from the face candidate area.
  • the facial organs are five organs including the center of the left eye, the center of the right eye, the tip of the nose, the left end point of the mouth, and the right end point of the mouth, but are not limited thereto, and may be other organs.
  • the facial organs may be, for example, four end points on the top, bottom, left and right of the eyes or the mouth.
  • the generation unit 302 determines whether five facial organs are located in the face candidate area based on the information on the facial organs in the face candidate area received from the face organ detection unit 301 . If the generation unit 302 determines that the five facial organs are located in the face candidate area (Yes in S1003), the process advances to S1004. If the generation unit 302 determines that the five facial organs are not located in the face candidate area (No in S1003), the process ends.
  • the generation unit 302 generates a transformed image by performing geometric image transformation (for example, affine transformation) on the image based on the position information of the facial organs.
  • geometric image transformation for example, affine transformation
  • the generation unit 302 presets coordinates corresponding to five facial organs in the converted image.
  • the generation unit 302 calculates a transformation matrix M that minimizes the difference between the positions (coordinates) of the five facial organs in the image before transformation and the positions (coordinates) of the five facial organs in the transformed image.
  • the generation unit 302 generates a transformed image by performing geometric image transformation on the image using the transformation matrix M.
  • the method of converting the image is not limited to the method using the conversion matrix M, but may also be a method of rotating the image so that the left eye and the right eye are horizontal, for example.
  • the face detection unit 303 detects a face area from the converted image.
  • the face detection unit 303 detects only the face area from the converted image and does not detect the positions of facial organs.
  • the determination unit 304 determines whether a face area is detected from the converted image. If the determining unit 304 determines that a face area is detected from the converted image (Yes in S1006), the process advances to S1007. If the determination unit 304 determines that no face area is detected from the converted image (No in S1006), the process ends.
  • the determination unit 304 outputs the image (partial image) including the face candidate area detected in S1001 to an external device (for example, the storage unit 207).
  • the determination unit 304 further determines whether the face candidate area is a face area based on whether or not a face area is detected from the converted image. You can make a judgment. For example, the determination unit 304 may determine that the face candidate area is a face area when a face area of a certain size or more is detected from the converted image. Furthermore, if the face area detected from the converted image is larger than a certain size and the distance between the center of the converted image and the center of the face area is within the threshold, the determination unit 304 determines that the face candidate area is It may be determined that the area is a face area.
  • the face detection unit 303 can easily detect a face area from the converted image 900. In other words, if the face detection unit 303 cannot detect a face region from the converted image 900, it is presumed that the detection accuracy of the region 510 or the positions of the facial organs 610 to 650 detected from the original image 400 is low. Therefore, the generation unit 302 generates a transformed image 900 by geometrically transforming the area 510 detected from the original image 400 based on the positions of facial organs. Then, the determination unit 304 can determine whether each of the plurality of face candidate areas is a face area based on whether or not a face area is detected from the converted image 900. This makes it possible to eliminate face candidate areas in which no face appears from the image.
  • a face candidate area is determined to be a face area based on whether or not a face area can be detected from a converted image converted based on the positions of facial organs in a face candidate area of an image. Determine whether or not. This improves the determination accuracy when determining a face area from the face candidate area, so it is possible to improve the accuracy of extracting an image (partial image) in which a face appears from an image.
  • the first embodiment when a face area is not detected from the converted image, it is determined not to output an image (partial image) including the face candidate area.
  • the quality required for a partial image may differ depending on the purpose of the image.
  • the judgment conditions for face candidate areas are changed so that the quality of the partial image matches the purpose of the image. It's okay.
  • the determination conditions for face candidate regions are changed depending on the purpose of the image.
  • the image processing device when creating learning data for learning a DNN for face detection, facial organ detection, or face recognition, and when creating a registered image to be registered in advance in a face recognition system, the image processing device Set strict criteria for determining candidate areas. On the other hand, when detecting a face from an image captured by an imaging device during operation of the face authentication system, the image processing device sets loose determination conditions for the face candidate area.
  • the image processing apparatus determines whether a face candidate area is a face area based on determination conditions for the face candidate area depending on the purpose of the image will be described below.
  • the performance of the DNN can be improved by training the DNN with low-quality images (large blur, etc.). This causes a decline in the performance of the facial recognition system.
  • images for training a DNN or facial recognition system can be prepared in advance over time. Therefore, the image processing device may set strict determination conditions for the face candidate area.
  • the face recognition system has two types of authentication methods.
  • the authentication methods are active authentication and non-active authentication.
  • Active authentication refers to a method in which the user is authenticated while the user voluntarily positions himself in front of the imaging device.
  • the image processing device can generate appropriate image data by strictly setting the determination conditions for the face candidate area.
  • Non-active authentication refers to a method in which the facial recognition system autonomously authenticates the user without the user voluntarily requesting authentication. Therefore, when the imaging device images the user, the user may move out of the imaging range of the imaging device. Furthermore, the orientation of the user's face with respect to the imaging device (camera) also varies. In this way, the number and quality of images captured during non-active authentication largely depend on the imaging environment, the settings of the imaging device, and the like. Therefore, during non-active authentication, it is difficult to obtain a sufficient number of images showing the user's face and images of high quality. In this case, the image processing device can secure an appropriate amount of image data by setting loose determination conditions for the face candidate area.
  • FIG. 11 is a block diagram showing an example of the functional configuration of an image processing device according to the second embodiment.
  • the usage input unit 1101 receives the usage of image data from the user, and transmits the usage of the image data to the control unit 1102.
  • image data are "learning”, “registration”, and “authentication”.
  • Learning refers to making a model (DNN) that learns images learn image features.
  • Registration refers to registering the characteristics of a person in an image and the person's name in a list.
  • Authentication refers to identifying the person in the image and outputting the name of the corresponding person.
  • the control unit 1102 receives the usage of the image data from the usage input unit 1101.
  • the control unit 1102 controls the content to be processed by the face area detection unit 300, facial organ detection unit 301, generation unit 302, face detection unit 303, and determination unit 304, depending on the purpose of the image data. For example, when the purpose of the image data is "learning” or "registration”, the control unit 1102 sets strict determination conditions for the face candidate area. On the other hand, when the purpose of the learning data is "authentication”, the control unit 1102 sets the determination conditions for the face candidate area to be loose.
  • FIG. 12 is a flowchart illustrating the flow of image processing according to the second embodiment.
  • the processing from S1000 to S1007 is the same as that in the first embodiment, so the explanation will be omitted.
  • step S ⁇ b>1201 the control unit 1102 determines whether to set strict criteria for the face candidate region based on the usage of the image data received from the usage input unit 1101 . If the control unit 1102 determines that the determination conditions for the face candidate area are to be set strictly (Yes in S1201), the process advances to S1202. If the control unit 1102 determines that the determination conditions for the face candidate area are not set strictly (No in S1201), the process advances to S1002.
  • the determination unit 304 determines whether to detect the position of a facial organ from the face candidate area based on whether the proportion of the face candidate area that is partially protruding from the image is equal to or less than a threshold value. Determine whether For example, the determination unit 304 calculates the proportion of the area 550 that is partially occupied by the area 550 that extends from the image 400 in FIG. Then, if the calculated ratio is not equal to or less than the threshold, the determining unit 304 determines that the position of the facial organ is not detected from the area 550, and ends the process.
  • FIG. 13 is a flowchart illustrating the flow of image processing according to the second embodiment.
  • the processing from S1000 to S1007 is the same as that in the first embodiment, so the explanation will be omitted.
  • step S1301 the control unit 1102 determines whether to set strict criteria for the face candidate region based on the purpose of the image data received from the purpose input unit 1101. If the control unit 1102 determines that the determination conditions for the face candidate area are to be set strictly (Yes in S1301), the process advances to S1302. If the control unit 1102 determines that the determination conditions for the face candidate area are not set strictly (No in S1301), the process advances to S1005.
  • step S1302 the determination unit 304 determines whether or not to detect a facial area from the converted image based on whether the difference between the position of the facial organ in the face candidate area and the reference position in the converted image is within a threshold. judge. If the determining unit 304 determines that the difference between the position of the facial organ in the face candidate area and the reference position in the converted image is within the threshold (Yes in S1302), the process advances to S1005. If the determining unit 304 determines that the difference between the position of the facial organ in the face candidate area and the reference position in the converted image is not within the threshold value (No in S1302), the process ends.
  • FIG. 14 is a flowchart illustrating the flow of image processing according to the second embodiment.
  • the processing from S1000 to S1007 is the same as that in the first embodiment, so the explanation will be omitted.
  • the variable i is set to 0 at the start of the process. Note that the number of the variable i represents the number of times a person's face area was detected from the converted image.
  • control unit 1102 adds 1 to the variable i, and the process advances to S1402.
  • the determination unit 304 determines whether the variable i is greater than or equal to a threshold value. If the control unit 1102 determines that the variable i is equal to or greater than the threshold (Yes in S1401), the process advances to S1007. If the determination unit 304 determines that the variable i is not equal to or greater than the threshold (No in S1401), the process advances to S1403.
  • the control unit 1102 detects one face candidate area from the converted image generated in S1004, and the process advances to S1002.
  • the control unit 1102 sets the threshold value in S1402 to a value of "2" or more.
  • the determination conditions for the face candidate area indicate that the larger the threshold value is, the more severe the setting is.
  • the control unit 1102 sets the threshold value in S1402 to "1".
  • FIG. 15 is a flowchart illustrating the flow of image processing according to the second embodiment.
  • the processes from S1000 and S1003 to S1007 are the same as those in the first embodiment, so their explanation will be omitted.
  • the face area detection unit 300 calculates the likelihood of the face candidate area detected from the image.
  • the facial organ detection unit 301 calculates the likelihood of the facial organ position detected from the face candidate area.
  • step S1503 the control unit 1102 determines whether to set strict criteria for the face candidate region based on the usage of the image data received from the usage input unit 1101. If the control unit 1102 determines that the determination conditions for the face candidate area are to be set strictly (Yes in S1503), the process advances to S1004. If the control unit 1102 determines that the determination conditions for the face candidate area are not set strictly (No in S1503), the process advances to S1504.
  • FIG. 16 is a flowchart illustrating the flow of image processing according to the second embodiment.
  • the processing from S1000 to S1007 is the same as that in the first embodiment, so the explanation will be omitted.
  • step S1601 the control unit 1102 determines whether to set strict criteria for the face candidate region based on the purpose of the image data received from the purpose input unit 1101. If the control unit 1102 determines that the determination conditions for the face candidate area are to be set strictly (Yes in S1601), the process advances to S1002. If the control unit 1102 determines that the determination conditions for the face candidate area are not set strictly (No in S1601), the process advances to S1007.
  • FIG. 17 is a flowchart illustrating the flow of image processing according to the second embodiment.
  • the processing from S1000 to S1007 is the same as that in the first embodiment, so the explanation will be omitted.
  • step S1701 the control unit 1102 determines whether to set strict criteria for the face candidate region based on the purpose of the image data received from the purpose input unit 1101. If the control unit 1102 determines that the determination conditions for the face candidate area are to be set strictly (Yes in S1701), the process advances to S1702. If the control unit 1102 determines that the determination conditions for the face candidate area are not set strictly (No in S1701), the process advances to S1007.
  • the determination unit 304 determines whether the size of the face area of the converted image detected in S1006 is greater than or equal to a threshold value. If the determining unit 304 determines that the size of the face area of the converted image detected in S1006 is equal to or larger than the threshold (Yes in S1702), the process advances to S1007. If the determination unit 304 determines that the size of the face area of the converted image detected in S1006 is not larger than the threshold (No in S1702), the process ends.
  • FIG. 18 is a flowchart illustrating the flow of image processing according to the second embodiment.
  • the processing from S1000 to S1007 is the same as that in the first embodiment, so the explanation will be omitted.
  • step S ⁇ b>1801 the control unit 1102 determines whether to set strict criteria for the face candidate region based on the usage of the image data received from the usage input unit 1101 . If the control unit 1102 determines that the determination conditions for the face candidate area are to be set strictly (Yes in S1801), the process advances to S1802. If the control unit 1102 determines that the determination conditions for the face candidate area are not set strictly (No in S1801), the process advances to S1007.
  • the facial organ detection unit 301 detects facial organ positions from the facial area of the converted image detected in S1006, and the process proceeds to S1803.
  • the determining unit 304 determines whether the difference between the position of the facial organ in the face area of the converted image and the reference position in the converted image is within a threshold value. If the determination unit 304 determines that the difference between the position of the facial organ in the face image area of the converted image and the reference position in the converted image is within the threshold (Yes in S1803), the process proceeds to S1007. If the determination unit 304 determines that the difference between the position of the facial organ in the face image area of the converted image and the reference position is not within the threshold value (No in S1803), the process ends.
  • the second embodiment by changing the determination conditions for face candidate regions based on the purpose of the image, it is possible to generate a partial image with a quality that matches the purpose of the image.
  • the third embodiment performs geometric transformation (for example, affine transformation) on an image based on facial organ positions in a face candidate region of the image.
  • the third embodiment determines whether or not information indicating a face candidate area is output as information indicating a face area, based on the result of detecting a face area from a converted image. Further, in the third embodiment, registration, authentication, or learning processing of partial images is performed depending on the purpose of the partial images.
  • geometric transformation for example, affine transformation
  • FIG. 19 is a block diagram showing an example of the functional configuration of an image processing device according to the third embodiment.
  • the image processing device 110 includes a feature extraction section 1901, a feature matching section 1902, a registration section 1903, an authentication section 1904, a learning section 1905, and a name input section 1906.
  • the feature extracting unit 1901 receives the partial image from the generating unit 302. Next, the feature extraction unit 1901 extracts features from the partial image. For example, the feature extraction unit 1901 extracts a numerical vector from the partial image as a feature of the partial image. Note that the feature of the partial image is not limited to a numerical vector, and may be another feature. Then, the feature extraction unit 1901 transmits the features extracted from the partial image to the registration unit 1903.
  • the registration unit 1903 registers the features of the partial image received from the feature extraction unit 1901 in a list in the storage unit 207 or the like. Further, the registration unit 1903 receives from the name input unit 1906 a name corresponding to the characteristic registered in the list in the storage unit 207 or the like, and registers the name in the list in the storage unit 207 or the like.
  • the name input unit 1906 includes a user interface (UI) for inputting a name corresponding to the feature of the partial image registered by the registration unit 1903. The user inputs the name of the person appearing in the partial image input to the image processing device 110 using the name input unit 1906.
  • UI user interface
  • the feature extracting unit 1901 receives the partial image from the generating unit 302. Next, the feature extraction unit 1901 extracts features from the partial image. For example, the feature extraction unit 1901 extracts a numerical vector from the partial image as a feature of the partial image. Note that the feature of the partial image is not limited to a numerical vector, and may be a feature having the same format as a feature already registered in the registration unit 1903.
  • the feature matching unit 1902 matches the features of the partial image received from the feature extracting unit 1901 and the features of the partial image registered in the registration unit 1903.
  • Feature matching section 1902 transmits the matching results to authentication section 1904.
  • the feature matching unit 1902 calculates the difference between the feature extracted from the partial image and the feature registered in the registration unit 1903.
  • the difference is the cosine similarity, L1 distance, L2 distance, etc. of two numerical vectors.
  • the authentication unit 1904 receives the feature difference between the partial images as a matching result from the feature matching unit 1902. Next, when the smallest difference among the differences in the features of the partial images is within the threshold, the authentication unit 1904 outputs the name of the person appearing in the partial image corresponding to the smallest difference as an authentication result. On the other hand, if the smallest difference among the differences in the features of the received partial images is not within the threshold, the authentication unit 1904 outputs an authentication result indicating "no matching person".
  • the name input unit 1906 includes a user interface (UI) for inputting a name corresponding to the feature of the partial image registered by the registration unit 1903. The user inputs the name of the person appearing in the image input to the image processing apparatus 110 using the name input section 1906.
  • UI user interface
  • the determination unit 304 determines that a face area is detected from the converted image, it transmits the partial image to the learning unit 1905. Furthermore, the determination unit 304 receives the name of the person appearing in the partial image from the name input unit 1906, and transmits the partial image and the name of the person appearing in the partial image to the learning unit 1905.
  • the learning unit 1905 learns the partial image received from the determining unit 304 and the name of the person appearing in the partial image.
  • the learning unit 1905 is a DNN that extracts features from a partial image, but is not limited to this, and may be a DNN that detects a face from a partial image, for example.
  • registration, authentication, or learning processing of partial images can be controlled depending on the purpose of the partial images.
  • the present invention provides a system or device with a program that implements one or more functions of the embodiments described above via a network or a storage medium, and one or more processors in a computer of the system or device reads and executes the program. This can also be achieved by processing. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.
  • a circuit for example, ASIC

Abstract

画像から第一の顔検出器を用いて顔の候補領域を検出する。顔の候補領域として検出された第一の領域の画像から、顔器官検出器を用いて顔器官の位置を取得する。第一の領域の画像を、顔器官の位置に基づいて変換した変換画像を生成する。変換画像から第二の顔検出器を用いて顔を検出した検出結果に基づいて、第一の領域の画像を出力するか否かを制御する。

Description

画像処理装置、画像処理方法、及びプログラム
 本発明は、画像処理装置、画像処理方法、及びプログラムに関するものである。
 従来、画像から人物の顔を検出する方法として、人物の顔領域を画像上で探索し、尤度が一定値以上である顔候補領域を検出結果として出力する方法がある。この方法で検出した顔候補領域に顔が存在しない場合があるため、尤度が高い顔候補領域が顔領域であるか否かを更に判定することが行われている。また、顔検出方法及び顔認証方法等を機械学習モデルに学習させるための画像及び顔認証システムに用いられる画像を作成する場合、人物の顔が写っていない低品質な画像を排除する必要がある。
 上記の問題点を踏まえて、特許文献1は、尤度が高い顔候補領域から両目の目頭や口の中央部等の顔器官を検出し、顔器官の検出数に基づいて、尤度が高い顔候補領域が顔領域であるか否かを判定する方法を提案している。
特許第4884251号公報
 しかしながら、特許文献1の方法は、尤度が高い顔候補領域に人物の顔が存在しないが、顔器官の検出数が多い場合、尤度が高い顔候補領域を顔領域であると判定する。一方、特許文献1の方法は、尤度が低い顔候補領域に人物の顔が写っているが、顔器官の検出数が少ない場合、尤度が低い顔候補領域を顔領域ではないと判定する。このように、特許文献1の技術は、顔候補領域が顔領域であるか否かを判定する判定精度が低いため、顔が写っていない画像を作成してしまうという課題がある。
 そこで、本発明は、画像から人物の顔が写る画像を抽出する精度を向上することを目的とする。
 本発明の目的を達成するために、本発明の一実施形態に係る画像処理装置は、以下の構成を備える。すなわち、画像処理装置は、画像から第一の顔検出器を用いて顔の候補領域を検出する検出手段と、前記顔の候補領域として検出された第一の領域の画像から、顔器官検出器を用いて顔器官の位置を取得する取得手段と、前記第一の領域の画像を、前記顔器官の位置に基づいて変換した変換画像を生成する生成手段と、前記変換画像から第二の顔検出器を用いて顔を検出した検出結果に基づいて、前記第一の領域の画像を出力するか否かを制御する制御手段と、を備える。
 本発明によれば、画像から人物の顔が写る画像を抽出する精度を向上することができる。
 本発明のその他の特徴及び利点は、添付図面を参照とした以下の説明により明らかになるであろう。なお、添付図面においては、同じ若しくは同様の構成には、同じ参照番号を付す。
 添付図面は明細書に含まれ、その一部を構成し、本発明の実施の形態を示し、その記述と共に本発明の原理を説明するために用いられる。
図1は画像処理システムのハードウェア構成の一例を示した図である。(実施例1) 図2は画像処理装置のハードウェア構成の一例を示した図である。(実施例1) 図3は画像処理装置の機能構成の一例を示した図である。(実施例1) 図4は画像処理の対象となる画像の一例を示した図である。(実施例1) 図5は顔候補領域の検出結果の一例を示した図である。(実施例1) 図6は顔候補領域から検出した顔器官の検出結果の一例を示した図である。(実施例1) 図7は変換画像を生成する処理の流れを説明するフローチャートである。(実施例1) 図8は顔器官の位置の対応関係を説明するための図である。(実施例1) 図9は画像から変換画像を生成する際の概要を示した図である。(実施例1) 図10は画像処理の流れを説明するフローチャートである。(実施例1) 図11は画像処理装置の機能構成の一例を示したブロック図である。(実施例2) 図12は画像処理の流れを説明するフローチャートである。(実施例2) 図13は画像処理の流れを説明するフローチャートである。(実施例2) 図14は画像処理の流れを説明するフローチャートである。(実施例2) 図15は画像処理の流れを説明するフローチャートである。(実施例2) 図16は画像処理の流れを説明するフローチャートである。(実施例2) 図17は画像処理の流れを説明するフローチャートである。(実施例2) 図18は画像処理の流れを説明するフローチャートである。(実施例2) 図19は画像処理装置の機能構成の一例を示したブロック図である。(実施例3)
 以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものでない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
 (第1実施形態)
 本実施形態は、撮像装置と、画像処理装置とを組み合わせた画像処理システムとして用いることができる。
 図1は、第1実施形態に係る、画像処理システムのハードウェア構成の一例を示す図である。
 画像処理システム10は、撮像装置100、画像処理装置110、及びネットワーク120を含む。
 撮像装置100は、被写体を撮像するカメラであり、例えば、デジタルカメラ及びネットワークカメラである。撮像装置100は、1つのカメラであるが、2つ以上のカメラであっても良い。
 画像処理装置110は、画像から人物の顔候補領域及び顔器官の位置等を検出する装置であり、例えば、デスクトップコンピュータ及びラップトップコンピュータであるが、これに限られることはない。画像処理装置110は、例えば、スマートフォン及びタブレット端末等であってもよい。
 ネットワーク120は、撮像装置100及び画像処理装置110を接続する。ネットワーク120は、例えば、有線LAN及び無線LANである。
 図2は、第1実施形態に係る、画像処理装置のハードウェア構成の一例を示すブロック図である。
 画像処理装置110は、入力部201、表示部202、I/F203、CPU204、RAM205、ROM206、記憶部207、及びデータバス208を備える。
 入力部201は、ユーザが各種データを入力する装置であり、例えば、キーボード、マウス、及びタッチパネル等を含む。
 表示部202は、各種データを表示する装置であり、例えば、液晶ディスプレイ(LCD)を含む。
 I/F203は、インターネット等のネットワーク120を介して、画像処理装置110と他の装置(不図示)との間で各種情報を送受信する。
 CPU204は、画像処理装置110内の各部を統括的に制御するプロセッサである。CPU204は、ROM206内の制御用プログラムを読み出して、RAM205にロードし、プログラムを実行することで、各種制御を行う。CPU204がROM206及び記憶部207内の画像処理プログラムを実行することで、画像データに対する画像処理が実現される。
 RAM205は、CPU204により実行されるプログラム及びワークメモリ等の一時記憶領域である。
 ROM206は、画像処理装置110内の各部を制御するための制御用プログラムを記憶する。
 記憶部207は、各種データを記憶する装置であり、例えば、画像データ、設定パラメータ、及び各種プログラム等を記憶する。また、記憶部207は、I/F203を介して外部装置(不図示)からのデータを記憶することも可能である。
 データバス208は、データを伝送するための伝送路であり、I/F203を介して外部装置から受信した画像データ等をCPU204、RAM205、及びROM206に送信する。また、データバス208は、画像処理装置110から外部装置へ画像データ等を送信する。
 図3は、第1実施形態に係る、画像処理装置の機能構成の一例を示すブロック図である。
 画像処理装置110は、顔領域検出部300、顔器官検出部301、生成部302、顔検出部303、判定部304、DNN_A305、DNN_B306、及びDNN_C307を備える。DNN(Deep Neural Network)は、ディープニューラルネットワークの略である。
 顔領域検出部300は、記憶部207等から画像を取得する。画像は、撮像装置100により撮像された画像及び予め記憶部207等に記憶した画像の少なくともいずれかである。顔領域検出部300は、DNN_A305を用いて画像の人物の顔候補領域を検出し、顔候補領域を含む画像を生成する。顔領域検出部300は、顔候補領域を含む画像を顔器官検出部301に送信する。
 顔器官検出部301は、顔領域検出部300から顔候補領域を含む画像を受信する。顔器官検出部301は、DNN_B306を用いて画像の顔候補領域から顔器官を検出する。さらに、顔器官検出部301は、顔候補領域から検出した顔器官の情報を、生成部302に送信する。顔器官の情報は、例えば、顔器官の位置(二次元座標)、大きさ、及び向き等の情報を含む。
 生成部302は、顔器官検出部301から顔候補領域から検出した顔器官の情報を受信する。生成部302は、顔器官の情報に基づく幾何的な変換(例えば、アフィン変換)により画像を変換し、変換画像を生成する。さらに、生成部302は、変換画像を顔検出部303に送信する。
 顔検出部303は、生成部302から変換画像を受信する。顔検出部303は、DNN_C307を用いて変換画像から人物の顔を検出する。さらに、顔検出部303は、検出結果を判定部304に送信する。
 判定部304は、生成部302から変換画像を受信する。判定部304は、顔検出部303から変換画像内で検出された人物の顔の検出結果を受信する。そして、判定部304は、変換画像における人物の顔の検出結果に基づいて、元の画像から顔候補領域として検出された検出領域を示す情報を顔の領域を示す情報として出力するか否かを判定する。さらに、判定部304は、判定結果に基づいて、顔領域であると判定された元の画像の検出領域を記憶部207等に出力する。
 本実施形態では、顔領域検出部300のDNN_A305、顔器官検出部301のDNN_B306、及び顔検出部303のDNN_C307は、互いに異なるが、これに限られない。例えば、顔領域検出部300のDNNと顔検出部303のDNNは、同一であっても良い。また、顔候補領域と顔器官を同時に検出可能なDNNが利用可能である場合、顔領域検出部300、顔器官検出部301、及び顔検出部303のそれぞれのDNNは、全て同一であっても良い。ここで、顔領域検出部300のDNNは「第一の顔検出器」、顔器官検出部301のDNNは「顔器官検出器」、及び顔検出部303のDNNは「第二の顔検出器」と定義する。
 一般的に、処理対象である画像のサイズ、画像に写る人物の顔の大きさ及び向きなどの人物に対する様々な撮影条件で撮像した画像を用いてDNNの学習が行われる。これにより、顔領域検出部300と顔検出部303のそれぞれは、様々な撮影条件で人物を撮影した画像を用いて学習したDNNを用いて、画像から顔候補領域と顔領域をそれぞれ高精度で検出できる。また、顔器官検出部301は、顔領域検出部300が様々な撮影条件で人物を撮影した画像から検出した顔候補領域の画像(第一の領域の画像に相当)を用いて学習したDNNを用いて、画像から顔器官の位置を高精度で検出できる。以下では、顔領域検出部300と顔検出部303のそれぞれに、それぞれ異なるDNNを適用することで顔候補領域及び顔領域の検出精度向上に効果的である例1~3について説明する。なお、例1~3の方法はそれぞれ独立した方法であるが、例1~3の組み合わせによる方法を利用しても良い。
 (例1)
 顔領域検出部300の入力画像の大きさは任意であり、かつ顔検出部303の入力画像の大きさが固定である場合、顔領域検出部300のDNNと顔検出部303のDNNは互いに異なっていても良い。例えば、顔領域検出部300のDNNは、画像の大きさに関わらず動作可能な汎用DNNである。一方で、顔検出部303のDNNは、画像の大きさを固定した学習データで汎用DNNを追加学習させたDNNである。
 (例2)
 顔領域検出部300の入力画像に写る人物の顔の大きさ及び向きなどのばらつきは大きい。一方で、顔検出部303の入力画像、すなわち生成部302によって生成(変換)される変換画像に写る人物の顔の大きさ及び向きなどのばらつきは、顔領域検出部300の入力画像に写る人物の顔の大きさ及び向きなどのばらつきよりも小さい。この場合、顔領域検出部300のDNNと顔検出部303のDNNは、互いに異なっていても良い。例えば、顔領域検出部300のDNNは、顔の大きさと向きに関わらず動作可能な汎用DNNである。一方で、顔検出部303のDNNは、生成部302による変換方法を用いて作成した学習データ(すなわち、変換画像)により汎用DNNを追加学習したDNNである。なお、汎用DNNに対する追加学習は、画像処理装置110とは別のソフトウェア及び学習装置等を用いて予め実施されても良い。あるいは、後述の第3実施形態のように、画像処理装置110に接続された学習部1905と画像処理装置110の入力画像とを用いて、汎用DNNの学習を実施しても良い。
 (例3)
 実時間(リアルタイム)で高速動作が要求される顔認証システム、及び、ハードウェアの物理的なサイズが小さく、かつ処理性能が低いコンピュータ等(例えば、カメラ、スマートフォン)で動作する顔認証システムなどでは、低計算量での顔検出処理が要求される。この場合、DNNの層数が小さく、かつ正検出率の低いDNN_1と、DNNの層数が大きく、かつ正検出率の高いDNN_2との組み合わせを顔認証システムに適用すると良い。一般的には、画像の大きさが大きいほど、DNNの計算量が多くなる。そのため、例えば、顔領域検出部300の入力画像が顔検出部303の入力画像よりも大きい場合、顔領域検出部300にDNN_1を、顔検出部303にDNN_2をそれぞれ適用すると良い。また、顔領域検出部300の入力画像が顔検出部303の入力画像よりも小さい場合、顔領域検出部300にDNN_2を、顔検出部303にDNN_1をそれぞれ適用すると良い。一方で、例えば、顔認証システムの計算リソースの割り当てなどの設計上の制約により、DNNの計算量をなるべく小さくする要求がある場合、顔領域検出部300と顔検出部303のそれぞれに、最も少ない計算リソースで動作可能なDNN_1を適用すると良い。また、顔認証システムに割り当て可能な計算リソースが多い場合、顔認証システムの認証精度を最大限に高める観点から、顔領域検出部300と顔検出部303のそれぞれに、最も多い計算リソースで動作可能なDNN_2を適用すると良い。なお、上記のDNN_1とDNN_2の例に限らず、DNN_1とDNN_2の中間の計算リソースで動作可能なDNN_3を設けることも可能である。つまり、顔認証システムの全体の計算リソース、様々な計算リソースで動作可能なDNN、及び運用環境に基づいて、顔領域検出部300と顔検出部303それぞれに割り当てるDNNを適宜選択することが可能である。
 図4は、第1実施形態に係る、画像処理の対象となる画像の一例を示す図である。画像400上に3人の人物が写っている。画像400上の人物数は、3人に限られず、2人以下及び4人以上であっても良い。
 図5は、第1実施形態に係る、顔候補領域の検出結果の一例を示す図である。
 図5は、顔領域検出部300が画像400から検出した5つの顔候補領域の一例を示す。画像400は、領域510、領域520、領域530、領域540、及び領域550を含む。
 領域510は、人物の顔を含む領域である。領域520は、人物の一部の領域として、人物の右側の一部を含む領域である。領域530は、人物の顔を含む領域である。領域540は、人物の顔を含まない領域である。領域550は、人物の顔を含まない領域である。領域550の一部は、画像400の外側にはみ出して位置する。この際、顔領域検出部300は、画像400の外側に位置する領域550の一部の領域に対し、輝度値0の画素で補完する。なお、顔領域検出部300は、例えば、0以外の輝度値で領域550の一部の領域を補完しても良く、元画像の部分領域ないし部分領域を反転した輝度値で領域550の一部の領域を補完しても良い。
 図6は、第1実施形態に係る、顔候補領域から検出した顔器官の検出結果の一例を示す図である。
 図6は、顔器官検出部301が領域510から5つの顔器官を検出した一例を示す。領域510は、顔器官610、顔器官620、顔器官630、顔器官640、及び顔器官650を含む。
 このように、領域510が顔器官610~650の全てを含む場合、生成部302は領域510を変換することにより、後述の部分画像を生成する。一方で、領域510が4個以下の顔器官を含む場合、又は、顔器官の位置が領域510の外側に位置する場合、生成部302は領域510から部分画像を生成することなく、処理を終了する。
 図7は、第1実施形態に係る、変換画像を生成する処理の流れを説明するフローチャートである。生成部302は、顔器官の情報(例えば、位置)に基づいて画像に対し幾何的な画像変換を行い、変換画像を生成する。以下、生成部302による変換画像の生成処理について説明する。
 S700で生成部302は、変換画像の領域を生成する。変換画像の領域は、所望の画像の大きさ及び形に基づいて設定される領域のことをいう。例えば、生成部302は、112x112画素の正方領域を変換画像の領域として生成する。
 S701で生成部302は、変換画像の領域において、5つの顔器官610~650に対応する顔器官の基準位置810~850(図8)を設定する。顔器官の基準位置は、変換画像の領域における顔器官の位置として予め規定した位置のことをいう。
 生成部302は、変換画像を生成する際に、5つの顔器官610~650の位置が、基準位置810~850にできるだけ近づくように、画像を変換する。例えば、図8における基準位置810~850は、多数の人物を正面から撮影した顔画像から求めた顔器官の平均的な位置とする。
 基準位置810~850の一例について説明する。まず、112x112画素の正方領域の左上を原点とした場合、画像の右方向を正のX方向、画像の下方向を正のY方向とする。次に、左目の中心、右目の中心、鼻の頭、口の左端点、口の右端点のそれぞれの位置は、二次元座標(X,Y)で表される。これにより、生成部302は、基準位置810~850にそれぞれ対応する二次元座標(40、60)、(73、60)、(55、80)、(42、100)、(81、100)を設定する。
 S702で生成部302は、変換画像を生成するための変換行列を算出する。例えば、生成部302は、画像の変換処理により、5つの顔器官610~650の位置が、基準位置810~850にできるだけ近づくような変換行列Mを算出する。
 図8は、第1実施形態に係る、顔器官の位置の対応関係を説明するための図である。
 図8は、5つの顔器官610~650の位置と、基準位置810~850との対応を示す。一般的には、顔器官の位置と基準位置との間で4組以上の対応関係が存在する場合、顔器官の位置と基準位置との間の差分が全て0となる変換行列Mは存在しない。そのため、生成部302は、顔器官の位置と基準位置との間の差分の収束計算により、差分ができるだけ小さくなるような変換行列Mを算出する。
 なお、生成部302は、顔器官610~650の位置と、基準位置810~850との差分の合計を差分の大きさとして算出するが、これに限られない。生成部302は、特定の点同士の間の距離を低く評価することで傾斜配分した差分の合計値を算出しても良い。例えば、鼻の頭(顔器官630)は顔表面からの距離が大きいため、顔の向きの変化に対して位置のずれが大きくなる場合がある。そこで、生成部302は、鼻の頭の点(顔器官630)と基準位置830との間の位置の差分に対して0.5を乗じて算出しても良い。
 S703で生成部302は、S702で算出した変換行列Mを用いて、元の画像400を変換した変換画像を生成する。
 ここで、図9は、第1実施形態に係る、画像から変換画像を生成する際の概要を示す図である。
 図9は、変換処理前の画像400、画像400を変換処理した後の変換画像900を示す。画像400は、領域510を含む。変換画像900は、画像400を反時計回りに回転処理した画像であり、部分画像910を含む。
 S704で生成部302は、変換画像900から部分画像910を切り出し、部分画像910を記憶部207に記憶する。
 図10は、第1実施形態に係る、画像処理の流れを説明するフローチャートである。
 S1000でユーザは人物の顔が写った画像を準備する。例えば、ユーザは一般的なデジタルカメラで人物を撮影した画像を準備する。以下、画像処理装置110が1枚の画像から人物の顔を検出する場合について説明する。なお、画像処理装置110は2枚以上の画像から人物の顔を検出する場合に、1枚の画像から人物の顔を検出する処理を画像枚数に応じて順次実施する。これにより、画像処理装置110は、画像枚数に依存することなく人物の顔を検出できる。
 S1001で顔領域検出部300は、記憶部207等から取得した画像から人物の顔候補領域を検出する。ここで、顔領域検出部300は、画像の縦方向と横方向に平行な線分で囲まれた矩形領域を顔候補領域として検出する。顔候補領域は、矩形領域に限られず、例えば、顔の中心部を中心とした楕円領域であっても良い。
 S1002で顔器官検出部301は、顔候補領域から顔器官の位置を検出する。顔器官は、左目の中心、右目の中心、鼻の頭、口の左端点、及び口の右端点を含む5つの器官であるが、これに限らず、別の器官であっても良い。顔器官は、例えば、目又は口の上下左右の4つの端点等であっても良い。
 S1003で生成部302は、顔器官検出部301から受信した顔候補領域における顔器官の情報に基づいて、5つの顔器官が顔候補領域に位置するか否かを判定する。生成部302は、5つの顔器官が顔候補領域に位置すると判定した場合(S1003でYes)、処理はS1004に進む。生成部302は、5つの顔器官が顔候補領域に位置しないと判定した場合(S1003でNo)、処理は終了する。
 S1004で生成部302は、顔器官の位置情報に基づいて、画像に対し幾何的な画像変換(例えば、アフィン変換)を行うことで、変換画像を生成する。
 例えば、生成部302は、変換画像で5つの顔器官に対応する座標を予め設定する。生成部302は、変換前の画像における5つの顔器官の位置(座標)と、変換画像の5つの顔器官の位置(座標)と、の差分が最小となる変換行列Mを算出する。生成部302は、変換行列Mを用いて画像に対し幾何的な画像変換を行うことで、変換画像を生成する。なお、画像の変換方法は、変換行列Mを用いる方法に限られず、例えば、左目と右目が水平になるように画像を回転する方法であっても良い。
 S1005で顔検出部303は、変換画像から顔領域を検出する。ここで、顔検出部303は、変換画像から顔領域のみを検出し、顔器官の位置を検出しない。
 S1006で判定部304は、変換画像から顔領域が検出されたか否かを判定する。判定部304は、変換画像から顔領域が検出されたと判定した場合(S1006でYes)、処理はS1007に進む。判定部304は、変換画像から顔領域が検出されなかったと判定した場合(S1006でNo)、処理は終了する。
 S1007で判定部304は、S1001で検出された顔候補領域を含む画像(部分画像)を外部装置(例えば、記憶部207)へ出力する。
 なお、判定部304は、変換画像から顔領域が検出されたか否かに基づいて、顔候補領域が顔領域であるか否かをさらに判定しているが、別の判定方法を用いて上記の判定をしても良い。例えば、判定部304は、変換画像からある大きさ以上の顔領域が検出された場合、顔候補領域が顔領域であると判定しても良い。また、判定部304は、変換画像から検出された顔領域がある大きさ以上であり、かつ、変換画像の中心と顔領域の中心との間の距離が閾値以内である場合、顔候補領域が顔領域であると判定しても良い。
 一般的に、顔検出部303は、変換画像900から顔領域を容易に検出できる。つまり、顔検出部303が、変換画像900から顔領域を検出できない場合、元の画像400から検出された領域510又は顔器官610~650の位置の検出精度が低いことが推察される。そのため、生成部302は、元の画像400から検出された領域510を、顔器官の位置に基づいて幾何的に変換した変換画像900を生成する。そして、判定部304は、変換画像900から顔領域を検出したか否かに基づいて、複数の顔候補領域が顔領域であるか否かをそれぞれ判定できる。これにより、画像から顔が写っていない顔候補領域を排除できる。
 以上の通り、第1実施形態によれば、画像の顔候補領域の顔器官の位置に基づいて変換した変換画像から顔領域を検出できたか否かに基づいて、顔候補領域が顔領域であるか否かを判定する。これにより、顔候補領域から顔領域を判定する際の判定精度が向上するため、画像から顔が写る画像(部分画像)を抽出する精度を向上させることができる。
 (第2実施形態)
 第1実施形態は、変換画像から顔領域が検出されなかった場合、顔候補領域を含む画像(部分画像)を出力しないと判定した。しかし、画像の用途に応じて部分画像に要求される品質が異なることがある。このように、画像の用途に応じた品質の部分画像となるように、顔候補領域が顔領域であるか否かを判定するための判定条件(以下、顔候補領域に対する判定条件)が変更されても良い。第2実施形態は、画像の用途に応じて、顔候補領域に対する判定条件を変更する。以下、第2実施形態は、第1実施形態との差分について説明する。
 例えば、顔検出用、顔器官検出用、又は顔認証用のDNNを学習させるための学習データを作成する場合、及び、顔認証システムに予め登録する登録画像を作成する場合、画像処理装置は顔候補領域に対する判定条件を厳しく設定する。一方で、顔認証システムの運用時に撮像装置によって撮像される画像から顔を検出する場合、画像処理装置は、顔候補領域に対する判定条件を緩く設定する。以下、画像処理装置が、画像の用途に応じた、顔候補領域に対する判定条件に基づいて、顔候補領域が顔領域であるか否かを判定する一例を説明する。
 DNNを学習させるための学習データを作成する場合、及び、顔認証システムに予め登録する登録画像を作成する場合、低品質な画像(ボケが大きい等)でDNNを学習させることにより、DNNの性能低下及び顔認証システムの性能低下を引き起こす。しかし、DNNの学習用又は顔認証システム用の画像は、事前に時間を費やして準備され得る。そのため、画像処理装置は、顔候補領域に対する判定条件を厳しく設定しても良い。
 顔認証システムは、2種類の認証方式を備える。認証方式は、積極認証及び非積極認証である。積極認証は、ユーザが自らの意思で撮像装置の前に位置した状態でユーザの認証を行う方式のことをいう。この場合、画像処理装置は、顔候補領域に対する判定条件を厳しく設定することで、適切な画像データを生成できる。
 非積極認証は、ユーザが自らの意思で認証を望んでいない状態でユーザの認証を顔認証システムが自律的に行う方式のことをいう。そのため、撮像装置がユーザを撮像する際に、ユーザは撮像装置の撮像範囲外に移動してしまうことがある。また、撮像装置(カメラ)に対するユーザの顔の向きも様々である。このように、非積極認証時において撮像される画像の枚数及び品質は、撮像環境及び撮像装置の設定等に大きく依存する。そのため、非積極認証時には、ユーザの顔が写る十分な画像枚数及び品質の高い画像が得られにくい。この場合、画像処理装置は、顔候補領域に対する判定条件を緩く設定することで、適切な画像データの量を確保できる。
 図11は、第2実施形態に係る、画像処理装置の機能構成の一例を示すブロック図である。
 用途入力部1101は、ユーザから画像データの用途を受信し、画像データの用途を制御部1102に送信する。画像データの用途は、「学習」、「登録」、及び「認証」である。学習は、画像を学習するモデル(DNN)に対し画像の特徴を学習させることをいう。登録は、画像に写る人物の特徴と、人物の名前と、をリストに登録することをいう。認証は、画像に写る人物が誰であるかを特定し、対応する人物の名前を出力することをいう。
 制御部1102は、用途入力部1101から画像データの用途を受信する。制御部1102は、画像データの用途に応じて、顔領域検出部300、顔器官検出部301、生成部302、顔検出部303、及び判定部304に処理させる内容を制御する。例えば、制御部1102は、画像データの用途が「学習」又は「登録」である場合、顔候補領域に対する判定条件を厳しく設定する。一方で、制御部1102は、学習データの用途が「認証」である場合、顔候補領域に対する判定条件を緩く設定する。
 図12は、第2実施形態に係る、画像処理の流れを説明するフローチャートである。S1000~S1007までの処理は、第1実施形態と同様であるので説明を省略する。
 S1201で制御部1102は、用途入力部1101から受信した画像データの用途に基づいて、顔候補領域に対する判定条件を厳しく設定するか否かを判定する。制御部1102は、顔候補領域に対する判定条件を厳しく設定すると判定した場合(S1201でYes)、処理はS1202に進む。制御部1102は、顔候補領域に対する判定条件を厳しく設定しないと判定した場合(S1201でNo)、処理はS1002に進む。
 S1202で判定部304は、画像からはみ出している顔候補領域の一部が顔候補領域に占める割合が閾値以下であるか否かに基づいて、顔候補領域から顔器官の位置を検出するか否かを判定する。例えば、判定部304は、図5において画像400からはみ出している領域550の一部が領域550に占める割合を算出する。そして、判定部304は、算出した割合が閾値以下ではない場合、領域550から顔器官の位置を検出しないと判定し、処理を終了する。
 図13は、第2実施形態に係る、画像処理の流れを説明するフローチャートである。S1000~S1007までの処理は、第1実施形態と同様であるので説明を省略する。
 S1301で制御部1102は、用途入力部1101から受信した画像データの用途に基づいて、顔候補領域に対する判定条件を厳しく設定するか否かを判定する。制御部1102は、顔候補領域に対する判定条件を厳しく設定すると判定した場合(S1301でYes)、処理はS1302に進む。制御部1102は、顔候補領域に対する判定条件を厳しく設定しないと判定した場合(S1301でNo)、処理はS1005に進む。
 S1302で判定部304は、顔候補領域における顔器官の位置と変換画像における基準位置との間の差分が閾値以内であるか否かに基づいて、変換画像から顔領域を検出するか否かを判定する。判定部304は、顔候補領域における顔器官の位置と変換画像における基準位置との間の差分が閾値以内であると判定した場合(S1302でYes)、処理はS1005に進む。判定部304は、顔候補領域における顔器官の位置と変換画像における基準位置との間の差分が閾値以内ではないと判定した場合(S1302でNo)、処理は終了する。
 図14は、第2実施形態に係る、画像処理の流れを説明するフローチャートである。S1000~S1007までの処理は、第1実施形態と同様であるので説明を省略する。処理の開始時に変数i=0とする。なお、変数iの数字は、変換画像から人物の顔領域を検出した回数を表すものとする。
 S1401で制御部1102は、変数iに1を足し、処理はS1402に進む。
 S1402で判定部304は、変数iが閾値以上であるか否かを判定する。制御部1102は、変数iが閾値以上であると判定した場合(S1401でYes)、処理はS1007に進む。判定部304は、変数iが閾値以上ではないと判定した場合(S1401でNo)、処理はS1403に進む。
 S1403で制御部1102は、S1004で生成した変換画像から1つ顔候補領域を検出し、処理はS1002に進む。ここで、制御部1102は、顔候補領域に対する判定条件を厳しく設定する場合、S1402における閾値を「2」以上の値に設定する。顔候補領域に対する判定条件は、閾値の値が大きいほど厳しい設定であることを表す。一方で、制御部1102は、顔候補領域に対する判定条件を緩く設定する場合、S1402における閾値を「1」に設定する。
 図15は、第2実施形態に係る、画像処理の流れを説明するフローチャートである。S1000、S1003~S1007までの処理は、第1実施形態と同様であるので説明を省略する。
 S1501で顔領域検出部300は、画像から検出した顔候補領域の尤度を算出する。
 S1502で顔器官検出部301は、顔候補領域から検出した顔器官位置の尤度を算出する。
 S1503で制御部1102は、用途入力部1101から受信した画像データの用途に基づいて、顔候補領域に対する判定条件を厳しく設定するか否かを判定する。制御部1102は、顔候補領域に対する判定条件を厳しく設定すると判定した場合(S1503でYes)、処理はS1004に進む。制御部1102は、顔候補領域に対する判定条件を厳しく設定しないと判定した場合(S1503でNo)、処理はS1504に進む。
 図16は、第2実施形態に係る、画像処理の流れを説明するフローチャートである。S1000~S1007までの処理は、第1実施形態と同様であるので説明を省略する。
 S1601で制御部1102は、用途入力部1101から受信した画像データの用途に基づいて、顔候補領域に対する判定条件を厳しく設定するか否かを判定する。制御部1102は、顔候補領域に対する判定条件を厳しく設定すると判定した場合(S1601でYes)、処理はS1002に進む。制御部1102は、顔候補領域に対する判定条件を厳しく設定しないと判定した場合(S1601でNo)、処理はS1007に進む。
 図17は、第2実施形態に係る、画像処理の流れを説明するフローチャートである。S1000~S1007までの処理は、第1実施形態と同様であるので説明を省略する。
 S1701で制御部1102は、用途入力部1101から受信した画像データの用途に基づいて、顔候補領域に対する判定条件を厳しく設定するか否かを判定する。制御部1102は、顔候補領域に対する判定条件を厳しく設定すると判定した場合(S1701でYes)、処理はS1702に進む。制御部1102は、顔候補領域に対する判定条件を厳しく設定しないと判定した場合(S1701でNo)、処理はS1007に進む。
 S1702で判定部304は、S1006で検出した変換画像の顔領域の大きさが閾値以上であるか否かを判定する。判定部304は、S1006で検出した変換画像の顔領域の大きさが閾値以上であると判定した場合(S1702でYes)、処理はS1007に進む。判定部304は、S1006で検出した変換画像の顔領域の大きさが閾値以上ではないと判定した場合(S1702でNo)、処理は終了する。
 図18は、第2実施形態に係る、画像処理の流れを説明するフローチャートである。S1000~S1007までの処理は、第1実施形態と同様であるので説明を省略する。
 S1801で制御部1102は、用途入力部1101から受信した画像データの用途に基づいて、顔候補領域に対する判定条件を厳しく設定するか否かを判定する。制御部1102は、顔候補領域に対する判定条件を厳しく設定すると判定した場合(S1801でYes)、処理はS1802に進む。制御部1102は、顔候補領域に対する判定条件を厳しく設定しないと判定した場合(S1801でNo)、処理はS1007に進む。
 S1802で顔器官検出部301は、S1006で検出した変換画像の顔領域から顔器官位置を検出し、処理はS1803に進む。
 S1803で判定部304は、変換画像の顔領域における顔器官の位置と変換画像における基準位置との間の差分が閾値以内であるか否かを判定する。判定部304は、変換画像の顔画像領域における顔器官の位置と変換画像における基準位置との間の差分が閾値以内である場合(S1803でYes)、処理はS1007に進む。判定部304は、変換画像の顔画像領域における顔器官の位置と基準位置との間の差分が閾値以内ではない場合(S1803でNo)、処理は終了する。
 以上の通り、第2実施形態によれば、画像の用途に基づいて顔候補領域に対する判定条件を変更することにより、画像の用途に応じた品質の部分画像を生成できる。
 (第3実施形態)
 第3実施形態は、画像の顔候補領域における顔器官位置に基づいて画像に対し幾何的な変換(例えば、アフィン変換)を行う。第3実施形態は、変換画像から顔領域を検出した結果に基づいて、顔候補領域を示す情報を顔の領域を示す情報として出力するか否かを判定する。また、第3実施形態は、部分画像の用途に応じて、部分画像の登録、認証、又は学習の処理を行う。以下、第3実施形態は、第1及び第2実施形態との差分について説明する。
 図19は、第3実施形態に係る、画像処理装置の機能構成の一例を示すブロック図である。
 画像処理装置110は、特徴抽出部1901、特徴照合部1902、登録部1903、認証部1904、学習部1905、及び氏名入力部1906を備える。
 (画像の用途が登録である場合)
 以下、用途入力部1101からの入力が登録である場合における上記各部の機能について説明する。
 特徴抽出部1901は、判定部304により変換画像から顔領域が検出されたと判定された場合、生成部302から部分画像を受信する。次に、特徴抽出部1901は、部分画像から特徴を抽出する。例えば、特徴抽出部1901は、部分画像の特徴として数値ベクトルを部分画像から抽出する。なお、部分画像の特徴は、数値ベクトルに限られず、別の特徴であっても良い。そして、特徴抽出部1901は、部分画像から抽出した特徴を、登録部1903に送信する。
 登録部1903は、特徴抽出部1901から受信した部分画像の特徴を、記憶部207等のリストに登録する。また、登録部1903は、記憶部207等のリストに登録した特徴に対応する氏名を氏名入力部1906から受信し、記憶部207等のリストに登録する。
 氏名入力部1906は、登録部1903によって登録された部分画像の特徴に対応する氏名を入力するユーザ・インターフェース(UI)を備える。ユーザは、画像処理装置110に入力した部分画像に写る人物の名前を、氏名入力部1906を用いて入力する。
 (画像の用途が認証である場合)
 以下、用途入力部1101からの入力が認証である場合における上記各部の機能について説明する。
 特徴抽出部1901は、判定部304により変換画像から顔領域が検出されたと判定された場合、生成部302から部分画像を受信する。次に、特徴抽出部1901は、部分画像から特徴を抽出する。例えば、特徴抽出部1901は、部分画像の特徴として数値ベクトルを、部分画像から抽出する。なお、部分画像の特徴は、数値ベクトルに限られず、登録部1903に登録済みの特徴と同じ形式を備える特徴であっても良い。
 特徴照合部1902は、特徴抽出部1901から受信した部分画像の特徴と、登録部1903に登録済みの部分画像の特徴と、を照合する。特徴照合部1902は、照合結果を認証部1904に送信する。ここで、特徴照合部1902は、部分画像から抽出された特徴と、登録部1903に登録済みの特徴と、の差分を算出する。例えば、差分は、2つの数値ベクトルのコサイン類似度、L1距離、及びL2距離等である。
 認証部1904は、特徴照合部1902から照合結果として部分画像の特徴の差分を受信する。次に、認証部1904は、部分画像の特徴の差分のうち最も小さい差分が閾値以内である場合、最も小さい差分に対応する部分画像に写る人物の名前を認証結果として出力する。一方で、認証部1904は、受信した部分画像の特徴の差分のうち最も小さい差分が閾値以内ではない場合、「該当人物なし」を示す認証結果を出力する。
 (画像の用途が学習である場合)
 以下、用途入力部1101からの入力が学習である場合における上記各部の機能について説明する。
 氏名入力部1906は、登録部1903によって登録された部分画像の特徴に対応する氏名を入力するユーザ・インターフェース(UI)を備える。ユーザは、画像処理装置110に入力した画像に写る人物の名前を、氏名入力部1906を用いて入力する。
 判定部304は、変換画像から顔領域が検出されたと判定した場合、部分画像を学習部1905に送信する。さらに、判定部304は、部分画像に写る人物の氏名を氏名入力部1906から受信し、部分画像と部分画像に写る人物の氏名とを学習部1905に送信する。
 学習部1905は、判定部304から受信した部分画像と部分画像に写る人物の氏名とを学習する。例えば、学習部1905は、部分画像から特徴を抽出するDNNであるが、これに限らず、例えば、部分画像から顔を検出するためのDNNであっても良い。
 以上の通り、第3実施形態によれば、部分画像の用途に応じて、部分画像の登録、認証、又は学習の処理を制御できる。
 (その他の実施例)
 本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
 本願は、2022年3月30日提出の日本国特許出願特願2022-057091、2022年12月28日提出の日本国特許出願特願2022-212106を基礎として優先権を主張するものであり、その記載内容の全てを、ここに援用する。
 発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。

Claims (25)

  1.  画像から第一の顔検出器を用いて顔の候補領域を検出する検出手段と、
     前記顔の候補領域として検出された第一の領域の画像から、顔器官検出器を用いて顔器官の位置を取得する取得手段と、
     前記第一の領域の画像を、前記顔器官の位置に基づいて変換した変換画像を生成する生成手段と、
     前記変換画像から第二の顔検出器を用いて顔を検出した検出結果に基づいて、前記第一の領域の画像を出力するか否かを制御する制御手段と、
    を備えることを特徴とする画像処理装置。
  2.  前記第一の顔検出器は、前記第二の顔検出器とは異なるニューラルネットワークで構成される、
    ことを特徴とする請求項1に記載の画像処理装置。
  3.  前記第一の顔検出器は、人物の顔が写る画像を用いて学習されたニューラルネットワークであり、
     前記顔器官検出器は、前記第一の領域の画像を用いて学習されたニューラルネットワークであり、
     前記第二の顔検出器は、前記変換画像を用いて学習されたニューラルネットワークである、
    ことを特徴とする請求項1に記載の画像処理装置。
  4.  前記第一の顔検出器は、前記第二の顔検出器よりもニューラルネットワークの規模が小さく、かつ正検出率の低いニューラルネットワークであり、
     前記第二の顔検出器は、前記第一の顔検出器よりもニューラルネットワークの規模が大きく、かつ正検出率の高いニューラルネットワークである、
    ことを特徴とする請求項2に記載の画像処理装置。
  5.  前記第一の顔検出器は、前記第二の顔検出器と同一のニューラルネットワークで構成される、
    ことを特徴とする請求項1に記載の画像処理装置。
  6.  前記制御手段は、前記変換画像から前記顔が検出された場合、前記第一の領域の画像を顔画像として出力する、
    ことを特徴とする請求項1に記載の画像処理装置。
  7.  前記制御手段は、前記変換画像から前記顔が検出されなかった場合、前記第一の領域の画像を顔画像として出力することを抑制する、
    ことを特徴とする請求項6に記載の画像処理装置。
  8.  前記生成手段は、前記第一の領域の画像から検出された前記顔器官の位置と、前記変換画像において前記顔器官の位置を規定した基準位置と、の差分に基づいて、前記第一の領域の画像を変換した変換画像を生成する、
    ことを特徴とする請求項1に記載の画像処理装置。
  9.  前記画像の用途を入力する入力手段と、
     前記画像の用途に基づいて、前記第一の領域の画像から前記顔器官の位置を検出する条件、前記変換画像から前記顔を検出する条件、前記第一の領域の画像から検出された前記顔器官の位置に基づいて変換した前記変換画像を生成する条件、及び前記第一の領域の画像を出力する条件のうち少なくともいずれかを変更する変更手段と、
    を備えることを特徴とする請求項1に記載の画像処理装置。
  10.  前記制御手段は、前記第一の領域の画像から前記顔器官の位置を検出する条件が前記変更手段によって変更される場合、前記画像の外側にはみ出している前記第一の領域の部分が前記第一の領域に占める割合が閾値以下であるか否かに基づいて、前記第一の領域の画像から前記顔器官の位置を検出するか否かを判定する、
    ことを特徴とする請求項9に記載の画像処理装置。
  11.  前記制御手段は、前記変換画像から前記顔を検出する条件が前記変更手段によって変更される場合、前記第一の領域の画像から検出された前記顔器官の位置と、前記変換画像における顔器官の位置を規定した基準位置と、の差分が閾値以下であるか否かに基づいて、前記変換画像から前記顔を検出するか否かを判定する、
    ことを特徴とする請求項9に記載の画像処理装置。
  12.  前記制御手段は、前記第一の領域を示す情報を前記顔の領域を示す情報として出力する条件が前記変更手段によって変更される場合、前記変換画像から前記顔を検出した回数が閾値以上であるか否かに基づいて、前記第一の領域の画像を出力するか否かを判定する、
    ことを特徴とする請求項11に記載の画像処理装置。
  13.  前記制御手段は、前記第一の領域で検出された前記顔器官の位置に基づいて変換した前記変換画像を生成する条件が前記変更手段によって変更されない場合、前記第一の領域の尤度が閾値以下であるか否か、及び、前記第一の領域で検出された前記顔器官の位置の尤度が閾値以下であるか否かに基づいて、前記第一の領域の画像から検出された前記顔器官の位置に基づいて変換した前記変換画像を生成するか否かを判定する、
    ことを特徴とする請求項9に記載の画像処理装置。
  14.  前記制御手段は、前記第一の領域の画像から前記顔器官の位置を検出する条件が前記変更手段によって変更される場合、前記第一の領域の画像から前記顔器官の位置を検出すると判定する、
    ことを特徴とする請求項9に記載の画像処理装置。
  15.  前記制御手段は、前記第一の領域を示す情報を顔の領域を示す情報として出力する条件が前記変更手段によって変更される場合、前記変換画像から検出された前記顔の大きさが閾値以上であるか否かに基づいて、前記第一の領域の画像を出力するか否かを判定する、
    ことを特徴とする請求項9に記載の画像処理装置。
  16.  前記制御手段は、前記第一の領域を示す情報を顔の領域を示す情報として出力する条件が前記変更手段によって変更される場合、前記変換画像から顔の候補領域として検出された第一の領域における顔器官の位置と、前記変換画像において前記顔器官の位置を規定した基準位置と、の差分が閾値以下であるか否かに基づいて、前記第一の領域の画像を出力するか否かを判定する、
    ことを特徴とする請求項9に記載の画像処理装置。
  17.  前記変換画像から前記顔が検出された場合、前記変換画像から特徴を抽出する抽出手段と、
     前記変換画像の特徴と、前記変換画像の特徴に対応する人物の名前と、を登録する登録手段と、
     前記抽出手段によって抽出された前記変換画像の特徴と、前記登録手段に登録された前記変換画像の特徴と、の照合結果に基づいて前記変換画像内の人物の名前を出力する出力手段と、
    を備えることを特徴とする請求項1に記載の画像処理装置。
  18.  前記変換画像の用途は、画像を学習するモデルに対し前記変換画像を学習させる学習と、前記変換画像の特徴と前記変換画像の特徴に対応する人物の名前を登録する登録と、前記変換画像内の人物の名前を出力する認証と、のうち少なくともいずれかを含む
    ことを特徴とする請求項9に記載の画像処理装置。
  19.  前記変換画像の特徴と、前記変換画像の特徴に対応する人物の名前と、を登録する登録手段と、
     前記変換画像から抽出された前記変換画像の特徴と、前記登録手段に登録された前記変換画像の特徴と、の照合結果に基づいて前記変換画像内の人物の名前を出力する出力手段と、を備え、
     前記登録手段は、前記変換画像の用途が前記登録である場合、前記変換画像から抽出された前記変換画像の特徴を登録する、
    ことを特徴とする請求項18に記載の画像処理装置。
  20.  前記出力手段は、前記変換画像の用途が認証であり、かつ、前記変換画像から抽出された前記変換画像の特徴と、前記登録手段に登録された前記変換画像の特徴と、の差分のうち最も小さい差分が閾値以内である場合、前記最も小さい差分に対応する人物の名前を出力する、
    ことを特徴とする請求項19に記載の画像処理装置。
  21.  前記変換画像の用途が学習である場合、前記変換画像を学習する学習手段を備える、
    ことを特徴とする請求項18に記載の画像処理装置。
  22.  前記学習手段は、前記第一の領域の画像に基づいて前記第二の顔検出器を学習する、
    ことを特徴とする請求項21に記載の画像処理装置。
  23.  前記学習手段は、さらに
     前記画像から顔の候補領域を検出する第1検出手段と、
     前記顔の候補領域から顔器官の位置を検出する第2検出手段と、
     前記変換画像から前記顔を検出する第3検出手段と、
    を備えることを特徴とする請求項21に記載の画像処理装置。
  24.  画像処理装置が実行する画像処理方法であって、
     画像から第一の顔検出器を用いて顔の候補領域を検出する検出工程と、
     前記顔の候補領域として検出された第一の領域の画像から、顔器官検出器を用いて顔器官の位置を取得する取得工程と、
     前記第一の領域の画像を、前記顔器官の位置に基づいて変換した変換画像を生成する生成工程と、
     前記変換画像から第二の顔検出器を用いて顔を検出した検出結果に基づいて、前記第一の領域の画像を出力するか否かを制御する制御工程と、
    を備えることを特徴とする画像処理方法。
  25.  コンピュータを、請求項1から23のうちいずれか一項に記載の画像処理装置の各手段として機能させるためのプログラム。
PCT/JP2023/007942 2022-03-30 2023-03-03 画像処理装置、画像処理方法、及びプログラム WO2023189195A1 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2022-057091 2022-03-30
JP2022057091 2022-03-30
JP2022212106A JP2023152671A (ja) 2022-03-30 2022-12-28 画像処理装置、画像処理方法、及びプログラム
JP2022-212106 2022-12-28

Publications (1)

Publication Number Publication Date
WO2023189195A1 true WO2023189195A1 (ja) 2023-10-05

Family

ID=88201186

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/007942 WO2023189195A1 (ja) 2022-03-30 2023-03-03 画像処理装置、画像処理方法、及びプログラム

Country Status (1)

Country Link
WO (1) WO2023189195A1 (ja)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001167110A (ja) * 1999-12-08 2001-06-22 Matsushita Electric Ind Co Ltd 画像検索方法及びその装置
JP2001195582A (ja) * 2000-01-12 2001-07-19 Mixed Reality Systems Laboratory Inc 画像検出装置、画像検出方法、立体表示装置、表示コントローラ、立体表示システムおよびプログラム記憶媒体
JP2001331804A (ja) * 2000-05-18 2001-11-30 Victor Co Of Japan Ltd 画像領域検出装置及び方法
JP2004046567A (ja) * 2002-07-12 2004-02-12 Minolta Co Ltd 画像照会用情報構築方法および画像照会方法
JP2008197763A (ja) * 2007-02-09 2008-08-28 Fujifilm Corp 撮影装置および方法並びにプログラム
JP2008197762A (ja) * 2007-02-09 2008-08-28 Fujifilm Corp 撮影装置および方法並びにプログラム
JP2008199146A (ja) * 2007-02-09 2008-08-28 Fujifilm Corp 撮影装置および方法並びにプログラム
JP2008305342A (ja) * 2007-06-11 2008-12-18 Sony Corp 画像処理装置、画像表示装置、撮像装置、これらの処理方法およびプログラム
WO2010044214A1 (ja) * 2008-10-14 2010-04-22 パナソニック株式会社 顔認識装置および顔認識方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001167110A (ja) * 1999-12-08 2001-06-22 Matsushita Electric Ind Co Ltd 画像検索方法及びその装置
JP2001195582A (ja) * 2000-01-12 2001-07-19 Mixed Reality Systems Laboratory Inc 画像検出装置、画像検出方法、立体表示装置、表示コントローラ、立体表示システムおよびプログラム記憶媒体
JP2001331804A (ja) * 2000-05-18 2001-11-30 Victor Co Of Japan Ltd 画像領域検出装置及び方法
JP2004046567A (ja) * 2002-07-12 2004-02-12 Minolta Co Ltd 画像照会用情報構築方法および画像照会方法
JP2008197763A (ja) * 2007-02-09 2008-08-28 Fujifilm Corp 撮影装置および方法並びにプログラム
JP2008197762A (ja) * 2007-02-09 2008-08-28 Fujifilm Corp 撮影装置および方法並びにプログラム
JP2008199146A (ja) * 2007-02-09 2008-08-28 Fujifilm Corp 撮影装置および方法並びにプログラム
JP2008305342A (ja) * 2007-06-11 2008-12-18 Sony Corp 画像処理装置、画像表示装置、撮像装置、これらの処理方法およびプログラム
WO2010044214A1 (ja) * 2008-10-14 2010-04-22 パナソニック株式会社 顔認識装置および顔認識方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
RANJAN RAJEEV; PATEL VISHAL M.; CHELLAPPA RAMA: "HyperFace: A Deep Multi-Task Learning Framework for Face Detection, Landmark Localization, Pose Estimation, and Gender Recognition", IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, IEEE COMPUTER SOCIETY., USA, vol. 41, no. 1, 1 January 2019 (2019-01-01), USA , pages 121 - 135, XP011703713, ISSN: 0162-8828, DOI: 10.1109/TPAMI.2017.2781233 *

Similar Documents

Publication Publication Date Title
US11644898B2 (en) Eye tracking method and system
US10949649B2 (en) Real-time tracking of facial features in unconstrained video
JP6798183B2 (ja) 画像解析装置、画像解析方法およびプログラム
US11928800B2 (en) Image coordinate system transformation method and apparatus, device, and storage medium
WO2022156626A1 (zh) 一种图像的视线矫正方法、装置、电子设备、计算机可读存储介质及计算机程序产品
JP2018148367A (ja) 画像処理装置、画像処理システム、画像処理方法、及びプログラム
CN111062263A (zh) 手部姿态估计的方法、设备、计算机设备和存储介质
WO2022052782A1 (zh) 图像的处理方法及相关设备
JP2021174554A (ja) 画像深度確定方法及び生き物認識方法、回路、装置、記憶媒体
JP2018120283A (ja) 情報処理装置、情報処理方法及びプログラム
US10600202B2 (en) Information processing device and method, and program
CN111566700A (zh) 用于借助多任务学习确定对象在对象的周围环境中的姿势的方法和控制设备
CN111582155A (zh) 活体检测方法、装置、计算机设备和存储介质
KR20120020711A (ko) 물체 인식 시스템 및 그 물체 인식 방법
JP6202938B2 (ja) 画像認識装置および画像認識方法
CN112699784A (zh) 一种人脸朝向估计方法、装置、电子设备及存储介质
GB2589178A (en) Cross-domain metric learning system and method
WO2023189195A1 (ja) 画像処理装置、画像処理方法、及びプログラム
CN113610969B (zh) 一种三维人体模型生成方法、装置、电子设备及存储介质
JP2023152671A (ja) 画像処理装置、画像処理方法、及びプログラム
CN115471863A (zh) 三维姿态的获取方法、模型训练方法和相关设备
KR20220055072A (ko) 딥러닝을 이용한 실내 위치 측위 방법
CN111767940A (zh) 目标物体识别方法、装置、设备和存储介质
JP2018200175A (ja) 情報処理装置、情報処理方法及びプログラム
JP7369247B2 (ja) 情報処理装置、情報処理方法およびプログラム

Legal Events

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

Ref document number: 23779224

Country of ref document: EP

Kind code of ref document: A1