Heating safety temperature control method based on living body detection model and heat storage heater

By using an ultrasonic liveness detection model to obtain the range of breathing and heart rate, the hot air speed of the heater can be adjusted, solving the problem that thermal storage heaters cannot sense the user's status in real time, and achieving safe temperature control and improved comfort.

CN120926490APending Publication Date: 2025-11-11BEIJING FINE & CLEAN ENERGY +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511222551.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-08-29
Publication Date
2025-11-11

AI Technical Summary

Technical Problem

Existing thermal storage heaters cannot detect the presence or activity of users in real time, resulting in the inability to automatically adjust the hot air speed, which may harm nearby users or pets.

Method used

An ultrasound-based liveness detection model is used. By acquiring the respiratory and heart rate ranges, probe ultrasound waves are emitted into the detection area and reflected waves are received. The liveness detection model is constructed and frequency demodulated to determine whether it conforms to the respiratory and heart rate ranges, and the hot air speed of the heater is adjusted accordingly.

Benefits of technology

This technology enables effective detection of living organisms by the heater, avoids damage from high-speed hot air, ensures that the hot air speed matches the condition of the living organism, and improves safety and comfort.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120926490A_ABST
    Figure CN120926490A_ABST
Patent Text Reader

Abstract

The invention discloses a heating safety temperature control method based on a living body detection model and a heat storage heater, and relates to the technical field of safety control. The method comprises the following steps: emitting detection ultrasonic waves with fixed frequency, waveform and phase to a detection area pulse; continuously receiving reflected ultrasonic waves; constructing a living body detection model for performing time slicing on the received reflected ultrasonic waves and dividing the reflected ultrasonic waves into a plurality of reflected ultrasonic wave fragments; frequency demodulation is carried out on each reflected ultrasonic wave segment, and whether demodulated waveforms conforming to the respiratory frequency range and the heartbeat frequency range can be extracted or not is judged; and if yes, continuously obtaining the distance between the heater and the living organism according to the time distribution of the plurality of reflected ultrasonic segments corresponding to the demodulated waveforms conforming to the respiratory frequency range and the heartbeat frequency range, and obtaining the current safe hot air speed of the heater according to a set temperature control rule. Living organisms are prevented from being hurt by high-speed hot air.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of safety control technology, and in particular relates to a heating safety temperature control method and a thermal storage heater based on a live body detection model. Background Technology

[0002] Existing thermal storage heaters mostly use timer or temperature threshold control, which cannot detect the presence or activity of users in real time. Traditional infrared sensors cannot distinguish between living and non-living heat sources, easily leading to false alarms. Ultrasonic solutions are limited by simple distance detection and cannot detect static living targets, also easily leading to false alarms. This means that the hot air speed at the heater's outlet cannot be automatically adjusted, and high-speed hot air may harm nearby users or pets. Summary of the Invention

[0003] The purpose of this invention is to provide a heating safety temperature control method and a thermal storage heater based on a live organism detection model. The method uses an ultrasonic method to effectively detect live organisms in the detection area, avoiding damage to the live organisms by high-speed hot air.

[0004] To solve the above-mentioned technical problems, the present invention is achieved through the following technical solution: This invention provides a heating safety temperature control method based on a liveness detection model, comprising: Obtain the respiratory rate range and heart rate range of the target living organism; The safe hot air velocity at different distances between the heater and the living organism is used as the temperature control rule; It pulses and emits detection ultrasonic waves of fixed frequency, waveform, and phase into the detection area; Continuously receive reflected ultrasonic waves; A liveness detection model was constructed to divide the received reflected ultrasound waves into multiple reflected ultrasound wave segments by time slicing. For each reflected ultrasound segment, frequency demodulation is performed to determine whether a demodulated waveform that conforms to the respiratory rate range and heart rate range can be extracted. If so, the distance between the heater and the living organism is continuously determined based on the time distribution of several reflected ultrasonic segments corresponding to the demodulated waveforms that conform to the respiratory and heart rate ranges, and the current safe hot air speed of the heater is determined according to the set temperature control rules. If not, then continue with liveness detection.

[0005] This invention also discloses a heating safety temperature control method based on a liveness detection model, comprising, Receive the current safe hot air velocity from the heater; If the current hot air velocity at the heater's air outlet is greater than the current safe hot air velocity, then adjust it to the current safe hot air velocity.

[0006] The present invention also discloses a heater, comprising, Heater body: Non-volatile memory is used to store the respiratory rate range and heart rate range of the target living organism, as well as the safe hot air speed between the heater and the living organism at different distances as a temperature control rule. An ultrasonic transducer is used to pulse-emit probe ultrasonic waves of fixed frequency, waveform, and phase into a detection area and continuously receive reflected ultrasonic waves. The liveness detection unit has a built-in liveness detection model, which is used to divide the received reflected ultrasonic waves into multiple reflected ultrasonic wave segments by time slicing. For each reflected ultrasound segment, frequency demodulation is performed to determine whether a demodulated waveform that conforms to the respiratory rate range and heart rate range can be extracted. If so, the distance between the heater and the living organism is continuously determined based on the time distribution of several reflected ultrasonic segments corresponding to the demodulated waveforms that conform to the respiratory and heart rate ranges, and the current safe hot air speed of the heater is determined according to the set temperature control rules. If not, then continue with liveness detection; and, The fan is used to receive the current safe hot air velocity from the heater; If the current hot air velocity at the heater's air outlet is greater than the current safe hot air velocity, then adjust it to the current safe hot air velocity.

[0007] This invention uses a live organism detection model to segment and frequency-modulate reflected ultrasonic waves, thereby obtaining reflected ultrasonic wave segments containing information about living organisms. The temporal distribution of these segments is then analyzed to determine the distance between the heater and the living organism. Finally, based on pre-defined temperature control rules, the current safe hot air speed is determined, and the fan speed is adjusted accordingly.

[0008] Of course, any product implementing this invention does not necessarily need to achieve all of the advantages described above at the same time. Attached Figure Description

[0009] To more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0010] Figure 1 This is a schematic diagram of an embodiment of the heater described in this invention; Figure 2This is a schematic flowchart of a heating safety temperature control method based on a liveness detection model according to an embodiment of the present invention. Figure 3 This is a schematic diagram of the steps of one embodiment of the fan described in the present invention; Figure 4 This is a flowchart illustrating step S5 of the present invention in one embodiment. Figure 1 ; Figure 5 This is a flowchart illustrating step S5 of the present invention in one embodiment. Figure 2 ; Figure 6 This is a schematic diagram illustrating the composition of the extended reflected ultrasonic segment according to an embodiment of the present invention; Figure 7 This is a waveform diagram of ultrasonic wave detection according to an embodiment of the present invention; Figure 8 This is a frequency distribution diagram of the demodulated acoustic wave segment according to an embodiment of the present invention; Figure 9 This is a flowchart illustrating step S6 of the present invention in one embodiment; Figure 10 This is a flowchart illustrating step S7 of the present invention in one embodiment; Figure 11 This is a flowchart illustrating step S75 of the present invention in one embodiment; The attached diagram lists the components represented by each number as follows: 1-Heater body, 2-Non-volatile memory, 3-Ultrasonic transducer, 4-Liveness detection unit, 5-Fan. Detailed Implementation

[0011] To make the objectives, technical solutions, and advantages of this application clearer, the embodiments of this application will be described in further detail below with reference to the accompanying drawings.

[0012] It should be noted that the terms "first," "second," etc., used in this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.

[0013] Please see Figure 1 and Figure 2As shown, the present invention provides a heater, which includes a heater body 1, a non-volatile memory 2, an ultrasonic transducer 3, a liveness detection unit 4, and a fan 5 in terms of functional structure.

[0014] In this scheme, the non-volatile memory 2 stores the respiratory and heart rate ranges of the target living organism, as well as the safe hot air speed at different distances between the heater and the living organism, as temperature control rules. When the heater 1 is working, steps S1 and S2 are executed first to read the information stored in the non-volatile memory 2.

[0015] The heater body 1 is equipped with an ultrasonic transducer 3 for performing step S3, which pulses ultrasonic waves of fixed frequency, waveform, and phase to the detection area. See details. Figure 8 As shown. Step S4 is continuously executed to receive reflected ultrasonic waves. The computing component of the heater body 1 is equipped with a liveness detection unit 4, which contains a built-in liveness detection model. In hardware, the liveness detection unit 4 can be an FPGA chip, and the functional code of the liveness detection model in this solution is programmed into it. When the liveness detection unit 4 runs, it first executes step S5 to divide the received reflected ultrasonic waves into multiple reflected ultrasonic wave segments by time slicing. This is because heaters are usually inexpensive, which limits the use of high-performance FPGA chips for computation due to cost constraints; therefore, conventional identification schemes cannot guarantee the real-time performance of liveness detection.

[0016] To improve the liveness detection response speed of the low-computing-power liveness detection unit 4, this solution divides the received reflected ultrasonic waves into multiple reflected ultrasonic wave segments using time-slicing. Liveness detection is performed on only one reflected ultrasonic wave segment at a time, reducing the computational load. In practical use, users can also set the sensing sensitivity to extract detection intervals from all reflected ultrasonic wave segments. The length of the reflected ultrasonic wave segment also represents the minimum interval for liveness detection.

