自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【年终总结篇】统计代码仓提交的修改patch和涉及的代码函数行数

要查看你自己提交的次数,可以通过git log命令并加上--author选项来筛选出由你提交的记录。这会返回你提交的总数量。

2024-12-25 22:54:34 313

原创 提取excel信息

【代码】提取excel信息。

2024-10-30 23:38:47 479

原创 决策树方法根据指定条件筛选方案

条件类: 类用于定义每个条件的范围,并提供一个方法 来检查输入值是否满足该条件。算法选择器类: 类负责应用条件并记录不满足的条件。它提供方法 用于更新可用算法, 用于返回选中的算法,以及 方法用于输出失败的条件信息。规则定义: 字典中定义了每个条件的范围以及对应的适用算法。通过这种方式,您可以轻松扩展或修改条件和算法的对应关系。选择算法: 函数根据输入值和启用的开关选择合适的算法。它将输入值传递给 进行处理,并最终返回符合条件的算法编号。C++实现:比较有意思的实现:

2024-10-25 00:45:30 414 1

原创 代码优化之简化if臃肿的判断条件

如果条件很多,可以使用结构体封装输入参数,并通过链式方法实现条件检查。

2024-10-25 00:33:32 387

原创 今日份感悟

敲代码不是生活的一切,我在坚持每周锻炼身体,渴望游览祖国的大好河山;想学习下英语去国外看看不同生态的气候;想学习摄影记录生活的点滴;想打磨自己的底层技术让自己在公司更有价值。生活虐我千百遍,我待生活如糖醋排骨,很喜欢。从入职到现在工作时间已有11个月,从一名Framework蓝牙开发工程师转岗到算法工程师的岗位中。这期间从满怀期待到工作麻木到逐渐熟悉,感慨颇深。在这边倒是学到了很多工作技巧,受益终身。希望看到的人都能掌握自己的人生。

2024-07-26 22:11:05 154

原创 工厂模式和装饰器模式在程序设计中的体现

定义一个基类Model,其中包含纯虚函数doInit()和,这些函数将由具体模型类实现。具体模型继承自Model并实现必要的方法。定义一个装饰器基类,它继承自Model并包含一个Model对象的引用。这个装饰器基类将实现Model接口,并委托调用给被装饰的模型对象。具体装饰器实现共享的逻辑,例如在初始化前后执行一些操作。

2024-05-28 00:30:44 578

原创 BlockingIOError Resource temporarily unavailable

通常与文件I/O(输入/输出)操作有关,特别是在处理非阻塞模式下的文件或网络套接字时。这个错误提示表明资源暂时不可用。

2024-05-21 23:57:48 1385

原创 python多线程

【代码】python多线程。

2024-05-07 23:53:32 118

原创 python多线程模板

【代码】python多线程模板。

2024-05-06 23:18:54 180 1

原创 卷积层和全连接层

过多的全连接层可能会导致模型过度拟合训练数据,从而限制了模型的泛化能力,使其难以适应新的数据和场景。较深的卷积网络需要更多的计算资源进行训练和推理,同时也需要更多的内存来存储网络的参数和中间特征。较多的全连接层会增加模型的参数数量,使得模型更容易过拟合训练数据,特别是在训练样本较少的情况下。全连接层通常具有较多的参数,导致模型的计算复杂度增加,训练和推理过程的时间也会增加。适当增加卷积层的数量可以提高模型的泛化能力,使其更好地适应新的数据和场景。

2024-04-28 00:58:53 542

原创 模型损失函数设计

【代码】模型损失函数设计。

2024-04-28 00:37:58 198

原创 多线程数据传输脚本

多线程拷贝一个文件夹中可能多个文件夹下的一个文件名称中含有x的文件传输到另外一个文件夹中。使用多线程拷贝一个文件夹中的数据到另一个文件夹中的示例代码。

2024-04-28 00:33:39 235

原创 CV数据增强

使用python写一个对一个文件夹中的图像进行批量可以自定义数据增强程度的翻转、旋转、缩放、裁剪、亮度调整、对比度调整、噪声添加、噪声添加、颜色变换、弹性变形这些方法的代码。

2024-04-28 00:18:11 487 2

原创 服务器之间传递数据脚本

执行完脚本后,它将输出“File copied successfully!”和“Directory copied successfully!”,表示文件和文件夹已成功从源服务器复制到目标服务器。: 确保你的计算机上安装了 Python,并安装了 Paramiko 库。是保存脚本代码的文件名。服务器之间的数据复制传递。

2024-04-25 07:36:07 411 2

原创 照片最优阈值筛选

【代码】照片最优阈值筛选。

2024-04-25 07:32:21 184

原创 字符串和数字的拼接

类来将数字转换为字符串,然后与另一个字符串连接起来。函数将数字转换为字符串,然后与另一个字符串连接起来。

2024-04-16 00:13:53 427

原创 string和char*的转换

如果你需要修改字符串内容,可以将字符串内容复制到一个字符数组中。这样做需要分配内存,并将字符串内容复制到新分配的内存中。请注意,在这种情况下,你需要负责释放分配的内存,以避免内存泄漏。通常情况下,最好使用前两种方法,因为它们更安全、更简单。方法,它返回一个指向以 null 结尾的字符数组的指针(即 C 风格的字符串)。指针指向的字符数组是只读的,你不应该修改它。方法类似,返回的指针指向的字符数组是只读的。方法,它返回一个指向字符数组的指针。char* 到 string。

2024-04-16 00:12:25 1029

原创 vector

【代码】vector。

2024-04-16 00:07:44 140

原创 插值算法-简单

【代码】插值算法-简单。

2024-04-15 07:44:27 145

原创 插值算法-代码实现

【代码】插值算法-代码实现。

2024-04-14 23:57:59 419

原创 图像处理-采样方法概述

在图像处理中,上采样(upsampling)和下采样(downsampling)是常用的操作,用于改变图像的分辨率或大小。这些方法通常用于图像处理任务,如图像放大、缩小、压缩等。

2024-04-12 00:35:31 889

原创 下采样-Sobel滤波器等边缘检测滤波器

Sobel滤波器是一种常用的边缘检测滤波器,它通过计算图像中每个像素的梯度值来检测图像中的边缘。通过Sobel滤波器等边缘检测滤波器方法,我们可以检测图像中的边缘并减少图像的分辨率,同时保留图像中的主要特征。下采样的Sobel滤波器等边缘检测滤波器方法结合了Sobel滤波器的边缘检测功能和下采样操作,用于检测图像中的边缘并减少图像的分辨率。通常情况下,我们会选择一个合适的阈值,将梯度幅值大于阈值的像素标记为边缘像素,而将梯度幅值小于阈值的像素标记为非边缘像素。这样就得到了下采样后的图像。

2024-04-12 00:35:28 410

原创 下采样-高斯金字塔

通常情况下,下采样会丢失图像中的一些细节信息,但由于已经应用了高斯滤波,所以可以在一定程度上减少下采样造成的信息损失。高斯金字塔是一种图像金字塔的构建方法,用于实现图像的下采样。4. 构建金字塔:重复上述步骤,即应用高斯滤波和下采样,直到达到所需的金字塔层数或者图像的尺寸不再满足下采样条件。重复应用高斯滤波会逐渐模糊图像,降低图像的高频信息,从而减少图像的细节。通过高斯金字塔,我们可以获得不同分辨率的图像,这对于许多图像处理任务非常有用,例如图像金字塔在图像金字塔匹配、多尺度图像分析等领域有广泛的应用。

2024-04-12 00:34:23 284

原创 下采样-最大池化方法

下采样的最大池化(Max Pooling)方法是一种常用的降低图像分辨率的方法,它通过在图像的不重叠区域内选择像素值的最大值来减少图像的大小。通过最大池化,我们可以减少图像的分辨率,同时保留图像中的主要特征。在这个例子中,我们将应用2x2的最大池化操作,将图像的尺寸减小为原来的一半。2. 移动窗口:然后,我们从图像的左上角开始,按照固定的步幅(通常为池化窗口的大小),依次在图像上滑动池化窗口,以便覆盖图像的所有区域。4. 填充池化后的图像:将每个池化窗口计算得到的最大值填充到池化后的图像相应的位置。

2024-04-12 00:33:11 417

原创 下采样-平均池化

下采样的平均池化(Average Pooling)方法是一种常用的降低图像分辨率的方法,它通过在图像的不重叠区域内计算像素值的平均来减少图像的大小。2. 移动窗口:然后,我们从图像的左上角开始,按照固定的步幅(通常为池化窗口的大小),依次在图像上滑动池化窗口,以便覆盖图像的所有区域。3. 计算每个窗口内的平均值:对于每个池化窗口,我们计算窗口内所有像素值的平均值,并将该平均值作为池化后的像素值。4. 填充池化后的图像:将每个池化窗口计算得到的平均值填充到池化后的图像相应的位置。

2024-04-12 00:31:39 577

原创 上采样-Lanczos插值

具体来说,将Lanczos滤波器应用于邻域像素,得到相应的权重,然后将邻域像素的值与权重相乘,最后将结果相加,得到目标像素的插值值。Lanczos插值是一种高级的上采样方法,它在计算目标图像中每个像素的值时,利用了周围像素的信息,并通过Lanczos滤波器进行插值计算,以产生较为清晰的结果。现在我们想将这张图像上采样到更高的分辨率,假设是原来的两倍。2. 确定目标像素的邻域:对于目标图像中的每个像素,确定其周围的邻域像素,通常采用Lanczos滤波器的大小作为邻域大小,例如在本例中,可以选择3x3的邻域。

2024-04-12 00:30:29 1658

原创 上采样-双三次插值

