A method, apparatus, medium, and program product for determining pulse wave dithering

CN116150569BActive Publication Date: 2026-09-18SHANGHAI ZHANGMEN TECH
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210860596.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-07-21
Publication Date
2026-09-18
Estimated Expiration
2042-07-21

AI Technical Summary

Technical Problem

[0002]现有技术中在进行脉搏波抓取的时候,通常采集1-2分钟的波形,来进行脉搏波单周期分析,以及脉搏的脉率、是否有结代促等情况的分析,如果等待采集了1-2分钟的脉搏波再来判断波形的好坏,一旦波形不好,又需要重新采集1-2分钟的脉搏波,就会造成时长过长

Benefits of technology

[0017] Compared with existing technologies, this application divides the acquired pulse waveform into multiple periodic pulse waveforms, averages the at least one periodic pulse waveform to obtain a single-period pulse waveform, performs differential calculations on the single-period pulse waveform to obtain a differential pulse waveform, and determines the degree of jitter of the pulse waveform by comparing the differential pulse waveform with the zero axis. This allows for the judgment of the pulse waveform's quality during user operation using a short duration (e.g., 10 seconds). If the waveform is poor, the user is reminded to adjust their posture or remain still. Then, a shorter pulse waveform is captured to determine its quality again. Once the waveform is good, automatic timing begins, reducing the required pulse waveform acquisition time and improving the user's pulse waveform acquisition experience. During the development phase, by acquiring a pulse waveform and analyzing its quality, hardware engineers and driver engineers can be guided to make design adjustments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116150569B_ABST
    Figure CN116150569B_ABST
Patent Text Reader

Abstract

The purpose of this application is to provide a method, device, medium, and program product for determining pulse wave jitter. The method includes: dividing a acquired pulse waveform into multiple periodic pulse waveforms; averaging the at least one periodic pulse waveform to obtain a single-period pulse waveform; performing differential calculations on the single-period pulse waveform to obtain a differential pulse waveform; and determining the degree of jitter in the pulse waveform by comparing the differential pulse waveform with the zero axis. This application allows for the judgment of pulse waveform quality during user use, using a short duration (e.g., 10 seconds). If the waveform is poor, the user is prompted to adjust their posture and remain still. At this point, another short pulse wave is captured to determine its quality. Once the waveform is good, automatic timing resumes, reducing the required pulse wave acquisition time and improving the user's pulse wave acquisition experience.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of communications, and more particularly to a technique for determining pulse wave jitter. Background Technology

[0002] In existing technologies, when capturing pulse waves, waveforms of 1-2 minutes are typically collected for single-cycle analysis of the pulse wave, as well as analysis of pulse rate, presence of arrhythmia, etc. If the waveform quality is judged after collecting 1-2 minutes of pulse waves, and if the waveform is not good, it is necessary to collect pulse waves again for 1-2 minutes, which will result in excessive time. Summary of the Invention

[0003] One object of this application is to provide a method, apparatus, medium, and procedure for determining pulse wave jitter.

[0004] According to one aspect of this application, a method for determining pulse wave jitter is provided, the method comprising:

[0005] The acquired pulse waveform is divided into periods to obtain multiple periodic pulse waveforms;

[0006] The average of at least one cycle pulse waveform is superimposed to obtain a single cycle pulse waveform.

[0007] Differential calculations are performed on the single-cycle pulse waveform to obtain the differential pulse waveform;

[0008] The degree of jitter in the pulse waveform is determined by comparing the differential pulse waveform with the zero axis.

[0009] According to one aspect of this application, a computer device for determining pulse wave jitter is provided, the device comprising:

[0010] The module is used to divide the acquired pulse waveform into periods to obtain multiple periodic pulse waveforms;

[0011] Modules one and two are used to superimpose and average at least one cycle of pulse waveform to obtain a single cycle pulse waveform;

[0012] The first and third modules are used to perform differential calculations on the single-cycle pulse waveform to obtain a differential pulse waveform;

[0013] The first four modules are used to determine the degree of jitter in the pulse waveform by comparing the differential pulse waveform with the zero axis.

[0014] According to one aspect of this application, a computer device for determining pulse wave jitter is provided, including a memory, a processor, and a computer program stored in the memory, wherein the processor executes the computer program to perform any of the methods described above.

[0015] According to one aspect of this application, a computer-readable storage medium is provided having a computer program stored thereon, characterized in that the computer program, when executed by a processor, implements the operation of any of the methods described above.

[0016] According to one aspect of this application, a computer program product is provided, comprising a computer program that, when executed by a processor, implements the steps of any of the methods described above.

[0017] Compared with existing technologies, this application divides the acquired pulse waveform into multiple periodic pulse waveforms, averages the at least one periodic pulse waveform to obtain a single-period pulse waveform, performs differential calculations on the single-period pulse waveform to obtain a differential pulse waveform, and determines the degree of jitter of the pulse waveform by comparing the differential pulse waveform with the zero axis. This allows for the judgment of the pulse waveform's quality during user operation using a short duration (e.g., 10 seconds). If the waveform is poor, the user is reminded to adjust their posture or remain still. Then, a shorter pulse waveform is captured to determine its quality again. Once the waveform is good, automatic timing begins, reducing the required pulse waveform acquisition time and improving the user's pulse waveform acquisition experience. During the development phase, by acquiring a pulse waveform and analyzing its quality, hardware engineers and driver engineers can be guided to make design adjustments. Attached Figure Description

