WO2022137555A1 - 脈拍検出装置および脈拍検出方法 - Google Patents

脈拍検出装置および脈拍検出方法 Download PDF

Info

Publication number
WO2022137555A1
WO2022137555A1 PCT/JP2020/048929 JP2020048929W WO2022137555A1 WO 2022137555 A1 WO2022137555 A1 WO 2022137555A1 JP 2020048929 W JP2020048929 W JP 2020048929W WO 2022137555 A1 WO2022137555 A1 WO 2022137555A1
Authority
WO
WIPO (PCT)
Prior art keywords
pulse
time
array
pixel
pixel array
Prior art date
Application number
PCT/JP2020/048929
Other languages
English (en)
French (fr)
Inventor
彰彦 菅原
Original Assignee
株式会社ソニー・インタラクティブエンタテインメント
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社ソニー・インタラクティブエンタテインメント filed Critical 株式会社ソニー・インタラクティブエンタテインメント
Priority to PCT/JP2020/048929 priority Critical patent/WO2022137555A1/ja
Publication of WO2022137555A1 publication Critical patent/WO2022137555A1/ja

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/02Detecting, measuring or recording pulse, heart rate, blood pressure or blood flow; Combined pulse/heart-rate/blood pressure determination; Evaluating a cardiovascular condition not otherwise provided for, e.g. using combinations of techniques provided for in this group with electrocardiography or electroauscultation; Heart catheters for measuring blood pressure

