自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ONE OF LIST

Winter is coming!

原创 pandas 性能优化

1. 过早的优化是万恶之源 开发的时候尽量先保证可读性和松耦合,性能的问题稍微考虑一下就行。开发完成后出现了性能问题后再进行tuning。 2. 优化前使用工具进行性能分析 个人更喜欢line_profiler。看每一行执行的时间占比,也大概知道原因出在什么地方了。自带的profile会深入...

2018-03-23 16:59:27

阅读数 3828

评论数 2

原创 那些年踩过的mysql的坑

那些年踩过的mysql的坑 锁机制带来的锁死 一 不是通过主键来删除,而是通过其他的字段来删除,那么会导致表级锁,其他insert无法操作。 二 update 的时候,也会有锁表的情况,同样导致的相同的情况。 大表的删除 千万别试图删除一张没有索引的大表,时间会超出你的想像。upd...

2016-11-25 19:13:21

阅读数 2379

评论数 0

原创 python 性能分析与个人实践

过早的优化是万恶之源~

2016-11-23 15:16:45

阅读数 1761

评论数 0

原创 WSGI读书笔记

WSGI的目标WSGI 的全称是 Web Server Gateway InterfaceWSGI是web server和Python web应用(web applications)或者框架之间的接口。其目的是促进web应用的可移植性。因为web server有很多种,web应用也有很多种,如果没...

2015-08-04 16:23:15

阅读数 1479

评论数 0

原创 Python 多线程 鸡肋也很好吃

Python 多线程 “Python解释器使用了内部的GIL(Global Interpreter Lock,全局解释器锁定),在任意指定的时刻只允许单个Python线程的执行,即便存在多个可用的处理器。在计算密集型程序中,这严重限制了线程的作用——事实上,在计算密集型程序中使用线程,经常...

2015-06-25 16:27:12

阅读数 1864

评论数 0

原创 python log学习笔记

logging 模块为应用程序提供灵活的手段来记录事件,错误,警告和调试信息。这些信息额可以进行收集、筛选、写入文件、放给系统日志等操作,甚至还可以通过网络发送给远程计算机。

2015-06-12 10:30:45

阅读数 1499

评论数 0

原创 python代码加密

python代码加密在公司里做东西的时候有这样一个需求:需要将python代码部署到客户的机器上,但是不希望客户能够看到源代码。(高精尖呐,哪能随便给人看,O(∩_∩)O哈!)代码加密大概整理了以下几种方法: 编译成pyc文件 使用py2exe将python代码转成window下执行的exe文件 ...

2015-04-29 15:22:02

阅读数 11710

评论数 0

原创 import pandas 错误

今天在用pandas的时候崩溃了,发现总是提示以下错误: from . import hashtable, tslib, lib File "tslib.pyx", line 31, in init pandas.tslib (pandas\tslib.c:47912) ...

2015-03-06 15:07:17

阅读数 12410

评论数 1

翻译 python中repr和 str的异同

翻译的是参考文献一的网页,意译,如果哪个地方不准确,不吝指教: 很多人都会有这样一个疑问:python对象中的__str__和__repr__方法有什么区别? 简单的说,设计__repr__方法的目的是意义明确,而设计__str__方法的目标是良好的可读性。 也许很多人在这里更晕了,啥是意义明确?...

2015-01-12 18:01:21

阅读数 1932

评论数 0

原创 python 邮件发送

当某段重要的代码出现错误的时候,我们希望能够发送邮件到某个特定的账户。在python中,邮件的发送简单的令人发指。当然,如果想要用邮件发送多媒体的数据,使用上可能稍微复杂点,但是这里的两段代码都是最简单的发送文本的。       1.python自带的email模块进行发送 from emai...

2014-12-30 18:02:45

阅读数 1717

评论数 0

原创 mysql 基础知识点小结

基本的sql语句在《mysql必知必会中》讲的比较多,这本书非常浅显,特别适合入门。想要进阶,感觉《高性能Mysql》挺不错的。 mysql在执行匹配时默认不区分大小写,所以要检索name是Da Huang和da huang的结果是一样的NULL是(no value),它与字段包含0、空字符...