[0018] Other features, objects, and advantages of this application will become more apparent from the following detailed description of non-limiting embodiments with reference to the accompanying drawings:

[0019] Figure 1 This diagram illustrates a method for determining pulse wave jitter according to an embodiment of the present application.

[0020] Figure 2 This diagram illustrates a computer device structure for determining pulse wave jitter according to an embodiment of this application.

[0021] Figure 3 A schematic diagram of a pulse waveform according to an embodiment of this application is shown;

[0022] Figure 4 A schematic diagram of a single-cycle pulse waveform according to an embodiment of this application is shown;

[0023] Figure 5A schematic diagram of a differential pulse waveform according to an embodiment of this application is shown;

[0024] Figure 6 A schematic diagram of a differential pulse waveform according to an embodiment of this application is shown;

[0025] Figure 7 A schematic diagram of a pulse waveform according to an embodiment of this application is shown;

[0026] Figure 8 A schematic diagram of a pulse waveform according to an embodiment of this application is shown;

[0027] Figure 9 Exemplary systems that can be used to implement the various embodiments described in this application are shown.

[0028] The same or similar reference numerals in the accompanying drawings represent the same or similar parts. Detailed Implementation

[0029] The present application will now be described in further detail with reference to the accompanying drawings.

[0030] In a typical configuration of this application, the terminal, the device of the service network, and the trusted party all include one or more processors (e.g., a central processing unit (CPU)), input / output interfaces, network interfaces, and memory.

[0031] Memory may include non-persistent storage in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash memory. Memory is an example of computer-readable media.

[0032] Computer-readable media, including both permanent and non-permanent, removable and non-removable media, can store information using any method or technology. Information can be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PCM), programmable random access memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transfer medium that can be used to store information accessible by a computing device.

[0033] The devices referred to in this application include, but are not limited to, terminals, network devices, or devices formed by integrating terminals and network devices through a network. The terminals include, but are not limited to, any mobile electronic product capable of human-computer interaction (e.g., via a touchpad), such as smartphones and tablets. These mobile electronic products can use any operating system, such as Android or iOS. The network devices include electronic devices capable of automatically performing numerical calculations and information processing according to pre-set or stored instructions. Their hardware includes, but is not limited to, microprocessors, application-specific integrated circuits (ASICs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), digital signal processors (DSPs), and embedded devices. The network devices include, but are not limited to, computers, network hosts, single network servers, multiple network server clusters, or clouds composed of multiple servers. Here, a cloud consists of a large number of computers or network servers based on cloud computing, where cloud computing is a type of distributed computing, consisting of a virtual supercomputer composed of a group of loosely coupled computer clusters. The network includes, but is not limited to, the Internet, wide area network, metropolitan area network, local area network, VPN network, wireless ad hoc network, etc. Preferably, the device can also be a program running on the terminal, network device, or a device formed by integrating the terminal and network device, network device, touch terminal, or network device and touch terminal through a network.

[0034] Of course, those skilled in the art should understand that the above-described devices are merely examples, and other existing or future devices that are applicable to this application should also be included within the scope of protection of this application, and are hereby incorporated by reference.

[0035] In the description of this application, "multiple" means two or more, unless otherwise expressly and specifically defined.

[0036] Figure 1A flowchart illustrating a method for determining pulse wave jitter according to an embodiment of this application is shown. The method includes steps S11, S12, S13, and S14. In step S11, a computer device divides the acquired pulse waveform into multiple periodic pulse waveforms. In step S12, the computer device averages at least one periodic pulse waveform to obtain a single-period pulse waveform. In step S13, the computer device performs differential calculation on the single-period pulse waveform to obtain a differential pulse waveform. In step S14, the computer device determines the degree of jitter in the pulse waveform by comparing the differential pulse waveform with a zero axis.

[0037] In step S11, the computer device divides the acquired pulse waveform into multiple periodic pulse waveforms. In some embodiments, the computer device can be a pulse acquisition device, or it can be a user device or a network device. In this case, the pulse acquisition device will send the acquired pulse waveform to the user device or the network device via wired or wireless transmission. In some embodiments, a normal pulse waveform, based on a minimum pulse rate of 50 beats / minute, will have a complete waveform (pulse cycle) every 1.2 seconds. Therefore, a time period of the pulse waveform can be set to 1.2 seconds. In some embodiments, the acquired pulse waveform is divided according to a predetermined time period to obtain multiple periodic pulse waveforms, that is, each periodic pulse waveform corresponds to a pulse waveform of one time period.

[0038] In step S12, the computer device superimposes and averages at least one periodic pulse waveform to obtain a single-period pulse waveform. In some embodiments, the at least one periodic pulse waveform may be one of the plurality of periodic pulse waveforms, or it may be a selected portion of the plurality of periodic pulse waveforms. In some embodiments, superimposing and averaging the at least one periodic pulse waveform can yield a single-period pulse waveform. As an example, Figure 3 This is the pulse waveform before the periodic division. Figure 4 It is the single-cycle pulse waveform after superposition and averaging.

[0039] In step S13, the computer device performs differential calculations on the single-cycle pulse waveform to obtain a differential pulse waveform. In some embodiments, the single-cycle pulse waveform can be differentiated to obtain the corresponding differential pulse waveform.

[0040] In step S14, the computer device determines the degree of jitter in the pulse waveform by comparing the differential pulse waveform with the zero axis. In some embodiments, the degree of jitter in the pulse waveform can be determined by comparing the differential pulse waveform with the zero axis and the comparison result. Specifically, the comparison can be based on at least one intersection point between the differential pulse waveform and the zero axis to determine the degree of jitter, or it can be based on at least one first waveform region of the differential pulse waveform above the zero axis and at least one second waveform region of the differential pulse waveform below the zero axis to determine the degree of jitter. As an example, such as Figure 5 As shown, the tall waveform at the top is the single-cycle pulse waveform, and the flat waveform at the bottom is its corresponding differential pulse waveform. The dashed line represents the zero axis. In some embodiments, the quality of the pulse waveform can be determined based on the degree of jitter. The greater the jitter, the worse the waveform; conversely, the less jitter, the better. This application allows for pulse waveform quality assessment during user testing (e.g., 10 seconds). If the waveform is poor, the user is prompted to adjust their posture or remain still. Then, a shorter pulse waveform is captured to assess its quality. Once the waveform is deemed good, automatic timing resumes for the required duration of acquisition. This reduces the pulse waveform acquisition time and improves the user's experience. During development, acquiring a pulse waveform and analyzing its quality guides hardware and driver engineers in design adjustments.

[0041] In some embodiments, step S11 includes: the computer device preprocessing the acquired pulse waveform to obtain a preprocessed pulse waveform; and dividing the preprocessed pulse waveform into periods to obtain multiple periodic pulse waveforms. In some embodiments, when the pulse acquisition device acquires the user's pulse waveform, noise interference may occur due to interference factors such as the user's body shaking. Therefore, it is necessary to preprocess the acquired pulse waveform to remove the noise interference before dividing the preprocessed pulse waveform into periods.

[0042] In some embodiments, the preprocessing includes baseline alignment. In some embodiments, baseline alignment aligns the waveform to a baseline (which can be understood as a horizontally parallel line), causing the waveform to fluctuate within a certain range above and below the baseline; a normal pulse wave is such a periodic waveform. In some embodiments, interference factors such as user body tremors can cause the acquired pulse waveform to exhibit a slow rising or falling trend; baseline alignment removes this interference. In some embodiments, methods such as median filtering and mean filtering can be used for baseline alignment. As an example, Figure 6It is the acquired pulse waveform. Figure 7 It is the pulse waveform after baseline alignment.

[0043] In some embodiments, the method further includes: a computer device removing one or more error periodic pulse waveforms from the plurality of periodic pulse waveforms, wherein the one or more error periodic pulse waveforms satisfy a predetermined amplitude error condition; wherein step S12 includes: the computer device superimposing and averaging the remaining at least one periodic pulse waveform in the plurality of periodic pulse waveforms to obtain a single periodic pulse waveform. In some embodiments, there may be some periodic pulse waveforms with errors in the plurality of periodic pulse waveforms. One or more error periodic pulse waveforms satisfying the predetermined amplitude error condition can be removed from the plurality of periodic pulse waveforms according to the amplitude corresponding to each periodic pulse waveform, and then the remaining at least one periodic pulse waveform in the plurality of periodic pulse waveforms can be superimposed and averaged.

[0044] In some embodiments, the amplitude error condition includes at least one of the following: the amplitude of the one or more error periodic pulse waveforms is greater than or equal to a predetermined first amplitude threshold; the amplitude of the one or more error periodic pulse waveforms is less than or equal to a predetermined second amplitude threshold; the one or more error periodic pulse waveforms are a first predetermined number of periodic pulse waveforms with the largest corresponding amplitude among the plurality of periodic pulse waveforms; the one or more error periodic pulse waveforms are a second predetermined number of periodic pulse waveforms with the smallest corresponding amplitude among the plurality of periodic pulse waveforms. In some embodiments, the amplitude error condition may be that the amplitude corresponding to the error periodic pulse waveform is greater than or equal to the predetermined first amplitude threshold, or it may also be that the amplitude corresponding to the error periodic pulse waveform is less than or equal to the predetermined second amplitude threshold, or the one or more error periodic pulse waveforms are a predetermined number of periodic pulse waveforms with the largest amplitude among the plurality of periodic pulse waveforms, or the one or more error periodic pulse waveforms are a predetermined number of periodic pulse waveforms with the smallest amplitude among the plurality of periodic pulse waveforms.

[0045] In some embodiments, step S14 includes: a computer device determining the jitter level of the pulse waveform based on at least one first waveform region of the differential pulse waveform located above the zero axis and at least one second waveform region of the differential pulse waveform located below the zero axis. In some embodiments, the jitter level of the pulse waveform can be determined based on the number of first regions corresponding to the at least one first waveform region and the number of second regions corresponding to the at least one second waveform region. For example, the more first waveform regions there are, and / or the more second waveform regions there are, the greater the jitter level of the pulse waveform can be determined. In some embodiments, the jitter level of the pulse waveform can also be determined based on the total area information of the first regions corresponding to the at least one first waveform region and the total area information of the second regions corresponding to the at least one second waveform region. For example, the larger the total area of ​​the first waveform regions, and / or the larger the total area of ​​the second waveform regions, the greater the jitter level of the pulse waveform can be determined.

[0046] In some embodiments, determining the jitter level of the pulse waveform based on at least one first waveform region above the zero axis and at least one second waveform region below the zero axis includes: determining the jitter level of the pulse waveform based on the number of first regions corresponding to the at least one first waveform region and the number of second regions corresponding to the at least one second waveform region. In some embodiments, determining the jitter level of the pulse waveform based on the number of first regions corresponding to the at least one first waveform region and the number of second regions corresponding to the at least one second waveform region can be achieved, for example, by determining the jitter level of the pulse waveform based on the sum of the number of first waveform regions and the number of second waveform regions. If the sum of the number of first waveform regions and the number of second waveform regions is larger, the jitter level of the pulse waveform can be determined to be larger. For example, if the sum is greater than or equal to a predetermined threshold (e.g., 10), the jitter level of the pulse waveform can be determined to be relatively large; if the sum is less than the predetermined threshold, the jitter level of the pulse waveform can be determined to be relatively small.

[0047] In some embodiments, determining the jitter level of the pulse waveform based on the number of first regions corresponding to the at least one first waveform region and the number of second regions corresponding to the at least one second waveform region includes: determining the jitter level of the pulse waveform based on the number of first regions corresponding to the at least one first waveform region and the number of second regions corresponding to the at least one second waveform region, combined with the area information of the first region corresponding to each first waveform region and the area information of the second region corresponding to each second waveform region. In some embodiments, the total area of ​​the first and second waveform regions can be obtained first based on the area information of the first region corresponding to each first waveform region and the area information of the second region corresponding to each second waveform region. Then, the sum of the number of first and second waveform regions is multiplied by the total area, and the result is used to determine the jitter level of the pulse waveform. The larger the result, the greater the jitter level of the pulse waveform. In some embodiments, a weighting coefficient for each first waveform region can be determined based on the area information of the first region corresponding to each first waveform region. The number of first waveform regions can be weighted based on the weighting coefficient of each first waveform region. Similarly, a weighting coefficient for each second waveform region can be determined based on the area information of the second region corresponding to each second waveform region. The number of second waveform regions can be weighted based on the weighting coefficient of each second waveform region. Then, the degree of jitter of the pulse waveform can be determined based on the sum of the weighted number of the first waveform regions and the weighted number of the second waveform regions. If the sum is larger, the degree of jitter of the pulse waveform can be determined to be larger.

[0048] In some embodiments, step S14 includes: a computer device determining the jitter level of the pulse waveform based on at least one intersection point between the differential pulse waveform and the zero axis. In some embodiments, if there is at least one intersection point between the differential pulse waveform and the zero axis, the jitter level of the pulse waveform can be determined based on the number of intersection points; the more intersection points, the greater the jitter level of the pulse waveform. In some embodiments, the jitter level of the pulse waveform can also be determined based on the distance information between adjacent intersection points. The greater the total distance or average distance corresponding to the distance information between adjacent intersection points, the greater the jitter level of the pulse waveform. For example, if the total distance or average distance is greater than or equal to a predetermined distance threshold, the pulse waveform is more jittery; if the total distance or average distance is less than the predetermined distance threshold, the pulse waveform is less jittery. As an example, such as... Figure 8 As shown, there are 6 intersection points between the differential pulse waveform and the zero axis (see...). Figure 8 (The black circle marking in the middle).

[0049] In some embodiments, determining the jitter level of the pulse waveform based on at least one intersection point of the differential pulse waveform with the zero axis includes: determining the jitter level of the pulse waveform based on the number of the at least one intersection point. In some embodiments, a higher number of the at least one intersection point indicates a greater degree of jitter in the pulse waveform, while a lower number of the at least one intersection point indicates a lower degree of jitter. For example, if the number of intersection points is greater than or equal to a predetermined threshold (e.g., 10), the pulse waveform is considered to have more jitter; if the number of intersection points is less than the predetermined threshold, the pulse waveform is considered to have less jitter.

[0050] In some embodiments, determining the jitter level of the pulse waveform based on the number of the at least one intersection point includes: determining the jitter level of the pulse waveform based on the number of the at least one intersection point and the distance information between adjacent intersection points. In some embodiments, the total distance or average distance can be obtained first based on the distance information between adjacent intersection points in the at least one intersecting intersection point, and then the total distance or average distance can be multiplied by the number of intersection points. The jitter level of the pulse waveform can be determined based on the result. The larger the result, the greater the jitter level of the pulse waveform.

[0051] In some embodiments, determining the jitter level of the pulse waveform based on the number of at least one intersection point includes: weighting the number of at least one intersection point according to the adjacent positive and negative peak values ​​corresponding to each intersection point to obtain weighted number information corresponding to the at least one intersection point; and determining the jitter level of the pulse waveform based on the weighted number information. In some embodiments, each intersection point corresponds to an adjacent positive peak value and an adjacent negative peak value. For each intersection point, a weighting coefficient can be determined based on the positive and negative peak values ​​corresponding to that intersection point. For example, the absolute value of the difference between the positive and negative peak values ​​corresponding to that intersection point can be used to determine the weighting coefficient of that intersection point. Then, the number of intersection points is weighted according to the weighting coefficient of each intersection point. The larger the absolute value, the more weighted intersection points there are. Then, the jitter level of the pulse waveform is determined based on the weighted number of intersection points. If the number of weighted intersection points is more, the jitter level of the pulse waveform is determined to be greater.

