毕设填坑笔记-Git lfs的使用

自从自己拟了这个毕设后,感觉自己把自己坑的很惨,上次训练模型把电脑烧了后,总是能碰上奇奇怪怪的问题,所以打算开个新篇幅来记录我是如何填上毕设路上的自己给自己挖的坑。

我的毕设选题是关于用GAN生成图像方面的,为了记录中间的过程,我打算把每次训练生成的epoch都存下来;同时还想用git来管理代码版本,这时摆在我眼前的首要问题就是如何处理图片这些大文件。

使用一些开源的框架和成熟的模型,可以从一定程度上减小自己所需要的训练集体积,但是招架不住每次 pull/push 时所面对的动辄几百兆的传输列表,于是便在网上找到了git基于大文件传输的扩展 – git lfs(Large File Storage)

More

中断以及中断处理

中断

事实上所有计算机都提供了允许其他模块(I/O、存储器)中断处理器正常处理过程的机制。分类如下:

  • 程序中断:在某些条件下由指令执行的结果产生,例如算术溢出、除数为0、试图执行一条非法的机器指令以及访问到用户不允许的存储器位置。
  • 时钟中断:由处理器内部的计时器产生,允许操作系统以一定规律执行函数
  • I/O中断:由I/O控制器产生,用于发信号通知一个操作的正常完成或各种错误条件
  • 硬件故障中断:由诸如掉电或存储器奇偶错误之类的故障产生

More

详细谈谈二维码生成原理与编码(一)

本想一篇文章就解决的,后来发现需要介绍的有点多,一个晚上绝对写不完,看来又要开新坑了。

一、什么是二维码?

二维码有很多种,其中占据大半江山的主要有两种,一是以 PDF417 为代表的堆叠式条形二维码,另一个是以 QR Code 为代表的矩阵式二维码

PDF417 是“便携式数据文件”的缩写。它最少分为三层,最多 90 层。包括左右空白区、起始符、终止符、左右层指示符号字符等。它的具体架构如下图:

More

Problems in Installing openCV on Mac

I have installed the openCV3 successfully yesterday. And I find there are lots of problems even wrong ways in the website. So I decide to write this article to tell others who ready to install openCV after me so that you can use the simple and right way.

Before I tell the details, there is a video which is easy to understand the the whole process on YouTube.

In this article, I will tell you the steps of installing openCV and the details of these steps.Then, I will show you some common problems and their solutions.

More

如何使用Vim

Vim在线手册http://vimdoc.sourceforge.net/htmldoc/usr_toc.html

什么是Vim

从vi演生出来的Vim具有多种模式,这种独特的设计容易使初学者产生混淆。几乎所有的编辑器都会有插入和执行命令两种模式,并且大多数的编辑器使用了与Vim截然不同的方式:命令目录(鼠标或者键盘驱动),组合键(通常通过control键(CTRL)和alt键(ALT)组成)或者鼠标输入。Vim和vi一样,仅仅通过键盘来在这些模式之中切换。这就使得Vim可以不用进行菜单或者鼠标操作,并且最小化组合键的操作。对文字录入员或者程序员可以大大增强速度和效率。

More

散列表

散列表是什么?

我在静态查找表与静态查找表两篇文章中表示查找表的各种结构的共同特点:记录在表中的位置和它的关键字之间不存在一个确定的关系,查找的过程为给定值依次和关键字集合中各个关键字进行比较,查找的效率取决于和给定值比较的关键字个数。

用这类方法表示的查找表,其平均查找长度都不为0。不同的表示方法,其差别仅在于:关键字与给定值进行比较的顺序不同。

More