目录

常见问题解答

支持平台/架构

是否有可在 Linux 运行的版本?

Simpleware V-2024.06 可在 Linux 上运行,其中仅有 Design Link 功能不能在 Linux 版本使用。

能否有效利用多核和/或双处理器主板?

大部分图像滤波器和部分网格划分都是并行化的,将自动使用所有可用的 CPU。但有些滤波器和网格生成算法过于复杂而无法并行,只能在一个 CPU 上运行。

Simpleware 软件的使用

如何分割不同的感兴趣区域?

CT 数据

MRI 数据

是否可以结合 CT 和 MRI 扫描数据?

可以先导入一个数据集创建为项目文件,另外新建一个项目文件导入第二个数据集,然后直接导入第一个数据集所在的项目文件,实现两个数据集同时存在。如果数据集未共同配准(即未完全对齐),则可能需要使用 Register datasets 和/或 Align 工具基于一个图像旋转或转变另一个图像。在 Simpleware 中显示为两种不同的背景,分割工具和过滤器都将应用于处于活动状态的那个背景,单击鼠标即可切换背景。

手动涂画是否是分割 MRI 数据的唯一方式?

在 MRI 扫描数据中仅根据灰度值(如使用阈值工具)识别组织并不总是那么容易,而手动涂画可能会很耗时。然而,也有一些策略可以减少分割时间。

利用 Propagate 和 Interpolate 功能可大幅减少需要涂画的切片数量。Propagate 功能允许在图像堆栈中向前或向后“传播”用户定义数量的切片,直接复制初始分割或通过跟踪背景图像中涂画特征周围的等灰度轮廓。Interpolate 功能可将一系列分割切片连接起来,形成一个实体掩膜(这些分割切片可以手动创建,也可以使用 Propagate 功能创建)。同样地,也可以在 2D 视图所选切片上分割感兴趣区域,然后使用 3D wrap 工具形成实体掩膜。

在许多情况下,Paint with threshold 工具比完全手动的 Paint 工具更实用。Paint with threshold 是将涂画与所涂像素上施加的灰度阈值边界限制相结合。这样可以更快地涂画不同特征之间存在一定程度灰度对比的区域。

Paint 工具中的 Point to point line 选项也很有用,能够降低用户鼠标技能的重要性。在被分割特征的边缘周围绘制闭合路径后,可以使用 Flood fill 工具填充内部区域。

可否详细解释可用的平滑操作?

网格划分之前

有多种平滑滤波器可应用于掩膜或背景图像,最常用的是 Recursive Gaussian、Mean filter、Median filter(位于 Smoothing filters 的下拉菜单)。通常建议对掩膜应用 Recursive Gaussian,对背景图像使用 Median filter。还有一些平滑滤波器在 Advanced filters 的下拉列表中。

网格划分过程中

Smart mask smoothing 算法是本软件特有基于图像的平滑算法,可保留体积和拓扑,确保结果更符合原始几何。

Triangle smoothing 算法可用在生成 Surface 模型的 STL(3D printing)、IGES(triangles)、Point cloud、Open inventor导出类型和 NURBS 模型时,三角形平滑类似于处理表面数据典型的 Laplacian 平滑算法。

如何提高几何体的平滑度?

为获得光滑的表面,推荐使用 Recursive Gaussian 或 Mean filter,每个方向上的 Gaussian sigma/Neighborhood radius 值设置为 1-3(或更大),勾选 Binarise 可删除掩膜可能包含的任何部分体积信息。对于多部件平滑,建议使用 Smart mask smoothing,它既可以作为独立的工具(Smoothing filters 的下拉菜单中),也可在生成模型的设置页面勾选。

如何平滑特定区域?

3D editing 工具(Image processing — Segmentation)可对自定义的感兴趣区域(ROI)应用一系列操作,其中包含平滑。

Simpleware 的使用提示

软件的导航

通过键盘快捷键可以更快地导航软件,可在 Preferences 对话框可以添加自定义快捷键。Ctrl + F快速点开 Quick find 功能,并显示最近搜索工具列表。此外,可选择用户个人常用工具添加到 My tools 选项栏。

背景图像

双击或右键选择 Duplicate 复制背景图像,应用滤波器减少噪音,有益于后续的分割操作。减少噪音的滤波器如 Recursive Gaussian、Mean filter、Bilateral,通过对比复制背景图像和原始图像查看应用滤波器前后的差异。

分割

对于特征之间具有良好灰度对比的背景图像,典型的分割流程从 Threshold 工具开始,然后使用 Flood fill。对于灰度对比较低的背景图像,分割通常需要用到 Paint with threshold 工具。

布尔运算

通过 General Boolean operations、Venn diagram Boolean operations 工具或右键点击 Dataset browser 下方的掩膜进行布尔运算,在创建图层或掩膜间的相加/减时非常有用。

形态学滤波器

有时通过阈值的初始分割并不能完全获得想要的结果,可以使用 Morphological 滤波器修改掩膜。

此外,3D wrap 工具可用于“包裹”某些切片上的分割,生成一个实体掩膜。

Simpleware FE 网格划分

选择 +FE Grid 算法时获得最佳网格质量的典型设置?

通常建议使用 +FE Free 网格划分算法。+FE Grid 算法生成高质量网格的典型参数如下(Model configuration 对话框的 Volume meshing 栏):

