foscat 3.0.27__tar.gz → 3.0.29__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. {foscat-3.0.27 → foscat-3.0.29}/PKG-INFO +1 -7
  2. {foscat-3.0.27 → foscat-3.0.29}/setup.py +1 -1
  3. {foscat-3.0.27 → foscat-3.0.29}/src/foscat/FoCUS.py +1 -1
  4. {foscat-3.0.27 → foscat-3.0.29}/src/foscat/backend.py +14 -2
  5. {foscat-3.0.27 → foscat-3.0.29}/src/foscat/scat1D.py +19 -0
  6. {foscat-3.0.27 → foscat-3.0.29}/src/foscat/scat_cov1D.py +27 -8
  7. {foscat-3.0.27 → foscat-3.0.29}/src/foscat.egg-info/PKG-INFO +1 -7
  8. {foscat-3.0.27 → foscat-3.0.29}/README.md +0 -0
  9. {foscat-3.0.27 → foscat-3.0.29}/setup.cfg +0 -0
  10. {foscat-3.0.27 → foscat-3.0.29}/src/foscat/CNN.py +0 -0
  11. {foscat-3.0.27 → foscat-3.0.29}/src/foscat/CircSpline.py +0 -0
  12. {foscat-3.0.27 → foscat-3.0.29}/src/foscat/GCNN.py +0 -0
  13. {foscat-3.0.27 → foscat-3.0.29}/src/foscat/GetGPUinfo.py +0 -0
  14. {foscat-3.0.27 → foscat-3.0.29}/src/foscat/Softmax.py +0 -0
  15. {foscat-3.0.27 → foscat-3.0.29}/src/foscat/Spline1D.py +0 -0
  16. {foscat-3.0.27 → foscat-3.0.29}/src/foscat/Synthesis.py +0 -0
  17. {foscat-3.0.27 → foscat-3.0.29}/src/foscat/__init__.py +0 -0
  18. {foscat-3.0.27 → foscat-3.0.29}/src/foscat/backend_tens.py +0 -0
  19. {foscat-3.0.27 → foscat-3.0.29}/src/foscat/loss_backend_tens.py +0 -0
  20. {foscat-3.0.27 → foscat-3.0.29}/src/foscat/loss_backend_torch.py +0 -0
  21. {foscat-3.0.27 → foscat-3.0.29}/src/foscat/scat.py +0 -0
  22. {foscat-3.0.27 → foscat-3.0.29}/src/foscat/scat2D.py +0 -0
  23. {foscat-3.0.27 → foscat-3.0.29}/src/foscat/scat_cov.py +0 -0
  24. {foscat-3.0.27 → foscat-3.0.29}/src/foscat/scat_cov2D.py +0 -0
  25. {foscat-3.0.27 → foscat-3.0.29}/src/foscat/scat_cov_map.py +0 -0
  26. {foscat-3.0.27 → foscat-3.0.29}/src/foscat/scat_cov_map2D.py +0 -0
  27. {foscat-3.0.27 → foscat-3.0.29}/src/foscat.egg-info/SOURCES.txt +0 -0
  28. {foscat-3.0.27 → foscat-3.0.29}/src/foscat.egg-info/dependency_links.txt +0 -0
  29. {foscat-3.0.27 → foscat-3.0.29}/src/foscat.egg-info/requires.txt +0 -0
  30. {foscat-3.0.27 → foscat-3.0.29}/src/foscat.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: foscat
3
- Version: 3.0.27
3
+ Version: 3.0.29
4
4
  Summary: Generate synthetic Healpix or 2D data using Cross Scattering Transform
5
5
  Home-page: https://github.com/jmdelouis/FOSCAT
6
6
  Author: Jean-Marc DELOUIS
@@ -9,12 +9,6 @@ Maintainer: Theo Foulquier
9
9
  Maintainer-email: theo.foulquier@ifremer.fr
10
10
  License: MIT
11
11
  Keywords: Scattering transform,Component separation,denoising
