如何通过在图像上进行鼠标的点击来获取像素坐标值?(附源码)

OpenCV杂谈_10


一. 需要做的前期准备

  1. 环境配置:
    Python版本:3.9.0
    功能包:opencv-python(4.5.2.52)
  2. 提前准备一张用于获取像素坐标的图像
  3. 一个用的顺手的IDE(本人推荐Pycharm)

二. 源码如下

"""通过鼠标点击图像中的任意位置,在图像上写出鼠标点击位置的像素坐标。并在完成点击任务后,通过敲击【Esc】键退出程序"""
import cv2


def Click(event, x, y, flags, param):
    if event == cv2.EVENT_LBUTTONDOWN:
        xy = "%d,%d" % (x, y)
        cv2.circle(img, (x, y), 1, (255, 0, 0), thickness=-1)
        cv2.putText(img, xy, (x, y), cv2.FONT_HERSHEY_PLAIN,
                    1.0, (0, 0, 0), thickness=1)
        cv2.imshow("image", img)


img = cv2.imread('SSDTarget.png')
cv2.namedWindow("image")
cv2.setMouseCallback("image", Click)
while True:
    cv2.imshow("image", img)
    if cv2.waitKey(0) & 0xFF == 27:
        break
cv2.destroyAllWindows()

三. 结果展示

如何通过在图像上进行鼠标的点击来获取像素坐标值?(附源码)_第1张图片

如有问题,敬请指正。欢迎转载,但请注明出处。

你可能感兴趣的:(opencv,python,计算机视觉,图像识别)