Skip to content

Instantly share code, notes, and snippets.

@PureMath86
Created March 5, 2018 20:25
Show Gist options
  • Save PureMath86/2f52fb50bf775be1502bb4b1cb68ef3f to your computer and use it in GitHub Desktop.
Save PureMath86/2f52fb50bf775be1502bb4b1cb68ef3f to your computer and use it in GitHub Desktop.
hough.py
import cv2
import numpy as np
img = cv2.imread('path/to/img', 0) # 0 = grayscale
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
edges = cv2.Canny(img,100,200)
lines = cv2.HoughLines(edges,1,np.pi/180,200)
for rho, theta in lines[0]:
a = np.cos(theta)
b = np.sin(theta)
x0 = a*rho
y0 = b*rho
x1 = int(x0 + 1000*(-b))
y1 = int(y0 + 1000*(a))
x2 = int(x0 - 1000*(-b))
y2 = int(x0 - 1000*(a))
cv2.line(img, (x1,y1), (x2,y2), (0,0,255),2)
cv2.imwrite('path/to/new/img', img)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment