Originally Posted by dlarsen
Agreed. This is along the line that Kras pingged me on. Only the pure gray scales. If all you look at is 219 step grey-scale ramp, (or exclusively BW images.) You may have a valid mathematical argument. As Charles noted, I think the argument wouldn't hold with the practically of real-world color images and the limitations of the HVS. Any non-monotonic steps should be well below the HVS threshold. (IMO)
You are simply mistaken about this. Banding can easily be illustrated as visible in a decent system that does not otherwise have banding present. Whether you deem that significant or not is a different question. It is factually certain, however, that you are going to skip codes however. If we assume that 8-bit video is the minimum sufficient bit-depth to avoid visible banding, having a gap in the code is a significant problem and would fall above the visibility threshold.
Any experience with video and bit-depth limits will illustrate this to be a challenge.
You won't miss codes relative to what is on the source. All the unique 220 codes in the source will find a home in sRGB/PC. They will all still be there and none will be duplicated.
That is correct. But their relationships have been changed, and because you have gaps in the new range you will have luminance deltas that are extremely likely to become visible, if not necessarily so.
I'll buff up my spread sheet and run though all those cases and show that. To me, to qualify for visible banding, codewords must collapse or be duplicated such the difference between two levels is above the HVS threshold.
That is what is occurring, except that is not a "collapse." It is a gap. That's what the increase in delta is. If it were a collapse or duplication it wouldn't necessarily be a problem if the new range were still of sufficient bit-depth to keep single code-differences below the visible threshold.
I believe you have shown non-monoticity. I don't believe that a non-monotonic progression automatically = banding.
Well, I'm not dealing with global statements like that. We have a specific situation of 8-bit re-mapping. In that case, because 8-bit is just barely sufficient to avoid banding, you definitely are likely to see banding if you have two-step gaps.
You wont have integer results (except pure black and white) in the normalized data range. Rounding precision errors will be present in either case where CbCr does not = 128 and therfore IS weighted in the (non-integer) computations.
That is simply not the case. If you're not re-mapping the values you're not going to have gaps in the range. This is mathematically true.