当前位置: 首页 > news >正文

python识别图片中指定颜色的图案并保存为图片

示例代码:

def chuli(color):import cv2import numpy as np# 定义颜色名称到HSV阈值范围的映射color_thresholds = {'red': ([0, 100, 100], [10, 255, 255], [160, 100, 100], [180, 255, 255]),'yellow': ([20, 100, 100], [30, 255, 255]),'blue': ([90, 100, 100], [130, 255, 255])}# 读取图片image = cv2.imread('captcha.png')# 将图片从BGR转换到HSV颜色空间hsv_image = cv2.cvtColor(image, cv2.COLOR_BGR2HSV)# 获取用户输入的颜色名称color_name = color.lower()# 检查颜色名称是否在映射中if color_name in color_thresholds:# 获取该颜色的HSV阈值范围thresholds = color_thresholds[color_name]# 创建掩码mask = Nonefor i in range(0, len(thresholds), 2):lower = np.array(thresholds[i])upper = np.array(thresholds[i + 1])mask_color = cv2.inRange(hsv_image, lower, upper)if mask is None:mask = mask_colorelse:mask = cv2.bitwise_or(mask, mask_color)# 对掩码进行膨胀和腐蚀mask = cv2.dilate(mask, None, iterations=2)mask = cv2.erode(mask, None, iterations=2)# 使用掩码提取原图中的颜色区域result = cv2.bitwise_and(image, image, mask=mask)# 保存结果为图片result_filename = 'detected.png'cv2.imwrite(result_filename, result)print(f"Result saved as {result_filename}")else:print("Invalid color name. Please choose from 'red', 'yellow', or 'blue'.")chuli('blue')

 效果展示:

相关文章:

python识别图片中指定颜色的图案并保存为图片

示例代码: def chuli(color):import cv2import numpy as np# 定义颜色名称到HSV阈值范围的映射color_thresholds {red: ([0, 100, 100], [10, 255, 255], [160, 100, 100], [180, 255, 255]),yellow: ([20, 100, 100], [30, 255, 255]),blue: ([90, 100, 100], [1…...

【git命令行】git pull冲突如何使用stash暂存,不提交当前工作的情况下临时保存修改

1、git add . 暂存区暂存 2、git stash save "message" 保存当前工作目录的临时状态,并将其存储为一个新的stash 3 、git pull 重新拉取 4、**git stash pop**吐出之前暂存的改动,git stash clear 清空所有暂存...

浏览器输入http形式网址后自动跳转https解决方法

一、问题描述 使用浏览器 网上冲浪 时会遇到一个情况: 在浏览器中输入“http域名”后会自动变成“https 域名”的形式,此时“https 域名”的网站可能已停止对外提供服务了,这时会出现如下不友好的网页提示: 二、处理方法&#x…...

BertTokenizerFast 和 BertTokenizer 的区别

BertTokenizerFast 和 BertTokenizer 都是用于对文本进行标记化的工具,主要用于处理和输入文本数据以供 BERT 模型使用。它们都属于 HuggingFace 的 transformers 库。 主要区别 底层实现: BertTokenizer: 这是一个使用纯 Python 实现的标记器&#xff…...

【update 更新数据语法合集】.NET开源ORM框架 SqlSugar 系列

系列文章目录 🎀🎀🎀 .NET开源 ORM 框架 SqlSugar 系列 🎀🎀🎀 文章目录 系列文章目录前言 🍃一、实体对象更新1.1 单条与批量1.2 不更新某列1.3 只更新某列1.4 NULL列不更新1.5 无主键/指定列…...

测试人员面试需要掌握的内容

测试人员面试需要掌握的内容 1、在公司的测试流程是什么? 产品经理确认本次版本的需求,召开需求评审会,进行估时排期,需求和时间都确定之后,UI出设计图,开发人员进行开发,测试人员编写测试用例…...

git 新建分支并推到远程分支

在git或者码云上创建一个项目管理,已经存在主分支,现在需要创建一个其他分支; 具体操作: 1. 查看分支情况 git branch 2. 查看分支状态 git status 3. 一次性创建并切换到本地分支 git checkout -b dev 分步骤创建和切换&…...

【Uniapp-Vue3】showLoading加载和showModal模态框示例

一、showLoading加载 uni.showLoading({ title:"标题", // 其他配置 }); uni.hideLoading(); showLoading开启后不会自动关闭,只能手动配置uni.hideLoading() 来关闭加载框。 二、showModel模态框 uni.showModel({ title:"标题", // 其他配置 …...

PythonOpenCV图片识别

在windows下面,使用python opencv 进行识别,获取到坐标。 依赖安装: pip install opencv-python pip install numpy pip install pyautogui pip install pywin32代码: import cv2 import numpy as np import pyautogui import o…...

构建优雅、高效的 Nodejs 命令行工具 - Archons

目录 项目简介安装基本用法样例创建一个简单的命令行工具使用archons上下文创建进度条 最后 项目地址: https://github.com/noctisynth/archons Bug反馈或功能请求:https://github.com/noctisynth/archons/issues 项目简介 Archons意思是“执政官”,我使…...

你喜欢用什么编辑器?

电脑工作者和程序员所使用的文本编辑器通常需要具备高效率、易用性以及对代码友好等特点,包括语法高亮、自动完成、多文件同时编辑、查找替换、版本控制集成等功能。以下是几个广受开发者欢迎且实用性较强的文本编辑器: Visual Studio Code(V…...

鸿蒙报错Init keystore failed: keystore password was incorrect

报错如下: > hvigor ERROR: Failed :entry:defaultSignHap... > hvigor ERROR: Tools execution failed. 01-13 16:35:55 ERROR - hap-sign-tool: error: Init keystore failed: keystore password was incorrect * Try the following: > The key stor…...

【Flink】Flink内存管理

Flink内存整体结构图: JobManager内存管理 JVM 进程总内存(Total Process Memory)Flink总内存(Total Flink Memory):JVM进程总内存减去JVM Metaspace(元空间)和JVM Overhead(运行时开销)上图解释: JVM进程总内存为2G;JVM运行时开销(JVM Overh…...

JVM:ZGC详解(染色指针,内存管理,算法流程,分代ZGC)

1,ZGC(JDK21之前) ZGC 的核心是一个并发垃圾收集器,所有繁重的工作都在Java 线程继续执行的同时完成。这极大地降低了垃圾收集对应用程序响应时间的影响。 ZGC为了支持太字节(TB)级内存,设计了基…...

Docker常用命令大全

Docker容器相关命令: 创建并启动容器: docker run:创建一个新的容器并运行一个命令。例如:docker run -d -p 8080:80 nginx这将后台(-d)运行一个Nginx容器,并映射宿主机的8080端口到容器的80端口。 列出容器&#x…...

(12)springMVC文件的上传

SpringMVC文件上传 首先是快速搭建一个springMVC项目 新建项目mvn依赖导入添加webMoudle添加Tomcat运行环境.在配置tomcat时ApplicationContext置为"/"配置Artfact的lib配置WEB-INF配置文件(记得添加乱码过滤)配置springmvc-servlet文件&…...

在Linux系统中无网络安装Nginx并配置负载均衡

在Linux系统中无网络安装Nginx并配置负载均衡 在现代的Web开发和运维中,Nginx作为一个高性能的HTTP和反向代理服务器,被广泛应用于负载均衡、静态资源服务、SSL终端等场景。然而,在某些特殊环境下,服务器可能无法访问互联网&…...

Android车机DIY开发之软件篇(三)编译Automotive OS错误(1)

Android车机DIY开发之软件篇(三)编译Automotive OS错误(1) 问题 FAILED: out/soong/build.ninja cd “KaTeX parse error: Expected EOF, got & at position 49: …soong_build")" &̲& BUILDER"PWD/KaTeX parse error: Expected EOF, got & …...

基于网络爬虫技术的网络新闻分析【源码+文档+部署讲解】

目 录 1 绪论 1.1 论文研究背景与意义 1.2 论文研究内容 2 系统需求分析 2.1 系统需求概述 2.2 系统需求分析 2.2.1 系统功能要求 2.2.2 系统IPO图 2.2 系统非功能性需求分析 3系统概要设计 3.1 设计约束 3.1.1需求约束 3.1.2设计策略 3.1.3 技术实现 3.3 模块…...

uniapp区域滚动——上划进行分页加载数据(详细教程)

##标题 用来总结和学习,便于自己查找 文章目录 一、为什么scroll-view?          1.1 区域滚动页面滚动?          1.2 代码? 二、分页功能?          2.1 如何实现&#xff…...

别再搞混了!Docker部署Redis Stack时,选redis/redis-stack还是redis/redis-stack-server?

Redis Stack镜像选择指南:开发与生产环境的最佳实践 在容器化技术普及的今天,Docker已成为部署Redis Stack的首选方案。但面对官方提供的两个相似镜像——redis/redis-stack和redis/redis-stack-server,许多开发者常陷入选择困境。本文将深入…...

用Python手把手实现ALNS算法:从TSP路径规划到代码实战(附完整源码)

用Python手把手实现ALNS算法:从TSP路径规划到代码实战 旅行商问题(TSP)是组合优化中最经典的NP难问题之一,如何在合理时间内找到近似最优解一直是算法研究的重点。自适应大邻域搜索(ALNS)作为LNS算法的增强…...

XXL-SSO用户画像构建:基于认证数据的用户行为分析

XXL-SSO用户画像构建:基于认证数据的用户行为分析 XXL-SSO是一款分布式单点登录框架,通过统一的认证中心实现多系统间的用户身份共享。在实际应用中,XXL-SSO积累的认证数据不仅可用于身份验证,还能通过用户画像构建实现精细化运营…...

【Python原生AOT编译终极蓝图】:2026架构设计图首次解密,3大不可逆技术拐点已至

第一章:Python原生AOT编译2026架构全景概览Python原生AOT(Ahead-of-Time)编译在2026年已演进为一套融合语言语义、运行时契约与硬件感知能力的统一基础设施。其核心目标是消除解释器开销、保障启动确定性、支持无依赖二进制分发,并…...

ESP32-WROOM-32E开发板快速上手:5分钟搞定Arduino环境配置与LED灯控制

ESP32-WROOM-32E开发板极速入门:5分钟玩转LED控制 刚拿到ESP32-WROOM-32E开发板时,最让人兴奋的莫过于立刻让它"活"起来。作为乐鑫推出的明星级物联网开发板,它集Wi-Fi/蓝牙双模、丰富外设接口和超低功耗于一身,而Ardui…...

技术解析 | 【ECCV2022】MuLUT:多级查找表协同优化在图像超分中的高效实践

1. MuLUT技术背景与核心价值 图像超分辨率(Super-Resolution)技术一直是计算机视觉领域的热门研究方向,简单来说就是让低分辨率图像变清晰的过程。传统基于卷积神经网络(CNN)的方法虽然效果不错,但计算量大…...

5分钟搞定!Windows直接安装APK的终极免费方案

5分钟搞定!Windows直接安装APK的终极免费方案 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 你是否曾想在Windows电脑上直接安装安卓应用,却因…...

VVC/VTM编码分析进阶:如何利用DecoderAnalyserApp深度解读CU划分与语法元素

VVC/VTM编码分析进阶:如何利用DecoderAnalyserApp深度解读CU划分与语法元素 在视频编码领域,VVC(Versatile Video Coding)作为新一代标准,其编码效率相比前代HEVC有显著提升。而VTM(VVC Test Model&#xf…...

别再死磕手册了!用Vivado 2023.1手把手教你配置Aurora 64B/66B IP核(附完整复位时序图)

Vivado 2023.1实战:Aurora 64B/66B IP核配置全流程解析 在FPGA高速通信领域,Aurora协议凭借其轻量级、高带宽的特性成为众多工程师的首选。但对于初学者而言,官方文档PG074中复杂的复位时序和参数配置往往让人望而生畏。本文将基于Vivado 202…...

光伏电站电流传感器选型与应用全解析

摘要:本文深入探讨光伏电站中电流传感器的选型要点与应用技术。阐述了电流传感器在光伏系统中的重要性,分析其不同技术原理及特点,并结合光伏电站实际工况,从量程、精度、隔离耐压等方面详细介绍选型方法,同时分享了电…...