12
- Requires-Dist: imageio
13
- Requires-Dist: imagecodecs
14
- Requires-Dist: matplotlib
15
- Requires-Dist: numpy
16
- Requires-Dist: tensorflow
17
- Requires-Dist: healpy
18
12
 
19
13
  Utilize the Cross Scattering Transform (described in https://arxiv.org/abs/2207.12527) to synthesize Healpix or 2D data that is suitable for component separation purposes, such as denoising.
20
14
  A demo package for this process can be found at https://github.com/jmdelouis/FOSCAT_DEMO.
@@ -3,7 +3,7 @@ from setuptools import setup, find_packages
3
3
 
4
4
  setup(
5
5
  name='foscat',
6
- version='3.0.27',
6
+ version='3.0.29',
7
7
  description='Generate synthetic Healpix or 2D data using Cross Scattering Transform' ,
8
8
  long_description='Utilize the Cross Scattering Transform (described in https://arxiv.org/abs/2207.12527) to synthesize Healpix or 2D data that is suitable for component separation purposes, such as denoising. \n A demo package for this process can be found at https://github.com/jmdelouis/FOSCAT_DEMO. \n Complete doc can be found at https://foscat-documentation.readthedocs.io/en/latest/index.html. \n\n List of developers : J.-M. Delouis, T. Foulquier, L. Mousset, T. Odaka, F. Paul, E. Allys ' ,
9
9
  license='MIT',
@@ -32,7 +32,7 @@ class FoCUS:
32
32
  mpi_size=1,
33
33
  mpi_rank=0):
34
34
 
35
- self.__version__ = '3.0.27'
35
+ self.__version__ = '3.0.29'
36
36
  # P00 coeff for normalization for scat_cov
37
37
  self.TMPFILE_VERSION=TMPFILE_VERSION
38
38
  self.P1_dic = None
@@ -684,9 +684,21 @@ class foscat_backend:
684
684
 
685
685
  if self.BACKEND==self.TENSORFLOW or self.BACKEND==self.TORCH:
686
686
  if axis is None:
687
- return(self.backend.concat(data))
687
+ if data[0].dtype==self.all_cbk_type:
688
+ ndata=len(data)
689
+ xr=self.backend.concat([self.bk_real(data[k]) for k in range(ndata)])
690
+ xi=self.backend.concat([self.bk_imag(data[k]) for k in range(ndata)])
691
+ return self.backend.complex(xr,xi)
692
+ else:
693
+ return(self.backend.concat(data))
688
694
  else:
689
- return(self.backend.concat(data,axis=axis))
695
+ if data[0].dtype==self.all_cbk_type:
696
+ ndata=len(data)
697
+ xr=self.backend.concat([self.bk_real(data[k]) for k in range(ndata)],axis=axis)
698
+ xi=self.backend.concat([self.bk_imag(data[k]) for k in range(ndata)],axis=axis)
699
+ return self.backend.complex(xr,xi)
700
+ else:
701
+ return(self.backend.concat(data,axis=axis))
690
702
  else:
691
703
  if axis is None:
692
704
  return np.concatenate(data,axis=0)
@@ -54,6 +54,25 @@ class scat1D:
54
54
  return np.concatenate(tmp,1)
55
55
  else:
56
56
  return self.backend.bk_concat(tmp,1)
57
+ # ---------------------------------------------−---------
58
+ def flatten_name(self,S2L=True,P00=True):
59
+
60
+ tmp=['S0']
61
+
62
+
63
+ tmp=tmp+['S1_%d'%(k) for k in range(self.S1.shape[-1])]
64
+
65
+ if P00:
66
+ tmp=tmp+['P00_%d'%(k) for k in range(self.P00.shape[-1])]
67
+
68
+ j1,j2=self.get_j_idx()
69
+
70
+ tmp=tmp+['S2_%d-%d'%(j1[k],j2[k]) for k in range(self.S2.shape[-1])]
71
+
72
+ if S2L:
73
+ tmp=tmp+['S2L_%d-%d'%(j1[k],j2[k]) for k in range(self.S2.shape[-1])]
74
+
75
+ return tmp
57
76
 
58
77
  def get_j_idx(self):
59
78
  return self.j1,self.j2
@@ -793,23 +793,42 @@ class scat_cov1D:
793
793
  return self.backend.bk_reshape(table,[table.shape[0],ndata])
794
794
 
795
795
  # ---------------------------------------------−---------
796
- def flatten(self,S2L=True,P00=True):
797
- tmp=[self.build_flat(self.P00)]
796
+ def flatten(self):
797
+ tmp=[self.backend.bk_real(self.build_flat(self.P00))]
798
798
 
799
799
  if self.S1 is not None:
800
- tmp=[self.build_flat(self.S1)]
800
+ tmp=tmp+[self.backend.bk_real(self.build_flat(self.S1))]
801
801
 
802
- tmp=[self.build_flat(self.C01)]
802
+ tmp=tmp+[self.backend.bk_real(self.build_flat(self.C01))]
803
803
 
804
804
  if self.C10 is not None:
805
- tmp=[self.build_flat(self.C10)]
805
+ tmp=tmp+[self.backend.bk_real(self.build_flat(self.C10))]
806
806
 
807
- tmp=[self.build_flat(self.C11)]
808
-
809
- if isinstance(self.P00,np.ndarray):
807
+ tmp=tmp+[self.backend.bk_real(self.build_flat(self.C11))]
808
+
809
+ if isinstance(self.C11,np.ndarray):
810
810
  return np.concatenate(tmp,1)
811
811
  else:
812
812
  return self.backend.bk_concat(tmp,1)
813
+
814
+ # ---------------------------------------------−---------
815
+ def flatten_name(self):
816
+ tmp=['P00_%d'%(k) for k in range(self.P00.shape[-1])]
817
+
818
+ if self.S1 is not None:
819
+ tmp=tmp+['S1_%d'%(k) for k in range(self.S1.shape[-1])]
820
+
821
+ j1,j2=self.get_j_idx()
822
+
823
+ tmp=tmp+['C01_%d-%d'%(j1[k],j2[k]) for k in range(self.C01.shape[-1])]
824
+
825
+ if self.C10 is not None:
826
+ tmp=tmp+['C10_%d-%d'%(j1[k],j2[k]) for k in range(self.C10.shape[-1])]
827
+
828
+ j1,j2,j3=self.get_jc11_idx()
829
+ tmp=tmp+['C11_%d-%d-%d'%(j1[k],j2[k],j3[k]) for k in range(self.C11.shape[-1])]
830
+
831
+ return tmp
813
832
 
814
833
 
815
834
  def add_data_from_log_slope(self,y,n,ds=3):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: foscat
3
- Version: 3.0.27
3
+ Version: 3.0.29
4
4
  Summary: Generate synthetic Healpix or 2D data using Cross Scattering Transform
5
5
  Home-page: https://github.com/jmdelouis/FOSCAT
6
6
  Author: Jean-Marc DELOUIS
@@ -9,12 +9,6 @@ Maintainer: Theo Foulquier
9
9
  Maintainer-email: theo.foulquier@ifremer.fr
10
10
  License: MIT
11
11
  Keywords: Scattering transform,Component separation,denoising
12
- Requires-Dist: imageio
13
- Requires-Dist: imagecodecs
14
- Requires-Dist: matplotlib
15
- Requires-Dist: numpy
16
- Requires-Dist: tensorflow
17
- Requires-Dist: healpy
18
12
 
19
13
  Utilize the Cross Scattering Transform (described in https://arxiv.org/abs/2207.12527) to synthesize Healpix or 2D data that is suitable for component separation purposes, such as denoising.
20
14
  A demo package for this process can be found at https://github.com/jmdelouis/FOSCAT_DEMO.
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes