为了让我得到太阳能电池板的旋转角度,我训练了一个模型来分割图像,如下所示:
为了提取旋转角度,我使用了 cv2.findContours 然后 fitline、fitellipse、minareareact 但各种角度不一致
area = cv2.contourArea(contours[i])
if area>max_area:
cnt = contours[i]
max_area = area
rect = cv2.minAreaRect(cnt)
x, y = [], []
((centx0,centy0), (widthe0,heighte0), angle_200)= cv2.fitEllipse(cnt)
我也使用了 PCAcompute 但角度也不一致
现在,我正在遵循另一种方法,其中我应用精明的边缘检测来提取边缘,然后提取角度:
或者这个
但即使在这里使用不同的拟合技术也没有证明是稳健的。
有没有一种好方法可以从这些图像中提取面板的旋转角度或倾斜角度?