EverET.org

好记性不如烂笔头

Python进行图像处理——PIL简介

| Comments

PIL中包括Image,ImageEnhance,ImageGrab等。

Image

Image模块仅用一个类来表示PIL中的图像,并提供了许多工厂函数,不同类型的图像可以使用统一的接口进行处理。

http://www.pythonware.com/library/pil/handbook/image.htm

主要函数(可以顾名思义,这里主要有个提纲,方便记忆)有:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
**Image.new(mode, size)** => image

**Image.new(mode, size, color)** => image

**Image.open(infile)** => image

**Image.open(infile, mode)** => image

**Image.blend(image1, image2, alpha)** => image<!-- more -->

**im.convert(mode)** => image

**im.convert(mode, matrix)** => image

**im.copy()** => image

**im.crop(box)** => image

**im.paste(image, box)**

**im.paste(colour, box)**

**im.paste(image, box, mask)**

**im.paste(colour, box, mask)**

**im.resize(size)** => image

**im.resize(size, filter)** => image

**im.save(outfile, _options..._)**

**im.save(outfile, format, _options..._)**

**im.seek(frame)**   可用于gif

**im.split()** => sequence    RGB通道分离

**im.transpose(method)** => image

ImageEnhance

图像增强,锐化,对比度,亮度的处理。

http://www.pythonware.com/library/pil/handbook/imageenhance.htm

ImageGrab

ImageGrab模块可以进行屏幕截图。也可以复制剪切板中的图像。不过手册说仅仅适用于Windows。

http://www.pythonware.com/library/pil/handbook/imagegrab.htm

1
2
3
4
5
**ImageGrab.grab()** => image

**ImageGrab.grab(bbox)** => image

**ImageGrab.grabclipboard()** => image or list of strings or None

ImageDraw

可以画2D图。

http://www.pythonware.com/library/pil/handbook/imagedraw.htm

Python进行图像处理——开篇

| Comments

Python是一个非常简洁优雅的语言,库非常的丰富。在图像处理方面,有个PIL(Python Imaging Library ),这个是一个应用上手非常简单的Python的图像处理库。

PIL的下载地址可以在 http://pypi.python.org/pypi/PIL 找到。

手册在 http://www.pythonware.com/library/pil/handbook/index.htm ,这里有非常详细的教程。

我们安装完PIL后,可以在Python交互解释器很中输入:  import Image

image

如果没有发生错误,这说明安装完成了。我们输入以下代码,将会打开一幅图像。

python
1
2
3
4
5
6
7
import Image

img = Image.open("yun.jpg")
print img.format, "%d * %d" % img.size, img.mode
new_img = img.rotate(45)
new_img.save("new_yun.jpg")
new_img.show()

中国人使用筷子的十二种忌讳

| Comments

好吧,最近又被人骂说我用筷子没文化没传统,于是记录一下用筷子有什么禁忌。学习一下中国的传统文化。

中国人使用筷子用餐是从远古流传下来的,古时又称其为“箸”,日常生活当中对筷子的运用是非常有讲究的。一般我们在使用筷子时,正确的使用方法讲究得是用右手执筷,大拇指和食指捏住筷子的上端,另外三个手指自然弯曲扶住筷子,并且筷子的两端一定要对齐。在 使用过程当中,用餐前筷子一定要整齐码放在饭碗的右侧,用餐后则一定要整齐的竖向码放在饭碗的正中。但这要绝对禁忌以下十二种筷子的使用方法。

1三长两短:

这意思就是说在用餐前或用餐过程当中,将筷子长短不齐的放在桌子上。这种做法 是大不吉利的,通常我们管它叫“三长两短”。其意思是代表“死亡”。因为中国人过去认为人死以后是要装进棺材的,在人装进去以后,还没有盖棺材盖的时候,棺材的组成部分是前后两块短木板,两旁加底部共三块长木板,五块木板合在一起做成的棺材正好是三长两短 ,所以说这是极为不吉利的事情。

改变你一生的5句英文励志铭言

| Comments

1.Always be a first-rate version of yourself, instead of a second-rate version of somebody else. – Judy Garland

永远做自己的一流版本,永不做他人的二流版本。——朱迪·嘉兰(Judy Garland,美国30~50年代著名影星)

I believe that having an idol is often VERY GOOD to the point where you take his/her positive traits and copy them (like persistence, etc). But copying a person to a point where you are the SECOND RATE of him/her is plain stupid.For example, I like Winston Churchill. I like his persistence and quotes about success. But there’s some things I don’t like about him too. I take only his positive traits and see to model them at me. I leave out the negative ones. Simple as that. 我相信有了偶像,就有利于人们接受并模仿他们的优秀品质(比如坚毅等等)。但是如果完全复制别人,成为了他/她的“二流版本”,就愚不可及了。举个例子,我喜欢温斯顿·丘吉尔。我欣赏他的坚持不懈与他对成功的见解。但是他的有些方面我并不苟同。我取其精华,并作为自己的榜样。同时去其糟粕,摒弃消极的品质。各位读者们可以以此为例。

