I’m not exactly understanding the question, but maybe some example could help with it.
Here 12 you can see some code I added for tests with different output ranges. I was testing different loss functions that required either a [0, 1] range or a [-1, 1] range, so I changed that normalization via a parameter when loading the images elsewhere and these caps are also selected by a parameter.
You can leave your network uncapped at the end (no activation function) if you want to have the full range your network is producing, but images have limitations if you want to work with them as images and calculate the metrics, loss and all of that, so you need to take care of that yourself if you don’t cap it.
Does it help?