V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
xianxiaobo
V2EX  ›  程序员

有什么办法避免图片中的文字被 OCR 识别出来呢?

  •  
  •   xianxiaobo · 2021-12-14 09:54:42 +08:00 · 14475 次点击
    这是一个创建于 1104 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在某社交平台给好友发图被提示内容违规了, 图片内容是自己手机在新浪微博 APP 上的截图, 截取的是一条微博的评论, 所以猜想应该是图片中的文字违规了吧。 然后就很好奇有什么简单的办法可以避免图片里面的文字被 OCR 识别出来吗? 比如换一种奇怪的字体?

    83 条回复    2022-03-06 20:48:47 +08:00
    uclort
        1
    uclort  
       2021-12-14 10:07:43 +08:00   ❤️ 4
    增加 OCR 难度势必会影响到阅读难度。
    AlexLokhart
        2
    AlexLokhart  
       2021-12-14 10:08:12 +08:00   ❤️ 3
    可以猜测一下新浪的 OCR 训练集里面都是什么东西,训练集决定了 OCR 能适应怎样的数据(图片),然后反其道而行,换字体估计没啥用,加删除线之类的东西试试
    Alchemistboy
        3
    Alchemistboy  
       2021-12-14 10:09:35 +08:00   ❤️ 1
    画几条彩线,参考那些恶心的验证码
    SenLief
        4
    SenLief  
       2021-12-14 10:11:35 +08:00 via Android   ❤️ 1
    加个水印?
    HankAviator
        5
    HankAviator  
       2021-12-14 10:13:06 +08:00 via Android   ❤️ 8
    传统艺能火星文啊
    root99527
        6
    root99527  
       2021-12-14 10:14:07 +08:00   ❤️ 1
    添加一定的形变(如果有变形字体检测的话此条无效)
    添加一定的水印(具体看水印的形式,比如叠加一定的字在上面,不影响阅读的前提下设置一下透明度和大小)
    替换一定的字符(比如火星文,一般字符识别的字典不会覆盖这么全)
    vocaloid
        7
    vocaloid  
       2021-12-14 10:15:18 +08:00   ❤️ 2
    https://github.com/NitroRCr/Words-away

    不过实测国内一些厂商的 ocr 还是勉强能够识别
    wolfie
        8
    wolfie  
       2021-12-14 10:17:24 +08:00   ❤️ 1
    拱桥形状
    tabris17
        9
    tabris17  
       2021-12-14 10:18:30 +08:00   ❤️ 3
    gif 动态图片,栅格化刷新
    vocaloid
        10
    vocaloid  
       2021-12-14 10:20:50 +08:00   ❤️ 1
    @vocaloid #7 突然发现贴错项目了,是

    https://github.com/yuzu233/anti-ocr
    zxcslove
        11
    zxcslove  
       2021-12-14 10:36:24 +08:00   ❤️ 1
    用草书字体的火星文
    Ackvincent
        12
    Ackvincent  
       2021-12-14 10:39:00 +08:00   ❤️ 1
    这不就是火星文吗?
    Kagari
        13
    Kagari  
       2021-12-14 10:41:00 +08:00   ❤️ 1
    qq 的 ocr 也挺强的,可以把 #10 的图放进去试试
    hervey0424
        14
    hervey0424  
       2021-12-14 10:46:58 +08:00   ❤️ 1
    把文字随机打乱, 然后在后面加上顺序编号
    hutng
        15
    hutng  
       2021-12-14 10:49:30 +08:00 via Android   ❤️ 2
    一律写成拼音,它能 OCR 出来我算它牛逼
    qsmd42
        16
    qsmd42  
       2021-12-14 10:58:16 +08:00   ❤️ 2
    治标不治本 不如换个沟通渠道吧 网球新闻都是用 imessage 或者 tg 发给朋友的
    shakoon
        17
    shakoon  
       2021-12-14 10:58:50 +08:00   ❤️ 1
    @tabris17 #9 我觉得你这个靠谱,每一帧都很短,不影响人眼识别,但可轻易干翻机器。但是问题是,现在已经有使用这种方式截图的软件了吗(无论手机 app 还是 pc 软件)?
    Zy143L
        18
    Zy143L  
       2021-12-14 11:05:07 +08:00 via Android   ❤️ 1
    把图片转过来,再打上几条斜纹。 然后正过来再写一些无关痛痒的文字。
    tabris17
        19
    tabris17  
       2021-12-14 11:29:30 +08:00   ❤️ 1
    @shakoon 我一直打算做一个,奈何没有 apple 开发者账户
    ekidona
        20
    ekidona  
       2021-12-14 11:47:49 +08:00 via iPhone   ❤️ 1
    做过一段时间 OCR , 比较容易实现的 attack 是改变文字的阅读方向,比如从下往上读,从右往左读。当然这种方法要求你的文字有多排。
    1002xin
        21
    1002xin  
       2021-12-14 11:49:54 +08:00   ❤️ 2
    敏感的东西,去 TG 聊吧
    Jooooooooo
        22
    Jooooooooo  
       2021-12-14 11:52:31 +08:00   ❤️ 1
    人能读的东西机器总是可以读的, 成本问题.
    Muniesa
        23
    Muniesa  
       2021-12-14 11:58:35 +08:00 via Android   ❤️ 1
    文字中间插入其它字,用不同颜色区分有效文字和无效文字
    Karonheaven
        24
    Karonheaven  
       2021-12-14 12:02:26 +08:00 via Android   ❤️ 1
    把图片转成 base64 发出去(
    fqzz
        25
    fqzz  
       2021-12-14 12:03:37 +08:00   ❤️ 1
    没有针对 ocr 的对抗网络吗
    kkocdko
        26
    kkocdko  
       2021-12-14 12:05:28 +08:00 via Android   ❤️ 1
    记得之前百度贴吧上有广告机器人,为了逃避审查把图片旋转一个随机角度
    virtual2019
        27
    virtual2019  
       2021-12-14 12:21:47 +08:00 via iPhone   ❤️ 2
    事证实明,文字的序顺不响影阅读
    qsmd42
        28
    qsmd42  
       2021-12-14 12:31:14 +08:00   ❤️ 2
    @shakoon
    @tabris17
    试了下手动制作的效果 https://imgur.com/4BmLIJr
    两张图 交替竖向盖住两行字 设置的一般 gif 支持的最高 50 帧 每帧 20ms 网页上显示效果感觉帧率完全达不到 保存到手机上看帧率是够了 但是 blingbling 的还是有点辣眼 不知道用视频的会不会好一点
    johnsona
        29
    johnsona  
       2021-12-14 12:57:25 +08:00 via iPhone   ❤️ 1
    避免难 加什么噪点 我完全可以用加了噪点的有监督数据训练 但是应该能增加识别难度
    meilaoban945
        30
    meilaoban945  
       2021-12-14 13:07:51 +08:00   ❤️ 1
    高级点的玩法 加对抗噪声
    ciaoly
        31
    ciaoly  
       2021-12-14 13:46:12 +08:00 via Android   ❤️ 1
    对抗噪声+1
    tabris17
        32
    tabris17  
       2021-12-14 13:55:52 +08:00   ❤️ 1
    @qsmd42 读完眼睛瞎了,把栅格设置密度高一点会怎样?
    kujio
        33
    kujio  
       2021-12-14 14:01:16 +08:00   ❤️ 1
    打乱顺序,但人能一眼看出来内容的比如:

    打 但 眼 内 如
    [防]乱 人 看 容 :
    [止文]顺 能 出 的
    [字识别]序 一 来 比
    wa143825
        34
    wa143825  
       2021-12-14 14:05:46 +08:00   ❤️ 1
    我 lol 被封,截图发 QQ 空间都发不出去,采用了降低分辨率,部分字高斯模糊,发出去了。

    试过反色,倾斜,没什么用
    zhoulin
        35
    zhoulin  
       2021-12-14 14:15:45 +08:00   ❤️ 1
    一个笨办法,把图片放到 Excel 表格里面,再把表格发给要看的人
    chibop
        36
    chibop  
       2021-12-14 14:22:18 +08:00   ❤️ 2
    就咪让咪压咪力咪
    喘咪一咪口咪气咪
    给咪它咪机咪会咪
    跟咪着咪音咪乐咪
    将咪爱咪写咪成咪
    一咪段咪过咪去咪
    只咪留咪下咪对咪的咪记咪忆 嘿
    JensenQian
        37
    JensenQian  
       2021-12-14 14:23:06 +08:00   ❤️ 1
    发自己的图床上,发链接给别人呗
    jatsz
        38
    jatsz  
       2021-12-14 14:33:59 +08:00   ❤️ 1
    记得看过一个 AI Introduction ,说是有一些图片可以让基于机器学习的图片识别失败。随手搜索了一下: https://www.theverge.com/2017/4/12/15271874/ai-adversarial-images-fooling-attacks-artificial-intelligence

    可以考虑在图片里加上加上这些示例图片,看看能不能骗过 AI 。
    Eytoyes
        39
    Eytoyes  
       2021-12-14 14:35:32 +08:00   ❤️ 1
    研表究明,汉字的顺序并不定一能影阅响读,比如当你看完这句话后,才发现这里的字全是都乱的
    z1113456051
        40
    z1113456051  
       2021-12-14 14:46:02 +08:00   ❤️ 1
    去除大部分字的下面一半
    GeruzoniAnsasu
        41
    GeruzoniAnsasu  
       2021-12-14 14:48:10 +08:00   ❤️ 2



    镂空就行,不规则镂空+不规则边缘效果更佳
    murmur
        42
    murmur  
       2021-12-14 14:49:29 +08:00   ❤️ 1
    以前都是把图倒转 180 度发,现在不知道了,再以后是 gif 不循环播放扔最后一帧,再就是拼图了,整个拼图指向一个微信公众号
    yaphets666
        43
    yaphets666  
       2021-12-14 15:06:09 +08:00   ❤️ 1
    换奇怪字体即可,OCR 也是训练出来的,训练的模型里没有你选用字体的语料即可
    IGJacklove
        44
    IGJacklove  
       2021-12-14 15:21:15 +08:00   ❤️ 4
    换平台是最好的选择,在这斗智斗勇最后发现只是在浪费时间罢了.建议尝试一下 telegram.
    gps949
        45
    gps949  
       2021-12-14 15:54:42 +08:00   ❤️ 1
    加密?
    cmdOptionKana
        46
    cmdOptionKana  
       2021-12-14 16:20:17 +08:00   ❤️ 1
    不要企图用技术解决非技术问题,以免赢了技术,炸了账号。
    tabris17
        47
    tabris17  
       2021-12-14 16:25:27 +08:00   ❤️ 1
    gps949
        48
    gps949  
       2021-12-14 16:31:03 +08:00   ❤️ 1
    @tabris17 实测 macOS Monterey 可以识别
    gps949
        49
    gps949  
       2021-12-14 16:32:49 +08:00   ❤️ 1
    t/661350
    zlowly
        50
    zlowly  
       2021-12-14 16:35:35 +08:00   ❤️ 1
    文字带下划线可以极大增加 ocr 识别的错误率
    littlewing
        51
    littlewing  
       2021-12-14 16:36:15 +08:00   ❤️ 1
    参考各种验证码
    k8ser
        52
    k8ser  
       2021-12-14 16:36:31 +08:00   ❤️ 1
    shi z bu 行 你 jiujiujiujiujiu zhe Yang :< BI 敬 Direct PhD in (你 XX 我 xx eng 哈哈) Elementary School
    haiironezumi
        53
    haiironezumi  
       2021-12-14 16:47:11 +08:00   ❤️ 1
    建议找黑盒对抗攻击的顶会论文代码,复现代码,对某社交平台进行对抗攻击。你这样不仅可以不被 OCR 识别出来,你甚至还能发一个 workshop ,针对 xxx 平台的黑盒对抗攻击。
    lakehylia
        54
    lakehylia  
       2021-12-14 16:53:06 +08:00
    最简单,发密文就行了啊。用 zip 压缩加密一下,把文件和密码发给你朋友
    Thiece
        55
    Thiece  
       2021-12-14 17:02:01 +08:00   ❤️ 1
    镂空字永远的神
    ![1639472438_365871.png]( https://s2.loli.net/2021/12/14/GEYv9lwRQed38kC.png)
    1343EFF
        56
    1343EFF  
       2021-12-14 17:04:49 +08:00   ❤️ 1
    ⁧谐⁧和⁧反⁧试⁧⼀⁧试
    EchoDeveloper
        57
    EchoDeveloper  
       2021-12-14 17:37:06 +08:00   ❤️ 1
    我觉浮你们啊,你们
    溅藤觉你们新阗界还槩学
    子-个,你们非常熟然西方的这-
    value
    。你们空意还 too syeaLlrs9 ,万食这忘
    戮笀
    诉你行我是身经三城了,级得多了!啊,
    西方购娜
    -个國家我没去过?媒佐他们
    你们要知道,美壁的华菜式,河行出光(你们了不务
    道高劉
    哪垒去了。啊,强娱俯
    笑风金!两以讠
    还是要炱高会二的知识水平!衡戏的忘乐
    而 1
    識得附?


    macos 自带 ocr 识别内容
    EchoDeveloper
        58
    EchoDeveloper  
       2021-12-14 17:37:24 +08:00   ❤️ 1
    unco020511
        59
    unco020511  
       2021-12-14 17:39:29 +08:00   ❤️ 1
    你避免 ocr,那用户体验也会变差啊
    kidonng
        60
    kidonng  
       2021-12-14 17:42:52 +08:00 via Android   ❤️ 1
    @ekidona 老祖宗的方法管用——竖排
    zhuawadao
        61
    zhuawadao  
       2021-12-14 18:05:58 +08:00   ❤️ 1
    Greatshu
        62
    Greatshu  
       2021-12-14 18:57:18 +08:00   ❤️ 1
    这有何难,倾斜虚焦拍屏
    https://s6.jpg.cm/2021/12/14/LVScKw.jpg
    yankebupt
        63
    yankebupt  
       2021-12-14 19:17:03 +08:00   ❤️ 1
    都不要争了,不从根本(制度)上解决问题,小聪明永远玩不过的

    整个5毛钱的神经网络判断下可能是文字的图片
    再整个5毛钱的 OCR 加5毛钱的判断看能不能读出任何白名单文字

    不符条件的全部拒收

    上述办法全都得失效。
    yankebupt
        64
    yankebupt  
       2021-12-14 19:20:20 +08:00   ❤️ 1
    好在现在人还比较理性觉得不值得为审核率这种破事花一块五。
    marcojbk
        65
    marcojbk  
       2021-12-14 21:39:10 +08:00 via iPhone   ❤️ 1
    转换成双拼码,ulpb 。nihcya ,wouiuabi
    v2tudnew
        66
    v2tudnew  
       2021-12-14 22:06:08 +08:00   ❤️ 1
    @Greatshu #62 👍,只要人也看不清,软件就无从下手。😆
    Zien
        67
    Zien  
       2021-12-14 22:16:58 +08:00 via iPhone   ❤️ 1
    很难,我测试过倒着、镜像、换字体都不行,有时候加个彩线自我安慰吧, 即使不审查,被他们整天 OCR 也怪恶心的,万一图片里有私人信息,不知道是不是又被他们收集乱放泄漏了。
    dream7758522
        68
    dream7758522  
       2021-12-14 22:57:47 +08:00 via Android   ❤️ 1
    ┏━┯━┯━┯━┯━┯━┓
    ┃在│,│文│,│把│竖┃
    ┃朋│竖│字│你│文│排┃
    ┃友│排│长│可│字│文┃
    ┃圈│文│度│以│变│字┃
    ┃。│字│与│自│成│生┃
    ┃ │主│边│定│竖│成┃
    ┃ │要│框│义│排│器┃
    ┃ │应│类│竖│效│帮┃
    ┃ │用│型│排│果│你┃
    ┗━┷━┷━┷━┷━┷━┛
    ByteCat
        69
    ByteCat  
       2021-12-14 23:11:25 +08:00   ❤️ 1
    把图片反过来(
    khaki
        70
    khaki  
       2021-12-14 23:20:22 +08:00   ❤️ 1
    对抗攻击了解一下
    feigle
        71
    feigle  
       2021-12-15 00:22:54 +08:00 via Android   ❤️ 1
    Windows 自带画图工具,水平翻转 180 度,对方收到后,再做同样操作即可
    ihciah
        72
    ihciah  
       2021-12-15 02:01:21 +08:00   ❤️ 1
    所有现在 work 的方法都可以做成生成器拿去喂网络,基本无解的。
    从另一种角度理解,前面的图像处理的 trick 算是加密算法本身,而根据密码学的常识,不能试图通过保密算法本身是行不通的。
    可以和朋友约定一个 pre-shared key (比如搞两张图,叠起来看才是最终图像,其中一张就是 key ),或者每次协商一下==
    dartabe
        73
    dartabe  
       2021-12-15 08:51:16 +08:00   ❤️ 1
    你们就不怕这是个钓鱼的问题 ...
    janus77
        74
    janus77  
       2021-12-15 11:08:13 +08:00   ❤️ 1
    最简单的就是翻转 180 度 微博上很多人发图就是这么干的
    shakoon
        75
    shakoon  
       2021-12-15 11:17:47 +08:00   ❤️ 2
    @tabris17 #9 @qsmd42 #28 我也试了一下,发现 gif 是支持最短 10ms 一帧的。但是受限于设备的处理速度,即便设置 10ms ,理论上已经是 100fps 了,但是人眼看起来依然严重不流畅(我还发现手机的显示效果意外的优于 PC )。当然如果深入研究,对栅格的绘制和帧率进行优化,应该会有较大的质量提升
    https://s2.loli.net/2021/12/15/4qlHjLSu1sh9x5o.gif
    https://s2.loli.net/2021/12/15/UbJ89IM6GkxNKg7.gif
    wolfie
        76
    wolfie  
       2021-12-15 14:10:35 +08:00
    @qsmd42 #27
    想起了这个主题
    [有没有一种方法,js 阻止用户截图?](/t/490461)
    tabris17
        77
    tabris17  
       2021-12-15 18:30:05 +08:00
    @wolfie 用 canvas+栅格化刷新试试
    huohei
        78
    huohei  
       2021-12-15 19:33:42 +08:00 via iPhone
    幻影坦克 ocr 里图 但是人看的是表图
    mostkia
        79
    mostkia  
       2021-12-15 21:51:58 +08:00
    研表究明,汉字的序顺不一定能响影读阅的体验
    qinxi
        80
    qinxi  
       2021-12-15 23:50:01 +08:00
    就怕没提示, 然后被带走.何止账号炸,人都炸了
    sl0000
        81
    sl0000  
       2021-12-17 16:07:09 +08:00
    对于苹果设备,可以利用这个漏洞 https://www.da.vidbuchanan.co.uk/widgets/pngdiff/
    sl0000
        82
    sl0000  
       2021-12-17 16:13:59 +08:00
    这个 Apple 通过 OCR 识别不是 Apple
    S1ngleton
        83
    S1ngleton  
       2022-03-06 20:48:47 +08:00
    可以试一下这个: https://github.com/Leisurelybear/ocr-bye
    虽然界面简陋,后续准备加更多内容,包括点线之类的
    这是 Demo 页面: https://leisurelybear.github.io/pages/ocr-bye/index.html
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2785 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 46ms · UTC 08:46 · PVG 16:46 · LAX 00:46 · JFK 03:46
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.