For the classic neural network part of the CNN, a great starting place for beginners is the book Michael Nielsen published at Neural Networks and Deep Learning. He uses Python for his examples but explains everything in details, so it shouldn't be hard to implement the same concepts in any other higher programming language. I studied his code in detail and can't think of any concepts that are very Python specific. You might have to look up some functions like "zip" if you are totally new to Python but the documentation of those functions is easy to follow for a developer.
If you haven't worked with neural networks before, the amount of mathematics required may seem threatening at first, especially if you are not too familiar with gradient decent and partial derivatives. But following the recommended book (and some look-ups in Wikipedia) should teach you everything you need to implement the neural network aspect of your project in Java or C#.
The other required layers for your CNN - especially the convolution layer - depend more on the actual problem you are trying to solve. You said:
My goal it's not so much to use their perception capabilities (classifying pictures) as it is to use them the other way around.
I don't really understand what you are trying to achieve with your CNN, maybe you can elaborate more. Your convolution and pooling layer might look quite different from typical implementations used in image recognition. The basic principles of those layers can be found e.g. on Wikipedia as a starting point. Without deeper knowledge of your goal it is hard to recommend anything more specific.