摘要:
2D图像几何基元 一般的,表示一个2d几何基元只用两个维度(比如x,y)就可以表示了,但是在计算机视觉研究中,为了统一对2d几何基元的操作(后面讲到的仿射,透射变换),一般会以增广矢量的方式表示几何基元。 齐次坐标将原本n维的坐标用一个n+1维的坐标表示,其两个基本作用为: 1. 区分n维空间的点和 阅读全文
摘要:
高DPI显示器越来越普及,软件自然也要适应这个变化,最近实习的时候也遇到了一个关于DPI缩放的问题。因为内部框架的一个控件有BUG,会导致内容的显示出问题,后来实在没办法改成了用Windows Native API来自己定义字体,但是这一写就出问题了,本来在内部开发机100%放缩下好好的,一跑到我自 阅读全文
摘要:
最近在实习的时候发现一件很蛋疼的事情,那就是我们组的项目因为有后台进程,所有每次运行完以后后台进程都必须要自己手动关闭,每次编译之前忘记关就会有一大堆编译错误,我就想直接弄个可以快捷键直接关闭算了 做这个东西的首要原则就是要简单,那自然用python做是最好的了,我们可以用pyHook这个包就可以很 阅读全文
摘要:
枚举所有句柄的方法 由于windows并没有给出枚举所有句柄所用到的API,和进程所拥有的句柄相关的只有GetProcessHandleCount这个函数,然而这个函数只能获取到和进程相关的句柄数,不能获取到实际的句柄,要获得句柄,我们必须使用未公开的Native API才可以。 PS:网上有很多关 阅读全文
摘要:
一. 操作系统调度的原则 1. 什么是调度 当计算机系统死多道程序设计系统时,通常就会有多个进程或者线程竞争CPU,只要有两个或者更多的进程处于就绪状态,这种情况就会发生,如果只有一个CPU可以用,那么必须选择下一个要运行的进程,在操作系统中,完成选择工作的这一部分被称为调度程序(scheduler 阅读全文
摘要:
汉明码实现原理 汉明码(Hamming Code)是广泛用于内存和磁盘纠错的编码。汉明码不仅可以用来检测转移数据时发生的错误,还可以用来修正错误。(要注意的是,汉明码只能发现和修正一位错误,对于两位或者两位以上的错误无法正确和发现)。 汉明码的实现原则是在原来的数据的插入k位数据作为校验位,把原来的 阅读全文
摘要:
遍历模板 其实这个问题想清楚了很简单,只要把这三个概念理解透彻就可以做出来了,比如前序遍历的第一个值一定是根节点,然后这个根节点对应到中序遍历里面,在中序遍历的这个值的两边的值,一定在以此节点为根节点的两个子树上,同理,后序遍历也一样。 已知前序遍历和后序遍历是不能求唯一的中序遍历树的。 线索二叉树 阅读全文
摘要:
C与C++中空指针的区别 在C里面,由于处处都要使用指针,所以导致NULL遍布各地。我们先来看C99是怎么定义NULL的: NULL can be defined as any null pointer constant. Thus existing code can retain definiti 阅读全文
摘要:
重载new和delete 首先借用C++ Primer 5e的一个例子: 这其实进行了以下三步操作: new表达式调用一个名为operator new(或者operator new[])的标准函数,分配一块足够大的,原始的,未命名的内存空间来存储特定的类型或者对象的数组。 编译器运行相应的构造函数以 阅读全文
摘要:
复制数据的快速方法std::copy C++复制数据各种方法大家都会,很多时候我们都会用到std::copy这个STL函数,这个效率确实很不错,比我们一个一个元素复制或者用迭代器复制都来的要快很多。 比如,我写了一段下面的代码,复制100000000数据量,std::copy的性能要比前两个性能要好 阅读全文