SSE-optimized absdiff returns negative values on CV_32S input (Bug #1529)
Description
Here are values of input Mat elements where results are incorrect:
absdiff=-2147476831 for a=375685183 b=-1771805282 absdiff=-2147475690 for a=966082107 b=-1181409499 absdiff=-2147483496 for a=-817265941 b=1330217859 absdiff=-2146550536 for a=-1519733149 b=628683611
Associated revisions
added special notice about the missing saturation in 32s case (ticket #1529)
Merge pull request #1529 from vpisarev:polyfit_accuracy_2
History
Updated by Andrey Kamaev about 13 years ago
Saturation in cv::add and cv::subtract also does not work on 32S data. But the documentation says that saturation is applied in both functions.
Updated by Alexander Shishkov almost 13 years ago
- Target version deleted ()
Updated by Alexander Shishkov almost 13 years ago
- Assignee deleted (
Vadim Pisarevsky)
Updated by Vadim Pisarevsky almost 13 years ago
thanks! in SVN trunk, r7664, the documentation on absdiff, add, addWeighted, subtract, multiply and divide has been updated to state explicitly that the saturation is not applied in 32s case.
- Status changed from Open to Done
- Assignee set to Vadim Pisarevsky
Updated by Alexander Shishkov almost 13 years ago
- Target version set to 2.4.0