opencv+python实现鼠标点击图像,输出该点的RGB和HSV值


Posted in Python onJune 02, 2020

我就废话不多说了,大家还是直接看代码吧!

import cv2
 
# 读取图片并缩放方便显示
img = cv2.imread('D:/6.jpg')
height, width = img.shape[:2]
size = (int(width * 0.2), int(height * 0.2))
# 缩放
img = cv2.resize(img, size, interpolation=cv2.INTER_AREA)
 
# BGR转化为HSV
HSV = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
 
# 鼠标点击响应事件
def getposHsv(event, x, y, flags, param):
 if event==cv2.EVENT_LBUTTONDOWN:
  print("HSV is", HSV[y, x])
 
def getposBgr(event, x, y, flags, param):
 if event==cv2.EVENT_LBUTTONDOWN:
  print("Bgr is", img[y, x])
 
cv2.imshow("imageHSV", HSV)
cv2.imshow('image', img)
cv2.setMouseCallback("imageHSV", getposHsv)
cv2.setMouseCallback("image", getposBgr)
cv2.waitKey(0)

补充知识:python opencv查看图片中任一点的像素 BGR值 灰度值 HSV值

如下所示:

# -*- coding:utf-8 -*-
  import cv2
  
  img = cv2.imread('11_13/120002.jpg')
  gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
  hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
  
  def mouse_click(event, x, y, flags, para):
    if event == cv2.EVENT_LBUTTONDOWN: # 左边鼠标点击
      print('PIX:', x, y)
      print("BGR:", img[y, x])
      print("GRAY:", gray[y, x])
      print("HSV:", hsv[y, x])
  
  if __name__ == '__main__':
    cv2.namedWindow("img")
    cv2.setMouseCallback("img", mouse_click)
    while True:
      cv2.imshow('img', img)
      if cv2.waitKey() == ord('q'):
        break
    cv2.destroyAllWindows()

Windows下有画图软件可以直接查看图片的RGB值,但是没办法查看HSV值,这样一个小程序就可以帮你做到。

附一张opencv下HSV范围图片:

opencv+python实现鼠标点击图像,输出该点的RGB和HSV值

以上这篇opencv+python实现鼠标点击图像,输出该点的RGB和HSV值就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现一个简单的MySQL类
Jan 07 Python
python基于windows平台锁定键盘输入的方法
Mar 05 Python
Python的爬虫包Beautiful Soup中用正则表达式来搜索
Jan 20 Python
python函数的5种参数详解
Feb 24 Python
Python实现感知机(PLA)算法
Dec 20 Python
python opencv实现任意角度的透视变换实例代码
Jan 12 Python
谈谈python中GUI的选择
Mar 01 Python
通过python将大量文件按修改时间分类的方法
Oct 17 Python
在Django中URL正则表达式匹配的方法
Dec 20 Python
Python使用微信itchat接口实现查看自己微信的信息功能详解
Aug 22 Python
pandas 缺失值与空值处理的实现方法
Oct 12 Python
django的autoreload机制实现
Jun 03 Python
简单介绍一下pyinstaller打包以及安全性的实现
Jun 02 #Python
Python几种常见算法汇总
Jun 02 #Python
opencv-python的RGB与BGR互转方式
Jun 02 #Python
解决pyinstaller打包运行程序时出现缺少plotly库问题
Jun 02 #Python
Pytorch 使用opnecv读入图像由HWC转为BCHW格式方式
Jun 02 #Python
基于pycharm实现批量修改变量名
Jun 02 #Python
pytorch读取图像数据转成opencv格式实例
Jun 02 #Python
You might like
我的论坛源代码(四)
2006/10/09 PHP
ThinkPHP模板引擎之导入资源文件方法详解
2014/06/18 PHP
php计算年龄精准到年月日
2015/11/17 PHP
浅析PHP中的闭包和匿名函数
2017/12/25 PHP
详解php curl带有csrf-token验证模拟提交方法
2018/04/18 PHP
php查看一个变量的占用内存的实例代码
2020/03/29 PHP
javascript下4个跨浏览器必备的函数
2010/03/07 Javascript
Javascript的getYear、getFullYear、getUTCFullYear异同分享
2011/11/30 Javascript
jQuery版仿Path菜单效果
2011/12/15 Javascript
基于javascript的JSON格式页面展示美化方法
2014/07/02 Javascript
深入理解JavaScript系列(50):Function模式(下篇)
2015/03/04 Javascript
javascript操作Cookie(设置、读取、删除)方法详解
2015/03/18 Javascript
jQuery轻松实现表格的隔行变色和点击行变色的实例代码
2016/05/09 Javascript
浅析javascript中的Event事件
2016/12/09 Javascript
jQuery使用JSONP实现跨域获取数据的三种方法详解
2017/05/04 jQuery
详解vue-router和vue-cli以及组件之间的传值
2017/07/04 Javascript
你可能不知道的JSON.stringify()详解
2017/08/17 Javascript
Vue-Router进阶之滚动行为详解
2017/09/13 Javascript
Vue从TodoList中学父子组件通信
2019/02/05 Javascript
有关vue 开发钉钉 H5 微应用 dd.ready() 不执行问题及快速解决方案
2020/05/09 Javascript
如何区分vue中的v-show 与 v-if
2020/09/08 Javascript
openlayers 3实现车辆轨迹回放
2020/09/24 Javascript
[01:18:43]2014 DOTA2华西杯精英邀请赛5 24 iG VS DK
2014/05/25 DOTA
python线程的几种创建方式详解
2019/08/29 Python
python logging 日志的级别调整方式
2020/02/21 Python
Europcar德国:全球汽车租赁领域的领导者
2018/08/15 全球购物
美国第一大药店连锁机构:Walgreens(沃尔格林)
2019/10/10 全球购物
在C#中如何实现多态
2014/07/02 面试题
《孔繁森》教学反思
2014/04/17 职场文书
幼儿园社区活动总结
2014/07/07 职场文书
安全环保演讲稿
2014/08/28 职场文书
大学生实习推荐信
2015/03/27 职场文书
接待员岗位职责范本
2015/04/15 职场文书
巴黎圣母院读书笔记
2015/06/26 职场文书
小型企业的绩效考核制度模板
2019/11/21 职场文书
Nginx隐藏式跳转(浏览器URL跳转后保持不变)
2022/04/07 Servers