本项目通过人脸识别技术与热成像技术相结合,实现了人体体温自动化检测。使用OpenCV的级联分类器实现人脸位置检测,再结合热成像数据计算人脸位置的最高温度值作为人体体温值。
- 下载并安装OpenCV
- 克隆本仓库
git clone https://github.com/printlin/twjc.git
- 使用IDEA打开工程
- 配置参数
- 运行
依次打开File > Project Structure > Modules > Dependencies
,点击加号,添加OpenCV安装目录中的opencv-xxx.jar。
依次打开Run/Debug Configurations > Application > Configuration > VM options
,填入-Djava.library.path=D:\opencv\opencv\build\java\x64
,等号后面填写您本地的OpenCV目录。
在项目resource目录下有一个app.properties配置文件,可进行自定义配置。
- 报警温度
tw.limit=37.4
- 热成像最大温度
rcx.max=40
- 热成像最小温度
rcx.min=0
- 热成像检测范围
rcx.range=10
- 最高温度点的标记圆圈半径
mark.radius=10
- 标记的线条大小
mark.thickness=2
- 标记颜色R通道
mark.color.r=0
- 标记颜色G通道
mark.color.g=255
- 标记颜色B通道
mark.color.b=0
- 彩色相机索引
camera.rgb=0
- 热成像相机索引
camera.rcx=1
- 识别模型
detect.path=D:\\opencv\\opencv\\sources\\data\\haarcascades\\haarcascade_frontalface_default.xml
- 人脸最大像素值
detect.face.max=400
- 人脸最小像素值
detect.face.min=50
- 识别间隔毫秒
detect.sleep=50