自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(101)
  • 资源 (2)
  • 收藏
  • 关注

原创 C3与C2f模块介绍与代码

顺序:CSPNet->C3->C2fC2C2fCSP(Cross Stage Partial-connections,跨阶段部分连接) 模块是一种跨阶段部分连接的模块,它能够有效地整合不同阶段的特征表示,并使模型在训练过程中更加关注重要的部分.特点:降低计算量的同时保证精度看着这跨阶段三个字,肯定又是Skip操作,目的为了解决梯度消失问题,同时丰富多尺度特征,提高检测等任务的效果。CSP结构通过将输入特征分为两部分,然后在这两个部分之间进行交叉连接的方法来提高神经网络的性能。

2024-09-05 08:45:24 998

原创 直方图规定化

至此,介绍完了图像的灰度直方图以及直方图均衡化和规定化,这里进行一个总结图像的灰度直方图能够很直观的展示图像中灰度级的整体分布情况,对图像的后续处理有很好的指导作用。直方图的均衡化的是将一幅图像的直方图变平,使各个灰度级的趋于均匀分布,这样能够很好的增强图像对比度。直方图均衡化是一种自动化的变换,仅需要输入图像,就能够确定图像的变换函数。但是直方图的均衡化操作也有一定的缺陷,在均衡化的过程中对图像中的数据不加选择,这样有可能会增强图像的背景;变换后图像的灰度级减少,有可能造成某些细节的消失;

2024-09-05 08:43:31 923

原创 直方图均衡化

直方图均衡化微信公众号:幼儿园的学霸个人的学习笔记,关于OpenCV,关于机器学习, …。问题或建议,请公众号留言;直方图均衡化(Histogram Equalization) 又称直方图平坦化,实质上是对图像进行非线性拉伸,重新分配图像象元值,使一定灰度范围内象元值的数量大致相等。这样,原来直方图中间的峰顶部分对比度得到增强,而两侧的谷底部分对比度降低,输出图像的直方图是一个较平的分段...

2024-09-04 19:44:26 692

原创 图像缩放操作

