摘要: ``` # -*- coding: utf-8 -*- ''' 依赖库: pip install pycryptodome #linux 下安装 pip install pycryptodomex #windows 下安装 ''' import sys import os from Cryptodome.Cipher import AES from binascii import b2a_he... 阅读全文
posted @ 2019-06-09 00:44 木lin木 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 文件锁(fcntl) fcntl这个模块是Python自带的,但Windows没有,可以手工下载fcntl.py文件,然后保存到python的Lib目录下 锁类型(fcntl.flock函数的第二个参数) LOCK_SH: 表示要创建一个共享锁,所有进程没有写访问权限,即使是加锁进程也没有。所有进程 阅读全文
posted @ 2019-02-24 21:06 木lin木 阅读(6937) 评论(0) 推荐(0) 编辑
摘要: Preferences Key Bindings [ {"keys": ["enter"], "command": "move", "args": {"by": "characters", "forward": true}, "context": [ { "key": "following_text 阅读全文
posted @ 2018-03-30 21:03 木lin木 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 对于Python装饰器,之前一直理解比较模糊,很多博客上讲的东西看似很清楚,但总觉得有点照搬解释,没有自己的体会和理解(感觉更像是很多作者强行吸收了这些概念,而不是基于自身的理解)。例如以下是一个在网上搜到的例子。 然后执行 now() 的结果如下: 客观的说,这已经是解释的比较清楚的例子了,但还是 阅读全文
posted @ 2018-03-27 09:36 木lin木 阅读(155) 评论(0) 推荐(0) 编辑
摘要: Codepad系列是将自己用过的一些小功能代码段记录下来,便于后续查找使用,是一个代码备忘录系列。 本文简单记录在用Tkinter开发GUI窗体时一些简单的代码段,以便后续使用。官方文档地址 - Hello world 任务: 创建并打开一个窗体,设置窗体的大小,最简单的代码仅需3行。 除此之外,针 阅读全文
posted @ 2018-03-25 18:25 木lin木 阅读(239) 评论(0) 推荐(0) 编辑
摘要: Topic4:记录与回顾Q1:记录和回顾要考虑哪些内容??当天完成的任务数,番茄钟个数,计算当天的工作量;记录当天的中断数,中断类型,原因,时间等,做好统计工作,并预计第二天的中断情况,和应对策略;统计番茄钟失败的个数和原因,分析;统计当天的计划外紧急任务,分析原因和对策; 阅读全文
posted @ 2018-01-01 12:55 木lin木 阅读(224) 评论(0) 推荐(0) 编辑
摘要: Topic3:开始执行番茄钟Q1:番茄钟计划时间不足?当按照预计的番茄钟开始工作时,容易出现番茄钟计划时间不足的情况,也就是说本来预计3个番茄钟做完,但实际做完3个番茄钟之后,发现没有做完,这时候要做的事情就是--重新评估,具体来说有以下几点:重新评估这个所需要的番茄钟,例如已完成3个番茄钟后,预估当前任务的完成进度,根据实际执行过程中的感受,给出二次评估,第二次的预估一般来说会更加准确,例如此时... 阅读全文
posted @ 2018-01-01 12:54 木lin木 阅读(629) 评论(0) 推荐(0) 编辑
摘要: Topic2:选择今天待办Q1:如何选择今天待办事项?需综合考虑 任务完成的期限,任务的耗费的番茄钟个数,每天能够完成的番茄钟个数:首先评估自己每天能够完成的番茄钟个数,这是个长期的过程,刚开始时可以设置个预估值,例如9个,再根据每天实际的完成情况分析,排除干扰,提高效率,经过一段时间后,每天番茄钟的个数基本可以统计出来。假设设定的番茄钟数为N。然后将必须今天完成的任务抽取出来,如果所有的番茄钟数... 阅读全文
posted @ 2018-01-01 12:17 木lin木 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 概述 首先,番茄工作法是一种时间管理方法; 简单说,就是列出你当天要做的事,设置25分钟闹钟,然后从第一件事开始。此外还要每日回顾,做每日承诺,控制中断,预估要花的工夫等。 如果你的生活中经常遇到如下的情况中的一个或多个问题,那么使用番茄工作法可能对你解决这些起到一定的帮助: 方法篇 Step1:准 阅读全文
posted @ 2018-01-01 12:14 木lin木 阅读(703) 评论(0) 推荐(0) 编辑
摘要: Topic1:活动清单Q1:三张表格长什么样子,有哪些条目?Q2 如何评估一个任务的番茄钟个数?刚开始会遇到不知道如何评估个数的问题,这里面有几个方面:通过目标分析法,也就是从目标出发,通过搞清楚“怎么样才算任务完成“这个问题,理清楚完成该任务的步骤,从而预估每个步骤需要的时间。首先问自己几个问题:包括这个任务要做什么内容?达到什么效果?有什么样的产出?到什么程度认为任务已经完成?例如写一份报告,... 阅读全文
posted @ 2018-01-01 12:13 木lin木 阅读(450) 评论(0) 推荐(0) 编辑
摘要: 1. 创建项目文档在目标路径下,打开命令行,使用如下命令创建项目,例如项目名称为 "tutorial": 1 scrapy startproject tutorialView Code- 创建项目时,会自动创建对应的目录,所以没有必要自己先预先创建项目名称的目录2. 使用pycharm创建项目由于是在windows下采用pycharm的IDE进行开发,因此直接在pycharm上创建一个项目,目录... 阅读全文
posted @ 2017-12-08 00:14 木lin木 阅读(230) 评论(0) 推荐(0) 编辑
摘要: scrapy用-o filename.json 输出时,会默认使用unicode编码,当内容为中文时,输出的json文件不便于查看,如下图:可以在setting.py文件中修改默认的输出编码方式,只需要在setting.py中增加如下语句(默认似乎是没有指定的,所以要增加,如果默认有,就直接修改)FEED_EXPORT_ENCODING = 'utf-8'修改后输出如下: 阅读全文
posted @ 2017-12-06 23:30 木lin木 阅读(3644) 评论(1) 推荐(0) 编辑
摘要: 本例子用命令行调试的方式,演示如何获取页面的特定信息:0) 示例页面1) 使用scrapy shell获取目标页面;scrapy shell http://bj.lianjia.com/ershoufang/pg1tt2/2)找到提取路径在页面(本例中使用谷歌浏览器)用F12查看代码,找到要提取目标字段,如第一个房源的地址,在工具下栏有一个css的“路径”:html body div div ul... 阅读全文
posted @ 2017-12-06 01:30 木lin木 阅读(2524) 评论(0) 推荐(0) 编辑
摘要: 问题: 想实现访问在同一个主机上实现多个域名访问, 如用 blog.xxx.com访问博客(使用8000端口), app.xxx.com访问其他应用(使用8080端口); 不同的服务用URL区分,不用输入端口; 尝试方法: 按照网上的说法,在nginx的配置文件(nginx.conf)中增加了pro 阅读全文
posted @ 2017-11-17 22:12 木lin木 阅读(691) 评论(0) 推荐(0) 编辑
摘要: this is a test article post by open live writer. 阅读全文
posted @ 2017-11-16 14:12 木lin木 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 802.11的电源管理模式分为:主动模式(ActiveMode)和省电模式(PowerSaveMode)。PowerSave模式的工作原理: Beacon讯框中包含了一组名为Traffic Indication Map 的资讯,姑且翻译为「流量指示图」。当使用端设备与AP连结之后,AP就赋予每一个... 阅读全文
posted @ 2015-06-17 00:04 木lin木 阅读(3275) 评论(0) 推荐(0) 编辑
摘要: 802.11协议族:介绍各种802.11协议,abcde..... 阅读全文
posted @ 2015-06-16 23:55 木lin木 阅读(263) 评论(0) 推荐(0) 编辑
摘要: 1)抓取无线网卡的数据包(类似有线,仅抓取本网卡的数据包,适用与windows,linux)1、打开菜单项“Capture”下的子菜单“Capture Options”选项;2、找到设置面板中有一项“Capture all in promiscuous mode”选项;3、“Capture all ... 阅读全文
posted @ 2015-05-13 23:54 木lin木 阅读(14694) 评论(0) 推荐(0) 编辑
摘要: 在matlab中经常需要对数据进行曲线拟合,如最常见的多项式拟合,一般可以通过cftool调用曲线拟合工具(curve fit tool),通过图形界面可以很方便的进行曲线拟合,但是有些时候也会遇到不方便用图形工具。因此这里简单的记下两种常用的拟合方法。 1 多项式拟合(polyfit和polyval) polyfit可以对数据进行拟合(自定义用几次多项式),返回相应的参数,然后用polyval... 阅读全文
posted @ 2014-03-29 01:06 木lin木 阅读(82962) 评论(0) 推荐(1) 编辑
摘要: 双线性插值,这个名字咋一听很高大上的样纸,再在维基百科上一查(见文末,我去,一堆的公式吓死人),像俺这种半文盲,看到公式脑子就懵的类型,真心给跪。虽然看着好复杂,但仔细一看道理再简单不过了,所以还是自己梳理一下好。 双线性插值,顾名思义就是两个方向的线性插值加起来(这解释过于简单粗暴,哈哈)。所以只要了解什么是线性插值,分别在x轴和y轴都做一遍,就是双线性插值了。 线性插值的概念也非常简单粗暴,... 阅读全文
posted @ 2014-03-28 16:08 木lin木 阅读(56355) 评论(5) 推荐(15) 编辑
摘要: Technorati 标记: matlab,plot相信大部分用过matlab的人都画过sin曲线,直接plot就可以了,不过呢,plot出来的曲线自然不那么好看,本着绳命在于折腾的原则,小弟学习了下sin曲线的高级画法,mark一下,还是先上图看看是如何华丽丽的完整转变的吧。实现代码如下:x = -pi:0.1:pi;y = sin(x);axescenterfid1 = plot(x,y);set(findobj('Type','Line'),'Color','r','LineWidth',2)set(gca, 阅读全文
posted @ 2014-03-28 04:10 木lin木 阅读(8735) 评论(0) 推荐(0) 编辑
摘要: 刚接触一门语言时,字符串是很容易遇到的, 例如要从读入或者写出, 字符串与数字间的转换等. 由于字符串, 列表和元组等类型具有一定的共性(由对象组成的序列,如字符串是字符序列), 在Python中统称为序列类型, 所以字符串的许多操作跟其他序列类型的操作是一样的.1. 字符串的创建字符串的创建跟其他的语言没有什么大的区别,直接 aStr='hello world' 就可以创建, 在Python中, 创建字符可以用单引号, 也可以用双引号. 特别的, 用双引号定义可以定义包含单引号的字符串, 对应的用单引号定义也可以定义包含双引号的字符串. 如 aStr = "It&# 阅读全文
posted @ 2014-01-02 20:10 木lin木 阅读(526) 评论(0) 推荐(0) 编辑
摘要: 最近想自学javascript,今天一边查书一边学着写一些简单的函数之类的东西,由于之前学过C语言,自然而然的想着js中是否也有像C里面的指针,引用形参之类的东西,于是想写个交换两个变量的值的函数(swap),然而似乎不太简单。 我在网上找到了一段如下的代码,View Code 1 function swap(a,b)2 // This function is come from internet.3 // URL@ http://bbs.51js.com/thread-65058-1-1.html4 {5 var temp=a;6 this.a=b;7 this.b=temp;8 };... 阅读全文
posted @ 2013-03-24 18:32 木lin木 阅读(9919) 评论(0) 推荐(0) 编辑
摘要: 转自:http://blog.csdn.net/llqkk/article/details/2447029今天在编译程序时碰到该问题:whetstone.c:(.text+0x56c): undefined reference to `sin'whetstone.c:(.text+0x585): undefined reference to `cos'whetstone.c:(.text+0x5cf): undefined reference to `atan'检查头文件math.h已经包含,原来虽然程序中已经包含math.h,但在链接时要链接到数学库,加上-lm编译选 阅读全文
posted @ 2012-10-28 23:21 木lin木 阅读(7365) 评论(0) 推荐(0) 编辑
摘要: PART 1 : opencv函数:1.cvCopy/* Copies source array to destination array */CVAPI(void) cvCopy( const CvArr* src, CvArr* dst, const CvArr* mask CV_DEFAULT(NULL) );下面是Opencv官方手册的对cvCopy的说明:Copy拷贝一个数组给另一个数组void cvCopy( const CvArr* src, CvArr* dst, const CvArr* mask=NULL );src输入数组。dst输出数组。mask操作掩码是8比特单通道的 阅读全文
posted @ 2012-10-27 16:00 木lin木 阅读(430) 评论(0) 推荐(0) 编辑
摘要: (很基础,本人菜鸟,大师勿喷,不过欢迎指正错误或补充)不解释,先上例子:class A{public: virtual void print ()=0; virtual void v_cname() { cout << "class A print by v_cname" << endl;} void cname() { cout << "class A print by cname" << endl;}};class B : public A{public: void print (){ cout < 阅读全文
posted @ 2012-07-21 11:30 木lin木 阅读(1039) 评论(1) 推荐(0) 编辑
摘要: 转自:http://blog.csdn.net/bripengandre/article/details/2199924MSNP15(MSN8.1)协议分析第1章.MSNP15概述MSN是微软推出的一款聊天工具,它的通信协议是微软自己提出的MSNP(即MSN Protocol)。MSNP目前还不是因特网标准协议,但却发展迅速,被广泛地应用到各种聊天工具的开发中。MSNP更新很快,当前的最新版本为MSNP15(即版本15)。MSN8.1所使用的协议就是MSNP15。MSNP15支持即时消息、文件传输、语音通信、视频通信和远程协助等通信方式。其中文件传输、语音通信和视频通信等是直接的点对点通信,而 阅读全文
posted @ 2012-05-10 10:15 木lin木 阅读(1062) 评论(0) 推荐(0) 编辑
摘要: 转自:http://zh.wikipedia.org/wiki/%E4%BC%B0%E8%AE%A1%E7%90%86%E8%AE%BA估计理论维基百科,自由的百科全书估计理论是统计学和信号处理中的一个分支,主要是通过测量或经验数据来估计概率分布参数的数值。这些参数描述了实质情况或实际对象,它们能够回答估计函数提出的问题。例如,估计投票人总体中,给特定候选人投票的人的比例。这个比例是一个不可观测的参数,因为投票人总体很大;估计值建立在投票者的一个小的随机采样上。又如,雷达的目的是物体(飞机、船等)的定位。这种定位是通过分析收到的回声(回波)来实现的,定位提出的问题是“飞机在哪里?”为了回答这个 阅读全文
posted @ 2012-01-10 19:46 木lin木 阅读(588) 评论(0) 推荐(0) 编辑
摘要: 转自:http://zh.wikipedia.org/wiki/ROC%E6%9B%B2%E7%BA%BF在信号检测理论中,接收者操作特征(receiver operating characteristic),或者叫ROC曲线是一种对于灵敏度进行描述的功能图像.ROC曲线可以通过描述真阳性率(TPR)和假阳性率(FPR)来实现.由于是通过比较两个操作特征(TPR和FPR)作为标准,ROC曲线也叫做相关操作特征曲线.[1]ROC分析给选择最好的模型和在上下文或者类分布中独立的抛弃一些较差的模型提供了工具.ROC分析是直接和自然的与决策的做出有相当大的关系.ROC曲线首先是由二战中的电子工程师和雷 阅读全文
posted @ 2012-01-09 14:16 木lin木 阅读(9480) 评论(0) 推荐(0) 编辑
摘要: 看了一篇讲理解离散傅立叶变换(二. 实数形式离散傅立叶变换)的文章(本博客“文章”中有转载,点击该链接可以直接进入作者的博客),可是一直不大好理解。所以想用matlab验证一下,增强理解,顺便把验证的东西分享一下: 首先,FFT(快速傅里叶变换)是一种实现DFT(离散傅里叶变换)的快速算法,是利用复数形式的离散傅里叶变换来计算实数形式的离散傅里叶变换)。matlab中的fft函数是实现该算法的实现(所以其实这个实验的内容是帮助理解复数形式的离散傅里叶变换与实数形式的离散傅里叶变换之间的关系的)。废话不多说,先用matlab计算一个信号x的fft:>> x=[1 2 3 4];> 阅读全文
posted @ 2012-01-03 17:49 木lin木 阅读(31600) 评论(1) 推荐(0) 编辑
摘要: 转自:http://blog.csdn.net/dznlong/article/details/2269827 ------实数形式离散傅立叶变换(Real DFT)上一节我们看到了一个实数形式离散傅立叶变换的例子,通过这个例子能够让我们先对傅立叶变换有一个较为形象的感性认识,现在就让我们来看看实数形式离散傅立叶变换的正向和逆向是怎么进行变换的。在此,我们先来看一下频率的多种表示方法。一、频域中关于频率的四种表示方法1、序号表示方法,根据时域中信号的样本数取0 ~ N/2,用这种方法在程序中使用起来可以更直接地取得每种频率的幅度值,因为频率值跟数组的序号是一一对应的: X[k],取值范围是0 阅读全文
posted @ 2012-01-03 16:57 木lin木 阅读(745) 评论(0) 推荐(0) 编辑
摘要: 转自:http://hi.baidu.com/microsko/blog/item/cd5a5b7ae3e46de02e73b3c4.html图像的傅立叶变换,原始图像由N行N列构成,N必须是基2的,把这个N*N个包含图像的点称为实部,另外还需要N*N个点称为虚部,因为FFT是基于复数的,如下图所示:计算图像傅立叶变换的过程很简单:首先对每一行做一维FFT,然后对每一列做一维FFT。具体来说,先对第0行的N个点做FFT(实部有值,虚部为0),将FFT输出的实部放回原来第0行的实部,FFT输出的虚部放回第0行的虚部,这样计算完全部行之后,图像的实部和虚部包含的是中间数据,然后用相同的办法进行列方 阅读全文
posted @ 2012-01-02 20:20 木lin木 阅读(403) 评论(0) 推荐(0) 编辑
摘要: 转自:http://www.china-vision.net/technology/sjcd/200908/46829.html本文主要讲解逆马赛克变换的原理,文中照片由映美精DFK 31BF03-Z2.H采集所得,其它相关信息请参考视觉网上的文章。 逆马赛克算法是一种数字图像处理方法,用于重建图像的所有色彩信息,其算法对象为装有彩色滤镜阵列(CFA)的图像传感器,这种彩色滤镜阵列中所有滤镜的通过波长是不完全一致的。逆马赛克变换也称作CFA插值或色彩重建。 同当前大部分的数码相机一样,映美精DFK 31BF03-Z2.H彩色相机使用一片带有CFA的图像传感器采集图像,逆马赛克变换是把采集数据转 阅读全文
posted @ 2012-01-02 16:46 木lin木 阅读(4250) 评论(0) 推荐(0) 编辑
摘要: 数码相机的成像原理图http://www.elecfans.com/article/88/131/190/2009/2009042754407.html数码相机的成像原理可以简单的概括为电荷耦合器件(CCD)接收光学镜头传递来的影像,经 模/数转换器(A/D)转换成数字信号后贮于存贮器中。数码相机的光学镜头与传统相机相同,将影像聚到感光器件上,即(光)电荷耦合器件(CCD) 。C CD替代了传统相机中的感光胶片的位置,其功能是将光信号转换成电信号,与电视摄像相同。CCD是半导体器件,是数码相机的核心,其内含器件的单元数量决定了数码相机的成 像质量——像素,单元越多,即像素数高,成像质量越好,通 阅读全文
posted @ 2012-01-02 16:34 木lin木 阅读(11655) 评论(0) 推荐(0) 编辑
摘要: 转自:http://topic.csdn.net/t/20020905/09/997609.html中国农历的算法归纳如下:1、我国的农历是一种阴阳历1912年以前用。2、我国的农历强调逐年逐月推算。通过逐月推算后才知道某年某月是大月还 是小月;通过逐年推算后,才知道某年是闰年还是平年。3、我国传统历法一直是阴阳历和二十四气并行,二十四气适用于农业生产。4、我国传统历法采用干支循环(六十甲子)为周期的纪时制度。历日的推算有两条原则:1、以月相定日序。即以日月合朔的日期和时刻来定每月的初一。例如,如果今天6时5 分是日月合朔的时刻,则今天是初一。如果第二个 日月合朔落在第30天,那么该月是小月( 阅读全文
posted @ 2011-12-29 13:47 木lin木 阅读(16382) 评论(1) 推荐(1) 编辑
摘要: 今天无聊,突然想算今天是自己出生的第几天,然后就写了个程序;顺便分享,很简陋啊~~呵呵。。//cpp文件,daycal.cpp#include "daycal.h"bool DayCal::isLeapYear(int ayr){ if (mod(ayr,400)==0||(mod(ayr,4)==0 && mod(ayr,100)!=0)){return true;} return false;};bool DayCal::isDataLegal(){ bool islegal=true; int tmp[12]; for (int i=0;i<12 阅读全文
posted @ 2011-12-28 17:00 木lin木 阅读(433) 评论(0) 推荐(0) 编辑
摘要: 转自维基百科:http://zh.wikipedia.org/wiki/%E6%9C%80%E5%A4%A7%E5%90%8E%E9%AA%8C%E6%A6%82%E7%8E%87在统计学中,最大后验估计(英语:Maximum a posteriori estimation或MAP estimation)是根据经验数据获得对难以观察的量的点估计。它与最大似然估计中的经典方法有密切关系,但是它使用了一个增大的优化目标,这种方法将被估计量的先验分布融合到其中。所以最大后验估计可以看作是规则化(regularization)的最大似然估计。假设我们需要根据观察数据x估计没有观察到的总体参数θ,让f作 阅读全文
posted @ 2011-12-25 17:10 木lin木 阅读(1240) 评论(0) 推荐(0) 编辑
摘要: 今天看了一篇关于小波图像去噪的论文,下面从里面摘出来的几段话,用以备忘和复习。。多分辨分析与人类视觉系统有着惊人的相似。人在观察某一个目标时,设其所处的分辨率为j,观察目标所获得的信息为Vj。当走进目标时,分辨率增加到j+l,观察目标所获得的信息为Vj+1,,比分辨率j下获得的信息更加丰富,即Vj 包含于Vj+1,。分辨率越高,距离越近。多分辨分析的空间关系可用图2.2进行说明,其中{Vj}j∈Z。z在{0}和L2(R)之间是相互嵌套的。j越大,相应的层时间分辨越细;j越小,相应的层时间分辨越粗。对于二维图像信号,可以用分别在水平和垂直方向进行滤波的方法实现二维小波多分辨率分解。图2.5为经过 阅读全文
posted @ 2011-12-23 17:05 木lin木 阅读(21036) 评论(0) 推荐(1) 编辑
摘要: 转自博客:http://blog.163.com/fei_lai_feng/blog/static/9289962200991713415422/一. 读写图像文件1. imreadimread函数用于读入各种图像文件,如:a=imread('e:\w01.tif')注:计算机E盘上要有w01相应的.tif文件。2. imwriteimwrite函数用于写入图像文件,如:imwrite(a,'e:\w02.tif',’tif’)3. imfinfoimfinfo函数用于读取图像文件的有关信息,如:imfinfo('e:\w01.tif')二. 图 阅读全文
posted @ 2011-12-22 20:17 木lin木 阅读(39476) 评论(0) 推荐(4) 编辑
摘要: 自己写的小程序,很简陋。function ImgBlock(img,l,w,filename)% 截取图片中心部分,截图大小为w×l,存为filename[imgl,imgw]=size(img);lstart=imgl/2-l/2;lend=imgl/2+l/2-1;wstart=imgw/2-w... 阅读全文
posted @ 2011-12-22 15:56 木lin木 阅读(5442) 评论(0) 推荐(0) 编辑