自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 (力扣记录)98. 验证二叉搜索树

数据结构:树🌲时间复杂度:O(n)空间复杂度:O(n)代码实现

2024-02-16 05:23:08 484

原创 (力扣记录)1448. 统计二叉树中好节点的数目

数据结构:树🌲时间复杂度:O(n)空间复杂度:O(n)代码实现

2024-02-16 05:20:56 440

原创 (力扣记录)199.二叉树的右视图

数据结构:树🌲时间复杂度:O(n)空间复杂度:O(n)代码实现

2024-02-16 05:17:28 442

原创 (力扣记录)102. 二叉树的层序遍历

数据结构:树🌲时间复杂度:O(n)空间复杂度:O(n)代码实现

2024-02-16 05:15:45 420

原创 (力扣记录)235. 二叉搜索树的最近公共祖先

数据结构:树🌲时间复杂度:O(n)空间复杂度:O(1)

2024-02-16 05:13:16 393

原创 (力扣记录)62. 不同路径

数据结构/算法:二维动态规划时间复杂度:O(mn)空间复杂度:O(n)代码实现

2024-02-15 02:16:07 440

原创 基于GPT一键完成数据分析全流程的AI Agent: Streamline Analyst

Streamline Analyst 🪄是一个开源的基于GPT-4这样的大语言模型的应用,目标简化数据分析中从数据清洗到模型测试的全部流程。分类预测、聚类、回归、数据集可视化、数据预处理、编码、特征选择、目标属性判断、可视化、最佳模型选择等等任务都不在话下。用户需要做的只有选择数据文件选择分析模式,剩下的工作就可以让AI来接管了。所有处理后的数据和训练的模型都可下载。

2024-02-15 00:55:35 2511

原创 (力扣记录)5. 最长回文子串

数据结构/算法:动态规划时间复杂度:O(n^2)空间复杂度:O(1)代码实现:

2024-01-22 11:08:36 404 1

原创 (力扣记录)739. 每日温度

数据结构:栈时间复杂度:O(n)空间复杂度:O(n)代码实现:

2024-01-21 06:50:23 428 1

原创 (力扣记录)23. 合并K个升序链表

数据类型:链表时间复杂度:O(NK logK),N为链表长度空间复杂度:O(K)代码实现

2024-01-20 01:36:09 391

原创 Cobalt: 我愿称之为IDEA最美配色☕️

Cobalt是为IntelliJ IDEA和Java语言优化的一个配色主题,以现代和科技感的蓝色为主体。题主相信哪怕是一个简单的主题配色,都是可以给开发者们带来更有生产力、更舒适的创作心境。希望你会喜欢!另外Cobalt这个名字取自“钴蓝色”,常用于艺术和宝石深蓝色,同时象征着深度和稳定性,咱就是说希望代码都稳稳的。下载配色文件,再从IntelliJ IDEA的设置中导入即可。另外推荐字体是JetBrains Mono下载地址...

2024-01-19 15:02:12 1587 1

原创 (力扣记录)84. 柱状图中最大的矩形

数据结构类型:栈时间复杂度:O(N)空间复杂度:O(N)代码实现

2024-01-18 12:56:51 460 1

原创 (力扣记录)295. 数据流的中位数

数据结构:Heap时间复杂度:O(1) 获取中位数 ;O(logN) 插入新值空间复杂度:O(N)

2024-01-17 03:09:44 416

原创 (力扣记录)42.接雨水

数据结构:数组时间复杂度:O(N)空间复杂度:O(N)

2024-01-16 09:10:19 352 1

原创 (力扣记录)39. 组合总和

数据结构/算法:回溯时间复杂度:O(2^(target))

2024-01-15 05:19:39 343

原创 (力扣记录)146. LRU 缓存

数据类型:链表时间复杂度:O(1)空间复杂度:O(N)

2024-01-14 02:14:47 494 1

原创 【附完整项目代码】从一个社交分享平台入门MERN全栈开发

基于MERN 的高性能航拍博客分享平台:创建、编辑自己的博客;评论和点赞所有的博客;谷歌账户授权登录和常规的用户注册和登录认证;加入Aho-Corasick算法实现敏感词过滤;采用对IP限流组件对系统进行保护,避免突增流量和攻击的隐患;通过分页和数据库索引优化查询耗时;引入CI/CD和测试工具。“MERN”是MongoDB、Express、React,和NodeJS四个技术栈的合并简称,目前是北美最常用的全栈解决方案之一。作为计算机专业的学生和从业人员,在MERN / MEAN (JavaScript)

