Local face age estimation method based on multi-channel learning in occlusion scenarios

By simulating occlusion to generate facial images and training an occlusion detector and a multi-channel learning model, the problem of inaccurate age estimation in occluded scenarios is solved, and accurate age estimation under partial occlusion is achieved, meeting the needs of minor identity verification.

CN119888823BActive Publication Date: 2026-04-14NORTHEASTERN UNIV CHINA
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-01-17
Publication Date
2026-04-14

AI Technical Summary

Technical Problem

Existing facial age estimation methods are inaccurate in occluded scenarios, making it difficult to identify minors. This is especially true when used on smart terminal devices, where occlusion affects feature extraction and leads to significant errors.

Method used

A local face age estimation method based on multi-channel learning is adopted in occluded scenarios. By simulating occlusion to generate partially occluded face images, an occlusion detector and a multi-channel learning age feature extraction model are trained. The occlusion detector detects occluded grids and fuses the features of unoccluded grids in the feature fusion module to perform accurate age estimation.

Benefits of technology

Accurate age estimation was achieved in partially occluded scenarios, meeting the robustness and accuracy requirements of face age estimation tasks. This provides precise identity verification for the prevention and control of minors' addiction to online games, and the model parameters are not increased compared with existing methods.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119888823B_ABST
    Figure CN119888823B_ABST
Patent Text Reader

Abstract

The application discloses a local face age estimation method based on multi-channel learning in a shielding scene and relates to the technical field of age estimation. The application uses a method of simulating shielding, generates partially shielded face images and corresponding shielding labels based on a face age image dataset, trains a shielding detector to detect grids with shielding, proposes an age feature extraction model based on multi-channel learning, divides a to-be-detected image into grids, inputs the to-be-detected image into a feature extraction module, and extracts features of the grids. In combination with the shielding detector result, a feature fusion module is used to fuse features of the grids that are not damaged by shielding, obtain final age features, and further obtain an estimated age value. The application can accurately estimate the face age under a local shielding condition, meets the robustness and accuracy requirements of a face age estimation task in a local shielding scene, and solves the problem that the age estimation is inaccurate due to local shielding in the prior art.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of age estimation technology, and in particular to a local face age estimation method based on multi-channel learning in occluded scenarios. Background Technology

[0002] With the rapid development of mobile internet and artificial intelligence technologies, the trend of younger minors using the internet is evident, making the control of internet addiction among minors an urgent problem that needs to be addressed. Therefore, automatically estimating the age of minors on internet devices to prevent internet addiction is of great social significance in protecting the healthy growth of minors.

[0003] Facial age estimation involves three stages: image preprocessing, feature extraction, and age estimation. In image preprocessing, a face detection model identifies faces and facial landmarks in the image. Then, affine transformations are performed based on these landmarks to align faces and unify their poses. For feature extraction, deep neural network models are primarily used to extract age-related features from the face image. Regarding age estimation, current algorithms fall into four categories: classification-based, regression-based, ordinal regression-based, and distribution-based learning.

[0004] Current facial age estimation methods typically rely on full-face and unobstructed views to extract accurate age-related features during the feature extraction stage. However, during internet use, minors often employ smart devices in various postures, such as lying flat or on their side, and their fingers may obstruct the camera while watching videos or playing online games. Therefore, most faces captured by smartphones and tablets are partially occluded. Feature extraction models extract age features based on facial shape, texture, skin color, blemishes, skin laxity, hairline, and spatial dependencies between facial features. Occlusion severely impacts feature extraction. Consequently, in practical testing, existing facial age estimation methods exhibit extremely high and unstable errors under these conditions. Summary of the Invention

[0005] To address the shortcomings of existing technologies, this invention provides a local face age estimation method based on multi-channel learning in occluded scenarios, thereby solving the problem of inaccurate age estimation methods in occluded situations and achieving accurate age estimation in occluded scenarios.

[0006] The technical solution of this invention is as follows:

[0007] A local face age estimation method based on multi-channel learning in occluded scenarios includes the following steps:

[0008] Step 1: Obtain the face age image dataset and preprocess the face images in the face age image dataset to obtain the preprocessed face age image dataset.

[0009] Step 1.1: Obtain the face age image dataset; the face age image dataset includes several face images and their corresponding age labels;