Definitions

  • the present invention relates to a pulse detection technique.
  • Some game consoles in the home are equipped with a camera, which captures the image of the user playing the game, detects the user's facial expression from the captured image of the user, and grasps the mental state of the user during game play to play the game. It can be reflected in the development of. Further, in order to detect the degree of tension of the user during game play, a sensor for detecting the pulse is attached to the user, and the measurement result of the pulse output by the sensor is input to the game machine and reflected in the game. ing.
  • Patent Document 1 describes a method of measuring vital signs from a temporal change in the density of a captured image of a subject.
  • the present invention has been made in view of these problems, and an object of the present invention is to provide a pulse detection technique capable of detecting a pulse from a captured image of a user with high accuracy.
  • the pulse detection device of an embodiment of the present invention divides the captured image into a plurality of blocks and a storage unit for storing a predetermined number of frames of the captured image in the region including the user's skin.
  • a pixel value acquisition unit that acquires the pixel value of each block
  • a time-series pixel array acquisition unit that acquires a time-series pixel array in which the pixel values of each block of a predetermined number of frames are arranged, and each element of the time-series pixel array.
  • the pulse component By calculating the average value of the DC component as a DC component and subtracting the DC component from a predetermined element of the time-series pixel array, the pulse component is acquired, and the pulse data array in which the pulse components are arranged for a predetermined period is acquired. It includes a data sequence acquisition unit and a pulse detection unit that detects a frequency obtained by obtaining an autocorrelation of the pulse data sequence as a pulse number.
  • Another aspect of the present invention is a pulse detection method.
  • a pixel value acquisition step of dividing an image captured by a predetermined number of frames in an area including a user's skin into a plurality of blocks and acquiring a pixel value of each block, and the pixel value of each block of a predetermined number of frames are combined.
  • the time-series pixel array acquisition step for acquiring the arranged time-series pixel array and the average value of each element of the time-series pixel array are calculated as DC components, and the DC component is subtracted from a predetermined element of the time-series pixel array.
  • the pulse data sequence acquisition step of acquiring the pulse component and acquiring the pulse data array in which the pulse components are arranged for a predetermined period, and the frequency obtained by obtaining the autocorrelation of the pulse data array are detected as the pulse count. includes a pulse detection step to be performed.
  • the pulse can be detected with high accuracy from the captured image of the user.
  • FIG. 4A shows an autocorrelation graph of the detected pulse wave
  • FIG. 4B is an enlarged view of 200 near the peak of the autocorrelation graph of FIG. 4A.
  • FIG. 6A is a diagram showing a detected pulse wave and its autocorrelation graph
  • FIG. 6B is a diagram showing a reference pulse wave and its autocorrelation graph.
  • FIG. 7 (a) is a diagram showing a detected pulse wave
  • FIG. 7 (b) is a diagram showing an amplitude reliability.
  • 9 (a) to 9 (d) are diagrams illustrating a plurality of areas set in the captured image.
  • 10 (a) and 10 (b) are diagrams showing the time variation of the pulse rate and the reliability detected in each area.
  • FIG. 1 is a block diagram of a pulse detection device 100 according to the first embodiment.
  • the pulse detection device 100 includes an imaging unit 10, a frame storage unit 20, a pixel value acquisition unit 30, a time-series pixel array acquisition unit 40, a pulse data array acquisition unit 50, a pulse detection unit 60, and an autocorrelation graph storage unit 70. ..
  • the image pickup unit 10 captures an image of a body portion where the skin is exposed, such as the user's face, and stores it in the frame storage unit 20. A predetermined number of captured images are stored in the frame storage unit 20.
  • capillaries on the skin of the face which is suitable for taking a pulse.
  • the palms and soles of the feet also have less melanin, making it easier to photograph capillaries.
  • the capillaries also pulsate.
  • the reflected light also changes due to the pulsation of the capillaries, so that the pulse can be detected from the time change of the pixel value of the photographed image.
  • the pixel value acquisition unit 30 divides the captured image stored in the frame storage unit 20 into a plurality of blocks and acquires the pixel value of each block.
  • the area suitable for pulse wave detection is the area of the face where the skin is exposed and there is little movement.
  • the face area of the captured image is divided into blocks such as the forehead, right cheek, left cheek, and nose, and the pixel value of each block is acquired.
  • the number of pixels in each block may be different.
  • the pixel value acquisition unit 30 acquires a green value as a pixel value when the color of the pixel of each block is represented by RGB.
  • the skin has a dermis under the epidermis, and if the epidermis is transparent and thin, visible light can penetrate into the dermis and photograph capillaries.
  • the transmission power of visible light depends on the wavelength, and the longer the wavelength, the deeper the skin penetrates.
  • Red light has the longest wavelength and penetrates deep into the skin, but the light penetrates too far and shoots extra things other than capillaries.
  • Blue light has the shortest wavelength and does not penetrate deep into the skin, making it unsuitable for imaging capillaries.
  • Green light penetrates to the dermis below the epidermis and is easily absorbed by red blood cells, making it suitable for photographing capillaries.
  • the pixel value acquisition unit 30 acquires spatially smoothed pixel values by adding a predetermined number of pixel values of each block. All the pixel values in the block may be added, or some pixel values in the block may be added. In the case of 8-bit pixels, the pulse wave signal detected from one pixel is small to the extent that there is no change in the least significant bit, so the pulse wave signal is amplified by adding the pixel values in the block. can do. Further, adding the pixel values in the block acts as a spatial low-pass filter (LPF) that spatially smoothes the pixel values in the block.
  • LPF spatial low-pass filter
  • the time-series pixel array acquisition unit 40 acquires a time-series pixel array in which the pixel values of each block acquired by the pixel value acquisition unit 30 are arranged by a predetermined number of frames. For example, when the frame rate of the moving image is 30 frames / second, a time-series pixel array in which 30 pixel values for 1 second, that is, 30 frames are arranged in chronological order is generated for each block.
  • the time-series pixel array acquisition unit 40 may acquire a time-series pixel array smoothed in time by applying a low-pass filter to the time-series pixel array.
  • the image sensor used for imaging generally has noise in the detected value. Applying a low-pass filter to a time-series pixel array acts as a temporal low-pass filter that removes noise in the time direction of the detection value of the sensor.
  • the pulse data array acquisition unit 50 calculates the average value of each element of the time-series pixel array as a direct current (DC) component, extracts the central element of the time-series pixel array as an alternating current (AC) component, and extracts the direct current component from the alternating current component.
  • the pulse component is obtained by subtracting.
  • Subtracting a direct current component from the alternating current component of the time-series pixel array has the effect of applying a high-pass filter (HPF) to the time-series pixel array.
  • HPF high-pass filter
  • the pulse data array acquisition unit 50 advances the acquisition of the pulse component for each frame, and acquires the pulse data array in which the pulse components for a predetermined period are arranged.
  • the predetermined period is the time of at least two cycles of a standard pulse (eg, 2.5 seconds).
  • the pulse data array acquisition unit 50 may acquire a time-smoothed pulse data array by applying a low-pass filter to the pulse data array.
  • the pulse wave signal obtained here may have an amplitude fluctuation in the time direction depending on the calculation method of the AC component. Applying a low-pass filter to the pulse data array acts as a temporal low-pass filter that eliminates the temporal fluctuation of the amplitude of the pulse wave.
  • the filter strength of the low-pass filter applied to the time-series pixel array is stronger than the filter strength of the low-pass filter applied to the pulse data array. This is because the temporal noise contained in the raw data detected by the image sensor is relatively large, and the distortion of the pulse wave signal waveform due to the fluctuation of the amplitude is not larger than that.
  • the pulse detection unit 60 obtains the autocorrelation of the pulse data array and stores the autocorrelation graph in the autocorrelation graph storage unit 70.
  • the pulse detection unit 60 detects the point where the autocorrelation graph of the pulse wave signal has the second maximum, acquires the time on the horizontal axis of the second maximum point as the period of the pulse wave signal, and obtains the reciprocal of the pulse wave. Obtained as the frequency of the signal.
  • the pulse detection unit 60 outputs the frequency of the pulse wave signal detected by autocorrelation as the pulse rate.
  • FIG. 2 is a diagram illustrating a signal data structure used in the pulse detection device 100.
  • the pixel value acquisition unit 30 acquires pixel values from each block of the forehead 14a, the right cheek 14b, and the left cheek 14c of the user's face image 12 captured by the image pickup unit 10, and adds the pixel values in the blocks. It is stored in the time-series pixel array R [], which is a raw data array. For example, by storing the pixel values for 30 frames per second in the array, the time-series pixel array R [] having 30 elements is acquired. As the frame of the captured image advances, each element of the time-series pixel array R [] is shifted to the right, the i-th element is copied to the (i + 1) th element, and the first element of the time-series pixel array R [] is copied. The pixel value obtained from the new frame is stored in.
  • the pixel value acquisition unit 30 applies a low-pass filter having a filter intensity of N_raw_data to the time-series pixel array R [].
  • the moving average of the following equation is repeated as many times as the number of times according to the filter intensity N_raw_data.
  • the moving average is repeated 10 times with the filter intensity N_raw_data as 10.
  • R'[i] 0.25 * R [i-1] +0.5 * R [i] +0.25 * R [i + 1]
  • LPR [] be the time-series pixel array obtained by applying a low-pass filter having a filter strength of N_raw_data to the time-series pixel array R [].
  • the pulse data array acquisition unit 50 calculates the average value of each element of the time-series pixel array LPR [] as a DC component, and subtracts the DC component from the central element of the time-series pixel array LPR [] to obtain the first pulse. Acquire component P [0].
  • each element of the pulse data array P [] is shifted to the right, the i-th element is copied to the (i + 1) element, and the first element of the pulse data array P [] is copied.
  • the element stores the pulse component of the new frame.
  • the pulse data array acquisition unit 50 applies a low-pass filter having a filter intensity of N_pulse_data to the pulse data array P [].
  • the moving average of the following equation is repeated as many times as the number of times according to the filter intensity N_pulse_data.
  • the moving average is repeated three times with the filter intensity N_pulse_data set to 2.
  • P'[i] 0.25 * P [i-1] +0.5 * P [i] +0.25 * P [i + 1]
  • LPP [] be the pulse data sequence obtained by applying a low-pass filter with a filter intensity of N_pulse_data to the pulse data sequence P [].
  • the pulse detection unit 60 obtains the autocorrelation AC [t] with respect to the time delay t of the pulse data array LPP [] by the following equation.
  • AC [t] SUM (LPP [n] * LPP [n + t])
  • the pulse detection method of the present embodiment uses autocorrelation, and when the pulse wave signals are overlapped at a position deviated by one cycle, the autocorrelation is maximized and the cycle of the pulse wave signal can be detected. Therefore, a momentary pulse can be obtained from the autocorrelation of the pulse wave signal for a short period of about two cycles.
  • the pulse detection method of the present embodiment is suitable for detecting fine fluctuations in the pulse.
  • FIG. 3 is a flowchart illustrating a pulse wave detection procedure by the pulse detection device 100.
  • the pixel value acquisition unit 30 acquires spatially leveled pixel values from a predetermined number of pixel values in each block of the captured image (S10).
  • the time-series pixel array acquisition unit 40 acquires a time-series pixel array in which the pixel values of blocks having a predetermined number of frames are arranged (S20).
  • the time-series pixel array acquisition unit 40 applies a low-pass filter to the time-series pixel array (S30).
  • the pulse data array acquisition unit 50 calculates the average value of each element of the time-series pixel array as a DC component, and acquires the pulse component by subtracting the DC component from the central element of the time-series pixel array (S40).
  • the central element was selected as the AC component, and the DC component was subtracted from the AC component to give it the function of a high-pass filter.
  • the reason for selecting the central element as the AC component is that there are about the same number of elements before and after the central element when applying a low-pass filter to the time series pixel array, and the same degree of weighting is applied before and after the time. This is because a low-pass filter is applied.
  • the pulse data array acquisition unit 50 acquires a pulse data array in which pulse components for a predetermined period are arranged (S50).
  • the pulse data array acquisition unit 50 applies a low-pass filter to the pulse data array (S60).
  • the pulse detection unit 60 obtains the period of the pulse wave signal from the autocorrelation of the pulse data array, and detects the frequency which is the reciprocal of the cycle as the pulse rate (S70).
  • the frequency is obtained from the maximum point of the autocorrelation graph of the detected pulse wave signal, but the pulse detection unit 60 applies a quadratic curve to the vicinity of the peak of the autocorrelation of the detected pulse wave to obtain a peak.
  • the detection accuracy of the pulse rate can be improved.
  • the frame rate of the captured image is 30 fps
  • the frequency is detected from the maximum point of the autocorrelation graph, the time resolution becomes 1/30 second, and the frequency detection accuracy is not high. Therefore, a quadratic curve is applied near the peak to interpolate the autocorrelation graph, and the frequency is detected at the maximum point of the fitted quadratic curve to improve the detection accuracy.
  • FIG. 4A shows an autocorrelation graph of the detected pulse wave
  • FIG. 4B is an enlarged view of 200 near the peak of the autocorrelation graph of FIG. 4A.
  • the position indicated by reference numeral 210b is the maximum point of the autocorrelation graph, but when a quadratic curve 230 that passes through the values 210a, 210b, 210c of the autocorrelation graph near the peak is applied, The position where the quadratic curve 230 is maximized is given by reference numeral 220.
  • the detection accuracy can be improved by obtaining the frequency of the detected pulse wave from the maximum point 220 of the quadratic curve 230.
  • FIG. 5 is a block diagram of the pulse detection device 100 according to the second embodiment.
  • the pulse detection device 100 according to the second embodiment further includes a reliability calculation unit 80 and a reference graph storage unit 90 in addition to each configuration of the pulse detection device 100 of FIG.
  • the description of the configuration and operation common to the pulse detection device 100 of FIG. 1 will be omitted.
  • the reference graph storage unit 90 stores an autocorrelation graph of a pulse data array in which noise-free pulse components for a predetermined period are arranged as a reference graph.
  • a noise-free reference pulse wave autocorrelation graph such as when the pulse rate is stable, when the pulse rate rises, and when the pulse rate falls is used as a reference graph. Register in the storage unit 90.
  • the fundamental frequency obtained from the autocorrelation graph of the detected pulse wave changes according to the pulse rate, but the fundamental frequency of the reference graph of the reference pulse wave is fixed to, for example, 60 bpm (beats per minute).
  • the fundamental frequencies of both the same In order to evaluate the similarity of waveforms by cross-correlation between the autocorrelation graph of the detected pulse wave and the reference graph of the reference pulse wave, it is necessary to make the fundamental frequencies of both the same.
  • frequency standardization is performed to expand and contract the data of the pulse data array of the detected pulse wave in the time axis direction so that the fundamental frequency of the autocorrelation graph of the detected pulse wave becomes 60 bpm, which is the same as the reference graph of the detected pulse wave.
  • FIG. 6 (a) shows the detected pulse wave and its autocorrelation graph
  • FIG. 6 (b) shows the reference pulse wave and its autocorrelation graph.
  • the value on the horizontal axis of the second maximum point of the autocorrelation fluff is the fundamental period, and its reciprocal is the fundamental frequency. Frequency standardization is performed to correct the fundamental frequency of the autocorrelation of the detected pulse wave so as to match the fundamental frequency of the autocorrelation of the reference pulse wave.
  • the reliability calculation unit 80 calculates the cross-correlation between the auto-correlation graph of the detected pulse wave stored in the auto-correlation graph storage unit 70 and the reference graph of the reference pulse wave stored in the reference graph storage unit 90, and cross-correlates. Obtain the waveform reliability based on the value.
  • the reliability calculation unit 80 obtains a cross-correlation value with the auto-correlation graph of the detected pulse wave for all the reference graphs of the reference pulse wave registered in the reference graph storage unit 90, and determines the maximum value as the final waveform reliability.
  • the waveform reliability is an index for determining the pulse wave-likeness of the waveform of the detected pulse wave.
  • the reliability calculation unit 80 obtains the amplitude reliability by comparing the amplitude of the waveform of the detected pulse wave signal with the predetermined upper limit value and lower limit value.
  • FIG. 7 (a) shows the detected pulse wave.
  • the horizontal axis is time
  • the vertical axis is the green pixel value
  • the time change of the pixel value is shown in a graph.
  • the amplitude of the detected pulse wave is given by the difference between the maximum value and the minimum value of the detected pulse wave.
  • FIG. 7 (b) shows the amplitude reliability.
  • the horizontal axis is the amplitude of the detected pulse wave
  • the vertical axis is the amplitude reliability.
  • the amplitude reliability is 1.0. If the amplitude of the detected pulse wave is in the range between the lower limit value th1 and the upper limit value th2, it is an amplitude like a pulse wave, and the amplitude reliability is 1.0.
  • the amplitude of the detected pulse wave is smaller than the lower limit value th1
  • the amplitude is smaller than the assumed pulse wave, so the amplitude reliability is gradually lowered from 1.0 as the amplitude becomes smaller than the lower limit value th1.
  • the amplitude of the detected pulse wave is smaller than the lower limit, it may be a minute signal or noise other than the pulse wave.
  • the amplitude of the detected pulse wave When the amplitude of the detected pulse wave is larger than the upper limit value th2, the amplitude is larger than the assumed pulse wave, so the amplitude reliability is gradually lowered from 1.0 as the amplitude increases from the upper limit value th2. If the amplitude of the detected pulse wave is larger than the upper limit, it may be noise, probably because the user's body is moving.
  • the reliability calculation unit 80 calculates and outputs the final pulse wave reliability of the detected pulse rate based on the waveform reliability and the amplitude reliability. For example, the product of waveform reliability and amplitude reliability is calculated as the final pulse wave reliability of the pulse rate.
  • FIG. 8 is a block diagram of the pulse detection device 100 according to the third embodiment.
  • the pulse detection device 100 according to the third embodiment further includes an area reliability storage unit 92 in addition to each configuration of the pulse detection device 100 of FIG. The description of the configuration and operation common to the pulse detection device 100 of FIG. 5 will be omitted.
  • the captured image stored in the frame storage unit 20 is divided into a plurality of blocks, and the pulse component is acquired from the pixel value of each block.
  • the captured image is divided into a plurality of areas, and the pulse component is acquired from the pixel value of each area.
  • a narrow area such as the forehead of the face, the right cheek, and the left cheek
  • the number of pixels in each area may be different.
  • the pixel value acquisition unit 30 acquires the pixel values of each area and adds the predetermined number of pixel values of each area to acquire the spatially smoothed pixel values.
  • the time-series pixel array acquisition unit 40 acquires a time-series pixel array in which the pixel values of each area acquired by the pixel value acquisition unit 30 are arranged by a predetermined number of frames, and applies a low-pass filter to the time-series pixel array. ..
  • the pulse data array acquisition unit 50 acquires a pulse component by subtracting the average value of each element of the time-series pixel array from the central element of the time-series pixel array in each area, and arranges the pulse components for a predetermined period. Generate a data array and apply a low-pass filter to the pulse data array.
  • the pulse detection unit 60 obtains the autocorrelation of the pulse data array of each area, stores the autocorrelation graph of each area in the autocorrelation graph storage unit 70, and the frequency of the pulse wave signal detected from the autocorrelation graph of each area. Is output as the pulse rate of each area.
  • the reliability calculation unit 80 calculates the cross-correlation between the auto-correlation graph of the detected pulse wave stored in the auto-correlation graph storage unit 70 and the reference graph of the reference pulse wave stored in the reference graph storage unit 90. , Obtain the waveform reliability based on the cross-correlation value. Further, the reliability calculation unit 80 obtains the amplitude reliability by comparing the amplitude of the waveform of the detected pulse wave signal in each area with a predetermined upper limit value and lower limit value. The reliability calculation unit 80 calculates the final pulse wave reliability of the detected pulse rate for each area based on the waveform reliability and the amplitude reliability, and the pulse reliability for each area is the area reliability storage unit. Store in 92.
  • the pulse detection unit 60 may select the pulse with the highest reliability stored in the area reliability storage unit 92 from the pulses detected from each area and output it as the final pulse.
  • the pulse detection unit 60 may obtain the final pulse by weighting and combining the pulse detected from each area with a pulse having a reliability of a predetermined threshold value or more based on the reliability.
  • FIGS. 9 (a) to 9 (d) are diagrams illustrating a plurality of areas set in the captured image.
  • the forehead 16a of the user's face image 12, the right cheek 16b, the left cheek 16c, and the wide area 16d including the eyes and nose are set as a plurality of areas.
  • the wide area 16d partially overlaps with the forehead 16a, the right cheek 16b, and the left cheek 16c.
  • FIG. 9D since the user puts his / her hand on the mouth, the right cheek 16b, the left cheek 16c, and a part of the wide area 16d are blocked by the hand, so that the right cheek 16b and the left cheek in FIG. 9A are shown. Compared to 16c and 16d over a wide area, the reliability of the detected pulse rate is lower.
  • pulse wave signals cannot be detected in some areas due to wearing obstacles such as hats, head-mounted displays, masks, makeup, dark melanin pigments on the skin, the effects of reflected light and shadows, and facial movements. Or, even if it can be detected, the signal may be weakened.
  • the degree of decrease in the reliability of the pulse rate differs depending on the size of the region where the pulse wave signal is weakened or cannot be detected due to an obstacle or the like.
  • FIGS. 10 (a) and 10 (b) are diagrams showing changes in the pulse rate and reliability detected in each area over time.
  • FIG. 10A is a graph of the time change of the pulse rate detected in each area of the forehead 16a, the right cheek 16b, the left cheek 16c, and the wide area 16d.
  • part of the area may not be visible due to facial movements, or part of the area may be blocked by obstacles such as hands, which weakens the pulse wave signal in that area and increases the detected pulse rate. It has become unstable.
  • FIG. 10B is a graph of the time change of the reliability of the detected pulse wave in each area of the forehead 16a, the right cheek 16b, the left cheek 16c, and the wide area 16d. It can be seen that the reliability of a specific area is extremely reduced depending on the time of day.
  • the pulse rate detected from the area is not adopted in the time zone when the reliability of the detected pulse wave in each area is lower than the predetermined threshold value. In the time zone when the reliability of the detected pulse wave in each area is equal to or higher than a predetermined threshold, the pulse rate detected from that area is adopted, and the weighted average is taken by the reliability to calculate the final pulse rate.
  • the final pulse rate is the pulse rate detected from the area with the highest reliability.
  • FIG. 11 is a block diagram of the pulse detection device 100 according to the fourth embodiment.
  • the pulse detection device 100 according to the fourth embodiment further includes a pixel exclusion unit 32 and a brightness change compensation unit 34 in addition to each configuration of the pulse detection device 100 of FIG.
  • the description of the configuration and operation common to the pulse detection device 100 of FIG. 1 will be omitted.
  • the pixel value acquisition unit 30 divides the captured image into a plurality of blocks, acquires the pixel value of each block, and supplies the captured image to the pixel exclusion unit 32.
  • the pixel exclusion unit 32 narrows down the target pixels of each block by excluding the pixels unsuitable for pulse wave detection from the pixel values of each block.
  • the pixel exclusion unit 32 narrows down the target pixels of each block by excluding the pixels whose green value is equal to or less than a predetermined threshold when the color of the pixels of each block is represented by RGB. Since the pulse wave signal is small in dark pixels, it becomes noise. Therefore, dark pixels whose green value of the pixel is equal to or less than a predetermined threshold value are excluded. In the case of 8-bit pixels having a maximum value of 255, for example, pixels having a green value of 20 or less are excluded.
  • the pixel exclusion unit 32 may narrow down the target pixels of each block by excluding the pixels whose red value is equal to or greater than a predetermined threshold value when the color of the pixels of each block is represented by RGB. No pulse wave signal is detected in the pixels whose brightness is saturated. Since the bright reflected light from the skin is saturated in red before that in green, whether or not the brightness is saturated can be determined by the value of red. Therefore, pixels whose red value is equal to or greater than a predetermined threshold value are excluded. In the case of 8-bit pixels having a maximum value of 255, for example, pixels having a red value of 254 or more are excluded. For example, even if the green value is 150, if the red value is 255, the pixel is excluded.
  • the pixel exclusion unit 32 may narrow down the target pixels of each block by further excluding pixels that are far from a predetermined threshold value from the skin color when the color of the pixels of each block is represented by hue.
  • hue is 0.0 on the red side and 1.0 on the purple side, for example, pixels having a hue in the range of 0.3 to 0.85 are excluded.
  • the pixel exclusion unit 32 supplies the target pixels of each block narrowed down in this way to the brightness change compensation unit 34.
  • the brightness change compensation unit 34 compensates for the change in brightness by dividing the average value of the green values when the color of the target pixel of each block is represented by RGB by the average value of the red or blue values.
  • the brightness change compensation unit 34 divides the average value of the green values when the color of the target pixel of each block is represented by RGB by the sum of the average value of the red values and the average value of the blue values to obtain brightness. You may compensate for the change in color.
  • the brightness change compensation unit 34 supplies the green value of the target pixel whose brightness change has been compensated in this way to the time-series pixel array acquisition unit 40.
  • the brightness change compensation unit 34 compensates for the brightness change, but the brightness change compensation unit 34 does not compensate for the brightness change.
  • the target pixels narrowed down by the pixel exclusion unit 32 by eliminating the pixels may be supplied to the time-series pixel array acquisition unit 40.
  • the brightness change compensating unit 34 compensates for the brightness change for the pixel value of each block supplied from the pixel value acquiring unit 30 without eliminating the pixels by the pixel eliminating unit 32, and the time-series pixels. It may be supplied to the sequence acquisition unit 40.
  • FIG. 12 is a diagram illustrating pixel exclusion by the pixel exclusion unit 32 of FIG.
  • the pixel exclusion unit 32 excludes pixels whose green value is equal to or less than a predetermined threshold value with respect to the pixels of the block 18a.
  • the pixel exclusion unit 32 excludes pixels whose red value is equal to or greater than a predetermined threshold value with respect to the pixels of the block 18a.
  • the pixel exclusion unit 32 converts the color space of the pixels of the block 18a from RGB to HSV composed of three components of hue, saturation, and lightness, and from a predetermined range assumed as the skin color in hue. Eliminate out-of-order pixels. As a result, the target pixels are narrowed down as shown by the block 18b. The pixels excluded here are shown by hatching.
  • fine fluctuations in the pulse can be accurately measured by obtaining the autocorrelation of the pulse wave signal.
  • This invention can be used for pulse detection technology.

