- 博客(20)
- 资源 (23)
- 收藏
- 关注
原创 在excel 中自定义函数进行数据处理
1.前言这学期做了本科生的精密机械设计课的猪脚, 由于平时成绩登记的时候采用的是5分制, 最后给平时成绩需要换算成百分制, 就希望可以自定义一个转换函数进行处理, 数据格式如下 2. 实现方式由于excel 支持 vba 语法, 所以可以利用vba 定义一个函数, vba 相关教程可以参考 http://www.yiibai.com/vba/vba_functions.html http://
2016-12-27 22:34:41 3874
原创 KNN 算法学习小结
1. KNN 算法小结这是一个分类的算法基于输入实例的学习, 是一种懒惰学习方式, 不需要进行任何训练 , 可用于 人脸检测, 手写数字识别等有一个非常形象的图: 算法描述: 为了判断未知实例的类别,以所有已知类别的实例作为参照选择参数K计算未知实例与所有已知实例的距离选择最近K个已知实例根据少数服从多数的投票法则(majority-voting),让未知实例归类为K个最邻近样本中最
2016-12-25 22:23:49 2496
原创 使用 sklearn 实现决策树
1. 基本环境安装 anaconda 环境, 由于国内登陆不了他的官网 https://www.continuum.io/downloads, 不过可以使用国内的镜像站点: https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/添加绘图工具 Graphviz http://www.graphviz.org/Download_windows.
2016-12-25 14:44:22 17655 7
转载 分类算法之决策树(Decision tree)
这篇文章主要介绍了 决策树的基本原理 以及 他的直观认识, 主要讲解了 ID3, C4.5 算法原理, 但是并没有涉及 CART 算法 (关于 CART 算法 可以参考http://www.tuicool.com/articles/VzM36z)点我进入原文3.1、摘要 在前面两篇文章中,分别介绍和讨论了朴素贝叶斯分类与贝叶斯网络两种分类算法。
2016-12-25 14:16:29 1067
原创 [读书笔记]30 天自制操作系统 day11 制作窗口
1. 显示窗口本质上, 这个有点类似于鼠标的显示, 在VRAM 的相应位置写入相应的数据即可显示效果: void make_window8(unsigned char *buf, int xsize, int ysize, char *title){ static char closebtn[14][16] = { "OOOOOOOOOOOOOOO@",
2016-12-23 15:35:41 591
原创 [读书笔记]程序员的自我修养 chp13 一个简单的CRT 运行库实现
0. 前言目标:实现一个小型的 CRT 运行库本质: 利用系统提供的api接口, 实现一个通用的 CRT 函数接口, 使得 C 语言程序可以自由的运行在各个不同的系统上项目工程地址: https://github.com/zhyh2010/miniCRT1. 遇到的一些问题windows.h 不包含路径集 解决方法: http://www.unjeep.com/q/86995415
2016-12-22 22:03:47 1041 1
原创 [读书笔记]30 天自制操作系统 day10 叠加处理
1. 内存管理虽然我们采用列表式管理, 但是由于我们的列表的条目是非常有限的,如果不经约束的进行内存的分配和释放的话, 可能会造成在内存中出现有很多不连续的小段的未使用空间, 这样就容易会把内存空间耗尽我们采用的方式是通过以 0x1000 字节(4KB) 作为单位进行管理 3.内存管理相关代码: 内存分配的时候, 从前向后遍历, 找到第一块满足需要的内存块进行操作即可通过4KB 为单位进行
2016-12-19 10:51:41 546
原创 [读书笔记]30 天自制操作系统 day9 内存管理
1. 内存容量检查由于内存和CPU的距离比CPU内部元件之间的距离要远很多, 因此,在寄存器内部使用 mov 要比 从寄存器MOV 到内存快很多另外, 由于寄存器的速度快, 但是存储的容量非常有限, 所以不得不频繁的使用内存为了解决这个问题, IBM 引入了 高速缓存存储器 (cache memory), 但是成本非常高本质上呢, 我们可以讲这个高速缓存器件理解成是一个类似缓冲区的概念 2.
2016-12-17 16:45:49 621
原创 [读书笔记]30 天自制操作系统 day8 鼠标控制与32位模式切换
1. 鼠标解读一个鼠标事件实际上会产生 3 个byte 的数据, 可以借助缓冲区 unsigned char mouse_dbuf[3], 对其数据进行输出显示同时为了提高代码可读性, 采用 MOUSE_DEC 结构体对其进行封装鼠标的三个字节数据保存在 buf[3] 中, 其中 buf[0] 的 低3 bit 表征鼠标的按键状态, buf[1], buf[2] 表征鼠标 x, y 的相对移动
2016-12-15 11:43:54 962
原创 [读书笔记]程序员的自我修养 chp12
12.1 系统调用介绍12.1.1 什么是系统调用现代操作系统都将可能会发生冲突的系统资源(文件, 网络, IO, 设备)保护起来, 阻止应用程序直接访问系统调用通过中断实现, linux 使用 0x80 中断, 而 windows 使用 0x2e 中断 作为系统调用的入口12.1.2 Linux 系统调用使用 0x80 中断, eax 存放系统调用的接口号, 同时, eax 也是调用结果的
2016-12-14 16:11:23 420
原创 [学习笔记]cs231n 图像分类与KNN
1. 参考资料中文版: http://blog.csdn.net/han_xiaoyang/article/details/49949535 英文版: http://cs231n.github.io/classification/2. 一些理解这里本质上采用的是利用图像的曼哈顿距离 作为衡量图片相似度的依据, 但是, 很明显, 这种方式进行图像分类得到的误差是非常大的。为了均衡误差, 采用 K
2016-12-12 14:16:36 529
原创 [读书笔记]程序员的自我修养 chp11
11.1 入口函数和程序初始化11.1.1 程序从main 开始吗程序有一个入口函数 entry point, 实际上是 程序的初始化和结束部分, 他往往是运行库的一个部分一个典型的程序运行步骤: 操作系统创建进程, 把控制权交给程序的入口,这个入口, 往往是运行库中的某个入口函数入口函数对运行库和程序运行环境进行初始化, 包括堆, IO, 线程, 全局变量构造 etc入口函数在完成初始化
2016-12-11 21:43:39 413
原创 视觉里程计研究小结
1. 前言昨天在看甄嬛传的时候,被刚哥安利了他的研究课题:视觉里程计。然后丢给我两篇综述文章,让我研究下。然后,我居然放下了电视剧,看起了英文文献,oh,my god ~~文献原文地址: http://download.csdn.net/detail/zhyh1435589631/9707527 下面记录下, 自己读完这篇文献之后的一些笔记2. VO2.1 介绍VO (visual odomet
2016-12-10 23:40:15 15066 1
原创 autocad 绘制相机模型示意图
1. 前言最近忙着中期答辩, 答辩的时候需要画两幅示意图,如下所示: 如果直接贴这样的图到ppt上面,肯定要挨批, 但是又想不出用什么软件可以画,纠结了好久。最后没办法只能使用autocad2. 绘制流程2.1 软件安装首先安装autocad,这里图省事儿,使用了autocad 2007版本 链接:http://pan.baidu.com/s/1jI0SJEe 密码:xedg使用的时候遇到
2016-12-09 15:39:38 2571
原创 [读书笔记]30 天自制操作系统 day7 FIFO与鼠标控制
1. 获取按键编码这里需要特别注意的是,需要采用io_out8(PIC0_OCW2, 0x61);来通知cpu IRQ-01上面的中断已经处理完毕。如果不写这句话的话, cpu会忽略后续IRQ-01 上传递过来的中断信号。其他 IRQ-n 对应的编码应该为: 0x60 + n#define PORT_KEYDAT 0x0060void inthandler21(int *esp){
2016-12-08 21:16:10 493
原创 [读书笔记]30 天自制操作系统 day6 分割编译与中断处理
1. 分割源文件由于原先的bootpack.c 太过冗长, 将他分割成几个部分 同时为了节省声明所占空间, 使用 头文件2. 整理Makefile将多个类似的编译规则, 使用一般规则进行合并, 简化书写一般而言, 普通规则的优先级比一般规则要高 (类似于 C++ 模板 和 偏特化情形)4. 意犹未尽4.1 load_gdtr_load_gdtr: ; void load_gdtr(
2016-12-06 12:44:07 688
原创 [读书笔记]程序员的自我修养 chp10
10.1 程序的内存布局一个32bit 指针的寻址空间是 4GB, 其中一部分空间会被分配给内核空间, 剩余部分给用户 可以很容易看到栈是向低地址增长, 堆是向高地址增长10.2 栈和调用惯例10.2.1 什么是栈经典的 i386 系统中, 栈总是向下增长的, 栈顶通过 esp 寄存器定位, 压栈操作使得栈顶的地址减少, 弹出操作使得栈顶地址增大 栈通常用来维护 一个函数调用所需要的信息
2016-12-04 21:07:52 394
原创 [读书笔记]程序员的自我修养 chp9
9.1 DLL 简介dll 文件的扩展名不一定是 dll, 也可以是 ocxdll 文件相比于linux 的共享对象, 更加强调模块化9.1.1 进程地址空间和内存管理一个dll 在不同的进程中拥有不同的私有数据的副本, 这个类似 ELF 共享对象, 不过由于ELF 中代码段是地址无关的, 可以实现多个进程共享一份代码, 但是dll 代码却并不是地址无关的, 因而只能在某些情况下被多个进程间
2016-12-04 11:41:43 418
原创 [读书笔记]30 天自制操作系统 day5 结构体, 文字显示与GDT/IDT初始化
1. 接收启动信息采用结构体, 将各个独立的变量联系起来, 让程序有更好的可读性 原始未使用 结构体的代码:void HariMain(void){ char *vram; int xsize, ysize; short *binfo_scrnx, *binfo_scrny; int *binfo_vram; init_palette(); bi
2016-12-03 13:16:14 501
原创 使用手势识别控制虾米音乐播放
1. 前言前段时间看到大神的博客 基于动态手势识别的酷狗音乐播放器控制, 非常感兴趣, 于是download 了大神的源码,http://download.csdn.net/detail/onezeros/2954830, 研究了一下, 并做了一定的调整。最终效果: 电脑截屏: http://www.iqiyi.com/w_19ruiswqkp.html 手机拍摄: http://www.
2016-12-01 23:21:19 5036 5
ImageWatch
2017-01-03
30天自制操作系统 pdf part1
2016-11-22
30天自制操作系统 电子书 part2
2016-11-22
30天自制操作系统的光盘part1
2016-11-22
winHex18.5 x86_x641
2016-11-22
chatbot3 源码
2016-11-19
8皇后问题七届源代码
2015-05-19
vs2013+opencv2.4.9配置环境
2015-05-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人