오토핫키 이미지서치 trans - otohaski imijiseochi trans

일단 모모앱플레이어 사용중입니다.

오토핫키 이미지서치 trans - otohaski imijiseochi trans

위에서 동그라미를 이미지 서치하는데 지금 상태로는 이미지 서치가 잘됩니다.

오토핫키 이미지서치 trans - otohaski imijiseochi trans

그런데 동그라미의 위치가 위와같이 변경되면 이미지를 못찾는데 이유가 있나요?(예시일뿐 동그라미의 이미지 크기는 그대로이고 단지 위치만 변경되었습니다.)

그림판으로 이미지를 딸경우 원이 왼쪽에 있는데 해당위치에 있는 그림만 자동으로 찾는건가요? ImageSearch명령어로는 분명히 전체화면이라고 지정을 해놨지만 동그라미가 캡쳐할 당시에 있는 위치 에 있어야지만 이미지를 찾습니다.

(참고로 배경또한 없이 동일합니다.)

하지만 앱플레이어에서는 안찾아지는데 이미지가 저장된 폴더로 이동하면 이미지를 잘찾아서 클릭을 합니다. 
어떻게된걸까요..

ImageSearch,FoundX,FoundY,0,0,A_ScreenWidth,A_ScreenHeight,*50, %A_ScriptDir%\Image\circle.bmp

코드는 이렇게 작성되어 있습니다.

이미지서치의 기능을 확장시켰습니다.

ImageSearch , OutputVarX, OutputVarY, X1, Y1, X2, Y2, [*option] ImageFile, [OutputVarObj]

[*option]

*WH : X2, Y2를 가로 세로값(픽셀수)으로 사용

*IconN : 기존옵션 - 아이콘 그룹선택

*n(variantion) : 기존옵션 - 컬러공차값

*Scan(RB|BR|LT|TL|RT|TR|LB|BL) : 이미지서치시 스캔방향 설정 옵션


*Result(LT|LB|RT|RB|Center|Random)

  이미지서치 성공시 반환되는 좌표값을 검색한 이미지 크기를 기준으로 받아올수 있습니다.  보통은 검색된 이미지의 좌측상단 좌표를 받지만 중간좌표나 랜덤좌표를 받을수 있게 설정할수도 있습니다.

*TransN : 기존옵션


*TransnotN : 검색하는 이미지의 TransN컬러값부분에 TransnotN으로 설정한 컬러값이 있을경우 부합하지 않도록 합니다.

  이 옵션은 규격화된 글자이미지나 숫자 이미지 검색시 겹치는 픽셀이 있는 이미지가 있을경우 사용합니다.  예를 들어 숫자3 과 숫자8을 이미지서치 한다고 했을때 숫자3 이미지로 검색하는 경우 숫자8도 검출이 됩니다.  검색용 이미지의 배경이 흰색이고 글자색이 검은색이라고 했을시 TransWhite 값과 TransnotBlack으로 설정하면  숫자3이미지로 숫자8이미지 위치를 검색 할 때 숫자3의 모든 흰색배경픽셀과 매칭되는 검색대상 픽셀에 검은색 이 있을경우 노매칭으로 판단하게 됩니다. 이렇게 숫자3 이미지로 검색할때 숫자8이 검색되는 현상을 막을수 있습니다.


*HBmp : 검색이미지를 이미지파일 대신 HBITMAP 핸들을 사용하게 하는 옵션

     (참고) v1.1.23.00 버전에서 이 옵션과 동일한 기능인 hbitmap: 옵션이 추가되었네요.

*HBmpNotDel : HBmp 옵션과 같지만 사용한 핸들이 자동 소멸하지 않도록 해주는 옵션

(주의) *HBmp와 *HBmpNotDel 옵션을 지정할시 검색소스이미지파일명 자리에 HBITMAP 핸들값을 넣어주어야 하며 *W 및 *H 옵션을 설정하더라도 적용되지 않습니다.(추후 패치 예정)


*All , *Allnn : 동일이미지를 검색영역에서 모두 검색되며 검색된 모든 좌표값은 OutputVarObj 변수를 통해 배열로 반환됨, Allnn인 경우는 해당 nn 개수 까지만 검색


*Target(File|HBmp|HBmpNotDel)xx : 이미지서치 대상을 화면이 아닌 이미지파일이나 HBITMAP 핸들로 지정합니다.

(주의) *TargetFile 옵션을 사용할시 <> 기호로 파일경로를 둘러싸 주어야 합니다.

ex) *TargetFile<C:\image.bmp>

[OutputVarObj]

  OutputVarX, OutputVarY 변수로 받는 검색좌표 값 외에  옵션에 따라 반환값이 추가되는 경우 이 오브젝트변수로 받을 수 있습니다.

*All 옵션 없을때 오브젝트변수가 있는 경우 오브젝트에 저장되는 값

  - Object{validx, validy, validw, validh, w, h}

*All 옵션 있을때 오브젝트변수가 있는 경우 오브젝트 리스트에 저장되는 값

  - Object[number]{x, y}  (number 값은 1부터 시작하는 순차배열 번호)
  - Object{count, w, h, validox, validoy, validw, validh} 

    (validox 및 validoy 값은 유효영역 오프셋값)

여기서 validx, validy, validw, validh 값은 *Trans 옵션이 있을시 트랜스컬러영역을 최대한 걷어낸 유효한 이미지 영역입니다.

*Scan 옵션에 대한 세부설명

이미지서치나 픽셀서치에서 *ScanXX 옵션으로 설정 가능하며 검색시작점과 검색방향의 우선순위를 지정하는데 사용합니다. 오토핫키의 기본 스캔방향은 왼쪽상단에서 오른쪽으로 그리고 아래로 진행하는 방식이며 *ScanRB 옵션과 같습니다.

아래 스샷에서 스캔 진행방향은 1번이 선두 스캔방향이며 2번이 후순위 스캔방향입니다.

*Result 옵션에 대한 세부설명

*Result 옵션은 아래 그림의 파란색 영역을 이미지서치로 찾았을 시 반환되는 좌표를 결정하는 옵션입니다. 이 옵션이 없을 경우 기본 설정으로 검색성공한 위치의 LT(Left Top) 좌표를 반환합니다. 아래 그림에 없는 옵션인 Random 옵션은 검색성공한 파란색 영역 내의 랜덤좌표를 반환합니다.

오토핫키 이미지서치 trans - otohaski imijiseochi trans

Test.ahk 파일을 다운로드한  'Ahk+ 전용 AutoHotkey.exe 파일'  위에 드래그해서 실행하세요.

오토핫키 이미지서치 trans - otohaski imijiseochi trans
ImageSearch_NewOption.zip

ImageSearch 추가 예문 -> ImageSearch 예문1 - 동영상에서 이미지 찾기

ImageSearch 다중 이미지서치 예문 -> [Ahk+] 이미지 멀티서치 예문