├── .flake8 ├── .gitignore ├── .pre-commit-config.yaml ├── LICENSE ├── README.md ├── antialiasing.py ├── cache_dataset.py ├── cfg └── config.yaml ├── ckconv ├── __init__.py ├── nn │ ├── __init__.py │ ├── activation_functions.py │ ├── causalconv.py │ ├── ck │ │ ├── __init__.py │ │ ├── magnet.py │ │ ├── mfn.py │ │ ├── mlp.py │ │ └── siren.py │ ├── ckconv.py │ ├── functional │ │ ├── __init__.py │ │ ├── causal_conv.py │ │ └── conv.py │ ├── kernelnet.py │ ├── linear.py │ ├── lr_scheduler.py │ ├── misc.py │ ├── norm.py │ └── regularizers.py └── utils │ ├── __init__.py │ ├── cutout.py │ ├── flatten_configdict.py │ ├── grids.py │ ├── iterable.py │ └── params.py ├── ckernel_fitting ├── README.md ├── __init__.py ├── config.py ├── fit_function.py ├── functions.py ├── kodak-dataset │ ├── kodim01.png │ ├── kodim02.png │ ├── kodim03.png │ ├── kodim04.png │ ├── kodim05.png │ ├── kodim06.png │ ├── kodim07.png │ ├── kodim08.png │ ├── kodim09.png │ ├── kodim10.png │ ├── kodim11.png │ ├── kodim12.png │ ├── kodim13.png │ ├── kodim14.png │ ├── kodim15.png │ ├── kodim16.png │ ├── kodim17.png │ ├── kodim18.png │ ├── kodim19.png │ ├── kodim20.png │ ├── kodim21.png │ ├── kodim22.png │ ├── kodim23.png │ └── kodim24.png ├── random_kernel.npy └── results │ ├── magnet_alexnet_lr001_it5000_33px.csv │ ├── magnet_alexnet_lr001_it5000_33px │ ├── MAGNet_freq16_order2.pdf │ ├── MAGNet_freq16_order2_gt.pdf │ ├── MAGNet_freq16_order2_pred.pdf │ ├── MAGNet_freq1_order2.pdf │ ├── MAGNet_freq1_order2_gt.pdf │ ├── MAGNet_freq1_order2_pred.pdf │ ├── MAGNet_freq4_order2.pdf │ ├── MAGNet_freq4_order2_gt.pdf │ ├── MAGNet_freq4_order2_pred.pdf │ ├── MAGNet_freq64_order2.pdf │ ├── MAGNet_freq64_order2_gt.pdf │ └── MAGNet_freq64_order2_pred.pdf │ ├── magnet_gabor_lr001_it3000_33px.csv │ ├── magnet_gabor_lr001_it3000_33px │ ├── MAGNet_freq16_order1.jpg │ ├── MAGNet_freq16_order2.jpg │ ├── MAGNet_freq16_order3.jpg │ ├── MAGNet_freq16_order4.jpg │ ├── MAGNet_freq16_order5.jpg │ ├── MAGNet_freq1_order1.jpg │ ├── MAGNet_freq1_order2.jpg │ ├── MAGNet_freq1_order3.jpg │ ├── MAGNet_freq1_order4.jpg │ ├── MAGNet_freq1_order5.jpg │ ├── MAGNet_freq4_order1.jpg │ ├── MAGNet_freq4_order2.jpg │ ├── MAGNet_freq4_order3.jpg │ ├── MAGNet_freq4_order4.jpg │ ├── MAGNet_freq4_order5.jpg │ ├── MAGNet_freq64_order1.jpg │ ├── MAGNet_freq64_order2.jpg │ ├── MAGNet_freq64_order3.jpg │ ├── MAGNet_freq64_order4.jpg │ └── MAGNet_freq64_order5.jpg │ ├── magnet_gabor_lr001_it3000_33px_pdf.csv │ ├── magnet_gabor_lr001_it3000_33px_pdf │ ├── MAGNet_freq16_order1.pdf │ ├── MAGNet_freq16_order2.pdf │ ├── MAGNet_freq16_order3.pdf │ ├── MAGNet_freq16_order4.pdf │ ├── MAGNet_freq16_order5.pdf │ ├── MAGNet_freq1_order1.pdf │ ├── MAGNet_freq1_order2.pdf │ ├── MAGNet_freq1_order3.pdf │ ├── MAGNet_freq1_order4.pdf │ ├── MAGNet_freq1_order5.pdf │ ├── MAGNet_freq4_order1.pdf │ ├── MAGNet_freq4_order2.pdf │ ├── MAGNet_freq4_order3.pdf │ ├── MAGNet_freq4_order4.pdf │ ├── MAGNet_freq4_order5.pdf │ ├── MAGNet_freq64_order1.pdf │ ├── MAGNet_freq64_order2.pdf │ ├── MAGNet_freq64_order3.pdf │ ├── MAGNet_freq64_order4.pdf │ └── MAGNet_freq64_order5.pdf │ ├── magnet_gabor_lr001_it5000_33px.csv │ ├── magnet_gabor_lr001_it5000_33px │ ├── MAGNet_freq16_order2.pdf │ ├── MAGNet_freq16_order2_gt.pdf │ ├── MAGNet_freq16_order2_pred.pdf │ ├── MAGNet_freq1_order2.pdf │ ├── MAGNet_freq1_order2_gt.pdf │ ├── MAGNet_freq1_order2_pred.pdf │ ├── MAGNet_freq4_order2.pdf │ ├── MAGNet_freq4_order2_gt.pdf │ ├── MAGNet_freq4_order2_pred.pdf │ ├── MAGNet_freq64_order2.pdf │ ├── MAGNet_freq64_order2_gt.pdf │ └── MAGNet_freq64_order2_pred.pdf │ ├── magnet_random_lr0001_it20000_33px.csv │ ├── magnet_random_lr0001_it20000_33px │ ├── MAGNet_freq100_order0.pdf │ ├── MAGNet_freq100_order0_gt.pdf │ └── MAGNet_freq100_order0_pred.pdf │ ├── magnet_random_lr001_it20000_33px.csv │ ├── magnet_random_lr001_it20000_33px │ ├── MAGNet_freq100_order0.pdf │ ├── MAGNet_freq100_order0_gt.pdf │ └── MAGNet_freq100_order0_pred.pdf │ ├── magnet_random_lr001_it3000_33px.csv │ ├── magnet_random_lr001_it3000_33px │ ├── MAGNet_freq100_order1.pdf │ ├── MAGNet_freq100_order1_gt.pdf │ ├── MAGNet_freq100_order1_pred.pdf │ ├── MAGNet_freq100_order2.pdf │ ├── MAGNet_freq100_order2_gt.pdf │ ├── MAGNet_freq100_order2_pred.pdf │ ├── MAGNet_freq100_order3.pdf │ ├── MAGNet_freq100_order3_gt.pdf │ ├── MAGNet_freq100_order3_pred.pdf │ ├── MAGNet_freq100_order4.pdf │ ├── MAGNet_freq100_order4_gt.pdf │ ├── MAGNet_freq100_order4_pred.pdf │ ├── MAGNet_freq100_order5.pdf │ ├── MAGNet_freq100_order5_gt.pdf │ └── MAGNet_freq100_order5_pred.pdf │ ├── magnet_random_lr001_it5000_33px.csv │ ├── magnet_random_lr001_it5000_33px │ ├── MAGNet_freq100_order2.pdf │ ├── MAGNet_freq100_order2_gt.pdf │ ├── MAGNet_freq100_order2_pred.pdf │ ├── MAGNet_freq16_order2.pdf │ ├── MAGNet_freq16_order2_gt.pdf │ ├── MAGNet_freq16_order2_pred.pdf │ ├── MAGNet_freq1_order2.pdf │ ├── MAGNet_freq1_order2_gt.pdf │ ├── MAGNet_freq1_order2_pred.pdf │ ├── MAGNet_freq4_order2.pdf │ ├── MAGNet_freq4_order2_gt.pdf │ ├── MAGNet_freq4_order2_pred.pdf │ ├── MAGNet_freq64_order2.pdf │ ├── MAGNet_freq64_order2_gt.pdf │ └── MAGNet_freq64_order2_pred.pdf │ ├── magnetbig_alexnet_lr001_it5000_33px.csv │ ├── magnetbig_alexnet_lr001_it5000_33px │ ├── MAGNet_freq16_order2.pdf │ ├── MAGNet_freq16_order2_gt.pdf │ ├── MAGNet_freq16_order2_pred.pdf │ ├── MAGNet_freq1_order2.pdf │ ├── MAGNet_freq1_order2_gt.pdf │ ├── MAGNet_freq1_order2_pred.pdf │ ├── MAGNet_freq4_order2.pdf │ ├── MAGNet_freq4_order2_gt.pdf │ ├── MAGNet_freq4_order2_pred.pdf │ ├── MAGNet_freq64_order2.pdf │ ├── MAGNet_freq64_order2_gt.pdf │ └── MAGNet_freq64_order2_pred.pdf │ ├── magnetbig_gabor_lr001_it5000_33px.csv │ ├── magnetbig_gabor_lr001_it5000_33px │ ├── MAGNet_freq16_order2.pdf │ ├── MAGNet_freq16_order2_gt.pdf │ ├── MAGNet_freq16_order2_pred.pdf │ ├── MAGNet_freq1_order2.pdf │ ├── MAGNet_freq1_order2_gt.pdf │ ├── MAGNet_freq1_order2_pred.pdf │ ├── MAGNet_freq4_order2.pdf │ ├── MAGNet_freq4_order2_gt.pdf │ ├── MAGNet_freq4_order2_pred.pdf │ ├── MAGNet_freq64_order2.pdf │ ├── MAGNet_freq64_order2_gt.pdf │ └── MAGNet_freq64_order2_pred.pdf │ ├── magnetbig_random_lr001_it5000_33px.csv │ ├── magnetbig_random_lr001_it5000_33px │ ├── MAGNet_freq100_order0.pdf │ ├── MAGNet_freq100_order0_gt.pdf │ ├── MAGNet_freq100_order0_pred.pdf │ ├── MAGNet_freq100_order2.pdf │ ├── MAGNet_freq100_order2_gt.pdf │ ├── MAGNet_freq100_order2_pred.pdf │ ├── MAGNet_freq16_order2.pdf │ ├── MAGNet_freq16_order2_gt.pdf │ ├── MAGNet_freq16_order2_pred.pdf │ ├── MAGNet_freq1_order2.pdf │ ├── MAGNet_freq1_order2_gt.pdf │ ├── MAGNet_freq1_order2_pred.pdf │ ├── MAGNet_freq4_order2.pdf │ ├── MAGNet_freq4_order2_gt.pdf │ ├── MAGNet_freq4_order2_pred.pdf │ ├── MAGNet_freq64_order2.pdf │ ├── MAGNet_freq64_order2_gt.pdf │ └── MAGNet_freq64_order2_pred.pdf │ ├── siren_random_lr001_it5000_33px.csv │ ├── siren_random_lr001_it5000_33px │ ├── SIREN_freq64_order2.pdf │ ├── SIREN_freq64_order2_gt.pdf │ └── SIREN_freq64_order2_pred.pdf │ ├── sirenbig_alexnet_lr001_it3000_33px.csv │ ├── sirenbig_alexnet_lr001_it3000_33px │ ├── SIREN_freq64_order2.pdf │ ├── SIREN_freq64_order2_gt.pdf │ └── SIREN_freq64_order2_pred.pdf │ ├── sirenbig_alexnet_lr001_it5000_33px.csv │ ├── sirenbig_alexnet_lr001_it5000_33px │ ├── SIREN_freq64_order2.pdf │ ├── SIREN_freq64_order2_gt.pdf │ └── SIREN_freq64_order2_pred.pdf │ ├── sirenbig_gabor_lr0001_it5000_33px.csv │ ├── sirenbig_gabor_lr0001_it5000_33px │ ├── SIREN_freq16_order2.pdf │ ├── SIREN_freq16_order2_gt.pdf │ ├── SIREN_freq16_order2_pred.pdf │ ├── SIREN_freq1_order2.pdf │ ├── SIREN_freq1_order2_gt.pdf │ ├── SIREN_freq1_order2_pred.pdf │ ├── SIREN_freq4_order2.pdf │ ├── SIREN_freq4_order2_gt.pdf │ ├── SIREN_freq4_order2_pred.pdf │ ├── SIREN_freq64_order2.pdf │ ├── SIREN_freq64_order2_gt.pdf │ └── SIREN_freq64_order2_pred.pdf │ ├── sirenbig_gabor_lr001_it5000_33px.csv │ ├── sirenbig_gabor_lr001_it5000_33px │ ├── SIREN_freq64_order2.pdf │ ├── SIREN_freq64_order2_gt.pdf │ └── SIREN_freq64_order2_pred.pdf │ ├── sirenbig_random_lr001_it5000_33px.csv │ ├── sirenbig_random_lr001_it5000_33px │ ├── SIREN_freq64_order2.pdf │ ├── SIREN_freq64_order2_gt.pdf │ └── SIREN_freq64_order2_pred.pdf │ ├── srf19_alexnet_lr001_it5000_11px.csv │ ├── srf19_alexnet_lr001_it5000_11px │ ├── SRF_freq100_order1.pdf │ ├── SRF_freq100_order1_gt.pdf │ ├── SRF_freq100_order1_pred.pdf │ ├── SRF_freq100_order2.pdf │ ├── SRF_freq100_order2_gt.pdf │ ├── SRF_freq100_order2_pred.pdf │ ├── SRF_freq100_order3.pdf │ ├── SRF_freq100_order3_gt.pdf │ ├── SRF_freq100_order3_pred.pdf │ ├── SRF_freq100_order4.pdf │ ├── SRF_freq100_order4_gt.pdf │ ├── SRF_freq100_order4_pred.pdf │ ├── SRF_freq100_order5.pdf │ ├── SRF_freq100_order5_gt.pdf │ ├── SRF_freq100_order5_pred.pdf │ ├── SRF_freq100_order6.pdf │ ├── SRF_freq100_order6_gt.pdf │ ├── SRF_freq100_order6_pred.pdf │ ├── SRF_freq100_order7.pdf │ ├── SRF_freq100_order7_gt.pdf │ ├── SRF_freq100_order7_pred.pdf │ ├── SRF_freq100_order8.pdf │ ├── SRF_freq100_order8_gt.pdf │ ├── SRF_freq100_order8_pred.pdf │ ├── SRF_freq100_order9.pdf │ ├── SRF_freq100_order9_gt.pdf │ └── SRF_freq100_order9_pred.pdf │ ├── srf19_gabor_lr001_it5000_33px.csv │ ├── srf19_gabor_lr001_it5000_33px │ ├── SRF_freq16_order1.pdf │ ├── SRF_freq16_order1_gt.pdf │ ├── SRF_freq16_order1_pred.pdf │ ├── SRF_freq16_order2.pdf │ ├── SRF_freq16_order2_gt.pdf │ ├── SRF_freq16_order2_pred.pdf │ ├── SRF_freq16_order3.pdf │ ├── SRF_freq16_order3_gt.pdf │ ├── SRF_freq16_order3_pred.pdf │ ├── SRF_freq16_order4.pdf │ ├── SRF_freq16_order4_gt.pdf │ ├── SRF_freq16_order4_pred.pdf │ ├── SRF_freq16_order5.pdf │ ├── SRF_freq16_order5_gt.pdf │ ├── SRF_freq16_order5_pred.pdf │ ├── SRF_freq16_order6.pdf │ ├── SRF_freq16_order6_gt.pdf │ ├── SRF_freq16_order6_pred.pdf │ ├── SRF_freq16_order7.pdf │ ├── SRF_freq16_order7_gt.pdf │ ├── SRF_freq16_order7_pred.pdf │ ├── SRF_freq16_order8.pdf │ ├── SRF_freq16_order8_gt.pdf │ ├── SRF_freq16_order8_pred.pdf │ ├── SRF_freq16_order9.pdf │ ├── SRF_freq16_order9_gt.pdf │ ├── SRF_freq16_order9_pred.pdf │ ├── SRF_freq1_order1.pdf │ ├── SRF_freq1_order1_gt.pdf │ ├── SRF_freq1_order1_pred.pdf │ ├── SRF_freq1_order2.pdf │ ├── SRF_freq1_order2_gt.pdf │ ├── SRF_freq1_order2_pred.pdf │ ├── SRF_freq1_order3.pdf │ ├── SRF_freq1_order3_gt.pdf │ ├── SRF_freq1_order3_pred.pdf │ ├── SRF_freq1_order4.pdf │ ├── SRF_freq1_order4_gt.pdf │ ├── SRF_freq1_order4_pred.pdf │ ├── SRF_freq1_order5.pdf │ ├── SRF_freq1_order5_gt.pdf │ ├── SRF_freq1_order5_pred.pdf │ ├── SRF_freq1_order6.pdf │ ├── SRF_freq1_order6_gt.pdf │ ├── SRF_freq1_order6_pred.pdf │ ├── SRF_freq1_order7.pdf │ ├── SRF_freq1_order7_gt.pdf │ ├── SRF_freq1_order7_pred.pdf │ ├── SRF_freq1_order8.pdf │ ├── SRF_freq1_order8_gt.pdf │ ├── SRF_freq1_order8_pred.pdf │ ├── SRF_freq1_order9.pdf │ ├── SRF_freq1_order9_gt.pdf │ ├── SRF_freq1_order9_pred.pdf │ ├── SRF_freq4_order1.pdf │ ├── SRF_freq4_order1_gt.pdf │ ├── SRF_freq4_order1_pred.pdf │ ├── SRF_freq4_order2.pdf │ ├── SRF_freq4_order2_gt.pdf │ ├── SRF_freq4_order2_pred.pdf │ ├── SRF_freq4_order3.pdf │ ├── SRF_freq4_order3_gt.pdf │ ├── SRF_freq4_order3_pred.pdf │ ├── SRF_freq4_order4.pdf │ ├── SRF_freq4_order4_gt.pdf │ ├── SRF_freq4_order4_pred.pdf │ ├── SRF_freq4_order5.pdf │ ├── SRF_freq4_order5_gt.pdf │ ├── SRF_freq4_order5_pred.pdf │ ├── SRF_freq4_order6.pdf │ ├── SRF_freq4_order6_gt.pdf │ ├── SRF_freq4_order6_pred.pdf │ ├── SRF_freq4_order7.pdf │ ├── SRF_freq4_order7_gt.pdf │ ├── SRF_freq4_order7_pred.pdf │ ├── SRF_freq4_order8.pdf │ ├── SRF_freq4_order8_gt.pdf │ ├── SRF_freq4_order8_pred.pdf │ ├── SRF_freq4_order9.pdf │ ├── SRF_freq4_order9_gt.pdf │ ├── SRF_freq4_order9_pred.pdf │ ├── SRF_freq64_order1.pdf │ ├── SRF_freq64_order1_gt.pdf │ ├── SRF_freq64_order1_pred.pdf │ ├── SRF_freq64_order2.pdf │ ├── SRF_freq64_order2_gt.pdf │ ├── SRF_freq64_order2_pred.pdf │ ├── SRF_freq64_order3.pdf │ ├── SRF_freq64_order3_gt.pdf │ ├── SRF_freq64_order3_pred.pdf │ ├── SRF_freq64_order4.pdf │ ├── SRF_freq64_order4_gt.pdf │ ├── SRF_freq64_order4_pred.pdf │ ├── SRF_freq64_order5.pdf │ ├── SRF_freq64_order5_gt.pdf │ ├── SRF_freq64_order5_pred.pdf │ ├── SRF_freq64_order6.pdf │ ├── SRF_freq64_order6_gt.pdf │ ├── SRF_freq64_order6_pred.pdf │ ├── SRF_freq64_order7.pdf │ ├── SRF_freq64_order7_gt.pdf │ ├── SRF_freq64_order7_pred.pdf │ ├── SRF_freq64_order8.pdf │ ├── SRF_freq64_order8_gt.pdf │ ├── SRF_freq64_order8_pred.pdf │ ├── SRF_freq64_order9.pdf │ ├── SRF_freq64_order9_gt.pdf │ └── SRF_freq64_order9_pred.pdf │ ├── srf19_random_lr001_it5000_33px.csv │ ├── srf19_random_lr001_it5000_33px │ ├── SRF_freq100_order1.pdf │ ├── SRF_freq100_order1_gt.pdf │ ├── SRF_freq100_order1_pred.pdf │ ├── SRF_freq100_order2.pdf │ ├── SRF_freq100_order2_gt.pdf │ ├── SRF_freq100_order2_pred.pdf │ ├── SRF_freq100_order3.pdf │ ├── SRF_freq100_order3_gt.pdf │ ├── SRF_freq100_order3_pred.pdf │ ├── SRF_freq100_order4.pdf │ ├── SRF_freq100_order4_gt.pdf │ ├── SRF_freq100_order4_pred.pdf │ ├── SRF_freq100_order5.pdf │ ├── SRF_freq100_order5_gt.pdf │ ├── SRF_freq100_order5_pred.pdf │ ├── SRF_freq100_order6.pdf │ ├── SRF_freq100_order6_gt.pdf │ ├── SRF_freq100_order6_pred.pdf │ ├── SRF_freq100_order7.pdf │ ├── SRF_freq100_order7_gt.pdf │ ├── SRF_freq100_order7_pred.pdf │ ├── SRF_freq100_order8.pdf │ ├── SRF_freq100_order8_gt.pdf │ ├── SRF_freq100_order8_pred.pdf │ ├── SRF_freq100_order9.pdf │ ├── SRF_freq100_order9_gt.pdf │ └── SRF_freq100_order9_pred.pdf │ ├── srf9_gabor_lr001_it3000_33px.csv │ ├── srf9_gabor_lr001_it3000_33px │ └── SRF_freq64_order9.pdf │ ├── srf_gabor_lr001_it3000_33px.csv │ ├── srf_gabor_lr001_it3000_33px │ ├── SRF_freq16_order1.jpg │ ├── SRF_freq16_order2.jpg │ ├── SRF_freq16_order3.jpg │ ├── SRF_freq16_order4.jpg │ ├── SRF_freq16_order5.jpg │ ├── SRF_freq1_order1.jpg │ ├── SRF_freq1_order2.jpg │ ├── SRF_freq1_order3.jpg │ ├── SRF_freq1_order4.jpg │ ├── SRF_freq1_order5.jpg │ ├── SRF_freq4_order1.jpg │ ├── SRF_freq4_order2.jpg │ ├── SRF_freq4_order3.jpg │ ├── SRF_freq4_order4.jpg │ ├── SRF_freq4_order5.jpg │ ├── SRF_freq64_order1.jpg │ ├── SRF_freq64_order2.jpg │ ├── SRF_freq64_order3.jpg │ ├── SRF_freq64_order4.jpg │ └── SRF_freq64_order5.jpg │ ├── srf_gabor_lr001_it3000_33px_pdf.csv │ ├── srf_gabor_lr001_it3000_33px_pdf │ ├── SRF_freq16_order1.pdf │ ├── SRF_freq16_order2.pdf │ ├── SRF_freq16_order3.pdf │ ├── SRF_freq16_order4.pdf │ ├── SRF_freq16_order5.pdf │ ├── SRF_freq1_order1.pdf │ ├── SRF_freq1_order2.pdf │ ├── SRF_freq1_order3.pdf │ ├── SRF_freq1_order4.pdf │ ├── SRF_freq1_order5.pdf │ ├── SRF_freq4_order1.pdf │ ├── SRF_freq4_order2.pdf │ ├── SRF_freq4_order3.pdf │ ├── SRF_freq4_order4.pdf │ ├── SRF_freq4_order5.pdf │ ├── SRF_freq64_order1.pdf │ ├── SRF_freq64_order2.pdf │ ├── SRF_freq64_order3.pdf │ ├── SRF_freq64_order4.pdf │ └── SRF_freq64_order5.pdf │ ├── srf_random_lr0001_it20000_33px.csv │ └── srf_random_lr0001_it20000_33px │ ├── SRF_freq100_order0.pdf │ ├── SRF_freq100_order0_gt.pdf │ └── SRF_freq100_order0_pred.pdf ├── conda_requirements.yaml ├── data └── .gitkeep ├── dataset_constructor.py ├── datasets ├── __init__.py ├── addition_problem.py ├── char_trajectories.py ├── cifar10.py ├── cifar100.py ├── copy_memory.py ├── datasetfolder.py ├── imagenet_small.py ├── mnist.py ├── speech_commands.py ├── stl10.py └── utils.py ├── demo ├── flexconv.ipynb ├── kernel_sizes_flexnet.pdf ├── kernel_sizes_flexnet.png └── truck5.png ├── experiments ├── checkpoints │ ├── cifar10-flexnet-7-seed2.pt │ ├── cross-res-cifar10-flexnet-7-gabor-seed2-final.pt │ ├── cross-res-cifar10-flexnet-7-gabor-seed2-source.pt │ ├── cross-res-cifar10-flexnet-7-gnm-seed1-final.pt │ ├── cross-res-cifar10-flexnet-7-gnm-seed1-source.pt │ ├── cross-res-imagenetk-flexnet-5-gabor-seed1-final.pt │ ├── cross-res-imagenetk-flexnet-5-gabor-seed1-source.pt │ └── imagenet32-flexnet-5-seed1.pt ├── experiment-commands.txt ├── experimental-results-all.xlsx └── readme.md ├── flexconv.png ├── manual_installation.txt ├── model_constructor.py ├── models ├── __init__.py ├── cifar_resnet_akamaster.py ├── ckresnet.py ├── cktcn.py ├── residual_block.py └── resnet.py ├── net_structure.png ├── optim.py ├── path_handler.py ├── presentation └── poster.pdf ├── probspec_routines ├── __init__.py ├── add_problem.py └── copy_memory.py ├── requirements.txt ├── run_crossres.py ├── run_experiment.py ├── run_profiler.py ├── testcases ├── c10-fn5-reg.npy ├── c10-fn5.npy ├── mnist-fn7-randomsettings.npy ├── scifar-tcn-flexconv.npy ├── smnist-tcn-ckconv.npy └── testcase_settings.txt ├── tester.py ├── timer.py ├── trainer.py └── utils.py /.flake8: -------------------------------------------------------------------------------- 1 | [flake8] 2 | ignore = E203, E266, E501, W503, F403, F401, C901, E402 3 | max-line-length = 120 4 | max-complexity = 20 5 | select = B,C,E,F,W,T4,B9 6 | exclude = 7 | srf/* 8 | ckernel_fitting/* -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .idea 2 | wandb 3 | ckernel_fitting/wandb 4 | data/* 5 | !data/.gitkeep 6 | outputs/* 7 | plot-data/* 8 | plots/* 9 | runs/* 10 | 11 | # Ignore srf/ for now, until Silvia can say something about publishing it 12 | srf/ 13 | ckernel_fitting/srf_fitting 14 | 15 | # Don't include the old kernel fitting summary, but don't remove it either. 16 | ckernel_fitting/summary_kernelfitting.ipynb 17 | 18 | # Don't include raw experiment commands file. Instead, we list commands in experiments/readme.md 19 | experiments/experimental-commands.txt 20 | 21 | # Don't include the invidual run experimental results, since there is no good reference to the original commands/seeds in it. 22 | experiments/exerperimental-results-all.xlsx 23 | 24 | # Byte-compiled / optimized / DLL files 25 | __pycache__/ 26 | *.py[cod] 27 | *$py.class 28 | 29 | # C extensions 30 | *.so 31 | 32 | # Distribution / packaging 33 | .Python 34 | build/ 35 | develop-eggs/ 36 | dist/ 37 | downloads/ 38 | eggs/ 39 | .eggs/ 40 | lib/ 41 | lib64/ 42 | parts/ 43 | sdist/ 44 | var/ 45 | wheels/ 46 | share/python-wheels/ 47 | *.egg-info/ 48 | .installed.cfg 49 | *.egg 50 | MANIFEST 51 | 52 | # PyInstaller 53 | # Usually these files are written by a python script from a template 54 | # before PyInstaller builds the exe, so as to inject date/other infos into it. 55 | *.manifest 56 | *.spec 57 | 58 | # Installer logs 59 | pip-log.txt 60 | pip-delete-this-directory.txt 61 | 62 | # Unit test / coverage reports 63 | htmlcov/ 64 | .tox/ 65 | .nox/ 66 | .coverage 67 | .coverage.* 68 | .cache 69 | nosetests.xml 70 | coverage.xml 71 | *.cover 72 | *.py,cover 73 | .hypothesis/ 74 | .pytest_cache/ 75 | cover/ 76 | 77 | # Translations 78 | *.mo 79 | *.pot 80 | 81 | # Django stuff: 82 | *.log 83 | local_settings.py 84 | db.sqlite3 85 | db.sqlite3-journal 86 | 87 | # Flask stuff: 88 | instance/ 89 | .webassets-cache 90 | 91 | # Scrapy stuff: 92 | .scrapy 93 | 94 | # Sphinx documentation 95 | docs/_build/ 96 | 97 | # PyBuilder 98 | .pybuilder/ 99 | target/ 100 | 101 | # Jupyter Notebook 102 | .ipynb_checkpoints 103 | 104 | # IPython 105 | profile_default/ 106 | ipython_config.py 107 | 108 | # pyenv 109 | # For a library or package, you might want to ignore these files since the code is 110 | # intended to run in multiple environments; otherwise, check them in: 111 | # .python-version 112 | 113 | # pipenv 114 | # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. 115 | # However, in case of collaboration, if having platform-specific dependencies or dependencies 116 | # having no cross-platform support, pipenv may install dependencies that don't work, or not 117 | # install all needed dependencies. 118 | #Pipfile.lock 119 | 120 | # PEP 582; used by e.g. github.com/David-OConnor/pyflow 121 | __pypackages__/ 122 | 123 | # Celery stuff 124 | celerybeat-schedule 125 | celerybeat.pid 126 | 127 | # SageMath parsed files 128 | *.sage.py 129 | 130 | # Environments 131 | .env 132 | .venv 133 | env/ 134 | venv/ 135 | ENV/ 136 | env.bak/ 137 | venv.bak/ 138 | 139 | # Spyder project settings 140 | .spyderproject 141 | .spyproject 142 | 143 | # Rope project settings 144 | .ropeproject 145 | 146 | # mkdocs documentation 147 | /site 148 | 149 | # mypy 150 | .mypy_cache/ 151 | .dmypy.json 152 | dmypy.json 153 | 154 | # Pyre type checker 155 | .pyre/ 156 | 157 | # pytype static type analyzer 158 | .pytype/ 159 | 160 | # Cython debug symbols 161 | cython_debug/ 162 | 163 | .vscode/ -------------------------------------------------------------------------------- /.pre-commit-config.yaml: -------------------------------------------------------------------------------- 1 | repos: 2 | - repo: https://github.com/ambv/black 3 | rev: stable 4 | hooks: 5 | - id: black 6 | # language_version: python3.6 7 | - repo: https://gitlab.com/pycqa/flake8 8 | rev: 3.7.9 9 | hooks: 10 | - id: flake8 -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 David W. Romero & Robert-Jan Bruintjes 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. 22 | 23 | 24 | 25 | 26 | BSD 2-Clause Simplified License, for models/cifar_resnet_akamaster.py. 27 | 28 | Copyright (c) 2018, Yerlan Idelbayev 29 | 30 | Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 31 | 32 | 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 33 | 34 | 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 35 | 36 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -------------------------------------------------------------------------------- /cache_dataset.py: -------------------------------------------------------------------------------- 1 | """ 2 | Utility to pre-compute a cache of any dataset supporting the caching feature. 3 | """ 4 | import argparse 5 | 6 | from datasets import ImagenetDownsampled 7 | 8 | 9 | if __name__ == '__main__': 10 | p = argparse.ArgumentParser() 11 | # p.add_argument('--dataset', type=str, required=True) 12 | p.add_argument('--data_root', type=str, required=True) 13 | args = p.parse_args() 14 | 15 | for partition in ["train", "val"]: 16 | dataset = ImagenetDownsampled(partition, args.data_root, use_ram=True, use_cache=False) 17 | 18 | if not hasattr(dataset, 'save') or not hasattr(dataset, 'load'): 19 | raise ValueError(f"Dataset {args.dataset} does not support caching.") 20 | 21 | dataset.save() 22 | -------------------------------------------------------------------------------- /cfg/config.yaml: -------------------------------------------------------------------------------- 1 | # @package _global_ 2 | net: 3 | type: "" 4 | no_hidden: -1 5 | no_blocks: -1 6 | dropout: 0.0 7 | dropout_in: 0.0 8 | norm: "" 9 | nonlinearity: "ReLU" 10 | block_width_factors: [0.0, ] 11 | kernel: 12 | type: "" 13 | dim_linear: 0 # Should be overridden automatically 14 | no_hidden: -1 15 | no_layers: -1 16 | activ_function: "" 17 | norm: "" 18 | omega_0: 0.0 19 | learn_omega_0: False 20 | weight_norm: False 21 | steerable: False 22 | init_spatial_value: 1.0 23 | bias_init: None 24 | input_scale: 25.6 25 | sampling_rate_norm: 1.0 26 | regularize: False 27 | regularize_params: 28 | res: 0 29 | res_offset: 0 30 | target: "gabor+mask" 31 | fn: "l2_relu" 32 | method: "together" 33 | factor: 0.001 34 | gauss_stddevs: 2.0 35 | gauss_factor: 0.5 36 | srf: 37 | scale: 0. 38 | conv: 39 | type: "" 40 | use_fft: False 41 | bias: True 42 | padding: "same" 43 | stride: 1 44 | horizon: "same" 45 | cache: False 46 | mask: 47 | use: True 48 | type: "" 49 | temperature: 0.0 50 | init_value: 0.0 51 | dynamic_cropping: True 52 | threshold: 0.1 53 | dataset: "" 54 | dataset_params: 55 | root: "" 56 | in_ram: False # For Cityscapes & downsampled Imagenets 57 | from_cache: False # For downsampled Imagenets 58 | permuted: False # For permuted sMNIST 59 | noise_padded: False # For noise-padded CIFAR10 60 | memory_size: -1 # For copy memory problem 61 | mfcc: False # For MFCC pre-processing on SpeechCommands 62 | drop_rate: 0.0 # For irregular SpeechCommands and CharTrajetories 63 | seq_length: -1 64 | cross_res: 65 | resize: "" 66 | interpolation: "bilinear" 67 | resize_blur: False 68 | resize_blur_sigma: 1.0 69 | blur: False 70 | source_res: 0 71 | target_res: 0 72 | finetune_epochs: 100 73 | train: 74 | do: True 75 | augment: None 76 | report_top5_acc: False 77 | epochs: -1 78 | batch_size: -1 79 | lr: 0.0 80 | omega_0_lr_factor: 1.0 81 | mask_params_lr_factor: 1.0 82 | weight_decay: 0.0 83 | mask_l2_norm: 0.0 84 | magnitude_reg: 0.0 85 | grad_clip: 0.0 86 | optimizer: Adam 87 | optimizer_params: 88 | momentum: -1 89 | nesterov: False 90 | scheduler: "" 91 | scheduler_params: 92 | decay_steps: -1 93 | decay_factor: -1 94 | patience: -1 95 | warmup_epochs: -1 96 | test: 97 | before_train: False 98 | patched: False # For segmentation 99 | wandb: 100 | project: flexconv 101 | entity: vu_tudelft_team 102 | dir: ./wandb 103 | device: cuda 104 | debug: False 105 | pretrained: False 106 | pretrained_params: 107 | filepath: "" 108 | pretrained_wandb: False 109 | pretrained_wandb_params: 110 | filename: "" 111 | run_path: "" 112 | pretrained_strict: True 113 | seed: 0 114 | deterministic: False 115 | comment: "" 116 | profile: 117 | n_batches: 30 118 | directory: "" 119 | data_mode: "fake" 120 | data_shape: 0 121 | time: False 122 | summary: [0, ] 123 | summary_depth: 5 124 | testcase: 125 | load: False 126 | save: False 127 | epochs: 1 128 | batches: 20 129 | path: "" -------------------------------------------------------------------------------- /ckconv/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckconv/__init__.py -------------------------------------------------------------------------------- /ckconv/nn/__init__.py: -------------------------------------------------------------------------------- 1 | from .activation_functions import Swish, Sine 2 | from .linear import Linear1d, Linear2d, Linear3d, MultipliedLinear1d, MultipliedLinear2d 3 | from .norm import LayerNorm 4 | from .ckconv import CKConv, FlexConv 5 | from .regularizers import LnLoss, LimitLnLoss 6 | from .causalconv import CausalConv1d 7 | from .misc import MultiplyLearned, Multiply 8 | from .kernelnet import KernelNet, Siren, GaborNet 9 | from .lr_scheduler import LinearWarmUp_LRScheduler 10 | from . import ck 11 | -------------------------------------------------------------------------------- /ckconv/nn/activation_functions.py: -------------------------------------------------------------------------------- 1 | # torch 2 | import torch 3 | from ckconv.nn.misc import Expression 4 | 5 | 6 | def Swish(): 7 | """ 8 | out = x * sigmoid(x) 9 | """ 10 | return Expression(lambda x: x * torch.sigmoid(x)) 11 | 12 | 13 | def Sine(): 14 | """ 15 | out = sin(x) 16 | """ 17 | return Expression(lambda x: torch.sin(x)) 18 | -------------------------------------------------------------------------------- /ckconv/nn/causalconv.py: -------------------------------------------------------------------------------- 1 | import torch 2 | import torch.fft 3 | import torch.nn 4 | import ckconv.nn.functional as ckconv_f 5 | 6 | 7 | class CausalConv1d(torch.nn.Module): 8 | def __init__( 9 | self, 10 | in_channels: int, 11 | out_channels: int, 12 | kernel_size: int, 13 | bias: bool, 14 | weight_dropout: float, 15 | ): 16 | """ 17 | Applies a 1D convolution over an input signal of input_channels. 18 | 19 | :param in_channels: Number of channels in the input signal 20 | :param out_channels: Number of channels produced by the convolution 21 | :param kernel_size: Size of the convolving kernel 22 | :param bias: If True, adds a learnable bias to the output. 23 | :param weight_dropout: Dropout rate applied to the sampled convolutional kernels. 24 | """ 25 | super().__init__() 26 | self.weight_dropout = weight_dropout 27 | self.w_dropout = torch.nn.Dropout(p=weight_dropout) 28 | 29 | self.weight = torch.nn.Parameter( 30 | torch.Tensor(out_channels, in_channels, kernel_size) 31 | ) 32 | self.weight.data.normal_(0, 0.01) 33 | if bias: 34 | self.bias = torch.nn.Parameter(torch.Tensor(out_channels)) 35 | self.bias.data.fill_(value=0.0) 36 | 37 | def forward(self, x): 38 | 39 | # Dropout weight values if required 40 | if self.weight_dropout != 0.0: 41 | weight = self.w_dropout(self.weight) 42 | else: 43 | weight = self.weight 44 | 45 | # Perform causal convolution 46 | return ckconv_f.causal_fftconv( 47 | x, 48 | weight, 49 | self.bias, 50 | double_precision=False, 51 | ) 52 | -------------------------------------------------------------------------------- /ckconv/nn/ck/__init__.py: -------------------------------------------------------------------------------- 1 | from .mfn import GaborNet, FourierNet 2 | from .mlp import MLP 3 | from .siren import SIREN, nSIREN, SIRENlayer1d, SIRENlayer2d 4 | from .magnet import MAGNet 5 | -------------------------------------------------------------------------------- /ckconv/nn/functional/__init__.py: -------------------------------------------------------------------------------- 1 | from .conv import conv, fftconv 2 | from .causal_conv import causal_conv, causal_fftconv 3 | -------------------------------------------------------------------------------- /ckconv/nn/functional/causal_conv.py: -------------------------------------------------------------------------------- 1 | import torch 2 | import torch.nn.functional as f 3 | import torch.fft 4 | 5 | from typing import Tuple, Optional 6 | 7 | 8 | def causal_padding( 9 | x: torch.Tensor, 10 | kernel: torch.Tensor, 11 | ) -> Tuple[torch.Tensor, torch.Tensor]: 12 | # 1. Pad the input signal & kernel tensors. 13 | # Check if sizes are odd. If not, add a pad of zero to make them odd. 14 | if kernel.shape[-1] % 2 == 0: 15 | kernel = f.pad(kernel, [1, 0], value=0.0) 16 | # x = torch.nn.functional.pad(x, [1, 0], value=0.0) 17 | # 2. Perform padding on the input so that output equals input in length 18 | x = f.pad(x, [kernel.shape[-1] - 1, 0], value=0.0) 19 | 20 | return x, kernel 21 | 22 | 23 | def causal_conv( 24 | x: torch.Tensor, 25 | kernel: torch.Tensor, 26 | bias: Optional[torch.Tensor] = None, 27 | **kwargs, 28 | ) -> torch.Tensor: 29 | """ 30 | Args: 31 | x: (Tensor) Input tensor to be convolved with the kernel. 32 | kernel: (Tensor) Convolution kernel. 33 | bias: (Optional, Tensor) Bias tensor to add to the output. 34 | padding: (int) Number of zero samples to pad the input on the last dimension. 35 | Returns: 36 | (Tensor) Convolved tensor 37 | """ 38 | 39 | x, kernel = causal_padding(x, kernel) 40 | return torch.nn.functional.conv1d(x, kernel, bias=bias, padding=0) 41 | 42 | 43 | def causal_fftconv( 44 | x: torch.Tensor, 45 | kernel: torch.Tensor, 46 | bias: Optional[torch.Tensor] = None, 47 | double_precision: bool = False, 48 | **kwargs, 49 | ) -> torch.Tensor: 50 | """ 51 | Args: 52 | x: (Tensor) Input tensor to be convolved with the kernel. 53 | kernel: (Tensor) Convolution kernel. 54 | bias: (Optional, Tensor) Bias tensor to add to the output. 55 | padding: (int) Number of zero samples to pad the input on the last dimension. 56 | Returns: 57 | (Tensor) Convolved tensor 58 | """ 59 | 60 | x_shape = x.shape 61 | # 1. Handle padding of the input and the kernel to make them odd. 62 | x, kernel = causal_padding(x, kernel) 63 | 64 | # 2. Pad the kernel tensor to make them equally big. Required for fft. 65 | kernel = f.pad(kernel, [0, x.size(-1) - kernel.size(-1)]) 66 | 67 | # 3. Perform fourier transform 68 | if double_precision: 69 | # We can make usage of double precision to make more accurate approximations of the convolution response. 70 | x = x.double() 71 | kernel = kernel.double() 72 | 73 | x_fr = torch.fft.rfft(x, dim=-1) 74 | kernel_fr = torch.fft.rfft(kernel, dim=-1) 75 | 76 | # 4. Multiply the transformed matrices: 77 | # (Input * Conj(Kernel)) = Correlation(Input, Kernel) 78 | kernel_fr = torch.conj(kernel_fr) 79 | output_fr = torch.einsum("bi..., oi... -> bo...", x_fr, kernel_fr) 80 | 81 | # 5. Compute inverse FFT, and remove extra padded values 82 | # Once we are back in the spatial domain, we can go back to float precision, if double used. 83 | out = torch.fft.irfft(output_fr, dim=-1).float() 84 | 85 | out = out[:, :, : x_shape[-1]] 86 | 87 | # 6. Optionally, add a bias term before returning. 88 | if bias is not None: 89 | out = out + bias.view(1, -1, 1) 90 | 91 | return out 92 | -------------------------------------------------------------------------------- /ckconv/nn/lr_scheduler.py: -------------------------------------------------------------------------------- 1 | import torch 2 | import ckconv 3 | from torch.optim.lr_scheduler import LambdaLR 4 | 5 | 6 | class LinearWarmUp_LRScheduler(torch.nn.Module): 7 | def __init__( 8 | self, 9 | optimizer, 10 | lr_scheduler, 11 | warmup_iterations, 12 | ): 13 | super(LinearWarmUp_LRScheduler, self).__init__() 14 | 15 | self.warmup_scheduler = torch.optim.lr_scheduler.LambdaLR( 16 | optimizer, 17 | lambda iter: iter / warmup_iterations, 18 | ) 19 | self.lr_scheduler = lr_scheduler 20 | self.warmup_iterations = warmup_iterations 21 | self.iteration = 0 22 | 23 | def step(self): 24 | if self.iteration <= self.warmup_iterations: 25 | self.warmup_scheduler.step() 26 | else: 27 | self.lr_scheduler.step() 28 | self.iteration += 1 29 | -------------------------------------------------------------------------------- /ckconv/nn/misc.py: -------------------------------------------------------------------------------- 1 | import torch 2 | 3 | 4 | # From LieConv 5 | class Expression(torch.nn.Module): 6 | def __init__(self, func): 7 | """ 8 | Creates a torch.nn.Module that applies the function func. 9 | 10 | :param func: lambda function 11 | """ 12 | super().__init__() 13 | self.func = func 14 | 15 | def forward(self, x): 16 | return self.func(x) 17 | 18 | 19 | def Multiply( 20 | omega_0: float, 21 | ): 22 | """ 23 | out = omega_0 * x 24 | """ 25 | return Expression(lambda x: omega_0 * x) 26 | 27 | 28 | class MultiplyLearned(torch.nn.Module): 29 | def __init__( 30 | self, 31 | omega_0: float, 32 | ): 33 | """ 34 | out = omega_0 * x, with a learned omega_0 35 | """ 36 | super().__init__() 37 | self.omega_0 = torch.nn.Parameter(torch.Tensor(1)) 38 | with torch.no_grad(): 39 | self.omega_0.fill_(omega_0) 40 | 41 | def forward(self, x): 42 | return self.omega_0 * x 43 | -------------------------------------------------------------------------------- /ckconv/nn/norm.py: -------------------------------------------------------------------------------- 1 | import torch 2 | import torch.nn as nn 3 | 4 | 5 | class LayerNorm(nn.Module): 6 | def __init__( 7 | self, 8 | num_channels: int, 9 | eps: float = 1e-12, 10 | ): 11 | """Uses GroupNorm implementation with group=1 for speed.""" 12 | super().__init__() 13 | # we use GroupNorm to implement this efficiently and fast. 14 | self.layer_norm = torch.nn.GroupNorm(1, num_channels=num_channels, eps=eps) 15 | 16 | def forward(self, x): 17 | return self.layer_norm(x) 18 | -------------------------------------------------------------------------------- /ckconv/utils/__init__.py: -------------------------------------------------------------------------------- 1 | from .params import num_params, psnr 2 | from .grids import rel_positions_grid 3 | from .iterable import pairwise as pairwise_iterable 4 | from .flatten_configdict import flatten_configdict 5 | -------------------------------------------------------------------------------- /ckconv/utils/cutout.py: -------------------------------------------------------------------------------- 1 | # Taken from https://github.com/ISosnovik/sesn/ 2 | 3 | """The official implementation of 4 | "Improved Regularization of Convolutional Neural Networks with Cutout" 5 | Paper: https://arxiv.org/pdf/1708.04552.pdf 6 | Code: https://github.com/uoguelph-mlrg/Cutout 7 | Educational Community License, Version 2.0 (ECL-2.0) 8 | Source: https://raw.githubusercontent.com/uoguelph-mlrg/Cutout/master/LICENSE.md 9 | """ 10 | 11 | 12 | import torch 13 | import numpy as np 14 | 15 | 16 | class Cutout(object): 17 | """Randomly mask out one or more patches from an image. 18 | Args: 19 | n_holes (int): Number of patches to cut out of each image. 20 | length (int): The length (in pixels) of each square patch. 21 | """ 22 | 23 | def __init__(self, n_holes, length): 24 | self.n_holes = n_holes 25 | self.length = length 26 | 27 | def __call__(self, img): 28 | """ 29 | Args: 30 | img (Tensor): Tensor image of size (C, H, W). 31 | Returns: 32 | Tensor: Image with n_holes of dimension length x length cut out of it. 33 | """ 34 | h = img.size(1) 35 | w = img.size(2) 36 | 37 | mask = np.ones((h, w), np.float32) 38 | 39 | for n in range(self.n_holes): 40 | y = np.random.randint(h) 41 | x = np.random.randint(w) 42 | 43 | y1 = np.clip(y - self.length // 2, 0, h) 44 | y2 = np.clip(y + self.length // 2, 0, h) 45 | x1 = np.clip(x - self.length // 2, 0, w) 46 | x2 = np.clip(x + self.length // 2, 0, w) 47 | 48 | mask[y1:y2, x1:x2] = 0.0 49 | 50 | mask = torch.from_numpy(mask) 51 | mask = mask.expand_as(img) 52 | img = img * mask 53 | 54 | return img 55 | 56 | def __repr__(self): 57 | s = "Cutout(n_holes={}, length={})".format(self.n_holes, self.length) 58 | return s 59 | -------------------------------------------------------------------------------- /ckconv/utils/flatten_configdict.py: -------------------------------------------------------------------------------- 1 | from omegaconf import OmegaConf 2 | import pandas as pd 3 | 4 | 5 | def flatten_configdict( 6 | cfg: OmegaConf, 7 | sep: str = ".", 8 | ): 9 | cfgdict = OmegaConf.to_container(cfg) 10 | cfgdict = pd.json_normalize(cfgdict, sep=sep) 11 | 12 | return cfgdict.to_dict(orient="records")[0] 13 | -------------------------------------------------------------------------------- /ckconv/utils/grids.py: -------------------------------------------------------------------------------- 1 | import torch 2 | 3 | 4 | def rel_positions_grid(grid_sizes): 5 | """Generates a flattened grid of (x,y,...) coordinates in a range of -1 to 1. 6 | sidelen: int 7 | dim: int 8 | """ 9 | tensors = [] 10 | for size in grid_sizes: 11 | tensors.append(torch.linspace(-1, 1, steps=size)) 12 | # tensors = tuple(dim * [torch.linspace(-1, 1, steps=grid_length)]) 13 | relpos_grid = torch.stack(torch.meshgrid(*tensors), dim=-0) 14 | return relpos_grid 15 | -------------------------------------------------------------------------------- /ckconv/utils/iterable.py: -------------------------------------------------------------------------------- 1 | def grouped(iterable, n): 2 | "s -> (s0,s1,s2,...sn-1), (sn,sn+1,sn+2,...s2n-1), (s2n,s2n+1,s2n+2,...s3n-1), ..." 3 | return zip(*[iter(iterable)] * n) 4 | 5 | 6 | def pairwise(iterable): 7 | return grouped(iterable, 2) 8 | -------------------------------------------------------------------------------- /ckconv/utils/params.py: -------------------------------------------------------------------------------- 1 | import torch 2 | import numpy as np 3 | 4 | 5 | def num_params( 6 | model: torch.nn.Module, 7 | ) -> int: 8 | """ 9 | Calculates the number of parameters of a torch.nn.Module. 10 | """ 11 | return sum(p.numel() for p in model.parameters() if p.requires_grad) 12 | 13 | 14 | def psnr(img1, img2): 15 | """Calculates PSNR between two images. 16 | Args: 17 | img1 (torch.Tensor): 18 | img2 (torch.Tensor): 19 | """ 20 | return ( 21 | 20.0 * np.log10(1.0) 22 | - 10.0 * (img1 - img2).detach().pow(2).mean().log10().to("cpu").item() 23 | ) 24 | -------------------------------------------------------------------------------- /ckernel_fitting/README.md: -------------------------------------------------------------------------------- 1 | ## FlexConv: Continuous Kernel Convolutions with Differentiable Kernel Sizes 2 | 3 | This repository contains the source code accompanying the paper: 4 | 5 | [FlexConv: Continuous Kernel Convolutions with Differentiable Kernel Sizes](https://arxiv.org/abs/2102.02611) [[Slides]](#)
**[David W. Romero*](https://www.davidromero.ml/), [Robert-Jan Bruintjes*](https://rjbruin.github.io), [Jakub M. Tomczak](https://jmtomczak.github.io/), [Erik J. Bekkers](https://erikbekkers.bitbucket.io/), [Mark Hoogendoorn](https://www.cs.vu.nl/~mhoogen/) & [Jan C. van Gemert](https://jvgemert.github.io)**. 6 | 7 | This experimental code extends [the kernel fitting experimental code by David W. Romero et al.](https://github.com/dwromero/ckconv). We add new kernel generators covered in our paper, specifically MFNs with Fourier and Gabor features, as well as our proposed MAGNet kernel generator. 8 | 9 | _The rest of this description is reproduced from [the original codebase](https://github.com/dwromero/ckconv)._ 10 | 11 | ### Fitting Convolutional Kernels via MLPs 12 | 13 | In this folder, you can find the code used in our experiments to fit implicit neural representations to several different target functions. 14 | 15 | #### Functionality: 16 | 17 | Several functions can be found in `functions.py`. Some functions may receive some parameters as input. For example, 18 | a Gaussian might be parameterized via its mean and its variance. This parameters are controlled via `argparse` and follow 19 | the dictionary of parameters found in `config.py`. 20 | 21 | Other parameters in `config.py` are used to parameterized the MLP used in the experiment. For instance, define the 22 | nonlinearity used. 23 | 24 | An example is, for instance: 25 | ``` 26 | python fit_function.py --config.function SinusChirp --config.min -15.0 --config.max 0.0 --config.no_samples 1000 --config.optim Adam --config.lr 1e-4 --config.no_iterations 20000 --config.seed 0 --config.device cuda --config.kernelnet_norm_type LayerNorm --config.kernelnet_activation_function Sine --config.kernelnet_no_hidden 32 --config.padding 0 --config.kernelnet_omega_0 1000.0 27 | ``` 28 | 29 | This call will fit a SinusShirp defined between -15 and 0 sampled at 1000 positions. The network used to approximate that function is given by a 3-layer MLP with 32 hidden units, Sine nonlinearities and omega_0 = 1000. -------------------------------------------------------------------------------- /ckernel_fitting/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/__init__.py -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim01.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim02.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim03.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim04.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim05.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim05.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim06.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim06.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim07.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim07.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim08.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim09.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim09.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim10.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim11.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim12.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim13.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim14.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim15.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim16.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim17.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim17.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim18.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim18.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim19.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim19.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim20.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim21.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim21.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim22.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim22.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim23.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim23.png -------------------------------------------------------------------------------- /ckernel_fitting/kodak-dataset/kodim24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/kodak-dataset/kodim24.png -------------------------------------------------------------------------------- /ckernel_fitting/random_kernel.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/random_kernel.npy -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px.csv: -------------------------------------------------------------------------------- 1 | Freq 2 | 1.00,4.00,16.00,64.00 3 | MSE 4 | 0.00000205,0.00000205,0.00000205,0.00000205 5 | PSNR 6 | 22.47286034,22.47286034,22.47286034,22.47286034 7 | -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq16_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq16_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq16_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq16_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq16_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq16_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq1_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq1_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq1_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq1_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq1_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq1_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq4_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq4_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq4_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq4_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq4_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq4_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq64_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq64_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq64_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq64_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq64_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_alexnet_lr001_it5000_33px/MAGNet_freq64_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px.csv: -------------------------------------------------------------------------------- 1 | Freq 2 | 1.00,4.00,16.00,64.00 3 | Order 4 | 1.00,2.00,3.00,4.00,5.00 5 | MSE 6 | 0.00004100,0.00004100,0.00004100,0.00004100,0.00004100 7 | 0.00154166,0.00154166,0.00154166,0.00154166,0.00154166 8 | 0.00129206,0.00129206,0.00129206,0.00129206,0.00129206 9 | 0.00074260,0.00074260,0.00074260,0.00074260,0.00074260 10 | PSNR 11 | 38.77012253,38.77012253,38.77012253,38.77012253,38.77012253 12 | 21.12865829,21.12865829,21.12865829,21.12865829,21.12865829 13 | 19.69134521,19.69134521,19.69134521,19.69134521,19.69134521 14 | 19.79791451,19.79791451,19.79791451,19.79791451,19.79791451 15 | -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq16_order1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq16_order1.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq16_order2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq16_order2.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq16_order3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq16_order3.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq16_order4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq16_order4.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq16_order5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq16_order5.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq1_order1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq1_order1.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq1_order2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq1_order2.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq1_order3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq1_order3.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq1_order4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq1_order4.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq1_order5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq1_order5.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq4_order1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq4_order1.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq4_order2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq4_order2.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq4_order3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq4_order3.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq4_order4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq4_order4.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq4_order5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq4_order5.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq64_order1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq64_order1.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq64_order2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq64_order2.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq64_order3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq64_order3.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq64_order4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq64_order4.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq64_order5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px/MAGNet_freq64_order5.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf.csv: -------------------------------------------------------------------------------- 1 | Freq 2 | 1.00,4.00,16.00,64.00 3 | Order 4 | 1.00,2.00,3.00,4.00,5.00 5 | MSE 6 | 0.00004100,0.00004100,0.00004100,0.00004100,0.00004100 7 | 0.00154166,0.00154166,0.00154166,0.00154166,0.00154166 8 | 0.00129206,0.00129206,0.00129206,0.00129206,0.00129206 9 | 0.00074260,0.00074260,0.00074260,0.00074260,0.00074260 10 | PSNR 11 | 38.77012253,38.77012253,38.77012253,38.77012253,38.77012253 12 | 21.12865829,21.12865829,21.12865829,21.12865829,21.12865829 13 | 19.69134521,19.69134521,19.69134521,19.69134521,19.69134521 14 | 19.79791451,19.79791451,19.79791451,19.79791451,19.79791451 15 | -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq16_order1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq16_order1.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq16_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq16_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq16_order3.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq16_order3.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq16_order4.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq16_order4.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq16_order5.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq16_order5.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq1_order1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq1_order1.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq1_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq1_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq1_order3.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq1_order3.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq1_order4.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq1_order4.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq1_order5.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq1_order5.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq4_order1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq4_order1.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq4_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq4_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq4_order3.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq4_order3.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq4_order4.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq4_order4.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq4_order5.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq4_order5.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq64_order1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq64_order1.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq64_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq64_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq64_order3.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq64_order3.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq64_order4.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq64_order4.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq64_order5.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it3000_33px_pdf/MAGNet_freq64_order5.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it5000_33px.csv: -------------------------------------------------------------------------------- 1 | Freq 2 | 1.00,4.00,16.00,64.00 3 | MSE 4 | 0.00004100,0.00154166,0.00129206,0.00074260 5 | PSNR 6 | 38.77012253,21.12865829,19.69134521,19.79791451 7 | -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq16_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq16_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq16_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq16_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq16_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq16_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq1_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq1_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq1_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq1_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq1_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq1_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq4_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq4_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq4_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq4_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq4_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq4_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq64_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq64_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq64_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq64_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq64_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_gabor_lr001_it5000_33px/MAGNet_freq64_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr0001_it20000_33px.csv: -------------------------------------------------------------------------------- 1 | Order 2 | 0.00 3 | MSE 4 | 0.06182247 5 | PSNR 6 | 12.10298061 7 | -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr0001_it20000_33px/MAGNet_freq100_order0.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr0001_it20000_33px/MAGNet_freq100_order0.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr0001_it20000_33px/MAGNet_freq100_order0_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr0001_it20000_33px/MAGNet_freq100_order0_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr0001_it20000_33px/MAGNet_freq100_order0_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr0001_it20000_33px/MAGNet_freq100_order0_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it20000_33px.csv: -------------------------------------------------------------------------------- 1 | Order 2 | 0.00 3 | MSE 4 | 0.06216410 5 | PSNR 6 | 12.07782650 7 | -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it20000_33px/MAGNet_freq100_order0.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it20000_33px/MAGNet_freq100_order0.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it20000_33px/MAGNet_freq100_order0_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it20000_33px/MAGNet_freq100_order0_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it20000_33px/MAGNet_freq100_order0_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it20000_33px/MAGNet_freq100_order0_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it3000_33px.csv: -------------------------------------------------------------------------------- 1 | Freq 2 | -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order1.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order1_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order1_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order1_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order1_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order3.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order3.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order3_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order3_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order3_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order3_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order4.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order4.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order4_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order4_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order4_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order4_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order5.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order5.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order5_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order5_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order5_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it3000_33px/MAGNet_freq100_order5_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it5000_33px.csv: -------------------------------------------------------------------------------- 1 | Freq 2 | 1.00,4.00,16.00,64.00 3 | MSE 4 | 0.05853967 5 | PSNR 6 | 12.34358215 7 | -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq100_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq100_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq100_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq100_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq100_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq100_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq16_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq16_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq16_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq16_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq16_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq16_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq1_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq1_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq1_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq1_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq1_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq1_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq4_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq4_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq4_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq4_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq4_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq4_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq64_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq64_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq64_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq64_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq64_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnet_random_lr001_it5000_33px/MAGNet_freq64_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px.csv: -------------------------------------------------------------------------------- 1 | Freq 2 | 1.00,4.00,16.00,64.00 3 | MSE 4 | 0.00000000,0.00000000,0.00000000,0.00000000 5 | PSNR 6 | 22.47439957,22.47439957,22.47439957,22.47439957 7 | -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq16_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq16_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq16_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq16_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq16_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq16_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq1_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq1_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq1_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq1_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq1_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq1_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq4_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq4_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq4_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq4_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq4_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq4_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq64_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq64_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq64_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq64_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq64_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_alexnet_lr001_it5000_33px/MAGNet_freq64_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px.csv: -------------------------------------------------------------------------------- 1 | Freq 2 | 1.00,4.00,16.00,64.00 3 | MSE 4 | 0.00000000,0.00000000,0.00000000,0.00000000 5 | PSNR 6 | 39.70632172,21.64913559,19.97712898,19.97710228 7 | -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq16_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq16_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq16_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq16_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq16_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq16_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq1_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq1_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq1_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq1_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq1_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq1_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq4_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq4_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq4_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq4_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq4_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq4_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq64_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq64_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq64_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq64_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq64_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_gabor_lr001_it5000_33px/MAGNet_freq64_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_random_lr001_it5000_33px.csv: -------------------------------------------------------------------------------- 1 | Freq 2 | 1.00,4.00,16.00,64.00 3 | MSE 4 | 0.00000000 5 | PSNR 6 | 103.96838379 7 | -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq100_order0.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq100_order0.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq100_order0_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq100_order0_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq100_order0_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq100_order0_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq100_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq100_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq100_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq100_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq100_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq100_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq16_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq16_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq16_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq16_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq16_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq16_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq1_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq1_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq1_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq1_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq1_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq1_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq4_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq4_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq4_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq4_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq4_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq4_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq64_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq64_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq64_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq64_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq64_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/magnetbig_random_lr001_it5000_33px/MAGNet_freq64_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/siren_random_lr001_it5000_33px.csv: -------------------------------------------------------------------------------- 1 | Freq 2 | 64.00 3 | MSE 4 | 0.07866413 5 | PSNR 6 | 11.04223251 7 | -------------------------------------------------------------------------------- /ckernel_fitting/results/siren_random_lr001_it5000_33px/SIREN_freq64_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/siren_random_lr001_it5000_33px/SIREN_freq64_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/siren_random_lr001_it5000_33px/SIREN_freq64_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/siren_random_lr001_it5000_33px/SIREN_freq64_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/siren_random_lr001_it5000_33px/SIREN_freq64_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/siren_random_lr001_it5000_33px/SIREN_freq64_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_alexnet_lr001_it3000_33px.csv: -------------------------------------------------------------------------------- 1 | Freq 2 | 64.00 3 | MSE 4 | 0.00000000 5 | PSNR 6 | 22.47439957 7 | -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_alexnet_lr001_it3000_33px/SIREN_freq64_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_alexnet_lr001_it3000_33px/SIREN_freq64_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_alexnet_lr001_it3000_33px/SIREN_freq64_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_alexnet_lr001_it3000_33px/SIREN_freq64_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_alexnet_lr001_it3000_33px/SIREN_freq64_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_alexnet_lr001_it3000_33px/SIREN_freq64_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_alexnet_lr001_it5000_33px.csv: -------------------------------------------------------------------------------- 1 | Freq 2 | 64.00 3 | MSE 4 | 0.00000000 5 | PSNR 6 | 22.47439957 7 | -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_alexnet_lr001_it5000_33px/SIREN_freq64_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_alexnet_lr001_it5000_33px/SIREN_freq64_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_alexnet_lr001_it5000_33px/SIREN_freq64_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_alexnet_lr001_it5000_33px/SIREN_freq64_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_alexnet_lr001_it5000_33px/SIREN_freq64_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_alexnet_lr001_it5000_33px/SIREN_freq64_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px.csv: -------------------------------------------------------------------------------- 1 | Freq 2 | 1.00,4.00,16.00,64.00 3 | MSE 4 | 0.00000002,0.00000004,0.00000004,0.00000005 5 | PSNR 6 | 39.70598602,21.64912415,19.97712135,19.97709084 7 | -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq16_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq16_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq16_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq16_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq16_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq16_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq1_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq1_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq1_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq1_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq1_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq1_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq4_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq4_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq4_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq4_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq4_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq4_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq64_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq64_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq64_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq64_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq64_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_gabor_lr0001_it5000_33px/SIREN_freq64_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_gabor_lr001_it5000_33px.csv: -------------------------------------------------------------------------------- 1 | Freq 2 | 64.00 3 | MSE 4 | 0.00007056 5 | PSNR 6 | 19.96235657 7 | -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_gabor_lr001_it5000_33px/SIREN_freq64_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_gabor_lr001_it5000_33px/SIREN_freq64_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_gabor_lr001_it5000_33px/SIREN_freq64_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_gabor_lr001_it5000_33px/SIREN_freq64_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_gabor_lr001_it5000_33px/SIREN_freq64_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_gabor_lr001_it5000_33px/SIREN_freq64_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_random_lr001_it5000_33px.csv: -------------------------------------------------------------------------------- 1 | Freq 2 | 64.00 3 | MSE 4 | 0.00011069 5 | PSNR 6 | 39.56427765 7 | -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_random_lr001_it5000_33px/SIREN_freq64_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_random_lr001_it5000_33px/SIREN_freq64_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_random_lr001_it5000_33px/SIREN_freq64_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_random_lr001_it5000_33px/SIREN_freq64_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/sirenbig_random_lr001_it5000_33px/SIREN_freq64_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/sirenbig_random_lr001_it5000_33px/SIREN_freq64_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px.csv: -------------------------------------------------------------------------------- 1 | Order 2 | 1.00,2.00,3.00,4.00,5.00,6.00,7.00,8.00,9.00 3 | MSE 4 | 0.00216379,0.00087710,0.00078014,0.00042617,0.00036781,0.00031620,0.00038477,0.00093359,0.00042103 5 | PSNR 6 | 21.71244621,22.06432724,22.14664650,22.31022263,22.34050560,22.38589287,22.33252335,22.13039207,22.31523132 7 | -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order1.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order1_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order1_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order1_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order1_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order3.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order3.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order3_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order3_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order3_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order3_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order4.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order4.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order4_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order4_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order4_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order4_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order5.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order5.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order5_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order5_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order5_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order5_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order6.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order6.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order6_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order6_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order6_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order6_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order7.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order7.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order7_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order7_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order7_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order7_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order8.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order8.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order8_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order8_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order8_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order8_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order9.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order9.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order9_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order9_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order9_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_alexnet_lr001_it5000_11px/SRF_freq100_order9_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px.csv: -------------------------------------------------------------------------------- 1 | Order 2 | 1.00,2.00,3.00,4.00,5.00,6.00,7.00,8.00,9.00 3 | MSE 4 | 0.00021399,0.00000000,0.00000000,0.00000018,0.00000058,0.00000009,0.00000079,0.00015429,0.00004159 5 | 0.01368095,0.00394265,0.00418355,0.00010110,0.00011307,0.00019037,0.00022488,0.00095066,0.00022026 6 | 0.02010560,0.01350454,0.01350456,0.01115140,0.01137908,0.00551678,0.00551791,0.00424561,0.00389114 7 | 0.02010573,0.02010573,0.02010573,0.02010573,0.02010573,0.02010576,0.02010675,0.02012515,0.02014794 8 | PSNR 9 | 36.69602203,39.70632172,39.70630646,39.70237350,39.69387436,39.70476532,39.69169998,37.30180740,38.99423981 10 | 18.63883400,20.54935265,20.49039078,21.61729622,21.61348343,21.58839417,21.57727814,21.35070419,21.58800507 11 | 16.96682358,17.74559784,17.74559402,18.06082535,18.02930641,18.92443275,18.92347908,19.12953377,19.20800972 12 | 16.96680260,16.96680260,16.96680260,16.96680069,16.96680260,16.96695518,16.96651077,16.96333122,16.96358871 13 | -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order1.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order1_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order1_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order1_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order1_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order3.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order3.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order3_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order3_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order3_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order3_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order4.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order4.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order4_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order4_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order4_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order4_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order5.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order5.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order5_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order5_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order5_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order5_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order6.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order6.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order6_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order6_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order6_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order6_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order7.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order7.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order7_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order7_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order7_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order7_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order8.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order8.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order8_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order8_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order8_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order8_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order9.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order9.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order9_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order9_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order9_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq16_order9_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order1.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order1_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order1_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order1_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order1_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order3.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order3.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order3_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order3_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order3_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order3_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order4.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order4.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order4_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order4_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order4_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order4_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order5.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order5.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order5_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order5_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order5_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order5_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order6.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order6.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order6_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order6_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order6_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order6_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order7.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order7.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order7_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order7_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order7_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order7_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order8.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order8.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order8_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order8_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order8_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order8_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order9.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order9.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order9_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order9_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order9_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq1_order9_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order1.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order1_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order1_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order1_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order1_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order3.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order3.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order3_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order3_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order3_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order3_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order4.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order4.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order4_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order4_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order4_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order4_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order5.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order5.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order5_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order5_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order5_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order5_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order6.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order6.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order6_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order6_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order6_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order6_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order7.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order7.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order7_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order7_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order7_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order7_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order8.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order8.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order8_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order8_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order8_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order8_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order9.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order9.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order9_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order9_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order9_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq4_order9_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order1.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order1_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order1_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order1_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order1_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order3.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order3.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order3_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order3_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order3_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order3_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order4.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order4.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order4_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order4_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order4_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order4_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order5.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order5.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order5_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order5_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order5_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order5_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order6.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order6.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order6_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order6_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order6_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order6_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order7.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order7.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order7_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order7_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order7_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order7_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order8.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order8.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order8_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order8_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order8_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order8_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order9.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order9.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order9_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order9_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order9_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_gabor_lr001_it5000_33px/SRF_freq64_order9_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px.csv: -------------------------------------------------------------------------------- 1 | Freq 2 | 1.00,4.00,16.00,64.00 3 | MSE 4 | 0.29550046,0.30102140,0.29786390,0.27661514,0.28667143,0.27587554,0.29073596,0.30388275,0.28802386 5 | PSNR 6 | 5.29441833,5.21402645,5.25982141,5.61612034,5.49902678,5.84523869,5.37856388,5.19098568,5.48564863 7 | -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order1.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order1_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order1_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order1_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order1_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order2_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order2_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order2_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order2_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order3.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order3.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order3_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order3_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order3_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order3_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order4.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order4.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order4_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order4_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order4_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order4_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order5.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order5.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order5_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order5_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order5_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order5_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order6.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order6.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order6_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order6_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order6_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order6_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order7.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order7.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order7_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order7_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order7_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order7_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order8.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order8.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order8_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order8_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order8_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order8_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order9.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order9.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order9_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order9_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order9_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf19_random_lr001_it5000_33px/SRF_freq100_order9_pred.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf9_gabor_lr001_it3000_33px.csv: -------------------------------------------------------------------------------- 1 | Freq 2 | 64.00 3 | Order 4 | 9.00 5 | MSE 6 | 0.02014794 7 | PSNR 8 | 16.96358871 9 | -------------------------------------------------------------------------------- /ckernel_fitting/results/srf9_gabor_lr001_it3000_33px/SRF_freq64_order9.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf9_gabor_lr001_it3000_33px/SRF_freq64_order9.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px.csv: -------------------------------------------------------------------------------- 1 | Freq 2 | 1.00,4.00,16.00,64.00 3 | Order 4 | 1.00,2.00,3.00,4.00,5.00 5 | MSE 6 | 0.00021399,0.00000000,0.00000000,0.00000018,0.00000058 7 | 0.01368095,0.00394265,0.00418355,0.00010110,0.00011307 8 | 0.02010560,0.01350454,0.01350456,0.01115140,0.01137908 9 | 0.02010573,0.02010573,0.02010573,0.02010573,0.02010573 10 | PSNR 11 | 36.69602203,39.70632172,39.70630646,39.70237350,39.69387436 12 | 18.63883400,20.54935265,20.49039078,21.61729622,21.61348343 13 | 16.96682358,17.74559784,17.74559402,18.06082535,18.02930641 14 | 16.96680260,16.96680260,16.96680260,16.96680069,16.96680260 15 | -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq16_order1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq16_order1.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq16_order2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq16_order2.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq16_order3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq16_order3.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq16_order4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq16_order4.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq16_order5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq16_order5.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq1_order1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq1_order1.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq1_order2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq1_order2.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq1_order3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq1_order3.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq1_order4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq1_order4.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq1_order5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq1_order5.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq4_order1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq4_order1.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq4_order2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq4_order2.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq4_order3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq4_order3.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq4_order4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq4_order4.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq4_order5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq4_order5.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq64_order1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq64_order1.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq64_order2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq64_order2.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq64_order3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq64_order3.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq64_order4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq64_order4.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq64_order5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px/SRF_freq64_order5.jpg -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf.csv: -------------------------------------------------------------------------------- 1 | Freq 2 | 1.00,4.00,16.00,64.00 3 | Order 4 | 1.00,2.00,3.00,4.00,5.00 5 | MSE 6 | 0.00021399,0.00000000,0.00000000,0.00000018,0.00000058 7 | 0.01368095,0.00394265,0.00418355,0.00010110,0.00011307 8 | 0.02010560,0.01350454,0.01350456,0.01115140,0.01137908 9 | 0.02010573,0.02010573,0.02010573,0.02010573,0.02010573 10 | PSNR 11 | 36.69602203,39.70632172,39.70630646,39.70237350,39.69387436 12 | 18.63883400,20.54935265,20.49039078,21.61729622,21.61348343 13 | 16.96682358,17.74559784,17.74559402,18.06082535,18.02930641 14 | 16.96680260,16.96680260,16.96680260,16.96680069,16.96680260 15 | -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq16_order1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq16_order1.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq16_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq16_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq16_order3.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq16_order3.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq16_order4.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq16_order4.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq16_order5.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq16_order5.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq1_order1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq1_order1.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq1_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq1_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq1_order3.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq1_order3.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq1_order4.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq1_order4.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq1_order5.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq1_order5.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq4_order1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq4_order1.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq4_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq4_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq4_order3.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq4_order3.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq4_order4.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq4_order4.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq4_order5.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq4_order5.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq64_order1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq64_order1.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq64_order2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq64_order2.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq64_order3.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq64_order3.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq64_order4.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq64_order4.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq64_order5.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_gabor_lr001_it3000_33px_pdf/SRF_freq64_order5.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_random_lr0001_it20000_33px.csv: -------------------------------------------------------------------------------- 1 | Order 2 | 0.00 3 | MSE 4 | 0.31664285 5 | PSNR 6 | 4.99430275 7 | -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_random_lr0001_it20000_33px/SRF_freq100_order0.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_random_lr0001_it20000_33px/SRF_freq100_order0.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_random_lr0001_it20000_33px/SRF_freq100_order0_gt.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_random_lr0001_it20000_33px/SRF_freq100_order0_gt.pdf -------------------------------------------------------------------------------- /ckernel_fitting/results/srf_random_lr0001_it20000_33px/SRF_freq100_order0_pred.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/ckernel_fitting/results/srf_random_lr0001_it20000_33px/SRF_freq100_order0_pred.pdf -------------------------------------------------------------------------------- /data/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/data/.gitkeep -------------------------------------------------------------------------------- /datasets/__init__.py: -------------------------------------------------------------------------------- 1 | from .addition_problem import AdditionProblem 2 | from .copy_memory import CopyMemory 3 | from .mnist import MNIST 4 | from .cifar10 import CIFAR10 5 | from .stl10 import STL10 6 | from .cifar100 import CIFAR100 7 | from .speech_commands import ( 8 | SpeechCommands, 9 | normalise_data, 10 | split_data, 11 | load_data, 12 | save_data, 13 | ) 14 | from .char_trajectories import CharTrajectories 15 | from .imagenet_small import ImagenetDownsampled 16 | -------------------------------------------------------------------------------- /datasets/addition_problem.py: -------------------------------------------------------------------------------- 1 | import torch 2 | import numpy as np 3 | 4 | from typing import Tuple 5 | 6 | 7 | def data_generator( 8 | N: int, 9 | seq_length: int, 10 | ) -> Tuple[torch.Tensor, torch.Tensor]: 11 | """ 12 | Args: 13 | N: # of data samples in the set 14 | seq_length: Length of the adding problem data 15 | """ 16 | X_num = torch.rand([N, 1, seq_length]) 17 | X_mask = torch.zeros([N, 1, seq_length]) 18 | Y = torch.zeros([N, 1]) 19 | for i in range(N): 20 | positions = np.random.choice(seq_length, size=2, replace=False) 21 | X_mask[i, 0, positions[0]] = 1 22 | X_mask[i, 0, positions[1]] = 1 23 | Y[i, 0] = X_num[i, 0, positions[0]] + X_num[i, 0, positions[1]] 24 | X = torch.cat((X_num, X_mask), dim=1) 25 | return X, Y 26 | 27 | 28 | class AdditionProblem(torch.utils.data.TensorDataset): 29 | def __init__( 30 | self, 31 | partition: str, 32 | seq_length: int, 33 | **kwargs, 34 | ): 35 | """ 36 | Creates a Addition Problem dataset. 37 | """ 38 | if partition == "train": 39 | X, Y = data_generator(50000, seq_length) 40 | elif partition == "test": 41 | X, Y = data_generator(1000, seq_length) 42 | else: 43 | raise NotImplementedError( 44 | "The dataset partition {} does not exist".format(partition) 45 | ) 46 | 47 | super(AdditionProblem, self).__init__(X, Y) 48 | -------------------------------------------------------------------------------- /datasets/copy_memory.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | import torch 3 | from torch.autograd import Variable 4 | 5 | 6 | def data_generator(T, mem_length, b_size): 7 | """ 8 | Generate data for the copying memory task 9 | :param T: The total blank time length 10 | :param mem_length: The length of the memory to be recalled 11 | :param b_size: The batch size 12 | :return: Input and target data tensor 13 | """ 14 | seq = torch.from_numpy(np.random.randint(1, 9, size=(b_size, mem_length))).float() 15 | zeros = torch.zeros((b_size, T)) 16 | marker = 9 * torch.ones((b_size, mem_length + 1)) 17 | placeholders = torch.zeros((b_size, mem_length)) 18 | 19 | X = torch.cat((seq, zeros[:, :-1], marker), 1) 20 | Y = torch.cat((placeholders, zeros, seq), 1).long() 21 | 22 | return X, Y 23 | 24 | 25 | class CopyMemory(torch.utils.data.TensorDataset): # TODO: Documentation 26 | def __init__( 27 | self, 28 | partition: str, 29 | seq_length: int, 30 | **kwargs, 31 | ): 32 | memory_size = kwargs["memory_size"] 33 | 34 | blank_length = seq_length 35 | # total_seq_length = blank_length + ( 36 | # 2 * memory_size 37 | # ) # Total size of sequence is blank space + 2 times the size of the string to memorize. 38 | 39 | if partition == "train": 40 | dataset_size = 10000 41 | X, Y = data_generator(blank_length, memory_size, dataset_size) 42 | elif partition == "test": 43 | dataset_size = 1000 44 | X, Y = data_generator(blank_length, memory_size, dataset_size) 45 | else: 46 | raise NotImplementedError( 47 | "The dataset partition {} does not exist".format(partition) 48 | ) 49 | 50 | super(CopyMemory, self).__init__(X, Y) 51 | -------------------------------------------------------------------------------- /datasets/imagenet_small.py: -------------------------------------------------------------------------------- 1 | import os 2 | import torchvision 3 | 4 | from datasets.datasetfolder import RAMableImageFolder 5 | from datasets.cifar10 import augmentations_resnet 6 | 7 | 8 | class ImagenetDownsampled(RAMableImageFolder): 9 | def __init__( 10 | self, 11 | partition, 12 | root=None, 13 | augment="None", 14 | use_ram=False, 15 | use_cache=False, 16 | img_size=None, 17 | **kwargs, 18 | ): 19 | if root is None or root == "": 20 | raise ValueError("Missing dataset root.") 21 | 22 | root = os.path.join(root, partition) 23 | 24 | if "resize" in kwargs and kwargs["resize"] != "": 25 | raise NotImplementedError("resize for ImagenetDownsampled") 26 | if "resize_blur" in kwargs and kwargs["resize_blur"]: 27 | raise NotImplementedError() 28 | 29 | if augment == "resnet": 30 | transform = augmentations_resnet(crop_size=img_size) 31 | if use_ram: 32 | transform.insert(0, torchvision.transforms.ToPILImage()) 33 | elif augment == "None": 34 | transform = [ 35 | torchvision.transforms.ToTensor(), 36 | torchvision.transforms.Normalize( 37 | (0.485, 0.456, 0.406), (0.229, 0.224, 0.225) 38 | ), 39 | ] 40 | else: 41 | raise NotImplementedError(f"augment = {augment}") 42 | transform = torchvision.transforms.Compose(transform) 43 | 44 | super().__init__( 45 | root, 46 | transform=transform, 47 | use_ram=use_ram, 48 | use_cache=use_cache, 49 | ) 50 | -------------------------------------------------------------------------------- /datasets/mnist.py: -------------------------------------------------------------------------------- 1 | from torchvision import datasets, transforms 2 | import torch 3 | 4 | from hydra import utils 5 | import os 6 | 7 | 8 | class MNIST(datasets.MNIST): 9 | def __init__( 10 | self, 11 | partition: int, 12 | **kwargs, 13 | ): 14 | if "root" in kwargs: 15 | root = kwargs["root"] 16 | else: 17 | root = utils.get_original_cwd() 18 | root = os.path.join(root, "data") 19 | 20 | if "resize_blur" in kwargs and kwargs["resize_blur"]: 21 | raise NotImplementedError() 22 | 23 | augment = kwargs["augment"] 24 | if augment == "standard": 25 | transform = get_augmentations() 26 | elif augment == "None": 27 | transform = [ 28 | transforms.ToTensor(), 29 | transforms.Normalize((0.1307,), (0.3081,)), 30 | ] 31 | else: 32 | raise NotImplementedError(f"augment = {augment}") 33 | 34 | transform = transforms.Compose(transform) 35 | 36 | if partition == "train": 37 | train = True 38 | elif partition == "test": 39 | train = False 40 | else: 41 | raise NotImplementedError( 42 | "The dataset partition {} does not exist".format(partition) 43 | ) 44 | 45 | super(MNIST, self).__init__( 46 | root=root, train=train, transform=transform, download=True 47 | ) 48 | 49 | 50 | def get_augmentations(): 51 | """ 52 | Following "A branching and merging convolutional network with homogeneous filter capsules" 53 | - Biearly et al., 2020 - https://arxiv.org/abs/2001.09136 54 | """ 55 | augmentations = [ 56 | transforms.RandomApply( 57 | [transforms.RandomRotation(30)], p=0.5 58 | ), # Rotation by 30 degrees with probability 0.5 59 | transforms.RandomApply( 60 | [transforms.RandomAffine(degrees=0, translate=(2 / 28.0, 2 / 28.0))], p=0.5 61 | ), # Translation of 2 pixels with probability 0.5 62 | transforms.RandomApply( 63 | [transforms.RandomAffine(degrees=0, translate=(0, 0), scale=(0.75, 1))], 64 | p=0.5, 65 | ), # Rescale with probability 0.5 66 | transforms.ToTensor(), 67 | transforms.Normalize((0.1307,), (0.3081,)), 68 | transforms.RandomErasing( 69 | p=0.5, scale=(4 / 28.0, 4 / 28.0), ratio=(1.0, 1.0), value=0, inplace=False 70 | ), # Erase patches of 4 pixels with probability 0.5 71 | ] 72 | return augmentations 73 | -------------------------------------------------------------------------------- /datasets/stl10.py: -------------------------------------------------------------------------------- 1 | from torchvision import datasets, transforms 2 | from ckconv.utils.cutout import Cutout 3 | 4 | from hydra import utils 5 | import os 6 | 7 | 8 | class STL10(datasets.STL10): # TODO: Documentation 9 | def __init__( 10 | self, 11 | partition: str, 12 | **kwargs, 13 | ): 14 | if "root" in kwargs: 15 | root = kwargs["root"] 16 | else: 17 | root = utils.get_original_cwd() 18 | root = os.path.join(root, "data") 19 | 20 | if "resize_blur" in kwargs and kwargs["resize_blur"]: 21 | raise NotImplementedError() 22 | 23 | augment = kwargs["augment"] 24 | if augment == "resnet": 25 | transform = get_augmentations() 26 | elif augment == "None": 27 | transform = [ 28 | transforms.CenterCrop(96), 29 | transforms.ToTensor(), 30 | transforms.Normalize( 31 | (0.4467, 0.4398, 0.4066), (0.2603, 0.2566, 0.2713) 32 | ), 33 | ] 34 | else: 35 | raise NotImplementedError(f"augment = {augment}") 36 | 37 | # Resize according to config.resize 38 | if "resize" in kwargs and kwargs["resize"] != "": 39 | try: 40 | img_size = list(map(int, kwargs["resize"].split(","))) 41 | except Exception: 42 | raise ValueError( 43 | f"config.resize \"{kwargs['resize']}\" is in " 44 | f'wrong format. Should be "(h, w)".' 45 | ) 46 | transform.append(transforms.Resize(img_size)) 47 | 48 | transform = transforms.Compose(transform) 49 | 50 | super().__init__(root=root, split=partition, transform=transform, download=True) 51 | 52 | 53 | def get_augmentations(): 54 | augmentations = [ 55 | transforms.RandomCrop(96, padding=12), 56 | transforms.RandomHorizontalFlip(), 57 | transforms.ToTensor(), 58 | transforms.Normalize((0.4467, 0.4398, 0.4066), (0.2603, 0.2566, 0.2713)), 59 | Cutout(1, 32), 60 | ] 61 | return augmentations 62 | -------------------------------------------------------------------------------- /datasets/utils.py: -------------------------------------------------------------------------------- 1 | import torch 2 | import os 3 | import sklearn.model_selection 4 | 5 | 6 | def pad(channel, maxlen): 7 | channel = torch.tensor(channel) 8 | out = torch.full((maxlen,), channel[-1]) 9 | out[: channel.size(0)] = channel 10 | return out 11 | 12 | 13 | def subsample(X, y, subsample_rate): 14 | if subsample_rate != 1: 15 | X = X[:, :, ::subsample_rate] 16 | return X, y 17 | 18 | 19 | def save_data(dir, **tensors): 20 | for tensor_name, tensor_value in tensors.items(): 21 | torch.save(tensor_value, str(dir / tensor_name) + ".pt") 22 | 23 | 24 | def load_data(dir): 25 | tensors = {} 26 | for filename in os.listdir(dir): 27 | if filename.endswith(".pt"): 28 | tensor_name = filename.split(".")[0] 29 | tensor_value = torch.load(str(dir / filename)) 30 | tensors[tensor_name] = tensor_value 31 | return tensors 32 | 33 | 34 | def normalise_data(X, y): 35 | train_X, _, _ = split_data(X, y) 36 | out = [] 37 | for Xi, train_Xi in zip(X.unbind(dim=-1), train_X.unbind(dim=-1)): 38 | train_Xi_nonan = train_Xi.masked_select(~torch.isnan(train_Xi)) 39 | mean = train_Xi_nonan.mean() # compute statistics using only training data. 40 | std = train_Xi_nonan.std() 41 | out.append((Xi - mean) / (std + 1e-5)) 42 | out = torch.stack(out, dim=-1) 43 | return out 44 | 45 | 46 | def split_data(tensor, stratify): 47 | # 0.7/0.15/0.15 train/val/test split 48 | ( 49 | train_tensor, 50 | testval_tensor, 51 | train_stratify, 52 | testval_stratify, 53 | ) = sklearn.model_selection.train_test_split( 54 | tensor, 55 | stratify, 56 | train_size=0.7, 57 | random_state=0, 58 | shuffle=True, 59 | stratify=stratify, 60 | ) 61 | 62 | val_tensor, test_tensor = sklearn.model_selection.train_test_split( 63 | testval_tensor, 64 | train_size=0.5, 65 | random_state=1, 66 | shuffle=True, 67 | stratify=testval_stratify, 68 | ) 69 | return train_tensor, val_tensor, test_tensor 70 | -------------------------------------------------------------------------------- /demo/kernel_sizes_flexnet.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/demo/kernel_sizes_flexnet.pdf -------------------------------------------------------------------------------- /demo/kernel_sizes_flexnet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/demo/kernel_sizes_flexnet.png -------------------------------------------------------------------------------- /demo/truck5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/demo/truck5.png -------------------------------------------------------------------------------- /experiments/checkpoints/cifar10-flexnet-7-seed2.pt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/experiments/checkpoints/cifar10-flexnet-7-seed2.pt -------------------------------------------------------------------------------- /experiments/checkpoints/cross-res-cifar10-flexnet-7-gabor-seed2-final.pt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/experiments/checkpoints/cross-res-cifar10-flexnet-7-gabor-seed2-final.pt -------------------------------------------------------------------------------- /experiments/checkpoints/cross-res-cifar10-flexnet-7-gabor-seed2-source.pt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/experiments/checkpoints/cross-res-cifar10-flexnet-7-gabor-seed2-source.pt -------------------------------------------------------------------------------- /experiments/checkpoints/cross-res-cifar10-flexnet-7-gnm-seed1-final.pt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/experiments/checkpoints/cross-res-cifar10-flexnet-7-gnm-seed1-final.pt -------------------------------------------------------------------------------- /experiments/checkpoints/cross-res-cifar10-flexnet-7-gnm-seed1-source.pt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/experiments/checkpoints/cross-res-cifar10-flexnet-7-gnm-seed1-source.pt -------------------------------------------------------------------------------- /experiments/checkpoints/cross-res-imagenetk-flexnet-5-gabor-seed1-final.pt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/experiments/checkpoints/cross-res-imagenetk-flexnet-5-gabor-seed1-final.pt -------------------------------------------------------------------------------- /experiments/checkpoints/cross-res-imagenetk-flexnet-5-gabor-seed1-source.pt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/experiments/checkpoints/cross-res-imagenetk-flexnet-5-gabor-seed1-source.pt -------------------------------------------------------------------------------- /experiments/checkpoints/imagenet32-flexnet-5-seed1.pt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/experiments/checkpoints/imagenet32-flexnet-5-seed1.pt -------------------------------------------------------------------------------- /experiments/experimental-results-all.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/experiments/experimental-results-all.xlsx -------------------------------------------------------------------------------- /flexconv.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/flexconv.png -------------------------------------------------------------------------------- /manual_installation.txt: -------------------------------------------------------------------------------- 1 | conda create -n ckconv python=3.7 2 | conda activate ckconv 3 | conda install pytorch torchvision torchaudio cudatoolkit=10.1 -c pytorch 4 | conda install -c conda-forge matplotlib 5 | conda install -c conda-forge notebook 6 | conda install -c conda-forge jupyterlab 7 | conda install -c conda-forge wandb 8 | pip install ml-collections 9 | pip install sktime 10 | conda install -c anaconda scikit-learn -------------------------------------------------------------------------------- /models/__init__.py: -------------------------------------------------------------------------------- 1 | from .cktcn import CopyMemory_TCN, SeqData_TCN 2 | from .ckresnet import Img_ResNet, SeqData_ResNet 3 | from .cifar_resnet_akamaster import ( 4 | Img_CIFARResNet20, 5 | Img_CIFARResNet32, 6 | Img_CIFARResNet44, 7 | Img_CIFARResNet56, 8 | Img_CIFARResNet110, 9 | Img_CIFARResNet1202, 10 | ) 11 | from .resnet import ( 12 | Img_OriginalResnet10, 13 | Img_OriginalResnet18, 14 | Img_OriginalResnet34, 15 | Img_OriginalResnet50, 16 | Img_OriginalResnet101, 17 | Img_OriginalResnet152, 18 | ) 19 | -------------------------------------------------------------------------------- /models/residual_block.py: -------------------------------------------------------------------------------- 1 | # torch 2 | import torch 3 | 4 | # typing 5 | from functools import partial 6 | from typing import Tuple, Union 7 | from ckconv.nn import FlexConv, CKConv 8 | from torch.nn import Conv1d, Conv2d 9 | 10 | 11 | class ResidualBlockBase(torch.nn.Module): 12 | def __init__( 13 | self, 14 | in_channels: int, 15 | out_channels: int, 16 | ConvType: Union[CKConv, FlexConv, Conv1d, Conv2d], 17 | NonlinearType: torch.nn.Module, 18 | NormType: torch.nn.Module, 19 | LinearType: torch.nn.Module, 20 | dropout: float, 21 | ): 22 | """ 23 | Instantiates the core elements of a residual block but does not implement the forward function. 24 | These elements are: 25 | (1) Two convolutional layers 26 | (2) Two normalization layers 27 | (3) A residual connection 28 | (4) A dropout layer 29 | """ 30 | super().__init__() 31 | 32 | # Conv Layers 33 | self.cconv1 = ConvType(in_channels=in_channels, out_channels=out_channels) 34 | self.cconv2 = ConvType(in_channels=out_channels, out_channels=out_channels) 35 | 36 | # Nonlinear layer 37 | self.nonlinear = NonlinearType() 38 | 39 | # Norm layers 40 | self.norm1 = NormType(out_channels) 41 | self.norm2 = NormType(out_channels) 42 | 43 | # Dropout 44 | self.dp = torch.nn.Dropout(dropout) 45 | 46 | # Shortcut 47 | shortcut = [] 48 | if in_channels != out_channels: 49 | shortcut.append(LinearType(in_channels, out_channels)) 50 | self.shortcut = torch.nn.Sequential(*shortcut) 51 | 52 | def forward(self, x): 53 | raise NotImplementedError() 54 | -------------------------------------------------------------------------------- /net_structure.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/net_structure.png -------------------------------------------------------------------------------- /path_handler.py: -------------------------------------------------------------------------------- 1 | import os 2 | import pathlib 3 | from hydra import utils 4 | 5 | 6 | def model_path(cfg, folder="saved"): 7 | 8 | root = pathlib.Path(os.path.join(utils.get_original_cwd(), folder)) 9 | filename = f"{cfg.dataset}" 10 | 11 | # Dataset-specific keys 12 | if cfg.dataset in ["AddProblem", "CopyMemory"]: 13 | filename += f"_seqlen_{cfg.dataset_params.seq_length}" 14 | if cfg.dataset in ["CopyMemory"]: 15 | filename += f"_memsize_{cfg.dataset_params.memory_size}" 16 | 17 | elif cfg.dataset in ["MNIST"]: 18 | filename += "_perm_{}".format( 19 | cfg.permuted, 20 | ) 21 | 22 | elif cfg.dataset in ["CharTrajectories", "SpeechCommands"]: 23 | if cfg.dataset in ["SpeechCommands"]: 24 | filename += "_mfcc_{}".format( 25 | cfg.mfcc, 26 | ) 27 | if (cfg.dataset in ["SpeechCommands"] and not cfg.mfcc) or cfg.dataset in [ 28 | "CharTrajectories" 29 | ]: 30 | filename += "_srtr_{}_drop_{}".format( 31 | cfg.sr_train, 32 | cfg.drop_rate, 33 | ) 34 | filename += "_augm_{}".format(cfg.augment) 35 | 36 | # Model-specific keys 37 | filename += "_model_{}_blcks_{}_nohid_{}".format( 38 | cfg.model, 39 | cfg.no_blocks, 40 | cfg.no_hidden, 41 | ) 42 | filename += "_kernnohid_{}_kernact_{}".format( 43 | cfg.kernelnet_no_hidden, 44 | cfg.kernelnet_activation_function, 45 | ) 46 | if cfg.kernelnet_activation_function == "Sine": 47 | filename += "_kernomega0_{}".format(round(cfg.kernelnet_omega_0, 2)) 48 | else: 49 | filename += "_kernnorm_{}".format(cfg.kernelnet_norm_type) 50 | 51 | # elif config.model in ["BFCNN", "TCN"]: 52 | # filename += "_kernsize_{}".format(config.cnn_kernel_size) 53 | 54 | # Optimization arguments 55 | filename += "_bs_{}_optim_{}_lr_{}_ep_{}_dpin_{}_dp_{}_wd_{}_seed_{}_sched_{}_schdec_{}".format( 56 | cfg.batch_size, 57 | cfg.optimizer, 58 | cfg.lr, 59 | cfg.epochs, 60 | cfg.dropout_in, 61 | cfg.dropout, 62 | cfg.weight_decay, 63 | cfg.seed, 64 | cfg.scheduler, 65 | cfg.sched_decay_factor, 66 | ) 67 | if cfg.scheduler == "plateau": 68 | filename += "_pat_{}".format(cfg.sched_patience) 69 | else: 70 | filename += "_schsteps_{}".format(cfg.sched_decay_steps) 71 | 72 | # Comment 73 | if cfg.comment != "": 74 | filename += "_comment_{}".format(cfg.comment) 75 | 76 | # Add correct termination 77 | filename += ".pt" 78 | 79 | # Check if directory exists and warn the user if the it exists and train is used. 80 | os.makedirs(root, exist_ok=True) 81 | path = root / filename 82 | cfg.path = str(path) 83 | 84 | if cfg.train and path.exists(): 85 | print("WARNING! The model exists in directory and will be overwritten") 86 | -------------------------------------------------------------------------------- /presentation/poster.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/presentation/poster.pdf -------------------------------------------------------------------------------- /probspec_routines/__init__.py: -------------------------------------------------------------------------------- 1 | from .add_problem import _train as add_problem_train 2 | from .add_problem import _test as add_problem_test 3 | 4 | from .copy_memory import _train as copy_problem_train 5 | from .copy_memory import _test as copy_problem_test 6 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | absl-py>=0.11.0 2 | anyio>=2.1.0 3 | argh>=0.26.2 4 | argon2-cffi>=20.1.0 5 | async-generator>=1.10 6 | attrs>=20.3.0 7 | Babel>=2.9.0 8 | backcall>=0.2.0 9 | backports.functools-lru-cache>=1.6.1 10 | bleach>=3.3.0 11 | brotlipy>=0.7.0 12 | certifi>=2020.6.20 13 | cffi>=1.14.4 14 | chardet>=4.0.0 15 | click>=7.1.2 16 | configparser>=5.0.1 17 | contextlib2>=0.6.0.post1 18 | cryptography>=2.9.2 19 | cycler>=0.10.0 20 | decorator>=4.4.2 21 | defusedxml>=0.6.0 22 | docker-pycreds>=0.4.0 23 | entrypoints>=0.3 24 | gitdb>=4.0.5 25 | GitPython>=3.1.12 26 | gql>=0.1.0 27 | graphql-core>=3.1.3 28 | hydra-core>=1.1.0 29 | idna>=2.10 30 | importlib-metadata>=3.4.0 31 | ipykernel>=5.4.3 32 | ipython>=7.20.0 33 | ipython-genutils>=0.2.0 34 | jedi>=0.18.0 35 | Jinja2>=2.11.3 36 | joblib>=0.17.0 37 | json5>=0.9.5 38 | jsonschema>=3.2.0 39 | jupyter-client>=6.1.11 40 | jupyter-core>=4.7.1 41 | jupyter-server>=1.3.0 42 | jupyterlab>=3.0.7 43 | jupyterlab-pygments>=0.1.2 44 | jupyterlab-server>=2.2.0 45 | kiwisolver>=1.3.1 46 | llvmlite>=0.35.0 47 | MarkupSafe>=1.1.1 48 | matplotlib>=3.2.2 49 | mistune>=0.8.4 50 | mkl-fft>=1.2.0 51 | mkl-random>=1.1.1 52 | mkl-service>=2.3.0 53 | ml-collections>=0.1.0 54 | nbclassic>=0.2.6 55 | nbclient>=0.5.1 56 | nbconvert>=6.0.7 57 | nbformat>=5.1.2 58 | nest-asyncio>=1.4.3 59 | notebook>=6.2.0 60 | numba>=0.52.0 61 | numpy>=1.19.2 62 | nvidia-ml-py3>=7.352.0 63 | olefile>=0.46 64 | packaging>=20.9 65 | pandas>=1.2.2 66 | pandocfilters>=1.4.2 67 | parso>=0.8.1 68 | pathtools>=0.1.2 69 | patsy>=0.5.1 70 | pexpect>=4.8.0 71 | pickleshare>=0.7.5 72 | Pillow>=8.1.0 73 | pip>=20.3.3 74 | prometheus-client>=0.9.0 75 | promise>=2.3 76 | prompt-toolkit>=3.0.14 77 | protobuf>=3.13.0 78 | psutil>=5.7.3 79 | ptyprocess>=0.7.0 80 | pycparser>=2.20 81 | Pygments>=2.7.4 82 | pyOpenSSL>=19.1.0 83 | pyparsing>=2.4.7 84 | pyrsistent>=0.17.3 85 | PySocks>=1.7.1 86 | python-dateutil>=2.8.1 87 | pytz>=2021.1 88 | PyYAML>=5.3.1 89 | pyzmq>=20.0.0 90 | requests>=2.25.1 91 | scikit-learn>=0.23.2 92 | scipy>=1.6.0 93 | Send2Trash>=1.5.0 94 | sentry-sdk>=0.19.5 95 | setuptools>=52.0.0.post20210125 96 | shortuuid>=1.0.1 97 | six>=1.15.0 98 | sktime>=0.5.3 99 | smmap>=3.0.5 100 | sniffio>=1.2.0 101 | statsmodels>=0.12.2 102 | subprocess32>=3.5.4 103 | terminado>=0.9.2 104 | testpath>=0.4.4 105 | threadpoolctl>=2.1.0 106 | torch>=1.7.1 107 | torchaudio>=0.7.0a0+a853dff 108 | torchinfo>=0.0.8 109 | torchvision>=0.8.2 110 | tornado>=6.1 111 | traitlets>=5.0.5 112 | typing-extensions>=3.7.4.3 113 | urllib3>=1.26.3 114 | wandb>=0.10.18 115 | watchdog>=0.10.4 116 | wcwidth>=0.2.5 117 | webencodings>=0.5.1 118 | wheel>=0.36.2 119 | zipp>=3.4.0 120 | torchmetrics>=0.3.1 -------------------------------------------------------------------------------- /run_profiler.py: -------------------------------------------------------------------------------- 1 | # general 2 | import os 3 | import tqdm 4 | from io import StringIO 5 | 6 | # project 7 | from run_experiment import setup, model_and_datasets 8 | 9 | # torch 10 | import torch 11 | from torch.profiler import profile, ProfilerActivity 12 | 13 | # Loggers and config 14 | import hydra 15 | from omegaconf import OmegaConf 16 | 17 | 18 | @hydra.main(config_path="cfg", config_name="config.yaml") 19 | def main( 20 | cfg: OmegaConf, 21 | ): 22 | setup(cfg) 23 | model, dataloaders = model_and_datasets(cfg) 24 | 25 | print(cfg) 26 | 27 | n_batches = cfg.profile.n_batches 28 | 29 | if cfg.profile.data_mode == "dataset": 30 | all_data = dataloaders["train"] 31 | elif cfg.profile.data_mode == "fake": 32 | all_data = [ 33 | ( 34 | torch.rand( 35 | ( 36 | cfg.train.batch_size, 37 | 3, 38 | cfg.profile.data_shape, 39 | cfg.profile.data_shape, 40 | ) 41 | ), 42 | None, 43 | ) 44 | for _ in range(n_batches) 45 | ] 46 | 47 | train = True 48 | with torch.set_grad_enabled(train): 49 | with profile( 50 | activities=[ProfilerActivity.CPU, ProfilerActivity.CUDA], 51 | record_shapes=True, 52 | with_stack=True, 53 | on_trace_ready=torch.profiler.tensorboard_trace_handler( 54 | cfg.profile.directory 55 | ), 56 | schedule=torch.profiler.schedule(wait=2, warmup=2, active=n_batches - 5), 57 | ) as prof: 58 | batch = 0 59 | for data in tqdm.tqdm(all_data, total=n_batches): 60 | if cfg.dataset == "Imagenet": 61 | data = (data[0]["data"], data[0]["label"].squeeze(1)) 62 | inputs, _ = data 63 | inputs = inputs.to(cfg.device) 64 | 65 | inputs = torch.dropout(inputs, cfg.net.dropout_in, train) 66 | _ = model(inputs) 67 | 68 | prof.step() 69 | 70 | batch += 1 71 | if batch >= n_batches: 72 | break 73 | 74 | table = prof.key_averages().table(sort_by="cpu_time_total", row_limit=100) 75 | print(table) 76 | 77 | # Parse table to save as CSV 78 | f = StringIO(table) 79 | data = [] 80 | 81 | # Use the dashes on the first line to know the section indices 82 | sections = f.readline().split() 83 | 84 | def parse_line(line): 85 | line_data = [] 86 | i = 0 87 | for section in sections: 88 | start = i 89 | end = i + len(section) 90 | line_data.append(line[start:end].strip().replace(",", ";")) 91 | 92 | # Skip two spaces after each section 93 | i += len(section) + 2 94 | return line_data 95 | 96 | # Parse rest of header 97 | data.append(parse_line(f.readline())) 98 | _ = f.readline() 99 | 100 | # Parse body 101 | for line in f: 102 | # Stop when we reach the end of the table 103 | if "-----" in line.strip(): 104 | break 105 | data.append(parse_line(line)) 106 | 107 | # Write to timings file 108 | with open(os.path.join(cfg.profile.directory, "timings.csv"), "w") as fw: 109 | for line in data: 110 | fw.write(",".join(line) + "\n") 111 | 112 | 113 | if __name__ == "__main__": 114 | main() 115 | -------------------------------------------------------------------------------- /testcases/c10-fn5-reg.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/testcases/c10-fn5-reg.npy -------------------------------------------------------------------------------- /testcases/c10-fn5.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/testcases/c10-fn5.npy -------------------------------------------------------------------------------- /testcases/mnist-fn7-randomsettings.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/testcases/mnist-fn7-randomsettings.npy -------------------------------------------------------------------------------- /testcases/scifar-tcn-flexconv.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/testcases/scifar-tcn-flexconv.npy -------------------------------------------------------------------------------- /testcases/smnist-tcn-ckconv.npy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rjbruin/flexconv/0f355d15d149a1d841383ec7aea0edcb451a4606/testcases/smnist-tcn-ckconv.npy -------------------------------------------------------------------------------- /timer.py: -------------------------------------------------------------------------------- 1 | """ 2 | Timing utilities, by Robert-Jan Bruintjes. 3 | """ 4 | import torch 5 | import time 6 | import numpy as np 7 | import datetime 8 | 9 | 10 | def start_timing(cuda=True): 11 | if cuda: 12 | start_event = torch.cuda.Event(enable_timing=True) 13 | end_event = torch.cuda.Event(enable_timing=True) 14 | 15 | start_event.record() 16 | 17 | return (start_event, end_event) 18 | else: 19 | start_time = time.time() 20 | return start_time 21 | 22 | 23 | def end_timing(timing_data, cuda=True): 24 | """Returns time in seconds.""" 25 | if cuda: 26 | start_event, end_event = timing_data 27 | end_event.record() 28 | torch.cuda.synchronize() 29 | return start_event.elapsed_time(end_event) / 1000.0 30 | else: 31 | start_time = timing_data 32 | end_time = time.time() 33 | elapsed_time = end_time - start_time 34 | return elapsed_time 35 | 36 | 37 | class PyTorchTimer(object): 38 | def __init__(self, cuda=True, name=None, keep_n=10): 39 | self.cuda = cuda 40 | self.name = name 41 | self.times = [] 42 | self.anomaly = False 43 | self.keep = np.zeros((keep_n), dtype="float32") 44 | self.keep_n = keep_n 45 | self.keep_idx = 0 46 | 47 | def write(self, time): 48 | self.keep[self.keep_idx] = time 49 | self.keep_idx = (self.keep_idx + 1) % self.keep_n 50 | 51 | def __enter__(self): 52 | self.timing = start_timing(cuda=self.cuda) 53 | 54 | def __exit__(self, exc_type, exc_value, exc_traceback): 55 | if not self.anomaly: 56 | time = end_timing(self.timing, cuda=self.cuda) 57 | self.write(time) 58 | else: 59 | self.anomaly = False 60 | 61 | def start(self): 62 | self.__enter__() 63 | 64 | def stop(self): 65 | self.__exit__(None, None, None) 66 | 67 | def manual_entry(self, start_time, end_time): 68 | if not self.anomaly: 69 | elapsed_time = end_time - start_time 70 | self.write(elapsed_time) 71 | else: 72 | self.anomaly = False 73 | 74 | def mark_anomaly(self): 75 | self.anomaly = True 76 | 77 | def last(self): 78 | return self.keep[(self.keep_idx - 1) % self.keep_n] 79 | 80 | def mean(self): 81 | return np.mean(self.keep) 82 | 83 | def __str__(self): 84 | name_display = f"{self.name}" if self.name is not None else "Time" 85 | return f"{name_display} (s): {self.mean():.4f}" 86 | -------------------------------------------------------------------------------- /utils.py: -------------------------------------------------------------------------------- 1 | import json 2 | from omegaconf import OmegaConf 3 | 4 | 5 | def load_config_from_json(filepath): 6 | # Import config 7 | with open(filepath, "rb") as f: 8 | data = json.load(f) 9 | 10 | dot_list = [] 11 | for key in data.keys(): 12 | dot_list.append(f"{key}={data[key]['value']}") 13 | 14 | return OmegaConf.from_dotlist(dot_list) 15 | 16 | def omegaconf_to_dict(omegaconf, name): 17 | return {name + '_' + k: v for (k, v) in omegaconf.to_dict()} --------------------------------------------------------------------------------