V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
hahaba
V2EX  ›  分享发现

撸了一个在线将图片转换成代码注释的一个功能

  •  
  •   hahaba · 2019-01-24 17:02:08 +08:00 · 3259 次点击
    这是一个创建于 1912 天前的主题,其中的信息可能已经有所发展或是发生改变。

    图片太复杂的转换效果不是很好,比较简单的就能很好的还原。

    转换前配置符号时不建议使用(!%;",)这种,因为效果不是很好看。

    看看示例:

    想试试的可以撸撸。应该没啥问题了:https://img.sbge.cn

    9 条回复    2019-09-01 09:22:23 +08:00
    xiaotuzi
        1
    xiaotuzi  
       2019-01-24 18:13:33 +08:00 via iPhone
    我记得 PHP 有个处理验证码的,叫二值化,也可以生成,不过生成的图片比较大,一个像素一个点,以前做过。
    hahaba
        2
    hahaba  
    OP
       2019-01-24 18:27:38 +08:00
    @xiaotuzi 这个是用 python 的 pil 库做的,原理与之大不相同~~~~
    nullornull
        3
    nullornull  
       2019-01-24 18:47:31 +08:00
    @xunbug 水平方向有压缩,变形了,改下应该会更好些.
    还有就是如果这个是楼主自己做的,可以发到分享创造节点: /go/create
    nullornull
        4
    nullornull  
       2019-01-24 19:02:39 +08:00
    @xunbug 我又看了下,发现应该是垂直方向做了拉伸,因为我做了几个发现文字一行总是 101 个字符,但是行数不同,但最后看起来都有些变形.
    nullornull
        5
    nullornull  
       2019-01-24 19:32:57 +08:00
    @xunbug 没有看到楼主代码,可能是之前固定了字符画的宽度,建议按照图片有效部分的宽高动态调整字符画宽高.
    顺便问下是怎么实现的,是不是先把图片像素的 RGB 值映射到灰度值,然后再将灰度映射到调好的字符上?
    hahaba
        6
    hahaba  
    OP
       2019-01-24 20:05:34 +08:00 via Android
    @nullornull 原理差不多,宽度我做了限制,只是简单做了测试。我发现不做宽度限制处理的时候会占用大量资源,不知原因何在。明天继续完善一下
    hahaba
        7
    hahaba  
    OP
       2019-01-25 10:12:53 +08:00
    @nullornull 已经进行了优化,然用户自定义成注释的宽度
    nullornull
        8
    nullornull  
       2019-01-25 11:52:33 +08:00
    @xunbug 不错不错.
    我又去玩了几下,虽然现在高度固定了,但是可以自己控制宽度的拉伸了,要是都可以自定义就好了.
    本来我准备做个好玩的字符的图发出来,但是 v2 这里并没有给那些自定义字符一样的宽度,我换了宽度一样的字符,但是出来的效果就不怎么好了.
    nielinjie
        9
    nielinjie  
       2019-09-01 09:22:23 +08:00
    一个默认图床加个 ide 插件,即时展现真正的图片,可能效果比较好。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1109 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 18:32 · PVG 02:32 · LAX 11:32 · JFK 14:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.