Landscapes

  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Physiology (AREA)
  • Biophysics (AREA)
  • Pathology (AREA)
  • Engineering & Computer Science (AREA)
  • Cardiology (AREA)
  • Physics & Mathematics (AREA)
  • Medical Informatics (AREA)
  • Molecular Biology (AREA)
  • Surgery (AREA)
  • Animal Behavior & Ethology (AREA)
  • General Health & Medical Sciences (AREA)
  • Public Health (AREA)
  • Veterinary Medicine (AREA)
  • Measuring Pulse, Heart Rate, Blood Pressure Or Blood Flow (AREA)

Abstract

フレーム記憶部20は、ユーザの皮膚を含む領域の所定フレーム数の撮像画像を記憶する。画素値取得部30は、撮像画像を複数のブロックに分割し、各ブロックの画素値を取得する。時系列画素配列取得部40は、所定フレーム数の各ブロックの前記画素値を並べた時系列画素配列を取得する。脈拍データ配列取得部50は、時系列画素配列の各要素の平均値を直流成分として算出し、時系列画素配列の所定の要素から直流成分を引くことにより、脈拍成分を取得し、所定期間の脈拍成分を並べた脈拍データ配列を取得する。脈拍検出部60は、脈拍データ配列の自己相関を求めることにより得られる周波数を脈拍数として検出する。

