import numpy Kb = 0.114 Kr = 0.299 full = numpy.array([ [1.0, 0.0, 2.0*(1.0-Kr) ], [1.0, -2.0*Kb*(1.0-Kb)/(1.0-Kr-Kb), -2.0*Kr*(1.0-Kr)/(1.0-Kr-Kb) ], [1.0, 2.0*(1.0-Kb), 0.0 ] ]) print("YBR_FULL to RGB") print(full) print("RGB to YBR_FULL") print(numpy.linalg.inv(full)) partial = numpy.array(full) partial[:,0] *= 255.0/219.0; partial[:,1] *= 255.0/224.0; partial[:,2] *= 255.0/224.0; print("YBR_PARTIAL to RGB") print(partial) print("RGB to YBR_PARTIAL") print(numpy.linalg.inv(partial))