笔记
中古传奇
一名ICer,要是感觉文章不错,请关注首发文章公众号--漫谈芯片与编程--,更加方便
展开
-
LeetCode-查找02
查找02待写原创 2020-08-28 23:39:48 · 100 阅读 · 0 评论 -
CV下-HOG特征描述算子
HOG特征描述算子--行人检验1 HOG算法1.1 HOG特征简介1.2 HOG特征原理1.3 计算图像梯度1.4 计算梯度直方图1.5 Block归一化在深度学习之前非常流行的图像特征提取技术–方向梯度直方图,简称HOG特征。在行人检测领域获得极大成功。学习HOG特征的思想有助于我们很好了解传统图像特征描述和图像识别方法。学习内容:使用OpenCV的HOG算法实现行人检测1 HOG算法1.1 HOG特征简介HOG特征是一种图像局部特征,其基本思想是对图像局部的梯度幅值和反向进行投票统计,形原创 2020-07-06 22:54:03 · 214 阅读 · 0 评论 -
CV--Haar特征描述算子
Haar特征描述算子--人脸检测1 算法理论介绍1.1 Haar-like 特征1.2 Haar-like特征的计算--积分图1.2.1 积分图主要思想1.2.2 积分图构造算法1.3 案列---计算Haar特征值1.4 特征值归一化1.5 Adaboost级联分类器2 python代码实现2.1 静态图像中的人脸检测学习目标:理解Haar-like特征理解积分图的计算方法理解使用积分图来计算Haar特征值算法理解Haar特征归一化算法学会使用OpenCV自带的Haar分类器进行人脸检测1原创 2020-07-02 23:22:57 · 514 阅读 · 0 评论 -
人脸检测--基于LBP算子
代码实现人脸检测基于Python-OpenCV实现# %% 导入库函数import cv2 as cvimg = cv.imread('face.jpg')face_detect = cv.CascadeClassifier("lbpcascade_frontalface_improved.xml") # 检测人脸gray = cv.cvtColor(img, code=cv.COLOR_BGR2GRAY) # 灰度处理# 检查人脸 按照1.1倍放到 周围最小像素为5face_zo..原创 2020-06-28 21:03:58 · 189 阅读 · 0 评论 -
临场考试技巧
临场考试技巧1 第一招:考前--高效审题了解卷情1.1 超常发挥的方法1.2 考试准备1.3 学会审题1.4 答题技巧2 第二招:从试卷细节抢高分2.1 数学2.2 英语试卷2.3 规范答题细节,不无谓丢分2.4 对付难题2.5 总结题解3 第三招:试卷检验TO-目前的初三学习,希望对你们有所帮助1 第一招:考前–高效审题了解卷情如何在有限的时间内充分发挥自己的水平?重点掌握四种答题技巧:大题要写干货,不要写废话没有确切把握的时候,不要乱修改,第一遍的答案往往最正确试卷上的字:男生要做到工整原创 2020-06-27 16:47:14 · 240 阅读 · 0 评论 -
图像处理下--S1Harris检测器
代码实现# 导入库import cv2 as cvimport matplotlib.pyplot as plt # 或from matplotlib import pyplot as plt import numpy as np# %% 参数设置# detector parametersblockSize=3 # 用于角点检测的领域大小即窗口尺寸Ksize=3 # 用于计算梯度图的sobel算子的尺寸k=0.06image=cv.imread('Scenery.jpg')#..原创 2020-06-24 23:20:16 · 134 阅读 · 0 评论 -
模型训练与验证
模型训练与验证1 学习目标2 构造验证集2.1 过拟合产生原因即解决办法2.1.1 模型复杂度过高2.1.2 epoch次数过高3 赛题数据集3.1 训练集 验证集和测试集3.2.1 留出法(Hold-out )3.2.2 交叉验证法(Cross Validation)3.2.3 自主采样法4 模型训练与验证4.1 Pytorch构造4.2 模型保存与加载5 模型调参过程5.1 深度学习模型训练技巧5.2 本次赛题调优模型小结在构建了一个简单的CNN进行训练,并可视化了训练过程中的误差损失和第一个字符原创 2020-05-30 22:10:52 · 2340 阅读 · 0 评论 -
IP基础概念
IP基础知识1 IP基础认识1.1 IP网络层与MAC数据层链路层有什么关系?2 IP的基础知识2.1 IP地址的分类2.1.1 广播地址2.1.2 IP分类的优缺点2.1.3 无分类地址CIDR2.2 子网掩码2.2.0 子网掩码地址定义2.2.1 分离网络号和主机号2.2.2 进行子网划分2.2.3 子网掩码的计算方式主要介绍IP基础知识:IP基本知识 IP地址的基础知识 和IP协议相关技术1 IP基础认识IP在TCP/IP参考模型中处于第三层,即网络层。网络层的主要作用:实现主机与主机之间的通原创 2020-05-28 15:27:39 · 901 阅读 · 0 评论 -
用Pytorch创建CNN字符识别模型
字符识别模型1 CNN介绍1.1 LeNet网络结构(1998)1.2 AlexNet(2012)1.3 VGG-16(2014)1.4 Inception-v1(2014) InceptionResNetV2 InceptionV31.5 ResNet-50(2015) ResNeXt502 Pytorch构建CNN模型2.1 定义模型2.2 训练代码开始构建一个字符识别模型–定长字符分类模型。利用卷积神经网络(Convolutional Neural Network ,CNN)从头搭建一个字符原创 2020-05-26 23:01:26 · 1383 阅读 · 0 评论 -
数据读取与数据扩增
CV赛事-数据读取与数据扩增1 名词概念:iteration、epoch、batchsize1.1 解释1.2 为什么使用1.3 为什么epochs对于一次?1.4 bachsize的作用?2 图像读取和处理2.1 学习Pillow2.1.1 类--图像2.2 OpenCV-python库3 数据扩增方法3.1 数据扩增介绍3.2 数据扩增方法3.3 常用的数据扩增函数3.3.1 以torchvision为例,常见的数据扩增方法包括:3.4 常用数据扩增库4 使用pytorch读取数据上一次内容是: 赛题原创 2020-05-23 22:48:48 · 427 阅读 · 0 评论 -
CV赛事实践-baseline模型
赛题理解1 环境配置1.1 虚拟环境安装法:1.1.1 常用虚拟安装命令1.1.2激活环境 并安装通过下面的命令一键安装其他依赖库启动jupyter2 baseline模型创建2.1 导入使用的包2.2 定义好读取图像的Dataset2.3 定义好训练数据路径和验证数据的路径2.4 定义好字符分类模型,使用renset18的模型作为特征提取模块2.5 定义好训练、验证和预测函数2.6 迭代训练和验证模型2.7 对测试集样本进行预测,生成提交文件31 环境配置什么是baseline模型?1、baseli原创 2020-05-20 23:11:26 · 4785 阅读 · 1 评论 -
动手学pandas-分组
Pandas分组1 SAC过程1.1 内涵1.2 apply过程2 groupby函数2.1 分组函数的基本内容2.2 groubhy对象的特点3 聚合、过滤和变换3.1 聚合3.1.1 常用聚合函数3.2 过滤(Filterration)3.3 变换(Transform)4 apply函数4.1 apply函数的灵活性4.2 用apply同时统计多个指标5 问题与练习1 SAC过程1.1 内...原创 2020-04-26 23:15:52 · 233 阅读 · 0 评论 -
动手学OpenCV-彩色图像空间转换
Task03-CV彩色空间互转1 学习内容2 算法理论介绍与资料推荐2.1 RGB与灰度图互转2.1.1 平均法2.1.2 最大最小值平均法2.1.3 加权平均法2.2 RGB与HSV互转2.2.1 RGB2HSI2.2.2 HSI2RGB3 代码实践3.1 调用OpenCV实现1、现在初期的目标就是做一个简单的掉包侠;我也虽然知道原理,但是总感觉:用代码表达出来很困难;2、图像彩色空间互转在...原创 2020-04-25 21:35:05 · 418 阅读 · 0 评论 -
动手学习CV-OpenCV.resize使用
OpenCV框架与图像差值算法1 主要内容1 插值算法2 算法理论介绍2.1 最近邻插值算法原理例子2.2 双线性插值2.3 映射方法2.3.1 向前映射法2.3.2 向后映射法3 代码实践在python环境下配置:安装CV:使用pip: pip install opencv-python -i https://pypi.tuna.tsinghua.edu.cn/simple 使用清华源镜像。...原创 2020-04-21 23:31:45 · 343 阅读 · 0 评论 -
动手学pandas-S1文件读取与数据类型
Pandas入门1 理论部分1.1 文件读取与写入1.2 基本数据结构1.2.1 Series1.2.2 DataFrame1.3 常用基本函数1.4 排序1.4.1 索引排序1.4.2 值排序2 问题与练习2.1 问题2.2 练习这个主要是对pandas官方文档的学习与做练习使用的IDE是jupyter,基于web的交互式编程1 理论部分掌握常见文件格式的读写操作理解并熟悉 Serie...原创 2020-04-20 22:23:30 · 432 阅读 · 0 评论 -
动手学EDA--模型融合
模型融合1 模型融合目标2 内容介绍3 Stacking相关理论介绍3.1 什么是stacking?3.2 结合策略3.3 stacking方法3.3.1 Stacking算法实现3.3.2 方法讲解3.3.3 低再训练的过拟合性4 代码示例4.1 回归/分类概率-融合:4.2 分类模型融合4.2.1 Voting投票纪机制4.2.2 分类的Stacking/Blending 融合4.2.3 分...原创 2020-04-04 20:56:23 · 897 阅读 · 0 评论 -
动手学EDA-建模调参
EDA-建模调参学习目标主要内容常用模型线性回归模型损失函数优化方法最小二乘法梯度下降法决策树梯度提升树 GBDTCART回归树XGBoost模型LigthtGBM模型代码实现总结推荐书籍了解各种模型以及模型的评价和调参策略建模调参部分学习目标了解常用的机器学习模型,并掌握机器学习模型的建模与调参过程完成相应学习打卡任务主要内容1、线性回归模型:线性回归对于特征的要求;处理长尾分...原创 2020-04-01 21:23:31 · 910 阅读 · 0 评论 -
动手学计算机类-快学计算机组成原理
计算机基础知识计算机组成原理计算机历史电子计算机晶体管发明晶体管和半导体的概念:布尔逻辑和逻辑门二进制ALU-算术逻辑单元寄存器和内存小结概念中央处理器 CPUCPU运行指令和程序两位数相加例子指令高级CPU设计如何快速传递数据给CPU?法一:添加cache法二:PiPline---流水线技术主要是介绍计算机的基础知识,这是第一部分–计算机组成原理计算机组成原理计算机历史重要的计算机器的历...原创 2020-03-31 21:33:24 · 509 阅读 · 0 评论 -
动手刷LeetCode-匹配通配符
好的链接:动态规划和双指针贪心:https://leetcode-cn.com/problems/wildcard-matching/solution/c-dong-tai-gui-hua-yu-shuang-zhi-zhen-tan-xin-by-w/通配符匹配知识点解题思路小结知识点动态规划解题思路解法一:分类讨论class Solution {public: bool...原创 2020-03-30 23:58:58 · 102 阅读 · 0 评论 -
动手刷LeetCode-加油站
加油站解题思路小结LeetCode-134解题思路解法一:暴力法class Solution {public: int canCompleteCircuit(vector<int>& gas, vector<int>& cost) { int len=gas.size();//get the array length ...原创 2020-03-29 23:58:10 · 118 阅读 · 0 评论 -
动手学深度挖掘--EDA-特征工程
EDA-特征工程内容异常处理特征归一化数据分桶缺失值处理特征构造特征筛选小结对于特征进行进一步分析,并对于数据进行处理完成对于特征工程的分析,并对于数据进行一些图表或者文字总结打卡内容常见特征工程:异常处理通过箱线图(或3-Sigma)分析删除异常值;BOX-COX转换:处理有偏分布长尾截断特征归一化标准化:转换为标准正态分布归一化:转换到0~1之间[0,1]**针对幂律分...原创 2020-03-28 21:42:51 · 1044 阅读 · 0 评论 -
动手刷LeetCode-分发饼干
分发饼干解题思路解题思路解法一:直接法遍历g数组,在遍历s数组中有没有大的,大的话,就去掉该元素,然后继续遍历,每次都只关注未分配饼干的孩子;class Solution {public: int findContentChildren(vector<int>& g, vector<int>& s) { // & 两...原创 2020-03-27 23:07:37 · 126 阅读 · 0 评论 -
动手刷LeetCode-判断子字符串
判断子序列解题思路给定字符串 s 和 t ,判断 s 是否为 t 的子序列;解题思路解法一:遍历class Solution {public:bool isSubsequence(string s, string t) {// operate string ;if(s.size()==0){return true;} if(t.size()==0){ r...原创 2020-03-26 23:26:05 · 315 阅读 · 0 评论 -
动手刷LeetCode-买股票不限次数问题
买股票的最佳时机II解题思路LeetCode-122题不设置购买次数解题思路解法一:一次遍历法class Solution {public: int maxProfit(vector<int>& prices) { // 表示引用,是实参的别名,那是同一块内存吗,要是改变的话都会改变 // use one search to finish i...原创 2020-03-25 23:56:59 · 189 阅读 · 0 评论 -
动手刷LeetCode-恢复二叉搜索树
恢复二叉搜索树知识点解题思路迭代小结即按照中序遍历满足 升序知识点对于中序遍历:1、递归 2、遍历 3、Morris掌握前两种方法实现 树的遍历;解题思路迭代python实现:class Solution: def recoverTree(self, root: TreeNode) -> None: """ Do not return ...原创 2020-03-24 23:55:06 · 142 阅读 · 0 评论 -
动手学EDA深度挖掘-从0到1
数据分析EDA的目标Demo载入数据科学以及可视化包EDA-数据探索性分析,是指对已有的数据(特别是调查或观察得来的原始数据)在尽量少的先验假定下进行探索,通过作图、制表、方程拟合、计算特征量等手段探索数据的结构和规律的一种数据分析方法。来了解数据,熟悉数据,和数据做朋友;EDA的目标EDA的价值主要在于熟悉数据集,了解数据集,对数据集进行验证来确定所获得数据集可以用于接下来的机器学习或者...原创 2020-03-24 21:56:44 · 374 阅读 · 0 评论 -
动手刷LeetCode-给节点数找所有二叉树
二叉搜索树小目标解题思路解法一:递归法解法二:动态规划给出节点数,然后找出所有可能的二叉树形状;小目标搞懂递归和动态规划解题思路解法一:递归法我们从序列 1 …n 中取出数字 i,作为当前树的树根。于是,剩余 i - 1 个元素可用于左子树,n - i 个元素用于右子树;不行,我感觉递归太难理解了;宣布失败class Solution {public: vector<...原创 2020-03-23 23:52:47 · 399 阅读 · 0 评论 -
动手刷LeetCode-返回中序遍历
二叉树的中序遍历知识点解题思路小结给定一个二叉树,返回它的中序 遍历知识点掌握二叉树的遍历方式;解题思路解法一:递归法即二叉树的中序遍历法,遍历访问到该节点,然后操作该节点;class Solution {public: vector<int> inorderTraversal(TreeNode* root) { // 向量容器盛放的是 int 类型 ...原创 2020-03-22 23:42:40 · 221 阅读 · 0 评论 -
动手刷LeetCode-求二叉树的最大深度
二叉树的最大深度知识点解题思路小结求解最二叉树的最大深度知识点对于树的操作:深度优先搜索:DFS,宽度优先搜素:BFS;树的很多问题都是有这两种方法即可解决;队列和栈的算法;解题思路解法一:递归法递归思想:树的深度,此时可以直接结束递归函数,并返回空节点的深度为 0。在递归算法中,递归函数的设计非常重要,首先我们要先明确该函数的作用,然后再确定何时结束与何时调用该函数。**明确函...原创 2020-03-21 22:37:49 · 153 阅读 · 1 评论 -
动手刷LeetCode-对称二叉树
对称二叉树知识点:解题思路小结判断是否为对称二叉树;知识点:树的增删改查基本操作;解题思路解法一:递归如果一个树的左子树与右子树镜像对称,那么这个树是对称的。如果同时满足下面的条件,两个树互为镜像:1、它们的两个根结点具有相同的值。2、每个树的右子树都与另一个树的左子树镜像对称:左子树的左节点和右子树的右节点相等;左子树的右节点与右子树的左节点相等;class Solution...原创 2020-03-20 23:55:41 · 115 阅读 · 0 评论 -
动手学习C语言-硬件底层操作位运算
位运算位运算及位运算符与运算或运算,异或运算,按位取反运算,位移运算;位段的结构体定义位段的引用位运算的实际案例位运算是按照二进制位进行底层运算的操作;利用C语言来完成硬件的底层操作;位运算及位运算符一个字节 由八个 二进制位组成;字节的最右边一位为最低位,最左边一位为最高位;与运算// 编写程序,按位运算求“与”运算结果,验证十六进制9A6E8957和FF按照“与”运算的 结果#in...原创 2020-03-20 22:12:47 · 471 阅读 · 0 评论 -
动手刷LeetCode-相同的数
对称二叉树知识点解题思路知识点树算法的知识点:解题思路解法一:递归法:就是递归的调用自己本身,斐波那契数列是典型例子; 明确终止条件class Solution {public: bool isSameTree(TreeNode* p, TreeNode* q) { // 两个数的首地址即名称 //递归法 if(!p && !...原创 2020-03-19 23:18:12 · 120 阅读 · 0 评论 -
动手刷LeetCode-正则表达式匹配
正则表达式匹配解题思路状态机思想解题思路解法一:动态规划class Solution {public: bool isMatch(string s, string p) { // 动态规划 int ns = s.length(); int np = p.length(); if(p.empty()) return s...原创 2020-03-18 23:15:03 · 204 阅读 · 0 评论 -
动手刷LeetCode-最长回文字符串
最长回文字串解题思路给定一个字符串 s,找到 s 中最长的回文子串;解题思路解法一:暴力法:Python:class Solution: def longestPalindrome(self, s: str) -> str: max=1 res=s[0] for i in range(len(s)-1): ...原创 2020-03-17 23:30:08 · 136 阅读 · 0 评论 -
动手刷LeetCode-无重复字符串的最长长度
无重复字符的最长字串知识点解题思路小结编程也是属于搭积木的游戏,能不重复造轮子就不造轮子;知识点操作字符串的知识点;字符串相当于是一个数组;哈希表的的创建和使用方法;动态规划的知识点;解题思路解法一:暴力法具体步骤:创建一个字符串容器,首先放进去容器;再遍历下一个元素,要是相等就略过,不相等就放进容器里面去;最后新字符串的大小就是长度;class Solution {pub...原创 2020-03-16 23:55:54 · 144 阅读 · 0 评论 -
动手刷LeetCode-判断括号有效
有效的括号知识点解题思路哈希表法小结给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。知识点字符串知识点:string s:常见操作方法;解题思路解法一:栈配对法 ;这是一个有技术含量的算法定义res作为一个栈遍历整个...原创 2020-03-15 23:51:38 · 331 阅读 · 1 评论 -
动手刷LeetCode-字符串最长公前缀
字符串最长公共前缀知识点解题思路知识点字符串或者串(string):是是由数字、字母、下划线组成的一串字符。一般记为 s = “a1a2…an”(n >= 0)。它是编程语言中表示文本的数据类型。通常以串的整体作为操作对象,如:在串中查找某个子串在该串中首次出现的位置、在串的某个位置上插入一个子串以及删除一个子串等。两个字符串相等的充要条件是:长度相等,并且各个对应位置上的字符都相等。...原创 2020-03-14 23:57:48 · 231 阅读 · 0 评论 -
动手刷LeetCode-转换罗马字符
罗马数字转整数知识点解题思路小结给定一个罗马数字,将其转换成整数;知识点操作字符串;使用哈希表;哈希表:哈希表存储的是由键(key)和值(value)组 成的数据。例如,我们将每个人的性别作为数 据进行存储,键为人名,值为对应的性别。解题思路哈希表法:将字母及其组合代表数值存入哈希表中,循环取出字符,寻找对应的数相加;若是遇到特殊规则的组合,前一个字符设置为减,后一个字符正常计算;...原创 2020-03-13 23:49:36 · 189 阅读 · 0 评论 -
动手学习C语言-实参和形参均为指针变量
变量的内存地址与指针指针变量指针变量的赋值指针变量运算符及运算指针变量运算指针变量作为函数参数由数据变量改为指针变量由指针变量传地址改为数据变量传数据数组与地址指针数组名作函数参数指向数组的指针变量作函数参数多维数组与指针变量指针变量指向行 输出二维矩阵指针变量本质:指针是已定义的数据变量的存放地址;该地址就是访问该变量的内存地址;指针变量是用来存放数据变量地址的内存变量。通过取地址运算的赋...原创 2020-03-13 10:50:18 · 2019 阅读 · 1 评论 -
动手刷LeetCode--合并K个列表并有序
合并K个链表且有序知识点解题思路小结合并 k 个排序链表,返回合并后的排序链表;知识点操作链表节点; 使用 vector的定义和使用;vector<ListNode*>& lists:这代表的是什么意思?解题思路解法一:暴力法-对待这样的问题应该是最首先想到的:先遍历所以元素放在数组中,然后排序,进而创建新链表class Solution {public: ...原创 2020-03-12 23:58:31 · 435 阅读 · 0 评论