I haven’t used rgb2lab in my experiments.
From what I understand opencv has a rgb2lab conversion which can help you a lot.
The documentation is here: optncv.cvtcolor documentation 3
If you scroll down a bit you can see :
RGB <> CIE Lab* ( CV_BGR2Lab, CV_RGB2Lab, CV_Lab2BGR, CV_Lab2RGB )
from a brief reading I noticed that the lab channels are converted to the following value range:

Screen Shot 2018-05-01 at 13.20.32.png1117×776 48 KB

So I would normalize each channel accordingly.
Hope this helps a bit.