小编har*_*rsh的帖子

在opencv中检测半圆

我试图检测图像中的完整圆圈和半圆.在此输入图像描述

我遵循下面提到的过程:过程图像(包括Canny边缘检测)查找轮廓并在空图像上绘制它们,以便我可以消除不需要的组件.(处理后的图像正是我想要的.)使用HoughCircles检测圆圈.这就是我得到的.

在此输入图像描述

我尝试改变HoughCircles中的参数,但结果不一致,因为它根据光线和图像中圆圈的位置而变化.我根据它的大小接受或拒绝一个圆圈.所以结果是不可接受的.此外,我还有一长串"可接受的"圈子,所以我需要在HoughCircle参数中留出一些余量.至于完整的圆圈,很容易 - 我可以简单地找到轮廓的"圆度".问题是半圈!

请在hough变换前找到编辑过的图像在此输入图像描述

geometry opencv hough-transform

28
推荐指数
2
解决办法
3万
查看次数

从方向传感器数据旋转图像

我想从移动相机的2张图像中计算深度信息.使用Sensor.TYPE_ROTATION_VECTOR我有两个图像的四元数以及从Img1到Img2的相对四元数.

IMG1

在此输入图像描述

q1 = 0.7545 - 0.1137i - 0.2715j - 0.5865k
Run Code Online (Sandbox Code Playgroud)

IMG2

在此输入图像描述

q2 = 0.7706 - 0.2252i - 0.3511j - 0.4817k
Run Code Online (Sandbox Code Playgroud)

相对季铵盐是:

qr = -0.9850 + 0.0072i + 0.1329j - 0.1097k
Run Code Online (Sandbox Code Playgroud)

也就是说,相对旋转矩阵是,

|0.9406   -0.2142    -0.2635 |
|0.2180    0.9758    -0.0150 |
|0.2604   -0.0433     0.9645 |
Run Code Online (Sandbox Code Playgroud)

这是矩阵getPerspectiveTransform给出的吗?

当我使用这个3x3旋转矩阵时warpPerspective,除了左上角的东西外,我得到一张几乎空白的图像.(可能图像旋转的轴是错误的).

在此输入图像描述

我究竟做错了什么?

注意:2张图片之间也有一个小的翻译(抱歉图片不好)

编辑1:根据这个链接,对于我的第二代Moto G,我得到了一个内在的相机矩阵,

K = |-3570   0         1632 |
    |  0   3554.39   1218.65|
    |  0     0           1  |
Run Code Online (Sandbox Code Playgroud)

android opencv 3d-reconstruction

6
推荐指数
1
解决办法
473
查看次数