python - OverflowError: Python int too large to convert to C long in lane line detection
问题描述
def make_coordinates(image,line_parameters):
try:
slope, intercept = line_parameters
except TypeError:
slope, intercept = 0,0
y1=image.shape[0]
y2=np.int(y1*(3/5))
x1=np.int((y1-intercept)/slope)
x2=np.int((y2-intercept)/slope)
return np.array([x1,y1,x2,y2])
def average_slope_intercept(image, lines):
left_fit=[]
right_fit=[]
for line in lines:
x1,y1,x2,y2 = line.reshape(4)
parameters = np.polyfit((x1,x2),(y1,y2),1)
slope=parameters[0]
intercept=parameters[1]
if(slope<0):
left_fit.append((slope,intercept))
else:
right_fit.append((slope,intercept))
left_fit_average=np.average(left_fit,axis=0)
right_fit_average=np.average(right_fit,axis=0)
left_line=make_coordinates(image,left_fit_average)
right_line=make_coordinates(image,right_fit_average)
return np.array([left_line,right_line])
def canny(lane_image):
gray = cv2.cvtColor(lane_image, cv2.COLOR_RGB2GRAY)
blur = cv2.GaussianBlur(gray, (5,5),0)
canny = cv2.Canny(blur, 50,150)
return canny
def region_of_intrest(canny):
height = canny.shape[0]
polygon = np.array([[(200, height), (1100, height),(550, 250)]])
mask=np.zeros_like(canny)
cv2.fillPoly(mask, polygon, 255)
masked_image=cv2.bitwise_and(canny,mask)
return masked_image
def display_lines(image, lines):
line_image=np.zeros_like(image)
if(lines is not None):
for line in lines:
x1,y1,x2,y2 = line.reshape(4)
cv2.line(line_image, (x1,y1),(x2,y2),(255,0,0),10)
return line_image
while True:
frame = grab_screen(region=(0,40,800,600))
canny_image=canny(frame)
cropped_image=region_of_intrest(canny_image)
lines = cv2.HoughLinesP(cropped_image, 2, np.pi/180, 100, np.array([]),minLineLength=40,maxLineGap=5)
average_lines = average_slope_intercept(frame,lines)
line_image=display_lines(frame,average_lines)
combo_image = cv2.addWeighted(frame,0.8,line_image,1, 1)
cv2.imshow('result',combo_image)
cv2.waitKey(1)`
我收到 OverflowError: Python int too large to convert to C long. 请有人帮我
解决方案
推荐阅读
- java - 使用 Apache POI 从 .doc 中提取超链接
- react-hooks - 如何获取此元素的 id 以从反应钩子中的数组中删除?
- typescript - 扩展“通用”TypeScript 接口
- php - 在浏览器中预览文件而不是在 PHP 中下载
- amazon-web-services - 如何刷新 ElastiCache Memcached 集群?
- exceljs - 使用 ExcelJS 将图像导出到 Excel
- api - 使用 JWT 在 tcp 上托管 .net Core API
- php - 上传到我的 Laravel 6 应用程序的数据库表和公用文件夹的图像不起作用
- javascript - 在浏览器刷新时出现错误'TypeError:无法读取未定义的属性'id'
- c# - 在将 gridview 导出到 excel 时包含空格