Méthode Python OpenCV | cv2.circle ()

| | | | | | | | | | |

OpenCV-Python est une bibliothèque de liens Python conçue pour résoudre les problèmes de vision par ordinateur. La méthode cv2.circle () est utilisée pour dessiner un cercle sur n`importe quelle image.

Syntaxe : cv2.circle(image, center_coordinates, radius, color, width)
Paramètres : 
image : C`est l`image sur laquelle le cercle doit être dessiné. 
center_coordinates : Ce sont les coordonnées du centre du cercle. Les coordonnées sont représentées sous forme de tuples de deux valeurs, c`est-à-dire (valeur de la coordonnée X, valeur de la coordonnée Y). 
rayon : c`est le rayon du cercle. 
couleur : C`est la couleur de la ligne de bordure du cercle à dessiner. Pour BGR, nous passons un tuple. par exemple : (255, 0, 0) pour la couleur bleue. 
épaisseur : C`est l`épaisseur de la ligne de bordure du cercle en px. Une épaisseur de -1 px remplira la forme du cercle avec la couleur spécifiée.
Valeur de retour : Elle renvoie une image. 
 

Comment dessiner un cercle sur l`image OpenCV ?

Question StackOverflow

J`utilise python et opencv pour obtenir une image de la webcam, et je veux savoir comment dessiner un cercle sur mon image, juste un simple cercle vert avec transparent remplissez

entrez la description de l`image ici

mon code :

importer cv2 import numpy import sys if __name__ == `__main__` : #obtenir l`image actuelle de la webcam cam = cv2. VideoCapture(0) img = cam.read() #comment dessiner un cercle ????  cv2.imshow(`WebCam`, img) cv2.waitKey() 

Merci d`avance.

Réponse

cv2.circle(img, centre, rayon, couleur, épaisseur= 1, lineType=8, shift=0) ‚Üí Aucun Dessine un cercle. Paramètres : img (CvArr) ‚Äì Image où le cercle est tracé centre (CvPoint) ‚Äì Centre du rayon du cercle ( int) ‚Äì Rayon de la couleur du cercle (CvScalar) ‚Äì Épaisseur de la couleur du cercle (int) ‚Äì Épaisseur du contour du cercle si positif, sinon cela indique qu`un cercle plein doit être dessiné lineType (int ) ‚Äì Type de la limite du cercle, voir Line description shift (int) ‚Äì Nombre de bits fractionnaires dans les coordonnées du centre et la valeur du rayon 

Utilisez le paramètre "thickness" uniquement pour la bordure.

Exemple #1

def blob(x) : """Étant donné une matrice Nx3 de positions et de taille de blob, créez N img_size x images img_size, chacune avec un blob dessiné dessus donné par la valeur de chaque ligne de x Une ligne de x = [x,y,radius].""" y = np.zeros((x.shape[0], img_size, img_size)) for i , particule dans enumerate(x): rr, cc = skimage.draw.circle( particule[0], particule[1], max(particule[2], 1), shape=(img_size, img_size) ) y[i, rr, cc] = 1 return y #%% # noms (c`est juste pour référence pour le moment !) 

Exemple #2

def update(self, radarData): self .img = np.zeros((self.height, self.width, self.channels), np.uint8) cv2.line(self.img, (10, 0), (self.width/2 - 5, self. hauteur), (100, 255, 255)) cv2.line(self.img, (self.width - 10, 0), (self.width/2 + 5, self.height), (100, 255, 255) ) pour track_number dans la plage (1, 65) : si str(track_number)+`_track_range` dans radarData : track_range = radarData[str(track_number)+`_track_range`] track_angle = (float(radarData[str(track_number)+`_track_angle `])+90.0)*math.pi/180 x_pos = math.cos(track_angle)*track_range*4 y_pos = math.sin(track_angle)*track_range*4 cv2.circle(self.img, (self.w idth/2 + int(x_pos), self.height - int(y_pos) - 10), 5, (255, 255, 255)) #cv2.putText(self.img, str(track_number), # (self.width /2 + int(x_pos)-2, self.height - int(y_pos) - 10), self.font, 1, (255,255,255), 2) cv2.imshow("Radar", self.img) cv2.waitKey( 2) 

Exemple #3

def ProcessFrame(self, frame): # segment arm region segment = self.SegmentArm(frame) # faire une copie de l`image segmentée sur laquelle dessiner dessiner = cv2.cvtColor(segment, cv2. COLOR_GRAY2RGB) # dessiner des aides pour placer correctement la main cv2.circle(draw,(self.imgWidth/2,self.imgHeight/2),3,[255,102,0],2) cv2.rectangle(draw, (self.imgWidth /3,self.imgHeight/3), (self.imgWidth*2/3, self.imgHeight*2/3), [255,102,0],2) # trouve la coque de la zone segmentée, et sur cette base trouve les # défauts de convexité [contours,defects] = self.FindHullDefects(segment) # détecte le nombre de doigts en fonction des contours et des défauts de convexité # dessine les défauts qui appartiennent aux doigts verts, les autres rouges [nofingers,draw] = self.DetectNumberFingers( contours, défauts, dessin) # imprime le nombre de doigts sur l`image cv2.putText(draw, str(nofingers), (30,30), cv2. FONT_HERSHEY_SIMPLEX, 1, (255,255,255)) return draw 

