# CliniBot **Repository Path**: kernel-c/clini-bot ## Basic Information - **Project Name**: CliniBot - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2026-02-26 - **Last Updated**: 2026-03-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # CliniBot 科灵博特医疗机器人系统 ## 🎯 项目简介 CliniBot(科灵博特)是一个集成机械臂控制、医疗影像处理与智能导航的**跨平台医疗机器人系统**。项目采用人机协同开发模式,支持 **Windows** 和 **Linux** 双平台。 ### ✨ 核心特性 - 🤖 **机械臂控制**:URDF模型加载、运动学解算、轨迹规划、碰撞检测 - 🏥 **医疗影像处理**:DICOM格式CT/MRI数据读取与三维重建 - 🗺️ **智能导航**:基于OMPL的路径规划与实时避障 - 🎯 **人机交互**:Qt5 + VTK 3D可视化界面 - 🔌 **模块化设计**:松耦合架构,便于功能扩展 - 🖥️ **跨平台**:支持 Windows 和 Linux --- ## 🚀 快速开始 ### Windows ```powershell # 1. 克隆项目 git clone cd clini-bot # 2. 配置环境(只需一次) scripts\setup_env.bat # 3. 构建项目 scripts\build.bat Release # 4. 运行 build\bin\Release\CliniBot.exe ``` ### Linux (Ubuntu/Debian) ```bash # 1. 克隆项目 git clone cd clini-bot # 2. 安装系统依赖 sudo apt-get update sudo apt-get install -y \ build-essential cmake git \ qt5-default libqt5widgets5-dev \ libvtk9-dev libboost-all-dev \ libompl-dev liborocos-kdl-dev # 3. 配置环境(只需一次) source scripts/setup_env.sh # 4. 构建项目 ./scripts/build.sh Release # 5. 运行 ./build/bin/CliniBot ``` 📖 **详细构建指南**:[BUILD.md](BUILD.md) --- ## 📦 依赖管理 本项目采用**混合依赖管理策略**,最大化跨平台兼容性: ### ✅ 自带库(无需安装,已包含) | 库 | 类型 | 说明 | |---|---|---| | **Eigen3** | 头文件库 | 线性代数库 | | **libccd** | 预编译库 | 碰撞检测库 | | **FCL** | 预编译库 | Flexible Collision Library | | **TinyXML2** | 预编译库 | XML解析库 | | **OMPL** | 预编译库 | 路径规划库 | | **KDL** | 预编译库 | 运动学库 | | **spdlog** | 预编译库 | 日志库 | 这些库位于 `third_party/lib/` 目录,开箱即用。 ### 🔧 系统库(需要安装) | 库 | Windows | Linux | 用途 | |---|---|---|---| | **Qt5** | 下载安装器 | `apt install qt5-default` | GUI框架 | | **VTK** | `vcpkg install vtk` | `apt install libvtk9-dev` | 3D可视化 | | **Boost** | `vcpkg install boost` | `apt install libboost-all-dev` | C++工具库 | --- ## 🏗️ 项目结构 ``` clini-bot/ ├── 📁 cmake/ │ └── modules/ # CMake查找模块(FindXXX.cmake) │ ├── 📁 scripts/ # 构建脚本 │ ├── setup_env.bat # Windows环境配置 │ ├── setup_env.sh # Linux环境配置 │ ├── build.bat # Windows一键构建 │ └── build.sh # Linux一键构建 │ ├── 📁 third_party/ # 自带第三方库 │ └── lib/ # 预编译库(libccd, FCL, OMPL, KDL, TinyXML2, spdlog) │ ├── 📁 core/ # 核心模块(日志、内存管理、线程池) ├── 📁 data/ # 数据处理模块 ├── 📁 database/ # 数据库模块 ├── 📁 imaging/ # 影像处理模块 ├── 📁 robotics/ # 机器人控制模块 ├── 📁 navigation/ # 导航与路径规划模块 ├── 📁 hardware/ # 硬件接口模块 ├── 📁 network/ # 网络通信模块 ├── 📁 clinibot/ # 主应用程序 │ ├── 📄 CMakeLists.txt # 根CMake配置(跨平台) ├── 📄 BUILD.md # 详细构建文档 └── 📄 README.md # 本文件 ``` --- ## 🖥️ 技术架构 ``` ┌─────────────────────────────────────────────────────────────┐ │ GUI层 (Qt5 + VTK) │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │ │ 主窗口 │ │ 控制面板 │ │ 3D视图 │ │ 影像查看器 │ │ │ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │ └─────────────────────────────────────────────────────────────┘ │ ┌─────────────────────────────────────────────────────────────┐ │ 应用层 (模块集成) │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │ │ 机器人控制 │ │ 影像处理 │ │ 导航系统 │ │ 数据管理 │ │ │ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │ └─────────────────────────────────────────────────────────────┘ │ ┌─────────────────────────────────────────────────────────────┐ │ 核心层 (基础库) │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │ │ Core │ │ Data │ │ Database │ │ Network │ │ │ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │ │ Imaging │ │ Robotics │ │Navigation│ │ Hardware │ │ │ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │ └─────────────────────────────────────────────────────────────┘ ``` ### 关键技术栈 - **C++17**:现代C++标准 - **CMake 3.16+**:跨平台构建系统 - **Qt5 5.15+**:GUI框架 - **VTK 9.0+**:3D可视化 - **OMPL**:路径规划库 - **KDL**:运动学库 - **FCL + libccd**:碰撞检测 --- ## 🌐 跨平台支持 ### 已测试平台 | 平台 | 编译器 | 状态 | |---|---|---| | Windows 10/11 | MSVC 2019/2022 | ✅ 已验证 | | Ubuntu 20.04+ | GCC 9+ | ✅ 已验证 | | macOS | Clang | 🚧 计划中 | ### 移植指南 **Windows → Linux:** 1. 自带库(third_party/)直接可用,无需改动 2. 系统库通过 `apt install` 一键安装 3. 运行 `source scripts/setup_env.sh` 配置环境 **Linux → Windows:** 1. 安装 Visual Studio 2019/2022 2. 使用 vcpkg 安装系统库 3. 运行 `scripts\setup_env.bat` 配置环境 --- ## 🛠️ 开发指南 ### 添加新模块 ```cmake # 在根 CMakeLists.txt 中添加 add_subdirectory(your_module) # your_module/CMakeLists.txt add_library(YourModule STATIC) target_sources(YourModule PRIVATE src/YourModule.cpp) target_include_directories(YourModule PUBLIC include) ``` ### 添加第三方依赖 **方案A:作为自带库(推荐小库)** 1. 放入 `third_party/your_lib/` 2. 在 `third_party/CMakeLists.txt` 中添加配置 **方案B:作为系统库(推荐大库)** 1. 创建 `cmake/modules/FindYourLib.cmake` 2. 在根 `CMakeLists.txt` 中 `find_package(YourLib REQUIRED)` --- ## 📋 开发路线图 - [x] **Phase 1**: Windows平台核心功能验证 - [x] URDF机械臂模型渲染 - [x] 运动学解算(KDL) - [x] 路径规划(OMPL) - [x] 碰撞检测(FCL) - [x] 3D可视化(VTK) - [x] **Phase 2**: 跨平台CMake配置 - [x] 混合依赖管理策略 - [x] Windows/Linux双平台支持 - [x] 自动化构建脚本 - [ ] **Phase 3**: Linux平台适配 - [ ] 在Ubuntu上完整测试 - [ ] 集成真实机械臂硬件 - [ ] ROS2接口开发 - [x] **Phase 4**: 医疗影像功能 - [x] DICOM数据读取 - [x] CT/MRI三维重建 - [x] 影像引导手术规划 - [x] 多平面重建 (MPR) - Axial/Coronal/Sagittal - [x] 3D体绘制 (Volume Rendering) --- ## 🤝 贡献指南 本项目采用**人机协同开发模式**: - 个人开发者负责架构设计和核心算法 - AI助手协助代码实现和调试 欢迎提交Issue和PR! --- ## 📄 许可证 [MIT License](LICENSE) --- ## 🙏 致谢 - [OMPL](https://ompl.kavrakilab.org/) - Open Motion Planning Library - [KDL](https://www.orocos.org/kdl) - Orocos Kinematics and Dynamics Library - [FCL](https://github.com/flexible-collision-library/fcl) - Flexible Collision Library - [VTK](https://vtk.org/) - Visualization Toolkit - [Qt](https://www.qt.io/) - Qt Framework --- ## 📚 模块文档 各功能模块的详细文档: | 模块 | 描述 | 文档链接 | |---|---|---| | 🏥 **Medical Image Viewer** | 医疗影像可视化模块(DICOM读取、MPR、3D重建) | [imaging/README.md](imaging/README.md) | | 🤖 **Robotics** | 机械臂控制模块(运动学、轨迹规划) | [robotics/README.md](robotics/README.md) | | 🧭 **Navigation** | 手术导航模块 | [navigation/README.md](navigation/README.md) | | 🔌 **Hardware** | 硬件接口模块 | [hardware/README.md](hardware/README.md) | | 🌐 **Network** | 网络通信模块 | [network/README.md](network/README.md) | | 💾 **Database** | 数据库模块 | [database/README.md](database/README.md) | | 📊 **Data** | 数据管理模块 | [data/README.md](data/README.md) | | ⚙️ **Core** | 核心模块(日志、配置、工具类) | [core/README.md](core/README.md) | | 🖥️ **CliniBot** | 主应用程序模块 | [clinibot/README.md](clinibot/README.md) | --- **Made with ❤️ by Human + AI Collaboration**