2014-12-24 12:47:24

阅读数 1757

评论数 0

原创 python mock patch 的使用

关于python 的mock中使用patch时,遇到了一个xian

2014-09-10 14:17:37

阅读数 9784

评论数 0

原创 python mock 的一些小例子

1.假如我想要mock库中date对象,但是我只想mocktoda

2014-09-09 17:33:29

阅读数 3760

评论数 0

原创 Python mysql 数据库操作

最近使用Python操作数据库的次数比较多,因此在这里总结一下常用的方式。 1.      使用with as方式,这样可以保证数据库的连接会在程序结束后自动关闭

2014-09-05 16:40:53

阅读数 1988

评论数 0

原创 python中mock的使用

查了很多资料,很多资料都是把mock跟unittest结合在一起讲的,unittest本身是有一定难度的,其实我们完全可以单独使用mock的。参考文献中把mock讲的很详细,只要静下心来看,必定收获很多,感谢译者的辛勤付出! 我现在主要是在nose框架下使用的mock,mock主要有name,r...

2014-09-01 17:57:05

阅读数 2602

评论数 0

原创 rename函数的使用

在工程中遇到一个问题,需要把整个文件夹中的图片名称命名为连续数字命名的图片。比如原来图片名称是re.jpg,name.jpg,但是我现在要改为1.jpg和2.jpg。这里要使用一个叫rename的函数。 当我把这个文件夹中的名称重新命名的时候,发现如果只在一个文件夹中使用的话,会把已经重新命名的...

2014-01-10 17:13:25

阅读数 4661

评论数 0

转载 Hough变换原理

一、简单介绍 Hough变换是图像处理中从图像中识别几何形状的基本方法之一。Hough变换的基本原理在于利用点与线的对偶性,将原始图像空间的给定的曲线通过曲线表达形式变为参数空间的一个点。这样就把原始图像中给定曲线的检测问题转化为寻找参数空间中的峰值问题。也即把检测整体特性转化为检测局部特性。比...

2013-10-12 22:17:11

阅读数 1899

评论数 0

原创 趋势笔试_程序改错

