exposure targeting problem
Added by Thorsten Mielke almost 14 years ago
Hi,
we observe a weird problem with the hole finder routine during exposure targeting in the MSI-edge application after upgrading to leginon 2.1:
It happens frequently, that Leginon stops with the message "auto target finder failed: float division"; after that, Leginon waits for the user to check the target. As far as I understand, this happens in particular, when the ice over a hole is relatively thick and Leginon thus isn't able to target the hole accurately with the parameters given at the beginning of the session; e.g. the correlation with the ring template is very week or the blob finder doesn't find a clear peak with the given threshold. In principal, this wouldn't be a big thing, if Leginon would simply continue with the next hole as it does correctly, when it refuses a target e.g. according to the hole statistics. However, here Leginon waits forever for the user-input (.... and according to Murphy, this happens when the user has just left to go for lunch or went home at night).
Any suggestion? Regards
Thorsten
Replies (2)
RE: exposure targeting problem - Added by Anchi Cheng almost 14 years ago
Thorsten,
Sorry to hear that Leginon does this when the user has just left to go for lunch or went home at night. I've started an new issue #1176 for this.
To figure out what is wrong, could you locate an image where this happened and attached here, and give us the hole finder parameters you used so that we can repeat it?
In the mean time, you can modify line 515 in leginon/jahcfinder.py to remove the pause for user input when failing:
From:
if self.settings['user check'] or autofailed:
To:
if self.settings['user check']:
RE: exposure targeting problem - Added by Anchi Cheng almost 14 years ago
Thorsten sent me the file and the settings for the node.
In addition, he found the following error message in the text terminal:
Leginon version: 2.1
Exception in thread Thread-18:
Traceback (most recent call last):
File "/usr/local/Python-2.5.2/lib/python2.5/threading.py", line 486,
in _bootstrap_inner
self.run()
File "/usr/local/Python-2.5.2/lib/python2.5/threading.py", line 446,
in run
self._target(*self.__args, **self.__kwargs)
File
"/usr/local/Python-2.5.2/lib/python2.5/site-packages/leginon/holefinder.py",
line 262, in ice
focpoint = self.focus_on_hole(focus_points,focus_points)
File
"/usr/local/Python-2.5.2/lib/python2.5/site-packages/leginon/holefinder.py",
line 284, in focus_on_hole
cx,cy = self.centroid(all)
File
"/usr/local/Python-2.5.2/lib/python2.5/site-packages/leginon/holefinder.py",
line 279, in centroid
cx /= len(points)
ZeroDivisionError: float division
I've started an issue #1180 for the exception and it is fixed now in trunk and branch 2.1. Thorsten, please update or make the same change in your code.
The combination of the particular image and the parameters failed the ring template correlation, though. It is rather strange. A separate issue is started as #1181 and once fixed will be available for future versions.