[0052] In some embodiments, the step of weighting the quantity information of the at least one intersection point based on the adjacent positive and negative peak values ​​corresponding to each intersection point to obtain the weighted quantity information corresponding to the at least one intersection point includes: weighting the quantity information of the at least one intersection point based on the adjacent positive and negative peak values ​​corresponding to each intersection point and the projection distance information of the adjacent positive and negative peak values ​​on the zero axis to obtain the weighted quantity information corresponding to the at least one intersection point. In some embodiments, for each intersection point, the weighting coefficient of the intersection point can also be determined based on the distance between the projection point of the positive peak value corresponding to the intersection point on the zero axis and the projection point of the negative peak value corresponding to the intersection point on the zero axis. The larger the distance, the more weighted the intersection point. Then, the jitter of the pulse waveform is determined based on the weighted number of intersection points. If the number of weighted intersection points is larger, the jitter of the pulse waveform is greater.

[0053] Figure 2 The diagram illustrates a computer device structure for determining pulse wave jitter according to an embodiment of this application. The device includes a first module 11, a second module 12, a third module 13, and a fourth module 14. First module 11 is used to periodically divide the acquired pulse waveform to obtain multiple periodic pulse waveforms; second module 12 is used to superimpose and average at least one periodic pulse waveform to obtain a single-period pulse waveform; third module 13 is used to perform differential calculation on the single-period pulse waveform to obtain a differential pulse waveform; fourth module 14 is used to determine the degree of jitter of the pulse waveform by comparing the differential pulse waveform with a zero axis.

[0054] Module 11 is used to divide the acquired pulse waveform into multiple periodic pulse waveforms. In some embodiments, the computer device can be a pulse acquisition device, or it can be a user device or a network device. In this case, the pulse acquisition device will send the acquired pulse waveform to the user device or the network device via wired or wireless transmission. In some embodiments, a normal pulse waveform, based on a minimum pulse rate of 50 beats / minute, will have a complete waveform (pulse cycle) every 1.2 seconds. Therefore, a time period of the pulse waveform can be set to 1.2 seconds. In some embodiments, the acquired pulse waveform is divided according to a predetermined time period to obtain multiple periodic pulse waveforms, that is, each periodic pulse waveform corresponds to a pulse waveform of one time period.

[0055] Module 12 is used to superimpose and average at least one periodic pulse waveform to obtain a single-period pulse waveform. In some embodiments, the at least one periodic pulse waveform can be one of the multiple periodic pulse waveforms, or it can be a selected portion of the multiple periodic pulse waveforms. In some embodiments, superimposing and averaging the at least one periodic pulse waveform can yield a single-period pulse waveform. As an example, Figure 3 This is the pulse waveform before the periodic division. Figure 4 It is the single-cycle pulse waveform after superposition and averaging.

[0056] Module 13 is used to perform differential calculations on the single-cycle pulse waveform to obtain a differential pulse waveform. In some embodiments, the single-cycle pulse waveform can be differentially calculated to obtain the corresponding differential pulse waveform.

[0057] Module 14 is used to determine the degree of jitter in the pulse waveform by comparing the differential pulse waveform with the zero axis. In some embodiments, the degree of jitter in the pulse waveform can be determined by comparing the differential pulse waveform with the zero axis and the comparison result. Specifically, the comparison can be based on at least one intersection point between the differential pulse waveform and the zero axis to determine the degree of jitter, or it can be based on at least one first waveform region of the differential pulse waveform above the zero axis and at least one second waveform region of the differential pulse waveform below the zero axis to determine the degree of jitter. As an example, such as... Figure 5 As shown, the tall waveform at the top is the single-cycle pulse waveform, and the flat waveform at the bottom is its corresponding differential pulse waveform. The dashed line represents the zero axis. In some embodiments, the quality of the pulse waveform can be determined based on the degree of jitter. The greater the jitter, the worse the waveform; conversely, the less jitter, the better. This application allows for pulse waveform quality assessment during user testing (e.g., 10 seconds). If the waveform is poor, the user is prompted to adjust their posture or remain still. Then, a shorter pulse waveform is captured to assess its quality. Once the waveform is deemed good, automatic timing resumes for the required duration of acquisition. This reduces the pulse waveform acquisition time and improves the user's experience. During development, acquiring a pulse waveform and analyzing its quality guides hardware and driver engineers in design adjustments.

[0058] In some embodiments, module 11 is used to: preprocess the acquired pulse waveform to obtain a preprocessed pulse waveform; and divide the preprocessed pulse waveform into periods to obtain multiple periodic pulse waveforms. Here, the related operations are... Figure 1 The embodiments shown are the same or similar, so they will not be described again, but are included here by reference.

[0059] In some embodiments, the preprocessing includes baseline alignment. Here, the relevant operations are... Figure 1 The embodiments shown are the same or similar, so they will not be described again, but are included here by reference.

[0060] In some embodiments, the device is further configured to: remove one or more error periodic pulse waveforms from the plurality of periodic pulse waveforms, wherein the one or more error periodic pulse waveforms satisfy a predetermined amplitude error condition; wherein the first and second modules 12 are configured to: superimpose and average the remaining at least one periodic pulse waveform from the plurality of periodic pulse waveforms to obtain a single-period pulse waveform. Here, the related operations are... Figure 1 The embodiments shown are the same or similar, so they will not be described again, but are included here by reference.

[0061] In some embodiments, the amplitude error condition includes at least one of the following: the amplitude of the one or more error periodic pulse waveforms is greater than or equal to a predetermined first amplitude threshold; the amplitude of the one or more error periodic pulse waveforms is less than or equal to a predetermined second amplitude threshold; the one or more error periodic pulse waveforms are a first predetermined number of periodic pulse waveforms with the largest corresponding amplitude among the plurality of periodic pulse waveforms; the one or more error periodic pulse waveforms are a second predetermined number of periodic pulse waveforms with the smallest corresponding amplitude among the plurality of periodic pulse waveforms. Here, related operations are... Figure 1 The embodiments shown are the same or similar, so they will not be described again, but are included here by reference.

[0062] In some embodiments, the four-module 14 is used to: determine the jitter level of the pulse waveform based on at least one first waveform region of the differential pulse waveform above the zero axis and at least one second waveform region of the differential pulse waveform below the zero axis. Here, the related operations are... Figure 1 The embodiments shown are the same or similar, so they will not be described again, but are included here by reference.

[0063] In some embodiments, determining the jitter level of the pulse waveform based on at least one first waveform region above the zero axis and at least one second waveform region below the zero axis includes: determining the jitter level of the pulse waveform based on the number of first regions corresponding to the at least one first waveform region and the number of second regions corresponding to the at least one second waveform region. Here, the related operations are... Figure 1 The embodiments shown are the same or similar, so they will not be described again, but are included here by reference.

[0064] In some embodiments, determining the jitter level of the pulse waveform based on the number of first regions corresponding to the at least one first waveform region and the number of second regions corresponding to the at least one second waveform region includes: determining the jitter level of the pulse waveform based on the number of first regions corresponding to the at least one first waveform region and the number of second regions corresponding to the at least one second waveform region, and combining the area information of the first region corresponding to each first waveform region and the area information of the second region corresponding to each second waveform region. Here, the related operations are... Figure 1 The embodiments shown are the same or similar, so they will not be described again, but are included here by reference.

[0065] In some embodiments, the four-module 14 is used to: determine the jitter level of the pulse waveform based on at least one intersection point where the differential pulse waveform intersects with the zero axis. Here, the related operations are... Figure 1 The embodiments shown are the same or similar, so they will not be described again, but are included here by reference.

[0066] In some embodiments, determining the jitter level of the pulse waveform based on at least one intersection point of the differential pulse waveform with the zero axis includes: determining the jitter level of the pulse waveform based on the number of the at least one intersection point. Here, the related operations are... Figure 1 The embodiments shown are the same or similar, so they will not be described again, but are included here by reference.

[0067] In some embodiments, determining the jitter level of the pulse waveform based on the number of the at least one intersection point includes: determining the jitter level of the pulse waveform based on the number of the at least one intersection point and, in conjunction with the distance information between adjacent intersection points. Here, the related operations are... Figure 1 The embodiments shown are the same or similar, so they will not be described again, but are included here by reference.

[0068] In some embodiments, determining the jitter level of the pulse waveform based on the number of the at least one intersection point includes: weighting the number of the at least one intersection point according to the adjacent positive and negative peak values ​​corresponding to each intersection point to obtain weighted number information corresponding to the at least one intersection point; and determining the jitter level of the pulse waveform based on the weighted number information. Here, the related operations are... Figure 1 The embodiments shown are the same or similar, so they will not be described again, but are included here by reference.

[0069] In some embodiments, the step of weighting the quantity information of the at least one intersection point based on the adjacent positive and negative peak values ​​corresponding to each intersection point to obtain weighted quantity information corresponding to the at least one intersection point includes: weighting the quantity information of the at least one intersection point based on the adjacent positive and negative peak values ​​corresponding to each intersection point and the projection distance information of the adjacent positive and negative peak values ​​on the zero axis to obtain weighted quantity information corresponding to the at least one intersection point. Here, the related operations are similar to... Figure 1 The embodiments shown are the same or similar, so they will not be described again, but are included here by reference.

[0070] In addition to the methods and devices described in the above embodiments, this application also provides a computer-readable storage medium storing computer code that, when executed, performs the method described in any of the preceding embodiments.

[0071] This application also provides a computer program product that, when executed by a computer device, performs the method described in any of the preceding claims.

[0072] This application also provides a computer device, the computer device comprising:

[0073] One or more processors;

[0074] Memory, used to store one or more computer programs;

[0075] When the one or more computer programs are executed by the one or more processors, the one or more processors cause the one or more processors to perform the method as described in any of the preceding methods.

[0076] Figure 9 Exemplary systems that can be used to implement the various embodiments described in this application are shown;

[0077] like Figure 9 As shown in some embodiments, system 300 can function as any of the devices described in each of the embodiments. In some embodiments, system 300 may include one or more computer-readable media having instructions (e.g., system memory or NVM / storage device 320) and one or more processors (e.g., one or more processors 305) coupled to the one or more computer-readable media and configured to execute the instructions to implement the module and thus perform the actions described in this application.

