spikezoo 0.2.2__py3-none-any.whl → 0.2.3.2__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- spikezoo/__init__.py +23 -7
- spikezoo/archs/bsf/models/bsf/bsf.py +37 -25
- spikezoo/archs/bsf/models/bsf/rep.py +2 -2
- spikezoo/archs/spk2imgnet/nets.py +1 -1
- spikezoo/archs/ssir/models/networks.py +1 -1
- spikezoo/archs/ssml/model.py +9 -5
- spikezoo/archs/stir/metrics/losses.py +1 -1
- spikezoo/archs/stir/models/networks_STIR.py +16 -9
- spikezoo/archs/tfi/nets.py +1 -1
- spikezoo/archs/tfp/nets.py +1 -1
- spikezoo/archs/wgse/dwtnets.py +6 -6
- spikezoo/datasets/__init__.py +11 -9
- spikezoo/datasets/base_dataset.py +10 -3
- spikezoo/datasets/realworld_dataset.py +1 -3
- spikezoo/datasets/{reds_small_dataset.py → reds_base_dataset.py} +9 -8
- spikezoo/datasets/reds_ssir_dataset.py +181 -0
- spikezoo/datasets/szdata_dataset.py +5 -15
- spikezoo/datasets/uhsr_dataset.py +4 -3
- spikezoo/models/__init__.py +8 -6
- spikezoo/models/base_model.py +120 -64
- spikezoo/models/bsf_model.py +11 -3
- spikezoo/models/spcsnet_model.py +19 -0
- spikezoo/models/spikeclip_model.py +4 -3
- spikezoo/models/spk2imgnet_model.py +9 -15
- spikezoo/models/ssir_model.py +4 -6
- spikezoo/models/ssml_model.py +44 -2
- spikezoo/models/stir_model.py +26 -5
- spikezoo/models/tfi_model.py +3 -1
- spikezoo/models/tfp_model.py +4 -2
- spikezoo/models/wgse_model.py +8 -14
- spikezoo/pipeline/base_pipeline.py +79 -55
- spikezoo/pipeline/ensemble_pipeline.py +10 -9
- spikezoo/pipeline/train_cfgs.py +89 -0
- spikezoo/pipeline/train_pipeline.py +129 -30
- spikezoo/utils/optimizer_utils.py +22 -0
- spikezoo/utils/other_utils.py +31 -6
- spikezoo/utils/scheduler_utils.py +25 -0
- spikezoo/utils/spike_utils.py +61 -29
- spikezoo-0.2.3.2.dist-info/METADATA +263 -0
- {spikezoo-0.2.2.dist-info → spikezoo-0.2.3.2.dist-info}/RECORD +43 -80
- spikezoo/archs/__pycache__/__init__.cpython-39.pyc +0 -0
- spikezoo/archs/base/__pycache__/nets.cpython-39.pyc +0 -0
- spikezoo/archs/bsf/models/bsf/__pycache__/align.cpython-39.pyc +0 -0
- spikezoo/archs/bsf/models/bsf/__pycache__/bsf.cpython-39.pyc +0 -0
- spikezoo/archs/bsf/models/bsf/__pycache__/rep.cpython-39.pyc +0 -0
- spikezoo/archs/spikeclip/__pycache__/nets.cpython-39.pyc +0 -0
- spikezoo/archs/spikeformer/CheckPoints/readme +0 -1
- spikezoo/archs/spikeformer/DataProcess/DataExtactor.py +0 -60
- spikezoo/archs/spikeformer/DataProcess/DataLoader.py +0 -115
- spikezoo/archs/spikeformer/DataProcess/LoadSpike.py +0 -39
- spikezoo/archs/spikeformer/EvalResults/readme +0 -1
- spikezoo/archs/spikeformer/LICENSE +0 -21
- spikezoo/archs/spikeformer/Metrics/Metrics.py +0 -50
- spikezoo/archs/spikeformer/Metrics/__init__.py +0 -0
- spikezoo/archs/spikeformer/Model/Loss.py +0 -89
- spikezoo/archs/spikeformer/Model/SpikeFormer.py +0 -230
- spikezoo/archs/spikeformer/Model/__init__.py +0 -0
- spikezoo/archs/spikeformer/Model/__pycache__/SpikeFormer.cpython-39.pyc +0 -0
- spikezoo/archs/spikeformer/Model/__pycache__/__init__.cpython-39.pyc +0 -0
- spikezoo/archs/spikeformer/README.md +0 -30
- spikezoo/archs/spikeformer/evaluate.py +0 -87
- spikezoo/archs/spikeformer/recon_real_data.py +0 -97
- spikezoo/archs/spikeformer/requirements.yml +0 -95
- spikezoo/archs/spikeformer/train.py +0 -173
- spikezoo/archs/spikeformer/utils.py +0 -22
- spikezoo/archs/spk2imgnet/__pycache__/DCNv2.cpython-39.pyc +0 -0
- spikezoo/archs/spk2imgnet/__pycache__/align_arch.cpython-39.pyc +0 -0
- spikezoo/archs/spk2imgnet/__pycache__/nets.cpython-39.pyc +0 -0
- spikezoo/archs/ssir/models/__pycache__/layers.cpython-39.pyc +0 -0
- spikezoo/archs/ssir/models/__pycache__/networks.cpython-39.pyc +0 -0
- spikezoo/archs/ssml/__pycache__/cbam.cpython-39.pyc +0 -0
- spikezoo/archs/ssml/__pycache__/model.cpython-39.pyc +0 -0
- spikezoo/archs/stir/models/__pycache__/networks_STIR.cpython-39.pyc +0 -0
- spikezoo/archs/stir/models/__pycache__/submodules.cpython-39.pyc +0 -0
- spikezoo/archs/stir/models/__pycache__/transformer_new.cpython-39.pyc +0 -0
- spikezoo/archs/stir/package_core/package_core/__pycache__/__init__.cpython-39.pyc +0 -0
- spikezoo/archs/stir/package_core/package_core/__pycache__/net_basics.cpython-39.pyc +0 -0
- spikezoo/archs/tfi/__pycache__/nets.cpython-39.pyc +0 -0
- spikezoo/archs/tfp/__pycache__/nets.cpython-39.pyc +0 -0
- spikezoo/archs/wgse/__pycache__/dwtnets.cpython-39.pyc +0 -0
- spikezoo/archs/wgse/__pycache__/submodules.cpython-39.pyc +0 -0
- spikezoo/models/spikeformer_model.py +0 -50
- spikezoo-0.2.2.dist-info/METADATA +0 -196
- {spikezoo-0.2.2.dist-info → spikezoo-0.2.3.2.dist-info}/LICENSE.txt +0 -0
- {spikezoo-0.2.2.dist-info → spikezoo-0.2.3.2.dist-info}/WHEEL +0 -0
- {spikezoo-0.2.2.dist-info → spikezoo-0.2.3.2.dist-info}/top_level.txt +0 -0
@@ -1,8 +1,6 @@
|
|
1
|
-
spikezoo/__init__.py,sha256=
|
1
|
+
spikezoo/__init__.py,sha256=3z97Jy20aDJoK3e1ECXneY-i5jLj9Idop5ClHeJLYGE,604
|
2
2
|
spikezoo/archs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
3
|
-
spikezoo/archs/__pycache__/__init__.cpython-39.pyc,sha256=Ba5cgbZ2jiTexmzMbqpADlFBQGzqLPtU-YbGhY9wJa0,175
|
4
3
|
spikezoo/archs/base/nets.py,sha256=j-XDEkntYl4M6xe-jqyUOhFBlhh8efNwy4qu-WVqjc4,1311
|
5
|
-
spikezoo/archs/base/__pycache__/nets.cpython-39.pyc,sha256=Ie9588wEf8hRFO7donRgviMdoSK4jeeGZn56FDa_tg8,1554
|
6
4
|
spikezoo/archs/bsf/README.md,sha256=maT9K0dZcwFPiYWmFISVogF-INTwNr6alqHSNKlk7G0,2777
|
7
5
|
spikezoo/archs/bsf/main.py,sha256=at4CWWqaoGo1k6PqRBOi_PixtDPmND6_7mU6LvWWnLI,15136
|
8
6
|
spikezoo/archs/bsf/requirements.txt,sha256=ZQCaKDZAJvmFtKPcbDSIP3gBpg_YdvwCpaDkS__kfHE,79
|
@@ -14,12 +12,9 @@ spikezoo/archs/bsf/metrics/psnr.py,sha256=OntyhZtYIKEbdy5w-qwkl6mBt767W5pitDEjMm
|
|
14
12
|
spikezoo/archs/bsf/metrics/ssim.py,sha256=RxVoEMJPgu370DWfDRE01UnTOorh-Xy0DldXQFhAi4o,1818
|
15
13
|
spikezoo/archs/bsf/models/get_model.py,sha256=acp0f10J81ue_lSJHlMfGeMq7IijZmPsw9Trg0nqKiQ,129
|
16
14
|
spikezoo/archs/bsf/models/bsf/align.py,sha256=X_Ud0oCZSYGFQ8DWvOG4yozUaDOJi4X44vBiXsBThiI,7979
|
17
|
-
spikezoo/archs/bsf/models/bsf/bsf.py,sha256=
|
15
|
+
spikezoo/archs/bsf/models/bsf/bsf.py,sha256=W3xwHXcKODJqfSRc_Kn-7C_YjVGpse_mZ2tbrDJ6w0Q,4060
|
18
16
|
spikezoo/archs/bsf/models/bsf/dsft_convert.py,sha256=xpFwWFl1ms9LxaA96xdDOf-h_S6foScc3oh-nGjSG-o,3110
|
19
|
-
spikezoo/archs/bsf/models/bsf/rep.py,sha256=
|
20
|
-
spikezoo/archs/bsf/models/bsf/__pycache__/align.cpython-39.pyc,sha256=vGZzrpGGFZeVzf-FGdA3Sq8u87y7CZ-wC93vgPwkT4E,7082
|
21
|
-
spikezoo/archs/bsf/models/bsf/__pycache__/bsf.cpython-39.pyc,sha256=XreuEfY7R00NN4GXjZQpt_x44n6vIfjDher7qNOWq5c,4216
|
22
|
-
spikezoo/archs/bsf/models/bsf/__pycache__/rep.cpython-39.pyc,sha256=RtKNwwHV0-vQ3AKGyDUeaeDVFopQLsVDEIdqklJIAxw,1860
|
17
|
+
spikezoo/archs/bsf/models/bsf/rep.py,sha256=Y3YPADL6ndu4u7RwYUFqmGVUqzW0HbgXKu4Z7x52Alg,1660
|
23
18
|
spikezoo/archs/bsf/prepare_data/DSFT.py,sha256=RDFREQc-pAGxpETgb1umjQNnLAmpqsRpEmsrjrG4hEU,2203
|
24
19
|
spikezoo/archs/bsf/prepare_data/crop_dataset_train.py,sha256=CpKIhI8kc5TzWMGSHY33IlROBTrXrY0kVGxKLvwjcvo,6050
|
25
20
|
spikezoo/archs/bsf/prepare_data/crop_dataset_val.py,sha256=Zrfe2rsnHXB-TikO9J6s0SL_u0jg492NgXSCebgvK5A,6009
|
@@ -27,39 +22,16 @@ spikezoo/archs/bsf/prepare_data/crop_train.sh,sha256=VoIqvQ1TWSj5uvkcp6EZIo28egI
|
|
27
22
|
spikezoo/archs/bsf/prepare_data/crop_val.sh,sha256=PY45EGOvdn89hAUWmeIwHrzzMWmwBbqGYgh0y5oYzP4,185
|
28
23
|
spikezoo/archs/bsf/prepare_data/io_utils.py,sha256=GUs7ocNekOKMSfMNjHAWbZFSOWXiLRtboQLl5NiY-CI,1850
|
29
24
|
spikezoo/archs/spikeclip/nets.py,sha256=j2rPD3AFWLl142XxmQL4PxWw06f4gHi8zjBUjndJ8pQ,1433
|
30
|
-
spikezoo/archs/spikeclip/__pycache__/nets.cpython-39.pyc,sha256=Bp7ISUzHzcIj5ebzUzry2pDrWdg1dlr-GH72wWTHkiM,1570
|
31
|
-
spikezoo/archs/spikeformer/LICENSE,sha256=YYnrgInlCj2xhRzxoWJZDx6DGHe85AxmozL-SyCrW8k,1069
|
32
|
-
spikezoo/archs/spikeformer/README.md,sha256=e1OWqkquJpkAG-TpzB6M0Eaob2-I0zgYgk70kanLoOk,1089
|
33
|
-
spikezoo/archs/spikeformer/evaluate.py,sha256=4orJqfDyfXNiRJpOJP_JdybdcoGHMV8ugMMhGn6WX8Q,2986
|
34
|
-
spikezoo/archs/spikeformer/recon_real_data.py,sha256=GxWPYJLJRpzAp0p1XfH1wBlgt5aY-RH6UxVRm7AV17s,3250
|
35
|
-
spikezoo/archs/spikeformer/requirements.yml,sha256=v-9a7_nyM1Rj6rZPiXPD9pxMIm0C1BO9qOyjCgdHQzI,2856
|
36
|
-
spikezoo/archs/spikeformer/train.py,sha256=t8N38QUw4NagABV5gkgWi_UssbDQOcTmOgGmZJDrToA,6655
|
37
|
-
spikezoo/archs/spikeformer/utils.py,sha256=DK0qJA01_Hs0VL9pcdyHdctJoJVr2zTPkWhk-6aT6yk,821
|
38
|
-
spikezoo/archs/spikeformer/CheckPoints/readme,sha256=h_HwP9-B0O3-fBTUVNNXcoGzVV6KBFakWSlXJGlpIRg,47
|
39
|
-
spikezoo/archs/spikeformer/DataProcess/DataExtactor.py,sha256=N_OMPASjaqXOQhGokGPehrMUwaxgh9ybF_diVycRuA8,1319
|
40
|
-
spikezoo/archs/spikeformer/DataProcess/DataLoader.py,sha256=28T5hlS1qZVhHbtn1CS22V7uqX_BXlD-GqAz3HyoFOc,2951
|
41
|
-
spikezoo/archs/spikeformer/DataProcess/LoadSpike.py,sha256=sR4tIiKLBxEyF8bzNjLJsILmBNSlYjKs8On_-c-M3yk,1580
|
42
|
-
spikezoo/archs/spikeformer/EvalResults/readme,sha256=o3kRLSB6ZZPRW4naL9EghJuMvsLOnrHKauVMfWItnBM,83
|
43
|
-
spikezoo/archs/spikeformer/Metrics/Metrics.py,sha256=YxfJSL_8UqASCy2R2G-ZCumdRFGNFCxksk8PlMwpStM,1240
|
44
|
-
spikezoo/archs/spikeformer/Metrics/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
45
|
-
spikezoo/archs/spikeformer/Model/Loss.py,sha256=evR1RuiU-A63p1llK_TdFJ0BCyf9l2yVraoKzzlMzEM,3183
|
46
|
-
spikezoo/archs/spikeformer/Model/SpikeFormer.py,sha256=W_nSR4m2YlE_EUaVNcz_eB8QO3Ns5dJUhOzIPL20yZc,7171
|
47
|
-
spikezoo/archs/spikeformer/Model/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
48
|
-
spikezoo/archs/spikeformer/Model/__pycache__/SpikeFormer.cpython-39.pyc,sha256=_ofZvPDudojhpBGitJ9BP-lHQPlVLH5hwo1fi8W2E3E,7057
|
49
|
-
spikezoo/archs/spikeformer/Model/__pycache__/__init__.cpython-39.pyc,sha256=QxKCbkXZoN8TlFT05KDorzQWZH4eXsOTYTl0y_-J-8o,193
|
50
25
|
spikezoo/archs/spk2imgnet/.gitignore,sha256=LvYh4-uHW8ZL6P5S7I6f35ZaKULvuVoBQ06ia6r1llM,2148
|
51
26
|
spikezoo/archs/spk2imgnet/DCNv2.py,sha256=KqAWzoOQFX1eEqaIP90Ahhj88qvk2K-J21WyzOMQwt4,4715
|
52
27
|
spikezoo/archs/spk2imgnet/align_arch.py,sha256=NpEDZy4YX2JD6mNrw1FOfyPpMqQ866ylYktl-kRzwIU,6264
|
53
28
|
spikezoo/archs/spk2imgnet/dataset.py,sha256=ROGBtAYtIfTLAmpCUpEkYeLWTAC8QGMpS8Tfq7jK-K8,4794
|
54
|
-
spikezoo/archs/spk2imgnet/nets.py,sha256=
|
29
|
+
spikezoo/archs/spk2imgnet/nets.py,sha256=ELEqYElUWp-NNHA9cF2ABweWiSVZ9IJYb2OLQ106WgQ,8061
|
55
30
|
spikezoo/archs/spk2imgnet/readme.md,sha256=0uYl7DEeXQ7EmioqIHAkmkWXIcvxpY6n12hFTwpyjr0,2591
|
56
31
|
spikezoo/archs/spk2imgnet/test_gen_imgseq.py,sha256=UpqerSdtF5qMODIxAuVY3JnhsPy8GjNQA_4xl5X7dwk,4359
|
57
32
|
spikezoo/archs/spk2imgnet/train.py,sha256=ncNwAhFlAhDd4rMkSeAjBhRECp2En1hAZn2-RH7jVpU,6195
|
58
33
|
spikezoo/archs/spk2imgnet/utils.py,sha256=Gc-05AJDfiXqkDAaiTeLBa2oiD78l1PPrBP6frlFy30,1924
|
59
34
|
spikezoo/archs/spk2imgnet/.github/workflows/pylint.yml,sha256=lNUdbM2y3yOGPPrGUNDjnQL3fJnswtFIsuLpchBfLAc,553
|
60
|
-
spikezoo/archs/spk2imgnet/__pycache__/DCNv2.cpython-39.pyc,sha256=1mSOxJwgg-5bCAwqgIp6VOUWmHpaRv4ILnkgEiCGaI0,4095
|
61
|
-
spikezoo/archs/spk2imgnet/__pycache__/align_arch.cpython-39.pyc,sha256=WqnFKRXqXZY74-4CBp9vpebg98tzwrSsvXibOU1AzO8,4361
|
62
|
-
spikezoo/archs/spk2imgnet/__pycache__/nets.cpython-39.pyc,sha256=Kam188Xp8paFk0ZhgzHfOrNibFDExu53MQNge5aM6lI,5862
|
63
35
|
spikezoo/archs/ssir/README.md,sha256=0e56N8SqYfDRgyoyxaMctJqJ2DeWdQ4NUlLDQEUr2O0,2518
|
64
36
|
spikezoo/archs/ssir/losses.py,sha256=mUEghvJQoLM4bTs0AmDa5sZedEHWo_GksW2ojNWYYC8,623
|
65
37
|
spikezoo/archs/ssir/main.py,sha256=Pn0mmUST4hg_BJPOU6NWvorjuZ0OHncFOzVEtxDEPQQ,12054
|
@@ -74,17 +46,13 @@ spikezoo/archs/ssir/metrics/psnr.py,sha256=OntyhZtYIKEbdy5w-qwkl6mBt767W5pitDEjM
|
|
74
46
|
spikezoo/archs/ssir/metrics/ssim.py,sha256=RxVoEMJPgu370DWfDRE01UnTOorh-Xy0DldXQFhAi4o,1818
|
75
47
|
spikezoo/archs/ssir/models/Vgg19.py,sha256=BKYf51YqQantkuxGM5S3yD2a5Pf2nYBzEfmA0XqTjGU,1435
|
76
48
|
spikezoo/archs/ssir/models/layers.py,sha256=gYShN5cp3B1GaNmQD5_6CpYSt6k6h0cZ5IJNtrt0dCw,3450
|
77
|
-
spikezoo/archs/ssir/models/networks.py,sha256
|
78
|
-
spikezoo/archs/ssir/models/__pycache__/layers.cpython-39.pyc,sha256=jUAodYnILqoNJWWU2P5b1EgGItM2cSppoYWeQNKtals,3753
|
79
|
-
spikezoo/archs/ssir/models/__pycache__/networks.cpython-39.pyc,sha256=XiOQdwmw-VLLBw4LEvE8PWP8nouKX6IXu_HXOB8DGHw,2799
|
49
|
+
spikezoo/archs/ssir/models/networks.py,sha256=-qwwwC9SWcOzf_TcswnudoOVSjZNvRMiAg5-NRDl14I,1946
|
80
50
|
spikezoo/archs/ssir/shells/eval_SREDS.sh,sha256=byjDfNb_NAO8z28L7Laktlc3qYZjfeY5qn0pkMmql9E,112
|
81
51
|
spikezoo/archs/ssir/shells/train_SSIR.sh,sha256=y-LlaWNqOKwGUXKm2NodCgM3LYOIans25kN7CgDJ9z4,256
|
82
52
|
spikezoo/archs/ssml/cbam.py,sha256=hfVI1vYpboEPRBMKWqWjVlqX41XQi7A4Pwou5PJlPXo,8869
|
83
|
-
spikezoo/archs/ssml/model.py,sha256=
|
53
|
+
spikezoo/archs/ssml/model.py,sha256=DqTwDbwS7diZPxjVz580lAarPeZZ43EtaNjMJWN2Ujo,10354
|
84
54
|
spikezoo/archs/ssml/res.png,sha256=o8VLsy8-znCM9ZoSbsBmV3dTd8O0R48JWyNtuIekQIY,37233
|
85
55
|
spikezoo/archs/ssml/test.py,sha256=3yrMAWDBdhpyVjqNeuDtz1s2XemrR9ZXZDo8yTUAfac,2036
|
86
|
-
spikezoo/archs/ssml/__pycache__/cbam.cpython-39.pyc,sha256=wtXvwDBTBBEeRhfmXeNAmbUN6puFxomELtQHk-xHnxA,8678
|
87
|
-
spikezoo/archs/ssml/__pycache__/model.cpython-39.pyc,sha256=tgYpLrpWboUAruKwXbzvdCe78ODXryO0lGKgRt2u7to,10192
|
88
56
|
spikezoo/archs/stir/.git-credentials,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
89
57
|
spikezoo/archs/stir/README.md,sha256=WA0QvTGiH8kDQ4mNwj4lnZHypKSDVf_UWXckXnXltJc,3223
|
90
58
|
spikezoo/archs/stir/eval_SREDS.sh,sha256=dihTfrrr0jbkXEbpEStKgsk-t5L_4ehu9mpeMliJbME,144
|
@@ -97,16 +65,13 @@ spikezoo/archs/stir/configs/utils.py,sha256=ebPww68XHeS2Ip8G8FD7AxRDh2-cPk1VFKBP
|
|
97
65
|
spikezoo/archs/stir/configs/yml_parser.py,sha256=4IMJSoMKyBU00Qv4K7mmRBT0YFCLPHb7h7J0pIGtBLo,2078
|
98
66
|
spikezoo/archs/stir/datasets/dataset_sreds.py,sha256=lN-woOl1RJ1Q5t7ttPIZizdkUMtYCTfXj_LAn78kqr4,6803
|
99
67
|
spikezoo/archs/stir/datasets/ds_utils.py,sha256=RfQyC_8Y50-R-xnxlGooNwAoaTvviIlSQrrRIgDMGqc,1939
|
100
|
-
spikezoo/archs/stir/metrics/losses.py,sha256=
|
68
|
+
spikezoo/archs/stir/metrics/losses.py,sha256=pOs0XYZuKPIjppWwEmx8CXpDPqhq5QcR0NMMUZUR01o,7768
|
101
69
|
spikezoo/archs/stir/metrics/psnr.py,sha256=OntyhZtYIKEbdy5w-qwkl6mBt767W5pitDEjMmnqjRo,707
|
102
70
|
spikezoo/archs/stir/metrics/ssim.py,sha256=RxVoEMJPgu370DWfDRE01UnTOorh-Xy0DldXQFhAi4o,1818
|
103
71
|
spikezoo/archs/stir/models/Vgg19.py,sha256=BKYf51YqQantkuxGM5S3yD2a5Pf2nYBzEfmA0XqTjGU,1435
|
104
|
-
spikezoo/archs/stir/models/networks_STIR.py,sha256=
|
72
|
+
spikezoo/archs/stir/models/networks_STIR.py,sha256=dU19BT2sAZMa-avJPdQvC48orMFUYsE05ZzWPIZA9Sg,15746
|
105
73
|
spikezoo/archs/stir/models/submodules.py,sha256=gr0W8_ghP6pF5E5M1Ii58XYXOzR5ox8n0Xoh0vDAv6c,3360
|
106
74
|
spikezoo/archs/stir/models/transformer_new.py,sha256=INZFO156bD4A0t5agChPT87uPDJXiu9gibXMORZgzxk,6343
|
107
|
-
spikezoo/archs/stir/models/__pycache__/networks_STIR.cpython-39.pyc,sha256=GZ5MB9hqinl17F51CtdfYw0EoC75eQF4SGhrwb_WcKk,13282
|
108
|
-
spikezoo/archs/stir/models/__pycache__/submodules.cpython-39.pyc,sha256=zVNI7hYN7S2yvTKYJt8FIXSU5yUg1rfE4tyZ5zPrsWo,3640
|
109
|
-
spikezoo/archs/stir/models/__pycache__/transformer_new.cpython-39.pyc,sha256=N1ZPGfGsHXI9b1bwRAOh40eJWlmYfmK7DF9qDr248d0,5939
|
110
75
|
spikezoo/archs/stir/package_core/setup.py,sha256=l0ZAYjzpqI6IvNFm5pHOmf5jmapFXqJSdOk8SBNupc0,112
|
111
76
|
spikezoo/archs/stir/package_core/build/lib/package_core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
112
77
|
spikezoo/archs/stir/package_core/build/lib/package_core/convertions.py,sha256=aKnq_wJ8sddEI2T0ITxukpDdiKsdt-zf3nzM2CHFxGs,26159
|
@@ -139,28 +104,22 @@ spikezoo/archs/stir/package_core/package_core/net_basics.py,sha256=QX_5zlC5-_ITT
|
|
139
104
|
spikezoo/archs/stir/package_core/package_core/resnet.py,sha256=l93GwsKVBl75tUMYLZWkzZjNhO3B_Yoissb3oUdq3zE,13627
|
140
105
|
spikezoo/archs/stir/package_core/package_core/transforms.py,sha256=_hE5Y6EWsxacwcfdI1jS-wCvwGkA32-k-4XLPVhquDY,3779
|
141
106
|
spikezoo/archs/stir/package_core/package_core/utils.py,sha256=icSibxXKqEZyHL8GU1J0PMahCfxwVSwBtLGW_kHV25g,2316
|
142
|
-
spikezoo/archs/stir/package_core/package_core/__pycache__/__init__.cpython-39.pyc,sha256=kMkbhE8EH_BDTqvZladciovDa11NWsKJTLZor2XXliE,206
|
143
|
-
spikezoo/archs/stir/package_core/package_core/__pycache__/net_basics.cpython-39.pyc,sha256=ZHXtxnR4tYqkTl79drTDby1cu2c_SzgYBLQMMuyVwYQ,3622
|
144
107
|
spikezoo/archs/stir/package_core/package_core.egg-info/PKG-INFO,sha256=2njov-JTXZp2Sgwyx7KSL0fIPNyOR-lUYSSxIiDQH_Q,56
|
145
108
|
spikezoo/archs/stir/package_core/package_core.egg-info/SOURCES.txt,sha256=rTCDnAkAo4JuMaJgXeumnUODeQBpefgwT-dqrIUXoRc,541
|
146
109
|
spikezoo/archs/stir/package_core/package_core.egg-info/dependency_links.txt,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
147
110
|
spikezoo/archs/stir/package_core/package_core.egg-info/top_level.txt,sha256=ezjGZVvZhOw8f-HRDngFtMvGh0NfvyT3sKcG4sSOSoc,13
|
148
|
-
spikezoo/archs/tfi/nets.py,sha256=
|
149
|
-
spikezoo/archs/
|
150
|
-
spikezoo/archs/tfp/nets.py,sha256=e1UzuOizrXX3AaW0fvIvvjyqZ905La2EFCWJlytk7A0,383
|
151
|
-
spikezoo/archs/tfp/__pycache__/nets.cpython-39.pyc,sha256=HsOsttvdfAoTFsq1HTsFhaDnOU9ZJ6LFZG0XSgvNMYk,847
|
111
|
+
spikezoo/archs/tfi/nets.py,sha256=IpXGoemHjan6FpFZjt2VU-pWE6AptsTlCFf20ha86zo,1382
|
112
|
+
spikezoo/archs/tfp/nets.py,sha256=mNngiPBEXcNH4yP6PiwOgsTS8dOhHvdnXq-UNuhfpxY,388
|
152
113
|
spikezoo/archs/wgse/README.md,sha256=vUKBdCOV1MMr3ZqfXgiim99dYTERinrkzejhY-uwoiQ,3151
|
153
114
|
spikezoo/archs/wgse/dataset.py,sha256=pCvOrFRHn7tCku1bAi9vLL_tPIZQnwj57mfvSjnwFgc,1822
|
154
115
|
spikezoo/archs/wgse/demo.png,sha256=6SdZmRf6WYd6OHa1ll0F8msbnR_gsHiuqR3OLmYi1fU,64157
|
155
116
|
spikezoo/archs/wgse/demo.py,sha256=9lQDIi5at95ky0ccRdcdYYxiA9U8anX2DsXTlZTIQaQ,2416
|
156
|
-
spikezoo/archs/wgse/dwtnets.py,sha256=
|
117
|
+
spikezoo/archs/wgse/dwtnets.py,sha256=oCKQspqO_61IkXdFMxKTlK6HXge2FcqfObx9Llb426U,4096
|
157
118
|
spikezoo/archs/wgse/eval.py,sha256=5Daj-1eoYRqjgp3hf6W3m54jtcVoydBPBb0bR0ZIDF0,3888
|
158
119
|
spikezoo/archs/wgse/submodules.py,sha256=qFsOnAFx7uwvIo9ymUPm3Yo6JvYnZYhrnnJyqFoPJWw,2326
|
159
120
|
spikezoo/archs/wgse/train.py,sha256=8y8rjTuTFiSnYR6wWibk_mTszsINV995BoO8nxR_u18,9361
|
160
121
|
spikezoo/archs/wgse/transform.py,sha256=bX3jPacCJdOo1FZmDgIZgS5DWrkUs3kw8njJeHh0NLQ,4532
|
161
122
|
spikezoo/archs/wgse/utils.py,sha256=UXTo8HoeB4BwSLXSbi3AyM1tokPnJ--Giz9ln2Yr0nQ,3892
|
162
|
-
spikezoo/archs/wgse/__pycache__/dwtnets.cpython-39.pyc,sha256=U0zs8m7ZzDRqrclKEeU5z5YFBBHjEbzChrOCXWMMp-I,3780
|
163
|
-
spikezoo/archs/wgse/__pycache__/submodules.cpython-39.pyc,sha256=J5JCZwJBhWRP1JQXCrxPes1tJBg_ggKVym81aTsBpYQ,2179
|
164
123
|
spikezoo/archs/wgse/logs/WGSE-Dwt1dNet-db8-5-ks3/log.txt,sha256=99XvHRXAhKc8E6JwP8fFBBjjFFEvrtOL2y17ibYXiZc,990
|
165
124
|
spikezoo/archs/wgse/weights/demo.png,sha256=jy3xM3Fe_A4b79wbxHoiPGHzMmfK_LMcMs3Y9nT1i3o,69728
|
166
125
|
spikezoo/data/base/test/gt/200_part1_key_id151.png,sha256=hkKTqpvv1Ms_xjcP3lQ2pyTswiCM1I7YLKR_ANqD5Bk,52637
|
@@ -175,37 +134,41 @@ spikezoo/data/base/train/gt/203_part4_key_id151.png,sha256=xUfdlXNWdPlRshLOaEF6u
|
|
175
134
|
spikezoo/data/base/train/spike/203_part2_key_id151.dat,sha256=YEenLmbPvcxnKkVn3O7yDVYb-UwpM5OPlRhxVWLYy3Q,3762500
|
176
135
|
spikezoo/data/base/train/spike/203_part3_key_id151.dat,sha256=MY9nM6XzKj-P-tRQ33WZ3G5xulNTpAXKP0y8ZQo7AIQ,3762500
|
177
136
|
spikezoo/data/base/train/spike/203_part4_key_id151.dat,sha256=IVi2jics66YzpIF-WTkw47te4qOj9cjdgz56GmHpJKg,3762500
|
178
|
-
spikezoo/datasets/__init__.py,sha256=
|
179
|
-
spikezoo/datasets/base_dataset.py,sha256=
|
180
|
-
spikezoo/datasets/realworld_dataset.py,sha256=
|
181
|
-
spikezoo/datasets/
|
182
|
-
spikezoo/datasets/
|
183
|
-
spikezoo/datasets/
|
137
|
+
spikezoo/datasets/__init__.py,sha256=lRJsvCfgbe3qrd9BKTlG9dsgfIJbfXqWOynnlAcBiUI,3346
|
138
|
+
spikezoo/datasets/base_dataset.py,sha256=gaMcrgWB3JLfc5lAM5wZjgMj72lZaO5otGfXOwRRiL8,5954
|
139
|
+
spikezoo/datasets/realworld_dataset.py,sha256=CSyXj_uo0y1a4TlLDSTkB0CyFiFdZiU1phrWdkwvqgg,701
|
140
|
+
spikezoo/datasets/reds_base_dataset.py,sha256=W-IJv9H1bsKgp3RT3zsV40jw2PqY2M76jtIS4Qpif1o,859
|
141
|
+
spikezoo/datasets/reds_ssir_dataset.py,sha256=t0hm6PUWX5hfvSXB0UEv_JuihIhc5-mufrfur5bIq_0,7076
|
142
|
+
spikezoo/datasets/szdata_dataset.py,sha256=7lSqNzWkVUVTVufPhm7AjpLghpZvjfu1X9c0sCsrjwM,850
|
143
|
+
spikezoo/datasets/uhsr_dataset.py,sha256=Ue0vfKMpmvR0TelQx8G4xdWB8HdSlb4HSjIVOyFe5oE,1168
|
184
144
|
spikezoo/metrics/__init__.py,sha256=LIKeWNeEMZLANITQD68XJBOhDq7iHiKC7ExtdrXMyQs,3273
|
185
|
-
spikezoo/models/__init__.py,sha256=
|
186
|
-
spikezoo/models/base_model.py,sha256=
|
187
|
-
spikezoo/models/bsf_model.py,sha256=
|
188
|
-
spikezoo/models/
|
189
|
-
spikezoo/models/
|
190
|
-
spikezoo/models/spk2imgnet_model.py,sha256=
|
191
|
-
spikezoo/models/ssir_model.py,sha256=
|
192
|
-
spikezoo/models/ssml_model.py,sha256=
|
193
|
-
spikezoo/models/stir_model.py,sha256=
|
194
|
-
spikezoo/models/tfi_model.py,sha256=
|
195
|
-
spikezoo/models/tfp_model.py,sha256=
|
196
|
-
spikezoo/models/wgse_model.py,sha256=
|
145
|
+
spikezoo/models/__init__.py,sha256=QZTELBoM3bUW8jZoxN4OuA2RYKeVUT1fboyeIuK8Rtk,1722
|
146
|
+
spikezoo/models/base_model.py,sha256=v3TD4AmjttTZUg0vEy736TOFdbbBgDLZg_RL-b4-vYM,9152
|
147
|
+
spikezoo/models/bsf_model.py,sha256=XeZcVC_ODJxyS_I6-CtzlHXSWntgsUtbuAKjczIQ_0M,3972
|
148
|
+
spikezoo/models/spcsnet_model.py,sha256=kLzv-ASXZGnqEFx0jUBONBeRCrsnQ_omkQUYEnr6uJc,540
|
149
|
+
spikezoo/models/spikeclip_model.py,sha256=Ej84RuYbkFRthtBMV1JtmTkUshAqINlrrJ7yiKIsC9s,1125
|
150
|
+
spikezoo/models/spk2imgnet_model.py,sha256=ghdO1oECrRBijvGNT89H5XDi9CvWfbY3wOzmuCrgMJ0,1565
|
151
|
+
spikezoo/models/ssir_model.py,sha256=8tg36eLKAQEOfYiFW-XyO6RfvCLxUXz0fVhTtZ-Dw-Q,625
|
152
|
+
spikezoo/models/ssml_model.py,sha256=pCo2Wp38cRWSqGFEddsteEby_My4Rp-MKIx_g4kjoHo,2380
|
153
|
+
spikezoo/models/stir_model.py,sha256=htsqhOboIc3GWvQc9gXxyaSI2SYR3TdZR691uV5LZ5s,2193
|
154
|
+
spikezoo/models/tfi_model.py,sha256=tgD_HsiXk9jGuh5f_Bh6c3BqJi1p5DWCVo4N1tp5fgs,663
|
155
|
+
spikezoo/models/tfp_model.py,sha256=ihl1H__bWIbE9oair_t8rNJ5qnPJPKl-r_DpaO-0Sdk,663
|
156
|
+
spikezoo/models/wgse_model.py,sha256=Kl9uV-LeO0Lj7SuPQ9pglw1Khs2b-7miS3A_faL6WSU,805
|
197
157
|
spikezoo/pipeline/__init__.py,sha256=WPsukNR4cannwsghiukqNsWbWGH5DVPapR_Ly-WOU4Q,188
|
198
|
-
spikezoo/pipeline/base_pipeline.py,sha256=
|
199
|
-
spikezoo/pipeline/ensemble_pipeline.py,sha256=
|
200
|
-
spikezoo/pipeline/
|
158
|
+
spikezoo/pipeline/base_pipeline.py,sha256=ns2rBRbKaq8M9yDtWOiD-t6lo_5_c5rE2ZWH9sR78P4,13361
|
159
|
+
spikezoo/pipeline/ensemble_pipeline.py,sha256=ljZkGiCCpxvpC04Aa-r_tvBnqcBpUVi9fl_878tJAcg,2555
|
160
|
+
spikezoo/pipeline/train_cfgs.py,sha256=6NO7DfPc7yjJfOrcIPQPfUPbUODz6eRKurEIDjMmaxA,3836
|
161
|
+
spikezoo/pipeline/train_pipeline.py,sha256=BgHUsdv33B_OKauOVclNt7yIPb-_O-93ZHLHIjrwWaA,8459
|
201
162
|
spikezoo/utils/__init__.py,sha256=bYLlusAXwLCoY4s6nhVgviax9ioRA9aea8qgRmj2HpI,152
|
202
163
|
spikezoo/utils/data_utils.py,sha256=mk1xeyIb7o_E1J7Z6-gtPq-rpKiMTxAWSTcvvPvVku8,2033
|
203
164
|
spikezoo/utils/img_utils.py,sha256=0O9z58VzLxQEAuz-GGWCbpeHuHPOCpgBVjCBV9kf6sI,2257
|
204
|
-
spikezoo/utils/
|
205
|
-
spikezoo/utils/
|
165
|
+
spikezoo/utils/optimizer_utils.py,sha256=jvcd4zTY2LCJH6wCwOZ0lsAuJQm6LIVzbprLO3ojYCY,744
|
166
|
+
spikezoo/utils/other_utils.py,sha256=uWNWaII9Jv7fkWNfkAD9wD-4ID-GAzbR-gGYT-1FF_c,3360
|
167
|
+
spikezoo/utils/scheduler_utils.py,sha256=5RBh-hl3-2y-IomxMs47T1p3JsbicZNYLza6q1uAKHo,828
|
168
|
+
spikezoo/utils/spike_utils.py,sha256=u4Haa6Sp5xFqs61ztvq161oXTA_aZmNW3VYUZcayNW0,4296
|
206
169
|
spikezoo/utils/vidar_loader.cpython-39-x86_64-linux-gnu.so,sha256=uXqu7ME---cZRRU5LUcLiNrjjtlOjxNwWHyTIQ10BGg,199088
|
207
|
-
spikezoo-0.2.2.dist-info/LICENSE.txt,sha256=ukEi8E0PKq1dQGTXHUflg3rppLymwAhr7il9x-0nPgg,1062
|
208
|
-
spikezoo-0.2.2.dist-info/METADATA,sha256=
|
209
|
-
spikezoo-0.2.2.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
210
|
-
spikezoo-0.2.2.dist-info/top_level.txt,sha256=xF2iuOstrACJh43NW4dsTwIdgKfXPXAb_Xzl3M1ricM,9
|
211
|
-
spikezoo-0.2.2.dist-info/RECORD,,
|
170
|
+
spikezoo-0.2.3.2.dist-info/LICENSE.txt,sha256=ukEi8E0PKq1dQGTXHUflg3rppLymwAhr7il9x-0nPgg,1062
|
171
|
+
spikezoo-0.2.3.2.dist-info/METADATA,sha256=k4-w6mwZAfSx1YhunWGVx3LYuocZEqs8ypcMr9WhkZ8,11962
|
172
|
+
spikezoo-0.2.3.2.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
173
|
+
spikezoo-0.2.3.2.dist-info/top_level.txt,sha256=xF2iuOstrACJh43NW4dsTwIdgKfXPXAb_Xzl3M1ricM,9
|
174
|
+
spikezoo-0.2.3.2.dist-info/RECORD,,
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -1 +0,0 @@
|
|
1
|
-
This is a folder for saving the trained model !
|
@@ -1,60 +0,0 @@
|
|
1
|
-
import os
|
2
|
-
import numpy as np
|
3
|
-
|
4
|
-
|
5
|
-
class DataExtractor():
|
6
|
-
|
7
|
-
def __init__(self, dataPath='', type='train'):
|
8
|
-
|
9
|
-
self.type = type
|
10
|
-
self.rootPath = dataPath
|
11
|
-
|
12
|
-
def GetData(self):
|
13
|
-
|
14
|
-
if self.type == "train":
|
15
|
-
return self.__GetTrainData()
|
16
|
-
if self.type == "valid":
|
17
|
-
return self.__GetValidData()
|
18
|
-
if self.type == "test":
|
19
|
-
return self.__GetTestData()
|
20
|
-
|
21
|
-
|
22
|
-
def __GetTrainData(self):
|
23
|
-
|
24
|
-
pathList = []
|
25
|
-
|
26
|
-
root = os.path.join(self.rootPath, 'train')
|
27
|
-
fileNames = os.listdir(root)
|
28
|
-
fileNames.sort()
|
29
|
-
for name in fileNames:
|
30
|
-
path = os.path.join(root, name)
|
31
|
-
pathList.append(path)
|
32
|
-
|
33
|
-
return pathList
|
34
|
-
|
35
|
-
def __GetValidData(self):
|
36
|
-
|
37
|
-
pathList = []
|
38
|
-
|
39
|
-
root = os.path.join(self.rootPath, 'valid')
|
40
|
-
fileNames = os.listdir(root)
|
41
|
-
fileNames.sort()
|
42
|
-
for name in fileNames:
|
43
|
-
path = os.path.join(root, name)
|
44
|
-
pathList.append(path)
|
45
|
-
|
46
|
-
return pathList
|
47
|
-
|
48
|
-
def __GetTestData(self):
|
49
|
-
|
50
|
-
pathList = []
|
51
|
-
|
52
|
-
root = os.path.join(self.rootPath, 'test')
|
53
|
-
fileNames = os.listdir(root)
|
54
|
-
fileNames.sort()
|
55
|
-
for name in fileNames:
|
56
|
-
path = os.path.join(root, name)
|
57
|
-
pathList.append(path)
|
58
|
-
|
59
|
-
return pathList
|
60
|
-
|
@@ -1,115 +0,0 @@
|
|
1
|
-
import os
|
2
|
-
import torch
|
3
|
-
# from torchvision import transforms
|
4
|
-
from torch.utils import data
|
5
|
-
import numpy as np
|
6
|
-
from PIL import Image
|
7
|
-
import cv2
|
8
|
-
import random
|
9
|
-
|
10
|
-
|
11
|
-
from DataProcess.DataExtactor import DataExtractor
|
12
|
-
from DataProcess.LoadSpike import LoadSpike, load_spike_raw
|
13
|
-
|
14
|
-
class Dataset(data.Dataset):
|
15
|
-
|
16
|
-
def __init__(self, pathList, dataType, spikeRadius):
|
17
|
-
|
18
|
-
self.pathList = pathList
|
19
|
-
self.dataType = dataType
|
20
|
-
self.spikeRadius = spikeRadius
|
21
|
-
|
22
|
-
#Random Rotation
|
23
|
-
if self.dataType == "train":
|
24
|
-
self.choice = [0, 1, 2, 3]
|
25
|
-
else:
|
26
|
-
self.choice = [0]
|
27
|
-
|
28
|
-
def __getitem__(self, index):
|
29
|
-
|
30
|
-
spSeq, gtFrames = self.GetItem(index)
|
31
|
-
|
32
|
-
return spSeq, gtFrames
|
33
|
-
|
34
|
-
def __len__(self):
|
35
|
-
|
36
|
-
return len(self.pathList)
|
37
|
-
|
38
|
-
def GetItem(self, index):
|
39
|
-
|
40
|
-
path = self.pathList[index]
|
41
|
-
spSeq, gtFrames = LoadSpike(path)
|
42
|
-
|
43
|
-
spLen, _, _ = spSeq.shape
|
44
|
-
gtLen, _, _ = gtFrames.shape
|
45
|
-
spCenter = spLen // 2
|
46
|
-
gtCenter = gtLen // 2
|
47
|
-
|
48
|
-
spLeft, spRight = (spCenter - self.spikeRadius,
|
49
|
-
spCenter + self.spikeRadius)
|
50
|
-
spRight = spRight + 1
|
51
|
-
spSeq = spSeq[spLeft:spRight]
|
52
|
-
|
53
|
-
gtFrame = gtFrames[gtCenter]
|
54
|
-
|
55
|
-
spSeq = np.pad(spSeq, ((0, 0), (3, 3), (0, 0)), mode='constant')
|
56
|
-
spSeq = spSeq.astype(float) * 2 - 1
|
57
|
-
|
58
|
-
gtFrame = gtFrame.astype(float) / 255. * 2.0 - 1.
|
59
|
-
|
60
|
-
|
61
|
-
spSeq = torch.FloatTensor(spSeq)
|
62
|
-
gtFrame = torch.FloatTensor(gtFrame)
|
63
|
-
|
64
|
-
'''
|
65
|
-
Rotate the spike frame and Gt frame by ramdom degree,
|
66
|
-
depending on the values of 'self.choice'
|
67
|
-
'''
|
68
|
-
# choice = random.choice(self.choice)
|
69
|
-
# spSeq = torch.rot90(spSeq, choice, dims=(1,2))
|
70
|
-
# gtFrame =torch.rot90(gtFrame, choice, dims=(1,2))
|
71
|
-
return spSeq, gtFrame
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
class DataContainer():
|
78
|
-
|
79
|
-
def __init__(self, dataPath='', dataType='train',
|
80
|
-
spikeRadius=16, batchSize=128, numWorks=0):
|
81
|
-
|
82
|
-
self.dataPath = dataPath
|
83
|
-
self.dataType = dataType
|
84
|
-
self.spikeRadius = spikeRadius
|
85
|
-
self.batchSize = batchSize
|
86
|
-
self.numWorks = numWorks
|
87
|
-
|
88
|
-
self.__GetData()
|
89
|
-
|
90
|
-
def __GetData(self):
|
91
|
-
|
92
|
-
dataset = None
|
93
|
-
|
94
|
-
dataset = DataExtractor(dataPath=self.dataPath, type=self.dataType)
|
95
|
-
self.pathList = dataset.GetData()
|
96
|
-
|
97
|
-
def GetLoader(self):
|
98
|
-
|
99
|
-
dataset = Dataset(self.pathList, self.dataType, self.spikeRadius)
|
100
|
-
dataLoader = None
|
101
|
-
if self.dataType == "train":
|
102
|
-
dataLoader = data.DataLoader(dataset, batch_size=self.batchSize, shuffle=True,
|
103
|
-
num_workers=self.numWorks, pin_memory=False)
|
104
|
-
else:
|
105
|
-
dataLoader = data.DataLoader(dataset, batch_size=self.batchSize, shuffle=False,
|
106
|
-
num_workers=self.numWorks, pin_memory=False)
|
107
|
-
|
108
|
-
return dataLoader
|
109
|
-
|
110
|
-
if __name__ == "__main__":
|
111
|
-
|
112
|
-
pass
|
113
|
-
|
114
|
-
|
115
|
-
|
@@ -1,39 +0,0 @@
|
|
1
|
-
import numpy as np
|
2
|
-
|
3
|
-
def load_spike_numpy(path: str) -> (np.ndarray, np.ndarray):
|
4
|
-
'''
|
5
|
-
Load a spike sequence with it's tag from prepacked `.npz` file.\n
|
6
|
-
The sequence is of shape (`length`, `height`, `width`) and tag of
|
7
|
-
shape (`height`, `width`).
|
8
|
-
'''
|
9
|
-
data = np.load(path)
|
10
|
-
seq, tag, length = data['seq'], data['tag'], int(data['length'])
|
11
|
-
seq = np.array([(seq[i // 8] >> (i & 7)) & 1 for i in range(length)])
|
12
|
-
return seq, tag
|
13
|
-
|
14
|
-
def LoadSpike(path: str) -> (np.ndarray, np.ndarray):
|
15
|
-
'''
|
16
|
-
Load a spike sequence, the corresponding ground-truth frame sequence,
|
17
|
-
and sequence length.
|
18
|
-
spSeq: an ndarray of shape('sequence number', 'height', 'width')
|
19
|
-
gtFrames: an ndarray of shape('sequence length', 'height', 'width')
|
20
|
-
'''
|
21
|
-
data = np.load(path)
|
22
|
-
spSeq, gtFrames, length = data['spSeq'], data['gt'], int(data['length'])
|
23
|
-
spSeq = np.array([(spSeq[i // 8] >> (i & 7)) & 1 for i in range(length)])
|
24
|
-
return spSeq, gtFrames
|
25
|
-
|
26
|
-
def load_spike_raw(path: str, width=400, height=250) -> np.ndarray:
|
27
|
-
'''
|
28
|
-
Load bit-compact raw spike data into an ndarray of shape
|
29
|
-
(`sequence length`, `height`, `width`).
|
30
|
-
'''
|
31
|
-
with open(path, 'rb') as f:
|
32
|
-
fbytes = f.read()
|
33
|
-
fnum = (len(fbytes) * 8) // (width * height) # number of frames
|
34
|
-
frames = np.frombuffer(fbytes, dtype=np.uint8)
|
35
|
-
frames = np.array([frames & (1 << i) for i in range(8)])
|
36
|
-
frames = frames.astype(np.bool).astype(np.uint8)
|
37
|
-
frames = frames.transpose(1, 0).reshape(fnum, height, width)
|
38
|
-
frames = np.flip(frames, 1)
|
39
|
-
return frames
|
@@ -1 +0,0 @@
|
|
1
|
-
This is a folder for saving the images reconstructed from validation/testing set !
|
@@ -1,21 +0,0 @@
|
|
1
|
-
MIT License
|
2
|
-
|
3
|
-
Copyright (c) 2022 YangChenUcas
|
4
|
-
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
7
|
-
in the Software without restriction, including without limitation the rights
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
10
|
-
furnished to do so, subject to the following conditions:
|
11
|
-
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
13
|
-
copies or substantial portions of the Software.
|
14
|
-
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
21
|
-
SOFTWARE.
|
@@ -1,50 +0,0 @@
|
|
1
|
-
import numpy as np
|
2
|
-
from skimage import metrics
|
3
|
-
|
4
|
-
class Metrics():
|
5
|
-
|
6
|
-
def __init__(self):
|
7
|
-
self.best_psnr = 0.
|
8
|
-
self.best_ssim = 0.
|
9
|
-
self.best_niqe = 0.
|
10
|
-
|
11
|
-
def Update(self, psnr=0., ssim=0., niqe=0.):
|
12
|
-
self.best_psnr = psnr
|
13
|
-
self.best_ssim = ssim
|
14
|
-
self.best_niqe = niqe
|
15
|
-
|
16
|
-
def GetBestMetrics(self):
|
17
|
-
|
18
|
-
return self.best_psnr, self.best_ssim, self.best_niqe
|
19
|
-
|
20
|
-
def Cal_PSNR(self, preImgs, gtImgs): #shape:[B, H, W]
|
21
|
-
|
22
|
-
B, _, _ = preImgs.shape
|
23
|
-
total_psnr = 0.
|
24
|
-
for i, (pre, gt) in enumerate(zip(preImgs, gtImgs)):
|
25
|
-
print(i+1, metrics.peak_signal_noise_ratio(gt, pre))
|
26
|
-
total_psnr += metrics.peak_signal_noise_ratio(gt, pre)
|
27
|
-
|
28
|
-
avg_psnr = total_psnr / B
|
29
|
-
|
30
|
-
return avg_psnr
|
31
|
-
|
32
|
-
def Cal_SSIM(self, preImgs, gtImgs): #shape:[B, H, W]
|
33
|
-
|
34
|
-
B, _, _ = preImgs.shape
|
35
|
-
total_ssim = 0.
|
36
|
-
for i, (pre, gt) in enumerate(zip(preImgs, gtImgs)):
|
37
|
-
total_ssim += metrics.structural_similarity(pre, gt)
|
38
|
-
|
39
|
-
avg_ssim = total_ssim / B
|
40
|
-
|
41
|
-
return avg_ssim
|
42
|
-
|
43
|
-
|
44
|
-
if __name__ == "__main__":
|
45
|
-
|
46
|
-
a = np.random.random((2,256,256))
|
47
|
-
b = np.random.random((2,256,256))
|
48
|
-
metrics = Metrics()
|
49
|
-
|
50
|
-
print(metrics.Cal_NIQE(a))
|
File without changes
|
@@ -1,89 +0,0 @@
|
|
1
|
-
import torch
|
2
|
-
import torch.nn as nn
|
3
|
-
import torch.nn.functional as F
|
4
|
-
|
5
|
-
class CharbonnierLoss(nn.Module):
|
6
|
-
"""Charbonnier Loss (L1)"""
|
7
|
-
|
8
|
-
def __init__(self, eps=1e-3):
|
9
|
-
super(CharbonnierLoss, self).__init__()
|
10
|
-
self.eps = eps
|
11
|
-
|
12
|
-
def forward(self, x, y):
|
13
|
-
diff = x - y
|
14
|
-
# loss = torch.sum(torch.sqrt(diff * diff + self.eps))
|
15
|
-
loss = torch.mean(torch.sqrt((diff * diff) + (self.eps*self.eps)))
|
16
|
-
return loss
|
17
|
-
|
18
|
-
class EdgeLoss(nn.Module):
|
19
|
-
def __init__(self):
|
20
|
-
super(EdgeLoss, self).__init__()
|
21
|
-
k = torch.Tensor([[.05, .25, .4, .25, .05]])
|
22
|
-
# self.kernel = torch.matmul(k.t(),k).unsqueeze(0).repeat(3,1,1,1)
|
23
|
-
self.kernel = torch.matmul(k.t(),k).unsqueeze(0).unsqueeze(0).repeat(1,3,1,1) #这个的repeat也是后加的
|
24
|
-
# print(self.kernel.shape)
|
25
|
-
if torch.cuda.is_available():
|
26
|
-
self.kernel = self.kernel.cuda()
|
27
|
-
self.loss = CharbonnierLoss()
|
28
|
-
|
29
|
-
def conv_gauss(self, img):
|
30
|
-
# print('aaaa')
|
31
|
-
# print(img.shape)
|
32
|
-
n_channels, _, kw, kh = self.kernel.shape
|
33
|
-
img = F.pad(img, (kw//2, kh//2, kw//2, kh//2), mode='replicate')
|
34
|
-
# return F.conv2d(img, self.kernel, groups=n_channels)
|
35
|
-
return F.conv2d(img, self.kernel)
|
36
|
-
|
37
|
-
def laplacian_kernel(self, current):
|
38
|
-
filtered = self.conv_gauss(current) # filter
|
39
|
-
down = filtered[:,:,::2,::2] # downsample
|
40
|
-
new_filter = torch.zeros_like(filtered)
|
41
|
-
new_filter[:,:,::2,::2] = down*4 # upsample
|
42
|
-
filtered = self.conv_gauss(new_filter.repeat(1,3,1,1)) # filter #这里为什么需要repeat一下?原文的目的是什么?否则不能正常运行
|
43
|
-
diff = current - filtered
|
44
|
-
return diff
|
45
|
-
|
46
|
-
def forward(self, x, y):
|
47
|
-
y = y.repeat(1,3,1,1)
|
48
|
-
x = x.repeat(1,3,1,1)
|
49
|
-
# print('bbbbbb')
|
50
|
-
# print(x.shape)
|
51
|
-
# print(y.shape)
|
52
|
-
loss = self.loss(self.laplacian_kernel(x), self.laplacian_kernel(y))
|
53
|
-
return loss
|
54
|
-
|
55
|
-
|
56
|
-
class VGGLoss4(nn.Module):
|
57
|
-
def __init__(self, path: str):
|
58
|
-
super().__init__()
|
59
|
-
self.features = nn.Sequential(
|
60
|
-
nn.Conv2d(3, 64, 3, 1, 1),
|
61
|
-
nn.ReLU(inplace=True),
|
62
|
-
nn.Conv2d(64, 64, 3, 1, 1),
|
63
|
-
nn.ReLU(inplace=True),
|
64
|
-
nn.MaxPool2d(2),
|
65
|
-
nn.Conv2d(64, 128, 3, 1, 1),
|
66
|
-
nn.ReLU(inplace=True),
|
67
|
-
nn.Conv2d(128, 128, 3, 1, 1),
|
68
|
-
nn.ReLU(inplace=True),
|
69
|
-
nn.MaxPool2d(2),
|
70
|
-
nn.Conv2d(128, 256, 3, 1, 1),
|
71
|
-
nn.ReLU(inplace=True),
|
72
|
-
# nn.Conv2d(256, 256, 3, 1, 1),
|
73
|
-
# nn.ReLU(inplace=True),
|
74
|
-
# nn.Conv2d(256, 256, 3, 1, 1),
|
75
|
-
# nn.ReLU(inplace=True),
|
76
|
-
)
|
77
|
-
self.load_state_dict(torch.load(path))
|
78
|
-
for param in self.parameters():
|
79
|
-
param.requires_grad = False
|
80
|
-
|
81
|
-
def forward(self, real_y, fake_y):
|
82
|
-
real_y = real_y.repeat((1, 3, 1, 1))
|
83
|
-
fake_y = fake_y.repeat((1, 3, 1, 1))
|
84
|
-
with torch.no_grad():
|
85
|
-
real_f = self.features(real_y)
|
86
|
-
fake_f = self.features(fake_y)
|
87
|
-
return F.mse_loss(real_f, fake_f)
|
88
|
-
|
89
|
-
|