[简易教程]如何规避国内网站的OCR审查

更新:
自制了一个规避OCR的开源程序, 品葱文章链接: https://www.pincong.rocks/article/393

来自我的个人博客, 原博文地址
本教程不够严谨, 不保证能规避所有OCR软件的审查, 毕竟技术一直在进步.
我只是在这提供一个所有人都能学会的简单方法, 不是什么高级技术.希望能帮助墙内网民规避审查.

以下是原文(图片显示可能会出问题, 请点原文链接观看):

欢迎转载, 转载请注明出处, 谢谢

现在国内不少网站已经用上了OCR技术来审查图片内的文字, 和文字一样, 检测到相应敏感词后即删除图片, 以封锁言论. 这里介绍一个简单的方法来规避OCR审查, 以及实测的效果.(本测试不够严谨, 不保证能规避所有OCR软件的审查, 毕竟技术一直在进步)
OCR技术的维基百科介绍

这是本文中测试用的图片:
https://alcatrazhome.files.wordpress.com/2019/01/avoidocroriginal.jpg?w=1100
首先把这个图片上传到某国内大型在线识别平台测试, 很明显, 完全无错误识别
https://alcatrazhome.files.wordpress.com/2019/01/originalocrtest.png?w=1100
现在将图片倒置, 这也是一些国内网民企图规避审查的方式之一, 试试是否有效. 但是很遗憾, 没有有任何作用.
https://alcatrazhome.files.wordpress.com/2019/01/invertimgocr.png?w=1100
现在尝试对图片进行遮盖, 这里使用iOS自带的画笔, 在不影响阅读的前提下对原图片进行涂抹, 同时倒置图片.
https://alcatrazhome.files.wordpress.com/2019/01/toolofpaintocr.png?w=1100
现在再测试一下, 可以发现两个在线OCR识别平台都无法正常识别图片内容, 成功规避了审查. 当然, 正如开头所说, 我不清楚各大网站使用的是不是更加先进的OCR技术, 我这个方法只不过能干扰两个国内大型在线OCR扫描平台, 其他平台我还没有测试.

所以建议各位以后在墙内利用图片传播文字时, 使用上面的方法来规避机器OCR审查, 让你的图片活得更久一些 : )

如果各位还有其他更好的方法, 欢迎分享出来, 谢谢!
13
分享 2019-01-15

32 个评论

OCR是一种轮廓识别技术,利用类似验证码的干扰背景+撕裂,可以有效对抗。
但麻烦的是普通人通常搞不定,最好是有个在线平台。
是的, 可惜我也没学过图形处理, 有时间研究一下, 看看有没有现成的生成验证码的软件, 尝试着改一下.
OCR计算量不小,应该不会布置吧
话说回来,OCR比反OCR难多了,反OCR我一分钟能想100个点子
不过即使如此,也不建议在非匿名平台发敏感内容
因为你即使做了反OCR,哪天因为别的事栽了,这些东西也可以人工识别事后追责
顺便说一句,OCR其实是很难的,尤其对汉语这样的
楼主测试用的字体太规范,直接用个比较夸张的美术体即可
比如华康娃娃体:)
我刚刚弄出来一个生成类似于验证码的文字图片的软件, 和你说的一样, 背景加上干扰噪点, 连某大型AI识别平台都跪了.
早就布置起来了, 不然每次闹事微博上一堆一堆发图片带文字的, 怎么审核, 人工成本更高. 现在OCR在手机本地运算都有不错的识别率了. 百度已经开始推广OCR内容审核了.
可以试下谷歌的AutoML,免费试用,自定训练,以子之矛,攻子之盾
因为别的事栽了那就真的无解了, 反正我就是研究研究对抗审查, 也不在国内发什么, 不怕, 我连微博帐号都没有, 就是瞎逛. 我主要还是看到每次事情爆发, 人们都在weibo上传播消息, 却被各种删, 希望尽我所能帮帮他们.
方法太多了
1。用美术字体,比如华文彩云之类
2。每个字随机变化,倾斜(-5度~+5度),缩放(90%~110%)
3。加入随机生成的背景线条
……
几乎都不影响人类阅读,但能瞬间把OCR成功率降到接近0
OCR很难,我在我机器上用软件离线跑了一下你的图,要好几秒,我的配置肯定不算低,所以大规模免费使用的OCR注定是智障级别
这么搞,未免太影响阅读了吧
随机变化是怎么做到的呢??(非手动)
我都是用在线平台测试的, 都瞬间识别成功, 个人pc的计算力和服务器没有可比性. 你说的随机在背景加入干扰像素的软件我正在弄, 功能完全实现了, 也成功干扰识别,本来是做底层的, 挺长时间没弄这些了, 有点手生
用python就可以吧(我没干过,因为我用的其它工具,python就显得麻烦了)
读取字体生成图像
你说的艺术字体我试了, 瞬间完美识别.一个字没错
我觉得主要是我这个软件没针对中文OCR作优化,服务器再强,不能并行的任务,也就快100倍撑死了,何况你这个例子其实太简单。就是因为OCR计算量太大,我怀疑很多根本没有OCR,只是计算hash对比,或者稍复杂一点,算个直方图,感觉是文字就给拦了。
加噪点是最简单的,但是也是最容易失效的:)
你要真想做,我说一个方法,你找两张真实的照片(一样大),用文字内容作mask,把这两张照片blend一下:)
你用华文彩云嘛,再调调间距,让字稍微有点重叠
可能没说清楚,你找两张图片一张叫A,一张叫B,字图叫M(三张一样大小),然后生成一张新图,新图在某点处的像素,如果M在此处的像素是黑色就选A图中的对应像素,是白色的选B:)
那些以艺术字我都试了一遍, 包括你说这个.
你这个调整文字的....我还是没太看明白. 反正我那个软件以及可以正常使用了, 有时间的话整理一下发出来.
关于例子太简单这点, 我上维基百科复制了一大段话, 加了噪点以后送进去识别一下, 还是很快识别好了, 只是一堆错的.....去掉噪点以后依旧识别的很快, 但是噪点很少.
请问为什么加噪点容易失效呢??
因为噪点很容易去掉啊,高频噪声很容易过滤掉
我也本地测试了一下,发现现在OCR确实比我想象的强多了
不过加一点扭曲就废了,几乎不影响阅读
又测试了几种,人的脑补能力还是比计算机强太多了,尤其是干扰下,即使懒得写代码只用几种滤镜我也能想到各种花式吊打OCR的方法,太无聊了:)
有没有机器学习的大神解释一下如何反机器学习手段的OCR
技术上来说当然是要以子之矛攻子之盾
去下个开源的验证码生成器打成验证码就好了,
by definition 是难以识别的

至于楼上那些调字体调颜色都是在重新发明验证码
有没有机器学习的大神解释一下如何反机器学习手段的OCR

机器学习ocr理论上就是用机器模拟人脑的学习过程,理论上只要给予机器足够的训练,人能认识的机器都能。
范松忠 黑名单
这么说吧,只要验证码存在一天,OCR就不会强大到封锁一切。也就是验证码就是OCR的克星。
如果用中文字拆散得到的笔画和部件做噪点,是否能干扰ocr识别?例如:勹 亻乛乚丿亠………如果大小尺寸与文字本身出现这些笔画时的尺寸【接近但不相等】,位置随机或者干脆叠加在原本的文字上,即使颜色一样,应该不干扰人眼阅读,不知这样能不能干扰程序识别?
cartoonhero 新注册用户
图像左右镜像,然后旋转90度,用微信和QQ的文字识别功能都没有识别出来。(本人小白,不知道有哪些大型OCR网站,只试了常用的这二个软件)
范松忠 黑名单
这个,你知道,只要验证码这东西地球上存在一天,OCR审查就无效,要是有效,那么验证码就不存在了。
>>这么说吧,只要验证码存在一天,OCR就不会强大到封锁一切。也就是验证码就是OCR的克星。


CAPTCHA战争
>>早就布置起来了, 不然每次闹事微博上一堆一堆发图片带文字的, 怎么审核, 人工成本更高. 现在OCR...

鬧事?是把「反抗強姦」叫「鬧事」嗎?
即使有反OCR高危内容也不要在墙内发,避免人工审核被拉清单

要发言请先登录注册

要发言请先登录注册