how to detecting Syringe needle defect ? Using Python OpenCV

Viewed 34

am working on project in which i supposed to detect defect in Syringe needle I tried this code but it should detect the defect of the needle of the syringe like if it is bent or something ,,, it worked but it just showing the image without indicating where is the defect or anything just opens the image

import cv2

import numpy as np

img = cv2.imread('Screenshot 2022-09-14 210348.jpg')

gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)

edges = cv2.Canny(gray,50,150,apertureSize = 3)

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(y0 - 1000*(a))

cv2.line(img,(x1,y1),(x2,y2),(0,255,0),2)


cv2.imshow('image',img)


cv2.waitKey(0)


cv2.destroyAllWindows()


enter image description here

0 Answers
Related