[0017] It should be noted that the resources required for demodulation and frequency separation calculations used in the subsequent liveness detection operations of this scheme are not linearly related to the amount of data involved in the calculation, but rather grow exponentially with the increase of data volume. Therefore, dividing the received reflected ultrasound waves into multiple reflected ultrasound wave segments by time slicing can effectively reduce the computing power requirements in the implementation of this scheme.

[0018] Please see as follows Figure 4 and Figure 5As shown, since the length of the reflected ultrasonic wave segment also represents the minimum detection interval, the maximum duration of the reflected sound wave segment needs to be limited to ensure the accuracy of liveness detection. First, step S511 can be executed to obtain the maximum movement speed of the target live organism. Next, step S512 can be executed to obtain the set position detection accuracy. Finally, step S513 is executed to use the ratio of the set position detection accuracy to the maximum movement speed of the target live organism as the maximum duration of the reflected sound wave segment.

[0019] Please see Figure 5 and Figure 6 As shown, since the subsequent demodulation and frequency separation steps require a sufficiently long reflected ultrasound segment, to avoid significant errors in liveness detection, the reflected ultrasound segment needs to be appropriately extended. Specifically, S521 is executed first to obtain the maximum values ​​of the target living organism's respiratory and heart rate ranges. S522, for the received reflected ultrasound, along the time axis forward and / or backward, incorporates the reflected ultrasound from adjacent time periods into the extended reflected ultrasound segment. Since the purpose of extending the reflected ultrasound segment in this scheme is to improve the accuracy of subsequent demodulation and frequency separation, rather than simply increasing the segment's length, S523 is also executed to retain the starting time of the original reflected ultrasound segment as the starting time of the extended reflected ultrasound segment. Generally, to ensure sufficient recognition, the duration of the extended reflected ultrasound segment should not be less than the maximum values ​​of the target living organism's respiratory and heart rate cycles.

[0020] It should be noted that extending the reflected ultrasound segments is different from directly increasing the length of each reflected ultrasound segment during the segmentation stage, otherwise it would increase the interval time for liveness detection.

[0021] Please see Figures 7 to 9 As shown, after the reflected ultrasound segments are divided, step S6 can be executed to demodulate the frequency of each reflected ultrasound segment and determine whether a demodulated waveform conforming to the respiratory and heart rate ranges can be extracted. The purpose of demodulating the reflected ultrasound segments is to calculate the vibrations caused by the breathing and heartbeat of the target living organism from the reflected ultrasound, that is, to demodulate the useful information (the vibrations caused by the breathing and heartbeat of the target living organism) from the carrier wave (reflected ultrasound segment).

[0022] For each reflected ultrasonic wave segment, the following steps S61 to S64 are performed. First, step S61 is performed to demodulate the frequency of the reflected ultrasonic wave segment to obtain a demodulated acoustic wave segment. Next, step S62 is performed to perform frequency domain processing on the demodulated acoustic wave segment to obtain the distribution of the demodulated acoustic wave segment at several frequencies, as detailed in [link to details]. Figure 9 As shown, multiple peaks from 50Hz to 150Hz are separated, and a unique peak exists within the human heartbeat range (60-80Hz), indicating that a human heartbeat has been detected. Next, step S63 determines whether the demodulated sound wave segment has a unique distribution across both the respiratory and heartbeat frequency ranges. This is because the airflow range of the heater is relatively small, and the detection range for live organisms is also small, typically containing only one living organism. If so, step S64 can then be executed to confirm that the reflected ultrasonic wave segment can yield a demodulated waveform that conforms to both the respiratory and heartbeat frequency ranges.

[0023] To supplement the explanation of the implementation process of steps S61 to S64 above, source code for some functional modules is provided, with comparative explanations in the comments. To avoid data leakage involving trade secrets, data that does not affect the implementation of the solution has been anonymized, and the same applies below.

