- 博客(34)
- 资源 (1)
- 收藏
- 关注
原创 ImageFolder---合并dataset
ImageFolder合并dataset,解决数据分开存储时无法直接使用ImageFolder一次性读取所有数据的问题。
2022-10-05 20:05:49
1297
原创 IEEE754标准与异常值判断
什么是IEEE754IEEE754是一种浮点数标准,以c语言中的单精度float为例子。在结构上包括1位符号位,8位指数位以及23位尾数。00000 0000000 0000 0000 0000 0000 00001位符号位8位指数位23位尾数signexponentsignificand换算方式:(−1)sign×2exponent×significand(-1)^{sign}\times2^{exponent}\times{significand}(−1)
2022-03-22 22:25:06
2735
原创 C语言开发之CMakeLists以及gtest测试在C语言中的使用方法(其四)
建议在C语言开发之CMakeLists(其三)中看一下代码结构,下面的内容仅仅涉及gtest测试C语言项目的方法。具体思路gtest可以用于C++的测试,无法直接应用到C语言项目中。我们不妨将C语言项目打包成静态库,在C语言项目外单独建立gtest测试文件。extern为了使C++调用C语言项目,需要在头文件部分添加extern “c”,告诉c++这是C语言程序。项目目录结构如下: |--test | |--gtest.cpp | |--alg | | |--
2022-03-18 22:17:36
2579
原创 C语言开发之CMakeList(其三)
我们已经介绍过单目录结构与多目录结构的CMakeLists.txt使用方法,下面介绍如何利用CMakeLists实现类似于C++模板的东西。下面的内容与单目录结构以及多目录结构CMakeLists实现密接相关,建议看完前两个再看这一篇。应用场景开发某个基于C语言的项目,要求实现单精度与双精度计算版本。目录结构 |--examples | |--add_example.c | |--sub_example.c | |--CMakeLists.txt |--CMa
2022-03-18 21:00:33
2028
原创 C/C++开发之CMakeList(其二)
嵌套式CMakeLists写法,文件结构如下: |--examples | |--add_example.c | |--sub_example.c |--CMakeLists.txt |--add | |--add.c | |--add.h |--sub | |--sub.c | |--sub.h文件内容详情见C/C++开发之CMakelist(其一)将C/C++开发之CMakeList(其一)的内容推广,我们可以将对
2022-03-15 21:34:54
4771
原创 字符串正则+linux命令应用案例
1.打印目录结构find . -print 2>/dev/null | awk '!/\.$/ {for (i=1; i<NF; i++){printf("%4s","|")} print("--"$NF)}' FS='/';
2022-03-15 16:28:13
630
原创 C/C++开发之CMakeLists(其一)
CMakeList简介略使用方式入门级文件目录 |--add.h |--add.c |--sub.h |--sub.c |--CMakeLists.txt |--add_example.c |--sub_example.c源文件包括sub.h,sub.c,add.h与add.csub.h#ifndef __SUB_H#define __SUB_H#include<stdio.h>int my_sub(int a, int b);
2022-03-14 22:14:54
1499
原创 C语言开发之UNION
union简介union常见于C语言嵌入式开发中,union中的数据分享同一段内存,大小与最大的数据类型一致。union应用查看浮点数的16进制表示:#include<stdio.h>#include <stdint.h>uint32_t float2int(float a){ union{ float a; uint32_t b; }u; u.a = a; return u.b;}int main(
2022-03-10 22:11:01
1114
原创 C语言开发之内存管理
问题引入函数exec_func(int* arr, int len)内部申请多个动态数组,当程序执行过程中出现错误时,需要将之前申请的数组全部释放掉,导致代码过于冗长。#include<stdio.h>#include<stdlib.h>#include<time.h>int exec_func(int* arr, int len){ for(int i = 0; i < len; i++){ arr[i] = 1; }
2022-03-10 19:20:49
974
原创 程序性能分析工具perf
简介https://zhuanlan.zhihu.com/p/141694060使用方法编写test_perf.c程序如下#include<stdio.h>#include<stdlib.h>void test_perf(){ int row = 10, col = 100; double* arr = (double*)malloc(sizeof(double) * row * col); for(int i = 0; i < row;
2022-03-09 22:22:18
801
原创 内存泄漏工具asan
简介https://zhuanlan.zhihu.com/p/360135083使用方式查找动态库位置find /usr -name 'libasan.so'#/usr里面没有也可以全局查找或自行安装find / -name 'libasan.so'#输出位置如下/usr/local/lib64/libasan.so添加动态库export LD_PRELOAD=/usr/local/lib64/libasan.so添加编译选项 -Lasan -fsanitize=address
2022-03-07 21:06:17
2789
原创 pytorch之transforms
transforms可以对图像进行裁剪,翻转,旋转,图像变换。裁剪torchvision.transforms.RandomResizedCropimport torchvision.transforms as T'''随机缩放裁剪params: size 裁剪之后的大小param:scale 随机剪裁的区间param: ratio 随机长宽比设置param: 插值方法'''T.RandomResizedCrop(size, scale=(0.08, 1.0), ratio=(0.75
2021-11-01 19:32:53
512
原创 回溯法以及3着色问题的c++实现
回溯法(Backtrack)the 3-coloring problem(3着色问题)Given an undirected graph G=(V,E), it is required to color each vertex in V with one of three colors, say 1,2, and 3, such that no two adjacent vertices have the same color.search tree(搜索树)首先抛弃数据结构中所学到的树以及二叉搜索
2020-10-03 15:22:11
3697
原创 最大公约数算法以及c++实现
问题引入求42与49的最大公约数。更相减损法算法过程:将两个数中的较大值减去较小值替代较大值,反复如此直到相等。42 4942 735 728 721 714 77 7其意义很容易明白,首先两个正整数a,b之间肯定存在一个最大公约数r,如果a>b,那么(a-b)与b之间的最大公约数也一定是r,反之亦然,最终迭代到两个数相等即为最大公约数。辗转相除法辗转相除法是更相减损法的改进,还是求42与49的最大公约数,在求到42,7之后发现需要不断地减去7,实际上就是减去42%7-1个
2020-09-07 20:38:42
316
原创 LDA在多分类、降维中的应用以及python实现
⟺ \iff⟺Sw−1Sbθ=λθ(6)\textbf{S}_{w}^{-1}\textbf{S}_b\theta=\lambda\theta\tag{6}Sw−1Sbθ=λθ(6)此时,λ\lambdaλ为Sw−1Sb\textbf{S}_{w}^{-1}\textbf{S}_bSw−1Sb的特征值,θ\thetaθ为对应的特征向量,倘若λ\lambdaλ存在多个,选取λ\lambdaλ较大的特征值对应的特征向量,证明如下:Sw\textbf{S}_wSw为实对称矩阵,那么存在Sw
2020-08-26 10:53:32
4570
原创 线性判别分析(LDA)二分类的原理及python实现
符号说明问题引入已知一个样本存在两个属性,根据属性的不同可以分为三个类别,现需要依据某个样本的属性值判断该样本属于哪一个类别。属性1属性2类别4212412313614419100680950870108081-171-19-3-180-170-1...
2020-08-24 17:58:50
5156
1
原创 win10分区
找到左下角的win图标,右键->磁盘管理,进入页面。右键需要分盘的磁盘,点击压缩卷。等待输入压缩空间量,我们需要分配的大小,我分配了100G。可以看到原来的D盘中出现了个未分配区右键未分配区,点击新建简单卷狂点下一步,最后点击完成看到出现了个新的可用空间,表示成功分盘...
2020-08-21 15:19:14
219
原创 logistics regression逻辑回归
逻辑回归常常用于二分类问题中。预备知识sign(x)={1x≥00x<0(1)sign(x)=\left\{\begin{matrix}1&x\geq{0}\\0&x\lt{0}\end{matrix}\right.\tag{1}sign(x)={10x≥0x<0(1)
2020-08-19 20:35:06
283
原创 梯度下降法推导与改进
符号说明基本思想梯度下降法的基本思想非常简单,想象一下自己在一个盆地中,现在需要进入到盆地最底部,那么最简单的方式就是一直往下走,直到不能再向下走为止,此时就到达了盆地最底部。那么对于一个复杂的函数而言,找到一个合适的公式去描述这一简单的思想,就可以求出函数的极小值位置了。算法推导高维函数带有佩亚诺余项的一阶泰勒展开式如下f(x)=f(x0)+▽f(x0)T(x−x0)+o(∣∣x−x0∣∣)f(\textbf{x})=f(\textbf{x}_0)+\triangledown{f(\text
2020-08-18 19:14:24
329
原创 利用图像理解牛顿法
符号说明f(x)f(\textbf{x})f(x)表示函数,某个x\textbf{x}x向量对应的值是个常量。x\textbf{x}x表示函数空间中在各个轴上的未知变量,n维。以(x,y,z)三维空间举例子,x\textbf{x}x表示x,y两个轴上的变量,f(x)f(\textbf{x})f(x)代表在z轴上的映射,是一个常量。以后用xix_ixi表示非f(x)f(\textbf{x})f(x)值所在的轴,y表示在f(x)f(\textbf{x})f(x)值所在的轴。举个例子,三维空间表示成(
2020-08-16 11:56:42
717
原创 机器学习入门以及Linear regression(线性回归)
线性回归几乎是所有机器学习的入门课程,但是由于符号定义表达方式不同,造成了很多人在入门时期感觉跟多向量非常矛盾。比如所行向量还是列向量,xi\textbf{x}_ixi以及xj\textbf{x}_jxj究竟是行还是列等等,本篇将先介绍向量以及列表相关的例子,然后再介绍线性回归的内容。入门解惑对于大多数教程而言,一份统计表的形式往往如下所示:示例1:示例1为默认格式,也是大多数博客或文章采用的格式。属性1属性2属性3属性4…元组1元组2
2020-08-06 10:35:29
326
原创 深入理解PCA(主成分分析法)算法
问题引入现有某商店分析影响销售额的因素有哪些,做了以下调查。某月日期x1\textbf{x}_1x1:{1,2,3}/天空气质量x2\textbf{x}_2x2:{0.1,0.6,0.3}/等级上班时间x3\textbf{x}_3x3:{8,8.5,9}/时假装目前这三个影响因素太多,需要降维处理。如果要降到2维,最直接的做法就是将其中一个因素xi\textbf{x}_ixi去除,然后分析剩余的两个,但是这种做法过于粗暴,是否存在一种更加合理的方法去处理。----------------
2020-08-02 14:52:49
711
原创 查找pywin32文档说明
查找pywin32文档说明1.找到python安装的文件夹2.进入…->Lib->sitepackages之后,找到文件PyWin32.chm,点开即可
2020-07-24 15:09:32
573
1
原创 win10下使用粘贴板历史记录
粘贴板历史记录的使用方式右击左下角的windows徽标图像->设置->系统->粘贴板->将粘贴板历史记录打开每一次ctrl+c复制的内容都会记录起来,方便多次粘贴使用。win+V显示如下点击历史记录中的复制内容即可复制。...
2020-07-21 16:33:47
5813
原创 网络协议简述
物理层数据链路层ARP(Address Resolution Protocol)即地址解析协议, 用于实现从 IP 地址到 MAC 地址的映射。ARQ:(Automatic Repeat reQuest)自动重传协议,包括停止等待ARQ, 后退N帧ARQ,滑动窗口ARQ传输层ARQ(见数据链路层)UDP协议 关键词端口号...
2020-05-03 16:41:18
226
原创 数据库概念总结
完整性约束实体完整性约束: 关系的主关键字不能重复也不能为空。域完整性约束: 数据字段的取值范围、字段单位等方面的合理性。参照完整性约束: 主关键字与外部关键字之间的约束。用户完整性约束: 根据应用环境的要求和实际的需要,对某一具体应用所涉及的数据提出约束性条件。...
2020-05-03 11:18:45
336
原创 c++ STL
setset<int> s; //插入s.insert();//输出for(set<int>::iterator iter=s.begin();iter!=s.end();iter++){ cout<<*iter<<endl;}
2020-05-02 23:09:24
132
原创 bvh文件读取(blender版)
bvh文件读取(blender版)bvh文件是常用的运动捕捉数据格式,blender是一款比较强大(开源)的一款软件,对动画制作的业余爱好者而言带来了很大的便利。下载网址(免费):https://www.blendercn.org/download导入步骤step1:File->import->Mation Capture(.bvh)step2:选择自己bvh文件所在文件夹,...
2020-04-04 11:44:25
5298
1
原创 复杂链表的复制
复杂链表的复制题目描述输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。链表结构如下struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), l...
2020-03-28 20:49:35
75
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人