매크로

조회 수 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
분류 제목 글쓴이 최근변경 추천
자유 고수는 아니지만...ㅠ 2 하얀마음로이 2014.10.19 1/0
질문 블레이드 매크로 작성중 오류좀 봐주십시요^^고수님들 15 핸콕 2015.02.02 0/0
질문 세븐나이츠 매크로 너무 무거워요 ㅜㅡ 2 마미므메 2014.10.21 0/0
자유 블레이드 매크로 공유좀 해주실분~~ 9 나은 2015.03.05 0/0
질문 오토핫키, 산다님 한수만 더 부탁드립니다^^ 8 핸콕 2014.11.02 0/0
질문 오토핫키 스크립트 어떻게 불러오기 하나요~? 5 리용 2014.10.26 0/0
자유 몬길 매크로를 만들어보았습니다~ 8 페르니코 2015.05.04 0/0
자유 숨어야산다 님의 블레이드 메크로... 5 손맹 2015.01.16 0/0
질문 이미지 서칭 질문드립니다. 4 생물 2014.10.26 0/0
질문 [오토핫키 질문] 이미지서치 11 겜도리 2014.10.28 0/0
자유 매크로 제작 예정 12 프린치크 2015.07.10 0/0
자유 지니모션 후후... 1 프린치크 2015.01.05 0/0
자유 비활성 매크로 필요하신분 10 프린치크 2014.10.28 0/0
자유 지니 몬길 매크로(자동스킬)입니다. 14 오라컴퓨터 2015.05.04 1/0
정보 혹시나 오토핫키 매크로 직접 만드시는분들~~ 4 프린치크 2014.10.29 0/0
질문 비활성 이미지서치도 가능한가요? 7 페르니코 2015.05.04 0/0
정보 비활성 매크로 예문 남겨드립니다. 참고하세요~ 14 호로록뚝딱 2015.08.12 0/0
질문 오토핫키 전부터 배우고는싶었는데 쉽지는 않네용. 11 우후훅 2014.10.31 0/0
질문 오토핫키가 아예처음인 사람입니다 2 하항 2014.11.03 0/0
질문 비활성 클릭 질문드립니다. 2 생물 2014.11.01 0/0
Board Pagination Prev 1 2345678910 ... 209 Next
/ 209

전체 최신 인기글

전체 주간 인기글