Формулы перевода. Да, их много. И конкретная формула зависит от того, что именно делается. Например, в JPEG используется такая.
Далее не очень понятно, с чем ты имеешь дело. С камеры снимается сырой сигнал, потом происходит операция дебайеризации (в OpenCV тоже есть). Потом перед сжатием в JPEG или h.264 происходит перевод в YUV (YUV420, YUV422, YUV444 или что-то другое). После декодирования кадра опять получается тот же YUV. OpenCV внутри себя переводит в BGR и отдаёт пользователю.
Теперь уточнение: на каком этапе предстоит цветокоррекция?
Ещё можно добавить, что OpenCV представляет внутри себя кадры в виде некоторого вектора на пиксель. BGR - вектор размера 3, GRAY - размер 1, HSV - размер 3. YUV так представить уже нельзя, разве что редкий YUV444. YUV естественным образом хранится в виде planes (то есть матриц), в которых пиксель с координатами (x, y) хранится в 3-х разных матриц. OpenCV так не умеет, насколько я знаю. Там есть перевод в один из вариантов YUV, но это не обязательно тот вариант, который был использован в камере. Вообще в OpenCV с этим плохо.