[0024] class BioFeatureAnalyzer { private: double sampleRate; / / Sampling rate (Hz) / / Frequency demodulation (orthogonal demodulation method) std::vector <double>frequencyDemodulate(const std::vector <double>&signal, double carrierFreq) { std::vector <double>demodulated. demodulated.reserve(signal.size()); / / Generate orthogonal reference signals std::vector <double>refI(signal.size()); std::vector <double>refQ(signal.size()); for (size_t i = 0; i < signal.size(); ++i) { double t = i / sampleRate; refI[i] = cos(2 * M_PI * carrierFreq * t); refQ[i] = sin(2 * M_PI * carrierFreq * t); } / / Quadrature demodulation std::vector <double>iSignal(signal.size()); std::vector <double>qSignal(signal.size()); for(size_t i = 0; i < signal.size(); ++i) { iSignal[i] = signal[i] * refI[i]; qSignal[i] = signal[i] * refQ[i]; } / / Low-pass filter (moving average) int filterSize = 5; for(size_t i = filterSize; i < signal.size() - filterSize; ++i) { double iSum = 0, qSum = 0; for(int j = -filterSize; j <= filterSize; ++j) { iSum += iSignal[i + j]; qSum += qSignal[i + j]; } / / Calculate instantaneous phase double instPhase = atan2(qSum, iSum); demodulated.push_back(instPhase); } return demodulated; } / / Fast Fourier Transform (FFT) void computeFFT(const std::vector <double>& signal, std::vector <double>& freqBins, std::vector <double>& powerSpectrum) { int N = signal.size(); freqBins.resize(N / 2); powerSpectrum.resize(N / 2); / / Store time-domain signals in complex form std::vector <std::complex <double>> complexSignal(N); for(int i = 0; i < N; ++i) { complexSignal[i] = std::complex <double>(signal[i], 0); } / / Perform FFT fft(complexSignal); / / Calculate the power spectrum for(int k = 0; k < N / 2; ++k) { freqBins[k] = k * sampleRate / N; powerSpectrum[k] = std::norm(complexSignal[k]) / (N * N); } } / / Recursive FFT implementation void fft(std::vector <std::complex <double>>& x) { int N = x.size(); if (N <= 1) return; / / Divide into odd and even terms std::vector <std::complex <double>> even(N / 2); std::vector<std::complex <double>> odd(N / 2); for(int i = 0; i < N / 2; ++i) { even[i] = x[2 * i]; odd[i] = x[2 * i + 1]; } / / Recursive calculation fft(even); fft(odd); / / Merge result for(int k = 0; k < N / 2; ++k) { std::complex <double>t = std::polar(1.0, -2 * M_PI * k / N) * odd[k]; x[k] = even[k] + t; x[k + N / 2] = even[k] - t; } } / / Detect whether there is a unique peak in the target frequency band bool hasUniquePeakInRange(const std::vector <double>& freqBins, const std::vector <double>& powerSpectrum, double minFreq, double maxFreq) { / / Find all peak values ​​within the target frequency band std::vector <int>peakIndices; for(size_t i = 1; i < powerSpectrum.size() - 1; ++i) { if(freqBins[i] < minFreq) continue; if(freqBins[i] > maxFreq) break; / / Peak detection if(powerSpectrum[i] > powerSpectrum[i - 1] && powerSpectrum[i] > powerSpectrum[i + 1]) { peakIndices.push_back(i); } } / / Returns false if there is no peak or more than one peak. if (peakIndices.size() != 1) { return false; } / / Check if the peak power is significant (more than 3 times the average power). double sumPower = 0; int count = 0; for(size_t i = 0; i < powerSpectrum.size(); ++i) { if(freqBins[i] >= minFreq && freqBins[i] <= maxFreq) { sumPower += powerSpectrum[i]; count++; } } double avgPower = sumPower / count; int peakIdx = peakIndices[0]; return powerSpectrum[peakIdx] > 3 * avgPower; } public: BioFeatureAnalyzer(double sr) : sampleRate(sr) {} / / Analyze whether ultrasound fragments contain vital signs bool analyzeBioFeatures(const std::vector <double>& ultrasoundSegment, double carrierFreq) { / / 1. Frequency demodulation auto demodulated = frequencyDemodulate(ultrasoundSegment,carrierFreq); if(demodulated.empty()) { return false; } / / 2. Frequency Domain Analysis std::vector <double>freqBins, powerSpectrum; computeFFT(demodulated, freqBins, powerSpectrum); / / 3. Detect respiratory and heartbeat characteristics bool hasBreath = hasUniquePeakInRange(freqBins, powerSpectrum, BREATH_MIN_FREQ, BREATH_MAX_FREQ); bool hasHeart = hasUniquePeakInRange(freqBins, powerSpectrum, HEART_MIN_FREQ, HEART_MAX_FREQ); return hasBreath && hasHeart; } }; int main() { / / 1. Initialize the analyzer (example sampling rate 100kHz) BioFeatureAnalyzer analyzer(100000.0); / / 2. Example ultrasound clip (obtained from hardware) std::vector <double>simulatedSegment(1000); / / 1000 samples / / 3. Analyze vital signs (set ultrasound frequency to 40kHz) bool isLiving = analyzer.analyzeBioFeatures(simulatedSegment,40000.0); / / 4. Output Results if(isLiving) { std::cout << "Vitality detected (breathing + heartbeat)" << std::endl; } else { std::cout << "No valid life signs detected" << std::endl; } return 0; } This code implements vital sign analysis of ultrasound segments. First, frequency demodulation is performed, using orthogonal demodulation to extract vital sign signals from the carrier signal. I / Q demodulation and low-pass filtering are then used to obtain the baseband signal containing respiratory / heartbeat information. Next, frequency domain analysis is performed, implementing an FFT algorithm to convert the time-domain signal to the frequency domain, calculating the power spectral density, and detecting significant peaks within the target frequency band. Finally, vital sign determination is performed: the presence of unique and significant peaks in the respiratory and heartbeat frequency bands is detected as the basis for determining the presence of a living being. This algorithm provides core technology for non-contact life detection and can be applied to smart homes, medical monitoring, and other fields, especially suitable for integration into systems requiring liveness detection, such as heating and temperature control. In actual deployment, parameters such as the sampling rate and frequency range need to be adjusted according to specific hardware parameters.

[0025] Please continue reading. Figures 1 to 2 As shown, if the judgment result in step S6 is yes, then step S7 is executed to continuously determine the distance between the heater and the living organism based on the time distribution of several reflected ultrasonic wave segments corresponding to the demodulated waveforms that conform to the respiratory and heart rate ranges. Specifically, firstly, the frequency domain processing signal of each reflected ultrasonic wave segment is processed and distributed within the respiratory and heart rate ranges, respectively, as the respiratory and heart rate of the living organism corresponding to that reflected ultrasonic wave segment. Then, the distance between the living organism corresponding to that reflected ultrasonic wave segment and the heater is determined based on the time difference between the start or end time of each reflected ultrasonic wave segment and the corresponding detected ultrasonic wave. Finally, the current safe hot air speed of the heater is determined according to the set temperature control rules.

[0026] Because ultrasonic identification schemes can be interfered with by occasional noise in the environment, appropriate outlier removal is necessary, which means removing some identified live organisms. Removal involves two screening criteria: one is to exclude live organisms that move too fast, and the other is to exclude sporadic, fleeting live organisms, as these are likely caused by environmental noise.

[0027] Please see Figure 10 As shown, in the process of eliminating live organisms that move too fast, step S71 is first executed to classify live organisms whose respiratory and heart rates are consistent as the same live organism based on reflected ultrasound segments. Next, step S72 is executed to calculate the time distribution of each live organism detected within the detection area and its distance from the heater based on the continuously received reflected ultrasound. Next, step S73 is executed to calculate the radial movement speed of each live organism within the detection area based on the time distribution and distance from the heater; here, radial speed refers to the straight-line distance between the live organism and the heater. Next, step S74 is executed to remove the time distribution data and distance data of live organisms with radial movement speeds greater than a set speed value. Finally, step S75 is executed to identify live organisms with sporadic detection times as falsely detected live organisms and remove them.

[0028] Please see Figure 11 As shown, in the process of excluding sporadic live organisms, step S751 can be executed first to define a window period. Based on the time distribution of each live organism detected within the detection area, the cumulative detection duration of each live organism within the window period is calculated. The time distribution of the window period is synchronized with a pulse signal of a detection ultrasound. Next, step S752 can be executed to arrange all the cumulative detection durations within the window period according to their numerical values ​​to obtain a cumulative detection duration sequence. Next, step S753 can be executed to add a minimum cumulative detection duration equal to the duration of a reflected ultrasound segment to the cumulative detection duration sequence. Next, step S754 can be executed to calculate the average of the differences between each cumulative detection duration in the cumulative detection duration sequence and the adjacent cumulative detection duration with the smallest difference, as the floating difference value of the cumulative detection duration sequence. Finally, step S755 can be executed to use the sum of the minimum cumulative detection duration and the floating difference value as the boundary value for sporadic detection. Finally, step S756 can be executed to classify live organisms whose cumulative detection duration within the window period is less than the sporadic detection threshold as falsely detected live organisms.

[0029] To provide supplementary explanation of the implementation process of steps S751 to S756 above, source code of some functional modules is provided, with comparative explanations in the comments.

