You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
ROI browser painted-domain coverage gap across VFB templates
Summary
The painted-domain in_register_with.index property — the curated marker
the ROI browser, VFBquery.get_template_roi_tree, and the WLZIIP 3D viewer's
hover-pick all depend on — is incomplete on the majority of VFB templates.
Only two templates (adult brain Ito2014, Adult Head McKellar2020) are fully
curated; the rest range from ~1% coverage down to 0%. The user-facing
consequence is that the ROI tree under each affected template silently
under-represents the painted-region data that the volume files on disk
already support.
This is a data / curation issue, not a code one. Filing as a tracker so it
can be scheduled.
Per-template coverage today (live against pdb)
short_form
label
total channels
with ie.index
coverage
VFB_00030786
adult brain Ito2014
75
75
100% ✓
VFB_00110000
Adult Head McKellar2020
18
18
100% ✓
VFB_00049000
L3 CNS Wood2018
21,451
255
1.18%
VFB_00100000
adult VNS Court2018
3,194
22
0.69%
VFB_00120000
Adult T1 Leg (Kuan2020)
754
4
0.5%
VFB_00101384
JRC_FlyEM_Hemibrain
56,198
97
0.17%
VFB_00017894
adult brain JFRC2
82,201
58
0.07%
VFB_00200000
JRC2018UnisexVNC
158,185
21
0.013%
VFB_00101567
JRC2018Unisex (adult brain)
749,172
46
0.006%
VFB_00050000
L1 larval CNS ssTEM (Cardona/Janelia)
6,304
0
0% ✗
Note: JRC2018Unisex and JRC2018UnisexVNC carry hundreds of thousands of in_register_with channels because every neuron Individual aligned to those
templates contributes a channel — most of those will be expression-pattern /
single-neuron channels rather than ROI-painted regions, so the raw fraction
will always be small. The story isn't that 0.006% is the right target —
it's that the indexed set is so small that the ROI tree under these
templates renders only the named neuropils and misses the
sub-region / sub-domain painted layer the rest of the volume data supports.
Volume data exists. Per-individual painted-domain folders all carry
their own volume.wlz masks. Where a master labelled volume exists
(Adult T1 Leg's Leg40-poisson_simple_expanded.nrrd carries ~256 distinct
uint8 stamps in continuous ranges), it implies the painted-region geometry
has been authored at some point and isn't being reflected in pdb.
The consumer code is filtering correctly.get_template_roi_tree
applies WHERE exists(ie.index) so that the ROI tree shows only the
curator-blessed painted set. That's the right behaviour for the brain
templates where every Individual that aligns to JRC2018Unisex would
otherwise flood the tree.
The fully-curated templates work. Ito2014 and McKellar2020 demonstrate
the data shape the rest of the templates need to reach.
Suggested scope of the curation pass
Per-template index assignment for each template's painted-domain in_register_with channels. Reference shape: Ito2014 / McKellar2020.
Prioritisation by user impact and data readiness:
High — JRC2018Unisex / JRC2018UnisexVNC (highest user traffic);
scoping note: these need a curator decision on what counts as a
painted-domain channel vs. a neuron / expression-pattern channel,
since the raw in_register_with count is dominated by the latter.
Medium — Adult VNS Court2018, JRC_FlyEM_Hemibrain, JFRC2,
L3 CNS Wood2018.
Verify and decide — L1 larval CNS at 0% coverage: should painted
domains exist here at all? If yes, why has no channel ever been
indexed?
Write-back tooling. Once curated stamp-to-FBbt mappings are in hand,
a single Cypher MATCH (...)-[ie:in_register_with]-(...) SET ie.index = [N] keyed on the channel short_form lands the property on the right
relationships. Happy to draft that script per-template once mappings
are ready.
Related code-side prep (already ready, not pushed yet)
VFBquery v1.14.6 (run.sh at ~/Documents/Claude/Projects/Claude CoWork/projects/vfbquery-v1.14.6-roi-tree-walk-expansion/)
expands the relationship walk used by get_template_roi_tree to include has_sensory_dendrite_in | fasciculates_with | attached_to_part_of | sends_synaptic_output_to_cell alongside the existing SUBCLASSOF | part_of | innervates, so that as templates get curated the
tree-walking step can actually reach the painted leaves (sensory neurons,
motor neurons, muscle cells, nerves) from their anatomy root. This patch
is independent of the curation work and can ship at any time.
Related downstream
The WLZIIP 3D viewer at fcgi/wlziipsrv.fcgi?…&obj=Wlz-grey-value
reports a grey value at the cursor; without the matching ie.index rows
in pdb, the back-end can't resolve that grey value back to an FBbt class
for the hover tooltip.
get_template_roi_tree is the canonical consumer of ie.index today;
any future ROI-browser / painted-domain consumer in v2 will hit the same
filter and the same gap.
How this was discovered
Started with a user-reported missing painted domains on the Adult T1 Leg
template's ROI browser. Live audit on pdb traced the symptom to the ie.index filter; widening the audit across templates surfaced the broader
gap reported above.
ROI browser painted-domain coverage gap across VFB templates
Summary
The painted-domain
in_register_with.indexproperty — the curated markerthe ROI browser,
VFBquery.get_template_roi_tree, and the WLZIIP 3D viewer'shover-pick all depend on — is incomplete on the majority of VFB templates.
Only two templates (adult brain Ito2014, Adult Head McKellar2020) are fully
curated; the rest range from ~1% coverage down to 0%. The user-facing
consequence is that the ROI tree under each affected template silently
under-represents the painted-region data that the volume files on disk
already support.
This is a data / curation issue, not a code one. Filing as a tracker so it
can be scheduled.
Per-template coverage today (live against pdb)
short_formie.indexVFB_00030786VFB_00110000VFB_00049000VFB_00100000VFB_00120000VFB_00101384VFB_00017894VFB_00200000VFB_00101567VFB_00050000Note: JRC2018Unisex and JRC2018UnisexVNC carry hundreds of thousands of
in_register_withchannels because every neuron Individual aligned to thosetemplates contributes a channel — most of those will be expression-pattern /
single-neuron channels rather than ROI-painted regions, so the raw fraction
will always be small. The story isn't that 0.006% is the right target —
it's that the indexed set is so small that the ROI tree under these
templates renders only the named neuropils and misses the
sub-region / sub-domain painted layer the rest of the volume data supports.
Reproducer
Why this is a curation issue, not a code one
their own
volume.wlzmasks. Where a master labelled volume exists(Adult T1 Leg's
Leg40-poisson_simple_expanded.nrrdcarries ~256 distinctuint8 stamps in continuous ranges), it implies the painted-region geometry
has been authored at some point and isn't being reflected in pdb.
get_template_roi_treeapplies
WHERE exists(ie.index)so that the ROI tree shows only thecurator-blessed painted set. That's the right behaviour for the brain
templates where every Individual that aligns to JRC2018Unisex would
otherwise flood the tree.
the data shape the rest of the templates need to reach.
Suggested scope of the curation pass
in_register_withchannels. Reference shape: Ito2014 / McKellar2020.scoping note: these need a curator decision on what counts as a
painted-domain channel vs. a neuron / expression-pattern channel,
since the raw
in_register_withcount is dominated by the latter.Adult T1 Leg (VFB_00120000) painted-domain
ie.indexmissing on 750 of 754 channels #406. Worksheet attached for ready-to-go curation.L3 CNS Wood2018.
domains exist here at all? If yes, why has no channel ever been
indexed?
a single Cypher
MATCH (...)-[ie:in_register_with]-(...) SET ie.index = [N]keyed on the channelshort_formlands the property on the rightrelationships. Happy to draft that script per-template once mappings
are ready.
Related code-side prep (already ready, not pushed yet)
VFBquery v1.14.6(run.sh at~/Documents/Claude/Projects/Claude CoWork/projects/vfbquery-v1.14.6-roi-tree-walk-expansion/)expands the relationship walk used by
get_template_roi_treeto includehas_sensory_dendrite_in | fasciculates_with | attached_to_part_of | sends_synaptic_output_to_cellalongside the existingSUBCLASSOF | part_of | innervates, so that as templates get curated thetree-walking step can actually reach the painted leaves (sensory neurons,
motor neurons, muscle cells, nerves) from their anatomy root. This patch
is independent of the curation work and can ship at any time.
Related downstream
fcgi/wlziipsrv.fcgi?…&obj=Wlz-grey-valuereports a grey value at the cursor; without the matching
ie.indexrowsin pdb, the back-end can't resolve that grey value back to an FBbt class
for the hover tooltip.
get_template_roi_treeis the canonical consumer ofie.indextoday;any future ROI-browser / painted-domain consumer in v2 will hit the same
filter and the same gap.
How this was discovered
Started with a user-reported missing painted domains on the Adult T1 Leg
template's ROI browser. Live audit on pdb traced the symptom to the
ie.indexfilter; widening the audit across templates surfaced the broadergap reported above.