news 2026/5/1 7:24:03

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/4/28 20:28:00

数据结构入门:二叉排序树的删除算法

有序二叉树&#xff08;二叉搜索树&#xff09;的核心特性是左子树节点值 < 根节点值 < 右子树节点值&#xff0c;删除节点时需要保证删除后树的有序性不被破坏。一、为什么删除有序二叉树节点这么麻烦&#xff1f;普通二叉树删除节点只需要断开引用&#xff0c;但有序二…

作者头像 李华
网站建设 2026/4/29 10:18:27

[USACO08MAR] Land Acquisition G题解

P2900 [USACO08MAR] Land Acquisition G 题目描述 Farmer John 准备扩大他的农场&#xff0c;眼前他正在考虑购买 NNN 块长方形的土地。 如果 FJ 单买一块土地&#xff0c;价格就是土地的面积。但他可以选择并购一组土地&#xff0c;并购的价格为这些土地中最大的长乘以最大的宽…

作者头像 李华
网站建设 2026/4/19 17:55:58

构建高效质量防线:持续测试成熟度模型解析与实践指南

1 持续测试的时代背景与核心价值在敏捷开发与DevOps成为主流的今天&#xff0c;软件发布周期从"月"缩短到"天"甚至"小时"&#xff0c;传统测试方法已难以适应快速交付的需求。持续测试&#xff08;Continuous Testing&#xff09;作为DevOps的关…

作者头像 李华
网站建设 2026/4/27 23:38:50

2025 低代码平台选型指南

随着低代码市场的快速发展&#xff0c;各类低代码平台层出不穷&#xff0c;市场上已形成国内企业级全栈信创类、国际主流型、开源型等多个阵营。面对众多选择&#xff0c;企业很容易陷入 “盲目跟风”“只看价格”“追求功能全面” 等选型误区&#xff0c;最终导致所选平台与业…

作者头像 李华
网站建设 2026/4/23 18:37:34

DateBook v4.9.5 – 功能丰富多语言约会社交 WordPress 主题

DateBook 是世界上唯一一个将国家、地区和城市翻译成多种语言的约会主题。集成了订阅或会员资格功能&#xff0c;无需购买任何额外的订阅或会员插件。 使用集成的 DateBook 订阅通过 PayPal 或 Paystack 网关接受付款&#xff0c;或通过安装支付网关插件通过 WooCommerce 接受…

作者头像 李华