1、前面的基本方法都一样,把图片变成灰度图,再进行边界检测。
2、上面的代码,把图片保存到本地了。
3、检测线段的端点,用到了ls = cv2.houghlinesp(edges,1,np.pi/180,30, minlinelength=60,maxlinegap=10)l = lines:,0,:print(l)
4、运行结果是,返线段的端点坐标。
5、在原图中,标注出所有的线段。for x1,y1,x2,y2 in l[:: cv2.lineimg,(x1,y1),(x2,y2),(0,0,255),1
6、加粗线段:for x1,y1,x2,y2 in l[:: cv2.lineimg,(x1,y1),(x2,y2),(0,0,255),2发现什么了?右面的不是线段的图形,也被当成线段对待了。
7、在灰度图里面会怎么样呢?for x1,y1,x2,y2 in l[:: cv2.linegray,(x1,y1),(x2,y2),(0,0,255),2结果,线段并不是红色,而是被灰度化了。