WO2018154220A1 - Device for analyzing heart rhythm - Google Patents

Device for analyzing heart rhythm Download PDF

Info

Publication number
WO2018154220A1
WO2018154220A1 PCT/FR2018/050382 FR2018050382W WO2018154220A1 WO 2018154220 A1 WO2018154220 A1 WO 2018154220A1 FR 2018050382 W FR2018050382 W FR 2018050382W WO 2018154220 A1 WO2018154220 A1 WO 2018154220A1
Authority
WO
WIPO (PCT)
Prior art keywords
time series
amplitude values
function
series
value
Prior art date
Application number
PCT/FR2018/050382
Other languages
French (fr)
Inventor
Hussein YAHIA
Guillaume ATTUEL
Oriol PONT
Binbin Xu
Original Assignee
Inria Institut National De Recherche En Informatique Et En Automatique
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inria Institut National De Recherche En Informatique Et En Automatique filed Critical Inria Institut National De Recherche En Informatique Et En Automatique
Publication of WO2018154220A1 publication Critical patent/WO2018154220A1/en

Links

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7203Signal processing specially adapted for physiological signals or for diagnostic purposes for noise prevention, reduction or removal
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/24Detecting, measuring or recording bioelectric or biomagnetic signals of the body or parts thereof
    • A61B5/316Modalities, i.e. specific diagnostic methods
    • A61B5/318Heart-related electrical modalities, e.g. electrocardiography [ECG]
    • A61B5/346Analysis of electrocardiograms
    • A61B5/349Detecting specific parameters of the electrocardiograph cycle
    • A61B5/361Detecting fibrillation
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7235Details of waveform analysis
    • A61B5/7264Classification of physiological signals or data, e.g. using neural networks, statistical classifiers, expert systems or fuzzy systems
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/50ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for simulation or modelling of medical disorders
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B2505/00Evaluating, monitoring or diagnosing in the context of a particular type of medical care
    • A61B2505/05Surgical care

