Drawing and Writing on Image with OpenCV Python

Drawing Line

# Draw a diagonal blue line with thickness of 5 px
cv.line(img,(0,0),(511,511),(255,0,0),5)

Drawing Rectangle

cv.rectangle(img,(384,0),(510,128),(0,255,0),3)

Drawing Circle

cv.circle(img,(447,63), 63, (0,0,255), -1)

Drawing Ellipse

cv.ellipse(img,(256,256),(100,50),0,0,180,255,-1)

Drawing Polygon

pts = np.array([[10,5],[20,30],[70,20],[50,10]], np.int32)
pts = pts.reshape((-1,1,2))
cv.polylines(img,[pts],True,(0,255,255))

Adding Text to Images

font = cv.FONT_HERSHEY_SIMPLEX
cv.putText(img,'OpenCV',(10,500), font, 4,(255,255,255),2,cv.LINE_AA)

References
https://docs.opencv.org/4.0.1/dc/da5/tutorial_py_drawing_functions.html
https://www.youtube.com/watch?v=U6uIrq2eh_o&list=PLQVvvaa0QuDdttJXlLtAJxJetJcqmqlQq&index=3
https://pythonprogramming.net/drawing-writing-python-opencv-tutorial/
https://github.com/mhdr/OpenCV/tree/master/003