Skip to content

DUTBenjamin/SignTranslate

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎯 双向手语翻译系统

License Version Python Django TensorFlow

🤟 智能手语识别 · 🔄 双向翻译 · 🎬 动画生成

功能特性快速开始系统架构开发者

✨ 功能特性

🎯 核心功能模块

功能模块 图标 描述
孤立手语识别 📷 实时摄像头识别单个手语动作,支持英文字母及常用手势
连续手语翻译 🎬 通过摄像头实时翻译连续手语动作,拼接成完整句子
手语动画生成 输入文本自动生成对应的手语动画视频
中文手语识别 🖼️ 支持图片和视频中的中文手语识别
统计分析 📊 系统使用统计与可视化分析
技术原理 💡 详细的系统架构和算法原理说明

🛠 技术亮点

  • 🎪 多模态识别 - 支持实时视频、图片、文件视频多种输入方式
  • 实时处理 - 基于MediaPipe的高效手部关键点检测
  • 🧠 深度学习 - 1D CNN模型优化,准确率高达98.7%
  • 🌐 全栈方案 - Django后端 + 现代化前端,完整的技术栈
  • 📱 响应式设计 - 完美适配各种设备屏幕
  • 🔄 双向翻译 - 支持手语到文本、文本到手语动画的双向转换

🚀 快速开始

📥 环境要求

# Python 环境
Python >= 3.8
Django >= 4.0
TensorFlow >= 2.0

# 前端依赖
Bootstrap 5
Chart.js
Font Awesome

🎮 安装部署

# 1. 克隆项目
git clone https://github.com/your-repo/sign-language-translator.git
cd sign-language-translator

# 2. 安装Python依赖
pip install -r requirements.txt

# 3. 数据库迁移
python manage.py migrate

# 4. 收集静态文件
python manage.py collectstatic

# 5. 启动开发服务器
python manage.py runserver

🎯 访问系统

🌐 打开浏览器访问: http://localhost:8000

🏗 系统架构

📋 技术栈概览

graph TB
    A[前端界面] --> B[Django后端]
    B --> C[MediaPipe处理]
    C --> D[1D CNN模型]
    D --> E[结果反馈]
    
    A --> F[实时视频流]
    A --> G[文件上传]
    A --> H[动画生成]
Loading

🔧 核心组件

前端技术栈

  • HTML5 + CSS3 - 现代化响应式界面
  • Bootstrap 5 - UI组件框架
  • JavaScript - 动态交互逻辑
  • WebRTC - 实时视频流处理

后端技术栈

  • Django - Web框架
  • TensorFlow Lite - 模型推理
  • MediaPipe - 手部关键点检测
  • OpenCV - 图像处理

算法模型

  • 1D CNN - 时序手势分类
  • 关键点归一化 - 空间变换算法
  • 数据增强 - 提升模型泛化能力

🎪 功能演示

📷 孤立手语识别

  • 实时摄像头手势识别
  • 支持26个英文字母手势
  • 置信度可视化显示
  • 识别历史记录

🎬 连续手语翻译

  • 连续手势动作识别
  • 实时句子拼接
  • 翻译结果复制功能
  • 性能统计监控

✨ 手语动画生成

  • 文本到手语动画转换
  • 支持中英文输入
  • 动画预览与控制
  • 视频下载功能

🖼️ 中文手语识别

  • 图片序列识别
  • 视频文件处理
  • 批量识别支持
  • 置信度评估

👥 开发者团队

📊 系统统计

🎯 使用数据

  • 📈 总使用次数: 实时统计系统各项功能使用情况
  • 🎬 识别次数: 孤立、连续、图片、视频识别总和
  • 动画生成: 文本到手语动画转换次数
  • 👥 活跃用户: 系统服务用户数量

📈 可视化分析

  • 每日使用量趋势图表
  • 功能模块使用分布
  • 实时活动日志监控
  • 性能指标统计

🔬 技术原理

🏗 系统架构层次

  1. 前端交互层 - 用户界面与实时交互
  2. 视频处理层 - MediaPipe手部关键点检测
  3. 深度学习层 - 1D CNN模型推理
  4. 服务反馈层 - 结果处理与前端反馈

🧠 核心算法

手部关键点检测

# MediaPipe手部21关键点
hand_landmarks = [
    'WRIST', 'THUMB_CMC', 'THUMB_MCP', 'THUMB_IP', 'THUMB_TIP',
    'INDEX_FINGER_MCP', 'INDEX_FINGER_PIP', 'INDEX_FINGER_DIP', 'INDEX_FINGER_TIP',
    'MIDDLE_FINGER_MCP', 'MIDDLE_FINGER_PIP', 'MIDDLE_FINGER_DIP', 'MIDDLE_FINGER_TIP',
    'RING_FINGER_MCP', 'RING_FINGER_PIP', 'RING_FINGER_DIP', 'RING_FINGER_TIP',
    'PINKY_MCP', 'PINKY_PIP', 'PINKY_DIP', 'PINKY_TIP'
]

1D CNN模型架构

  • 输入: 21个关键点的时序数据
  • 卷积层: 特征提取
  • 池化层: 维度缩减
  • 全连接层: 分类输出
  • 输出: 手势类别概率分布

🤝 贡献指南

我们欢迎各种形式的贡献!🎉

🍴 开发流程

  1. Fork项目
  2. 创建功能分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 开启Pull Request

🐛 问题反馈

  • 使用 GitHub Issues 报告bug
  • 提供详细的重现步骤和环境信息
  • 欢迎功能建议和改进意见

📄 许可证

本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。

🙏 致谢

感谢以下开源项目的支持:


🎊 让沟通无障碍!

如果这个项目对您有帮助,请给我们一个 ⭐️ 支持!

用手语连接世界,让沟通更简单! 🤟

About

双向的手语翻译系统,适合部署在嵌入式设备

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages