KR102429392B1 - Method, device and system of providing product information using image crawling - Google Patents
Method, device and system of providing product information using image crawling Download PDFInfo
- Publication number
- KR102429392B1 KR102429392B1 KR1020220008735A KR20220008735A KR102429392B1 KR 102429392 B1 KR102429392 B1 KR 102429392B1 KR 1020220008735 A KR1020220008735 A KR 1020220008735A KR 20220008735 A KR20220008735 A KR 20220008735A KR 102429392 B1 KR102429392 B1 KR 102429392B1
- Authority
- KR
- South Korea
- Prior art keywords
- image
- product
- content
- score
- category
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0281—Customer communication at a business location, e.g. providing product or service information, consulting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0641—Shopping interfaces
Abstract
Description
아래 실시예들은 이미지 크롤링 기법을 활용하여 상품 정보를 제공하는 기술에 관한 것이다. The following embodiments relate to a technology for providing product information by using an image crawling technique.
전자 상거래는 컴퓨터 등을 이용해 인터넷과 같은 네트워크 상에서 이루어지는 즉, 전자적 매체(시스템)를 이용하여 가상 공간에서 이루어지는, 제품이나 용역을 사고파는 거래행위를 말한다. E-commerce refers to a transaction of buying and selling products or services that is performed on a network such as the Internet using a computer, that is, in a virtual space using an electronic medium (system).
전자 통신 기술의 발전에 따라 전자 상거래가 활발해지면서, 인터넷을 통해 쇼핑몰 웹 사이트에 상품과 관련된 이미지나 정보를 게시하여 상품을 판매하거나, 상품을 광고하는 일이 빈번해졌고, 그와 관련된 기술의 개발이 활발히 이루어지고 있다.With the development of electronic communication technology, electronic commerce has become more active, and it has become more common to sell products or advertise products by posting images or information related to products on the website of shopping malls through the Internet, and the development of related technologies has become more frequent. is being actively carried out.
그러나, 온라인 쇼핑몰을 이용하여 상품을 판매하기 위해, 상품 판매자는 판매하고자 하는 상품의 상품 정보(상품의 명칭, 상품의 이미지, 제조사, 상품의 종류 등)를 생성한 후 상품 등록 형식에 따라 작성하여 업로드해야 하는데, 수동으로 일일이 정보를 찾아야 하고 등록 형식에 맞게 정보를 업로드해야 하기 때문에 작업 시간이 오래 걸리게 되는 문제가 있다.However, in order to sell products using an online shopping mall, product sellers create product information (name of product, image of product, manufacturer, type of product, etc.) It has to be uploaded, but there is a problem that it takes a long time to work because you have to manually find information one by one and upload information according to the registration format.
따라서, 상품과 관련된 정보를 찾고 자동으로 등록하여, 효율성을 증대시키고자 하는 방법에 대한 연구가 요구된다.Therefore, there is a need for research on a method of finding and automatically registering product-related information to increase efficiency.
일실시예에 따르면, 크롤링(crawling)을 통해 제1 이미지를 획득하고, 제1 이미지를 인코딩하여 제1 입력 신호를 생성하고, 제1 입력 신호를 제1 인공 신경망에 입력하여, 제1 출력 신호를 획득하고, 제1 출력 신호에 기초하여, 제1 이미지를 통해 확인된 제1 상품의 종류를 제1 카테고리로 식별하고, 제1 카테고리의 게시 공간에 등록되어 있는 상품의 이미지에 대한 검색을 수행하여, 제1 상품의 이미지가 등록되어 있는지 여부를 확인하고, 제1 상품의 이미지가 등록되어 있지 않은 것으로 확인되면, 제1 이미지를 기반으로 제1 상품에 대한 상품 정보를 제공하는 제1 콘텐츠를 생성하여, 제1 카테고리의 게시 공간에 제1 콘텐츠를 등록하는, 이미지 크롤링 기법을 활용한 상품 정보 제공 방법, 장치 및 시스템을 제공하기 위한 것을 그 목적으로 한다.According to an embodiment, a first image is obtained through crawling, a first input signal is generated by encoding the first image, and the first input signal is input to a first artificial neural network, and a first output signal is obtained. to obtain, based on the first output signal, identify the type of the first product identified through the first image as the first category, and perform a search for the image of the product registered in the posting space of the first category Thus, it is checked whether the image of the first product is registered, and when it is confirmed that the image of the first product is not registered, the first content providing product information about the first product based on the first image is displayed. An object of the present invention is to provide a method, apparatus and system for providing product information using an image crawling technique, which generates and registers the first content in the posting space of the first category.
본 발명의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 명확하게 이해될 수 있을 것이다.Objects of the present invention are not limited to the objects mentioned above, and other objects not mentioned will be clearly understood from the description below.
일실시예에 따르면, 장치에 의해 수행되는, 이미지 크롤링 기법을 활용한 상품 정보 제공 방법에 있어서, 크롤링(crawling)을 통해 제1 이미지를 획득하는 단계; 상기 제1 이미지를 인코딩하여 제1 입력 신호를 생성하는 단계; 상기 제1 입력 신호를 제1 인공 신경망에 입력하고, 상기 제1 인공 신경망의 입력에 대한 결과에 기초하여, 제1 출력 신호를 획득하는 단계; 상기 제1 출력 신호에 기초하여, 상기 제1 이미지를 통해 확인된 제1 상품의 종류를 제1 카테고리로 식별하는 단계; 상기 제1 카테고리의 게시 공간에 등록되어 있는 상품의 이미지에 대한 검색을 수행하여, 상기 제1 상품의 이미지가 등록되어 있는지 여부를 확인하는 단계; 및 상기 제1 상품의 이미지가 등록되어 있지 않은 것으로 확인되면, 상기 제1 이미지를 기반으로 상기 제1 상품에 대한 상품 정보를 제공하는 제1 콘텐츠를 생성하여, 상기 제1 카테고리의 게시 공간에 상기 제1 콘텐츠를 등록하는 단계를 포함하는, 이미지 크롤링 기법을 활용한 상품 정보 제공 방법이 제공된다.According to an embodiment, there is provided a method for providing product information using an image crawling technique performed by an apparatus, the method comprising: acquiring a first image through crawling; encoding the first image to generate a first input signal; inputting the first input signal to a first artificial neural network, and obtaining a first output signal based on a result of the input of the first artificial neural network; identifying the type of the first product identified through the first image as a first category based on the first output signal; checking whether the image of the first product is registered by performing a search for an image of the product registered in the posting space of the first category; and when it is confirmed that the image of the first product is not registered, a first content providing product information on the first product is generated based on the first image, and the first content is displayed in the posting space of the first category. A method for providing product information using an image crawling technique is provided, including registering a first content.
상기 이미지 크롤링 기법을 활용한 상품 정보 제공 방법은, 상기 제1 상품의 이미지로 제2 이미지가 등록되어 있는 것으로 확인되면, 상기 제2 이미지를 기반으로 생성되어 있는 제1 콘텐츠를 확인하는 단계; 상기 제2 이미지를 기반으로 생성된 제1 콘텐츠에 상기 제1 이미지를 추가하여, 상기 제1 콘텐츠에 대한 업데이트를 수행하는 단계; 및 상기 제1 콘텐츠가 업데이트 되면, 상기 제1 카테고리의 게시 공간에 등록되어 있는 제1 콘텐츠를 상기 업데이트된 제1 콘텐츠로 변경하는 단계를 더 포함할 수 있다.The method for providing product information using the image crawling technique may include: when it is confirmed that a second image is registered as the image of the first product, checking first content generated based on the second image; performing an update on the first content by adding the first image to first content generated based on the second image; and when the first content is updated, changing the first content registered in the posting space of the first category to the updated first content.
상기 제1 콘텐츠에 대한 업데이트를 수행하는 단계는, 상기 제1 이미지에서 상기 제1 상품이 차지하고 있는 영역을 제1 영역으로 설정하고, 상기 제1 영역의 화소 수인 제1 화소 수를 산출하는 단계; 상기 제2 이미지에서 상기 제1 상품이 차지하고 있는 영역을 제2 영역으로 설정하고, 상기 제2 영역의 화소 수인 제2 화소 수를 산출하는 단계; 상기 제1 화소 수를 기반으로 상기 제1 이미지의 화소 점수를 부여하고, 상기 제2 화소 수를 기반으로 상기 제2 이미지의 화소 점수를 부여하는 단계; 상기 제1 이미지 상에서 상기 제1 상품을 확인하여 제1 객체로 검출하고, 상기 제1 객체를 제외한 나머지 객체의 수인 제1 부가 객체 수를 산출하는 단계; 상기 제2 이미지 상에서 상기 제1 상품을 확인하여 제2 객체로 검출하고, 상기 제2 객체를 제외한 나머지 객체의 수인 제2 부가 객체 수를 산출하는 단계; 상기 제1 부가 객체 수를 기반으로 상기 제1 이미지의 객체 점수를 부여하고, 상기 제2 부가 객체 수를 기반으로 상기 제2 이미지의 객체 점수를 부여하는 단계; 상기 제1 이미지 상에서 상기 제1 객체가 검출되면, 상기 제1 객체의 방향을 분석하여 상기 제1 이미지의 촬영 각도인 제1 각도를 산출하는 단계; 상기 제2 이미지 상에서 상기 제2 객체가 검출되면, 상기 제2 객체의 방향을 분석하여 상기 제2 이미지의 촬영 각도인 제1 각도를 산출하는 단계; 상기 제1 각도를 기반으로 상기 제1 이미지의 촬영 점수를 부여하고, 상기 제2 각도를 기반으로 상기 제2 이미지의 촬영 점수를 부여하는 단계; 상기 제1 이미지의 화소 점수, 상기 제1 이미지의 객체 점수 및 상기 제1 이미지의 촬영 점수를 합산한 값으로, 상기 제1 이미지의 총합 점수를 산출하는 단계; 상기 제2 이미지의 화소 점수, 상기 제2 이미지의 객체 점수 및 상기 제2 이미지의 촬영 점수를 합산한 값으로, 상기 제2 이미지의 총합 점수를 산출하는 단계; 상기 제1 이미지의 총합 점수 및 상기 제2 이미지의 총합 점수를 비교하여, 총합 점수가 더 높은 이미지를 상기 제1 콘텐츠의 대표 이미지로 선정하는 단계; 상기 제1 이미지가 상기 제1 콘텐츠의 대표 이미지로 선정되면, 상기 제1 이미지 및 상기 제2 이미지 순으로 표시되도록, 상기 제1 콘텐츠에 대한 업데이트를 수행하는 단계; 및 상기 제2 이미지가 상기 제1 콘텐츠의 대표 이미지로 선정되면, 상기 제2 이미지 및 상기 제1 이미지 순으로 표시되도록, 상기 제1 콘텐츠에 대한 업데이트를 수행하는 단계를 포함할 수 있다.The updating of the first content may include: setting an area occupied by the first product in the first image as a first area, and calculating the first number of pixels, which is the number of pixels in the first area; setting an area occupied by the first product in the second image as a second area, and calculating a second number of pixels, which is the number of pixels in the second area; assigning a pixel score of the first image based on the first number of pixels, and assigning a pixel score of the second image based on the second number of pixels; identifying the first product on the first image, detecting it as a first object, and calculating the number of first additional objects, which is the number of objects other than the first object; identifying the first product on the second image, detecting it as a second object, and calculating a second additional object number that is the number of objects other than the second object; assigning an object score of the first image based on the first number of additional objects, and giving an object score of the second image based on the second number of additional objects; calculating a first angle that is a photographing angle of the first image by analyzing a direction of the first object when the first object is detected on the first image; calculating a first angle that is a photographing angle of the second image by analyzing a direction of the second object when the second object is detected on the second image; giving a shooting score of the first image based on the first angle, and giving a shooting score of the second image based on the second angle; calculating a total score of the first image as a value obtained by adding the pixel score of the first image, the object score of the first image, and the shooting score of the first image; calculating a total score of the second image by adding the pixel score of the second image, the object score of the second image, and the shooting score of the second image; comparing the total score of the first image and the total score of the second image, and selecting an image having a higher total score as a representative image of the first content; performing an update on the first content so that when the first image is selected as the representative image of the first content, the first image and the second image are displayed in order; and when the second image is selected as the representative image of the first content, updating the first content to be displayed in the order of the second image and the first image.
일실시예에 따른 장치는 하드웨어와 결합되어 상술한 방법들 중 어느 하나의 항의 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램에 의해 제어될 수 있다.The apparatus according to an embodiment may be controlled by a computer program stored in the medium to execute the method of any one of the above-described methods in combination with hardware.
일실시예에 따르면, 크롤링(crawling)을 통해 제1 이미지를 획득하고, 제1 이미지를 인코딩하여 제1 입력 신호를 생성하고, 제1 입력 신호를 제1 인공 신경망에 입력하여, 제1 출력 신호를 획득하고, 제1 출력 신호에 기초하여, 제1 이미지를 통해 확인된 제1 상품의 종류를 제1 카테고리로 식별하고, 제1 카테고리의 게시 공간에 등록되어 있는 상품의 이미지에 대한 검색을 수행하여, 제1 상품의 이미지가 등록되어 있는지 여부를 확인하고, 제1 상품의 이미지가 등록되어 있지 않은 것으로 확인되면, 제1 이미지를 기반으로 제1 상품에 대한 상품 정보를 제공하는 제1 콘텐츠를 생성하여, 제1 카테고리의 게시 공간에 제1 콘텐츠를 등록함으로써, 상품의 정보를 제공하는 콘텐츠를 자동으로 생성 및 업데이트할 수 있어, 상품 정보를 효율적으로 관리할 수 있는 효과가 있다.According to an embodiment, a first image is obtained through crawling, a first input signal is generated by encoding the first image, and the first input signal is input to a first artificial neural network, and a first output signal is obtained. to obtain, based on the first output signal, identify the type of the first product identified through the first image as the first category, and perform a search for the image of the product registered in the posting space of the first category Thus, it is checked whether the image of the first product is registered, and when it is confirmed that the image of the first product is not registered, the first content providing product information about the first product based on the first image is displayed. By creating and registering the first content in the posting space of the first category, it is possible to automatically create and update content providing information on the product, thereby effectively managing the product information.
한편, 실시예들에 따른 효과들은 이상에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 해당 기술 분야의 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.On the other hand, the effects according to the embodiments are not limited to those mentioned above, and other effects not mentioned will be clearly understood by those of ordinary skill in the art from the following description.
도 1은 일실시예에 따른 시스템의 구성을 개략적으로 나타낸 도면이다.
도 2는 일실시예에 따른 이미지 크롤링 기법을 사용하여 상품 정보를 새로 등록하는 과정을 설명하기 위한 순서도이다.
도 3은 일실시예에 따른 콘텐츠에 대한 업데이트를 수행하는 과정을 설명하기 위한 순서도이다.
도 4는 일실시예에 따른 제1 이미지를 분석하여 제1 이미지의 총합 점수를 산출하는 과정을 설명하기 위한 순서도이다.
도 5는 일실시예에 따른 제2 이미지를 분석하여 제2 이미지의 총합 점수를 산출하는 과정을 설명하기 위한 순서도이다.
도 6은 일실시예에 따른 대표 이미지를 선정하여 콘텐츠의 업데이트를 수행하는 과정을 설명하기 위한 순서도이다.
도 7은 일실시예에 따른 노출 화면의 특성을 기반으로 콘텐츠 노출 구역을 설정하는 과정을 설명하기 위한 순서도이다
도 8은 일실시예에 따른 노출 구역의 순서를 설정하는 과정을 설명하기 위한 순서도이다.
도 9는 일실시예에 따른 노출 구역의 크기를 설정하는 과정을 설명하기 위한 순서도이다.
도 10은 일실시예에 따른 제1 인공 신경망을 설명하기 위한 도면이다.
도 11은 일실시예에 따른 제1 인공 신경망을 학습하는 방법을 설명하기 위한 도면이다.
도 12는 일실시예에 따른 장치의 구성의 예시도이다. 1 is a diagram schematically showing the configuration of a system according to an embodiment.
2 is a flowchart illustrating a process of newly registering product information using an image crawling technique according to an embodiment.
3 is a flowchart illustrating a process of updating content according to an exemplary embodiment.
4 is a flowchart illustrating a process of calculating a total score of the first image by analyzing the first image according to an exemplary embodiment.
5 is a flowchart illustrating a process of calculating a total score of a second image by analyzing a second image according to an exemplary embodiment.
6 is a flowchart illustrating a process of selecting a representative image and performing content update according to an exemplary embodiment.
7 is a flowchart for explaining a process of setting a content exposure zone based on characteristics of an exposure screen according to an exemplary embodiment;
8 is a flowchart illustrating a process of setting an order of exposure zones according to an exemplary embodiment.
9 is a flowchart illustrating a process of setting a size of an exposure zone according to an exemplary embodiment.
10 is a diagram for explaining a first artificial neural network according to an embodiment.
11 is a diagram for explaining a method of learning a first artificial neural network according to an embodiment.
12 is an exemplary diagram of a configuration of an apparatus according to an embodiment.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. However, since various changes may be made to the embodiments, the scope of the patent application is not limited or limited by these embodiments. It should be understood that all modifications, equivalents and substitutes for the embodiments are included in the scope of the rights.
실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 실시될 수 있다. 따라서, 실시예들은 특정한 개시형태로 한정되는 것이 아니며, 본 명세서의 범위는 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.Specific structural or functional descriptions of the embodiments are disclosed for purposes of illustration only, and may be changed and implemented in various forms. Accordingly, the embodiments are not limited to a specific disclosure form, and the scope of the present specification includes changes, equivalents, or substitutes included in the technical spirit.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.Although terms such as first or second may be used to describe various elements, these terms should be interpreted only for the purpose of distinguishing one element from another. For example, a first component may be termed a second component, and similarly, a second component may also be termed a first component.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.When a component is referred to as being “connected to” another component, it may be directly connected or connected to the other component, but it should be understood that another component may exist in between.
실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Terms used in the examples are used for the purpose of description only, and should not be construed as limiting. The singular expression includes the plural expression unless the context clearly dictates otherwise. In the present specification, terms such as “comprise” or “have” are intended to designate that a feature, number, step, operation, component, part, or combination thereof described in the specification exists, but one or more other features It is to be understood that it does not preclude the possibility of the presence or addition of numbers, steps, operations, components, parts, or combinations thereof.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which the embodiment belongs. Terms such as those defined in a commonly used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the related art, and should not be interpreted in an ideal or excessively formal meaning unless explicitly defined in the present application. does not
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.In addition, in the description with reference to the accompanying drawings, the same components are assigned the same reference numerals regardless of the reference numerals, and the overlapping description thereof will be omitted. In the description of the embodiment, if it is determined that a detailed description of a related known technology may unnecessarily obscure the gist of the embodiment, the detailed description thereof will be omitted.
실시예들은 퍼스널 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 스마트 폰, 텔레비전, 스마트 가전 기기, 지능형 자동차, 키오스크, 웨어러블 장치 등 다양한 형태의 제품으로 구현될 수 있다. The embodiments may be implemented in various types of products, such as personal computers, laptop computers, tablet computers, smart phones, televisions, smart home appliances, intelligent cars, kiosks, wearable devices, and the like.
도 1은 일실시예에 따른 시스템의 구성을 개략적으로 나타낸 도면이다.1 is a diagram schematically showing the configuration of a system according to an embodiment.
도 1을 참조하면, 일실시예에 따른 시스템은 통신망을 통해 서로 통신 가능한 복수의 사용자 단말(100) 및 장치(200)를 포함할 수 있다.Referring to FIG. 1 , a system according to an embodiment may include a plurality of
먼저, 통신망은 유선 및 무선 등과 같이 그 통신 양태를 가리지 않고 구성될 수 있으며, 서버와 서버 간의 통신과 서버와 단말 간의 통신이 수행되도록 다양한 형태로 구현될 수 있다.First, the communication network may be configured regardless of its communication mode, such as wired and wireless, and may be implemented in various forms so that communication between a server and a server and communication between a server and a terminal are performed.
복수의 사용자 단말(100)은 상품의 정보를 제공받고자 하는 사용자들이 사용하는 단말기로, 제1 사용자가 사용하는 제1 사용자 단말(110), 제2 사용자가 사용하는 제2 사용자 단말(120), 제3 사용자가 사용하는 제3 사용자 단말(130) 등을 포함할 수 있다.The plurality of
복수의 사용자 단말(100) 각각은 데스크탑 컴퓨터, 노트북, 태블릿, 스마트폰 등일 수 있다. 예를 들어, 도 1에 도시된 바와 같이, 제1 사용자 단말(110), 제2 사용자 단말(120), 제3 사용자 단말(130) 등은 스마트폰일 수 있으며, 실시예에 따라 달리 채용될 수도 있다.Each of the plurality of
복수의 사용자 단말(100) 각각은 통상의 컴퓨터가 가지는 연산 기능, 저장/참조 기능, 입출력 기능 및 제어 기능을 전부 또는 일부 수행하도록 구성될 수 있다. 복수의 사용자 단말(100)은 장치(200)와 유무선으로 통신하도록 구성될 수 있다.Each of the plurality of
복수의 사용자 단말(100) 각각은 장치(200)를 이용하여 서비스를 제공하는 자 내지 단체가 운영하는 웹 사이트에 접속되거나, 장치(200)를 이용하여 서비스를 제공하는 자 내지 단체가 개발·배포한 애플리케이션이 설치될 수 있다. 복수의 사용자 단말(100) 각각은 웹 사이트 또는 애플리케이션을 통해 장치(200)와 연동될 수 있다.Each of the plurality of
이하에서는 설명의 편의상, 제1 사용자 단말(110)의 동작을 위주로 설명하지만, 제2 사용자 단말(120) 등의 다른 사용자 단말에서 제1 사용자 단말(110)의 동작을 대신 수행할 수 있는 것은 물론이다.Hereinafter, for convenience of description, the operation of the
장치(200)는 장치(200)를 이용하여 서비스를 제공하는 자 내지 단체가 보유한 자체 서버일수도 있고, 클라우드 서버일 수도 있고, 분산된 노드(node)들의 p2p(peer-to-peer) 집합일 수도 있다. 장치(200)는 통상의 컴퓨터가 가지는 연산 기능, 저장/참조 기능, 입출력 기능 및 제어 기능을 전부 또는 일부 수행하도록 구성될 수 있다. 장치(200)는 추론 기능을 수행하는 적어도 하나 이상의 인공 신경망을 구비할 수 있다. 장치(200)는 복수의 사용자 단말(100)과 유무선으로 통신하도록 구성될 수 있다.The
장치(200)는 상품 정보를 제공하는 사이트를 운영할 수 있다. 이때, 해당 사이트 내에는 상품의 카테고리 별로 게시 공간이 구비되어 있어, 장치(200)는 카테고리의 게시 공간에 복수의 사용자 단말(100)이 접속하면, 카테고리의 게시 공간에 등록되어 있는 콘텐츠가 노출되고, 노출된 콘텐츠가 선택되면 콘텐츠를 구성하고 있는 상품 정보가 표시되도록 처리할 수 있다. 여기서, 콘텐츠는 상품 정보를 제공하기 위해, 텍스트, 이미지, 동영상 등으로 구성될 수 있으며, 상품의 명칭, 상품의 이미지, 제조사, 상품의 종류, 상품의 식별번호, 상품의 상세 정보 등을 포함할 수 있다.The
한편, 설명의 편의를 위해 도 1에서는 복수의 사용자 단말(100) 중 제1 사용자 단말(110), 제2 사용자 단말(120) 및 제3 사용자 단말(130)만을 도시하였으나, 단말들의 수는 실시예에 따라 얼마든지 달라질 수 있다. 장치(200)의 처리 용량이 허용하는 한, 단말들의 수는 특별한 제한이 없다.Meanwhile, for convenience of explanation, only the
도 2는 일실시예에 따른 이미지 크롤링 기법을 사용하여 상품 정보를 새로 등록하는 과정을 설명하기 위한 순서도이다.2 is a flowchart illustrating a process of newly registering product information using an image crawling technique according to an embodiment.
도 2를 참조하면, 먼저 S201 단계에서, 장치(200)는 크롤링(crawling)을 통해 제1 이미지를 획득할 수 있다.Referring to FIG. 2 , first, in step S201 , the
여기서, 크롤링(crawling)은 인터넷 상에 공개된 정보를 수집하여 검색 대상의 색인으로 포함시키는 기술로, 장치(200)는 수집된 정보를 텍스트, 이미지, 동영상 등으로 구분하고, 이미지 중에서 상품을 촬영한 상품 이미지를 인식하여, 상품 이미지를 제1 이미지로 획득할 수 있다.Here, crawling is a technology that collects information published on the Internet and includes it as an index of a search target. The
예를 들어, 장치(200)는 크롤링(Crawling)을 통해, 온라인 쇼핑몰에서 판매되고 있는 상품들의 상품 페이지를 검색하고, 상품 페이지 내에 등록되어 있는 상품 이미지를 제1 이미지로 획득할 수 있다.For example, the
S202 단계에서, 장치(200)는 제1 이미지를 분석하여, 제1 이미지를 제1 상품의 촬영으로 생성된 이미지로 확인할 수 있다.In step S202 , the
구체적으로, 장치(200)는 제1 이미지에서 제1 상품의 외곽선을 인식한 후, 제1 상품의 외관선을 분석하여 제1 상품을 인식할 수 있으며, 제1 이미지에서 제1 상품이 인식되면, 제1 이미지를 제1 상품의 촬영으로 생성된 이미지로 확인할 수 있다.Specifically, after recognizing the outline of the first product in the first image, the
S203 단계에서, 장치(200)는 제1 이미지를 인코딩하여 제1 입력 신호를 생성할 수 있다.In step S203 , the
구체적으로, 장치(200)는 제1 이미지의 픽셀을 색 정보로 인코딩하여 제1 입력 신호를 생성할 수 있다. 색 정보는 RGB 색상 정보, 명도 정보, 채도 정보를 포함할 수 있으나, 이에 국한하지 않는다. 장치는 색 정보를 수치화된 값으로 환산할 수 있으며, 이 값을 포함한 데이터 시트 형태로 제1 이미지를 인코딩할 수 있다.Specifically, the
S204 단계에서, 장치(200)는 제1 입력 신호를 제1 인공 신경망에 입력할 수 있다.In step S204 , the
일실시예에 따른 제1 인공 신경망은 특징 추출 신경망과 분류 신경망으로 구성되어 있으며 특징 추출 신경망은 입력 신호를 컨볼루션 계층과 풀링 계층을 차례로 쌓아 진행한다. 컨볼루션 계층은 컨볼루션 연산, 컨볼루션 필터 및 활성함수를 포함하고 있다. 컨볼루션 필터의 계산은 대상 입력의 행렬 크기에 따라 조절되나 일반적으로 9X9 행렬을 사용한다. 활성 함수는 일반적으로 ReLU 함수, 시그모이드 함수, 및 tanh 함수 등을 사용하나 이에 한정하지 않는다. 풀링 계층은 입력의 행렬 크기를 줄이는 역할을 하는 계층으로, 특정 영역의 픽셀을 묶어 대표값을 추출하는 방식을 사용한다. 풀링 계층의 연산에는 일반적으로 평균값이나 최대값을 많이 사용하나 이에 한정하지 않는다. 해당 연산은 정방 행렬을 사용하여 진행되는데, 일반적으로 9X9 행렬을 사용한다. 컨볼루션 계층과 풀링 계층은 해당 입력이 차이를 유지한 상태에서 충분히 작아질 때까지 번갈아 반복 진행된다.The first artificial neural network according to an embodiment is composed of a feature extraction neural network and a classification neural network, and the feature extraction neural network sequentially stacks a convolutional layer and a pooling layer on an input signal. The convolution layer includes a convolution operation, a convolution filter, and an activation function. The calculation of the convolution filter is adjusted according to the matrix size of the target input, but a 9X9 matrix is generally used. The activation function generally uses, but is not limited to, a ReLU function, a sigmoid function, and a tanh function. The pooling layer is a layer that reduces the size of the input matrix, and uses a method of extracting representative values by tying pixels in a specific area. In general, the average value or the maximum value is often used for the calculation of the pooling layer, but is not limited thereto. The operation is performed using a square matrix, usually a 9x9 matrix. The convolutional layer and the pooling layer are repeated alternately until the corresponding input becomes small enough while maintaining the difference.
일실시예에 따르면, 분류 신경망은 히든 레이어와 출력 레이어를 가지고 있다. 상품의 종류 검출을 위한 제1 인공 신경망의 분류 신경망은 5층 이하의 히든 레이어로 구성되며, 총 50개 이하의 히든 레이어 노드를 포함할 수 있다. 히든 레이어의 활성함수는 ReLU 함수, 시그모이드 함수 및 tanh 함수 등을 사용하나 이에 한정하지 않는다. 분류 신경망의 출력 레이어 노드는 총 1개이며, 상품의 종류에 대한 출력값을 출력 레이어 노드에 출력할 수 있다. 제1 인공 신경망에 대한 자세한 설명은 도 10을 참조하여 후술한다.According to one embodiment, the classification neural network has a hidden layer and an output layer. Classification of the first artificial neural network for product type detection The neural network consists of five or less hidden layers, and may include a total of 50 or less hidden layer nodes. The activation function of the hidden layer uses a ReLU function, a sigmoid function, and a tanh function, but is not limited thereto. There is a total of one output layer node of the classification neural network, and an output value for the type of product can be output to the output layer node. A detailed description of the first artificial neural network will be described later with reference to FIG. 10 .
S205 단계에서, 장치(200)는 제1 인공 신경망의 입력에 대한 결과에 기초하여, 제1 출력 신호를 획득할 수 있다.In step S205 , the
S206 단계에서, 장치(200)는 제1 출력 신호를 기초로, 제1 상품의 종류를 제1 카테고리로 식별할 수 있다.In step S206 , the
예를 들어, 장치(200)는 제1 출력 신호의 출력값을 확인한 결과, 출력값이 1인 경우, 상품의 종류를 의류 카테고리로 식별하고, 출력값이 2인 경우, 상품의 종류를 가방 카테고리로 식별하고, 출력값이 3인 경우, 상품의 종류를 신발 카테고리로 식별하고, 출력값이 4인 경우, 상품의 종류를 쥬얼리 카테고리로 식별할 수 있다.For example, as a result of checking the output value of the first output signal, when the output value is 1, the
S207 단계에서, 장치(200)는 제1 상품의 종류가 제1 카테고리로 식별되면, 제1 카테고리의 게시 공간에 등록되어 있는 상품의 이미지에 대한 검색을 수행할 수 있다.In step S207 , when the type of the first product is identified as the first category, the
구체적으로, 제1 카테고리의 게시 공간에는 제1 카테고리로 분류된 상품들에 대한 콘텐츠가 등록되어 있으며, 콘텐츠에는 상품의 이미지가 등록되어 있다. 이때, 장치(200)는 제1 카테고리의 게시 공간에 등록되어 있는 콘텐츠 각각을 확인하고, 콘텐츠 각각에 등록되어 있는 상품의 이미지에 대한 검색을 수행할 수 있다.Specifically, in the posting space of the first category, content for products classified into the first category is registered, and an image of the product is registered in the content. In this case, the
S208 단계에서, 장치(200)는 제1 카테고리의 게시 공간에 등록되어 있는 상품의 이미지에 대한 검색을 수행한 결과, 제1 상품의 이미지가 제1 카테고리의 게시 공간에 등록되어 있는지 여부를 확인할 수 있다.In step S208, the
S208 단계에서 제1 상품의 이미지가 제1 카테고리의 게시 공간에 등록되어 있지 않은 것으로 확인하면, S209 단계에서, 장치(200)는 제1 이미지를 기반으로 제1 상품에 대한 상품 정보를 제공하는 제1 콘텐츠를 생성할 수 있다. 여기서, 제1 콘텐츠는 제1 상품에 대한 상품 정보를 제공하는 콘텐츠로, 제1 콘텐츠에는 제1 이미지가 제1 상품의 이미지로 등록되어 있으며, 제1 콘텐츠는 제1 상품의 이미지 이외에도, 제1 상품의 이름, 제1 상품의 식별번호, 제1 상품의 상세 정보 등을 더 포함할 수 있다. 이를 위해, 장치(200)는 크롤링(Crawling)을 통해 수집된 정보에서 제1 상품의 이름, 제1 상품의 식별번호, 제1 상품의 상세 정보를 획득한 후, 제1 이미지를 제1 상품의 이미지로 등록하면서, 제1 상품의 이름, 제1 상품의 식별번호, 제1 상품의 상세 정보를 더 등록하여, 제1 상품의 이미지, 제1 상품의 이름, 제1 상품의 식별번호, 제1 상품의 상세 정보를 포함하는 제1 콘텐츠를 생성할 수 있다.If it is confirmed in step S208 that the image of the first product is not registered in the posting space of the first category, in step S209, the
S210 단계에서, 장치(200)는 제1 카테고리의 게시 공간에 제1 콘텐츠를 등록할 수 있다.In step S210 , the
즉, 장치(200)는 제1 이미지가 제1 상품의 이미지로 확인되고, 제1 이미지를 통해 제1 상품의 종류가 제1 카테고리로 식별되면, 제1 이미지를 기반으로 제1 콘텐츠를 생성한 후, 제1 카테고리의 게시 공간에 제1 콘텐츠를 등록하여, 제1 카테고리의 게시 공간에 제1 콘텐츠를 업로드 할 수 있다.That is, when the first image is identified as the image of the first product, and the type of the first product is identified as the first category through the first image, the
한편, S208 단계에서 제1 상품의 이미지가 제1 카테고리의 게시 공간에 등록되어 있는 것으로 확인되면, S301 단계가 수행될 수 있으며, 이와 관련된 자세한 설명은 도 3을 참조하여 설명하기로 한다.Meanwhile, if it is confirmed in step S208 that the image of the first product is registered in the posting space of the first category, step S301 may be performed, and a detailed description related thereto will be described with reference to FIG. 3 .
도 3은 일실시예에 따른 콘텐츠에 대한 업데이트 수행하는 과정을 설명하기 위한 순서도이다.3 is a flowchart illustrating a process of updating content according to an exemplary embodiment.
도 3을 참조하면, 먼저, S301 단계에서, 장치(200)는 제1 상품의 이미지가 제1 카테고리의 게시 공간에 등록되어 있는 것으로 확인되면, 제1 상품의 이미지로 제2 이미지가 등록되어 있는 것으로 확인할 수 있다.Referring to FIG. 3 , first, in step S301 , the
즉, 장치(200)는 제1 카테고리의 게시 공간에 제1 상품의 이미지로 제2 이미지가 이미 등록되어 있는 경우, 제1 카테고리의 게시 공간에 등록되어 있는 제1 상품의 이미지를 제2 이미지로 확인할 수 있다. 이때, 장치(200)는 제1 이미지가 제1 상품의 이미지로 확인되면, 제1 이미지와 제1 카테고리의 게시 공간에 등록되어 있는 이미지를 비교하여, 미리 설정된 비율 이상 일치하는 제2 이미지를 추출할 수 있으며, 추출된 제2 이미지를 제1 상품의 이미지로 확인할 수 있다.That is, when the second image is already registered as the image of the first product in the posting space of the first category, the
S302 단계에서, 장치(200)는 제2 이미지를 기반으로 생성되어, 제1 카테고리의 게시 공간에 등록되어 있는 제1 콘텐츠를 확인할 수 있다.In step S302 , the
구체적으로, 장치(200)는 제2 이미지가 제1 상품의 이미지로 확인되면, 제2 이미지를 포함하여 구성되어 있는 제1 콘텐츠를 확인할 수 있다. 여기서, 제1 콘텐츠는 제1 상품에 대한 상품 정보를 제공하는 콘텐츠로, 제1 콘텐츠에는 제2 이미지가 제1 상품의 이미지로 등록되어 있으며, 제1 콘텐츠는 제2 이미지 이외에도, 제1 상품의 이름, 제1 상품의 식별번호, 제1 상품의 상세 정보 등을 더 포함할 수 있다.Specifically, when the second image is identified as the image of the first product, the
S303 단계에서, 장치(200)는 제1 콘텐츠에 제1 이미지를 추가하여, 제1 콘텐츠에 대한 업데이트를 수행할 수 있다. 즉, 장치(200)는 기존에 제2 이미지가 제1 상품의 이미지로 등록되어 있는 제1 콘텐츠에 제1 이미지를 추가하여, 제1 콘텐츠에 대한 업데이트를 수행할 수 있다. 이를 통해, 제1 콘텐츠는 제1 상품의 이미지로 제2 이미지만 등록되어 있는 상태에서, 제1 상품의 이미지로 제1 이미지 및 제2 이미지가 등록되어 있는 상태로 변경될 수 있다.In step S303 , the
S304 단계에서, 장치(200)는 제1 콘텐츠가 업데이트 되면, 제1 카테고리의 게시 공간에 등록되어 있는 제1 콘텐츠를 업데이트 된 제1 콘텐츠로 변경할 수 있다. 이때, 업데이트로 변경된 제1 콘텐츠는 제1 상품의 이미지로 제1 이미지 및 제2 이미지가 같이 등록되어 있는 상태이며, 장치(200)는 제1 콘텐츠에 복수의 이미지가 제1 상품의 이미지로 등록되어 있으므로, 제1 이미지와 제2 이미지 중 어느 하나를 제1 콘텐츠의 대표 이미지로 선정할 수 있다. 이와 관련한 상세한 설명은 도 4 내지 도 6을 참조하여 후술하기로 한다.In step S304 , when the first content is updated, the
도 4는 일실시예에 따른 제1 이미지를 분석하여 제1 이미지의 총합 점수를 산출하는 과정을 설명하기 위한 순서도이다.4 is a flowchart illustrating a process of calculating a total score of the first image by analyzing the first image according to an exemplary embodiment.
도 4를 참조하면, 먼저, S401 단계에서, 장치(200)는 제1 이미지 상에서 제1 상품을 확인할 수 있다.Referring to FIG. 4 , first, in step S401 , the
구체적으로, 장치(200)는 제1 이미지 상에서 제1 상품의 외곽선을 인식한 후, 인식된 제1 상품의 외곽선을 기준으로 제1 상품과 배경을 분리하는 작업을 수행할 수 있으며, 이를 통해, 제1 이미지 상에서 제1 상품을 확인할 수 있다.Specifically, after recognizing the outline of the first product on the first image, the
S402 단계에서, 장치(200)는 제1 이미지에서 제1 상품이 차지하고 있는 영역을 제1 영역으로 설정할 수 있다. 즉, 장치(200)는 제1 이미지 상에서 제1 상품과 배경을 분리할 수 있고, 분리된 제1 상품이 차지하고 있는 영역을 제1 영역으로 설정할 수 있다In step S402 , the
S403 단계에서, 장치(200)는 제1 이미지 상에서 확인된 제1 상품을 제1 객체로 검출할 수 있다. 즉, 장치(200)는 제1 이미지 상에서 제1 상품과 배경을 분리할 수 있고, 분리된 제1 상품을 제1 객체로 검출할 수 있다.In step S403 , the
S404 단계에서, 장치(200)는 제1 이미지에서 제1 영역이 설정되면, 제1 영역의 화소 수인 제1 화소 수를 산출할 수 있다. In operation S404 , when the first area is set in the first image, the
S405 단계에서, 장치(200)는 제1 이미지 상에서 제1 객체가 검출되면, 제1 이미지 상에서 제1 객체 이외의 다른 객체가 더 있는지 검출하여, 제1 객체를 제외한 나머지 객체를 확인할 수 있으며, 제1 객체를 제외한 나머지 객체의 수인 제1 부가 객체 수를 산출할 수 있다.In step S405 , when the first object is detected on the first image, the
S406 단계에서, 장치(200)는 제1 이미지 상에서 제1 객체가 검출되면, 제1 객체의 방향을 분석하여 제1 이미지의 촬영 각도인 제1 각도를 산출할 수 있다. 이때, 장치(200)는 제1 객체가 정면을 기준으로 어느 방향을 향하고 있는지 분석하여, 제1 객체가 향하는 방향을 통해 제1 각도를 산출할 수 있다.In operation S406 , when the first object is detected on the first image, the
예를 들어, 장치(200)는 제1 객체의 방향을 분석한 결과, 제1 객체의 방향이 정면인 경우, 제1 각도를 0도로 산출하고, 제1 객체의 방향이 좌측으로 30도 틀어져 있는 경우, 제1 각도를 -30도로 산출하고, 제1 객체의 방향이 우측으로 30도 틀어져 있는 경우, 제1 각도를 30도로 산출할 수 있다.For example, as a result of analyzing the direction of the first object, when the direction of the first object is the front, the
또한, 장치(200)는 제1 객체의 방향을 분석한 결과, 제1 객체의 방향이 상측으로 30도 올라가 있는 경우, 제1 각도를 30도로 산출하고, 제1 객체의 방향이 하측으로 30도 내려가 있는 경우, 제1 각도를 30도로 산출할 수 있다.In addition, as a result of analyzing the direction of the first object, when the direction of the first object is raised by 30 degrees, the
S407 단계에서, 장치(200)는 제1 화소 수가 산출되면, 제1 화소 수를 기반으로 제1 이미지의 화소 점수를 부여할 수 있다. 이때, 장치(200)는 제1 화소 수가 높은 값일수록 제1 이미지의 화소 점수를 더 높은 점수로 부여할 수 있다. 예를 들어, 장치(200)는 제1 화소 수가 210만 픽셀인 경우, 제1 이미지의 화소 점수를 4점으로 부여할 수 있고, 제1 화소 수가 830만 픽셀인 경우, 제1 이미지의 화소 점수를 8점으로 부여할 수 있다.In operation S407 , when the first number of pixels is calculated, the
S408 단계에서, 장치(200)는 제1 부가 객체 수가 산출되면, 제1 부가 객체 수를 기반으로 제1 이미지의 객체 점수를 부여할 수 있다. 이때, 장치(200)는 제1 부가 객체 수가 적을수록 제1 이미지의 객체 점수를 더 높은 점수로 부여할 수 있다. 예를 들어, 장치(200)는 제1 부가 객체 수가 4인 경우, 제1 이미지의 객체 점수를 4점으로 부여할 수 있고, 제1 부가 객체 수가 1인 경우, 제1 이미지의 객체 점수를 7점으로 부여할 수 있다.In step S408 , when the first number of additional objects is calculated, the
S409 단계에서, 장치(200)는 제1 각도가 산출되면, 제1 각도를 기반으로 제1 이미지의 촬영 점수를 부여할 수 있다. 이때, 장치(200)는 제1 각도가 0도에 가까울수록 제1 이미지의 촬영 점수를 더 높은 점수로 부여할 수 있다. 예를 들어, 장치(200)는 제1 각도가 45도인 경우, 제1 이미지의 촬영 점수를 5점으로 부여할 수 있고, 제1 각도가 0도인 경우, 제1 이미지의 촬영 점수를 10점으로 부여할 수 있다.In step S409 , when the first angle is calculated, the
일실시예에 따르면, 화소 점수, 객체 점수 및 촬영 점수 각각의 최고 점수는 모두 동일한 점수로 설정될 수도 있지만, 사용자 설정에 따라 최고 점수가 다르게 설정될 수도 있다. 예를 들어, 화소 점수, 객체 점수 및 촬영 점수의 최고 점수가 모두 10점으로 동일하게 설정될 수 있고, 화소 점수의 최고 점수는 15점, 객체 점수의 최고 점수는 10점, 촬영 점수의 최고 점수는 5점으로 상이하게 설정될 수도 있다.According to an embodiment, the highest score of each of the pixel score, the object score, and the shooting score may all be set to the same score, but the highest score may be set differently according to user settings. For example, the highest score of the pixel score, the object score, and the shooting score may all be set equal to 10 points, the highest score of the pixel score is 15 points, the highest score of the object score is 10 points, and the highest score of the shooting score is 10 points. may be set differently by 5 points.
S410 단계에서, 장치(200)는 제1 화소 수를 기반으로 제1 이미지의 화소 점수가 부여되고, 제1 부가 객체 수를 기반으로 제1 이미지의 객체 점수가 부여되고, 제1 각도를 기반으로 제1 이미지의 촬영 점수가 부여되면, 제1 이미지의 화소 점수, 제1 이미지의 객체 점수 및 제1 이미지의 촬영 점수를 합산한 값으로, 제1 이미지의 총합 점수를 산출할 수 있다.In step S410 , the
예를 들어, 제1 이미지의 화소 점수로 8점이 부여되고, 제1 이미지의 객체 점수로 4점이 부여되고, 제1 이미지의 촬영 점수로 10점이 부여된 경우, 장치(200)는 제1 이미지의 총합 점수를 22점으로 산출할 수 있다.For example, when 8 points are given as the pixel score of the first image, 4 points are given as the object score of the first image, and 10 points are given as the shooting score of the first image, the
도 5는 일실시예에 따른 제2 이미지를 분석하여 제2 이미지의 총합 점수를 산출하는 과정을 설명하기 위한 순서도이다.5 is a flowchart illustrating a process of calculating a total score of a second image by analyzing a second image according to an exemplary embodiment.
도 5를 참조하면, 먼저, S501 단계에서, 장치(200)는 제2 이미지 상에서 제1 상품을 확인할 수 있다.Referring to FIG. 5 , first, in step S501 , the
구체적으로, 장치(200)는 제2 이미지 상에서 제1 상품의 외곽선을 인식한 후, 인식된 제1 상품의 외곽선을 기준으로 제1 상품과 배경을 분리하는 작업을 수행할 수 있으며, 이를 통해, 제2 이미지 상에서 제1 상품을 확인할 수 있다.Specifically, after recognizing the outline of the first product on the second image, the
S502 단계에서, 장치(200)는 제2 이미지에서 제1 상품이 차지하고 있는 영역을 제2 영역으로 설정할 수 있다. 즉, 장치(200)는 제2 이미지 상에서 제1 상품과 배경을 분리할 수 있고, 분리된 제1 상품이 차지하고 있는 영역을 제2 영역으로 설정할 수 있다In step S502 , the
S503 단계에서, 장치(200)는 제2 이미지 상에서 확인된 제1 상품을 제2 객체로 검출할 수 있다. 즉, 장치(200)는 제2 이미지 상에서 제1 상품과 배경을 분리할 수 있고, 분리된 제1 상품을 제2 객체로 검출할 수 있다.In step S503, the
S504 단계에서, 장치(200)는 제2 이미지에서 제2 영역이 설정되면, 제2 영역의 화소 수인 제2 화소 수를 산출할 수 있다. In operation S504 , when the second area is set in the second image, the
S505 단계에서, 장치(200)는 제2 이미지 상에서 제2 객체가 검출되면, 제2 이미지 상에서 제2 객체 이외의 다른 객체가 더 있는지 검출하여, 제2 객체를 제외한 나머지 객체를 확인할 수 있으며, 제2 객체를 제외한 나머지 객체의 수인 제2 부가 객체 수를 산출할 수 있다.In step S505, when the second object is detected on the second image, the
S506 단계에서, 장치(200)는 제2 이미지 상에서 제2 객체가 검출되면, 제2 객체의 방향을 분석하여 제2 이미지의 촬영 각도인 제2 각도를 산출할 수 있다. 이때, 장치(200)는 제2 객체가 정면을 기준으로 어느 방향을 향하고 있는지 분석하여, 제2 객체가 향하는 방향을 통해 제2 각도를 산출할 수 있다.In step S506 , when the second object is detected on the second image, the
S507 단계에서, 장치(200)는 제2 화소 수가 산출되면, 제2 화소 수를 기반으로 제2 이미지의 화소 점수를 부여할 수 있다. 이때, 장치(200)는 제1 이미지의 화소 점수를 부여하는 방식과 동일하게, 제2 화소 수가 높은 값일수록 제2 이미지의 화소 점수를 더 높은 점수로 부여할 수 있다.In step S507 , when the second number of pixels is calculated, the
S508 단계에서, 장치(200)는 제2 부가 객체 수가 산출되면, 제2 부가 객체 수를 기반으로 제2 이미지의 객체 점수를 부여할 수 있다. 이때, 장치(200)는 제1 이미지의 객체 점수를 부여하는 방식과 동일하게, 제2 부가 객체 수가 적을수록 제2 이미지의 객체 점수를 더 높은 점수로 부여할 수 있다.In step S508 , when the second number of additional objects is calculated, the
S509 단계에서, 장치(200)는 제2 각도가 산출되면, 제2 각도를 기반으로 제2 이미지의 촬영 점수를 부여할 수 있다. 이때, 장치(200)는 제1 이미지의 촬영 점수를 부여하는 방식과 동일하게, 제2 각도가 0도에 가까울수록 제2 이미지의 촬영 점수를 더 높은 점수로 부여할 수 있다.In step S509 , when the second angle is calculated, the
S510 단계에서, 장치(200)는 제2 화소 수를 기반으로 제2 이미지의 화소 점수가 부여되고, 제2 부가 객체 수를 기반으로 제2 이미지의 객체 점수가 부여되고, 제2 각도를 기반으로 제2 이미지의 촬영 점수가 부여되면, 제2 이미지의 화소 점수, 제2 이미지의 객체 점수 및 제2 이미지의 촬영 점수를 합산한 값으로, 제2 이미지의 총합 점수를 산출할 수 있다.In step S510 , the
도 6은 일실시예에 따른 대표 이미지를 선정하여 콘텐츠의 업데이트를 수행하는 과정을 설명하기 위한 순서도이다.6 is a flowchart illustrating a process of selecting a representative image and performing content update according to an exemplary embodiment.
도 6을 참조하면, 먼저, S601 단계에서, 장치(200)는 제1 이미지의 화소 점수, 제1 이미지의 객체 점수 및 제1 이미지의 촬영 점수를 합산한 값으로 제1 이미지의 총합 점수를 산출할 수 있다.Referring to FIG. 6 , first, in step S601 , the
S602 단계에서, 장치(200)는 제2 이미지의 화소 점수, 제2 이미지의 객체 점수 및 제2 이미지의 촬영 점수를 합산한 값으로 제2 이미지의 총합 점수를 산출할 수 있다.In step S602 , the
S603 단계에서, 장치(200)는 제1 이미지의 총합 점수 및 제2 이미지의 총합 점수를 비교하여, 총합 점수가 더 높은 이미지를 제1 콘텐츠의 대표 이미지로 선정할 수 있다.In step S603 , the
예를 들어, 제1 이미지의 총합 점수가 22점이고, 제2 이미지의 총합 점수가 15 점일 경우, 장치(200)는 제1 이미지를 제1 콘텐츠의 대표 이미지로 선정할 수 있고, 반대로 제1 이미지의 총합 점수가 15점이고, 제2 이미지의 총합 점수가 22점일 경우, 장치(200)는 제2 이미지를 제1 콘텐츠의 대표 이미지로 선정할 수 있다.For example, when the total score of the first image is 22 and the total score of the second image is 15, the
S604 단계에서, 장치(200)는 제1 이미지가 대표 이미지로 선정되었는지 여부를 확인할 수 있다.In step S604 , the
S604 단계에서 제1 이미지가 대표 이미지로 선정된 것이 확인되면, S605 단계에서, 장치(200)는 제1 이미지 및 제2 이미지 순으로 표시되도록, 제1 콘텐츠에 대한 업데이트를 수행할 수 있다. 즉, 장치(200)는 제1 콘텐츠가 표시될 때, 대표 이미지인 제1 이미지가 먼저 표시되고, 제1 이미지 이후에 제2 이미지가 이어서 표시되도록, 제1 콘텐츠의 노출 순서를 설정하여, 제1 콘텐츠에 대한 업데이트를 수행할 수 있다.If it is confirmed in step S604 that the first image is selected as the representative image, in step S605 , the
S604 단계에서 제1 이미지가 아닌 제2 이미지가 대표 이미지로 선정된 것이 확인되면, S606 단계에서, 장치(200)는 제2 이미지 및 제1 이미지 순으로 표시되도록, 제1 콘텐츠에 대한 업데이트를 수행할 수 있다. 즉, 장치(200)는 제1 콘텐츠가 표시될 때, 대표 이미지인 제2 이미지가 먼저 표시되고, 제2 이미지 이후에 제1 이미지가 이어서 표시되도록, 제1 콘텐츠의 노출 순서를 설정하여, 제1 콘텐츠에 대한 업데이트를 수행할 수 있다.If it is confirmed in step S604 that the second image other than the first image is selected as the representative image, in step S606, the
도 7은 일실시예에 따른 노출 화면의 특성을 기반으로 콘텐츠 노출 구역을 설정하는 과정을 설명하기 위한 순서도이다7 is a flowchart for explaining a process of setting a content exposure zone based on characteristics of an exposure screen according to an exemplary embodiment;
도 7을 참조하면, 먼저, S701 단계에서, 장치(200)는 복수의 사용자 단말(100)로부터 제1 콘텐츠에 대한 조회 요청이 수신된 횟수를 확인하여, 제1 콘텐츠의 조회 수를 산출할 수 있다.Referring to FIG. 7 , first, in step S701 , the
구체적으로, 장치(200)는 복수의 사용자 단말(100)로부터 제1 카테고리의 게시 공간에 대한 접속 요청이 수신되면, 복수의 사용자 단말(100)이 제1 카테고리의 게시 공간에 접속되도록 처리하고, 복수의 사용자 단말(100)이 제1 카테고리의 게시 공간에 접속하면, 제1 카테고리에 등록되어 있는 콘텐츠의 리스트가 복수의 사용자 단말(100) 각각의 화면에 표시되도록 제어할 수 있다.Specifically, when a request for access to the posting space of the first category is received from the plurality of
이후, 장치(200)는 복수의 사용자 단말(100) 각각의 화면에 표시된 제1 카테고리의 콘텐츠 리스트 중 제1 콘텐츠가 선택되면, 복수의 사용자 단말(100)로부터 제1 콘텐츠에 대한 조회 요청을 수신할 수 있다. 여기서, 제1 콘텐츠는 제1 상품에 대한 상품 정보를 제공하는 콘텐츠로, 제1 콘텐츠에 대한 조회 요청은 제1 상품에 대한 상세 정보를 조회하는 것에 대한 요청일 수 있다.Then, when the first content is selected from the content list of the first category displayed on the screen of each of the plurality of
장치(200)는 복수의 사용자 단말(100)로부터 제1 콘텐츠에 대한 조회 요청이 수신되면, 제1 콘텐츠에 대한 조회 요청에 따라, 제1 콘텐츠의 조회 정보를 갱신할 수 있다. 여기서, 제1 콘텐츠의 조회 정보는 제1 콘텐츠를 조회한 횟수인 제1 콘텐츠의 조회 수에 대한 정보를 포함할 수 있다. 장치(200)는 콘텐츠 별로 조회 정보를 데이터베이스에 저장하여 관리할 수 있다.When an inquiry request for the first content is received from the plurality of
장치(200)는 제1 콘텐츠의 조회 정보를 갱신하는데 있어, 복수의 사용자 단말(100)로부터 제1 콘텐츠에 대한 조회 요청이 수신된 횟수를 확인하여, 제1 콘텐츠의 조회 수를 산정할 수 있다.In updating the inquiry information of the first content, the
예를 들어, 장치(200)는 제1 콘텐츠의 조회 수가 0인 상태에서, 미리 설정된 기간 이내에 제1 사용자 단말(110) 및 제2 사용자 단말(120)로부터 제1 콘텐츠에 대한 조회 요청이 각각 수신되면, 제1 콘텐츠에 대한 조회 요청이 수신된 횟수를 2회로 확인하여, 제1 콘텐츠의 조회 수를 0에서 2로 변경하여 산정할 수 있다.For example, in the
또한, 장치(200)는 제1 콘텐츠의 조회 수가 0인 상태에서, 제1 사용자 단말(110)로부터 제1 콘텐츠에 대한 조회 요청이 수신되면, 제1 콘텐츠의 조회 수를 0에서 1로 변경하여 산정할 수 있으며, 제1 콘텐츠의 조회 수가 1인 상태에서, 제2 사용자 단말(120)로부터 제1 콘텐츠에 대한 조회 요청이 수신되면, 제1 콘텐츠의 조회 수를 1에서 2로 변경하여 산정할 수 있다.In addition, when the inquiry request for the first content is received from the
장치(200)는 제1 콘텐츠의 조회 수를 산정하는 방식과 동일하게, 복수의 콘텐츠 각각의 조회 수를 산정할 수 있으며, 제2 콘텐츠의 조회 수, 제3 콘텐츠의 조회 수 등을 각각 산정할 수 있다.The
S702 단계에서, 장치(200)는 복수의 사용자 단말(100)로부터 제2 콘텐츠에 대한 조회 요청이 수신된 횟수를 확인하여 제2 콘텐츠의 조회 수를 산출할 수 있다. 여기서, 제2 콘텐츠는 제2 상품에 대한 상품 정보를 제공하는 콘텐츠로, 제2 콘텐츠에 대한 조회 요청은 제2 상품에 대한 상세 정보를 조회하는 것에 대한 요청일 수 있다.In step S702 , the
S703 단계에서, 장치(200)는 제1 사용자 단말(110)로부터 제1 카테고리의 게시 공간에 대한 접속 요청을 수신할 수 있다.In step S703 , the
S704 단계에서, 장치(200)는 제1 사용자 단말(110)의 식별 정보를 기초로, 제1 사용자 단말(110)의 화면 크기를 확인할 수 있다. 여기서, 제1 사용자 단말(110)의 식별 정보는 제1 사용자 단말(110)을 식별하는데 필요한 정보로, 스마트폰, 태블릿, PC 등 단말의 종류와 기종을 식별하는 정보를 포함할 수 있다.In step S704 , the
구체적으로, 장치(200)는 제1 사용자 단말(110)로부터 제1 카테고리의 게시 공간에 대한 접속 요청이 수신되면, 제1 사용자 단말(110)로부터 제1 사용자 단말(110)의 식별 정보를 획득할 수 있으며, 제1 사용자 단말(110)의 식별 정보를 기초로, 제1 사용자 단말(110)의 종류를 파악하여, 제1 사용자 단말(110)의 화면 크기를 확인할 수 있다.Specifically, when a request for access to the posting space of the first category is received from the
S705 단계에서, 장치(200)는 제1 사용자 단말(110)의 화면 크기가 기준값 보다 작은지 여부를 확인할 수 있다. 여기서, 기준값은 실시예에 따라 상이하게 설정될 수 있다.In step S705 , the
S705 단계에서 제1 사용자 단말(110)의 화면 크기가 기준값 보다 작은 것으로 확인되면, S706 단계에서, 장치(200)는 제1 구역으로 구성된 제1 웹 페이지를 제1 사용자 단말(110)로 제공할 수 있다. 여기서, 제1 구역은 제1 콘텐츠의 대표 이미지가 표시되는 구역이다. If it is confirmed in step S705 that the screen size of the
S705 단계에서 제1 사용자 단말(110)의 화면 크기가 기준값 보다 큰 것으로 확인되면, S707 단계에서, 장치(200)는 제1 구역 및 제2 구역으로 구성된 제2 웹 페이지를 제1 사용자 단말(110)로 제공할 수 있다. 여기서, 제1 구역은 제1 콘텐츠의 대표 이미지가 표시되는 구역이고, 제2 구역은 제2 콘텐츠의 대표 이미지가 표시되는 구역이다. 이때, 제1 콘텐츠 및 제2 콘텐츠는 복수의 콘텐츠 중 가장 최근에 생성되어 등록된 콘텐츠로 설정될 수 있으며, 예를 들어, 장치(200)는 가장 최근에 생성되어 등록된 콘텐츠를 제1 콘텐츠로 설정하고, 제1 콘텐츠의 등록 직전에 생성되어 등록된 콘텐츠를 제2 콘텐츠로 설정할 수 있다.If it is determined in step S705 that the screen size of the
도 8은 일실시예에 따른 노출 구역의 순서를 설정하는 과정을 설명하기 위한 순서도이다.8 is a flowchart illustrating a process of setting an order of exposure zones according to an exemplary embodiment.
도 8을 참조하면, S705 단계에서, 제1 사용자 단말(110)의 화면 크기가 기준값 보다 작은 것으로 확인되면, S801 단계에서, 장치(200)는 제1 콘텐츠의 조회 수가 제2 콘텐츠의 조회 수 보다 많은지 여부를 확인할 수 있다.Referring to FIG. 8 , if it is confirmed that the screen size of the
S801 단계에서 제1 콘텐츠의 조회 수가 제2 콘텐츠의 조회 수 보다 많은 것으로 확인되면, S802 단계에서, 장치(200)는 하나의 구역으로 구성된 제1 웹 페이지를 제1 사용자 단말(110)로 제공할 때, 제1 사용자 단말(110)의 화면에서 제1 구역이 먼저 표시된 후, 제2 구역이 이어서 표시되도록 제어할 수 있다.If it is determined in step S801 that the number of views of the first content is greater than the number of views of the second content, in step S802 , the
장치(200)는 제1 사용자 단말(110)의 화면에서 제1 구역이 먼저 표시된 후, 클릭 및 스와이핑을 통한 사용자 조작으로 화면 이동이 요청되면, 제2 구역이 이어서 표시되도록 제어할 수 있으며, 제1 사용자 단말(110)의 화면에서 제1 구역이 먼저 표시된 후, 미리 설정된 시간이 지나면, 제2 구역이 이어서 표시되도록 제어할 수도 있다.The
S801 단계에서 제1 콘텐츠의 조회 수가 제2 콘텐츠의 조회 수 보다 적은 것으로 확인되면, S803 단계에서, 장치(200)는 하나의 구역으로 구성된 제1 웹 페이지를 제1 사용자 단말(110)로 제공할 때, 제1 사용자 단말(110)의 화면에서 제2 구역이 먼저 표시된 후, 제1 구역이 이어서 표시되도록 제어할 수 있다.If it is determined in step S801 that the number of views of the first content is less than the number of views of the second content, in step S803, the
장치(200)는 제1 사용자 단말(110)의 화면에서 제2 구역이 먼저 표시된 후, 클릭 및 스와이핑을 통한 사용자 조작으로 화면 이동이 요청되면, 제1 구역이 이어서 표시되도록 제어할 수 있으며, 제1 사용자 단말(110)의 화면에서 제2 구역이 먼저 표시된 후, 미리 설정된 시간이 지나면, 제1 구역이 이어서 표시되도록 제어할 수도 있다.After the second zone is displayed on the screen of the
도 9는 일실시예에 따른 노출 구역의 크기를 설정하는 과정을 설명하기 위한 순서도이다.9 is a flowchart illustrating a process of setting a size of an exposure zone according to an exemplary embodiment.
도 9를 참조하면, S705 단계에서 제1 사용자 단말(110)의 화면 크기가 기준값 보다 큰 것으로 확인되면, S901 단계에서, 장치(200)는 제1 콘텐츠의 조회 수 및 제2 콘텐츠의 조회 수를 합한 값으로, 총합 조회 수를 산출할 수 있다.Referring to FIG. 9 , if it is determined that the screen size of the
예를 들어, 장치(200)는 제1 콘텐츠의 조회 수가 75이고, 제2 콘텐츠의 조회 수가 25인 경우, 총합 조회 수를 100으로 산출할 수 있다.For example, when the number of views of the first content is 75 and the number of views of the second content is 25, the
S902 단계에서, 장치(200)는 제1 콘텐츠의 조회 수를 총합 조회 수로 나눈 값으로, 제1 비율을 산출할 수 있다.In step S902 , the
예를 들어, 장치(200)는 제1 콘텐츠의 조회 수가 75이고, 총합 조회 수가 100인 경우, 제1 비율을 75%로 산출할 수 있다.For example, when the number of views of the first content is 75 and the total number of views is 100, the
S903 단계에서, 장치(200)는 제2 콘텐츠의 조회 수를 총합 조회 수로 나눈 값으로, 제2 비율을 산출할 수 있다.In step S903 , the
예를 들어, 장치(200)는 제2 콘텐츠의 조회 수가 25이고, 총합 조회 수가 100인 경우, 제2 비율을 25%로 산출할 수 있다.For example, when the number of views of the second content is 25 and the total number of views is 100, the
S904 단계에서, 장치(200)는 제1 비율로 제1 구역의 크기를 설정할 수 있다.In step S904 , the
S905 단계에서, 장치(200)는 제2 비율로 제2 구역의 크기를 설정할 수 있다.In step S905 , the
S906 단계에서, 장치(200)는 제1 비율을 통해 제1 구역의 크기가 설정되고 제2 비율을 통해 제2 구역의 크기가 설정되면, 제1 구역 및 제2 구역으로 구성된 제2 웹 페이지를 제1 사용자 단말(110)로 제공하여, 제1 구역에서 제1 콘텐츠의 대표 이미지가 표시되고 제2 구역에서 제2 콘텐츠의 대표 이미지가 표시되도록, 제1 사용자 단말(110)의 동작을 제어할 수 있다. 즉, 제2 웹 페이지는 제1 콘텐츠의 대표 이미지 및 제2 콘텐츠의 대표 이미지가 제1 구역 및 제2 구역을 통해 분할되어 표시되도록 설정되어 있다. 여기서, 제1 콘텐츠의 대표 이미지는 S603 단계에서 선정된 제1 이미지 및 제2 이미지 중 총합 점수가 더 높은 이미지이다. 또한, 제1 콘텐츠의 대표 이미지는 제1 상품에 대한 상세 정보로 연결되는 링크를 포함할 수 있으며, 제2 콘텐츠의 대표 이미지는 제2 상품에 대한 상세 정보로 연결되는 링크를 포함할 수 있다. In step S906, when the size of the first zone is set through the first ratio and the size of the second zone is set through the second ratio, the
예를 들어, 제1 사용자 단말(110)의 화면에 제1 구역 및 제2 구역으로 구성된 제2 웹 페이지가 표시되고 있는 상태에서, 제1 구역에 표시된 제1 콘텐츠의 대표 이미지가 선택되면, 제1 상품의 상세 정보가 표시되는 제1 콘텐츠에 대한 웹 페이지로 연결되고, 제2 구역에 표시된 제2 콘텐츠의 대표 이미지가 선택되면, 제2 상품의 상세 정보가 표시되는 제2 콘텐츠에 대한 웹 페이지로 연결될 수 있다.For example, when a representative image of the first content displayed in the first zone is selected while the second web page composed of the first zone and the second zone is being displayed on the screen of the
도 10은 일실시예에 따른 제1 인공 신경망을 설명하기 위한 도면이다.10 is a diagram for explaining a first artificial neural network according to an embodiment.
일실시예에 따른 제1 인공 신경망(1000)은 제1 이미지의 인코딩에 의해 생성된 제1 입력 신호를 입력하고, 제1 상품의 종류를 나타내는 정보를 출력으로 할 수 있다.The first artificial
일실시예에 따른 인코딩은 이미지의 픽셀 별 색 정보를 수치화된 데이터 시트 형태로 저장하는 방식으로 이뤄질 수 있는데, 색 정보는 하나의 픽셀이 가지고 있는 RGB 색상, 명도 정보, 채도 정보를 포함할 수 있으나, 이에 국한하지 않는다.Encoding according to an embodiment may be performed by storing the color information for each pixel of the image in the form of a digitized data sheet, and the color information may include RGB color, brightness information, and saturation information of one pixel. , but not limited thereto.
일실시예에 따르면, 제1 인공 신경망(1000)은 특징 추출 신경망(1010)과 분류 신경망(1020)으로 구성되어 있으며, 특징 추출 신경망(1010)은 이미지에서 상품과 배경을 분리하는 작업을 수행할 수 있으며, 분류 신경망(1020)은 이미지에 있는 상품이 어느 카테고리에 속하는지 여부를 파악하는 작업을 수행할 수 있다.According to an embodiment, the first artificial
특징 추출 신경망(1010)이 상품과 배경을 구분하는 방법은 이미지를 인코딩한 제1 입력 신호의 데이터 시트로부터 색 정보의 각 값들의 변화가 한 픽셀을 포함하는 8개의 픽셀 중 6개 이상에서 30% 이상의 변화가 생긴 것으로 감지되는 픽셀들의 묶음을 상품과 배경의 경계로 삼을 수 있으나, 이에 국한하지 않는다.The method in which the feature extraction neural network 1010 distinguishes the product from the background is that the change in each value of color information from the data sheet of the first input signal encoding the image is 30% in 6 or more of 8 pixels including one pixel A bundle of pixels detected as having an abnormal change may be used as the boundary between the product and the background, but is not limited thereto.
특징 추출 신경망(1010)은 입력 신호를 컨볼루션 계층과 풀링 계층을 차례로 쌓아 진행한다. 컨볼루션 계층은 컨볼루션 연산, 컨볼루션 필터 및 활성함수를 포함하고 있다. 컨볼루션 필터의 계산은 대상 입력의 행렬 크기에 따라 조절되나 일반적으로 9X9 행렬을 사용한다. 활성 함수는 일반적으로 ReLU 함수, 시그모이드 함수, 및 tanh 함수 등을 사용하나 이에 한정하지 않는다. 풀링 계층은 입력의 행렬 크기를 줄이는 역할을 하는 계층으로, 특정 영역의 픽셀을 묶어 대표값을 추출하는 방식을 사용한다. 풀링 계층의 연산에는 일반적으로 평균값이나 최대값을 많이 사용하나 이에 한정하지 않는다. 해당 연산은 정방 행렬을 사용하여 진행되는데, 일반적으로 9X9 행렬을 사용한다. 컨볼루션 계층과 풀링 계층은 해당 입력이 차이를 유지한 상태에서 충분히 작아질 때까지 번갈아 반복 진행된다.The feature extraction neural network 1010 proceeds by sequentially stacking a convolutional layer and a pooling layer on the input signal. The convolution layer includes a convolution operation, a convolution filter, and an activation function. The calculation of the convolution filter is adjusted according to the matrix size of the target input, but a 9X9 matrix is generally used. The activation function generally uses, but is not limited to, a ReLU function, a sigmoid function, and a tanh function. The pooling layer is a layer that reduces the size of the input matrix, and uses a method of extracting representative values by tying pixels in a specific area. In general, the average value or the maximum value is often used for the calculation of the pooling layer, but is not limited thereto. The operation is performed using a square matrix, usually a 9x9 matrix. The convolutional layer and the pooling layer are repeated alternately until the corresponding input becomes small enough while maintaining the difference.
분류 신경망(1020)은 특징 추출 신경망(1010)을 통해 배경으로부터 구분된 상품의 형태를 확인하고, 미리 정의된 카테고리 별 대표 상품과 유사한지 여부를 확인하여 이미지에 있는 상품이 어느 카테고리에 속하는지 여부를 파악할 수 있다. 상품의 비교를 위해 장치(200)의 데이터베이스에 저장된 정보들을 활용할 수 있다.The classification neural network 1020 checks the shape of the product separated from the background through the feature extraction neural network 1010, and confirms whether the product in the image belongs to which category by checking whether it is similar to the representative product for each predefined category can figure out Information stored in the database of the
분류 신경망(1020)은 상품이 속하는 카테고리를 식별하는 작업을 우선으로 하며, 상품의 형태 및 크기까지 파악할 수도 있다.The classification neural network 1020 prioritizes the task of identifying the category to which the product belongs, and may also grasp the shape and size of the product.
분류 신경망(1020)은 히든 레이어와 출력 레이어를 가지고 있으며, 5층 이하의 히든 레이어로 구성되어, 총 50개 이하의 히든 레이어 노드를 포함하고, 히든 레이어의 활성함수는 ReLU 함수, 시그모이드 함수 및 tanh 함수 등을 사용하나 이에 한정하지 않는다.The classification neural network 1020 has a hidden layer and an output layer, and is composed of five or less hidden layers, including a total of 50 or less hidden layer nodes, and the activation function of the hidden layer is a ReLU function and a sigmoid function. and tanh functions, but is not limited thereto.
분류 신경망(1020)는 총 1개의 출력층 노드만 포함할 수 있다.The classification neural network 1020 may include only one output layer node in total.
분류 신경망(1020)의 출력은 상품의 종류에 대한 출력값으로, 상품의 종류가 어느 카테고리에 속하는지 지시할 수 있다. 예를 들어, 출력값이 1인 경우, 상품의 종류가 의류 카테고리인 것을 지시하고, 출력값이 2인 경우, 상품의 종류가 가방 카테고리인 것을 지시하고, 출력값이 3인 경우, 상품의 종류가 신발 카테고리인 것을 지시하고, 출력값이 4인 경우, 상품의 종류가 쥬얼리 카테고리인 것을 지시할 수 있다.The output of the classification neural network 1020 is an output value for the type of product, and may indicate to which category the type of product belongs. For example, when the output value is 1, it indicates that the type of product is a clothing category, when the output value is 2, it indicates that the type of product is a bag category, and when the output value is 3, the type of product is a footwear category , and when the output value is 4, it may indicate that the type of product is a jewelry category.
일실시예에 따르면, 제1 인공 신경망(1000)은 사용자가 제1 인공 신경망(1000)에 따른 출력의 문제점 발견 시 사용자에 의해 입력된 수정 정답에 의해 생성되는 제1 학습 신호를 전달받아 학습할 수 있다. 제1 인공 신경망(1000)에 따른 출력의 문제점은 상품의 종류가 다른 카테고리로 지시하는 출력값을 출력한 경우를 의미할 수 있다.According to an embodiment, the first artificial
일실시예에 따른 제1 학습 신호는 정답과 출력값의 오차를 바탕으로 만들어지며, 경우에 따라 델타를 이용하는 SGD나 배치 방식 혹은 역전파 알고리즘을 따르는 방식을 사용할 수 있다. 제1 인공 신경망(1000)은 제1 학습 신호에 의해 기존의 가중치를 수정해 학습을 수행하며, 경우에 따라 모멘텀을 사용할 수 있다. 오차의 계산에는 비용함수가 사용될 수 있는데, 비용함수로 Cross entropy 함수를 사용할 수 있다. 이하 도 11을 참조하여 제1 인공 신경망(1000)의 학습 내용이 후술된다.The first learning signal according to an embodiment is created based on the error between the correct answer and the output value, and in some cases, SGD using delta, a batch method, or a method following a backpropagation algorithm may be used. The first artificial
도 11은 일실시예에 따른 제1 인공 신경망을 학습하는 방법을 설명하기 위한 도면이다.11 is a diagram for explaining a method of learning a first artificial neural network according to an embodiment.
일실시예에 따르면, 학습 장치는 제1 인공 신경망(1000)을 학습시킬 수 있다. 학습 장치는 장치와 다른 별개의 주체일 수 있지만, 이에 제한되는 것은 아니다.According to an embodiment, the learning apparatus may train the first artificial
일실시예에 따르면, 제1 인공 신경망(1000)은 트레이닝 샘플들이 입력되는 입력 레이어와 트레이닝 출력들을 출력하는 출력 레이어를 포함하고, 제1 트레이닝 출력들(1103)과 제1 레이블들(1104) 사이의 차이에 기초하여 학습될 수 있다. 여기서, 제1 레이블들(1104)은 상품의 종류별 대표 이미지에 기초하여 정의될 수 있다. 제1 인공 신경망(1000)은 복수의 노드들의 그룹으로 연결되어 있고, 연결된 노드들 사이의 가중치들과 노드들을 활성화시키는 활성화 함수에 의해 정의된다. According to an embodiment, the first artificial
학습 장치는 GD(Gradient Decent) 기법 또는 SGD(Stochastic Gradient Descent) 기법을 이용하여 제1 인공 신경망(1000)을 학습시킬 수 있다. 학습 장치는 제1 인공 신경망(1000)의 출력들 및 레이블들 의해 설계된 손실 함수를 이용할 수 있다.The learning apparatus may train the first artificial
학습 장치는 미리 정의된 손실 함수(loss function)을 이용하여 트레이닝 에러를 계산할 수 있다. 손실 함수는 레이블, 출력 및 파라미터를 입력 변수로 미리 정의될 수 있고, 여기서 파라미터는 제1 인공 신경망(1000) 내 가중치들에 의해 설정될 수 있다. 예를 들어, 손실 함수는 MSE(Mean Square Error) 형태, 엔트로피(entropy) 형태 등으로 설계될 수 있는데, 손실 함수가 설계되는 실시예에는 다양한 기법 또는 방식이 채용될 수 있다.The learning apparatus may calculate a training error using a predefined loss function. The loss function may be predefined with a label, an output, and a parameter as input variables, where the parameter may be set by weights in the first artificial
학습 장치는 역전파(backpropagation) 기법을 이용하여 트레이닝 에러에 영향을 주는 가중치들을 찾아낼 수 있다. 여기서, 가중치들은 제1 인공 신경망(1000) 내 노드들 사이의 관계들이다. 학습 장치는 역전파 기법을 통해 찾아낸 가중치들을 최적화시키기 위해 레이블들 및 출력들을 이용한 SGD 기법을 이용할 수 있다. 예를 들어, 학습 장치는 레이블들, 출력들 및 가중치들에 기초하여 정의된 손실 함수의 가중치들을 SGD 기법을 이용하여 갱신할 수 있다.The learning apparatus may find weights affecting the training error by using a backpropagation technique. Here, the weights are relationships between nodes in the first artificial
일실시예에 따르면, 학습 장치는 데이터베이스로부터 레이블드 트레이닝 상품 이미지들(1101)을 획득할 수 있다. 학습 장치는 상품의 종류별로 설정된 상품 이미지들(1101)에 각각 미리 레이블링된 정보를 획득할 수 있는데, 상품 이미지들(1101)은 미리 분류된 상품 정보에 따라 레이블링될 수 있다.According to an embodiment, the learning apparatus may acquire the labeled training product images 1101 from the database. The learning apparatus may obtain pre-labeled information on each of the product images 1101 set for each type of product, and the product images 1101 may be labeled according to the pre-classified product information.
일실시예에 따르면, 학습 장치는 1000개의 레이블드 트레이닝 상품 이미지들(1101)을 획득할 수 있으며, 레이블드 트레이닝 상품 이미지들(1101)에 기초하여 제1 트레이닝 상품 벡터들(1102)을 생성할 수 있다. 제1 트레이닝 상품 벡터들(1102)을 추출하는데는 다양한 방식이 채용될 수 있다.According to an embodiment, the learning device may acquire 1000 labeled training product images 1101, and based on the labeled training product images 1101 to generate the first
일실시예에 따르면, 학습 장치는 제1 트레이닝 상품 벡터들(1102)을 제1 인공 신경망(1000)에 적용하여 제1 트레이닝 출력들(1103)을 획득할 수 있다. 학습 장치는 제1 트레이닝 출력들(1103)과 제1 레이블들(1104)에 기초하여 제1 인공 신경망(1000)을 학습시킬 수 있다. 학습 장치는 제1 트레이닝 출력들(1103)에 대응하는 트레이닝 에러들을 계산하고, 그 트레이닝 에러들을 최소화하기 위해 제1 인공 신경망(1000) 내 노드들의 연결 관계를 최적화하여 제1 인공 신경망(1000)을 학습시킬 수 있다. 장치는 학습이 완료된 제1 인공 신경망(1000)을 이용하여 이미지 내에 있는 상품의 종류를 식별할 수 있다.According to an embodiment, the learning apparatus may obtain the first training outputs 1103 by applying the first
도 12는 일실시예에 따른 장치의 구성의 예시도이다.12 is an exemplary diagram of a configuration of an apparatus according to an embodiment.
일실시예에 따른 장치(200)는 프로세서(210) 및 메모리(220)를 포함한다. 프로세서(210)는 도 1 내지 도 11를 참조하여 전술된 적어도 하나의 장치들을 포함하거나, 도 1 내지 도 11를 참조하여 전술된 적어도 하나의 방법을 수행할 수 있다. 장치(200)를 이용하는 개인 또는 단체는 도 1 내지 도 11를 참조하여 전술된 방법들 일부 또는 전부와 관련된 서비스를 제공할 수 있다.The
메모리(220)는 전술된 방법들과 관련된 정보를 저장하거나 후술되는 방법들이 구현된 프로그램을 저장할 수 있다. 메모리(220)는 휘발성 메모리 또는 비휘발성 메모리일 수 있다.The
프로세서(210)는 프로그램을 실행하고, 장치(200)를 제어할 수 있다. 프로세서(210)에 의하여 실행되는 프로그램의 코드는 메모리(220)에 저장될 수 있다. 장치(200)는 입출력 장치(도면 미 표시)를 통하여 외부 장치(예를 들어, 퍼스널 컴퓨터 또는 네트워크)에 연결되고, 유무선 통신을 통해 데이터를 교환할 수 있다.The
장치(200)는 인공 신경망을 학습시키거나, 학습된 인공 신경망을 이용하는데 사용될 수 있다. 메모리(220)는 학습 중인 또는 학습된 인공 신경망을 포함할 수 있다. 프로세서(210)는 메모리(220)에 저장된 인공 신경망 알고리즘을 학습시키거나 실행시킬 수 있다. 인공 신경망을 학습시키는 장치(200)와 학습된 인공 신경망을 이용하는 장치(200)는 동일할 수도 있고 개별적일 수도 있다.The
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The embodiments described above may be implemented by a hardware component, a software component, and/or a combination of a hardware component and a software component. For example, the apparatus, methods and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate (FPGA). array), a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions, may be implemented using one or more general purpose or special purpose computers. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For convenience of understanding, although one processing device is sometimes described as being used, one of ordinary skill in the art will recognize that the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that may include For example, the processing device may include a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as parallel processors.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and available to those skilled in the art of computer software. Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks. - includes magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.Software may comprise a computer program, code, instructions, or a combination of one or more of these, which configures a processing device to operate as desired or is independently or collectively processed You can command the device. The software and/or data may be any kind of machine, component, physical device, virtual equipment, computer storage medium or device, to be interpreted by or to provide instructions or data to the processing device. , or may be permanently or temporarily embody in a transmitted signal wave. The software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored in one or more computer-readable recording media.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described with reference to the limited drawings, those skilled in the art may apply various technical modifications and variations based on the above. For example, the described techniques are performed in a different order than the described method, and/or the described components of the system, structure, apparatus, circuit, etc. are combined or combined in a different form than the described method, or other components Or substituted or substituted by equivalents may achieve an appropriate result.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.
Claims (3)
크롤링(crawling)을 통해 제1 이미지를 획득하는 단계;
상기 제1 이미지를 인코딩하여 제1 입력 신호를 생성하는 단계;
상기 제1 입력 신호를 제1 인공 신경망에 입력하고, 상기 제1 인공 신경망의 입력에 대한 결과에 기초하여, 제1 출력 신호를 획득하는 단계;
상기 제1 출력 신호에 기초하여, 상기 제1 이미지를 통해 확인된 제1 상품의 종류를 제1 카테고리로 식별하는 단계;
상기 제1 카테고리의 게시 공간에 등록되어 있는 상품의 이미지에 대한 검색을 수행하여, 상기 제1 상품의 이미지가 등록되어 있는지 여부를 확인하는 단계;
상기 제1 상품의 이미지가 등록되어 있지 않은 것으로 확인되면, 상기 제1 이미지를 기반으로 상기 제1 상품에 대한 상품 정보를 제공하는 제1 콘텐츠를 생성하여, 상기 제1 카테고리의 게시 공간에 상기 제1 콘텐츠를 등록하는 단계;
상기 제1 상품의 이미지로 제2 이미지가 등록되어 있는 것으로 확인되면, 상기 제2 이미지를 기반으로 생성되어 있는 제1 콘텐츠를 확인하는 단계;
상기 제2 이미지를 기반으로 생성된 제1 콘텐츠에 상기 제1 이미지를 추가하여, 상기 제1 콘텐츠에 대한 업데이트를 수행하는 단계; 및
상기 제1 콘텐츠가 업데이트 되면, 상기 제1 카테고리의 게시 공간에 등록되어 있는 제1 콘텐츠를 상기 업데이트된 제1 콘텐츠로 변경하는 단계를 포함하고,
상기 제1 콘텐츠에 대한 업데이트를 수행하는 단계는
상기 제1 이미지에서 상기 제1 상품이 차지하고 있는 영역을 제1 영역으로 설정하고, 상기 제1 영역의 화소 수인 제1 화소 수를 산출하는 단계;
상기 제2 이미지에서 상기 제1 상품이 차지하고 있는 영역을 제2 영역으로 설정하고, 상기 제2 영역의 화소 수인 제2 화소 수를 산출하는 단계;
상기 제1 화소 수를 기반으로 상기 제1 이미지의 화소 점수를 부여하고, 상기 제2 화소 수를 기반으로 상기 제2 이미지의 화소 점수를 부여하는 단계;
상기 제1 이미지 상에서 상기 제1 상품을 확인하여 제1 객체로 검출하고, 상기 제1 객체를 제외한 나머지 객체의 수인 제1 부가 객체 수를 산출하는 단계;
상기 제2 이미지 상에서 상기 제1 상품을 확인하여 제2 객체로 검출하고, 상기 제2 객체를 제외한 나머지 객체의 수인 제2 부가 객체 수를 산출하는 단계;
상기 제1 부가 객체 수를 기반으로 상기 제1 이미지의 객체 점수를 부여하고, 상기 제2 부가 객체 수를 기반으로 상기 제2 이미지의 객체 점수를 부여하는 단계;
상기 제1 이미지 상에서 상기 제1 객체가 검출되면, 상기 제1 객체의 방향을 분석하여 상기 제1 이미지의 촬영 각도인 제1 각도를 산출하는 단계;
상기 제2 이미지 상에서 상기 제2 객체가 검출되면, 상기 제2 객체의 방향을 분석하여 상기 제2 이미지의 촬영 각도인 제2 각도를 산출하는 단계;
상기 제1 각도를 기반으로 상기 제1 이미지의 촬영 점수를 부여하고, 상기 제2 각도를 기반으로 상기 제2 이미지의 촬영 점수를 부여하는 단계;
상기 제1 이미지의 화소 점수, 상기 제1 이미지의 객체 점수 및 상기 제1 이미지의 촬영 점수를 합산한 값으로, 상기 제1 이미지의 총합 점수를 산출하는 단계;
상기 제2 이미지의 화소 점수, 상기 제2 이미지의 객체 점수 및 상기 제2 이미지의 촬영 점수를 합산한 값으로, 상기 제2 이미지의 총합 점수를 산출하는 단계;
상기 제1 이미지의 총합 점수 및 상기 제2 이미지의 총합 점수를 비교하여, 총합 점수가 더 높은 이미지를 상기 제1 콘텐츠의 대표 이미지로 선정하는 단계;
상기 제1 이미지가 상기 제1 콘텐츠의 대표 이미지로 선정되면, 상기 제1 이미지 및 상기 제2 이미지 순으로 표시되도록, 상기 제1 콘텐츠에 대한 업데이트를 수행하는 단계; 및
상기 제2 이미지가 상기 제1 콘텐츠의 대표 이미지로 선정되면, 상기 제2 이미지 및 상기 제1 이미지 순으로 표시되도록, 상기 제1 콘텐츠에 대한 업데이트를 수행하는 단계를 포함하는,
이미지 크롤링 기법을 활용한 상품 정보 제공 방법.In the product information providing method using the image crawling technique, performed by the device,
acquiring a first image through crawling;
encoding the first image to generate a first input signal;
inputting the first input signal to a first artificial neural network, and obtaining a first output signal based on a result of the input of the first artificial neural network;
identifying the type of the first product identified through the first image as a first category based on the first output signal;
checking whether the image of the first product is registered by performing a search for an image of the product registered in the posting space of the first category;
If it is confirmed that the image of the first product is not registered, a first content providing product information about the first product is generated based on the first image, and the first content is created in the posting space of the first category. 1 step of registering content;
when it is confirmed that a second image is registered as the image of the first product, checking first content generated based on the second image;
performing an update on the first content by adding the first image to first content generated based on the second image; and
When the first content is updated, changing the first content registered in the posting space of the first category to the updated first content,
The step of updating the first content includes:
setting an area occupied by the first product in the first image as a first area, and calculating a first number of pixels, which is the number of pixels in the first area;
setting an area occupied by the first product in the second image as a second area, and calculating a second number of pixels, which is the number of pixels in the second area;
assigning a pixel score of the first image based on the first number of pixels, and assigning a pixel score of the second image based on the second number of pixels;
identifying the first product on the first image, detecting it as a first object, and calculating the number of first additional objects, which is the number of objects other than the first object;
identifying the first product on the second image, detecting it as a second object, and calculating a second additional object number that is the number of objects other than the second object;
assigning an object score of the first image based on the first number of additional objects, and giving an object score of the second image based on the second number of additional objects;
calculating a first angle that is a photographing angle of the first image by analyzing a direction of the first object when the first object is detected on the first image;
calculating a second angle that is a photographing angle of the second image by analyzing a direction of the second object when the second object is detected on the second image;
giving a shooting score of the first image based on the first angle, and giving a shooting score of the second image based on the second angle;
calculating a total score of the first image as a value obtained by adding the pixel score of the first image, the object score of the first image, and the shooting score of the first image;
calculating a total score of the second image by adding the pixel score of the second image, the object score of the second image, and the shooting score of the second image;
comparing the total score of the first image and the total score of the second image, and selecting an image having a higher total score as a representative image of the first content;
performing an update on the first content so that when the first image is selected as the representative image of the first content, the first image and the second image are displayed in order; and
When the second image is selected as the representative image of the first content, performing an update on the first content so that the second image and the first image are displayed in the order,
A method of providing product information using image crawling techniques.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220008735A KR102429392B1 (en) | 2022-01-20 | 2022-01-20 | Method, device and system of providing product information using image crawling |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220008735A KR102429392B1 (en) | 2022-01-20 | 2022-01-20 | Method, device and system of providing product information using image crawling |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102429392B1 true KR102429392B1 (en) | 2022-08-04 |
Family
ID=82834288
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220008735A KR102429392B1 (en) | 2022-01-20 | 2022-01-20 | Method, device and system of providing product information using image crawling |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102429392B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102629886B1 (en) * | 2023-01-16 | 2024-01-29 | 주식회사 지어소프트 | Method and apparatus for self-checkout of unmanned store using digital image |
WO2024053909A1 (en) * | 2022-09-05 | 2024-03-14 | 주식회사 지어소프트 | Method and device for product checkout in unmanned store |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101509393B1 (en) * | 2014-03-28 | 2015-04-13 | 주식회사 피넛 | Apparatus for providing product information and method thereof |
KR101932713B1 (en) | 2018-03-05 | 2018-12-27 | 황영우 | System and method for automated generation of product information and computer program for the same |
KR20200026422A (en) * | 2018-08-31 | 2020-03-11 | 십일번가 주식회사 | Apparatus and method for image search |
KR102120465B1 (en) | 2017-11-10 | 2020-06-08 | 신재오 | Method of providing comprehensive product information |
KR20210052237A (en) | 2019-10-31 | 2021-05-10 | 장인하 | Product catalog automatic classification system based on artificial intelligence |
KR102300500B1 (en) * | 2021-01-21 | 2021-09-10 | 김범준 | Method, device and system for processing three-dimensional cut image of product |
KR20210130057A (en) | 2020-04-21 | 2021-10-29 | 주식회사 리본굿즈 | Method and system for automatically generating online product information |
-
2022
- 2022-01-20 KR KR1020220008735A patent/KR102429392B1/en active IP Right Grant
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101509393B1 (en) * | 2014-03-28 | 2015-04-13 | 주식회사 피넛 | Apparatus for providing product information and method thereof |
KR102120465B1 (en) | 2017-11-10 | 2020-06-08 | 신재오 | Method of providing comprehensive product information |
KR101932713B1 (en) | 2018-03-05 | 2018-12-27 | 황영우 | System and method for automated generation of product information and computer program for the same |
KR20200026422A (en) * | 2018-08-31 | 2020-03-11 | 십일번가 주식회사 | Apparatus and method for image search |
KR20210052237A (en) | 2019-10-31 | 2021-05-10 | 장인하 | Product catalog automatic classification system based on artificial intelligence |
KR20210130057A (en) | 2020-04-21 | 2021-10-29 | 주식회사 리본굿즈 | Method and system for automatically generating online product information |
KR102300500B1 (en) * | 2021-01-21 | 2021-09-10 | 김범준 | Method, device and system for processing three-dimensional cut image of product |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024053909A1 (en) * | 2022-09-05 | 2024-03-14 | 주식회사 지어소프트 | Method and device for product checkout in unmanned store |
KR102629886B1 (en) * | 2023-01-16 | 2024-01-29 | 주식회사 지어소프트 | Method and apparatus for self-checkout of unmanned store using digital image |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102429392B1 (en) | Method, device and system of providing product information using image crawling | |
CN109074607B (en) | Learned model providing method and learned model providing device | |
US20170337449A1 (en) | Program, system, and method for determining similarity of objects | |
KR102468827B1 (en) | Method, device and system for sourcing products based on artificial intelligence and providing category-customized review analysis service | |
KR102404511B1 (en) | Method, device and system for recommending customized product information based on artificial intelligence | |
US9830534B1 (en) | Object recognition | |
US11921777B2 (en) | Machine learning for digital image selection across object variations | |
JP6729553B2 (en) | System, image recognition method, and program | |
KR102394900B1 (en) | Method, device and system of synchronizing product inventory information based on artificial intelligence | |
KR102533729B1 (en) | Drug demand forecasting and inventory management method, device and system based on drug order and customer information | |
KR102466020B1 (en) | Method, device and system for automatic matching of luxury information and sellers based on artificial intelligence | |
KR102553041B1 (en) | Method, device and system for providing matching platform service between user and interior supplier based on artificial intelligence model | |
KR102478648B1 (en) | Method, device and system for providing online live commerce platform based on region | |
WO2023231753A1 (en) | Neural network training method, data processing method, and device | |
KR102458694B1 (en) | Method, device and system for estimating cost of design work based on artificial intelligence and providing mediation platform service for design work | |
KR102315592B1 (en) | Method, device and system for providing maintenance service of computer equipment improved user accessibility | |
KR102426803B1 (en) | Method, device and system for automatically uploading overseas sales page of product based on artificial intelligence | |
KR102299393B1 (en) | Server for matching product with buyer and matching system having the same | |
JP6700146B2 (en) | A system that determines recommended content based on evaluation values | |
KR102300500B1 (en) | Method, device and system for processing three-dimensional cut image of product | |
CN115129945A (en) | Graph structure contrast learning method, equipment and computer storage medium | |
KR102464615B1 (en) | Method, device and system for providing recipe and dietary information based on artificial intelligence | |
KR102508465B1 (en) | Method, device and system for automating business card information editing | |
CN112749707A (en) | Method, apparatus, and medium for object segmentation using neural networks | |
CN111680674A (en) | Hall personnel monitoring method based on self-integrated attention mechanism |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |