news 2026/1/30 11:51:26

opencv灰度图与彩色图的处理

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
opencv灰度图与彩色图的处理

1.图像读取与转换

import cv2
color_img = cv2.imread('image.jpg')
gray_img = cv2.imread('image.jpg', cv2.IMREAD_GRAYSCALE)
cv2.IMREAD_COLOR : 彩色图像(默认)
cv2.IMREAD_GRAYSCALE : 灰度图像
cv2.IMREAD_UNCHANGED : 包含alpha通道2.彩色图与灰度图转换

(1)彩色图转灰度图
gray_from_color = cv2.cvtColor(color_img, cv2.COLOR_BGR2GRAY)

(2)灰度图转"伪彩色图"(单通道转三通道,但仍然是灰度)
pseudo_color = cv2.cvtColor(gray_img, cv2.COLOR_GRAY2BGR)

(3) BGR转RGB(用于显示)
rgb_img = cv2.cvtColor(color_img, cv2.COLOR_BGR2RGB)

(4) BGR转HSV
hsv_img = cv2.cvtColor(color_img, cv2.COLOR_BGR2HSV)

(5)BGR转LAB
lab_img = cv2.cvtColor(color_img, cv2.COLOR_BGR2LAB)
显示图像
cv2.imshow('Color Image', color_img)
cv2.imshow('Gray Image', gray_img)

等待按键
cv2.waitKey(0)
cv2.destroyAllWindows()

3.通道分离与合并

def channel_operations():
img = cv2.imread('image.jpg')

(1)分离BGR通道
b, g, r = cv2.split(img)

(2)显示各个通道
cv2.imshow('Blue Channel', b)
cv2.imshow('Green Channel', g)
cv2.imshow('Red Channel', r)

(3) 创建单通道图像(只显示红色)
red_only = cv2.merge([np.zeros_like(b), np.zeros_like(g), r])

(4) 合并通道
merged = cv2.merge([b, g, r])

cv2.imshow('Red Only', red_only)
cv2.imshow('Merged', merged)
cv2.waitKey(0)

4.识别

def license_plate_preprocess():
读取图像
img = cv2.imread('car.jpg')

转换为灰度图
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

高斯模糊去噪
blurred = cv2.GaussianBlur(gray, (5, 5), 0)

边缘检测
edges = cv2.Canny(blurred, 50, 150)

形态学操作(连接边缘)
kernel = np.ones((3,3), np.uint8)
closed = cv2.morphologyEx(edges, cv2.MORPH_CLOSE, kernel)

寻找轮廓
contours, _ = cv2.findContours(closed, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)

在原图上绘制轮廓
result = img.copy()
cv2.drawContours(result, contours, -1, (0, 255, 0), 2)

显示处理过程
cv2.imshow('Original', img)
cv2.imshow('Gray', gray)
cv2.imshow('Edges', edges)
cv2.imshow('Result', result)
cv2.waitKey(0)

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/1/30 7:14:53

01.需要了解的五种机器学习类型

需要了解的五种机器学习类型 [机器学习] (ML) 技术几乎可以推动所有行业的决策,从医疗保健到人力资源再到金融,以及计算机[视觉]、[大型语言模型] (LLM)、语音识别、自动驾驶汽车等各种应用场景。 然而,机器学习的影响力日益增长也并非没有复杂问题。支撑 ML 技术的验证和训…

作者头像 李华
网站建设 2026/1/30 2:24:29

02.什么是机器学习算法?

什么是机器学习算法? 机器学习算法是一种程序和数学逻辑,通过这种程序和逻辑,“机器”(人工智能 (AI) 系统)学习识别训练数据中的模式,并将这种模式识别应用于对新数据进行准确预测。机器学习算法是现代 AI 和数据科学的基本构建块,从简单的线性回归模型到尖端深度学习技…

作者头像 李华
网站建设 2026/1/29 23:35:26

基于元学习的 Agent 快速适应:少样本场景下的环境迁移学习

基于元学习的 Agent 快速适应:少样本场景下的环境迁移学习 一、背景与问题定义 在强化学习(Reinforcement Learning, RL)和智能 Agent 领域,一个长期存在的核心问题是:Agent 在新环境中往往需要大量交互样本才能学会有…

作者头像 李华
网站建设 2026/1/29 1:48:38

PayPal复制支付宝

出品I下海fallsea撰文I胡不知2025年12月15日,美国金融圈被一则声明打破平静——有“美版支付宝”之称的PayPal正式向联邦存款保险公司(FDIC)和犹他州金融机构部提交申请,计划成立名为“PayPal Bank”的工业贷款公司(In…

作者头像 李华
网站建设 2026/1/30 2:14:41

【MongoDB实战】8.2 简易商品管理系统-核心功能实现

文章目录 简易商品管理系统(MongoDB + Flask 实现) 一、环境准备 1. 安装依赖 2. 配置文件(.env) 二、核心代码实现 整体结构 三、核心功能说明 1. 数据层(ProductDB) 2. 业务层(ProductService) 3. 接口层(Flask 路由) 四、测试示例 1. 启动服务 2. 接口测试(curl …

作者头像 李华