Definitions

  • the invention relates to a cardiology device and a method of assisting cardiology.
  • the cardiac activity may be represented by a time signal whose amplitude corresponds respectively to an electrical potential difference or a blood pressure or the like in the heart.
  • the cardiac electrical activity of a subject is usually measured by means of sensors that take the form of electrodes. These electrodes are placed on the subject, away from the heart, on the epidemic, for example, or on the heart itself, on the epicardium or the endocardium.
  • the mechanical activity can be measured by means of pressure sensors arranged on the blood network, near the heart, or by angiography, for example.
  • a measurement of cardiac activity results in one or more time series each corresponding to an extract of an activity measurement signal, where appropriate sampled.
  • a time series can be digitally stored as a collection of date / amplitude date data, or, almost equivalently, an indexed collection of amplitude values.
  • a time series, or the corresponding collection of data may be graphically rendered, in particular, for the electrical activity measured on the heart, in the form of what is conventionally called an electrogram.
  • the electrogram is an essential tool for the practitioner who is interested in cardiac activity, especially during an invasive exploration in the operating room.
  • the practitioner looks for indicators that can guide his diagnosis and the appropriate treatment.
  • amplitude peaks are identifiable, a local timing measurement can be performed. These peaks correspond to passages of what is called the cardiac activation front near the sensor.
  • the time gap between successive amplitude peaks corresponds to the heart rate, at least when the rhythm is considered locally.
  • Certain cardiac pathologies such as arrhythmias, and more particularly arrhythmia of the type known as "atrial fibrillation", result in complex cardiac activity measurement signals. This complexity is similar to a noise intrinsic to the signals. It is then very difficult to detect local temporal characteristics, whether automatically, by processing the data of the recorded measurement signal, or manually or visually, by interpretation of the corresponding electrogram. The practitioner may be unable to locate the activation front passages in an electrogram, particularly in the case where the acquired signal is fragmented.
  • This difficulty is particularly troublesome in the context of interventional treatment of arrhythmias, for example by radio frequency ablation.
  • the practitioner needs indicators on the cardiac activity of the patient, who can guide him in his intervention.
  • the practitioner needs indicators that are sufficiently stable to be used in the preparation of the intervention. It is also useful to know these indicators almost in real time during the intervention. These indicators include first the local heart rate, determined from the time of passage of the activation front.
  • WO 2005/115232 thus discloses a method and system for displaying atrial fibrillation cycle length values, or local atrial fibrillation period, on an electrogram.
  • the method and system are based on manual annotation of activation peaks on the electrogram. They are therefore ineffective in the case where the practitioner can not distinguish these activation peaks on the electrogram.
  • This document also notes the difficulty of implementing a method of automatic detection of these activation fronts.
  • the signals for measuring cardiac activity are anharmonic. Depending on the arrhythmia, they can be quasi-periodic, chaotic or stochastic. Methods and devices based on the spectral analysis of such signals are unsuitable for detecting local characteristics in these signals.
  • the invention improves the situation.
  • the proposed cardiology device includes memory capable of storing cardiac activity data. These data include at least one time series of amplitude values. This time series corresponds to a raw form of measurement of cardiac activity.
  • the device further comprises a processing unit.
  • the cardiac activity data further includes a second time series of amplitude values. This second time series corresponds to a reduced form of measurement of cardiac activity.
  • the processing unit is arranged to construct a linear function by portions of the amplitude values of the second time series.
  • the linear function is adjusted to the amplitude values of the time series according to an optimization criterion. Each part of the linear function corresponds to a respective time interval of the time series.
  • the processing unit is further arranged to calculate a probabilistic law, relating to periods of cardiac activity, according to a stochastic model, combining at least some of said respective time intervals so as to obtain, for resulting time intervals, a statistical distribution of time periods approaching said probabilistic law, and outputting data relating to the resulting time intervals as data relating to a heart rate.
  • the proposed device makes it possible to analyze the cardiac activity of a patient from raw measurement signals relating to the operation of the patient's heart. It clearly, rapidly and reliably displays fundamental time characteristics of the raw measurement signals, and makes it possible to effectively determine these temporal characteristics. The proposed device delivers much more accurate results than conventional methods, particularly known in electrophysiology. This is true even in the case of very complex / noisy raw measurement signals.
  • the proposed device makes it possible to automate the detection of local time characteristics in raw acquisition measurement signals, in particular peaks of activity which mark the passage of the activation front.
  • the proposed device is particularly suitable for cases of cardiac arrhythmia, where the raw measurement signal has a fairly or very marked noisy character.
  • the device takes advantage of the stochastic properties of the measurement signal.
  • the proposed device measures both an average heart rate and a local heart rate, corresponding to the cardiac activation front passages.
  • cardiac activity data comprising at least one time series of amplitude values, this time series corresponding to a raw form of measurement of cardiac activity, and a second time series of amplitude values, this second time series corresponding to a reduced form of cardiac activity measurement;
  • FIG. 1 represents a block diagram of an assistance device for the analysis of cardiac signals according to the invention
  • FIGS. 2 and 3 represent electrograms
  • FIG. 4 represents a flowchart illustrating the operation of a cardiac signal processing module for the device of FIG. 1;
  • FIG. 5 represents a flow chart which details an embodiment of a step of FIG. 4
  • FIG. 6 represents a flow chart which details an embodiment of a step of FIG. 5;
  • FIG. 7 represents a flow chart which details an embodiment of a step of FIG. 6;
  • FIG. 8 represents a flow chart which details an embodiment of a step of FIG. 6
  • FIG. 9 represents a flow chart which details an embodiment of a step of FIG. 7
  • FIG. 10 represents a flowchart that illustrates the operation of a proxy signal calculation module
  • FIG. 5 represents a flow chart which details an embodiment of a step of FIG. 4;
  • Figures 12 and 13 show graphs illustrating a reconstructed signal
  • FIG. 14 represents an electrogram
  • FIGS. 19 to 21 show graphs illustrating a processing of the electrogram of FIG. 18.
  • FIG. 1 shows a device for assisting the analysis of cardiac signals 1.
  • the device 1 comprises memory 3 organized to store data relating to the cardiac activity of at least one patient. These data include in particular data corresponding to measurements of cardiac activity.
  • the device 1 further comprises a processing unit 5, for example with one or more microprocessors that execute an operating system 52 and a processing module, or module ANLSR 54.
  • the ANLSR module 54 processes at least some of the data of the memory 3 to derive data useful for analyzing the patient's heart rate. This useful data can be stored in the memory 3, at least temporarily.
  • the cardiac activity data correspond to time series, or time series, which maintain a relationship between a plurality of amplitude values and corresponding, possibly relative, date values.
  • the amplitude values can each be related to an index value.
  • Each index value can be related to a date value.
  • a time series may include indexed amplitude values and the index values correspond to regular time intervals, particularly derived from a sampling rate.
  • Each time series can be stored as a computer file whose format allows the temporal data to be related to the amplitude data.
  • each series can be stored in a file of the type known as "CSV", for "Comma Separated Values", or "comma-separated values” in French.
  • each line of such a file comprises a date and / or index value, separated from an amplitude value by a separator character, such as a comma for example.
  • some of the data may be stored in a computer file of a format suitable for processing by a spreadsheet program.
  • the work data includes at least a first time series of amplitude values relative to a cardiac activity measurement, or CARD ACT 32 series.
  • CARD ACT 32 series data is a crude form of measurement of cardiac activity. This data of the CARD ACT series 32 may result from a signal acquisition directly by the device 1 by means of an acquisition module (not shown) and of one or more sensors connected to the device 1, for example by a device. input interface such as the INPT interface 7 shown in FIG. 1. Alternatively or in addition, the CARD ACT 32 series can be directly loaded from one or more data files.
  • the work data further includes at least a second time series of amplitude values, or RDC CARD ACT 34 series, which corresponds to a reduced form of at least a portion of the cardiac activity measurement corresponding to the CARD ACT series. 32.
  • This reduced form sometimes referred to as "proxy” can be constructed from what is called the most singular variety of cardiac measurement. Further details on the definition of the reduced form of a signal, or reduced signal, can be obtained from A. Turiel, H. Yahia and C. Pérez-Vicente, (2008), Microcanonical multifractal formalism-a geometrical approach to multifractal Systems: Part I. Singularity analysis, Journal of Physics A: Mathematical and Theoretical, 41, pp. 015501-015536, published in: 0.1088 / 1751-8113 / 41/1/015501.
  • the work data further includes a third time series of amplitude values, or ACT FRT 38 series, corresponding to cardiac activation times in the cardiac activity measurement corresponding to the CARD ACT 32 series.
  • the ACT FRT series 38 is calculated by the processing function 5 from data from the CARD ACT 32 and RDC CARD ACT 34 series.
  • the work data further comprises statistical data relating to at least one distribution of activation interval durations, or MOD STAT 39 data.
  • the ANLSR module 54 comprises a first submodule, or GEN 542 NOD module, which constructs a series of amplitude values corresponding to an approximate form of cardiac activity measurement corresponding to the CARD ACT 32 series. This approximated form is constructed as a piecewise linear function of the amplitude values of the reduced form of the cardiac activity measurement, for example data from the RDC CARD ACT 34 time series. This approximated form can be stored in the memory 3, for example as a time series of amplitude values, or APX CARD ACT 37 series.
  • the memory 3 stores data defining the piecewise linear function.
  • these data are stored as a time series of slope values and a time series of offset values. These series jointly define the parameters of the linear approximation function for each element of the approximated form.
  • the data of these two series are collated in the table OPT RDC CARD 36
  • the NOD module GEN 542 constructs the approximate form of the measurement of cardiac activity by iteration, optimizing according to an error minimization criterion.
  • a reduced form of at least a portion of the cardiac activity measurement corresponding to the CARD ACT 32 series is constructed as an affine function of this CARD ACT 32 series over a set of time intervals included in the time interval of the CARD ACT 32 series. original measurement signal.
  • the coefficients of this affine approximation and the set of time intervals where this approximation is valid can be determined by minimizing the sum of the squares of the differences between the amplitude values of the reduced form of the measurement signal, for example from the RDC series.
  • the piecewise linear function can be built by iteration, optimizing an error criterion written in a quadratic form.
  • the NOD GEN module delivers a collection of time intervals that each correspond to a linear approximation function part and data that define, on each of these intervals, the linear approximation function of the series.
  • RDC CARD ACT 34 The bounds of these intervals each correspond to a node, that is, a pointer to a date value of the CARD ACT 32 series.
  • the ANLSR module 54 comprises a second sub-module, or NOD module SEL 544, which processes the output of the NOD module GEN 542 on the basis of a statistical comparison between the time intervals of the approximate form of the CARD ACT series 32 and a probabilistic law derived from cardiac modeling.
  • the processing includes a selection by Bayesian filtering of nodes delivered by the NOD GEN module 542 and a method of "clustering", or "partitioning of the data" in French.
  • the NOD SEL module 544 combines the time intervals delivered by the NOD module GEN 542 so as to obtain time intervals whose distribution of the time periods approaches the probabilistic law.
  • the ANLSR module 54 delivers data relating to the time intervals supplied at the output of the NOD module SEL 544, for example through an output interface, or OUTP interface 9.
  • This output interface can be connected to a monitor so as to graphically resituate certain at least of these data.
  • the data in question include for example dates of passage of the cardiac activation front.
  • the processing module further comprises a third sub-module, or RDCR module 546, capable of constructing a time series of amplitude values corresponding to a reduced form of a measurement of cardiac activity.
  • the RDCR module 546 is designed to calculate the data of the RDC CARD ACT 34 series from those of the CARD ACT 32 series.
  • the ECG graph 1 shows a first graph corresponding to what is called an electrogram in the art, or graph ECG1.
  • the ECG graph 1 represents a time evolution, denoted "t", of the amplitude, denoted "A”. , a cardiac activity signal, typically electrical.
  • the ECG graph 1 corresponds to a recording resulting from a measurement of cardiac activity, for example the recording CARD ACT in Figure 2.
  • the graph can be displayed on a screen or drawn on paper, for example.
  • ECG graph 1 shows a period of fibrillation. It corresponds to a signal of cardiac activity that is low-noise and not very complex. Activation front passages correspond to peaks 20-1 to 20-9 in amplitude A of cardiac activity. These peaks 20-1 to 20-9, and the dates to which they correspond, are easily distinguishable on ECG 1. Reference is made to FIG.
  • ECG graph 2 It shows a second electrogram, or ECG graph 2 30, under conditions similar to the ECG graph 1 of Figure 2.
  • the ECG 2 graph corresponds to an extract of a very irregular, complex and noisy signal.
  • the spread of the activation front passages covers substantially the entire time interval of the signal measurement. In such a case, the practitioner considers it uncertain to estimate the times (dates) of passage of the activation front. Peaks of greater amplitude 30-1 to 30-7 do not necessarily correspond to passages of the cardiac activation front.
  • Figure 4 Reference is made to Figure 4.
  • the function receives a first time series of amplitude values corresponding to a measurement signal extract.
  • cardiac here in the form of a table S [..] of floating point numbers si, .. s_N, or measurement table
  • a second time series of amplitude values corresponding to a reduced form of the cardiac measurement signal here in the form of an array SR [..] of floating numbers sr 1, .., sr_N, or reduction table.
  • the data of the first and second series are for example extracted respectively CARD ACT 32 and RDC CARD ACT data 34 of Figure 1.
  • Step 402 the function determines a collection of time nodes from the first series and the second series. Each node corresponds to a date.
  • the nodes are gathered here in a table, or table of nodes NOD [..].
  • NOD nodes
  • each node element nod_M of the NOD array [..] designates an indexed date of the reduction tables S [..] and SR [..]. Nodes define time intervals.
  • Step 402 essentially corresponds to the operation of the NOD GEN module 542.
  • the function further determines two collections of actual values at 1 .. a_N and b_l .. b_N, which together define a piecewise linear function of the second series which approximates the first series.
  • the two collections are respectively stored in floating tables, a table of slope A [..] and an offset table B [..].
  • Each value a i and each value b_i is maintained in relation to a node of the collection or the corresponding interval.
  • the values ai and b_i are stored as elements of the tables of slope A [..] and shift B [..] whose index corresponds to that of their respective node in the table of nodes NOD [ ..].
  • the function determines the collection of nodes and values a and b so as to optimize the plate or piece approximation of the first relative series by the linear composition of the series relating to the reduced signal of the cardiac measurement signal defined by the slope a and offset b.
  • Step 404 the function determines the transition dates of the activation front in the series.
  • the function selects nodes in the node collection based on a statistical comparison with a distribution computed from a probabilistic model.
  • Step 404 corresponds essentially to the operation of the NOD module SEL 544.
  • the function starts in a step 500, in which it receives a first time series of amplitude values corresponding to a cardiac activity measurement signal, for example in the form of the measurement table S [..], and a second time series of amplitude values corresponding to a reduced signal of the cardiac activity signal, for example in the form of the reduction chart SR [..].
  • the function initializes a first array of floating values al .. a_N, or table of slope A [..], and a second array of floating values b_l .. b_N, or shift table B [. .].
  • the function calls a subfunction srcEvalAdapt with the values of the tables of measurements S [..], reduction SR [..], slope A [..] and offset B [.. ].
  • the srcEvalAdapt function calculates by iteration the values of the tables of slope A [..] and offset B [..] as optimization of the piecewise linear approximation of the values of the table of measurements S [..] by the values of the table of SR reduction [..].
  • the srcEvalAdapt function also computes statistics on this approximation. These statistics are used for optimization.
  • the function initializes an array of floating values rsrc l .. rsrc N of the same dimension as the array of measurements S [..], or reconstruction table RSRC [..].
  • the RSRC reconstruction table [..] is intended to receive values resulting from the approximation of the values of the table of measurements S [..].
  • the function updates the values of the RSRC reconstruction table [..] with the result of a call of a srcReconstr subfunction with the values of the SR reduction tables [..], RSRC reconstruction [..], A [..] slope and B [..] offset.
  • This function reconstructs an approximation of the measurement signal, here values of the measurement table S [..], by a piecewise linear function of the reduced signal, here values of the reconstruction table SR [..].
  • the function initializes an array of floating values errx l .. errx N, or error table ERRX [..], of the same dimension as the array of measurements S [..].
  • This table is intended to store values representative of the difference between the linear approximation of the measurement signal and the measurement signal.
  • the function starts a loop structure by initializing a loop counter ix to zero.
  • the function assigns, as the index element ix of the ERRX error table [..], the value of the difference between the value of the index element ix in the array RSRC reconstruction [..] and the value of the index element ix in the measurement table S [..].
  • the counter ix is incremented and the step 512 is restarted as long as the counter ix is smaller than the value N of the dimension of the measurement table S [..].
  • the result of this loop is an error table ERRX [..] which represents the set of geometric differences between the values of the measurement table S [..] and its approximation by the values of the RSRC reconstruction table [..] ].
  • step 514 calculates statistical values relating to the quality of the approximation, namely:
  • a noerror value corresponding to the ratio of the sigma standard deviation to the dynamic lvl of the signal; and a signal-to-noise ratio value, or psnr value, that is at least twenty times the decimal logarithm of the noerror value.
  • Step 500 and following of FIG. 5 show a construction of a linear approximation function, by iterations, by increasing a number of time intervals at each iteration. Reference is made to Figure 6.
  • the function receives the measurement table S [.], The reduction table SR [. .], the slope table A [..] and the shift table B [..].
  • the function initializes an array of two integer values nod1 and nod_2.
  • the function assigns to node the smallest index value of the measurement table S [..] and to nod_2 the largest index value of the measurement table S [..].
  • nod l takes the value zero and nod_2 a value N corresponding to the dimension N of the table of measurements S [..].
  • the NOD table [..] thus comprises a reference to the index, in the measurement table S [..], the beginning element of the measurement period and the end element of the measurement period.
  • the nodes of the NOD array [..] correspond to the limits of the measurement interval of the cardiac activity signal.
  • the function calculates a standard deviation value of the values of the measurement table S [..], or errO value.
  • the function initializes an array of floating values errx l .. errx N, or error array ERRX [..] of the same dimension as the array of measurements S [..].
  • the function calculates an error value ERR by calling a sub-function nodErr with the values of the reduction tables SR [..], measurements S [..], slope A [.. ], B [..] offset, ERRX [..] error and the NOD node array [..] and reporting the result to the errO value.
  • the nodErr function returns the standard deviation of ERRX error table values [..].
  • the function starts a loop structure by initializing a loop counter in at the null value.
  • the function updates the node table NOD [..] as a result of calling an insrtSrceNod function with the values of the reduction tables SR [..], measurement S [..], slope A [..], offset B [..], error ERRX [..] and current node table NOD [..].
  • the insrtSrceNod function inserts an additional node into the NOD node table [..] and recalculates the values of the node table NOD [..], slope A [..] and offset B [..]. The calculation is done by minimizing the error.
  • step 616 the function recalculates the error value err by calling the nodErr function with the values of the node table NOD [..] resulting from step 614.
  • the counter in is incremented and steps 614 to 616 are restarted as long as the err error is greater than a predetermined minimum error value and the in counter is less than a ceiling value, or valNdomint value.
  • the minimum error value is a priori data. For example, you can set this value to 10 A -5.
  • the value valNdomint is a prior data, that is to say a parameter of the function.
  • the valNdomint value can be set as that ratio of the dimension N of the table of measurements S [..] on a value of minimum interval duration, generally between 40 ms and 60 ms.
  • the function starts in a step 700 in which it receives the measurement table S [..], the reduction table SR [..], the table of the values of slope A [..] and shift B [..] .
  • the function also receives the ERRX error table [..] and the NOD node table [..].
  • Table NOD [..] is, at this stage, of dimension M.
  • a variable aclvl is initialized.
  • the function starts a first loop structure by initializing a first inod loop counter, for example to the null value.
  • the function determines a value of average slope over the interval defined by the index values inod and inod + 1 in the node table NOD [..] between the reduced signal SR [..] and the original signal S [..], or alpha value.
  • the function starts a second loop structure, nested in the first, by setting a second loop counter ix to the value of the inod index element in the NOD node table [..] .
  • the function stores the alpha slope value as an index item ix of the slope table A [..]. It stores the difference between the value of the element of the S [..] measure array whose index corresponds to the value of the inod index element in the node table NOD [..] and the value aclvl as an index element ix of the shift table B [..].
  • Step 710 is restarted as long as the counter ix is less than the value designated by the index element inod + 1 in the node table NOD [..].
  • the loop of steps 708 to 710 fills the elements of the slope table A [..] whose index is between the values designated by the values inod and inod + 1 with a valid value of slope over this interval and the same elements offset table B [..] with the offset value valid on this interval.
  • the first inod loop counter is incremented. Steps 706 to 712 are restarted as long as the inod loop counter is smaller than the M dimension of the NOD node table [..]. This amounts to restarting the steps in question on each interval defined by the nodes of the table NOD [..].
  • the function starts a step 714 in which it uses the function srcRcstr with the values of the reduction tables SR [..], slope A [..], shift B [..] and error ERRX [..].
  • the function determines a dim dimension value as being the smallest value of the dimension of the S [..] and non-empty subset of the error table ERRX [. .].
  • the function starts a loop structure by initializing a third loop counter i to zero.
  • Step 720 is restarted as long as the counter i is smaller than the dim dimension.
  • the function determines a standard deviation value on the values of the elements of the array ERRX [..]. This value is returned.
  • the function starts with a step 800 in which it receives the tables of measurements S [..], reduction SR [..], slope A [..], offset B [..], error ERRX [ ..], NOD nodes [..].
  • the node table NOD [..] is, at this stage, of dimension P.
  • step 802 the function adds an index element P + 1 in the node table NOD [..].
  • step 804 the function determines the new nodes, i.e., the values of the elements of the node table NOD [..] and recalculates the values of the tables of slope A [..] and shift B [..] by minimizing the square of the difference between, on each interval:
  • the function starts in a step 900 in which it receives the tables of measurements S [..], reduction SR [..], slope A [..], offset B [..] and the reconstruction table RSCR [..] current.
  • the function initializes a float variable ix0.
  • the function assigns the null value to the index element 0 of the RSCR array [..].
  • the function starts a loop structure by initializing a counter ix to zero.
  • the function verifies that the index element ix in the offset array B [..] is different from the index element ixO in the shift array B [..]. If so, then the value ixO takes the value ix in the next step 910 and the function continues at 912. Otherwise, the loop is reiterated at 906 by incrementing the value of ix. The loop is reiterated by updating the index value ix + 1 of the RSCR reconstruction table [..].
  • step 912 This loop is about variable ix. It starts at the null value and ends at the reduced signal length. If the step test 908 of FIG. 9 is checked, then it is sufficient to update the index element ix0 as ix. Otherwise, go directly to step 912. The latter is always executed whether the test of step 908 is checked or not. In the next step 912, the function calculates the sum of:
  • the loop counter ix is incremented and steps 908 to 912 are restarted as long as the loop counter ix is less than the value N which corresponds to the dimension of the measurement array received as input.
  • the function of FIG. 9 determines the updated value, after the addition of a node to the NOD array [..], as described for example in relation to FIG. 8, of the signal reconstructed at this node.
  • the function receives a collection of nodes, for example in the form of the node table NOD [..].
  • the function will assign to each node of the array NOD [..] a discrete weight of value 0 or 1.
  • the weight values assigned to the nodes of the array NOD [..] are collected in a weighting table, or table W [..] of the same dimension as the table NOD [..].
  • the function carries out a conditional Bayesian optimization calculation which deals with the weights of the table W [..]. The calculation is done under a double constraint:
  • NOD_0 [..] the empirical distribution of the subset of the weights of value 1, denoted NOD_0 [..], of the product W [..] * NOD [..] follows a law of theoretical probability; and on the other hand that the sum of these new index value intervals in NOD_0 [..] is of dimension N.
  • the function selects among the nodes of the NOD array [..] those which correspond to time intervals whose probability is in accordance with the probability law in question.
  • the function combines the M nodes of the NOD array [..] in such a way that the distribution P of the resulting time periods delta_t (NOD [i] -NOD [j]) corresponds to the distribution of a law theoretical G of these periods.
  • the function tests possible combinations of M nodes. It selects the best combination, in the sense of an optimization on a directed tree (polynomial time). For example, statistical data from the theoretical law G are read from the MOS STAT data of FIG.
  • Step 1002 corresponds to a matching of a time series with a law of probability.
  • Conditional Bayesian optimization is carried out on the W-weight table. For example, a non-linear Bayesian inference filtering algorithm using hidden Markov chains is used.
  • the function returns a set of dates that correspond to the selected nodes, for example in a table TME [..].
  • the function starts with a step 1100 in which it receives a time series relating to a signal, for example taken from the CARD ACT record 32 of FIG. 1.
  • a time series relating to a signal for example taken from the CARD ACT record 32 of FIG. 1.
  • these data are received in the form of a table similar to the table of FIG. S measurements [..].
  • the function calculates a set of values of sexp l .. sexp N that it gathers in a table SEXP [..], or table of exponents of singularity.
  • SEXP [..]
  • the calculation of singularity exponent values is described in the article by AM Turiel, H. Yahia and C. Pérez-Vicente, (2008), Microcanonical Multifractal Formalism-a Geometrical Approach to Multifractal Systems: Part I. Singularity analysis, Journal of Physics A: Mathematical and Theoretical, 41, pp.015501-015536, doi: 10.1088 / 1751-8113 / 41/1/015501.
  • the function determines the most singular points of the measurement signal.
  • the function applies for example the method described in the article above, in particular in paragraph 4.3 and in the formula thirty-four (34).
  • the set of resulting values msm l .. msm P can be stored in an MSC array [..] of floats.
  • the most singular variety identifies points corresponding to sudden and sudden variations in signal amplitude. It corresponds to transitions in the input signal.
  • An optional parameter of this method is the density of the most singular variety MSM calculated. If this parameter is absent, a standard threshold may be implemented, corresponding for example to the density of the subset having exponents less than or equal to zero.
  • the function reconstructs a reduced signal sampled from the exponents of singularity, here the values of the tables of SEXP [..], of the most singular variety, here the values of the table MSC [..] , orientated, of the gradient and of the field oriented orthogonal to the most singular variety.
  • the MOD STAT module receives as input a time series of amplitude values corresponding to a raw form of a measurement signal of a cardiac activity, for example in the form of a table similar to the measurement table S [.. ].
  • the MOD STAT module calculates a distribution, or statistical distribution, of amplitude values from the measured amplitude values, as gathered for example in the table of measurements S [..].
  • the distribution can be stored in the form of a distribution table G [..], gathering empirical probability values.
  • the values in Table G [..] are calculated, for example, from the theoretical model below.
  • the module further calculates an activation period distribution, i.e. the corresponding probability values of interval durations.
  • the distribution of the activation periods can be stored in a DELTA [..] distribution table, each element of which stores an interval probability value.
  • the module preferably uses a stochastic propagation model of the cardiac activation front.
  • the function 9 (x, t) represents the phase, which is a distribution of the passage times and the shapes of the cardiac pulses.
  • the variable t represents the time while the variable x represents the position of the activation front, in a coordinate system relative to the core.
  • the numerical constants H and F correspond to scale characteristics.
  • the value of these H and F constants may vary with the sampling frequency. This value can be determined empirically and / or by consulting one of the articles below. Typically, the value of the constants H and F is of the order of 0.1.
  • the constant D represents a diffusion constant.
  • the value of this constant gives more or less importance to the ⁇ value. Its value typically corresponds to the standard values of the physical quantities considered.
  • the value of this constant D may vary with the sampling frequency.
  • the function ⁇ ( ⁇ ) represents an offset with respect to the time origin, or delay. Any function centered at the time origin can be used.
  • the function ⁇ ( ⁇ ) is a Gaussian centered on the time origin.
  • the theoretical law G corresponds formally to the resolution of this equation.
  • the optimization is carried out with respect to the theoretical law G.
  • the MOD STAT module preferably uses a law that derives from a generalized Langevin equation, or propagation equation.
  • the following references describe three methods for determining a probability law from a cardiac activation front propagation model:
  • the parameters of the generalized Langevin equation are adapted to correspond to the measured values of the cardiac activity signal, as gathered in particular in the measurement table S [..].
  • Bayesian inference sampling is applied in two steps.
  • the MOD STAT module determines, for example, the conditional expectation E (jf
  • the module uses the Fokker-Planck equation derived from equation (1) and the knowledge of conditional expectation E ( ⁇
  • the result is stored in table G [..].
  • a Bayesian inference sampling is carried out on the amplitude of the signal, for example on the amplitude values of the table S [..] .
  • the null hypothesis considers a Gaussian error distribution evaluated by denoising. This first sampling eliminates the nodes belonging to the null hypothesis.
  • a Bayesian inference sampling is performed on the amplitude variations of the source field.
  • the null hypothesis corresponds to the Gaussian variation of A [i + 1] - A [i]. This sampling makes it possible to discern two temporally very close activation fronts.
  • the graph shows trays of large temporal extent separated from each other by brief transition periods referenced 120-1 to 120-9 and 130-1 to 130-9 respectively.
  • FIG. 14 It shows on an electrogram similar to that of FIG. 3 the dates 140-1 to 140-9 of the activation front. While on the transition periods of Figures 12 and 13 correspond to several time nodes, a single activation date is retained per period. Reference is made to FIGS. 15 and 16, similar to FIGS. 12 and 13, and FIG. 17 for the electrogram of FIG. 4.
  • a and b show the existence of several nodes 150-1 to 150-4 and 160-1 to 160-4 respectively.
  • a single 150-2, 160-3 of these nodes corresponds to the passage of an activation front, referenced 170-1 in FIG. 17.
  • the passage times 170-1 to 170-9 of the action front do not correspond to the peaks of high amplitude in the activity signal.
  • Figure 18 shows an electrogram for a crude form of cardiac activity.
  • Figures 19, 20 and 21 show the result of intermediate processing steps. They represent the local processing of the raw signal, by extraction of a new signal in figure 19, or by Bayesian inference on the nature of the local noise in figure 20.
  • FIG. 21 represents a signal resulting from the intersection of the signal obtained by extraction and the signal obtained by Bayesian inference. The intersection of these signals is a signal defined as follows:
  • the value of the intersection signal is non-zero between two maxima of the derivative of the signal of FIG. 19.
  • Figure 21 shows that it is possible to distinguish the activity zones from the measurement noise zones.
  • the zones of activity thus distinguished can be compared with the wave F of an electrocardiogram if it is sufficiently voltée, or even a magnetic resonance image.
  • a device for processing cardiac activity signals in a raw form has been described which makes it possible to distinguish therefrom areas of activity.
  • the invention can also be seen as a method of assisting cardiology comprising the following steps:
  • cardiac activity data comprising at least one time series of amplitude values, this time series corresponding to a raw form of measurement of cardiac activity, and a second time series of amplitude values, this second time series corresponding to a reduced form of cardiac activity measurement;

Landscapes

  • Health & Medical Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Medical Informatics (AREA)
  • Public Health (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Pathology (AREA)
  • Physics & Mathematics (AREA)
  • Surgery (AREA)
  • Animal Behavior & Ethology (AREA)
  • Signal Processing (AREA)
  • Artificial Intelligence (AREA)
  • Cardiology (AREA)
  • Veterinary Medicine (AREA)
  • Molecular Biology (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Biophysics (AREA)
  • Psychiatry (AREA)
  • Physiology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Epidemiology (AREA)
  • Data Mining & Analysis (AREA)
  • Primary Health Care (AREA)
  • Evolutionary Computation (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)

Abstract

A cardiology device comprises memory (3) capable of storing heart activity data. These data comprise a chronological series of amplitude values (32). This series corresponds to a raw form of measurement of heart activity. The device additionally comprises a processing unit (54). The heart activity data moreover comprise a second chronological series of amplitude values (34). This second series (34) corresponds to a reduced form of the heart activity measurement. The processing unit (54) is configured to construct a linear function by parts of the amplitude values of the second chronological series (34). The linear function is adjusted to the amplitude values of the chronological series (32), according to an optimization criterion. Each part of the linear function corresponds to a time interval of the chronological series. The processing unit (54) is moreover configured to calculate a probabilistic law relative to periods of heart activity, according to a stochastic model, to combine some of said time intervals in order to obtain, for resultant time intervals, a statistical distribution of time periods approaching said probabilistic law, and to deliver data relative to the resultant time intervals in the form of data relative to a heart rhythm.

Description

Dispositif analyseur de rythme cardiaque  Heart rate analyzer device
L'invention concerne un dispositif de cardiologie et un procédé d'aide à la cardiologie. L'activité cardiaque, qu'elle soit considérée électriquement ou mécaniquement, peut être représentée par un signal temporel dont l'amplitude correspond respectivement à une différence de potentiel électrique ou une pression sanguine ou analogue dans le cœur. The invention relates to a cardiology device and a method of assisting cardiology. The cardiac activity, whether considered electrically or mechanically, may be represented by a time signal whose amplitude corresponds respectively to an electrical potential difference or a blood pressure or the like in the heart.
L'activité électrique cardiaque d'un sujet est habituellement mesurée au moyen de capteurs qui prennent la forme d'électrodes. Ces électrodes sont placées sur le sujet, à distance du cœur, sur l'épidémie par exemple, ou sur le cœur lui-même, sur l'épicarde ou l'endocarde. L'activité mécanique peut être mesurée au moyen de capteurs de pression disposés sur le réseau sanguin, à proximité du cœur, ou par angiographie par exemple. The cardiac electrical activity of a subject is usually measured by means of sensors that take the form of electrodes. These electrodes are placed on the subject, away from the heart, on the epidemic, for example, or on the heart itself, on the epicardium or the endocardium. The mechanical activity can be measured by means of pressure sensors arranged on the blood network, near the heart, or by angiography, for example.
Une mesure d'activité cardiaque résulte en une ou plusieurs séries temporelles correspondant chacune à un extrait d'un signal de mesure d'activité, le cas échéant échantillonné. Une série temporelle peut être mémorisée numériquement sous la forme d'une collection de données de couples date/amplitude, ou, de manière quasi équivalente, une collection indexée de valeurs d'amplitude. A measurement of cardiac activity results in one or more time series each corresponding to an extract of an activity measurement signal, where appropriate sampled. A time series can be digitally stored as a collection of date / amplitude date data, or, almost equivalently, an indexed collection of amplitude values.
Une série temporelle, ou la collection correspondante de données, peut être restituée graphiquement, en particulier, pour l'activité électrique mesurée sur le cœur, sous la forme de ce que l'on appelle classiquement un électrogramme. A time series, or the corresponding collection of data, may be graphically rendered, in particular, for the electrical activity measured on the heart, in the form of what is conventionally called an electrogram.
L'électrogramme constitue un outil essentiel pour le praticien qui s'intéresse à l'activité cardiaque, en particulier lors d'une exploration invasive en bloc opératoire. Le praticien y recherche notamment des indicateurs susceptibles d'orienter son diagnostic et le traitement adéquat. En particulier, lorsque des pics d'amplitude sont identifiables, une mesure de rythme local peut être effectuée. Ces pics correspondent à des passages de ce que l'on appelle le front d'activation cardiaque à proximité du capteur. L'écart temporel entre pics d'amplitude successifs correspond au rythme cardiaque, au moins lorsque le rythme est considéré localement. The electrogram is an essential tool for the practitioner who is interested in cardiac activity, especially during an invasive exploration in the operating room. In particular, the practitioner looks for indicators that can guide his diagnosis and the appropriate treatment. In particular, when amplitude peaks are identifiable, a local timing measurement can be performed. These peaks correspond to passages of what is called the cardiac activation front near the sensor. The time gap between successive amplitude peaks corresponds to the heart rate, at least when the rhythm is considered locally.
Certaines pathologies cardiaques, comme les arythmies, et plus particulièrement l'arythmie du type connue sous le nom de "fïbrillation auriculaire", se traduisent par des signaux de mesure d'activité cardiaque complexes. Cette complexité s'apparente à un bruit intrinsèque aux signaux. Il est alors très compliqué d'y détecter des caractéristiques temporelles locales, que ce soit de manière automatique, par traitement des données du signal de mesure enregistré, ou de manière manuelle ou visuelle, par interprétation de l'électrogramme correspondant. Le praticien peut se trouver incapable de repérer les passages du front d'activation dans un électrogramme, en particulier dans le cas où le signal acquis est fragmenté. Certain cardiac pathologies, such as arrhythmias, and more particularly arrhythmia of the type known as "atrial fibrillation", result in complex cardiac activity measurement signals. This complexity is similar to a noise intrinsic to the signals. It is then very difficult to detect local temporal characteristics, whether automatically, by processing the data of the recorded measurement signal, or manually or visually, by interpretation of the corresponding electrogram. The practitioner may be unable to locate the activation front passages in an electrogram, particularly in the case where the acquired signal is fragmented.
Cette difficulté se révèle particulièrement handicapante dans le contexte du traitement interventionnel des arythmies, par ablation radio fréquence par exemple. Là, le praticien a besoin d'indicateurs sur l'activité cardiaque du patient, qui puissent le guider dans son intervention. En premier lieu, le praticien a besoin d'indicateurs suffisamment stables pour être utilisés dans la préparation de l'intervention. Il lui est aussi utile de connaître ces indicateurs pratiquement en temps réel lors de l'intervention. Ces indicateurs comprennent d'abord le rythme cardiaque local, déterminé à partir des temps de passage du front d'activation. This difficulty is particularly troublesome in the context of interventional treatment of arrhythmias, for example by radio frequency ablation. Here, the practitioner needs indicators on the cardiac activity of the patient, who can guide him in his intervention. First, the practitioner needs indicators that are sufficiently stable to be used in the preparation of the intervention. It is also useful to know these indicators almost in real time during the intervention. These indicators include first the local heart rate, determined from the time of passage of the activation front.
WO 2005/115232 décrit ainsi un procédé et un système pour faire apparaître des valeurs de longueur cycle de fïbrillation auriculaire, ou période locale de fïbrillation auriculaire, sur un électrogramme. Le procédé et le système sont basés sur une annotation manuelle des pics d'activation sur l'électrogramme. Ils se révèlent donc inefficaces dans le cas où le praticien ne peut distinguer ces pics d'activation sur l'électrogramme. Ce document relève d'ailleurs la difficulté de mettre en œuvre une méthode de détection automatique de ces fronts d'activation. WO 2005/115232 thus discloses a method and system for displaying atrial fibrillation cycle length values, or local atrial fibrillation period, on an electrogram. The method and system are based on manual annotation of activation peaks on the electrogram. They are therefore ineffective in the case where the practitioner can not distinguish these activation peaks on the electrogram. This document also notes the difficulty of implementing a method of automatic detection of these activation fronts.
De fait, aujourd'hui, la totalité, ou presque, des procédés et dispositifs d'assistance à l'analyse du rythme cardiaque sont basés sur une méthode algorithmique par spectre de Fourier, connue sous le nom de "Dominant Frequency", ou "fréquence dominante" en français. Cette méthode permet au mieux de distinguer des régions ou des périodes différentes dans un électrogramme, selon des rythmes arythmiques propres. Cette méthode traite un signal de mesure cardiaque de manière globale et se trouve, de ce fait, impropre à la détermination des temps de passage du front d'activation. En outre, cette méthode nécessite de filtrer le signal de mesure cardiaque. Or, dans le cas d'arythmie, le signal de mesure cardiaque présente un spectre très large, ce qui rend le signal résultant du filtrage de fréquence trop basse. Le signal filtré est impropre à l'analyse de Fourier pour des raisons d'aliasing (repli de spectre en français), c'est-à-dire d'insuffisance de contenu fréquentiel. In fact, today, almost all of the methods and devices for assisting heart rate analysis are based on an algorithmic Fourier, known as "Dominant Frequency", or "dominant frequency" in French. This method makes it possible, at best, to distinguish different regions or periods in an electrogram, according to specific start-stop rhythms. This method processes a cardiac measurement signal globally and is therefore unsuitable for determining the activation edge passage times. In addition, this method requires filtering the cardiac measurement signal. However, in the case of arrhythmia, the cardiac measurement signal has a very wide spectrum, which makes the signal resulting from the frequency filtering too low. The filtered signal is unsuitable for Fourier analysis for reasons of aliasing (frequency fallback in French), that is to say of insufficient frequency content.
Plus généralement, les signaux de mesure d'activité cardiaque sont anharmoniques. Selon l'arythmie, ils peuvent être quasi périodiques, chaotiques ou stochastiques. Les procédés et dispositifs basés sur l'analyse spectrale de tels signaux sont inadaptés à la détection de caractéristiques locales dans ces signaux. More generally, the signals for measuring cardiac activity are anharmonic. Depending on the arrhythmia, they can be quasi-periodic, chaotic or stochastic. Methods and devices based on the spectral analysis of such signals are unsuitable for detecting local characteristics in these signals.
L'invention vient améliorer la situation. The invention improves the situation.
Le dispositif de cardiologie proposé comprend de la mémoire capable de stocker des données d'activité cardiaque. Ces données comprennent au moins une série chronologique de valeurs d'amplitude. Cette série chronologique correspond à une forme brute de mesure d'activité cardiaque. Le dispositif comprend en outre une unité de traitement. Les données d'activité cardiaque comprennent en outre une seconde série chronologique de valeurs d'amplitude. Cette seconde série chronologique correspond à une forme réduite de la mesure d'activité cardiaque. L'unité de traitement est agencée pour construire une fonction linéaire par parties des valeurs d'amplitude de la seconde série chronologique. La fonction linéaire est ajustée sur les valeurs d'amplitude de la série chronologique, conformément à un critère d'optimisation. Chaque partie de la fonction linéaire correspond à un intervalle temporel respectif de la série chronologique. L'unité de traitement est en outre agencée pour calculer une loi probabiliste, relative à des périodes d'activité cardiaque, conformément à un modèle stochastique, combiner certains au moins desdits intervalles temporels respectifs de manière à obtenir, pour des intervalles temporels résultants, une répartition statistique de périodes temporelles approchant ladite loi probabiliste, et délivrer des données relatives aux intervalles temporels résultants en tant que données relatives à un rythme cardiaque. Le dispositif proposé permet d'analyser l'activité cardiaque d'un patient à partir de signaux de mesure bruts, relatifs au fonctionnement du cœur du patient. Il fait apparaître, de manière claire, rapide et fiable, des caractéristiques temporelles fondamentales des signaux de mesure bruts, et permet de déterminer effectivement ces caractéristiques temporelles. Le dispositif proposé livre des résultats bien plus exacts que les méthodes classiques, en particulier connues en électrophysiologie. Ceci est vrai même dans le cas de signaux de mesure bruts très complexes/bruités. The proposed cardiology device includes memory capable of storing cardiac activity data. These data include at least one time series of amplitude values. This time series corresponds to a raw form of measurement of cardiac activity. The device further comprises a processing unit. The cardiac activity data further includes a second time series of amplitude values. This second time series corresponds to a reduced form of measurement of cardiac activity. The processing unit is arranged to construct a linear function by portions of the amplitude values of the second time series. The linear function is adjusted to the amplitude values of the time series according to an optimization criterion. Each part of the linear function corresponds to a respective time interval of the time series. The processing unit is further arranged to calculate a probabilistic law, relating to periods of cardiac activity, according to a stochastic model, combining at least some of said respective time intervals so as to obtain, for resulting time intervals, a statistical distribution of time periods approaching said probabilistic law, and outputting data relating to the resulting time intervals as data relating to a heart rate. The proposed device makes it possible to analyze the cardiac activity of a patient from raw measurement signals relating to the operation of the patient's heart. It clearly, rapidly and reliably displays fundamental time characteristics of the raw measurement signals, and makes it possible to effectively determine these temporal characteristics. The proposed device delivers much more accurate results than conventional methods, particularly known in electrophysiology. This is true even in the case of very complex / noisy raw measurement signals.
Le dispositif proposé permet d'automatiser la détection de caractéristiques temporelles locales dans des signaux de mesure bruts d'acquisition, en particulier de pics d'activité qui marquent le passage du front d'activation. Le dispositif proposé est particulièrement adapté aux cas d'arythmie cardiaque, où le signal de mesure brut présente un caractère bruité assez voire très marqué. Le dispositif tire profit des propriétés stochastiques du signal de mesure. Le dispositif proposé permet de mesurer à la fois un rythme cardiaque moyen et un rythme cardiaque local, correspondant aux passages du front d'activation cardiaque. The proposed device makes it possible to automate the detection of local time characteristics in raw acquisition measurement signals, in particular peaks of activity which mark the passage of the activation front. The proposed device is particularly suitable for cases of cardiac arrhythmia, where the raw measurement signal has a fairly or very marked noisy character. The device takes advantage of the stochastic properties of the measurement signal. The proposed device measures both an average heart rate and a local heart rate, corresponding to the cardiac activation front passages.
On propose également un procédé d'assistance à la cardiologie comprenant les étapes suivantes : There is also provided a method of assisting cardiology comprising the following steps:
- stocker des données d'activité cardiaque comprenant au moins une série chronologique de valeurs d'amplitude, cette série chronologique correspondant à une forme brute de mesure d'activité cardiaque, et une seconde série chronologique de valeurs d'amplitude, cette seconde série chronologique correspondant à une forme réduite de la mesure d'activité cardiaque ;  storing cardiac activity data comprising at least one time series of amplitude values, this time series corresponding to a raw form of measurement of cardiac activity, and a second time series of amplitude values, this second time series corresponding to a reduced form of cardiac activity measurement;
- construire une fonction linéaire par parties des valeurs d'amplitude de la seconde série chronologique, la fonction linéaire étant ajustée sur les valeurs d'amplitude de la première série chronologique, conformément à un critère d'optimisation, chaque partie de la fonction linéaire correspondant à un intervalle temporel respectif de ladite série chronologique, constructing a linear function by parts of the amplitude values of the second time series, the linear function being adjusted to the amplitude values of the first time series, in accordance with an optimization criterion, each part the linear function corresponding to a respective time interval of said time series,
- calculer une loi probabiliste, relative à des périodes d'activité cardiaque, conformément à un modèle stochastique,  - calculate a probabilistic law, relating to periods of cardiac activity, according to a stochastic model,
- combiner certains au moins desdits intervalles temporels respectifs de manière à obtenir, pour des intervalles temporels résultants, une répartition de périodes temporelles approchant ladite loi probabiliste,  combining at least some of said respective time intervals so as to obtain, for resulting time intervals, a distribution of time periods approaching said probabilistic law,
- délivrer des données relatives aux intervalles temporels résultants en tant que données relatives à un rythme cardiaque.  delivering data relating to the resulting time intervals as data relating to a heart rhythm.
D'autres caractéristiques et avantages de l'invention apparaîtront à l'examen de la description ci-après, et des dessins annexés, sur lesquels : Other characteristics and advantages of the invention will appear on examining the following description and the attached drawings, in which:
- la figure 1 représente un schéma fonctionnel d'un dispositif d'assistance à l'analyse de signaux cardiaques selon l'invention ; FIG. 1 represents a block diagram of an assistance device for the analysis of cardiac signals according to the invention;
- les figures 2 et 3 représentent des électrogrammes ; FIGS. 2 and 3 represent electrograms;
- la figure 4 représente un ordinogramme illustrant le fonctionnement d'un module de traitement de signaux de mesure cardiaque pour le dispositif de la figure 1 ; FIG. 4 represents a flowchart illustrating the operation of a cardiac signal processing module for the device of FIG. 1;
- la figure 5 représente un ordinogramme qui détaille une réalisation d'une étape de la figure 4 ; - la figure 6 représente un ordinogramme qui détaille une réalisation d'une étape de la figure 5 ; FIG. 5 represents a flow chart which details an embodiment of a step of FIG. 4; FIG. 6 represents a flow chart which details an embodiment of a step of FIG. 5;
- la figure 7 représente un ordinogramme qui détaille une réalisation d'une étape de la figure 6 ; FIG. 7 represents a flow chart which details an embodiment of a step of FIG. 6;
- la figure 8 représente un ordinogramme qui détaille une réalisation d'une étape de la figure 6 ; - la figure 9 représente un ordinogramme qui détaille une réalisation d'une étape de la figure 7 ; - la figure 10 représente un ordinogramme qui illustre le fonctionnement d'un module de calcul de signal proxy ; FIG. 8 represents a flow chart which details an embodiment of a step of FIG. 6; FIG. 9 represents a flow chart which details an embodiment of a step of FIG. 7; FIG. 10 represents a flowchart that illustrates the operation of a proxy signal calculation module;
- la figure 11 la figure 5 représente un ordinogramme qui détaille une réalisation d'une étape de la figure 4 ; FIG. 5 represents a flow chart which details an embodiment of a step of FIG. 4;
- les figures 12 et 13 représentent des graphiques illustrant un signal reconstruit ; Figures 12 and 13 show graphs illustrating a reconstructed signal;
- la figure 14 représente un électrogramme ; - les figures 15 et 16 sont analogues aux figures 12 et 13 ; FIG. 14 represents an electrogram; - Figures 15 and 16 are similar to Figures 12 and 13;
- la figure 17 est analogue à la figure 14 ; - Figure 17 is similar to Figure 14;
- la figure 18 représente un électrogramme ; et - Figure 18 shows an electrogram; and
- les figures 19 à 21 représentent des graphiques illustrant un traitement de l'électrogramme de la figure 18. FIGS. 19 to 21 show graphs illustrating a processing of the electrogram of FIG. 18.
Les dessins annexés contiennent des éléments de caractère certain et pourront par conséquent non seulement servir à compléter l'invention, mais aussi contribuer à sa définition, le cas échéant. The attached drawings contain elements of a certain character and may therefore not only serve to complete the invention, but also contribute to its definition, if necessary.
On fait référence à la figure 1. Elle montre un dispositif d'assistance à l'analyse de signaux cardiaques 1. Le dispositif 1 comprend de la mémoire 3 organisée pour stocker des données relatives à l'activité cardiaque d'un patient au moins. Ces données comprennent en particulier des données correspondant à des mesures d'activité cardiaque. Le dispositif 1 comprend en outre une unité de traitement 5, avec par exemple un ou plusieurs microprocesseurs qui exécutent un système d'exploitation 52 et un module de traitement, ou module ANLSR 54. Reference is made to FIG. 1. It shows a device for assisting the analysis of cardiac signals 1. The device 1 comprises memory 3 organized to store data relating to the cardiac activity of at least one patient. These data include in particular data corresponding to measurements of cardiac activity. The device 1 further comprises a processing unit 5, for example with one or more microprocessors that execute an operating system 52 and a processing module, or module ANLSR 54.
Le module ANLSR 54 traite certaines au moins des données de la mémoire 3 pour en tirer des données utiles à l'analyse du rythme cardiaque du patient. Ces données utiles peuvent être stockées dans la mémoire 3, au moins temporairement. The ANLSR module 54 processes at least some of the data of the memory 3 to derive data useful for analyzing the patient's heart rate. This useful data can be stored in the memory 3, at least temporarily.
Les données d'activité cardiaque correspondent à des séries temporelles, ou chronologiques, qui maintiennent une relation entre une pluralité de valeurs d'amplitude et des valeurs de date correspondantes, éventuellement relatives. Les valeurs d'amplitude peuvent être mises en relation chacune avec une valeur d'index. Chaque valeur d'index peut être mise en relation avec une valeur de date. Par exemple, une série temporelle peut comprendre des valeurs d'amplitude indexées et les valeurs d'index correspondent à des intervalles de temps réguliers, en particulier déduit d'un taux d'échantillonnage. The cardiac activity data correspond to time series, or time series, which maintain a relationship between a plurality of amplitude values and corresponding, possibly relative, date values. The amplitude values can each be related to an index value. Each index value can be related to a date value. For example, a time series may include indexed amplitude values and the index values correspond to regular time intervals, particularly derived from a sampling rate.
Chaque série temporelle peut être mémorisée en tant que fichier informatique dont le format autorise la mise en relation des données temporelles et des données d'amplitude. Par exemple, chaque série peut être mémorisée dans un fichier du type connu sous le nom de "CSV", pour "Comma Separated Values", ou "valeurs séparées par virgule" en français. En particulier, chaque ligne d'un tel fichier comprend une valeur de date et/ou d'index, séparée d'une valeur d'amplitude par un caractère séparateur, tel qu'une virgule par exemple. En variante, certaines des données peuvent être mémorisées dans un fichier informatique d'un format propre à être traité par un programme à fonction de tableur. Each time series can be stored as a computer file whose format allows the temporal data to be related to the amplitude data. For example, each series can be stored in a file of the type known as "CSV", for "Comma Separated Values", or "comma-separated values" in French. In particular, each line of such a file comprises a date and / or index value, separated from an amplitude value by a separator character, such as a comma for example. Alternatively, some of the data may be stored in a computer file of a format suitable for processing by a spreadsheet program.
Les données de travail comprennent au moins une première série temporelle de valeurs d'amplitude relative à une mesure d'activité cardiaque, ou série CARD ACT 32. Il s'agit par exemple d'un extrait de signal de mesure. Les données de la série CARD ACT 32 correspondent à une forme brute de mesure d'activité cardiaque. Ces données de la série CARD ACT 32 peuvent résulter d'une acquisition de signal directement par le dispositif 1 au moyen d'un module d'acquisition (non représenté) et d'un ou plusieurs capteurs reliés au dispositif 1, par exemple par une interface d'entrée telle que l'interface INPT 7 représentée sur la figure 1. En remplacement ou en complément, la série CARD ACT 32 peut être chargée directement depuis un ou plusieurs fichiers de données. Les données de travail comprennent encore au moins une seconde série temporelle de valeurs d'amplitude, ou série RDC CARD ACT 34, qui correspond à une forme réduite d'une partie au moins de la mesure d'activité cardiaque correspondant à la série CARD ACT 32. Cette forme réduite, que l'on qualifie aussi parfois de "proxy", peut être construite à partir de ce que l'on appelle la variété la plus singulière de la mesure cardiaque. On peut obtenir plus de détails sur la définition de la forme réduite d'un signal, ou signal réduit, dans A. Turiel, H. Yahia and C. Pérez-Vicente, (2008), Microcanonical multifractal formalism-a geometrical approach to multifractal Systems : Part I. Singularity analysis, Journal of Physics A: Mathematical and Theoretical,41, pp.015501-015536, doi: l 0.1088/1751-8113/41/1/015501. The work data includes at least a first time series of amplitude values relative to a cardiac activity measurement, or CARD ACT 32 series. for example a measurement signal extract. CARD ACT 32 series data is a crude form of measurement of cardiac activity. This data of the CARD ACT series 32 may result from a signal acquisition directly by the device 1 by means of an acquisition module (not shown) and of one or more sensors connected to the device 1, for example by a device. input interface such as the INPT interface 7 shown in FIG. 1. Alternatively or in addition, the CARD ACT 32 series can be directly loaded from one or more data files. The work data further includes at least a second time series of amplitude values, or RDC CARD ACT 34 series, which corresponds to a reduced form of at least a portion of the cardiac activity measurement corresponding to the CARD ACT series. 32. This reduced form, sometimes referred to as "proxy", can be constructed from what is called the most singular variety of cardiac measurement. Further details on the definition of the reduced form of a signal, or reduced signal, can be obtained from A. Turiel, H. Yahia and C. Pérez-Vicente, (2008), Microcanonical multifractal formalism-a geometrical approach to multifractal Systems: Part I. Singularity analysis, Journal of Physics A: Mathematical and Theoretical, 41, pp. 015501-015536, published in: 0.1088 / 1751-8113 / 41/1/015501.
Les données de travail comprennent encore une troisième série temporelle de valeurs d'amplitude, ou série ACT FRT 38, correspondant à des temps d'activation cardiaque dans la mesure d'activité cardiaque correspondant à la série CARD ACT 32. La série ACT FRT 38 est calculée par la fonction de traitement 5, à partir des données des séries CARD ACT 32 et RDC CARD ACT 34. The work data further includes a third time series of amplitude values, or ACT FRT 38 series, corresponding to cardiac activation times in the cardiac activity measurement corresponding to the CARD ACT 32 series. The ACT FRT series 38 is calculated by the processing function 5 from data from the CARD ACT 32 and RDC CARD ACT 34 series.
Les données de travail comprennent encore des données statistiques concernant au moins une répartition de durées d'intervalles d'activation, ou données MOD STAT 39. Le module ANLSR 54 comprend un premier sous-module, ou module NOD GEN 542, qui construit une série temporelle de valeurs d'amplitude correspondant à une forme approximée de la mesure d'activité cardiaque correspondant à la série CARD ACT 32. Cette forme approximée est construite comme une fonction linéaire par morceaux des valeurs d'amplitude de la forme réduite de la mesure d'activité cardiaque, par exemple des données de la série temporelle RDC CARD ACT 34. Cette forme approximée peut être mémorisée dans la mémoire 3, par exemple sous la forme d'une série temporelle de valeurs d'amplitude, ou série APX CARD ACT 37. The work data further comprises statistical data relating to at least one distribution of activation interval durations, or MOD STAT 39 data. The ANLSR module 54 comprises a first submodule, or GEN 542 NOD module, which constructs a series of amplitude values corresponding to an approximate form of cardiac activity measurement corresponding to the CARD ACT 32 series. This approximated form is constructed as a piecewise linear function of the amplitude values of the reduced form of the cardiac activity measurement, for example data from the RDC CARD ACT 34 time series. This approximated form can be stored in the memory 3, for example as a time series of amplitude values, or APX CARD ACT 37 series.
La mémoire 3 stocke des données définissant la fonction linéaire par morceaux. Ici, ces données sont mémorisées sous la forme d'une série temporelle de valeurs de pente et d'une série temporelle de valeurs de décalage. Ces séries définissent conjointement les paramètres de la fonction linéaire d'approximation pour chaque élément de la forme approximée. Sur la figure 1, les données de ces deux séries sont rassemblées dans le tableau OPT RDC CARD 36 Le module NOD GEN 542 construit la forme approximée de la mesure d'activité cardiaque par itération, en optimisant selon un critère minimisation d'erreur. The memory 3 stores data defining the piecewise linear function. Here, these data are stored as a time series of slope values and a time series of offset values. These series jointly define the parameters of the linear approximation function for each element of the approximated form. In FIG. 1, the data of these two series are collated in the table OPT RDC CARD 36 The NOD module GEN 542 constructs the approximate form of the measurement of cardiac activity by iteration, optimizing according to an error minimization criterion.
On construit une forme réduite d'une partie au moins de la mesure d'activité cardiaque correspondant à la série CARD ACT 32 comme une fonction affine de cette série CARD ACT 32, sur un jeu d'intervalles temporels inclus dans l'intervalle temporel du signal de mesure d'origine. A reduced form of at least a portion of the cardiac activity measurement corresponding to the CARD ACT 32 series is constructed as an affine function of this CARD ACT 32 series over a set of time intervals included in the time interval of the CARD ACT 32 series. original measurement signal.
Les coefficients de cette approximation affine et le jeu d'intervalles temporels où cette approximation est valide peuvent être déterminés en minimisant la somme des carrés des différences entre les valeurs d'amplitude de la forme réduite du signal de mesure, par exemple de la série RDC CARD ACT 34, et de l'approximation affine. La fonction linéaire par morceaux peut être construite par itération, en optimisant un critère d'erreur écrit sous une forme quadratique. Le module NOD GEN délivre une collection d'intervalles temporels qui correspondent chacun à une partie de fonction linéaire d'approximation et des données qui définissent, sur chacun de ces intervalles, la fonction linéaire d'approximation de la série RDC CARD ACT 34. Les bornes de ces intervalles correspondent chacune à un nœud, c'est-à-dire un pointeur vers une valeur de date de la série CARD ACT 32. The coefficients of this affine approximation and the set of time intervals where this approximation is valid can be determined by minimizing the sum of the squares of the differences between the amplitude values of the reduced form of the measurement signal, for example from the RDC series. CARD ACT 34, and the affine approximation. The piecewise linear function can be built by iteration, optimizing an error criterion written in a quadratic form. The NOD GEN module delivers a collection of time intervals that each correspond to a linear approximation function part and data that define, on each of these intervals, the linear approximation function of the series. RDC CARD ACT 34. The bounds of these intervals each correspond to a node, that is, a pointer to a date value of the CARD ACT 32 series.
Le module ANLSR 54 comprend un second sous-module, ou module NOD SEL 544, qui traite la sortie du module NOD GEN 542 sur la base d'une comparaison statistique entre les intervalles temporels de la forme approximée de la série CARD ACT 32 et une loi probabiliste tirée d'une modélisation cardiaque. Le traitement comporte une sélection par filtrage Bayésien de nœuds délivrés par le module NOD GEN 542 et une méthode de "clustering", ou "partitionnement des données" en français. Le module NOD SEL 544 combine les intervalles temporels délivrés par le module NOD GEN 542 de manière à obtenir des intervalles temporels dont la répartition des périodes temporelles approche la loi probabiliste. The ANLSR module 54 comprises a second sub-module, or NOD module SEL 544, which processes the output of the NOD module GEN 542 on the basis of a statistical comparison between the time intervals of the approximate form of the CARD ACT series 32 and a probabilistic law derived from cardiac modeling. The processing includes a selection by Bayesian filtering of nodes delivered by the NOD GEN module 542 and a method of "clustering", or "partitioning of the data" in French. The NOD SEL module 544 combines the time intervals delivered by the NOD module GEN 542 so as to obtain time intervals whose distribution of the time periods approaches the probabilistic law.
Le module ANLSR 54 délivre des données relatives aux intervalles temporels fournis en sortie du module NOD SEL 544, par exemple à travers une interface de sortie, ou interface OUTP 9. Cette interface de sortie peut être reliée à un moniteur de manière à resituer graphiquement certaines au moins de ces données. Les données en question comprennent par exemple des dates de passage du front d'activation cardiaque. En option, le module de traitement comprend encore un troisième sous-module, ou module RDCR 546, capable de construire une série temporelle de valeurs d'amplitude correspondant à une forme réduite d'une mesure d'activité cardiaque. En particulier, le module RDCR 546 est agencé pour calculer les données de la série RDC CARD ACT 34 à partir de celles de la série CARD ACT 32. The ANLSR module 54 delivers data relating to the time intervals supplied at the output of the NOD module SEL 544, for example through an output interface, or OUTP interface 9. This output interface can be connected to a monitor so as to graphically resituate certain at least of these data. The data in question include for example dates of passage of the cardiac activation front. Optionally, the processing module further comprises a third sub-module, or RDCR module 546, capable of constructing a time series of amplitude values corresponding to a reduced form of a measurement of cardiac activity. In particular, the RDCR module 546 is designed to calculate the data of the RDC CARD ACT 34 series from those of the CARD ACT 32 series.
On fait référence à la figure 2. Reference is made to Figure 2.
Elle montre un premier graphique correspondant à ce que l'on appelle un électrogramme dans la technique, ou graphique ECG1 20. Le graphique ECG 1 20 représente une évolution dans le temps, noté "t", de l'amplitude, notée "A", d'un signal d'activité cardiaque, typiquement électrique. Le graphique ECG 1 20 correspond à un enregistrement résultant d'une mesure d'activité cardiaque, par exemple l'enregistrement CARD ACT de la figure 2. Le graphique peut être affiché sur un écran ou tracé sur un support papier par exemple. It shows a first graph corresponding to what is called an electrogram in the art, or graph ECG1. The ECG graph 1 represents a time evolution, denoted "t", of the amplitude, denoted "A". , a cardiac activity signal, typically electrical. The ECG graph 1 corresponds to a recording resulting from a measurement of cardiac activity, for example the recording CARD ACT in Figure 2. The graph can be displayed on a screen or drawn on paper, for example.
Le graphique ECG 1 montre une période de fïbrillation. Il correspond à un signal d'activité cardiaque qui est peu bruité et peu complexe. Les passages du front d'activation correspondent à des pics 20-1 à 20-9 dans l'amplitude A de l'activité cardiaque. Ces pics 20-1 à 20-9, et les dates auxquelles ils correspondent, sont aisément distinguables sur ECG 1. On fait référence à la figure 3. ECG graph 1 shows a period of fibrillation. It corresponds to a signal of cardiac activity that is low-noise and not very complex. Activation front passages correspond to peaks 20-1 to 20-9 in amplitude A of cardiac activity. These peaks 20-1 to 20-9, and the dates to which they correspond, are easily distinguishable on ECG 1. Reference is made to FIG.
Elle montre un second électrogramme, ou graphique ECG 2 30, dans des conditions analogues au graphique ECG 1 de la figure 2. Le graphique ECG 2 correspond à un extrait d'un signal très irrégulier, complexe et bruité. L'étalement des passages du front d'activation couvre pratiquement tout l'intervalle temporel de la mesure signal. En pareil cas, le praticien juge incertain d'estimer des temps (dates) de passage du front d'activation. Les pics de plus grande amplitude 30-1 à 30-7 ne correspondent pas nécessairement aux passages du front d'activation cardiaque. On fait référence à la figure 4. It shows a second electrogram, or ECG graph 2 30, under conditions similar to the ECG graph 1 of Figure 2. The ECG 2 graph corresponds to an extract of a very irregular, complex and noisy signal. The spread of the activation front passages covers substantially the entire time interval of the signal measurement. In such a case, the practitioner considers it uncertain to estimate the times (dates) of passage of the activation front. Peaks of greater amplitude 30-1 to 30-7 do not necessarily correspond to passages of the cardiac activation front. Reference is made to Figure 4.
Elle illustre une fonction pour un module de traitement de signaux cardiaques, par exemple le module ANLSR 54 de la figure 1. A une étape initiale 400, la fonction reçoit une première série temporelle de valeurs d'amplitude correspondant à un extrait de signal de mesure cardiaque, ici sous la forme d'un tableau S[..] de nombres flottants s i, .. s_N, ou tableau de mesure, et une seconde série temporelle de valeurs d'amplitude correspondant à une forme réduite du signal de mesure cardiaque, ici sous la forme d'un tableau SR[..] de nombres flottants sr l, .., sr_N, ou tableau de réduction. Les données de la première et seconde série sont par exemple extraites respectivement des données CARD ACT 32 et RDC CARD ACT 34 de la figure 1. À l'étape suivante 402, la fonction détermine une collection de nœuds temporels à partir de la première série et de la seconde série. Chaque nœud correspond à une date. Les nœuds sont ici rassemblés dans un tableau, ou tableau de nœuds NOD[..]. Par exemple, chaque élément nod l .. nod_M du tableau NOD[..] désigne une date indexée des tableaux de réduction S[..] et SR[..]. Les nœuds définissent des intervalles temporels. L'étape 402 correspond pour l'essentiel au fonctionnement du module NOD GEN 542. It illustrates a function for a cardiac signal processing module, for example the ANLSR module 54 of FIG. 1. At an initial step 400, the function receives a first time series of amplitude values corresponding to a measurement signal extract. cardiac, here in the form of a table S [..] of floating point numbers si, .. s_N, or measurement table, and a second time series of amplitude values corresponding to a reduced form of the cardiac measurement signal, here in the form of an array SR [..] of floating numbers sr 1, .., sr_N, or reduction table. The data of the first and second series are for example extracted respectively CARD ACT 32 and RDC CARD ACT data 34 of Figure 1. In the next step 402, the function determines a collection of time nodes from the first series and the second series. Each node corresponds to a date. The nodes are gathered here in a table, or table of nodes NOD [..]. For example, each node element nod_M of the NOD array [..] designates an indexed date of the reduction tables S [..] and SR [..]. Nodes define time intervals. Step 402 essentially corresponds to the operation of the NOD GEN module 542.
La fonction détermine en outre deux collections de valeurs réelles a l .. a_N et b_l .. b_N, qui définissent conjointement une fonction linéaire par morceaux de la seconde série qui approxime la première série. Ici les deux collections sont respectivement stockées dans des tableaux de flottants, un tableau de pente A[..] et un tableau de décalage B[..]. Chaque valeur a i et chaque valeur b_i est maintenue en relation avec un nœud de la collection ou l'intervalle correspondant. Par exemple, les valeurs a i et b_i sont mémorisées en tant qu'éléments des tableaux de pente A[..] et de décalage B[..] dont l'index correspond à celui de leur nœud respectif dans le tableau de nœuds NOD[..]. The function further determines two collections of actual values at 1 .. a_N and b_l .. b_N, which together define a piecewise linear function of the second series which approximates the first series. Here the two collections are respectively stored in floating tables, a table of slope A [..] and an offset table B [..]. Each value a i and each value b_i is maintained in relation to a node of the collection or the corresponding interval. For example, the values ai and b_i are stored as elements of the tables of slope A [..] and shift B [..] whose index corresponds to that of their respective node in the table of nodes NOD [ ..].
La fonction détermine la collection de nœuds et de valeurs a et b de manière à optimiser l'approximation par plateaux, ou morceaux, de la première série relative par la composition linéaire de la série relative au signal réduit du signal de mesure cardiaque définie par les valeurs de pente a et de décalage b. The function determines the collection of nodes and values a and b so as to optimize the plate or piece approximation of the first relative series by the linear composition of the series relating to the reduced signal of the cardiac measurement signal defined by the slope a and offset b.
A l'étape suivante 404, la fonction détermine des dates de passage du front d'activation dans les séries. La fonction sélectionne des nœuds dans la collection de nœuds sur la base d'une comparaison statistique avec une distribution calculée à partir d'un modèle probabiliste. L'étape 404 correspond pour l'essentiel au fonctionnement du module NOD SEL 544. In the next step 404, the function determines the transition dates of the activation front in the series. The function selects nodes in the node collection based on a statistical comparison with a distribution computed from a probabilistic model. Step 404 corresponds essentially to the operation of the NOD module SEL 544.
La fonction se termine à l'étape suivante 406. On fait référence à la figure 5. The function ends in the next step 406. Reference is made to Figure 5.
Elle illustre une fonction capable de mettre en œuvre l'étape 402 de la figure 4. It illustrates a function capable of implementing step 402 of FIG.
La fonction débute en une étape 500, dans laquelle elle reçoit une première série temporelle de valeurs d'amplitude correspondant à un signal de mesure d'activité cardiaque, par exemple sous la forme du tableau de mesures S[..], et une seconde série temporelle de valeurs d'amplitude correspondant un signal réduit du signal d'activité cardiaque, par exemple sous la forme du tableau de réduction SR[..]. The function starts in a step 500, in which it receives a first time series of amplitude values corresponding to a cardiac activity measurement signal, for example in the form of the measurement table S [..], and a second time series of amplitude values corresponding to a reduced signal of the cardiac activity signal, for example in the form of the reduction chart SR [..].
A l'étape suivante 501, la fonction initialise un premier tableau de valeurs flottantes a l .. a_N, ou tableau de pente A[..], et un second tableau de valeurs flottantes b_l .. b_N, ou tableau de décalage B[..]. In the next step 501, the function initializes a first array of floating values al .. a_N, or table of slope A [..], and a second array of floating values b_l .. b_N, or shift table B [. .].
À l'étape suivante 502, la fonction appelle une sous-fonction srcEvalAdapt avec les valeurs des tableaux de mesures S[..], de réduction SR[..], de pente A[..] et de décalage B [..]. La fonction srcEvalAdapt calcule par itération les valeurs des tableaux de pente A[..] et décalage B [..] comme optimisation de l'approximation linéaire par morceaux des valeurs du tableau de mesures S[..] par les valeurs du tableau de réduction SR[..]. La fonction srcEvalAdapt établit en outre des statistiques sur cette approximation. Ces statistiques servent à l'optimisation. In the next step 502, the function calls a subfunction srcEvalAdapt with the values of the tables of measurements S [..], reduction SR [..], slope A [..] and offset B [.. ]. The srcEvalAdapt function calculates by iteration the values of the tables of slope A [..] and offset B [..] as optimization of the piecewise linear approximation of the values of the table of measurements S [..] by the values of the table of SR reduction [..]. The srcEvalAdapt function also computes statistics on this approximation. These statistics are used for optimization.
A l'étape suivante 504, la fonction initialise un tableau de valeurs flottantes rsrc l .. rsrc N de même dimension que le tableau de mesures S[..], ou tableau de reconstruction RSRC[..]. Le tableau de reconstruction RSRC[..] est destiné à recevoir des valeurs résultant de l'approximation des valeurs du tableau de mesures S[..]. In the next step 504, the function initializes an array of floating values rsrc l .. rsrc N of the same dimension as the array of measurements S [..], or reconstruction table RSRC [..]. The RSRC reconstruction table [..] is intended to receive values resulting from the approximation of the values of the table of measurements S [..].
À l'étape suivante 506, la fonction met à jour les valeurs du tableau de reconstruction RSRC[..] avec le résultat d'un appel d'une sous-fonction srcReconstr avec les valeurs des tableaux de réduction SR[..], de reconstruction RSRC[..], de pentes A[..] et de décalage B[..]. Cette fonction reconstruit une approximation du signal de mesure, ici des valeurs du tableau de mesures S[..], par une fonction linéaire par morceaux du signal réduit, ici des valeurs du tableau de reconstruction SR[..]. In the next step 506, the function updates the values of the RSRC reconstruction table [..] with the result of a call of a srcReconstr subfunction with the values of the SR reduction tables [..], RSRC reconstruction [..], A [..] slope and B [..] offset. This function reconstructs an approximation of the measurement signal, here values of the measurement table S [..], by a piecewise linear function of the reduced signal, here values of the reconstruction table SR [..].
A l'étape suivante 508, la fonction initialise un tableau de valeurs flottantes errx l .. errx N, ou tableau d'erreur ERRX[..], de même dimension que le tableau de mesures S[..]. Ce tableau est destiné à mémoriser des valeurs représentatives de l'écart entre l'approximation linéaire du signal de mesure et le signal de mesure. In the next step 508, the function initializes an array of floating values errx l .. errx N, or error table ERRX [..], of the same dimension as the array of measurements S [..]. This table is intended to store values representative of the difference between the linear approximation of the measurement signal and the measurement signal.
A l'étape suivante 510, la fonction commence une structure de boucle en initialisant un compteur de boucle ix à la valeur nulle. In the next step 510, the function starts a loop structure by initializing a loop counter ix to zero.
A l'étape suivante 512, la fonction attribue, en tant qu'élément d'index ix du tableau d'erreur ERRX[..], la valeur de la différence entre la valeur de l'élément d'index ix dans le tableau de reconstruction RSRC[..] et la valeur de l'élément d'index ix dans le tableau de mesures S [..]. In the next step 512, the function assigns, as the index element ix of the ERRX error table [..], the value of the difference between the value of the index element ix in the array RSRC reconstruction [..] and the value of the index element ix in the measurement table S [..].
Le compteur ix est incrémenté et l'étape 512 est recommencée tant que le compteur ix est inférieur à la valeur N de la dimension du tableau de mesures S[..]. Le résultat de cette boucle est un tableau d'erreur ERRX[..] qui représente l'ensemble des écarts géométrique entre les valeurs du tableau de mesures S[..] et son approximation par les valeurs du tableau de reconstruction RSRC[..]. The counter ix is incremented and the step 512 is restarted as long as the counter ix is smaller than the value N of the dimension of the measurement table S [..]. The result of this loop is an error table ERRX [..] which represents the set of geometric differences between the values of the measurement table S [..] and its approximation by the values of the RSRC reconstruction table [..] ].
Une fois la boucle des étapes 510 et 512 terminée, la fonction en vient à une étape 514 dans laquelle elle calcule des valeurs statistiques relatives à la qualité de l'approximation, à savoir : Once the loop of steps 510 and 512 is complete, the function comes to a step 514 in which it calculates statistical values relating to the quality of the approximation, namely:
- une valeur correspondant à l'écart type des valeurs comprises dans le tableau d'erreur ERRX[..], ou valeur sigma ;  - a value corresponding to the standard deviation of the values included in the error table ERRX [..], or sigma value;
- une valeur de niveau ou d'amplitude maximale du tableau de mesures, ou valeur de dynamique, ou encore valeur lvl, correspondant à la différence entre la valeur maximale du tableau S[..] et la valeur minimale de ce tableau ;  a value of level or of maximum amplitude of the array of measurements, or value of dynamics, or even value lvl, corresponding to the difference between the maximum value of the table S [..] and the minimum value of this table;
- une valeur noerror qui correspond au rapport de l'ecart-type sigma sur la dynamique lvl du signal ; et une valeur de rapport signal sur bruit, ou valeur psnr, comme valant à moins vingt fois le logarithme décimal de la valeur noerror. a noerror value corresponding to the ratio of the sigma standard deviation to the dynamic lvl of the signal; and a signal-to-noise ratio value, or psnr value, that is at least twenty times the decimal logarithm of the noerror value.
La fonction s'achève à l'étape suivante 516. The function ends in the next step 516.
L'étape 500 et suivantes de la figure 5 montrent une construction d'une fonction linéaire d'approximation, par itérations, en augmentant un nombre d'intervalles temporels à chaque itération. On fait référence à la figure 6. Step 500 and following of FIG. 5 show a construction of a linear approximation function, by iterations, by increasing a number of time intervals at each iteration. Reference is made to Figure 6.
Elle illustre un exemple de réalisation d'une fonction capable de mettre en œuvre l'étape 502 de la figure 5. En une étape initiale 600, la fonction reçoit le tableau de mesures S[..], le tableau d réduction SR[..], le tableau de pentes A[..]et le tableau de décalage B[..]. It illustrates an exemplary embodiment of a function capable of implementing step 502 of FIG. 5. In an initial step 600, the function receives the measurement table S [.], The reduction table SR [. .], the slope table A [..] and the shift table B [..].
A l'étape suivante 602, la fonction initialise un tableau de deux valeurs entières nod l et nod_2. In the next step 602, the function initializes an array of two integer values nod1 and nod_2.
A l'étape suivante 604, la fonction attribue à nod l la plus petite valeur d'index du tableau de mesures S[..] et à nod_2 la plus grande valeur d'index du tableau de mesures S[..]. Par exemple ici, nod l prend la valeur nulle et nod_2 une valeur N correspondant à la dimension N du tableau de mesures S[..]. Le tableau NOD[..] comprend ainsi une référence à l'index, dans le tableau de mesures S[..], de l'élément de début de période de mesure et de l'élément de fin de période de mesure. Autrement dit, à ce stade, les nœuds du tableau NOD[..] correspondent au bornes de l'intervalle de mesure du signal d'activité cardiaque. À l'étape suivante 606, la fonction calcule une valeur d'écart type des valeurs du tableau de mesures S[..], ou valeur errO. À l'étape suivante 608, la fonction initialise un tableau des valeurs flottantes errx l .. errx N, ou tableau d'erreurs ERRX[..] de même dimension que le tableau de mesures S[..]. A l'étape suivante 610, la fonction calcule une valeur d'erreur ERR en appelant une sous-fonction nodErr avec les valeurs des tableaux de réduction SR[..], de mesures S[..], de pente A[..], de décalage B[..], d'erreur ERRX[..] et le tableau de nœuds NOD[..] et en rapportant le résultat à la valeur errO. Entre autres choses, la fonction nodErr retourne l'écart type des valeurs du tableau d'erreur ERRX[..]. In the next step 604, the function assigns to node the smallest index value of the measurement table S [..] and to nod_2 the largest index value of the measurement table S [..]. For example here, nod l takes the value zero and nod_2 a value N corresponding to the dimension N of the table of measurements S [..]. The NOD table [..] thus comprises a reference to the index, in the measurement table S [..], the beginning element of the measurement period and the end element of the measurement period. In other words, at this point, the nodes of the NOD array [..] correspond to the limits of the measurement interval of the cardiac activity signal. In the next step 606, the function calculates a standard deviation value of the values of the measurement table S [..], or errO value. In the next step 608, the function initializes an array of floating values errx l .. errx N, or error array ERRX [..] of the same dimension as the array of measurements S [..]. In the next step 610, the function calculates an error value ERR by calling a sub-function nodErr with the values of the reduction tables SR [..], measurements S [..], slope A [.. ], B [..] offset, ERRX [..] error and the NOD node array [..] and reporting the result to the errO value. Among other things, the nodErr function returns the standard deviation of ERRX error table values [..].
A l'étape suivante 612, la fonction commence une structure de boucle en initialisant un compteur de boucle in à la valeur nulle. In the next step 612, the function starts a loop structure by initializing a loop counter in at the null value.
A l'étape suivante 614, la fonction met à jour le tableau de nœuds NOD[..] en tant que résultat de l'appel d'une fonction insrtSrceNod avec les valeurs des tableaux de réduction SR[..], de mesure S[..], de pente A[..], de décalage B[..], d'erreur ERRX[..] et du tableau de nœuds NOD[..] actuel. La fonction insrtSrceNod insert un nœud supplémentaire dans le tableau de nœuds NOD[..] et recalcule les valeurs du tableau de nœuds NOD[..], de pente A[..] et de décalage B[..]. Le calcul se fait par minimisation de l'erreur. In the next step 614, the function updates the node table NOD [..] as a result of calling an insrtSrceNod function with the values of the reduction tables SR [..], measurement S [..], slope A [..], offset B [..], error ERRX [..] and current node table NOD [..]. The insrtSrceNod function inserts an additional node into the NOD node table [..] and recalculates the values of the node table NOD [..], slope A [..] and offset B [..]. The calculation is done by minimizing the error.
A l'étape suivante 616, la fonction recalcule la valeur d'erreur err en appelant la fonction nodErr avec les valeurs du tableau de nœuds NOD[..] résultant de l'étape 614. Le compteur in est incrémenté et les étapes 614 à 616 sont recommencées tant que l'erreur err est supérieure à une valeur minimale d'erreur prédéterminée et que le compteur in est inférieur à une valeur plafond, ou valeur valNdomint. In the next step 616, the function recalculates the error value err by calling the nodErr function with the values of the node table NOD [..] resulting from step 614. The counter in is incremented and steps 614 to 616 are restarted as long as the err error is greater than a predetermined minimum error value and the in counter is less than a ceiling value, or valNdomint value.
La valeur minimale d'erreur est une donnée a priori. On peut par exemple paramétrer cette valeur à 10A-5. La valeur valNdomint est une donnée a priori, c'est-à-dire un paramètre de la fonction. La valeur valNdomint peut être par exemple établie en tant que rapport de la dimension N du tableau de mesures S[..] sur une valeur de durée minimale d'intervalle, en général comprise entre 40 ms et 60ms. The minimum error value is a priori data. For example, you can set this value to 10 A -5. The value valNdomint is a prior data, that is to say a parameter of the function. For example, the valNdomint value can be set as that ratio of the dimension N of the table of measurements S [..] on a value of minimum interval duration, generally between 40 ms and 60 ms.
La fonction s'arrête à l'étape suivante 618. The function stops at the next step 618.
On fait référence à la figure 7. Reference is made to Figure 7.
Elle illustre un mode de réalisation de la fonction nodErr, telle qu'elle peut être appelée aux étapes 610 et 616 de la figure 6. It illustrates an embodiment of the nodErr function, as it can be called in steps 610 and 616 of FIG.
La fonction débute en une étape 700 dans laquelle elle reçoit le tableau de mesures S[..], le tableau de réduction SR[..], le tableau des valeurs de pente A[..] et de décalage B[..]. La fonction reçoit également le tableau d'erreur ERRX[..] et le tableau de nœuds NOD[..]. Le tableau NOD[..] est, à ce stade, de dimension M. The function starts in a step 700 in which it receives the measurement table S [..], the reduction table SR [..], the table of the values of slope A [..] and shift B [..] . The function also receives the ERRX error table [..] and the NOD node table [..]. Table NOD [..] is, at this stage, of dimension M.
A l'étape suivante 702, on initialise une variable aclvl. In the next step 702, a variable aclvl is initialized.
A l'étape suivante 704, la fonction commence une première structure de boucle en initialisant un premier compteur de boucles inod, par exemple à la valeur nulle. In the next step 704, the function starts a first loop structure by initializing a first inod loop counter, for example to the null value.
A l'étape suivante 706, la fonction détermine une valeur de pente moyenne sur l'intervalle défini par les valeurs d'index inod et inod+1 dans le tableau de nœuds NOD[..] entre le signal réduit SR[..] et le signal d'origine S[..], ou valeur alpha. À l'étape suivante 708, la fonction commence une seconde structure de boucle, imbriquée dans la première, en initialisant un second compteur de boucle ix à la valeur de l'élément d'index inod dans le tableau de nœuds NOD[..]. In the next step 706, the function determines a value of average slope over the interval defined by the index values inod and inod + 1 in the node table NOD [..] between the reduced signal SR [..] and the original signal S [..], or alpha value. In the next step 708, the function starts a second loop structure, nested in the first, by setting a second loop counter ix to the value of the inod index element in the NOD node table [..] .
A l'étape suivante 710, la fonction stocke la valeur de pente alpha en tant qu'élément d'index ix du tableau de pente A[..]. Elle stocke l'écart entre la valeur de l'élément du tableau de mesures S[..] dont l'index correspond à la valeur de l'élément d'index inod dans le tableau de nœuds NOD[..] et la valeur aclvl en tant qu'élément d'index ix du tableau de décalage B[..]. In the next step 710, the function stores the alpha slope value as an index item ix of the slope table A [..]. It stores the difference between the value of the element of the S [..] measure array whose index corresponds to the value of the inod index element in the node table NOD [..] and the value aclvl as an index element ix of the shift table B [..].
Le compteur de boucle ix est incrémenté. L'étape 710 est recommencée tant que le compteur ix est inférieur à la valeur désignée par l'élément d'index inod+1 dans le tableau de nœuds NOD[..]. The loop counter ix is incremented. Step 710 is restarted as long as the counter ix is less than the value designated by the index element inod + 1 in the node table NOD [..].
La boucle des étapes 708 à 710 remplit les éléments du tableau de pente A[..] dont l'index est compris entre les valeurs désignées par les valeur inod et inod+1 avec une valeur de pente valable sur cet intervalle et les mêmes éléments du tableau de décalage B[..] avec la valeur de décalage valable sur cet intervalle. The loop of steps 708 to 710 fills the elements of the slope table A [..] whose index is between the values designated by the values inod and inod + 1 with a valid value of slope over this interval and the same elements offset table B [..] with the offset value valid on this interval.
Une fois la boucle des étapes 708 à 710 terminée, la fonction calcule une nouvelle valeur de la variable aclvl comme la somme : Once the loop of steps 708 to 710 is complete, the function calculates a new value of the variable aclvl as the sum:
- de la valeur de l'élément du tableau de mesures S[..] dont l'index correspond à la valeur de l'élément d'index inod dans le tableau de nœuds NOD[..] ; et - the value of the S [..] array element whose index corresponds to the value of the inod index element in the NOD node array [..]; and
du produit de la valeur alpha par la différence de :  of the product of the alpha value by the difference of:
la valeur de l'élément dans le tableau de réduction SR[..] dont l'index correspond à la valeur de l'élément d'index inod+1 dans le tableau de nœuds NOD[..] et - la valeur de l'élément dans le tableau de réduction SR[..] dont l'index correspond à la valeur de l'élément d'index inod dans le tableau de nœuds NOD[..].  the value of the element in the reduction table SR [..] whose index corresponds to the value of the index element inod + 1 in the node table NOD [..] and - the value of the element in the SR reduction table [..] whose index corresponds to the value of the inod index element in the NOD node table [..].
Le premier compteur de boucle inod est incrémenté. Les étapes 706 à 712 sont recommencées tant que le compteur de boucle inod est inférieur à la dimension M du tableau de nœud NOD[..]. Ceci revient à recommencer les étapes en question sur chaque intervalle défini par les nœuds du tableau NOD[..]. The first inod loop counter is incremented. Steps 706 to 712 are restarted as long as the inod loop counter is smaller than the M dimension of the NOD node table [..]. This amounts to restarting the steps in question on each interval defined by the nodes of the table NOD [..].
Une fois la boucle des étapes 704 à 712 achevée, la fonction débute une étape 714 dans laquelle elle fait appel à la fonction srcRcstr avec les valeurs des tableaux de réduction SR[..], de pente A[..], de décalage B[..] et d'erreur ERRX[..]. À l'étape suivante 716, la fonction détermine une valeur de dimension dim comme étant la plus petite valeur de la dimension du tableau de mesures S[..] et de celle du sous- ensemble non vide du tableau d'erreur ERRX[..]. A l'étape suivante 718, la fonction débute une structure de boucle en initialisant un troisième compteur de boucles i à la valeur nulle. Once the loop of steps 704 to 712 has been completed, the function starts a step 714 in which it uses the function srcRcstr with the values of the reduction tables SR [..], slope A [..], shift B [..] and error ERRX [..]. In the next step 716, the function determines a dim dimension value as being the smallest value of the dimension of the S [..] and non-empty subset of the error table ERRX [. .]. In the next step 718, the function starts a loop structure by initializing a third loop counter i to zero.
A l'étape suivante 720, la fonction attribue à l'élément d'index i du tableau d'erreur sa valeur courante à laquelle est soustraite la valeur du signal : ERRX[i]=ERRX[i]-S[i]. In the next step 720, the function assigns the index element i of the error array its current value to which the value of the signal is subtracted: ERRX [i] = ERRX [i] -S [i].
Le compteur de boucle i est incrémenté. L'étape 720 est recommencée tant que le compteur i est inférieur à la dimension dim. The loop counter i is incremented. Step 720 is restarted as long as the counter i is smaller than the dim dimension.
À l'étape suivante 722, la fonction détermine une valeur d'écart-type sur les valeurs des éléments du tableau ERRX[..]. Cette valeur est retournée. In the next step 722, the function determines a standard deviation value on the values of the elements of the array ERRX [..]. This value is returned.
La sous-fonction s'achève à l'étape suivante 724. The subfunction ends in the next step 724.
On fait référence à la figure 8. Reference is made to Figure 8.
Elle illustre le fonctionnement d'une fonction qui insère un nœud supplémentaire dans un tableau de nœuds NOD[..] existant. Il peut s'agir en particulier de la fonction insrtSrcNod de l'étape 614 par exemple. It illustrates the operation of a function that inserts an additional node into an existing NOD node table [..]. This may be in particular the function insrtSrcNod of step 614 for example.
La fonction débute par une étape 800 dans laquelle elle reçoit les tableaux de mesures S[..], de réduction SR[..], de pente A[..], de décalage B[..], d'erreur ERRX[..], de nœuds NOD[..]. Le tableau de nœuds NOD[..] est, à ce stade, de dimension P. The function starts with a step 800 in which it receives the tables of measurements S [..], reduction SR [..], slope A [..], offset B [..], error ERRX [ ..], NOD nodes [..]. The node table NOD [..] is, at this stage, of dimension P.
À l'étape 802, la fonction ajoute un élément d'index P+l dans le tableau de nœud NOD[..]. À l'étape 804, la fonction détermine les nouveaux nœuds, c'est-à-dire les valeurs des éléments du tableau de nœuds NOD[..] et recalcule les valeurs des tableaux de pente A[..] et de décalage B[..] par minimisation du carré de l'écart entre, sur chaque intervalle : In step 802, the function adds an index element P + 1 in the node table NOD [..]. In step 804, the function determines the new nodes, i.e., the values of the elements of the node table NOD [..] and recalculates the values of the tables of slope A [..] and shift B [..] by minimizing the square of the difference between, on each interval:
- les valeurs du tableau de mesure S[..] sur cet intervalle ; - the values of the measurement table S [..] on this interval;
les valeurs résultats de la fonction linéaire des valeurs du tableau de réduction SR[..] sur cet intervalle, la fonction linéaire étant définie, sur l'intervalle, par les valeurs des tableaux de pente A[..] et de décalage B[..] correspondantes. La fonction s'achève à l'étape suivante 806.  the result values of the linear function of the values of the reduction table SR [..] on this interval, the linear function being defined, on the interval, by the values of the tables of slope A [..] and offset B [ ..] corresponding. The function ends in the next step 806.
On fait référence à la figure 9. Reference is made to Figure 9.
Elle illustre un exemple de réalisation d'une fonction de reconstruction telle que la fonction srcRcstr de l'étape 714 par exemple. It illustrates an exemplary embodiment of a reconstruction function such as the function srcRcstr of step 714 for example.
La fonction débute en une étape 900 dans laquelle elle reçoit les tableaux de mesures S[..], de réduction SR[..], de pente A[..], de décalage B[..] et le tableau de reconstruction RSCR[..] courant. The function starts in a step 900 in which it receives the tables of measurements S [..], reduction SR [..], slope A [..], offset B [..] and the reconstruction table RSCR [..] current.
A l'étape suivante 902, la fonction initialise une variable de type flottant ixO. In the next step 902, the function initializes a float variable ix0.
A l'étape suivante 904, la fonction attribue la valeur nulle à l'élément d'index 0 du tableau RSCR[..]. In the next step 904, the function assigns the null value to the index element 0 of the RSCR array [..].
A l'étape suivante 906, la fonction débute une structure de boucle en initialisant un compteur ix à la valeur nulle. In the next step 906, the function starts a loop structure by initializing a counter ix to zero.
A l'étape suivante 908, la fonction vérifie que l'élément d'index ix dans le tableau de décalage B[..] est différent de l'élément d'index ixO dans le tableau de décalage B[..]. Si oui, alors la valeur ixO prend la valeur ix à l'étape suivante 910 et la fonction se poursuit en 912. Sinon, la boucle est réitérée en 906 en incrémentant la valeur de ix. La boucle est réitérée en actualisant la valeur d'index ix+1 du tableau de reconstruction RSCR[..]. In the next step 908, the function verifies that the index element ix in the offset array B [..] is different from the index element ixO in the shift array B [..]. If so, then the value ixO takes the value ix in the next step 910 and the function continues at 912. Otherwise, the loop is reiterated at 906 by incrementing the value of ix. The loop is reiterated by updating the index value ix + 1 of the RSCR reconstruction table [..].
Cette boucle porte sur la variable ix. Elle commence à la valeur nulle et se termine à la longueur du signal réduit. Si le test d'étape 908 de la figure 9 est vérifié, alors on se contente de mettre à jour l'élément d'index ixO comme valant ix. Sinon, on passe directement à l'étape 912. Cette dernière est toujours exécutée, que le test de l'étape 908 soit vérifié ou pas. A l'étape suivante 912, la fonction calcule la somme de : This loop is about variable ix. It starts at the null value and ends at the reduced signal length. If the step test 908 of FIG. 9 is checked, then it is sufficient to update the index element ix0 as ix. Otherwise, go directly to step 912. The latter is always executed whether the test of step 908 is checked or not. In the next step 912, the function calculates the sum of:
la valeur de l'élément d'index ixO du tableau de reconstruction RSCR[..] ;  the value of the index element ixO of the RSCR reconstruction table [..];
la valeur de l'élément d'index ix du tableau de décalage B[..] ; et  the value of the index element ix of the shift table B [..]; and
le produit de :  the product of:
la valeur de l'élément d'index ix du tableau de pente A[..] ; et - la différence entre la valeur de l'élément d'index ix+1 dans le tableau de reconstruction RSCR[..] et la valeur de l'élément d'index ixO dans ce tableau RSCR[..].  the value of the index element ix of the slope table A [..]; and - the difference between the value of the index element ix + 1 in the reconstruction table RSCR [..] and the value of the index element ixO in this array RSCR [..].
Le compteur de boucle ix est incrémenté et les étapes 908 à 912 recommencées tant que le compteur de boucle ix est inférieur à la valeur N qui correspond à la dimension du tableau de mesures reçu en entrée. The loop counter ix is incremented and steps 908 to 912 are restarted as long as the loop counter ix is less than the value N which corresponds to the dimension of the measurement array received as input.
Une fois la boucle des étapes 906 à 912 terminée, la fonction s'achève à l'étape suivante 914. La fonction de la figure 9 détermine la valeur actualisée, après l'ajout d'un nœud au tableau NOD[..], comme décrit par exemple en relation avec la figure 8, du signal reconstruit en ce nœud. Once the loop of steps 906 to 912 is complete, the function ends in the next step 914. The function of FIG. 9 determines the updated value, after the addition of a node to the NOD array [..], as described for example in relation to FIG. 8, of the signal reconstructed at this node.
On fait référence à la figure 10. Reference is made to Figure 10.
Elle décrit le fonctionnement d'un module de sélection de nœud par comparaison aux résultats d'une loi de probabilité, tel que le module NOD SEL 544 de la figure 1. À l'étape 1000, la fonction reçoit une collection de nœuds, par exemple sous la forme du tableau de nœuds NOD[..]. A l'étape suivante 1002, la fonction va attribuer à chaque nœud du tableau NOD[..] un poids discret de valeur 0 ou 1. Par exemple, les valeurs du poids attribué aux nœuds du tableau NOD[..] sont rassemblées dans un tableau de pondération, ou tableau W[..] de même dimension que le tableau NOD[..]. La fonction réalise un calcul d'optimisation Bayésienne conditionnelle qui porte sur les poids du tableau W[..]. Le calcul est effectué sous une double contrainte : It describes the operation of a node selection module by comparison with the results of a probability law, such as the NOD module SEL 544 of FIG. In step 1000, the function receives a collection of nodes, for example in the form of the node table NOD [..]. In the next step 1002, the function will assign to each node of the array NOD [..] a discrete weight of value 0 or 1. For example, the weight values assigned to the nodes of the array NOD [..] are collected in a weighting table, or table W [..] of the same dimension as the table NOD [..]. The function carries out a conditional Bayesian optimization calculation which deals with the weights of the table W [..]. The calculation is done under a double constraint:
d'une part que la distribution empirique du sous-ensemble des poids de valeur 1 , notée NOD_0[..], du produit W[..]*NOD[..] suive une loi de probabilité théorique ; et d'autre part que la somme de ces nouveaux intervalles à valeur d'index dans NOD_0[..] soit de dimension N.  on the one hand that the empirical distribution of the subset of the weights of value 1, denoted NOD_0 [..], of the product W [..] * NOD [..] follows a law of theoretical probability; and on the other hand that the sum of these new index value intervals in NOD_0 [..] is of dimension N.
Autrement dit, la fonction sélectionne parmi les nœuds du tableau NOD[..] ceux qui correspondent à des intervalles temporels dont la probabilité est conforme à la loi de probabilité en question. A l'étape 1002, la fonction combine les M nœuds du tableau NOD[..] de manière telle que la répartition P des périodes temporelles delta_t(NOD[i]-NOD[j]) résultantes corresponde à la répartition d'une loi théorique G de ces périodes. Ici, la fonction teste combinaisons possibles des M nœuds. Elle sélectionne la meilleure combinaison, au sens d'une optimisation sur un arbre dirigé (temps polynomial). Par exemple, des données statistiques issues de la loi théorique G sont lues des données MOS STAT de la figure 1. In other words, the function selects among the nodes of the NOD array [..] those which correspond to time intervals whose probability is in accordance with the probability law in question. In step 1002, the function combines the M nodes of the NOD array [..] in such a way that the distribution P of the resulting time periods delta_t (NOD [i] -NOD [j]) corresponds to the distribution of a law theoretical G of these periods. Here, the function tests possible combinations of M nodes. It selects the best combination, in the sense of an optimization on a directed tree (polynomial time). For example, statistical data from the theoretical law G are read from the MOS STAT data of FIG.
L'étape 1002 correspond à une mise en adéquation d'une série temporelle avec à une loi de probabilité. On réalise une optimisation Bayésienne conditionnelle qui porte sur le tableau des poids W. On utilise par exemple un algorithme de filtrage non linéaire par inférence Bayésienne utilisant des chaînes de Markov cachées. À l'étape suivante 1004, la fonction retourne un ensemble de dates tme l .. trne W qui correspondent aux nœuds sélectionnés, par exemple dans un tableau TME[..]. Step 1002 corresponds to a matching of a time series with a law of probability. Conditional Bayesian optimization is carried out on the W-weight table. For example, a non-linear Bayesian inference filtering algorithm using hidden Markov chains is used. In the next step 1004, the function returns a set of dates that correspond to the selected nodes, for example in a table TME [..].
La fonction se termine à l'étape suivante 1006. The function ends in the next step 1006.
On fait référence à la figure 11. Reference is made to Figure 11.
Elle illustre une fonction de réduction d'un signal, à usage par exemple dans le module RDCR de la figure 1. It illustrates a function of reducing a signal, for use for example in the RDCR module of FIG.
La fonction débute par une étape 1100 dans laquelle elle reçoit une série temporelle relative à un signal, par exemple tirée de l'enregistrement CARD ACT 32 de la figure 1. Ici ces données sont reçues sous la forme d'un tableau analogue au tableau de mesures S[..]. The function starts with a step 1100 in which it receives a time series relating to a signal, for example taken from the CARD ACT record 32 of FIG. 1. Here these data are received in the form of a table similar to the table of FIG. S measurements [..].
À l'étape suivante 1102, la fonction calcule un ensemble de valeur d'amplitudes sexp l .. sexp N qu'elle rassemble dans un tableau SEXP[..], ou tableau d'exposants de singularité. Le calcul des valeurs des exposants de singularité est décrit dans l'article de A. M. Turiel, H. Yahia and C. Pérez-Vicente, (2008), Microcanonical multifractal formalism-a geometrical approach to multifractal Systems : Part I. Singularity analysis, Journal of Physics A :Mathematical and Theoretical,41, pp.015501-015536, doi : 10.1088/1751-8113/41/1/015501. In the next step 1102, the function calculates a set of values of sexp l .. sexp N that it gathers in a table SEXP [..], or table of exponents of singularity. The calculation of singularity exponent values is described in the article by AM Turiel, H. Yahia and C. Pérez-Vicente, (2008), Microcanonical Multifractal Formalism-a Geometrical Approach to Multifractal Systems: Part I. Singularity analysis, Journal of Physics A: Mathematical and Theoretical, 41, pp.015501-015536, doi: 10.1088 / 1751-8113 / 41/1/015501.
À l'étape suivante 1104, la fonction détermine les points les plus singuliers du signal de mesure. La fonction applique par exemple la méthode décrite dans l'article ci-dessus, en particulier au paragraphe 4.3 et à la formule trente-quatre (34). L'ensemble des valeurs résultantes msm l .. msm P peut être mémorisé dans un tableau MSC[..] de flottants. La variété la plus singulière identifie les points correspondant à de brusques et soudaines variations dans l'amplitude du signal. Elle correspond à des transitions dans le signal d'entrée. Un paramètre facultatif de cette méthode est la densité de la variété la plus singulière MSM calculée. Si ce paramètre est absent, un seuil standard peut-être mis en œuvre, correspondant par exemple à la densité du sous-ensemble ayant des exposants inférieurs ou égaux à zéro. In the next step 1104, the function determines the most singular points of the measurement signal. The function applies for example the method described in the article above, in particular in paragraph 4.3 and in the formula thirty-four (34). The set of resulting values msm l .. msm P can be stored in an MSC array [..] of floats. The most singular variety identifies points corresponding to sudden and sudden variations in signal amplitude. It corresponds to transitions in the input signal. An optional parameter of this method is the density of the most singular variety MSM calculated. If this parameter is absent, a standard threshold may be implemented, corresponding for example to the density of the subset having exponents less than or equal to zero.
A l'étape suivante 1106, la fonction reconstruit un signal réduit échantillonné à partir des exposants de singularité, ici les valeurs des tableaux de SEXP[..], de la variété la plus singulière, ici les valeurs du tableau MSC[..], orientée, du gradient et du champ orienté orthogonal à la variété la plus singulière. In the following step 1106, the function reconstructs a reduced signal sampled from the exponents of singularity, here the values of the tables of SEXP [..], of the most singular variety, here the values of the table MSC [..] , orientated, of the gradient and of the field oriented orthogonal to the most singular variety.
La fonction se termine à l'étape suivante 1108. The function ends in the next step 1108.
On s'intéresse maintenant au fonctionnement d'un module statistique tel que le module MOD STAT de la figure 1. We are now interested in the operation of a statistical module such as the MOD STAT module of FIG.
Le module MOD STAT reçoit en entrée une série temporelle de valeurs d'amplitude correspondant à une forme brute d'un signal de mesure d'une activité cardiaque, par exemple sous la forme d'un tableau analogue au tableau de mesures S[..]. The MOD STAT module receives as input a time series of amplitude values corresponding to a raw form of a measurement signal of a cardiac activity, for example in the form of a table similar to the measurement table S [.. ].
Le module MOD STAT calcule une distribution, ou répartition statistique, de valeurs d'amplitude à partir des valeurs d'amplitude mesurées, telles que rassemblées par exemple dans le tableau de mesures S[..]. La distribution peut être stockée sous la forme d'un tableau de répartition G[..], rassemblant les valeurs de probabilité empirique. Les valeurs du tableau G[..] sont calculée par exemple à partir du modèle théorique ci- dessous. Le module calcule en outre une distribution de périodes d'activation, c'est-à-dire les valeurs de probabilité en correspondante de durées d'intervalles. La distribution des périodes d'activation peut être stockée dans un tableau de distribution DELTA[..] dont chaque élément stocke une valeur de probabilité d'intervalle. Pour calculer les valeurs de probabilité théorique Delta[..], le module utilise de préférence un modèle de propagation stochastique du front d'activation cardiaque. Il s'agit par exemple du modèle qui se trouve dans l'article Sudden cardiac death and Turbulence, de Guillaume Attuel, Oriol Pont, Binbin Xu, et Hussein Yahia, notamment à l'équation 7 reproduite ci-dessous. dS = ϋΔΘ - Hsin(9 + φ(χ)) + F The MOD STAT module calculates a distribution, or statistical distribution, of amplitude values from the measured amplitude values, as gathered for example in the table of measurements S [..]. The distribution can be stored in the form of a distribution table G [..], gathering empirical probability values. The values in Table G [..] are calculated, for example, from the theoretical model below. The module further calculates an activation period distribution, i.e. the corresponding probability values of interval durations. The distribution of the activation periods can be stored in a DELTA [..] distribution table, each element of which stores an interval probability value. To calculate the Delta theoretical probability values [..], the module preferably uses a stochastic propagation model of the cardiac activation front. This is for example the model found in the article Sudden cardiac death and Turbulence, by William Attuel, Oriol Bridge, Binbin Xu, and Hussein Yahia, especially in Equation 7 reproduced below. dS = ϋΔΘ - Hsin (9 + φ ( χ )) + F
Dans cette équation, la fonction 9(x,t) représente la phase, qui est une distribution des temps de passage et des formes des impulsions cardiaques. La variable t représente le temps tandis que la variable x représente la position du front d'activation, dans un système de coordonnées relatif au cœur. In this equation, the function 9 (x, t) represents the phase, which is a distribution of the passage times and the shapes of the cardiac pulses. The variable t represents the time while the variable x represents the position of the activation front, in a coordinate system relative to the core.
Les constantes numériques H et F correspondent à des caractéristiques d'échelles. La valeur de ces constantes H et F peut varier avec la fréquence d'échantillonnage. Cette valeur peut être déterminée de manière empirique et/ou en consultant l'un des articles ci- dessous. Typiquement, la valeur des constantes H et F est de l'ordre de 0,1. The numerical constants H and F correspond to scale characteristics. The value of these H and F constants may vary with the sampling frequency. This value can be determined empirically and / or by consulting one of the articles below. Typically, the value of the constants H and F is of the order of 0.1.
La constante D représente une constante de diffusion. La valeur de cette constante donne plus ou moins d'importance à la valeur ΔΘ. Sa valeur correspond typiquement aux valeurs standard des grandeurs physiques considérées. La valeur de cette constante D peut varier avec la fréquence d'échantillonnage. The constant D represents a diffusion constant. The value of this constant gives more or less importance to the ΔΘ value. Its value typically corresponds to the standard values of the physical quantities considered. The value of this constant D may vary with the sampling frequency.
Par exemple, on peut utiliser la valeur 1 pour chacune des constantes H, F et D. For example, we can use the value 1 for each of the constants H, F and D.
La fonction φ(χ) représente un décalage par rapport à l'origine temporelle, ou retard. On peut utiliser toute fonction centrée en l'origine temporelle. Par exemple, la fonction φ(χ) est une gaussienne centrée sur l'origine temporelle. The function φ (χ) represents an offset with respect to the time origin, or delay. Any function centered at the time origin can be used. For example, the function φ (χ) is a Gaussian centered on the time origin.
La loi théorique G correspond formellement à la résolution de cette équation. L'optimisation est réalisée par rapport à la loi théorique G. Le module MOD STAT utilise de préférence une loi qui découle d'une équation de Langevin généralisée, ou équation de propagation. Les références suivantes décrivent trois méthodes permettant de déterminer une loi de probabilité à partir d'un modèle de propagation du front d'activation cardiaque : The theoretical law G corresponds formally to the resolution of this equation. The optimization is carried out with respect to the theoretical law G. The MOD STAT module preferably uses a law that derives from a generalized Langevin equation, or propagation equation. The following references describe three methods for determining a probability law from a cardiac activation front propagation model:
Generalized Fokker-Planck équation: Dérivation and exact solutions S.I. Denisov, W. Horsthemke, and P. Hânggi, Eur. Phys. J. B 68, 567-575 (2009) ;  Generalized Fokker-Planck Equation: Derivation and exact solutions S. I. Denisov, W. Horsthemke, and P. Henggi, Eur. Phys. J. B 68, 567-575 (2009);
- Probability distributions for one component équations with multiplicative noise, J.M. Deutsch, Physica A 208 (1994) 433-444 Probability distributions for one component equations with multiplicative noise, J. M. Deutsch, Physica A 208 (1994) 433-444
Stable Infinité Variance Fluctuations in Randomly Amplifîed Langevin Systems, Hideki Takayasu, Aki-Hiro Sato, Misako Takayasu, PHYSICAL REVIEW LETTERS. Les références ci-dessus indiquent des lois de probabilité qui dérivent d'une équation de Langevin généralisée qui représente une équation de propagation.  Stable Infinity Variance Fluctuations in Randomly Amplified Langevin Systems, Hideki Takayasu, Aki-Hiro Sato, Misako Takayasu, PHYSICAL REVIEW LETTERS. The above references indicate probability laws that derive from a generalized Langevin equation that represents a propagation equation.
Le cas échéant, les paramètres de l'équation de Langevin généralisée sont adaptés de manière à correspondre aux valeurs mesurées du signal d'activité cardiaque, telles que rassemblées en particulier dans le tableau de mesures S[..]. Where appropriate, the parameters of the generalized Langevin equation are adapted to correspond to the measured values of the cardiac activity signal, as gathered in particular in the measurement table S [..].
Dans un mode de réalisation particulier, on pose : In a particular embodiment, one poses:
(1) jt s = XS (1) j t s = XS
Où représente un bruit multiplicatif sur le corps des nombres complexes C. Un échantillonnage par inférence Bayésienne est appliqué en deux étapes.  Where is a multiplicative noise on the body of complex numbers C. Bayesian inference sampling is applied in two steps.
Le module MOD STAT détermine par exemple l'espérance conditionnelle E(jf|s) et la variance E(^2) à partir du tableau de mesures S[..] par échantillonnage standard. Le module utilise ensuite l'équation de Fokker-Planck dérivée de l'équation (1) et la connaissance de l'espérance conditionnelle E(^|s) et de la variance E(^2) pour déterminer une loi de probabilité empirique suivie par les écarts d'amplitude du signal de mesure d'activité cardiaque. Le résultat est stocké dans le tableau G[..]. Dans une première étape, en utilisant l'hypothèse Bayésienne selon laquelle la loi de probabilité G est vraie, on réalise un échantillonnage par inférence Bayésienne sur l'amplitude du signal, par exemple sur les valeurs d'amplitudes du tableau S[..]. L'hypothèse nulle considère une distribution d'erreur gaussienne évaluée par débruitage. Ce premier échantillonnage élimine les nœuds appartenant à l'hypothèse nulle. The MOD STAT module determines, for example, the conditional expectation E (jf | s) and the variance E (^ 2) from the standard S [..] measurement table. The module then uses the Fokker-Planck equation derived from equation (1) and the knowledge of conditional expectation E (^ | s) and the variance E (^ 2) to determine an empirical probability law followed by the amplitude deviations of the cardiac activity measurement signal. The result is stored in table G [..]. In a first step, using the Bayesian hypothesis according to which the probability law G is true, a Bayesian inference sampling is carried out on the amplitude of the signal, for example on the amplitude values of the table S [..] . The null hypothesis considers a Gaussian error distribution evaluated by denoising. This first sampling eliminates the nodes belonging to the null hypothesis.
Dans une seconde étape, à partir du résultat de la première étape par exemple sous la forme d'un tableau d'amplitudes A[i], on réalise un échantillonnage par inférence Bayésienne sur les variations d'amplitude du champ de source. L'hypothèse nulle correspond à la variation Gaussienne de A[i+1] - A[i]. Cet échantillonnage permet de discerner deux fronts d'activation temporellement très rapprochés. On fait référence aux figures 12 et 13. In a second step, from the result of the first step, for example in the form of an amplitude table A [i], a Bayesian inference sampling is performed on the amplitude variations of the source field. The null hypothesis corresponds to the Gaussian variation of A [i + 1] - A [i]. This sampling makes it possible to discern two temporally very close activation fronts. Reference is made to Figures 12 and 13.
Elles montrent respectivement l'évolution temporelle des valeurs de pente et de décalage, pour un signal de mesure correspondant à rélectrogramme de la figure 3. Le graphique fait apparaître des plateaux de large étendue temporelle séparés les uns de autres par de brèves périodes de transition référencées 120-1 à 120-9 et 130-1 à 130-9 respectivement. They respectively show the temporal evolution of the slope and offset values, for a measurement signal corresponding to the electrogram of Figure 3. The graph shows trays of large temporal extent separated from each other by brief transition periods referenced 120-1 to 120-9 and 130-1 to 130-9 respectively.
On fait référence à la figure 14. Elle montre sur un électrogramme analogue à celui de la figure 3 les dates 140-1 à 140- 9 de passage du front d'activation. Alors que sur les périodes de transition des figures 12 et 13 correspondent à plusieurs nœuds temporels, une seule date d'activation est retenue par période. On fait référence aux figures 15 et 16, analogues aux figures 12 et 13, et à la figure 17 pour l'électrogramme de la figure 4. Reference is made to FIG. 14. It shows on an electrogram similar to that of FIG. 3 the dates 140-1 to 140-9 of the activation front. While on the transition periods of Figures 12 and 13 correspond to several time nodes, a single activation date is retained per period. Reference is made to FIGS. 15 and 16, similar to FIGS. 12 and 13, and FIG. 17 for the electrogram of FIG. 4.
Les variations des valeurs de a et de b montrent l'existence de plusieurs nœuds 150-1 à 150-4 et 160-1 à 160-4 respectivement. Finalement, un seul 150-2, 160-3 de ces nœuds correspond au passage d'un front d'activation, référencé 170-1 sur la figure 17. Les temps de passage 170-1 à 170-9 du front d'action ne correspondent pas aux pics de forte amplitude dans le signal d'activité. The variations of the values of a and b show the existence of several nodes 150-1 to 150-4 and 160-1 to 160-4 respectively. Finally, a single 150-2, 160-3 of these nodes corresponds to the passage of an activation front, referenced 170-1 in FIG. 17. The passage times 170-1 to 170-9 of the action front do not correspond to the peaks of high amplitude in the activity signal.
On fait référence aux figures 18 à 21. Reference is made to Figures 18 to 21.
La figure 18 montre un électrogramme relatif à une forme brute d'activité cardiaque. Figure 18 shows an electrogram for a crude form of cardiac activity.
Les figures 19, 20 et 21 montrent le résultat d'étapes intermédiaires de traitement. Elles représentent le traitement local du signal brut, par extraction d'un signal nouveau sur la figure 19, ou par inférence Bayésienne sur la nature du bruit local sur la figure 20. Figures 19, 20 and 21 show the result of intermediate processing steps. They represent the local processing of the raw signal, by extraction of a new signal in figure 19, or by Bayesian inference on the nature of the local noise in figure 20.
La figure 21 représente un signal résultat de l'intersection du signal obtenu par extraction et du signal obtenu par inférence Bayésienne. L'intersection de ces signaux est un signal défini de la manière suivante : FIG. 21 represents a signal resulting from the intersection of the signal obtained by extraction and the signal obtained by Bayesian inference. The intersection of these signals is a signal defined as follows:
- si la valeur du signal de la figure 20 est nul, alors la valeur du signal d'intersection est nul ;  if the value of the signal of FIG. 20 is zero, then the value of the intersection signal is zero;
si la valeur du signal de la figure 20 n'est pas nul (égal à 1), la valeur du signal d'intersection est non nulle entre deux maxima de la dérivée du signal de la figure 19.  if the value of the signal of FIG. 20 is not zero (equal to 1), the value of the intersection signal is non-zero between two maxima of the derivative of the signal of FIG. 19.
Cette une façon de représenter le minimum de l'entropie croisée. This one way to represent the minimum of cross entropy.
La figure 21 montre qu'il est possible de distinguer les zones d'activité des zones de bruit de mesure. Les zones d'activité ainsi distinguées peuvent être comparées à l'onde F d'un électrocardiogramme si celle-ci est assez voltée, voire à une image à résonnance magnétique. Figure 21 shows that it is possible to distinguish the activity zones from the measurement noise zones. The zones of activity thus distinguished can be compared with the wave F of an electrocardiogram if it is sufficiently voltée, or even a magnetic resonance image.
On a décrit un dispositif de traitement de signaux d'activité cardiaque sous une forme brute qui permet d'y distinguer des zones d'activité. L'invention peut également être vue comme un procédé d'assistance à la cardiologie comprenant les étapes suivantes :  A device for processing cardiac activity signals in a raw form has been described which makes it possible to distinguish therefrom areas of activity. The invention can also be seen as a method of assisting cardiology comprising the following steps:
- stocker des données d'activité cardiaque comprenant au moins une série chronologique de valeurs d'amplitude, cette série chronologique correspondant à une forme brute de mesure d'activité cardiaque, et une seconde série chronologique de valeurs d'amplitude, cette seconde série chronologique correspondant à une forme réduite de la mesure d'activité cardiaque ; storing cardiac activity data comprising at least one time series of amplitude values, this time series corresponding to a raw form of measurement of cardiac activity, and a second time series of amplitude values, this second time series corresponding to a reduced form of cardiac activity measurement;
- construire une fonction linéaire par parties des valeurs d'amplitude de la seconde série chronologique, la fonction linéaire étant ajustée sur les valeurs d'amplitude de la première série chronologique, conformément à un critère d'optimisation, chaque partie de la fonction linéaire correspondant à un intervalle temporel respectif de ladite série chronologique,  constructing a linear function by parts of the amplitude values of the second time series, the linear function being adjusted to the amplitude values of the first time series, according to an optimization criterion, each part of the corresponding linear function at a respective time interval of said time series,
- calculer une loi probabiliste, relative à des périodes d'activité cardiaque, conformément à un modèle stochastique,  - calculate a probabilistic law, relating to periods of cardiac activity, according to a stochastic model,
- combiner certains au moins desdits intervalles temporels respectifs de manière à obtenir, pour des intervalles temporels résultants, une répartition de périodes temporelles approchant ladite loi probabiliste,  combining at least some of said respective time intervals so as to obtain, for resulting time intervals, a distribution of time periods approaching said probabilistic law,
- délivrer des données relatives aux intervalles temporels résultants en tant que données relatives à un rythme cardiaque.  delivering data relating to the resulting time intervals as data relating to a heart rhythm.

Claims

Revendications claims
1. Dispositif de cardiologie du type comprenant : A cardiology device of the type comprising:
- de la mémoire (3) capable de stocker des données d'activité cardiaque, lesdites données comprenant au moins une série chronologique de valeurs d'amplitude (32), cette série chronologique (32) correspondant à une forme brute de mesure d'activité cardiaque ;  memory (3) capable of storing cardiac activity data, said data comprising at least one time series of amplitude values (32), this time series (32) corresponding to a raw form of activity measurement heart;
- au moins une unité de traitement (54) ;  at least one processing unit (54);
caractérisé en ce que : characterized in that
- les données d'activité cardiaque comprennent en outre une seconde série chronologique de valeurs d'amplitude (34), cette seconde série chronologique (34) correspondant à une forme réduite de la mesure d'activité cardiaque ;  the cardiac activity data further comprises a second time series of amplitude values (34), this second time series (34) corresponding to a reduced form of the cardiac activity measurement;
et en ce que : and in that :
- l'unité de traitement (54) est agencée pour :  the processing unit (54) is arranged for:
- construire une fonction linéaire par parties des valeurs d'amplitude de la seconde série chronologique (34), la fonction linéaire étant ajustée sur les valeurs d'amplitude de ladite série chronologique (32), conformément à un critère d'optimisation, chaque partie de la fonction linéaire correspondant à un intervalle temporel respectif de ladite série chronologique (32),  constructing a linear function by parts of the amplitude values of the second time series (34), the linear function being adjusted to the amplitude values of said time series (32), according to an optimization criterion, each part the linear function corresponding to a respective time interval of said time series (32),
- calculer une loi probabiliste, relative à des périodes d'activité cardiaque, conformément à un modèle stochastique,  - calculate a probabilistic law, relating to periods of cardiac activity, according to a stochastic model,
- combiner certains au moins desdits intervalles temporels respectifs de manière à obtenir, pour des intervalles temporels résultants, une répartition statistique de périodes temporelles approchant ladite loi probabiliste,  combining at least some of said respective time intervals so as to obtain, for the resulting time intervals, a statistical distribution of time periods approaching said probabilistic law,
- délivrer des données relatives aux intervalles temporels résultants en tant que données relatives à un rythme cardiaque.  delivering data relating to the resulting time intervals as data relating to a heart rhythm.
2. Dispositif selon la revendication 1, dans lequel ledit critère d'optimisation comprend une minimisation d'un écart quadratique avec les valeurs d'amplitude de ladite série chronologique. 2. Device according to claim 1, wherein said optimization criterion comprises minimizing a quadratic difference with the amplitude values of said time series.
3. Dispositif selon l'une des revendications 1 et 2, dans lequel l'unité de traitement (54) est agencée pour construire la fonction linéaire de manière itérative, en augmentant un nombre d'intervalles temporels à chaque itération. 3. Device according to one of claims 1 and 2, wherein the processing unit (54) is arranged to build the linear function iteratively, increasing a number of time intervals at each iteration.
4. Dispositif selon l'une des revendications précédentes, dans lequel le modèle stochastique comprend un modèle de propagation du front d'activation cardiaque sous la forme d'une équation de Langevin généralisée. 4. Device according to one of the preceding claims, wherein the stochastic model comprises a propagation model of the cardiac activation front in the form of a generalized Langevin equation.
5. Dispositif selon l'une des revendications précédentes, dans lequel l'unité de traitement (54) est agencée pour déterminer lesdits intervalles temporels résultants au moyen d'un calcul d'optimisation Bayésienne. 5. Device according to one of the preceding claims, wherein the processing unit (54) is arranged to determine said resulting time intervals by means of a Bayesian optimization calculation.
6. Dispositif selon l'une des revendications précédentes, dans lequel l'unité de traitement (54) est agencée pour calculer les valeurs d'amplitude de la seconde série chronologique (34) à partir des valeurs d'amplitude de ladite série chronologique (32). The device according to one of the preceding claims, wherein the processing unit (54) is arranged to calculate the amplitude values of the second time series (34) from the amplitude values of said time series ( 32).
7. Dispositif selon l'une des revendications précédentes, dans lequel les données relatives aux intervalles temporels résultants comprennent des temps de passage d'un front d'activation. 7. Apparatus according to one of the preceding claims, wherein the data relating to the resulting time intervals comprise times of passage of an activation front.
8. Dispositif selon l'une des revendications précédentes, dans lequel la loi probabiliste correspond à une résolution formelle de l'équation suivante : 8. Device according to one of the preceding claims, wherein the probabilistic law corresponds to a formal resolution of the following equation:
dS = ϋΔΘ - Hsin(9 + φ(χ)) + F dS = ϋΔΘ - Hsin (9 + φ ( χ )) + F
où θ(χ,ί) représente la phase qui est une distribution des temps de passage et des formes des impulsions cardiaques ; where θ (χ, ί) represents the phase which is a distribution of the passage times and the shapes of the cardiac pulses;
H et F sont des constantes qui correspondent à des caractéristiques d'échelles ; φ est une fonction représentative d'une valeur de retard ; et  H and F are constants that correspond to scale characteristics; φ is a function representative of a delay value; and
D est une constante de diffusion.  D is a diffusion constant.
9. Procédé d'assistance à la cardiologie comprenant les étapes suivantes : A method of assisting cardiology comprising the steps of:
- stocker des données d'activité cardiaque comprenant au moins une série chronologique de valeurs d'amplitude, cette série chronologique correspondant à une forme brute de mesure d'activité cardiaque, et une seconde série chronologique de valeurs d'amplitude, cette seconde série chronologique correspondant à une forme réduite de la mesure d'activité cardiaque ; storing cardiac activity data comprising at least one time series of amplitude values, this time series corresponding to a gross form of measurement of cardiac activity, and a second time series of amplitude values, this second time series corresponding to a reduced form of measurement of cardiac activity;
- construire une fonction linéaire par parties des valeurs d'amplitude de la seconde série chronologique, la fonction linéaire étant ajustée sur les valeurs d'amplitude de la première série chronologique, conformément à un critère d'optimisation, chaque partie de la fonction linéaire correspondant à un intervalle temporel respectif de ladite série chronologique,  constructing a linear function by parts of the amplitude values of the second time series, the linear function being adjusted to the amplitude values of the first time series, according to an optimization criterion, each part of the corresponding linear function at a respective time interval of said time series,
- calculer une loi probabiliste, relative à des périodes d'activité cardiaque, conformément à un modèle stochastique,  - calculate a probabilistic law, relating to periods of cardiac activity, according to a stochastic model,
- combiner certains au moins desdits intervalles temporels respectifs de manière à obtenir, pour des intervalles temporels résultants, une répartition de périodes temporelles approchant ladite loi probabiliste,  combining at least some of said respective time intervals so as to obtain, for resulting time intervals, a distribution of time periods approaching said probabilistic law,
- délivrer des données relatives aux intervalles temporels résultants en tant que données relatives à un rythme cardiaque.  delivering data relating to the resulting time intervals as data relating to a heart rhythm.
PCT/FR2018/050382 2017-02-21 2018-02-16 Device for analyzing heart rhythm WO2018154220A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1751374A FR3063002B1 (en) 2017-02-21 2017-02-21 HEART RATE ANALYZER DEVICE
FR1751374 2017-02-21

Publications (1)

Publication Number Publication Date
WO2018154220A1 true WO2018154220A1 (en) 2018-08-30

Family

ID=59409397

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2018/050382 WO2018154220A1 (en) 2017-02-21 2018-02-16 Device for analyzing heart rhythm

Country Status (2)

Country Link
FR (1) FR3063002B1 (en)
WO (1) WO2018154220A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005115232A1 (en) 2004-05-17 2005-12-08 C.R. Bard, Inc. High density atrial fibrillation cycle length (afcl) detection and mapping system
US20140330148A1 (en) * 2013-05-03 2014-11-06 Northwestern University Cycle length iteration for the detection of atrial activations from electrogram recordings of atrial fibrillation
US20150051452A1 (en) * 2011-04-26 2015-02-19 The Trustees Of Columbia University In The City Of New York Apparatus, method and computer-accessible medium for transform analysis of biomedical data
WO2015171898A1 (en) * 2014-05-09 2015-11-12 Boston Scientific Scimed, Inc. Medical devices for mapping cardiac tissue

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005115232A1 (en) 2004-05-17 2005-12-08 C.R. Bard, Inc. High density atrial fibrillation cycle length (afcl) detection and mapping system
US20150051452A1 (en) * 2011-04-26 2015-02-19 The Trustees Of Columbia University In The City Of New York Apparatus, method and computer-accessible medium for transform analysis of biomedical data
US20140330148A1 (en) * 2013-05-03 2014-11-06 Northwestern University Cycle length iteration for the detection of atrial activations from electrogram recordings of atrial fibrillation
WO2015171898A1 (en) * 2014-05-09 2015-11-12 Boston Scientific Scimed, Inc. Medical devices for mapping cardiac tissue

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
A. M. TURIEL; H. YAHIA; C. PÉREZ-VICENTE: "Microcanonical multifractal formalism-a geometrical approach to multifractal systems : Part I. Singularity analysis", JOURNAL OF PHYSICS A :MATHEMATICAL AND THEORETICAL, vol. 41, 2008, pages 015501 - 015536
A. TURIEL; H. YAHIA; C. PÉREZ-VICENTE: "Microcanonical multifractal formalism-a geometrical approach to multifractal systems : Part I. Singularity analysis", JOURNAL OF PHYSICS A: MATHEMATICAL AND THEORETICAL, vol. 41, 2008, pages 015501 - 015536
HIDEKI TAKAYASU; AKI-HIRO SATO; MISAKO TAKAYASU: "Stable Infinité Variance Fluctuations in Randomly Amplified Langevin Systems", PHYSICAL REVIEW LETTERS
J.M. DEUTSCH: "Probability distributions for one component équations with multiplicative noise", PHYSICA A, vol. 208, 1994, pages 433 - 444, XP024432069, DOI: doi:10.1016/0378-4371(94)00055-7
JACQUELINE O'DONNEL: "Computer Quantitation of Q-T and Terminal T Wave (aT-eT) Intervals During Exercise: Methodology and Results in Normal Men", AMERICAN JOURNAL OF CARDIOLOGY, vol. 47, 1 May 1981 (1981-05-01), pages 1168 - 1172, XP055428202 *
O BARQUERO-PEREZ ET AL: "Fundamental Frequency and Regularity of Cardiac Electrograms With Fourier Organization Analysis", IEEE TRANSACTIONS ON BIOMEDICAL ENGINEERING, IEEE SERVICE CENTER, PISCATAWAY, NJ, USA, vol. 57, no. 9, 1 September 2010 (2010-09-01), pages 2168 - 2177, XP011343330, ISSN: 0018-9294, DOI: 10.1109/TBME.2010.2049574 *
S.I. DENISOV; W. HORSTHEMKE; P. HANGGI: "Generalized Fokker-Planck equation: Dérivation and exact solutions", EUR. PHYS. J. B, vol. 68, 2009, pages 567 - 575, XP019662310

Also Published As

Publication number Publication date
FR3063002A1 (en) 2018-08-24
FR3063002B1 (en) 2022-12-16

Similar Documents

Publication Publication Date Title
CN113066502B (en) Heart sound segmentation positioning method based on VMD and multi-wavelet
Zhang et al. An integrated EMD adaptive threshold denoising method for reduction of noise in ECG
WO2000056218A1 (en) Device for analysing auscultation sounds, in particular respiratory sounds
EP2168056A1 (en) System and method for adaptive stimulus-response signal filtering
KR20190128841A (en) Method for clustering electrocardiogram signal and electrocardiogram processing apparatus for executing the same
FR2855958A1 (en) DEVICE FOR ANALYZING CYCLE-TO-CYCLE ALTERNATION AND / OR VARIABILITY OF THE VENTRICULAR REPOLARIZATION WAVE IN AN ECG SIGNAL
US10354422B2 (en) Diagram building system and method for a signal data decomposition and analysis
EP2828796B1 (en) Method for detecting at least one anomaly in an observed signal, computer program product and corresponding device
WO2018154220A1 (en) Device for analyzing heart rhythm
CN114159075B (en) QRS wave optimizing device, system and storage medium
FR3037496A1 (en) SYSTEM AND METHOD FOR ESTIMATING A PHYSIOLOGICAL PARAMETER OF AN ELEMENTARY VOLUME
US11391803B2 (en) Multi-shot echo planar imaging through machine learning
FR3070590A1 (en) METHOD OF EVALUATING MATURATION OF PREMATURE BABY AND ASSOCIATED SYSTEM
FR2965651A1 (en) Method for processing two-dimensional projection images of vessels of patient, involves obtaining two-dimensional projection images of object by using medical imaging system displaced along path
WO2020201755A1 (en) Image reconstruction
FR3027115A1 (en) SYSTEM AND METHOD FOR ESTIMATING A QUANTITY OF INTEREST IN AN ARTERY / FABRIC / VEIN DYNAMIC SYSTEM
CN108877902B (en) Ultrasonic image brightness adjusting method and adjusting system
Sassi et al. Analysis of surface atrial signals: time series with missing data?
Alhussainy QRS complex detection and R–R interval computation based on discrete wavelet transform
FR2983055A1 (en) Method for detecting and estimating characteristic waves of cardiac events in ECG signal to monitor e.g. aged person in residence, involves utilizing positively polarized and negatively polarized filtered signals to detect waves
EP3160336A2 (en) Device for processing foetal heart rhythm data, and corresponding method and computer program
EP1366428A2 (en) Method and device for filtering a series of cardiac rhythm signals (rr) derived from a cardiac signal, and more particularly an ecg signal
WO2021259958A1 (en) Method for determining arterial pressure from a ppg signal and corresponding device
EP2558954B1 (en) Method and system for analysing the cardiac activity of a patient and uses thereof
Rexy et al. A Novel Approach to Perform ECG Signal Identification and Segmentation Based on Pan-Tompkins and Hamilton-Tompkins Algorithm.

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18708166

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18708166

Country of ref document: EP

Kind code of ref document: A1