[0030] #include <iostream> #include <vector> #include <algorithm> #include <numeric> #include <cmath> class DetectionValidator { private: double windowDuration; / / Window duration (seconds) double segmentDuration; / / Duration of ultrasound segment (seconds) / / Calculate the floating difference (the average of adjacent minimum differences) double calculateFluctuation(const std::vector <double>&sortedDurations) { if(sortedDurations.size() < 2) return 0.0; std::vector <double>minDifferences; / / For each duration, find the adjacent duration with the smallest difference. for(size_t i = 0; i < sortedDurations.size(); ++i) { double minDiff = std::numeric_limits <double>::max(); / / Compare with the previous one if(i > 0) { double diff = sortedDurations[i] - sortedDurations[i-1]; if(diff < minDiff) minDiff = diff; } / / Compare with the next one if(i < sortedDurations.size()-1) { double diff = sortedDurations[i+1] - sortedDurations[i]; if(diff < minDiff) minDiff = diff; } if(minDiff != std::numeric_limits <double>::max()) { minDifferences.push_back(minDiff); } } / / Calculate the mean if(minDifferences.empty()) return 0.0; return std::accumulate(minDifferences.begin(), minDifferences.end(),0.0) / minDifferences.size(); } public: DetectionValidator(double window, double segment) : windowDuration(window), segmentDuration(segment) {} / / Verify the effectiveness of liveness detection std::vector <bool>validateDetections( const std::vector<std::vector <double>>& livingEntitiesTimestamps) { std::vector <bool>isValid(livingEntitiesTimestamps.size(), true); std::vector <double>accumulatedDurations; / / 1. Calculate the cumulative detection time of each live subject within the window. for(const auto& timestamps : livingEntitiesTimestamps) { double duration = 0.0; double windowStart = 0.0; / / Assume the window starts from 0. / / Calculate the total detection time within the current window for(double ts : timestamps) { if(ts >= windowStart && ts < windowStart + windowDuration) { duration += segmentDuration; / / Each segment contributes a fixed duration. } } accumulatedDurations.push_back(duration); } / / 2. Handling empty window cases if(accumulatedDurations.empty()) { return isValid; } / / 3. Sort the cumulative duration and add a simulated value std::vector <double>sortedDurations = accumulatedDurations; std::sort(sortedDurations.begin(), sortedDurations.end()); sortedDurations.insert(sortedDurations.begin(), segmentDuration); / / Add the minimum value to the sortedDurations. / / 4. Calculate the floating difference and the boundary value double fluctuation = calculateFluctuation(sortedDurations); double threshold = segmentDuration + fluctuation; std::cout << "Validation parameter: Simulation duration=" << segmentDuration << "s, fluctuation difference=" << fluctuation << "s, boundary value=" << threshold << "s" << std::endl; / / 5. Invalid tag detection for(size_t i = 0; i < accumulatedDurations.size(); ++i) { if(accumulatedDurations[i] < threshold) { isValid[i] = false; std::cout << "Live" << i << "Cumulative Duration" << accumulatedDurations[i] << "s < " << threshold << "s, determined as a false positive" << std::endl; } } return isValid; } }; int main() { / / 1. Initialize the validator (window period 5 seconds, ultrasound segment 0.1 seconds) DetectionValidator validator(5.0, 0.1); / / 2. Detection time distribution of example live subjects std::vector <std::vector <double>> testCases = { {0.1, 0.2, 0.3, 0.4, 0.5, 1.0, 1.1, 1.2, 2.0, 2.1, 4.9}, / / Continuous detection (valid) {0.5, 2.5, 4.5}, / / Sporadic detection (invalid) {1.1, 1.2, 1.3, 1.4, 1.5, 2.1, 2.2, 2.3}, / / Medium density (effective) {0.8}, / / Single detection (invalid) {0.1, 0.2, 0.3, 4.8, 4.9} / / Two clusters detected (boundary case) }; / / 3. Perform verification auto results = validator.validateDetections(testCases); / / 4. Output Results std::cout << "\nVerification result:" << std::endl; for(size_t i = 0; i < results.size(); ++i) { std::cout << "live" << i << ": " << (results[i] ? "Valid" : "Invalid") << std::endl; } return 0; } This code implements an intelligent system for judging the validity of liveness detection. First, it performs window time analysis, dividing the detection data into fixed-duration windows and calculating the cumulative detection duration of each liveness sample within the window, synchronized with the ultrasound pulse analysis. Next, it performs adaptive threshold calculation: by analyzing the distribution characteristics of the cumulative duration sequence, it dynamically calculates the floating difference and combines it with the predetermined duration to generate a scientifically sound threshold, avoiding the limitations of fixed thresholds. Then, it performs false positive filtering, automatically identifying and filtering two types of invalid detections: isolated, sporadic detections (with insufficient cumulative duration) and abnormally distributed detections, ensuring that only continuous and stable liveness signals are retained.

