>> One thing though:  in the frame you sent me, about 10% of the pixels
 >>  are clipped in the initial conversion to R'G'B' --- these are Y'CbCr
 >>  values in the orginal frame which lie outside of the R'G'B' color
 >>  cube.  When they are clipped (projected/forced into the R'G'B' cube),
 >>  they will generally appear brighter (the Y' of the clipped pixel will
 >>  be higher than the original Y' value).
 >
 >      The reverse also be, possibly, a problem?  When going from R'G'B'
 >      to broadcast range Y'CbCr the clip/core to 16-235 and 16-240 can
 >      cause luma dimming and color shifts (saturated red is particularily
 >      nasty to deal with).

The R'G'B' cube actually does fit entirely within the Y'CbCr cube
 (so the problem is quantization loss, not clipping).  The broadcast
 limit involves the magnitude of the (U,V) signal (plus the Y') ---
 it's derived from the absolute min/max composite signal which the RF
 modulator/amplifier can accept.  So, it's kind of an eliptical cone
 which intersects the Y'CbCr colorcube.

 >>  be no visible transition between the frames with 'effects' and those
 >>  without?  Or doing the work in Y'CbCr colorspace [all non-ideal for
 >>  a few reasons].  Or writing tools which will handle negative R'G'B'
 >
 >      Hmmm, that's not what I've found to be the case.  Can you elaborate
 >      on why doing all the work in Y'CbCr is non-ideal?  So far I've found
 >      doing the rendering/filtering/compositing/etc work in Y'CbCr format 
 >      (with 10bit per sample data the math in done with 32bit floating point)
 >      gives fantasically good results.

The problem is that Y'CbCr is a non-linear colorspace, so any operations
 which blend pixel values don't come out quite right --- although in
 practice with real-world images it's not very noticeable (or so they say!).
 See

      http://home.no.net/dmaurer/~dersch/gamma/gamma.html

 for an illustration.  That page pertains to R'G'B' versus linear-RGB,
 but since Y'CbCr is just a rotation/scaling of R'G'B', the same holds
 true.  (Unfortunately, there is no such thing as "linear YCbCr"; there
 is no simple gamma-correction to apply precisely because the rotation
 is a blending of non-linear values.)

The basic idea is that, although our eyes have a non-linear perception
 of brightness which is well-matched by gamma-corrected sampling, the
 physics of images and light is itself linear, so you need to use the
 linear RGB colorspace to do faithful image processing.  The gamma-correction
 just serves to improve the dynamic range (i.e. save bits, in the digital
 realm).

-m


-------------------------------------------------------
SF.Net email is sponsored by: Discover Easy Linux Migration Strategies
from IBM. Find simple to follow Roadmaps, straightforward articles,
informative Webcasts and more! Get everything you need to get up to
speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click
_______________________________________________
Mjpeg-users mailing list
Mjpeg-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mjpeg-users

Reply via email to