所以我有一个巨大的3D阵列,扫描一些组织。我需要能够用1替换此数组中的所有非零条目,并保持所有零相同。我怎么能这样做呢?
然后,一旦我完成了这个,我需要计算jaccard相似系数(JSC),我可以使用matlabs内置函数union()
和intersect()
,我只需要找到一种方法找到组织中的体素数量(即如果我的数组是x
,我需要找到|x|
)
感谢任何帮助!
答案 0 :(得分:0)
第一部分很简单,使用逻辑索引(example):
I = ~~I;
虽然将高于阈值的所有内容设置为1并且将所有内容设置为0以下可能更为现实:
th = 0.001; %//for example
I = I >= th;
对于基于维基百科的JSC,我假设您正在比较两个相同大小的二进制图像?让我们说I
和x
:
M11 = nnz(I & x);
M10 = nnz(I & ~x);
M01 = nnz(~I & x);
M00 = nnz(~I & ~x);
JSC = M11/(M10 + M01 + M11)