매크로

조회 수 1251 추천 0 댓글 4

1.화면 비트맵 포인터 따오고


2.파일 비트맵 포인터 따오고


3.RGB 비트맵 값들을 Grey로 변환(변환 매트릭스 곱)하고


4.Threshold값 정해서


5.블랙앤 화이트로 바꾼다음에~


6.기존 Gdip_imagesearch에서 바꾼 비트맵 서로 비교하면 될 것 같더라구요.


다른 함수는 이미 구현되어 있으니 3~5만 구현하면 될 것 같은데!


GDIP의 개략적인 원리는 알아도 실제 함수간의 변수의 형태와 크기에 대해 모르니까 함부로 수정을 못하겠네요~!


항상 Myfun의 기나긴 숫자와 알파벳 나열이 먼지도 모르다보니...


혹시 조언을 해주실 분 안계신가요?


  • 프리 2019.04.04 21:44

    자문자답

    3: GDIP 함수로 가능

    4&5: 원래 윈도우용 GDI+라이브러리에 threshold 사용 함수가 있는데 

    ahk용 gdip라이브러리 제작자는 해당함수를 변환하지 않음.

    따라서 직접4&5 알고리즘을 짜고 픽셀단위로 비교해서 Threshold로 흑백을 결정하면 되는데 그러면 코드가 너무 느림~

    이를 해결하기 위해 Mcode로 기계어 짜서 메모리 변환 과정을 줄이고 프로그램 속도를 높여서 해결 가능함


    현재 Threshold없이 그냥 255/2로 B,W정하는 mcode는 인터넷상에 존재하나, 이 경우는 이미지 검색 활용 취지면에서 별로임.


  • 프리 2019.04.04 21:55

    그리고 Threshold로 흑백 수정해서 이미지 검색을 하려고한 이유는

    장점이 매우 우수하기 때문임


    특정 이미지의 경우 대략적인 형상은 비슷하나 지속적으로 일부 색값이 변할 때

    혹은 이미지 근처에 effect가 추가 될 때 

    이것은 이미지든 글자든 마찬가지임.

    기본 내장함수의 오차율을 높여봐야 함수 자체 신뢰성만 떨어짐.

    하지만 적절한 흑백변환은 이것들이 간단하게 해결가능 함

    (단, 절대 255/2값으로는 안됨. 일례로 연한빨강도 흰색이 되버림.)


    이렇게라도 댓글을 달아 놓은 이유는 누구나 알았으면 해서임.

    비활성이미지 검색도 몇년 전까지는 일부만 알던 함수였는데 지금은 대중화가 되어서 너무 반가움.

  • profile
    와이로 2019.04.05 11:46

    저도 비슷한 이유로 여러가지 이미지 필터가 필요해 오토핫키에서 간편하게 사용하려고 ImageFilter 명령을 만들어서 쓰고 있지요. ㅎㅎ


    그림판.png
    3wVwj4A.png

    검색조각.png
    nan1t0f.png


    #SingleInstance Force


    cRed := 0xED1C24 ;적색

    hwnd := WinExist("ahk_exe mspaint.exe") ;그림판 윈도우핸들

    ImageGet, hBmpTar,,,,, hwnd, *Hwnd *PrintWindow  ;윈도우 비활성 캡쳐

    ImageFilter, Threshold, hBmpTar, hBmpTar,,,,, *Threshold158  ;캡쳐한 이미지 흑백화

    ImageSearch, sx,sy, 0,0,0,0, *TargetHBmp%hBmpTar% *Trans%cRed% 검색조각.png  ;이미지서치


    if !hwnd

      MsgBox, '그림판.pnp' 이미지를 그림판으로 열어주어야 합니다.

    else if ErrorLevel

      MsgBox,, 검색실패, 그림판에서 '검색조각.png' 이미지 검색실패

    else

    {

      MsgBox, 4, 검색성공, % "그림판 윈도우에서 '검색조각.png' 이미지 찾은좌표 = " sx "," sy "`n찾은 이미지 위치로 마우스를 이동하시겠습니까?"

      ifMsgBox, Yes

      {

        WinActivate, ahk_id %hwnd%

        MouseMove, sx,sy

      }

    }




  • 사냥하고파요 2019.05.23 17:01

    저도 알고 싶네요.ㅎㅎ


List of Articles
분류 제목 글쓴이 최근변경 추천
자유 블루스택과 녹스에서 히트 돌릴때 색상차이 8 와이로 2017.11.09 4/0
정보 간단한 방법으로 길오아 오토핫키를 만들어보세요^^ 21 럭셔리형아 2018.02.07 4/0
정보 MS오피스 스타일 GUI 프로토타입 6 예지력1 2016.04.16 4/0
질문 오토핫키 에디터 제작. 9 프리헌터스 2015.09.11 4/0
정보 테일스타 내 포인트 조회기 16 와이로 2017.07.04 4/0
정보 팝업 알림, CleanNotify 3 예지력1 2015.11.11 4/0
정보 브레이브 헌터 ... 매크로.. 1 제발등업좀2 2015.07.10 4/0
자유 비활성이미지서치 중간정리(disp,adb) 11 우후훅 2017.04.03 4/0
정보 블루스택 해상도 변경하기... 10 로뎀나무 2015.04.15 4/0
자유 [AutoPM Ver 1.58] 포켓메이플스토리 매크로 8 은다 2015.04.25 4/0
정보 초보가 초보에게;; 핫키 사용법 8 악동주성 2016.09.03 4/0
질문 매크로좀 오랜만에 다시보고자 접속을... 7 joeypre 2021.09.27 3/0
자유 오랜만에 글남깁니다 ㅋ. 매우많이.. 늦었지만 복들 ... 3 제발등업좀2 2016.01.10 3/0
정보 앱아이콘 터치없이 adb로 앱 실행 시키는 방법 18 와이로 2021.01.23 3/0
정보 오토핫키를 간단히 쓰고싶지만 너무 어렵다고 느낄때 9 HyunsD 2018.02.07 3/0
정보 제가 쓰는 픽셀피커입니다(스크립트) 6 와이로 2017.02.11 3/0
정보 지니모션 디바이스(타이틀) 검색 ddl 소스 9 핸콕 2015.10.11 3/0
질문 텍스트를 가져오고 싶습니다. 6 _Crash 2022.12.14 3/0
정보 INI 를 쉽게 사용해봅시다. 11 모바게 2017.11.01 3/0
정보 DynaScript - Child 프로세스로 코드 실행 13 예지력1 2019.07.16 3/0
Board Pagination Prev 1 2345678910 ... 209 Next
/ 209

전체 최신 인기글

전체 주간 인기글