
医疗健康图像处理数据可视化桌面应用3D渲染【免费下载链接】SlicerMulti-platform, free open source software for visualization and image computing.项目地址https://gitcode.com/gh_mirrors/sl/Slicer点击查看免费下载3D Slicer 是一款跨平台、自由开源的医学图像可视化与计算软件绝大多数用户无需自行构建直接下载官方安装包即可使用。但当开发者需要以 C 语言编写 Slicer 模块、为 Slicer 核心贡献代码时就必须在本地从源码完成构建。本文以 Windows 平台为对象系统讲解从依赖安装、源码获取、CMake 配置、编译、运行、测试、打包到调试的完整流程并结合当前仓库的 CMake 源码说明底层机制帮助你一次性构建出可用于开发调试的 Slicer 二进制。构建前的整体认知Superbuild 架构与资源消耗Slicer 基于superbuild超级构建架构构建过程中绝大多数第三方依赖VTK、ITK、DCMTK、CTK 等都会被下载到构建目录下的本地子目录中先完成各自的配置、构建和本地安装最后才构建 Slicer 本体。这种设计大幅降低了开发者管理依赖的复杂度相关机制可参见仓库根目录的 SuperBuild.cmake 与 CMake/ExternalProjectDependency.cmake。在动手之前请务必评估两项硬性资源约束官方文档明确给出的数据磁盘空间Release发布模式约需15GBDebug调试模式约需60GB构建时间台式机通常34 小时笔记本可能需要812 小时。由于 Slicer 依赖大量体积庞大的第三方库构建耗时较长且这类大型多平台项目依赖第三方库时几乎不可能做到零警告因此构建过程允许出现警告但绝不能出现错误。一旦出错请参考文末的常见错误一节定位问题。第一步安装前置依赖构建 Slicer 需要以下工具链请按顺序逐一确认版本满足要求。CMake 3.20.6从 CMake 官网下载安装不低于 3.20.6 的版本。必须避开以下已知与 Slicer 构建存在问题的版本需避开的版本原因3.21.0CMake 问题 #224763.25.0 ~ 3.25.2CMake 问题 #24180、#24567另外仓库顶层 CMakeLists.txt 通过cmake_minimum_required声明了经过验证的 CMake 策略版本范围使用过旧或过新的 CMake 都可能触发策略告警或兼容问题。Git 1.7.10CMake 在配置阶段必须能找到git.exe和patch.exe仓库顶层 CMakeLists.txt 分别通过find_package(Git)与find_package(Patch REQUIRED)强制查找缺失会直接报错。如果 Git 安装在默认位置这两个工具通常可被自动找到若找不到有两种补救方式将包含git.exe与patch.exe的目录加入系统PATH环境变量在配置时通过环境变量或 CMake 变量显式指定GIT_EXECUTABLE与Patch_EXECUTABLE。Visual Studio 2022含 v143 工具链推荐下载免费的Community 社区版也可使用商业版。安装时务必勾选使用 C 的桌面开发Desktop development with C工作负载在安装详细信息中勾选MSVC v143 - VS2022 C x64组件64 位支持部分发行版默认未勾选勾选最新版 Windows 10 SDK组件——缺少 SDK 时 CMake 在配置阶段可能找不到编译器。仓库的 CMake/SlicerBlockPlatformCheck.cmake 会强制执行平台检查在 Windows 上要求 MSVC 工具链版本 ≥ 1920即 Visual Studio 16.0 / v142 工具链或更新否则配置阶段直接抛出FATAL_ERROR。官方同时说明Visual Studio 2019v142 工具链虽已不再测试但大概率仍可工作Cygwin 与 MinGW 未经过测试且不推荐——不支持使用 cygwin gcc 构建但可以用 cygwin shell 环境运行 git 等工具。另外文档提到Visual Studio 2026 配合 v143 工具链与最新 CMake 4.x 可用来构建 Slicer 核心及部分扩展但尚不属于官方正式支持的构建配置如需安装 2026 版本可参考微软官方发行说明并注意勾选对应的 v145 工具链组件。QtQt5 稳定版或 Qt6 实验版通过 Qt 官方通用安装器universal installer安装 Qt随后二选一Qt5当前稳定、官方支持版本推荐安装Qt 5.15.2。具体步骤打开 Qt 通用安装器的 Select Components 页签点击 Categories勾选Archive并点击 Filter以获取旧版本 Qt展开Qt分类选中 Qt 5.15.2必需的组件MSVC2019 64-bit、Qt WebEngine建议同时安装Sources与Qt Debug Information Files便于 Debug 模式构建时用调试器进入 Qt 源码单步调试。Qt6实验性在 Qt Maintenance Tool 的 Customize 页面展开Qt树展开与最新 Qt 6 版本文档注明最低测试版本为 Qt-6.9.3推荐使用最新开源支持版本对应的节点选择MSVC 2022 64-bit同样建议勾选 Sources 与 Qt Debug Information Files展开Additional Libraries树勾选Qt 5 Compatibility module、Qt Multimedia、Qt Positioning、Qt Shader Tools、Qt State Machines、Qt WebChannel展开Extensions树 →Qt WebEngine→ 对应版本节点如 6.9.3勾选MSVC 2022 x64。从源码看仓库顶层 CMakeLists.txt 定义了Slicer_REQUIRED_QT_VERSION默认要求 Qt5.15一旦配置时定义了Qt6_DIR则要求 Qt6.8起步CMake/SlicerBlockFindQtAndCheckVersion.cmake 会按Qt6_DIR/Qt5_DIR自动探测对应 Qt 主版本未找到或版本过低都会在配置阶段报错并提示设置Qt6_DIR或Qt5_DIR。该文件还包含一个与编译器强相关的细节MSVC 1951VS 2022 17.11 引入 ABI 变化要求 Qt 5 必须为5.15.17 或更新否则配置直接失败。许可证说明以上 Qt 组件均为 LGPL 协议的免费开源组件允许任何个人或公司以任何目的免费使用。NSIS可选仅在需要打包安装程序时才需要安装 NSIS安装时务必同时安装语言包language packs。第二步设置源码目录与构建目录为规避 Windows 路径长度限制源码与构建目录必须放在路径总长度极短的目录下建议仅几个字符。虽非强制但强烈建议源码目录与构建目录都不要包含空格。目录角色推荐路径Slicer_SOURCE源码目录C:\D\SSlicer_BUILDRelease 构建目录C:\D\SRSlicer_BUILDDebug 构建目录C:\D\SD同一构建目录不能同时用于 Release 与 Debug 两种模式。若两种模式都需要源码目录可复用但必须为每种模式单独创建并配置一个构建目录。Release 与 Debug 模式如何选择对比项Release 模式Debug 模式运行速度与官方构建相同可能慢5 倍以上磁盘占用约 15GB约 60GB断点调试不可用支持下断点、单步执行、监视变量Qt Designer 界面编辑可用不可用简而言之需要 C 断点调试就选 Debug追求运行速度与节省磁盘就选 Release。获取源码在源码目录中执行注意命令末尾的.它表示克隆到当前目录否则 git 会新建一个Slicer子文件夹git clone https://gitcode.com/gh_mirrors/sl/Slicer.git .可选为开发者配置仓库如果需要向 Slicer 官方仓库贡献代码可执行在 Windows 资源管理器中右键点击Slicer_SOURCE/Utilities文件夹选择Git bash here在终端中执行并回答所有提问./SetupForDevelopment.sh仓库中的 Utilities/SetupForDevelopment.sh 会协助完成 fork、remote 等 git 开发环境配置。第三步配置与构建 Slicer构建耗时数小时。配置与构建有两种途径命令行推荐与cmake-gui 图形界面。两者等价可任选其一。方式一命令行配置与构建推荐将下列命令保存为.bat文件可反复执行。命令指定源码目录、构建目录、Qt 位置与编译器版本以下按默认目录假设。Release 模式cd C:\D C:\Program Files\CMake\bin\cmake.exe ^ -G Visual Studio 17 2022 -A x64 ^ -DQt5_DIR:PATHC:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5 ^ -S C:\D\S -B C:\D\SR C:\Program Files\CMake\bin\cmake.exe --build C:\D\SR --config ReleaseDebug 模式cd C:\D C:\Program Files\CMake\bin\cmake.exe ^ -G Visual Studio 17 2022 -A x64 ^ -DQt5_DIR:PATHC:/Qt/5.15.2/msvc2019_64/lib/cmake/Qt5 ^ -S C:\D\S -B C:\D\SD C:\Program Files\CMake\bin\cmake.exe --build C:\D\SD --config Debug要点说明-G Visual Studio 17 2022 -A x64指定生成 Visual Studio 2022 的 64 位工程-DQt5_DIR:PATH...指向 Qt5 的 CMake 配置文件目录若使用 Qt6 则相应改为-DQt6_DIR:PATH...可参考 CMake/SlicerBlockFindQtAndCheckVersion.cmake 中 Qt5/Qt6 的探测逻辑-S指定源码目录-B指定构建目录第二条命令真正开始编译--config指定构建配置。方式二cmake-gui 图形界面配置替代方案从 Windows 开始菜单运行CMake (cmake-gui)Where is the source code设为Slicer_SOURCEWhere to build the binaries设为Slicer_BUILD此时先不要点 Configure点击Add Entry添加变量Name填Qt5_DIRType选PATHValue填 Qt5 目录如C:\Qt\5.15.2\msvc2019_64\lib\cmake\Qt5点击Configure选择编译器Visual Studio 17 2022点击Finish点击Generate等待工程生成可能需要几分钟点击Open Project打开工程Release 模式注意事项打开构建目录中的Slicer.sln后Visual Studio 默认选中 Debug 配置——若以 Release 构建却忘记切换配置构建必然失败。请务必把活动配置切到 Release。也可以预先在 cmake-gui 中将CMAKE_CONFIGURATION_TYPES设为 Release从而跳过手动选择构建ALL_BUILD工程。构建过程需要知道的常见 CMake 选项Slicer 的构建可以通过 CMake 变量按需开关以缩短构建时间或裁剪功能。以下为文档中列出的最常用选项全部选项的权威定义与默认值见顶层 CMakeLists.txt 与 CMake/SlicerApplicationOptions.cmakeCMake 变量作用取值BUILD_TESTING是否构建测试套件ON/OFFSlicer_BUILD_DICOM_SUPPORT是否构建 DICOM 支持ON/OFFSlicer_BUILD_DIFFUSION_SUPPORT是否构建扩散DWI、DTI支持ON/OFFSlicer_BUILD_I18N_SUPPORT是否构建国际化支持ON/OFFSlicer_BUILD_WEBENGINE_SUPPORT是否构建 Qt WebEngine 支持ON/OFFSlicer_BUILD_QTLOADABLEMODULES是否构建 Qt 可加载模块ON/OFFSlicer_BUILD_QTSCRIPTEDMODULES是否构建 Python Qt 模块依赖Slicer_USE_PYTHONQTON/OFFSlicer_USE_PYTHONQT是否集成 Python-Qt 解释器ON/OFFSlicer_USE_NUMPY/Slicer_USE_SCIPY是否构建 NumPy / SciPy 支持依赖Slicer_USE_PYTHONQTON/OFFSlicer_USE_SimpleITK是否构建 SimpleITK 支持依赖Slicer_USE_PYTHONQTON/OFFSlicer_BUILD_EXTENSIONMANAGER_SUPPORT是否构建扩展管理器ON/OFFSlicer_BUILD_APPLICATIONUPDATE_SUPPORT是否构建应用更新支持ON/OFFSlicer_VTK_VERSION_MAJOR/Slicer_VTK_VERSION_MINOR构建所用 VTK 版本数字Slicer_BUILD_DOCUMENTATION是否构建文档Doxygen、Sphinx 等ON/OFF此外还有与 Windows 直接相关的Slicer_BUILD_WIN32_CONSOLE_LAUNCHER在 CMake/SlicerApplicationOptions.cmake 中定义Windows 下默认 ON控制启动器是否以控制台应用方式构建从而在应用启动时显示终端窗口、便于捕获控制台输出。若不需要终端窗口可在配置时设为 OFF。自定义版本Custom builds不改动任何源码仅通过 CMake 变量即可生成定制化 Slicer 版本常见变量包括SlicerApp_APPLICATION_NAME应用内部程序名默认 SlicerSlicerApp_APPLICATION_DISPLAY_NAME面向用户的显示名窗口标题栏、安装目录名、桌面快捷方式名等Slicer_DISCLAIMER_AT_STARTUP安装后首次启动向用户展示的免责/欢迎文字默认内容见 CMake/SlicerApplicationOptions.cmake置空则不显示Slicer_DEFAULT_HOME_MODULE启动时自动激活的模块默认WelcomeSlicer_DEFAULT_FAVORITE_MODULES默认添加到工具栏的模块默认Data, Volumes, Models, Transforms, Markups, SegmentEditor见 CMake/SlicerApplicationOptions.cmakeSlicer_CLIMODULES_DISABLED/Slicer_QTLOADABLEMODULES_DISABLED/Slicer_QTSCRIPTEDMODULES_DISABLED从应用中移除的内置模块列表分号分隔Slicer_USE_PYTHONQT_WITH_OPENSSL/Slicer_USE_DCMTK_WITH_OPENSSL是否启用 SSL 支持Slicer_EXTENSION_SOURCE_DIRS以分号分隔的扩展源码绝对路径可将扩展作为内置模块打进应用包Slicer_BUILD_WIN32_CONSOLE_LAUNCHER控制 Windows 上是否显示控制台窗口。第四步运行 Slicer运行构建产物Slicer_BUILD/Slicer-build/Slicer.exe理解启动器launcher机制Slicer.exe本质是一个启动器它的职责是设置环境变量后启动真正的可执行程序Slicer_BUILD/Slicer-build\bin\Release\SlicerApp-real.exeDebug 模式构建则将路径中的Release换成Debug。这一分层设计launcher -real主程序保证应用能在一套受控的环境中启动CTK 应用启动器相关逻辑可参考仓库的 CMake/SlicerBlockCTKAppLauncherSettings.cmake。第五步测试 Slicer用启动器打开 Visual Studio启动器会先设置好所需环境变量Slicer.exe --VisualStudioProject选择构建配置通常为Release或Debug在解决方案资源管理器中右键CMakePredefinedTargets文件夹下的RUN_TESTS工程选择生成Build即开始执行 CTest 测试套件。注意Slicer 开发者自行构建的版本预期无法与扩展服务器Extensions Server中的扩展通用。扩展通常每天只为某一 Slicer 版本构建一次且不同机器、不同构建环境或构建选项构建出的版本之间存在 ABI 兼容风险。开发者构建出应用后应使用 Docs/developer_guide/extensions.md 中介绍的一行命令自行构建所需扩展。第六步打包 Slicer生成安装程序用启动器打开 Visual StudioSlicer.exe --VisualStudioProject选择Release构建配置打包必须在 Release 下进行在解决方案资源管理器中右键CMakePredefinedTargets文件夹下的PACKAGE工程选择生成Build。打包依赖 NSIS前文已说明生成安装程序后即可分发安装。第七步调试 SlicerC 调试Windows 上推荐使用 Visual Studio。完整流程见 Windows 平台 C 调试指南核心要点是先按本文构建Debug版 Slicer然后通过Slicer.exe --VisualStudioProject在启动器设置好的环境中打开 Visual Studio在解决方案中把App-Slicer下的SlicerApp注意不是 qSlicerApp设为启动工程即可开始断点调试。调试扩展时建议直接加载扩展自身的.sln工程更小并在调试设置中把 Command 指向.../Slicer-build/bin/Debug/SlicerApp-real.exe。Python 调试可使用多种开发环境见 Python 调试指南。常见错误排查Python 相关错误出现缺少 Python 库或其他 Python 相关错误如构建python-...-requirements工程、Python 包装 SimpleITK 失败很可能是构建系统在系统 PATH 中探测到了其他 Python 安装而不是 Slicer 自带的 Python 环境。解决办法移除环境变量PATH、PYTHONPATH、PYTHONHOME中对 Python 的引用或临时重命名/移除其他 Python 安装待 Slicer 构建完成后再恢复。自定义 Slicer/CTK 控件不显示在 Qt Designer 中Qt Designer 只能加载与自身构建模式一致的设计器插件。插件位于c:\D\SR\Slicer-build\bin\designer c:\D\SR\CTK-build\CTK-build\bin\designer关键规则从 Qt 官网下载的预编译 Qt 包中Qt Designer只有 Release 模式Qt 若以 Release默认或 ReleaseDebug 从源码构建Designer 同样是 Release 模式。这些情况下只有 Slicer 以 Release 模式构建时才能使用 Qt Designer若 Qt 以 Debug 模式从源码构建Designer 为 Debug 模式此时只有 Slicer 以 Debug 模式构建时才能使用 Qt Designer。其他问题防火墙阻止 git 协议部分防火墙会阻断 git 协议可将配置项Slicer_USE_GIT_PROTOCOL关闭改用 http 协议配置阶段 CMake 报错信息不直观可查看构建目录下BUILD/CMakeFiles/*.log形式的日志文件获取更多线索QSslSocket : is not a class or namespace name说明 Slicer 配置为使用 SSL但 Qt 未编译 SSL 支持。处理方式二选一配置时把Slicer_USE_PYTHONQT_WITH_OPENSSL设为 OFF或用带 SSL 支持的 Qt 重新构建其他未知错误完整的构建日志是排查的关键。构建树中通常能找到大体积*.log文件例如Slicer_BUILD\Testing\Temporary\LastBuild_date-time.log跨平台通用问题还可参考 Common errors 页面。结语Windows 平台构建 Slicer 的完整链路为满足版本要求的工具链CMake/Git/VS2022/Qt5→ 短路径源码与构建目录 → CMake 配置命令行或 cmake-gui→ 数小时编译 → 启动器运行 → CTest 测试 → NSIS 打包 → Visual Studio 调试。理解 superbuild 架构、启动器launcher机制以及 Qt 构建模式与 Designer 插件的匹配关系能让你在遇到问题时快速定位。结合本文给出的 CMake 变量表你还可以按需裁剪功能、定制应用名称构建出符合自己开发场景的 Slicer 版本。赞分享医疗健康图像处理数据可视化桌面应用3D渲染【免费下载链接】SlicerMulti-platform, free open source software for visualization and image computing.项目地址https://gitcode.com/gh_mirrors/sl/Slicer点击查看免费下载相关推荐HCCL 源码构建与测试实战环境准备、build.sh 编译流程、打包与上机验证HCCL 源码构建与测试实战环境准备、build.sh 编译流程、打包与上机验证 本文基于 HCCLHuawei Collective Communicat通信高性能计算人工智能AscendCANN3D Slicer GNU/Linux 源码构建完全指南依赖准备、Qt 5/Qt 6 配置、编译测试与打包3D Slicer GNU/Linux 源码构建完全指南依赖准备、Qt 5/Qt 6 配置、编译测试与打包 3D SlicerSlicer是跨平台、免费开医疗健康图像处理数据可视化桌面应用3D渲染从源码构建 GraalWasm环境准备、mx 编译流程与测试验证实战指南从源码构建 GraalWasm环境准备、mx 编译流程与测试验证实战指南 导读 本文以 GraalWasmGraalVM 开源 WebAssembly 运行编译器JIT编译语言运行时高性能计算内存管理上一篇PaddleHub 图像分类模块 se_resnet18_vd_imagenet 实战指南安装、预测 API 与 Serving 部署下一篇PaddleSpeech ASR 解码器 Scorer 机制深度解析从 ScorerInterface 到 CTC Prefix Score 与 N-gram 语言模型创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考