James Betker
31cf1ac98d
Retrofit full_image_dataset to work with new arch.
2020-10-27 10:26:19 -06:00
James Betker
ff58c6484a
Fixes to unified chunk datasets to support stereoscopic training
2020-10-26 11:12:22 -06:00
James Betker
9c3d059ef0
Updates to be able to train flownet2 in ExtensibleTrainer
...
Only supports basic losses for now, though.
2020-10-24 11:56:39 -06:00
James Betker
8e5b6682bf
Add PairedFrameDataset
2020-10-23 20:58:07 -06:00
James Betker
f9dc472f63
Misc nonfunctional mods to datasets
2020-10-22 10:16:17 -06:00
James Betker
aba83e7497
Don't apply jpeg corruption & noise corruption together
...
This causes some severe noise.
2020-10-20 12:56:35 -06:00
James Betker
111450f4e7
Use areal interpolate for multiscale_dataset
2020-10-19 15:30:25 -06:00
James Betker
9b9a6e5925
Add get_paths() to base_unsupervised_image_dataset
2020-10-19 11:30:06 -06:00
James Betker
ffad0e0422
Allow image corruption in multiscale dataset
2020-10-19 10:10:27 -06:00
James Betker
9ead2c0a08
Multiscale training in!
2020-10-17 22:54:12 -06:00
James Betker
b008a27d39
Spinenet should allow bypassing the initial conv
...
This makes feeding in references for recurrence easier.
2020-10-17 20:16:47 -06:00
James Betker
c7f3fc4dd9
Enable chunk_with_reference to work without centers
...
Moving away from this so it doesn't matter too much. Also fixes an issue
with the "ignore" flag.
2020-10-17 20:09:08 -06:00
James Betker
b45e132a9d
Allow first n tiles to be ignored
...
Helps zoom in with chunked dataset
2020-10-17 09:45:03 -06:00
James Betker
1ba01d69b5
Move datasets to INTER_AREA interpolation for downsizing
...
Looks **FAR** better visually
2020-10-15 17:18:23 -06:00
James Betker
d56745b2ec
JPEG-broad adjustment
2020-10-15 10:14:51 -06:00
James Betker
1dc0b05428
Add multiscale dataset
2020-10-15 10:12:50 -06:00
James Betker
0f4e03183f
New image corruptor gradations
2020-10-15 10:12:25 -06:00
James Betker
24792bdb4f
Codebase cleanup
...
Removed a lot of legacy stuff I have no intent on using again.
Plan is to shape this repo into something more extensible (get it? hah!)
2020-10-13 20:56:39 -06:00
James Betker
e7cf337dba
Fix bug with chunk_with_reference
2020-10-12 10:23:03 -06:00
James Betker
92cb83958a
Return zeros rather than None when image cant be read
2020-10-11 08:33:18 -06:00
James Betker
b3d0baaf17
Improve multiframe dataset memory usage
2020-10-09 08:40:00 -06:00
James Betker
b36ba0460c
Fix multi-frame dataset OBO error
2020-10-08 12:21:04 -06:00
James Betker
efbf6b737b
Update validate_data to work with SingleImageDataset
2020-10-02 08:58:34 -06:00
James Betker
57814f18cf
More features for multi-frame-dataset
2020-09-28 14:26:15 -06:00
James Betker
7dff802144
Add MultiFrameDataset
...
Retrieves video sequence patches rather than single images.
2020-09-27 11:13:06 -06:00
James Betker
d8c3fc9327
Fix random noise corruptor
...
It was functioning as a color shift
2020-09-27 11:12:24 -06:00
James Betker
c85da79697
Move many dataset functions into a base class
2020-09-27 11:11:58 -06:00
James Betker
5a27187c59
More mods to accomodate new dataset
2020-09-25 22:45:57 -06:00
James Betker
254cb1e915
More dataset integration work
2020-09-25 22:19:38 -06:00
James Betker
ce4613ecb9
Finish up single_image_dataset work
...
Sweet!
2020-09-25 16:37:54 -06:00
James Betker
1cf73c2cce
Fix dataset for a val set that includes lq
2020-09-24 18:01:07 -06:00
James Betker
dab8ab8a8f
Offer option to configure the size of the normal distribution that the target size is drawn from
2020-09-20 11:59:31 -06:00
James Betker
e2a146abc7
Add in experiments hook
2020-09-19 10:05:25 -06:00
James Betker
4f75cf0f02
Revert "Full image dataset operates on lists"
...
Going with an entirely new dataset instead..
This reverts commit 36ec32bf11
.
2020-09-18 09:50:43 -06:00
James Betker
36ec32bf11
Full image dataset operates on lists
2020-09-18 09:50:26 -06:00
James Betker
3cb2a9a9d3
New dataset, initial work
2020-09-18 09:49:13 -06:00
James Betker
f5cd23e2d5
Further patch size adjustments
2020-09-16 16:50:35 -06:00
James Betker
0b047e5f80
Increase scale of the patch selector random distribution
...
This will cause larger slices of an image to appear more frequently,
increasing the difficulty of the generator.
2020-09-16 08:27:42 -06:00
James Betker
94deab2792
Fix error serving gt_fullsize_ref in full_image_dataset
2020-09-14 15:05:44 -06:00
James Betker
5189b11dac
Add combined dataset for training across multiple datasets
2020-09-11 08:44:06 -06:00
James Betker
3027e6e27d
Enable amp to be disabled
2020-09-09 10:45:59 -06:00
James Betker
a5c2388368
Use lower LQ image size when it is being fed in
2020-09-06 17:26:32 -06:00
James Betker
17aa205e96
New dataset that reads from lmdb
2020-09-04 17:32:57 -06:00
James Betker
8580490a85
Reduce usage of resize operations when not needed in dataloaders.
2020-09-04 15:31:24 -06:00
James Betker
6226b52130
Pin memory in dataloaders by default
2020-09-04 15:30:46 -06:00
James Betker
03eb29a4d9
Fix LQGT dataset
2020-08-25 11:57:25 -06:00
James Betker
a65b07607c
Reference network
2020-08-25 11:56:59 -06:00
James Betker
f224907603
Fix LQGT_dataset, add full_image_dataset
2020-08-24 17:12:43 -06:00
James Betker
5ec04aedc8
Let noise be configurable
...
LQ noise is not currently configurable for some reason..
2020-08-24 15:00:14 -06:00
James Betker
dffc15184d
More ExtensibleTrainer work
...
It runs now, just need to debug it to reach performance parity with SRGAN. Sweet.
2020-08-23 17:22:45 -06:00
James Betker
eb11a08d1c
Enable disjoint feature networks
...
This is done by pre-training a feature net that predicts the features
of HR images from LR images. Then use the original feature network
and this new one in tandem to work only on LR/Gen images.
2020-07-31 16:29:47 -06:00
James Betker
7629cb0e61
Add FDPL Loss
...
New loss type that can replace PSNR loss. Works against the frequency domain
and focuses on frequency features loss during hr->lr conversion.
2020-07-30 20:47:57 -06:00
James Betker
0892d5fe99
LQGT_dataset gan debug
2020-07-26 22:48:35 -06:00
James Betker
9a8f227501
Allow separate dataset to pushed in for GAN-only training
2020-07-26 21:44:45 -06:00
James Betker
c50cce2a62
Add an abstract, configurabler weight scheduling class and apply it to the feature weight
2020-07-23 17:03:54 -06:00
James Betker
8a0a1569f3
Enable force_multiple in LQ_dataset
2020-07-22 20:51:16 -06:00
James Betker
ef9f1307eb
Sometimes don't use compression artifacts
2020-07-10 22:25:53 -06:00
James Betker
ed6a15e768
Add feature to dataset which allows it to force images to be a certain size.
2020-07-03 15:19:16 -06:00
James Betker
296135ec18
Add doResizeLoss to dataset
...
doResizeLoss has a 50% chance to resize the LQ image to 50% size,
then back to original size. This is useful to training a generator to
recover these lost pixel values while also being able to do
repairs on higher resolution images during training.
2020-06-08 11:27:06 -06:00
James Betker
318a604405
Allow weighting of input data
...
This essentially allows you to give some datasets more
importance than others for the purposes of reaching a more
refined network.
2020-06-04 10:05:21 -06:00
James Betker
90125f5bed
Allow blurring to be specified
2020-06-02 08:40:52 -06:00
James Betker
1eb9c5a059
Fix grayscale
2020-05-29 22:04:50 -06:00
James Betker
74b313aaa9
Add grayscale downsampling option
2020-05-29 20:34:00 -06:00
James Betker
6962ccb306
Adjust motion blur
...
0 is invalid.
2020-05-27 13:09:46 -06:00
James Betker
e27a49454e
Enable vertical splitting on inference images to support very large resolutions.
2020-05-27 08:04:35 -06:00
James Betker
96ac26a8b7
Allow injection of random low-amplitude noise & motion blur into generator
2020-05-27 08:04:11 -06:00
James Betker
69cbfa2f0c
Adjust dataset mutations a bit
...
Adjusts the compression artfacts to be more aggressive, and blurring to be less aggressive.
2020-05-26 13:48:34 -06:00
James Betker
2931142458
Allow multiple gt image dirs
2020-05-25 19:21:09 -06:00
James Betker
4e44b8a1aa
Clean up video stuff
2020-05-25 19:20:49 -06:00
James Betker
8464cae168
HQ blurring doesnt actually work right - hq images arent the right size when they are blurred
...
Just revert it and blur the lq images..
2020-05-24 22:32:54 -06:00
James Betker
5fd8749cf2
More updates - need more blurring
2020-05-24 22:13:27 -06:00
James Betker
9627cc2c49
Update HR gaussian blur params
2020-05-24 18:00:31 -06:00
James Betker
2f8b0250b9
Blur HR image before downsizing, when available
2020-05-24 17:18:44 -06:00
James Betker
cc4571eb8d
Randomize blur effect
2020-05-24 12:35:41 -06:00
James Betker
27a548c019
Enable blurring via settings
2020-05-24 11:56:39 -06:00
James Betker
90073fc761
Update LQ_dataset to support inference on split image videos
2020-05-23 21:05:49 -06:00
James Betker
74bb0fad33
Allow dataset classes to add noise internally
2020-05-23 21:04:24 -06:00
James Betker
67139602f5
Test modifications
...
Allows bifurcating large images put into the test pipeline
This code is fixed and not dynamic. Needs some fixes.
2020-05-19 09:37:58 -06:00
James Betker
d72e154442
Allow more LQ than GT images in corrupt mode
2020-05-14 20:46:20 -06:00
James Betker
585b05e66b
Cap test workers at 10
2020-05-13 09:20:45 -06:00
James Betker
f994466289
Initialize test dataloader with a worker count proportional to the batch size.
2020-05-10 10:49:37 -06:00
James Betker
8969a3ce70
Add capability to start at arbitrary frames
2020-05-10 10:48:05 -06:00
James Betker
dbca0d328c
Fix multi-lq bug
2020-05-06 23:16:35 -06:00
James Betker
5c1832e124
Add support for multiple LQ paths
...
I want to be able to specify many different transformations onto
the target data; the model should handle them all. Do this by
allowing multiple LQ paths to be selected and the dataset class
selects one at random.
2020-05-06 17:24:17 -06:00
James Betker
44b89330c2
Support inference across batches, support inference on cpu, checkpoint
...
This is a checkpoint of a set of long tests with reduced-complexity networks. Some takeaways:
1) A full GAN using the resnet discriminator does appear to converge, but the quality is capped.
2) Likewise, a combination GAN/feature loss does not converge. The feature loss is optimized but
the model appears unable to fight the discriminator, so the G-loss steadily increases.
Going forwards, I want to try some bigger models. In particular, I want to change the generator
to increase complexity and capacity. I also want to add skip connections between the
disc and generator.
2020-05-04 08:48:25 -06:00
James Betker
61d3040cf5
Add doCrop into LQGT
2020-05-02 17:46:30 -06:00
James Betker
3781ea725c
Add Resnet Discriminator with BN
2020-04-29 20:51:57 -06:00
James Betker
46f550e42b
Change downsample_dataset to do no image modification
...
I'm preprocessing the images myself now. There's no need to have
the dataset do this processing as well.
2020-04-28 11:50:04 -06:00
James Betker
d95808f4ef
Implement downsample GAN
...
This bad boy is for a workflow where you train a model on disjoint image sets to
downsample a "good" set of images like a "bad" set of images looks. You then
use that downsampler to generate a training set of paired images for supersampling.
2020-04-24 00:00:46 -06:00
James Betker
ea54c7618a
Print error when image read fails
2020-04-23 23:59:32 -06:00
James Betker
e98d92fc77
Allow test to operate on batches
2020-04-23 23:59:09 -06:00
James Betker
79aff886b5
Modifications that allow developer to explicitly specify a different image set for PIX and feature losses
2020-04-22 10:11:14 -06:00
James Betker
12d92dc443
Add GTLQ dataset
2020-04-22 00:40:38 -06:00
James Betker
4d269fdac6
Support independent PIX dataroot
2020-04-22 00:40:13 -06:00
James Betker
f4b33b0531
Some random fixes/adjustments
2020-04-22 00:38:53 -06:00
James Betker
af5dfaa90d
Change GT_size to target_size
2020-04-22 00:37:41 -06:00
XintaoWang
a25ee9464d
test w/o GT
2019-09-01 22:20:10 +08:00
XintaoWang
037933ba66
mmsr
2019-08-23 21:42:47 +08:00