python3.6+opencv3.4实现鼠标交互查看图片像素


Posted in Python onFebruary 26, 2018

在利用opencv进行图片处理时,经常需要查看图片关心区域或位置的像素数值,苦于没有应手的小软件,我用python3.6+opencv3.4简单编制一个小工具,供大家使用。

流程

1.建立标准的鼠标交互函数,当鼠标在图像上移动时,即时显示鼠标位置的像素数值(opencv像素为BGR格式)。
2.建立图像窗口,绑定鼠标回调函数。
3.按下‘q'键,退出。
4.仅需15行代码,就是这么简单。

代码

# -*- coding: utf-8 -*-
import cv2
img= cv2.imread('006.png')          #定义图片位置
img= cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)  #转化为灰度图
def onmouse(event, x, y, flags, param):   #标准鼠标交互函数
  if event==cv2.EVENT_MOUSEMOVE:      #当鼠标移动时
    print(img[y,x])           #显示鼠标所在像素的数值,注意像素表示方法和坐标位置的不同
def main():
  cv2.namedWindow("img")          #构建窗口
  cv2.setMouseCallback("img", onmouse)   #回调绑定窗口
  while True:               #无限循环
    cv2.imshow("img",img)        #显示图像
    if cv2.waitKey() == ord('q'):break  #按下‘q'键,退出
  cv2.destroyAllWindows()         #关闭窗口
if __name__ == '__main__':          #运行
  main()

彩色图运行效果

python3.6+opencv3.4实现鼠标交互查看图片像素 

灰度图运行效果

python3.6+opencv3.4实现鼠标交互查看图片像素

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python记录详细调用堆栈日志的方法
May 05 Python
Python实现带百分比的进度条
Jun 28 Python
Python搭建FTP服务器的方法示例
Jan 19 Python
深入浅析Python中的yield关键字
Jan 24 Python
浅谈python标准库--functools.partial
Mar 13 Python
解决webdriver.Chrome()报错:Message:'chromedriver' executable needs to be in Path
Jun 12 Python
Python集中化管理平台Ansible介绍与YAML简介
Jun 12 Python
python threading和multiprocessing模块基本用法实例分析
Jul 25 Python
详解Python 4.0 预计推出的新功能
Jul 26 Python
对python中的*args与**kwgs的含义与作用详解
Aug 28 Python
python 插入日期数据到Oracle实例
Mar 02 Python
Python使用文件操作实现一个XX信息管理系统的示例
Jul 02 Python
python微信跳一跳系列之自动计算跳一跳距离
Feb 26 #Python
python微信跳一跳系列之色块轮廓定位棋盘
Feb 26 #Python
tensorflow入门之训练简单的神经网络方法
Feb 26 #Python
基于Python实现的微信好友数据分析
Feb 26 #Python
TensorFlow 实战之实现卷积神经网络的实例讲解
Feb 26 #Python
使用django-crontab实现定时任务的示例
Feb 26 #Python
Django中的CBV和FBV示例介绍
Feb 25 #Python
You might like
使用TinyButStrong模板引擎来做WEB开发
2007/03/16 PHP
单点登录 Ucenter示例分析
2013/10/29 PHP
PHP获取photoshop写入图片文字信息的方法
2015/03/31 PHP
基于PHP实现短信验证码接口(容联运通讯)
2016/09/06 PHP
完美解决php 导出excle的.csv格式的数据时乱码问题
2017/02/18 PHP
ThinkPHP实现转换数据库查询结果数据到对应类型的方法
2017/11/16 PHP
js模拟类继承小例子
2010/07/17 Javascript
jQuery图片切换插件jquery.cycle.js使用示例
2014/06/16 Javascript
上传图片预览JS脚本 Input file图片预览的实现示例
2014/10/23 Javascript
javascript简单实现等比例缩小图片的方法
2016/07/27 Javascript
Bootstrap popover用法详解
2016/12/22 Javascript
Javascript 实现全屏滚动实例代码
2016/12/31 Javascript
JavaScript中的call和apply的用途以及区别
2017/01/11 Javascript
深入理解Javascript中的观察者模式
2017/02/20 Javascript
JS 中LocalStorage和SessionStorage的使用
2017/08/17 Javascript
jQuery Datatable 多个查询条件自定义提交事件(推荐)
2017/08/24 jQuery
Windows下使用Nodejs运行js的方法
2017/09/02 NodeJs
vue+Java后端进行调试时解决跨域问题的方式
2017/10/19 Javascript
小程序如何支持使用 async/await详解
2019/09/12 Javascript
python练习程序批量修改文件名
2014/01/16 Python
python和C语言混合编程实例
2014/06/04 Python
解决python3 urllib中urlopen报错的问题
2017/03/25 Python
Python字符串处理实现单词反转
2017/06/14 Python
Java实现的执行python脚本工具类示例【使用jython.jar】
2018/03/29 Python
如何安装并使用conda指令管理python环境
2019/07/10 Python
django框架基于queryset和双下划线的跨表查询操作详解
2019/12/11 Python
django 外键创建注意事项说明
2020/05/20 Python
浅谈tensorflow中dataset.shuffle和dataset.batch dataset.repeat注意点
2020/06/08 Python
浅谈Keras的Sequential与PyTorch的Sequential的区别
2020/06/17 Python
python 实现性别识别
2020/11/21 Python
欧洲著名的珠宝和手表网上商城:uhrcenter
2017/04/10 全球购物
一套VC试题
2015/01/23 面试题
计算机专业自荐信
2014/05/24 职场文书
低碳生活的宣传标语
2014/06/23 职场文书
2015年新教师工作总结
2015/04/28 职场文书
golang实现一个简单的websocket聊天室功能
2021/10/05 Golang