色块识别

import cv2
import numpy as npframeWidth = 640
frameHeight = 480
cap = cv2.VideoCapture(0)#获取摄像头
cap.set(3,640)
cap.set(4,480)
cap.set(10,100)#调节亮度myColors = [[2,107,0,19,255,255],[133,56,0,159,156,255],[57,76,0,100,255,255]]#颜色列表#识别色彩
def findColor(img,myColors):imgHSV = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)lower = np.array(myColors[0][0:3])#下限upper = np.array(myColors[0][3:6])#上限mask = cv2.inRange(imgHSV,lower,upper)cv2.imshow("img",mask)while True:success, img = cap.read()findColor(img,myColors)cv2.imshow("video",img)if cv2.waitKey(1) & 0xFF == ord('q'):break

这个参数能hsv橘色

加上边缘检测,用的是之前调用的弧

import cv2
import numpy as npframeWidth = 640
frameHeight = 480
cap = cv2.VideoCapture(0)#获取摄像头
cap.set(3,640)
cap.set(4,480)
cap.set(10,100)#调节亮度myColors = [[2,107,0,19,255,255],[133,56,0,159,156,255],[57,76,0,100,255,255]]#颜色列表#识别色彩
def findColor(img,myColors):imgHSV = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)for color in myColors:lower = np.array(color[0:3])#下限upper = np.array(color[3:6])#上限mask = cv2.inRange(imgHSV,lower,upper)x,y = getContours(mask)cv2.circle(imgResult,(x,y),10,(255,0,0),cv2.FILLED)cv2.imshow("str(color[i])",mask)def getContours(img):contours,hierarchy = cv2.findContours(img,cv2.RETR_EXTERNAL,cv2.CHAIN_APPROX_NONE)#检测外部轮廓x,y,w,h = 0,0,0,0for cnt in contours:area = cv2.contourArea(cnt)if area>300:cv2.drawContours(imgResult,cnt,-1,(255,0,0),3)peri = cv2.arcLength(cnt,True)approx = cv2.approxPolyDP(cnt,0.02*peri,True)x ,y,w,h = cv2.boundingRect(approx)#xy对象的宽和高return x+w//2,ywhile True:success, img = cap.read()imgResult = img.copy()findColor(img,myColors)cv2.imshow("video",imgResult)if cv2.waitKey(1) & 0xFF == ord('q'):break

opencv+python实战日记 入门篇(八)色块识别相关推荐

  1. opencv+python实战日记 入门篇(二)调整图片的尺寸、裁剪图像

    目录 调整图片的尺寸 裁剪图像 调整图片的尺寸 打印出来的(496, 488, 3)表示的是图片的长宽,3表示的是RGB通道. import cv2 import numpy as npimg = c ...

  2. 树莓派python开发教程_树莓派教程(基于python编程)--入门篇

    原标题:树莓派教程(基于python编程)--入门篇 一:格式化SD卡 SD卡插入读卡器连接电脑,使用SDFormatter对SD卡进行格式化 (重装烧录也要进行着SD卡格式化操作) 二:下载官方镜像 ...

  3. 【Python】Python实战从入门到精通之七 -- 教你深入理解异常处理

    本文是<Python实战从入门到精通>系列之第7篇 [Python]Python实战从入门到精通之一 -- 教你深入理解Python中的变量和数据类型 [Python]Python实战从入 ...

  4. 【Python】Python实战从入门到精通之六 -- 教你读取文件

    本文是<Python实战从入门到精通>系列之第6篇 [Python]Python实战从入门到精通之一 -- 教你深入理解Python中的变量和数据类型 [Python]Python实战从入 ...

  5. 【Python】Python实战从入门到精通之五 -- 教你使用文件写入

    本文是<Python实战从入门到精通>系列之第5篇 [Python]Python实战从入门到精通之一 -- 教你深入理解Python中的变量和数据类型 [Python]Python实战从入 ...

  6. 【Python】Python实战从入门到精通之四 -- 教你使用Python中字典

    本文是Python实战–从入门到精通系列的第四篇文章: Python实战从入门到精通第一讲–Python中的变量和数据类型 Python实战从入门到精通第二讲–Python中列表操作详解 Python ...

  7. 【Python】Python实战从入门到精通之三 -- 教你使用Python中条件语句

    本文是Python实战–从入门到精通系列的第三篇文章: Python实战从入门到精通第1讲–Python中的变量和数据类型 Python实战从入门到精通第2讲–Python中列表操作详解 Python ...

  8. 【Python】Python实战从入门到精通之二 -- 教你使用Python中列表操作

    本文是Python实战–从入门到精通系列的第二篇文章: [Python]Python实战从入门到精通之一 – 教你深入理解Python中的变量和数据类型 Python实战从入门到精通之二 – 教你使用 ...

  9. 【Python】Python实战从入门到精通之一 -- 教你深入理解Python中的变量和数据类型

    本文是Python实战–从入门到精通系列的第一篇文章: Python实战从入门到精通之一 – 教你深入理解Python中的变量和数据类型 文章目录 1.变量 1.1 变量命名规则 1.2 变量名称错误 ...

最新文章

  1. Hive将查询结果保存到另一张表中
  2. 基于dreamweaver软件设计和开发一网站_基于 abp vNext 和 .NET Core 开发博客项目 Blazor 实战系列(一)...
  3. 信号量进程同步与互斥
  4. v-for 循环 @click 动态传参(参数动态)
  5. MySQL连不上:ERROR 1698 (28000): Access denied for user 'root'@'localhost'
  6. python之math_cmath
  7. ctypes 传递opencv二值化图像给C++函数
  8. Marlin关于如何接收Gcode指令的详解
  9. 计算机科学与技术学科带头人,计算机专业学科带头人—陆玉昌教授
  10. python交易是什么意思_py交易是什么意思?
  11. lucene3.0.3中的Spanquery和Spans介绍
  12. 摄像机(Camera)
  13. 用Hostwinds快速搭建Wordpress网站教程
  14. scilab 求微分_SCILAB第六章微积分应用.PDF
  15. python使用matplotlib绘图
  16. 我推荐过 100 多次的 5 本好书
  17. 买新电脑要考虑的一些问题
  18. 计算机主板电池电压,解决办法:如果计算机主板的电池电压不稳定,该怎么办?...
  19. MT4/MQL4入门到精通EA教程第四课-MQL语言常用函数(四)-K线取值常用函数
  20. 如何通过饮食来提高免疫力

热门文章

  1. 我们去首都机场为火星人送行
  2. Hololens 二维码识别
  3. Huffman树(哈夫曼树)、哈夫曼编码、最优前缀码、前缀码
  4. 无文件攻击与病毒样本分析-1-4-2-无文件攻击之恶意脚本:WScript和CScript
  5. win10输入法不能切换_Win10系统快捷键不能切换输入法的解决办法
  6. 设置flashget下载任务完成后自动调用avast!扫描文件
  7. 高效学习 端正学习态度
  8. 【嵌入式】---- RCC
  9. 开始刷leetcode(1.两数之和)
  10. 泰山OFFICE技术讲座:奇怪的Times New Roman字体的高度