I’m testing the Deep Picker and could run the Deep Train without problems, but get this error when using the inputs for Deep Inference:
[CPU: 2.90 GB] Traceback (most recent call last):
File "/data/loewith/tafurpet/software/cryosparc/cryosparc_worker/deps/anaconda/envs/cryosparc_worker_env/lib/python3.7/site-packages/PIL/ImageFile.py", line 510, in _save
fh = fp.fileno()
AttributeError: '_idat' object has no attribute 'fileno'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "cryosparc_worker/cryosparc_compute/run.py", line 84, in cryosparc_compute.run.main
File "cryosparc_worker/cryosparc_compute/jobs/deep_picker/run_deep_picker.py", line 535, in cryosparc_compute.jobs.deep_picker.run_deep_picker.run_deep_picker_inference
File "cryosparc_worker/cryosparc_compute/jobs/deep_picker/deep_picker_utils.py", line 861, in cryosparc_compute.jobs.deep_picker.deep_picker_utils.picker_extract_worker
File "cryosparc_worker/cryosparc_compute/jobs/deep_picker/deep_picker_utils.py", line 866, in cryosparc_compute.jobs.deep_picker.deep_picker_utils.picker_extract_worker
File "cryosparc_worker/cryosparc_compute/jobs/deep_picker/deep_picker_utils.py", line 819, in cryosparc_compute.jobs.deep_picker.deep_picker_utils.picker_extract_worker._do_picking
File "/data/loewith/tafurpet/software/cryosparc/cryosparc_worker/cryosparc_compute/micrograph_plotutils.py", line 97, in showarray
PIL.Image.fromarray(newa, 'RGBA' if cmap is not None else None).save(f, fmt)
File "/data/loewith/tafurpet/software/cryosparc/cryosparc_worker/deps/anaconda/envs/cryosparc_worker_env/lib/python3.7/site-packages/PIL/Image.py", line 2151, in save
save_handler(self, fp, filename)
File "/data/loewith/tafurpet/software/cryosparc/cryosparc_worker/deps/anaconda/envs/cryosparc_worker_env/lib/python3.7/site-packages/PIL/PngImagePlugin.py", line 1339, in _save
ImageFile._save(im, _idat(fp, chunk), [("zip", (0, 0) + im.size, 0, rawmode)])
File "/data/loewith/tafurpet/software/cryosparc/cryosparc_worker/deps/anaconda/envs/cryosparc_worker_env/lib/python3.7/site-packages/PIL/ImageFile.py", line 518, in _save
e.setimage(im.im, b)
SystemError: tile cannot extend outside image
I get the exact same error when trying the deep picker out on micrographs collected on a krios in superres mode. Training works fine but the inference job fails.
Can you make sure you’re on the latest version of cryoSPARC?
Also, did you run this job with the “Show plots” parameter turned on? If you did, can you try running the job again with it turned off?
Deep picker inference is now working for me on version v3.2.0+210413 (Optional patches applied).
The particles I used were generated in kind of an unusual way, so I’m not sure if training from template picks/manual picks work.
Initial picks came from CrYOLO. I imported the particles, extracted, ran a few rounds of 2D classification, then trained on ~45 micrographs with at least 10 particles from the best looking classes in each. Training curves pasted below.
Hi @stephan, I am getting different error in deep picker inference job (cs v3.2.0+210803):
[CPU: 2.13 GB] Traceback (most recent call last): File "cryosparc_worker/cryosparc_compute/run.py", line 84, in cryosparc_compute.run.main
File "cryosparc_worker/cryosparc_compute/jobs/deep_picker/run_deep_picker.py", line 535, in cryosparc_compute.jobs.deep_picker.run_deep_picker.run_deep_picker_inference
File "cryosparc_master/cryosparc_compute/jobs/deep_picker/deep_picker_utils.py", line 875, in cryosparc_compute.jobs.deep_picker.deep_picker_utils.picker_extract_worker
File "cryosparc_master/cryosparc_compute/jobs/deep_picker/deep_picker_utils.py", line 880, in cryosparc_compute.jobs.deep_picker.deep_picker_utils.picker_extract_worker
File "cryosparc_master/cryosparc_compute/jobs/deep_picker/deep_picker_utils.py", line 792, in cryosparc_compute.jobs.deep_picker.deep_picker_utils.picker_extract_worker._do_picking
File "/mnt/ape2/cryosparc/software/cryosparc/cryosparc_worker-cu11.3.1/cryosparc_compute/micrograph_plotutils.py", line 52, in showarray
a = a.reshape(-1, a.shape[-2], a.shape[-1]) ValueError: cannot reshape array of size 0 into shape (0,1)
I do not see any parameters in ‘Compute settings’ section, the only parameters that are listed in the job are in the ‘inference settings’ section (‘Inference pixel threshold’, and ‘show plots’). Is that normal? Train job ran well.
Thanks,
Michael
It looks like the job is erroring while trying to display the micrograph. If you turn off the ‘Show plots’ parameter it should proceed past this point. When you run it again, can you paste the whole job log and also the parameters you used for both training and inference?