[0078] In one embodiment, the system control module 310 may include any suitable interface controller to provide any suitable interface to at least one of the processors 305 and / or any suitable device or component communicating with the system control module 310.

[0079] The system control module 310 may include a memory controller module 330 to provide an interface to the system memory 315. The memory controller module 330 may be a hardware module, a software module, and / or a firmware module.

[0080] System memory 315 can be used, for example, to load and store data and / or instructions for system 300. In one embodiment, system memory 315 may include any suitable volatile memory, such as suitable DRAM. In some embodiments, system memory 315 may include double data rate type quad synchronous dynamic random access memory (DDR4 SDRAM).

[0081] In one embodiment, the system control module 310 may include one or more input / output (I / O) controllers to provide interfaces to the NVM / storage device 320 and (one or more) communication interfaces 325.

[0082] For example, NVM / storage device 320 may be used to store data and / or instructions. NVM / storage device 320 may include any suitable non-volatile memory (e.g., flash memory) and / or may include any suitable (one or more) non-volatile storage devices (e.g., one or more hard disk drives (HDDs), one or more optical disc drives (CDs), and / or one or more digital universal optical disc (DVD) drives).

[0083] NVM / storage device 320 may include storage resources that are physically part of a device on which system 300 is mounted, or that can be accessed by the device without necessarily being part of it. For example, NVM / storage device 320 may be accessed via a network through one or more communication interfaces 325.

[0084] One or more communication interfaces 325 may provide the system 300 with an interface to communicate over one or more networks and / or with any other suitable device. The system 300 may wirelessly communicate with one or more components of a wireless network in accordance with any of one or more wireless network standards and / or protocols.

[0085] In one embodiment, at least one of the processors 305 may be logically packaged with one or more controllers of the system control module 310 (e.g., memory controller module 330). In one embodiment, at least one of the processors 305 may be logically packaged with one or more controllers of the system control module 310 to form a system-in-package (SiP). In one embodiment, at least one of the processors 305 may be integrated with the logic of one or more controllers of the system control module 310 on the same die. In one embodiment, at least one of the processors 305 may be integrated with the logic of one or more controllers of the system control module 310 on the same die to form a system-on-a-chip (SoC).

[0086] In various embodiments, system 300 may be, but is not limited to, a server, workstation, desktop computing device, or mobile computing device (e.g., laptop computing device, handheld computing device, tablet computer, netbook, etc.). In various embodiments, system 300 may have more or fewer components and / or different architectures. For example, in some embodiments, system 300 includes one or more cameras, a keyboard, a liquid crystal display (LCD) screen (including a touchscreen display), a non-volatile memory port, multiple antennas, a graphics chip, an application-specific integrated circuit (ASIC), and a speaker.

[0087] It should be noted that this application can be implemented in software and / or a combination of software and hardware, for example, using an application-specific integrated circuit (ASIC), a general-purpose computer, or any other similar hardware device. In one embodiment, the software program of this application can be executed by a processor to implement the steps or functions described above. Similarly, the software program of this application (including related data structures) can be stored in a computer-readable recording medium, such as RAM memory, magnetic or optical drives, floppy disks, and similar devices. Furthermore, some steps or functions of this application can be implemented in hardware, for example, as circuitry that cooperates with a processor to perform the various steps or functions.

[0088] Furthermore, a portion of this application can be applied as a computer program product, such as computer program instructions, which, when executed by a computer, can invoke or provide the methods and / or technical solutions according to this application through the operation of the computer. Those skilled in the art will understand that the forms in which computer program instructions exist in a computer-readable medium include, but are not limited to, source files, executable files, installation package files, etc. Correspondingly, the ways in which computer program instructions are executed by a computer include, but are not limited to: the computer directly executing the instructions, or the computer compiling the instructions and then executing the corresponding compiled program, or the computer reading and executing the instructions, or the computer reading and installing the instructions and then executing the corresponding installed program. Here, the computer-readable medium can be any available computer-readable storage medium or communication medium accessible to a computer.

[0089] Communication media include media through which communication signals containing, for example, computer-readable instructions, data structures, program modules, or other data are transmitted from one system to another. Communication media can include guided transmission media (such as cables and wires (e.g., optical fibers, coaxial cables, etc.)) and wireless (unguided transmission) media capable of propagating energy waves, such as sound, electromagnetic, RF, microwave, and infrared. Computer-readable instructions, data structures, program modules, or other data can be embodied as modulated data signals in, for example, wireless media (such as carrier waves or similar mechanisms embodied as part of spread spectrum technology). The term "modulated data signal" refers to a signal whose one or more characteristics are altered or set in a manner that encodes information in the signal. Modulation can be analog, digital, or a hybrid modulation technique.

[0090] By way of example and not limitation, computer-readable storage media may include volatile and non-volatile, removable and non-removable media implemented by any method or technique for storing information such as computer-readable instructions, data structures, program modules or other data. For example, computer-readable storage media include, but are not limited to, volatile memories such as random access memory (RAM, DRAM, SRAM); and non-volatile memories such as flash memory, various read-only memories (ROM, PROM, EPROM, EEPROM), magnetic and ferromagnetic / ferroelectric memories (MRAM, FeRAM); and magnetic and optical storage devices (hard disks, magnetic tapes, CDs, DVDs); or other media now known or hereafter developed capable of storing computer-readable information / data for use by a computer system.