void resize(InputArray src, //输入图像OutputArray dst, //输出图像Size dsize, //输出图尺寸double fx=0, //沿x轴缩系数(宽度方向)double fy=0, //沿y轴缩放系(高度方)int interpolation=INTER_LINEAR //插值方式dsize表示输出图像的大小,如果为0,则输出图像大小按下式计:dsizSizeroundfx∗srccolsro。

2024-09-04 19:43:16 855

原创 路径聚合网络PANet(Path AggregationNetwork)介绍

路径聚合网络(Path Aggregation Network,简称PAN,PANet)是一种深度学习网络结构,用于图像分类和目标检测任务。它采用了多尺度特征融合和路径聚合的方法,能够有效地提高模型的性能和准确率,PAN网络结构包括主干网络和特征金字塔网络两部分,其中特征金字塔网络用于生成多尺度特征图,主干网络则用于将这些特征图进行路径聚合和特征融合。

2024-09-01 23:15:00 926

原创 补光灯光通量及光照度简单计算

1流明的光通量均匀分布在1平方米表面上所产生的光照度.它从另一个角度来反映光源亮不亮

2024-08-27 21:15:00 1518

原创 目标检测问题混淆矩阵与准确率、召回率等

F1分数认为召回率和正确率同等重要,F2分数认为召回率的重要程度是正确率的2倍,而F0.5分数认为召回率的重要程度是正确率的一半。是精确率和召回率的调和平均数,例如,模型A的recall高,precision低,模型B相反,那怎么综合比较模型A和B的性能呢,用这个可以作为综合评价指标。这些指标有助于评估模型的性能。多分类任务的混淆矩阵与二分类的混淆矩阵类似,但它的维度更大,因为它需要处理多个类别之间的分类情况。精确率主要关注的是预测结果中的正类样本的质量,即在预测为正类的样本中有多少是准确的。

2024-08-25 20:30:00 903

原创 数字图像处理——拉普拉斯算子

在图像增强中,平滑是为了消除图像中噪声的干扰,或者降低对比度,与之相反,有时为了强调图像的边缘和细节,需要对图像进行锐化,提高对比度。拉普拉斯锐化图像是根据图像某个像素的周围像素到此像素的突变程度有关,也就是说它的依据是图像像素的变化程度。我们知道,一个函数的一阶微分描述了函数图像是朝哪里变化的,即增长或者降低;而二阶微分描述的则是图像变化的速度,急剧增长下降还是平缓的增长下降。那么据此我们可以猜测出依据二阶微分能够找到图像的色素的过渡程度,例如白色到黑色的过渡就是比较急剧的。

2024-08-18 19:59:44 811

原创 连通域分析--种子填充法(SeedFilling)

连通区域(Connected Component)一般是指图像中具有相同像素值且位置相邻的前景像素点组成的图像区域(Region,Blob).连通区域分析(Connected Component Analysis,Connected Component Labeling)是指将图像中的各个连通区域找出并标记.通常连通区域分析处理的对象是一张二值化后的图像.

2024-08-18 19:57:58 728

原创 Decoupled Head 解耦头思考

解耦头为何能够提升检测效果?解耦头结构考虑到分类和定位所关注的内容的不同,因此采用不同的分支来进行运算,有利于效果的提升

2024-08-11 22:30:00 604

原创 直线段检测算法LSD:a Line Segment Detector

影像中的直线特征是视觉感知的重要线索和解释图像的基本依据,相比于点特征,直线段特征对视角和光照变化具有很好的鲁棒性。常用的直线检测有Hough直线检测和LSD等.Hough直线检测将直线检测映射为参数空间中点的检测,而LSD通过查找近似矩形区域来获得直线。LSD是由Rafael Grompone von Gioi等人在2012年提出的一种局部直线快速提取的算法, 它能在线性时间内得出亚像素级精度的检测结果,LSD算法较为稳定且存在错误控制, 可以在无人工调节任何参数的情况下快速得到满意的线特征提取结果.

2024-08-11 10:19:27 285

原创 Python处理包含不可打印/显示字符的中文字符串

首先将二进制数据按照 UTF-8 编码解码为字符串。然后,使用 unicodedata 模块中的 category 函数来判断字符是否为不可打印字符(分类为 ‘Cc’)。最后,将过滤后的字符列表连接成字符串以获得最终结果。针对该类型文件,可以考虑在读取时利用二进制形式进行读取,然后对二进制数据进行判断,判断其是否为可打印字符(包含中文字符)/是否为不可打印字符,然后将不可打印字符去除即可。

2024-03-30 11:47:13 419

原创 Canny边缘检测算法及实现

提取图片的边缘信息是底层数字图像处理的基本任务之一.

2022-05-21 19:57:07 11452 5

原创 P3P相机姿态估计数学推导,求解及自定义实现

P3P相机姿态估计数学推导,求解及自定义实现微信公众号:幼儿园的学霸目录文章目录P3P相机姿态估计数学推导,求解及自定义实现目录前言相机到空间点距离求解角度θ的计算相机坐标系下的坐标计算自定义实现总结参考资料附录前言PnP问题(Perspective N Points)是指已知3D点的空间坐标及其在相机上的投影,求相机姿态的问题.投影方程可以表示为:λ[uv1]=K[Rt][XYZ1]\lambda\left[\begin{array}{l}u \\v \\1\end{array

2021-11-30 22:00:00 6307 4

原创 高斯滤波的理解与学习

高斯滤波的理解与学习微信公众号:幼儿园的学霸目录文章目录高斯滤波的理解与学习目录前言高斯函数一维高斯函数二维高斯函数高斯滤波过程高斯核求解利用高斯核滤波高斯滤波步骤高斯滤波实现高斯滤波标准差与窗口大小的换算实现常规实现分离实现高斯滤波总结高斯函数性质高斯滤波应用参考资料附录高斯函数及频谱绘图代码前言对一幅图像而言,低频部分对应整体灰度级的显示,高频部分对应着图像的细节部分.因此去掉低频部分(或者增强高频部分)可以锐化图像,去掉高频部分(或者增强低频部分)可以实现模糊/平滑图像的作用.去除低

2021-10-21 10:44:59 6949 1

原创 otsu算法详细推导、实现及Multi Level OTSU算法实现

otsu算法详细推导、实现及Multi Level OTSU算法实现目录文章目录otsu算法详细推导、实现及Multi Level OTSU算法实现目录简介推导及实现常规推导算法步骤及实现步骤实现从概率的角度解释推导实现扩展-MultiLevel OTSU延伸思考算法评价参考资料简介OTSU算法也称最大类间差法,有时也称之为大津算法,由大津于1979年提出,被认为是图像分割中阈值选取的最佳算法,计算简单,不受图像亮度和对比度的影响,因此在数字图像处理上得到了广泛的应用。它是按图像的灰度分布特性,将图

2021-10-14 09:00:40 9438 5

原创 C++设计模式——观察者模式(Observer Pattern)

C++设计模式——观察者模式(Observer Pattern)微信公众号:幼儿园的学霸目录文章目录C++设计模式——观察者模式(Observer Pattern)目录前言定义代码示例总结观察者模式和中介模式优缺点适用场景及应用示例参考资料前言观察者模式面向的需求是:A对象(观察者)对B对象(被观察者)的某种变化高度敏感,需要在B变化的一瞬间做出反应。举个例子,新闻里喜闻乐见的警察抓小偷,警察需要在小偷伸手作案的时候实施抓捕。在这个例子里,警察是观察者、小偷是被观察者,警察需要时刻盯着小偷的一

2021-09-15 22:27:59 8229 2

原创 自适应阈值化

自适应阈值化微信公众号:幼儿园的学霸目录文章目录自适应阈值化目录背景介绍及原理原理权重选择说明自定义实现结果对比参考资料背景介绍及原理原理图像阈值化的一般目的是从灰度图像中分离出目标区域和背景区域,然而仅仅通过设定全局固定阈值(对图像中的每个点其二值化的阈值都是相同的)的方法很难达到理想的分割效果。那么就需要一种方法来应对这样的情况。这种办法就是自适应阈值法(adaptiveThreshold),它的思想不是计算图像的全局阈值,而是根据图像不同区域亮度分布,计算其局部阈值,对于图像不同区域

2021-09-08 20:16:41 8601 1

原创 引导滤波推导及实现

引导滤波推导及实现微信公众号:幼儿园的学霸目录文章目录引导滤波推导及实现目录前言推导介绍推导引导滤波的算法流程及实现计算流程快速引导滤波流程自定义实现及效果引导滤波的应用应用优点其他参考资料前言引导滤波顾名思义,就是有选择(引导)性的滤波,其与我们经常提及的高斯滤波、双边滤波相比,它具有引导性,说具体点就是,它通过输入一副图像(矩阵)作为引导图,这样滤波器就知道什么地方是边缘,以此更好的保护边缘,最终达到在滤波的同时,保持边缘细节。各向同性滤波对待噪声和边缘信息采取一致的态度,从而导致噪声

2021-08-09 22:25:57 2728

原创 双边滤波算法原理及代码介绍

双边滤波算法原理及代码介绍微信公众号:幼儿园的学霸目录文章目录双边滤波算法原理及代码介绍目录介绍原理算法过程过程描述σ的意义及选取OpenCV 代码分析参考资料A bilateral filter is a non-linear, edge-preserving, and noise-reducing smoothing filter for images. It replaces the intensity of each pixel with a weighted average of i

2021-07-12 15:14:22 6398 9

原创 主成分分析(PCA)原理总结与实例

微信公众号:幼儿园的学霸最近在点云处理中,需要获取目标点云的最小包围盒(OBB),在网上看到很多利用PCA求解包围盒的代码,但是代码大多都比较简洁,属于PCA的一个应用,而没有原理的具体描述.因此,抽时间对PCA进行了一些梳理,以方便自己理解.特此记录.目录文章目录目录介绍向量的表示与基变换内积与投影基/基向量基变换的矩阵表示协方差矩阵及优化目标方差协方差协方差矩阵协方差矩阵对角化PCA算法步骤算法步骤数学实例数学过程python实现应用实例PCA算法总结参考资料介绍主成分分析(Princip.

2021-06-19 21:06:23 2328 2

原创 求解直线与平面的交点

求解直线与平面的交点微信公众号:幼儿园的学霸目录文章目录求解直线与平面的交点目录前言数学模型推导编程实现参考资料前言直线与平面的交点求解相关的内容在网上已经有很多资料进行介绍,目前所看到的博文在数学模型建立上都是正确的,但是其编程实现却存在问题,导致只有部分情况下能够正确求出直线与平面的交点,另外一些情况下求出的交点却是错误的.本文对原理进行推导并实现正确的编码.数学模型推导已知经过两点P1(x1,y1,z1),P2(x2,y2,z2)P_1(x_1,y_1,z_1),P_2(x_2,y_

2021-04-08 22:18:43 4558 5

转载 Image sensor 知识简介

转载自公众号 像由芯生 ,原文链接前言摄像机用来成像的感光元件叫做Image Sensor或Imager。目前广泛使用的2种Image Sensor是CCD和CMOS Image Sensor(CIS)。在数码摄影机市场上已经广泛应用了CCD技术,但是CCD需要消耗大量的能量和相当多的支持芯片。所以CMOS Image Sensor应运而生。其每个像素都可以进行自己的电荷转换,从而显著减少产生图像所需要的能量和支持电路。此外,CMOS Image Sensor采用与大多数微处理器和存储器芯片相同的材

2021-02-02 22:52:41 8483 1

原创 点绕坐标系旋转旋转矩阵推导、理解

点绕坐标系旋转旋转矩阵推导、理解开会过程中,翻笔记本时突然发现了之前推导的点绕坐标系旋转的旋转矩阵求解过程。在直觉上,一个点绕3个坐标轴旋转的旋转矩阵在形式上看起来是一致的,观感上比较优雅、整齐,但是一直没有仔细观察背后的原理。因此又对这个过程进行了一次推导,对这种整齐有了更深的理解,同时对记忆也有所帮助。特此记录。由于我们提到三维坐标系时,常用XYZ三个字母代替3个轴,为了不失一般性,避免字母先入为主产生的印象,在这里用UVW来指代右手三维坐标系。大拇指指向轴线方向,四指方向为旋转的正方向如下

2021-01-10 16:41:51 6006 1

原创 一种Tone Mapping 算法---Adaptive Logarithmic Mapping自适应对数映射

一种Tone Mapping 算法—Adaptive Logarithmic Mapping自适应对数映射微信公众号:幼儿园的学霸在查找图像增强方面的相关算法时,看到一篇博客,而博文中的核心是实现2003年的一篇论文,论文的原意是用在高对比场景下的自适应对数映射算法,但是查看博文中展示的图片效果,发现该算法在低光照下对色彩恢复效果也是很好,论文的名字是《Adaptive Logarithmic Mapping For Displaying High Contrast Scenes》。但是那篇博客中

2020-12-30 22:34:37 2583 2

原创 判断线段是否相交并求交点

判断线段是否相交并求交点公式推导设两条线段AB和CD,其端点分别为(xa,ya),(xb,yb)(xc,yc),(xd,yd)(x_a,y_a),(x_b,y_b) (x_c,y_c),(x_d,y_d)(xa​,ya​),(xb​,yb​)(xc​,yc​),(xd​,yd​).需要判断2条线段是否相交,若相交求交点。两条直线所在的参数方程为:{x=xa+α(xb−xa)y=ya+α(yb−ya){x=xc+β(xd−xc)y=yc+β(yd−yc)(1)\left\{\begin{align

2020-12-29 21:12:32 1616

原创 C++设计模式——职责链模式( Chain of Responsibility Pattern)

C++设计模式——职责链模式( Chain of Responsibility Pattern)目录文章目录C++设计模式——职责链模式( Chain of Responsibility Pattern)目录定义代码示例总结参考资料定义Avoid coupling the sender of a request to its receiver by giving more than one object a chance to handle the request. Chain the recei

2020-12-13 18:41:54 1213

原创 自动伽马校正(Auto Gamma Correction)算法

自动伽马校正(Auto Gamma Correction)算法目录文章目录自动伽马校正(Auto Gamma Correction)算法目录理论代码实现参考资料理论在对图像进行处理过程中,查找到一篇对图像进行自动gamma校正的论文,论文名称及链接见参考文献1.文章的核心描述如下:Average of brightness is simple element that can be computed in the least amount of time. Basic approach in

2020-12-09 20:52:30 12738 6

原创 自动白平衡--完美反射算法(Perfect Reflector Assumption)

输入图片灰度世界算法完美反射算法

2020-12-08 20:22:06 6720 7

原创 C++设计模式——中介者模式(Mediator Pattern)

C++设计模式——中介者模式(Mediator Pattern)微信公众号:幼儿园的学霸目录文章目录C++设计模式——中介者模式(Mediator Pattern)目录引言定义代码示例总结参考资料引言假设现在科技发达之后,家里所有设备都是智能化的,而小明在家洗澡的时候有个习惯就是喜欢听歌,而且洗澡时候还要把窗帘拉上。因此就有这种情形,小明要拉窗帘可能就是要洗澡,当然也要听歌,因此我们希望小明家的洗浴设备,音响设备和窗帘设备都能协同合作,不管操作哪种设备,其他两种设备都有一定响应,以此写出程序。

2020-11-23 20:13:56 1255

原创 自动白平衡--灰度世界算法(Gray World Algorithm)

自动白平衡–灰度世界算法(Gray World Algorithm)微信公众号:幼儿园的学霸目录文章目录自动白平衡--灰度世界算法(Gray World Algorithm)目录引言灰度世界算法原理opencv实现参考资料引言人的视觉系统具有颜色恒常性(Color Constancy),能从变化的光照环境和成像条件下获取物体表面颜色的不变特性,但成像设备不具有这样的调节功能,如彩色相机内部有三个CCD电子耦合元件,分别用来感受红绿蓝三种颜色的光线,默认情况下,三个颜色的感光电路信号的放大比例是

2020-11-22 20:41:24 15249 9

原创 RGB归一化及高效实现

RGB归一化及高效实现微信公众号:幼儿园的学霸介绍在图像处理中,RGB颜色模型是比较常用的格式,但是其存在一个明显的缺点:容易受到光照变化或阴影的影响,也就是说,同一位置,不同光照强度会导致图像的RGB值发生很大变化.而通过对图像的RGB色彩空间进行归一化处理,在某些情况下是去除光照和阴影影响的一种简单和有效的方法.假设图像上某点的的像素值为RGB,rgb表示归一化之后的值,那么RGB归一化的公式表示如下:r=RR+G+Bg=GR+G+Bb=BR+G+B(or b=1−r−g)r

2020-11-18 22:39:01 8988 1

原创 C++设计模式——备忘录模式(Memento Pattern)

C++设计模式——备忘录模式(Memento Pattern)微信公众号:幼儿园的学霸目录文章目录C++设计模式——备忘录模式(Memento Pattern)目录定义代码示例总结参考资料定义Without violating encapsulation, capture and externalize an object’s internal state so that the object can be restored to this state later在不破坏封装性的前提下,捕

2020-11-14 23:07:26 815

原创 C++设计模式——装饰模式(Decorator Pattern)

C++设计模式——装饰模式(Decorator Pattern)微信公众号:幼儿园的学霸目录文章目录C++设计模式——装饰模式(Decorator Pattern)目录定义代码示例总结装饰模式和代理模式适用场景优缺点装饰模式的简化参考资料定义Attach additional responsibilities to an object dynamically keeping the same interface. Decorators provide a flexible alternati

2020-11-09 20:24:34 850

原创 PCL 绘制自定义大平面

PCL 绘制自定义大平面微信公众号:幼儿园的学霸目录文章目录PCL 绘制自定义大平面目录缘起介绍实现实现原理简介代码实现及效果展示缘起最近在项目中用到了点云平面拟合,采用RANSAC拟合平面后得到了平面参数A,B,C,D不能直观观察拟合的平面与输入点云的关系,需要将拟合的平面绘制出来。在pcl中,存在2个函数能够添加平面,但是添加的平面其size为1,不能完全覆盖点云区域,仍不能满足需求,搜索资料也未发现能够添加大平面的方法,经过查看pcl添加平面的源码,实现了一种添加大平面的方法。介绍在

2020-10-27 20:11:35 4846 15

原创 C++设计模式——代理模式(Proxy Pattern)

C++设计模式——代理模式(Proxy Pattern)微信公众号:幼儿园的学霸目录文章目录C++设计模式——代理模式(Proxy Pattern)目录定义代码示例总结优缺点对比参考资料定义The proxy design pattern allows you to provide an interface to other objects by creating a wrapper class as the proxy. The wrapper class, which is the pr

2020-09-20 14:14:57 1715

原创 C++设计模式——桥接模式(Bridge Pattern)

C++设计模式——桥接模式(Bridge Pattern)微信公众号:幼儿园的学霸目录文章目录C++设计模式——桥接模式(Bridge Pattern)目录引言定义定义结构代码示例总结桥接模式和策略模式桥接模式和适配器模式适用场景优缺点参考资料引言假如有三个品牌的手机vivo,oppo和小米,如果手机手机壳一体生产,会是这样的:对应到相应的类中,将是1+3+6=10个有继承关系的类,如果这时再加一个华为手机,无疑是要多增加3个类,会带来类的急剧增长。如果手机手机壳分开生产,然后按需搭配,

2020-08-16 13:22:35 1018

原创 C++设计模式——享元模式(Flyweight Pattern)

C++设计模式——享元模式(Flyweight Pattern)微信公众号:幼儿园的学霸目录文章目录C++设计模式——享元模式(Flyweight Pattern)目录定义定义结构代码示例总结对比优缺点适用场景参考资料定义定义Flyweight Pattern: Use sharing to support large numbers of fine-grained objects efficiently.使用共享对象可有效地支持大量的细粒度的对象享元(Flyweight)模式的定义

2020-08-01 16:34:08 959

原创 C++设计模式——组合模式(Composite Pattern)

C++设计模式——组合模式微信公众号:幼儿园的学霸目录文章目录C++设计模式——组合模式目录定义定义结构代码示例总结使用场景及注意事项优缺点参考资料定义定义Compose objects into tree structures to represent part-whole hierarchies.Composite lets clients treat individual objects and compositions of objects uniformly.将对象组合成树形结

2020-06-07 21:39:23 1301

原创 C++设计模式——外观模式(Facade Pattern)

C++设计模式——外观模式(Facade Pattern)微信公众号:幼儿园的学霸目录文章目录C++设计模式——外观模式(Facade Pattern)目录前言定义定义与特点结构代码示例总结相关设计模式优缺点使用场景参考资料前言不得不说,外观模式在开发过程中运用频率非常高,尤其现在各种第三方SDK“充斥”在我们的开发中,这些SDK大多会使用外观模式。通过一个外观类使的整个系统的接口只有一个统一的高层接口,这样能够降低用户的使用成本,也能够对用户屏蔽很多实现细节。外观模式也是我们封装API的常用

2020-06-06 22:36:06 1466

C++爬虫各省各批次录取分数

采用c++爬虫,按照要求,爬取各批次的学校在各省的录取分数线,然后保存到文件中,采用了C++多线程,正则表达式等

2017-08-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除