[0031] This solution significantly improves the accuracy of liveness detection through temporal distribution feature analysis, making it particularly suitable for complex scenarios with environmental noise and interference signals. The algorithm is highly adaptive, requiring no pre-set fixed thresholds and automatically adapting to different detection environments and equipment parameters.

[0032] Please see Figures 1 to 3 As shown, if the judgment result in step S6 is negative, then steps S3 to S6 are executed continuously to perform liveness detection.

[0033] This solution also includes a fan 5, which continuously executes step S051 during operation to receive the current safe hot air speed of the heater. If the current hot air speed at the heater's air outlet is greater than the current safe hot air speed, then step S052 is executed to adjust it to the current safe hot air speed.

[0034] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of apparatus, systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction containing one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions marked in the blocks may occur in a different order than those shown in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved.

[0035] It should also be noted that each block in the block diagram and / or flowchart, as well as combinations of blocks in the block diagram and / or flowchart, can be implemented using hardware that performs the corresponding function or action, such as circuits or ASICs (Application Specific Integrated Circuits), or using a combination of hardware and software, such as firmware.

[0036] Although the invention has been described herein in conjunction with various embodiments, those skilled in the art will understand and implement other variations of the disclosed embodiments by reviewing the accompanying drawings, disclosure, and appended claims in carrying out the claimed invention. In the claims, the word "comprising" does not exclude other components or steps, and "a" or "an" does not exclude multiple components. A single processor or other unit can implement several functions listed in the claims. While different dependent claims may recite certain measures, this does not mean that these measures cannot be combined to produce good results.

[0037] The various embodiments of this application have been described above. These descriptions are exemplary and not exhaustive, nor are they limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope of the described embodiments. The terminology used herein is chosen to best explain the principles, practical application, or improvement of the technology in the market, or to enable others skilled in the art to understand the embodiments disclosed herein.< / double> < / double> < / double> < / bool> < / double> < / bool> < / double> < / double> < / double> < / double> < / cmath> < / numeric> < / algorithm> < / vector> < / iostream> < / double> < / double> < / double> < / int> < / double> < / double> < / double> < / double> < / double> < / double> < / double> < / double> < / double> < / double> < / double> < / double> < / double> < / double> < / double> < / double> < / double> < / double>

Claims

1. A heating safety temperature control method based on a liveness detection model, comprising: Obtain the respiratory rate range and heart rate range of the target living organism; The safe hot air velocity at different distances between the heater and the living organism is used as the temperature control rule; It pulses and emits ultrasonic waves of fixed frequency, waveform, and phase into the detection area; Continuously receive reflected ultrasonic waves; Its features are, A liveness detection model was constructed to divide the received reflected ultrasound waves into multiple reflected ultrasound wave segments by time slicing. For each reflected ultrasound segment, frequency demodulation is performed to determine whether a demodulated waveform that conforms to the respiratory rate range and heart rate range can be extracted. If so, the distance between the heater and the living organism is continuously determined based on the time distribution of several reflected ultrasonic segments corresponding to the demodulated waveforms that conform to the respiratory and heart rate ranges, and the current safe hot air speed of the heater is determined according to the set temperature control rules. If not, then continue with liveness detection.

2. The heating safety temperature control method based on a liveness detection model according to claim 1, characterized in that, The step of dividing the received reflected ultrasonic waves into multiple reflected ultrasonic wave segments by time slicing. include, Get the maximum movement speed of the target living organism; Obtain the set position detection precision; The ratio of the set position detection accuracy to the maximum moving speed of the target living organism is used as the maximum duration of the reflected sound wave segment.

3. A heating safety temperature control method based on a liveness detection model according to claim 1 or 2, characterized in that, The step of dividing the received reflected ultrasonic waves into multiple reflected ultrasonic wave segments by time slicing also includes, For the received reflected ultrasound, along the time axis in the forward and / or backward directions, the reflected ultrasound of adjacent time periods of the reflected ultrasound segment are also included in the reflected ultrasound segment as an extended reflected ultrasound segment. The start time of the reflected ultrasound segment before expansion is still taken as the start time of the reflected ultrasound segment after expansion.

4. The heating safety temperature control method based on a liveness detection model according to claim 3, characterized in that, The maximum values ​​of the respiratory cycle and heart rate cycle of the target living organism are obtained based on the respiratory rate range and heart rate range of the target living organism. The duration of the extended reflected ultrasound segment is not less than the maximum value of the respiratory cycle and heartbeat cycle of the target living organism.

