识字找字是大漠插件最核心的东西,通过识别游戏画面中的文字返回坐标完成鼠标点击等动作,识字必须先制作字库,设置字库,本课演示了如何设置字库,如何调用字库,封装的大漠命令有:SetDict、UseDict、AddDict、ClearDict、Ocr
Ocr识别字符串
函数简介: 识别屏幕范围(x1,y1,x2,y2)内符合color_format的字符串,并且相似度为sim,sim取值范围(0.1-1.0), 这个值越大越精确,越大速度越快,越小速度越慢,请斟酌使用! 函数原型: string Ocr(x1,y1,x2,y2,color_format,sim) 参数定义: x1 整形数:区域的左上X坐标 y1 整形数:区域的左上Y坐标 x2 整形数:区域的右下X坐标 y2 整形数:区域的右下Y坐标 color_format 字符串:颜色格式串. 可以包含换行分隔符,语法是","后加分割字符串. 具体可以查看下面的示例.注意,RGB和HSV格式都支持. sim 双精度浮点数:相似度,取值范围0.1-1.0 返回值: 字符串: 返回识别到的字符串 示例: //RGB单色识别 s = dm.Ocr(0,0,2000,2000,"9f2e3f-000000",1.0) MessageBox s //RGB单色差色识别 s = dm.Ocr(0,0,2000,2000,"9f2e3f-030303",1.0) MessageBox s //RGB多色识别(最多支持10种,每种颜色用"|"分割) s = dm.Ocr(0,0,2000,2000,"9f2e3f-030303|2d3f2f-000000|3f9e4d-100000",1.0) MessageBox s //HSV多色识别(最多支持10种,每种颜色用"|"分割) s = dm.Ocr(0,0,2000,2000,"20.30.40-0.0.0|30.40.50-0.0.0",1.0) MessageBox s //识别后,每行字符串用指定字符分割 比如用"|"字符分割 s = dm.Ocr(0,0,2000,2000,"9f2e3f-000000,|",1.0) MessageBox s //比如用回车换行分割 s = dm.Ocr(0,0,2000,2000,"9f2e3f-000000,"+vbcrlf,1.0) MessageBox s //背景色识别 //比如要识别背景色为白色,文字颜色未知的字形 s = dm.Ocr(0,0,2000,2000,"b@ffffff-000000",1.0) MessageBox s //注: 在color_fomat最前面加上"b@"表示后面的颜色描述是针对背景色,而非字的颜色.
视频教程模块源码
.版本 2
.子程序 SetDict, 整数型, 公开, 设置字库文件(返回值:0失败,1成功)
.参数 index, 整数型, , index 整形数:字库的序号,取值为0-19,目前最多支持20个字库
.参数 file, 文本型, , file 字符串:字库文件名
返回 (obj.数值方法 (“SetDict”, index, file))
.子程序 Ocr, 文本型, 公开, 识别屏幕范围(x1,y1,x2,y2)内符合color_format的字符串,并且相似度为sim,sim取值范围(0.1-1.0),返回值(返回识别到的字符串)
.参数 x1, 整数型, , x1 整形数:区域的左上X坐标
.参数 y1, 整数型, , y1 整形数:区域的左上Y坐标
.参数 x2, 整数型, , x2 整形数:区域的右下X坐标
.参数 y2, 整数型, , y2 整形数:区域的右下Y坐标
.参数 color_format, 文本型, , color_format 字符串:颜色格式串. 可以包含换行分隔符,语法是","后加分割字符串. 具体可以查看下面的示例.注意,RGB和HSV格式都支持
.参数 sim, 双精度小数型, , sim 双精度浮点数:相似度,取值范围0.1-1.0
返回 (obj.文本方法 (“Ocr”, x1, y1, x2, y2, color_format, sim))
.子程序 UseDict, 整数型, 公开, 表示使用哪个字库文件进行识别(index范围:0-9)设置之后,永久生效,除非再次设定(返回值:0失败,1成功)
.参数 index, 整数型, , index 整形数:字库编号(0-9)
返回 (obj.数值方法 (“UseDict”, index))
.子程序 AddDict, 整数型, 公开, 给指定的字库中添加一条字库信息.
.参数 index, 整数型, , index 整形数:字库的序号,取值为0-19,目前最多支持20个字库
.参数 dict_info, 文本型, , dict_info 字符串:字库描述串,具体参考大漠综合工具中的字符定义
返回 (obj.数值方法 (“AddDict”, index, dict_info))
.子程序 ClearDict, 整数型, 公开, 清空指定的字库.此函数支持清空内存中的字库,而不是字库文件本身
.参数 index, 整数型, , index 整形数:字库的序号,取值为0-19,目前最多支持20个字库
返回 (obj.数值方法 (“ClearDict”, index))
视频教程优酷土豆链接:
优酷土豆链接:511遇见大漠模块制作-32-设置字库及Ocr识别字符串
优酷全部教程播单:http://i.youku.com/i/UNTU3NDYyODg0/playlists
交流群:521068947
本人QQ: 272586593