TC官方合作论坛

 找回密码
 立即注册
查看: 127|回复: 3

[已解决] 请教大佬,做字库二值化优化问题

[复制链接]
发表于 2021-7-8 09:37:00 | 显示全部楼层 |阅读模式
请教优化问题,自己写的三个小函数,目的是实现点击鼠标附近位置图片二值化,
可是比起TC的图色助手慢很多,想知道图色助手怎么实现的,我该怎么优化?

很简单的测试界面,就两个控件,标签0和按钮0,
读取按钮上的字,标签显示二值化图,
接下来弹出一个窗口让玩家定义文字作为识字结果,
再把二进制转成十六进制保存成TC字库就行了
下面是源码:

function 取二进制(x,y)
    var i=0,j=0,二值化
    循环(i<7)
        j=0
        循环(j<11)
            二值化=二值化&(颜色匹配(x+i,y+j,"ffffff-999999",1.0)+1)
            j++
        结束
        i++
    结束
    返回 二值化
end
//传入坐标参数x,y,目的是取坐标往右7个像素,往下11个像素范围内的图片,转成二进制数据,这一步特别慢,所以范围选的特别小,应该怎么优化?

function 二值图(二进制)
    var 黑白图,比特
    var i=0,j=0
    循环(i<11)
        j=0
        循环(j<77)
            比特=字符串截取(二进制,i+j,i+j+1)
            if(比特==1)
                黑白图=黑白图&"□"
            else
                黑白图=黑白图&"■"
            end
            j=j+11
        结束
        i++
    结束
    标签设置文本("标签0",黑白图)
end
//这一步是将第一步得到的二进制字符串可视化,速度还可以。

function 按钮0_点击()
    var xx,yy
    鼠标获取坐标(xx,yy)
    var 新字=取二进制(xx,yy)
    调试输出(新字)
    二值图(新字)
end
//这一步调用上面两个函数


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

发表于 2021-7-13 02:09:55 | 显示全部楼层
fhjym 发表于 2021-7-8 13:05
怎么直接对图片进行操作呢?

二进制读取bmp文件直接对颜色数据操作 这个用TC搞你会疯掉
一般都是用其他语言写成插件给TC调用
回复 支持 反对

使用道具 举报

发表于 2021-7-8 10:06:58 | 显示全部楼层
表格控件是很慢的, 快是直接对bmp操作.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-7-8 13:05:50 | 显示全部楼层
1907635162 发表于 2021-7-8 10:06
表格控件是很慢的, 快是直接对bmp操作.

怎么直接对图片进行操作呢?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18045623号)

GMT+8, 2021-7-31 02:59 , Processed in 0.053421 second(s), 24 queries .

Powered by 海安简单软件服务部

© 2008-2019 版权所有 保留所有权利

快速回复 返回顶部 返回列表