Opencv 如何在极坐标系中找到垂直线?

Opencv 如何在极坐标系中找到垂直线?,opencv,math,polar-coordinates,houghlines,Opencv,Math,Polar Coordinates,Houghlines,假设我有下图所示的线,用极坐标格式(ρ和θ)表示。这些线是OpenCV的HoughLines函数经过一些后期处理后的输出。(很抱歉,我还不允许嵌入图像。) 我想做的是,给定任何一条线,找出所有垂直于该线的线,如下图所示 我知道如何用笛卡尔线来做这件事,但我很难理解rho和θ的性质,这两条线必须是垂直的,尽管我至少从根本上理解了极线是如何工作的。对不起,如果这是基本的东西,但我有困难找到任何解释,这在网上任何地方。我是否需要首先将直线转换为笛卡尔坐标,或者是否有更简单的方法?任何帮助都将不胜感

假设我有下图所示的线,用极坐标格式(ρ和θ)表示。这些线是OpenCV的HoughLines函数经过一些后期处理后的输出。(很抱歉,我还不允许嵌入图像。)

我想做的是,给定任何一条线,找出所有垂直于该线的线,如下图所示


我知道如何用笛卡尔线来做这件事,但我很难理解rho和θ的性质,这两条线必须是垂直的,尽管我至少从根本上理解了极线是如何工作的。对不起,如果这是基本的东西,但我有困难找到任何解释,这在网上任何地方。我是否需要首先将直线转换为笛卡尔坐标,或者是否有更简单的方法?任何帮助都将不胜感激,谢谢

要获得极坐标系中的垂直线,只需取第一条线的θ,然后找到θ与第一条θ成+/-90°的所有线

进行比较时,必须将角度规格化为0°-360°或其他范围

因此,如果第1行有θ
line1。θ

然后到另一条线的角度是
a=(line2.Theta-line1.Theta)

您需要a接近-90°、90°、270°、-270°、 取决于你如何标准化你的角度