매크로

조회 수 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
분류 제목 글쓴이 최근변경 추천
질문 !(느낌표) 가 주는게 무엇을 뜻하나요? 7 디스트로이어 2022.12.14 0/0
질문 #IfWinActive 사용할 경우 Hotkey를 on/off 하는 방법... 2 Rabbit 2016.08.17 0/0
질문 #Include file "Gdip.ahk" 이거 어떻게 해결하나여? 11 으으아으아 2016.09.18 0/0
자유 #던파#한국에서 대리육성합니다 한국육성팀 2019.04.04 0/0
질문 %A_ScriptDir%로 쓰려면 이미지 어디에 넣어야되나요? 4 작은이득 2019.05.02 0/0
질문 (GUI) edit에 입력받은 변수로 대기시간을 설정하는 스... 6 잠튕이 2015.07.02 0/0
질문 (imagesearch 관련 질문) 고수님들의 답변을 기다리고 ... 믕이 2019.01.07 0/0
질문 (LD앱) settiemr 만 넣으면 비활성이미지 서치 못하네요. 2 현장요원 2020.04.24 0/0
질문 (간단한?)매크로하나 만들고픈데 제작의뢰가능한가요? 2 더기더기1 2018.11.21 0/0
자유 (개초보) 이번에는 함수를 이용해서 세나 매크로 만들... 3 앞프론뒷태 2015.02.04 0/0
자유 (세븐나이츠) 뿌듯부듯.. 11 swksd 2015.11.14 1/0
자유 (세븐나이츠)쌩초보가 만든 매크로 공유합니다.(이미지... 12 swksd 2015.04.24 2/0
질문 (쌩초보) 단순 이미지서치에서 일정구간 n회 반복하는 ... 1 잘해보자잉 2017.08.17 0/0
정보 (안내) 글내용확인하시고 자삭하세요 27 snf 2015.02.23 0/0
질문 (오핫) 여러 단어 변수 지정 및 랜덤 조합 출력 방법 3 우리형 2019.10.23 0/0
질문 (중복질문)블루스택3 포스트메시지 키보드입력 ESC누르... 4 가족오락관 2017.12.29 0/0
질문 (초보) GDIP 이미지서치 사용방법 2 험블비 2017.08.31 0/0
질문 (초보) 앱플레이어 이미지서치 가보려하는데 산두적 2020.07.20 0/0
질문 (초보) 이미지서치 연속사용 1 작은이득 2017.06.07 0/0
정보 (펌)픽셀서치를 대체할 수 있는 비활성픽셀칼라 활용 ... 6 앙꼬호빵 2019.05.26 0/0
Board Pagination Prev 1 2345678910 ... 209 Next
/ 209

전체 최신 인기글

전체 주간 인기글