2024-01-12 11:53:05 2184

原创 C语言数字图像处理(十):Otus算法,移动平均和区域生长算法

从结果来看,Otus算法的分割效果比之前的全局阈值算法要好很多。 Otsu算法衡量最优分割阈值的标准是类间方差最大,当类间方差最大时为最优。 但该算法对噪声和目标尺寸非常敏感,需要进行降噪处理才能取得可观的效果。移动平均法是一种可变阈值处理方法。这种方法以之字形线性扫描整个图像,目的是减少图像中光照的偏差。这解决了全局阈值无法处理的光强变化问题。通常来说,当对象和图像的尺寸相对较小或较薄时,如被斑点遮挡的文本图像或正弦波形的亮度,该算法效果较好。区域生长法是一种将像素或子区域根据预定义的标准聚集成更大区域的

2023-12-04 13:45:54 781

原创 C语言数字图像处理(九):阈值处理和边缘检测

Roberts 算法使用局部差分算子来查找边缘。 当图像中的边缘接近+45度或-45度时,该算法效果更好。 Roberts算子对边缘的定位精度较高。 从处理结果来看,Roberts 算法对噪声比较敏感,因此适合于边缘比较明显、噪声较少的图像分割。Prewitt算子采用3×3的模板来计算区域内的像素值,因此其边缘检测结果在水平和垂直方向上都比Robert算子明显。 Prewitt算子对噪声有一定的抑制作用。 抑制噪声的原理是像素平均,但Prewitt算子在定位边缘方面不如Roberts算子,而且可能会产生宽度

2023-11-30 12:32:42 682 1

原创 【大语言模型应用】复刻GPT-4实时网页搜索&浏览功能

GPT4的知识库涉及领域丰富、涵盖范围广泛,但是一直有一定的实效滞后,例如最新的GPT4知识更新截止于2023年4月。为了跨越这个限制,今年OpenAI相继为GPT-Plus的用户开放了接入网页搜索的插件。自此,GPT可以根据具体问题的需要来联网获取最新信息,增强模型对实时数据检索的相关性和实效性。这篇文章就是对GPT内置的这个功能的一个实现,并且比网页端 GPT 自带的网络浏览功能更加迅速。你也可以把它视为一个对new Bing 和 Bard 的最小化的后端实现,一种搜索搜索引擎和AI问答的高度结合。

2023-11-26 14:14:36 2891 5

原创 C语言数字图像处理(八):图像腐蚀、膨胀、开运算闭运算,边界提取和连接

然后在图像上滑动内核 𝐵,提取内核 𝐵 覆盖区域的最小像素值,并替换锚点处的像素。然后在图像上滑动核𝐵,提取核𝐵覆盖区域的最大像素值,并替换中心点的像素。闭合运算可用于填充对象中的小的(暗)孔、连接相邻对象、平滑其边界而不显着改变其面积,以及抑制小于结构元素的暗处细节。图像内边界的提取是通过从原始图像中减去被结构元素侵蚀的图像而获得的。图像内物体边界的提取可以表示为集合𝛽(𝐴)(图𝐴内的边界),可以先用结构𝐵腐蚀𝐴,然后对𝐴与腐蚀的结果进行。它具有放大细节的效果,放大的程度取决于卷积元素的大小。

2023-11-20 06:39:06 822 1

原创 C语言数字图像处理(七):图像噪声&降噪算法,同态滤波器和带阻滤波器

可以根据噪声分布的位置和距离构造带阻滤波器,以阻止这些频率范围内的信号通过来降噪。修改后的alpha均值滤波器去除最高值和最低值,即对过滤范围内的数据进行排序,按照从大到小的顺序去除𝑑个数据,按照从小到大的顺序去除𝑑个数据,计算剩余数据的均值。对于椒盐噪声比较合适的方式是中值滤波,但是经过实践,发现自适应滤波器的效果更好,因为它的细节保留表现和降噪效果更好。定义:𝒁𝒎𝒊𝒏:掩码中的最小值,𝒁𝒎𝒂𝒙:掩码中的最大值,𝒁𝒙𝒚:掩码中的中心值,𝒁𝒎𝒆𝒅:掩码中的中值。

2023-11-19 04:33:12 955

原创 C语言数字图像处理(六):低通滤波器和高通滤波器

理想的低通滤波器可以完全抑制所有高于截止频率的频率信号,而低于截止频率的信号可以不受影响地通过。根据巴特沃斯滤波器的特性,在通带(pass band)内频率响应曲线是平坦的、无纹波,且在阻带(stop band)内逐渐降至零。从输出结果可以看出,高频值被去除,低频值被保留,因此指纹的边缘被锐化并突出显示。𝐻(𝑢,𝑣)的公式如下(为了图像锐化的效果,这里选择。选择的值越小,图像处理的效果越明显,即越模糊。

2023-11-18 05:45:05 1888 1

原创 C语言数字图像处理(五):二维离散傅里叶变换和重建(相位角+振幅)

1. 二维傅里叶变换(DFT)1.1 DFT:算法:二维离散傅里叶变换公式如下:其中是原始像素,是傅里叶变换后的输出。根据欧拉公式的每个值都是一个复数,由实部和虚部计算得出。傅里叶谱的公式:变换后,我们希望四个频谱聚集在可视化图像的中心,这需要变换如下:因此将每个项乘以即可实现。图像和结果对比():结果分析:图像的频谱是图像灰度变化强度的指标,是灰度在平面空间中的梯度。右图是图像对应的光谱(spectrum),中间部分很亮,灰度值很高。

2023-11-18 01:45:59 954 1

原创 C语言数字图像处理(四):图像边缘检测和灰度变换:拉普拉斯,Sobel,伽玛校正,和直方图增强

拉普拉斯算子通过增强图像的灰度对比来实现锐化效果。作为一个二阶微分算子,它增强了图像中灰度突变的区域,并减弱了灰度变化缓慢的区域。但处理后的图像失去了边缘的方向信息,并增强了噪声。Sobel算子属于一阶微分边缘检测算子,它引入了类似于局部平均的运算,因此在强化图像对象边缘的同时对噪声具有平滑作用。经过微分后,平坦处的值几乎为0,而边缘处的绝对值很大。 但Sobel算子并没有严格区分图像主体和背景,因此提取的图像轮廓有时并不令人满意。首先使用归一化(normalization)处理像素:将像素值转换为

2023-11-17 09:25:40 811

原创 C语言数字图像处理(三):仿射变换

通过在水平和竖直方向上移动图像中所有像素,从而达到平移的效果。移动后的黑色背景中不包含任何信息。这种方法速度快,不会导致任何像素值的改变。𝜃 是x 轴与图像顺时针旋转之间的角度。为了输出图像的视觉完整性,代码将放大输出图像的尺寸,然后将旋转后的图像平移一定距离:算法将图像逆时针旋转45°,然后将其平移到中心。图像的旋转导致部分像素发生偏移,一些像素会丢失,导致旋转后的图像边缘尤其是物体边缘显得参差不齐。最后使用了“中值滤波器”来插值缺失的像素并平滑图像,然而滤波器也会使图像略显模糊。

2023-11-17 07:34:06 175

原创 C语言数字图像处理(二):图像缩放和负片处理

假设原始图像尺寸为 ,缩小比例为,输出尺寸则为。图像(每行和每列)每隔 个像素再取下一个像素,其间隔内的像素则被忽略。后续代码中图像的缩放比例将被设置为0.5。​​​​​​​该算法根据图像的缩小比例选择并丢弃每行和列的像素。因此,输出图像中的所有像素都直接来自原图。这种方法简单有效地确定了输出像素的值,但由于缺失了一些像素行和列,使得物体边缘锯齿化。假设原始图像尺寸为 ,缩小比例为,,输出尺寸则为。在处理过程中,原图中的每个像素在放大后将占据 个像素,颜色值与原像素相同。后续代码固定将图像

2023-11-16 08:58:54 723 1

原创 C语言数字图像处理(一):均值滤波和中值滤波

除了边缘的像素外,图片中的每个像素都被8个像素包围。均值滤波通过取这9个像素的平均值(包括中心)来重新计算每个像素的值。除了图像边缘,每个像素的值都被周围8个像素和它自己的平均值所替换,因此所有像素之间的差异减少,图像看起来会更平滑。 显然,这种方法在去噪图的同时也丢失了图像的细节,使图像变得模糊。适合用于消除高斯噪声,对椒盐噪声效果不佳。与上述问题类似,但每个像素的值被九宫格像素的中值替换,而不是平均值。将9个周围像素的值存储在一个数组中,使用排序方法找到其中位数,赋值给像素。每个像素的值都被周围8个

2023-11-16 01:00:14 612 1

空空如也

空空如也

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

TA关注的人

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