cornerstone3D介绍

128 阅读4分钟

cornerstone3D介绍

概述

cornerstone3D是一个轻量级 Javascript 库,用于在支持 HTML5 canvas 元素的现代 Web 浏览器中可视化医学图像

特性

  • 符合标注DICOM:强大的 DICOM 解析。支持 DICOMweb 和所有开箱即用的传输语法。
  • 高性能渲染:高性能 GPU 加速图像显示。多线程图像解码。渐进式数据流。
  • 模块化设计:采用模块化设计。轻松创建您自己的工具和图像加载器。

渲染

使用新的渲染引擎及其 Stack(二维序列)Volume(三维体数据) 视口

  • 渲染所有传输语法,包括各种压缩格式,如 JPEG2000、JPEG 无损
  • 流式传输卷的切片,并在加载时实时查看它们
  • 以不同方向(如轴向、矢状和冠状面)查看同一卷,而无需再次重新加载整个卷(最小内存占用)
  • 查看体积块中的倾斜切片
  • 渲染同一体积的不同混合(例如 MIP(最大强度投影)和平均强度投影)
  • 融合和叠加多个图像,例如 PET/CT 融合
  • 渲染彩色图像并将其渲染为体积
  • 当 GPU 渲染不可用时,回退到 CPU 渲染
  • 通过修改视区的元数据(例如像素间距)来更改图像的校准

操纵

通过Cornerstone3DTools启用

  • 使用鼠标绑定放大和缩小图像
  • 向任意方向平移图像
  • 以任何方向滚动图像,即使是倾斜切片
  • 更改图像的窗口级别

image.png

注解

Cornerstone3DTools还支持使用工具对图像进行注释。所有注释都是 呈现为 SVG 元素,确保它们以最佳质量显示 在任何显示器分辨率下。中的注释被存储 在图像的实际物理空间中,允许您在多个视口中渲染/修改相同的注释

  • 使用 ToolGroups 在某些视口上激活某些工具(例如,在滚动时激活 CT 轴向视口上的切片滚动,但激活 PT MIP 视口的体积旋转)
  • 使用长度工具测量两点之间的距离
  • 使用双向线工具测量长度和宽度
  • 使用 Rectangle/Elliptical ROI Tool 计算统计数据,例如感兴趣区域的平均值、标准差
  • 使用十字光标在不同视区的图像中查找相应的点,并使用参考线导航切片
  • 在按住特定修改键(例如 shift、ctrl、alt)时指定要激活的不同工具
  • 创建您自己的自定义工具

image.png

分割

Cornerstone3D支持在所有视区(包括堆栈、体积和 3D)中将图像分割渲染为标签映射。

  • 在视区中将分割渲染为标签映射(例如 CT 肺的分割)
  • 将标签贴图转换为 3D 视窗中的曲面并应用相同的颜色。
  • 查看任何方向的分割(例如轴向、矢状、冠状),甚至在斜切片中
  • 更改 labelmap 配置(例如颜色、不透明度、轮廓渲染、轮廓粗细等)
  • 使用剪刀工具(如矩形、椭圆剪刀)在 3D 轴向、矢状、冠状中编辑/绘制线段
  • 将特定阈值应用于感兴趣区域的标签映射

同步

Cornerstone3D支持多个视口之间的同步。

  • WindowLevel synchronizer:同步源视口和目标视口的窗口级别
  • Camera synchronizer:同步源视口和目标视口的摄像机

版本对比

Cornerstone3DCornerstone(2D版本)的核心差异主要体现在三维医学影像处理能力和架构设计上

  • Cornerstone3D 专为三维医学影像(如CT/MRI体数据)设计,支持多平面重建(MPR)、体渲染(VR)等三维操作,ornerstone(2D)仅支持二维切片浏览,无法处理复杂三维场景
  • Cornerstone3D 支持DICOM序列、NIfTI等三维格式的直接加载,2D版本主要处理单张DICOM图像或二维序列
  • ornerstone3D 使用WebGL 2.0和GPU加速,优化体数据渲染性能,2D版本基于Canvas 2D渲染,适合轻量级二维图像显示
  • Cornerstone3D 提供可扩展的工具接口(如注释类、分割类工具),支持自定义三维交互,2D版本工具链相对简单,聚焦基础操作(缩放、平移)