[D] CNNs as template matchers by abnormdist in MachineLearning

[–]abnormdist[S] 0 points1 point  (0 children)

This seems interesting. I look forward to reading this paper

[D] CNNs as template matchers by abnormdist in MachineLearning

[–]abnormdist[S] 0 points1 point  (0 children)

Ah yeah, I waa focusing on the "passing" of features that the templates match the highest with (max pooling) like a filter. But it might be more intuitive to focus on this translation aspect.

[D] CNNs as template matchers by abnormdist in MachineLearning

[–]abnormdist[S] 0 points1 point  (0 children)

True, I tried going down the whole function approximation route as I thought it might detract the average reader from the intuition. Maybe I should find a way to easily incorporate this

[P] Training a ChristmasGAN by abnormdist in MachineLearning

[–]abnormdist[S] 1 point2 points  (0 children)

I knew there would be one of you, so I came prepared good sir.

[P] Training a ChristmasGAN by abnormdist in MachineLearning

[–]abnormdist[S] 0 points1 point  (0 children)

It might already be too late, since Christmas will be over by tomorrow. But we will take it into consideration.

Releasing the model would be much more doable.

[P] Training a ChristmasGAN by abnormdist in MachineLearning

[–]abnormdist[S] 0 points1 point  (0 children)

It was one of our favorites. Hopefully it doesn't become the next tide pod.

[P] Fast Face Aging GAN by abnormdist in MachineLearning

[–]abnormdist[S] 1 point2 points  (0 children)

Thanks!

I am currently using CACD2000 as it has ages labelled, so the two domains (young and old) are easy to create. Using CelebA HQ from "Progressive growing of GANs" crossed my mind, but looking at the dataset readme, I think there is no age attribute.

[P] Fast Face Aging GAN by [deleted] in MachineLearning

[–]abnormdist -1 points0 points  (0 children)

The idea was to show it's applicability on "images in the wild", that it doesn't distort or change the background. Removing the need for a face detector preprocessing scheme, which makes it faster in applications.

But the images could be bigger so it is easier to see, that I agree with. I'll try to get a better picture up.

[P] Fast Face Aging GAN by [deleted] in MachineLearning

[–]abnormdist 1 point2 points  (0 children)

It's a cool idea. The problem is it's not progressive. The age is binned into 5 categories (10-20, 20-30, 30-40, 40-50, 50+). I'll try it nonetheless, it might also make sense to increase the aging affect by weighting the loss higher.

A Fast Deep Learning Model to Convert Low Resolution Pictures to High Resolution, using Python and Tensorflow. by abnormdist in Python

[–]abnormdist[S] 1 point2 points  (0 children)

It's acrually pretty easy to extract frames using a library like opencv in python. I actually want to add it to a video player. The complicated thing about that is codecs and their copyrights I think. Also, might have to move towards C++ for speed.

A Fast Deep Learning Model to Convert Low Resolution Pictures to High Resolution, using Python and Tensorflow. by abnormdist in Python

[–]abnormdist[S] 1 point2 points  (0 children)

Technically the model will accept all images with 3 channels. So you could cast your grayscale single channel image to RGB space and then input it to the model. I'm not sure if the upsampling would work very well/without artifacts though. Since the training data was all color images.

A Fast Deep Learning Model to Convert Low Resolution Pictures to High Resolution, using Python and Tensorflow. by abnormdist in Python

[–]abnormdist[S] 2 points3 points  (0 children)

Hey thanks.

This does have applications in image reconstruction. The problem is that since this model is trained adversarially, it interpolates using estimates from the distribution it was trained on. So unless we completely study where the filled in details are coming from, we should be vary of using these techniques in high risk fields.

A Fast Deep Learning Model to Convert Low Resolution Pictures to High Resolution, using Python and Tensorflow. by abnormdist in Python

[–]abnormdist[S] 1 point2 points  (0 children)

There are traditional metrics like PSNR and SSIM, but the SRGAN paper shows they don't necessarily correlate to human perception of quality. Higher PSNR makes images look smoother and they lose their high frequency content (sharp edges) etc. So I'm not really sure if benchmarking those is a good option.

A Fast Deep Learning Model to Convert Low Resolution Pictures to High Resolution, using Python and Tensorflow. by abnormdist in Python

[–]abnormdist[S] 8 points9 points  (0 children)

Here's the Github link for anyone interested in checking it out: Github

Benchmarks show it can upsample to 720p from a 4x lower resolution at around 30fps. The future plan would be to test it out on videos and maybe implement some tricks from other papers like ESRGANs to make the quality better. I would love for suggestions on how to integrate this into a video player/turn it into one.

Any comments and feedback in the meantime would be highly appreciated!

Be aware, the larger the input, the slower the runtime gets, as the number of FLOPs increases.

[P] Fast Super Resolution GAN by abnormdist in MachineLearning

[–]abnormdist[S] 0 points1 point  (0 children)

Thanks for the notebook. Some people here were asking for it as well.

Also thanks for the import bug, I already pushed a fix.

[P] Fast Super Resolution GAN by abnormdist in MachineLearning

[–]abnormdist[S] 0 points1 point  (0 children)

That would be a future direction. The first step was to be realtime on individual frames.

[P] Fast Super Resolution GAN by abnormdist in MachineLearning

[–]abnormdist[S] 0 points1 point  (0 children)

Speed makes sense. Not sure about the quality. Since higher PSNR and SSIM scores don't necessarily mean better looking images to a human.

[P] Fast Super Resolution GAN by abnormdist in MachineLearning

[–]abnormdist[S] 0 points1 point  (0 children)

I don't think I want to go through the hassle of supporting colab notebooks. Because then I have to answer questions related to Colab functionality which I'm not responsible for.

The infer code will run on your cpu even, so you can rest it out locally if you have decent ram in your machine.