• Paul E. Murphy's avatar
    imgproc(resize): improve 8u3 HResize vector exit calc · c1cdb241
    Paul E. Murphy authored
    Actually, we can do this in constant time. xofs always
    contains same or increasing offset values. We can instead
    find the most extreme value used and never attempt to load it.
    
    Similarly, we can note for all dx >= 0 and dx < (dwidth - cn)
    where xofs[dx] + cn < xofs[dwidth-cn] implies dx < (dwidth - cn).
    
    Thus, we can use this to control our loop termination optimally.
    
    This fixes #16137 with little or no performance impact. I have
    also added a debug check as a sanity check.
    c1cdb241
Name
Last commit
Last update
..
calib3d Loading commit data...
core Loading commit data...
cudaarithm Loading commit data...
cudabgsegm Loading commit data...
cudacodec Loading commit data...
cudafeatures2d Loading commit data...
cudafilters Loading commit data...
cudaimgproc Loading commit data...
cudalegacy Loading commit data...
cudaobjdetect Loading commit data...
cudaoptflow Loading commit data...
cudastereo Loading commit data...
cudawarping Loading commit data...
cudev Loading commit data...
dnn Loading commit data...
features2d Loading commit data...
flann Loading commit data...
highgui Loading commit data...
imgcodecs Loading commit data...
imgproc Loading commit data...
java Loading commit data...
js Loading commit data...
ml Loading commit data...
objdetect Loading commit data...
photo Loading commit data...
python Loading commit data...
shape Loading commit data...
stitching Loading commit data...
superres Loading commit data...
ts Loading commit data...
video Loading commit data...
videoio Loading commit data...
videostab Loading commit data...
viz Loading commit data...
world Loading commit data...
CMakeLists.txt Loading commit data...