【发布时间】:2017-04-12 21:19:34
【问题描述】:
我正在使用带有官方 5MP 摄像头的 Raspberry Pi 2。我已经使用 OpenCV 3.2.0 校准了相机。我正在使用 Python 3.4.2 进行编码(我知道它不是最新版本,但为更新版本重新编译 OpenCV 是不可能的)。
我的问题是,如果我在相对于相机的正方形内有一个点,并且我拥有相对于相机的正方形所有 4 个角的点(不完全是正方形,因为它可能会稍微旋转和移动) ,我如何找到相对于正方形的那个点?
例如,如果正方形的左上角是 (10, 20),并且原点稍微向右下方,可能是 (21, 33),那么最终点可能类似于(15, 18)。
将此结果基于 1 个角(并仅减去输入点和角)是不够的,因为图像可能会被缩放。基于 2 个对角(假设正方形是完全正方形且未旋转)是不够的,因为图像可能会旋转。理论上,如果我正确校准了相机(并制作了一个完美的正方形或矩形),3 应该就足够了,但是完全确定 4 更好。
问题是我不知道如何将图像上的点重新映射到正方形上的点。我该怎么做?
示例(抱歉质量低):
给定 4 个红色摄像头和输出点以及绿色摄像头点,我如何找到绿色输出点?
【问题讨论】:
标签: python opencv camera raspberry-pi distortion