-
Notifications
You must be signed in to change notification settings - Fork 171
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
findFeaturesSegment.py TypeError #5489
Comments
Just discovered that although image M105960889RE network generation encountered tuple errors (described above) and did not get passed to findfeatures, the image it overlaps with, M1342772956LE, overlaps many other images/segments and because of that, M105960889RE gets tied to it via M1342772956LE_Network. (This explains why when I tested these updates all 18 images in my test set were included in a merged network of the successful runs and everything seemed ok to me at a larger scale (quick check in qnet). But there is still obviously a problem to address because if I'm just working with two images I don't get a network in the end, just the tuple error.) In trying to understand why M105960889RE works under the M1342772956LE Network run, I found that network had some errors as well despite getting a final network in the end. The following is an error produced by the findfeatures application (not a script error):
The MATCH cube, the FROMLIST file and the cubes in the FROMLIST file all exist, so this is a rather confusing message from findfeatures. After further inspection I understand the problem - none of the segments in the fromlist overlap the match file being worked on. Since I normally don't pass findfeatures data that do no overlap, I was not familiar with this particular error. So although this isn't a script error, I'm wondering why findFeaturesSegment passed that data to the findfeatures program in the first place - I thought the preceding steps of findimageoverlaps and overlapstats would prevent this from happening. Best I can tell from looking at the log file, overlapstats does record a number of segments as NoOverlap in the output stats information. But it's honestly difficult for me to tell what all specifically is being worked because the call to overlapstats gets temporary files passed to it that are removed after everything runs. I'm inferring what's going on because all NoOverlap overlapstats results precede the findfeatures failure. See my scratch directory LRONAC/FFSeg/SmallRegion/FindFeatures_I8.2.0RC1/M1342772956LE_Network/ or my user work area /Isis3Tests/FFSegmentScript/I8.2.0RC1/M1342772956LE_Network/ for data associated with this discussion. |
The PR was updated with fixes and performance improvements. Let me know if that one works for you. |
Tuple error is gone and the two images that overlap now get points. Additionally, findfeatures is only called one time since only segment 1 for each image overlaps. Updates addressed via #5540 are also being handled properly. Yay!
This error still exists even though a valid final network is generated. Thanks to the new WORKDIR parameter, I can see that segments that do not overlap the match image segment being evaluated are being passed into the findfeatures fromlist even though shouldn't be. This is odd since since in the case of M105960889RE_Network/ that issue is being handled properly. Point 2 needs more investigation and a new post if necessary. I think this post can ultimately be closed since the updates are addressing the original issue and others directly related to it. |
ISIS version(s) affected: isis8.2.1-RC1
Description
The following error is generated for images where only one segment in each overlaps (there are two existing segments for each):
Footprints (inspection of segmented cubes in qview show that segment1 for each image overlaps)
How to reproduce
This attempted network is under the scratch area at LRONAC/FFSeg/SmallRegion/FindFeatures_I8.2.0RC1/M105960889RE_Network/ and the command for running the script is in M105960889RE_matcher_ff.cmd. All images and segments are in this same directory.
The file LOG_neb1_46967131-4.out contains the standard output with error (near the end)
Contents of scratch Network directory can also now be found under my users work area at /Isis3Tests/FFSegmentScript/I8.2.0RC1/M105960889RE_Network/. Note that commands and lists will point to scratch though.
Additional context
Discovered this when running updated script on a larger set of data than what was used in #5416. Was likely there when I tested the changes, but was focussed on the fix for that issue and missed this error. Of the 18 images tested in this set, 3 of them encounter this problem where only two images overlap and only for one segment. It's a fairly common occurrence.
Have also determined that the tuple error has always been there, I just didn't notice the error in past LOGs until this isolated case failed.
The text was updated successfully, but these errors were encountered: