python用鼠标获取图像任一点的坐标和像素值

简介: python用鼠标获取图像任一点的坐标和像素值

定义获取鼠标像素

import cv2


def get_pixel(event, x, y, flags, param):
    if event == cv2.EVENT_LBUTTONDOWN:
        # 输出像素值和坐标信息到控制台
        print('Pixel value at (', x, ', ', y, ') :', img[y, x])

        # 在图像上绘制坐标和像素值
        font = cv2.FONT_HERSHEY_SIMPLEX
        txt = 'Pixel value: ' + str(img[y, x]) + ' Coord: (' + str(x) + ', ' + str(y) + ')'
        cv2.putText(img, txt, (x, y), font, 0.5, (255, 0, 0), 2)


读取图像

img = cv2.imread('20230511200757_11189948_1_1.jpg')


显示图像并设置鼠标事件回调函数

cv2.namedWindow('Image')
cv2.setMouseCallback('Image', get_pixel)

while True:
    # 显示图像
    cv2.imshow('Image', img)

    # 等待用户按下键盘上的任意键
    k = cv2.waitKey(0)
    if k == ord('q'):
        break

cv2.destroyAllWindows()


完整代码

import cv2


def get_pixel(event, x, y, flags, param):
    if event == cv2.EVENT_LBUTTONDOWN:
        # 输出像素值和坐标信息到控制台
        print('Pixel value at (', x, ', ', y, ') :', img[y, x])

        # 在图像上绘制坐标和像素值
        font = cv2.FONT_HERSHEY_SIMPLEX
        txt = 'Pixel value: ' + str(img[y, x]) + ' Coord: (' + str(x) + ', ' + str(y) + ')'
        cv2.putText(img, txt, (x, y), font, 0.5, (255, 0, 0), 2)


# 读取图像
img = cv2.imread('20230511200757_11189948_1_1.jpg')

# 显示图像并设置鼠标事件回调函数
cv2.namedWindow('Image')
cv2.setMouseCallback('Image', get_pixel)

while True:
    # 显示图像
    cv2.imshow('Image', img)

    # 等待用户按下键盘上的任意键
    k = cv2.waitKey(0)
    if k == ord('q'):
        break

cv2.destroyAllWindows()


结果展示


使用方法

鼠标点击图中任意一点, 对话框会返回改点坐标和像素值。如果想在图中展示,点击一点后按ES即可。退出按“q"!

当然你可以标记触发点,可以继续改进!

相关文章
|
3月前
|
机器学习/深度学习 算法 TensorFlow
动物识别系统Python+卷积神经网络算法+TensorFlow+人工智能+图像识别+计算机毕业设计项目
动物识别系统。本项目以Python作为主要编程语言,并基于TensorFlow搭建ResNet50卷积神经网络算法模型,通过收集4种常见的动物图像数据集(猫、狗、鸡、马)然后进行模型训练,得到一个识别精度较高的模型文件,然后保存为本地格式的H5格式文件。再基于Django开发Web网页端操作界面,实现用户上传一张动物图片,识别其名称。
111 1
动物识别系统Python+卷积神经网络算法+TensorFlow+人工智能+图像识别+计算机毕业设计项目
|
17天前
|
机器学习/深度学习 人工智能 算法
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别
宠物识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了37种常见的猫狗宠物种类数据集【'阿比西尼亚猫(Abyssinian)', '孟加拉猫(Bengal)', '暹罗猫(Birman)', '孟买猫(Bombay)', '英国短毛猫(British Shorthair)', '埃及猫(Egyptian Mau)', '缅因猫(Maine Coon)', '波斯猫(Persian)', '布偶猫(Ragdoll)', '俄罗斯蓝猫(Russian Blue)', '暹罗猫(Siamese)', '斯芬克斯猫(Sphynx)', '美国斗牛犬
99 29
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别
|
1月前
|
机器学习/深度学习 TensorFlow 算法框架/工具
利用Python和TensorFlow构建简单神经网络进行图像分类
利用Python和TensorFlow构建简单神经网络进行图像分类
59 3
|
2月前
|
存储 JSON API
Python| 如何使用 DALL·E 和 OpenAI API 生成图像(1)
Python| 如何使用 DALL·E 和 OpenAI API 生成图像(1)
69 7
Python| 如何使用 DALL·E 和 OpenAI API 生成图像(1)
|
3月前
|
机器学习/深度学习 人工智能 算法
植物病害识别系统Python+卷积神经网络算法+图像识别+人工智能项目+深度学习项目+计算机课设项目+Django网页界面
植物病害识别系统。本系统使用Python作为主要编程语言,通过收集水稻常见的四种叶片病害图片('细菌性叶枯病', '稻瘟病', '褐斑病', '稻瘟条纹病毒病')作为后面模型训练用到的数据集。然后使用TensorFlow搭建卷积神经网络算法模型,并进行多轮迭代训练,最后得到一个识别精度较高的算法模型,然后将其保存为h5格式的本地模型文件。再使用Django搭建Web网页平台操作界面,实现用户上传一张测试图片识别其名称。
142 22
植物病害识别系统Python+卷积神经网络算法+图像识别+人工智能项目+深度学习项目+计算机课设项目+Django网页界面
|
2月前
|
Python
【10月更文挑战第15天】「Mac上学Python 26」小学奥数篇12 - 图形变换与坐标计算
本篇将通过 Python 和 Cangjie 双语实现图形变换与坐标计算。这个题目帮助学生理解平面几何中的旋转、平移和对称变换,并学会用编程实现坐标变化。
67 1
|
3月前
|
机器学习/深度学习 人工智能 算法
鸟类识别系统Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+ResNet50算法模型+图像识别
鸟类识别系统。本系统采用Python作为主要开发语言,通过使用加利福利亚大学开源的200种鸟类图像作为数据集。使用TensorFlow搭建ResNet50卷积神经网络算法模型,然后进行模型的迭代训练,得到一个识别精度较高的模型,然后在保存为本地的H5格式文件。在使用Django开发Web网页端操作界面,实现用户上传一张鸟类图像,识别其名称。
119 12
鸟类识别系统Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+ResNet50算法模型+图像识别
|
2月前
|
JSON API 数据格式
Python| 如何使用 DALL·E 和 OpenAI API 生成图像(2)
Python| 如何使用 DALL·E 和 OpenAI API 生成图像(2)
58 0
Python| 如何使用 DALL·E 和 OpenAI API 生成图像(2)
|
2月前
|
监控 Python
用 Python 操作你的鼠标和键盘
用 Python 操作你的鼠标和键盘
50 2
|
4月前
|
机器学习/深度学习 人工智能 TensorFlow
利用Python和TensorFlow实现简单图像识别
【8月更文挑战第31天】在这篇文章中,我们将一起踏上一段探索人工智能世界的奇妙之旅。正如甘地所言:“你必须成为你希望在世界上看到的改变。” 通过实践,我们不仅将学习如何使用Python和TensorFlow构建一个简单的图像识别模型,而且还将探索如何通过这个模型理解世界。文章以通俗易懂的方式,逐步引导读者从基础到高级,体验从编码到识别的整个过程,让每个人都能在AI的世界中看到自己的倒影。
下一篇
DataWorks