매크로

질문
2016.03.17 00:54

Gdip문의

조회 수 989 추천 0 댓글 4

Gdip를 이용해서

이미지를 찾는 것 까진 잘 됐습니다.

그런데 Gdip특성상 찾든 못찾든 찾았다고 뜨기 때문에

1을 찾을때까지 기다렸뎌서 2로 넘어가라로 만들고 싶은데

좋은 방버버 없을까요?


  • profile
    모노레인 2016.03.17 10:38

    GDIP 에서 이미지 서치 쓰면 결과 넘어올텐데요..?

  • fnwj 2016.03.17 11:47
    찾든 못찾든 결과값이 찾았다고 나와서 그걸 어떻게 해야할지 고민중이라서요...
  • profile
    모노레인 2016.03.17 11:51
    공개된 이미지 서치 함수에 보면 못 찾았을 경우 결과가 마이너스 값이 나오던데요?
  • 슉슉이 2016.03.17 20:25
    Gdip라이브러리 안에 있는 이미지서치함수 보니 찾을 때만 값을 반환하네요. 검색범위, 찾는 수, 투명도, 색값오차 등을 지정하면 몇개 찾았는지 값을 반환. 1개만 찾게하면 1개 이상 일치하는 이미지가 있으면 카운트을 1만 반환하고 필요시 좌표도 받을 수 있게 되어있네요.

    맨아래 라이브러리안의 이미지서치 함수 그대로 가져왔습니다. 맨마지막줄 보면 카운트한 수를 반환합니다. 즉 매칭되는 이미지가 없으면 절대 1이 나올 수 없죠.

    이런식으로 하심 될듯합니다.
    gdipToken := Gdip_Startup()
    스샷비트맵:= Gdip_CreateBitmapFromFile("스샷.png")
    찾을이미지비트맵 := Gdip_CreateBitmapFromFile("찾을이미지.png")
    매칭이미지수 := Gdip_ImageSearch(스샷비트맵,찾을이미지비트맵,,0,0,0,0,,,1,1)
    Gdip_DisposeImage(스샷비트맵)
    Gdip_DisposeImage(찾을이미지비트맵)
    Gdip_Shutdown(gdipToken)

    if (매칭이미지수 = 1)
    {
    msgbox, 매칭
    }
    else
    {
    msgbox, 비매칭
    }

    Gdip_ImageSearch(pBitmapHaystack,pBitmapNeedle,ByRef OutputList=""
    ,OuterX1=0,OuterY1=0,OuterX2=0,OuterY2=0,Variation=0,Trans=""
    ,SearchDirection=1,Instances=1,LineDelim="`n",CoordDelim=",") {
    If !( pBitmapHaystack && pBitmapNeedle )
    Return -1001
    If Variation not between 0 and 255
    return -1002
    If ( ( OuterX1 < 0 ) || ( OuterY1 < 0 ) )
    return -1003
    If SearchDirection not between 1 and 8
    SearchDirection := 1
    If ( Instances < 0 )
    Instances := 0
    Gdip_GetImageDimensions(pBitmapHaystack,hWidth,hHeight)
    If Gdip_LockBits(pBitmapHaystack,0,0,hWidth,hHeight,hStride,hScan,hBitmapData,1)
    OR !(hWidth := NumGet(hBitmapData,0))
    OR !(hHeight := NumGet(hBitmapData,4))
    Return -1004
    Gdip_GetImageDimensions(pBitmapNeedle,nWidth,nHeight)
    If Trans between 0 and 0xFFFFFF
    {
    pOriginalBmpNeedle := pBitmapNeedle
    pBitmapNeedle := Gdip_CloneBitmapArea(pOriginalBmpNeedle,0,0,nWidth,nHeight)
    Gdip_SetBitmapTransColor(pBitmapNeedle,Trans)
    DumpCurrentNeedle := true
    }
    If Gdip_LockBits(pBitmapNeedle,0,0,nWidth,nHeight,nStride,nScan,nBitmapData)
    OR !(nWidth := NumGet(nBitmapData,0))
    OR !(nHeight := NumGet(nBitmapData,4))
    {
    If ( DumpCurrentNeedle )
    Gdip_DisposeImage(pBitmapNeedle)
    Gdip_UnlockBits(pBitmapHaystack,hBitmapData)
    Return -1005
    }
    OuterX2 := ( !OuterX2 ? hWidth-nWidth+1 : OuterX2-nWidth+1 )
    OuterY2 := ( !OuterY2 ? hHeight-nHeight+1 : OuterY2-nHeight+1 )
    OutputCount := Gdip_MultiLockedBitsSearch(hStride,hScan,hWidth,hHeight
    ,nStride,nScan,nWidth,nHeight,OutputList,OuterX1,OuterY1,OuterX2,OuterY2
    ,Variation,SearchDirection,Instances,LineDelim,CoordDelim)
    Gdip_UnlockBits(pBitmapHaystack,hBitmapData)
    Gdip_UnlockBits(pBitmapNeedle,nBitmapData)
    If ( DumpCurrentNeedle )
    Gdip_DisposeImage(pBitmapNeedle)
    Return OutputCount
    }

List of Articles
분류 제목 글쓴이 최근변경 추천
자유 gdip_imagesearch 사용하시는분 팁좀주세요! 8 횬히 2015.10.10 0/0
질문 Gdip_ImageSearch 오류 문의합니다. 2 fnwj 2017.06.07 0/0
질문 Gdip_ImageSearch 이미지 차이 질문 2 fnwj 2016.03.26 0/0
질문 Gdip_ImageSearch 질문드립니다. 1 andra 2020.03.20 0/0
질문 gdip_imagesearchWithHwnd 함수가 어떤 켬퓨터에서 작... 5 북붕 2016.05.15 0/0
질문 Gdip_ImageSearch관련 하여 질문드립니다. 2 제발등업좀2 2015.08.16 0/0
질문 Gdip_imagesearch의 기능이 무엇인가요? 4 패귀다리기 2018.09.01 0/0
질문 Gdip_SaveBitmapToFile에 대해 알고 싶습니다. 구글리스트 2020.08.08 0/0
질문 gdip가 좀 이상하네요;; 도움좀 부탁드립니다 1 미라클클 2016.10.23 0/0
질문 GDIP대해 질문좀 받아주세요~~~ 2 bellms 2016.04.05 0/0
질문 gdip로 녹스화면 캡쳐시 초기화면만 캡쳐가되네요... 봉봉sss 2017.10.04 0/0
질문 GDIp로 블루스택이 캡쳐되지 않습니다.. 5 민틸 2017.09.11 0/0
질문 Gdip로 비활성 찾는데요... 4 Rabbit 2016.07.19 0/0
질문 gdip로 클립보드까지 저장은 하였습니다. 4 walter 2016.02.23 0/0
질문 gdip로 픽셀서치가 가능한가요? 인디비쥬얼 2016.10.23 0/0
질문 gdip를 이용한 이미지 서치 질문입니다.(녹스만인식을... 10 침묵의고요 2015.12.16 0/0
정보 Gdip를 이용한 클립보드에 있는 이미지를 통한 이미지서치 11 암드래 2016.07.19 0/0
질문 Gdip문의 4 fnwj 2016.03.17 0/0
질문 Gdip비활성 이미지 서치중입니다 3 가족오락관 2016.08.05 0/0
질문 Gdip사용중인데 윈10 레드스톤 사용가능 한가요? 3 가족오락관 2018.02.28 0/0
Board Pagination Prev 1 ... 121314151617181920 ... 209 Next
/ 209

전체 최신 인기글

전체 주간 인기글