Closed gschramm closed 1 month ago
Thanks @gschramm. The partitioner
code is somewhat experimental, and participants would likely have to modify it for best performance. staggered
is definitely better than sequential
, but I think that even then, the order of the subsets isn't great (i.e. just "sequential" really as well. The Herman-Meyer order would make much more sense for an ordered subset algorithm. I don't this is in the SIRF-Contrib version, but there's one in https://github.com/TomographicImaging/CIL/blob/3a164f1ff685d7e3689c123021361243511b66fd/Wrappers/Python/cil/optimisation/utilities/sampler.py#L551
Thanks Kris!
Update1: The difference disappears if I use 1 instead of 7 subsets, so I guess the issue is related to the definition of the subsets. What is the easiest way to see which views are involved in a subset acquisition model / subset obj_func?
Update2: The issue is related to the
mode
of thepartitioner
. If set tostaggered
the difference also vanished for more than 1 subsets. Might be better to change the partioner mode in themain_BRSEM.py
here. Inmain_ISTA.py
it is already usesstaggered
.Hi all,
to test if setup the (data fidelity) subset objective functions correctly, I was comparing the multiplicative OSEM update from `main_OSEM.py
$$ x^+ = \frac{x}{A^T 1} A^T \frac{y}{Ax + s} $$
` with my additive OSEM update using the subset objective function gradient (see below).
$$ x^+ = x + \frac{x}{A^T 1} \nabla_x logL(x) $$
Right now, I don't understand why the two give different updates. The image below shows: