매크로

조회 수 1252 추천 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
분류 제목 글쓴이 최근변경 추천
질문 흑백화를 시킨 후 이미지를 저장 하였습니다. 이후 이... 1 haegu 2018.09.11 0/0
질문 흑백화 이미지서치 참고할만한 글 있나요?? 3 급홍어감별사 2018.07.02 0/0
질문 흑백 비활성 이미지 검색 구현하신 분 계세요? 4 프리 2019.05.23 0/0
질문 후 문의 2번째.. 드립니다......... 4 문의드립니다 2015.06.10 0/0
질문 활성화된 프로세스 죽이는법 kill 3 리엔니케니스타 2017.03.29 0/0
질문 활성과 비활성의 차이가 무엇인가요~? 1 배고파3000 2018.09.04 0/0
질문 활성 ? 비활성 질문.. 2 아카드 2014.11.04 0/0
질문 확장모니터에서 controlclick질문드립니다 레나류륜 2016.10.27 0/0
질문 확율을 결과물로 출력중입니다. 특수문자 출력을 못해요 3 가족오락관 2016.11.08 0/0
질문 화상키보드도 오토핫키로 클릭할수 있나요? 1 김꼬뚜레 2018.08.15 0/0
질문 화면에 웹브라우져 여러개 띄우고 각각 다른 프록시를 ... 1 오켕 2016.03.29 0/0
질문 화면 해상도 4 나는황제다 2015.04.23 0/0
질문 화면 인식 자동 클릭식 메크로를 해보고싶은데 2 와사비 2022.12.14 0/0
질문 화면 자체를 고정시킬수는 없을까요? mad1 2017.04.23 0/0
질문 혹시... 드래곤플라이트나 포코팡같은 게임도 오핫키로... 5 flem 2015.05.21 0/0
질문 혹시... 같은모양 찾는방법이있나요? 11 제발등업좀2 2022.12.14 0/0
질문 혹시 항상 창을 활성화시킬수는 없을까요? 4 투혼레몬 2015.07.07 0/0
질문 혹시 핫키 하나로 on,off 기능 수행할수 있나요? 10 으뜸어린이 2014.11.10 0/0
질문 혹시 핫키 눌러서 수행중에 다른핫키도 먹히게 하는게 ... 3 으뜸어린이 2014.11.15 0/0
질문 혹시 피파온라인3 오토핫키 스크립트 갖고 계신분있나... 앗뵤 2015.09.22 0/0
Board Pagination Prev 1 2345678910 ... 173 Next
/ 173

전체 최신 인기글

전체 주간 인기글