大漠找图算法_新手用大漠找图识别数字,怎么将数字组合起来呢
麻煩哪位大神幫忙看看,萌新面臨大困境!
新手不會用大漠識別數(shù)字,于是便覺得用找圖的方式來間接實現(xiàn)識別數(shù)字
Sub 找圖識別識別數(shù)字()
set dm = createobject("dm.dmsoft")
base_path = dm.GetBasePath()
dm_ret = dm.SetPath(base_path)
dm_ret = dm.SetDict(0, "dm_soft.txt")
dm_ret = dm.Capture(323, 667, 435, 678, "360ye.bmp")
dm_ret = dm.Capture(369, 667, 435, 678, "360ye2.bmp")
dm_ret = dm.FindPic(324, 668, 430, 678, "¥.bmp", "" & wz360 & "", 0.9, 1, intX, intY)
x1 = intX - 1
y1 = inty - 2
x2 = x1 + 6
y2 = y1+11
For 8
Delay 30
i=""
Delay 30
dm_ret = dm.FindPic(x1, y1, x2, y2, "數(shù)字0.bmp|數(shù)字0b.bmp", "" & wz360 & "", 0.9, 1, intX0, intY0)
If intX0 >= 0 and intY0 >= 0 Then
x1 = x1 + 7
x2 = x2 + 7
i = "0"
Delay 30
MessageBox "0"
End If
dm_ret = dm.FindPic(x1 + 7, y1, x2 + 7, y2, "數(shù)字1.bmp|數(shù)字1b.bmp", "" & wz360 & "", 0.9, 1, intX1, intY1)
dm_ret = dm.Capture(x1 + 7, y1, x2 + 7, y2, "正被識別1.bmp")
If intX1 >= 0 and intY1 >= 0 Then
x1 = x1 + 7
x2 = x2 + 7
i = "1"
Delay 30
MessageBox "1"
End If
Delay 30
dm_ret = dm.FindPic(x1 + 7, y1, x2 + 7, y2, "數(shù)字2.bmp|數(shù)字2b.bmp", "" & wz360 & "", 0.9, 1, intX2, intY2)
dm_ret = dm.Capture(x1 + 7, y1, x2 + 7, y2, "正被識別2.bmp")
If intX2 >= 0 and intY2 >= 0 Then
x1 = x1 + 7
x2 = x2 + 7
i = "2"
Delay 30
MessageBox "2"
End If
Delay 30
dm_ret = dm.FindPic(x1 + 7, y1, x2 + 7, y2, "數(shù)字3.bmp|數(shù)字3b.bmp", "" & wz360 & "", 0.9, 1, intX3, intY3)
dm_ret = dm.Capture(x1 + 7, y1, x2 + 7, y2, "正被識別3.bmp")
If intX3 >= 0 and intY3 >= 0 Then
x1 = x1 + 7
x2 = x2 + 7
i = "3"
Delay 30
MessageBox "3"
End If
Delay 30
dm_ret = dm.FindPic(x1 + 7, y1, x2 + 7, y2, "數(shù)字4.bmp|數(shù)字4b.bmp", "" & wz360 & "", 0.9, 1, intX4, intY4)
dm_ret = dm.Capture(x1 + 7, y1, x2 + 7, y2, "正被識別4.bmp")
If intX4 >= 0 and intY4 >= 0 Then
x1 = x1 + 7
x2 = x2 + 7
i = "4"
Delay 30
MessageBox "4"
End If
Delay 30
ddm_ret = dm.FindPic(x1 + 7, y1, x2 + 7, y2, "數(shù)字5.bmp|數(shù)字5b.bmp", "" & wz360 & "", 0.9, 1, intX5, intY5)
dm_ret = dm.Capture(x1 + 7, y1, x2 + 7, y2, "正被識別5.bmp")
If intX5 >= 0 and intY5 >= 0 Then
x1 = x1 + 7
x2 = x2 + 7
i = "5"
Delay 30
MessageBox "5"
End If
Delay 30
dm_ret = dm.FindPic(x1 + 7, y1, x2 + 7, y2, "數(shù)字6.bmp|數(shù)字6b.bmp", "" & wz360 & "", 0.9, 1, intX6, intY6)
dm_ret = dm.Capture(x1 + 7, y1, x2 + 7, y2, "正被識別6.bmp")
If intX6 >= 0 and intY6 >= 0 Then
x1 = x1 + 7
x2 = x2 + 7
i = "6"
Delay 30
MessageBox "6"
End If
Delay 30
dm_ret = dm.FindPic(x1 + 7, y1, x2 + 7, y2, "數(shù)字7.bmp|數(shù)字7b.bmp", "" & wz360 & "", 0.9, 1, intX7, intY7)
dm_ret = dm.Capture(x1 + 7, y1, x2 + 7, y2, "正被識別7.bmp")
If intX7 >= 0 and intY7 >= 0 Then
x1 = x1 + 7
x2 = x2 + 7
i = "7"
Delay 30
MessageBox "7"
End If
Delay 30
dm_ret = dm.FindPic(x1 + 7, y1, x2 + 7, y2, "數(shù)字8.bmp|數(shù)字8b.bmp", "" & wz360 & "", 0.9, 1, intX8, intY8)
dm_ret = dm.Capture(x1 + 7, y1, x2 + 7, y2, "正被識別8.bmp")
If intX8 >= 0 and intY8 >= 0 Then
x1 = x1 + 7
x2 = x2 + 7
i = "8"
Delay 30
MessageBox "8"
End If
Delay 30
dm_ret = dm.FindPic(x1 + 7, y1, x2 + 7, y2, "數(shù)字9.bmp|數(shù)字9b.bmp", "" & wz360 & "", 0.9, 1, intX9, intY9)
dm_ret = dm.Capture(x1 + 7, y1, x2 + 7, y2, "正被識別9.bmp")
If intX9 >= 0 and intY9 >= 0 Then
x1 = x1 + 7
x2 = x2 + 7
i = "9"
Delay 30
MessageBox "9"
End If
Delay 30
dm_ret = dm.FindPic(x1 + 7, y1, x2 + 5, y2, "點.bmp|點b.bmp", "" & wz360 & "", 0.9, 1, intX9, intY9)
dm_ret = dm.Capture(x1 + 7, y1, x2 + 5, y2, "正被識別點.bmp")
If intX9 >= 0 and intY9 >= 0 Then
x1 = x1 + 4
x2 = x2 + 4
i = "."
Delay 30
MessageBox "."
End If
Delay 30
//dm_ret = dm.FindPic(x1 + 7, y1, x2 + 7, y2, "數(shù)字背景色.bmp", "" & wz360 & "", 0.9, 1, intX9, intY9)
//dm_ret = dm.Capture(x1 + 7, y1, x2 + 7, y2, "正在被識別數(shù)字背景色.bmp")
//If intX9 >= 0 and intY9 >= 0 Then
//x1 = x1 + 7
//x2 = x2 + 7
//i = "9"
//Delay 30
//MessageBox "結(jié)束"
//Delay 30
//Goto 識別完畢360
//Else
//End If
//這里的7或4是指字寬加數(shù)字間的距離
Rem 識別完畢360
a =a & i
Next
MessageBox a
End Sub
明明數(shù)字是45.56,挨個彈出的MessageBox 也分別是4 5 . 5 6 ,最后一個 MessageBox a彈出的確是.6
總結(jié)
以上是生活随笔為你收集整理的大漠找图算法_新手用大漠找图识别数字,怎么将数字组合起来呢的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 用多媒体库 Bass.dll 播放 mp
- 下一篇: 单例模式创建的两种方法