我有一个用于平均3D矩阵的scilab程序,它工作正常。但是,不是将平均值只是一个设定值。我希望它是一定的质量总和(sum(n * n * n)
K = 100
N = 5
A = 1
mid = floor(N/2)
volume = rand(K, K, K)
cubeCount = floor( K / N )
for x=0:cubeCount1
for y=0:cubeCount1
for z=0:cubeCount1
// Get a cube of NxNxN size
cube = 20;
//Calculate the average value of the voxels in the cube
avg = sum( cube ) / (N * N * N);
// Assign it to the center voxel
volume( N*x+mid+1, N*y+mid+1, N*z+mid+1 ) = avg
end
end
end
disp( volume )
如果有人对此有简单的解决方案,请告诉我。
答案 0 :(得分:1)
你似乎只是说你自己。您需要做的就是将立方体更改为相等。
cube = while sum(A * A * A) < 10,
A=A+1;
这将为您提供正确的体素质量总和。