CoolFace
Datasetpublic

phamtrongthang/CattleFace-RGBT

CattleFace-RGBT: Cattle Facial Landmark Dataset with RGB-Thermal Imagery Dataset Description CattleFace-RGBT is the first publicly available multimodal dataset featuring paired frontal-view RGB and thermal facial images of cattle, annotated with 13 facial keypoints and associated ground-truth rectal temperature measurements. The dataset was developed to support research in automated cattle fever estimation and precision livestock farming. Paper: CattleFever: An… See the full description on the dataset page: https://huggingface.co/datasets/phamtrongthang/CattleFace-RGBT.

sourceHugging Facecc-by-4.0updated 3mo agoView on Hugging Face
0likes169downloads
Dataset Card

CattleFace-RGBT: Cattle Facial Landmark Dataset with RGB-Thermal Imagery

Dataset Description

CattleFace-RGBT is the first publicly available multimodal dataset featuring paired frontal-view RGB and thermal facial images of cattle, annotated with 13 facial keypoints and associated ground-truth rectal temperature measurements. The dataset was developed to support research in automated cattle fever estimation and precision livestock farming.

Paper: CattleFever: An automated cattle fever estimation system Published in: Smart Agricultural Technology, Volume 12, 2025

Dataset Summary

ComponentCount
RGB images (annotated)1,890
Thermal JPG images (annotated, colorized)2,611
Raw thermal TIFF frames30,954
Thermal videos (.mp4)51
Unique cattle108
Cattle with temperature readings21
Facial keypoints per image13
Recording dates3 (Feb 1, Feb 6, Feb 13)

Dataset Structure

CattleFace-RGBT/
├── README.md
├── rgb/                          # RGB images organized by folder
│   ├── 1/
│   ├── 17/
│   ├── 25/
│   ├── 50/
│   └── 64/
├── thermal/                      # Colorized thermal JPG images
│   ├── 1/
│   ├── 2/
│   ├── 17/
│   ├── 25/
│   ├── 50/
│   └── 64/
├── thermal_raw/                  # Raw thermal TIFF frames (temperature data)
│   ├── 02_01/                    # Feb 1 recording session
│   ├── 02_06/                    # Feb 6 recording session
│   └── 02_13/                    # Feb 13 recording session
└── annotations/
    ├── rgb_keypoints.json        # COCO-format keypoint annotations for RGB
    ├── thermal_keypoints.json    # COCO-format keypoint annotations for thermal
    ├── metadata.csv              # Cow ID, temperature, and data mapping
    └── cow_mapping.json          # Sequence number → cow tag ID mapping

Annotation Format

Annotations follow the COCO keypoint format:

Images

json
{
  "id": 0,
  "file_name": "rgb/1/00001.jpg",
  "width": 2560,
  "height": 1440,
  "folder": "1",
  "frame_id": "00001"
}

Annotations

json
{
  "id": 0,
  "image_id": 0,
  "category_id": 1,
  "keypoints": [x1, y1, v1, x2, y2, v2, ...],
  "num_keypoints": 13,
  "bbox": [x, y, width, height],
  "area": 123456,
  "iscrowd": 0
}

13 Facial Keypoints

IndexNameDescription
1leftearbaseBase of left ear
2leftearmiddleMiddle of left ear
3lefteartipTip of left ear
4pollTop of head (poll)
5rightearbaseBase of right ear
6rightearmiddleMiddle of right ear
7righteartipTip of right ear
8left_eyeLeft eye
9right_eyeRight eye
10muzzleCenter of muzzle
11left_nostrilLeft nostril
12right_nostrilRight nostril
13mouthMouth

Visibility flag: 0 = not labeled, 2 = labeled and visible.

Raw Thermal Data

The thermal_raw/ directory contains raw TIFF frames from the ICI FMX 400 thermal camera (384 x 288 pixels). Each pixel contains a temperature value in Celsius. These files can be read with:

python
from PIL import Image
import numpy as np

tiff = Image.open("thermal_raw/02_01/0001_Video_Frame_1.tiff")
temp_array = np.array(tiff)  # Temperature values in Celsius

TIFF filenames follow the pattern: {sequence_num}_Video_Frame_{frame_num}.tiff

Use cow_mapping.json to map sequence numbers to cow tag IDs and temperatures.

Temperature Data

Ground-truth rectal temperatures (in Fahrenheit) are available for 21 cattle across 3 recording sessions. The mapping is provided in metadata.csv and cow_mapping.json.

Data Collection

Data was collected at the Arkansas Agricultural Experiment Station, Savoy Research Complex, Beef Cattle Research Area, in partnership with the University of Arkansas. The setup used:

  • RGB camera: Standard webcam (2560 x 1440 resolution)
  • Thermal camera: ICI FMX 400 (384 x 288 pixel resolution, 50 Hz frame rate, < 0.03°C thermal sensitivity)
  • Temperature: Rectal thermometer (ground truth)

Each calf was guided into a cattle squeeze chute for ~20 seconds of synchronized RGB and thermal video recording.

Supported Tasks

  1. 1.Cattle facial landmark detection — Detect 13 keypoints on cattle faces
  2. 2.Cattle face detection — Detect and localize cattle faces using bounding boxes
  3. 3.Core body temperature estimation — Predict rectal temperature from thermal facial features

Recommended Splits

As described in the paper:

  • Keypoint detection: 70% train / 30% test (random split)
  • Temperature estimation: 80% train / 20% test

Citation

bibtex
@article{pham2025cattlefever,
  title={CattleFever: An automated cattle fever estimation system},
  author={Pham, Trong Thang and Coffman, Ethan and Kegley, Beth and Powell, Jeremy G. and Zhao, Jiangchao and Le, Ngan},
  journal={Smart Agricultural Technology},
  volume={12},
  pages={101434},
  year={2025},
  publisher={Elsevier},
  doi={10.1016/j.atech.2025.101434}
}

License

This dataset is released under the CC BY 4.0 license.

Contact

For questions about this dataset, please contact:

  • Trong Thang Pham (tp030@uark.edu) — AICV Lab, University of Arkansas