我正在利用OpenCV来校准一组图像。我使用的是由cv::calibrateCamera提供的标准函数OpenCV,这里没有什么特别的。图像采用JPEG格式,并且设置了EXIF方向标志(可以是!= 1)。
我已经注意到,如果图像不是全部面向左上角(方位== 1),校准结果是错误的,通常会导致很高的均方根误差。相反,如果我手动更正方向(例如,使用mogrify或exiftool ),结果将如预期的那样。
你见过这种行为吗?你能解释一下为什么会这样吗?
顺便提一句,我在上使用了OpenCV 3.1,它是通过家用软件安装的。代码在C++中。
发布于 2016-07-15 05:57:41
你用的是imread还是cvLoadImage?ImreadforOpenCV3.1似乎正确地处理exif,但cvLoadImage没有。请参阅下面的opencv bug https://github.com/opencv/opencv/issues/6673
https://stackoverflow.com/questions/37948847
复制相似问题