KR20220094848A - 이미지를 활용한 프로세스 자동화 방법 및 장치 - Google Patents

이미지를 활용한 프로세스 자동화 방법 및 장치 Download PDF

Info

Publication number
KR20220094848A
KR20220094848A KR1020200186492A KR20200186492A KR20220094848A KR 20220094848 A KR20220094848 A KR 20220094848A KR 1020200186492 A KR1020200186492 A KR 1020200186492A KR 20200186492 A KR20200186492 A KR 20200186492A KR 20220094848 A KR20220094848 A KR 20220094848A
Authority
KR
South Korea
Prior art keywords
image
work start
screen
start image
user terminal
Prior art date
Application number
KR1020200186492A
Other languages
English (en)
Other versions
KR102483475B1 (ko
Inventor
최혜민
Original Assignee
주식회사 레이드백
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 레이드백 filed Critical 주식회사 레이드백
Priority to KR1020200186492A priority Critical patent/KR102483475B1/ko
Publication of KR20220094848A publication Critical patent/KR20220094848A/ko
Application granted granted Critical
Publication of KR102483475B1 publication Critical patent/KR102483475B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0633Workflow analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04812Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06316Sequencing of tasks or work
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/68Food, e.g. fruit or vegetables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04803Split screen, i.e. subdividing the display area or the window area into separate subareas

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Operations Research (AREA)
  • General Business, Economics & Management (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Marketing (AREA)
  • Development Economics (AREA)
  • Educational Administration (AREA)
  • Game Theory and Decision Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

본 발명은 이미지를 활용한 프로세스 자동화 방법에 관한 것으로, 더욱 상게하게는 사용자 단말의 출력부에서 출력되고 있는 제 1 화면을 나타내는 제 1 화면이미지를 획득하는 단계, 제 1 화면이미지에 포함된 작업개시 이미지를 획득하는 단계, 작업개시 이미지와 연관된 이벤트를 획득하는 단계, 사용자 단말의 출력부에서 제 1 화면이 출력된 이후에 출력되고 있는 제 2 화면을 나타내는 제 2 화면이미지를 획득하는 단계, 제 2 화면이미지에 작업개시 이미지가 포함되어 있는지를 결정하는 단계, 제 2 화면이미지에 작업개시 이미지가 포함되어 있다고 결정한 경우 작업개시 이미지와 연관된 이벤트를 실행하는 단계를 포함한다.

Description

이미지를 활용한 프로세스 자동화 방법 및 장치 {Method and device for automating process with image}
본 발명은 프로세스 자동화 방법에 관한 것으로, 더욱 상세하게는 이미지를 활용한 프로세스 자동화 방법에 관한 것이다.
컴퓨터 기술이 발달하고, 컴퓨터가 많이 보급화되고 있다. 대다수의 사무업무가 컴퓨터를 이용하여 이루어지고 있으며, 컴퓨터를 사용하여 반복적인 양식이나 유형으로 처리되는 업무 또한 크게 증가하고 있다.
이에 따라, 컴퓨터를 사용한 업무를 빠르고 효율적으로 처리하기 위한 자동 처리 시스템(Automatic Processing System)에 대한 요구가 높아지고 있는 추세이다.
종래의 자동 처리 시스템의 예로는 매크로 프로그램(Macro Program)이 있다. 매크로 프로그램은 자주 사용하는 다수 개의 명령어를 묶어서 하나의 키 입력 동작으로 다수 개의 명령어가 함께 실행되게 한다. 매크로 프로그램은 반복적으로 수행되는 일정 패턴의 작업을 수행할 때 조작자가 매번 다수 개의 명령어를 입력할 필요 없이 매크로 기능을 저장된 특정 명령어 하나만을 입력함으로써 동일한 패턴의 반복 업무를 빠르고 편리하게 수행할 수 있다.
그러나, 이러한 종래의 자동 처리 시스템은 단순한 패턴을 갖는 업무에 관하여 적용될 수 있어 복잡한 컴퓨터 작업에는 활용할 수 없는 문제점이 있었다.
또한, 종래의 자동 처리 시스템은 자동 업무 처리 프로세스를 설정한 컴퓨터와 다른 환경을 가진 컴퓨터에서는 설정된 자동 업무 처리 프로세스가 제대로 실행되지 않아 실제 업무환경에서 활용하기 어려운 문제점이 있었다.
이에 더하여, 종래의 자동 처리 시스템은 사용자가 소정의 반복업무를 수행하는 업무 처리를 자동으로 수행하는 자동 업무 처리 프로세스를 설정하기 위하여 특정 명령어, 실행순서, 실행 위치, 방식 등과 같은 구체적인 사항을 설정해야 한다. 이러한 구체적인 사항에 대한 설정은 컴퓨터를 잘 다루는 사람이 아닌 경우에는 자동 업무 처리 프로세스를 설정하기 어려운 문제점이 있었다.
대한민국 공개특허공보 제10-2020-0046769호 대한민국 등록특허공보 제10-2039422호
따라서, 본 발명은 상기한 바와 같은 문제점을 해결하기 위하여 제안된 것으로, 자동 업무 처리 프로세스를 설정하기 위한 구체적인 사항들을 작업개시 이미지 및 이벤트 정보를 설정하여 처리하도록 함으로써, 자동 업무처리 프로세스를 설정하기 위한 작업 편리성 및 효율성을 높일 수 있도록 하는 업무 프로세스 자동화 방법을 제공함에 있다.
본 발명의 목적은 이상에서 언급한 것으로 제한되지 않으며,언급되지 않은 또 다른 목적들은 아래의 기재로부터 본 발명이 속하는 기술 분야의 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.
본 발명의 일 실시예에 따른 이미지를 활용한 프로세스 자동화방법은, 사용자 단말의 출력부에서 출력되고 있는 제 1화면을 나타내는 제 1 화면이미지를 획득하는 단계; 상기 제 1 화면이미지에 포함된 작업개시 이미지를 획득하는 단계; 상기 작업개시 이미지와 연관된 이벤트를 획득하는 단계; 상기 사용자 단말의 출력부에서 상기 제 1 화면이 출력된 이후에 출력되고 있는 제 2 화면을 나타내는 제 2 화면이미지를 획득하는 단계; 상기 제 2 화면이미지에 상기 작업개시 이미지가 포함되어 있는지를 결정하는 단계; 및 상기 제 2 화면이미지에 상기 작업개시 이미지가 포함되어 있다고 결정한 경우, 상기 작업개시 이미지와 연관된 이벤트를 실행하는 단계를 포함한다.
상기 작업개시 이미지와 연관된 이벤트 정보는 복수 개의 이벤트 및 각 이벤트의 실행 순서 또는 실행 시간에 대한 정보를 포함하고, 상기 이벤트를 실행하는 단계는 상기 복수 개의 이벤트를 각 이벤트의 실행 순서 또는 실행 시간에 따라 실행한다.,
상기 제 2 화면이미지에 상기 작업개시 이미지가 포함되어 있는지를 결정하는 단계는 상기 제 2 화면이미지를 소정의 해상도를 갖는 이미지 절편으로 분할하는 이미지 분할 필터를 이용하여, 상기 제 2 화면이미지를 복수 개의 이미지 절편으로 분할하는 단계; 및 상기 복수 개의 이미지 절편 각각을 상기 작업개시 이미지와 비교하고, 상기 복수 개의 이미지 절편 중 상기 작업개시 이미지와 대응되는 이미지 절편이 존재하는지를 결정하는 단계를 포함하고, 상기 제 2 화면이미지에 상기 작업개시 이미지가 포함되어 있는지를 결정하는 단계는 상기 작업개시 이미지와 대응되는 이미지 절편이 존재하는 경우 상기 제 2 화면이미지에 상기 작업개시 이미지가 포함되어 있다고 결정하고, 그렇지 않은 경우 상기 제 2 화면이미지에 상기 작업개시 이미지가 포함되어 있지 않다고 결정한다.
상기 작업개시 이미지와 대응되는 이미지 절편이 존재하는지를 결정하는 단계는 각 이미지 절편과 작업개시 이미지 사이의 유사도를 산출하는 단계; 및 상기 산출된 유사도 및 임계 유사도를 비교하고, 비교 결과에 기초하여 상기 작업개시 이미지와 대응되는 이미지 절편이 존재하는지를 결정하는 단계를 포함하고, 상기 비교 결과에 기초하여 상기 작업개시 이미지와 대응되는 이미지 절편이 존재하는지를 결정하는 단계는 산출된 유사도가 임계 유사도 이상인 이미지 절편이 존재하는 경우 상기 복수 개의 이미지 절편 중 상기 작업개시 이미지와 대응되는 이미지 절편이 존재한다고 결정하고, 산출된 유사도가 임계 유사도 이상인 이미지 절편이 존재하지 않는 경우 상기 복수 개의 이미지 절편 중 상기 작업개시 이미지와 대응되는 이미지 절편이 존재하지 않는다고 결정한다.
본 발명의 일 실시예에 따른 프로세스 자동화 방법에서,상기 작업개시 이미지와 대응되는 이미지 절편이 존재하는지를 결정하는 단계에서 상기 작업개시 이미지와 대응되는 이미지 절편이 존재하지 않는다고 결정된 경우, 상기 제 2 화면이미지를 복수 개의 이미지 절편으로 분할하는 단계는 상기 이미지 분할 필터에 분할되는 이미지 절편의 소정의 해상도를 변경하고 상기 제 2 화면이미지를 변경된 해상도를 갖는 복수 개의 이미지 절편으로 분할한다.
본 발명의 일 실시예에 따른 프로세스 자동화 방법에서, 상기 제 2 화면이미지를 복수 개의 이미지 절편으로 분할하는 단계 및 상기 이미지 절편이 존재하는지를 결정하는 단계는 상기 작업개시 이미지와 대응되는 이미지 절편을 찾을 때까지 또는 사전에 설정된 한계 수행 횟수만큼 반복하여 수행된다.
상기 이벤트를 실행하는 단계는 상기 작업개시 이미지와 대응되는 이미지 절편의 위치를 산출하는 단계; 상기 산출된 위치로 마우스 커서를 이동시키는 단계; 및 상기 마우스 커서가 이동된 위치에서 상기 작업개시 이미지와 연관된 이벤트를 실행하는 단계를 포함한다.
본 발명의 다른 실시예에 따른 이미지를 활용한 프로세스 자동화 방법을 수행하는 사용자 단말은, 상기 사용자 단말이 사용자로부터 입력된 데이터를 획득하는 입력부; 상기 사용자 단말의 사용자에게 데이터를 출력하는 출력부; 상기 사용자 단말의 출력부에서 출력되고 있는 제 1 화면을 나타내는 제 1 화면이미지를 획득하고,상기 제 1 화면이미지에 포함된 작업개시 이미지를 획득하고, 상기 사용자 단말의 출력부에서 상기 제 1 화면이 출력된 이후에 출력되고 있는 제 2 화면을 나타내는 제 2 화면이미지를 획득하는 이미지 획득부; 상기 작업개시 이미지와 연관된 이벤트를 획득하는 이벤트 획득부; 상기 제 2 화면이미지에 상기 작업개시 이미지가 포함되어 있는지를 결정하는 이미지 분석부; 및 상기 제 2 화면이미지에 상기 작업개시 이미지가 포함되어 있다고 결정한 경우, 상기 작업개시 이미지와 연관된 이벤트를 실행하는 프로세서를 포함한다.
이미지를 활용한 프로세스 자동화 방법은 사용자의 컴퓨터 작업과 관련하여 작업개시 이미지 및 이와 연관된 적어도 하나의 이벤트를 설정하고, 작업개시 이미지가 사용자 단말에서 수행 중인 화면에서 검색된 경우, 작업개시 이미지와 연관된 적어도 하나의 이벤트를 자동으로 실행하여 처리할 수 있다. 사용자에 의해 설정된 작업개시 이미지가 검출된 경우, 사용자가 컴퓨터를 조작하지 않더라도 자동으로 작업개시 이미지와 연관된 적어도 하나의 이벤트가 자동으로 실행되어 처리됨으로써, 사용자의 컴퓨터 작업의 편리성 및 효율성을 높일 수 있다.
또한, 본 발명에 의하면, 프로세스 자동화를 설정할 때 사용자에 의해 설정된 작업개시 이미지를 검색할 때, 검색 비율을 변경하면서 작업개시 이미지가 현재 출력 중인 화면에 포함되어 있는지를 검색한다. 본원발명은 현재 출력 중인 화면에서 미리 설정된 작업개시 이미지가 포함되어 있는지 여부를 검색할 때 다양한 해상도로 이미지 절편을 추출하고, 추출된 이미지 절편을 작업개시 이미지와 비교함으로써, 작업개시 이미지의 검출 정확도를 향상시킬 수 있다.
또한, 본원발명은 사용자 단말의 출력부에 출력된 화면에 포함된 이미지를 활용하여 작업개시 이미지를 설정한다. 예를 들어,사용자가 마우스를 드래그하여 특정 이미지를 작업개시 이미지로 설정할 수 있다. 이처럼 본원발명은 프로세스 자동화를 설정할 때, 사용자가 간단한 조작으로 작업개시 이미지를 설정할 수 있다. 이에 따라, 컴퓨터 또는 프로세스 자동화에 대한 전문적인 지식이 없는 사람도 용이하게 프로세스 자동화 방법을 설정할 수 있다.
본 발명의 효과는 이상에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술 분야의 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 이미지를 활용한 프로세스 자동화 장치인 사용자 단말의 블록도이다.
도 2는 본 발명의 일 실시예에 따른 이미지를 활용한 프로세스 자동화 방법의 흐름도이다.
도 3은 작업개시 이미지를 설정하는 예시화면을 도시한 도면이다.
도 4는 도 2에 도시된 이미지 데이터를 활용한 프로세스 자동화 방법에서 제 2 화면이미지가 작업개시 이미지를 포함하고 있는지를 결정하는 단계의 상세흐름도이다.
도 5는 본 발명의 실시예에 따라 이미지를 비교하는 방법을 도식화한 도면이다.
도 6은 도 3에 도시된 작업개시 이미지와 연관된 이벤트를 실행하는 단계의 상세흐름도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 할 것이다.
먼저, 본 명세서 및 청구범위에서 사용되는 용어는 본 발명의 다양한 실시 예들에서의 기능을 고려하여 일반적인 용어들을 선택하였다. 하지만, 이러한 용어들은 당 분야에 종사하는 기술자의 의도나 법률적 또는 기술적 해석 및 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 일부 용어는 출원인이 임의로 선정한 용어일 수 있다. 이러한 용어에 대해서는 본 명세서에서 정의된 의미로 해석될 수 있으며, 구체적인 용어 정의가 없으면 본 명세서의 전반적인 내용 및 당해 기술 분야의 통상적인 기술 상식을 토대로 해석될 수도 있다.
또한, 본 명세서에 첨부된 각 도면에 기재된 동일한 참조 번호 또는 부호는 실질적으로 동일한 기능을 수행하는 부품 또는 구성요소를 나타낸다. 설명 및 이해의 편의를 위해서 서로 다른 실시 예들에서도 동일한 참조번호 또는 부호를 사용하여 설명하도록 한다. 즉, 복수의 도면에서 동일한 참조 번호를 가지는 구성 요소를 모두 도시하고 있다고 하더라도, 복수의 도면들이 하나의 실시 예를 의미하는 것은 아니다.
또한, 본 명세서 및 청구범위에서는 구성요소들 간의 구별을 위하여 '제1', '제2' 등과 같이 서수를 포함하는 용어가 사용될 수 있다. 이러한 서수는 동일 또는 유사한 구성 요소들을 서로 구별하기 위하여 사용하는 것이며, 이러한 서수 사용으로 인하여 용어의 의미가 한정 해석되어서는 안될 것이다. 일 예로, 이러한 서수와 결합된 구성 요소는 그 숫자에 의해 사용 순서나 배치 순서 등이 제한 해석되어서는 안 된다. 필요에 따라서는, 각 서수들은 서로 교체되어 사용될 수도 있다.
본 명세서에서 단수의 표현은 문맥상 명백하게 다름을 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, '포함하다' 또는 '구성하다' 등의 용어는 명세서 상에 기재된 특성, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특성들이나 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한, 본 발명의 실시 예에서, 어떤 부분이 다른 부분과 연결되어 있다고 할 때, 이는 직접적인 연결뿐 아니라, 다른 매체를 통한 간접적인 연결의 경우도 포함한다. 또한 어떤 부분이 어떤 구성 요소를 포함한다는 의미는, 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있다는 것을 의미한다.
이하의 본 발명의 실시예들에 대한 상세한 설명에서 기재된 용어는 다음과 같은 의미를 갖는다. "프로세스"는 사용자 단말와 같은 장치에서 실행 중인 프로그램, 일(task)를 의미한다."이벤트(event)"는 사용자 단말에서 실행되는 임의의 동작 또는 사건을 의미하는 것으로, 마우스 입력, 명령어 입력 등을 예로 들 수 있다. 본 발명의 실시예들이 속하는 기술분야에서 통상의 지식을 가진 자라면, 상술한 용어에 대하여 용이하게 이해할 수 있다.
이하, 첨부된 도면을 참조하여 본 발명을 더욱 구체적으로 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 이미지를 활용한 프로세스 자동화 장치인 사용자 단말의 블록도이다.
도 1을 참조하면,사용자단말(1000)은 프로세서(1100), 스토리지(1200), 입력부(1300), 출력부(1400), 이미지 획득부(1500), 이미지 분석부(1600), 및 이벤트획득부(1700)로 이루어져 있다.
프로세서(1100)는 사용자 단말(1000)에서 명령을 해독하고 실행하기 위한 처리 및 가공하는 기능을 포함한 하드웨어이다. 프로세서(1100)는 하드웨어적인 측면에서 컴퓨터 내에서 프로그램을 수행하는 하드웨어 유닛으로, 대표적인 예로 중앙처리장치(Central Processing Unit, CPU)일 수 있다. 프로세서(1100)는 사용자 단말(1000)에서 수행되는 일반적인 태스크(task)를 처리한다.
스토리지(1200)는 데이터를 전자기 형태로 저장하는 저장소로서, 사용자단말(1000)에서 이미지를 활용한 프로세스 자동화 방법을 수행하기 위하여 필요한 데이터를 저장한다. 스토리지(1200)에 저장되는 데이터는 프로세스 정보, 작업 개시 이미지 및 연관된 이벤트 데이터를 포함할 수 있다.
입력부(1300)는 사용자 단말(1000)이사용자로부터 입력된 데이터를 획득하기 위한 구성이다. 입력부(1300)의 대표적인 예로는, 키보드, 마우스, 터치스크린 등을 들 수 있다. 사용자 단말(1000)의 사용자는 입력부(1300)을 통하여 명령어 등을 입력할 수 있다. 입력부(1300)에서 입력될 수 있는 데이터는 작업개시 이미지, 작업개시 이미지와 연관된 이벤트에 대한 데이터일 수 있다.
출력부(1400)는 사용자 단말(1000)의 사용자에게 데이터를 출력해주기 위한 구성으로, 대표적인 예로 모니터, 프린터, 스피커 등을 들 수 있다. 출력부(1400)에서 출력할 수 있는 데이터는 사용자 단말(1000)에서 수행 중인 프로세스를 나타내는 화면, 작업개시 이미지, 작업개시 이미지와 연관된 이벤트를 포함할 수 있다.
이미지 획득부(1500)는 현재 사용자 단말(1000)의 출력부(1400)에서 출력 중인 화면을 나타내는 이미지를 획득하기 위한 구성부이다. 이미지 획득부(1500)는 현재 출력부(1400)에서 출력되고 있는 화면을 캡처하는 방식으로 현재 출력되고 있는 화면을 나타내는 화면이미지를 생성한다. 화면이미지는 사용자 단말(1000)에 의해 수행되는 프로세스를 보여주는 화면을 나타내는 이미지 이다. 또한,이미지 획득부(1500)는 사용자로부터 작업개시 이미지를 나타내는 작업개시 이미지 데이터를 획득한다. 사용자는 입력부(1300)를 이용하여 작업개시 이미지로 지정하려는 이미지를 사용자 단말(1000)에 입력할 수 있다. 이미지 획득부(1500)는 사용자로부터 입력된 작업개시 이미지를 획득한다.
이미지 분석부(1600)는 이미지 획득부(1500)에서 획득한 화면이미지 및 작업개시 이미지를 분석하기 위한 구성부이다. 보다 구체적으로, 이미지 분석부(1600)는 화면이미지와 작업개시 이미지를 비교하고, 비교 결과에 기초하여 화면이미지에 작업개시 이미지가 포함되어 있는지를 결정한다. 이미지 분석부(1600)는 이미지 분할부(1601), 유사도 산출부(1602), 비교부(1603), 및 필터 조정부(1064)를 포함한다.
이미지 분할부(1601)는 화면이미지를 이미지 분할필터를 이용하여 소정의 해상도를 갖는 복수 개의 이미지 절편으로 분할한다. 이미지 분할필터는 화면이미지를 소정의 해상도를 갖는 이미지 절편으로 분할한다. 이미지 분할부(1601)는 화면이미지를 이미지 분할필터의 소정의 해상도를 갖는 복수 개의 이미지 절편으로 분할한다. 여기에서, 이미지 분할필터의 해상도는 사용자에 의하여 또는 사용자 단말(1000)의 프로세서(1100)에 의하여 가변한다.
유사도 산출부(1602)는 이미지 분할부(1601)에 의해 분할된 복수 개의 이미지 절편 각각과 작업개시 이미지를 비교하고, 각 이미지 절편과 작업개시 이미지 사이의 유사도를 산출한다. 여기에서, 유사도는 양 이미지 사이의 비슷한 정도를 의미한다. 유사도 산출부(1602)는 양 이미지의 유사도를 0 에서100 사이의 숫자로 산출한다. 양 이미지 사이의 유사도가 '0'인 경우, 양 이미지는 유사한 부분이 전혀 없다는 의미이고, 양 이미지 사이의 유사도 '100'인 경우, 양 이미지는 완전히 일치한다는 의미이다. 유사도 산출부(1602)는 2개의 이미지가 입력되면 2개의 이미지 사이의 유사도를 산출하도록 사전에 트레이닝된 인공신경망일 수 있다.
비교부(1603)는 유사도 산출부(1602)에서 산출된 유사도를 사용자에 의해 미리 설정된 임계 유사도와 비교한다. 비교부(1603)는 이미지 절편과 작업개시 이미지 사이의 유사도와 임계 유사도를 비교하고, 산출된 유사도가 임계 유사도 이상인지 미만인지를 결정한다. 산출된 유사도 임계 유사도 이상인 경우, 비교부(1603)는 해당 유사도를 갖는 이미지 절편이 작업개시 이미지와 대응된다고 결정한다.
필터 조정부(1064)는 이미지 분할 필터의 해상도를 조정한다. 화면이미지로부터 분할된 복수 개의 이미지 절편 중 작업개시 이미지와 대응되는 이미지 절편이 존재하지 않는 경우, 필터 조정부(1604)는 이미지 분할 필터의 해상도를 조정한다. 여기에서, 필터 조정부(1604)는 종전에 이미지 절편의 해상도와 상이한 해상도를 갖도록 이미지 분할 필터의 해상도를 변경한다. 필터 조정부(1604)는 이미지 분할 필터의 해상도를 변경함으로써, 이미지 분할부(1601)에서 화면이미지를 다양한 해상도의 이미지 절편으로 분할할 수 있게 한다.
이벤트 획득부(1700)는 사용자로부터 입력된 작업개시 이미지와 연관된 이벤트에 대한 정보를 획득하기 위한 구성부이다. 보다 구체적으로, 사용자는 사용자 단말(1000)의 입력부(1300)를 통하여 입력된 작업개시 이미지와 연관된 이벤트를 입력할 수 있고, 이벤트 정보는 마우스 커서의 이동, 마우스 커서의 동작, 텍스트 입력 등을 포함한다.
본 발명의 실시예들에 따른 사용자 단말(1000)에서, 이미지 획득부(1500), 이미지 분석부(1600)및 이벤트 획득부(1700)는 프로세서(1100)와 다른 별개의 전용 프로세서에 의해 구현될 수 있으며, 프로세서(1100)에 의해 수행되는 컴퓨터 프로그램의 실행에 의하여 구현될 수도 있다.
도 2는 본 발명의 일 실시예에 따른 이미지를 활용한 프로세스 자동화 방법에 대한 흐름도이다.
도 2를 참조하면, S1010 단계에서, 사용자 단말(1000)은 사용자 단말(1000)의 출력부(1400)에서 출력되고 있는 화면을 나타내는 제1 이미지를 획득한다. 보다 구체적으로, 사용자 단말(1000)의 이미지 획득부(1500)는 사용자 단말(1000)의 출력부(1400)인 디스플레이에서 출력되고 있는 화면을 캡쳐하여, 현재 디스플레이에서 출력되고 있는 제 1 화면을 나타내는 제 1 화면이미지를 표현하는 제 1 화면이미지데이터를 획득한다. 이미지 데이터는 현재 사용자 단말(1000)의 출력부(1400)에 의해 출력되고 있는 화면을 나타내는 데이터이다. 예를 들어, 컴퓨터의 모니터에서 웹 브라우저가 실행 중인 경우, 이미지 데이터는 웹 브라우저의 화면에 대한 데이터이다. 이미지데이터는 이미지를 구성하는 픽셀(pixel)들의 수, 각 픽셀들의 색깔을 포함한다. 이미지 획득부(1500)는 사용자 단말(1000)의 출력부(1400)에서 출력되고 있는 화면을 캡쳐한 이미지를 획득한다.
S1020 단계에서, 사용자 단말(1000)은 사용자 단말(1000)의 사용자로부터 작업개시 이미지를 획득한다. 보다 구체적으로, 사용자 단말(1000)의 이미지 획득부(1500)는 입력부(1300)를 통하여 사용자로부터 입력된 작업개시 이미지를 나타내는 작업개시 이미지데이터를 획득한다. 사용자 단말(1000)의 사용자는 입력부(1300)를 통하여 작업개시 이미지를 설정할 수 있다.
이와 관련하여, 본 발명의 도 3은 작업개시 이미지를 설정하는 예시화면을 도시한 도면이다. 도 3을 참고하면, 사용자는 입력부(1300)인 마우스를 이용하여 작업개시 이미지를 설정할 수 있다.도 3에 도시된 예시에 따르면, 작업개시 이미지로 설정하고 싶은 이미지 부분을 마우스 커서로 드래그하는 방식으로 작업개시 이미지를 설정할 수 있다.
이미지 획득부(1500)는 사용자에 의해 입력된 작업개시 이미지를 나타내는 작업개시 이미지 데이터를 획득한다. 작업개시 이미지 데이터는 사용자가 설정한 작업개시 이미지의 크기, 작업개시 이미지의 위치(예를 들어, 출력부의 화면에서의 좌표), 작업개시 이미지에 포함된 픽셀 수, 각 픽셀의 색깔을 포함한다. 이미지 획득부(1500)는 획득된 작업개시 이미지 데이터를 스토리지(1200)에 저장한다.
S1030 단계에서, 사용자 단말(1000)은 사용자로부터 입력된 작업개시 이미지와 연관된 이벤트를 획득한다. 사용자 단말(1000)의 이벤트 획득부(1700)는 입력부(1300)를 통하여 사용자로부터 입력된 작업개시 이미지와 연관된 이벤트에 대한 이벤트 데이터를 획득한다. 보다 구체적으로, 사용자는 사용자 단말(1000)의 입력부(1300)를 통하여 S1020 단계에서 입력된 작업개시 이미지와 연관된 이벤트를 입력할 수 있다. 여기에서, 연관된 이벤트는 작업개시 이미지와 연관되어 사용자 단말(1000)에서 실행되는 태스크로서, 마우스 커서의 이동, 마우스 커서의 동작 등을 포함한다. 연관된 이벤트 데이터는 사용자가 입력한 작업개시 이미지와 연관된 이벤트를 나타내는 데이터를 의미한다.
S1030 단계에서, 작업개시 이미지와 연관된 이벤트는 복수 개의 이벤트일 수 있다. 사용자는 사용자 단말(1000)의 입력부(1300)를 통하여 작업개시 이미지와 연관된 복수 개의 이벤트를 설정할 수 있다. 사용자는 복수 개의 이벤트 각각에 대한 실행 순서 또는 실행 시간을 입력할 수 있다. 복수 개의 이벤트는 사용자 단말(1000)에서 실행 중인 임의의 프로세스에서 작업개시 이미지가 검색된 경우, 각 이벤트들 사이에 실행 순서에 따라 또는 각 이벤트 별 실행 시간에 따라 사용자 단말(1000)에서 실행된다.
사용자 단말(1000)에서 실행 중인 임의의 프로세스에 작업개시 이미지가 포함된 경우, 이러한 작업 개시 이미지와 연관된 이벤트가 사용자 단말(1000)에서 자동으로 실행된다. 예를 들어, 작업개시 이미지로 모바일 메신저 프로그램의 알림을 나타내는 이미지가 설정되고, 작업개시 이미지와 연관된 이벤트로 모바일 메신저를 실행시키는 태스크가 설정되었다고 가정한다. 이러한 예시에서, 사용자 단말(1000)에서 실행 중인 프로세스가 모바일 메신저 프로그램의 알림을 나타내는 이미지를 포함하는 경우(즉, 모바일 메신저 프로그램의 알림이 실행된 경우), 사용자가 모바일메신저를 실행하라는 명령을 입력하지 않더라도 사용자 단말(1000)의 프로세서(1100)는 모바일메신저의 알림으로 마우스 커서의 위치를 이동시키고, 마우스 커서가 지시하는 이미지(즉, 모바일 메신저) 실행하는 이벤트를 실행한다. 사용자 단말(1000)는 작업 개시 이미지 및 연관된 이벤트 정보를 스토리지(1200)에 저장한다.
도 3에 도시된 예시에서, 사용자는 키보드, 마우스 등과 같은 입력부(1300)를 이용하여 작업개시 이미지로 설정된 지문을 나타내는 이미지(도 3에서 사각 박스로 구획된 이미지 부분)를 작업개시 이미지로 입력한다. 사용자 단말(1000)에서 실행 중인 프로세스에서 작업개시 이미지와 동일한 이미지를 포함하는 경우, 사용자 단말(1000)은 마우스 커서의 위치를 작업개시 이미지와 동일한 이미지 부분으로 이동시키고, 연관된 이벤트인 지문을 나타내는 이미지 부분을 확대하는 이벤트를 실행한다.
S1040 단계에서, 사용자 단말(1000)은 사용자 단말(1000)의 출력부(1400)에서 제 1 화면이 출력된 이후에 출력되고 있는 제 2 화면을 나타내는 제 2 화면이미지를 획득한다.보다 구체적으로,사용자 단말(1000)의 이미지 획득부(1500)는 사용자 단말(1000)의 출력부(1400)인 디스플레이에서 현재 출력되고 있는 화면을 캡쳐하고, 현재 디스플레이에서 출력되고 있는 제 2 화면을 나타내는 제 2 화면이미지를 표현하는 제 2 화면이미지 데이터를 획득한다. 이미지 획득부(1500)는 획득된 제 2 화면이미지 데이터를 이미지 분석부(1600)로 입력한다.
S1050 단계에서, 사용자 단말(1000)은제 2 화면이미지에 작업개시 이미지가 포함되어 있는지를 결정한다. 사용자 단말(1000)의 이미지 분석부(1600)는 사용자 단말(1000)의 출력부(1400)에서 출력되고 있는 화면을 나타내는 제2 이미지에서 작업개시 이미지가 포함하고 있는지를 결정한다. 보다 구체적으로, 이미지 분석부(1600)는 제 2 이미지와 작업개시 이미지를 비교한다. 이미지 분석부(1600)는 작업개시 이미지 데이터가 나타내는 이미지와 동일한 이미지를 제 2 화면이미지가 포함하고 있는 여부를 결정한다. 이미지 분석부(1600)에서 제 2 화면이미지가 작업개시 이미지를 포함하고 있다고 결정하면 S1060 단계로 진행하고, 그렇지 않으면 S1040 단계로 진행한다. 사용자 단말(1000)이 제 2 화면이미지에 작업개시 이미지가 포함되어 있는지 여부를 결정하는 구체적인 과정에 대하여는 이하에서 도 4를 참고하여 설명하기로 한다.
도 4는 도 2에 도시된 이미지를 활용한 프로세스 자동화 방법에서 제 2 화면이미지가 작업개시 이미지를 포함하고 있는지를 결정하는 단계의 상세흐름도이다. 도 4를 참고하면, S1051 단계에서, 사용자 단말(1000)의 이미지 분석부(1600)는 제 2 화면이미지 데이터의 제 2 화면이미지로부터 소정의 해상도를 갖는 이미지 절편으로 분할하는 이미지 분할 필터를 이용하여 제 2 화면이미지를 제 2 화면이미지의 일부분을 나타내는 소정의 해상도를 갖는 이미지 절편으로 분할한다. 이미지 분석부(1600)의 이미지 분할부(1601)는 이미지 분할 필터의 소정의 해상도에 따라 제 2 화면이미지를 소정의 해상도를 갖는 복수 개의 이미지 절편으로 나누고, 나누어진 복수 개의 이미지 절편을 출력한다. 복수 개의 이미지 절편 각각은 이미지 분할 필터의 소정의 해상도를 갖는다.
여기에서, 복수 개의 이미지 절편 중 서로 인접한 이미지 절편들 각각의 유사도는 소정의 임계 유사도 이상이다. 예를 들어, 인접한 이미지 절편의 임계 유사도는 90점(전체 픽셀 중 90%가 동일) 일 수 있다. 인접한 이미지 절편 각각이 나타내는 이미지는 상당 부분 유사하다. 제 1 이미지 절편이 나타내는 이미지와 제 2 이미지 절편이 나타내는 이미지는 테두리 부분을 제외한 부분에서 겹쳐진다.
예를 들어, 제 2이미지 절편이 제 1 이미지 절편의 우측에 바로 인접한 이미지 절편인 경우, 제 1 이미지 절편과제 2 이미지 절편은 좌측 또는 우측 최외곽의 픽셀 열만 상이하고, 나머지 부분은 서로 동일한 픽셀을 갖는다. 다시 말해, 제 1 이미지 절편 및 제 2 이미지 절편의 이미지는 서로 겹친다.
여기에서, 이미지 절편의 유사도의 임계 유사도는 90점, 80점, 70점 등으로 설계자에 의해 미리 설정될 수 있다. 유사도의 점수는 0점인 경우, 두 이미지는 동일한 부분이 없다는 것을 의미하고, 유사도의 점수가 100점인 경우에는 두 이미지가 완전히 일치한다는 것을 의미한다.
S1052 단계에서, 사용자 단말(1000)의 이미지 분석부(1600)는 추출된 복수 개의 이미지 절편 각각과 작업개시 이미지를 비교하고, 복수 개의 이미지 절편 중 작업개시 이미지와 대응되는 이미지가 존재하는지를 결정한다. 이미지 분석부(1600)는 작업개시 이미지와 대응되는 이미지 절편이 존재하는 경우 제 2 화면이미지에 작업개시 이미지가 포함되어 있다고 결정하고, 그렇지 않은 경우 제 2 화면이미지에 작업개시 이미지가 포함되어 있지 않다고 결정한다. 작업개시 이미지와 대응되는 이미지 절편이 존재하는지 여부를 결정하는 방식에 대하여는 이하에서 상세하게 설명하기로 한다.
보다 구체적으로, 이미지 분석부(1600)의 유사도 산출부(1602)는 각 이미지 절편과 작업개시 이미지를 비교하고, 각 이미지 절편과 작업개시 이미지 사이의 유사도를 산출한다.
여기에서, 유사도 산출부(1602)는 양 이미지의 유사도를 산출하도록 미리 트레이닝된 인공신경망이다. 유사도 산출부(1602)는 복수 개의 이미지 및 이미지 사이의 유사도를 포함하는 학습용 데이터 세트에 의해 사전에 트레이닝된 인공신경망이다. 본 발명에 따른 유사도 산출부(1602)는 2개의 이미지가 입력되면, 각 이미지의 유사도를 산출하여 출력한다.
인공신경망은 인공신경망 전체가 합성곱 연산으로 이루어진 FCN(fully convolution network), 여러 개의 퍼셉트론을 포함하는 다층 구조 퍼셉트론(multi layer perceptron), 다수의 컨볼루션 레이어(convolution layer)를 포함하는 CNN(convolutional neural network), 순환구조를 갖는 RNN(recurrent neural network) 등으로 구현될 수 있다.
유사도 산출부(1602)는 산출된 유사도를 비교부(1603)로 입력한다.
이미지 분석부(1600)의 비교부(1603)는 산출된 유사도 및 임계 유사도를 비교하고, 비교 결과에 기초하여 작업개시 이미지와 대응되는 이미지 절편이 존재하는 지를 결정한다. 보다 구체적으로, 비교부(1603)는 산출된 유사도 중 임계 유사도를 넘는 이미지가 존재하는지 여부를 결정한다. 이미지 분석부(1600)의 비교부(1603)는 산출된 각 이미지 절편과 작업개시 이미지 사이의 유사도 중 임계 유사도를 비교한다. 비교부(1603)는 비교결과 산출된 유사도가 임계 유사도 이상인 이미지 절편이 존재하는 경우 복수 개의 이미지 절편 중 작업개시 이미지와 대응되는 이미지 절편이 존재한다고 결정하고, 산출된 유사도가 임계 유사도 이상인 이미지 절편이 존재하지 않는 경우 복수 개의 이미지 절편 중 작업개시 이미지와 대응되는 이미지 절편이 존재하지 않는다고 결정한다. 비교부(1603)는 비교 결과 임계 유사도 이상인 이미지 절편이 존재하는 경우, S1060 단계로 진행하고 그렇지 않은 경우 S1053 단계로 진행한다.
S1053 단계에서, 이미지 분석부(1600)는 제 2 화면이미지를 복수 개의 이미지 절편으로 분할하는 S1051 단계를 수행한 횟수가 한계 수행 횟수를 초과하였는지를 결정한다. 이미지 분석부(1600)는 이미지 절편으로 분할하는 단계를 수행한 횟수가 사용자에 의해 미리 설정된 한계 수행 횟수를 초과하는지를 결정한다. 이미지 분석부(1600)는 하나의 제 2 화면이미지에 대하여 제 2 화면이미지를 상이한 해상도의 이미지 절편으로 분할하였는지를 결정한다. 이미지 절편을 분할하는 단계를 수행한 횟수가 한계 수행 횟수를 초과한 경우 S1040 단계로 진행하고, 그렇지 않으면 S1054 단계로 진행한다.
S1054 단계에서, 이미지 분석부(1600)는 제 2 화면이미지 데이터로부터 이미지 절편을 분할하는 이미지 분할 필터의 해상도를 변경한다. 이미지 분석부(1600)의 필터 조정부(1604)는 제 2 화면이미지 데이터로부터 추출된 이미지 절편 중 작업개시 이미지와 대응되는 이미지 절편이 존재하지 않는 경우, 이미지 분할 필터의 해상도를 변경한다. 필터 조정부(1604)는 해상도가 변경된 필터를 이미지 분할부(1701)로 입력한다.
S1051 단계에서, 이미지 분석부(1600)의 이미지 분할부(1601)는 해상도가 조정된 이미지 분할 필터를 이용하여 제 2 화면이미지를 조정된 소정의 해상도를 갖는 이미지 절편으로 분할한다. 이미지 분할부(1601)는 해상도가 조정된 이미지 분할 필터를 이용하여 제 2 화면이미지를 종전의 이미지 절편과 상이한 해상도를 갖는 이미지 절편으로 분할한다. 이미지 분할부(1601)는 분할된 복수 개의 이미지 절편을 출력한다.
사용자 단말(1000), 특히 이미지 분석부(1600)는 이전에 수행된 이미지 절편과 상이한 해상도를 갖는 복수 개의 이미지 절편에 대하여 S1052, S1053, S1054 단계를 다시 수행한다.
상술한 내용을 종합하면, 본 발명의 실시예들에 따른 프로세스 자동화방법은 S1051 내지 S1054 단계를 반복한다. 이미지 분석부(1600)는 제 1이미지 분할 필터를 이용하여 제 2 화면이미지를 제 1 해상도를 갖는 복수 개의 이미지 절편으로 분할하고, 제 1 해상도를 갖는 이미지 절편 각각을 작업개시 이미지와 비교한다. 비교 결과 작업개시 이미지와 대응되는 이미지 절편이 존재하지 않는 경우, 이미지 분석부(1600)는 제 1 이미지 분할 필터의 해상도를 조정하여 제 2 화면이미지를 제 1 해상도와 상이한 제 2 해상도를 갖는 복수 개의 이미지 절편으로 분할한다. 이미지 분석부(1600)는 제 2 해상도를 갖는 이미지 절편을 작업개시 이미지와 비교하고, 작업개시 이미지와 대응되는 이미지 절편이 존재하는 지를 결정한다. 본 발명의 실시예들에 따른 프로세스 자동화방법은 제 2 화면이미지를 소정의 해상도를 갖는 이미지 절편으로 분할하고, 분할된 이미지 절편 중 작업개시 이미지와 대응되는 이미지 절편이 존재하지 않는 경우 제 2 화면이미지를 상이한 해상도를 갖는 이미지 절편으로 분할하고 분할된 이미지 절편을 작업개시 이미지와 비교한다. 이처럼 본 발명은 제 2 화면이미지를 상이한 해상도를 갖는 이미지 절편으로 분할하고 분할된 이미지 절편을 작업개시 이미지와 비교함으로써, 작업개시 이미지를 검출하는 정확도를 향상시킬 수 있다.
도 5는 본 발명의 실시예에 따라 이미지를 비교하는 방법을 도식화한 도면이다. 도 5에서 "A"는 현재 사용자 단말(1000)의 출력부(1400)에서 출력되고 있는 화면, 즉 제 2화면이미지고, "B"는 제2 이미지에 포함된 작업 개시 이미지이다. 도 5를 참고하면, 이상에서 기재한 바와 같이 사용자 단말(1000)의 출력부(1400)에서 출력되고 있는 화면을 소정의 해상도를 갖는 이미지 절편(도 5 상에서 점선으로 된 사각형)으로 분할한다. 이미지 분석부(1600)는 분할된 이미지 절편 각각을 스토리지(1200)에 저장된 작업개시 이미지와 비교한다. 이미지 절편과 작업개시 이미지의 비교 결과, 유사도가 설계자에 의해 미리 설정된 임계 유사도 이상인 이미지 절편이 검색되지 않은 경우, 이미지 분석부(1600)는 제 2화면이미지로부터 분할되는 이미지 절편의 해상도를 변경한다. 이미지 분석부(1600)는 변경된 해상도로 분할된 이미지 절편을 작업개시 이미지와 비교하고, 작업개시 이미지와 유사도가 임계 유사도 이상인 이미지 절편을 검출한다.
본 발명의 일 실시예에 따른 프로세스 자동화 방법에서, 사용자 단말(1000)은 작업개시 이미지와 대응되는 이미지 절편이 검출될 때까지 또는 사용자에 의해 미리 설정된 한계 수행 횟수 만큼 S1051 단계 내지 S1054 단계를 반복한다. 여기에서, 한계 수행 횟수는 작업개시 이미지와 대응되는 이미지 절편이 검출되지 않은 경우, S1051 단계 내지 S1054 단계를 수행하는 최대 횟수이다. 제 2 화면이미지가 작업개시 이미지와 대응되는 이미지를 포함하고 있지 않은 경우, 사용자 단말(1000)은 사용자에 의해 미리 설정된 한계 수행 횟수만큼 이미지 분할 필터의 해상도를 조정하여 제 2 화면이미지로부터 이미지 절편을 추출하고, 추출된 이미지 절편을 작업개시 이미지와 비교한다.
한계 수행 횟수만큼 제 2 화면이미지를 이미지 절편으로 분할하고 비교한 결과, 작업개시 이미지와 대응되는 이미지 절편이 존재하지 않는 경우, 사용자 단말(1000)은 제 2 화면이미지에 작업개시 이미지를 포함하고 있지 않다고 결정한다. 다시 말해, 사용자 단말(1000)은 사용자 단말(1000)의 출력부(1400)에서 출력되고 있는 화면에 작업개시 이미지가 표시되어 있지 않다고 결정한다.
한계 수행 횟수에 도달하기 이전에 제 2 화면이미지로부터 분할된 이미지 절편 중 작업개시 이미지와 대응되는 이미지 절편이 존재하는 경우, 사용자 단말(1000)은 제 2 화면이미지에 작업개시 이미지가 포함되어 있다고 결정하고, S1051 단계 내지 S1054 단계를 반복하는 것을 중단한다.
S1060 단계에서, 사용자 단말(1000)은 작업개시 이미지와 연관된 이벤트를 실행한다. S1050 단계에서, 사용자 단말(1000)이 현재 사용자 단말(100)의 출력부(1400)에서 출력 중인 화면인 제 2 화면이미지에서 S1030 단계에서 획득된 작업개시 이미지와 유사한 이미지 절편을 검출한 경우, 사용자 단말(1000)의 프로세서(1100)는 스토리지(1200)에 저장된 작업개시 이미지와 연관된 이벤트 정보를 판독하고, 연관된 이벤트 정보가 나타내는 이벤트를 실행한다.
작업개시 이미지와 연관된 이벤트를 실행하는 S1060 단계는 다음의 단계들로 구성된다. 도 6은 도 3에 도시된 작업개시 이미지와 연관된 이벤트를 실행하는 단계의 상세흐름도이다. 도 6을 참고하면, S1061 단계에서, 사용자 단말(1000)은 제 2 화면이미지에서 검출된 작업개시 이미지와 대응하는 이미지 절편의 위치를 산출한다. 보다 자세하게는, 사용자 단말(1000)의 이미지 분석부(1600)는 제 2 화면이미지로부터 분할된 이미지 절편들 중 S1030 단계에서 획득된 작업개시 이미지와 유사한 이미지 절편(즉, 작업개시 이미지와 유사도가 임계 유사도 이상인 이미지 절편)의 위치를 산출한다. 사용자 단말(1000)의 이미지 분석부(1600)는 이미지 절편이 현재 출력 중인 화면에서 배치된 위치의 좌표를 산출하는 방식으로 작업개시 이미지와 유사한 이미지 절편의 위치를 산출한다.
S1062 단계에서, 사용자 단말(1000)은 S1061 단계에서 산출된 이미지 절편의 위치로 마우스 커서의 위치를 이동시킨다. 보자 자세하게는, 사용자 단말(1000)의 프로세서(1100)는 마우스 커서의 위치를 작업개시 이미지와의 유사도가 임계 유사도 이상인 이미지 절편의 위치로 이동시킨다.
S1063 단계에서, 사용자 단말(1000)은 마우스 커서가 이동된 위치에서 작업개시 이미지와 연관된 이벤트를 실행한다. 사용자 단말(1000)의 프로세서(1100)는 작업개시 이미지와 유사한 이미지 절편의 위치로 이동된 마우스 커서에서 S1040 단계에서 획득된 이벤트를 실행한다.
도 5에 도시된 예시에 따르면, 사용자 단말(1000)은 사용자 단말(1000)에서 출력 중인 화면에 작업개시 이미지로 설정된 "B"이미지와 동일한 이미지를 포함하는지를 결정한다. "B"이미지와 유사한 이미지가 검색된 경우, 사용자 단말(1000)의 프로세서(1100)는 현재 출력 중인 화면에서"B" 이미지의 위치로 이동시키고, 이동된 마우스 커서의 좌측버튼의 더블클릭과 동일한 이벤트인"B"이미지와 연관된 프로그램을 실행하는 이벤트를 실행한다.
상술한 본 발명의 실시예들에 따르면, 이미지를 활용한 프로세스 자동화 방법은 사용자의 컴퓨터 작업과 관련하여 작업개시 이미지 및 이와 연관된 적어도 하나의 이벤트를 설정하고, 작업개시 이미지가 사용자 단말에서 수행 중인 화면에서 검색된 경우, 작업개시 이미지와 연관된 적어도 하나의 이벤트를 자동으로 실행하여 처리할 수 있다. 사용자에 의해 설정된 작업개시 이미지가 검출된 경우, 사용자가 컴퓨터를 조작하지 않더라도 자동으로 작업개시 이미지와 연관된 적어도 하나의 이벤트가 자동으로 실행되어 처리됨으로써, 사용자의 컴퓨터 작업의 편리성 및 효율성을 높일 수 있다.
또한, 본 발명에 의하면, 프로세스 자동화를 설정할 때 사용자에 의해 설정된 작업개시 이미지를 검색할 때, 검색 비율을 변경하면서 작업개시 이미지가 현재 출력 중인 화면에 포함되어 있는지를 검색한다. 본원발명은 현재 출력 중인 화면에서 미리 설정된 작업개시 이미지가 포함되어 있는지 여부를 검색할 때 다양한 해상도로 이미지 절편을 추출하고, 추출된 이미지 절편을 작업개시 이미지와 비교함으로써, 작업개시 이미지의 검출 정확도를 향상시킬 수 있다.
또한, 본원발명은 사용자 단말의 출력부에 출력된 화면에 포함된 이미지를 활용하여 작업개시 이미지를 설정한다. 예를 들어, 사용자가 마우스를 드래그하여 특정 이미지를 작업개시 이미지로 설정할 수 있다. 이처럼 본원발명은 프로세스 자동화를 설정할 때, 사용자가 간단한 조작으로 작업개시 이미지를 설정할 수 있다.이에 따라, 컴퓨터 또는 프로세스 자동화에 대한 전문적인 지식이 없는 사람도 용이하게 프로세스 자동화 방법을 설정할 수 있다.
한편, 이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
이제까지 본 발명에 대하여 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
1000:사용자 단말
1100:프로세서 1200: 스토리지
1300:입력부 1400: 출력부
1500:이미지 획득부 1600: 이미지 분석부
1700:이벤트 획득부

Claims (9)

  1. 이미지를 활용한 프로세스 자동화방법에있어서,
    사용자 단말의 출력부에서 출력되고 있는 제 1 화면을 나타내는 제 1 화면이미지를 획득하는 단계;
    상기 제 1 화면이미지에 포함된 작업개시 이미지를 획득하는 단계;
    상기 작업개시 이미지와 연관된 이벤트를 획득하는 단계;
    상기 사용자 단말의 출력부에서 상기 제 1화면이 출력된 이후에 출력되고 있는 제 2 화면을 나타내는 제 2 화면이미지를 획득하는 단계;
    상기 제 2 화면이미지에 상기 작업개시 이미지가 포함되어 있는지를 결정하는 단계; 및
    상기 제 2 화면이미지에 상기 작업개시 이미지가 포함되어 있다고 결정한 경우, 상기 작업개시 이미지와 연관된 이벤트를 실행하는 단계를 포함하는 것을 특징으로 하는 이미지를 활용한 프로세스 자동화방법.
  2. 제 1 항에 있어서,
    상기 작업개시 이미지와 연관된 이벤트 정보는 복수 개의 이벤트 및 각 이벤트의 실행 순서 또는 실행 시간에 대한 정보를 포함하고,
    상기 이벤트를 실행하는 단계는 상기 복수 개의 이벤트를 각 이벤트의 실행 순서 또는 실행 시간에 따라 수행하는 것을 특징으로 하는 이미지를 활용한 프로세스 자동화 방법.
  3. 제 1 항에 있어서,
    상기 제 2 화면이미지에 상기 작업개시 이미지가 포함되어 있는지를 결정하는 단계는
    상기 제 2 화면이미지를 소정의 해상도를 갖는 이미지 절편으로 분할하는 이미지 분할 필터를 이용하여, 상기 제 2 화면이미지를 복수 개의 이미지 절편으로 분할하는 단계; 및
    상기 복수 개의 이미지 절편 각각을 상기 작업개시 이미지와 비교하고, 상기 복수 개의 이미지 절편 중 상기 작업개시 이미지와 대응되는 이미지 절편이 존재하는지를 결정하는 단계를 포함하고,
    상기 제 2 화면이미지에 상기 작업개시 이미지가 포함되어 있는지를 결정하는 단계는 상기 작업개시 이미지와 대응되는 이미지 절편이 존재하는 경우 상기 제 2 화면이미지에 상기 작업개시 이미지가 포함되어 있다고 결정하고, 그렇지 않은 경우 상기 제 2 화면이미지에 상기 작업개시 이미지가 포함되어 있지 않다고 결정하는 것을 특징으로 하는 이미지를 활용한 프로세스 자동화방법.
  4. 제 3 항에있어서,
    상기 작업개시 이미지와 대응되는 이미지 절편이 존재하는지를 결정하는 단계는
    각 이미지 절편과 작업개시 이미지 사이의 유사도를 산출하는 단계; 및
    상기 산출된 유사도 및 임계 유사도를 비교하고, 비교 결과에 기초하여 상기 작업개시 이미지와 대응되는 이미지 절편이 존재하는지를 결정하는 단계를 포함하고,
    상기 비교 결과에 기초하여 상기 작업개시 이미지와 대응되는 이미지 절편이 존재하는지를 결정하는 단계는 산출된 유사도가 임계 유사도 이상인 이미지 절편이 존재하는 경우 상기 복수 개의 이미지 절편 중 상기 작업개시 이미지와 대응되는 이미지 절편이 존재한다고 결정하고, 산출된 유사도가 임계 유사도 이상인 이미지 절편이 존재하지 않는 경우 상기 복수 개의 이미지 절편 중 상기 작업개시 이미지와 대응되는 이미지 절편이 존재하지 않는다고 결정하는 것을 특징으로 하는 이미지를 활용한 프로세스 자동화방법.
  5. 제 3 항에 있어서,
    상기 작업개시 이미지와 대응되는 이미지 절편이 존재하는지를 결정하는 단계에서 상기 작업개시 이미지와 대응되는 이미지 절편이 존재하지 않는다고 결정된 경우, 상기 제 2화면이미지를 복수 개의 이미지 절편으로 분할하는 단계는 상기 이미지 분할 필터에 분할되는 이미지 절편의 소정의 해상도를 변경하고 상기 제 2 화면이미지를 변경된 해상도를 갖는 복수 개의 이미지 절편으로 분할하는 것을 특징으로 하는 이미지를 활용한 프로세스 자동화방법.
  6. 제 5 항에 있어서,
    상기 제 2 화면이미지를 복수 개의 이미지 절편으로 분할하는 단계 및 상기 이미지 절편이 존재하는지를 결정하는 단계는 상기 작업개시 이미지와 대응되는 이미지 절편을 찾을 때까지 또는 사전에 설정된 한계 수행 횟수만큼 반복하여 수행되는 것을 특징으로 하는 이미지를 활용한 프로세스 자동화 방법
  7. 제 1 항에 있어서,
    상기 이벤트를 실행하는 단계는
    상기 작업개시 이미지와 대응되는 이미지 절편의 위치를 산출하는 단계;
    상기 산출된 위치로 마우스 커서를 이동시키는 단계; 및
    상기 마우스 커서가 이동된 위치에서 상기 작업개시 이미지와 연관된 이벤트를 실행하는 단계를 포함하는 것을 특징으로 하는 이미지를 활용한 프로세스 자동화 방법.
  8. 이미지를 활용한 프로세스 자동화 방법을 수행하는 사용자 단말에 있어서,
    상기 사용자 단말이 사용자로부터 입력된 데이터를 획득하는 입력부;
    상기 사용자 단말의 사용자에게 데이터를 출력하는 출력부;
    상기 사용자 단말의 출력부에서 출력되고 있는 제 1 화면을 나타내는 제 1 화면이미지를 획득하고, 상기 제 1 화면이미지에 포함된 작업개시 이미지를 획득하고, 상기 사용자 단말의 출력부에서 상기 제 1 화면이 출력된 이후에 출력되고 있는 제 2 화면을 나타내는 제 2 화면이미지를 획득하는 이미지 획득부;
    상기 작업개시 이미지와 연관된 이벤트를 획득하는 이벤트 획득부;
    상기 제 2 화면이미지에 상기 작업개시 이미지가 포함되어 있는지를 결정하는 이미지 분석부; 및
    상기 제 2 화면이미지에 상기 작업개시 이미지가 포함되어 있다고 결정한 경우, 상기 작업개시 이미지와 연관된 이벤트를 실행하는 프로세서를 포함하는 것을 특징으로 하는 사용자 단말.
  9. 제1항 내지 제7항 중 어느 한 항에 기재된 방법을 수행하는 프로그램이 기록된 컴퓨터 판독가능한 기록매체.
KR1020200186492A 2020-12-29 2020-12-29 이미지를 활용한 프로세스 자동화 방법 및 장치 KR102483475B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200186492A KR102483475B1 (ko) 2020-12-29 2020-12-29 이미지를 활용한 프로세스 자동화 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200186492A KR102483475B1 (ko) 2020-12-29 2020-12-29 이미지를 활용한 프로세스 자동화 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20220094848A true KR20220094848A (ko) 2022-07-06
KR102483475B1 KR102483475B1 (ko) 2022-12-29

Family

ID=82400555

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200186492A KR102483475B1 (ko) 2020-12-29 2020-12-29 이미지를 활용한 프로세스 자동화 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102483475B1 (ko)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020007764A (ko) * 2000-07-19 2002-01-29 신영현 매크로 기능을 수행하는 키보드
KR20070000540A (ko) * 2005-06-27 2007-01-03 봉래 박 매크로 자동생성 시스템 및 구현 방법
JP2007293785A (ja) * 2006-04-25 2007-11-08 Takeshi Nakadokoro プログラム仕様定義方法
KR20080102644A (ko) * 2007-05-21 2008-11-26 삼성전자주식회사 매크로 생성 장치 및 방법
KR20130131106A (ko) * 2012-05-23 2013-12-03 삼성전자주식회사 이미지 인식 기술을 이용한 서비스 제공 방법 및 그 전자 장치
KR20140009687A (ko) * 2012-07-12 2014-01-23 삼성전자주식회사 매크로 기능을 이용하는 복합 입력 처리 방법 및 장치
KR101639404B1 (ko) * 2015-10-14 2016-07-13 주식회사 다날 지문 분할 인식 기반의 사용자 인증 장치 및 방법
KR20190097184A (ko) * 2016-12-19 2019-08-20 구글 엘엘씨 반복된 액션에 대한 스마트 어시스트
KR102039422B1 (ko) 2018-09-21 2019-11-04 (주)투비소프트 이미지 자동 처리 장치 및 방법
KR20200046769A (ko) 2018-10-25 2020-05-07 주식회사 피앤피소프트 보고서 자동 생성 기반의 업무 프로세스 관리 시스템 제공 방법
KR20200082839A (ko) * 2018-12-31 2020-07-08 주식회사 포스코아이씨티 프로세스 설정 장치 및 프로세스 설정 장치를 포함하는 로봇 프로세스 자동화 시스템

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020007764A (ko) * 2000-07-19 2002-01-29 신영현 매크로 기능을 수행하는 키보드
KR20070000540A (ko) * 2005-06-27 2007-01-03 봉래 박 매크로 자동생성 시스템 및 구현 방법
JP2007293785A (ja) * 2006-04-25 2007-11-08 Takeshi Nakadokoro プログラム仕様定義方法
KR20080102644A (ko) * 2007-05-21 2008-11-26 삼성전자주식회사 매크로 생성 장치 및 방법
KR20130131106A (ko) * 2012-05-23 2013-12-03 삼성전자주식회사 이미지 인식 기술을 이용한 서비스 제공 방법 및 그 전자 장치
KR20140009687A (ko) * 2012-07-12 2014-01-23 삼성전자주식회사 매크로 기능을 이용하는 복합 입력 처리 방법 및 장치
KR101639404B1 (ko) * 2015-10-14 2016-07-13 주식회사 다날 지문 분할 인식 기반의 사용자 인증 장치 및 방법
KR20190097184A (ko) * 2016-12-19 2019-08-20 구글 엘엘씨 반복된 액션에 대한 스마트 어시스트
KR102039422B1 (ko) 2018-09-21 2019-11-04 (주)투비소프트 이미지 자동 처리 장치 및 방법
KR20200046769A (ko) 2018-10-25 2020-05-07 주식회사 피앤피소프트 보고서 자동 생성 기반의 업무 프로세스 관리 시스템 제공 방법
KR20200082839A (ko) * 2018-12-31 2020-07-08 주식회사 포스코아이씨티 프로세스 설정 장치 및 프로세스 설정 장치를 포함하는 로봇 프로세스 자동화 시스템

Also Published As

Publication number Publication date
KR102483475B1 (ko) 2022-12-29

Similar Documents

Publication Publication Date Title
JP7000468B2 (ja) 重複ビデオの判定方法及び装置
US20190327367A1 (en) Image processing apparatus, image processing method, and storage medium
US20140218385A1 (en) System and method for visual segmentation of application screenshots
US20140189576A1 (en) System and method for visual matching of application screenshots
EP2980755B1 (en) Method for partitioning area, and inspection device
US9843691B2 (en) Image display device, image display system, image display method, and computer-readable storage medium for computer program
US20180174288A1 (en) SCORE WEIGHTS FOR USER INTERFACE (ui) ELEMENTS
US8417026B2 (en) Gesture recognition methods and systems
US8938123B2 (en) Electronic device and handwritten document search method
US11482001B2 (en) Image processing device, image processing method, and image processing system
US20200125481A1 (en) Screen recording preparation method for evaluating software usability, computing system, computer program and computer-readable storage medium implementing the method
US10656814B2 (en) Managing electronic documents
JP2016058027A (ja) データ処理装置、データ処理方法、およびプログラム
JP6150766B2 (ja) 情報処理装置、プログラム、及び自動ページ差し替え方法
KR102133018B1 (ko) 안구 인식을 이용한 마우스 커서 제어 방법 및 그 전자 장치
US8861857B2 (en) Image processing apparatus and image processing method
US10289656B2 (en) Efficiently relocating objects within a digital document to an equidistant position relative to reference objects
JPWO2019180917A1 (ja) オブジェクト追跡装置、オブジェクト追跡方法、及びオブジェクト追跡プログラム
US20210406588A1 (en) Image processing device, image processing method, and image processing program
KR102483475B1 (ko) 이미지를 활용한 프로세스 자동화 방법 및 장치
US12029987B2 (en) Image processing apparatus, image processing method, image processing program, and recording medium storing image processing program
US20150095825A1 (en) Person image display control apparatus, method of controlling same, and recording medium storing control program therefor
JP2006201926A (ja) 類似文書検索システム、類似文書検索方法、およびプログラム
CN114663902B (zh) 文档图像处理方法、装置、设备和介质
US9361859B2 (en) Information processing device, method, and computer program product

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant