`
abruzzi
  • 浏览: 452717 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论
文章列表
最早接触的计算机系统,是一家企业的FreeBSD的数据服务器。由于我家老大在其中工作,所以分配给我一个帐号,我就天天在其中尝试一些命令,who了,vi了,cc了什么的,当时,系统只是一个黑屏绿字的终端,比较无聊。后来上了大学,在自己的机器上装了Fedora Core Linux,用来学习数据结构,编译原理,操作系统原理等等,十分有意思。现在想来,*nix系统中的很多思想仍然是非常有用的。   大二的时候学习完软件工程后,看了一本书:《UNIX编程艺术》 ,收获确实挺多,现在也工作了一段时间了,就把*nix系统中的一些简单的思想做个小小的总结吧。   保持简单 每个程序都应该尽可能的简单(当然 ...
上学的时候,大概是大二时,将自己那个很古老的ThinkPad T23 装成了linux,很舒服的用了一年多,深深的喜欢上了这种纯面向开发的操作系统环境。最近,一直再考虑工作环境的移植问题。由于公司是开发基于web的java产品,所以基本时平台无关了,趁周末的机会,将机器装成了Fedora Core 10。新版本就是好啊! 安装完成后,基本上所有的硬件都正常的设别出来了,连刚出来没多久的一个摄像头也认出来了!   配置好Eclipse(3.4), Firefox(3),JDK,基本就可以正常工作了,编辑器一直在用vim,在windows下就是了,gimp的功能跟photoshop不相上下,办公系列 ...
OpenCV全程open source computer vision library.是Intel开发的一个计算机视觉库,包含了多种计算机图形图像处理的库,目前版本为V1.0,可以在商业和研究领域免费实用。 主要用于处理 图像处理 计算机视觉 模式识别 物体识别(人脸识别, ...
Image模块的介绍创建一个新的图片 Image.new(mode, size) Image.new(mode, size, color)   层叠图片层叠两个图片,img2和img2,alpha是一个介于[0,1]的浮点数,如果为0,效果为img1,如果为1.0,效果为img2。当然img1和img2的尺寸和模式必须相同。这个函数可以做出很漂亮的效果来,而图形的算术加减后边会说到。 Image.blend(img1, img2, alpha)  composite可以使用另外一个图片作为蒙板(mask),所有的这三张图片必须具备相同的尺寸,mask图片的模式可以为“1”,“L”,“RGBA”( ...
关于PIL库的一些概念 pil能处理的图片类型pil可以处理光栅图片(像素数据组成的的块)。通道一个图片可以包含一到多个数据通道,如果这些通道具有相同的维数和深度,Pil允许将这些通道进行叠加模式 1  1位像素,黑和白,存成8位的像素 L  8位像素,黑白 P  8位像素,使用调色板映射到任何其他模式 RGB  3×8位像素,真彩 RGBA  4×8位像素,真彩+透明通道 CMYK  4×8位像素,颜色隔离 YCbCr  3×8位像素,彩色视频格式 I  32位整型像素 F  32位浮点型像素 尺寸通过图片对象的size属性可以得到图片的尺寸 ...
  • 2009-01-11 22:36
  • 浏览 44558
  • 评论(9)
  • 论坛回复 / 浏览 (9 / 20967)
Python是一个神奇的语言,上手极快,而且可以找到很多写的非常优秀的模块。这几天在给单位做CSS Sprites时,需要将一些图片先进行缩略,然后拼成一张大图,这样虽然数据量的传输没有降低,但是可以减少链接请求数,从而提高WEB服务的速度。 一时没有找到顺手的图形处理工具,(photoshop, GIMP太专业,而且体积太大,如果为了处理几百张图片就要装,未免浪费)于是自己用python写了一个,其实我学习python一共花的时间不过5小时,关于pil中的使用方法大部分来自pil的handbook,不过很快就完成了任务,顺便记录一下。   思路很简单: 遍历一个文件夹中的所有指定格式的图片,并 ...
大家不要被这个名字诱惑,我讲的是javascript的高阶函数的概念,而不是说本教程为高阶教程。 最近研究SICP,对其中的高阶函数抽象有了一些体会,并用javascript中进行了一些实验,现在把这些实验分析一下,希望对大家有所帮助。 高阶函数思想由来已久,最早可能要追溯到可计算理论的初期,在lambda演算理论中就有了这个思想了。最早的实现可能算是lisp语言。可以说,这个运算模型跟图灵机的计算能力是相当的。只不过后来历史选择了冯诺依曼体系。而lambda只好作为一个虚拟的实现运行在具有同等计算能力的图灵机上。更高层次的抽象 抽象具有层次,比如,将一个小的运算封装成一个函数,就是一 ...
在web开发中,有时需要实时的向用户提示一些有用的信息,比如数据库插入/删除成功,网络情况等。而由于面板上的空间有限,我们需要设置一种可以动态显示的提示信息,这种信息在页面上动态生成,过一段时间(如5秒)后自动消失,这样既可以通知到用户,又可以节省页面上的空间。 事实上,一些桌面应用早就使用了这个技术,比如gmail的提示,卡巴斯基的提示等都采取这种方式。周末研究了一下这块,自己用javascript和CSS实现了一个动态的tip。先看看效果:  提示可以有很多种,每一种都可以定义一个样式。  从上边的分析来看,我们的动态tip需要这样几个参数: container:提示消息的容器( ...
HOC(High Order Calculator) 是一个解释型的程序语言,最初的版本由Brain Kernighan和Rob Pike在《The UNIX Programming Environment》[UNIX编程环境]一书中作为一个例子给出。本身由lex/yacc构造,结构十分清晰,作为一个教学语言,HOC支持函数,具 ...
写了好几篇关于表格的操作的JS脚本设计了,倒不是说我个人有表格情结,实在是日常工作中表格用的地方太多,但是又由于表格本身不太好操作,所以用JS脚本化一下,还是比较有必要的。 把前一段时间做的一个表格编辑的脚 ...
正如上一篇文章所说,table是日常编辑中比较常用的一种结构。而单调的表格效果已经无法满足日益强烈的视觉需求。周末对表格的各行变色,鼠标跟踪进行了一些学习和研究,并学习了html的自定义标签,实现了按行进行mark的一个简单功能。 现在把效果和代码贴出来分享,希望给需要的人以帮助。 先看看效果: 图中第3条记录所在的行的背景色与别的行不一样,标志着鼠标目前在此行悬停。当鼠标移开之后,改行会恢复原先的背景色,此为鼠标跟踪功能。 图中的奇数行表现为一种颜色,偶数行表现为另外一种颜色,这个实现上比较简单,先统计行数n,然后用n模2,如果余数为0,则改行为偶数行,设置其背景色,如果余数为1,则为奇 ...
前一向研究HMM(隐马尔可夫模型),在wiki上看到了一个python实现的forward&viterbi算法,就先放在这里,过几天研究。HMM是人们在研究人工智能(语音设别,模式识别)方面的一个重要理论,差不多相当于“知道一些线索的情况下,跟据结论推出结果”的算法,很简单,很强大!   好了,先看看这个代码,慢慢分析之 def forward_viterbi(obs, states, start_p, trans_p, emit_p): T = {} for state in states: ## prob. V. pat ...
首先说一下,这个例子不是我原创的,例子本身来自《JavaScript权威指南》(4th Edition),之所以放在这里,实在是因为这个js脚本太牛B了,如果有正则表达式的基础,你可以很轻松的实现各种各样的js验证器,这个js脚本只是提供一个通用的验证框架,具体的验证规则,以及不能通过验证的时候所产生的动作完全可以定制。好了,言归正传。   首先,给需要验证的表单(Form)中的需要加入验证器的input控件加入一定的验证规则,这个例子中是通过给Input控件加入一个自定义的属性来实现的,如下例: <script src="validate.js" ></s ...
在日常的WEB开发中,对表格的排序经常会用到,于是在网上找了些资料,然后自己下来研究了下,做了一些整理,现在将他贴出来,一来备忘,二来可以帮助其他需要的人。   需要注意的地方: 关于table中按行按列排序的方法: 1. 取出每一行作为排序的单元,结果即为完整的正确的排序。 2. 每一行中有一个关键字用于排序的标准 2.1 每一个关键字都有类型的区别,如string, int, date, float等类型 3. IE和Firefox中,元素中内容的存储形式有一定的区别 4. 数组有已有的排序接口,[无参数形式和有参数形式] 4.1 无参数形式的排序,按第一个字母的顺序进行,第一个字 ...
Java的远程方法调用(Remote Method Invocation) 是为了分布式计算而提出来的,最近做一个项目需要用到,所以学习了一番,现在将一个简单的demo贴出来,以便想要学习RMI的同志可以快速上手。   RMI的调用是基于接口的,这个接口的定语需要客户知道,客户程序运行时需要一个实现该接口的类的存根(stub)。RMI的内部使用了TCP/IP连接方式,因此需要一个安全机制,且需要对客户机的权限进行一定的设置。   想要被远程调用的接口需要扩展Remote类,接口中定义的方法需要对RemoteException异常进行处理,当然,也可以只是抛出异常,将对异常的处理延迟到别的类。 ...
Global site tag (gtag.js) - Google Analytics