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 统计代码行数简单实例
May 04 Python
python实现基于SVM手写数字识别功能
May 27 Python
Python numpy 提取矩阵的某一行或某一列的实例
Apr 03 Python
pandas 对每一列数据进行标准化的方法
Jun 09 Python
python求最大连续子数组的和
Jul 07 Python
python调用opencv实现猫脸检测功能
Jan 15 Python
Python 中包/模块的 `import` 操作代码
Apr 22 Python
python中dict使用方法详解
Jul 17 Python
python3 中的字符串(单引号、双引号、三引号)以及字符串与数字的运算
Jul 18 Python
python中web框架的自定义创建
Sep 08 Python
python创建ArcGIS shape文件的实现
Dec 06 Python
python操作toml文件的示例代码
Nov 27 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
PHP新手上路(二)
2006/10/09 PHP
PHP 无限分类三种方式 非函数的递归调用!
2011/08/26 PHP
ThinkPHP关联模型操作实例分析
2012/09/23 PHP
PHP利用二叉堆实现TopK-算法的方法详解
2017/04/24 PHP
JQuery中dataGrid设置行的高度示例代码
2014/01/03 Javascript
用js控制组织结构图可以任意拖拽到指定位置
2014/01/17 Javascript
checkbox勾选判断代码分析
2014/06/11 Javascript
javascript中hasOwnProperty() 方法使用指南
2015/03/09 Javascript
jQuery实现信息提示框(带有圆角框与动画)效果
2015/08/07 Javascript
jQuery实现的类似淘宝网站搜索框样式代码分享
2015/08/24 Javascript
基于jquery实现鼠标滚轮驱动的图片切换效果
2015/10/26 Javascript
整理Javascript数组学习笔记
2015/11/29 Javascript
jquery ajax结合thinkphp的getjson实现跨域的方法
2016/06/06 Javascript
单行 JS 实现移动端金钱格式的输入规则
2017/05/22 Javascript
JavaScript定义及输出螺旋矩阵的方法详解
2017/12/01 Javascript
使用异步组件优化Vue应用程序的性能
2019/04/28 Javascript
React中使用外部样式的3种方式(小结)
2019/05/28 Javascript
解决vue使用vant下拉框van-dropdown-item 绑定title值不变问题
2020/08/05 Javascript
如何搭建一个完整的Vue3.0+ts的项目步骤
2020/10/18 Javascript
python 中文乱码问题深入分析
2011/03/13 Python
Python制作简单的网页爬虫
2015/11/22 Python
深入解析Python中的线程同步方法
2016/06/14 Python
djano一对一、多对多、分页实例代码
2019/08/16 Python
python实现图片插入文字
2019/11/26 Python
解决django中form表单设置action后无法回到原页面的问题
2020/03/13 Python
详解pandas映射与数据转换
2021/01/22 Python
CSS3 仿微信聊天小气泡实例代码
2017/04/05 HTML / CSS
英国排名第一的最新设计师品牌手表独立零售商:TIC Watches
2016/09/24 全球购物
运动会口号8字
2014/06/07 职场文书
初三学生语文考试作弊检讨书
2014/12/14 职场文书
2015年初中生自我评价范文
2015/03/03 职场文书
公司费用报销管理制度
2015/08/04 职场文书
使用 JavaScript 制作页面效果
2021/04/21 Javascript
MySQL 自定义变量的概念及特点
2021/05/13 MySQL
Django使用redis配置缓存的方法
2021/06/01 Redis
Python中使用tkFileDialog实现文件选择、保存和路径选择
2022/05/20 Python