nasa-jpl / autoRIFT

A Python module of a fast and intelligent algorithm for finding the pixel displacement between two images
Apache License 2.0
213 stars 52 forks source link

Multi-core parallelization/GPU support #12

Closed deHasara closed 3 years ago

deHasara commented 3 years ago

Hi, I'm Hasara, currently working as a RA at the University of Moratuwa, Sri Lanka. I'm currently working on slow-moving landslide detection using the SAR time series analysis. I thought of applying autoRIFT algorithm for this purpose. Since the dataset is very large, I think parallelization would be a mandatory requirement for my task. I saw that this multi-core support was mentioned as a possible enhancement in the repo. However, I would like to work on implementing this feature. Any insight would be highly appreciated.

leiyangleon commented 3 years ago

Hi, multithreading has just been implemented in the core processing of autoRIFT, namely the normalized cross-correlation (NCC). Feel free to download the latest version of the software. This version as well as previous single-core versions are usually pretty efficient for large images such as Sentinel-1 images with dimension of 70000 x 10000.

If further enhancement is desired, you are welcome to do it in the few lines of preprocessing and data type conversion that are called here or anything under the mpflag "MultiThread".