Теперь вы можете легко рисовать на изображениях OpenCV. Для этого вам нужно вызвать функцию setMouseCallback(‘window_name’,image_name)
в opencv. После этого вы можете легко использовать функцию обратного вызова мыши для ваших изображений. Затем вам нужно обнаружить cv2.EVENT_LBUTTONDOWN, cv2.EVENT_MOUSEMOVE and cv2.EVENT_LBUTTONUP
события. Проверяя правильное логическое условие, вы должны решить, как вам нравится взаимодействовать с изображениями OpenCV.
def paint_draw(event,former_x,former_y,flags,param):
global current_former_x,current_former_y,drawing, mode
if event==cv2.EVENT_LBUTTONDOWN:
drawing=True
current_former_x,current_former_y=former_x,former_y
elif event==cv2.EVENT_MOUSEMOVE:
if drawing==True:
if mode==True:
cv2.line(image,(current_former_x,current_former_y),(former_x,former_y),(0,0,255),5)
current_former_x = former_x
current_former_y = former_y
elif event==cv2.EVENT_LBUTTONUP:
drawing=False
if mode==True:
cv2.line(image,(current_former_x,current_former_y),(former_x,former_y),(0,0,255),5)
current_former_x = former_x
current_former_y = former_y
return former_x,former_y
Подробнее см. Ссылку: Как рисовать на изображениях OpenCV и сохранять изображение
Выход: