Information processing device, information processing method, and program
The short-term cutoff autocorrelation processing with a degeneracy coefficient reduces computational load in generating blood flow information, addressing inefficiencies in existing methods and ensuring accurate blood flow signal generation.
Patent Information
- Application Number
- PCT/JP2024/043194
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-01-17
- Filing Date
- 2024-12-06
- Publication Date
- 2025-07-24
AI Technical Summary
Existing methods for generating blood flow information, such as blood flow velocity, require a significant amount of computational resources and are not efficient in reducing the calculation load.
The method employs a short-term cutoff autocorrelation processing technique that limits the number of samples for deviation amounts in autocorrelation processing and uses a degeneracy coefficient for weighted integration, reducing the number of samples needed for calculation while maintaining accuracy.
This approach significantly reduces the computational burden while maintaining high accuracy in generating blood flow information, allowing for efficient and accurate blood flow signal generation.
Smart Images

Figure JP2024043194_24072025_PF_FP_ABST
Abstract
Description
Information processing device, information processing method, and program
[0001] The present technology relates to an information processing device, an information processing method, and a program that can be applied to generating blood flow information related to blood flow such as blood flow velocity.
[0002] Patent Literature 1 discloses a method for measuring blood flow velocity using a blood flow meter, and a system that utilizes the blood flow velocity measurement function to encourage a person to take an action that will have an appropriate effect on their body depending on their physical condition. Patent Literature 1 also discloses a method for driving the blood flow meter, in which an irradiation unit of the blood flow meter intermittently irradiates light.
[0003] Patent No. 6988802
[0004] There is a demand for a technique that can reduce the amount of calculation required to generate blood flow information such as blood flow velocity.
[0005] In view of the above circumstances, an object of the present technology is to provide an information processing device, an information processing method, and a program that enable a reduction in the amount of calculation required to generate blood flow information.
[0006] To achieve the above object, an information processing device according to one embodiment of the present technology includes an acquisition unit and a generation unit. The acquisition unit acquires sampling data generated at a predetermined sampling rate based on detection results from a light detection sensor that detects measurement light irradiated onto a measurement target portion of a living body. The generation unit performs autocorrelation processing on the acquired sampling data and generates blood flow information based on the results of the autocorrelation processing. The sampling data includes frame data of a predetermined number of samples and deviation amount data for performing the autocorrelation processing on a number of samples less than half the number of samples of the frame data. The generation unit calculates autocorrelation values corresponding to each deviation amount up to the maximum deviation amount, with the number of samples of the deviation amount data being set as the maximum deviation amount for the frame data, and generates the blood flow information based on the calculated autocorrelation values corresponding to each of the deviation amounts.
[0007] In this information processing device, autocorrelation processing is performed on sampling data generated based on the detection results of measurement light irradiated on a measurement target part of a living body, and blood flow information is generated based on the results of the autocorrelation processing. The sampling data consists of frame data and deviation amount data, the number of samples of which is less than half the number of samples of the frame data. The number of samples of this deviation amount data is set as the maximum deviation amount, and autocorrelation values corresponding to each deviation amount up to the maximum deviation amount are calculated, and blood flow information is generated based on the autocorrelation values corresponding to each calculated deviation amount. Since the number of samples of the deviation amount data is kept to a value smaller than half the number of samples of the frame data, it is possible to reduce the amount of calculation required to generate blood flow information.
[0008] The generating unit may generate the blood flow information by calculating a sum of products of autocorrelation values corresponding to the respective amounts of deviation and a degeneracy coefficient. In this case, the degeneracy coefficient may be a coefficient obtained by degenerating a discrete Fourier transform matrix for performing a discrete Fourier transform on the autocorrelation values corresponding to the respective amounts of deviation and a weighting coefficient for calculating a sum of products between the result of the discrete Fourier transform and the result of the discrete Fourier transform for weighting and integrating the result of the discrete Fourier transform for each frequency.
[0009] The number of samples of the deviation amount data may be set based on at least one of the wavelength of the measurement light, the sampling rate, and an integral range of a weighted integral for the result of the discrete Fourier transform.
[0010] The number of samples of the deviation amount data may be set based on the number of samples of zero-cross deviation amount, which is a deviation amount that results in a result of the autocorrelation processing being smaller than 0 when the autocorrelation processing is performed on the sampling data while increasing the deviation amount in order from 0.
[0011] The number of samples of the deviation amount data may be smaller than the number of samples of the zero cross deviation amount.
[0012] The number of samples of the deviation amount data may be set based on a convergence value of a calculation result of a sum of products of an autocorrelation value corresponding to each deviation amount and the degeneracy coefficient, which converges as the number of samples of the deviation amount data increases.
[0013] The number of samples of the deviation amount data may be set to a value that includes an error from the convergence value within a predetermined range.
[0014] The number of samples of the deviation amount data may be less than 1 / 5 of the number of samples of the frame data.
[0015] The number of samples of the deviation amount data may be less than 1 / 10 of the number of samples of the frame data.
[0016] The number of samples of the deviation amount data may be less than 50.
[0017] The number of samples of the sampling data may be less than the number of samples corresponding to the output interval obtained by multiplying the sampling rate by the output interval at which the blood flow information is output.
[0018] The number of samples of the sampling data may be less than half the number of samples corresponding to the output interval.
[0019] The generation unit may generate, as the blood flow information to be output, an addition, simple average, or weighted average of multiple sets of blood flow information corresponding to multiple sets of sampling data continuously acquired by the acquisition unit.
[0020] The blood flow information may include at least one of a blood flow velocity, a blood flow volume, and a density of red blood cells contained in the blood flow.
[0021] An information processing method according to one aspect of the present technology is an information processing method executed by a computer system, the information processing method including: an acquisition step of acquiring sampling data generated at a predetermined sampling rate based on detection results of a light detection sensor that detects measurement light irradiated onto a measurement target portion of a living body; and a generation step of performing autocorrelation processing on the acquired sampling data and generating blood flow information based on the result of the autocorrelation processing. The sampling data includes frame data of a predetermined number of samples and deviation amount data for performing the autocorrelation processing, the number of samples being less than half the number of samples of the frame data. The generation step also includes calculating autocorrelation values corresponding to each deviation amount up to the maximum deviation amount, with the number of samples of the deviation amount data being set as the maximum deviation amount for the frame data, and generating the blood flow information based on the calculated autocorrelation values corresponding to each deviation amount.
[0022] A program according to an embodiment of the present technology causes a computer system to execute the information processing method.
[0023] 5 is a schematic diagram showing a configuration example of an LDF-type blood flow meter according to an embodiment of the present technology (external view example). FIG. 6 is a clock diagram showing a configuration example of an LDF-type blood flow meter according to an embodiment of the present technology. FIG. 7 is a block diagram showing a functional configuration of a computing unit of a discrete Fourier transform method according to a comparative example. FIG. 8 is a diagram showing an output example of a blood flow signal when a computing unit of a discrete Fourier transform method is used. FIG. 9 is a block diagram showing a functional configuration of a computing unit of an autocorrelation method according to a comparative example. FIG. 10 is a diagram showing an output example of a blood flow signal when a computing unit of an autocorrelation method is used. FIG. 11 is a schematic diagram showing a functional configuration example of a computing unit of a short-term truncated autocorrelation method according to an embodiment of the present technology. FIG. 12 is a diagram showing an example of an equation for a discrete Fourier transform using a discrete Fourier transform matrix executed by the discrete Fourier transform processing unit shown in FIG. 5. FIG. 13 is a diagram showing an example of an equation for weighted integral (product-sum) processing executed by the weighted integral (product-sum) processing unit shown in FIG. 10. FIG. 14 is a diagram showing an equation obtained by substituting the equation of FIG. 8 into the F vector of the equation of FIG. 11. FIG. 15 is a diagram showing an example of an equation for calculating a degeneracy coefficient. FIG. 16 is a diagram showing an example of an equation for weighted integral (product-sum) processing executed by the weighted integral (product-sum) processing unit shown in FIG. 15 is a graph showing the autocorrelation values of a Doppler beat signal derived from blood flow detected from a subject. FIG. 16 is a graph showing coefficient values of the degeneracy coefficients shown in FIG. 11. FIG. 17 is a graph enlarging the range from D[0] to D
[100] of the graph of the degeneracy coefficients shown in FIG. 14. FIG. 18 is a graph showing the results of integration of the autocorrelation values corresponding to each amount of deviation shown in FIG. 13 with the degeneracy coefficients shown in FIG. 15 for each component. FIG. 19 is a graph showing the relationship between the error rate and a cutoff value T set as the maximum amount of deviation when applying a degeneracy coefficient to the autocorrelation values corresponding to each amount of deviation shown in FIG. 13 and performing weighted integration. FIG. 19 is a graph showing the autocorrelation values of a Doppler beat signal derived from blood flow detected from another subject. FIG. 19 is a graph showing the results of integration of the autocorrelation values corresponding to each amount of deviation shown in FIG. 18 with the degeneracy coefficients shown in FIG. 14 for each component. FIG. 19 is a graph showing the relationship between the error rate and a cutoff value T set as the maximum amount of deviation when applying a degeneracy coefficient to the autocorrelation values corresponding to each amount of deviation shown in FIG. 18 and performing weighted integration. 10 is a graph showing a correlation coefficient between a blood flow signal generated by a computing unit using a discrete Fourier transform method according to Comparative Example 1 and a blood flow signal generated by a computing unit using a short-term truncated autocorrelation method according to the present technology.28 is a diagram showing an example of an output of a blood flow signal by short-term truncated autocorrelation processing using a computing unit of the short-term truncated autocorrelation method according to the present technology. FIG. 29 is a diagram showing another example of an output of a blood flow signal by short-term truncated autocorrelation processing using a computing unit of the short-term truncated autocorrelation method according to the present technology. FIG. 29 is a schematic diagram showing an example of the configuration of a short-term truncated autocorrelation processing unit shown in FIG. 7. FIG. 29 is a flowchart showing an example of processing by an input data holding unit shown in FIG. 24. FIG. 29 is a flowchart showing an example of processing by an autocorrelation calculation unit shown in FIG. 24 (initialization processing of an autocorrelation value holding memory). FIG. 29 is a flowchart showing an example of processing by the autocorrelation calculation unit shown in FIG. 24 (1-data autocorrelation processing). FIG. 29 is a schematic diagram showing an example of the configuration of a weighted integral (product-sum) processing unit shown in FIG. 7. FIG. 29 is a flowchart showing an example of processing by the product-sum calculation unit shown in FIG. 28. FIG. 30 is a block diagram showing an example of the hardware configuration of a computer that can be used as a signal processing device.
[0024] Hereinafter, embodiments of the present technology will be described with reference to the drawings.
[0025] [LDF (Laser Doppler Flowmetry) Blood Flowmeter] Figures 1 and 2 are schematic diagrams showing a configuration example of an LDF blood flowmeter according to an embodiment of the present technology. Figure 1 is a diagram showing a schematic external view of the LDF blood flowmeter. Figure 2 is a block diagram showing each element of the LDF blood flowmeter.
[0026] The LDF blood flow meter 1 is a measuring device that utilizes the Doppler shift of light. The LDF blood flow meter 1 shown in Figures 1 and 2 can also be called an LDF sensor or an LDF sensor system.
[0027] 1 and 2 , the LDF-type blood flow meter 1 includes a sensor head 2 and a signal processing device 3 that are communicatively connected to each other. The signal processing device 3 functions as an embodiment of an information processing device according to the present technology.
[0028] 1, a sensor head 2 and a signal processing device 3 are connected via a wire 4. The connection between the two devices is not limited, and wireless communication or the like may be used.
[0029] The sensor head 2 has a coherent light radiator 5 and a photoelectric conversion unit 6. The coherent light radiator 5 emits coherent light CL. In this embodiment, a laser light source is used as the coherent light radiator 5, and laser light is emitted as the coherent light CL. The photoelectric conversion unit 6 is, for example, a photodiode.
[0030] The sensor head 2 is placed close to or in close contact with a portion of a living body 7 to be measured. Blood vessels 8 exist inside the living body 7, and red blood cells 9 flow through the blood vessels 8. The living body 7 also includes stationary biological tissue other than blood (hereinafter referred to as stationary tissue 10).
[0031] In this embodiment, the coherent light CL corresponds to an embodiment of the measurement light irradiated onto a measurement target portion of a living body according to the present technology, and the photoelectric conversion unit 6 corresponds to an embodiment of the light detection sensor according to the present technology that detects the measurement light irradiated onto the measurement target portion of a living body.
[0032] The signal processing device 3 has hardware necessary for a computer, such as a processor such as a CPU, a GPU, or a DSP, a memory such as a ROM or a RAM, and a storage device such as an HDD (see FIG. 30 ). The processor loads a program according to the present technology stored in the storage unit or the memory into the RAM and executes the program, thereby executing the information processing method (blood flow information generating method) according to the present technology.
[0033] For example, the signal processing device 3 can be realized by any computer such as a PC (Personal Computer). Of course, any hardware such as an FPGA or an ASIC may be used to realize the signal processing device 3.
[0034] As shown in FIG. 2, the signal processing device 3 includes a timing generator 11 , a light source driver 12 , an amplifier 13 , an AD converter 14 , a calculator 15 , and a calculation result output unit 16 .
[0035] Each of these functional blocks is configured by, for example, executing a program according to the present technology by a processor included in the signal processing device 3. Of course, dedicated hardware such as an IC (integrated circuit) may be used to realize each functional block.
[0036] The program is installed in the signal processing device 3 via, for example, various recording media. Alternatively, the program may be installed via the Internet or the like. The type of recording medium on which the program is recorded is not limited, and any computer-readable recording medium may be used. For example, any computer-readable non-transitory storage medium may be used.
[0037] The timing generator 11 generates a timing signal and outputs it to the light source driver 12, the AD converter 14, and the computing unit 15. This allows the light source driver 12, the AD converter 14, and the computing unit 15 to operate in synchronization with each other.
[0038] The coherent light radiator 5 is driven by the light source driver 12, and the coherent light CL is irradiated onto the measurement target area of the living body 7. The coherent light CL is scattered by red blood cells 9, which are moving scatterers, and by stationary tissue 10, which is a stationary scatterer, to generate scattered light.
[0039] The scattered light generated by the red blood cells 9 undergoes a frequency shift due to the Doppler phenomenon, which depends on the flow velocity of the red blood cells 9. On the other hand, the scattered light generated by the stationary tissue 10 does not undergo a frequency shift. Interference between these scattered lights generates a Doppler beat, in which the intensity of the light is modulated. By analyzing the intensity distribution for each frequency (beat frequency) of this Doppler beat, it is possible to generate blood flow information related to the blood flow, such as blood flow velocity (speed of red blood cells).
[0040] The light source converter 6 converts scattered light generated from red blood cells 9 and stationary tissue 10 into an electrical signal. The converted electrical signal contains a Doppler beat signal corresponding to the Doppler beat of the amount of received light. The converted electrical signal is amplified by an amplifier 13 and then sampled by an AD converter 14 at a predetermined sampling rate (sampling frequency) to generate sampling data.
[0041] The calculator 15 executes calculations to analyze the sampling data generated by the AD converter 14. The calculation results of the calculator 15 are output by a calculation result output unit 16.
[0042] In the present disclosure, blood flow information includes any information related to blood flow, such as blood flow velocity, blood flow volume, red blood cell density (density distribution), pulse rate, pulse rate, and the like.
[0043] Furthermore, in the present disclosure, the generation of blood flow information is not limited to the direct generation of blood flow information, but also includes the generation of data containing blood flow information or the generation of a signal containing blood flow information. For example, the direct calculation and output of blood flow velocity or blood volume is included in the generation of blood flow information. However, the generation of blood flow information is not limited to this, and also includes the generation of data or signals containing information such as blood flow velocity, in other words, data or signals from which blood flow velocity or the like can be derived.
[0044] Furthermore, when a trained model that has undergone machine learning is constructed to output information about blood flow, the generation of blood flow information also includes the generation of features to be input to the trained model. These features can also be called features related to blood flow (blood flow features).
[0045] In this embodiment, the calculator 15 shown in Fig. 2 performs frequency analysis on the Doppler beat contained in the electrical signal, and outputs a signal as a calculation result. The signal contains blood flow information (hereinafter referred to as a blood flow signal). The generation of the blood flow signal by the calculator 15 is included in the generation of blood flow information according to the present technology. Note that the blood flow information and blood flow signal related to blood flow rate can also be referred to as blood flow rate information and blood flow rate signal.
[0046] [Study on Generation of Blood Flow Signal] The inventors have conducted extensive studies on generation of blood flow signals executed by the computing unit 15 shown in Fig. 2. The details of the inventors' studies will be described below.
[0047] 3 is a block diagram showing the functional configuration of the computing unit 18 that was the subject of the inventor's investigation. Hereinafter, the computing unit 18 shown in FIG. 3 will be referred to as the computing unit 18 according to Comparative Example 1. The computing unit 18 according to Comparative Example 1 is one of the prior art embodiments of the computing unit 15 shown in FIG. 2.
[0048] The calculator 18 according to the first comparative example is a calculator of the discrete Fourier transform type, and includes a window function convolution processing unit 19, a discrete Fourier transform processing unit 20, a power spectrum calculation processing unit 21, and a weighted integral (product-sum) processing unit 22.
[0049] Each of these functional blocks is configured by, for example, executing a program according to the present technology by a processor included in the signal processing device 3. Of course, dedicated hardware such as an FPGA or an ASIC may be used to realize each functional block.
[0050] As shown in FIG. 3, in the computing unit 18 according to the first comparative example, a trigonometric ratio coefficient table 23 and a weighting coefficient table 24 are stored in a buffer memory, a ROM, or the like.
[0051] The window function convolution processing unit 19 performs window function convolution processing on the sampled data output from the AD converter 14 shown in FIG. 2, and generates frame data for a predetermined number S of samples.
[0052] The discrete Fourier transform processing unit 20 performs discrete Fourier transform processing on frame data of a predetermined number S of samples. Specifically, a discrete Fourier transform matrix consisting of S rows and S columns is multiplied by frame data consisting of S pieces of data. Two discrete Fourier transform matrices are prepared: one for sine wave components and one for cosine wave components. From a practical standpoint, FFT (fast Fourier transform) is often used as the discrete Fourier transform method, but this is not limiting.
[0053] The frame data of the number of samples S is converted into spectrum data in the frequency domain by the discrete Fourier transform processing performed by the discrete Fourier transform processing unit 20. The discrete Fourier transform matrix used to perform the discrete Fourier transform processing is constructed by referring to a trigonometric ratio coefficient table 23 stored in a buffer memory or the like.
[0054] The power spectrum calculation processing unit 21 calculates a power spectrum from the spectrum data in the frequency domain. Specifically, the power spectrum is calculated by squaring the real and imaginary parts of each frequency spectrum and adding them up. The power spectrum is calculated as S pieces of data.
[0055] The weighted integration (product-sum) processing unit 22 performs weighted integration on the power spectrum, weighting each frequency and integrating it. In this embodiment, to perform the weighted integration, the product-sum of the power spectrum consisting of S pieces of data and the weighting coefficients consisting of the same number of S pieces of data is calculated. In other words, a calculation similar to the product of a row vector and a column vector having S components is performed.
[0056] The components of the power spectrum made up of S pieces of data and the weighting coefficients made up of S pieces of data are multiplied, and the S multiplication results are added together. By performing such a product-sum operation, a blood flow signal is generated.
[0057] The weighting coefficients are read from a weighting coefficient table 24 stored in a buffer memory or the like. The weighting coefficients are prepared in advance in accordance with various characteristics of blood flow (e.g., blood flow velocity, blood flow amount, density distribution, etc.). That is, weighting coefficients are prepared for each type of blood flow information to be generated.
[0058] In addition, weighting coefficients may be preset so that blood flow feature values that are input to the trained model as blood flow information are generated. When multiple blood flow feature values are generated, these blood flow feature values can be used by machine learning to generate blood flow information with high accuracy.
[0059] For example, suppose that n weighting coefficients are preset to generate n different types of blood flow signals. In this case, one weighting coefficient consists of S pieces of data, so a total of n x S pieces of data are stored in a buffer memory or the like. In other words, when generating different types of blood flow signals or blood flow feature quantities, the amount of data for the weighting coefficients also increases.
[0060] FIG. 4 is a diagram showing an example of an output of a blood flow signal when the computing unit 18 according to the first comparative example shown in FIG. 3 is used.
[0061] For example, consider a case where a wristband-type LDF blood flow meter is used to measure blood flow signals and extract blood flow pulse waves. Blood flow velocities at the wrist are centered around 1 mm / sec or less. When observing using coherent light CL with an emission wavelength of 850 nm, the Doppler beats caused by scattered light from red blood cells moving along the blood flow are generally distributed below 2 kHz at resting blood flow velocities.
[0062] Even in the high-frequency components at the base of the distribution in situations where exercise or other blood flow velocity increases, Doppler beats are distributed below 10 kHz. Therefore, in this study, a sampling rate of 32 kHz was used for the AD converter 14 that generates data to be input to the calculator 18.
[0063] It is sufficient for the blood flow signal calculated by an LDF blood flow meter to be calculated at a frequency of about 30 SPS (samples per second). Of the signal components superimposed on the blood flow signal, the component with the fastest rate of change is the blood flow pulse wave signal derived from the heartbeat. Since the heart rate is a biological parameter that fluctuates at values below 300 BPM (beats per minute) (= 5 BPS), the blood flow signal fluctuates mainly with frequency components below 10 Hz. Therefore, sufficient results can be obtained if the blood flow signal is output at a frequency of 30 SPS.
[0064] Based on these conditions, in this study, the input and output of the calculator 18 are set as follows: Input: 32 kHz photoelectric conversion signal (AC component); Output: 100 / 3 SPS blood flow signal. The output 100 / 3 SPS blood flow signal is a blood flow signal output at an output interval of 30 msec.
[0065] In a discrete Fourier transform, a spectrum is generally calculated from consecutive, evenly spaced sampled data of a predetermined length called a window width, which is determined by the lowest frequency value to be processed or the frequency resolution of the spectrum. In this application, the window width (Fourier transform window width shown in Figure 4) is set to 4096 samples. Since the sampling rate is 32 kHz, the time width for 4096 samples is 128 msec. Hereinafter, a segment of consecutive, evenly spaced sampled data of a predetermined length used for signal processing will be referred to as a frame. Furthermore, the sample data included in a frame will be referred to as frame data.
[0066] The time width of 128 msec required to obtain frame data is longer than the 30 msec output interval of the blood flow signal, so the photoelectric conversion signal is measured densely at a predetermined sampling rate, overlapping frames are set in the moving window, and blood flow information generation processing is performed based on the obtained frame data.
[0067] For example, in the example shown in Figure 4, a blood flow signal with output 0 is obtained based on frame data obtained with Fourier transform window 0. A blood flow signal with output 1 is obtained based on frame data obtained with Fourier transform window 1. A blood flow signal with output 2 is obtained based on frame data obtained with Fourier transform window 2. A blood flow signal with output 3 is obtained based on frame data obtained with Fourier transform window 3.
[0068] In order to output the blood flow signal at an output interval (30 msec), it is necessary to constantly drive the coherent light emitter 5, the photoelectric conversion unit 6, and the amplifier 13, and to continuously generate the blood flow signal using the calculator 18, which makes it difficult to perform intermittent driving.
[0069] Regarding the computer resources required to execute the process shown in FIG. 4, first, for the discrete Fourier transform, the window width is set to 4096, so the number of elements in the trigonometric ratio coefficient table 23 is approximately 4096 / 4=1024.
[0070] Furthermore, a buffer of 4096 samples is required to hold the input data from the AD converter 14. Furthermore, when overlapping frames are set using a moving window as in this example, a buffer of the same size is required to prevent the original data from being destroyed when the window function is applied. In other words, an additional buffer of 4096 samples is required.
[0071] Furthermore, to store the results of the discrete Fourier transform, a buffer of 8,192 samples is required, including both the real and imaginary parts. Furthermore, if the discrete Fourier transform is implemented using an FFT, a buffer of an additional 8,192 samples is required to perform butterfly operations. This can be shared with the buffer for the FFT input values, but in this case a buffer of 20,480 samples in total and a coefficient table of 1,024 samples are required.
[0072] For power spectrum calculation, a buffer for storing the results of the discrete Fourier transform can be used.
[0073] Regarding weighted integral (product-sum) processing, to calculate n blood flow signals (blood flow feature quantities, etc.), 4096 x n weighting coefficient tables are required. Adding all of these together, (4096 x n) + 1024 coefficient tables and a buffer for 20,480 samples are required. That is, the discrete Fourier transform-based calculator 18 according to Comparative Example 1 requires large coefficient tables, and the buffer size required to hold the samples is also large. Furthermore, the amount of calculation required for weighted integral (product-sum) processing increases in proportion to the window width.
[0074] 5 is a block diagram showing the functional configuration of the computing unit 26 that was the subject of the inventor's investigation. Hereinafter, the computing unit 26 shown in FIG. 5 will be referred to as the computing unit 26 according to Comparative Example 2.
[0075] The calculator 26 according to Comparative Example 2 is an autocorrelation calculator that performs calculations using the Wiener-Khinchin theorem, which states that the power spectral density of a widely stationary stochastic process is the Fourier transform of the corresponding autocorrelation function.
[0076] 5, the calculator 26 according to the second comparative example includes an autocorrelation processor 27, a discrete Fourier transform processor 28, and a weighted integral (product-sum) processor 29. In the calculator 26 according to the second comparative example, a trigonometric ratio coefficient table 30 and a weighting coefficient table 31 are stored in a buffer memory or the like.
[0077] The calculator 26 according to Comparative Example 2, which uses the autocorrelation method, has the advantage that it is not affected by the shape of the window function, as it does not perform window function convolution processing, compared to the calculator 18 according to Comparative Example 1, which uses the discrete Fourier transform method.
[0078] FIG. 6 is a diagram showing an example of an output of a blood flow signal when the computing unit 26 according to the second comparative example shown in FIG. 5 is used.
[0079] In the calculator 26 according to the second comparative example, autocorrelation processing (discrete autocorrelation processing) is performed on a predetermined number of samples of frame data FD by the autocorrelation processing unit 27. In order to perform the autocorrelation processing, shift amount data SD is required to shift the frame data FD.
[0080] 6, the autocorrelation values corresponding to each deviation amount are calculated for frame data FD of 4096 samples, which is the same as that of the calculator 18 in Comparative Example 1, with a deviation amount of 4095 samples being the maximum deviation amount. That is, the autocorrelation values are calculated for data that are up to 4095 samples apart.
[0081] In the present disclosure, the autocorrelation value when the frame data FD is not shifted, i.e., when the shift amount is 0, is also included in the autocorrelation values corresponding to each shift amount up to the maximum shift amount. The maximum shift amount for performing autocorrelation processing can also be called the autocorrelation output length.
[0082] In order to perform autocorrelation processing on frame data FD of 4096 samples with a maximum deviation of 4095 samples, deviation data DD of 4095 samples and frame data FD of 4096 samples consecutive to the deviation data DD are obtained from the AD converter 14.
[0083] 6, an autocorrelation calculation window is set to obtain sampling data SD (8191) that combines the deviation amount data DD (4095) and frame data FD (4096). Autocorrelation processing is performed on the frame data FD (4096) with 4095 samples of the deviation amount data DD as the maximum deviation amount.
[0084] The discrete Fourier transform processing unit 28 performs a discrete Fourier transform on the result of the autocorrelation processing using a discrete Fourier transform matrix with 4096 rows and 4096 columns (autocorrelation values corresponding to each amount of deviation from 0 to 4095). Because the autocorrelation function is a real function symmetrical about 0, a discrete cosine transform can be used to implement the discrete Fourier transform.
[0085] The result of the calculation by the discrete Fourier transform processing unit 28 becomes a power spectrum density according to the Wiener-Khinchine theorem. Therefore, the result of the calculation by the discrete Fourier transform processing unit 28 becomes a parameter corresponding to the result of the power spectrum calculation processing unit 21 shown in Fig. 3, and a blood flow signal is generated by calculating the product sum with a weighting coefficient by the weighted integral (product sum) processing unit 29.
[0086] As shown in FIG. 6, overlapping frames are set in a moving window of 960 samples each corresponding to an output interval of 30 msec, and blood flow information generation processing is performed based on the obtained sampling data SD.
[0087] For example, in the example shown in Figure 6, a blood flow signal with output 0 is obtained based on sampling data SD obtained in autocorrelation calculation window 0. A blood flow signal with output 1 is obtained based on sampling data SD obtained in autocorrelation calculation window 1. A blood flow signal with output 2 is obtained based on sampling data SD obtained in autocorrelation calculation window 2. A blood flow signal with output 3 is obtained based on sampling data SD obtained in autocorrelation calculation window 3.
[0088] To generate a blood flow signal for each frame, the latter half of the most recent frame data FD, which is 4095 samples, can be used as the deviation data DD. In other words, there is no need to newly acquire deviation data DD, and the blood flow signal can be output by newly acquiring 4096 frames of data FD.
[0089] On the other hand, outputting a blood flow signal for each frame requires acquisition of 4096 samples of frame data FD. Therefore, in order to output a blood flow signal at an output interval (30 msec) similarly to the calculator 18 according to Comparative Example 1, it is necessary to constantly drive the coherent light emitter 5, photoelectric conversion unit 6, and amplifier 13, and to continuously generate a blood flow signal by the calculator 18, which makes it difficult to perform intermittent driving.
[0090] The computer resources required to output the blood flow signal include a ring buffer for storing a total of 4096 samples of data, consisting of the data DD (4095) for the amount of deviation and one sample of frame data FD, and an autocorrelation value storage memory for storing the results of the autocorrelation processing for 4096 samples. Therefore, a total of 8192 buffers for the autocorrelation processing are required.
[0091] Since the discrete Fourier transform processing unit 28 requires a trigonometric ratio coefficient table similar to the trigonometric ratio coefficient table 23 in Figure 3, the trigonometric ratio coefficient table 30 has approximately 1024 elements. Also, a buffer for 4096 samples is required to store the results of the discrete Fourier transform. Therefore, for the discrete Fourier transform, a buffer for 4096 samples and a coefficient table for 1024 items are required.
[0092] Regarding weighted integral (product-sum) processing, to calculate n blood flow signals (blood flow feature amounts, etc.), 4096 x n weighting coefficient tables are required. Adding all of these together, (4096 x n) + 1024 coefficient tables and a buffer for 12288 samples are required. That is, like the discrete Fourier transform-based calculator 18 according to comparative example 1, the autocorrelation-based calculator 26 according to comparative example 2 also requires large coefficient tables, and the buffer size required to hold the samples is also large.
[0093] Furthermore, the calculator 26 according to Comparative Example 2 executes autocorrelation processing. The autocorrelation processing requires product-sum operations on the order of (sample length of frame data) x (sample length of deviation amount data). When autocorrelation processing is executed for frame data of 4096 samples, with the maximum deviation amount being 4095 samples, the number of multiplications exceeds 16 million, resulting in an enormous amount of calculation.
[0094] [Generation of blood flow signal by computing unit according to the present technology] Fig. 7 is a schematic diagram showing an example of the functional configuration of a computing unit according to an embodiment of the present technology. The computing unit 33 shown in Fig. 7 is a computing unit newly devised by the inventor. Hereinafter, the computing unit 33 shown in Fig. 7 will be referred to as a short-term truncated autocorrelation type computing unit.
[0095] The calculator 33 according to this embodiment has a short-term truncated autocorrelation processor 34 and a weighted integral (product-sum) processor 35. In addition, in the calculator 33 according to this embodiment, a degeneracy coefficient table 36 is stored in a buffer memory or the like.
[0096] When performing autocorrelation processing on a predetermined number of frame data samples, the short-term truncated autocorrelation processor 34 performs the processing by truncating the shift amount (amount) used to calculate the autocorrelation in the short term. That is, the number of data samples is limited by the shift amount, and the autocorrelation processing is performed. The shift amount truncated in the short term will be described in detail later.
[0097] A weighted integration (product-sum) processing unit 35 performs weighted integration on the result of the short-term truncated autocorrelation processing, weighting each frequency and integrating it. The result of the short-term truncated autocorrelation processing is the number of autocorrelation values corresponding to each deviation from 0 to the maximum deviation, i.e., (d+1) pieces of data, which is the number of samples d of deviation data plus 1. A product-sum with degeneracy coefficients consisting of the same number of data as this (d+1) pieces of data is calculated.
[0098] The autocorrelation values corresponding to the respective deviation amounts, which are made up of (d+1) pieces of data, and the degeneracy coefficients, which are made up of (d+1) pieces of data, are multiplied, and the (d+1) multiplication results are added together. By performing such a product-sum operation, a blood flow signal is generated.
[0099] In this embodiment, the short-term truncated autocorrelation processing unit 34 realizes an acquisition unit according to the present technology that acquires sampling data generated at a predetermined sampling rate based on the detection result of a light detection sensor that detects measurement light irradiated onto a measurement target part of a living body. Of course, a functional block that acquires sampling data and outputs it to the short-term truncated autocorrelation processing unit 34 may be constructed as an embodiment of the acquisition unit according to the present technology.
[0100] Furthermore, in this embodiment, a generating unit according to the present technology that performs autocorrelation processing on acquired sampling data and generates blood flow information based on the results of the autocorrelation processing is realized by the short-term truncated autocorrelation processing unit 34 and the weighted integral (product-sum) processing unit 35. Of course, specific embodiments for realizing the acquiring unit and generating unit according to the present technology are not limited, and any configuration may be adopted.
[0101] [Degeneration Coefficient Table] The degeneration coefficients used in the weighted integral (product-sum) process will be described with reference to Figures 8 to 12. The inventors have newly discovered that in the computing unit 26 using the autocorrelation method shown in Figure 5, the degeneration coefficients can be obtained by degenerating the discrete Fourier transform matrix used to perform the discrete Fourier transform and the weighting coefficients used to perform the weighted integral (product-sum) process.
[0102] Fig. 8 is a diagram showing an example of a discrete Fourier transform equation using a discrete Fourier transform matrix executed by the discrete Fourier transform processing unit 28 in the calculator 26 shown in Fig. 5. The discrete Fourier transform real part matrix is multiplied by an autocorrelation value corresponding to each deviation from 0 to the maximum deviation d.
[0103] In Fig. 8, sc[0] is the autocorrelation value corresponding to a deviation of 0, and sc[d] is the autocorrelation value corresponding to the maximum deviation. A discrete Fourier transform is performed by multiplying a column vector whose components are the autocorrelation values of sc[0] to sc[d] with a discrete Fourier transform real part matrix. In Fig. 8, the real parts of the result of the discrete Fourier transform are defined as F[0] to F[d].
[0104] Fig. 9 is a diagram showing an example of an equation for weighted integral (product-sum) processing executed by the weighted integral (product-sum) processing unit 29 in the calculator 26 shown in Fig. 5. A blood flow signal, which is blood flow information, is generated by calculating the product-sum of the result of the discrete Fourier transform obtained by the equation in Fig. 8 and the weighting coefficient. In Fig. 9, the weighting coefficient is defined as a row vector of w[0] to w[d].
[0105] Substituting the equation in Fig. 8 for the F vector in the equation in Fig. 9 gives the equation shown in Fig. 10. Here, since the row vector of the weighting coefficients and the discrete Fourier transform real part matrix are constants, it is possible to perform multiplication in advance according to the associative rules of matrix operations.
[0106] Fig. 11 is a diagram showing an equation for calculating the degeneracy coefficients. As shown in Fig. 11, the weighting coefficients shown in Fig. 9 are treated as row vectors and multiplied by the discrete Fourier transform real part matrix shown in Fig. 8. This generates the degeneracy coefficients. In Fig. 11, the degeneracy coefficients are defined as D[0] to D[d].
[0107] 12 is a diagram showing an example of an equation for weighted integral (product-sum) processing executed by the weighted integral (product-sum) processing unit 35 in the calculator 33 shown in FIG. 7. The product sum of the result of the autocorrelation processing and the degeneracy coefficient is calculated. This product sum result is equal to the product sum result of the discrete Fourier transform result and the weighting coefficient shown in FIG. 9. Therefore, by calculating the product sum of the result of the autocorrelation processing and the degeneracy coefficient, it is possible to generate a blood flow signal, which is blood flow information.
[0108] In this way, the degeneracy coefficients are coefficients obtained by degenerating a discrete Fourier transform matrix for performing a discrete Fourier transform on the autocorrelation values corresponding to each deviation amount, and a weighting coefficient for calculating the sum of products between the discrete Fourier transform results and the discrete Fourier transform results in order to weight and integrate the results for each frequency.
[0109] It should be noted that the result of the sum of products of the result of the autocorrelation processing and the degeneracy coefficients shown in Fig. 12 is equal to the result of the sum of products of the result of the discrete Fourier transform and the weighting coefficients shown in Fig. 9, regardless of the value of the maximum deviation of the autocorrelation processing. Therefore, it is also possible to generate degeneracy coefficients by degenerating the discrete Fourier transform matrix and the weighting coefficients in the autocorrelation-based computing unit 26 shown in Fig. 5.
[0110] [Short-Term Truncation of Deviation Amount] Next, it will be described how it is possible to truncate the maximum deviation amount in the autocorrelation process, that is, to limit the number of samples of deviation amount data.
[0111] 13 is a graph showing the autocorrelation values of the Doppler beat signals derived from blood flow detected from a subject. The horizontal axis of the graph represents the amount of deviation k when calculating the autocorrelation values. The vertical axis of the graph represents the non-normalized discrete autocorrelation values.
[0112] The graph shown in Fig. 13 shows the results when the sample length of the frame data is 4096. In other words, the graph in Fig. 13 is a graph showing the autocorrelation value corresponding to each shift amount k of the frame data for 4096 samples.
[0113] 13, the graphs shown in gray are examples of measurement results for a state in which the subject's blood flow is relatively active, and the graphs shown in black are examples of measurement results for a state in which the subject's blood flow is relatively poor.
[0114] The generation of blood flow signals by the short-term truncated autocorrelation processing calculator 33 shown in Fig. 7, which was newly devised by the inventors, is applicable to both measurements in which the subject's blood flow is relatively active and measurements in which the subject's blood flow is relatively poor. In other words, this technology can generate blood flow information with high accuracy for blood flow in various states.
[0115] As shown in Figure 13, the shape of the autocorrelation function changes depending on the state of blood flow, but the autocorrelation value also changes continuously. Furthermore, in the range of deviation k < 40, the value falls below 0 once, and after falling below 0, all values are smaller than the value for deviation k = 0. These characteristics of the Doppler beat signal derived from blood flow indicate that the autocorrelation value in the range of small deviation k values mainly contributes to the calculation results for generating the blood flow signal.
[0116] Fig. 14 is a graph showing the coefficient values of the degeneration coefficients shown in Fig. 11. Here, the degeneration coefficients are graphed when a discrete Fourier transform with a window width of 4096 is performed. That is, the graph in Fig. 14 shows the coefficient values D[0] to D
[4096] when d=4096 in the equation shown in Fig. 11.
[0117] 14, normalization is performed so that the coefficient value of D[0], which is the 0th largest value, is +1.0. As shown in FIG. 14, the graph of the degenerate coefficients has values folded around the 2048th coefficient value of D
[2048] , which is 4096 / 2. The increase in the amplitude of the coefficient values in the range greater than D
[2048] is due to the influence of the window and has no essential meaning. In other words, considering the symmetry of the discrete autocorrelation function around 0, the coefficients in the range greater than D
[2048] are in a region that does not need to be calculated.
[0118] 15 is a graph showing an enlarged range of the degeneracy coefficient graph shown in FIG. 14 from D[0] to D
[100] . As shown in FIG. 15, the coefficient values converge to 0 up to the range of around D
[40] , and then take on smaller values in a wavy pattern. Furthermore, in the range after converging to 0, adjacent coefficient values have roughly the same value but opposite signs. Therefore, when calculating the sum of products with the autocorrelation function shown in FIG. 13, whose values change smoothly in the range of deviation k>40, the values in this range will cancel each other out when the sum of the results is added.
[0119] 16 is a graph showing the integration results of the autocorrelation values corresponding to the respective deviation amounts shown in FIG. 13 and the degeneracy coefficients shown in FIG. 15 for each component. The graph shown in FIG. 16A is a graph showing the integration results from (sc[0]×D[0]) to (sc
[100] ×D
[100] ) of the product-sum operation shown in FIG. 12. FIG. 16B is a graph in which the range from (sc[0]×D[0]) to (sc
[10] ×D
[10] ) of the integration result graph shown in FIG. 16A is enlarged. FIG. 16C is a graph in which the Y-axis scale of the integration result graph shown in FIG. 16A is enlarged by 20 times.
[0120] As shown in FIG. 16A, the accumulation results from the 30th (sc
[30] ×D
[30] ) onwards are found to be approximately equal to 0 compared to the accumulation result of the 0th (sc[0]×D[0]).
[0121] 16B, the integration result shows that positive and negative values alternate around 0 until d reaches the 10th number. Furthermore, as shown in FIG. 16C, the integration result shows that the values oscillate symmetrically around 0 in the range from the 20th number onwards.
[0122] In this way, the inventors have focused on the characteristics of the Doppler beat signal derived from blood flow illustrated in FIG. 13 and the characteristics of the degeneracy coefficients (D[0] to D[d]) illustrated in FIG. 14, and have newly discovered that when performing the product-sum operation shown in FIG. 12, the integration results after a predetermined value (for example, a value of about 20 to 40) almost cancel each other out when added together.
[0123] This leads to a new technical point: in the product-sum calculation shown in FIG. 12, even if the integration results after a predetermined value (for example, a value of about 20 to 40) are discarded without being added together, there is almost no effect on the calculation result of the blood flow signal.
[0124] Here, a threshold value for discarding the integrated results without adding them up is defined as a cutoff value T. In the product-sum calculation shown in Fig. 12, the integrated results up to the cutoff value T are added up to generate a blood flow signal. The cutoff value T can also be called the cutoff length T.
[0125] 12, performing a product-sum operation on components up to the cutoff value T is equivalent to calculating autocorrelation values (sc[0] to sc[T]) corresponding to each deviation amount in the autocorrelation process, where the maximum deviation amount d is set to the cutoff value T. Then, calculating the product-sum with degeneracy coefficients (D[0] to D[T]) generated based on a discrete Fourier transform matrix of T+1 rows and T+1 columns and weighting coefficients (w[0] to w[T]) corresponds to generating a blood flow signal.
[0126] The process of calculating the autocorrelation values (sc[0] to sc[T]) corresponding to each deviation amount, assuming that this maximum deviation amount d = truncation value T, corresponds to the short-term truncated autocorrelation processing performed by the short-term truncated autocorrelation processing unit 27 shown in Figure 7.
[0127] Then, the weighted integral (product-sum) processing unit 29 shown in Figure 7 performs product-sum of the autocorrelation values (sc[0] to sc[T]) corresponding to each deviation amount up to the cutoff value T and the degeneracy coefficients (D[0] to D[T]), thereby generating a blood flow signal.
[0128] 17 is a graph showing the relationship between the cutoff value T set as the maximum deviation d and the error rate. The horizontal axis of the graph is the cutoff value T, which indicates the maximum deviation d (the number of samples of data corresponding to the deviation) when short-term cutoff autocorrelation processing is performed. The vertical axis of the graph indicates the error rate from the reference value; the error rate is 0 for a value equal to the reference value, and 1 for an error of the same magnitude as the error rate.
[0129] The reference value is the sum of the multiplication results up to the 2048th (sc
[2048] x D
[2048] ) where the value wraps around in the degeneracy coefficients when a discrete Fourier transform with a window width of 4096 is performed. This value corresponds to the sum-of-products result when no truncation is performed, and is a value equivalent to the theoretical value.
[0130] As shown in Figure 17, the larger the cutoff value T, the more the product-sum result generated as the blood flow signal converges to the reference value. When the cutoff value T = 31, the error rate was ±0.02 (±2%) or less, and good homology was obtained. In other words, based on the results of short-term truncated autocorrelation processing performed with a maximum deviation d = 31, a highly accurate blood flow signal nearly equal to the reference value was obtained.
[0131] Figures 18 to 20 show the results of similar verifications performed on other subjects. Figure 18 is a graph showing the autocorrelation values of Doppler beat signals derived from blood flow detected from another subject. Figure 19 is a graph showing the results of integrating the autocorrelation values and degeneracy coefficients for each component according to the amount of deviation. Figure 20 is a graph showing the relationship between the cutoff value T, which is set as the maximum amount of deviation d, and the error rate.
[0132] Some individual differences are observed in each of the profiles shown in Figures 18 to 20. However, as shown in Figure 20, the error rate was ±0.02 (±2%) or less at a cutoff value of T = 31, and good homology was also obtained.
[0133] 21 is a graph showing the correlation coefficient between the blood flow signal generated by the calculator 18 according to Comparative Example 1 using the discrete Fourier transform method shown in FIGS. 3 and 4 and the blood flow signal generated by the calculator 33 according to the present technology using the short-term truncated autocorrelation method shown in FIG. 7.
[0134] In verifying the correlation coefficient, the discrete Fourier transform method used values calculated using a moving window of 960 samples each, corresponding to an output interval of 30 msec, with a window width of 4096 samples. That is, in the output example shown in Figure 4, the Fourier transform window width was set to 4096 samples, and discrete Fourier transform, power spectrum calculation, and weighted integration (product-sum) processing were performed on frame data with a sample length of 4096.
[0135] 22 shows the output of the short-term truncated autocorrelation method for verifying the correlation coefficient. Here, the sample length of the frame data FD is set to 960 samples, which corresponds to an output interval of 30 msec. The sample length of the deviation data DD is set to the truncation value T.
[0136] The short-term truncated autocorrelation process shown in FIG. 22 was performed on the same Doppler beat signal detected from the subject, and the correlation coefficient with the calculation result by the discrete Fourier transform method was verified by varying the truncation value T.
[0137] 22, in the short-term truncated autocorrelation method, blood flow signals calculated for each sampling data SD, which is a combination of the deviation amount data DD and the frame data FD, are acquired multiple times, and a moving sum of the blood flow signals for the multiple times is output. That is, the sum of the blood flow signals for the multiple times corresponding to the multiple consecutively acquired sampling data SD is generated as the blood flow signal to be output. In the example shown in FIG. 6, moving sums of the blood flow signals for four times are output.
[0138] If the time required for calculating four blood flow signals is defined as the moving summation window, then the moving summation of four blood flow signals obtained in moving summation window 0 will be the blood flow signal of output 0. The moving summation of four blood flow signals obtained in moving summation window 1 will be the blood flow signal of output 1. The moving summation of four blood flow signals obtained in moving summation window 2 will be the blood flow signal of output 2. The moving summation of four blood flow signals obtained in moving summation window 3 will be the blood flow signal of output 3. These outputs are output at an output interval of 30 msec.
[0139] In this way, the short-term truncated autocorrelation method uses values calculated in a moving window of 960 samples, and then adds the values together in groups of four. In this case, the window width is equivalent to 3840 samples, which is almost the same as the window width used in the discrete Fourier transform method.
[0140] The horizontal axis of the graph shown in Fig. 21 is the truncation value T, which indicates the maximum deviation d (the number of samples of data corresponding to the deviation) when short-term truncated autocorrelation processing is performed. The vertical axis of the graph indicates the correlation coefficient with the calculation result by the discrete Fourier transform method, and the closer to 1, the higher the correlation function.
[0141] Specifically, for frame data of 4096 samples acquired by the calculator 18 according to Comparative Example 1 using the discrete Fourier transform method, deviation amount data DD (censored value T) and frame data FD (960) were acquired in order, and short-term truncated autocorrelation processing was performed in order. That is, in the first frame, the first censored value T samples of the frame data of 4096 samples were used as deviation amount data, and the subsequent 960 samples of data were used as frame data, and a first short-term truncated autocorrelation processing was performed to generate a first blood flow signal.
[0142] Next, the data of the last truncated value T samples of the data of 960 samples acquired in the previous frame was used as the deviation amount data, and the data of the 960 samples consecutive to that was used as the frame data, and a second short-term truncated autocorrelation process was performed to generate a second blood flow signal.
[0143] The blood flow signals thus obtained for four frames were added together to calculate a blood flow signal equivalent to a moving window of 3,840 samples. The correlation coefficient between this value and the blood flow signal calculated from frame data of 4,096 samples by the calculator 18 according to Comparative Example 1, which uses the discrete Fourier transform method, was then calculated.
[0144] The correlation coefficient was calculated for Doppler beat signals of various blood flow conditions obtained from various subjects. Note that, in order to align the frame length with the output result of the calculator 18 in Comparative Example 1, which uses a discrete Fourier transform method, the moving sum values of blood flow signals for four frames obtained by short-term truncated autocorrelation processing were used for comparison. However, the moving sum processing is not necessarily required in this technology. It is possible to output the blood flow signals generated for each frame as is, or to add flexible post-processing such as weighted averaging instead of moving sum processing.
[0145] That is, it is also possible to generate the blood flow signal to be output by adding, averaging, or weighting the blood flow signals corresponding to the multiple sets of sampling data SD obtained consecutively.
[0146] By adopting a weighted average of multiple blood flow signals, the degree of agreement with the method of first performing a Fourier transform decreases, but it is possible to improve the frequency response of the output blood flow information. In addition, it is possible to achieve an effect similar to the process of multiplying by a "window function" which is performed as a pre-processing step of the Fourier transform, and it is possible to improve the degree of agreement with a Fourier transform to which a window function is applied.
[0147] The specific number of blood flow signals for multiple times is not limited. Furthermore, in order to generate a blood flow signal to be output from the blood flow signals for multiple times, calculations other than addition, simple averaging, and weighted averaging may be performed.
[0148] 21 plots the average correlation coefficients of the calculation results by the short-term truncated autocorrelation method shown in FIG. 22 relative to the calculation results by the discrete Fourier transform method, for each truncation value T set as the maximum deviation d. For example, for a truncation value of T=15, the average value of the correlation coefficients calculated for various Doppler beat signals is close to 0.98. Note that the lines extending above and below the plotted average value indicate the distribution width of the correlation values obtained by verification.
[0149] As shown in Figure 21, it was revealed that in the range from the cutoff value T = 31 onwards, the correlation coefficient with the calculation result by the calculator 18 according to Comparative Example 1 using the discrete Fourier transform method reached 0.99. This indicates that by setting the maximum deviation amount d of the short-term truncated autocorrelation processing to 31, it is possible to generate a highly accurate blood flow signal. Conversely, even if the maximum deviation amount is truncated to 31, it is possible to generate a highly accurate blood flow signal that has a very high correlation with the calculation result by the discrete Fourier transform method.
[0150] Regarding the cutoff value T set as the maximum deviation amount d, in the case of a signal whose high-frequency signal component is sufficiently small, such as a Doppler beat signal derived from blood flow, it is considered necessary to increase the maximum deviation amount d (cutoff value T) approximately in proportion to the sampling rate fs set in the AD converter 14.
[0151] This is because, with regard to the autocorrelation value for the maximum deviation amount k as illustrated in FIG. 13, the deviation amount k at which the autocorrelation value intersects with 0 (or approaches 0) is thought to increase in proportion to the sampling rate fs.
[0152] Furthermore, when observing a partial frequency range of sampling data, for example, if the integral range (observation speed range) fmax is significantly smaller than half the sampling rate fs, the period of positive / negative inversion of the degeneracy coefficient shown in FIG. 15 is likely to become longer, and in some cases, it may become necessary to increase the value of the maximum deviation d (cutoff value T).
[0153] The maximum deviation amount d (cutoff value T) is thought to depend on, for example, the wavelength λ of the coherent light, the sampling rate fs, the shape of the weighting function, the integral range (observation speed range) fmax, and the like.
[0154] Therefore, the cutoff value T set as the maximum deviation d can be adjusted according to the wavelength λ of the coherent light used, the set sampling rate fs, and the integral range (observation velocity range) fmax determined by the blood flow velocity distribution in the region to be observed, which is determined from physiological knowledge. Note that the integral range (observation velocity range) fmax can also be said to be the integral range of the weighted integral for the result of the discrete Fourier transform in the autocorrelation-based calculator 26 shown in FIG.
[0155] For example, graphs showing the relationship between the cutoff value T set as the maximum deviation amount d and the error rate, as exemplified in Figures 17 and 20, can be created by acquiring Doppler beat signals measured at desired measurement sites for various subjects. Therefore, it is possible to appropriately set the cutoff value T so that the error rate to the reference value (convergence value) falls within a desired range. This makes it possible to generate a blood flow signal by short-term truncated autocorrelation processing using the calculator 33 according to the present technology shown in Figure 7.
[0156] Of course, the error rate condition for adopting the cutoff value T is not limited and may be set appropriately. For example, it is possible to adopt the shortest cutoff length T that satisfies the condition that the error rate is ±0.02 (±2%) or less in 95% of the data section in which no artifacts exist, and set this as the maximum deviation amount d.
[0157] Methods for setting the number of samples of the deviation data, i.e., the maximum deviation d (cutoff length T), are summarized below. For example, as described above, there is a method for setting the number of samples based on at least one of the wavelength of the measurement light, the sampling data, and the integration range of the weighted integral for the result of the discrete Fourier transform. Of course, the maximum deviation d may be set based on all of these parameters, or may be set based on any two parameters.
[0158] Another method is to focus on the autocorrelation values of the Doppler beat signals shown in Figures 13 and 18, and set the number of samples of deviation amount data (maximum deviation amount d) based on the deviation amount (zero-cross deviation amount) at which the result of autocorrelation processing becomes smaller than 0 when autocorrelation processing is performed on the sampled data while increasing the deviation amount in order from 0.
[0159] In this way, it is possible to adopt a setting method in which the zero crossing shift amount is calculated from the autocorrelation value of the Doppler beat signal, and a value smaller than the number of samples of the zero crossing shift amount is set as the number of samples of the shift amount data (maximum shift amount d).
[0160] Furthermore, by focusing on the error rate from the reference value (convergence value) shown in FIGS. 17 and 20 , it is also possible to adopt a method of setting the number of samples of deviation amount data (maximum deviation amount d) based on the convergence value of the calculation result of the product sum of the autocorrelation value and the degeneracy coefficient corresponding to each deviation amount, which converges by increasing the number of samples of deviation amount data (maximum deviation amount d).
[0161] For example, it is also effective to set the number of samples of deviation data (maximum deviation d) to a value that includes the error (error rate) from the reference value (convergence value) within a predetermined range. The allowable error (error rate) range may be set arbitrarily.
[0162] It is also possible to set the number of samples of the deviation amount data (maximum deviation d) based on the number of samples of the frame data. For example, it is possible to appropriately adopt a method of setting the number of samples of the deviation amount data (maximum deviation d) to a value smaller than half (1 / 2) of the number of samples of the frame data, smaller than 1 / 3, smaller than 1 / 4, or smaller than 1 / 5 of the number of samples of the frame data. Of course, the number is not limited to these values, and any value, such as a value smaller than 1 / 10 of the number of samples of the frame data, may be adopted.
[0163] In order to reduce the amount of calculation, it is considered preferable to adopt a value that is at least less than half the number of samples of the frame data as the number of samples of the deviation amount data (maximum deviation amount d).
[0164] Alternatively, a method may be adopted in which a predetermined threshold value is set as the number of samples of the deviation amount data (maximum deviation amount d), and a value smaller than the threshold value is selected. For example, 50 is set as the threshold value. Then, a value smaller than 50 is selected as the number of samples of the deviation amount data (maximum deviation amount d). Such a method may be adopted.
[0165] 23 is a diagram showing another example of output of a blood flow signal obtained by short-term truncated autocorrelation processing using the calculator 33 according to the present technology. In the example of output of the blood flow signal shown in FIG. 23, the time required to acquire sampling data SD, which is a combination of the deviation amount data DD and the frame data FD, is set to be shorter than 30 msec, which is the output interval of the blood flow signal. In other words, when the sample length of the frame data FD is f and the sample length of the deviation amount data DD is d (= f), the sample length of the frame data FD is set so that the value of (f + d) / 32 kHz is shorter than 30 msec.
[0166] Specifically, the sample length of the frame data FD is set to 320, and the number of samples of the displacement data DD that corresponds to the maximum displacement d is set to a cutoff value T = 31. In this case, the time required to acquire the sampling data SD (351) that combines the displacement data DD (31) and the frame data FD (320) is approximately 11 msec, which is sufficiently shorter than the 30 msec output interval of the blood flow signal.
[0167] In the example shown in Figure 23, an autocorrelation calculation window is set for acquiring sampling data SD (351), and the sampling data SD (351) is acquired at intervals of 30 msec - approximately 11 msec = approximately 19 msec. Then, using 31 samples of the deviation amount data DD as the maximum deviation amount, short-term truncated autocorrelation processing is performed on the frame data FD (320), and a blood flow signal is output based on the processing results. The blood flow signal can be output at an output interval of 30 msec.
[0168] In this embodiment, a moving sum (which may be a simple average or a weighted average) of blood flow signals corresponding to multiple consecutively acquired sampling data SD is generated as the blood flow signal to be output. Specifically, a moving sum of four blood flow signals corresponding to four sampling data SD (351) acquired at intervals of 19 msec is output.
[0169] If the time required for calculating four blood flow signals is defined as the moving summation window, then the moving summation of four blood flow signals obtained in moving summation window 0 will be the blood flow signal of output 0. The moving summation of four blood flow signals obtained in moving summation window 1 will be the blood flow signal of output 1. The moving summation of four blood flow signals obtained in moving summation window 2 will be the blood flow signal of output 2. The moving summation of four blood flow signals obtained in moving summation window 3 will be the blood flow signal of output 3. These outputs are output at an output interval of 30 msec.
[0170] When the blood flow signal generation method shown in Figure 23 was applied to an actual subject, it was confirmed that blood flow including pulse wave components could be calculated with high accuracy. The maximum deviation d for performing autocorrelation processing is set to an extremely short value, cutoff value T = 31. This makes it possible to limit the overhead for calculating autocorrelation values for frame data FD of 320 samples to approximately 31 / 320, or about 10%.
[0171] 23, it is possible to suspend the coherent light radiator 5 and the photoelectric conversion unit 6, and also to suspend the calculation by the calculator 33, for a period of 30 msec - approximately 11 msec = approximately 19 msec. In other words, it is possible to realize intermittent driving with a suspend period of approximately 19 msec.
[0172] In this embodiment, the ratio of the driving periods during which light is emitted, light is received, and calculations are performed is approximately 11 msec / 30 msec, or approximately 0.37. As a result, it is possible to achieve low power consumption in the electrical circuit portion.
[0173] Furthermore, if we calculate the ratio of the driving period during which light is emitted, received, and calculated using the number of samples, we can calculate it as 351 samples of sampling data / (960 samples corresponding to 30 msec), which gives us a value of approximately 0.37.
[0174] This (960 samples corresponding to 30 msec) corresponds to one embodiment of the number of samples corresponding to the output interval obtained by multiplying the sampling rate (32 kHz) and the output interval (30 msec) at which blood flow information is output according to the present technology.
[0175] Intermittent drive is achieved by setting the number of samples in the sampling data SD to a value less than the number of samples corresponding to the output interval. For example, as shown in Fig. 23, by setting the number of samples in the sampling data SD to a value less than half the number of samples corresponding to the output interval, i.e., approximately one-third, intermittent drive can be fully achieved, and low power consumption can be achieved.
[0176] As shown in Figure 23, the Doppler beat signal corresponding to the rest period (approximately 19 msec) of intermittent driving is thinned out, resulting in a decrease in the S / N ratio of the Doppler beat signal contained in the electrical signal. However, the light emission duty of the coherent light emitter 5 is approximately 0.37, making it possible to increase the amount of coherent light. After detailed verification of this point, it was found that it was possible to emit coherent light at an amount of light approximately 2.5 times that of continuous driving while still complying with laser safety standards, and the S / N ratio was largely maintained. Of course, this value is not limiting.
[0177] Since the amount of coherent light can be increased, it is possible to compensate for the decrease in the S / N ratio caused by the thinning of the Doppler beat signal due to intermittent driving, and it is possible to sufficiently suppress the decrease in the accuracy of the generated blood flow signal. Furthermore, when a laser diode or the like is used as the coherent light emitter 5, it is possible to use a current value with higher light emission efficiency, which makes it possible to reduce the power consumption of the light source.
[0178] Furthermore, as shown in Fig. 23, the accuracy of the blood flow signal can be further improved by outputting the sum, simple average, or weighted average of the blood flow signals of multiple frames. Also, it becomes possible to output the blood flow signal with the same smoothness as the output method using the discrete Fourier transform method exemplified in Fig. 4 or the output method using the autocorrelation processing method exemplified in Fig. 6.
[0179] 24 to 29, a specific example of a configuration for performing the short-term truncated autocorrelation process shown in FIG. 23 will be described.
[0180] Fig. 24 is a schematic diagram showing an example of the configuration of the short-term truncated autocorrelation processing unit 34 shown in Fig. 7. As shown in Fig. 24, the short-term truncated autocorrelation processing unit 34 has an input data holding unit 38, an autocorrelation calculation unit 39, and an autocorrelation value holding memory 40.
[0181] FIG. 25 is a flowchart showing an example of processing by the input data holding unit 38.
[0182] 25 starts when one piece of data is input to the input data holding unit 38. One piece of data is one sample of the Doppler beat signal generated at a sampling rate of 32 kHz by the AC converter 14. First, the first piece of data of the deviation amount data DD for 31 samples is input.
[0183] The input data is input to the subtractor 41 in the input data holding unit 38. A DC bias value is set in the subtractor 41, and the DC bias value is subtracted from the input data, thereby executing the DC component removal process (step 101).
[0184] The value (indata-DCbias) from which the DC component is removed and output from the subtractor 41 is set as data x (step 102). Data x is registered in the ring buffer 42 of the input data holding unit 38 (step 103).
[0185] The ring buffer 42 is constructed to hold past samples. In this embodiment, the ring buffer 42 is configured to be able to hold a total of 32 samples of data, including the deviation amount data DD (31) and one sample of frame data FD. The ring buffer 42 is cleared every time short-term truncated autocorrelation processing is performed on the sampling data SD (351).
[0186] The number of data registered in the ring buffer 42 is set as data l (step 104). When the first data of the deviation amount data DD for 31 samples is input, data l=1.
[0187] It is determined whether the data 1 is smaller than the maximum deviation d (step 105). That is, it is determined whether the number of data registered in the ring buffer 42 is smaller than the maximum deviation d=31, which is the cutoff value. If step 105 is Yes, it is determined that holding of one data item has been completed, and the flow of inputting one data item shown in FIG. 25 is started for the next data item.
[0188] When the 31 sample data of the deviation amount data DD are registered in order, step 105 becomes No, and the process proceeds to step 106. In step 106, it is determined whether or not the data 1 is equal to the maximum deviation amount d.
[0189] If step 106 is Yes, it is determined that filling of the deviation amount data DD into the ring buffer 42 has been completed, and the flow of inputting one piece of data shown in Fig. 25 is started for the next data. The following data is the first data of the frame data FD for 320 samples.
[0190] When the first or subsequent data of the frame data FD is input, step 106 becomes No, and updating of one data is completed.
[0191] 24, data r1 to rd (d=31) are stored as past samples in the ring buffer 42. These data correspond to the data of the deviation amount data DD (data after subtraction of the DC bias value). When the first data of the 320 samples of frame data FD is input, the data obtained by subtracting the DC bias value from that data is set as data x and stored in the ring buffer 42 as data r0.
[0192] That is, when viewed from the perspective of data x, data r0 stored in the ring buffer 42 is data with a deviation of 0 (its own data), data r1 is data with a deviation of 1 (adjacent data), and data rd is data with a maximum deviation of d.
[0193] In the flow shown in FIG. 25, when one data update is completed, the process by the autocorrelation calculation unit 39 shown in FIG. 24 is executed.
[0194] 26 and 27 are flowcharts showing an example of processing by the autocorrelation calculation unit 39.
[0195] The autocorrelation calculation unit 39 has a one-sample autocorrelation calculator configured using a product-sum calculator 43. Finally, the autocorrelation value holding memory 40 has a memory configured to store the autocorrelation values sc[0] to sc[d] corresponding to each deviation amount from deviation amount 0 to maximum deviation amount d (d=31). Hereinafter, the memory that stores the autocorrelation values sc[0] to sc[d] corresponding to each deviation amount may be referred to as memory (sc[0]) or memory (sc[d]).
[0196] At the timing when the autocorrelation calculation for one frame is started, first, the initialization process of the autocorrelation value holding memory 40 shown in FIG. 26 is executed.
[0197] As shown in Fig. 26, first, 0 is set as data i (step 201). Then, sc[i] is set to 0 (step 202). That is, 0 is stored in memory (sc[i]). Since 0 is set as data i, 0 is first stored in memory (sc[0]).
[0198] Next, i+1 is set as data i. That is, the value of data i is incremented by 1 (step 203). It is determined whether the incremented data i is equal to or less than the maximum deviation amount 31, which is the cutoff value (step 204). If step 204 is Yes, the process returns to step 202, and 0 is stored in memory (sc[i]).
[0199] Since the value of data i has been incremented by 1, sc[1] is now set to 0, and 0 is stored in memory (sc[1]).
[0200] When the value of data i is incremented to 32, step 204 becomes No, completing the initialization process of the autocorrelation value holding memory 40. This initialization process stores 0 in each of memory (sc[0]) to memory (sc[d]).
[0201] When the initialization process of the autocorrelation value holding memory 40 shown in FIG. 26 is completed, the process shown in FIG. 27 is executed.
[0202] As shown in Fig. 27, data i is first set to 0 (step 301). Then, a product-sum operation is performed in accordance with the formula sc[i] = data x r[i] + sc[i] (step 302). This product-sum operation is performed by the product-sum unit 43 shown in Fig. 24.
[0203] When 0 is set as data i, a product-sum operation is performed according to the formula sc[0] = data x r[0] + sc[0]. Specifically, data x is input to the product-sum unit 43. Data r0 (the same value as data x) registered in the ring buffer 42 is also input to the product-sum unit 43. The product-sum unit 43 also reads out the value stored in memory (sc[0]) (here, a reset 0 is read out).
[0204] The product-sum calculator 43 multiplies the input data x and data r0, and adds the value stored in the memory (sc[0]) to the multiplied value. The result of this product-sum calculation is stored again in the memory (sc[0]) of the autocorrelation value holding memory 40. In this way, the autocorrelation values of the data with a deviation of 0 are added in order and stored in the memory (sc[0]).
[0205] Next, i+1 is set as data i. That is, the value of data i is incremented by 1 (step 303). It is determined whether the incremented data i is equal to or less than the maximum deviation amount 31, which is the cutoff value (step 304). If step 304 is Yes, the process returns to step 302, and a product-sum operation is performed.
[0206] Since the value of data i has been incremented by 1, a product-sum operation is now performed according to the formula sc[1] = data x r[1] + sc[1]. That is, data x and data r1 with a deviation of 1 are multiplied. Then, the sum of the autocorrelation values for deviation of 1 up to now is read from memory (sc[1]) and added to the sum of data x and data r1. The result of this product-sum operation is stored again in memory (sc[1]) of the autocorrelation value holding memory 40. In this way, the autocorrelation values for deviation of 1 for each data are added in order and stored in memory (sc[1]).
[0207] When the value of data i is incremented to 32, step 304 becomes No, and the autocorrelation calculation for one data item is completed. That is, the autocorrelation values for the first data item x in the frame data FD, from the shift amount 0 to the maximum shift amount d, are stored in each of memories (sc[0]) to (sc[d]).
[0208] When the autocorrelation calculation for one data item is completed, the next sample of the frame data FD is input to the input data holding unit 38, and the one data input process shown in Fig. 25 is executed. The oldest sample is discarded from the ring buffer 42, and the data r0 to data r(d-1) up to that point are set as data r1 to data rd. The input data x is then registered in the ring buffer 42 as data r0.
[0209] 27 is then executed by the autocorrelation calculation unit 39. As a result, the autocorrelation values for the second data x in the frame data FD, from the deviation amount 0 to the maximum deviation amount d, are added to the values stored in each of the memories (sc[0]) to (sc[d]) and held.
[0210] When the processing shown in Figures 25 and 27 is performed on all 320 samples of frame data FD, autocorrelation values corresponding to each deviation amount from deviation amount 0 to maximum deviation amount d (d = 31) of the 320 samples of frame data FD are stored in memory (sc[0]) to memory (sc[d]) of the autocorrelation value holding memory 40.
[0211] Fig. 28 is a schematic diagram showing an example of the configuration of the weighted integral (product-sum) processing unit 35 shown in Fig. 7. As shown in Fig. 28, the weighted integral (product-sum) processing unit 35 has a product-sum calculation unit 45 and an output FIFO 46.
[0212] 28, in this embodiment, n sets of degeneracy coefficients are stored in the degeneracy coefficient table 36 to calculate n blood flow signals (blood flow feature amounts, etc.). As shown in FIG. 28, one blood flow signal is generated from D[0][1] to D[0][d(=31)]. Another second blood flow signal is generated from D[1][1] to D[1][d(=31)]. Another n-th blood flow signal is generated from D[n-1][1] to D[n-1][d(=31)].
[0213] The product-sum calculation unit 45 reads out the autocorrelation values (sc[0] to sc[d(=31)]) corresponding to each displacement amount for one frame from the autocorrelation value holding memory 40. That is, the result of the autocorrelation process executed on the sampling data SD for a total of 351 samples of displacement amount data DD and frame data FD is read out.
[0214] The autocorrelation values (sc[0] to sc[d(=31)]) corresponding to the read-out amounts of deviation are input in order to the product-sum calculator 47 of the product-sum calculator 45. Then, a product-sum is calculated for each of the n sets of degeneracy coefficients. Specifically, a product-sum calculation is performed in which the results of multiplication of each component of a d+1-dimensional vector are added together.
[0215] Fig. 29 is a flowchart showing an example of processing by the product-sum calculation unit 45. When the autocorrelation value hold memory 40 stores the autocorrelation values (sc[0] to sc[d(=31)]) corresponding to each deviation amount from deviation amount 0 to maximum deviation amount d (d=31) of 320 samples of frame data FD, input of one frame of data is completed, and the processing shown in Fig. 29 starts.
[0216] As shown in Fig. 29, 0 is set as data j (step 401), 0 is set as data i, and 0 is set as data w (step 402).
[0217] A product-sum operation is performed according to the formula: data w=sc[i]·D[j][i]+w (step 403). This product-sum operation is performed by the product-sum unit 47 shown in FIG.
[0218] If data j, data i, and data w are all 0, the value of sc[0]·D[0][0]+0 is set as data w in step 403. That is, the result of multiplying the autocorrelation value sc[0] corresponding to the amount of deviation 0 by the first D[0][1] of the degeneracy coefficients (D[0][1] to D[0][d(=31)]) is set as data w.
[0219] Next, i+1 is set as data i. That is, the value of data i is incremented by 1 (step 404). It is determined whether the incremented data i is equal to or less than the maximum deviation amount 31, which is the cutoff value (step 405). If step 405 is Yes, the process returns to step 403, and a product-sum operation is performed.
[0220] Since the value of data i has been incremented by 1, a multiply-and-accumulate operation is now performed according to the formula sc[1] = sc[1] D[0][1] + data w. Note that the data w on the right side is the value calculated in the immediately preceding step 403, and is the result of the multiply-and-accumulate operation up to the previous time.
[0221] Therefore, here, data w is added to the result of integrating the autocorrelation value corresponding to the amount of deviation 1 and the second D[0][2] of the degeneracy coefficients (D[0][1] to D[0][d(=31)]), and the result is set as new data w. As a result, the integration results up to the second component are added together.
[0222] When the product-sum operation has been performed for all autocorrelation values sc
[31] up to the maximum deviation d=31, data i is set to 32 in step 404, and step 405 returns No. Then, data w is written to the output FIFO 46 as the result of the weighted integral (product-sum) process, out[0] (step 406).
[0223] Next, j+1 is set as data j. That is, the value of data j is incremented by one (step 407). It is determined whether the incremented data j is less than n, which is the number of sets of degeneracy coefficients (step 408). If step 408 is Yes, the process returns to step 302, and a product-sum operation is performed.
[0224] This allows the sum of products of the autocorrelation values (sc[0] to sc[d(=31)]) corresponding to each deviation amount and the second degeneracy coefficient (D[1][1] to D[1][d(=31)]), and the result of the weighted integration (sum of products) process, out[1], is written to the output FIFO 46.
[0225] When all the product-sum operations with the n sets of degeneration coefficients have been executed and the n weighted integral (product-sum) processing results out[0] to out[n-1] have been written to the output FIFO, data j is set to n in step 407 and step 408 becomes No. Then, the operations for one frame are completed.
[0226] 28, n sets of calculation results for each frame (frame data FD for 320 samples) are stored in order in the output FIFO 42. The calculation results for each frame are then read out and output in the order in which they were stored.
[0227] In this embodiment, the computer resources required to output a blood flow signal include a ring buffer 42 for holding a total of 32 samples of data, including the data DD (31) for the amount of deviation and one sample of frame data FD, for short-term truncated autocorrelation processing, and an autocorrelation value holding memory 40 for holding the results of the autocorrelation processing for 32 samples. Therefore, a total of 64 sample buffers are required for short-term truncated autocorrelation processing.
[0228] In this embodiment, a trigonometric ratio coefficient table is not required, and a register for holding a DC bias value for one sample is sufficient.
[0229] Regarding weighted integral (product-sum) processing, 32 × n degenerate coefficient tables are required to calculate n blood flow signals (blood flow feature quantities, etc.). Adding all of these together, 32 × n coefficient tables and a buffer for 65 samples are required. In other words, the short-term truncated autocorrelation processing according to this embodiment can significantly reduce the required computer resources compared to the discrete Fourier transform calculations according to Comparative Example 1 shown in FIG. 4 and the autocorrelation processing method according to Comparative Example 2 shown in FIG. 6.
[0230] Furthermore, in the calculation of the short-term truncated autocorrelation processing method of this embodiment, the number of samples of the deviation amount data (maximum deviation amount d) is limited to the truncation value T, so that the amount of calculation can be sufficiently reduced.
[0231] For example, it is possible to sufficiently reduce the amount of calculation for weighted integral (product-sum) processing compared to the calculation for the discrete Fourier transform method according to Comparative Example 1. Furthermore, it is possible to sufficiently reduce the amount of calculation for autocorrelation processing and the amount of calculation for weighted integral (product-sum) processing compared to the calculation for the autocorrelation processing method according to Comparative Example 2.
[0232] As described above, in the LDF-type blood flow meter 1 and the signal processing device 3 according to this embodiment, autocorrelation processing is performed on the sampling data SD generated based on the detection results of the coherent light CL irradiated onto the area to be measured of the living body 7, and a blood flow signal, which is blood flow information, is generated based on the result of the autocorrelation processing.
[0233] The sampling data SD consists of frame data FD and deviation amount data DD, the number of samples of which is a cutoff value T that is less than half the number of samples in the frame data FD. The number of samples in this deviation amount data DD is set to the maximum deviation amount, and autocorrelation values (sc[0] to sc[d(=T)]) corresponding to each deviation amount up to the maximum deviation amount are calculated, and a blood flow signal (blood flow information) is generated based on the calculated autocorrelation values (sc[0] to sc[d(=T)]) corresponding to each deviation amount. Because the number of samples in the deviation amount data DD is limited to the cutoff value T, which is less than half the number of samples in the frame data FD, it is possible to reduce the amount of calculation required to generate the blood flow signal (blood flow information).
[0234] In the calculator 26 of the autocorrelation processing method according to Comparative Example 2, the length of the autocorrelation function is calculated by the window width of the Fourier transform. In contrast, in the calculator 33 of the short-term truncated autocorrelation method according to the present technology, it is possible to truncate the autocorrelation calculation to a length that is very short compared to the window width by utilizing the characteristics of the input Doppler beat signal.
[0235] Furthermore, in the calculator 26 of the autocorrelation processing method according to Comparative Example 2, the discrete Fourier transform processing and the weighted integral (product-sum) processing are performed separately. In contrast, in the calculator 33 of the short-term truncated autocorrelation method according to the present technology, a degenerate coefficient is used, which is a pre-calculated product of a discrete Fourier transform matrix and a weighting coefficient. This makes it possible to significantly reduce the amount of calculation after the autocorrelation calculation is performed.
[0236] By using the degeneracy coefficients, it is possible to realize a situation in which small values whose positive and negative values alternately appear in the high-order region in the blood flow signal generation process, and the results of the product-sum operation, which is a weighted integration process, cancel each other out. This means that by using the degeneracy coefficients, it is possible to realize a situation in which useful information exists in the low-order region in the blood flow signal generation process.
[0237] The inventors have newly discovered this point and have come up with a new devise for a short-term truncated autocorrelation type calculator 33 according to the present technology, and a method for generating a blood flow signal using the calculator 33.
[0238] In the short-term truncated autocorrelation calculator 33, the autocorrelation values (sc[0] to sc[d(=T)]) corresponding to each deviation amount are made up of the truncated value T+1 (e.g., 32) pieces of data. Therefore, the degeneracy coefficients are also made up of the truncated value T+1 (e.g., 32) pieces of data. It is possible to generate a highly accurate blood flow signal using such a reduced number of pieces of data, which is extremely advantageous in reducing the amount of calculation and simplifying the logic.
[0239] Furthermore, as shown in Figures 24 and 28, the circuit for generating the blood flow signal can be realized with a simple circuit configuration, rather than a large and complex circuit configuration.
[0240] 23, it is possible to limit the number of samples of deviation amount data (maximum deviation amount d) to a small value, so that it is possible to reduce the drive period for light emission, light reception, and calculation relative to the output interval of the blood flow signal (blood flow information), and it is possible to realize intermittent drive with sufficient rest period. This makes it possible to reduce power consumption and improve resistance to external light.
[0241] Other Embodiments The present technology is not limited to the above-described embodiments, and various other embodiments can be realized.
[0242] In the calculation of the short-term truncated autocorrelation method according to the present technology, the number of samples of the deviation amount data (maximum deviation amount d) is limited to the truncation value T, and a degeneracy coefficient is used.
[0243] On the other hand, it is possible to reduce the amount of calculation required to generate blood flow information simply by setting the number of samples of the deviation amount data (maximum deviation amount d) to a value less than half the number of frame data FD. For example, even in a configuration in which degeneracy coefficients are not used in the autocorrelation processing calculator 26 shown in Figure 5, it is possible to achieve the effect of reducing the amount of calculation by setting the number of samples of the deviation amount data (maximum deviation amount d) to a value less than half the number of frame data FD.
[0244] Therefore, regardless of whether a degeneracy coefficient is used, the configuration and calculation according to the present technology also include any configuration and any calculation in which the sampling data SD is composed of frame data FD of a predetermined number of samples and deviation amount data DD for performing autocorrelation processing of a number of samples less than half the number of samples of the frame data FD. Of course, the calculation of the short-term truncated autocorrelation method according to the present technology using a degeneracy coefficient exhibits a greater effect of reducing the amount of calculation.
[0245] In the calculation of the short-term truncated autocorrelation method shown in Figures 22 and 23, a moving sum of four blood flow signals corresponding to four consecutively acquired sampling data SD was generated as the blood flow signal to be output. Of course, this is not limited to this, and a blood flow signal corresponding to one sampling data SD may be output as is, or a simple average or weighted average of blood flow signals corresponding to several sampling data SD may be generated as the blood flow signal.
[0246] FIG. 30 is a block diagram showing an example of the hardware configuration of a computer 60 that can be used as the signal processing device 3.
[0247] The computer 60 includes a CPU 61, a ROM 62, a RAM 63, an input / output interface 65, and a bus 64 interconnecting these components. The input / output interface 65 is connected to a display unit 66, an input unit 67, a storage unit 68, a communication unit 69, a drive unit 70, and other components. The display unit 66 is a display device using, for example, an LCD or EL display. The input unit 67 is a keyboard, a pointing device, a touch panel, or other operating device. If the input unit 67 includes a touch panel, the touch panel may be integrated with the display unit 66. The storage unit 68 is a non-volatile storage device such as a HDD, flash memory, or other solid-state memory. The drive unit 70 is a device capable of driving a removable storage medium 71 such as an optical storage medium or magnetic recording tape. The communication unit 69 is a modem, router, or other communication device connectable to a LAN, WAN, or the like for communicating with other devices. The communication unit 69 may communicate via either a wired or wireless connection. The communication unit 69 is often used separately from the computer 60. Information processing by the computer 60 having the above-described hardware configuration is realized by cooperation between software stored in the storage unit 68 or the ROM 62, etc. and the hardware resources of the computer 60. Specifically, the information processing method according to the present technology is realized by loading a program constituting the software stored in the ROM 62, etc., into the RAM 63 and executing it. The program is installed in the computer 60 via, for example, the recording medium 71. Alternatively, the program may be installed in the computer 60 via a global network, etc. Alternatively, any computer-readable, non-transitory storage medium may be used.
[0248] The information processing method (blood flow information generating method) and program according to the present technology may be executed by cooperation between multiple computers connected to each other via a network or the like, thereby constructing an information processing system or information processing device according to the present technology. That is, the information processing method and program according to the present technology can be executed not only in a computer system composed of a single computer, but also in a computer system in which multiple computers operate in conjunction with each other. In this disclosure, a "system" refers to a collection of multiple components (devices, modules (parts), etc.), regardless of whether all the components are contained in the same housing. Therefore, both multiple devices housed in separate housings and connected via a network and a single device in which multiple modules are housed in a single housing are systems.
[0249] The execution of the information processing method and program according to the present technology by a computer system includes both cases where, for example, acquisition of sampling data, execution of autocorrelation processing, generation of blood flow information, setting the number of samples (maximum deviation amount) of deviation amount data, execution of weighted integral (product-sum) processing, generation of degeneracy coefficients, etc. are performed by a single computer, and cases where each process is performed by a different computer. Furthermore, the execution of each process by a specific computer also includes having another computer execute part or all of the process and obtaining the results. In other words, the information processing method and program according to the present technology can also be applied to a cloud computing configuration in which a single function is shared and processed jointly by multiple devices via a network.
[0250] The configurations of the LDF-based blood flow meter, sensor head, signal processing device, and calculator, and the processing flows of the short-term truncated autocorrelation calculations, etc., described with reference to the drawings are merely one embodiment, and can be modified as desired without departing from the spirit of the present technology. In other words, any other configurations, algorithms, etc. for implementing the present technology may be adopted.
[0251] In this disclosure, terms such as "about," "approximately," "almost," and "roughly" may be used as appropriate to facilitate understanding of the description. However, there is no clear difference between using and not using terms such as "about," "approximately," "almost," and "approximately." In other words, in this disclosure, concepts that define shape, size, positional relationship, state, etc., such as "center," "middle," "uniform," and "equal," are concepts that include "substantially center," "substantially central," "substantially uniform," and "substantially equal." For example, states that fall within a predetermined range (e.g., a range of ±10%) based on "completely centered," "completely central," "completely uniform," and "completely equal" are also included. Therefore, even if terms such as "approximately," "almost," and "approximately" are not used, concepts expressed by adding "approximately," "almost," and "approximately" may be included. Conversely, states expressed by adding terms such as "approximately," "almost," and "approximately" do not necessarily exclude perfect states.
[0252] In the present disclosure, expressions using "than", such as "greater than A" and "smaller than A", are expressions that comprehensively include both concepts that include the case where it is equivalent to A and concepts that do not include the case where it is equivalent to A. For example, "greater than A" is not limited to cases that do not include equivalent to A, but also includes "A or greater". Furthermore, "smaller than A" is not limited to "less than A" but also includes "A or less". When implementing the present technology, specific settings and the like can be appropriately adopted from the concepts included in "greater than A" and "smaller than A" so that the effects described above can be achieved.
[0253] It is also possible to combine at least two of the features of the present technology described above. That is, the various features described in each embodiment may be arbitrarily combined without distinguishing between the embodiments. Furthermore, the various effects described above are merely examples and are not intended to be limiting, and other effects may also be achieved.
[0254] The present technology may also be configured as follows: (1) An information processing device including: an acquisition unit that acquires sampling data generated at a predetermined sampling rate based on a detection result of a light detection sensor that detects measurement light irradiated onto a measurement target part of a living body; and a generation unit that performs autocorrelation processing on the acquired sampling data and generates blood flow information based on the result of the autocorrelation processing, wherein the sampling data consists of frame data of a predetermined number of samples and deviation amount data for performing the autocorrelation processing of a number of samples less than half the number of samples of the frame data, and the generation unit calculates autocorrelation values corresponding to each deviation amount up to the maximum deviation amount for the frame data, with the number of samples of the deviation amount data being the maximum deviation amount, and generates the blood flow information based on the calculated autocorrelation values corresponding to each of the deviation amounts. (2) The information processing device according to (1), wherein the generation unit generates the blood flow information by calculating a product sum of an autocorrelation value corresponding to each of the deviation amounts and a degeneracy coefficient, wherein the degeneracy coefficient is a coefficient obtained by degenerating a discrete Fourier transform matrix for performing a discrete Fourier transform on the autocorrelation value corresponding to each of the deviation amounts and a weighting coefficient by which a product sum is calculated between the result of the discrete Fourier transform and the result of the discrete Fourier transform in order to weight and integrate the result of the discrete Fourier transform for each frequency. (3) The information processing device according to (2), wherein the number of samples of the deviation amount data is set based on at least one of the wavelength of the measurement light, the sampling rate, and an integration range of a weighted integral for the result of the discrete Fourier transform. (4) The information processing device according to (2) or (3), wherein the number of samples of the deviation amount data is set based on the number of samples of a zero-crossing deviation amount, which is a deviation amount that makes a result of the autocorrelation processing smaller than 0 when an autocorrelation processing is performed on the sampling data while increasing the deviation amount in order from 0. (5) The information processing device according to (4), in which the number of samples of the deviation amount data is smaller than the number of samples of the zero cross deviation amount.(6) The information processing device according to (2) or (3), wherein the number of samples of the deviation amount data is set based on a convergence value of a calculation result of a sum of products of an autocorrelation value corresponding to each deviation amount and the degeneracy coefficient, which converges by increasing the number of samples of the deviation amount data. (7) The information processing device according to (6), wherein the number of samples of the deviation amount data is set to a value such that an error from the convergence value is included in a predetermined range. (8) The information processing device according to any one of (1) to (3), wherein the number of samples of the deviation amount data is less than 1 / 5 of the number of samples of the frame data. (9) The information processing device according to any one of (1) to (3), wherein the number of samples of the deviation amount data is less than 1 / 10 of the number of samples of the frame data. (10) The information processing device according to any one of (1) to (3), wherein the number of samples of the deviation amount data is less than 50. (11) The information processing device according to any one of (1) to (10), wherein the number of samples of the sampling data is less than a number of samples corresponding to an output interval obtained by multiplying the sampling rate by an output interval at which the blood flow information is output. (12) (11) The information processing device according to any one of (1) to (12), wherein the number of samples of the sampling data is less than half of the number of samples corresponding to the output interval. (13) The information processing device according to any one of (1) to (12), wherein the generation unit generates, as blood flow information to be output, an addition, a simple average, or a weighted average of multiple pieces of the blood flow information corresponding to multiple pieces of the sampling data continuously acquired by the acquisition unit. (14) The information processing device according to any one of (1) to (13), wherein the blood flow information includes at least one of blood flow velocity, blood volume, and density of red blood cells contained in the blood flow.(15) An information processing method executed by a computer system, comprising: an acquisition step of acquiring sampling data generated at a predetermined sampling rate based on a detection result of a light detection sensor that detects measurement light irradiated onto a measurement target part of a living body; and a generation step of performing autocorrelation processing on the acquired sampling data and generating blood flow information based on the result of the autocorrelation processing, wherein the sampling data consists of frame data of a predetermined number of samples and deviation amount data for executing the autocorrelation processing of a number of samples less than half the number of samples of the frame data, and the generation step calculates autocorrelation values corresponding to each deviation amount up to the maximum deviation amount for the frame data, with the number of samples of the deviation amount data being the maximum deviation amount, and generates the blood flow information based on the calculated autocorrelation values corresponding to each of the deviation amounts. (16) A program for causing a computer system to execute an information processing method, the information processing method including: an acquisition step of acquiring sampling data generated at a predetermined sampling rate based on the detection result of a light detection sensor that detects measurement light irradiated onto a part of a living body to be measured; and a generation step of performing autocorrelation processing on the acquired sampling data and generating blood flow information based on the result of the autocorrelation processing, wherein the sampling data consists of frame data of a predetermined number of samples and deviation amount data for performing the autocorrelation processing of a number of samples less than half the number of samples of the frame data, and the generation step calculates autocorrelation values corresponding to each deviation amount up to the maximum deviation amount for the frame data, with the number of samples of the deviation amount data being the maximum deviation amount, and generates the blood flow information based on the calculated autocorrelation values corresponding to each of the deviation amounts.
[0255] CL...coherent light DD...shift amount data FD...frame data SD...sampling data 1...LDF type blood flow meter 2...sensor head 3...signal processing device 5...coherent light emitting section 6...photoelectric conversion section 7...living body 8...blood vessel 9...red blood cell 10...static tissue 60...computer
Claims
1. An acquisition unit that acquires sampling data generated at a predetermined sampling rate based on a detection result of a light detection sensor that detects measurement light irradiated to a part of a living body to be measured; and a generation unit that performs autocorrelation processing on the acquired sampling data and generates blood flow information based on a result of the autocorrelation processing. The sampling data includes frame data for a predetermined number of samples and deviation amount data for a number of samples less than half the number of samples of the frame data for performing the autocorrelation processing. The generation unit calculates an autocorrelation value corresponding to each deviation amount up to the maximum deviation amount with the number of samples of the deviation amount data as the maximum deviation amount for the frame data, and generates the blood flow information based on the autocorrelation values corresponding to the calculated deviation amounts. An information processing apparatus.
2. The information processing apparatus according to claim 1, wherein the generation unit generates the blood flow information by calculating a sum of products of the autocorrelation values corresponding to the respective deviation amounts and a degeneracy coefficient. The degeneracy coefficient is a coefficient obtained by degenerate a discrete Fourier transform matrix for performing a discrete Fourier transform on the autocorrelation values corresponding to the respective deviation amounts and a weighting coefficient for which a sum of products is calculated between the discrete Fourier transform matrix and the result of the discrete Fourier transform for weighting and integrating each frequency of the result of the discrete Fourier transform. An information processing apparatus.
3. The information processing apparatus according to claim 2, wherein the number of samples of the deviation amount data is set based on at least one of a wavelength of the measurement light, the sampling rate, and an integration range of weighted integration for the result of the discrete Fourier transform. An information processing apparatus.
4. The information processing apparatus according to claim 2, wherein the number of samples of the deviation amount data is set based on the number of samples of a zero-crossing deviation amount, which is a deviation amount at which the result of the autocorrelation processing becomes smaller than 0 when the autocorrelation processing is performed while sequentially increasing the deviation amount from 0 for the sampling data. An information processing apparatus.
5. The information processing apparatus according to claim 4, wherein the number of samples of the deviation amount data is smaller than the number of samples of the zero-crossing deviation amount. An information processing apparatus.
6. The information processing apparatus according to claim 2, wherein the number of samples of the deviation amount data is set based on a convergence value of a sum of products of autocorrelation values corresponding to the respective deviation amounts and the degeneracy coefficient, which converges by increasing the number of samples of the deviation amount data.
7. The information processing apparatus according to claim 6, wherein the number of samples of the deviation amount data is set to a value within a predetermined range of an error from the convergence value.
8. The information processing apparatus according to claim 1, wherein the number of samples of the deviation amount data is less than 1 / 5 of the number of samples of the frame data.
9. The information processing apparatus according to claim 1, wherein the number of samples of the deviation amount data is less than 1 / 10 of the number of samples of the frame data.
10. The information processing apparatus according to claim 1, wherein the number of samples of the deviation amount data is less than 50.
11. The information processing apparatus according to claim 1, wherein the number of samples of the sampling data is less than a sample number corresponding to an output interval obtained by integrating an output interval at which the blood flow information is output at the sampling rate.
12. The information processing apparatus according to claim 11, wherein the number of samples of the sampling data is less than half of the sample number corresponding to the output interval.
13. The information processing apparatus according to claim 1, wherein the generation unit generates, as blood flow information to be output, an addition, a simple average, or a weighted average of a plurality of pieces of the blood flow information corresponding to a plurality of times of the sampling data continuously acquired by the acquisition unit.
14. The information processing apparatus according to claim 1, wherein the blood flow information includes at least one of a blood flow velocity, a blood flow volume, and a density of red blood cells included in the blood flow.
15. An information processing method executed by a computer system, the method including: an acquisition step of acquiring sampling data generated at a predetermined sampling rate based on a detection result of a light detection sensor that detects measurement light irradiated on a site to be measured of a living body; and a generation step of performing autocorrelation processing on the acquired sampling data and generating blood flow information based on a result of the autocorrelation processing. The sampling data includes frame data for a predetermined number of samples and shift amount data for a number of samples less than half the number of samples of the frame data for performing the autocorrelation processing. The generation step calculates autocorrelation values corresponding to respective shift amounts up to the maximum shift amount, with the number of samples of the shift amount data as the maximum shift amount, for the frame data, and generates the blood flow information based on the calculated autocorrelation values corresponding to the respective shift amounts.
16. A program for causing a computer system to execute an information processing method, the information processing method including: an acquisition step of acquiring sampling data generated at a predetermined sampling rate based on a detection result of a light detection sensor that detects measurement light irradiated on a site to be measured of a living body; and a generation step of performing autocorrelation processing on the acquired sampling data and generating blood flow information based on a result of the autocorrelation processing. The sampling data includes frame data for a predetermined number of samples and shift amount data for a number of samples less than half the number of samples of the frame data for performing the autocorrelation processing. The generation step calculates autocorrelation values corresponding to respective shift amounts up to the maximum shift amount, with the number of samples of the shift amount data as the maximum shift amount, for the frame data, and generates the blood flow information based on the calculated autocorrelation values corresponding to the respective shift amounts.
Citation Information
Patent Citations
Skin diagnosing device, skin condition output method, program, and recording medium
JP2017225811A
Systems and methods for physiological signal enhancement and biometric extraction using non-invasive optical sensors
US20150196257A1
Apparatus for measuring microvascular blood flow
US6173197B1
Methods and systems for processing physiological signals
WO2014043255A1
Respiratory status estimation apparatus, portable equipment, wearable device, program, medium, respiratory status estimation method, and respiratory status estimator
WO2016104538A1