小编Nik*_*ble的帖子

决策树学习和杂质

测量杂质有三种方法:

熵

基尼指数

分类错误

每种方法有哪些差异和适当的用例?

machine-learning data-mining decision-tree random-forest

9
推荐指数
1
解决办法
6755
查看次数

即使图像在Python中的OpenCV中包含许多行,Hough Line Transform也只识别一行

我在OpenCV中使用拉普拉斯变换进行边缘检测,然后使用霍夫线变换检测其中的线.这些识别的线最终需要从图像中移除.

import cv2
import numpy as np
from matplotlib import pyplot as plt
img = cv2.imread('Feb_16-0.jpg',0)
kernel = np.ones((1,1),np.uint8)
opening = cv2.morphologyEx(img, cv2.MORPH_OPEN, kernel)
blur = cv2.GaussianBlur(opening,(1,1),0)
ret3,th4 = cv2.threshold(blur,0,255,cv2.THRESH_BINARY+cv2.THRESH_OTSU) 
laplacian = cv2.Laplacian(th4,cv2.CV_8UC1)
cst = cv2.cvtColor(img,cv2.COLOR_GRAY2BGR)
minLineLength = 100
maxLineGap = 10
lines = cv2.HoughLinesP(laplacian,1,np.pi/180,100,minLineLength,maxLineGap)
for x1,y1,x2,y2 in lines[0]:
    cv2.line(cst,(x1,y1),(x2,y2),(0,255,0),2)

cv2.imwrite('houghlines5.jpg',cst)
Run Code Online (Sandbox Code Playgroud)

我期望找出条例草案中的所有内容: 互联网法案

拉普拉斯边缘检测的结果如下:

边缘检测结果

而Hough Line Transform返回的结果只标识了下图中绿线所标记的一条线: 转型互联网法案

任何人都可以帮我弄清楚代码中需要进行哪些修改,以便识别出互联网法案的所有大胆的横向/纵向线?

python opencv image-processing computer-vision hough-transform

5
推荐指数
1
解决办法
3815
查看次数