문제
나는 Sikuli를 잠시 동안 사용해 왔지만 문제가 있습니다 ... 충분히 민감하지 않습니다. 나는 화면에서 -exact-의 무언가를 일치 시키려고 노력하고 있으며, Sikuli가 내가 실제로 찾고있는 것을 착각 할 정도로 비슷하게 보이는 다른 몇 가지 항목이 있습니다. 분산이 전혀없는이 항목 만 찾으십시오.
어떻게 할 수 있습니까?
아, 그리고 내 문제를 조금 더 설명하기 위해, 나는 게임에 대한 루프를 쓰고있다. 일단 진행 막대가 100%에 도달하면 - 루프가 끝나고 다시 시작할 수 있도록해야하지만, 진행률 막대는 단지 PLAIN BAR- Sikuli가 화면에서 그것을 찾으면 부분적으로 완전한 막대를 찾습니다 (분명히 찾고있는 이미지의 길이/너비/크기와 일치하기 때문에) 및 트리거 및 트리거.
해결책
Sikuli ide에서 다음을 수행 할 수 있습니다.
- 이미지를 클릭하십시오
- 패턴 설정> 일치 미리보기에서 유사점을 1.0으로 드래그하십시오 (오른쪽 끝까지).
- 확인을 클릭하십시오
다른 팁
Sikuli IDE를 사용하는 경우 감도를 변경하려는 이미지 미니어처를 클릭하십시오. 패턴 (이미지)과 함께 데스크탑의 스크린 샷이 제공됩니다. 아래에는 슬라이더 마녀 변경 감도가 있습니다. 그것을 변경하는 동안 패턴의 강조 된 발생이 그에 따라 증가하거나 감소한다는 것을 알 수 있습니다.
이 방법은 화면에 게임이 있다고 가정하지만 (따라서 전체 화면이 아닌 창 모드), 여전히 감도를 조정할 수 없더라도 검색의 '라이브'결과를 볼 수는 없습니다.
Java Code에서 Sikuli를 호출하면 사용해야합니다. Pattern(image.png).similar(y.xx)
Simmilar의 논쟁은 0.00에서 1.00 사이입니다.
두 번째 방법을 사용하지 않았으므로 실험해야 할 수도 있습니다.
다음이 작동할까요?
당신은 100%에 도달 한 다음 다시 루프에 도달 할 진전을 찾고 있습니까?
f = open("C:\\test.htm",'W')
f.write('<font color="#347C2C">lOOPtEST</font><br />')
f.write('loop iteration' + (str (count)) + '<br />')
count = count + 1
f.close()
COUNT =10
POPUP("LOOPTEST")
//image compare from progress bar
import sikuli.Sikuli *
WebPath =('Z:\\ZZZautomation\\Web\\')
BuildPath = ("Z:\BUILDS\Daily_BUILDS\QA_MainBranch_Install\*.install")
BuildNumber = glob.glob("Z:\BUILDS\Daily_BUILDS\QA_MainBranch_Install\*.install")
for filename in BuildNumber:
SmokeTestInfo = "SmokeTest_Build " + filename[45:50] + " Iteration 44"+".htm"
global Number
Number = filename[45:50]
global SmokeTest
SmokeTest = SmokeTestInfo
global count
count = 0
defMidProgress():
while not exists ("//path to image of progress bar @ 50%//",FOREVER)
//or
wait("//path to image of progress bar @ 50%//", FOREVER)
//using forevEr means sikuli will checK FOR 50% PROGRESS FOREVER
//the bottom execures once the condition above is met
open(WebPath + SmokeTest,'w')
f.write('<font color="#0000FF">Progress is at 50%</font><br />')
f.close()
// writes entry to html log fie
defFinalProgress():
while not exists ("//path to image of progress bar @ 100%//",FOREVER)
//or
wait("//path to image of progress bar @ 100%//", FOREVER)
//using forever means sikuli will check FOR 100% PROGRESS FOREVER
//the bottom execures once the condition above is met
open(WebPath + SmokeTest,'a')
f.write('<font color="#0000FF">Progress is at 100%</font><br />')
f.close()
// writes entry to html log fie
def Loop
count =0
def midProgress():
def FinalProgress():
내가 사용하는 정확한 이미지와 일치합니다.
image1 = ("image1.png")
while not exists (Pattern(image1).exact()):
# Wait until that exact image appears.
wait(1)