JaneliaSciComp/bigstream

Issues with tile-wise registration when two image volumes have large offset (bigstream_prototype)

Closed this issue · 2 comments

I ran into an issue with the tile-wise feature selection step (spot) when there were large areas from two image volumes that were not overlapping. This caused the spot.py to fail, generate the following error and output no pickle files for the moving_spots:

Traceback (most recent call last):
  File “/bigstream-prototype/bigstream/spots.py”, line 148, in <module>
    pruned_spots = prune_blobs(sortedSpots, overlap, min_distance)[:,:-2].astype(np.int)
IndexError: too many indices for array: array is 1-dimensional, but 2 were indexed

Related issues that need to be fixed are:

  • Make spots robust to finding 0 spots
  • Make interpolate affines robust to all identity matrices
  • Make while loop more robust to issues with the 0 tile (or just not dependent on any specific tile)

Thank you so much!

Lots of recent changes to the master branch (dask build) of the repository - which have hopefully replaced the old spots code with newer more robust versions. After a little while of testing with the new version we'll see whether it makes sense to go back and correct any issues with the prototype version.

Closing the issue since the prototype bigstream has mostly been deprecated - e.g. the master branch (also sometimes getting called bigstream2) is not available in the EASI-FISH pipeline. @wangyuhan01 If you're still using the prototype branch I would love to do some calls together (or meet if you're in Virginia any time soon) to do some alignments together with bigstream2. Steps like the spot detection are much nicer (though still not perfect of course 😄 ) and I think given a little tinkering you will find them better to work with.