HOWTO: 如何利用Avizo或Amira计算孔隙率(Porosity)
在做三维可视化数据处理过程中,我们经常要提取的一个基本信息就是孔隙率。在今天的文章中我们要分享两个信息,一个是如何利用Avizo或Amira进行孔隙率计算;另外是关于Avizo 8.0中孔隙率计算异常的问题应对方法。
Avizo或Amira中如何计算孔隙率
孔隙率(Porosity),简单理解就是材料中孔隙体积与材料在自然状态下总体积的百分比。在Avizo和Amira中是利用Volume Fraction计算模块来提取孔隙率信息,基本步骤如下:
1. 分割获取孔隙(Foam示例中我只是简单利用交互阈值分割方式获取了孔隙,如下图):

一般这里我会将获得的孔隙重命名为Pores。
2. 获取材料整体分割(类似步骤1,选择全部阈值范围,就可以获得整个材料的分割,不过注意,这里材料正好是正方形,如果是不规则材料,要考虑如何获取材料整体形态)

一般这里我会将分割获得的材料重命名为Mark。
3. 利用Volume Fraction进行孔隙率计算。
对Pores数据应用Volume Fraction,默认第一个参数就是Pores,第二个Input Image Mask我们选择Mark,第三个参数Interpretation选择3D(如果选择XY,我们可以获得面孔率),应用之后获取的结果点击Show,在Tables中展示出获得的孔隙率,如下图:

Avizo 8.0计算孔隙率异常的问题
使用Avizo 8.0的用户要注意,按照前面的方法计算孔隙率很可能是错误的,Avizo厂商在8.1的Release Notes中描述了这个问题“ 23292 Volume Fraction (Avizo Fire)
Volume Fraction could give incorrect values in some case when used with a mask.”
也就是说这个问题在8.1之后版本已经修正,所以这也提醒Avizo或Amira用户,软件及时更新非常重要。
那这里还提供一个临时方案,参考前边完成孔隙和材料整体的分割,然后利用Material Statistics对材料进行统计计算,获取的计算结果表中提取Volume列对应材料的体积数,然后相除,也能计算获得孔隙率。
HOWTO: 如何利用Avizo或Amira计算孔隙率(Porosity)的更多相关文章
- 利用编辑距离(Edit Distance)计算两个字符串的相似度
利用编辑距离(Edit Distance)计算两个字符串的相似度 编辑距离(Edit Distance),又称Levenshtein距离,是指两个字串之间,由一个转成另一个所需的最少编辑操作次数.许可 ...
- MeteoInfoLab脚本示例:利用比湿、温度计算相对湿度
利用比湿和温度计算相对湿度的函数是qair2rh(qair, temp, press=1013.25),三个参数分别是比湿.温度和气压,气压有一个缺省值1013.25,因此计算地面相对湿度的时候也可以 ...
- 利用iOS8新特性计算cell的实际高度
在计算cell的实际高度是 我们一般是通过计算frame 拿到最底部一个控件的最大Y值从而的到cell 的高度 算来算去 比较麻烦 其实,iOS8已经提供了直接通过Cell高度自适应的方法了,根 ...
- Android GIS开发系列-- 入门季(7) 利用GeometryEngine坐标转换、计算距离与面积等
GeometryEngine是Arcgis的重要工具类,利用此工具类,可以计算地图上的距离.面积,将点.线.面转化为Json数据,将Json转化为点线面,坐标转换作用非常强大. 一.坐标转化 将用到方 ...
- 利用sklearn进行tfidf计算
转自:http://blog.csdn.net/liuxuejiang158blog/article/details/31360765?utm_source=tuicool 在文本处理中,TF-IDF ...
- 利用JS写一个计算平方的网页
<!-- 计算一个数的平方并显示出来 --> <!DOCTYPE html> <html> <head> <meta charset=" ...
- 利用MySQL游标进行计算排名
SELECT a.id, a.nick_name, a.member_account, a.integral, () AS tRank #计算行号 FROM tzqc_raw_data AS a, ( ...
- 利用同步辅助类CountDownLatch计算多线程的运行时间
一.CountDownLatch jdk提供的一个同步辅助类,在完成一组在在其他线程中执行的操作前,允许一个或者多个其他的线程等待,通过调用 await() 方法阻塞,直到由于 countDown() ...
- 利用if else 来计算车费
static void Main(string[] args) { while (true) { double ...
随机推荐
- UOJ#207. 共价大爷游长沙 LCT
原文链接https://www.cnblogs.com/zhouzhendong/p/UOJ207.html 题解 第一次听说 LCT 还可以维护子树信息. 首先对于每一条路径 rand 一个值,分别 ...
- .net core cookie登录和session的 DataProtectionProvider 加入 redis
string redisConnectionString = Configuration.GetSection("Storage:Redis").GetValue<strin ...
- PAT (Basic Level) Practise - 成绩排名
1004. 成绩排名 题目链接:https://www.patest.cn/contests/pat-b-practise/1004 读入n名学生的姓名.学号.成绩,分别输出成绩最高和成绩最低学生的姓 ...
- 整合django和bootstrap框架
环境: python版本:2.7.8 django版本:1.7.1 bootstrap版本:3.3.0 首先github上面有两个开源的项目用来整合django和bootstrap. https:// ...
- 找bug hhh
http://oj.acm.zstu.edu.cn/JudgeOnline/problem.php?id=4434 没有用队列,疯狂找不到bug,后来发现很简单的判断时==n和m了,本来心花怒放,测试 ...
- ACM-ICPC Beijing 2016 Genius ACM(倍增+二分)
描述 给定一个整数 M,对于任意一个整数集合 S,定义“校验值”如下: 从集合 S 中取出 M 对数(即 2∗M 个数,不能重复使用集合中的数,如果 S 中的整 数不够 M 对,则取到不能取为止),使 ...
- vue-cli@3.x初体验之前篇-回顾vue-cli@2.x创建项目的流程
模拟实际工作中的操作,假如新开启了一个vue项目,可以先看看上篇博文中的git操作,新建空仓库vue-demo,并拉取到本地,创建本地dev分支后 1. 全局安装vue-cli yarn global ...
- JAVAScript:前端模块化开发
目录 一:前端模块化概要 1.1.模块化概要 1.2.函数封装 1.3.对象封装 1.4.立即执行函数表达式(IIFE) 1.5.模块化规范 1.5.1.CommonJS 1.5.2.AMD((Asy ...
- Linux下 nfs部署
一. 挂载一个硬盘来分享 二. 更改配置文件 三. 在配置文件中设置属性 四. 另一台机器 配置的虚拟机,将nfs关闭 配置文件也删除内容 挂载 挂载到部署nfs的极其 之 ...
- Codeforces.1088D.Ehab and another another xor problem(交互 思路)
题目链接 边颓边写了半上午A掉啦233(本来就是被无数人过掉的好吗→_→) 首先可以\(Query\)一次得到\(a,b\)的大小关系(\(c=d=0\)). 然后发现我们是可以逐位比较出\(a,b\ ...