python_opencv用线段画封闭矩形的实例

yipeiwu_com5年前Python基础

如下所示:

def draw_circle(event,x,y,flags,param):
  global ix,iy,drawing,mode,start_x,start_y

  if event == cv2.EVENT_LBUTTONDOWN:
    if drawing == False:
      start_x, start_y = x,y
      ix,iy = x,y
      drawing = True
    elif drawing == True:
      cv2.line(img,(ix,iy),(x,y),(0,255,0),3)
      ix, iy = x, y
    print(drawing)
  elif event == cv2.EVENT_MBUTTONDOWN:
    drawing = False

    cv2.line(img, (ix, iy), (start_x, start_y), (0, 255, 0), 3)
    print(drawing)


  #
  # elif event == cv2.EVENT_RBUTTONUP:
  #   cv2.line(img,(ix,iy),(x,y),(0,255,0),3)
# Next we have to bind this mouse callback function to OpenCV # # window. In the main loop, we should set a keyboard binding for
# key ‘m' to toggle between rectangle and circle.
img = np.zeros((512,512,3), np.uint8)
cv2.namedWindow('image')
cv2.setMouseCallback('image',draw_circle)

while(1):
  cv2.imshow('image',img)
  k = cv2.waitKey(1) & 0xFF
  if k == ord('m'): # 切换模式
    mode = not mode
  elif k == 27:
    break

cv2.destroyAllWindows()

以上这篇python_opencv用线段画封闭矩形的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Flask使用Pyecharts在单个页面展示多个图表的方法

Flask使用Pyecharts在单个页面展示多个图表的方法

在Flask页面展示echarts,主要有两种方法: 方法1、原生echarts方法 自己在前端引入echarts.js文件、自己创建div、自己初始化echarts对象、自己从官网复制...

python实现通过pil模块对图片格式进行转换的方法

本文实例讲述了python实现通过pil模块对图片格式进行转换的方法。分享给大家供大家参考。具体分析如下: python的pil模块相当的智能,如果你需要对图片格式进行转换,比如jpg转...

python Pandas如何对数据集随机抽样

python Pandas如何对数据集随机抽样

摘要:有时候我们只需要数据集中的一部分,并不需要全部的数据。这个时候我们就要对数据集进行随机的抽样。pandas中自带有抽样的方法。 应用场景: 我有10W行数据,每一行都11列的属性...

Python输出\u编码将其转换成中文的实例

Python输出\u编码将其转换成中文的实例

爬取了下小猪短租的网站出租房信息但是输出的时候是这种: 百度了下。python2.7在window上的编码确实是个坑 解决如下 如果是个字典的话要先将其转成字符串 导入json库 然后...

Python分割训练集和测试集的方法示例

数据集介绍 使用数据集Wine,来自UCI  。包括178条样本,13个特征。 import pandas as pd import numpy as np df_wi...