# soul-jigsaw **Repository Path**: xiyidaiwa/soul-jigsaw ## Basic Information - **Project Name**: soul-jigsaw - **Description**: No description available - **Primary Language**: Python - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-09-23 - **Last Updated**: 2025-09-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 心灵拼图 (Soul Jigsaw) 一个AI驱动的拼图游戏,帮助玩家通过完成拼图来探索内心世界。 ## 功能特点 - AI情感分析:分析玩家选择的图片或生成的图像情感 - 智能难度调整:根据玩家表现和情绪状态自动调整游戏难度 - 个性化图像生成:根据玩家情绪生成相应的拼图图像 - 进度跟踪:记录玩家游戏历史和统计数据 - 跨平台支持:兼容GNOME和KDE桌面环境 - **实时情感识别:通过摄像头实时检测玩家情绪状态** - **智能场景切换:当检测到高焦虑值时自动切换到治愈场景** ## 技术架构 ### 核心组件 1. **GUI界面模块** - 使用PyQt5实现用户界面 2. **AI引擎模块** - 包含情感计算、图像生成和难度预测 3. **数据管理模块** - SQLite数据库和YAML配置文件 4. **游戏逻辑模块** - 核心游戏机制和流程控制 ### 模块关系图 #### 介绍 基于Linux桌面端的"心灵拼图"游戏,整合AI技术实现每日动态内容生成与自适应难度系统,采用开源工具链确保轻量高效运行。 #### 软件架构 - **GUI框架**:PyQt6 + PySide6(支持QSS主题定制,与Linux系统主题无缝融合) - **AI引擎**: - 图像生成:Stable Diffusion XL Turbo本地API - 难度算法:TensorFlow Lite模型部署 - 情感计算:OpenCV + Affectiva情感识别SDK - **游戏逻辑**:Python + Pygame实现基础拼图引擎 - **本地存储**:SQLite数据库 - **配置文件**:YAML格式 #### 安装教程 1. 克隆项目到本地目录 2. 安装依赖:`pip install -r requirements.txt` 3. 安装OpenCV:`pip install opencv-python` 4. 安装Affectiva SDK(Linux版)- 请参考官方文档进行安装 5. 运行应用:`python main.py` #### 使用说明 1. 启动应用后将自动生成当日主题拼图 2. 通过摄像头进行情感识别,自动调整游戏难度和场景 3. 当系统检测到高焦虑值(>0.7)时,会自动切换到治愈场景 4. 支持语音指令和手势交互 #### 情感识别系统 **系统架构** - 使用OpenCV捕获摄像头视频流 - 集成Affectiva SDK(Linux版)进行情绪检测 - 实时监控焦虑值,当超过阈值时触发场景切换 - 平滑过渡效果提升用户体验 **性能优化** - 帧率控制:限制处理帧率为5FPS以减少CPU使用率 - 多线程处理:视频捕获在独立线程中运行,避免阻塞UI - 资源管理:程序退出时自动释放摄像头资源 **场景切换** - 当检测到焦虑值>0.7时,自动切换到治愈场景 - 使用淡入淡出动画实现平滑过渡 - 治愈场景包含舒缓的视觉元素和指导语 - 30秒后自动返回游戏或可手动返回 #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 技术架构设计 **核心框架选择** - **GUI框架**:PyQt6 + PySide6(支持QSS主题定制,与Linux系统主题无缝融合) - **AI引擎**: - 图像生成:调用Stable Diffusion XL Turbo本地API(通过Hugging Face Transformers库) - 难度算法:TensorFlow Lite模型部署(本地运行,保护隐私) - 情感计算:OpenCV + Affectiva情感识别SDK(Linux兼容版) - **游戏逻辑**:使用Python + Pygame实现基础拼图引擎,结合NumPy进行碎片边缘匹配计算 **数据管理方案** - **本地存储**:SQLite数据库记录玩家进度、偏好设置及历史难度数据 - **配置文件**:YAML格式存储每日主题关键词、3D场景参数及AI模型超参数 - **缓存机制**:Redis Lite缓存高频访问的拼图素材,加速加载速度 #### AI内容生成流程 **每日主题素材生成** - 调用Stable Diffusion XL Turbo生成主题素材: