首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 互联网 >

东京大学招生海报下的那些事(上)

2012-11-11 
东京大学招生海报上的那些事(下)我也跟着搞了搞,下面把感受和过程贴下。我选了妹子打伞的那一张,首先就是OC

东京大学招生海报上的那些事(下)

我也跟着搞了搞,下面把感受和过程贴下。

我选了妹子打伞的那一张,首先就是OCR识别01,在linux下用的tesseract-ocr,具体使用方法在这篇帖子里提到了,很详细,不过稍微有些旧,具体配置过程参见里面提到的官方文档。

提前说一下,偶用tesseract-ocr识别的并不足够准确==!(看STAGE1里面人家用的是汉王搞的,我后来就没有再试,直接用的人家搞下来的01继续了下一步。。)我是这么做的。

首先在google code上下载了tesseract-ocr源码,按文档解决好依赖,然后配置安装。接着下载语言包,在列表里可以看到一个Math/Equation的,不是因为要识别数字就下载这个包,我们只要eng的就可以。然后解压到tessdata下,如果你有自己的安装目录,要export一下tessdata的副文件夹(如果找不到训练集,tesseract也会提示你设一下),不然的话就放在/user/local/share/tessdata下。最新的tesseract已经支持不少图片格式了,因此没必要在convert格式。

执行tesseract 1.png 1.out -l eng。结果只有一点点乱七八糟的东西,一点意义也没有。。为了提高识别准确度,可以把每一行截个图,逐行处理。甚至可以用PS,总之提高图片里数字的对比度跟清晰度,然后再给tesseract识别。

这回好多了,不过发现结果里面有好多字母,我们明明只需要数字的,没必要让它把字母也包进来,况且还是错的。。可以给tesseract加个配置项digits,这样它就只会识别数字了,执行tesseract 1.png 1.out -l eng digits,结果里有一些94.。。再缩小范围,让tesseract只识别01. 不过默认文件没有这个配置项,我们可以手工写一个。

在/usr/local/share/tessdata/configs里,sudo cp digits binarys,然后修改一下binarys,使其只识别01. binarys最终内容如下:tessedit_char_whitelist 01

现在执行tesseract 1.png 1.out -l eng binarys,结果已经好很多了。不过苦B之处在于,这个结果总归是不可信的,你还得一个一个去比对tesseract是不是识别对了。

总结,OCR识别有意义的文字,对准确度要求并不高。但是识别二进制码要求就相当高了,错一个都没的进行下一步==!


接下来就是把识别的文本的二进制码转化成一些有意义的东西。在(上)中,可以看到作者对每行几个,一共几行,总数是不是8的倍数等都统计了一遍,要想出这些二进制码到底是什么感觉是最最难的一步,得有足够的想象力。妹子打伞的这个还好说,直接写成二进制文件就是下一步的结果,红衣端庄全身照的那个,作者最后说搞出来一段二进制码是重复的,并且最后一次重复还有点噪声,然后作者就直接扣出那一段分析,不管其它的了,总觉得不够完美啊,恩。。果然还是这一步最难了。

下面把文本二进制码写成二进制文件的代码贴下,需要说明的是,这段代码不通用,因为我默认的二进制码总数是8的倍数(太烂了,好久不写cpp)。

#include<stdio.h>int main(){    int arr[42];    int x,i;    for(i=0;i<42;i++){        arr[i]=0;    }    for(i=0;i<50;i++){        x = i * 6 % 41;        printf("%d",x);        if(arr[x]==0){            arr[x]=1;        }else{            printf("collision!");        }        printf("\n");    }    return 0;}
输出结果发现,前41个根本没有冲突,接下来才会发生冲突。而www.i.u-tokyo.ac.jp/fun/hikari-loveletter,这段URL长度正好是41!因此只要对URL每个字符换到新的位置,就是w-aurlwtcniewo./-t.kjhltiypioe.o/kvru.fae这段混乱的字符了。

东京大学这么用心,给跪了。。情报,和服,妹子,诗跟音乐,这海报牛大了。


1楼uylong5天前 12:43
有点意思啊。不知道这些人是怎么玩的啊。
Re: mtawaken4天前 23:06
回复uylongn恩,就好象解谜游戏一样,(中)里面有写,这其实是一个论坛里的人集思广益才一步步做出来的,一个人想到的话,真不简单

热点排行