NGMsoftware

NGMsoftware
로그인 회원가입
  • 매뉴얼
  • 팁 앤 테크
  • 매뉴얼

    팁과 테크니컬 노하우를 확인하세요.

    팁 앤 테크

    팁과 테크니컬 노하우를 확인하세요.

    본 사이트의 컨텐츠는 저작권법의 보호를 받으므로 무단 복사, 게재, 배포 등을 금합니다.

    에디터 이미지 멀티 조건(체크, 서치, 매치, 픽셀)의 성능 개선. (CPU 100프로 활용 이미지 매크로)

    페이지 정보

    본문

    안녕하세요. 엔지엠소프트웨어입니다. 6.4.1.2 버전에서 이미지 멀티 조건에 비동기 옵션이 추가되었습니다. 비동기 옵션은 여러개의 이미지 또는 픽셀을 순차 처리가 아닌 동시 처리로 속도를 개선하는 방법을 말합니다. 기존에는 이미지 멀티 매치에서 10개의 이미지가 존재하는지 체크할 때 순차적으로 하나씩 비교했습니다. 하지만, 비동기 옵션을 사용하면 10개가 동시에 실행되고, 결과를 반환해줍니다.

    ※ 동시 실행은 컴퓨터의 Core Processor 수만큼 분할해서 동작합니다. 10개 이미지가 있고, 코어 프로세서가 4개라면 4, 4, 2로 3번 동작합니다.

     

    엔지엠 매크로 에디터를 실행하고, 새로운 스크립트를 하나 추가하세요.

    cnOuw3h.gif

     

     

    [ 이미지 멀티 매치 ]를 테스트하기 위해 아래와 같이 7개의 도형을 만들어 두었습니다.

    vIm6Vhc.png

     

     

    각각의 도형들을 숫자 1부터 7까지 캡쳐한 후 저장했습니다. 이미지 조건 액션들의 캡쳐 기능을 사용하면 쉽게 도형들을 이미지로 저장할 수 있습니다. 이미지를 드래그해서 선택한 후 F1 또는 F2를 누르면 저장할 수 있습니다. 연속해서 캡쳐하려면 F3을 누르세요.

    ※ 선택된 영역을 더블 클릭하면 저장됩니다. 키보드와 시프트키, 알트키를 이용해서 영역을 미세하게 조정할 수 있습니다.

    hIv94Wh.png

     

     

    실행 속도를 쉽게 비교하기 위해 매크로 에디터의 보기 메뉴에서 우측의 디버그를 제외하고 모두 해제해주세요.

    qePTAp0.png

     

     

    엔터프라이즈 카테고리의 비동기를 False로 실행하세요. 그리고, True로 변경한 후 다시 실행하세요. 그러면, 아래와 같이 하단 아웃풋에 각각 실행 시간이 표시됩니다. 7개 이미지를 동시에 찾을 때 약 300% 이상 성능 향상 된다는걸 확인할 수 있습니다.

    • 동기: 1.308
    • 비동기: 0.416

    b0XbqQo.png

     

     

    이번에는 [ 이미지 멀티 서치 ]를 테스트 해보겠습니다. 이미지 멀티 체크와 이미지 멀티 서치는 메모리에서 이미지의 픽셀 값을 하나씩 비교하기 때문에 이미지 멀티 매치처럼 드라마틱한 성능 향상은 없습니다. 메모리 값 주소는 한번에 하나밖에 할 수 없기 때문입니다. 그래서, 이미지 멀티 서치가 동시에 실행되더라도 메모리에 접근해서 값을 가져올 때는 순차적으로 처리됩니다.

    • 동기: 3.396
    • 비동기: 4.689

    1qB7YEt.png

     

     

    [ 이미지 멀티 체크 ]는 이미지 멀티 서치와 다르게 성능에 향상이 있습니다. 아무래도, 1:1 비교다보니 메모리 간섭이 적기 때문인듯 합니다. 의미있는 성능 향상은 아닌거 같습니다.

    • 동기: 0.135
    • 비동기: 0.124

    0H5zCIt.png

     

     

    마지막으로 [ 픽셀 멀티 서치 ]인데요. 총 10개의 픽셀 정보를 입력해두었습니다.

    1B47gJT.png

     

     

    이미지 멀티 체크보다 픽셀 멀티 서치가 효율은 훨씬 더 좋습니다. 아무래도, 1픽셀만 비교하기 때문에 메모리에 간섭이 없기 때문에 패러럴 처리가 잘 됩니다.

    • 동기: 0.510
    • 비동기: 0.289

    xeWiS9i.png

     

     

    이미지 인식 매크로는 얼마나 빠르게 이미지를 처리하고, 원하는 결과를 만들어 내느냐가 관건입니다. 물론, 마우스와 키보드 입력 속도도 중요합니다. 하지만, 단순히 마우스와 키보드만으로 매크로를 제작하기란 쉽지 않은 일입니다. 변화하는 상황에 대응하기 위해서는 이미지를 판단하고, 로직을 분기해서 처리할 수 있어야 합니다. 엔지엠 매크로는 일반적인 매크로 프로그램들이 제공하는 이미지 기능보다 더 뛰어난 딥러닝 이미지 분석기가 포함되어 있습니다. 또한, 반투명 이미지를 빠르고 쉽게 인식할 수 있도록 해줍니다. 이미지에서 글자와 숫자를 인식할 수 있는 커스텀 모듈(네이버 OCR, 구글 OCR)도 존재합니다. 우수한 인식 성능으로 업무 자동화를 완벽하게 만들 수 있습니다.

     

    개발자에게 후원하기

    MGtdv7r.png

     

    추천, 구독, 홍보 꼭~ 부탁드립니다.

    여러분의 후원이 빠른 귀농을 가능하게 해줍니다~ 답답한 도시를 벗어나 귀농하고 싶은 개발자~

    감사합니다~

    • 네이버 공유하기
    • 페이스북 공유하기
    • 트위터 공유하기
    • 카카오스토리 공유하기
    추천0 비추천0

    댓글목록

    profile_image

    엔지엠소프트웨어님의 댓글

    엔지엠소프트웨어 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 작성일 Date

    이미지 멀티 서치는 메모리에 접근하는 데이타가 많다보니 성능이 오히려 더 떨어집니다.
    이런 이유는 CPU에게 각각의 일을 할당해주고, 일이 잘 진행되고 있는지 모니터링하며 각각의 처리가 간섭이 없는지 체크하는 일이 추가되었기 때문입니다.
    메모리를 순차적으로 읽을수밖에 없어서 패러럴로 할당이 되었더라도 다른 이미지 서치가 완료될때까지 기다리는건 동일합니다.
    다만, 추가적인 작업들이 생겨나서 퍼포먼스가 떨어지는 결과가 나옵니다.