Log in

View Full Version : ColorYUV: Wrong Analyse of Levels ?


Mounir
28th December 2010, 17:43
I'm at a loss with the colorYUV analyzer, take a look

http://img266.imageshack.us/img266/8035/resulty.png

The image is RGB32 bits, smpte170m color bars

the script i use:

ConverttoYV12(matrix="Rec601",interlaced=false)
ColorYUV(analyze=true)


The analyzer says the maximum white is at 235 whereas both my eyes and photoshop can tell it's at 255 rgb , so i feel the need to ask what's wrong with coloryuv ?!

Same for the black it report a minimum of 24 and it's actually 9 in photoshop.

Inputs are welcome

Gavino
28th December 2010, 18:05
ConverttoYV12(matrix="Rec601") converts 0 rgb to y=16 and 255 rgb to y=235. That's what gets analysed by ColorYUV.

Then your display program converts back to RGB for display, showing 0 and 255 again.

If you want to avoid that, use:
ConverttoYV12(matrix="PC.601",interlaced=false)
ColorYUV(analyze=true)
ConvertToRGB32(matrix="PC.601")

Wilbert
28th December 2010, 18:07
The analyzer says the maximum white is at 235 whereas both my eyes and photoshop can tell it's at 255 rgb , so i feel the need to ask what's wrong with coloryuv ?!
Nothing. ColorYUV operates in YCbCr (and you converted the input to [16,235] YCbCr). Then it was converted back to RGB (apparently expanding the levels again since you say that white=255) after which you took that screenshot.

edit: too late :)

Mounir
28th December 2010, 18:55
ConverttoYV12(matrix="Rec601") converts 0 rgb to y=16 and 255 rgb to y=235. That's what gets analysed by ColorYUV.

Then your display program converts back to RGB for display, showing 0 and 255 again.

If you want to avoid that, use:
ConverttoYV12(matrix="PC.601",interlaced=false)
ColorYUV(analyze=true)
ConvertToRGB32(matrix="PC.601")

Thank you gavino that's helping me a lot