Estimativa de frequência cardíaca a partir de vídeo
Alterações na cor da pele devido ao fluxo de sangue na pele podem ser capturadas em vídeo e usadas para descobrir uma estimativa da frequência cardíaca. Embora essa alteração seja muito pequena para ser vista pelo olho humano, o sinal pode ser muito bem extraído e analisado a partir dos pixels da pele em frames consecutivos.
Adquira frames de um vídeo e seus tempos de aquisição.
In[1]:= | ![]() X |
In[2]:= | ![]() X |
Determine a caixa delimitadora do rosto em todos os frames e destaque o rosto para o primeiro frame.
In[3]:= | ![]() X |
Out[3]= | ![]() |
Determine o movimento regularizado da caixa delimitadora e recorte todos os frames para os rostos detectados usando um tamanho mediano de caixa delimitadora.
In[4]:= | ![]() X |
In[5]:= | ![]() X |
In[6]:= | ![]() X |
Determine as variações no rosto com relação ao primeiro frame e estabilize o vídeo desfazendo as variações.
In[7]:= | ![]() X |
In[8]:= | ![]() X |
Determine a distribuição de probabilidade média da pele na caixa delimitadora da face usando um classificador de pele típica baseado nas cores Lab para a detecção da pele facial.
In[9]:= | ![]() X |
In[10]:= | ![]() X |
In[11]:= | ![]() X |
Out[11]= | ![]() |
Para cada frame, extraia de todos os pixels as cores Lab médias ponderadas pela probabilidade de distribuição de pele acima.
In[12]:= | ![]() X |
In[13]:= | ![]() X |
Out[13]= | ![]() |
Ache o ângulo de desmixagem ótimo α procurando por um sinal com a menor volatilidade diferencial.
In[14]:= | ![]() X |
Out[14]= | ![]() |
Extraia o sinal de pulso ótimo e regularize o sinal de pulso com um filtro de banda que selecione as frequências entre 0,5 Hz e 3 Hz.
In[15]:= | ![]() X |
In[16]:= | ![]() X |
In[17]:= | ![]() X |
Out[17]= | ![]() |
Extraia os batimentos cardíacos usando FindPeaks.
In[18]:= | ![]() X |
Out[18]= | ![]() |
In[19]:= | ![]() X |
Out[19]= | ![]() |
Converta os números dos frames em tempos e extraia intervalos de batidas do coração.
In[20]:= | ![]() X |
Out[20]= | ![]() |
Frequência cardíaca média e seu desvio.
In[21]:= | ![]() X |
Out[21]= | ![]() |
In[22]:= | ![]() X |
Out[22]= | ![]() |
In[23]:= | ![]() X |
Out[23]= | ![]() |