altmoly/TherA-AI
GitHub: altmoly/TherA-AI
一个基于浏览器的本地 Web 应用,利用目标检测和规则化热力映射将普通 RGB 图像转换为热成像风格图像。
Stars: 0 | Forks: 0
# TherA 离线 RGB 转热成像原型
## 概述
TherA 离线 RGB 转热成像原型是一个本地 Web 应用程序,可将普通的 RGB 图像转换为热成像风格的图像。用户可以上传图像,查看原始 RGB 图像,并将其与处理后的热成像风格输出进行并排比较。
该项目的目标是利用目标感知的图像处理技术来模拟热成像仪输出的视觉效果。这只是一个原型,并不测量实际温度,也不能替代真正的热成像仪。
## 功能特性
- 图像上传与预览
- 原始图像与处理后图像的并排比较
- 基于本地浏览器的处理
- 人物与物体检测
- 热成像风格的颜色映射
- 人物和暴露的皮肤区域使用更暖的颜色
- 植被、天空、水和背景区域使用更冷的颜色
- 处理结果可供下载
- 无需付费 API 密钥
## 技术栈
- 前端:React 和 Vite
- 样式:CSS
- 处理:JavaScript 和本地计算机视觉逻辑
- 模型运行时:onnxruntime-web,用于本地浏览器推理
- 运行环境:浏览器开发服务器
## 工作原理
当前的处理流程遵循以下步骤:
1. 用户上传一张 RGB 图像。
2. 图像被加载到 HTML canvas 中。
3. 检测重要的物体和区域,例如人物和场景元素。
4. 应用目标感知的热成像颜色规则。
5. 生成热成像风格的输出图像并显示在原图旁边。
应用程序使用检测来定位重要区域,然后应用基于规则的热力映射。人物和暴露的皮肤被映射为较暖的颜色,而植被、天空、水和背景区域则被映射为较冷的颜色。
## 安装说明
安装依赖:
```
npm install
```
启动开发服务器:
```
npm run dev
```
应用程序通常运行在:
```
http://localhost:5173
```
根据本地环境的不同,Vite 可能也会显示一个 `127.0.0.1` URL。
## 使用方法
1. 在浏览器中打开本地开发 URL。
2. 点击上传按钮。
3. 从计算机中选择一张 RGB 图像。
4. 等待本地处理完成。
5. 比较原始图像与热成像风格的输出。
6. 如有需要,可下载处理后的图像。
## 当前局限性
本项目仍处于原型阶段。检测功能已正常运行,但渲染管线仍在不断改进中,正从基于边界框的物体处理向真正的像素级分割迈进。
未来的版本应使用更精确的掩码,以便根据人物真实的轮廓而不是矩形的物体区域进行着色。当前输出仅为视觉模拟,不应将其解释为真实的热成像数据。
## 未来规划
- 像素级人物分割
- 更好的皮肤与衣物热量分离
- 更精确的物体与材质检测
- 基于数据集的模型训练
- 更逼真的 FLIR 风格热成像渲染
- 完全离线的 AI 模型集成
- 改进对包含多个人物和重叠物体的复杂场景的支持
## 项目状态
TherA 离线 RGB 转热成像原型是一个正在活跃开发中的学生项目原型。当前版本演示了本地 RGB 转热成像风格转换、图像上传、目标感知处理以及并排比较。下一个主要改进方向是实现更精确的分割,以呈现逼真的人体轮廓和材质感知的热力映射。
标签:CNCF毕业项目, ONNX, onnxruntime-web, React, RGB图像, Syscalls, Vite, Web端AI, 云计算, 前端机器学习, 单页应用, 原型系统, 图像处理, 图像对比, 图像生成, 数据可视化, 本地Web应用, 浏览器推理, 热力图, 热成像, 目标检测, 离线应用, 纯前端, 自定义脚本, 规则引擎, 计算机视觉, 风格转换