Description

脈拍検出装置および脈拍検出方法
 この発明は、脈拍検出技術に関する。
 家庭内のゲーム機にはカメラが搭載されたものがあり、ゲームプレイをするユーザを撮像し、ユーザの撮像画像からユーザの表情を検出し、ゲームプレイ中のユーザの精神状態を把握してゲームの展開に反映させることができる。また、ゲームプレイ中のユーザの緊張度合いを検出するために、脈拍を検知するセンサをユーザに装着させ、センサが出力する脈拍の測定結果をゲーム機に入力させてゲームに反映させることも行われている。
 特許文献1には、被検体の撮像画像の濃度の時間的変化からバイタルサインを計測する方法が記載されている。
特開2005-218507号公報
 脈拍を検知するためにユーザにセンサを装着させるのはユーザに負担を強いることになるという問題があった。また、撮像画像を利用した従来の脈拍検出方法では、脈拍の細かな変動を検出することが難しく、また呼吸などの身体の動きが影響するため、脈拍を正確に測定することは難しいという問題があった。
 本発明はこうした課題に鑑みてなされたものであり、その目的は、ユーザの撮像画像から脈拍を高い精度で検知することのできる脈拍検出技術を提供することにある。
 上記課題を解決するために、本発明のある態様の脈拍検出装置は、ユーザの皮膚を含む領域の所定フレーム数の撮像画像を記憶する記憶部と、前記撮像画像を複数のブロックに分割し、各ブロックの画素値を取得する画素値取得部と、所定フレーム数の各ブロックの前記画素値を並べた時系列画素配列を取得する時系列画素配列取得部と、前記時系列画素配列の各要素の平均値を直流成分として算出し、前記時系列画素配列の所定の要素から前記直流成分を引くことにより、脈拍成分を取得し、所定期間の前記脈拍成分を並べた脈拍データ配列を取得する脈拍データ配列取得部と、前記脈拍データ配列の自己相関を求めることにより得られる周波数を脈拍数として検出する脈拍検出部とを含む。
 本発明の別の態様は、脈拍検出方法である。この方法は、ユーザの皮膚を含む領域の所定フレーム数の撮像画像を複数のブロックに分割し、各ブロックの画素値を取得する画素値取得ステップと、所定フレーム数の各ブロックの前記画素値を並べた時系列画素配列を取得する時系列画素配列取得ステップと、前記時系列画素配列の各要素の平均値を直流成分として算出し、前記時系列画素配列の所定の要素から前記直流成分を引くことにより、脈拍成分を取得し、所定期間の前記脈拍成分を並べた脈拍データ配列を取得する脈拍データ配列取得ステップと、前記脈拍データ配列の自己相関を求めることにより得られる周波数を脈拍数として検出する脈拍検出ステップとを含む。
 なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、データ構造、記録媒体などの間で変換したものもまた、本発明の態様として有効である。
 本発明によれば、ユーザの撮像画像から脈拍を高い精度で検知することができる。
