diff --git a/Python/opencv-image-processing/Hough_probablistic_transform.py b/Python/opencv-image-processing/Hough_probablistic_transform.py new file mode 100644 index 00000000..ea2be1ef --- /dev/null +++ b/Python/opencv-image-processing/Hough_probablistic_transform.py @@ -0,0 +1,17 @@ +import cv2 +import numpy as np + +img = cv2.imread('images/roads.png') +gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) +edges = cv2.Canny(img,50,150,apertureSize = 3) +cv2.imshow('Edges',edges) +lines = cv2.HoughLinesP(edges, 1 ,np.pi/180,100,minLineLength = 100, + maxLineGap = 10) + +for line in lines: + x1,y1,x2,y2 = line[0] + cv2.line(img,(x1,y1),(x2,y2),(0,255,0),2) + +cv2.imshow('image',img) +k = cv2.waitKey(0) +cv2.destroyAllWindows() \ No newline at end of file diff --git a/Python/opencv-image-processing/images/roads.png b/Python/opencv-image-processing/images/roads.png new file mode 100644 index 00000000..8f033dd4 Binary files /dev/null and b/Python/opencv-image-processing/images/roads.png differ diff --git a/Python/opencv-image-processing/images/smarties.png b/Python/opencv-image-processing/images/smarties.png new file mode 100644 index 00000000..90bf22dd Binary files /dev/null and b/Python/opencv-image-processing/images/smarties.png differ diff --git a/Python/opencv-image-processing/morphological_transformations_opencv_python.py b/Python/opencv-image-processing/morphological_transformations_opencv_python.py new file mode 100644 index 00000000..002c7060 --- /dev/null +++ b/Python/opencv-image-processing/morphological_transformations_opencv_python.py @@ -0,0 +1,34 @@ +import cv2 +import numpy as np +from matplotlib import pyplot as plt + + +img = cv2.imread('images\smarties.png', cv2.IMREAD_GRAYSCALE) +_,mask = cv2.threshold(img,220,255,cv2.THRESH_BINARY_INV) + +kernel = np.ones((5,5),np.uint8) + +dilation = cv2.dilate(mask,kernel = kernel, iterations = 2) + +erosion = cv2.erode(mask,kernel,iterations= 1) + +opening = cv2.morphologyEx(mask, cv2.MORPH_OPEN, kernel) + +closing = cv2.morphologyEx(mask,cv2.MORPH_CLOSE,kernel) + +morphological_gradient = cv2.morphologyEx(mask,cv2.MORPH_GRADIENT,kernel) + +top_Hat = cv2.morphologyEx(mask,cv2.MORPH_TOPHAT,kernel) + + + +titles = ['image','mask','Dilation','erosion','opening','closing','morphological_gradient','top_Hat'] +images = [img,mask,dilation,erosion,opening,closing,morphological_gradient,top_Hat] + +for i in range(8): + plt.subplot(2,4,i+1) + plt.imshow(images[i],cmap='gray') + plt.title(titles[i]) + plt.xticks([]),plt.yticks([]) + +plt.show()