Jacobellis Dan (dgj335) commited on
Commit
83630b2
·
1 Parent(s): 26d4693

example usage

Browse files
.gitattributes CHANGED
@@ -48,3 +48,16 @@ v0.3.5.pth filter=lfs diff=lfs merge=lfs -text
48
  v0.3.6.pth filter=lfs diff=lfs merge=lfs -text
49
  v0.3.4.pth filter=lfs diff=lfs merge=lfs -text
50
  v0.3.7.pth filter=lfs diff=lfs merge=lfs -text
 
 
 
 
 
 
 
 
 
 
 
 
 
 
48
  v0.3.6.pth filter=lfs diff=lfs merge=lfs -text
49
  v0.3.4.pth filter=lfs diff=lfs merge=lfs -text
50
  v0.3.7.pth filter=lfs diff=lfs merge=lfs -text
51
+ README_files/README_9_0.jpg filter=lfs diff=lfs merge=lfs -text
52
+ README_files/README_9_1.jpg filter=lfs diff=lfs merge=lfs -text
53
+ README_files/README_9_2.jpg filter=lfs diff=lfs merge=lfs -text
54
+ README_files/README_9_3.jpg filter=lfs diff=lfs merge=lfs -text
55
+ README_files/README_4_0.jpg filter=lfs diff=lfs merge=lfs -text
56
+ README_files/README_5_0.jpg filter=lfs diff=lfs merge=lfs -text
57
+ README_files/README_9_1.png filter=lfs diff=lfs merge=lfs -text
58
+ README_files/README_9_2.png filter=lfs diff=lfs merge=lfs -text
59
+ README_files/README_9_3.png filter=lfs diff=lfs merge=lfs -text
60
+ README_files/README_4_0.png filter=lfs diff=lfs merge=lfs -text
61
+ README_files/README_5_0.png filter=lfs diff=lfs merge=lfs -text
62
+ README_files/README_8_0.png filter=lfs diff=lfs merge=lfs -text
63
+ README_files/README_9_0.png filter=lfs diff=lfs merge=lfs -text
README.ipynb ADDED
The diff for this file is too large to render. See raw diff
 
README.md ADDED
@@ -0,0 +1,142 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ```python
2
+ !pip install walloc PyWavelets pytorch-wavelets
3
+ ```
4
+
5
+
6
+ ```python
7
+ !wget "https://r0k.us/graphics/kodak/kodak/kodim05.png"
8
+ ```
9
+
10
+
11
+ ```python
12
+ import torch
13
+ import matplotlib.pyplot as plt
14
+ from PIL import Image
15
+ from IPython.display import display
16
+ from torchvision.transforms import ToPILImage, PILToTensor
17
+ from walloc.walloc import Walloc
18
+ class Args: pass
19
+ ```
20
+
21
+
22
+ ```python
23
+ device = "cpu"
24
+ checkpoint = torch.load("v0.5.1.pth",map_location="cpu")
25
+ args = checkpoint['args']
26
+ codec = Walloc(
27
+ channels = args.channels,
28
+ J = args.J,
29
+ N = args.N,
30
+ latent_dim = args.latent_dim,
31
+ latent_bits = 6
32
+ )
33
+ codec.load_state_dict(checkpoint['model_state_dict'])
34
+ codec = codec.to(device)
35
+ ```
36
+
37
+
38
+ ```python
39
+ img = Image.open("kodim05.png")
40
+ img
41
+ ```
42
+
43
+
44
+
45
+
46
+
47
+ ![png](README_files/README_4_0.png)
48
+
49
+
50
+
51
+
52
+
53
+ ```python
54
+ with torch.no_grad():
55
+ codec.eval()
56
+ x = PILToTensor()(img).to(torch.float)
57
+ x = (x/255 - 0.5).unsqueeze(0).to(device)
58
+ x_hat, _, _ = codec(x)
59
+ ToPILImage()(x_hat[0]+0.5)
60
+ ```
61
+
62
+
63
+
64
+
65
+
66
+ ![png](README_files/README_5_0.png)
67
+
68
+
69
+
70
+
71
+
72
+ ```python
73
+ with torch.no_grad():
74
+ codec.eval()
75
+ X = codec.wavelet_analysis(x,J=codec.J)
76
+ Y = codec.encoder(X)
77
+ X_hat = codec.decoder(Y)
78
+ x_hat = codec.wavelet_synthesis(X_hat,J=codec.J)
79
+
80
+ print(f"dimensionality reduction: {x.numel()/Y.numel()}x")
81
+ ```
82
+
83
+ dimensionality reduction: 16.0x
84
+
85
+
86
+
87
+ ```python
88
+ Y.unique()
89
+ ```
90
+
91
+
92
+
93
+
94
+ tensor([-31., -30., -29., -28., -27., -26., -25., -24., -23., -22., -21., -20.,
95
+ -19., -18., -17., -16., -15., -14., -13., -12., -11., -10., -9., -8.,
96
+ -7., -6., -5., -4., -3., -2., -1., 0., 1., 2., 3., 4.,
97
+ 5., 6., 7., 8., 9., 10., 11., 12., 13., 14., 15., 16.,
98
+ 17., 18., 19., 20., 21., 22., 23., 24., 25., 26., 27., 28.,
99
+ 29., 30., 31.])
100
+
101
+
102
+
103
+
104
+ ```python
105
+ plt.hist(Y.flatten().numpy(),range=(-32,32),bins=65);
106
+ ```
107
+
108
+
109
+
110
+ ![png](README_files/README_8_0.png)
111
+
112
+
113
+
114
+
115
+ ```python
116
+ for latent in Y[0,:4,:,:]:
117
+ display(ToPILImage()(0.5*latent/codec.latent_max + 0.5).resize((192,128),resample=Image.Resampling.NEAREST))
118
+ ```
119
+
120
+
121
+
122
+ ![png](README_files/README_9_0.png)
123
+
124
+
125
+
126
+
127
+
128
+ ![png](README_files/README_9_1.png)
129
+
130
+
131
+
132
+
133
+
134
+ ![png](README_files/README_9_2.png)
135
+
136
+
137
+
138
+
139
+
140
+ ![png](README_files/README_9_3.png)
141
+
142
+
README_files/README_4_0.jpg ADDED

Git LFS Details

  • SHA256: ef41fc5759775e9ed83f9850321bd1fc7db7891d0dd0b23521071bd4414045ec
  • Pointer size: 131 Bytes
  • Size of remote file: 101 kB
README_files/README_4_0.png ADDED

Git LFS Details

  • SHA256: d69f75f606233935cf37e7e89d4127e5258084bf96e03ff9b23fe393991683e7
  • Pointer size: 131 Bytes
  • Size of remote file: 802 kB
README_files/README_5_0.jpg ADDED

Git LFS Details

  • SHA256: 3aec80fdd2f145ca0a4ded3366c14cb924db78164c03e72a9e0c428149841965
  • Pointer size: 130 Bytes
  • Size of remote file: 80.2 kB
README_files/README_5_0.png ADDED

Git LFS Details

  • SHA256: 3e369ae447849364fb12f9876c678e86212efaf4a4bb3df5daa5124c73ba1972
  • Pointer size: 131 Bytes
  • Size of remote file: 709 kB
README_files/README_8_0.png ADDED

Git LFS Details

  • SHA256: 47de82592423ffd1ac9b3eb111fe74ef688cacd03704330fb88b2d5954cf8b38
  • Pointer size: 130 Bytes
  • Size of remote file: 12.4 kB
README_files/README_9_0.jpg ADDED

Git LFS Details

  • SHA256: 6f8d9f49891f70f8db7db670cfeceddd6cc134731257b245a0a7775e0915a60e
  • Pointer size: 129 Bytes
  • Size of remote file: 5.05 kB
README_files/README_9_0.png ADDED

Git LFS Details

  • SHA256: cfdbfed35d4fb4ddd9842950e556aaec92f58b347b266a5c8818e26958acf1e6
  • Pointer size: 129 Bytes
  • Size of remote file: 2.56 kB
README_files/README_9_1.jpg ADDED

Git LFS Details

  • SHA256: 79efe7ed1141cbbb1ffcfa2efb595e0122a87ecdaf6455ba35ec4eef02e393b3
  • Pointer size: 129 Bytes
  • Size of remote file: 4.87 kB
README_files/README_9_1.png ADDED

Git LFS Details

  • SHA256: bcb76192dbfb41af3672f1c412bb0e5cf3eebbb3d27e2a8a5ab62f00795c3cf2
  • Pointer size: 129 Bytes
  • Size of remote file: 2.61 kB
README_files/README_9_2.jpg ADDED

Git LFS Details

  • SHA256: 2f9be884c643b9fe3fbf030e70808f75a493fb7a132c7233d9b99e5e026ca821
  • Pointer size: 129 Bytes
  • Size of remote file: 5.15 kB
README_files/README_9_2.png ADDED

Git LFS Details

  • SHA256: 0a06a9963f1f6265f44f98ed97ff3e8c7555b83d85b8cbb2e1b23200128ae552
  • Pointer size: 129 Bytes
  • Size of remote file: 2.63 kB
README_files/README_9_3.jpg ADDED

Git LFS Details

  • SHA256: acd595a310ed9752402bb73c0bfbcd5af59a45d6598edea40a2c9d17f3c54351
  • Pointer size: 129 Bytes
  • Size of remote file: 5.48 kB
README_files/README_9_3.png ADDED

Git LFS Details

  • SHA256: aa1e5187d0e83e9b5634099da2b940eb275b6a47d4b863268b3868b522cfaf91
  • Pointer size: 129 Bytes
  • Size of remote file: 2.65 kB