Face recognition intelligent footpath terminal system applied to scenic spot
By applying convolutional neural networks and convolutional pose estimation models to the scenic walkway terminal system, key points of the brow ridge are identified and analyzed, and a vertical motion analysis model is constructed. This solves the problem of data instability caused by changes in lighting and pose, and achieves higher consistency in dynamic judgment and accuracy in passenger flow identification.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-12
- Publication Date
- 2026-03-13
AI Technical Summary
Existing facial recognition systems in scenic walkways suffer from unstable tracking of local facial structures over time due to lighting fluctuations, walking vibrations, and occlusions. This makes it difficult to form a continuous and comparable data chain, and statistical results are significantly affected by instantaneous images. Long-term operation leads to data fluctuations and slow management feedback, making it difficult to support the needs of refined analysis.
A face detection model based on convolutional neural networks is used to filter face regions with a clarity greater than a threshold. A convolutional pose estimation model is used to identify key points of the brow ridge. A vertical motion analysis model is constructed to calculate vertical velocity and acceleration, generate motion intensity periodic data, and upload it to the backend server via wireless communication.
Under conditions of fluctuating lighting and changing posture, stable analysis of subtle local facial movements was achieved, improving the consistency of dynamic behavioral feature determination and the accuracy and continuity of passenger flow recognition, and mitigating the statistical bias and judgment lag caused by dynamic environmental interference.
Smart Images

