{"push_id":589515818,"size":24,"distinct_size":1,"ref":"refs/heads/use_mean_fftw","head":"603b9ba6a0f72f5892ea5e8d44b52ee92f7a01ab","before":"4144bcf57272a792ed74bce8b9af7ace3ea5355b","commits":[{"sha":"6433896ca47436cbd29ef6c8b4e219117ea022d0","author":{"email":"f62e5e898bee75be9eee0691c7e4e7a84b990c01@janelia.hhmi.org","name":"John Kirkham"},"message":"nanshe/nanshe/expanded_numpy.py: Drop another extra newline.","distinct":false,"url":"https://api.github.com/repos/jakirkham/nanshe/commits/6433896ca47436cbd29ef6c8b4e219117ea022d0"},{"sha":"253682199bc6cd8792301361a1e5a4d46287bc37","author":{"email":"f62e5e898bee75be9eee0691c7e4e7a84b990c01@janelia.hhmi.org","name":"John Kirkham"},"message":"nanshe/nanshe/expanded_numpy.py: Fix typo.","distinct":false,"url":"https://api.github.com/repos/jakirkham/nanshe/commits/253682199bc6cd8792301361a1e5a4d46287bc37"},{"sha":"73baa29be9b8c7f492e38d0e23dcd863e06f578c","author":{"email":"f62e5e898bee75be9eee0691c7e4e7a84b990c01@janelia.hhmi.org","name":"John Kirkham"},"message":"nanshe/nanshe/expanded_numpy.py: Changed `index_at_pos` to use `numpy.roll` instead of setting up a transpose as it is faster.","distinct":false,"url":"https://api.github.com/repos/jakirkham/nanshe/commits/73baa29be9b8c7f492e38d0e23dcd863e06f578c"},{"sha":"f2ba2bf347d1ff30d49703c0db10e1e5e2e76e3a","author":{"email":"f62e5e898bee75be9eee0691c7e4e7a84b990c01@janelia.hhmi.org","name":"John Kirkham"},"message":"nanshe/nanshe/expanded_numpy.py: Correct typo.","distinct":false,"url":"https://api.github.com/repos/jakirkham/nanshe/commits/f2ba2bf347d1ff30d49703c0db10e1e5e2e76e3a"},{"sha":"4d0c8bb6fe59d7870215fc194d4e4715d1e3426e","author":{"email":"f62e5e898bee75be9eee0691c7e4e7a84b990c01@janelia.hhmi.org","name":"John Kirkham"},"message":"nanshe/nanshe/expanded_numpy.py: For index_at_pos, try `swapaxes` instead of `rollaxis` as this should be more efficient as it is O(1) vs. O(N) where N is the array dimension. Additionally, `swapaxes` is implemented in C; whereas, `rollaxis` is in Python.","distinct":false,"url":"https://api.github.com/repos/jakirkham/nanshe/commits/4d0c8bb6fe59d7870215fc194d4e4715d1e3426e"},{"sha":"af16c6cd0aad36399e24c63d31e6cd030a183f4d","author":{"email":"f62e5e898bee75be9eee0691c7e4e7a84b990c01@janelia.hhmi.org","name":"John Kirkham"},"message":"nanshe/nanshe/registration.py: Attempt to optimize mean projection.","distinct":false,"url":"https://api.github.com/repos/jakirkham/nanshe/commits/af16c6cd0aad36399e24c63d31e6cd030a183f4d"},{"sha":"c8941f3e37637fe29018c8653f182b74f2f36ff7","author":{"email":"f62e5e898bee75be9eee0691c7e4e7a84b990c01@janelia.hhmi.org","name":"John Kirkham"},"message":"nanshe/nanshe/registration.py: Drop modulus of phase as it is not strictly necessary and it will be properly mapped regardless.","distinct":false,"url":"https://api.github.com/repos/jakirkham/nanshe/commits/c8941f3e37637fe29018c8653f182b74f2f36ff7"},{"sha":"2d9df6e80db9c8e513695364c039d71e91a25c8c","author":{"email":"f62e5e898bee75be9eee0691c7e4e7a84b990c01@janelia.hhmi.org","name":"John Kirkham"},"message":"nanshe/nanshe/registration.py: Skip aligning frames until complete as it is no longer necessary as an intermediate step.","distinct":false,"url":"https://api.github.com/repos/jakirkham/nanshe/commits/2d9df6e80db9c8e513695364c039d71e91a25c8c"},{"sha":"69dfa8aa5147e5eb374485866ec88a51fef43cd6","author":{"email":"f62e5e898bee75be9eee0691c7e4e7a84b990c01@janelia.hhmi.org","name":"John Kirkham"},"message":"nanshe/nanshe/registration.py: Store the intermediate results of the frame translations and compute the mean as a final step.","distinct":false,"url":"https://api.github.com/repos/jakirkham/nanshe/commits/69dfa8aa5147e5eb374485866ec88a51fef43cd6"},{"sha":"5abfb808ef06275ac5bbd713ba54bbf74ef3d61f","author":{"email":"f62e5e898bee75be9eee0691c7e4e7a84b990c01@janelia.hhmi.org","name":"John Kirkham"},"message":"nanshe/nanshe/registration.py: Use `numpy.dot` for computing the dot product the position and the wave vector.","distinct":false,"url":"https://api.github.com/repos/jakirkham/nanshe/commits/5abfb808ef06275ac5bbd713ba54bbf74ef3d61f"},{"sha":"a0ec35909e236f064273cf76af7aacedd35368b8","author":{"email":"f62e5e898bee75be9eee0691c7e4e7a84b990c01@janelia.hhmi.org","name":"John Kirkham"},"message":"nanshe/nanshe/registration.py: Create an array for the template_fft_shape in advance.","distinct":false,"url":"https://api.github.com/repos/jakirkham/nanshe/commits/a0ec35909e236f064273cf76af7aacedd35368b8"},{"sha":"42b5bb382cb6ddccf145b3a68b667474174ea734","author":{"email":"f62e5e898bee75be9eee0691c7e4e7a84b990c01@janelia.hhmi.org","name":"John Kirkham"},"message":"nanshe/nanshe/registration.py: Find the element-wise inverse of template_fft.shape.","distinct":false,"url":"https://api.github.com/repos/jakirkham/nanshe/commits/42b5bb382cb6ddccf145b3a68b667474174ea734"},{"sha":"95b016b1d53067e5ddb0f8a0872ebfd3a084c797","author":{"email":"f62e5e898bee75be9eee0691c7e4e7a84b990c01@janelia.hhmi.org","name":"John Kirkham"},"message":"nanshe/nanshe/registration.py: Compute the wave vector instead of template_fft_shape_inverse.","distinct":false,"url":"https://api.github.com/repos/jakirkham/nanshe/commits/95b016b1d53067e5ddb0f8a0872ebfd3a084c797"},{"sha":"b03c591c7fe2a7a645568de965c45b90f324e067","author":{"email":"f62e5e898bee75be9eee0691c7e4e7a84b990c01@janelia.hhmi.org","name":"John Kirkham"},"message":"nanshe/nanshe/registration.py: Compute the negative of the wave vector in advance.","distinct":false,"url":"https://api.github.com/repos/jakirkham/nanshe/commits/b03c591c7fe2a7a645568de965c45b90f324e067"},{"sha":"d3f8be8699f4e25ce6a220ee56ca5db7f63456db","author":{"email":"f62e5e898bee75be9eee0691c7e4e7a84b990c01@janelia.hhmi.org","name":"John Kirkham"},"message":"nanshe/nanshe/registration.py: Using cartesian_product (from expanded_numpy), compute all the indices in advance.","distinct":false,"url":"https://api.github.com/repos/jakirkham/nanshe/commits/d3f8be8699f4e25ce6a220ee56ca5db7f63456db"},{"sha":"933ac3aa902968a633fcca4bbb34907c6c4ba334","author":{"email":"f62e5e898bee75be9eee0691c7e4e7a84b990c01@janelia.hhmi.org","name":"John Kirkham"},"message":"nanshe/nanshe/registration.py: Compute all of the unit spatial shifts (i.e. translation by 1 in each dimension) in advance.","distinct":false,"url":"https://api.github.com/repos/jakirkham/nanshe/commits/933ac3aa902968a633fcca4bbb34907c6c4ba334"},{"sha":"5a26f050ce861655d9625e9d26174c218c64be6d","author":{"email":"f62e5e898bee75be9eee0691c7e4e7a84b990c01@janelia.hhmi.org","name":"John Kirkham"},"message":"nanshe/nanshe/registration.py: Drop for loop into NumPy as explicit dependency on the indices has been eliminated.","distinct":false,"url":"https://api.github.com/repos/jakirkham/nanshe/commits/5a26f050ce861655d9625e9d26174c218c64be6d"},{"sha":"9b8e90c2d62f9dcd9c0b68907e2d13982db9883e","author":{"email":"f62e5e898bee75be9eee0691c7e4e7a84b990c01@janelia.hhmi.org","name":"John Kirkham"},"message":"nanshe/nanshe/registration.py: Switch from numpy.dot to numpy.tensordot.","distinct":false,"url":"https://api.github.com/repos/jakirkham/nanshe/commits/9b8e90c2d62f9dcd9c0b68907e2d13982db9883e"},{"sha":"53fad7eff5a29d43f76432fed55c52dee03b842e","author":{"email":"f62e5e898bee75be9eee0691c7e4e7a84b990c01@janelia.hhmi.org","name":"John Kirkham"},"message":"nanshe/nanshe/registration.py: Add newline.","distinct":false,"url":"https://api.github.com/repos/jakirkham/nanshe/commits/53fad7eff5a29d43f76432fed55c52dee03b842e"},{"sha":"17889c1fae019478bc639799041412e3292e538b","author":{"email":"f62e5e898bee75be9eee0691c7e4e7a84b990c01@janelia.hhmi.org","name":"John Kirkham"},"message":"nanshe/nanshe/registration.py: Reshape `unit_space_shift_fft` in advance to avoid having to do so in the inner loop.","distinct":false,"url":"https://api.github.com/repos/jakirkham/nanshe/commits/17889c1fae019478bc639799041412e3292e538b"}]}