OpenCV
文章平均质量分 96
CV
你会魔法吗✧(≖ ◡ ≖✿)
黎知音 -- 月光在六点半
展开
-
OpenCV 初步接触
OpenCV是一个开源的计算机视觉库,可以处理图像和视频数据。它包含了超过2500个优化过的算法,用于对图像和视频进行处理,包括目标识别、面部识别、运动跟踪、立体视觉等。pip install opencv-contrib-python 直接安装编译好的 OpenCV 贡献库原创 2023-10-30 06:15:00 · 1031 阅读 · 12 评论 -
OpenCV 处理图像
自然界:红色、绿色和蓝色,即==三基色==(按照一定的比例混合构成。)要区别于美术中的==三原色==:红黄蓝。在RGB的色彩空间之中是以R,G,B的顺序存储的,然而在OpenCV中的通道是B,G,R即:在处理图像的时候,需要对指定的图像通道顺序进行转换。除此以外,还可以根据需要对不同色彩空间的图像进行类型转换(灰度图像处理为二值图像,将彩色图像处理灰度图)原创 2023-11-01 08:20:20 · 2231 阅读 · 16 评论 -
OpenCV 基本的加法运算
先学会基本的加法运算:OpenCV加法和Numpy加法之间存在差异。OpenCV的加法是饱和操作,而Numpy添加是模运算。选择使用哪种方法取决于具体的需求和预期效果。如果希望保留图像的动态范围,可以使用加号运算符;如果想要增强图像的亮度,可以使用`cv2.add()`函数。原创 2023-11-03 01:49:22 · 1147 阅读 · 15 评论 -
OpenCV 图像运算(权重、逻辑运算、掩码、位分解、数字水印、马赛克)
图像的权重、逻辑运算、掩码、位分解、数字水印。总的来说,`plane = ((img >> i) & 1) * 255`更适合于可视化位平面的内容,不适用于重新复原图片;而`plane = ((img >> i) & 1) * (2**i)`更适合于保留位平面的原始权重。最低有效位信息隐藏技术在图像隐写领域得到广泛应用,可以用于保护敏感信息的安全传输。然而,需要注意的是,最低有效位信息隐藏是一种相对简单的隐藏方法,容易被一些隐写分析算法所检测。因此,在实际应用中,可能需要采用更复杂的隐写技术以提高隐蔽原创 2023-11-07 22:06:00 · 3474 阅读 · 31 评论 -
OpenCV 色彩空间转换
一种抽象的数学模型,以不同的维度和表示方式,色彩学中,人们建立了多种色彩模型,以一维、二维、三维甚至四维空间坐标来表示某一色彩,这种坐标系统所能定义的色彩范围即色彩空间。我们经常用到的色彩空间主要有RGB、CMYK、Lab等。```pythonGray = 0.299*R + 0.587*G + 0.114*B```这种权重分布是基于人眼对不同颜色的敏感度来设计的。人眼对绿色的敏感度最高,红色次之,蓝色最低。这是因为人眼中的视网膜上有三种类型的颜色感受器,分别对红色、绿色和蓝色光最为敏感。原创 2023-11-13 00:29:10 · 2449 阅读 · 28 评论 -
OpenCV 几何变换(缩放、翻转、仿射变换、透视、重映射)
CV几何变换(缩放、翻转、仿射变换、透视、重映射)仿射变换是一种线性变换,可以通过矩阵的乘法来描述。这种变换在保持图像中的平行性和直线性方面非常强大,因此在图像处理和计算机视觉领域得到广泛应用。它能够实现平移、旋转、缩放和剪切等操作,并且在变换后仍然能够保持空间关系的几何特性。原创 2023-11-22 16:04:31 · 3629 阅读 · 35 评论 -
OpenCV 图像处理一(阈值处理、形态学操作【连通性,腐蚀和膨胀,开闭运算,礼帽和黑帽,内核】)
(阈值处理、形态学操作【连通性,腐蚀和膨胀,开闭运算,礼帽和黑帽,内核】)(1)在图像处理和计算机视觉中,"连通性"是指像素之间的连接性或相互关联的性质。它涉及到图像中的区域、对象或像素集合之间的连接关系。(2)腐蚀: 就像沙滩上的海水慢慢侵蚀沙堆,使其变小。膨胀: 就像在沙堆上添加一些沙子,使其变得更大。’(3)开运算和闭运算是将腐蚀和膨胀按照一定的次序进行处理。 但这两者并不是可逆的,即先开后闭并不能得到原来的图像。(4)礼帽和黑帽运算是形态学操作,它们通常用于图像的细节增强和物体检测原创 2023-11-30 09:44:39 · 9329 阅读 · 54 评论 -
OpenCV 图像处理二(滤除噪声干扰)
图像平滑处理的目标之一就是消除或减少这些噪声,使图像更清晰、更易于分析或更适合后续处理。不同的平滑技术可以在一定程度上模糊图像,从而有助于平滑图像中的不规则性或噪声,使图像看起来更加均匀和连续。虽然图像平滑处理的主要目的是滤除噪声,但它也可能会在某些情况下减少图像的细节或轮廓。因此,在应用图像平滑处理时,需要根据特定的应用场景和需求权衡噪声滤除和图像细节保留之间的平衡。当 vmin 和 vmax 的值相同时,颜色映射范围被压缩为一个点,即单一值。在灰度图像的情况下,这意味着只有一个颜色被用于表示所有。原创 2023-12-10 03:58:37 · 5625 阅读 · 55 评论 -
OpenCV 图像处理三(图像梯度--边缘检测【图像梯度、Sobel 算子、 Scharr 算子、 Laplacian 算子、Canny 边缘检测】)
边缘检测并非万能,边缘检测虽然能够检测出边缘,但边缘是不连续的,检测到的边缘并不是一个整体。图像轮廓是指将边缘连接起来形成的一个整体,用于后续的计算。为了避免信息丢失,推荐使用更高的数据类型来进行计算,例如 cv2.CV_64F,即64位浮点型。这样,计算结果将以浮点数的形式保存,包括负数。然后,可以通过取绝对值或其他操作将其映射为需要的数据类型,例如 cv2.CV_8U,即8位无符号整数。原创 2023-12-22 04:09:33 · 3684 阅读 · 31 评论 -
OpenCV 图像处理四(轮廓查找、画线、矩特征、轮廓)
**边缘检测**用于发现图像中灰度变化明显的区域,但这些边缘通常是不连续的。为了构成完整的对象轮廓,需要将这些边缘连接在一起。为了进行**轮廓查找**,首先需要将图像转换为二值图像,其中对象是白色,背景是黑色。这可以通过预先进行阈值分割或者边缘检测处理来实现。轮廓查找通常会修改原始图像,因此为了保留原始图像的完整性,我们通常会在原始图像的一份拷贝上进行操作。在给轮廓标注序号的过程中,使用了OpenCV的 `cv.putText()` 函数。这个函数用于在图像上绘制文本原创 2023-12-31 17:10:53 · 2462 阅读 · 16 评论 -
OpenCV实战 -- 维生素药片的检测记数
OpenCV实战 -- 维生素药片的检测记数。读取图片形态学处理二值化提取轮廓获取轮廓索引,并筛选所需要的轮廓画出轮廓,显示计数原创 2023-12-31 21:02:17 · 3827 阅读 · 39 评论 -
OpenCV 图像处理五(直方图处理)
直方图是一种统计图,显示了图像中每个灰度级别(或颜色通道)的像素数量。通过分析图像的直方图,可以获得关于图像对比度、亮度和颜色分布等方面的重要信息直方图均衡化就是对图像进行非线性拉伸,重新分配图像像素值,使一定灰度范围内的像素数量大致相同。这种方法提高图像整体的对比度,特别是有用数据的像素值分布比较接近时。。原创 2024-01-18 19:51:44 · 2228 阅读 · 8 评论 -
OpenCV 图像处理六(傅里叶变换、模板匹配与霍夫变换)
傅里叶变换任何周期函数都可以表示为不同频率的正弦函数和的形式。在模板匹配中,通常将图像A称为输入图像或源图像,将图像B称为模板图像或搜索图像。模板匹配的目标是在输入图像中寻找与模板图像最相似的部分。霍夫变换(Hough Transform)是一种用于在数字图像中检测几何形状的技术。用于检测直线形状,还有其他如圆、椭圆等。原创 2024-02-05 19:37:02 · 3014 阅读 · 20 评论