收集了一些趋势的笔试题,主要是读代码改错的,大概是2011年和2012年的题目。大家就不需要在电脑上直接敲了 class base { public: virtual ~base(){} void work() {_do_work();} private: virtual void _do...

2013-10-09 14:27:52

阅读数 2050

评论数 0

转载 字符串最长不含重复字符的子串长度

题目很简单,假如输入“abcdbf”,那么最长不含重复字符的字串就为“cdbf”,长度就是4.这里没有要求输出子串,想要输出稍微加点东西就行了。从网上看了很多个版本,一般用的是动态规划。但是这个算法不需要用到动态规划。从网上搜到一个很好的代码,共享之。这个算法很容易理解。 首先定义一个hash表...

2013-09-15 22:31:38

阅读数 1912

评论数 0

转载 浅谈C++存储区

本文将为大家简单介绍C++中堆、栈、自由存储区以及全局静态存储区和常量存储区的内容,希望能够为广大C++爱好者提供些许帮助。 在C++中,内存分成5个区,他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。 栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清除的变量存储...

2013-09-15 16:02:40

阅读数 1819

评论数 0

原创 设有一头小母牛,从出生第四年起每年生一头小母牛,按此规律,第N年时有几头母牛?

这题有个关键点,当一头牛过了4年后就开始每年都生小牛了,我想用vector来实现,每头牛加入的时候都初始化为1,就是年龄为1,每次遍历一遍vector,把每个数加1,也就是年龄加1,要是年龄大于等于4,那么在vector后面添加1,也就是添加一头小牛。 #include "stdafx...

2013-09-13 17:17:30

阅读数 4922

评论数 0

原创 sift算法的笔记 sift的gpu加速及相关资料汇总

SIFT算法简介   SIFT算子是一种图像的局部描述子,具有尺度、旋转、平移的不变性,而且对光照变化、仿射变换和3维投影变换具有一定的鲁棒性[1]。在Mikolajczyk(在参考文献中有个下载链接,包括了这些论文,0积分)对包括SIFT算子在内的十种局部描述子所做的不变性对比实验中,SIFT及...

2013-08-26 13:39:09

阅读数 2136

评论数 2

转载 动态规划之——拦截导弹 NOIP1999(提高组) 第一题

某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭。由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。 输入导弹依次飞来的高度(雷达...

2013-08-22 09:19:22

阅读数 1576

评论数 0

原创 二元树中和为某一值的所有路径(递归与非递归的方法)

题目:输入一个整数和一棵二元树。从树的根结点开始往下访问一直到叶结点所经过的所有结点形成一条路径。打印出和与输入整数相等的所有路径。 例如输入整数22和如下二元树                                             10                   ...

2013-08-21 16:06:57

阅读数 989

评论数 0

原创 动态规划之——最长不下降子序列

最长不下降子序列是一个经典的动态规划问题。假如给出这样一个数组int data[] = {1,5,2,7,6};这个数组有4个最长不下降子序列1,2,7和1,2,6,和1,5,7,和1,5,6,都是长度为3的序列。我们要是求最长的不下降子序列的长度,求得的结果就是3.   我们可以用一个数组lo...

2013-08-20 15:38:08

阅读数 1090

评论数 0

原创 并行计算与GLSL的一些总结

并行计算模型: 指令并行:指令并行简单的说就是流水线技术,通过使用多流水线来达到并行的效果,其实在特定的时间片内,处理器每次还是只能处理一个线程,我觉得这个可以理解为微观上的串行,宏观上的并行,实质还是伪并行。 数据并行:指多个不同的数据同时被相同的指令、指令集或者算法处理。这和GPU并行的概念是...

2013-08-20 10:33:41

阅读数 2001

评论数 0

原创 SMO的C++实现

看SMO的论文已经有些时间了,一直想把它实现了,期间搜集了很多资料,可以跟大家分享。关于svm和smo,我就不想写东西了,因为想看这篇博客的肯定都了解了。 我把很多资源都放在下面的参考文献中,有些论文上传到CSDN了,0积分,大家想要的可以自己下载啊。 我这里主要是贴代码,由于我接触SVM的时候用...

2013-08-16 14:36:34

阅读数 3655

评论数 12

原创 关于《深入理解计算机系统》代码加速的思考

在《深入理解计算机系统》这本书的时候,有一个这样的知识点引起了我的注意: 例如下面这段代码: 代码1: const int length = 100000; float data[length]; memset(data,1,sizeof(float)*length); for ( in...

2013-08-13 17:21:29

阅读数 1213

评论数 0

原创 GLSL乒乓技术

如果算法有多个步骤,一个步骤的计算结果是下一个步骤的输入数据,那么就可以使用乒乓技术(Ping Pong)。有些缓存在前一个步骤可能是作为输入的缓存,然后下一个步骤中,这个输入的缓存又当做输出的缓存,从这个描述中大家可以看到,这种技术适合在循环里面实现,而且缓存的利用效率也大大提升了。关于乒乓技术...

2013-07-31 11:02:27

阅读数 1636

评论数 0

原创 GLSL着色器实现多重纹理与帧缓冲对象(FBO)

还记得我前面几篇博客上写的东西都是将纹理直接渲染到屏幕上,就是产生一个和纹理尺寸大小相同的窗口进行渲染,那么渲染完了就正好完整的显示了纹理图案。但是在做数值计算的时候,一般是不需要输出到屏幕上的,这就是今天我们要用到的帧缓存。有了帧缓存,我们的输出不需要是屏幕了,而是直接输出到帧缓存中去。而且帧缓...

2013-07-30 11:02:11

阅读数 2776

评论数 0

原创 GLSL着色器实现高斯滤波代码

刚开始学习GLSL的时候,感觉非常痛苦,资料非常少是一个原因,更重要的原因就是没有现成的可运行的代码可以,后来在ARC公司实习花了一个月吧,终于对GLSL作为加速计算的方面的知识有了一定的了解。感谢ARC,感谢我的师傅兼师兄孙XX! 我所做的工作并不是用GLSL实现各种绚丽的图形渲染,而是用它做图...

2013-07-29 14:17:47

阅读数 4269

评论数 0

原创 拉普拉斯 锐化

拉普拉斯锐化是一种很常见的图像增强技术,其实现简单,效果杠杠滴。在《数字图像处理》这本绿宝书中讲的很透彻,本文不打算详细讲解了,作为粗略的总结。 拉普拉斯锐化跟高斯滤波等都是相似的,拉普拉斯也有一个模板,就像高斯的模板一样。通过这个模板在图像中处理一遍后,就锐化了! 0 1 0 1 -...

2013-07-22 08:54:32

阅读数 2126

评论数 0

原创 视频时空域去噪算法

最近刚刚接触视频去噪,把接触的基本知识和论文稍作总结,如有错误,不吝指教~     视频序列去噪方法基本上可以分为空间域、频域、小波域、时域、时-空域和色彩域去噪.空间域就是视频的每一帧,相当于把视频看做一系列图像的集合,然后分别对每幅图像进行去噪。针对图像去噪的的算法那是相当的多,是不是移到图像...

2013-07-17 15:58:19

阅读数 2386

评论数 2

原创 图像双线性插值

在图像缩放中我们经常采用双线性插值的算法。要是针对缩放2倍这种特殊情况,实现起来就没有这么麻烦了,还可以直接抽取或者复制行和列。在复制行列的时候还有个实现的技巧,就是把目标图像的坐标除以2,得到原图像的坐标值,将源图像的像素值复制过来就行了。 //直接复制行列,将图像放大一倍 void PyrUp...

2013-07-17 10:34:40

阅读数 1199

评论数 0

原创 GLSL基础知识

openGL着色语言(GLSL)简单的说就是openGL中定义的子语言,专门用来编写着色器的。GLSL作为opengL的组成部分是在openGL2.0这个版本中加进去的。大家也许对着色器也并不陌生了,(如果陌生的话,维基一下)那么我们为什么要自己编写着色器呢?opengL提供的传统渲染模型就能够被...

2013-06-27 10:31:18

阅读数 2280

评论数 4

原创 大津法(otsu),中间像素统计法,kittler全局阈值图像二值化

图像的二值化有很多方法,这里介绍的三种是全局阈值的二值化方法。 这里给个原图: 1.大津法 最大类间方差法是由日本学者大津展之于1979年提出的,是一种自适应的阈值确定的方法,又叫大津法,简称OTSU。它是按图像的灰度特性,将图像分成背景和目标两部分。背景和目标之间的类间方差越大,说...

2013-06-25 13:57:22

阅读数 3919

评论数 0

转载 感知器算法及实现(个人觉得很不错!)

从博客园转载过来格式有问题,显示不完全,原文链接http://www.cnblogs.com/OldPanda/archive/2013/04/12/3017100.html 笔记——感知机 最近在研究机器学习理论的时候发现了一本好书,是李航博士的《统计学习方法》,...

2013-06-24 10:08:48

阅读数 20287

评论数 1

原创 常用数学符号大全

突发奇想,数学符号太难打出来了,于是从网上搜了一些符号,汇编一下,要是打印不出来直接就复制粘贴 1 几何符号   ⊥   ∥   ∠   ⌒  ⊙   ≡   ≌    △ 2 代数符号   ∝   ∧   ∨   ~  ∫   ≠    ≤   ≥   ≈  ∞   ∶ 3运算...

2013-06-20 17:22:17

阅读数 1515

评论数 0

原创 GLSL橙宝书中简单的着色器代码

这是橙宝书《opengl着色语言》提供的源代码,我对其进行了修改,以便可以运行。原来的程序是不完整的,很难运行。 // shader_book.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include #include ...

2013-06-18 15:41:39

阅读数 1671

评论数 0

原创 查看opengl扩展的代码

利用下面的代码可以查看opengl的扩展,注意glew的初始化顺序: // test.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include #include #include using namespace s...

2013-06-18 15:29:45

阅读数 900

评论数 0

提示
确定要删除当前文章?
取消 删除