5. A heating safety temperature control method based on a liveness detection model according to claim 1, characterized in that, The step of demodulating the frequency of each reflected ultrasound segment and determining whether a demodulated waveform conforming to the respiratory and heart rate ranges can be extracted includes, For each reflected ultrasound segment, perform the following operations: The frequency of the reflected ultrasonic wave segment is demodulated to obtain the demodulated sound wave segment. Frequency domain processing is performed on the demodulated acoustic wave segment to obtain the distribution state of the demodulated acoustic wave segment at several frequencies. If the demodulated sound wave segment has a unique distribution in both the respiratory frequency range and the heart rate range, then it is determined that the reflected ultrasound segment can be used to extract a demodulated waveform that conforms to the respiratory frequency range and the heart rate range.

6. A heating safety temperature control method based on a liveness detection model according to claim 1 or 5, characterized in that, The step of determining the distance between the heater and the living organism based on the time distribution of several reflected ultrasonic segments corresponding to the demodulated waveforms that conform to the respiratory and heart rate ranges includes: The frequency domain processing signal distribution of each reflected ultrasound segment after demodulation is used as the respiratory frequency and heart rate of the corresponding living organism. The distance between the living organism and the heater corresponding to each reflected ultrasonic segment is determined by the time difference between the start or end time of each reflected ultrasonic segment and the corresponding detected ultrasonic segment.

7. A heating safety temperature control method based on a liveness detection model according to claim 6, characterized in that, The step of determining the distance between the heater and the living organism based on the time distribution of several reflected ultrasonic segments corresponding to the demodulated waveforms that conform to the respiratory and heart rate ranges also includes, The reflected ultrasound segments with consistent respiratory and heart rates are treated as the same living organism. The time distribution of each living organism detected in the detection area and its distance from the heater are obtained based on the continuously received reflected ultrasound waves. The radial movement speed of each live organism in the detection area is determined based on the time distribution of each live organism detected in the detection area and its distance from the heater. The time distribution data and distance data of live organisms detected in the detection area that have a radial movement speed greater than a set speed value are then removed. Based on the time distribution of each live organism detected within the detection area, live organisms with sporadic detection times are identified as falsely detected live organisms and are removed.

8. A heating safety temperature control method based on a liveness detection model according to claim 7, characterized in that, The step of identifying live organisms with sporadic detection times as falsely detected organisms based on the time distribution of each live organism detected within the detection area. include, A window period is defined, and the cumulative detection duration of each live organism within the window period is obtained based on the time distribution of each live organism detected in the detection area. The time distribution of the window period is synchronized with a pulse signal of a detection ultrasound. The cumulative detection durations within the window period are arranged according to their numerical values ​​to obtain a cumulative detection duration sequence; A minimum cumulative detection time equal to the duration of a reflected ultrasonic segment is added to the cumulative detection time sequence. The mean of the differences between each cumulative detection duration and the other cumulative detection duration with the smallest adjacent difference in the cumulative detection duration sequence is calculated and used as the floating difference of the cumulative detection duration sequence; The sum of the calculated cumulative detection time and the floating difference is used as the boundary value for sporadic detections. Live organisms whose cumulative detection duration within the window period is less than the aforementioned sporadic detection threshold will be considered as falsely detected live organisms.

9. A heating safety temperature control method based on a liveness detection model, characterized in that, include, The current safe hot air velocity of the heater is received in the heating safety temperature control method based on a liveness detection model as described in any one of claims 1 to 8. If the current hot air velocity at the heater's air outlet is greater than the current safe hot air velocity, then adjust it to the current safe hot air velocity.

10. A heater, characterized in that, include, Heater body: Non-volatile memory is used to store the respiratory rate range and heart rate range of the target living organism, as well as the safe hot air speed between the heater and the living organism at different distances as a temperature control rule. An ultrasonic transducer is used to pulse-emit probe ultrasonic waves of fixed frequency, waveform, and phase into a detection area and continuously receive reflected ultrasonic waves. The liveness detection unit has a built-in liveness detection model, which is used to divide the received reflected ultrasonic waves into multiple reflected ultrasonic wave segments by time slicing. For each reflected ultrasound segment, frequency demodulation is performed to determine whether a demodulated waveform that conforms to the respiratory rate range and heart rate range can be extracted. If so, the distance between the heater and the living organism is continuously determined based on the time distribution of several reflected ultrasonic segments corresponding to the demodulated waveforms that conform to the respiratory and heart rate ranges, and the current safe hot air speed of the heater is determined according to the set temperature control rules. If not, then continue with liveness detection; and, The fan is used to receive the current safe hot air velocity from the heater; If the current hot air velocity at the heater's air outlet is greater than the current safe hot air velocity, then adjust it to the current safe hot air velocity.