Local face age estimation method based on multi-channel learning in shielding scene
By using multi-channel learning method in facial age estimation, face data in occlusion scenarios are processed, and the problem of inaccurate age estimation caused by occlusion in the prior art is solved, and accurate age estimation in local occlusion scenarios is achieved.
Patent Information
- Application Number
- CN202510076503.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-17
- Publication Date
- 2025-04-25
- Estimated Expiration
- 2045-01-17
AI Technical Summary
The existing facial age estimation method is inaccurate in occlusion scenarios, resulting in high errors.
The local face age estimation method based on multi-channel learning is adopted, and a partial occlusion face data set is generated by simulating the occlusion scene, and the occlusion detector and an age feature extraction model based on multi-channel learning are trained to extract grid features that are not occluded and damaged, and the final age features are obtained through the feature fusion module.
In the occlusion scenario, the age of the face can be accurately estimated, and the requirements of robustness and accuracy are met, solving the problem of inaccurate age estimation caused by occlusion in the prior art.
Smart Images

Figure CN119888823A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of age estimation, and in particular to a method for estimating the age of a local face based on multi-channel learning in an occluded scene. Background Art
[0002] With the rapid development of mobile Internet technology and artificial intelligence technology, there is a clear trend of younger minors using the Internet, and managing minors' addiction to the Internet is an urgent problem that needs to be solved. Therefore, automatic age estimation through terminals and anti-addiction control of minors on Internet terminals have great social significance for protecting the healthy growth of minors.
[0003] The process of facial age estimation is divided into three stages: image preprocessing, feature extraction, and age estimation. In the image preprocessing stage, the face detection model is used to detect the face and facial key points in the image, and then the face alignment operation is completed based on the key points by affine transformation, thereby unifying the facial posture. In terms of feature extraction, the deep neural network model is mainly used to extract age-related features in the face image. In terms of age estimation, the current age estimation algorithms are divided into four categories: classification-based, regression-based, ordered regression-based, and distribution learning-based.
[0004] Existing facial age estimation methods usually rely on full-face and unobstructed viewing angles, so that accurate age-related features can be extracted in the feature extraction stage. However, when surfing the Internet, minors will use smart terminal devices in different postures such as lying flat and lying on their sides, and their fingers may block the camera while watching videos and playing online games. Therefore, most of the faces that can be captured by smart terminals such as mobile phones and tablets will be partially occluded. The feature extraction model will extract age features based on information such as facial shape, facial texture, skin color, facial spots, skin laxity, hairline and spatial dependency between facial organs. The presence of occlusion will seriously affect the extraction of model features. Therefore, in actual testing, the existing facial age estimation method has extremely unstable high errors in this case. Summary of the invention
[0005] In view of the shortcomings of the prior art, the present invention provides a local face age estimation method based on multi-channel learning in occlusion scenarios to solve the problem of inaccurate age estimation methods in existing age estimation methods under occlusion conditions and achieve accurate age estimation in occlusion scenarios.
[0006] The technical solution of the present invention is:
[0007] The local face age estimation method based on multi-channel learning in occlusion scenes includes the following steps:
[0008] Step 1: Obtain a face age image dataset, and preprocess the face images in the face age image dataset to obtain a preprocessed face age image dataset;
[0009] Step 1.1: Obtain a face age image dataset; the face age image dataset includes a number of face images and corresponding age labels;
[0010] Step 1.2: Input several face images into the face detection model to generate the face bounding box and face key point coordinates of each face image;
[0011] Step 1.3: Set the standard facial key point positions, and perform affine transformation on the facial image within the facial bounding box according to the set standard facial key point positions and the facial key point coordinates generated in step 1.2 to achieve facial image alignment;
[0012] Step 1.4: Adjust the aligned face image to a uniform set size, divide it into n parts in the horizontal and vertical directions, and obtain a face image including n×n grids, that is, the preprocessed face image, and then obtain the preprocessed face age image dataset;
[0013] Step 2: Using a simulated occlusion method, simulating an occlusion scene on the preprocessed face image dataset to generate a partially occluded face dataset; the partially occluded face dataset includes a number of partially occluded face images and their corresponding occlusion labels and age labels;
[0014] Step 2.1: Determine the type of occlusion label according to the number of divided grids, and generate an occlusion template according to the type of occlusion label;
[0015] Specifically: each occlusion tag indicates no occlusion or an occlusion mode, and the occlusion mode includes different numbers of occlusion grids and positions of occlusion grids; each occlusion template corresponds to an occlusion tag, and the grids in the occlusion template are occluded according to the number of occlusion grids and the positions of occlusion grids in the occlusion tag;
[0016] Step 2.2: Use the occluder to randomly occlude the preprocessed face image to generate a partially occluded face image;
[0017] Step 2.3: Determine the occlusion label of each partially occluded face image, and obtain a partially occluded face dataset including a number of partially occluded face images and their corresponding occlusion labels and age labels;
[0018] Specifically, the occlusion area is calculated according to the size of the occluder in the partially occluded face image and the coordinate points covered by the occluder, and 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: Establish an occlusion detector and use the partially occluded face data set to train the occlusion detector to obtain a trained occlusion detector;
[0020] The occlusion detector uses a Resnet18 network to identify the positions of unoccluded grids in the input partially occluded face image;
[0021] Step 4: Crop the partially occluded face images in the partially occluded face dataset into a number of grids according to the divided grids to obtain a cropped partially occluded face dataset;
[0022] Step 5: Establish an age feature extraction model based on multi-channel learning, and use the cropped partially occluded face data set to train the age feature extraction model based on multi-channel learning to obtain a 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 channel corresponds to a grid obtained by cropping the input partially occluded face image, and 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, using SC Layer to replace 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 unobstructed grid, and then use the long short-term memory network LSTM 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, which is used to obtain an age estimation value based on the final age feature;
[0028] Furthermore, during the training process, the k channels corresponding to the unoccluded grids in the feature extraction module calculate the CrossEntropy-Mean loss function and back-propagate, while the channels corresponding to the occluded grids are not updated;
[0029] The k channels corresponding to the unoccluded grid are expressed as:
[0030]
[0031] in, Represents the set of channels corresponding to the unoccluded mesh, Indicates the number of channels corresponding to the unoccluded grids in the set, c g Indicates the gth channel, occ g Indicates the occlusion of the grid block corresponding to the g-th channel. 0 indicates no occlusion, 1 indicates occlusion, g indicates the channel number, c indicates the p represents the channel corresponding to the pth unobstructed grid, where p represents the number of the unobstructed grid;
[0032] The channel corresponding to the occluded grid is expressed as:
[0033]
[0034] in, A collection of channels corresponding to the occluded grid;
[0035] The CrossEntropy-Mean loss function is:
[0036] L=L c +λ1L m (3)
[0037] Among them, L is the CrossEntropy-Mean loss function value, L c is the cross entropy loss, L m is the average loss, λ1 is the weight value;
[0038] The calculation formula of the cross entropy loss is:
[0039]
[0040]
[0041] Among them, y q,j Indicates whether the true age label of the qth sample is j. If it is j, then y q,j is 1, otherwise it is 0, q is the sample number, j is the age label, L is the number of age label categories, p q,j represents the probability that the age of the qth sample is j, z q,j represents the score of the qth sample on the jth age label;
[0042] The average loss, which represents the difference between the mean of the age distribution and the true age, is calculated as follows:
[0043]
[0044] Where N is the number of samples, m q Predict the mean of the age distribution for the qth sample, y q is the age label value of the qth sample;
[0045] The loss function of the feature extraction module adopts the loss function of the weight sharing strategy:
[0046]
[0047] Among them, L total represents the loss function of the feature extraction module, For channel c p The cross entropy loss is For channel c p The average loss of channel c p The difference between the mean of the predicted age distribution and the true age.
[0048] Step 6: Use the trained occlusion detector and the trained multi-channel learning-based age feature extraction model to estimate the age of the partially occluded face image to obtain an estimated age value;
[0049] Step 6.1: Divide the partially occluded face image to be tested into grids, and use the trained occlusion detector to determine the positions of unoccluded grids in the partially occluded face image to be tested;
[0050] Step 6.2: The partially occluded face image to be tested is cropped according to the divided grids, and based on the grids obtained after cropping and the positions of the determined unoccluded grids, the age estimation value is obtained using the trained multi-channel learning-based age feature extraction model.
[0051] Compared with the prior art, the beneficial effects of the present invention are:
[0052] The method for estimating the age of a local face based on multi-channel learning in an occlusion scene proposed by the present invention uses a simulated occlusion method to generate a partially occluded face image and a corresponding occlusion label based on a face age image data set, trains an occlusion detector to detect the grid with occlusion, proposes an age feature extraction model based on multi-channel learning, divides the image to be tested into grids, inputs it into a feature extraction module, and extracts the features of each grid. Combined with the occlusion detector result, a feature fusion module is used to fuse the features of the grids that are not destroyed by occlusion to obtain the final age feature, and then obtain the estimated age value. In practical applications, the present invention can not only accurately estimate the age of a complete face, but also accurately estimate the age of a face in the presence of partial occlusion, meeting the robustness and accuracy requirements of the face age estimation task in the partial occlusion scene. The problem of inaccurate age estimation caused by partial occlusion in the prior art is solved, and accurate identification of minors is provided for the anti-addiction control of minors on Internet terminals. In addition, each channel of the present invention can adopt a parameter sharing method for model training, and the overall model parameters are not increased compared with the existing age estimation model. BRIEF DESCRIPTION OF THE DRAWINGS
[0053] Figure 1 It is an overall framework diagram of a method for estimating the age of a local face based on multi-channel learning in an occlusion scenario in an embodiment of the present invention;
[0054] Figure 2 This is a schematic diagram of a shielding label in an embodiment of the present invention;
[0055] Figure 3 A schematic diagram of a partially blocked face image in an embodiment of the present invention;
[0056] Figure 4 This is a visualization diagram of the recognition result of the occlusion detector in an embodiment of the present invention;
[0057] Figure 5 This is a diagram showing the effect of meshing a face image in an embodiment of the present invention;
[0058] Figure 6 Schematic diagram of the structure of the SC-SE-ResNeXt50 model in an embodiment of the present invention;
[0059] Figure 7 1 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 DESCRIPTION
[0061] The present invention is described in detail below with reference to the accompanying drawings and embodiments.
[0062] A local face age estimation method based on multi-channel learning in occluded scenes, such as Figure 1 As shown, the following steps are included:
[0063] Step 1: Obtain a face age image dataset, and preprocess the face images in the face age image dataset to obtain a preprocessed face age image dataset;
[0064] Step 1.1: Obtain a dataset of face age images;
[0065] The face age image dataset includes a number of face images and corresponding age labels;
[0066] In this implementation, a public age estimation dataset is used;
[0067] Step 1.2: Input several face images into the face detection model to generate the face bounding box and face key point coordinates of each face image;
[0068] Step 1.3: Set the standard facial key point positions, and perform affine transformation on the facial image within the facial bounding box according to the set standard facial key point positions and the facial key point coordinates generated in step 1.2 to achieve facial image alignment;
[0069] Step 1.4: Adjust the aligned face image to a uniform set size, divide it into n parts in the horizontal and vertical directions, and obtain a face image including n×n grids, that is, the preprocessed face image, and then obtain the preprocessed face age image dataset;
[0070] In this embodiment, the size is set to 256×256, and the side length of each grid block is 256 / n when the grid is divided, and the face image including n×n grids is finally obtained;
[0071] Step 2: Using a simulated occlusion method, simulating an occlusion scene on the preprocessed face image dataset to generate a partially occluded face dataset; the partially occluded face dataset includes a number of partially occluded face images and their corresponding occlusion labels and age labels;
[0072] Step 2.1: Determine the type of occlusion label according to the number of divided grids, and generate an occlusion template according to the type of occlusion label;
[0073] Specifically: each occlusion tag indicates no occlusion or an occlusion mode, and the occlusion mode includes different numbers of occlusion grids and positions of occlusion grids; each occlusion template corresponds to an occlusion tag, and the grids in the occlusion template are occluded according to the number of occlusion grids and the positions of occlusion grids in the occlusion tag;
[0074] In this embodiment, a total of n×n grid blocks are divided, so there is a situation where 1 grid block is blocked, 2 grid blocks are blocked, ..., n×n grid blocks are blocked, and there is no blockage. n×n However, when n>=3, there are too many occlusion categories. n×n The rest of the default occlusions are rectangular blocks, divided into (n×(n+1) / 2) 2 +1 category, the types of occlusion labels for the partially occluded face dataset are as follows Figure 2 As shown, an occlusion template is then generated for each occlusion situation. There are as many occlusion templates as there are occlusion labels. The pixel value of the occluded grid is set to 1, and the pixel value of the unoccluded grid is set to 0.
[0075] Step 2.2: Use the occluder to randomly occlude the preprocessed face image to generate a partially occluded face image;
[0076] In this implementation, an occlusion dataset is used, which includes occlusion images such as masks, eyes, and mobile phones. The size of the occlusion images in the occlusion dataset is generally much smaller than 256. Then, a value is randomly selected from (1-5), multiplied by the side length of the occlusion image, and then a coordinate point is randomly selected on the pre-processed face image, and the scaled occlusion image is overlaid to form a partially occluded face image. Finally, according to this method, a large number of partially occluded face images are formed, such as Figure 3 As shown;
[0077] Step 2.3: Determine the occlusion label of each partially occluded face image, and obtain a partially occluded face dataset including a number of partially occluded face images and their corresponding occlusion labels and age labels;
[0078] Specifically, the occlusion area is calculated according to the size of the occluder in the partially occluded face image and the coordinate points covered by the occluder, and 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: Establish an occlusion detector and use the partially occluded face data set to train the occlusion detector to obtain a trained occlusion detector;
[0080] The occlusion detector uses a Resnet18 network to identify the positions of unoccluded grids 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, in order to reduce model parameters, the Resnet18 network is used as the occlusion detector. The number of categories in the last 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 of the occlusion detector are visualized, such as Figure 4 As shown in the figure, the first and third columns are the images to be tested, the second and fourth columns are the visualization of the occlusion detection results, and the dark grid blocks represent the occlusion grids.
[0082] Step 4: Crop the partially occluded face images in the partially occluded face dataset into a number of grids according to the divided grids to obtain a cropped partially occluded face dataset;
[0083] In this embodiment, the cropped partially occluded face image is as follows: Figure 5 As shown;
[0084] Step 5: Establish an age feature extraction model based on multi-channel learning, and use the cropped partially occluded face data set to train the age feature extraction model based on multi-channel learning to obtain a 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 channel corresponds to a grid obtained by cropping the input partially occluded face image, and each channel is used to extract features from the corresponding grid to obtain local age features; each channel adopts the SC-SE-ResNeXt50 model;
[0087] The SC-SE-ResNeXt50 model is a lightweight model obtained by replacing 3×3 convolution with 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 weight parameters. The choice between the model parameter quantity and the age estimation accuracy can be made according to the specific application scenario. Figure 6 As shown in the figure, the overall structure of the SC-SE-ResNeXt50 model consists of five convolutional layers and one linear layer. Layer1, layer2, layer3, and layer4 are composed of multiple blocks, and the structure of each block is as follows Figure 7As shown, the channel attention SE module is Figure 8 shown.
[0089] In order to make the model lightweight enough, SC Layer is used instead of 3×3 convolution. SC Layer is composed of a 1×1 convolution layer and a spatial shift operation stacked together. In SC Layer, a 1×1 convolution is first performed to obtain feature f, and then feature f is spatially shifted.
[0090] Split the feature f evenly into m groups along the channel dimension, resulting in m thinner tensors Among them, f i is the i-th tensor after feature f segmentation, C latent is the number of channels of feature f, H is the height of the segmented tensor, W is the width of the segmented tensor, and i represents the number of the segmented tensor; then the spatial shift operation is performed on these m groups of tensors, and the corresponding offset steps are S={step i =(d hi ·s hi ,d wi ·s wi ,i=1,…,m}, and use the constant zero value as the default fill, where S represents the set of offset steps, step i Represents the offset step of the i-th tensor after segmentation, d h ∈{1,0,-1} and d w ∈{1,0,-1} represents the longitudinal and lateral offset directions respectively, s h and w is the vertical and horizontal stride. Finally, concatenate the m groups of tensors to get the feature f shift .f shift Each pixel feature in contains the local features around 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 the training process, the k channels corresponding to the unoccluded grids in the feature extraction module calculate the CrossEntropy-Mean loss function and back-propagate, and the channels corresponding to the occluded grids are not updated;
[0093] The k channels corresponding to the unoccluded grid are expressed as:
[0094]
[0095] in, Represents the set of channels corresponding to the unoccluded mesh, Indicates the number of channels corresponding to the unoccluded grids in the set, c g Indicates the gth channel, occ g Indicates the occlusion of the grid block corresponding to the g-th channel. 0 indicates no occlusion, 1 indicates occlusion, g indicates the channel number, c indicates the p represents the channel corresponding to the pth unobstructed grid, where p represents the number of the unobstructed grid;
[0096] The channel corresponding to the occluded grid is expressed as:
[0097]
[0098] in, A collection of channels corresponding to the occluded grid;
[0099] The CrossEntropy-Mean loss function is:
[0100] L=L c +λ1L m (3)
[0101] Among them, L is the CrossEntropy-Mean loss function value, L c is the cross entropy loss, L m is the average loss, λ1 is the weight value;
[0102] The calculation formula of the cross entropy loss is:
[0103]
[0104] Among them, y q,j Indicates whether the true age label of the qth sample is j. If it is j, then y q,j is 1, otherwise it is 0, q is the sample number, j is the age label, L is the number of age label categories, p q,j represents the probability that the age of the qth sample is j, z q,j represents the score of the qth sample on the jth age label;
[0105] The average loss, which represents the difference between the mean of the age distribution and the true age, is calculated as follows:
[0106]
[0107] Where N is the number of samples, m q Predict the mean of the age distribution for the qth sample, y q is the age label value of the qth sample;
[0108] The loss function of the feature extraction module adopts the loss function of the weight sharing strategy:
[0109]
[0110] Among them, L total represents the loss function of the feature extraction module, For channel c p The cross entropy loss is For channel c p The average loss of channel c p The difference between the mean of the measured age distribution and the true age.
[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 unobstructed grid, and then use the long short-term memory network LSTM 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, which is used to obtain an age estimation value based on the final age feature;
[0114] Step 6: Use the trained occlusion detector and the trained multi-channel learning-based age feature extraction model to estimate the age of the partially occluded face image to obtain an estimated age value;
[0115] Step 6.1: Divide the partially occluded face image to be tested into grids, and use the trained occlusion detector to determine the positions of unoccluded grids in the partially occluded face image to be tested;
[0116] Step 6.2: The partially occluded face image to be tested is cropped according to the divided grids, and based on the grids obtained after cropping and the positions of the determined unoccluded grids, the age estimation value is obtained using the trained multi-channel learning-based age feature extraction model;
[0117] In this embodiment, an occlusion detector is used to select k grids without occlusion from n×n grids. The local age features extracted from the k grids without occlusion are assigned a weight of 1, and the local age features extracted from the n×nk grids with occlusion are assigned a weight of 0, and then input into the long short-term memory network LSTM for feature fusion to obtain the final age feature, and the final age feature is normalized through the softmax layer, and then the normalized result is multiplied by the age category value to obtain the final age estimation value.
Claims
1. A method for estimating local face age based on multi-channel learning in occlusion scenes, characterized in that: The steps include: Step 1: Obtain a face age image dataset, and preprocess the face images in the face age image dataset to obtain a preprocessed face age image dataset; Step 2: Using a simulated occlusion method, simulating an occlusion scene on the preprocessed face image dataset to generate a partially occluded face dataset; the partially occluded face dataset includes a number of partially occluded face images and their corresponding occlusion labels and age labels; Step 3: Establish an occlusion detector and use the partially occluded face data set to train the occlusion detector to obtain a trained occlusion detector; Step 4: Crop the partially occluded face images in the partially occluded face dataset into a number of grids according to the divided grids to obtain a cropped partially occluded face dataset; Step 5: Establish an age feature extraction model based on multi-channel learning, and use the cropped partially occluded face data set to train the age feature extraction model based on multi-channel learning to obtain a trained age feature extraction model based on multi-channel learning; Step 6: Use the trained occlusion detector and the trained multi-channel learning-based age feature extraction model to estimate the age of the partially occluded face image to obtain an estimated age value.
2. The method for estimating local face age based on multi-channel learning in occlusion scenarios according to claim 1, characterized in that: The step 1 specifically includes: Step 1.1: Obtain a face age image dataset; the face age image dataset includes a number of face images and corresponding age labels; Step 1.2: Input several face images into the face detection model to generate the face bounding box and face key point coordinates of each face image; Step 1.3: Set the standard facial key point positions, and perform affine transformation on the facial image within the facial bounding box according to the set standard facial key point positions and the facial key point coordinates generated in step 1.2 to achieve facial image alignment; Step 1.4: Adjust the aligned face image to a uniform set size, divide it into n parts in the horizontal and vertical directions respectively, and obtain a face image including n×n grids, that is, the preprocessed face image, and then obtain the preprocessed face age image dataset.
3. The method for estimating local face age based on multi-channel learning in occlusion scenarios according to claim 1, characterized in that: The step 2 specifically includes: Step 2.1: Determine the type of occlusion label according to the number of divided grids, and generate an occlusion template according to the type of occlusion label; Step 2.2: Use the occluder to randomly occlude the preprocessed face image to generate a partially occluded face image; Step 2.3: Determine the occlusion label of each partially occluded face image, and obtain a partially occluded face dataset including a number of partially occluded face images and their corresponding occlusion labels and age labels.
4. The method for estimating local face age based on multi-channel learning in occlusion scenarios according to claim 3, characterized in that: The specific steps of step 2.1 are as follows: each occlusion label indicates no occlusion or an occlusion method, and the occlusion method includes different numbers of occlusion grids and positions of 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 the positions of occlusion grids in the occlusion label.
5. The method for estimating local face age based on multi-channel learning in occlusion scenarios according to claim 3, characterized in that: The step 2.3 is specifically as follows: according to the size of the occluder in the partially occluded face image and the coordinate points covered by the occluder, the occluded area is calculated, and 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.
6. The method for estimating local face age based on multi-channel learning in occlusion scenarios according to claim 1, characterized in that: The occlusion detector described in step 3 uses a Resnet18 network to identify the positions of unoccluded grids in the input partially occluded face image.
7. The method for estimating local face age based on multi-channel learning in occlusion scenarios according to claim 1, characterized in that: The age feature extraction model based on multi-channel learning in step 5 includes a feature extraction module, a feature fusion module and an age estimation module; The feature extraction module includes a plurality of channels, each channel corresponds to a grid obtained by cropping the input partially occluded face image, and each channel is used to extract features from the corresponding grid to obtain a local age feature; Each channel adopts the SC-SE-ResNeXt50 model; the SC-SE-ResNeXt50 model is based on the SE-ResNeXt50 model, using SC Layer to replace 3×3 convolution; The feature fusion module is used to weight each local age feature obtained by the feature extraction module according to the position of the unobstructed grid, and then use the long short-term memory network LSTM to fuse the local age features to obtain the final age feature; The age estimation module is a softmax layer, which is used to obtain an age estimation value according to the final age feature.
8. The method for estimating local face age based on multi-channel learning in occlusion scenarios according to claim 7, characterized in that: The feature extraction module assigns a weight of 0 to the local age feature corresponding to the occluded grid, and assigns a weight of 1 to the local age feature corresponding to the unoccluded grid.
9. The method for estimating local face age based on multi-channel learning in occlusion scenarios according to claim 7, characterized in that: During the training process, the k channels corresponding to the unoccluded grids in the feature extraction module calculate the CrossEntropy-Mean loss function and back-propagate, and the channels corresponding to the occluded grids are not updated; The k channels corresponding to the unoccluded grid are expressed as: in, Represents the set of channels corresponding to the unoccluded mesh, Indicates the number of channels corresponding to the unoccluded grids in the set, c g Indicates the gth channel, occ g Indicates the occlusion of the grid block corresponding to the g-th channel. 0 indicates no occlusion, 1 indicates occlusion, g indicates the channel number, c indicates the p represents the channel corresponding to the pth unobstructed grid, where p represents the number of the unobstructed grid; The channel corresponding to the occluded grid is expressed as: in, A collection of channels corresponding to the occluded grid; The CrossEntropy-Mean loss function is: L=L c +λ1L m (3) Among them, L is the CrossEntropy-Mean loss function value, L c is the cross entropy loss, L m is the average loss, λ1 is the weight value; The calculation formula of the cross entropy loss is: Among them, y q,j Indicates whether the true age label of the qth sample is j. If it is j, then y q,j is 1, otherwise it is 0, q is the sample number, j is the age label, L is the number of age label categories, p q,j represents the probability that the age of the qth sample is j, z q,j represents the score of the qth sample on the jth age label; The average loss, which represents the difference between the mean of the age distribution and the true age, is calculated as follows: Where N is the number of samples, m q Predict the mean of the age distribution for the qth sample, y q is the age label value of the qth sample; The loss function of the feature extraction module adopts the loss function of the weight sharing strategy: Among them, L total represents the loss function of the feature extraction module, For channel c p The cross entropy loss is For channel c p The average loss of channel c p The difference between the mean of the predicted age distribution and the true age.
10. The method for estimating local face age based on multi-channel learning in occlusion scenarios according to claim 1, characterized in that: The step 6 specifically includes: Step 6.1: Divide the partially occluded face image to be tested into grids, and use the trained occlusion detector to determine the positions of unoccluded grids in the partially occluded face image to be tested; Step 6.2: The partially occluded face image to be tested is cropped according to the divided grids, and based on the grids obtained after cropping and the positions of the determined unoccluded grids, the age estimation value is obtained using the trained multi-channel learning-based age feature extraction model.
Citation Information
Patent Citations
Multi-scale face age estimation method and system embedded with high-order information
CN111814611A
Cascading type face shielding expression recognition method based on multiple tasks
CN112766158A
Methods, apparatus, media and equipment for image recognition
CN114937261A
Face age estimation method and device based on attention mechanism
CN115862119A
Robust shielded face recognition method
CN118982659A