我们的游戏 Scar

| Comments

Scar,中文名:伤疤,是我们的《计算机图形学》《IT项目管理》的大作业。虽然不想做的很大,但是最后我们写了4万多行代码。发现也是挺大的。

简介

我们花费的时间:4个月(9.14 – 12.14),这个是由屠文翔同学辛劳得出的粗略统计。

  • 验证准备阶段:9月14日 – 9月21日

  • 设计阶段:9月22日 – 10月18日

  • 构建阶段:10月19日 – 11月16日

  • 赶工阶段:12月6日 – 12月14日

参与人数:7人(其中编外2人)

  • 项目经理:屠文翔

  • 开发人员:华亮、杨旭瑜、杨成熙、谢骏飞 、林剑飞、陈存腾

总代码量:42437行

  • 这个是我们非常努力得到的,记得那段时间我也基本持续几个月每天两三点睡,课也不上,去上了也是大家带着笔记本一起在教室后面写代码。

  • 我们的项目是开源的,遵循Mozilla Public License 1.1协议,托管在Google Code上。http://code.google.com/p/opengl-scut/

管理远程主机的一些技巧分享

| Comments

对于管理远程主机,我想大家都一般使用ssh吧,在本地是Linux的环境下,那么都是挺方便的,什么都不需要弄就可以用

ssh -l username hostname

来登录远程主机。而在Windows上,虽然有专门的ssh客户端,不过在cygwin里面还是挺亲切的。对于cygwin,我们可以设置在安装的时候选上OpenSSH,这样就可以方便地在Windows上使用ssh了,当然还有很多非常棒的工具可以选择安装,在国内选择163的镜像速度还是挺快的。

每次登陆都要密码?免口令SSH登陆!

我们可以创建创建公钥和密钥来实现免口令登陆,公钥放到服务器那里,这样在登陆的时候只要公钥密钥匹配正确就可以不需要输入密码了。

好,现在我们来创建公钥和密钥,我们使用ssh-keygen来生成。

bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/Cedric Porter/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in id_rsa_test.
Your public key has been saved in id_rsa_test.pub.
The key fingerprint is:
60:7c:f3:42:58:57:42:1f:dc:65:e2:05:3d:49:54:02 Cedric Porter@CedricPorter-PC
The key's randomart image is:
+--[ RSA 2048]----+
|        ..+oEo**B|
|     . o . o.o.B.|
|      = +   . . .|
|     . + o       |
|        S .      |
|         .       |
|                 |
|                 |
|                 |
+-----------------+

然后我们就在我们的HOME目录下的.ssh目录下创建了公钥密钥对。

低内存VPS的配置

| Comments

十几天前和隔壁宿舍的伟大的晓彬同学一起低价购置了一台二手电脑摆在宿舍做服务器,处理器虽然只有1.6Ghz,不过至少也有1G的内存可用。装了Ubuntu Server 11.10,机箱后面只是插了电源和网线,因为木有钱,所有就不买显示器,不过买了也占位置。另外,因为学校是华南地区教育网的接入点,所以我们每人端口都有一个公网的固定IP,这是做服务器的良好条件啊~这个真是太幸福啦~

不过寒假回家了,宿舍的服务器总不能开着吧,到时把宿舍烧了就悲剧了:–( 。于是乎,还是租个虚拟服务器比较靠谱。

在两天前奖学金终于到了,于是便下手买了VPS,原因有很多,主要就是要有一台常开的机器来服务我们这些人类。其实发现有台在国外的VPS确实挺好的,最主要的就是可以提供VPN。自己从零开始搭建服务器,既是机遇也是挑战啊~

好,现在回忆一下如何搭建这个网站。

寒假计划

| Comments

周六回到家,今天是周三了,天天坐在电脑前日子过得好快啊,还想出去走走的,家里的天气比广州不知好多少,好想出去闲逛去拍照啊~

想想寒假有什么东西要做先~

  1. Clover的文档和骨架

  2. 搭建Git

  3. 完善Scar

  4. 转移QQ空间的相册过来

  5. 看书

  6. 完善一下UltraDemo的语法解释,增强健壮性,改为多进程,有空再把绘图从GDI改成OpenGL或者其他了

回家后,电信变成悲剧的铁通

| Comments

回家了,因为电信太贵,所以家里换成了铁通。铁通首先很悲剧地就是没有公网IP,这样我就很难让别人直接连接到我的电脑了。

其次,我终于见识到了铁通断网的威力了,今晚就经常断网,一次断个几分钟,唉,真是悲剧,害得我还以为我的网站崩溃了。