
opencv
文章平均质量分 69
深入AI和计算机视觉,涵盖图像和视频操作、物体和人脸检测、OpenCV深度学习模块等等。
编码小哥
嵌入式系统研发工程师
展开
-
图像卷积初识
是一种通过滑动窗口(卷积核)对图像进行局部计算的操作。卷积核是一个小的矩阵,它在图像上逐行逐列滑动,将每个位置的像素值与卷积核对应位置的值相乘后求和,得到新的像素值。这个过程可以实现多种效果,如模糊、锐化、边缘检测等。3.运行代码后,将显示原始图像和应用不同卷积核后的效果对比图。通过调整卷积核的数值,你可以实现更多自定义的图像处理效果。函数可以轻松实现卷积操作。不同的卷积核设计会产生不同的效果。作用:增强图像边缘,使图像更清晰。作用:检测图像中的水平边缘。作用:平滑图像,减少噪声。替换为你自己的图像路径。原创 2025-05-10 12:18:13 · 347 阅读 · 0 评论 -
直方图反向投影
直方图反向投影(Histogram Back Projection)是一种基于概率的图像处理技术,它通过将目标特征的直方图反向映射到输入图像上,生成一个概率分布图,用于定位目标在图像中的位置。直方图反向投影在OpenCV中的典型应用是与MeanShift/CamShift算法结合实现目标跟踪,其优势在于对目标形变和部分遮挡具有鲁棒性。2. 概率表示 :生成图像中每个像素值表示该位置符合目标直方图的概率。1. 反向映射 :将直方图统计结果反向投影到原图像空间。4. 积分直方图 :对视频流应用积分图加速。原创 2025-05-05 22:54:16 · 261 阅读 · 0 评论 -
直方图比较
直方图比较是通过数学方法计算两个直方图之间的相似度或差异度的技术。在计算机视觉中,直方图是对图像特征(如颜色、梯度方向等)的统计分布表示,比较两个直方图的相似性可以反映图像内容的相似程度。直方图比较的优势在于计算高效(不受旋转/轻微形变影响),但需注意它缺乏空间信息,常与其他特征结合使用。2. 目标识别与匹配 当物体的颜色分布具有特征性时(如红色消防车),直方图比较能辅助识别。4. 颜色校正验证 在图像处理流水线中,通过比较输入输出图像的直方图差异来验证处理效果。值范围[-1,1],1表示完全匹配。原创 2025-05-05 22:36:09 · 532 阅读 · 0 评论 -
OpenCV直方图均衡化全面解析:从灰度到彩色图像的增强技术
OpenCV提供 自适应直方图均衡化(CLAHE,Contrast Limited Adaptive Histogram Equalization),将图像划分为多个小块(如8x8像素),对每个小块独立均衡化,并通过对比度限制(默认阈值40)避免噪声放大。为避免颜色失真,需将彩色图像转换到 亮度-色度分离的颜色空间,如YUV(YCrCb)或HSV,仅对亮度通道(Y或V)进行均衡化,保留色度通道(UV或HS)不变。- 多尺度处理:对分辨率极高的图像,可先下采样处理,再上采样恢复,提升计算效率。原创 2025-04-14 23:12:28 · 1338 阅读 · 1 评论 -
opencv对直方图的计算和绘制
【欢迎关注,学习更多实用的编程方法和技巧】原创 2025-01-18 23:23:26 · 1236 阅读 · 0 评论 -
用opencv实现像素统计
【欢迎关注,学习更多实用的编程方法和技巧】在 OpenCV 中,统计图像的像素信息(如像素值分布、最大值、最小值、均值等)是常见的操作。原创 2025-01-05 23:11:46 · 591 阅读 · 0 评论 -
opencv图像直方图
【欢迎关注,学习更多实用的编程方法和技巧】原创 2024-12-29 22:16:32 · 487 阅读 · 0 评论 -
像素的访问和算术运算
【欢迎关注,学习更多实用的编程方法和技巧】原创 2024-12-29 21:23:22 · 711 阅读 · 0 评论 -
OpenCV调整图像亮度和对比度
【欢迎关注,学习更多实用的编程方法和技巧】原创 2024-12-29 21:56:35 · 822 阅读 · 0 评论 -
深入解析Mat对象:计算机视觉中的核心数据结构
【欢迎关注编码小哥,学习更多实用的编程方法和技巧】在计算机视觉和图像处理领域,数据的表示和管理至关重要。OpenCV(Open Source Computer Vision Library)作为一个广泛使用的计算机视觉库,其核心数据结构之一就是Mat对象。Mat对象不仅用于存储图像数据,还提供了丰富的操作接口,使得图像处理变得高效而灵活。原创 2024-12-22 22:56:33 · 800 阅读 · 0 评论 -
opencv中的色彩空间
RGB色彩空间是最常用的色彩空间之一,主要用于显示设备(如显示器、电视等)。在RGB色彩空间中,颜色由红色、绿色和蓝色三个分量的强度组合而成。每个分量的值通常在0到255之间。优点: 直观,易于理解,广泛应用于图像捕捉和显示。缺点: 对于某些图像处理任务(如颜色分割),RGB空间可能不够直观。原创 2024-12-22 15:41:12 · 886 阅读 · 0 评论 -
通过opencv加载、保存视频
是 OpenCV 中用于访问视频捕捉属性的一些常量,用于获取或设置捕捉的帧的宽度、高度、帧率、总帧数。不同版本的 OpenCV 可能会有所不同,尤其是在较新版本中,常量名称可能已被更改。检查使用的版本文档以确认常量名称是否正确。确保在编译时,已经正确链接了 OpenCV 库,以便使用相关的函数和常量。通过追溯opencv源码可以知道,我这里的原因属于第2种,版本不同,常量名称不同。用摄像头和从URL获取视频流都运行测试过了,都是可以的,此处就不贴图了。在 OpenCV 4.x 或更高版本中,常量可能在。原创 2024-12-22 15:17:53 · 742 阅读 · 0 评论 -
opencv读取和保存图像
/两种方法读取图像返回图像数据,默认情况下,通过imread读取的图像是BGR三通道彩色图像。OpenCv源码地址:https://github.com/opencv/opencv。//imwrite 函数第二个参数flags的取值范围以及作用。//imread 第二个参数flags取值范围以及作用。【欢迎关注编码小哥,学习更多实用的编程方法和技巧】imwrite函数原型。imread函数原型。原创 2024-12-15 23:53:20 · 1132 阅读 · 0 评论 -
ubuntu16.04环境轻松安装和应用opencv4.9.0(基于源码编译)
位置:https://codeload.github.com/opencv/opencv/zip/refs/tags/4.9.0 [跟随至新的 URL]正在连接 codeload.github.com (codeload.github.com)|20.205.xxx.xxx|:443... 已连接。正在解析主机 codeload.github.com (codeload.github.com)... 20.205.xxx.xxx。已发出 HTTP 请求,正在等待回应... 200 OK。原创 2024-01-28 23:34:41 · 2701 阅读 · 2 评论 -
C++结合OpenCV实现视频播放器
if (cv::waitKey(30) >= 0) { // 等待用户按键,如果按下任意键则退出循环。if (cv::waitKey(30) >= 0) { // 等待用户按键,如果按下任意键则退出循环。// 释放视频文件资源。原创 2024-01-31 22:54:00 · 1678 阅读 · 0 评论