python中θ是哪种0_Python openCV检测平行线

方程在笛卡尔坐标系的线的:

Y = K * X + B

两条线Y = K1 * X + B 1,Y = K2 * X + b2为平行的,如果K1 = K2。

所以你需要计算每个检测线的系数k。

为了唯一找出你需要知道的两点属于线坐标的直线的方程。

具有HoughLines(С++)发现线之后:

vector lines;

HoughLines(dst, lines, 1, CV_PI/180, 100, 0, 0);

你有向量线,其存储在极坐标中检测到的线的参数(R,θ-)。你需要将它们在直角坐标转移:在C++

这里例如:

for(size_t i = 0; i < lines.size(); i++)

{

float rho = lines[i][0], theta = lines[i][1];

Point pt1, pt2;

double a = cos(theta), b = sin(theta);

double x0 = a*rho, y0 = b*rho;

pt1.x = cvRound(x0 + 1000*(-b)); //the first point

pt1.y = cvRound(y0 + 1000*(a)); //the first point

pt2.x = cvRound(x0 - 1000*(-b)); //the second point

pt2.y = cvRound(y0 - 1000*(a)); //the second point

}

在已经得到了线的这两点就可以计算出它的方程。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值