Quality target 为 0.1 通常是大多数 FE 软件在不产生警告前提下能接受的最低质量。请注意,如果设置 Allow off-surface 为 Yes,对于比较高的 Quality target 数值(如大于 0.3),模型的平滑可能会受到影响。

何时应使用 +FE Free 网格生成算法?

对于大多数的体积网格划分需求,都建议采用 +FE Free 网格划分算法,除非结构极其复杂或需要非常精细、均匀的网格。+FE Free 是一种四面体网格划分算法,也是 FE 和 CFD 模型的默认网格划分选项。该网格生成算法从 +FE Grid 网格中提取符合的表面,然后根据局部几何复杂性自适应地重新划分网格。这种方法显著减少了大多数模型的单元和节点数量,同时保持较高的精度。网格密度可以使用 Coarseness 滑块(可分别设置每个部件的网格粗糙度)自动更改或手动调整网格划分参数。如果在对特定模型进行网格划分后,某些区域需要更精细的网格,则可以使用 Model configuration 对话框的 Mesh refinement 栏设置。包含各种形状工具选择需要细化网格的感兴趣区域,根据用户自定义设置该区域的网格密度。

导出的材料属性使用哪些单位?

有限元求解器的单位可以是用户定义(如 Abaqus)或由软件指定(如 COMSOL Multiphysics)。在第一种情况下,没有固定的输入数值方法,但单位必须始终保持一致。在本软件中,质量单位是 tonne,长度单位是 mm,时间单位是 s,密度单位是 tonnes/mm3,杨氏模量单位是 MPa。在 Model configuration 对话框 General 选项栏的 Export length unit 处可以修改导出网格的长度单位,默认为 mm。

是否可以为部件分配热或电属性?

对一个部件内的所有单元分配热/电材料属性(即均质材料属性),可以编辑(求解器)的输入文件或者使用预处理器/求解器 GUI 为该部件分配适当的材料属性。

为使整个部件的热/电属性随原始图像信号强度而变化(即基于灰度的材料属性),可以在 Model configuration 对话框 Materials 选项栏的 Material type 选择 Greyscale based。灰度数值箱的数量(即设置单独材料属性的数量)和灰度对材料属性的映射是用户自定义的。由于软件界面是针对力学材料属性的设置,可以手动编辑 input deck 更改材料类型和数值或通过预处理器/求解器 GUI。

无法在 COMSOL Multiphysics 中编辑或修改导出的模型?

如果从 Simpleware 导出体积网格模型到 COMSOL Multiphysics,则导入的是网格而不是几何。因此,导入 COMSOL 之后无法对模型做进一步的修改。任何对模型/网格的修改都需要在 Simpleware FE 中重新生成并导出。如果在 Simpleware 中导出的是掩膜的 STL 或 NURBS,则可以在 COMSOL 中将其作为几何导入。从 COMSOL v5.0 起,有选项可以将导入的网格转换为几何,此选项可能不适用于基于图像模型中的复杂拓扑。因此,建议直接在 COMSOL 中使用 Simpleware 生成的专用网格模型。

Simpleware 表面工具

什么是挠度(mm)参数?

IGES 文件是基于参数化/NURBS 的文件,需要进行三角化,挠度(Deflection)表示此转换过程允许的最大误差。较小的数值可以提供更精确的三角化对象,但会有更多的三角形。建议尝试越来越小的数值,直到可以接受结果(使用 Preview 衡量,请注意每次更改挠度值后都需要刷新预览)。除了 3D 性能下降和内存使用增加外,单元数量多没有其他问题。

内存和网格尺寸

如何减少单元数量/网格密度/内存使用量?

有几种可能的方法:

  1. 在大多数情况下,+FE Free 网格生成算法将提供减小网格尺寸的最佳方法。通过将 Coarseness 滑块移动到最左侧(如 -50),将设置为最粗糙的网格划分参数。为进一步使网格粗糙,可点击 More options 手动编辑高级参数。放宽 target error(如增大至像素的 50%),有助于网格生成算法使用更大的单元。
  2. 如果只有模型的特定区域很重要,可以通过 Mesh refinement 选择感兴趣区域,Refinement type 设置为 Volume,对该区域进行网格细化。
  3. 增大 Target minimum element edge length 的数值。
  4. 使用 +FE Grid(对于更复杂的结构)时,可以对边界和内部单元进行自适应网格划分,并且可以将 Target maximum grid size 设置为比较大的值,如 32 × 32 × 32。可能会在网格生成过程中使用更多内存,但应该会减少最终单元数量。当表面与体积比值相对较低时,该方法非常有用。
  5. 减少内存使用的一种方法是对数据进行降采样,使用 Image processing — Transforms — Resample 工具,为背景图像和掩膜选择 Linear interpolation。该方法应谨慎使用,对于超高分辨率模型非常有用。通常,最好是在所有方向上以相同的分辨率重新采样。例如,对于平面分辨率为 0.5 mm × 0.5 mm 且切片间距为 3 mm 的数据,最好选择 0.5 mm × 0.5 mm × 0.5 mm 或 1 mm × 1 mm × 1 mm。最好尽可能多地降低采样,但同时要确保能够保留感兴趣的特征,必须要根据模型中能够识别到的最小特征尺寸选择理想间距。

参考