python求函数曲率_【Python】车道线拟合曲线的曲率半径计算公式及代码
學習優達學城的Advanced-Lane-Lines課程時,碰到了車道線的曲率半徑計算。初見公式略顯陌生,直到想起曲率半徑的計算公式時才想明白,故記錄如下。
def cal_curverature(img_shape, left_fit, right_fit):
ploty=np.linspace(0, img_shape[0]-1, num=img_shape[0])
ym_per_pix = 30/720 # meters per pixel in y dimension
xm_per_pix = 3.7/700 # meters per pixel in x dimension
# Fit new polynomials to x,y in world space
y_eval = np.max(ploty)
leftx=left_fit[0]*ploty**2+left_fit[1]*ploty+left_fit[2]
rightx=right_fit[0]*ploty**2+right_fit[1]*ploty+right_fit[2]
left_fit_cr = np.polyfit(ploty*ym_per_pix, leftx*xm_per_pix, 2)
right_fit_cr = np.polyfit(ploty*ym_per_pix, rightx*xm_per_pix, 2)
# Calculate the new radii of curvature
left_curverad = ((1 + (2*left_fit_cr[0]*y_eval*ym_per_pix + left_fit_cr[1])**2)**1.5) / np.absolute(2*left_fit_cr[0])
right_curverad = ((1 + (2*right_fit_cr[0]*y_eval*ym_per_pix + right_fit_cr[1])**2)**1.5) / np.absolute(2*right_fit_cr[0])
xoffset=(left_fit_cr[2]+right_fit_cr[2])/2-img.shape[1]*xm_per_pix/2
return left_curverad, right_curverad, xoffset
一、曲率半徑公式及推導
詳細推導過程如下:
二、利用公式計算擬合車道線的曲率半徑
假設車道線方程為二次擬合曲線:
x = a*y*y + b*y +c
則在y米遠處,曲率半徑為:
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的python求函数曲率_【Python】车道线拟合曲线的曲率半径计算公式及代码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 布尔运算_实例解析!布尔运算运用技巧!
- 下一篇: jsp里面的input的值吗_一个jsp