第1の実施の形態に係る脈拍検出装置の構成図である。 図1の脈拍検出装置で用いられる信号のデータ構造を説明する図である。 図1の脈拍検出装置による脈波検出手順を説明するフローチャートである。 図4(a)は検出脈波の自己相関グラフを示し、図4(b)は図4(a)の自己相関グラフのピーク近傍200の拡大図である。 第2の実施の形態に係る脈拍検出装置の構成図である。 図6(a)は検出脈波とその自己相関グラフを示し、図6(b)は参照脈波とその自己相関グラフを示す図である。 図7(a)は検出脈波を示し、図7(b)は振幅信頼度を示す図である。 第3の実施の形態に係る脈拍検出装置の構成図である。 図9(a)~図9(d)は、撮像画像に設定される複数のエリアを説明する図である。 図10(a)、図10(b)は、各エリアで検出される脈拍数と信頼度の時間変化を示す図である。 第4の実施の形態に係る脈拍検出装置の構成図である。 図11の画素排除部による画素の排除を説明する図である。
(第1の実施の形態)
 図1は、第1の実施の形態に係る脈拍検出装置100の構成図である。脈拍検出装置100は、撮像部10、フレーム記憶部20、画素値取得部30、時系列画素配列取得部40、脈拍データ配列取得部50、脈拍検出部60、および自己相関グラフ記憶部70を含む。
 撮像部10は、ユーザの顔など皮膚が露出した身体部位を撮像し、フレーム記憶部20に記憶する。フレーム記憶部20には、所定フレーム数の撮像画像が保存される。
 顔の皮膚には毛細血管が多く、脈拍を撮影するのに適している。顔以外では、手のひらや足裏もメラニンが少ないため、毛細血管を撮影しやすい。脈を打つと、毛細血管も脈動する。皮膚の毛細血管を撮影すると、毛細血管の脈動によって反射光も変化するため、撮影画像の画素値の時間変化から脈拍を検出することができる。
 画素値取得部30は、フレーム記憶部20に保存された撮像画像を複数のブロックに分割し、各ブロックの画素値を取得する。脈波検出に適した領域は、顔の領域内で、皮膚が露出しており、動きが少ない部分である。たとえば、撮像画像の顔の領域を額、右頬、左頬、鼻などのブロックに分割し、各ブロックの画素値を取得する。各ブロックの画素数は異なってよい。
 画素値取得部30は、各ブロックの画素の色をRGBで表した場合の緑の値を画素値として取得することが好ましい。
 皮膚は表皮の下に真皮があり、表皮が透明で薄ければ、可視光が真皮にまで侵入し、毛細血管を撮影することができる。可視光の透過力は波長に依存し、波長が長いほど皮膚の奥まで透過する。赤の光は波長が最も長く、皮膚の奥まで透過するが、光が奥まで侵入しすぎて毛細血管以外の余計なものも撮影してしまう。青の光は波長が最も短く、皮膚の奥まで透過しないため、毛細血管の撮影には適していない。緑の光は、表皮の下の真皮まで透過し、赤血球に吸収され易いので毛細血管を撮影するのに適している。
 画素値取得部30は、各ブロックの所定数の画素値を加算することにより、空間的に平滑化された画素値を取得する。ブロック内のすべての画素値を加算してもよく、ブロック内の一部の画素値を加算してもよい。8ビット画素の場合、1画素から検出される脈波信号は最下位ビット(least significant bit)の変化があるかないか程度に小さいため、ブロック内の画素値を加算することにより脈波信号を増幅することができる。また、ブロック内の画素値を加算することは、ブロック内の画素値を空間的に平滑化する空間的ローパスフィルタ(LPF)の作用を奏する。
 時系列画素配列取得部40は、画素値取得部30により取得された各ブロックの画素値を所定フレーム数分だけ並べた時系列画素配列を取得する。たとえば、動画のフレームレートが30フレーム/秒である場合、各ブロックについて、1秒分、すなわち30フレーム分の画素値を時間順に30個並べた時系列画素配列を生成する。
 時系列画素配列取得部40は、時系列画素配列に対してローパスフィルタを施すことにより、時間的に平滑化された時系列画素配列を取得してもよい。撮像に用いられたイメージセンサには一般に検出値にノイズがある。時系列画素配列に対してローパスフィルタを施すことは、センサの検出値の時間方向のノイズを除去する時間的ローパスフィルタの作用を奏する。
 脈拍データ配列取得部50は、時系列画素配列の各要素の平均値を直流(DC)成分として算出し、時系列画素配列の中央の要素を交流(AC)成分として取り出し、交流成分から直流成分を引くことにより、脈拍成分を取得する。時系列画素配列の交流成分から直流成分を引くことは、時系列画素配列に対してハイパスフィルタ(HPF)を施す作用を奏する。
 脈拍データ配列取得部50は、フレーム毎に脈拍成分の取得を進め、所定期間の脈拍成分を並べた脈拍データ配列を取得する。所定期間は、標準的な脈拍の少なくとも2周期の時間(たとえば2.5秒)とする。2周期程度の短時間の脈波信号を用いることで瞬間的な脈拍を検出することが可能になる。長期間の脈波信号を用いると脈拍が平均化されてしまい、瞬間的な脈拍の変化を捉えることができなくなる。
 脈拍データ配列取得部50は、脈拍データ配列に対してローパスフィルタを施すことにより、時間的に平滑化された脈拍データ配列を取得してもよい。ここで得られた脈波信号には交流成分の計算方法により時間方向に振幅のぶれが生じ得る。脈拍データ配列に対してローパスフィルタを施すことは、脈波の振幅の時間方向のぶれを除去する時間的ローパスフィルタの作用を奏する。
 ここで、時系列画素配列に対して施すローパスフィルタのフィルタ強度は、脈拍データ配列に対して施すローパスフィルタのフィルタ強度よりも強いことが好ましい。これはイメージセンサにより検出される生データに含まれる時間的ノイズは比較的大きく、振幅のぶれによる脈波信号の波形の歪みはそれに比べて大きくないからである。
 脈拍検出部60は、脈拍データ配列の自己相関を求め、自己相関グラフを自己相関グラフ記憶部70に記憶する。脈拍検出部60は、脈波信号の自己相関グラフが2番目に極大となる点を検出し、2番目の極大点の横軸の時間を脈波信号の周期として取得し、その逆数を脈波信号の周波数として取得する。脈拍検出部60は、自己相関により検出される脈波信号の周波数を脈拍数として出力する。
 図2は、脈拍検出装置100で用いられる信号のデータ構造を説明する図である。
 画素値取得部30は、撮像部10により撮像されたユーザの顔画像12の額14a、右頬14b、左頬14cの各ブロックから画素値を取得し、ブロック内の画素値を加算して、生データ配列である時系列画素配列R[]に格納する。たとえば1秒30フレーム分の画素値を配列に格納することで要素数が30個である時系列画素配列R[]が取得される。撮像画像のフレームが進むにつれて、時系列画素配列R[]の各要素が右にシフトされ、第i要素が第(i+1)要素にコピーされるとともに、時系列画素配列R[]の第1要素に新しいフレームから得られた画素値が格納される。
 画素値取得部30は、時系列画素配列R[]にフィルタ強度N_raw_dataのローパスフィルタを施す。具体的には、一例として次式の移動平均をフィルタ強度N_raw_dataに応じた回数だけ繰り返す。たとえば、フィルタ強度N_raw_dataを10として10回移動平均を繰り返す。
 R’[i]=0.25*R[i-1]+0.5*R[i]+0.25*R[i+1]
 時系列画素配列R[]にフィルタ強度N_raw_dataのローパスフィルタを施して得られる時系列画素配列をLPR[]とする。
 脈拍データ配列取得部50は、時系列画素配列LPR[]の各要素の平均値を直流成分として算出し、時系列画素配列LPR[]の中央の要素から直流成分を引くことにより、最初の脈拍成分P[0]を取得する。
 次に、脈拍データ配列取得部50は、脈拍成分P[0]をP[1]にコピーし、次のフレームの脈拍成分P[0]を取得する。さらに、脈拍データ配列取得部50は、脈拍成分P[1]をP[2]にコピーし、P[0]をP[1]にコピーし、さらに次のフレームの脈拍成分P[0]を取得する。これを所定期間、たとえば2.5秒繰り返すことで、脈拍成分を並べた脈拍データ配列P[]が取得される。フレームレートが30フレーム/秒の場合、脈拍データ配列P[]の要素数は、30*2.5=75になる。
 このように撮像画像のフレームが進むにつれて、脈拍データ配列P[]の各要素が右にシフトされ、第i要素が第(i+1)要素にコピーされるとともに、脈拍データ配列P[]の第1要素に新しいフレームの脈拍成分が格納される。
 脈拍データ配列取得部50は、脈拍データ配列P[]にフィルタ強度N_pulse_dataのローパスフィルタを施す。具体的には、一例として次式の移動平均をフィルタ強度N_pulse_dataに応じた回数だけ繰り返す。たとえば、フィルタ強度N_pulse_dataを2として3回移動平均を繰り返す。
 P’[i]=0.25*P[i-1]+0.5*P[i]+0.25*P[i+1]
 脈拍データ配列P[]にフィルタ強度N_pulse_dataのローパスフィルタを施して得られる脈拍データ配列をLPP[]とする。
 脈拍検出部60は、脈拍データ配列LPP[]の時間遅れtに対する自己相関AC[t]を次式で求める。
 AC[t]=SUM(LPP[n]*LPP[n+t])
 脈拍検出部60は、自己相関AC[t]をt=0からt=N(NはLPP[]の要素数)まで求め、AC[T]が2番目の極大点となる時間Tを脈波周期として取得し、その逆数である周波数を脈拍数として出力する。
 一般に脈波信号に高速フーリエ変換を施し、脈波信号の周波数を検出する方法がある。高速フーリエ変換には少なくとも512個のデータが必要になり、30フレーム/秒の場合、10数秒の脈波信号を解析することになり、10数秒の脈拍の平均値が得られるが、瞬間的な脈拍は得られない。本実施の形態の脈拍検出方法は自己相関を用いており、脈波信号を1周期ずれているところで重ねると自己相関が最大になり、脈波信号の周期を検出することができる。したがって、2周期分程度の短期間の脈波信号の自己相関から瞬間的な脈拍を得ることができる。本実施の形態の脈拍検出方法は、脈拍の細かな変動を検出するのに適している。
 図3は、脈拍検出装置100による脈波検出手順を説明するフローチャートである。
 画素値取得部30は、撮像画像の各ブロックの所定数の画素値から空間的に平準化された画素値を取得する(S10)。
 時系列画素配列取得部40は、所定フレーム数のブロックの画素値を並べた時系列画素配列を取得する(S20)。時系列画素配列取得部40は、時系列画素配列に対してローパスフィルタを施す(S30)。
 脈拍データ配列取得部50は、時系列画素配列の各要素の平均値を直流成分として算出し、時系列画素配列の中央の要素から直流成分を引くことにより、脈拍成分を取得する(S40)。中央の要素を交流成分として選び、交流成分から直流成分を引くことでハイパスフィルタの作用をもたせた。中央の要素を交流成分として選ぶ理由は、時系列画素配列に対してローパスフィルタをかける際に中央の要素の前後に同程度の数の要素が存在し、時間の前後に同程度の重み付けをすることでローパスフィルタをかけるからである。
 脈拍データ配列取得部50は、所定期間の脈拍成分を並べた脈拍データ配列を取得する(S50)。脈拍データ配列取得部50は、脈拍データ配列に対してローパスフィルタを施す(S60)。
 脈拍検出部60は、脈拍データ配列の自己相関から脈波信号の周期を求め、その逆数である周波数を脈拍数として検出する(S70)。
 上記の説明では、検出された脈波信号の自己相関グラフの極大点から周波数を求めたが、脈拍検出部60は、検出脈波の自己相関のピーク近傍に2次曲線を当てはめて得られるピークに対応する周波数を脈拍数として検出することで、脈拍数の検出精度を向上させることができる。撮像画像のフレームレートが30fpsの場合、自己相関グラフの極大点から周波数を検出すると、時間解像度が1/30秒となり、周波数の検出精度が高くない。そこで、ピーク近傍に2次曲線を当てはめて自己相関グラフを補間し、当てはめた2次曲線の極大点において周波数を検出することで検出精度を高める。
 図4(a)は検出脈波の自己相関グラフを示し、図4(b)は図4(a)の自己相関グラフのピーク近傍200の拡大図である。1/30秒の時間解像度では、符号210bで示す位置が自己相関グラフの極大点であるが、ピーク近傍の自己相関グラフの値210a、210b、210cを通るような2次曲線230を当てはめると、2次曲線230が極大となる位置は符号220で与えられる。2次曲線230の極大点220から検出脈波の周波数を求めることで、検出精度を高めることができる。
(第2の実施の形態)
 図5は、第2の実施の形態に係る脈拍検出装置100の構成図である。第2の実施の形態に係る脈拍検出装置100は、図1の脈拍検出装置100の各構成に加えて、さらに信頼度計算部80および参照グラフ記憶部90を含む。図1の脈拍検出装置100と共通する構成および動作については説明を省略する。
 参照グラフ記憶部90は、所定期間のノイズフリーの脈拍成分を並べた脈拍データ配列の自己相関グラフを参照グラフとして記憶する。頻度の高い脈波を参照脈波としてモデル化するために、たとえば、脈拍数安定時、脈拍数上昇時、脈拍数下降時などのノイズフリーの参照脈波の自己相関グラフを参照グラフとして参照グラフ記憶部90に登録する。
 実際の検出脈波の自己相関グラフを参照脈波の参照グラフと比較するために、基本周波数を揃える必要がある。検出脈波の自己相関グラフから得られる基本周波数は脈拍数に応じて変化するが、参照脈波の参照グラフの基本周波数はたとえば60bpm(beats per minute)に固定される。検出脈波の自己相関グラフと参照脈波の参照グラフのクロス相関によって波形の類似性を評価するために、両者の基本周波数を同じにする必要がある。そこで、検出脈波の自己相関グラフの基本周波数を参照脈波の参照グラフと同じ60bpmになるように検出脈波の脈拍データ配列のデータを時間軸方向に伸縮する「周波数標準化」を行う。
 図6(a)は検出脈波とその自己相関グラフを示し、図6(b)は参照脈波とその自己相関グラフを示す。自己相関フラフの2番目の極大点の横軸の値が基本周期であり、その逆数が基本周波数である。検出脈波の自己相関の基本周波数を参照脈波の自己相関の基本周波数に合わせるように補正する周波数標準化を行う。
 信頼度計算部80は、自己相関グラフ記憶部70に記憶された検出脈波の自己相関グラフと、参照グラフ記憶部90に記憶された参照脈波の参照グラフのクロス相関を計算し、クロス相関値にもとづいて波形信頼度を求める。クロス相関CCは、次式のように検出脈波の自己相関グラフACと参照脈波の参照グラフREFの各要素間の積の和で与えられる。
 CC=SUM(AC[n]*REF[n])
 クロス相関値が高いほど、検出脈波の自己相関グラフと参照脈波の参照グラフの波形の類似度が高い。信頼度計算部80は、参照グラフ記憶部90に登録されたすべての参照脈波の参照グラフについて検出脈波の自己相関グラフとのクロス相関値を求め、その最大値を最終的な波形信頼度とする。波形信頼度は、検出脈波の波形の脈波らしさを判定する指標である。
 また、信頼度計算部80は、検出脈波信号の波形の振幅を所定の上限値および下限値と比較することにより、振幅信頼度を求める。
 図7(a)は検出脈波を示す。横軸は時間であり、縦軸は緑の画素値であり、画素値の時間変化がグラフで示されている。検出脈波の振幅は、検出脈波の最大値と最小値の差で与えられる。
 図7(b)は振幅信頼度を示す。横軸は検出脈波の振幅、縦軸は振幅信頼度である。検出脈波の振幅が下限値th1以上、上限値th2以下である場合、振幅信頼度は1.0である。検出脈波の振幅が下限値th1と上限値th2の間の範囲にあれば、脈波らしい振幅であり、振幅信頼度を1.0とする。
 検出脈波の振幅が下限値th1より小さい場合、想定脈波より振幅が小さいので、振幅が下限値th1から小さくなるにつれて振幅信頼度を1.0から徐々に下げる。検出脈波の振幅が下限値より小さい場合、脈波以外の微小信号またはノイズである可能性がある。
 検出脈波の振幅が上限値th2より大きい場合、想定脈波より振幅が大きいので、振幅が上限値th2から大きくなるにつれて振幅信頼度を1.0から徐々に下げる。検出脈波の振幅が上限値より大きい場合、ユーザの身体が動いているためか、ノイズである可能性がある。
 信頼度計算部80は、検出された脈拍数の最終的な脈波信頼度を波形信頼度と振幅信頼度にもとづいて算出して出力する。たとえば、波形信頼度と振幅信頼度の積を脈拍数の最終的な脈波信頼度として算出する。
