FZJ-INM1-BDA / siibra-explorer

Apache License 2.0
22 stars 4 forks source link

error during point assignment in JBA 3.1 (same coordinate works with JBA 3.0.3) #1468

Open SBludau opened 3 months ago

SBludau commented 3 months ago

Coordinate 32mm, -28mm, -8mm gives CA3 in JBA 3.0.3, which is correct. After a switch to JBA 3.1 the position seems to be correct as well, so the crosshair is located at the correct position, but the assignment produces an error.

JBA 3.0.3 Output image

JBA 3.1 Output image

@ Xiao: could you provide an estimation of the timeframe required to address this issue. The assignment is needed for an update to a publication that is currently in its final stages. (However, I want to emphasize that there is no immediate urgency, as the lead author is on vacation for 2 weeks ;-) )

xgui3783 commented 3 months ago

TLDR: siibra-python is too memory hungry. next version of siibra should (hopefully) fix this issue.

As it stands, the point assignment will often fail (depending on if other users have used point assignment on other parcellations etc)

Please see below the same point assigned (hopefully correctly) and the zip file of the assignment

Screenshot 2024-07-26 111049 pointassignment.zip

SBludau commented 2 months ago

Now, the point assignment shows the value of the labeled map.

We recently used the point assignment with siibra_python for a publication and a dissertation. To be honest, we are a bit concerned that the values we are getting might not be "stable." Could you please confirm that the point assignment with siibra_python and JBA 3.1 is functioning correctly and will remain reproducible?

siibra explorer screenshot

mappingvalue_JBv31_online

siibra-python output

mappingvalue_JBv31_script
xgui3783 commented 2 months ago

Apologies.

The performance of siibra-explorer/api is quite lacking when it comes to memory hungry tasks. We are in the process of remedying it in the coming version.

~I have for now freed up some resources, and point assignment can be performed again, but the result is somewhat worrying~:

(screenshot removed and full assignment removed)

~@SBludau do you have the full output and/or do you know with version of siibra-python you were using?~

~@AhmetNSimsek would you know the discrepency? (siibra-api uses siibra-python v0.4a80)~

edit: apologies for the previous comment. I misunderstood the assignment. The screenshot and previous attachment refer to the assignment of julich brain 3.0.3, not 3.1.

at the moment, this operation cannot be carried out on the viewer, unfortunately. we will endeavor to make it available as soon as possible. (sparse index is not available, so it appears that all volumes are loaded in memory, which causes OOM, and crashes the runner.)

In a more powerful machine, the assignment can be done. But worryingly, with different ressult.

on 0.4a80: https://github.com/FZJ-INM1-BDA/iav-dep-test/actions/runs/10440230365/job/28909876225#step:5:540

                               region  map value
0                 Area PGp (IPL) left   0.001438
1                 Area PGa (IPL) left   0.543131
2                 Area PFm (IPL) left   0.383613
3                  Area PF (IPL) left   0.071818
4  Temporal-to-Parietal (GapMap) left   0.000193

on 1.0a8 and beyond https://github.com/FZJ-INM1-BDA/iav-dep-test/actions/runs/10440230365/job/28909876028#step:5:537

                               region  map value
0             Area TPJ (STG,SMG) left        0.0
1                 Area PGp (IPL) left   0.008563
2                 Area PGa (IPL) left   0.556611
3                 Area PFm (IPL) left   0.384303
4                  Area PF (IPL) left   0.008503
5  Temporal-to-Parietal (GapMap) left   0.000295

(this matches to the result that @SBludau quoted)

ping @AhmetNSimsek

probably still worthwhile investigating the discrependency

AhmetNSimsek commented 2 months ago

This was a bug on version 1.0a08 of siibra-python and it was remedied by 1.0a09. I can provide more context @SBludau.

About assignment issues on explorer to 3.1, we have an idea. I am making a fix at the moment.

Apologies.

The performance of siibra-explorer/api is quite lacking when it comes to memory hungry tasks. We are in the process of remedying it in the coming version.

~I have for now freed up some resources, and point assignment can be performed again, but the result is somewhat worrying~:

(screenshot removed and full assignment removed)

~@SBludau do you have the full output and/or do you know with version of siibra-python you were using?~

~@AhmetNSimsek would you know the discrepency? (siibra-api uses siibra-python v0.4a80)~

edit: apologies for the previous comment. I misunderstood the assignment. The screenshot and previous attachment refer to the assignment of julich brain 3.0.3, not 3.1.

at the moment, this operation cannot be carried out on the viewer, unfortunately. we will endeavor to make it available as soon as possible. (sparse index is not available, so it appears that all volumes are loaded in memory, which causes OOM, and crashes the runner.)

In a more powerful machine, the assignment can be done. But worryingly, with different ressult.

on 0.4a80: https://github.com/FZJ-INM1-BDA/iav-dep-test/actions/runs/10440230365/job/28909876225#step:5:540

                               region  map value
0                 Area PGp (IPL) left   0.001438
1                 Area PGa (IPL) left   0.543131
2                 Area PFm (IPL) left   0.383613
3                  Area PF (IPL) left   0.071818
4  Temporal-to-Parietal (GapMap) left   0.000193

on 1.0a8 and beyond https://github.com/FZJ-INM1-BDA/iav-dep-test/actions/runs/10440230365/job/28909876028#step:5:537

                               region  map value
0             Area TPJ (STG,SMG) left        0.0
1                 Area PGp (IPL) left   0.008563
2                 Area PGa (IPL) left   0.556611
3                 Area PFm (IPL) left   0.384303
4                  Area PF (IPL) left   0.008503
5  Temporal-to-Parietal (GapMap) left   0.000295

(this matches to the result that @SBludau quoted)

ping @AhmetNSimsek

probably still worthwhile investigating the discrependency