双三次插值方法是一种常用的上采样方法,它在计算目标图像中每个像素的值时,利用了周围16个最近邻像素的信息,通过双三次插值计算得到更加平滑的结果。通过双三次插值,我们得到了更加平滑的上采样结果,相比于双线性插值方法,双三次插值能够更好地保留图像中的细节和边缘信息,得到更高质量的图像。4. 垂直方向插值:对水平方向插值的结果进行垂直方向的插值计算,同样使用双三次插值权重对水平方向插值结果进行加权求和。现在,对于目标图像中的每个像素,我们要找到在原始低分辨率图像中距离最近的16个像素,并进行双三次插值计算。

2024-04-12 00:27:42 665

原创 上采样-双线性插值

双线性插值方法是一种常用的上采样方法,它在计算目标图像中每个像素的值时,利用了周围四个最近邻像素的信息,通过线性插值计算得到更加平滑的结果。首先,我们要确定目标图像中每个像素的位置。在这个例子中,我们假设原始图像的尺寸是3x3,上采样后的目标图像尺寸将是6x6。通过双线性插值,我们得到了更加平滑的上采样结果,相比于最近邻插值方法,双线性插值能够更好地保留图像中的细节和边缘信息,得到更高质量的图像。现在,对于目标图像中的每个像素,我们要找到在原始低分辨率图像中距离最近的四个像素,并进行双线性插值计算。

2024-04-12 00:25:32 629

原创 上采样-最近邻插值

现在,对于目标图像中的每个像素,我们要找到在原始低分辨率图像中距离最近的像素。在这里,我们简单地将边缘像素的值复制到目标图像的相应位置。这样做的结果是图像变得更大,但由于没有利用周围像素的信息,导致图像质量相对较低,尤其是在图像中有锯齿状边缘和像素块的情况下。当我们使用最近邻插值方法对图像进行上采样时,我们首先要确定目标图像中每个像素的位置,然后找到在原始低分辨率图像中距离最近的像素,最后将该像素的值复制到目标像素中。现在,我们将原始图像中的每个像素的值复制到目标图像中的相应位置,得到了上采样后的图像。

2024-04-12 00:20:24 440

原创 自动化脚本

【代码】自动化脚本。

2024-03-21 07:45:52 153

原创 C++常用STL-排序

【代码】C++常用STL-排序。

2024-03-20 00:29:29 115

原创 C++常用STL-priority_queue、queue、stack

push(): 向优先队列中插入一个元素。size(): 返回优先队列中元素的个数。pop(): 删除优先队列中的堆顶元素。top(): 返回优先队列中的堆顶元素。empty(): 判断优先队列是否为空。push(): 向队列尾部插入一个元素。front(): 返回队列头部的元素。size(): 返回队列中元素的个数。back(): 返回队列尾部的元素。size(): 返回栈中元素的个数。pop(): 删除队列头部的元素。pop(): 删除栈顶的元素。top(): 返回栈顶的元素。

2024-03-20 00:19:42 196

原创 C++常用STL-set/multiset

【代码】C++常用STL-set/multiset。

2024-03-20 00:11:52 131

原创 C++常用STL-vector

vector: 动态数组,提供快速的随机访问和尾部插入操作。list: 双向链表,支持快速的插入和删除操作,但随机访问效率较低。set/multiset: 基于红黑树的有序集合,不允许重复元素(multiset允许),支持快速的查找、插入和删除操作。map/multimap: 基于红黑树的有序映射,键值对的集合,不允许重复键(multimap允许),支持快速的查找、插入和删除操作。基于哈希表的无序集合,不允许重复元素(unordered_multiset允许),支持快速的查找、插入和删除操作。

2024-03-20 00:07:15 356

原创 C++系统设计题目

【代码】C++系统设计题目。

2024-03-20 00:02:25 388

原创 模型训练基本结构

模型训练基本结构

2024-02-25 23:49:46 903

原创 脚本编写_0

REM 遍历文件夹中的.rar压缩包。REM 创建临时文件夹。

2024-02-02 01:08:58 410

原创 数据处理_2

【代码】数据处理_2。

2024-02-02 00:59:16 353

原创 数据处理脚本_1

【代码】数据处理脚本_1。

2024-02-02 00:50:16 416

原创 【无标题】

解决方案: 在CMakeLists.txt中,使用set(CMAKE_C_COMPILER)和set(CMAKE_CXX_COMPILER)函数来指定编译器。解决方案: 在CMakeLists.txt中,使用add_subdirectory()函数来添加子模块,并在父模块中设置各个子模块的依赖关系和编译规则。解决方案: 仔细检查和更新项目的编译配置,确保CMakeLists.txt文件中的相关设置(如编译选项、库链接等)符合新版本NDK的要求。避免混淆,确保使用的是正确的NDK版本。

2023-11-03 00:23:57 126

空空如也

空空如也

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

TA关注的人

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