Exemple #4

def mark_hand_center(frame_in,cont): max_d=0 pt=(0,0) x,y,w,h = cv2.boundingRect(cont) for ind_y in xrange(int(y+ 0.3*h),int(y+0.8*h) : #environ 0.25 à 0.6 région de hauteur (calcul plus rapide avec des résultats corrects) pour ind_x dans xrange(int(x+0.3*w),int(x+0 .6*w)): #environ 0,3 à 0,6 région de largeur (calcul plus rapide avec des résultats corrects) dist= cv2.pointPolygonTest(cont,(ind_x,ind_y),True) if(dist>max_d): max_d=dist pt= (ind_x,ind_y) if(max_d>radius_thresh*frame_in.shape[1]): thresh_score=True cv2.circle(frame_in,pt,int(max_d),(255,0,0),2) else: thresh_score=False return frame_in,pt,max_d,thresh_score # 6. Rechercher et afficher le geste 

Exemple #5

def update(self, radarData): self.img = np.zeros((self .height, self.width, self.channels), np.uint8) cv2.line(self.img, (10, 0), (self.width/2 - 5, self.height), (100, 255, 255 )) cv2.line(self.img, (self.width - 10, 0), (self.width/2 + 5, self.height), (100, 255, 255)) pour track_number dans range(1, 65 ): si str(track_number)+`_track_range` dans radarData : track_range = radarData[str(track_number)+`_track_range`] track_angle = (float(radarData[str(track_number)+`_track_angle`])+90.0)*math. pi/180 x_pos = math.cos(track_angle)*track_range*4 y_pos = math.sin(track_angle)*track_range*4 cv2.cir cle(self.img, (self.width/2 + int(x_pos), self.height - int(y_pos) - 10), 5, (255, 255, 255)) #cv2.putText(self.img, str (track_number), # (self.width/2 + int(x_pos)-2, self.height - int(y_pos) - 10), self.font, 1, (255,255,255), 2) cv2.imshow("Radar" , self.img) cv2.waitKey(2) 


Version archivée

OpenCV-Python —¬†est une liaison Python bibliothèque pour résoudre les problèmes de vision par ordinateur. est utilisé pour dessiner un cercle sur n`importe quelle image.

Syntaxe : cv2.circle (image, center_coordinates, rayon, couleur, épaisseur)

Paramètres :
image : C`est l`image sur laquelle le cercle doit être dessiné.
center_coordinates : ce sont les coordonnées du centre du cercle. ¬†Les coordonnées sont représentées comme des tuples de deux valeurs ‚Äã‚Äãie ( valeur de coordonnée X , valeur de coordonnée Y ).
rayon : C`est le rayon du cercle.
couleur : C`est la couleur de la ligne de bordure du cercle à dessiner. ¬†Pour BGR , nous p Assemblez un tuple. ¬†Une épaisseur de -1 px remplira la forme rectangle-method/">rectangle par le couleur spécifiée.

Valeur de retour : Elle renvoie une image.

L`image est utilisée pour tous les exemples ci-dessous :

Exemple n° 1 :

# Programme Python pour expliquer la méthode cv2.circle ()

 
# cv2 import

import cv2 

 
# chemin

chemin = r `C: UsersRajnishDesktoppythonengineeringgeeks.png`

  
# Lire l`image en mode par défaut

image = cv2.imread (chemin)

 
# Nom de la fenêtre dans laquelle l`image est affichée

window_name = `Image`

  
# Coordonnées du centre

center_coordinates = ( 120 , 50 )

 
# Rayon du cercle

rayon = 20

  
# Couleur bleue dans BGR

couleur = ( 255 , 0 , 0 )

 
# Largeur de ligne 2 px

épaisseur = 2

 
# Utilisation des méthode cv2.circle ()
# Dessinez un cercle avec une bordure bleue de 2 px

image = cv2.circle (image, center_coordinates, rayon, couleur, épaisseur)

 
# Afficher l`image
cv2.imshow (window_name, image) 

Sortie :

Exemple n° 2 :
Utilisation de -1 px épaisseur pour remplir le rectangle-method/">rectangle de rouge.

# Programme Python pour expliquer la méthode cv2.circle ()

 
# import cv2

import cv2 

 
# chemin

chemin = r `C : UsersRajnishDesktoppythonengineeringgeeks.png`

 
# Lire l`image en mode par défaut

image = cv2.imread (chemin)

 
# Nom de la fenêtre dans laquelle l`image est affichée

window_name = `Image`

  
# Coordonnées du centre

center_coordinates = ( 120 , 100 )

  
# Rayon du cercle

rayon = 30

  < br> # Rouge dans BGR

color = ( 0 , 0 , 255 )

¬ †
# Epaisseur de trait -1 px

épaisseur = - 1

 
# En utilisant le méthode cv2.circle ()
# Dessiner un -1 px cercle rouge

image = cv2.circle (image, center_coordinates, rayon, couleur, épaisseur)

< code class = "undefined spaces">  
# Afficher une image
cv2.imshow (nom_fenêtre, image )¬†

 

Sortie :

Shop

Learn programming in R: courses

$

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers

News


Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method