Détecter cercle comme des formes d'opencv

tout le monde je suis assez nouveau dans OpenCV et de la vision par ordinateur et je suis coincé à ce problème , qui peut sembler assez banale mais pardonnez mon noobness 🙂

Je suis en train d'essayer de détecter les Armatures à partir d'une image transversale.

Détecter cercle comme des formes d'opencv

je suis en utilisant ce code :

import cv2
import cv2.cv as cv
import numpy as np

img = cv2.imread('test/t2.jpg',0)
img = cv2.equalizeHist(img)
cimg = cv2.cvtColor(img,cv2.COLOR_GRAY2BGR)

circles = cv2.HoughCircles(img,cv.CV_HOUGH_GRADIENT,1,10,param1=50,param2=30,minRadius=0,maxRadius=25)

circles = np.uint16(np.around(circles))
for i in circles[0,:]:
    # draw the outer circle
    cv2.circle(cimg,(i[0],i[1]),i[2],(0,255,0),2)

cv2.imshow('detected circles',cimg)
cv2.waitKey(0)
cv2.destroyAllWindows()

C'est le résultat que j'obtiens actuellement, ce qui n'est pas bon :
Détecter cercle comme des formes d'opencv

Je suis à la recherche pour obtenir des conseils sur la façon de procéder avec ce problème et comment faire pour en savoir plus sur le CV que je suis vraiment intéressé!

Merci une tonne!

Quel est votre problème ?
Oh désolé, j'ai oublié de mentionner la partie principale, je ne suis pas en mesure de détecter ces correctement , c'est le résultat que j'obtiens résultat

OriginalL'auteur Harpreet Boparai | 2016-02-20