3D Flex Mesh Prep issue with seg file region_id

I am running into an error using a segmented map. I’ve used the segmentation tool in ChimeraX several times in the past for Flex Train jobs without issue, but this time is a “Key error” with a segmented volume associated with smaller region_ids. I don’t know how small the number must be for the error to be triggered but when ChimeraX assigns region_ids with values 64, 62, 122, or 274, this error is triggered:

Traceback (most recent call last):
File “cryosparc_master/cryosparc_compute/run.py”, line 95, in cryosparc_master.cryosparc_compute.run.main
File “cryosparc_master/cryosparc_compute/jobs/flex_refine/run_meshprep.py”, line 131, in cryosparc_master.cryosparc_compute.jobs.flex_refine.run_meshprep.run
File “/uufs/chpc.utah.edu/common/home/cryoem-group1/cryosparc03sa/cryosparc/cryosparc_worker/cryosparc_compute/jobs/flex_refine/segfile.py”, line 41, in read_seg
cchilds = rid_to_children[root].copy() # children to expand
KeyError: 274

In this case the region_id is 274.

I can group regions to result in a larger number in the 300-500 value range, but would prefer to have more granularity. Is this a feature that was implemented on purpose to discourage “small” segments or can this be changed in a future version?

Hi @jenchem — I’ll try to help you out with this. I’ve just sent you a DM asking for more information. Thanks!

Hi @jenchem, sorry for the delayed reply! We have found the bug causing this issue and plan to fix it in a future release.

In the meantime, you can work around this issue by joining (in ChimeraX, using Segger) the offending segment to another nearby segment and using the new number for the joined group.

I hope that helps!

1 Like

Hi @jenchem! CryoSPARC version 4.5 fixes this bug — hopefully you should not encounter this issue again!

2 Likes