Figure CN121661695A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of computer vision technology, and in particular to a smart walkway terminal system for facial recognition applied in scenic areas. Background Technology
[0002] The field of computer vision technology involves acquiring scene images using imaging devices and automatically analyzing visual content through core processes such as feature extraction, target recognition, pose analysis, and behavior determination. This field relies on steps such as image acquisition, brightness and color correction, edge and texture feature extraction, sample-based target recognition training, position tracking of people or objects in image sequences, and facial feature comparison based on key points to build a complete visual understanding system, thereby forming a systematic processing capability for scene content.
[0003] Among them, the traditional facial recognition smart trail terminal system applied in scenic areas refers to the terminal configuration that uses facial information to verify the identity of tourists, count the flow of tourists and manage access in the scenic trail environment. It relies on fixed camera devices to collect the facial images of tourists, and then compares the visible features such as the eye area, brow bone contour, nose bridge shape, mouth position and overall facial proportions to confirm the identity. At the same time, it uses the display terminal or card reader installed on the trail to complete the information prompts and permission verification, and completes the tourist access management by relying on the preset access information comparison method, manual inspection method or simple facial feature template comparison method.
[0004] The existing walkway scenarios rely on single-frame facial comparison and manual verification for passage and statistics. The images become blurred and obscured due to fluctuations in lighting and walking vibrations. The local facial structures lack stable tracking in the time dimension, making it difficult to form a continuous and comparable data chain. There is a lack of quantitative basis for changes in people's state. The statistical results are significantly affected by instantaneous images, and the judgment is prone to deviating from the true rhythm. Long-term operation results in data fluctuations and slow management feedback, making it difficult to support the needs of refined analysis. Summary of the Invention
[0005] To address the technical problems of existing walkway systems that rely on single-frame facial comparison and manual verification for passage and statistics, such as image blurring and occlusion due to lighting fluctuations and walking vibrations, lack of stable tracking of facial structures over time, difficulty in forming continuous and comparable data chains, lack of quantitative basis for changes in personnel status, significant interference from instantaneous images in statistical results, easy deviation from true rhythms in judgments, and long-term data fluctuations and slow management feedback, making it difficult to support the needs of refined analysis, this invention provides a facial recognition intelligent walkway terminal system for scenic areas. The technical solution is as follows:
[0006] On the one hand, a facial recognition smart trail terminal system for use in scenic areas is provided, the system comprising:
[0007] The face image acquisition module acquires continuous face image data through cameras along the trail, uses a face detection model based on convolutional neural networks to filter face regions with a clarity greater than a clarity threshold, outputs a face image sequence, and transmits it to the feature point localization module.
[0008] The feature point localization module calls the face image sequence, identifies the key points of the brow ridge in the sequence through the convolutional pose estimation model, extracts the vertical coordinate information of each frame, filters the brow ridge displacement sequence through displacement change, outputs the vertical coordinates and displacement sequence, and transmits them to the vertical motion analysis module.
[0009] The vertical motion analysis module calculates the frame-by-frame vertical velocity based on the vertical coordinates and displacement sequence, performs rate difference on adjacent peaks, and constructs a vertical kinetic energy matrix by combining the mean of the previous period and the facial quality coefficient, derives the temporal vertical acceleration, outputs the instantaneous vertical acceleration sequence, and transmits it to the energy consumption determination module.
[0010] The energy consumption determination module divides the instantaneous vertical acceleration sequence into intervals by setting segmented acceleration thresholds, and calculates and accumulates segmented vertical energy consumption values by combining displacement change rate, acceleration amplitude and duration to form motion intensity periodic data, which is then transmitted to the data communication module.
[0011] As a further aspect of the present invention, the face image sequence includes face frame content identifiers, face clarity annotations, and face key point integrity annotations; the vertical coordinate and displacement sequence includes brow ridge vertical position parameters, brow ridge displacement amplitude parameters, and brow ridge motion continuity indicators; the instantaneous vertical acceleration sequence includes vertical acceleration value sequences, acceleration change rate indicators, and acceleration stability indicators; and the motion intensity periodic data includes periodic energy consumption parameters, periodic intensity level annotations, and periodic duration parameters.
[0012] As a further aspect of the present invention, the face image acquisition module includes:
[0013] The video frame acquisition submodule acquires video stream data output by cameras along the trail, splits it into a set of continuous image frames, compares adjacent frames based on timestamps and determines the relationship with the frame interval reference value, records the valid interval index information of continuous frames, and generates a frame temporal stability index value.
[0014] The face region filtering submodule locates the frame segment based on the frame temporal stability index value, inputs the pixel grayscale matrix in the frame into the convolution kernel weight matrix to calculate the candidate region score value, compares it with the clarity threshold, filters face regions with a value greater than the threshold and calculates the local pixel gradient magnitude to obtain the coordinates of the clear face region.
[0015] The image sequence generation submodule calls the coordinates of the clear face region to extract the corresponding image block data, rearranges the image blocks in timestamp order and calculates the difference sequence of adjacent pixels, while verifying the continuity of the difference, and merges the image blocks into structured sequence data to generate a face image sequence.
[0016] As a further embodiment of the present invention, the frame interval reference value is obtained based on the average frame output cycle of the camera equipment along the trail under the state of stable output video stream data. The frame interval reference value is obtained by statistically calculating the timestamp difference of no less than three hundred sets of continuous image frames and using the arithmetic mean of the timestamp difference as the frame interval reference value.
[0017] The sharpness threshold is determined based on the distribution of candidate region score values generated by the convolution kernel weight matrix when processing sample image data output by camera devices along the trail. It is achieved by performing convolution operations on the pixel grayscale matrices of no less than 500 sample images and sorting them according to the candidate region score values. The median of the sorting results is taken as the benchmark value of the sharpness threshold.
[0018] As a further aspect of the present invention, the feature point localization module includes:
[0019] The image sequence receiving submodule calls the face image sequence, detects the pixel row and column indices based on the pixel matrix of each frame image, compares the pixel distribution boundary of the brow arch region, calculates the gray values within the boundary, determines the set of continuous pixels, and generates the pixel set of the brow arch region.
[0020] The key point extraction submodule, based on the pixel set of the brow arch region, combined with the spatial response of the convolutional pose estimation model, detects the pixel row and column indices and calculates the row direction statistics, compares the difference between the statistics and the row index, organizes the row coordinates of key points falling into the judgment benchmark interval, and generates the brow arch vertical coordinate sequence.
[0021] The eyebrow arch displacement filtering submodule calculates the coordinate difference between adjacent frame lines based on the eyebrow arch vertical coordinate sequence, determines the relationship between the displacement amount and the displacement judgment benchmark value, filters the displacement amount greater than the benchmark value, sorts the retained displacement amounts, and generates vertical coordinates and displacement sequences.
[0022] As a further aspect of the present invention, the determination benchmark interval is determined based on the average row offset obtained by statistically analyzing the pixel row distribution in the vertical direction of the brow region using sample data used to train the convolutional pose estimation model.
[0023] The displacement determination benchmark value is based on the distribution range of the line coordinates of the eyebrow vertical coordinate sequence within a preset time window. The statistical median value of the change in line coordinates is selected from the distribution range of line coordinates, and the statistical median value is used as the displacement determination benchmark value.
[0024] As a further aspect of the present invention, the vertical motion analysis module includes:
[0025] The vertical velocity extraction submodule performs difference calculations on the displacement difference between adjacent frames and the inter-frame time interval based on the vertical coordinates and displacement sequence, performs ratio calculations on each set of displacement differences to form a continuous velocity sequence, and smooths out abnormal fluctuation points in the sequence to generate inter-frame vertical velocity sequence values.
[0026] The peak point difference construction submodule calls the inter-frame vertical velocity sequence value to detect the peak point position according to the local extreme value condition, performs difference operation on the velocity values of adjacent peak points, and weights them with the mean of the previous period and the facial quality coefficient according to the set weight to generate the vertical kinetic energy matrix.
[0027] The acceleration derivation submodule performs difference operations on adjacent elements in the matrix based on the vertical kinetic energy matrix, performs ratio processing on the difference sequence according to time intervals, performs difference error compensation and smoothing processing on the ratio sequence, and generates an instantaneous vertical acceleration sequence.
[0028] As a further aspect of the present invention, the energy consumption determination module includes:
[0029] The acceleration segmentation submodule obtains sampled values based on the instantaneous vertical acceleration sequence, performs a threshold comparison of sampling points according to the segmented acceleration threshold, marks the start and end times of the interval, and records the change in the interval acceleration amplitude to generate a set of vertical acceleration segmented intervals.
[0030] The segmented acceleration threshold is determined by performing an interval extreme value search on the statistical distribution interval of continuous sampled values in the instantaneous vertical acceleration sequence;
[0031] The energy consumption metering submodule calls the vertical acceleration segmented interval set and obtains the interval displacement change rate. It performs a product calculation based on the acceleration amplitude and displacement change rate and accumulates the energy consumption in combination with the duration to obtain a segmented vertical energy consumption value sequence.
[0032] The periodic integration submodule obtains a continuous energy consumption value stream based on the segmented vertical energy consumption value sequence, records the cumulative changes in energy consumption according to the time sequence, performs energy consumption superposition and periodic division according to a fixed time window, arranges the energy consumption intensity records corresponding to the period by time, and generates motion intensity periodic data.
[0033] As a further embodiment of the present invention, the data communication module receives the motion intensity period data, encapsulates the data using a wireless communication protocol management function, performs data encryption and error detection, sends the data to the background server through a transmission queue, uploads the data, and generates an upload status result.
[0034] The upload status results include data transmission markers, data integrity markers, and encryption encapsulation markers.
[0035] As a further aspect of the present invention, the data communication module includes:
[0036] The data frame access submodule calls the motion intensity period data to arrange it into an original period sequence, performs a difference operation on adjacent time markers in the original period sequence to obtain a time interval sequence, and calls the time interval sequence and amplitude data to perform a ratio conversion to generate an amplitude change ratio.
[0037] The encryption verification processing submodule calls the amplitude change ratio and the time identifier in the periodic sequence to perform bit segment concatenation, performs field length and bit order mapping operation, and then performs parity check bit rearrangement on the mapping result to generate encrypted bit sequence unit value;
[0038] The queue upload management submodule compares the encrypted bit sequence unit value with the server's received time identifier in terms of time order, performs frame encapsulation and transmission control flags on the encrypted bit sequence unit value using the communication protocol management function, performs queue rearrangement according to the order index, and generates the upload status result.
[0039] The beneficial effects of the technical solutions provided in the embodiments of the present invention include at least the following:
[0040] By constructing a temporal vertical velocity difference and vertical kinetic energy model through the displacement of key points on the brow ridge in continuous images, and forming periodic motion intensity data with continuous displacement changes, acceleration amplitude and duration, the system can stably analyze subtle local facial movements, maintain the differential expression of dynamic behavioral features under lighting fluctuations and posture changes, achieve higher dynamic judgment consistency in complex walkway scenarios, enhance the accuracy and continuity of passenger flow recognition and behavior statistics, give uploaded data more clear motion quantification meaning and reliability, and improve the statistical bias and judgment lag problems caused by dynamic environmental interference. Attached Figure Description
[0041] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on the accompanying drawings without creative effort.
[0042] Figure 1 This is a system schematic diagram of the present invention;
[0043] Figure 2 This is a schematic diagram of the system framework of the present invention;
[0044] Figure 3This is a flowchart of the face image acquisition module in this invention;
[0045] Figure 4 This is a flowchart of the feature point localization module in this invention;
[0046] Figure 5 This is a flowchart of the vertical motion analysis module in this invention;
[0047] Figure 6 This is a flowchart of the energy consumption determination module in this invention;
[0048] Figure 7 This is a flowchart of the data communication module in this invention. Detailed Implementation
[0049] The technical solution of the present invention will now be described with reference to the accompanying drawings.
[0050] In embodiments of the present invention, words such as "exemplarily," "for example," etc., are used to indicate that something is an example, illustration, or description. Any embodiment or design described as "exemplary" in the present invention should not be construed as being more preferred or advantageous than other embodiments or designs. Specifically, the use of the word "exemplary" is intended to present the concept in a concrete manner. Furthermore, in embodiments of the present invention, the meaning expressed by "and / or" can be both, or either one.
[0051] In the embodiments of this invention, the terms "image" and "picture" may sometimes be used interchangeably. It should be noted that, without emphasizing the distinction between them, they convey the same meaning. Similarly, the terms "of," "corresponding (relevant)," and "corresponding" may sometimes be used interchangeably. It should be noted that, without emphasizing the distinction between them, they convey the same meaning.
[0052] In this embodiment of the invention, sometimes the subscript such as W1 is written in a non-subscript form such as W1. When the difference is not emphasized, the meaning they express is the same.
[0053] All user-related information involved in this invention (including but not limited to biometric information, identity verification information, behavioral data, device information, and other data that can be used for identity verification and personalized services) is collected and processed with the user's full knowledge and voluntary consent. The collection, storage, and use of all information strictly comply with applicable national and regional laws and regulations, and meet relevant data protection standards and policy requirements. The use of data is limited to purposes necessary for providing the technical services of this invention, and reasonable technical and management measures will be taken to ensure the security and confidentiality of users' personal information in terms of information protection and privacy.
[0054] To make the technical problems, technical solutions and advantages of the present invention clearer, a detailed description will be given below in conjunction with the accompanying drawings and specific embodiments.
[0055] This invention provides a facial recognition smart trail terminal system for use in scenic areas, such as... Figure 1-2 The diagram shown illustrates a facial recognition smart trail terminal system applied in a scenic area. The system includes:
[0056] The face image acquisition module acquires continuous face image data through cameras along the trail, uses a face detection model based on convolutional neural networks to filter face regions with a clarity greater than a clarity threshold, outputs a face image sequence, and transmits it to the feature point localization module.
[0057] The feature point localization module calls the face image sequence, identifies the key points of the brow ridge in the sequence through the convolutional pose estimation model, extracts the vertical coordinate information of each frame, filters the brow ridge displacement sequence through displacement change, outputs the vertical coordinates and displacement sequence, and passes them to the vertical motion analysis module.
[0058] The vertical motion analysis module calculates the frame-by-frame vertical velocity based on vertical coordinates and displacement sequences, performs rate difference on adjacent peaks, and constructs a vertical kinetic energy matrix by combining the mean of the previous period and the facial quality coefficient, derives the temporal vertical acceleration, outputs the instantaneous vertical acceleration sequence, and transmits it to the energy consumption determination module.
[0059] The energy consumption determination module divides the interval based on the instantaneous vertical acceleration sequence by setting segmented acceleration thresholds, and calculates and accumulates the segmented vertical energy consumption values by combining the displacement change rate, acceleration amplitude and duration to form motion intensity periodic data, which is then transmitted to the data communication module.
[0060] The data communication module receives motion intensity period data, encapsulates the data using wireless communication protocol management functions, performs data encryption and error detection, sends the data to the backend server through a transmission queue, and generates an upload status result.
[0061] The face image sequence includes face frame content identifiers, face clarity annotations, and face key point integrity annotations. The vertical coordinate and displacement sequence includes brow ridge vertical position parameters, brow ridge displacement amplitude parameters, and brow ridge motion continuity indicators. The instantaneous vertical acceleration sequence includes vertical acceleration value series, acceleration change rate indicators, and acceleration stability indicators. The motion intensity periodic data includes periodic energy consumption parameters, periodic intensity level annotations, and periodic duration parameters. The upload status result includes data transmission markers, data integrity markers, and encryption encapsulation markers.
[0062] Specifically, such as Figure 2 , 3 As shown, the face image acquisition module includes:
[0063] The video frame acquisition submodule acquires video stream data output by cameras along the trail, splits it into a set of continuous image frames, compares adjacent frames based on timestamps and determines the relationship with the frame interval reference value, records the valid interval index information of continuous frames, and generates a frame temporal stability index value.
[0064] Video stream data was acquired from cameras deployed along the lakeside trail. Taking a camera at the trail entrance as an example, this camera outputs a video stream at a rate of 30 frames per second when operating stably. The video stream was split to obtain a continuous set of image frames. For each frame, its embedded timestamp information was read, accurate to milliseconds. For example, the first frame timestamp was 1000 milliseconds, the second frame timestamp was 1033 milliseconds, and the third frame timestamp was 1067 milliseconds. The timestamp difference between adjacent frames was calculated; for example, the difference between the second and first frames was 33 milliseconds, and the difference between the third and second frames was 34 milliseconds. At least three hundred such continuous sets of image frames were continuously acquired, and the timestamp differences between adjacent frames were recorded. Table 1 lists examples of timestamp differences between some adjacent frames in five consecutive sets of image frames acquired from this camera.
[0065] Table 1: Example Table of Timestamp Difference Between Adjacent Frames
[0066] As shown in Table 1, statistical calculations were performed on all collected timestamp differences. Specifically, the timestamp differences were summed to obtain a total, and then divided by the total number of timestamp differences to obtain the arithmetic mean. For example, if 300 sets of frames were collected, each set containing 299 differences, for a total of 89,700 differences, assuming the total sum of the differences is 2,960,100 milliseconds, then the arithmetic mean is... The arithmetic mean of 33.0 milliseconds is set as the frame interval baseline. Then, the original image frame set is iterated again, and the actual timestamp difference of each pair of adjacent frames is compared with the frame interval baseline of 33.0 milliseconds. If the actual difference is within ±10% of the baseline value (i.e., between 29.7 milliseconds and 36.3 milliseconds), the pair of frames is determined to belong to a stable output interval. The start and end indices of consecutive frames that meet this condition are recorded; for example, frames 10 to 89 constitute a valid consecutive frame interval. The proportion of frames within the valid interval to the total number of frames is calculated; for example, if the total number of valid frames is 850 and the total number of frames is 900, the proportion is... Multiplying this ratio by 100 yields a frame timing stability index of 94.4. This index value is used to characterize the timing stability of a video stream.
[0067] The face region filtering submodule locates frame segments based on the frame temporal stability index value, inputs the pixel grayscale matrix within the frame into the convolution kernel weight matrix to calculate the candidate region score value, compares it with the clarity threshold, filters face regions with a value greater than the threshold and calculates the local pixel gradient magnitude to obtain the coordinates of the clear face region.
[0068] The system receives the frame timing stability index value. When this index value is higher than a preset stability threshold (e.g., 80), the corresponding frame segment is located for further processing. Taking the frame segment corresponding to a frame timing stability index value of 94.4 as an example, image frames within this segment are selected. For each image frame, it is converted into a pixel grayscale matrix. Taking a 1920x1080 resolution image as an example, its grayscale matrix is a 1080-row, 1920-column numerical matrix, where each value represents the grayscale of the corresponding pixel, ranging from 0 (black) to 255 (white). A preset convolution kernel weight matrix is used to perform a convolution operation on this grayscale matrix. This convolution kernel weight matrix is a 3x3 matrix, for example:
[0069] ;
[0070] Used to enhance image edges. The convolution operation process is as follows: Align the center of the convolution kernel with each pixel of the grayscale matrix (except edge pixels), multiply the weight of each position of the convolution kernel by the grayscale value of the corresponding pixel, sum the products, and use the result as the candidate region score value of the center pixel. Perform this operation on the entire image to generate a score value matrix. The process of setting the sharpness threshold is as follows: Pre-collect no less than 500 sample images containing human faces output by cameras along the trail under various lighting and weather conditions. For each sample image, perform the above convolution operation to obtain its score value matrix. Extract the maximum value from each score value matrix as the candidate region score value of the image. Collect and sort the candidate region score values of the sample images. Assume that the 250th (median) value after sorting the 500 score values is 185. Multiply the median value 185 by 110, i.e. 203.5 is set as the baseline value for the sharpness threshold. In the processing of the current frame, pixels with a score value greater than 203.5 in the score matrix are marked as candidate points. Candidate points correspond to areas of high contrast in the image, such as the edges of a face. For each candidate point, its local pixel gradient magnitude is calculated. Specifically, the absolute value of the grayscale difference between the horizontal and vertical adjacent pixels of that pixel is calculated, and the two absolute values are added together to obtain the gradient magnitude. For example, if a candidate point has a grayscale value of 150 and its right-hand pixel has a grayscale value of 90, then the horizontal gradient is... The pixel below it has a grayscale value of 180, so the vertical gradient is... The gradient magnitude is Set a lower limit for the gradient magnitude (e.g., 20), and retain only candidate points with gradient magnitudes greater than this lower limit. Perform region growing or cluster analysis on the retained candidate points to group spatially adjacent points into the same region. Calculate the coordinates of the bounding rectangle of each region, i.e., the minimum and maximum values of the row coordinates and column coordinates of the pixels in that region. These coordinate values are the coordinates of the clear face region. For example, the coordinates of a region might be: row start 200, row end 400, column start 500, column end 700.
[0071] The image sequence generation submodule calls the coordinates of the clear face region to extract the corresponding image block data, rearranges the image blocks according to the timestamp order and calculates the difference sequence of adjacent pixels, while verifying the continuity of the difference, and merges the image blocks into structured sequence data to generate a face image sequence.
[0072] The system retrieves the coordinates of the clear face region from the output. Using the aforementioned coordinates (rows 200-400, columns 500-700) as an example, pixels within the range of row indices 200-400 and column indices 500-700 are extracted from the pixel matrix of the original image frame, forming a 200-row, 200-column image block. This same extraction operation is performed on each frame within the frame segment, resulting in a series of image blocks. The image blocks are then rearranged according to the timestamp order of their corresponding original frames. Subsequently, the pixel difference sequence between adjacent image blocks is calculated. Specifically, the grayscale value of each pixel in the subsequent image block is subtracted from the grayscale value of the corresponding pixel in the previous image block, yielding a difference matrix. For example, if a pixel in the first image block has a grayscale value of 120, and the corresponding pixel in the second image block has a grayscale value of 125, the difference is 5. This operation is performed on each pixel to obtain the difference matrix. The continuity of the difference is verified, i.e., checking whether the non-zero differences in the difference matrix are spatially continuous rather than scattered. For example, by scanning the difference matrix, if the absolute value of the differences in a region (e.g., 10 consecutive rows and 10 columns) is found to be mostly greater than a certain threshold (e.g., 10), then the region is determined to have continuous changes. Image patch data that meets the continuity check are merged into a three-dimensional data structure according to their chronological order. The first dimension of this structure is time (frame number), the second dimension is the row index of the image patch, and the third dimension is the column index of the image patch. Each cell stores the grayscale value of the corresponding pixel. This structured sequence data is the face image sequence. For example, a sequence containing 50 time points, with each image patch being 200x200 pixels, has a data structure dimension of 50x200x200.
[0073] Specifically, such as Figure 2 , 4 As shown, the feature point localization module includes:
[0074] The image sequence receiving submodule calls the face image sequence, detects the pixel row and column indices based on the pixel matrix of each frame image, compares the pixel distribution boundary of the brow arch region, calculates the gray values within the boundary, determines the set of continuous pixels, and generates the pixel set of the brow arch region.
[0075] The output face image sequence is retrieved, and operations are performed based on the pixel matrix of each frame in the sequence. Taking the first frame image block (200x200 pixels) as an example, the row and column indices of the pixels are detected. First, a horizontal grayscale projection analysis is performed on the upper half of the image block (e.g., the range of row indices 50 to 100). The average grayscale value of each row and column of pixels is calculated to obtain a row average grayscale sequence. For example, the average grayscale value of row 50 is 80, the average grayscale value of row 51 is 82, ..., the average grayscale value of row 100 is 110. The pixel distribution boundaries of the brow bone region are compared. The brow bone region appears as a horizontal band with relatively low grayscale values. In the row average grayscale sequence, the inflection point where the grayscale value changes from high to low and then back to high is found. Specifically, the first-order difference of the row average grayscale sequence (the average value of the next row minus the average value of the previous row) is calculated. When the difference value changes from positive to negative, the corresponding row is the upper boundary of the brow bone; when the difference value changes from negative to positive, the corresponding row is the lower boundary of the brow bone. For example, at row 65, the difference value changes from +2 to -1, so row 65 is the upper boundary; at row 85, the difference value changes from -1 to +3, so row 85 is the lower boundary. The grayscale values within the boundaries are calculated. Pixels between the upper boundary row (65) and the lower boundary row (85) are extracted. A continuous pixel set is determined: within this region, a vertical scan is performed column by column. For each column, starting from the upper boundary row and moving downwards, the rows of pixels whose grayscale values first fall below a threshold (e.g., 100) and the rows whose grayscale values again exceed the threshold are recorded. Pixels between these two row indices are considered a continuous pixel set belonging to the brow arch. For example, in column 100, row 70 has a grayscale value of 95 (below 100), and row 80 has a grayscale value of 105 (above 100), so the pixels between row 70 and row 80 are classified as part of the brow arch region pixel set. This process is repeated for each column, ultimately generating the pixel set for the brow arch region in this frame image.
[0076] The key point extraction submodule, based on the pixel set of the brow arch region, combined with the spatial response of the convolutional pose estimation model, detects the pixel row and column indices and calculates the row direction statistics, compares the difference between the statistics and the row index, organizes the row coordinates of key points falling into the judgment benchmark interval, and generates the brow arch vertical coordinate sequence.
[0077] Pixels are grouped by row index, and the number of pixels in each row is counted. For example, row 70 has 15 pixels, row 71 has 18 pixels, ..., row 80 has 12 pixels. The difference between the statistic and the row index is compared, and the row with the largest local statistic is found. For example, row 75 has 25 pixels, its neighboring row 74 has 20 pixels, and row 76 has 22 pixels, so the statistic of row 75 is greater than that of its neighboring rows. The process of setting the benchmark interval is as follows: Based on the sample data used to train the convolutional pose estimation model, the pixel row distribution of the brow region in the vertical direction is statistically analyzed. The row coordinates of the center row of the brow in multiple images are extracted from the sample data, and the average offset of the row coordinates relative to the top of the image block (row index 0) is calculated. For example, after counting 1000 samples, the average offset row is 75 rows. The standard deviation of the row coordinates of the center row of the brow in the sample is then calculated, for example, 5 rows. The average offset is added to and subtracted by one standard deviation, i.e., 75 ± 5 rows, to obtain the benchmark interval [70, 80] rows. In the current frame processing, the row coordinates of keypoints that fall within the judgment reference interval [70, 80] and whose row direction statistics are locally maximum are collected. For example, if the statistic 25 of row 75 is the local maximum within the interval, then row 75 is extracted as the row coordinate of the keypoint. This process is repeated for each frame in the sequence to generate a sequence of keypoint row coordinates arranged in chronological order, i.e., the brow ridge vertical coordinate sequence. For example, the brow ridge vertical coordinate sequence for 5 consecutive frames is [75, 76, 74, 77, 75].
[0078] The eyebrow arch displacement filtering submodule calculates the coordinate difference between adjacent frame lines based on the eyebrow arch vertical coordinate sequence, determines the relationship between the displacement amount and the displacement judgment benchmark value, filters the displacement amount greater than the benchmark value, sorts the retained displacement amounts, and generates vertical coordinates and displacement sequences.
[0079] Calculate the difference in line coordinates between adjacent frames. Taking [75, 76, 74, 77, 75] as an example, the difference is calculated as: second frame minus first frame: ; Third frame minus second frame: ; Fourth frame minus third frame: ; Fifth frame minus fourth frame: Taking the absolute value of the difference, the displacement sequence is obtained as [1, 2, 3, 2] (unit: pixel row). The process of setting the displacement judgment benchmark value is as follows: Calculate based on the row coordinate distribution range of the brow bone vertical coordinate sequence within a preset time window. The preset time window is, for example, the most recent 100 frames. From the brow bone vertical coordinate sequence of these 100 frames, find the maximum and minimum values, and calculate their difference to obtain the row coordinate distribution range. For example, if the maximum row coordinate is 82 and the minimum row coordinate is 70, then the distribution range is... Okay. From the displacement sequence of these 100 frames (composed of the absolute values of the differences between adjacent coordinates), select the statistical median value of the displacement. Sort these 100 displacements by size, and the average of the 50th and 51st displacements is the median value. Assuming that the 50th displacement is 2 and the 51st displacement is 2 after sorting, the median value is 2. Use this statistical median value 2 as the displacement judgment benchmark value. In the current processing, determine the relationship between each displacement and the displacement judgment benchmark value 2. Filter the displacements that are greater than the benchmark value 2. In the sequence [1, 2, 3, 2], the displacement greater than 2 is 3. Sort the retained displacements. Since only one value 3 is retained, the sorted sequence is [3]. At the same time, record the vertical coordinates of the brow ridge in the two frames before and after the displacement. For example, the displacement 3 corresponds to the change from row coordinate 74 in the third frame to row coordinate 77 in the fourth frame. Generate a sequence containing vertical coordinates and corresponding displacements, for example [(74, 77): 3].
[0080] Specifically, such as Figure 2 , 5 As shown, the vertical motion analysis module includes:
[0081] The vertical velocity extraction submodule performs difference calculations on the displacement difference between adjacent frames and the inter-frame time interval based on the vertical coordinates and displacement sequence. It performs ratio calculations on each set of displacement differences to form a continuous velocity sequence and smooths out abnormal fluctuations in the sequence to generate inter-frame vertical velocity sequence values.
[0082] Taking [(74, 77): 3] as an example, this displacement of 3 corresponds to the change in the vertical coordinate of the brow ridge from the third frame to the fourth frame. An inter-frame time interval is required. Assuming the video frame rate is 30 frames per second, the inter-frame time interval is... Seconds. Calculate the ratio of the displacement difference to the inter-frame time interval. If the displacement difference is 3 pixels and the time interval is 0.0333 seconds, then the vertical velocity... Pixels per second. This calculation is performed on the displacement difference of each group of adjacent frames in the sequence, forming a continuous velocity sequence. For example, the velocity sequence calculated based on a longer coordinate sequence is [85, 92, 88, 95, 10, 89, 93] (unit: pixels per second). Abnormal fluctuations in the sequence are smoothed. Abnormal fluctuations are identified by calculating the mean and standard deviation of the entire velocity sequence. Assuming the mean is 88 pixels per second and the standard deviation is 25 pixels per second, a velocity value differing from the mean by more than twice the standard deviation is considered an outlier. For example, the difference between the value 10 and the mean 88 is 78, which is greater than... Therefore, 10 is identified as an outlier. The average of the two normal speed values before and after this outlier is used as the replacement value. For example, if the values before and after outlier 10 are 95 and 89, then the replacement value is... The smoothed velocity sequence is [85, 92, 88, 95, 92, 89, 93]. This sequence is the inter-frame vertical velocity sequence value.
[0083] The peak difference construction submodule calls the inter-frame vertical velocity sequence value to detect the peak position based on the local extremum condition, performs difference operation on the velocity values of adjacent peaks, and weights them with the mean of the previous period and the facial quality coefficient according to the set weight to generate the vertical kinetic energy matrix.
[0084] Taking the smoothed sequence [85, 92, 88, 95, 92, 89, 93] as an example, the peak positions are detected based on the local extremum condition. The condition for a local maximum (peak) is: a velocity value is greater than its preceding velocity value and greater than its following velocity value. The sequence being checked is: 85 (no preceding value, 92 following value, not a peak), 92 (85 preceding value, 88 following value, a peak), 88 (92 preceding value, 95 following value, not a peak), 95 (88 preceding value, 92 following value, a peak), 92 (95 preceding value, 89 following value, not a peak), 89 (92 preceding value, 93 following value, not a peak), 93 (89 preceding value, no following value, not a peak). Therefore, the detected peak positions are the value 92 at index 2 and the value 95 at index 4. A difference operation is performed on the velocity values of adjacent peaks. The first peak value is 92, the second peak value is 95, and the difference is... The mean of the previous cycle refers to the average velocity value within the previous complete motion cycle (i.e., between two adjacent peaks). For example, the velocity values between peak 92 (index 2) and peak 95 (index 4) encompassing indices 2, 3, and 4 [92, 88, 95] have an average value of... The facial quality coefficient is a preset weighting factor used to correct kinetic energy based on the sharpness of the facial image. This coefficient is set with reference to the sharpness score. The average sharpness score of the current image patch is 220 (higher than the sharpness threshold of 203.5). According to the preset mapping rule, a score between 200 and 250 corresponds to a facial quality coefficient of 1.05. The peak velocity difference, the average value of the previous period, and the facial quality coefficient are weighted and summed according to the set weights. The set weights are: peak velocity difference weight... The mean weight of the previous period Facial quality coefficient weighting Calculate the weighted sum: This value is a single element of the vertical kinetic energy matrix. This operation is performed on adjacent peak pairs in the sequence to generate the vertical kinetic energy matrix. For example, if there are multiple peak pairs, a matrix is generated. .
[0085] The acceleration derivation submodule performs difference operations on adjacent elements in the vertical kinetic energy matrix based on the vertical kinetic energy matrix, performs ratio processing on the difference sequence according to time intervals, performs difference error compensation and smoothing processing on the ratio sequence, and generates an instantaneous vertical acceleration sequence.
[0086] Taking a matrix element of 29.405 as an example, assuming the matrix... A sequence arranged in chronological order Perform the difference operation on adjacent elements in the matrix. Calculate... , The difference sequence is obtained. The difference sequences are processed by ratioing them according to time intervals. This time interval is the time difference between adjacent peak pairs. Assume that... and The time interval between the two peak points is Seconds, generated and The time interval between the two peak points is Seconds. The ratio is then processed as follows: , A preliminary acceleration sequence was obtained. The comparison value series is smoothed by differential error compensation. The compensation method is to calculate the moving average of the series. For example, using a moving average with a window size of 2: the first smoothed value is... The original value is 1.81; the second smoothing value is... The smoothed instantaneous vertical acceleration sequence is as follows: The unit is (pixel lines / second) / second, or pixel lines / second².
[0087] Specifically, such as Figure 2 , 6 As shown, the energy consumption determination module includes:
[0088] The acceleration segmentation submodule acquires sampled values based on the instantaneous vertical acceleration sequence, performs threshold comparison of sampling points according to the segmented acceleration threshold, marks the start and end times of the interval, records the changes in the interval acceleration amplitude, and generates a set of vertical acceleration segmented intervals.
[0089] The segmented acceleration threshold is determined by performing an interval extreme value search on the statistical distribution interval of continuous sampled values in the instantaneous vertical acceleration sequence;
[0090] Assume the instantaneous vertical acceleration sequence is (Unit: pixels / second²), sampling interval is 0.1 seconds. The process for determining the segmented acceleration threshold is as follows: Perform interval extreme value retrieval on the statistical distribution interval of continuous sampled values in the instantaneous vertical acceleration sequence. First, divide the acceleration values of the entire sequence into several intervals, for example, with an interval of 0.5: [0, 0.5), [0.5, 1.0), [1.0, 1.5), [1.5, 2.0), [2.0, 2.5]. Count the number of sampled values within each interval. Table 2 lists example statistical results.
[0091] Table 2: Statistical Table of Acceleration Value Interval Distribution
[0092] As shown in Table 2, the sampled values are mainly distributed in the interval [1.0, 2.0). The interval with the most samples is selected as the high-activity interval. In this example, both [1.0, 1.5) and [1.5, 2.0) have two sampled values. These two intervals can be merged into [1.0, 2.0). The extreme values of this high-activity interval are retrieved, with a minimum of 1.0 and a maximum of 2.0. The lower limit of the interval, 1.0, is set as the segmented acceleration threshold. Based on this threshold, a threshold comparison of the sampled points is performed: the acceleration value of each sampled point is compared with the threshold 1.0. Sampled points greater than or equal to 1.0 are marked as high acceleration segments, and those less than 1.0 are marked as low acceleration segments. Scanning sequence: 1.2>1.0 (high), 1.5>1.0 (high), 1.8>1.0 (high), 0.5<1.0 (low), 1.9>1.0 (high), 2.1>1.0 (high), 0.3<1.0 (low), 1.7>1.0 (high). The start and end times of each interval are labeled: the first high acceleration segment starts at the first sampling point (time 0 seconds) and ends at the third sampling point (time 0.2 seconds); the second high acceleration segment starts at the fifth sampling point (time 0.4 seconds) and ends at the sixth sampling point (time 0.5 seconds); the third high acceleration segment starts at the eighth sampling point (time 0.7 seconds). The change in acceleration amplitude within each interval is also recorded; for example, the acceleration value changes from 1.2 to 1.8 within the first high acceleration segment. Generate a set of vertical acceleration segments, for example: {High segment 1: start 0s, end 0.2s, amplitude [1.2, 1.5, 1.8]; Low segment 1: start 0.3s, end 0.3s, amplitude [0.5]; High segment 2: start 0.4s, end 0.5s, amplitude [1.9, 2.1]; Low segment 2: start 0.6s, end 0.6s, amplitude [0.3]; High segment 3: start 0.7s, amplitude [1.7]}.
[0093] The energy consumption metering submodule calls the vertical acceleration segmented interval set and obtains the interval displacement change rate. It performs a product calculation based on the acceleration amplitude and displacement change rate and combines the duration to accumulate energy consumption, thus obtaining a segmented vertical energy consumption value sequence.
[0094] Taking segment 1 as an example: Start time 0s, end time 0.2s, duration 0.2 seconds, amplitude sequence [1.2, 1.5, 1.8] (pixel rows / second²). Obtain the displacement change rate within the interval. The displacement change rate can be estimated by the average velocity change within this time period. Assuming that from the vertical velocity sequence we know that from 0s to 0.2s, the vertical velocity of the brow bone changes from 85 pixel rows / second to 95 pixel rows / second, with an average velocity of... Pixels per second. Therefore, the rate of change of displacement can be approximated as the average velocity, which is 90 pixels per second. The calculation is performed by multiplying the acceleration amplitude and the rate of change of displacement. The average value of the acceleration amplitude for this high segment is taken: Pixels per second². The product is the product of the average acceleration and the rate of change of displacement: (Unit: (pixels / rows / second²) * (pixels / rows / second) = pixels / rows² / second³). This product is then combined with the duration for energy consumption accumulation. The energy consumption value can be expressed as the product of this product and the duration: (pixel rows² / second²). This value represents the vertical energy consumption for this segment. The same calculation is performed for each high acceleration segment. For example, high segment 2: duration 0.1 seconds (0.4s to 0.5s), average acceleration... Assuming the average speed during this period is 92 pixels per second, the product is... Energy consumption is Advanced Level 3: Initial 0.7s, assumed to last until 0.8s, duration 0.1 seconds, acceleration 1.7, average velocity 93, product... Energy consumption Arrange the energy consumption values of the high acceleration segment in chronological order to obtain a segmented vertical energy consumption value sequence. (Unit: pixel rows² / second²).
[0095] The periodic integration submodule obtains a continuous energy consumption value stream based on the segmented vertical energy consumption value sequence, records the cumulative changes in energy consumption according to the time sequence, performs energy consumption superposition and periodic division according to a fixed time window, arranges the energy consumption intensity records corresponding to the period by time, and generates motion intensity periodic data.
[0096] The segmented energy consumption values are inserted onto the time axis according to their occurrence time points. For time points with no energy consumption value, the energy consumption is recorded as 0. For example, on the 0-1 second time axis, the energy consumption for 0-0.2 seconds is 27, for 0.4-0.5 seconds it is 18.4, for 0.7-0.8 seconds it is 15.81, and for the remaining time points it is 0. The cumulative energy consumption changes are recorded according to the time sequence. That is, the total cumulative energy consumption is calculated from the starting point of time to each time point. Energy consumption is superimposed and periodically divided according to a fixed time window. The fixed time window is set to 1 second, for example. The time axis is divided into consecutive 1-second windows: 0-1 second, 1-2 seconds, ... The total energy consumption within each time window is calculated. For the 0-1 second window, the total energy consumption is... For a 1-2 second window, subsequent data is needed; assuming the total energy consumption within this window is 45.3, the total energy consumption of each time window is taken as the energy intensity of that cycle. The energy intensity records corresponding to each cycle are arranged by time to generate motion intensity cycle data. For example, the motion intensity cycle data for the first two cycles is... .
[0097] Specifically, such as Figure 2 , 7 As shown, the data communication module includes:
[0098] The data frame access submodule calls the motion intensity period data to arrange it into an original period sequence, performs a difference operation on adjacent time markers in the original period sequence to obtain a time interval sequence, and calls the time interval sequence and amplitude data to perform a ratio conversion to generate an amplitude change ratio.
[0099] Assume the exercise intensity periodic data is a time-ordered sequence. Each value corresponds to an energy consumption intensity within a 1-second cycle. These values are arranged into an original cycle sequence. A difference operation is performed on adjacent time markers in the original cycle sequence to obtain a time interval sequence. Since each cycle is fixed at 1 second, the time interval sequence between adjacent cycles is... (Unit: seconds). This function calls the time interval sequence and amplitude data to perform a proportional conversion. The amplitude data is the periodic energy consumption intensity value. The proportional conversion involves dividing the energy consumption intensity of each cycle by its cycle duration (1 second), which is essentially the energy consumption intensity itself, since the unit is already the amount per "cycle". However, to generate a change ratio, the ratio of energy consumption intensity between adjacent cycles can be calculated. For example, to calculate the ratio of the second cycle to the first cycle: The ratio of the third to the second: The ratio of the fourth to the third: The ratio of the fifth to the fourth: Generate a sequence of amplitude change ratios. .
[0100] The encryption verification processing submodule calls the amplitude change ratio and the time identifier in the periodic sequence to perform bit segment concatenation, performs field length and bit order mapping operation, and then performs parity check bit rearrangement on the mapping result to generate encrypted bit sequence unit value;
[0101] The generated amplitude change ratio sequence and the corresponding time stamps in the period sequence are retrieved. The time stamps can be Unix timestamps indicating the start of each period. For example, the first period starts at 1700000000, the second at 1700000001, the third at 1700000002, the fourth at 1700000003, and the fifth at 1700000004. The amplitude change ratio sequence is as follows: The amplitude change ratio and the time identifier are concatenated using bit fields. First, each ratio is converted to a fixed-length binary representation. For example, multiplying a ratio by 1000 and rounding down, 0.740 becomes 740, which is represented in 16-bit binary as 0000001011100100. The time identifier 1700000000 is represented in 32-bit binary as 01100101001100010011010100000000. The 32-bit time identifier is concatenated with the 16-bit ratio binary to obtain a 48-bit binary string. For example, the first data after concatenation is 01100101001100010011010100000000000001011100100. A field length and bit order mapping operation is then performed. Define a mapping rule, for example, divide a 48-bit binary string into 8 groups of 6 bits each. Then, change the order of these 8 groups according to a pre-defined permutation table. Assuming the permutation table is [3, 7, 1, 5, 2, 8, 4, 6], the original group 3 is moved to position 1, the original group 7 to position 2, ..., and the original group 6 to position 8. Next, perform parity bit rearrangement on the mapping result. For the mapped 48-bit string, calculate a parity bit for every 8 bits (making the number of 1s in those 8 bits even), and append the parity bit to those 8 bits. This way, every 8 bits of data becomes 9 bits (8 data bits + 1 parity bit). Finally, a 54-bit binary sequence unit value is generated.
[0102] The queue upload management submodule calls the encrypted bit sequence unit value and performs time order comparison with the server's received time identifier, uses the communication protocol management function to perform frame encapsulation and send control flags on the encrypted bit sequence unit value, performs queue rearrangement according to the order index, and generates upload status results.
[0103] The generated encrypted bit sequence unit value and the server's received time identifier are called. The server's received time identifier is the current time obtained when preparing to send data, for example, 1700000005. A time sequence comparison is performed: the time identifier encoded in the data unit to be sent (e.g., 1700000000) is compared with the server's current time identifier (1700000005), and the difference is calculated to be 5 seconds. If the difference is within the allowable transmission delay range (e.g., 30 seconds), transmission is allowed. The communication protocol management function is used to perform frame encapsulation and transmission control flag setting on the encrypted bit sequence unit value. The frame encapsulation process is as follows: an 8-bit frame header (e.g., 10101010) is added before the 54-bit data unit, followed by a 16-bit CRC checksum (calculated based on the data content), forming a 78-bit transmission frame. The transmission control flag is set to "ready". Queue rearrangement is performed according to the sequence index. A transmission queue is maintained, with each queue item containing a data unit and its original time identifier. The queue items are sorted in ascending order of time identifier. For example, if the queue already contains data units with timestamps 1700000000, 1700000001, and 1700000002, and a newly arrived data unit with timestamp 1700000003 is inserted at the end of the queue, the data frames are sent sequentially according to the sorted order. An upload status result is generated, for example: "Queue length: 4; Next frame timestamp: 1700000000; Sending status: Ready".
[0104] The above description is merely a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in the present invention should be included within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.
Claims
1. A facial recognition smart trail terminal system for use in scenic areas, characterized in that, The system includes: The face image acquisition module acquires continuous face image data through cameras along the trail, uses a face detection model based on convolutional neural networks to filter face regions with a clarity greater than a clarity threshold, outputs a face image sequence, and transmits it to the feature point localization module. The feature point localization module calls the face image sequence, identifies the key points of the brow ridge in the sequence through the convolutional pose estimation model, extracts the vertical coordinate information of each frame, filters the brow ridge displacement sequence through displacement change, outputs the vertical coordinates and displacement sequence, and transmits them to the vertical motion analysis module. The vertical motion analysis module calculates the frame-by-frame vertical velocity based on the vertical coordinates and displacement sequence, performs rate difference on adjacent peaks, and constructs a vertical kinetic energy matrix by combining the mean of the previous period and the facial quality coefficient, derives the temporal vertical acceleration, outputs the instantaneous vertical acceleration sequence, and transmits it to the energy consumption determination module. The energy consumption determination module divides the instantaneous vertical acceleration sequence into intervals by setting segmented acceleration thresholds, and calculates and accumulates segmented vertical energy consumption values by combining displacement change rate, acceleration amplitude and duration to form motion intensity periodic data, which is then transmitted to the data communication module.
2. The facial recognition intelligent walkway terminal system applied to scenic areas according to claim 1, characterized in that, The face image sequence includes face frame content identifiers, face clarity annotations, and face key point integrity annotations. The vertical coordinate and displacement sequence includes brow ridge vertical position parameters, brow ridge displacement amplitude parameters, and brow ridge motion continuity indicators. The instantaneous vertical acceleration sequence includes vertical acceleration value series, acceleration change rate indicators, and acceleration stability indicators. The motion intensity periodic data includes periodic energy consumption parameters, periodic intensity level annotations, and periodic duration parameters.
3. The facial recognition intelligent walkway terminal system applied to scenic areas according to claim 1, characterized in that, The face image acquisition module includes: The video frame acquisition submodule acquires video stream data output by cameras along the trail, splits it into a set of continuous image frames, compares adjacent frames based on timestamps and determines the relationship with the frame interval reference value, records the valid interval index information of continuous frames, and generates a frame temporal stability index value. The face region filtering submodule locates the frame segment based on the frame temporal stability index value, inputs the pixel grayscale matrix in the frame into the convolution kernel weight matrix to calculate the candidate region score value, compares it with the clarity threshold, filters face regions with a value greater than the threshold and calculates the local pixel gradient magnitude to obtain the coordinates of the clear face region. The image sequence generation submodule calls the coordinates of the clear face region to extract the corresponding image block data, rearranges the image blocks in timestamp order and calculates the difference sequence of adjacent pixels, while verifying the continuity of the difference, and merges the image blocks into structured sequence data to generate a face image sequence.
4. The facial recognition intelligent walkway terminal system applied to scenic areas according to claim 3, characterized in that, The frame interval reference value is obtained based on the average frame output cycle of the camera equipment along the trail under the state of stable output video stream data. It is obtained by statistically calculating the timestamp difference of no less than three hundred sets of continuous image frames and using the arithmetic mean of the timestamp difference as the frame interval reference value. The sharpness threshold is determined based on the distribution of candidate region score values generated by the convolution kernel weight matrix when processing sample image data output by camera devices along the trail. It is achieved by performing convolution operations on the pixel grayscale matrices of no less than 500 sample images and sorting them according to the candidate region score values. The median of the sorting results is taken as the benchmark value of the sharpness threshold.
5. The facial recognition intelligent walkway terminal system applied to scenic areas according to claim 1, characterized in that, The feature point localization module includes: The image sequence receiving submodule calls the face image sequence, detects the pixel row and column indices based on the pixel matrix of each frame image, compares the pixel distribution boundary of the brow arch region, calculates the gray values within the boundary, determines the set of continuous pixels, and generates the pixel set of the brow arch region. The key point extraction submodule, based on the pixel set of the brow arch region, combined with the spatial response of the convolutional pose estimation model, detects the pixel row and column indices and calculates the row direction statistics, compares the difference between the statistics and the row index, organizes the row coordinates of key points falling into the judgment benchmark interval, and generates the brow arch vertical coordinate sequence. The eyebrow arch displacement filtering submodule calculates the coordinate difference between adjacent frame lines based on the eyebrow arch vertical coordinate sequence, determines the relationship between the displacement amount and the displacement judgment benchmark value, filters the displacement amount greater than the benchmark value, sorts the retained displacement amounts, and generates vertical coordinates and displacement sequences.
6. The facial recognition intelligent walkway terminal system applied to scenic areas according to claim 5, characterized in that, The determination benchmark interval is determined based on the average row offset obtained by statistically analyzing the pixel row distribution in the vertical direction of the brow region using sample data used to train the convolutional pose estimation model. The displacement determination benchmark value is based on the distribution range of the line coordinates of the eyebrow vertical coordinate sequence within a preset time window. The statistical median value of the change in line coordinates is selected from the distribution range of line coordinates, and the statistical median value is used as the displacement determination benchmark value.
7. The facial recognition intelligent walkway terminal system applied to scenic areas according to claim 1, characterized in that, The vertical motion analysis module includes: The vertical velocity extraction submodule performs difference calculations on the displacement difference between adjacent frames and the inter-frame time interval based on the vertical coordinates and displacement sequence, performs ratio calculations on each set of displacement differences to form a continuous velocity sequence, and smooths out abnormal fluctuation points in the sequence to generate inter-frame vertical velocity sequence values. The peak point difference construction submodule calls the inter-frame vertical velocity sequence value to detect the peak point position according to the local extreme value condition, performs difference operation on the velocity values of adjacent peak points, and weights them with the mean of the previous period and the facial quality coefficient according to the set weight to generate the vertical kinetic energy matrix. The acceleration derivation submodule performs difference operations on adjacent elements in the matrix based on the vertical kinetic energy matrix, performs ratio processing on the difference sequence according to time intervals, performs difference error compensation and smoothing processing on the ratio sequence, and generates an instantaneous vertical acceleration sequence.
8. The facial recognition intelligent walkway terminal system applied to scenic areas according to claim 1, characterized in that, The energy consumption determination module includes: The acceleration segmentation submodule obtains sampled values based on the instantaneous vertical acceleration sequence, performs a threshold comparison of sampling points according to the segmented acceleration threshold, marks the start and end times of the interval, and records the change in the interval acceleration amplitude to generate a set of vertical acceleration segmented intervals. The energy consumption metering submodule calls the vertical acceleration segmented interval set and obtains the interval displacement change rate. It performs a product calculation based on the acceleration amplitude and displacement change rate and accumulates the energy consumption in combination with the duration to obtain a segmented vertical energy consumption value sequence. The periodic integration submodule obtains a continuous energy consumption value stream based on the segmented vertical energy consumption value sequence, records the cumulative changes in energy consumption according to the time sequence, performs energy consumption superposition and periodic division according to a fixed time window, arranges the energy consumption intensity records corresponding to the period by time, and generates motion intensity periodic data.
9. The facial recognition intelligent walkway terminal system applied to scenic areas according to claim 1, characterized in that, The data communication module receives the exercise intensity cycle data, encapsulates the data using a wireless communication protocol management function, performs data encryption and error detection, sends the data to the backend server through a transmission queue, and generates an upload status result. The upload status results include data transmission markers, data integrity markers, and encryption encapsulation markers.
10. The facial recognition intelligent walkway terminal system applied to scenic areas according to claim 9, characterized in that, The data communication module includes: The data frame access submodule calls the motion intensity period data to arrange it into an original period sequence, performs a difference operation on adjacent time markers in the original period sequence to obtain a time interval sequence, and calls the time interval sequence and amplitude data to perform a ratio conversion to generate an amplitude change ratio. The encryption verification processing submodule calls the amplitude change ratio and the time identifier in the periodic sequence to perform bit segment concatenation, performs field length and bit order mapping operation, and then performs parity check bit rearrangement on the mapping result to generate encrypted bit sequence unit value; The queue upload management submodule compares the encrypted bit sequence unit value with the server's received time identifier in terms of time order, performs frame encapsulation and transmission control flags on the encrypted bit sequence unit value using the communication protocol management function, performs queue rearrangement according to the order index, and generates the upload status result.
Citation Information
Cited By
Warehouse attendance management system based on AI vision
CN121920979A