6.0-RC5 的结果很糟糕。 这是什么时候的事儿?
6.0-RC5:
https://user-images.githubusercontent.com/1693349/109743941-bd834000-7b8e-11eb-8330-95b732494178.mp4
5.5:
https://user-images.githubusercontent.com/1693349/109743954-c2e08a80-7b8e-11eb-8a57-30a099a3651b.mp4
比较方差图:
6.0-RC5:
5.5:
我突然想到椭球数据集已经改变。 有人可以解释“v0”和“v1”之间的区别吗? ShapeWorks 5.5 在当前的椭球数据集/参数上没有表现得更好。 @sheryjoe @jadie1 @iyerkrithika21
@akenmorris "v1" 是使用 ShapeCohortGenPackage 生成的未经修饰的椭球数据集。 它包括以下所有变化模式和世代选项:
而旧数据集只有一种变化模式,我想。 @jadie1 ,如果我对 v0 有错误,请纠正我。
@jadie1我们之前同意我们将提供两个椭球数据集,一个对齐(类似于 v0)和一个未对齐(以演示修饰)。 我认为 v1 是后者。
是的 ellipsoid-v1 就像@iyerkrithika21所描述的那样,所以它应该有不止一种变化模式。 ellipsoid-v0 是未修饰版本与修饰版本相同的原始数据。
我们还添加了 ellipsoid_aligned-v1,它是使用群组生成代码生成的,就像 ellipsoid-v1 一样,但它已经对齐(中心、方向和图像大小相同)。 ellipsoid-v0 和 ellipsoid_aligned-v1 之间的区别在于 ellipsoid-v0 只有一种变化模式,而 ellipsoid_aligned-v1 沿所有半径变化。
是的 ellipsoid-v1 就像@iyerkrithika21所描述的那样,所以它应该有不止一种变化模式。 ellipsoid-v0 是未修饰版本与修饰版本相同的原始数据。
为什么 v1 应该有更多的模式? 此数据的用例应排除与未对齐相关的模式。
我们还添加了 ellipsoid_aligned-v1,它是使用群组生成代码生成的,就像 ellipsoid-v1 一样,但它已经对齐(中心、方向和图像大小相同)。 ellipsoid-v0 和 ellipsoid_aligned-v1 之间的区别在于 ellipsoid-v0 只有一种变化模式,而 ellipsoid_aligned-v1 沿所有半径变化。
这变得有点令人困惑。 我们是否需要保留两个对齐的椭球数据,一个具有一种模式,另一种具有三种模式? 我认为对齐应该只有一种模式(选择一个半径进行变化),因为这应该是最简单的优化玩具示例。
无论变异模式的对齐方式或数量如何,这组参数都显示出较差的对应性和采样性:
是的 ellipsoid-v1 就像@iyerkrithika21所描述的那样,所以它应该有不止一种变化模式。 ellipsoid-v0 是未修饰版本与修饰版本相同的原始数据。
为什么 v1 应该有更多的模式? 此数据的用例应排除与未对齐相关的模式。
因为半径沿所有三个轴都不同,所以应该有更多的变化模式,对吗?
我们还添加了 ellipsoid_aligned-v1,它是使用群组生成代码生成的,就像 ellipsoid-v1 一样,但它已经对齐(中心、方向和图像大小相同)。 ellipsoid-v0 和 ellipsoid_aligned-v1 之间的区别在于 ellipsoid-v0 只有一种变化模式,而 ellipsoid_aligned-v1 沿所有半径变化。
这变得有点令人困惑。 我们是否需要保留两个对齐的椭球数据,一个具有一种模式,另一种具有三种模式? 我认为对齐应该只有一种模式(选择一个半径进行变化),因为这应该是最简单的优化玩具示例。
我可以删除 ellipsoid_aligned-v1 或 ellipsoid-v0。 我们没有同时使用两者的用例,我只是为使用旧版 ShapeWorks 的用户留下了 ellpsoid-v0。 这是创建 ellpsoid_aligned-v1 的最初要求:“我们可以通过禁用所有转换,使用与 v1 相同的代码重新生成 v0?这样我们就能保持一致性,并同时拥有分割和漂亮的网格来测试固定域和切割平面。”
我不确定为什么模型的对应关系很差。 我猜参数需要重新调整? 我应该尝试使用仅沿一个半径变化的新椭球吗?
装修也有问题:
请注意,椭球 9 甚至不与其他椭球居中。
这是椭圆体示例或图像库中的问题吗? @cchriste @archanasri @jadie1 @iyerkrithika21
这就是经过修饰的椭球在 Windows 和 Linux 中寻找我的方式。
Ellipsoid 9 似乎以我为中心。
看起来也以我为中心 - 只需在 release_v6.0 分支上再次运行它
不过,对应点对我来说也不是很好,也许它需要更多平滑? 对我来说,它看起来有四种变化模式——第一种是尺寸,接下来的三种是 x、y 和 z 方向的半径。
@jadie1 , @iyerkrithika21 ,我只是在不同的 Mac 上尝试过,全新安装的 shape 工作 6.0 RC5,新的 conda 安装,一切。 查看样本的对齐方式(甚至不需要查看 DT):
https://user-images.githubusercontent.com/1693349/110035220-9c3e6300-7cf8-11eb-9cd0-9162212dd61c.mp4
哦,哈,@ jadie1,@ iyerkrithika21,你必须关闭center
在Studio复选框,否则将自动居中他们为你进行显示。 请在偏心的情况下再次检查。
哦,是的,我现在明白了。 我刚刚运行了使用相同数据的 Getting-started-with-grooming-segmentations.ipynb,在我看来它有同样的问题,但还不错。 在此处查看最后一个视频: http :
我想我们可以逐行浏览用例和笔记本,看看修饰的不同之处......
从头开始,笔记本和用例距离变换具有相同的中心/对齐问题。 与笔记本的距离变换更平滑。
@akenmorris您是否认为偏离中心可能只是因为数据集(大小、方向、半径等)存在大量变化?
他们正在与ICP保持一致?
是的,参考是 ellipsoid_14
那么你认为它最终只会沿着一侧对齐椭圆体 9 吗?
我不确定我们应该如何解决这个问题。 ICP之后,应该申请重心运算吗?
@sheryjoe 有什么想法吗? 将此转换作为形状模型的一部分来捕获似乎是错误的。
@akenmorris哪个翻译? 我在视频中看不到这一点。 您是否对质心对齐步骤进行了质量控制? 此外,在某些情况下,ICP 迭代次数可能很重要。
椭球不居中,因此形状模型必须捕获平移。
椭球不居中,因此形状模型必须捕获平移。
COM 应该将它们居中。
COM 应该将它们居中。
我同意,但是 ICP 是不是将它们偏心以匹配一侧?
COM 应该将它们居中。
我同意,但是 ICP 是不是将它们偏心以匹配一侧?
ICP 的影响在 COM 之后应该是最小的,除非参考不是真正的中间形状。
这里是什么状态? 有人在做这方面的工作吗? 我认为有两个独立的问题,修饰和优化参数。
@jadie1 @iyerkrithika21 有什么更新吗?
当我在 Studio 中整理分段时,DT 看起来像这样:
所以看起来ICP可能会在梳理过程中引起一些问题。
正确的。 Ellipsoid 9 居中之前:
""" Apply rigid alignment """
ref = FindReferenceImage(comFiles)
alignedFiles = applyRigidAlignment(groomDir + "aligned/segmentations", ref, comFiles)
之后,它是去中心化的:
@akenmorris当我尝试在没有 ICP 的情况下优化 Studio 中的椭球时,我收到此消息。
我尝试了 3 种不同级别的填充 - 10、30、50。 但这些都没有帮助。
而且在 python 用例中,我尝试跳过rigidAlignment步骤,但出现了这个边界框错误。
############## Cropping ##############
Traceback (most recent call last):
File "RunUseCase.py", line 94, in <module>
module.Run_Pipeline(args)
File "/home/sci/iyerkrithika/ShapeWorks/Examples/Python/ellipsoid.py", line 96, in Run_Pipeline
croppedFiles = applyCropping(groomDir + "cropped/segmentations", comFiles, comFiles)
File "/home/sci/iyerkrithika/ShapeWorks/Examples/Python/GroomUtils.py", line 216, in applyCropping
region = ImageUtils.boundingBox(bbDataList)
ValueError: Image sizes do not match (Output/ellipsoid/groomed/com_aligned/segmentations/ellipsoid_01.isores.center.com.nrrd)
这个错误没有意义,因为ImageUtils.boundingBox()
应该能够给出最大的边界框。
@jadie1您认为这可能与我们在股骨用例中看到的问题有关吗?
@iyerkrithika21 ,你能告诉我更多关于你如何在工作室运行这些吗? 如果我必须根据角落中的文件名进行猜测,您可能导入了二进制分段,跳过了修饰并单击了运行? 它们需要是距离变换。
@iyerkrithika21 ,你能告诉我更多关于你如何在工作室运行这些吗? 如果我必须根据角落中的文件名进行猜测,您可能导入了二进制分段,跳过了修饰并单击了运行? 它们需要是距离变换。
我导入了分段,在工作室里跑了新郎。 然后点击优化。
将通过问题 #1133 修复发布
@iyerkrithika21 ,我为您所看到的内容添加了一个问题: