Jump to content


ANN - image generation?


8 replies to this topic

#1 rouncer

    Senior Member

  • Members
  • PipPipPipPip
  • 2718 posts

Posted 10 January 2013 - 05:18 PM

Say ive got a basic nueral network thats id'ing images.

what if i twinned up 2 nn's, one going forwards input to output, and another going backwards, output to input.

every time i train forwards (using back propagation) i train on the reverse nn. (with bp also)

going from picture to id, then going from id to picture.

would that mean i could now give it an id, and ill get a picture generated at the input?

or give it a picture, get to the id, then come back from the id?
you used to be able to fit a game on a disk, then you used to be able to fit a game on a cd, then you used to be able to fit a game on a dvd, now you can barely fit one on your harddrive.

#2 }:+()___ (Smile)

    Member

  • Members
  • PipPipPip
  • 169 posts

Posted 10 January 2013 - 05:57 PM

You get something like average image that corresponds to that id. It's one of the methods of lossy compression.

Similar method used as training method through unsupervised learning: they train neural network to have output the same as input and use its intermediate level (with lower number of neurons) as a result.
Sorry my broken english!

#3 rouncer

    Senior Member

  • Members
  • PipPipPipPip
  • 2718 posts

Posted 10 January 2013 - 06:42 PM

ah yes! so the intermediate level is the "label" i see... anyone else have any info?
you used to be able to fit a game on a disk, then you used to be able to fit a game on a cd, then you used to be able to fit a game on a dvd, now you can barely fit one on your harddrive.

#4 Reedbeta

    DevMaster Staff

  • Administrators
  • 5305 posts
  • LocationBellevue, WA

Posted 10 January 2013 - 07:28 PM

There was this story from awhile back where Google created some kind of unsupervised neural network thing, turned it loose on YouTube, and found that it trained itself to recognize cats (among other things). The picture in that article is generated from the neural network in a similar manner to what you were describing. As Smile said, it's kind of an "average cat face". :lol:
reedbeta.com - developer blog, OpenGL demos, and other projects

#5 rouncer

    Senior Member

  • Members
  • PipPipPipPip
  • 2718 posts

Posted 10 January 2013 - 08:25 PM

I was thinking... what if you had a pyramid of cell layers, (multi layer) would the levels before the end nodes be more specific constraints than the output layer?

Like, you dont go all the way to the end, you only go so far before you use the reverse nn to make a picture, and you get a more specific output?
(like say, i want a neat "2" not just any old messy general "2")

and another question - how could one possibly generate full motion video?
you used to be able to fit a game on a disk, then you used to be able to fit a game on a cd, then you used to be able to fit a game on a dvd, now you can barely fit one on your harddrive.

#6 TheNut

    Senior Member

  • Moderators
  • 1695 posts
  • LocationThornhill, ON

Posted 10 January 2013 - 09:54 PM

rouncer said:

what if you had a pyramid of cell layers, (multi layer) would the levels before the end nodes be more specific constraints than the output layer?
Generally an ANN converges on its output to closer you get to the end nodes, but imposing such organized neurons can affect ANN, perhaps even for the worse. Ken Stanley's work on evolutionary neural networks IMO is a much better approach because it removes one more layer of human involvement. Let the computer decide how to rearrange its neurons to better itself. If your goal is to produce sharper, more specific images, then continue the training process until it reaches a low error variance or set your fitness function such that it is catered for a specific subject. If you want more generalized outputs, then allow for a larger error variance or relax the conditions you impose in your training. With an evolved network, you can supply multiple subjects and the neurons will be better arrange to accommodate them, whereas a fixed structure will have to find commonalities between the subjects and balance the weights accordingly for each neuron.

rouncer said:

and another question - how could one possibly generate full motion video?
With a camcorder :D
http://www.nutty.ca - Being a nut has its advantages.

#7 rouncer

    Senior Member

  • Members
  • PipPipPipPip
  • 2718 posts

Posted 10 January 2013 - 10:38 PM

motion video is a hard one hmm... but its got to be possible (maybe not by me :P), another interesting idea is a "volume eye", makes voxel models.
you used to be able to fit a game on a disk, then you used to be able to fit a game on a cd, then you used to be able to fit a game on a dvd, now you can barely fit one on your harddrive.

#8 rouncer

    Senior Member

  • Members
  • PipPipPipPip
  • 2718 posts

Posted 11 January 2013 - 08:05 AM

oh no its all hyped up so bad, i cant get it out of my head...
you used to be able to fit a game on a disk, then you used to be able to fit a game on a cd, then you used to be able to fit a game on a dvd, now you can barely fit one on your harddrive.

#9 Stainless

    Member

  • Members
  • PipPipPipPip
  • 575 posts
  • LocationSouthampton

Posted 11 January 2013 - 09:56 AM

There was an app some time ago that drew the mona lisa using a neural net.

Interesting code, but not of any real use.

I've been thinking about using a genetic algo to produce procedural textures for a long time, the trouble is that producing graphics for games ended up needing a DNA string that was bigger than the graphics it generated.





1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users