[0091] Herein, one embodiment of this application includes an apparatus comprising a memory for storing computer program instructions and a processor for executing the program instructions, wherein when the computer program instructions are executed by the processor, the apparatus is triggered to run a method and / or technical solution based on the foregoing embodiments of this application.

[0092] It will be apparent to those skilled in the art that this application is not limited to the details of the exemplary embodiments described above, and that this application can be implemented in other specific forms without departing from the spirit or essential characteristics of this application. Therefore, the embodiments should be considered exemplary and non-limiting in all respects, and the scope of this application is defined by the appended claims rather than the foregoing description. Thus, all variations falling within the meaning and scope of equivalents of the claims are intended to be embraced within this application. No reference numerals in the claims should be construed as limiting the scope of the claims. Furthermore, it is clear that the word "comprising" does not exclude other units or steps, and the singular does not exclude the plural. Multiple units or devices recited in the apparatus claims may also be implemented by a single unit or device in software or hardware. The terms "first," "second," etc., are used to indicate names and do not indicate any particular order.

Claims

1. A method for determining pulse wave jitter, wherein, The method includes: The acquired pulse waveform is divided into periods to obtain multiple periodic pulse waveforms, where each periodic pulse waveform corresponds to a pulse waveform of one time period. The average of at least one cycle pulse waveform is superimposed to obtain a single cycle pulse waveform. Differential calculations are performed on the single-cycle pulse waveform to obtain the differential pulse waveform; The degree of jitter in the pulse waveform is determined by comparing the differential pulse waveform with the zero axis. The step of determining the degree of jitter in the pulse waveform by comparing the differential pulse waveform with the zero axis includes: The number information of the at least one intersection point is weighted according to the adjacent positive and negative peaks corresponding to each intersection point of the differential pulse waveform and the zero axis and the projection distance information of the adjacent positive and negative peaks on the zero axis to obtain the weighted number information corresponding to the at least one intersection point. The degree of jitter in the pulse waveform is determined based on the weighted quantity information.

2. The method according to claim 1, wherein, The acquired pulse waveform is periodically divided to obtain multiple periodic pulse waveforms, including: The acquired pulse waveform is preprocessed to obtain the preprocessed pulse waveform; The preprocessed pulse waveform is divided into periods to obtain multiple periodic pulse waveforms.

3. The method according to claim 2, wherein, The preprocessing includes baseline alignment.

4. The method according to claim 1 or 2, wherein, The method further includes: Remove one or more error periodic pulse waveforms from the plurality of periodic pulse waveforms, wherein the one or more error periodic pulse waveforms satisfy a predetermined amplitude error condition; The step of averaging the superimposed pulse waveforms of at least one cycle to obtain a single-cycle pulse waveform includes: The average of at least one remaining period pulse waveform from the plurality of period pulse waveforms is superimposed to obtain a single period pulse waveform.

5. The method according to claim 4, wherein the amplitude error condition includes at least one of the following: The amplitude of the one or more error period pulse waveforms is greater than or equal to a predetermined first amplitude threshold. The amplitude of the one or more error cycle pulse waveforms is less than or equal to a predetermined second amplitude threshold. The one or more error periodic pulse waveforms are the first predetermined number of periodic pulse waveforms with the largest amplitude among the plurality of periodic pulse waveforms; The one or more error periodic pulse waveforms are the second predetermined number of periodic pulse waveforms with the smallest amplitude among the plurality of periodic pulse waveforms.

6. The method according to claim 1, wherein, The step of determining the jitter level of the pulse waveform by comparing the differential pulse waveform with the zero axis includes: The degree of jitter in the pulse waveform is determined based on at least one first waveform region above the zero axis and at least one second waveform region below the zero axis.

7. The method according to claim 6, wherein, Determining the jitter level of the pulse waveform based on at least one first waveform region above the zero axis and at least one second waveform region below the zero axis includes: The degree of jitter in the pulse waveform is determined based on the number of first regions corresponding to the at least one first waveform region and the number of second regions corresponding to the at least one second waveform region.

8. The method according to claim 7, wherein, Determining the jitter level of the pulse waveform based on the number of first regions corresponding to the at least one first waveform region and the number of second regions corresponding to the at least one second waveform region includes: The degree of jitter in the pulse waveform is determined based on the number of first regions corresponding to the at least one first waveform region and the number of second regions corresponding to the at least one second waveform region, combined with the area information of the first region corresponding to each first waveform region and the area information of the second region corresponding to each second waveform region.

9. A computer device for determining the degree of jitter, comprising a memory, a processor, and a computer program stored in the memory, characterized in that, The processor executes the computer program to implement the steps of the method as described in any one of claims 1 to 8.

10. A computer-readable storage medium having a computer program / instructions stored thereon, characterized in that, When the computer program / instructions are executed by the processor, they implement the steps of the method as described in any one of claims 1 to 8.

11. A computer program product, comprising a computer program, characterized in that, When executed by a processor, the computer program implements the steps of the method as described in any one of claims 1 to 8.

Citation Information

Patent Citations

  • Pulse wave signal quality detection method, device, equipment and system

    CN110974189A