(第3の実施の形態)
 図8は、第3の実施の形態に係る脈拍検出装置100の構成図である。第3の実施の形態に係る脈拍検出装置100は、図5の脈拍検出装置100の各構成に加えて、さらにエリア信頼度記憶部92を含む。図5の脈拍検出装置100と共通する構成および動作については説明を省略する。
 第1および2の実施の形態に係る脈拍検出装置100では、フレーム記憶部20に保存された撮像画像を複数のブロックに分割し、各ブロックの画素値から脈拍成分を取得したが、第3の実施の形態に係る脈拍検出装置100では、撮像画像を複数のエリアに分割し、各エリアの画素値から脈拍成分を取得する。たとえば、顔の額、右頬、左頬などの狭いエリアの他、目や鼻を含む広域のエリアなどがあり、重複を許して複数のエリアを指定することができる。各エリアの画素数は異なってよい。
 画素値取得部30は、各エリアの画素値を取得し、各エリアの所定数の画素値を加算することにより、空間的に平滑化された画素値を取得する。
 時系列画素配列取得部40は、画素値取得部30により取得された各エリアの画素値を所定フレーム数分だけ並べた時系列画素配列を取得し、時系列画素配列に対してローパスフィルタを施す。
 脈拍データ配列取得部50は、各エリアの時系列画素配列の中央の要素から時系列画素配列の各要素の平均値を引くことにより、脈拍成分を取得し、所定期間の脈拍成分を並べた脈拍データ配列を生成し、脈拍データ配列に対してローパスフィルタを施す。
 脈拍検出部60は、各エリアの脈拍データ配列の自己相関を求め、各エリアの自己相関グラフを自己相関グラフ記憶部70に記憶し、各エリアの自己相関グラフから検出される脈波信号の周波数を各エリアの脈拍数として出力する。
 信頼度計算部80は、自己相関グラフ記憶部70に記憶された各エリアの検出脈波の自己相関グラフと、参照グラフ記憶部90に記憶された参照脈波の参照グラフのクロス相関を計算し、クロス相関値にもとづいて波形信頼度を求める。また、信頼度計算部80は、各エリアの検出脈波信号の波形の振幅を所定の上限値および下限値と比較することにより、振幅信頼度を求める。信頼度計算部80は、各エリアについて、検出された脈拍数の最終的な脈波信頼度を波形信頼度と振幅信頼度にもとづいて算出し、エリア毎の脈拍信頼度をエリア信頼度記憶部92に記憶する。
 脈拍検出部60は、各エリアから検出された脈拍の内、エリア信頼度記憶部92に記憶された信頼度が最も高い脈拍を選択して最終的な脈拍として出力してもよい。脈拍検出部60は、各エリアから検出された脈拍の内、信頼度が所定の閾値以上の脈拍を信頼度にもとづいて重み付けして組み合わせることにより、最終的な脈拍を求めてもよい。
 図9(a)~図9(d)は、撮像画像に設定される複数のエリアを説明する図である。一例としてユーザの顔画像12の額16a、右頬16b、左頬16c、目や鼻を含む広域16dが複数のエリアとして設定される。ここで、広域16dは、額16a、右頬16b、左頬16cと一部重複する。
 図9(a)では、ユーザの顔の全体が露出しているため、4つのエリア16a~16dにおいて高い信頼度で脈拍数が検出される。
 図9(b)では、髪の毛によって額が覆われているため、額16aから検出される脈拍数は信頼度が低い。また、広域16dの額部分が髪の毛で遮られるため、額部分の画素値からは脈拍成分を検出するのが難しくなり、図9(a)の広域16dに比べた場合、検出される脈拍数の信頼度は低下する。
 図9(c)では、ユーザが眼鏡をかけているため、右頬16b、左頬16cの一部は眼鏡で遮られるため、図9(a)の右頬16b、左頬16cに比べた場合、検出される脈拍数の信頼度は低下する。また、広域16dの内、目の周辺の画素からの脈拍成分の検出は難しくなり、図9(a)の広域16dに比べた場合、検出される脈拍数の信頼度は低下する。
 図9(d)では、ユーザが口に手を当てているため、右頬16b、左頬16c、広域16dの一部は手で遮られるため、図9(a)の右頬16b、左頬16c、広域16dに比べた場合、検出される脈拍数の信頼度は低下する。
 これ以外にも、帽子、ヘッドマウントディスプレイ、マスクなどの遮断物の着用や、化粧や肌の濃いメラニン色素、反射光や影の影響、顔の動きなどにより、エリアによっては脈波信号が検出できないか、検出できても信号が弱くなることがある。
 遮断物などにより脈波信号が弱くなるか検出されなくなる領域の大きさによって、脈拍数の信頼度の低下の程度は異なる。各エリアで検出される脈拍数と信頼度を各時刻で比較し、各時刻において信頼度の高いエリアの脈拍数を採用することで、各時刻の脈拍の検出精度を高く維持することができる。
 図10(a)、図10(b)は、各エリアで検出される脈拍数と信頼度の時間変化を示す図である。
 図10(a)は、額16a、右頬16b、左頬16c、広域16dの各エリアで検出された脈拍数の時間変化のグラフである。時間帯によって、顔の動きなどでエリアの一部が見えなくなったり、手などの遮断物によりエリアの一部が遮られることで、そのエリアの脈波信号が弱くなり、検出される脈拍数が不安定になっている。
 図10(b)は、額16a、右頬16b、左頬16c、広域16dの各エリアの検出脈波の信頼度の時間変化のグラフである。時間帯によって特定のエリアの信頼度が極端に低下していることがわかる。各エリアの検出脈波の信頼度が所定の閾値を下回る時間帯ではそのエリアから検出された脈拍数を採用しない。各エリアの検出脈波の信頼度が所定の閾値以上である時間帯では、そのエリアから検出された脈拍数を採用し、信頼度で重み付け平均を取って最終的な脈拍数を算出するか、信頼度が最大であるエリアから検出された脈拍数を最終的な脈拍数とする。
 (第4の実施の形態)
 図11は、第4の実施の形態に係る脈拍検出装置100の構成図である。第4の実施の形態に係る脈拍検出装置100は、図1の脈拍検出装置100の各構成に加えて、さらに画素排除部32および明るさ変化補償部34を含む。図1の脈拍検出装置100と共通する構成および動作については説明を省略する。
 画素値取得部30は、撮像画像を複数のブロックに分割し、各ブロックの画素値を取得し、画素排除部32に供給する。
 画素排除部32は、各ブロックの画素値の中から脈波検出に適さない画素を排除することにより、各ブロックの対象画素を絞り込む。
 具体的には、画素排除部32は、各ブロックの画素の色をRGBで表した場合の緑の値が所定の閾値以下の画素を除外することにより、各ブロックの対象画素を絞り込む。暗い画素には脈波信号が小さいため、ノイズになる。そこで、画素の緑の値が所定の閾値以下の暗い画素を除外する。最大値が255となる8ビット画素の場合、例えば緑の値が20以下の画素を除外する。
 画素排除部32は、各ブロックの画素の色をRGBで表した場合の赤の値が所定の閾値以上の画素を除外することにより、各ブロックの対象画素を絞り込んでもよい。明るさが飽和した画素には脈波信号が検出されない。皮膚からの明るい反射光は赤の方が緑よりも先に飽和するため、明るさが飽和しているかどうかは、赤の値によって判定することができる。そこで、画素の赤の値が所定の閾値以上の明る過ぎる画素を除外する。最大値が255となる8ビット画素の場合、例えば赤の値が254以上の画素を除外する。例えば緑の値が150であっても、赤の値が255であれば、その画素は除外することに留意する。
 明るさが飽和した赤の画素は、後述の明るさ変化補償部34による明るさ変化補償に用いるため、対象画素から除外しておくことが好ましい。
 画素排除部32は、各ブロックの画素の色を色相で表した場合の皮膚の色から所定の閾値より離れた画素をさらに除外することにより、各ブロックの対象画素を絞り込んでもよい。色相において、赤側が0.0で紫側が1.0とする場合、例えば色相が0.3から0.85の範囲にある画素を除外する。
 画素排除部32は、このようにして絞り込まれた各ブロックの対象画素を明るさ変化補償部34に供給する。
 顔の動きによる陰影変化や顔に対する照明の変化によって明るさが変化するため、脈波検出が困難になる。そこで、明るさの変化を補償することが必要になる。同じ皮膚上では、緑の変化と、赤や青の変化には正の相関がある。そこで、脈波信号が強い緑画素の値を、脈波信号の弱い赤画素または青画素の値を用いて補償することで明るさを一定にする。
 明るさ変化補償部34は、各ブロックの対象画素の色をRGBで表した場合の緑の値の平均値を赤または青の値の平均値で割ることにより、明るさの変化を補償する。
 明るさ変化補償部34は、各ブロックの対象画素の色をRGBで表した場合の緑の値の平均値を赤の値の平均値と青の値の平均値の和で割ることにより、明るさの変化を補償してもよい。
 明るさ変化補償部34は、このように明るさ変化の補償がなされた対象画素の緑の値を時系列画素配列取得部40に供給する。
 上記の説明では、画素排除部32による画素の排除の後、明るさ変化補償部34による明るさ変化の補償を行ったが、明るさ変化補償部34による明るさ変化の補償を行わずに、画素排除部32が画素の排除により絞り込んだ対象画素を時系列画素配列取得部40に供給してもよい。また、画素排除部32による画素の排除を行わずに、画素値取得部30から供給された各ブロックの画素値に対して明るさ変化補償部34が明るさ変化の補償を行って時系列画素配列取得部40に供給してもよい。
 図12は、図11の画素排除部32による画素の排除を説明する図である。画素排除部32はブロック18aの画素に対して緑の値が所定の閾値以下の画素を排除する。次に、画素排除部32はブロック18aの画素に対して赤の値が所定の閾値以上の画素を排除する。最後に、画素排除部32はブロック18aの画素の色空間をRGBから、色相、彩度、明度の3つの成分からなるHSVなどに変換し、色相において皮膚の色として想定される所定の範囲から外れた画素を排除する。これにより、ブロック18bで示されるように対象画素が絞り込まれる。ここで排除された画素はハッチングにより示されている。
 以上述べたように、本実施の形態の脈拍検出装置100によれば、脈波信号の自己相関を求めることにより、脈拍の細かな変動を正確に測定することができる。
 以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
 この発明は、脈拍検出技術に利用できる。
 10 撮像部、 20 フレーム記憶部、 30 画素値取得部、 32 画素排除部、 34 明るさ変化補償部、 40 時系列画素配列取得部、 50 脈拍データ配列取得部、 60 脈拍検出部、 70 自己相関グラフ記憶部、 80 信頼度計算部、 90 参照グラフ記憶部、 92 エリア信頼度記憶部、 100 脈拍検出装置。

