birgander2 / pyrat Goto Github PK
View Code? Open in Web Editor NEWGeneral purpose Synthetic Aperture Radar (SAR) postprocessing software package
License: Mozilla Public License 2.0
General purpose Synthetic Aperture Radar (SAR) postprocessing software package
License: Mozilla Public License 2.0
is there (Simulated) Annealing algorithm implement?
Improve distribution of PyRAT with cython calls in setup.py
.
Recommendations fro cython docs here.
Currently, there are several problems when running (better: compiling) PyRAT on Windows:
I'll try to find solutions, but for the moment don't expect too much when using Windows. We somehow need a Windows expert.
There is no Filter.py in the filter folder either repo or my downloaded codes. While when I run the command
$ python setup.py install
this module is needed. Is there anyone who met the same trouble?
And some more config options here...
I have Ubuntu 16.04. I have a .rli file of pixels' float value. So I want to run PyRAT for it. Now I just rename file to .rat, but so I can't load this file. What should I do? How can I convert .rli file to .rat?
Thanks for your nice work!!!
But, I met some errors in the process of installation. Please see below.
INFO: LeeSigma cython module not found. (run build process?) INFO: LeeSigma2 cython module not found. (run build process?) INFO: N-Dimensional Beltrami cython modules not found. (run build process?) INFO: Bilateral module not found. (run build process?) INFO: SRAD cython module not found. (run build process?) INFO: EMDES cython module not found. (run build process?) INFO: IDANQ cython module not found. (run build process?) /home/yr2/PyRAT/pyrat/viewer/Dialogs.py:251: SyntaxWarning: "is not" with a literal. Did you mean "!="? elif pyrat.data.layers[layer].name is not '': /home/yr2/PyRAT/pyrat/viewer/Dialogs.py:371: SyntaxWarning: "is" with a literal. Did you mean "=="? if itemname[0] is 'L': /home/yr2/PyRAT/pyrat/viewer/Dialogs.py:392: SyntaxWarning: "is" with a literal. Did you mean "=="? elif itemname[0] is 'D': Traceback (most recent call last): File "setup.py", line 9, in <module> import pyrat.lib.nlsar.nlsetup as nlsetup File "/home/yr2/PyRAT/pyrat/__init__.py", line 105, in <module> from . import filter File "/home/yr2/PyRAT/pyrat/filter/__init__.py", line 9, in <module> from .Spectrum import * File "/home/yr2/PyRAT/pyrat/filter/Spectrum.py", line 10, in <module> from pyrat.filter import Unweight File "/home/yr2/PyRAT/pyrat/filter/Unweight.py", line 2, in <module> matplotlib.use('Qt5Agg') File "/home/yr2/.conda/envs/pyrat/lib/python3.8/site-packages/matplotlib/__init__.py", line 1171, in use plt.switch_backend(name) File "/home/yr2/.conda/envs/pyrat/lib/python3.8/site-packages/matplotlib/pyplot.py", line 284, in switch_backend raise ImportError( ImportError: Cannot load backend 'Qt5Agg' which requires the 'qt5' interactive framework, as 'headless' is currently running
And, my env packages are OK.
Looking forward to your reply, thanks!
And add some standard output format for easier interfacing with other software.
When I try to use RefinedLee I get the following error:
module 'pyrat' has no attribute '_nthreads'
Could you help me resolve this issue?
Hello,
@h-sdl and I have implemented a small pipeline for change detection for polarimetric SAR images in python from [1].
In short, we can detect changes between two SAR and subclasses changes in the two images:
The best would be to known whether such a feature would be interesting to include in PyRAT.
We do not know this library that much and thus this needs discussions.
See our repository of the implementation: https://gitlab.com/jjerphan/rsd-project
See this original proposal of the method:
[1] Advanced Methods for Change Detection in Multi-polarization and
Very-High Resolution Multitemporal SAR Images. Davide Pirrone. PhD thesis, International Doctorate School in
Information and Communication Technologies - University of Trento, 1 2019.
See the slides of the presentation of this method we made (in French): https://cloud.mines-paristech.fr/index.php/s/aXhZ2o5BM8fIBR0
Not clear yet what to do exactly - have to find a QGis user who uses its Python interface...
After starting viewer from batch mode with show(), PyRAT exists completely when closing the viewer. Expected behavior would be to return to command line.
Currently PyRAT only loads IW1 ( first swath of interferometric wide-swath mode). Extend this function to load all swaths in this mode into 6 separate layers instead of 2.
All functions of the viewer (e.g. brightness, colour table) are not considered when exporting. Ideally, the export should show what is visible on the screen (optionally even the current zoom?)
Finally available in Anaconda...
For example, the error is sometimes displayed correctly in the console, but the viewer shows nonsense. We should throw an exeption here and catch it correctly in a crash handler.
Scenario:
Mac user with case insensitive filesystem (e.g. mac provided by org/corp), will not be able to have "pyrat" and "PyRat"/"PyRAT" in the same directory.
Hi,
installing PyRAT in a conda environment fails with an error message from Matplotlib.
Steps to reproduce:
conda env create -n pyratenv -f requirements.txt
conda activate pyratenv
python setup.py install --user
Expected Result:
The installation succeeds without any error.
Actual Result:
The installation fails, printing the following lines:
INFO: LeeSigma cython module not found. (run build process?)
INFO: LeeSigma2 cython module not found. (run build process?)
INFO: N-Dimensional Beltrami cython modules not found. (run build process?)
INFO: Bilateral module not found. (run build process?)
INFO: SRAD cython module not found. (run build process?)
INFO: EMDES cython module not found. (run build process?)
INFO: IDANQ cython module not found. (run build process?)
DEBUG: Loaded backend Qt5Agg version unknown.
Traceback (most recent call last):
File "setup.py", line 9, in <module>
import pyrat.lib.nlsar.nlsetup as nlsetup
File "/home/user/Documents/PyRAT/pyrat/__init__.py", line 105, in <module>
from . import filter
File "/home/user/Documents/PyRAT/pyrat/filter/__init__.py", line 8, in <module>
from .Spectrum import *
File "/home/user/Documents/PyRAT/pyrat/filter/Spectrum.py", line 10, in <module>
from pyrat.filter import Unweight
File "/home/user/Documents/PyRAT/pyrat/filter/Unweight.py", line 2, in <module>
matplotlib.use('Qt5Agg')
File "/home/user/.local/share/anaconda3/envs/pyratenv/lib/python3.7/site-packages/matplotlib/cbook/deprecation.py", line 307, in wrapper
return func(*args, **kwargs)
File "/home/user/.local/share/anaconda3/envs/pyratenv/lib/python3.7/site-packages/matplotlib/__init__.py", line 1297, in use
switch_backend(name)
File "/home/user/.local/share/anaconda3/envs/pyratenv/lib/python3.7/site-packages/matplotlib/pyplot.py", line 230, in switch_backend
newbackend, required_framework, current_framework))
ImportError: Cannot load backend 'Qt5Agg' which requires the 'qt5' interactive framework, as 'headless' is currently running
I've taken a look into what is causing this and found the following line to be the source of the error:
Line 101 in b366c10
Removing this import lets the installation complete successfully.
I try python setup.py install --user and I receive an error message Unable to find vcvarsall.bat. during building pyrat.lib.ste.interpolation_extensions extension.
I am using Windows 10 and anaconda. I attached below all the messages that came out of the install the relevant one is at the end which included above for ease of reading.
(ve4pyrat) C:\Users\mwallace\Downloads\PyRAT-master\PyRAT-master>python setup.py install --user
C:\Users\mwallace\AppData\Local\ESRI\conda\envs\ve4pyrat\lib\site-packages\h5py_init_.py:36: FutureWarning: Conversion of the second argument of issubdtype from float
to np.floating
is deprecated. In future, it will be treated as np.float64 == np.dtype(float).type
.
from .conv import register_converters as register_converters
INFO: LeeSigma cython module not found. (run build process?)
INFO: LeeSigma2 cython module not found. (run build process?)
INFO: Bilateral module not found. (run build process?)
INFO: SRAD cython module not found. (run build process?)
INFO: EMDES cython module not found. (run build process?)
INFO: IDANQ cython module not found. (run build process?)
DEBUG: $HOME=C:\Users\mwallace
DEBUG: matplotlib data path C:\Users\mwallace\AppData\Local\ESRI\conda\envs\ve4pyrat\lib\site-packages\matplotlib\mpl-data
DEBUG: loaded rc file C:\Users\mwallace\AppData\Local\ESRI\conda\envs\ve4pyrat\lib\site-packages\matplotlib\mpl-data\matplotlibrc
DEBUG: matplotlib version 2.2.2
DEBUG: interactive is False
DEBUG: platform is win32
DEBUG: loaded modules: ['builtins', 'sys', 'frozen_importlib', 'imp', 'warnings', 'thread', 'weakref', 'frozen_importlib_external', 'io', 'marshal', 'nt', 'winreg', 'zipimport', 'encodings', 'codecs', 'codecs', 'encodings.aliases', 'encodings.utf_8', 'signal', 'main', 'encodings.latin_1', 'io', 'abc', 'weakrefset', 'site', 'os', 'errno', 'stat', 'stat', 'ntpath', 'genericpath', 'os.path', 'collections_abc', 'sitebuiltins', 'sysconfig', 'bootlocale', 'locale', 'encodings.cp1252', 'types', 'functools', 'functools', 'collections', 'operator', 'operator', 'keyword', 'heapq', 'heapq', 'itertools', 'reprlib', 'collections', 'weakref', 'collections.abc', 'importlib', 'importlib.bootstrap', 'importlib.bootstrap_external', 'warnings', 'importlib.util', 'importlib.abc', 'importlib.machinery', 'contextlib', 'mpl_toolkits', 'encodings.cp437', 'distutils', 'distutils.core', 'distutils.debug', 'distutils.errors', 'distutils.dist', 're', 'enum', 'sre_compile', 'sre', 'sre_parse', 'sre_constants', 'copyreg', 'email', 'distutils.fancy_getopt', 'string', 'string', 'getopt', 'gettext', 'locale', 'copy', 'struct', 'struct', 'distutils.util', 'distutils.dep_util', 'distutils.spawn', 'distutils.log', 'distutils.cmd', 'distutils.dir_util', 'distutils.file_util', 'distutils.archive_util', 'zipfile', 'time', 'shutil', 'fnmatch', 'posixpath', 'zlib', 'bz2', 'compression', 'threading', 'traceback', 'linecache', 'tokenize', 'token', 'bz2', 'lzma', 'lzma', 'binascii', 'distutils.config', 'configparser', 'distutils.extension', 'Cython', 'future', 'Cython.Shadow', 'cython.parallel', 'Cython.Build', 'Cython.Build.Dependencies', 'cython', 'glob', 'gzip', 'subprocess', 'signal', 'msvcrt', 'winapi', 'hashlib', 'hashlib', 'blake2', 'sha3', 'Cython.Utils', 'Cython.Compiler', 'Cython.Compiler.Main', 'Cython.Compiler.Errors', 'Cython.Compiler.DebugFlags', 'Cython.Compiler.Options', 'Cython.Compiler.StringEncoding', 'cython_0_27_3', 'cython_runtime', 'Cython.Compiler.Scanning', 'Cython.Plex', 'Cython.Plex.Actions', 'Cython.Plex.Lexicons', 'Cython.Plex.DFA', 'Cython.Plex.Machines', 'Cython.Plex.Transitions', 'Cython.Plex.Errors', 'Cython.Plex.Regexps', 'Cython.Plex.Scanners', 'platform', 'Cython.Compiler.Lexicon', 'Cython.Compiler.Future', 'Cython.Compiler.Symtab', 'Cython.Compiler.Naming', 'Cython.Compiler.PyrexTypes', 'Cython.Compiler.Code', 'textwrap', 'Cython.Compiler.Version', 'Cython.StringIOTree', 'Cython.Compiler.TypeSlots', 'Cython.Build.Distutils', 'Cython.Distutils', 'Cython.Distutils.build_ext', 'distutils.command', 'distutils.command.build_ext', 'distutils.sysconfig', 'Cython.Distutils.old_build_ext', 'inspect', 'ast', 'ast', 'dis', 'opcode', 'opcode', 'Cython.Distutils.extension', 'numpy', 'numpy.globals', 'numpy.config', 'numpy.version', 'numpy.import_tools', 'numpy.add_newdocs', 'numpy.lib', 'math', 'numpy.lib.info', 'numpy.lib.type_check', 'numpy.core', 'numpy.core.info', 'datetime', 'datetime', 'numpy.core.multiarray', 'numpy.core.umath', 'numpy.core.internal', 'numpy.compat', 'numpy.compat.inspect', 'numpy.compat.py3k', 'pathlib', 'urllib', 'urllib.parse', 'ctypes', 'ctypes', 'ctypes.endian', 'numpy.core.numerictypes', 'numbers', 'numpy.core.numeric', 'pickle', 'compat_pickle', 'pickle', 'numpy.core.fromnumeric', 'numpy.core.methods', 'numpy.core.arrayprint', 'numpy.core.defchararray', 'numpy.core.records', 'numpy.core.memmap', 'numpy.core.function_base', 'numpy.core.machar', 'numpy.core.getlimits', 'numpy.core.shape_base', 'numpy.core.einsumfunc', 'numpy.testing', 'unittest', 'unittest.result', 'unittest.util', 'unittest.case', 'difflib', 'logging', 'atexit', 'pprint', 'unittest.suite', 'unittest.loader', 'unittest.main', 'argparse', 'unittest.runner', 'unittest.signals', 'numpy.testing.decorators', 'numpy.testing.nose_tools', 'numpy.testing.nose_tools.decorators', 'numpy.testing.nose_tools.utils', 'tempfile', 'random', 'bisect', 'bisect', 'random', 'numpy.lib.utils', 'numpy.testing.nosetester', 'numpy.testing.nose_tools.nosetester', 'numpy.testing.utils', 'numpy.lib.ufunclike', 'numpy.lib.index_tricks', 'numpy.lib.function_base', 'numpy.lib.twodim_base', 'numpy.matrixlib', 'numpy.matrixlib.defmatrix', 'numpy.lib.stride_tricks', 'numpy.lib.mixins', 'numpy.lib.nanfunctions', 'numpy.lib.shape_base', 'numpy.lib.scimath', 'numpy.lib.polynomial', 'numpy.linalg', 'numpy.linalg.info', 'numpy.linalg.linalg', 'numpy.linalg.lapack_lite', 'numpy.linalg.umath_linalg', 'numpy.lib.arraysetops', 'numpy.lib.npyio', 'numpy.lib.format', 'numpy.lib.datasource', 'numpy.lib.iotools', 'numpy.lib.financial', 'decimal', 'decimal', 'numpy.lib.arrayterator', 'numpy.lib.arraypad', 'numpy.lib.version', 'numpy.distributor_init', 'numpy.mklinit', 'numpy.fft', 'numpy.fft.info', 'numpy.fft.fftpack', 'numpy.fft.fftpack_lite', 'numpy.fft.helper', 'numpy.polynomial', 'numpy.polynomial.polynomial', 'numpy.polynomial.polyutils', 'numpy.polynomial.polybase', 'numpy.polynomial.chebyshev', 'numpy.polynomial.legendre', 'numpy.polynomial.hermite', 'numpy.polynomial.hermite_e', 'numpy.polynomial.laguerre', 'numpy.random', 'numpy.random.info', 'mtrand', 'numpy.random.mtrand', 'numpy.ctypeslib', 'numpy.ma', 'numpy.ma.core', 'numpy.ma.extras', 'pyrat', 'scipy', 'scipy.distributor_init', 'scipy.config', 'scipy.version', 'scipy.lib', 'scipy.lib.testutils', 'scipy.lib.version', 'scipy.lib.six', 'scipy.lib.ccallback', 'scipy.lib.ccallback_c', 'scipy.misc', 'scipy.misc.doccer', 'scipy.misc.common', 'scipy.interpolate', 'scipy.interpolate.interpolate', 'scipy.linalg', 'scipy.linalg.linalg_version', 'scipy.linalg.misc', 'scipy.linalg.blas', 'scipy.linalg.fblas', 'scipy.linalg.lapack', 'scipy.linalg.flapack', 'scipy.lib.util', 'scipy.linalg.basic', 'scipy.linalg.flinalg', 'scipy.linalg.flinalg', 'scipy.linalg.decomp', 'scipy.linalg.decomp_svd', 'cython_0_26_1', 'scipy.linalg.solve_toeplitz', 'scipy.linalg.decomp_lu', 'scipy.linalg.decomp_cholesky', 'scipy.linalg.decomp_qr', 'scipy.linalg.decomp_qz', 'scipy.linalg.decomp_schur', 'scipy.linalg.decomp_polar', 'scipy.linalg.matfuncs', 'scipy.linalg.special_matrices', 'scipy.linalg.expm_frechet', 'scipy.linalg.matfuncs_sqrtm', 'scipy.linalg.solvers', 'scipy.linalg.procrustes', 'scipy.linalg.decomp_update', 'scipy.linalg.cython_blas', 'scipy.linalg.cython_lapack', 'scipy.linalg.sketches', 'numpy.dual', 'scipy.special', 'scipy.special.sf_error', 'scipy.special.ufuncs', 'scipy.special.ufuncs_cxx', 'scipy.special.basic', 'scipy.special.specfun', 'scipy.special.orthogonal', 'scipy.special.comb', 'scipy.special.logsumexp', 'scipy.special.spfun_stats', 'scipy.special.ellip_harm', 'scipy.special.ellip_harm_2', 'scipy.integrate', 'scipy.integrate.quadrature', 'scipy.integrate.odepack', 'scipy.integrate.odepack', 'scipy.integrate.quadpack', 'scipy.integrate.quadpack', 'scipy.integrate.ode', 'scipy.integrate.vode', 'scipy.integrate.dop', 'scipy.integrate.lsoda', 'scipy.integrate.bvp', 'scipy.sparse', 'scipy.sparse.base', 'scipy.lib.numpy_compat', 'scipy.sparse.sputils', 'scipy.sparse.csr', 'scipy.sparse.sparsetools', 'scipy.sparse.compressed', 'scipy.sparse.data', 'scipy.sparse.dia', 'scipy.sparse.csc', 'scipy.sparse.lil', 'scipy.sparse.csparsetools', 'scipy.sparse.dok', 'scipy.sparse.coo', 'scipy.sparse.bsr', 'scipy.sparse.construct', 'scipy.sparse.extract', 'scipy.sparse.matrix_io', 'scipy.sparse.linalg', 'scipy.sparse.linalg.isolve', 'scipy.sparse.linalg.isolve.iterative', 'scipy.sparse.linalg.isolve.iterative', 'scipy.sparse.linalg.interface', 'scipy.lib.decorator', 'scipy.sparse.linalg.isolve.utils', 'scipy.lib.threadsafety', 'scipy.sparse.linalg.isolve.minres', 'scipy.sparse.linalg.isolve.lgmres', 'scipy.sparse.linalg.isolve.gcrotmk', 'scipy.sparse.linalg.isolve.lsqr', 'scipy.sparse.linalg.isolve.lsmr', 'scipy.sparse.linalg.dsolve', 'scipy.sparse.linalg.dsolve.linsolve', 'scipy.sparse.linalg.dsolve.superlu', 'scipy.sparse.linalg.dsolve.add_newdocs', 'scipy.sparse.linalg.eigen', 'scipy.sparse.linalg.eigen.arpack', 'scipy.sparse.linalg.eigen.arpack.arpack', 'scipy.sparse.linalg.eigen.arpack.arpack', 'scipy.sparse.linalg.eigen.lobpcg', 'scipy.sparse.linalg.eigen.lobpcg.lobpcg', 'scipy.sparse.linalg.matfuncs', 'scipy.sparse.linalg.onenormest', 'scipy.sparse.linalg.norm', 'scipy.sparse.linalg.expm_multiply', 'scipy.optimize', 'scipy.optimize.optimize', 'scipy.optimize.linesearch', 'scipy.optimize.minpack2', 'scipy.optimize.minimize', 'scipy.optimize.trustregion_dogleg', 'scipy.optimize.trustregion', 'scipy.optimize.trustregion_ncg', 'scipy.optimize.trustregion_krylov', 'scipy.optimize.trlib', 'scipy.optimize.trlib.trlib', 'scipy.lib.messagestream', 'scipy.optimize.trustregion_exact', 'scipy.optimize.lbfgsb', 'scipy.optimize.lbfgsb', 'scipy.optimize.tnc', 'scipy.optimize.moduleTNC', 'scipy.optimize.cobyla', 'scipy.optimize.cobyla', 'scipy.optimize.slsqp', 'scipy.optimize.slsqp', 'scipy.optimize.root', 'scipy.optimize.minpack', 'scipy.optimize.minpack', 'scipy.optimize.lsq', 'scipy.optimize.lsq.least_squares', 'scipy.optimize.numdiff', 'scipy.optimize.group_columns', 'scipy.optimize.lsq.trf', 'scipy.optimize.lsq.common', 'scipy.optimize.lsq.dogbox', 'scipy.optimize.lsq.lsq_linear', 'scipy.optimize.lsq.trf_linear', 'scipy.optimize.lsq.givens_elimination', 'scipy.optimize.lsq.bvls', 'scipy.optimize.spectral', 'scipy.optimize.nonlin', 'scipy.optimize.zeros', 'scipy.optimize.zeros', 'scipy.optimize.nnls', 'scipy.optimize.nnls', 'scipy.optimize.basinhopping', 'scipy.optimize.linprog', 'scipy.optimize.linprog_ip', 'scipy.optimize.remove_redundancy', 'scipy.optimize.hungarian', 'scipy.optimize.differentialevolution', 'scipy.integrate.ivp', 'scipy.integrate.ivp.ivp', 'scipy.integrate.ivp.bdf', 'scipy.integrate.ivp.common', 'scipy.integrate.ivp.base', 'scipy.integrate.ivp.radau', 'scipy.integrate.ivp.rk', 'scipy.integrate.ivp.lsoda', 'scipy.special.lambertw', 'scipy.special.spherical_bessel', 'scipy.interpolate.fitpack', 'scipy.interpolate.fitpack_impl', 'scipy.interpolate.fitpack', 'scipy.interpolate.dfitpack', 'scipy.interpolate.bsplines', 'scipy.interpolate.bspl', 'scipy.interpolate.polyint', 'scipy.interpolate.ppoly', 'scipy.interpolate.fitpack2', 'scipy.interpolate.interpnd', 'scipy.spatial', 'scipy.spatial.kdtree', 'scipy.spatial.ckdtree', 'multiprocessing', 'multiprocessing.context', 'multiprocessing.process', 'multiprocessing.reduction', 'socket', 'socket', 'selectors', 'select', 'mp_main', 'scipy.spatial.qhull', 'scipy.spatial.spherical_voronoi', 'numpy.matlib', 'scipy.spatial.voronoi', 'scipy.spatial.distance', 'scipy.spatial.distance_wrap', 'scipy.spatial.hausdorff', 'scipy.spatial.plotutils', 'scipy.spatial.procrustes', 'scipy.interpolate.rbf', 'scipy.interpolate.cubic', 'scipy.interpolate.ndgriddata', 'scipy.interpolate.pade', 'scipy.misc.pilutil', 'PIL', 'PIL.version', 'PIL.Image', 'PIL.imaging', 'PIL.ImageMode', 'PIL.binary', 'PIL.util', 'PIL.ImageFilter', 'PyQt5', 'osgeo', 'imp', 'swig_runtime_data4', 'gdal', 'osgeo.gdal', 'osgeo.gdalconst', 'gdalconst', 'osgeo.ogr', 'ogr', 'osgeo.osr', 'osr', 'pyrat.cli', 'h5py', 'h5py.errors', 'h5py.conv', 'h5py.h5r', 'h5py.objects', 'h5py.defs', 'gc', 'h5py.h5t', 'h5py.utils', 'h5py.h5', 'h5py.h5z', 'h5py.h5a', 'h5py.h5s', 'h5py.h5p', 'h5py.h5ac', 'h5py.proxy', 'h5py.h5d', 'h5py.h5ds', 'h5py.h5f', 'h5py.h5g', 'h5py.h5i', 'h5py.h5fd', 'h5py.hl', 'h5py.hl.filters', 'h5py.hl.base', 'six', 'h5py.hl.compat', 'h5py.hl.files', 'h5py.hl.group', 'h5py.h5o', 'h5py.h5l', 'h5py.hl.dataset', 'six.moves', 'h5py.hl.selections', 'h5py.hl.selections2', 'h5py.hl.datatype', 'h5py.version', 'h5py.hl.attrs', 'uuid', 'ctypes.util', 'h5py.tests', 'h5py.tests.common', 'h5py.tests.old', 'h5py.tests.old.test_attrs', 'h5py.highlevel', 'h5py.tests.old.test_attrs_data', 'h5py.tests.old.test_base', 'h5py.tests.old.test_dataset', 'h5py.tests.old.test_datatype', 'h5py.tests.old.test_dimension_scales', 'h5py.tests.old.test_file', 'h5py.tests.old.test_file_image', 'h5py.tests.old.test_group', 'h5py.tests.old.test_h5', 'h5py.tests.old.test_h5f', 'h5py.tests.old.test_h5p', 'h5py.tests.old.test_h5t', 'h5py.tests.old.test_objects', 'h5py.tests.old.test_selections', 'h5py.tests.old.test_slicing', 'h5py.tests.hl', 'h5py.tests.hl.test_dataset_getitem', 'h5py.tests.hl.test_dataset_swmr', 'h5py.tests.hl.test_dims_dimensionproxy', 'h5py.tests.hl.test_file', 'h5py.tests.hl.test_attribute_create', 'h5py.tests.hl.test_threads', 'h5py.tests.hl.test_datatype', 'pyrat.tools', 'code', 'codeop', 'readline', 'pyreadline', 'pyreadline.unicode_helper', 'pyreadline.py3k_compat', 'pyreadline.logger', 'logging.handlers', 'queue', 'pyreadline.clipboard', 'pyreadline.clipboard.win32_clipboard', 'ctypes.wintypes', 'pyreadline.keysyms', 'pyreadline.keysyms.winconstants', 'pyreadline.keysyms.keysyms', 'pyreadline.keysyms.common', 'pyreadline.lineeditor', 'pyreadline.modes', 'pyreadline.modes.emacs', 'pyreadline.lineeditor.lineobj', 'pyreadline.lineeditor.wordmatcher', 'pyreadline.lineeditor.history', 'pyreadline.modes.basemode', 'pyreadline.error', 'pyreadline.modes.notemacs', 'pyreadline.modes.vi', 'pyreadline.console', 'pyreadline.console.console', 'pyreadline.console.ansi', 'pyreadline.console.event', 'pyreadline.rlmain', 'pyreadline.release', 'pyrat.Worker', 'sip', 'PyQt5.QtCore', 'PyQt5.QtGui', 'PyQt5.QtWidgets', 'pyrat.LayerData', 'pyrat.FilterWorker', 'pyrat.ImportWorker', 'pyrat.ExportWorker', 'pyrat.GroupWorker', 'pyrat.LayerWorker', 'pyrat.layer', 'pyrat.layer.TSX', 'osgeo.gdal_array', 'gdal_array', 'osgeo.gdal_array', 'pyrat.filter', 'pyrat.filter.Despeckle', 'pyrat.filter.Edgedetect', 'scipy.ndimage', 'scipy.ndimage.filters', 'scipy.ndimage.ni_support', 'scipy.ndimage.nd_image', 'scipy.ndimage.fourier', 'scipy.ndimage.interpolation', 'scipy.ndimage.measurements', 'ni_label', 'scipy.ndimage.ni_label', 'scipy.ndimage.morphology', 'scipy.ndimage.io', 'skimage', 'skimage.shared', 'skimage.shared.geometry', 'skimage.util', 'skimage.util.dtype', 'skimage.util.shape', 'skimage.util.noise', 'skimage.util.apply_parallel', 'dask', 'dask.core', 'dask.utils_test', 'dask.context', 'dask.local', 'dask.compatibility', 'urllib.request', 'base64', 'http', 'http.client', 'email.parser', 'email.feedparser', 'email.errors', 'email.policybase', 'email.header', 'email.quoprimime', 'email.base64mime', 'email.charset', 'email.encoders', 'quopri', 'email.utils', 'email.parseaddr', 'calendar', 'email.message', 'uu', 'email.encoded_words', 'email.iterators', 'ssl', 'ipaddress', 'ssl', 'urllib.error', 'urllib.response', 'nturl2path', 'dask.order', 'dask.callbacks', 'dask.optimization', 'dask.delayed', 'cytoolz', 'cytoolz.itertoolz', 'cytoolz.compatibility', 'cytoolz.utils', 'toolz', 'toolz.itertoolz', 'toolz.compatibility', 'toolz.utils', 'toolz.functoolz', 'toolz.signatures', 'toolz.dicttoolz', 'toolz.recipes', 'toolz.sandbox', 'toolz.sandbox.core', 'toolz.sandbox.parallel', 'cytoolz.functoolz', 'cytoolz.signatures', 'cytoolz.dicttoolz', 'cytoolz.recipes', 'cytoolz.version', 'dask.threaded', 'multiprocessing.pool', 'multiprocessing.util', 'dask.base', 'dask.hashing', 'dask.utils', 'dask.optimize', 'dask.sharedict', 'cloudpickle', 'cloudpickle.cloudpickle', 'encodings.raw_unicode_escape', 'dask.version', 'json', 'json.decoder', 'json.scanner', 'json', 'json.encoder', 'dask.array', 'dask.array.core', 'cytoolz.curried', 'cytoolz.curried.operator', 'cytoolz.curried.exceptions', 'dask.array.chunk', 'dask.array.numpy_compat', 'distutils.version', 'dask.array.slicing', 'dask.array.optimization', 'dask.array.routines', 'dask.array.creation', 'dask.array.wrap', 'dask.array.reshape', 'dask.array.ufunc', 'dask.array.reductions', 'dask.array.percentile', 'dask.array.ma', 'dask.array.random', 'dask.array.linalg', 'dask.array.ghost', 'toolz.curried', 'toolz.curried.operator', 'toolz.curried.exceptions', 'dask.array.learn', 'dask.array.fft', 'scipy.fftpack', 'scipy.fftpack.basic', 'scipy.fftpack.fftpack', 'scipy.fftpack.pseudo_diffs', 'scipy.fftpack.convolve', 'scipy.fftpack.helper', 'scipy.fftpack.realtransforms', 'dask.array.rechunk', 'skimage.util.arraycrop', 'skimage.util.regular_grid', 'skimage.util.unique', 'skimage.util.invert', 'skimage.shared.utils', 'skimage.shared.warnings', 'skimage.filters', 'skimage.filters.lpi_filter', 'skimage.filters.gaussian', 'skimage.color', 'skimage.color.colorconv', 'skimage.color.colorlabel', 'skimage.color.rgb_colors', 'skimage.color.delta_e', 'skimage.filters.edges', 'skimage.restoration', 'skimage.restoration.deconvolution', 'scipy.signal', 'scipy.signal.sigtools', 'scipy.signal.waveforms', 'scipy.signal.max_len_seq', 'scipy.signal.max_len_seq_inner', 'scipy.signal.upfirdn', 'scipy.signal.upfirdn_apply', 'scipy.signal.spline', 'scipy.signal.bsplines', 'scipy.signal.filter_design', 'scipy.signal.fir_filter_design', 'scipy.signal.ltisys', 'scipy.signal.lti_conversion', 'scipy.signal.windows', 'scipy.signal.signaltools', 'timeit', 'scipy.signal.arraytools', 'scipy.signal.savitzky_golay', 'scipy.signal.spectral', 'scipy.signal.spectral', 'scipy.signal.wavelets', 'scipy.signal.peak_finding', 'scipy.stats', 'scipy.stats.stats', 'scipy.stats.distributions', 'scipy.stats.distn_infrastructure', 'scipy.stats.distr_params', 'scipy.stats.constants', 'scipy.stats.continuous_distns', 'scipy.stats.stats', 'scipy.stats.tukeylambda_stats', 'scipy.stats.discrete_distns', 'scipy.stats.mstats_basic', 'scipy.stats.stats_mstats_common', 'scipy.stats.morestats', 'scipy.stats.statlib', 'scipy.stats.contingency', 'scipy.stats.binned_statistic', 'scipy.stats.kde', 'scipy.stats.mvn', 'scipy.stats.mstats', 'scipy.stats.mstats_extras', 'scipy.stats.multivariate', 'skimage.restoration.uft', 'skimage.restoration.unwrap', 'skimage.restoration.unwrap_1d', 'skimage.restoration.unwrap_2d', 'skimage.restoration.unwrap_3d', 'skimage.restoration.denoise', 'skimage.restoration.denoise_cy', 'pywt', 'pywt.extensions', 'pywt.extensions.pywt', 'pywt.extensions.dwt', 'pywt.extensions.cwt', 'pywt.functions', 'pywt.multilevel', 'pywt.dwt', 'pywt.multidim', 'pywt.thresholding', 'pywt.