27 lines
743 B
Python
27 lines
743 B
Python
from pickletools import uint8
|
|
|
|
import cv2 as cv
|
|
import numpy as np
|
|
# setup a write 3 channel image
|
|
img = np.ones((512, 512, 3), dtype=np.uint8) * 255
|
|
|
|
# define callback function
|
|
def draw_circle(event, x, y, flags, param):
|
|
if event == cv.EVENT_LBUTTONDOWN:
|
|
# draw a black 20px radius circle on img
|
|
cv.circle(img, (x, y), 20, (0, 0, 0), -1)
|
|
|
|
# setup a window named 'show_img'
|
|
cv.namedWindow('show_img')
|
|
# set a mouse callback
|
|
cv.setMouseCallback('show_img', draw_circle)
|
|
while (1):
|
|
cv.imshow('show_img', img)
|
|
pressedKey = cv.waitKey(5)
|
|
if pressedKey == ord('q'):
|
|
break
|
|
elif pressedKey == ord('s'):
|
|
cv.imwrite("mouse_draw_circle.jpg", img);
|
|
print("save success")
|
|
cv.destroyAllWindows()
|