Myosotis-Researches 0.0.30__py3-none-any.whl → 0.0.32__py3-none-any.whl

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.
@@ -1,6 +1,5 @@
1
- from .print_hdf5_structure import print_hdf5_structure
2
- from .concat_image_horizontal import concat_image_horizontal
3
- from .concat_image_vertical import concat_image_vertical
1
+ from .print_hdf5 import print_hdf5
2
+ from .concat_image import concat_image
4
3
  from .make_h5 import make_h5
5
4
 
6
- __all__ = ["print_hdf5_structure", "concat_image_horizontal", "concat_image_vertical", "make_h5"]
5
+ __all__ = ["print_hdf5", "concat_image", "make_h5"]
@@ -0,0 +1,72 @@
1
+ from PIL import Image
2
+
3
+
4
+ def _concat_image_horizontal(img_list: list[Image], gap=2) -> Image:
5
+ N = len(img_list)
6
+
7
+ # Error 1: no images
8
+ if N == 0:
9
+ raise ValueError("The length of the image list is 0.")
10
+
11
+ # Error 2: Size differs
12
+ width = img_list[0].width
13
+ height = img_list[0].height
14
+ for i in range(1, N):
15
+ if img_list[i].width != width:
16
+ raise ValueError("All images should have the same width.")
17
+ if img_list[i].height != height:
18
+ raise ValueError("All images should have the same height.")
19
+
20
+ # Create concated image
21
+ concated_width = width * N + gap * (N + 1)
22
+ concated_height = height + gap * 2
23
+ concated_image = Image.new("RGB", (concated_width, concated_height))
24
+
25
+ # Copy ans paste
26
+ for i in range(N):
27
+ concated_image.paste(img_list[i], (width * i + gap * (i + 1), gap))
28
+
29
+ # return
30
+ return concated_image
31
+
32
+
33
+ def _concat_image_vertical(img_list: list[Image], gap=2) -> Image:
34
+ N = len(img_list)
35
+
36
+ # Error 1: no images
37
+ if N == 0:
38
+ raise ValueError("The length of the image list is 0.")
39
+
40
+ # Error 2: Size differs
41
+ width = img_list[0].width
42
+ height = img_list[0].height
43
+ for i in range(1, N):
44
+ if img_list[i].width != width:
45
+ raise ValueError("All images should have the same width.")
46
+ if img_list[i].height != height:
47
+ raise ValueError("All images should have the same height.")
48
+
49
+ # Create concated image
50
+ concated_width = width + gap * 2
51
+ concated_height = height * N + gap * (N + 1)
52
+ concated_image = Image.new("RGB", (concated_width, concated_height))
53
+
54
+ # Copy ans paste
55
+ for i in range(N):
56
+ concated_image.paste(img_list[i], (gap, height * i + gap * (i + 1)))
57
+
58
+ # return
59
+ return concated_image
60
+
61
+
62
+ def concat_image(img_list: list[Image], gap=2, direction="vertical"):
63
+
64
+ if direction == "vertical":
65
+ _concat_image_vertical(img_list, gap=gap)
66
+ elif direction == "horizontal":
67
+ _concat_image_horizontal(img_list, gap=gap)
68
+ else:
69
+ raise ValueError("Direction should be 'vertical' or 'horizontal'.")
70
+
71
+
72
+ __all__ = ["concat_image"]
@@ -2,7 +2,7 @@ import h5py
2
2
  import numpy as np
3
3
  import os
4
4
  from PIL import Image
5
- from .print_hdf5_structure import print_hdf5_structure
5
+ from .print_hdf5 import print_hdf5
6
6
 
7
7
  # Make all images to a HDF5 file
8
8
  def make_h5(image_dir, h5_path, image_names = [], indx_train = None, indx_valid = None, image_labels = None, image_types = None):
@@ -38,6 +38,6 @@ def make_h5(image_dir, h5_path, image_names = [], indx_train = None, indx_valid
38
38
  f.create_dataset("types", data=image_types)
39
39
 
40
40
  # Visualize
41
- f.visititems(print_hdf5_structure)
41
+ f.visititems(print_hdf5)
42
42
 
43
43
  __all__ = ["make_h5"]
@@ -1,11 +1,11 @@
1
1
  import h5py
2
2
 
3
3
 
4
- def print_hdf5_structure(name, obj):
4
+ def print_hdf5(name, obj):
5
5
  indent = " " * name.count("/")
6
6
  if isinstance(obj, h5py.Dataset):
7
7
  print(f"{indent}[Dataset] {name} shape={obj.shape} dtype={obj.dtype}")
8
8
  elif isinstance(obj, h5py.Group):
9
9
  print(f"{indent}[Group] {name}")
10
10
 
11
- __all__ = ["print_hdf5_structure"]
11
+ __all__ = ["print_hdf5"]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: Myosotis-Researches
3
- Version: 0.0.30
3
+ Version: 0.0.32
4
4
  Summary: A repository for storing my progress of researches.
5
5
  Home-page: https://github.com/Zeyu-Xie/Myosotis-Researches
6
6
  Author: Zeyu Xie
@@ -23,4 +23,15 @@ Dynamic: summary
23
23
 
24
24
  # Myosotis-Researches
25
25
 
26
- A repository for storing my progress of researches.
26
+ ## `CcGAN` (`myosotis_researches.CcGAN`)
27
+
28
+ ### `internal`
29
+
30
+ Import
31
+
32
+ ```
33
+ from myosotis_researches.internal import *
34
+ ```
35
+
36
+ ### `utils`
37
+
@@ -44,14 +44,12 @@ myosotis_researches/CcGAN/train_128_output_10/train_cgan.py,sha256=bYJbBskTpESfC
44
44
  myosotis_researches/CcGAN/train_128_output_10/train_cgan_concat.py,sha256=PYctY3IZiHGh4TshXx3mUZBf9su_8NuV_D8InkxKQZ4,8940
45
45
  myosotis_researches/CcGAN/train_128_output_10/train_net_for_label_embed.py,sha256=4j6r4_o4rXgAN4MdUQL-TXqZJpbhH7d9gWQR8YzBlXw,6976
46
46
  myosotis_researches/CcGAN/train_128_output_10/utils.py,sha256=B-V6ct4WDisVVCOLO0W7VIBL8StPVNJJTZZ2b2NkMFU,3766
47
- myosotis_researches/CcGAN/utils/__init__.py,sha256=Pu9COV4zcXHGXuczhObersyeshVChmlEtwqp8VLUDxw,300
48
- myosotis_researches/CcGAN/utils/concat_image_horizontal.py,sha256=e6WsfO9IiSoP8zkZNz7IGimPUASr9VvyJUJdF-d40iw,954
49
- myosotis_researches/CcGAN/utils/concat_image_vertical.py,sha256=97-SuE8ZWpaeBm_ed6MAEaUOvtpzlYq_X3yWt4OEUTY,951
50
- myosotis_researches/CcGAN/utils/install_datasets.py,sha256=1WAhrzaCsWqI6vbW0awyovU2nqAtJQAEfWOdIRPQ7Jo,1121
51
- myosotis_researches/CcGAN/utils/make_h5.py,sha256=Q5OW1JA35ormmsrlAJp6XdC6x0uJBRNjsE31wM3zBiI,1422
52
- myosotis_researches/CcGAN/utils/print_hdf5_structure.py,sha256=leaR8H3GhlX6EuIXDMh36xG2zBdV-XlJkaXBuoorl6I,320
53
- myosotis_researches-0.0.30.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
54
- myosotis_researches-0.0.30.dist-info/METADATA,sha256=y82qAXcUZnwe9uxtGEXKBRHj56ggJLDLs6ummE6arsE,765
55
- myosotis_researches-0.0.30.dist-info/WHEEL,sha256=ck4Vq1_RXyvS4Jt6SI0Vz6fyVs4GWg7AINwpsaGEgPE,91
56
- myosotis_researches-0.0.30.dist-info/top_level.txt,sha256=zxAiMn5eyZNJM28MewTAkgi_RZJMbfWbzVR-KF0LdZE,20
57
- myosotis_researches-0.0.30.dist-info/RECORD,,
47
+ myosotis_researches/CcGAN/utils/__init__.py,sha256=azZ2ZSSmWREoptI_5oQ180HojMoCqv2oleveRswq40w,155
48
+ myosotis_researches/CcGAN/utils/concat_image.py,sha256=zSVFkIgj18m9wKTNWxBmZIdqMgVKF2IB2m1C65l_qyo,2151
49
+ myosotis_researches/CcGAN/utils/make_h5.py,sha256=Jzsr9q7lneHyvi5HX1m4WBNarUYU1jUsXJuHnyQlAGc,1392
50
+ myosotis_researches/CcGAN/utils/print_hdf5.py,sha256=VvmNAWtMDmg6D9V6ZbSUXrQTKRh9WIJeC4BR_ORJkco,300
51
+ myosotis_researches-0.0.32.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
52
+ myosotis_researches-0.0.32.dist-info/METADATA,sha256=no1tptSMdyKbj2_EdXmaoP1Ep2qoodtWj9n6D3JfQmo,844
53
+ myosotis_researches-0.0.32.dist-info/WHEEL,sha256=ck4Vq1_RXyvS4Jt6SI0Vz6fyVs4GWg7AINwpsaGEgPE,91
54
+ myosotis_researches-0.0.32.dist-info/top_level.txt,sha256=zxAiMn5eyZNJM28MewTAkgi_RZJMbfWbzVR-KF0LdZE,20
55
+ myosotis_researches-0.0.32.dist-info/RECORD,,
@@ -1,31 +0,0 @@
1
- from PIL import Image
2
-
3
- def concat_image_horizontal(img_list: list[Image], gap = 2) -> Image:
4
- N = len(img_list)
5
-
6
- # Error 1: no images
7
- if N == 0:
8
- raise ValueError("The length of the image list is 0.")
9
-
10
- # Error 2: Size differs
11
- width = img_list[0].width
12
- height = img_list[0].height
13
- for i in range(1, N):
14
- if img_list[i].width != width:
15
- raise ValueError("All images should have the same width.")
16
- if img_list[i].height != height:
17
- raise ValueError("All images should have the same height.")
18
-
19
- # Create concated image
20
- concated_width = width * N + gap * (N+1)
21
- concated_height = height + gap * 2
22
- concated_image = Image.new("RGB", (concated_width, concated_height))
23
-
24
- # Copy ans paste
25
- for i in range(N):
26
- concated_image.paste(img_list[i], (width * i + gap * (i+1), gap))
27
-
28
- # return
29
- return concated_image
30
-
31
- __all__ = ["concat_image_horizontal"]
@@ -1,31 +0,0 @@
1
- from PIL import Image
2
-
3
- def concat_image_vertical(img_list: list[Image], gap = 2) -> Image:
4
- N = len(img_list)
5
-
6
- # Error 1: no images
7
- if N == 0:
8
- raise ValueError("The length of the image list is 0.")
9
-
10
- # Error 2: Size differs
11
- width = img_list[0].width
12
- height = img_list[0].height
13
- for i in range(1, N):
14
- if img_list[i].width != width:
15
- raise ValueError("All images should have the same width.")
16
- if img_list[i].height != height:
17
- raise ValueError("All images should have the same height.")
18
-
19
- # Create concated image
20
- concated_width = width + gap * 2
21
- concated_height = height * N + gap * (N+1)
22
- concated_image = Image.new("RGB", (concated_width, concated_height))
23
-
24
- # Copy ans paste
25
- for i in range(N):
26
- concated_image.paste(img_list[i], (gap, height * i + gap * (i+1)))
27
-
28
- # return
29
- return concated_image
30
-
31
- __all__ = ["concat_image_vertical"]
@@ -1,46 +0,0 @@
1
- import gdown
2
- import getpass
3
- from importlib import resources
4
- import os
5
- import subprocess
6
-
7
- # Paths
8
- datasets_dir = resources.files("myosotis_researches").joinpath("CcGAN", "datasets")
9
- if not os.path.exists(datasets_dir):
10
- os.makedirs(datasets_dir, exist_ok=True)
11
-
12
- # File ID dictionary
13
- file_id_dict = {
14
- "Ra": "1CcXp7ga4Ebj7XeMA_fYH2RxTMOWvA0v5",
15
- "MNIST": "1LCQmQEBAGBI7ouBEWvIAjGKZsKcYasoe",
16
- }
17
-
18
-
19
- # Function
20
- def install_datasets(datasets_name):
21
-
22
- # Path
23
- zipped_dataset_path = os.path.join(datasets_dir, f"{datasets_name}_datasets.rar")
24
-
25
- # File ID
26
- file_id = file_id_dict[datasets_name]
27
-
28
- # URL
29
- url = f"https://drive.google.com/uc?id={file_id}"
30
-
31
- # Download
32
- gdown.download(url, zipped_dataset_path, quiet=False, use_cookies=False)
33
-
34
- # Unzip
35
- unzip_password = getpass.getpass("Password:")
36
- cmd = ["unrar", "x", f"-p{unzip_password}", zipped_dataset_path, datasets_dir]
37
- try:
38
- subprocess.run(cmd, check=True)
39
- except subprocess.CalledProcessError as e:
40
- print(e)
41
-
42
- # Delete zipped datasets
43
- os.remove(zipped_dataset_path)
44
-
45
-
46
- __all__ = ["install_datasets"]