[0010] Step 1.2: Input several face images into the face detection model to generate the face bounding box and facial landmark coordinates for each face image;

[0011] Step 1.3: Set the standard facial key point positions, and based on the set standard facial key point positions and the facial key point coordinates generated in Step 1.2, perform an affine transformation on the facial image within the facial bounding box to achieve facial image alignment;

[0012] Step 1.4: Adjust the aligned face images to a uniform set size, and divide them into n parts in both the horizontal and vertical directions to obtain face images with n×n grids, i.e., preprocessed face images, and thus obtain the preprocessed face age image dataset.

[0013] Step 2: Using a simulated occlusion method, an occlusion scenario is simulated on the preprocessed face image dataset to generate a partially occluded face dataset; the partially occluded face dataset includes several partially occluded face images and their corresponding occlusion labels and age labels;

[0014] Step 2.1: Determine the type of occlusion label based on the number of grid divisions, and generate an occlusion template based on the type of occlusion label;

[0015] Specifically: each occlusion label represents no occlusion or an occlusion method, wherein the occlusion method includes different numbers of occlusion grids and occlusion grid positions; each occlusion template corresponds to an occlusion label, and the grids in the occlusion template are occluded according to the number of occlusion grids and occlusion grid positions in the occlusion label;

[0016] Step 2.2: Randomly occlude the preprocessed face image using occluders to generate a partially occluded face image;

[0017] Step 2.3: Determine the occlusion label for each partially occluded face image to obtain a partially occluded face dataset including several partially occluded face images and their corresponding occlusion labels and age labels;

[0018] Specifically, the occlusion area is calculated based on the size of the occlusion object in the partially occluded face image and the coordinate points covered by the occlusion object. Then, the IoU is calculated with each occlusion template, and the occlusion label corresponding to the occlusion template with the largest IoU score is selected as the occlusion label of the partially occluded face image.

[0019] Step 3: Build an occlusion detector and train it using a partially occluded face dataset to obtain a trained occlusion detector;

[0020] The occlusion detector uses a ResNet18 network to identify the location of the unoccluded grid in the input partially occluded face image;

[0021] Step 4: Crop the partially occluded face images in the partially occluded face dataset into several grids according to the divided grid, to obtain the cropped partially occluded face dataset;

[0022] Step 5: Establish an age feature extraction model based on multi-channel learning, and train the age feature extraction model based on multi-channel learning using the cropped partially occluded face dataset to obtain the trained age feature extraction model based on multi-channel learning.

[0023] The age feature extraction model based on multi-channel learning includes a feature extraction module, a feature fusion module, and an age estimation module;

[0024] The feature extraction module includes several channels, each of which corresponds one-to-one with a grid obtained by cropping the partially occluded face image from the input. Each channel is used to extract features from the corresponding grid to obtain local age features. Each channel adopts the SC-SE-ResNeXt50 model. The SC-SE-ResNeXt50 model is based on the SE-ResNeXt50 model and uses an SC layer to replace the 3×3 convolution.

[0025] The feature fusion module is used to weight each local age feature obtained by the feature extraction module according to the position of the unoccluded grid, and then use a Long Short-Term Memory (LSTM) network to fuse the local age features to obtain the final age feature.

[0026] Specifically, the weight of the local age feature corresponding to the occluded grid is assigned to 0, and the weight of the local age feature corresponding to the unoccluded grid is assigned to 1.

[0027] The age estimation module is a softmax layer used to obtain an age estimate based on the final age features;

[0028] Furthermore, during training, the CrossEntropy-Mean loss function is calculated and backpropagated for the k channels corresponding to the unoccluded grids in the feature extraction module, while the channels corresponding to the occluded grids are not updated.

[0029] The k channels corresponding to the unoccluded grid are represented as follows:

[0030]

[0031] in, This represents the set of channels corresponding to the unoccluded grid. c represents the number of channels corresponding to the unoccluded grids in the set. g This represents the g-th channel, occ. g This indicates the occlusion status of the grid block corresponding to the g-th channel, where 0 indicates no occlusion and 1 indicates occlusion. g represents the channel number, and c... p This represents the channel corresponding to the p-th unoccluded grid, where p represents the number of the unoccluded grid.

[0032] The channel corresponding to the occluded mesh is represented as:

[0033]

[0034] in, This represents the set of channels corresponding to the occluded grid.

