This release is a pre-release and may not be stable for production use.
SeetaPsych Hertz
Heart rate estimation modules for SeetaPsych
Usage
This project is already included in the seetapsych-lib default configuration. Download and use it via seetapsych-manager download.
For usage, refer to SeetaPsych.
You can additionally add this algorithm module using the following methods.
Heart rate estimation requires processing video or real-time video streams to extract heart rate information.
WebUI
Run seetapsych-webui with the --files argument to use it.
seetapsych-webui --files seetapsych_hertz/modules/seeta.yml
Programmatic Usage
Add the following code in your program to use this algorithm module.
from seetapsych_lib.runtime.factory import Factory
from seetapsych_lib.runtime.pipeline import Pipeline
factory = Factory()
factory.load_file_modules("seetapsych_hertz/modules/seeta.yml")
pipeline = Pipeline(factory, ...)
pipeline.add_attributes("face/heart_rate")
Module Catalog
| Module YAML Path | Package Name |
|---|---|
seetapsych_hertz/modules/ada-chrom.yml |
HeartRate-AdaChrom |
seetapsych_hertz/modules/seeta.yml |
HeartRate-Seeta |
seetapsych_hertz/modules/tiny-hr.yml |
HeartRate-TinyHR |
AdaChrom
Model-free rPPG heart rate estimation using adaptive chrominance analysis on skin ROI.
Module config: ada-chrom.yml
| Package | Provides | Requires |
|---|---|---|
| HeartRate-AdaChrom | face/heart_rate |
face/dense_landmarks |
Description
Adaptive chrominance rPPG heart rate estimator from adaptive forehead ROI, no neural model required.
Parameters
| Name | Type | Default | Description & Tuning |
|---|---|---|---|
window_samples |
integer | 300 |
Sliding window frame count for HR estimation. Larger values reduce noise but increase latency; adjust based on real-time demand. |
Models
(None)
SeetaHeartRateDetector
Traditional signal-processing heart rate estimation from forehead skin pixels via chrominance + FFT analysis.
Module config: seeta.yml
| Package | Provides | Requires |
|---|---|---|
| HeartRate-Seeta | face/heart_rate |
face/dense_landmarks |
Description
Signal-processing heart rate estimator using forehead ROI from dense landmarks with chrominance + FFT peak detection.
Parameters
| Name | Type | Default | Description & Tuning |
|---|---|---|---|
min_seconds |
number | 1 |
Minimum buffered signal duration (seconds) before producing first HR estimate. Lower for faster startup, higher for stability. |
min_frames |
integer | 10 |
Minimum frame count before HR estimation starts. Takes effect whichever is reached later between min_seconds and min_frames. |
max_frames |
integer | 300 |
Maximum frames kept in the sliding analysis window. Larger windows smooth outliers but increase response lag to true HR changes. |
Models
(None)
TinyHR
Lightweight neural network for fast heart rate estimation directly from face video frames.
Module config: tiny-hr.yml
| Package | Provides | Requires |
|---|---|---|
| HeartRate-TinyHR | face/heart_rate |
face/detection |
Description
Fast RhythmFormer heart rate estimator using buffered face crops + Welch spectral analysis.
Parameters
| Name | Type | Default | Description & Tuning |
|---|---|---|---|
fps |
number | 30 |
Expected camera/video FPS used for spectral analysis windowing. Mismatch with actual source FPS degrades HR accuracy. |
interval |
number | 1 |
Seconds between consecutive HR estimates. Smaller intervals yield more updates with higher jitter; larger intervals are smoother but slower. |
Models
| Model | Recommended |
|---|---|
seeta-hertz-tinyhr.onnx |
✓ |
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file seetapsych_hertz-0.0.3rc1.tar.gz.
File metadata
- Download URL: seetapsych_hertz-0.0.3rc1.tar.gz
- Upload date:
- Size: 208.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e6c3631596971437233d53df242e23ac8beb1c551716b1aeff495222576f91ad
|
|
| MD5 |
3f8047eb8245a03da34dab5ec69e759d
|
|
| BLAKE2b-256 |
69d3dcccbdd79bb5c467850450056001193bdc9678adf73c87e38e294bdff2b4
|
Provenance
The following attestation bundles were made for seetapsych_hertz-0.0.3rc1.tar.gz:
Publisher:
publish.yml on seetapsych/seetapsych-hertz
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
seetapsych_hertz-0.0.3rc1.tar.gz -
Subject digest:
e6c3631596971437233d53df242e23ac8beb1c551716b1aeff495222576f91ad - Sigstore transparency entry: 2663234359
- Sigstore integration time:
-
Permalink:
seetapsych/seetapsych-hertz@4be80b307fdf8026097c3788b4469febfeb67f00 -
Branch / Tag:
refs/tags/r0.0.3.rc1 - Owner: https://github.com/seetapsych
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@4be80b307fdf8026097c3788b4469febfeb67f00 -
Trigger Event:
push
-
Statement type:
File details
Details for the file seetapsych_hertz-0.0.3rc1-py3-none-any.whl.
File metadata
- Download URL: seetapsych_hertz-0.0.3rc1-py3-none-any.whl
- Upload date:
- Size: 83.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d959d7fb5918b5c2277c6fc61df47107da459243920f6fa11d633ebeeaf3dc14
|
|
| MD5 |
0037e214c9a10f1d0235ae07abc280ea
|
|
| BLAKE2b-256 |
52c5472fc0ea00d264992e7757616d3d403010f0ccf07531823e786048e4aab2
|
Provenance
The following attestation bundles were made for seetapsych_hertz-0.0.3rc1-py3-none-any.whl:
Publisher:
publish.yml on seetapsych/seetapsych-hertz
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
seetapsych_hertz-0.0.3rc1-py3-none-any.whl -
Subject digest:
d959d7fb5918b5c2277c6fc61df47107da459243920f6fa11d633ebeeaf3dc14 - Sigstore transparency entry: 2663234435
- Sigstore integration time:
-
Permalink:
seetapsych/seetapsych-hertz@4be80b307fdf8026097c3788b4469febfeb67f00 -
Branch / Tag:
refs/tags/r0.0.3.rc1 - Owner: https://github.com/seetapsych
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@4be80b307fdf8026097c3788b4469febfeb67f00 -
Trigger Event:
push
-
Statement type: