Open michaelfekadu opened 4 months ago
Hi!
flywire.get_skeletons
fetches skeletons that we precomputed for neurons that were already proofread at materialization 783 or 630 neurons, i.e. neurons that are part of the two public releases.
The root Id 720575940507344965
is not proofread and at closer inspection appears to be just a tiny fragment:
>>> flywire.is_proofread([720575940627895056, 720575940507344965], materialization=783)
array([ True, False])
The other ID (720575940627895056
) is proofread and should therefore return a skeleton:
>>> flywire.get_skeletons(720575940627895056, dataset=783)
type navis.TreeNeuron
name skeleton
id 720575940627895056
n_nodes 1006
n_connectors None
n_branches 123
n_leafs 135
cable_length 540541.1875
soma [309, 311, 313, 314]
units 1 nanometer
dtype: object
flywire.get_skeletons
does not check if a skeleton should exist for given IDs but you can use the omit_failures
parameter to make it so you get the skeletons that exist and ignore those that don't without throwing an exception. On my end, I can try to make the error message more informative.
On a side note: you can always skeletonize neurons on-the-fly (pun intended) yourself using either flywire.get_l2_skeletons
(coarser) or flywire.skeletonize_neuron
/flywire.skeletonize_neuron_parallel
. We used the latter two plus some post processing to generate the precomputed 630/783 skeletons.
Hi!
First of all, thank you for creating this library. It has been extremely useful, and the documentation is excellent.
I am encountering an issue with the
get_skeletons
function. According to the documentation, this function should work for proofread root IDs 630 and 783. To ensure the neuron IDs are up-to-date, I use theis_latest_root
function. Here is the relevant code snippet:This returns:
Based on this, I assumed I could use the get_skeletons function for both IDs. However, while the function works for the first ID, it fails for the second one. Here is the code and error message:
Btw I retrieved both IDs from the Codex Flywire website.
Does anyone know why this might be happening? Is it possible that the
get_skeletons
function is accessing an outdated dataset?Thank you in advance for your help!