[0035] The CrossEntropy-Mean loss function is:

[0036] L = L c +λ1L m (3)

[0037] Where L is the CrossEntropy-Mean loss function value, L c For cross-entropy loss, L m The average loss is given by λ1, where λ1 is the weight value.

[0038] The formula for calculating the cross-entropy loss is:

[0039]

[0040]

[0041] Among them, y q,j Let y represent whether the true age label of the q-th sample is j; if it is j, then y q,j If q is 1, otherwise 0; q is the sample number; j is the age label; L is the number of age label categories; p q,j Let z represent the probability that the age of the q-th sample is j. q,j This represents the score of the q-th sample on the j-th age label;

[0042] The average loss represents the difference between the mean of the age distribution and the true age, and is calculated using the following formula:

[0043]

[0044] Where N is the number of samples, m q To predict the mean of the age distribution for the q-th sample, y q Let be the age label value of the q-th sample;

[0045] The loss function of the feature extraction module adopts a weight-sharing strategy:

[0046]

[0047] Among them, L total This represents the loss function of the feature extraction module. For channel c p Cross-entropy loss, For channel c p The average loss of channel c p The difference between the predicted age distribution mean and the actual age.

[0048] Step 6: Use the trained occlusion detector and the trained age feature extraction model based on multi-channel learning to estimate the age of the partially occluded face image to obtain the age estimate.

[0049] Step 6.1: Divide the partially occluded face image to be tested into a grid, and use the trained occlusion detector to determine the position of the unoccluded grid in the partially occluded face image to be tested;

[0050] Step 6.2: Crop the partially occluded face image to be tested according to the divided grid. Based on the obtained grid after cropping and the determined position of the unoccluded grid, use the trained age feature extraction model based on multi-channel learning to obtain the age estimate.

[0051] Compared with the prior art, the beneficial effects of the present invention are as follows:

[0052] This invention proposes a local face age estimation method based on multi-channel learning in occluded scenarios. It uses simulated occlusion to generate partially occluded face images and corresponding occlusion labels based on a face age image dataset. An occlusion detector is trained to detect occluded grids. A multi-channel learning-based age feature extraction model is proposed, dividing the test image into grids and inputting them into a feature extraction module to extract features from each grid. Combining the occlusion detector results, a feature fusion module fuses the features of unoccluded grids to obtain the final age features, thus yielding the estimated age value. In practical applications, this invention can accurately estimate the age of a complete face as well as faces with partial occlusion, meeting the robustness and accuracy requirements of face age estimation in partially occluded scenarios. It solves the problem of inaccurate age estimation due to partial occlusion in existing technologies, providing accurate identification of minors for internet addiction prevention and control. Furthermore, the various channels of this invention can be trained using a parameter-sharing method, with no increase in overall model parameters compared to existing age estimation models. Attached Figure Description

[0053] Figure 1 This is a general framework diagram of a local face age estimation method based on multi-channel learning in an occlusion scenario according to an embodiment of the present invention;

[0054] Figure 2 This is a schematic diagram of the label being obscured in an embodiment of the present invention;

[0055] Figure 3 This is a schematic diagram of a partially obscured face image in an embodiment of the present invention;

[0056] Figure 4 This is a visualization of the occlusion detector recognition results in an embodiment of the present invention;

[0057] Figure 5 This is a diagram illustrating the effect of face image grid division in an embodiment of the present invention.

[0058] Figure 6 This is a schematic diagram of the structure of the SC-SE-ResNeXt50 model in an embodiment of the present invention;

[0059] Figure 7 This is a block structure diagram of SC-SE-ResNeXt50 in an embodiment of the present invention;

[0060] Figure 8 This is a structural diagram of the SE module of SC-SE-ResNeXt50 in an embodiment of the present invention. Detailed Implementation

[0061] The present invention will now be described in detail with reference to the accompanying drawings and embodiments.

[0062] Local face age estimation methods based on multi-channel learning in occluded scenarios, such as Figure 1 As shown, it includes the following steps:

[0063] Step 1: Obtain the face age image dataset and preprocess the face images in the face age image dataset to obtain the preprocessed face age image dataset.

[0064] Step 1.1: Obtain the face age image dataset;

[0065] The facial age image dataset includes several facial images and corresponding age labels;

[0066] This implementation uses a publicly available age estimation dataset;

[0067] Step 1.2: Input several face images into the face detection model to generate the face bounding box and facial landmark coordinates for each face image;

[0068] Step 1.3: Set the standard facial key point positions, and based on the set standard facial key point positions and the facial key point coordinates generated in Step 1.2, perform an affine transformation on the facial image within the facial bounding box to achieve facial image alignment;

[0069] Step 1.4: Adjust the aligned face images to a uniform set size, and divide them into n parts in both the horizontal and vertical directions to obtain face images with n×n grids, i.e., preprocessed face images, and thus obtain the preprocessed face age image dataset.

[0070] In this embodiment, the size is set to 256×256. When dividing the grid, the side length of each grid block is 256 / n, which is rounded up to obtain a face image containing n×n grids.

[0071] Step 2: Using a simulated occlusion method, an occlusion scenario is simulated on the preprocessed face image dataset to generate a partially occluded face dataset; the partially occluded face dataset includes several partially occluded face images and their corresponding occlusion labels and age labels;

[0072] Step 2.1: Determine the type of occlusion label based on the number of grid divisions, and generate an occlusion template based on the type of occlusion label;

[0073] Specifically: each occlusion label represents no occlusion or an occlusion method, wherein the occlusion method includes different numbers of occlusion grids and occlusion grid positions; each occlusion template corresponds to an occlusion label, and the grids in the occlusion template are occluded according to the number of occlusion grids and occlusion grid positions in the occlusion label;

[0074] In this implementation, a total of n×n grid blocks are divided. Therefore, there are cases where one grid block is occluded, two grid blocks are occluded, ..., n×n grid blocks are occluded, and there are no cases where no grid blocks are occluded. Based on the different positions of the occluded grid blocks, they can be divided into 2... n×n There are several cases, but when n>=3, there are too many occlusion categories. Therefore, except when n=2, 23 is used. n×n There are 1 type, and the rest are occluded as rectangular blocks by default, divided into (n×(n+1) / 2) categories. 2 +1 category, occlusion label types for partially occluded face datasets, such as Figure 2 As shown, an occlusion template is then generated for each occlusion situation. The number of occlusion templates is equal to the number of occlusion tags. The pixel values ​​of the occlusion grid are set to 1, and the pixel values ​​of the unoccluded grid are set to 0.

[0075] Step 2.2: Randomly occlude the preprocessed face image using occluders to generate a partially occluded face image;

[0076] This embodiment utilizes an occlusion dataset, which includes images of occlusions such as masks, glasses, and mobile phones. The sizes of these images are generally much smaller than 256. Then, a value is randomly selected from (1-5) and multiplied by the side length of the occlusion image. Next, a coordinate point is randomly selected on the preprocessed face image, and the scaled occlusion image is overlaid on it, forming a partially occluded face image. Finally, following this method, a large number of partially occluded face images are generated, such as... Figure 3 As shown;

[0077] Step 2.3: Determine the occlusion label for each partially occluded face image to obtain a partially occluded face dataset including several partially occluded face images and their corresponding occlusion labels and age labels;

[0078] Specifically, the occlusion area is calculated based on the size of the occlusion object in the partially occluded face image and the coordinate points covered by the occlusion object. Then, the IoU is calculated with each occlusion template, and the occlusion label corresponding to the occlusion template with the largest IoU score is selected as the occlusion label of the partially occluded face image.

[0079] Step 3: Build an occlusion detector and train it using a partially occluded face dataset to obtain a trained occlusion detector;

[0080] The occlusion detector uses a ResNet18 network to identify the location of the unoccluded grid in the input partially occluded face image;

[0081] Since the occlusion detector is a simple classification model and the occlusion classification task is relatively simple, a ResNet18 network is used as the occlusion detector to reduce the number of model parameters. The number of categories in the final classification layer of the occlusion detector is (n×(n+1) / 2). 2 +1, when n=2, use 2 n×n The occlusion detector is trained using the cross-entropy loss function, and the recognition results are visualized, such as... Figure 4 As shown. The first and third columns are the images to be tested, and the second and fourth columns are visualizations of the occlusion detection results, with dark grid blocks representing occlusion grids.

[0082] Step 4: Crop the partially occluded face images in the partially occluded face dataset into several grids according to the divided grid, to obtain the cropped partially occluded face dataset;

[0083] In this embodiment, the cropped image partially obscures the face, as shown below. Figure 5 As shown;

[0084] Step 5: Establish an age feature extraction model based on multi-channel learning, and train the age feature extraction model based on multi-channel learning using the cropped partially occluded face dataset to obtain the trained age feature extraction model based on multi-channel learning.

[0085] The age feature extraction model based on multi-channel learning includes a feature extraction module, a feature fusion module, and an age estimation module;

[0086] The feature extraction module includes several channels, each of which corresponds one-to-one with a grid obtained by cropping the partially occluded face image from the input. Each channel is used to extract features from the corresponding grid to obtain local age features. Each channel uses the SC-SE-ResNeXt50 model.

[0087] The SC-SE-ResNeXt50 model is a lightweight model obtained by replacing the 3×3 convolution with the SC Layer based on the SE-ResNeXt50 model.

[0088] In this embodiment, each channel of the feature extraction module uses the SC-SE-ResNeXt50 model for feature extraction. Each channel can be trained independently or share weights and parameters, allowing for a choice between the number of model parameters and the accuracy of age estimation based on specific application scenarios. For example... Figure 6 As shown, the overall structure of the SC-SE-ResNeXt50 model consists of five convolutional layers and one linear layer. Layers 1, 2, 3, and 4 are composed of multiple blocks, each with the following structure: Figure 7As shown, the channel attention SE module is as follows Figure 8 As shown.

[0089] To make the model lightweight enough, an SC Layer is used instead of a 3×3 convolution. The SC Layer consists of a 1×1 convolutional layer and a spatial shift operation stacked on top of each other. In the SC Layer, a 1×1 convolution is first performed to obtain the feature f, and then the feature f is spatially shifted.

[0090] The feature f is uniformly divided into m groups along the channel dimension, resulting in m thinner tensors. Among them, f i Let C be the i-th tensor after feature f is segmented. latent Let H be the number of channels of feature f, H be the height of the segmented tensor, W be the width of the segmented tensor, and i be the number of the segmented tensor; then, spatial shift operations are performed on these m groups of tensors, with corresponding offset steps of S = {step} i =(d hi ·s hi ,d wi ·s wi For the set of offset steps, i = 1, ..., m, zero constants are used as the default padding, where S represents the set of offset steps. i d represents the offset step size of the i-th tensor after segmentation. h ∈{1,0,-1} and d w ∈{1,0,-1} represents the vertical and horizontal offset directions, respectively, s h and s w This refers to the stride length in both the longitudinal and lateral directions. Finally, the m tensors are concatenated to obtain the feature f. shift f shift Each pixel feature in the data contains local features surrounding it in the channel dimension.

[0091] In this example, S = {(0,1),(0,-1),(1,0),(1,1),(1,-1),(-1,0),(-1,1),(-1,-1)}.

[0092] During training, the CrossEntropy-Mean loss function is calculated and backpropagated for the k channels corresponding to the unoccluded grids in the feature extraction module, while the channels corresponding to the occluded grids are not updated.

[0093] The k channels corresponding to the unoccluded grid are represented as follows:

[0094]

[0095] in, This represents the set of channels corresponding to the unoccluded grid. c represents the number of channels corresponding to the unoccluded grids in the set. g This represents the g-th channel, occ. g This indicates the occlusion status of the grid block corresponding to the g-th channel, where 0 indicates no occlusion and 1 indicates occlusion. g represents the channel number, and c... p This represents the channel corresponding to the p-th unoccluded grid, where p represents the number of the unoccluded grid.

[0096] The channel corresponding to the occluded mesh is represented as:

[0097]

[0098] in, This represents the set of channels corresponding to the occluded grid.

[0099] The CrossEntropy-Mean loss function is:

[0100] L = L c +λ1L m (3)

[0101] Where L is the CrossEntropy-Mean loss function value, L c For cross-entropy loss, L m The average loss is given by λ1, where λ1 is the weight value.

[0102] The formula for calculating the cross-entropy loss is:

[0103]

[0104] Among them, y q,j Let y represent whether the true age label of the q-th sample is j; if it is j, then y q,j If q is 1, otherwise 0; q is the sample number; j is the age label; L is the number of age label categories; p q,j Let z represent the probability that the age of the q-th sample is j. q,j This represents the score of the q-th sample on the j-th age label;

[0105] The average loss represents the difference between the mean of the age distribution and the true age, and is calculated using the following formula:

[0106]

[0107] Where N is the number of samples, m q To predict the mean of the age distribution for the q-th sample, y q Let be the age label value of the q-th sample;

[0108] The loss function of the feature extraction module adopts a weight-sharing strategy:

[0109]

[0110] Among them, L total This represents the loss function of the feature extraction module. For channel c p Cross-entropy loss, For channel c p The average loss of channel c p The difference between the mean of the age distribution and the actual age is measured.

[0111] The feature fusion module is used to weight each local age feature obtained by the feature extraction module according to the position of the unoccluded grid, and then use a Long Short-Term Memory (LSTM) network to fuse the local age features to obtain the final age feature.

[0112] Specifically, the weight of the local age feature corresponding to the occluded grid is assigned to 0, and the weight of the local age feature corresponding to the unoccluded grid is assigned to 1.

[0113] The age estimation module is a softmax layer used to obtain an age estimate based on the final age features;

[0114] Step 6: Use the trained occlusion detector and the trained age feature extraction model based on multi-channel learning to estimate the age of the partially occluded face image to obtain the age estimate.

[0115] Step 6.1: Divide the partially occluded face image to be tested into a grid, and use the trained occlusion detector to determine the position of the unoccluded grid in the partially occluded face image to be tested;

[0116] Step 6.2: Crop the partially occluded face image to be tested according to the divided grid. Based on the obtained grid after cropping and the determined position of the unoccluded grid, use the trained age feature extraction model based on multi-channel learning to obtain the age estimate.

[0117] In this embodiment, an occlusion detector is used to select k unoccluded grids from an n×n grid. The local age features extracted from the k unoccluded grids are assigned a weight of 1, while the local age features extracted from the n×nk occluded grids are assigned a weight of 0. These are then input into a Long Short-Term Memory (LSTM) network for feature fusion to obtain the final age features. The final age features are then normalized using a softmax layer, and the normalized result is multiplied by the age category value to obtain the final age estimate.

Claims

1. A method for local face age estimation based on multi-channel learning in occluded scenarios, characterized in that, Includes the following steps: Step 1: Obtain the face age image dataset and preprocess the face images in the face age image dataset to obtain the preprocessed face age image dataset. Step 1 specifically includes: Step 1.1: Obtain the face age image dataset; the face age image dataset includes several face images and their corresponding age labels; Step 1.2: Input several face images into the face detection model to generate the face bounding box and facial landmark coordinates for each face image; Step 1.3: Set the standard facial key point positions, and based on the set standard facial key point positions and the facial key point coordinates generated in Step 1.2, perform an affine transformation on the facial image within the facial bounding box to achieve facial image alignment; Step 1.4: Adjust the aligned face image to a uniform set size, and divide it into n parts in both the horizontal and vertical directions, resulting in... The face images in the grid are preprocessed, which in turn yields the preprocessed face age image dataset. Step 2: Using a simulated occlusion method, an occlusion scenario is simulated on the preprocessed face image dataset to generate a partially occluded face dataset; the partially occluded face dataset includes several partially occluded face images and their corresponding occlusion labels and age labels; Step 3: Establish an occlusion detector and train it using a partially occluded face dataset to obtain a trained occlusion detector; the occlusion detector uses a ResNet18 network to identify the location of the unoccluded grid in the input partially occluded face image. Step 4: Crop the partially occluded face images in the partially occluded face dataset into several grids according to the divided grid, to obtain the cropped partially occluded face dataset; Step 5: Establish an age feature extraction model based on multi-channel learning, and train the age feature extraction model based on multi-channel learning using the cropped partially occluded face dataset to obtain the trained age feature extraction model based on multi-channel learning. The age feature extraction model based on multi-channel learning includes a feature extraction module, a feature fusion module, and an age estimation module; The feature extraction module includes several channels, each corresponding one-to-one with a grid obtained by cropping the partially occluded face image from the input. Each channel is used to extract features from the corresponding grid to obtain local age features. Each channel uses the SC-SE-ResNeXt50 model. The SC-SE-ResNeXt50 model is based on the SE-ResNeXt50 model, using SC Layer instead of 3.

3. Convolution; The SC Layer includes a 1×1 convolutional layer and a spatial translation operation; The feature extraction module assigns a weight of 0 to the local age feature corresponding to the occluded grid and a weight of 1 to the local age feature corresponding to the unoccluded grid. The feature fusion module is used to weight each local age feature obtained by the feature extraction module according to the position of the unoccluded grid, and then use a Long Short-Term Memory (LSTM) network to fuse the local age features to obtain the final age feature. The age estimation module is a softmax layer used to obtain an age estimate based on the final age features; During training, the CrossEntropy-Mean loss function is calculated and backpropagated for the k channels corresponding to the unoccluded grids in the feature extraction module, while the channels corresponding to the occluded grids are not updated. The k channels corresponding to the unoccluded grid are represented as follows: (1) in, This represents the set of channels corresponding to the unoccluded grid. This indicates the number of channels corresponding to the unoccluded grid in the set. This represents the g-th channel. This indicates the occlusion status of the grid block corresponding to the g-th channel, where 0 indicates no occlusion and 1 indicates occlusion. Indicates the channel number. Indicates the first The channel corresponding to each unobstructed grid. The number indicating the unobstructed grid; The channel corresponding to the occluded mesh is represented as: (2) in, This represents the set of channels corresponding to the occluded grid. The CrossEntropy-Mean loss function is: (3) in, The CrossEntropy-Mean loss function value. For cross-entropy loss, For average loss, These are weight values; The formula for calculating the cross-entropy loss is: (4) (5) in, This indicates whether the true age label of the q-th sample is j; if it is j, then... It is 1 if it is true, otherwise it is 0. For the sample number, For age tags, The number of categories for age tags. Indicates the first The probability that a sample is of age j. This represents the score of the q-th sample on the j-th age label; The average loss represents the difference between the mean of the age distribution and the true age, and is calculated using the following formula: (6) in, For the number of samples, To predict the mean of the age distribution for the q-th sample, Let be the age label value of the q-th sample; The loss function of the feature extraction module adopts a weight-sharing strategy: (7) in, This represents the loss function of the feature extraction module. For channel Cross-entropy loss, For channel The average loss of the channel represents the channel's average loss. The difference between the predicted age distribution mean and the actual age; Step 6: Use the trained occlusion detector and the trained age feature extraction model based on multi-channel learning to estimate the age of the partially occluded face image to obtain the age estimate.

2. The local face age estimation method based on multi-channel learning in occluded scenarios according to claim 1, characterized in that, Step 2 specifically includes: Step 2.1: Determine the type of occlusion label based on the number of grid divisions, and generate an occlusion template based on the type of occlusion label; Step 2.2: Randomly occlude the preprocessed face image using occluders to generate a partially occluded face image; Step 2.3: Determine the occlusion label for each partially occluded face image to obtain a partially occluded face dataset containing several partially occluded face images and their corresponding occlusion labels and age labels.

3. The local face age estimation method based on multi-channel learning in occluded scenarios according to claim 2, characterized in that, Step 2.1 specifically involves: each occlusion label representing no occlusion or an occlusion method, wherein the occlusion method includes different numbers of occlusion grids and positions of the occlusion grids; each occlusion template corresponds to an occlusion label, and the grids in the occlusion template are occluded according to the number of occlusion grids and positions of the occlusion grids in the occlusion label.

4. The local face age estimation method based on multi-channel learning in occluded scenarios according to claim 2, characterized in that, Step 2.3 specifically involves: calculating the occlusion area based on the size of the occlusion object in the partially occluded face image and the coordinate points covered by the occlusion object; then calculating the IoU with each occlusion template; and selecting the occlusion label corresponding to the occlusion template with the highest IoU score as the occlusion label of the partially occluded face image.

5. The local face age estimation method based on multi-channel learning in occluded scenarios according to claim 1, characterized in that, Step 6 specifically includes: Step 6.1: Divide the partially occluded face image to be tested into a grid, and use the trained occlusion detector to determine the position of the unoccluded grid in the partially occluded face image to be tested; Step 6.2: Crop the partially occluded face image to be tested according to the divided grid. Based on the obtained grid after cropping and the determined position of the unoccluded grid, use the trained age feature extraction model based on multi-channel learning to obtain the age estimate.

Citation Information

Patent Citations

  • Cascading type face shielding expression recognition method based on multiple tasks

    CN112766158A