Claims (12)

  1.  ユーザの皮膚を含む領域の所定フレーム数の撮像画像を記憶する記憶部と、
     前記撮像画像を複数のブロックに分割し、各ブロックの画素値を取得する画素値取得部と、
     所定フレーム数の各ブロックの前記画素値を並べた時系列画素配列を取得する時系列画素配列取得部と、
     前記時系列画素配列の各要素の平均値を直流成分として算出し、前記時系列画素配列の所定の要素から前記直流成分を引くことにより、脈拍成分を取得し、所定期間の前記脈拍成分を並べた脈拍データ配列を取得する脈拍データ配列取得部と、
     前記脈拍データ配列の自己相関を求めることにより得られる周波数を脈拍数として検出する脈拍検出部とを含むことを特徴とする脈拍検出装置。
  2.  前記画素値取得部は、各ブロックの画素の色をRGBで表した場合の緑の値を画素値として取得することを特徴とする請求項1に記載の脈拍検出装置。
  3.  前記所定期間は、標準的な脈拍の少なくとも2周期の時間であることを特徴とする請求項1または2に記載の脈拍検出装置。
  4.  前記画素値取得部は、各ブロックの所定数の画素値を加算することにより、空間的に平滑化された画素値を取得することを特徴とする請求項1から3のいずれかに記載の脈拍検出装置。
  5.  前記時系列画素配列取得部は、前記時系列画素配列に対してローパスフィルタを施すことにより、時間的に平滑化された時系列画素配列を取得することを特徴とする請求項1から4のいずれかに記載の脈拍検出装置。
  6.  前記脈拍データ配列取得部は、前記脈拍データ配列に対してローパスフィルタを施すことにより、時間的に平滑化された脈拍データ配列を取得することを特徴とする請求項5に記載の脈拍検出装置。
  7.  前記時系列画素配列に対するローパスフィルタのフィルタ強度は、前記脈拍データ配列に対するローパスフィルタのフィルタ強度よりも強いことを特徴とする請求項6に記載の脈拍検出装置。
  8.  所定期間のノイズフリーの脈拍成分を並べた脈拍数がPとなる脈拍データ配列の自己相関グラフを参照グラフとして登録し、前記脈拍データ配列取得部により取得された脈拍データ配列の自己相関グラフを脈拍数がPになるように補正してから前記参照グラフとのクロス相関を計算し、クロス相関値にもとづいて波形信頼度を求める信頼度計算部をさらに含むことを特徴とする請求項1から7のいずれかに記載の脈拍検出装置。
  9.  前記信頼度計算部は、前記脈拍データ配列取得部により取得された脈拍データ配列の波形の振幅を所定の上限値および下限値と比較することにより、振幅信頼度を求めることを特徴とする請求項8に記載の脈拍検出装置。
  10.  前記脈拍検出部は、前記脈拍データ配列の自己相関のピーク近傍に2次曲線を当てはめて得られるピークに対応する周波数を脈拍数として検出することを特徴とする請求項1から9のいずれかに記載の脈拍検出装置。
  11.  ユーザの皮膚を含む領域の所定フレーム数の撮像画像を複数のブロックに分割し、各ブロックの画素値を取得する画素値取得ステップと、
     所定フレーム数の各ブロックの前記画素値を並べた時系列画素配列を取得する時系列画素配列取得ステップと、
     前記時系列画素配列の各要素の平均値を直流成分として算出し、前記時系列画素配列の所定の要素から前記直流成分を引くことにより、脈拍成分を取得し、所定期間の前記脈拍成分を並べた脈拍データ配列を取得する脈拍データ配列取得ステップと、
     前記脈拍データ配列の自己相関を求めることにより得られる周波数を脈拍数として検出する脈拍検出ステップとを含むことを特徴とする脈拍検出方法。
  12.  ユーザの皮膚を含む領域の所定フレーム数の撮像画像を複数のブロックに分割し、各ブロックの画素値を取得する画素値取得機能と、
     所定フレーム数の各ブロックの前記画素値を並べた時系列画素配列を取得する時系列画素配列取得機能と、
     前記時系列画素配列の各要素の平均値を直流成分として算出し、前記時系列画素配列の所定の要素から前記直流成分を引くことにより、脈拍成分を取得し、所定期間の前記脈拍成分を並べた脈拍データ配列を取得する脈拍データ配列取得機能と、
     前記脈拍データ配列の自己相関を求めることにより得られる周波数を脈拍数として検出する脈拍検出機能とをコンピュータに実現させることを特徴とするプログラム。
PCT/JP2020/048929 2020-12-25 2020-12-25 脈拍検出装置および脈拍検出方法 WO2022137555A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/048929 WO2022137555A1 (ja) 2020-12-25 2020-12-25 脈拍検出装置および脈拍検出方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/048929 WO2022137555A1 (ja) 2020-12-25 2020-12-25 脈拍検出装置および脈拍検出方法

Publications (1)

Publication Number Publication Date
WO2022137555A1 true WO2022137555A1 (ja) 2022-06-30

Family

ID=82157728

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/048929 WO2022137555A1 (ja) 2020-12-25 2020-12-25 脈拍検出装置および脈拍検出方法

Country Status (1)

Country Link
WO (1) WO2022137555A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016163019A1 (ja) * 2015-04-10 2016-10-13 株式会社日立製作所 生体情報分析システム
JP2020519332A (ja) * 2017-05-04 2020-07-02 コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. ビデオシーケンスから生理学的情報を抽出するシステムおよび方法
JP2020121022A (ja) * 2019-01-31 2020-08-13 パナソニックIpマネジメント株式会社 生体情報モニタリング方法および生体情報モニタリングシステム
JP2020178964A (ja) * 2019-04-26 2020-11-05 株式会社日立製作所 生体情報検出装置、生体情報検出方法および生体情報検出プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016163019A1 (ja) * 2015-04-10 2016-10-13 株式会社日立製作所 生体情報分析システム
JP2020519332A (ja) * 2017-05-04 2020-07-02 コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. ビデオシーケンスから生理学的情報を抽出するシステムおよび方法
JP2020121022A (ja) * 2019-01-31 2020-08-13 パナソニックIpマネジメント株式会社 生体情報モニタリング方法および生体情報モニタリングシステム
JP2020178964A (ja) * 2019-04-26 2020-11-05 株式会社日立製作所 生体情報検出装置、生体情報検出方法および生体情報検出プログラム

Similar Documents

Publication Publication Date Title
US20220054089A1 (en) Device, system and method for generating a photoplethysmographic image carrying vital sign information of a subject
Cheng et al. Illumination variation-resistant video-based heart rate measurement using joint blind source separation and ensemble empirical mode decomposition
EP3664704B1 (en) Device, system and method for determining a physiological parameter of a subject
US10004410B2 (en) System and methods for measuring physiological parameters
Feng et al. Motion artifacts suppression for remote imaging photoplethysmography
EP3440991A1 (en) Device, system and method for determining a physiological parameter of a subject
JP6784403B2 (ja) 心拍変動の推定方法、心拍変動の推定プログラム及び心拍変動推定システム
AU2018353268B2 (en) Computer-implemented method and system for direct photoplethysmography (PPG) with multiple sensors
CN111938622A (zh) 心率检测方法、装置及***、可读存储介质
Shoushan et al. Non-contact HR monitoring via smartphone and webcam during different respiratory maneuvers and body movements
KR101787828B1 (ko) 스킨컬러 필터를 이용한 심박수 측정시스템
US11583198B2 (en) Computer-implemented method and system for contact photoplethysmography (PPG)
WO2022137555A1 (ja) 脈拍検出装置および脈拍検出方法
WO2022137556A1 (ja) 脈拍検出装置および脈拍検出方法
WO2022137557A1 (ja) 脈拍検出装置、脈拍検出方法およびプログラム
JP2021045375A (ja) 生体情報検出装置及び生体情報検出方法
Ben Salah et al. Contactless heart rate estimation from facial video using skin detection and multi-resolution analysis
Yu et al. Video based heart rate estimation under different light illumination intensities
Ling et al. Dynamic heart rate measurements from video sequences using canonical component analysis
Scebba et al. Improving ROI detection in photoplethysmographic imaging with thermal cameras
CN108703770B (zh) 心室容积监测设备和方法
Liu et al. A new approach for face detection based on photoplethysmographic imaging
JP2023506543A (ja) 被験者のバイタルサインを決定するためのデバイス、システム、及び方法
Suryasari et al. Illuminance Color Independent in Remote Photoplethysmography for Pulse Rate Variability and Respiration Rate Measurement
Mitsuhashi et al. Two-band infrared video-based measurement for non-contact pulse wave detection on face without visible lighting

Legal Events

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

Ref document number: 20967041

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20967041

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP