opencv - 通过对象和轮廓点消除没有棋盘的相机失真

标签 opencv computer-vision javacv

我需要在不使用棋盘目标的情况下校正相机的失真。我有一个矩形对象的快照。为此,我首先在图像上找到矩形对象的一些点。结果,我得到了真实物体点和图像中物体轮廓点的坐标。这在此处的图像上进行了描述: https://yadi.sk/i/PgPYJvAQs8YwQ https://drive.google.com/file/d/0B1uajFxXL5MUMnFiVjVjbF8tTVE/view

如何继续使用 JavaCV 或 OpenCV?

最佳答案

您可以尝试使用 opencv 中的 findHomography 函数,它使用 RANSAC 来计算异常值并获得图像转换的初始估计。

Mat h = findHomography(distorted_src,undistort_dst);
warpPerspective(im_src, im_undistort, h, size);

关于opencv - 通过对象和轮廓点消除没有棋盘的相机失真,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37533660/

相关文章:

opencv - LshMatcher 与 opencv?

opencv - 将 IplImage 转换为 CvMat

opencv - 使用安装在天花板上的向下指向网络摄像头跟踪人类

image - 值(value)观的作用

c++ - 如何为搜索应用程序找到正确的数据结构?

java - Android JavaCV - UnsatisfiedLinkError并且找不到 "libopencv_core.so"

python - 如何使用图像(OpenCV和Python)正确测试RGB值?

c++ - 升级到 OS X Mavericks 后架构 x86_64 的 OpenCV undefined symbol

java - 如何在从Python 3.6到Java 1.8 JavaCV的算法转换中找到轮廓

opencv - 如何提高基于人脸图像的人类性别识别?