IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> opencv—python同时提取多种颜色,以红,绿,蓝为例 -> 正文阅读

[人工智能]opencv—python同时提取多种颜色,以红,绿,蓝为例


import cv2 as cv
#step1.查找对应hsv的值:以红色为例
red = np.uint8([[[0,0,255]]])
hsv_red = cv.cvtColor(red, cv.COLOR_BGR2HSV)
print(hsv_red)

#step2.利用调色板找合适的范围
def nothing(x):
    pass

img = cv.imread("multicolor.jpg")
hsv = cv.cvtColor(img, cv.COLOR_BGR2HSV)
cv.imshow("source", img)
# cv.namedWindow("test", cv.WINDOW_NORMAL)
cv.namedWindow("mask_blue",cv.WINDOW_NORMAL)
#find lower_blue parameters
cv.createTrackbar("H_lower", "mask_blue", 170, 180, nothing)
cv.createTrackbar("S_lower", "mask_blue", 100, 255, nothing)
cv.createTrackbar("V_lower", 'mask_blue', 100, 255, nothing)
#find upper_blue parameters
cv.createTrackbar("H_upper", "mask_blue", 10, 180, nothing)
cv.createTrackbar("S_upper", "mask_blue", 255, 255, nothing)
cv.createTrackbar("V_upper", 'mask_blue', 255, 255, nothing)
while (1):
    if cv.waitKey(1) == 27:
        break
    h_lower = cv.getTrackbarPos("H_lower", "mask_blue")
    s_lower = cv.getTrackbarPos("S_lower", "mask_blue")
    v_lower = cv.getTrackbarPos("V_lower", "mask_blue")
    
    h_upper = cv.getTrackbarPos("H_upper", "mask_blue")
    s_upper = cv.getTrackbarPos("S_upper", "mask_blue")
    v_upper = cv.getTrackbarPos("V_upper", "mask_blue")
    
    lower_blue = np.array([h_lower, s_lower, v_lower])
    upper_blue = np.array([h_upper, s_upper, v_upper])
 
    mask_red1 = cv.inRange(hsv, lower_blue, upper_blue)
    lower_red = np.array([170, 50, 0])
    upper_red = np.array([180, 255,255])
    mask_red2 = cv.inRange(hsv, lower_red, upper_red)
    mask = mask_red1 + mask_red2
    
    cv.imshow("mask_blue", mask_red1)
    cv.imshow("mask_red", mask_red2)
    cv.imshow("mask", mask)
    
#step3.利用找到的值做mask,可以得到结果:有点偏差,不修改了,思路就是这样
#merge all the masks
img = cv.imread("multicolor.jpg")
hsv = cv.cvtColor(img, cv.COLOR_BGR2HSV)
lower_blue= np.array([100, 50, 50])
upper_blue = np.array([140, 255,255])
mask_blue = cv.inRange(hsv, lower_blue, upper_blue)

lower_green= np.array([10, 110, 0])
upper_green = np.array([80, 255,255])
mask_green = cv.inRange(hsv, lower_green, upper_green)

lower_red1 = np.array([0, 10, 10])
upper_red1 = np.array([10, 255,255])
mask_red1 = cv.inRange(hsv, lower_red1, upper_red1)
lower_red2 = np.array([170, 50, 0])
upper_red2 = np.array([180, 255,255])
mask_red2 = cv.inRange(hsv, lower_red2, upper_red2)
mask_red = mask_red1 + mask_red2

mask = mask_blue + mask_red + mask_green
res = cv.bitwise_and(img, img, mask = mask)
cv.imshow('source', img)
cv.imshow('test', res)


cv.waitKey(0)
cv.destroyAllWindows()

?

?

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-10-16 19:38:58  更:2021-10-16 19:41:20 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/27 10:37:27-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码