KR20230167681A - Apparatus, method and program to determine whether goods are normally placed or not based on artificial intelligence - Google Patents

Apparatus, method and program to determine whether goods are normally placed or not based on artificial intelligence Download PDF

Info

Publication number
KR20230167681A
KR20230167681A KR1020220095350A KR20220095350A KR20230167681A KR 20230167681 A KR20230167681 A KR 20230167681A KR 1020220095350 A KR1020220095350 A KR 1020220095350A KR 20220095350 A KR20220095350 A KR 20220095350A KR 20230167681 A KR20230167681 A KR 20230167681A
Authority
KR
South Korea
Prior art keywords
product
load cell
shelf
information
processor
Prior art date
Application number
KR1020220095350A
Other languages
Korean (ko)
Other versions
KR102669653B1 (en
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 KR1020220095350A priority Critical patent/KR102669653B1/en
Publication of KR20230167681A publication Critical patent/KR20230167681A/en
Priority to KR1020240066633A priority patent/KR20240078426A/en
Application granted granted Critical
Publication of KR102669653B1 publication Critical patent/KR102669653B1/en

Links

Classifications

    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47FSPECIAL FURNITURE, FITTINGS, OR ACCESSORIES FOR SHOPS, STOREHOUSES, BARS, RESTAURANTS OR THE LIKE; PAYING COUNTERS
    • A47F10/00Furniture or installations specially adapted to particular types of service systems, not otherwise provided for
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47FSPECIAL FURNITURE, FITTINGS, OR ACCESSORIES FOR SHOPS, STOREHOUSES, BARS, RESTAURANTS OR THE LIKE; PAYING COUNTERS
    • A47F10/00Furniture or installations specially adapted to particular types of service systems, not otherwise provided for
    • A47F10/02Furniture or installations specially adapted to particular types of service systems, not otherwise provided for for self-service type systems, e.g. supermarkets
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01GWEIGHING
    • G01G19/00Weighing apparatus or methods adapted for special purposes not provided for in the preceding groups
    • G01G19/40Weighing apparatus or methods adapted for special purposes not provided for in the preceding groups with provisions for indicating, recording, or computing price or other quantities dependent on the weight
    • G01G19/413Weighing apparatus or methods adapted for special purposes not provided for in the preceding groups with provisions for indicating, recording, or computing price or other quantities dependent on the weight using electromechanical or electronic computing means
    • G01G19/414Weighing apparatus or methods adapted for special purposes not provided for in the preceding groups with provisions for indicating, recording, or computing price or other quantities dependent on the weight using electromechanical or electronic computing means using electronic computing means only
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01LMEASURING FORCE, STRESS, TORQUE, WORK, MECHANICAL POWER, MECHANICAL EFFICIENCY, OR FLUID PRESSURE
    • G01L1/00Measuring force or stress, in general
    • G01L1/20Measuring force or stress, in general by measuring variations in ohmic resistance of solid materials or of electrically-conductive fluids; by making use of electrokinetic cells, i.e. liquid-containing cells wherein an electrical potential is produced or varied upon the application of stress
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/02Systems using the reflection of electromagnetic waves other than radio waves
    • G01S17/06Systems determining position data of a target
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F11/00Coin-freed apparatus for dispensing, or the like, discrete articles
    • G07F11/02Coin-freed apparatus for dispensing, or the like, discrete articles from non-movable magazines
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F9/00Details other than those peculiar to special kinds or types of apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/57Mechanical or electrical details of cameras or camera modules specially adapted for being embedded in other devices
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47FSPECIAL FURNITURE, FITTINGS, OR ACCESSORIES FOR SHOPS, STOREHOUSES, BARS, RESTAURANTS OR THE LIKE; PAYING COUNTERS
    • A47F10/00Furniture or installations specially adapted to particular types of service systems, not otherwise provided for
    • A47F2010/005Furniture or installations specially adapted to particular types of service systems, not otherwise provided for using RFID elements
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47FSPECIAL FURNITURE, FITTINGS, OR ACCESSORIES FOR SHOPS, STOREHOUSES, BARS, RESTAURANTS OR THE LIKE; PAYING COUNTERS
    • A47F10/00Furniture or installations specially adapted to particular types of service systems, not otherwise provided for
    • A47F10/02Furniture or installations specially adapted to particular types of service systems, not otherwise provided for for self-service type systems, e.g. supermarkets
    • A47F2010/025Furniture or installations specially adapted to particular types of service systems, not otherwise provided for for self-service type systems, e.g. supermarkets using stock management systems

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Electromagnetism (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)

Abstract

본 개시는 로드셀 배치 구조를 활용한 인공지능 기반의 상품 쇼케이스 내의 상품 위치 산출 장치에 관한 것으로, 복수의 컬럼(column)으로 구분된 진열대의 선반에 배치된 상품의 위치를 센싱하기 위한 복수의 로드셀 및 상기 복수의 로드셀에서 센싱되는 센싱값 및 상기 센싱값을 센싱한 상기 복수의 로드셀 각각의 위치 정보를 기반으로 상기 선반에 배치된 상품의 위치 정보를 산출하는 제1 프로세서를 포함한다.The present disclosure relates to an artificial intelligence-based product position calculation device in a product showcase utilizing a load cell arrangement structure, including a plurality of load cells for sensing the positions of products placed on the shelves of a display stand divided into a plurality of columns, and and a first processor that calculates location information of the product placed on the shelf based on the sensing values sensed by the plurality of load cells and the location information of each of the plurality of load cells that sense the sensing values.

Description

인공지능 기반으로 상품의 정상 배치 여부를 판별하는 장치, 방법 및 프로그램 {Apparatus, method and program to determine whether goods are normally placed or not based on artificial intelligence}Apparatus, method and program to determine whether goods are normally placed or not based on artificial intelligence}

본 개시는 상품의 정상 배치 여부를 판별하는 장치에 관한 것으로, 보다 상세하게는 인공지능 기반으로 상품의 정상 배치 여부를 판별하는 장치에 관한 것이다.This disclosure relates to a device for determining whether a product is properly placed, and more specifically, to a device for determining whether a product is properly placed based on artificial intelligence.

최근 들어, 무인으로 운영되는 냉장고, 판매 장치의 수요가 증가하고 있다.Recently, demand for unmanned refrigerators and sales devices has been increasing.

이러한 장치들의 특징은 선반에 배치된 상품을 정확하게 인식하고 해당 컬럼에 제대로 된 상품이 배치되었는지, 현재 배치되어 있는 상품의 개수는 몇 개인지를 산출하여 자동으로 재고 관리가 진행되어야 하지만 현재로서는 이러한 기술이 공개되어 있지 않은 실정이다.The characteristic of these devices is that inventory management must be carried out automatically by accurately recognizing the products placed on the shelf, calculating whether the correct product has been placed in the corresponding column, and calculating the number of products currently placed. However, at present, such technology is not available. It has not been made public.

또한, 무게 측정 센서를 이용하여 상품의 배치 여부를 판단하는 장치는 고정된 크기의 상품 배치만을 판단하고 있을 뿐, 상품의 크기 변경은 고려하고 있지 않기 때문에 상품 배치의 유연성이 떨어지는 문제점이 있다.In addition, the device that determines product placement using a weight measurement sensor only determines the placement of products of a fixed size and does not take into account changes in product size, so there is a problem in that product placement is less flexible.

또한, 현재 이용되고 있는 장치들은 상품의 판매 개수를 정확하게 판단하지 못하는는 오작동이 발생하여 상품 결제 과정에서 정확한 결제정보를 획득하지 못하는 문제점이 존재한다.In addition, the devices currently in use have malfunctions that prevent them from accurately determining the number of products sold, resulting in a problem of not obtaining accurate payment information during the product payment process.

대한민국 등록특허공보 제10-1797656호, (2017.11.08)Republic of Korea Patent Publication No. 10-1797656, (2017.11.08)

본 개시에 개시된 실시예는 로드셀의 배치 구조를 활용하여 인공지능 기반으로 상품 쇼케이스 내 배치된 상품의 위치 산출 장치를 제공하는데 그 목적이 있다.The purpose of the embodiment disclosed in this disclosure is to provide a device for calculating the position of a product placed in a product showcase based on artificial intelligence by utilizing the arrangement structure of a load cell.

본 개시에 개시된 실시예는 상품 인식 알고리즘을 이용하여 인공지능 기반으로 상품 판매 개수를 산출하는 장치를 제공하는데 그 목적이 있다.The purpose of the embodiment disclosed in this disclosure is to provide a device for calculating the number of products sold based on artificial intelligence using a product recognition algorithm.

본 개시가 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The problems to be solved by the present disclosure are not limited to the problems mentioned above, and other problems not mentioned can be clearly understood by those skilled in the art from the description below.

상술한 과제를 해결하기 위한 본 개시의 일 실시예에 따른 인공지능 기반의 상품 쇼케이스 내의 상품 위치 산출 장치는, 복수의 컬럼(column)으로 구분된 진열대의 선반에 배치된 상품의 위치를 센싱하기 위한 복수의 로드셀; 및 상기 복수의 로드셀에서 센싱되는 센싱값 및 상기 센싱값을 센싱한 상기 복수의 로드셀 각각의 위치 정보를 기반으로 상기 선반에 배치된 상품의 위치 정보를 산출하는 제1 프로세서를 포함하고, 상기 복수의 로드셀은 상기 복수의 컬럼을 각각 구분하기 위한 각 라인 선상에 둘 이상 배치된다.An artificial intelligence-based product location calculation device in a product showcase according to an embodiment of the present disclosure to solve the above-described problem is for sensing the positions of products placed on the shelves of a display stand divided into a plurality of columns. Multiple load cells; And a first processor that calculates location information of the product placed on the shelf based on the sensing value sensed by the plurality of load cells and the location information of each of the plurality of load cells that sensed the sensing value, and the plurality of Two or more load cells are arranged on each line to separate the plurality of columns.

또한, 상기 복수의 로드셀은 상기 각 라인 선상의 일측에 제1 로드셀, 상기 각 라인 선상의 타측에 제2 로드셀이 마련되고, 상기 제1 프로세서는, 상기 각 라인 선상의 상기 제1 로드셀 및 상기 제2 로드셀에서 센싱된 센싱값을 내분 계산하여 상기 선반에 배치된 상품의 위치 정보를 산출할 수 있다.In addition, the plurality of load cells include a first load cell on one side of each line and a second load cell on the other side of each line, and the first processor includes the first load cell and the first load cell on each line. 2 The location information of the product placed on the shelf can be calculated by internal calculation of the sensing value sensed by the load cell.

또한, 상기 복수의 로드셀은 상기 각 라인 선상의 일측에 제1 로드셀 및 제2 로드셀이 마련되고, 상기 제1 프로세서는, 상기 각 라인 선상의 상기 제1 로드셀 및 상기 제2 로드셀에서 센싱된 센싱값을 외분 계산하여 상기 선반에 배치된 상품의 위치 정보를 산출할 수 있다.In addition, the plurality of load cells include a first load cell and a second load cell provided on one side of each line, and the first processor calculates a sensing value sensed by the first load cell and the second load cell on each line. By calculating the outer product of , the location information of the product placed on the shelf can be calculated.

또한, 상기 제1 프로세서는, 상기 복수의 로드셀에서 센싱되는 센싱값 및 상기 센싱값을 센싱한 복수의 로드셀 각각의 위치 정보를 기반으로 상기 선반에 배치된 상품의 무게와 하부 형상 예상값을 산출하고, 상기 산출된 상기 상품의 무게 및 상기 상품의 하부 형상 예상값을 기반으로 상기 상품의 종류를 판단할 수 있다.In addition, the first processor calculates the estimated weight and bottom shape of the product placed on the shelf based on the sensing value sensed by the plurality of load cells and the position information of each of the plurality of load cells sensing the sensing value, , the type of the product can be determined based on the calculated weight of the product and the expected lower shape of the product.

또한, 상기 제1 프로세서는, 상기 산출된 상품의 위치 정보 및 상기 판단된 상기 상품의 종류를 기반으로 상기 선반에 배치된 상기 상품의 정상 배치 여부를 판단할 수 있다.Additionally, the first processor may determine whether the product placed on the shelf is normally placed based on the calculated product location information and the determined type of the product.

또한, 상기 선반은 상기 선반의 적어도 일부 영역을 복수의 서로 다른 화각으로 촬영 가능한 카메라를 포함하고, 상기 제1 프로세서는, 상기 카메라가 복수의 서로 다른 화각으로 상기 선반을 촬영하여 복수의 촬영 이미지를 생성하도록 제어하고, 상기 산출된 상기 상품의 위치 정보를 상기 복수의 촬영 이미지와 매칭하여 상기 상품의 위치 정보 산출 결과를 검증할 수 있다.In addition, the shelf includes a camera capable of photographing at least a partial area of the shelf at a plurality of different angles of view, and the first processor is configured to allow the camera to photograph the shelf at a plurality of different angles of view to produce a plurality of captured images. control to generate the product, and match the calculated location information of the product with the plurality of captured images to verify the calculation result of the location information of the product.

또한, 상기 제1 프로세서는, 상기 복수의 촬영 이미지를 기반으로 상기 상품의 이미지 위치 정보를 산출하고, 상기 산출된 이미지 위치 정보와 상기 산출된 위치 정보의 일치 여부를 판단할 수 있다.Additionally, the first processor may calculate image location information of the product based on the plurality of captured images and determine whether the calculated image location information matches the calculated location information.

또한, 상기 선반은 양 측면 각각에 라이다 센서가 마련되고, 상기 제1 프로세서는, 상기 라이다 센서를 통해 센싱된 센싱값을 기반으로 상기 산출된 상품의 위치 정보를 검증할 수 있다.In addition, the shelf is provided with a LiDAR sensor on each side, and the first processor can verify the calculated location information of the product based on the sensing value sensed through the LiDAR sensor.

또한, 상기 선반은 내부 일측면에 제1 라이다 센서가 마련되고, 내부 타측면에 제2 라이다 센서가 마련되고, 상기 제1 프로세서는, 상기 제1 라이다 센서를 통해 센싱된 센싱값 및 상기 제2 라이다 센서를 통해 센싱된 센싱값을 기반으로, 상기 선반에 배치된 상품의 위치 정보를 산출하고, 상기 산출된 상품의 위치 정보 및 상기 산출된 상품의 위치 정보를 비교하여 상기 산출된 상품의 위치 정보를 검증할 수 있다.In addition, the shelf is provided with a first LiDAR sensor on one side of the interior and a second LiDAR sensor on the other side of the interior, and the first processor, the sensing value sensed through the first LiDAR sensor and Based on the sensing value sensed through the second LIDAR sensor, location information of the product placed on the shelf is calculated, and the calculated location information of the product is compared with the calculated location information of the product to calculate the location information. You can verify the location information of the product.

또한, 상기 선반은 내부 일측면에 제1 라이다 센서가 마련되고, 내부 타측면에 제2 라이다 센서가 마련되고, 상기 제1 프로세서는, 상기 산출된 상품의 위치 정보를 기반으로, 상기 제1 라이다 센서 및 상기 제2 라이다 센서 각각에 복수의 센싱 포인트를 할당하고, 상기 할당된 복수의 센싱 포인트에 대하여 상기 제1 라이다 센서 및 상기 제2 라이다 센서를 통해 센싱된 센싱값을 기반으로 상기 산출된 상품의 위치 정보를 검증할 수 있다.In addition, the shelf is provided with a first LiDAR sensor on one side of the interior and a second LiDAR sensor on the other side of the interior, and the first processor, based on the calculated location information of the product, 1 A plurality of sensing points are assigned to each of the LiDAR sensor and the second LiDAR sensor, and the sensing values sensed through the first LiDAR sensor and the second LiDAR sensor are assigned to the assigned plurality of sensing points. Based on this, the calculated location information of the product can be verified.

또한, 상술한 과제를 해결하기 위한 본 개시의 일 실시예에 따른 인공지능 기반의 상품 쇼케이스 내의 상품 위치 산출 방법은, 장치에 의해 수행되는 방법으로, 선반에 상품이 배치된 것을 감지하는 단계; 및 복수의 컬럼(column)으로 구분된 진열대의 상기 선반에 배치된 상품의 위치를 센싱하기 위한 복수의 로드셀에서 센싱되는 센싱값 및 상기 센싱값을 센싱한 상기 복수의 로드셀 각각의 위치 정보를 기반으로 상기 선반에 배치된 상품의 위치 정보를 산출하는 단계를 포함한다.In addition, an artificial intelligence-based method of calculating a product position in a product showcase according to an embodiment of the present disclosure to solve the above-described problem is performed by a device, and includes the steps of detecting that a product is placed on a shelf; And based on the sensing value sensed by a plurality of load cells for sensing the position of the product placed on the shelf of the display stand divided into a plurality of columns and the position information of each of the plurality of load cells that sensed the sensing value. It includes calculating location information on products placed on the shelf.

상술한 과제(상품 판매 개수 산출)를 해결하기 위한 본 개시의 일 실시예에 따른 인공지능 기반의 상품 쇼케이스 내의 상품 위치 산출 장치는, 상품의 표준무게 및 미리 설정된 보정지수를 저장하는 메모리, 적어도 하나의 카메라 및 무게측정 센서를 포함하는 상품 위치 산출 장치와 통신을 수행하는 통신모듈, 및 상기 메모리와 통신을 수행하는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 상품수납부의 문이 열리면, 상기 상품 위치 산출 장치로부터 제1 상품정보를 수신하고, 상기 상품수납부의 문이 닫히면, 상기 상품 위치 산출 장치로부터 제2 상품정보를 수신하고, 상기 제1 상품정보 및 상기 제2 상품정보 각각에 포함된 무게정보를 기초로 절대연산을 수행하여 상기 상품의 판매개수를 산출하고, 상기 제2 상품정보를 기초로 미리 결정된 오류검출 알고리즘에 따라 오류가 발생한 것으로 판단되면, 상기 절대연산을 중단하고, 상기 제1 상품정보 및 상기 제2 상품정보 각각에 포함된 상기 무게정보 차이 값을 기초로 상대연산을 수행하여 상기 상품의 판매개수를 산출하고, 상기 상품 위치 산출 장치로부터 수신한 로드셀의 기울기 정보에 기초하여 상기 보정지수를 변경하여 상기 오류가 해소된 것으로 판단되면, 상기 상대연산을 중단하고 상기 절대연산을 다시 수행한다.An artificial intelligence-based product location calculation device in a product showcase according to an embodiment of the present disclosure for solving the above-described problem (calculating the number of products sold) includes at least one memory that stores the standard weight of the product and a preset correction index. A communication module that communicates with a product location calculation device including a camera and a weight measurement sensor, and at least one processor that communicates with the memory, wherein when the door of the product storage unit is opened, the at least one processor , receiving first product information from the product location calculation device, and when the door of the product storage unit is closed, receiving second product information from the product location calculation device, and each of the first product information and the second product information Calculate the number of sales of the product by performing an absolute calculation based on the included weight information, and if it is determined that an error has occurred according to a predetermined error detection algorithm based on the second product information, stop the absolute calculation, A relative operation is performed based on the weight information difference value included in each of the first product information and the second product information to calculate the number of products sold, and the tilt information of the load cell received from the product position calculation device is calculated. If it is determined that the error has been resolved by changing the correction index based on the correction index, the relative operation is stopped and the absolute operation is performed again.

또한, 상기 절대연산 및 상기 상대연산은, 상기 카메라로부터 촬영된 상기 상품 이미지에 기초하여 기계학습이 수행되어 각각에 대한 연산 값이 결정되고, 상기 기계학습을 수행하는 학습모델은 다중클래스 분류(Multiclass classification) 및 이진 분류(Binary classification)를 구현할 수 있고, 상기 다중클래스 분류는, 제1 합성곱 신경망(CNN, Convolutional neural network) 모델에 의해 수행되고, 상기 이진 분류는, 제2 합성곱 신경망 모델에 의해 수행되고, 상기 미리 결정된 오류검출 알고리즘은, 상기 제2 합성곱 신경망 모델에 의해 상기 로드셀에 상기 상품이 없는 것으로 판단된 경우로서, 상기 무게측정 센서에 의해 측정된 상기 로드셀의 무게정보에 기초하여 상기 상품이 존재하는 것으로 판단되는 경우는 오류가 발생한 것으로 판단하고, 그렇지 않은 경우 오류가 발생하지 않은 것으로 판단하는 알고리즘이고, 상기 오류가 발생한 것으로 판단되면, 상기 미리 설정된 보정지수의 변경이 필요한 것으로 판단하고, 상기 상품 위치 산출 장치로부터 상기 로드셀의 기울기 정보를 수신하고, 상기 로드셀의 기울기 정보에 기초하여 상기 미리 설정된 보정지수를 변경하고, 상기 미리 설정된 보정지수가 변경되면, 상기 오류가 해소된 것으로 판단할 수 있다.also, For the absolute calculation and the relative calculation, machine learning is performed based on the product image captured by the camera to determine the calculation value for each, and the learning model that performs the machine learning is multiclass classification. And binary classification can be implemented, wherein the multi-class classification is performed by a first convolutional neural network (CNN) model, and the binary classification is performed by a second convolutional neural network model. In the case where it is determined that there is no product in the load cell by the second convolutional neural network model, the predetermined error detection algorithm determines that the product is based on the weight information of the load cell measured by the weight measurement sensor. If it is determined that this exists, it is determined that an error has occurred, and if not, the algorithm determines that an error has not occurred. If it is determined that the error has occurred, it is determined that the preset correction index needs to be changed, It is possible to receive tilt information of the load cell from the product position calculation device, change the preset correction index based on the tilt information of the load cell, and when the preset correction index is changed, it can be determined that the error has been resolved. there is.

상술한 과제(상품 판매 개수 산출)를 해결하기 위한 본 개시의 일 실시예에 따른 인공지능 기반의 상품 쇼케이스 내의 상품 위치 산출 방법은, 상품 위치 산출 장치는 상품의 표준무게 및 미리 설정된 보정지수를 메모리에 저장하고, 상품수납부의 문이 열리면, 카메라 및 무게측정 센서를 포함한 상품 위치 산출 장치로부터 제1 상품정보를 수신하는 단계, 상기 상품수납부의 문이 닫히면, 상기 상품 위치 산출 장치로부터 제2 상품정보를 수신하는 단계, 상기 제1 상품정보 및 상기 제2 상품정보 각각에 포함된 무게정보를 기초로 절대연산을 수행하여 상기 상품의 판매개수를 산출하는 단계, 상기 제2 상품정보를 기초로 미리 결정된 오류검출 알고리즘에 따라 오류가 발생한 것으로 판단되면, 상기 절대연산을 중단하고, 상기 제1 상품정보 및 상기 제2 상품정보 각각에 포함된 상기 무게정보 차이 값을 기초로 상대연산을 수행하여 상기 상품의 판매개수를 산출하는 단계, 상기 상품 위치 산출 장치로부터 수신한 로드셀의 기울기 정보에 기초하여 상기 보정지수를 변경하여 상기 오류가 해소된 것으로 판단되면, 상기 상대연산을 중단하고 상기 절대연산을 다시 수행하는 단계를 포함한다.In an artificial intelligence-based product location calculation method in a product showcase according to an embodiment of the present disclosure to solve the above-described problem (calculating the number of products sold), the product position calculation device stores the standard weight of the product and a preset correction index. When the door of the product storage unit is opened, receiving first product information from a product location calculation device including a camera and a weight measurement sensor. When the door of the product storage unit is closed, second product information is received from the product location calculation device. Receiving, performing an absolute calculation based on weight information included in each of the first product information and the second product information to calculate the number of products sold, predetermined based on the second product information If it is determined that an error has occurred according to the error detection algorithm, the absolute operation is stopped, and a relative operation is performed based on the weight information difference value included in each of the first product information and the second product information to determine the product. In the step of calculating the number of units sold, when it is determined that the error is resolved by changing the correction index based on the tilt information of the load cell received from the product position calculation device, stopping the relative operation and performing the absolute operation again Includes steps.

또한, 상기 제1 상품정보는, 상기 상품수납부의 문이 열리면, 상기 카메라로부터 촬영된 상기 상품 이미지 및 상기 무게측정 센서로부터 측정된 상기 로드셀의 무게에 대한 정보이고, 상기 제2 상품정보는, 상기 상품수납부의 문이 닫히면, 상기 카메라로부터 촬영된 상기 상품 이미지 및 상기 무게측정 센서로부터 측정된 상기 로드셀의 무게에 대한 정보인 것을 특징으로 한다.In addition, the first product information is information about the product image captured by the camera and the weight of the load cell measured by the weight measurement sensor when the door of the product storage unit is opened, and the second product information is information about the weight of the load cell measured by the weight measurement sensor. When the door of the product storage unit is closed, the product image captured by the camera and information about the weight of the load cell measured by the weight measurement sensor are provided.

또한, 상기 절대연산 및 상기 상대연산은, 상기 카메라로부터 촬영된 상기 상품 이미지에 기초하여 기계학습이 수행되어 각각에 대한 연산 값이 결정되고, 상기 기계학습을 수행하는 학습모델은 다중클래스 분류(Multiclass classification) 및 이진 분류(Binary classification)를 구현할 수 있고, 상기 다중클래스 분류는, 제1 합성곱 신경망(CNN, Convolutional neural network) 모델에 의해 수행되고, 상기 이진 분류는, 제2 합성곱 신경망 모델에 의해 수행될 수 있다.In addition, for the absolute calculation and the relative calculation, machine learning is performed based on the product image captured by the camera to determine the calculation value for each, and the learning model that performs the machine learning is multiclass classification (Multiclass classification) and binary classification, and the multi-class classification is performed by a first convolutional neural network (CNN) model, and the binary classification is performed by a second convolutional neural network model. It can be performed by

또한, 상기 미리 결정된 오류검출 알고리즘은, 문이 닫혔을 때를 기준으로, 상기 절대연산에 기초하여 재고수가 판단되면, 상기 재고수에 상기 상품의 표준무게를 곱한 값과 상기 무게측정 센서에 의해 측정된 상기 로드셀의 무게에 대한 정보를 비교하여 비율을 산출하고, 상기 비율이 미리 설정된 값 이상으로 차이가 나면, 상기 오류가 발생한 것으로 판단하고, 상기 비율이 미리 설정된 값 미만으로 차이나면, 상기 오류가 발생하지 않은 것으로 판단하는 알고리즘인 것을 특징으로 한다In addition, the predetermined error detection algorithm determines the inventory number based on the absolute calculation based on when the door is closed, and calculates the inventory number multiplied by the standard weight of the product and measured by the weight measurement sensor. The information on the weight of the load cell is compared to calculate the ratio, and if the ratio differs by more than a preset value, it is determined that the error has occurred. If the ratio differs by less than the preset value, the error occurs. It is characterized by an algorithm that determines that it has not occurred.

또한, 상기 오류가 발생한 것으로 판단되면, 상기 미리 설정된 보정지수의 변경이 필요한 것으로 판단하고, 상기 상품 위치 산출 장치로부터 상기 로드셀의 기울기 정보를 수신하고, 상기 로드셀의 기울기 정보에 기초하여 상기 미리 설정된 보정지수를 변경하고, 상기 미리 설정된 보정지수가 변경되면, 상기 오류가 해소된 것으로 판단할 수 있다.In addition, if it is determined that the error has occurred, it is determined that the preset correction index needs to be changed, It is possible to receive tilt information of the load cell from the product position calculation device, change the preset correction index based on the tilt information of the load cell, and when the preset correction index is changed, it can be determined that the error has been resolved. there is.

또한, 상기 미리 결정된 오류검출 알고리즘은, 상기 제2 합성곱 신경망 모델에 의해 상기 로드셀에 상기 상품이 없는 것으로 판단된 경우로서, 상기 무게측정 센서에 의해 측정된 상기 로드셀의 무게정보에 기초하여 상기 상품이 존재하는 것으로 판단되는 경우는 오류가 발생한 것으로 판단하고, 그렇지 않은 경우 오류가 발생하지 않은 것으로 판단하는 알고리즘인 것을 특징으로 한다.In addition, when the predetermined error detection algorithm determines that there is no product in the load cell by the second convolutional neural network model, the predetermined error detection algorithm determines that the product is based on the weight information of the load cell measured by the weight measurement sensor. If it is determined that this exists, it is determined that an error has occurred, and if not, it is characterized as an algorithm that determines that an error has not occurred.

또한, 상기 오류가 발생한 것으로 판단되면, 상기 미리 설정된 보정지수의 변경이 필요한 것으로 판단하고, 상기 상품 위치 산출 장치로부터 상기 로드셀의 기울기 정보를 수신하고, 상기 로드셀의 기울기 정보에 기초하여 상기 미리 설정된 보정지수를 변경하고, 상기 미리 설정된 보정지수가 변경되면, 상기 오류가 해소된 것으로 판단할 수 있다.In addition, when it is determined that the error has occurred, it is determined that the preset correction index needs to be changed, tilt information of the load cell is received from the product position calculation device, and the preset correction is made based on the tilt information of the load cell. When the index is changed and the preset correction index is changed, it can be determined that the error has been resolved.

이 외에도, 본 개시를 구현하기 위한 실행하기 위한 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램이 더 제공될 수 있다.In addition to this, a computer program stored in a computer-readable recording medium for execution to implement the present disclosure may be further provided.

이 외에도, 본 개시를 구현하기 위한 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 컴퓨터 판독 가능한 기록 매체가 더 제공될 수 있다.In addition, a computer-readable recording medium recording a computer program for executing a method for implementing the present disclosure may be further provided.

본 개시의 전술한 과제 해결 수단에 의하면, 로드셀의 배치 구조를 활용하여 인공지능 기반으로 상품 쇼케이스 내 배치된 상품의 위치 산출 장치를 제공하는 효과를 제공한다.According to the means for solving the above-described problem of the present disclosure, the effect of providing a device for calculating the position of a product placed in a product showcase based on artificial intelligence by utilizing the arrangement structure of a load cell is provided.

또한, 본 개시의 전술한 과제 해결 수단에 의하면, 상품 인식 알고리즘을 이용하여 인공지능 기반으로 상품 판매 개수를 산출하는 장치를 제공하는 효과를 제공한다.In addition, according to the means for solving the above-described problem of the present disclosure, it provides the effect of providing a device for calculating the number of products sold based on artificial intelligence using a product recognition algorithm.

본 개시의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The effects of the present disclosure are not limited to the effects mentioned above, and other effects not mentioned may be clearly understood by those skilled in the art from the description below.

도 1은 종래의 상품 위치 산출 장치를 예시한 도면이다.
도 2는 본 개시의 실시예에 따른 상품 위치 산출 시스템의 개략도이다.
도 3은 본 개시의 실시예에 따른 상품 위치 산출 장치의 블록도이다.
도 4는 본 개시의 실시예에 따른 상품 위치 산출 방법의 흐름도이다.
도 5는 S200의 세부 내용을 예시한 흐름도이다.
도 6은 선반의 각 라인 선상의 일측에 제1 로드셀, 타측에 제2 로드셀이 마련된 것을 예시한 도면이다.
도 7은 선반의 각 라인 선상의 일측에 제1 로드셀 및 제2 로드셀이 마련된 것을 예시한 도면이다.
도 8 및 도 9는 카메라 촬영 영상을 이용하여 S200의 산출 결과를 검증하는 것을 예시한 도면이다.
도 10 및 도 11은 라이다 센서를 통해 센싱된 센싱값을 이용하여 S200의 산출 결과를 검증하는 것을 예시한 도면이다.
도 12는 일 실시예에 따른 상품 위치 산출 장치가 서버와의 통신이 이루어지는 것을 개략적으로 나타낸 도면이다.
도 13은 일 실시예에 따른 상품 위치 산출 장치와 서버에 포함된 구성을 개략적으로 나타낸 도면이다.
도 14는 일 실시예에 따른 상품인식 알고리즘에 따른 모드전환을 나타낸 도면이다.
도 15는 일 실시예에 따른 카메라 및 무게 측정 센서를 포함한 상품 위치 산출 장치(100)의 모습을 개략적으로 나타낸 도면이다.
도 16은 일 실시예에 따른 상품 위치 산출 장치 및 서버에서 이루어지는 단계를 나타낸 순서도이다.
도 17은 일 실시예에 따른 기울기 측정 센서에 의해 로드셀의 경사각을 측정하는 모습을 개략적으로 나타낸 도면이다.
도 18은 일 실시예에 따른 모드전환이 이루어지고 오류가 해소되기까지의 과정을 알고리즘으로 나타낸 도면이다.
도 19는 일 실시예에 따른 ABS모드에 따른 절대연산이 수행되는 과정을 알고리즘으로 나타낸 도면이다.
도 20은 일 실시예에 따른 REL모드에 따른 상대연산이 수행되는 과정을 알고리즘으로 나타낸 도면이다.
도 21은 일 실시예에 따른 오류가 발생된 경우, 오류를 해소하는 과정을 알고리즘으로 나타낸 도면이다.
Figure 1 is a diagram illustrating a conventional product location calculation device.
Figure 2 is a schematic diagram of a product location calculation system according to an embodiment of the present disclosure.
Figure 3 is a block diagram of a product location calculation device according to an embodiment of the present disclosure.
Figure 4 is a flowchart of a product location calculation method according to an embodiment of the present disclosure.
Figure 5 is a flow chart illustrating the details of S200.
Figure 6 is a diagram illustrating that a first load cell is provided on one side of each line of a shelf and a second load cell is provided on the other side.
Figure 7 is a diagram illustrating that a first load cell and a second load cell are provided on one side of each line of the shelf.
Figures 8 and 9 are diagrams illustrating verification of the calculation result of S200 using camera captured images.
Figures 10 and 11 are diagrams illustrating verification of the calculation result of S200 using the sensing value sensed through the lidar sensor.
Figure 12 is a diagram schematically showing how a product location calculation device communicates with a server according to an embodiment.
Figure 13 is a diagram schematically showing the configuration included in the product location calculation device and server according to an embodiment.
Figure 14 is a diagram showing mode switching according to a product recognition algorithm according to an embodiment.
Figure 15 is a diagram schematically showing a product location calculation device 100 including a camera and a weight measurement sensor according to an embodiment.
Figure 16 is a flowchart showing steps performed in a product location calculation device and server according to an embodiment.
Figure 17 is a diagram schematically showing measuring the inclination angle of a load cell using a tilt measurement sensor according to an embodiment.
Figure 18 is a diagram illustrating an algorithm for the process from when a mode change is made to when an error is resolved according to an embodiment.
Figure 19 is a diagram illustrating an algorithm for the process of performing an absolute operation in ABS mode according to an embodiment.
Figure 20 is a diagram illustrating an algorithm for a process in which a relative operation is performed in the REL mode according to an embodiment.
Figure 21 is a diagram illustrating an algorithm for a process for resolving an error when an error occurs according to an embodiment.

본 개시의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 개시는 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 개시의 개시가 완전하도록 하고, 본 개시가 속하는 기술 분야의 통상의 기술자에게 본 개시의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 개시는 청구항의 범주에 의해 정의될 뿐이다.The advantages and features of the present disclosure and methods for achieving them will become clear by referring to the embodiments described in detail below along with the accompanying drawings. However, the present disclosure is not limited to the embodiments disclosed below and may be implemented in various different forms. The present embodiments are merely provided to ensure that the disclosure is complete and to provide a general understanding of the technical field to which the present disclosure pertains. It is provided to fully inform those skilled in the art of the scope of the present disclosure, and the present disclosure is defined only by the scope of the claims.

본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 개시를 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 개시의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.The terminology used herein is for the purpose of describing embodiments and is not intended to limit the disclosure. As used herein, singular forms also include plural forms, unless specifically stated otherwise in the context. As used in the specification, “comprises” and/or “comprising” does not exclude the presence or addition of one or more other elements in addition to the mentioned elements. Like reference numerals refer to like elements throughout the specification, and “and/or” includes each and every combination of one or more of the referenced elements. Although “first”, “second”, etc. are used to describe various components, these components are of course not limited by these terms. These terms are merely used to distinguish one component from another. Therefore, it goes without saying that the first component mentioned below may also be the second component within the technical spirit of the present disclosure.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 개시가 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless otherwise defined, all terms (including technical and scientific terms) used in this specification may be used with meanings commonly understood by those skilled in the art to which this disclosure pertains. Additionally, terms defined in commonly used dictionaries are not interpreted ideally or excessively unless clearly specifically defined.

이하, 첨부된 도면을 참조하여 본 개시의 실시예를 상세하게 설명한다.Hereinafter, embodiments of the present disclosure will be described in detail with reference to the attached drawings.

도 1은 종래의 상품 위치 산출 장치를 예시한 도면이다.Figure 1 is a diagram illustrating a conventional product location calculation device.

도 1을 참조하면, 진열 선반에 배치된 상품의 위치를 산출하는 장치가 예시되어 있으며, 이러한 종래의 장치는 로드셀 라인 상의 제품을 하나씩 인식하도록 제작된다.Referring to Figure 1, a device for calculating the position of products placed on a display shelf is illustrated, and this conventional device is manufactured to recognize products on a load cell line one by one.

즉, 미리 설정된 간격의 복수의 컬럼(Column)으로 구분된 선반에 정해진 크기의 상품이 배치되면 장치가 로드셀의 센싱값을 이용하여 상품의 배치 여부, 배치 위치를 산출하게 된다.In other words, when a product of a certain size is placed on a shelf divided into a plurality of columns at preset intervals, the device uses the sensing value of the load cell to calculate whether the product is placed and the location of the product.

따라서, 종래의 기술은 정해진 크기의 상품을 배치하는 것에만 이용 가능할 뿐, 상품의 크기가 변경되거나 종류가 변경되면 제대로 작동하지 못하는 문제점이 있다.Therefore, the conventional technology is only usable for arranging products of a certain size, and has a problem in that it does not work properly when the size or type of the product changes.

이에, 본 개시의 발명자는 다양한 형태, 무게의 상품이 선반 상에 배치되더라도 상품의 배치 여부, 배치 위치를 정확하게 산출하기 위해 본 개시에 따른 인공지능 기반의 상품 쇼케이스 내의 상품 위치 산출 장치를 제공하고자 한다.Accordingly, the inventor of the present disclosure seeks to provide a product position calculation device in a product showcase based on artificial intelligence according to the present disclosure to accurately calculate whether or not the product is placed and its location even when products of various shapes and weights are placed on the shelf. .

아래에서는 본 개시에 따른 인공지능 기반의 상품 쇼케이스 내의 상품 위치 산출 장치에 관하여 설명하도록 한다.Below, the product location calculation device in the artificial intelligence-based product showcase according to the present disclosure will be described.

도 2는 본 개시의 실시예에 따른 무인 판매 시스템(10)의 개략도이다.Figure 2 is a schematic diagram of an unmanned vending system 10 according to an embodiment of the present disclosure.

도 2를 참조하면, 본 개시의 실시예에 따른 무인 판매 시스템(10)은 위치 산출 장치(100) 및 서버(200)를 포함할 수 있다.Referring to FIG. 2, the unmanned vending system 10 according to an embodiment of the present disclosure may include a location calculation device 100 and a server 200.

본 개시의 실시예에서 무인 판매 시스템(10)은 무인 판매 장치 및 서버(200)를 포함하며, 무인 판매 장치는 본 개시의 실시예에 따른 위치 산출 장치(100)를 포함할 수 있다. 이때, 도 1에 도시된 무인 판매 시스템(10)은 하나의 예시일 뿐이며 도 1에 도시된 구성요소보다 더 적은 수의 구성요소나 더 많은 구성요소를 포함할 수도 있다.In an embodiment of the present disclosure, the unmanned vending system 10 includes an unmanned vending device and a server 200, and the unmanned vending device may include a location calculation device 100 according to an embodiment of the present disclosure. At this time, the unmanned vending system 10 shown in FIG. 1 is only an example and may include fewer or more components than the components shown in FIG. 1 .

이와 같이 구성되는 이유는 무인 판매 시스템(10)을 위해서는 무인 판매 장치가 필요하고, 무인 판매 장치가 무인으로 관리되기 위해서는 본 개시의 실시예에 따른 위치 산출 장치(100)가 필요하기 때문이다.The reason for this configuration is that an unmanned vending device is required for the unmanned vending system 10, and a location calculation device 100 according to an embodiment of the present disclosure is required to manage the unmanned vending device unmanned.

따라서, 본 개시의 실시예에서 위치 산출 장치(100)는 무인 판매 장치, 시스템(10)을 위한 구성일 수 있다.Therefore, in the embodiment of the present disclosure, the location calculation device 100 may be a configuration for the unmanned vending device, system 10.

무인 판매 장치는 특정한 종류의 상품들을 판매자 없이 판매하기 위한 장치(100)로서, 판매하고자 하는 상품들을 진열하는 진열대(예: 쇼케이스) 형태로 구성되어 상기 진열된 상품들의 출입을 감지하고 재고를 판단하여, 최종적으로 구매자의 구매 상품에 대한 결제를 수행하도록 한다.The unmanned sales device is a device 100 for selling specific types of products without a seller. It is composed of a display stand (e.g., a showcase) that displays products to be sold, and detects the entry and exit of the displayed products and determines inventory. , which ultimately allows the buyer to make payment for the purchased product.

일 실시예에 있어서, 무인 판매 장치는 상품을 구매하고자 하는 사용자(즉, 구매자)가 도어를 개폐함에 따라 내부에 진열된 상품들의 출입 여부를 감지하고, 그 결과를 서버(200)로 전송할 수 있다.In one embodiment, the unmanned vending device detects whether the products displayed inside enter or exit as the user (i.e., the buyer) who wants to purchase the product opens and closes the door, and transmits the results to the server 200. .

또한, 무인 판매 장치는 본 개시의 실시예에 따른 위치 산출 장치(100)에서 생성된 재고 정보를 수신하고 이를 이용하여 무인 판매 장치 내 각 상품의 재고를 관리할 수 있다.Additionally, the unmanned vending device can receive inventory information generated by the location calculation device 100 according to an embodiment of the present disclosure and use this to manage the inventory of each product in the unmanned vending device.

즉, 무인 판매 장치는 무인 판매를 위한 다양한 기능을 수행하는데 필요한 연산처리를 수행하여 사용자에게 결과를 제공할 수 있는 다양한 장치들이 모두 포함될 수 있다.In other words, the unmanned vending device may include a variety of devices that can perform the computational processing necessary to perform various functions for unmanned vending and provide results to the user.

예를 들어, 무인 판매 장치는 각종 기기 또는 유무선 네트워크와 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, 각종 프로그램과 데이터를 저장하기 위한 제1 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로제1 프로세서 등을 구비하는 다양한 컴퓨팅 장치, 본 개시의 위치 산출 장치(100) 등을 포함할 수 있다.For example, an unmanned vending device includes a communication device such as a communication modem for communicating with various devices or a wired or wireless network, a first memory for storing various programs and data, and a first microsecond for executing the program to perform calculations and control. It may include various computing devices including processors, etc., and the location calculation device 100 of the present disclosure.

무인 판매 장치는 내부에 상품들을 진열하는 진열대 형태로 구성될 수 있으며, 진열대 내부는 복수의 선반이 적층되는 구조로 구성될 수 있다. 또한, 복수의 선반 각각은 복수의 컬럼(column)으로 구분되고, 복수의 컬럼 각각에는 상품들을 배치할 수 있다.The unmanned sales device may be configured in the form of a display stand that displays products inside, and the interior of the display shelf may be configured with a structure in which a plurality of shelves are stacked. Additionally, each of the plurality of shelves is divided into a plurality of columns, and products can be placed in each of the plurality of columns.

무인 판매 장치 내에 배치되는 상품은 다양한 종류의 상품들을 포함할 수 있다.Products placed in an unmanned vending device may include various types of products.

본 발명의 일 실시예에 있어서, 무인 판매 장치 내에 배치되는 상품은 부피에 비해서 무게가 가벼운 상품(예: 일반 담배, 전자 담배, 과자 등)일 수 있다. 다만, 이는 하나의 예시일 뿐이고 반드시 이에 한정되는 것은 아니다.In one embodiment of the present invention, the product placed in the unmanned vending device may be a product that is light in weight compared to its volume (e.g., regular cigarettes, electronic cigarettes, snacks, etc.). However, this is only an example and is not necessarily limited to this.

일 실시예에 있어서, 무인 판매 장치 내 각 선반은 소정의 기울기를 가지도록 구성될 수 있으며, 이 경우 각 선반의 각 컬럼 상에 배치된 상품들은 상기 소정의 기울기에 의해서 선반 상의 앞쪽으로 밀려서 이동될 수 있도록 한다.In one embodiment, each shelf in the unmanned vending device may be configured to have a predetermined inclination, and in this case, products placed on each column of each shelf may be pushed and moved to the front of the shelf by the predetermined inclination. make it possible

또한, 일 실시예로, 무인 판매 장치 내 각 선반은 복수개의 탄성부재를 더 구비할 수 있다. 즉, 각 선반 상에 구분된 복수개의 컬럼에 대응하여 복수개의 탄성부재가 설치될 수 있다. 예를 들어, 선반 상의 각 컬럼마다 하나씩 탄성부재가 설치될 수 있고, 이때 탄성부재는 선반의 뒤쪽에 설치되어 선반의 앞쪽 방향으로 나아가는 힘(즉, 탄성력)을 가지는 스프링 등을 이용하여 구성될 수 있다. 다시 말해, 탄성부재는 각 컬럼 상에 배치된 가장 앞쪽의 상품이 빠질 때 마다 탄성력에 의해 각 컬럼 상에 배치된 나머지 상품들을 선반의 앞쪽으로 위치되도록 미는 힘을 가할 수 있다.Additionally, in one embodiment, each shelf in the unmanned vending machine may further include a plurality of elastic members. That is, a plurality of elastic members may be installed corresponding to a plurality of columns separated on each shelf. For example, one elastic member may be installed in each column on the shelf, and in this case, the elastic member may be constructed using a spring or the like that is installed at the back of the shelf and has a force (i.e., elastic force) that moves toward the front of the shelf. there is. In other words, the elastic member can apply a force to push the remaining products placed on each column to the front of the shelf by elastic force whenever the frontmost product placed on each column falls off.

위치 산출 장치(100)는 각 선반에 배치된 상품의 무게를 측정할 수 있는 로드셀(120)을 구비할 수 있다.The position calculation device 100 may be equipped with a load cell 120 capable of measuring the weight of products placed on each shelf.

위치 산출 장치(100)는 각 선반의 각 컬럼 상에 배치된 상품들을 촬영할 수 있는 카메라를 구비할 수 있다. 카메라는 무인 판매 장치 내의 각 선반별로 설치될 수 있으며, 각 선반에 진열된 상품들을 상부에서 대각선 방향으로 내려다보는 위치에 설치될 수 있다. 이때, 무인 판매 장치 내 선반과 선반 사이의 높이(즉, 진열대 내 각 층의 높이), 선반 상의 컬럼의 수, 상품의 너비(상품의 종류에 따라 다름, 예컨대 전자담배가 일반 담배보다 상품 너비가 클 수 있음) 등을 기반으로 카메라의 화각을 고려하여 최적의 카메라의 위치 및/또는 카메라의 개수가 정해질 수 있다. 즉, 각 층의 높이, 상품의 너비 등에 따라 하나의 카메라가 인식할 수 있는 영역(즉, 컬럼의 개수)이 제한되므로, 일 실시예로 카메라는 무인 판매 장치 내의 각 선반별로 좌측 상부 및 우측 상부에서 대각선 방향으로 내려다보는 위치에 설치될 수 있다. 예를 들어, 각 선반별로 좌측 및 우측에 각각 카메라(즉, 좌측 카메라 및 우측 카메라)가 설치될 수 있다. 다만, 이는 하나의 예시일 뿐이고 반드시 이에 한정되는 것은 아니다.The location calculation device 100 may be equipped with a camera capable of photographing products placed on each column of each shelf. The camera can be installed on each shelf in the unmanned vending machine, and can be installed in a position to look down diagonally from the top at the products displayed on each shelf. At this time, the height between shelves in the unmanned vending machine (i.e., the height of each layer within the display shelf), the number of columns on the shelf, and the width of the product (depending on the type of product; for example, electronic cigarettes have a wider product width than regular cigarettes). The optimal camera position and/or number of cameras may be determined by considering the camera's angle of view based on the camera's angle of view (may be large), etc. In other words, the area that one camera can recognize (i.e., the number of columns) is limited depending on the height of each floor, the width of the product, etc., so in one embodiment, the camera It can be installed in a position looking down diagonally. For example, cameras (i.e., a left camera and a right camera) may be installed on the left and right sides of each shelf. However, this is only an example and is not necessarily limited to this.

위치 산출 장치(100)는 각 선반별로 각 컬럼에 진열(배치)될 상품에 대한 정보(예컨대, 상품명, 상품 가격, 상품 크기 등)를 설정하고 저장할 수 있다. 일 예로, 위치 산출 장치(100)는 서버(200)로부터 각 선반별로 각 컬럼에 배치될 상품에 대한 정보를 수신할 수도 있고, 서버(200)의 요청에 따라 각 컬럼별로 배치될 상품에 대한 정보를 변경할 수도 있다.The position calculation device 100 can set and store information about products to be displayed (placed) in each column for each shelf (eg, product name, product price, product size, etc.). As an example, the location calculation device 100 may receive information about products to be placed in each column for each shelf from the server 200, and information about products to be placed in each column at the request of the server 200. You can also change .

서버(200)는 클라이언트 또는 다른 웹서버의 작업수행 요청에 대응하는 작업 결과를 도출하여 제공하는 컴퓨터 시스템, 컴퓨터 소프트웨어(웹서버 프로그램)를 포함할 수 있다. 서버(200)는 전술한 웹서버 프로그램 이외에, 웹서버상에서 동작하는 일련의 응용 프로그램(Application Program) 또는 장치(100) 내부에 구축되어 있는 각종 데이터베이스를 포함할 수 있다. 예를 들어, 서버(200)는 컴퓨터, 서버 장치 및 휴대용 단말기를 모두 포함하거나, 또는 어느 하나의 형태가 될 수 있다.The server 200 may include a computer system and computer software (web server program) that derives and provides task results corresponding to task performance requests from clients or other web servers. In addition to the web server program described above, the server 200 may include a series of application programs running on a web server or various databases built inside the device 100. For example, the server 200 may include a computer, a server device, and a portable terminal, or may take the form of any one.

여기에서, 상기 컴퓨터는 예를 들어, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(desktop), 랩톱(laptop), 태블릿 PC, 슬레이트 PC 등을 포함할 수 있다.Here, the computer may include, for example, a laptop, desktop, laptop, tablet PC, slate PC, etc. equipped with a web browser.

상기 서버 장치는 외부 장치와 통신을 수행하여 정보를 처리하는 서버)로써, 애플리케이션 서버), 컴퓨팅 서버), 데이터베이스 서버), 파일 서버), 게임 서버), 메일 서버), 프록시 서버) 및 웹 서버) 등을 포함할 수 있다.The server device is a server that processes information by communicating with external devices, such as application server), computing server), database server), file server), game server), mail server), proxy server), and web server). It may include etc.

상기 휴대용 단말기는 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), WiBro(Wireless Broadband Internet) 단말, 스마트 폰(Smart Phone) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치와 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(head-mounted-device(HMD) 등과 같은 웨어러블 장치를 포함할 수 있다.The portable terminal is, for example, a wireless communication device that guarantees portability and mobility, such as PCS (Personal Communication System), GSM (Global System for Mobile communications), PDC (Personal Digital Cellular), PHS (Personal Handyphone System), and PDA. (Personal Digital Assistant), IMT (International Mobile Telecommunication)-2000, CDMA (Code Division Multiple Access)-2000, W-CDMA (W-Code Division Multiple Access), WiBro (Wireless Broadband Internet) terminal, smart phone ), all types of handheld wireless communication devices, and wearable devices such as watches, rings, bracelets, anklets, necklaces, glasses, contact lenses, or head-mounted-device (HMD). may include.

서버(200)는 네트워크를 경유하여 매장 별로 적어도 하나 이상의 무인 판매 장치와 연동할 수 있다. 일 예로, 서버(200)는 무인 판매 장치에서 판매되는 상품들에 대한 정보(예컨대, 전체 상품별 개수, 각 상품의 가격, 각 상품의 크기, 각 상품의 진열 위치, 식별 정보, 상품의 상/하/좌/우 이미지 등)를 관리할 수 있다. 서버(200)는 무인 판매 장치로 각 컬럼별로 배치될 상품에 대한 정보(예컨대, 상품명, 상품 가격, 상품 크기 등)를 전송하여 무인 판매 장치 내에 설정되도록 할 수 있다. The server 200 may link with at least one unmanned vending device for each store via a network. As an example, the server 200 may provide information about products sold in an unmanned sales device (e.g., total number of products, price of each product, size of each product, display position of each product, identification information, top/bottom of product). /left/right images, etc.) can be managed. The server 200 can transmit information about products to be placed in each column (eg, product name, product price, product size, etc.) to the unmanned vending device to be set in the unmanned vending device.

서버(200)는 구매자가 무인 판매 장치의 도어 개폐를 통해 외부로 반출시킨 구매 상품에 대한 정보(예: 구매 상품의 상품명, 개수 등)를 무인 판매 장치로부터 수신하고, 이를 기반으로 상기 구매자의 구매 상품에 대한 결제 금액을 산출하여 결제장치로 전송할 수 있다. 이후, 구매자는 결제장치를 통해 구매한 상품에 대한 결제를 수행할 수 있다.The server 200 receives information about the purchased product (e.g., product name, number of purchased products, etc.) of the purchased product that the purchaser has taken out by opening and closing the door of the unmanned vending device, from the unmanned vending device, and based on this, the purchaser's purchase. The payment amount for the product can be calculated and transmitted to the payment device. Afterwards, the buyer can pay for the purchased product through the payment device.

한편, 네트워크는 서버 및 적어도 하나 이상의 무인 판매 장치 간의 다양한 정보를 송수신할 수 있다. 네트워크는 다양한 형태의 통신망이 이용될 수 있으며, 예컨대, WLAN(Wireless LAN), 와이파이(Wi-Fi), 와이브로(Wibro), 와이맥스(Wimax), HSDPA(High Speed Downlink Packet Access) 등의 무선 통신방식 또는 이더넷(Ethernet), xDSL(ADSL, VDSL), HFC(Hybrid Fiber Coax), FTTC(Fiber to The Curb), FTTH(Fiber To The Home) 등의 유선 통신방식이 이용될 수 있다.Meanwhile, the network can transmit and receive various information between the server and at least one unmanned vending device. Various types of communication networks may be used, for example, wireless communication methods such as WLAN (Wireless LAN), Wi-Fi, Wibro, Wimax, and HSDPA (High Speed Downlink Packet Access). Alternatively, wired communication methods such as Ethernet, xDSL (ADSL, VDSL), HFC (Hybrid Fiber Coax), FTTC (Fiber to The Curb), and FTTH (Fiber To The Home) may be used.

네트워크는 상기에 제시된 통신방식에 한정되는 것은 아니며, 상술한 통신방식 이외에도 기타 널리 공지되었거나 향후 개발될 모든 형태의 통신 방식을 포함할 수 있다.The network is not limited to the communication methods presented above, and may include all other types of communication methods that are well known or will be developed in the future in addition to the communication methods described above.

도 2를 통해 설명한 바와 같이, 본 개시의 실시예에 따른 위치 산출 장치(100)는 최종적으로는 무인 판매 장치가 무인으로 운영되기 위해 재고를 관리하는 장치(100)로, 아래에서는 다른 도면들을 참조하여 위치 산출 장치(100)의 구성들의 상세한 설명과 재고 관리에 대한 제1 프로세서(110)의 제어 방법에 대해서 설명하도록 한다.As explained through FIG. 2, the location calculation device 100 according to an embodiment of the present disclosure is ultimately a device 100 that manages inventory so that the unmanned sales device can be operated unmanned. Refer to other drawings below. Hereinafter, a detailed description of the components of the location calculation device 100 and a control method of the first processor 110 for inventory management will be described.

도 3은 본 개시의 실시예에 따른 상품 위치 산출 장치(100)의 블록도이다.Figure 3 is a block diagram of a product location calculation device 100 according to an embodiment of the present disclosure.

도 3을 참조하면, 인공지능 기반의 상품 쇼케이스 내의 상품 위치 산출 장치(100)는 제1 프로세서(110), 로드셀(120), 산출부(130), 검증부(140), 제1 메모리(150), 카메라(160), 라이다 센서(170) 및 제1 통신부(180)를 포함한다. 다만, 몇몇 실시예에서 상품 위치 산출 장치(100)는 도 2에 도시된 구성요소보다 더 적은 수의 구성요소나 더 많은 구성요소를 포함할 수도 있다.Referring to FIG. 3, the product location calculation device 100 in the artificial intelligence-based product showcase includes a first processor 110, a load cell 120, a calculation unit 130, a verification unit 140, and a first memory 150. ), a camera 160, a LiDAR sensor 170, and a first communication unit 180. However, in some embodiments, the product location calculation device 100 may include fewer or more components than the components shown in FIG. 2 .

본 개시의 실시예에 따른 장치(100)에서 로드셀(120)은 복수개가 구비되며, 상세하게는 장치(100)는 복수의 컬럼(Column)으로 구분된 진열대의 선반에 배치된 상품의 위치를 센싱하기 위한 복수의 로드셀(120)을 포함한다.In the device 100 according to an embodiment of the present disclosure, a plurality of load cells 120 are provided, and in detail, the device 100 senses the positions of products placed on the shelves of a display stand divided into a plurality of columns. It includes a plurality of load cells 120 to do this.

또한, 복수의 로드셀(120)은 복수의 컬럼을 각각 구분하기 위한 각 라인 선상에 둘 이상이 배치된다.Additionally, two or more load cells 120 are disposed on each line to separate the plurality of columns.

그리고, 각 라인 선상에 제1 로드셀(121)과 제2 로드셀(122)의 배치 방식과 배치 방식에 따른 위치 산출 방법에 따라서 상품의 위치 산출 방법이 제1 실시예, 제2 실시예로 구분될 수 있다.In addition, the method of calculating the position of the product can be divided into the first embodiment and the second embodiment according to the arrangement method of the first load cell 121 and the second load cell 122 on each line and the position calculation method according to the arrangement method. You can.

산출부(130)는 상품의 위치를 산출하기 위한 알고리즘, 명령어가 저장되어 있으며, 대표적으로는 제1 실시예에서 제1 로드셀(121) 및 제2 로드셀(122)에서 센싱된 센싱값을 내분 계산하여 상품의 위치 정보를 산출하는 알고리즘, 제2 실시예에서 제1 로드셀(121) 및 제2 로드셀(122)에서 센싱된 센싱값을 외분 계산하여 상품의 위치 정보를 산출하는 알고리즘을 포함할 수 있다.The calculation unit 130 stores algorithms and commands for calculating the position of the product, and typically performs internal calculation of the sensing values sensed by the first load cell 121 and the second load cell 122 in the first embodiment. In the second embodiment, an algorithm that calculates the location information of the product may be included, and an algorithm that calculates the location information of the product by calculating the outer product of the sensing values sensed by the first load cell 121 and the second load cell 122. .

따라서, 제1 프로세서(110)는 산출부(130)를 제어하여 선반에 배치된 상품의 제1 위치 정보를 산출할 수 있다.Accordingly, the first processor 110 can control the calculation unit 130 to calculate the first location information of the product placed on the shelf.

검증부(140)는 산출부(130)에서 산출된 결과를 검증할 수 있다.The verification unit 140 may verify the results calculated by the calculation unit 130.

이때, 검증부(140)는 선반을 촬영하는 카메라(160)의 촬영 영상, 라이다 센서(170)의 센싱 데이터를 이용하여 산출 결과를 검증할 수 있다.At this time, the verification unit 140 may verify the calculation result using the captured image of the camera 160 that photographs the shelf and the sensing data of the LiDAR sensor 170.

제1 메모리(150)는 상품 위치 산출 장치(100)를 구동하기 위한 각종 알고리즘, 명령어, 인공지능 모델 등이 저장될 수 있다.The first memory 150 may store various algorithms, commands, artificial intelligence models, etc. for driving the product location calculation device 100.

또한, 제1 메모리(150)는 현재 장치(100) 내에 배치된 상품의 리스트, 상품의 개수가 저장될 수 있고, 각 선반에 배치되는 상품의 리스트와 각 상품의 무게, 형상 정보가 저장될 수 있다.In addition, the first memory 150 can store a list of products currently placed in the device 100 and the number of products, and can store a list of products placed on each shelf and the weight and shape information of each product. there is.

제1 메모리(150)는 본 장치의 다양한 기능을 지원하는 데이터와, 제어부의 동작을 위한 프로그램을 저장할 수 있고, 입/출력되는 데이터들(예를 들어, 음악 파일, 정지영상, 동영상 등)을 저장할 있고, 본 장치에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션(application)), 본 장치의 동작을 위한 데이터들, 명령어들을 저장할 수 있다. 이러한 응용 프로그램 중 적어도 일부는, 무선 통신을 통해 외부 서버로부터 다운로드 될 수 있다. The first memory 150 can store data supporting various functions of the device and programs for the operation of the control unit, and stores input/output data (e.g., music files, still images, videos, etc.). A number of application programs (application programs or applications) running on the device, data for operation of the device, and commands can be stored. At least some of these applications may be downloaded from an external server via wireless communication.

이러한, 제1 메모리(150)는 플래시 제1 메모리(150) 타입(flash memory type), 하드디스크 타입(hard disk type), SSD 타입(Solid State Disk type), SDD 타입(Silicon Disk Drive type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 제1 메모리(150)(예를 들어 SD 또는 XD 제1 메모리(150) 등), 램(random access memory; RAM), SRAM(static random access memory), 롬(read-only memory; ROM), EEPROM(electrically erasable programmable read-only memory), PROM(programmable read-only memory), 자기 제1 메모리(150), 자기 디스크 및 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 또한, 제1 메모리(150)는 본 장치와는 분리되어 있으나, 유선 또는 무선으로 연결된 데이터베이스가 될 수도 있다.The first memory 150 may be a flash first memory 150 type, a hard disk type, a solid state disk type, an SDD type, or a silicon disk drive type. Multimedia card micro type, card type first memory 150 (e.g. SD or XD first memory 150, etc.), random access memory (RAM), static random access (SRAM) memory), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), programmable read-only memory (PROM), magnetic first memory 150, at least one type of magnetic disk and optical disk. It may include storage media. Additionally, the first memory 150 is separate from the main device, but may be a database connected by wire or wirelessly.

검증부(140)는 이와 같이 제1 메모리(150)에 저장되어 있는 상품의 무게, 형상 정보를 함께 이용하여 산출부(130)의 산출 결과에 대한 검증을 수행할 수 있다.In this way, the verification unit 140 can use the weight and shape information of the product stored in the first memory 150 to verify the calculation result of the calculation unit 130.

카메라(160)는 각 선반에 하나 이상 설치될 수 있으며, 선반의 적어도 일부 영역이 촬영 가능하도록 선반의 상부에 설치될 수 있다.One or more cameras 160 may be installed on each shelf, and may be installed on the upper part of the shelf so that at least a portion of the shelf can be photographed.

보다 상세하게는, 본 개시의 실시예에서 카메라(160)는 각 선반에 적어도 하나가 설치되되, 복수의 서로 다른 화각으로 선반을 촬영하여 촬영 이미지를 생성할 수 있다.More specifically, in an embodiment of the present disclosure, at least one camera 160 is installed on each shelf, and can generate captured images by photographing the shelves at a plurality of different viewing angles.

라이다 센서(170)는 선반의 양 측면에 각각 마련될 수 있으며, 제1 프로세서(110)의 제어에 따라 선반 방향을 센싱하여 센싱값을 생성할 수 있다.The LiDAR sensor 170 may be provided on both sides of the shelf, and may generate a sensing value by sensing the direction of the shelf under the control of the first processor 110.

상기 구성요소들 중 제1 통신부(180)는 외부 장치와 통신을 가능하게 하는 하나 이상의 구성 요소를 포함할 수 있으며, 예를 들어, 방송 수신 모듈, 유선통신 모듈, 무선통신 모듈, 근거리 통신 모듈, 위치정보 모듈 중 적어도 하나를 포함할 수 있다.Among the components, the first communication unit 180 may include one or more components that enable communication with an external device, for example, a broadcast reception module, a wired communication module, a wireless communication module, a short-range communication module, It may include at least one of the location information modules.

제1 프로세서(110)는 상품 위치 산출 장치(100), 무인 판매 장치 내 구성들의 제어를 담당하며, 알고리즘, 명령어, 인공지능 모델을 이용하여 상품 위치 산출 방법, 무인 판매 방법을 실행할 수 있다.The first processor 110 is responsible for controlling the product location calculation device 100 and components within the unmanned vending device, and can execute a product location calculation method and an unmanned vending method using algorithms, commands, and artificial intelligence models.

제1 프로세서(110)는 본 장치 내의 구성요소들의 동작을 제어하기 위한 알고리즘 또는 알고리즘을 재현한 프로그램에 대한 데이터를 저장하는 제1 메모리, 및 제1 메모리에 저장된 데이터를 이용하여 전술한 동작을 수행하는 적어도 하나의 제1 프로세서로 구현될 수 있다. 이때, 제1 메모리와 제1 프로세서는 각각 별개의 칩으로 구현될 수 있다. 또는, 제1 메모리와 제1 프로세서는 단일 칩으로 구현될 수도 있다.The first processor 110 performs the above-described operations using a first memory that stores data for an algorithm for controlling the operation of components in the device or a program that reproduces the algorithm, and the data stored in the first memory. may be implemented with at least one first processor. At this time, the first memory and the first processor may each be implemented as separate chips. Alternatively, the first memory and the first processor may be implemented as a single chip.

또한, 제1 프로세서(110)는 이하의 도 2 내지 도 N에서 설명되는 본 개시에 따른 다양한 실시 예들을 본 장치 상에서 구현하기 위하여, 위에서 살펴본 구성요소들을 중 어느 하나 또는 복수를 조합하여 제어할 수 있다.In addition, the first processor 110 may control any one or a combination of the above-described components in order to implement various embodiments according to the present disclosure described in FIGS. 2 to N below on the present device. there is.

센싱부는 본 장치의 내 정보, 본 장치를 둘러싼 주변 환경 정보 및 사용자 정보 중 적어도 하나를 센싱하고, 이에 대응하는 센싱 신호를 발생시킨다. 제어부는 이러한 센싱 신호에 기초하여, 본 장치의 구동 또는 동작을 제어하거나, 본 장치에 설치된 응용 프로그램과 관련된 데이터 처리, 기능 또는 동작을 수행할 수 있다.The sensing unit senses at least one of the device's internal information, surrounding environment information surrounding the device, and user information, and generates a corresponding sensing signal. Based on these sensing signals, the control unit can control the driving or operation of the device, or perform data processing, functions, or operations related to an application program installed on the device.

본 개시의 실시예에서 로드셀(120), 카메라(160), 라이다 센서(170)는 센싱부의 구성으로 포함될 수 있다.In an embodiment of the present disclosure, the load cell 120, camera 160, and lidar sensor 170 may be included in the sensing unit.

상기와 같은, 센싱부는 근접센서(proximity sensor), 조도 센서(illumination sensor), 터치 센서(touch sensor), 가속도 센서(acceleration sensor), 자기 센서(magnetic sensor), 중력 센서(G-sensor), 자이로스코프 센서(gyroscope sensor), 모션 센서(motion sensor), RGB 센서, 적외선 센서(IR 센서: infrared sensor), 지문인식 센서(finger scan sensor), 초음파 센서(ultrasonic sensor), 광 센서(optical sensor, 예를 들어, 카메라), 마이크로폰, 환경 센서(예를 들어, 기압계, 습도계, 온도계, 방사능 감지 센서, 열 감지 센서, 가스 감지 센서 중 적어도 하나를 포함함), 화학 센서(예를 들어, 헬스케어 센서, 생체 인식 센서 등) 중 적어도 하나를 포함할 수 있다. 한편, 본 장치는, 이러한 센서들 중 적어도 둘 이상의 센서에서 센싱되는 정보들을 조합하여 활용할 수 있다.As described above, the sensing unit includes a proximity sensor, an illumination sensor, a touch sensor, an acceleration sensor, a magnetic sensor, a gravity sensor (G-sensor), and a gyro. Gyroscope sensor, motion sensor, RGB sensor, IR sensor (infrared sensor), finger scan sensor, ultrasonic sensor, optical sensor, e.g. For example, a camera), a microphone, an environmental sensor (e.g., including at least one of a barometer, a hygrometer, a thermometer, a radiation detection sensor, a heat detection sensor, and a gas detection sensor), a chemical sensor (e.g., a healthcare sensor) , biometric sensors, etc.) may be included. Meanwhile, this device can utilize information sensed by at least two of these sensors by combining them.

몇몇 실시예에서, 제1 프로세서(110)는 카메라(160)에서 촬영된 이미지를 획득하는 이미지 획득부, 획득된 이미지를 분석하여 상품을 인식하는 상품 인식부, 그리고 상품의 위치가 변경된 것을 감지하고 변경된 위치를 판단/산출하는 위치변경 판단부를 더 포함할 수 있다. 또한, 제1 프로세서(110)는 산출부(130)를 이용하여 선반에 배치된 상품의 개수를 산출할 수 있다.In some embodiments, the first processor 110 includes an image acquisition unit that acquires an image captured by the camera 160, a product recognition unit that analyzes the acquired image to recognize the product, and detects that the location of the product has changed. It may further include a location change determination unit that determines/calculates the changed location. Additionally, the first processor 110 may use the calculation unit 130 to calculate the number of products placed on the shelf.

도 4는 본 개시의 실시예에 따른 상품 위치 산출 방법의 흐름도이다.Figure 4 is a flowchart of a product location calculation method according to an embodiment of the present disclosure.

도 5는 S200의 세부 내용을 예시한 흐름도이다.Figure 5 is a flow chart illustrating the details of S200.

제1 프로세서(110)가 선반에 상품이 배치된 것을 감지한다. (S100)The first processor 110 detects that a product is placed on the shelf. (S100)

본 개시의 실시예에서 선반에 마련되어 있는 복수의 로드셀(120)은 영점이 조절된 상태로 선반 위에 상품이 배치되어 있지 않은 경우, 모든 로드셀(120)은 센싱값이 "0"으로 센싱될 수 있다.In an embodiment of the present disclosure, when the zero point of the plurality of load cells 120 provided on the shelf is adjusted and no product is placed on the shelf, all load cells 120 may sense a sensing value of “0”. .

그리고, 선반에 적어도 하나의 상품이 배치되면 적어도 하나의 로드셀(120)에서 "0"이 아닌 값이 센싱되며, 이때 제1 프로세서(110)는 선반에 상품이 배치된 것으로 판단할 수 있다.Also, when at least one product is placed on the shelf, a value other than “0” is sensed in at least one load cell 120, and at this time, the first processor 110 may determine that the product is placed on the shelf.

하지만, 이에 한정되는 것은 아니며 무인 판매 장치에 마련된 센서에서 사람이 선반에 상품을 배치하는 동작이 센싱되는 경우, 제1 프로세서(110)는 S100을 실행할 수 있다. 이와 같이 동작하는 경우 제1 프로세서(110)는 선반의 로드셀(120)을 슬립(Sleep) 모드에서 웨이크업(Wake up) 모드로 전환하여 로드셀(120)이 동작을 시작하도록 제어할 수 있다.However, it is not limited to this, and when a sensor provided in the unmanned vending machine senses a person placing a product on a shelf, the first processor 110 may execute S100. In this case, the first processor 110 can control the load cell 120 of the lathe to start operating by switching it from sleep mode to wake up mode.

제1 프로세서(110)가 선반에 배치된 상품의 위치 정보를 산출한다. (S200)The first processor 110 calculates location information of products placed on the shelf. (S200)

제1 프로세서(110)가 복수의 로드셀(120)에서 센싱되는 센싱값 및 센싱값을 센싱한 복수의 로드셀(120) 각각의 위치 정보를 기반으로 선반에 배치된 상품의 제1 위치 정보를 산출한다.The first processor 110 calculates the first position information of the product placed on the shelf based on the sensing value sensed by the plurality of load cells 120 and the position information of each of the plurality of load cells 120 that sensed the sensing values. .

상세하게는, 제1 프로세서(110)는 선반에 상품이 배치되어 적어도 하나의 로드셀(120)에서 "0"이 아닌 값이 센싱되는 경우, "0"이 아닌 센싱값이 센싱된 로드셀(120)의 위치 정보와 해당 로드셀(120)에서 센싱된 센싱값을 기반으로 제1 위치 정보 및 무게 중 적어도 하나를 산출할 수 있다.In detail, when a product is placed on a shelf and a value other than “0” is sensed in at least one load cell 120, the first processor 110 detects a value other than “0” in the load cell 120. At least one of first position information and weight can be calculated based on the position information and the sensing value sensed by the corresponding load cell 120.

아래에서는 S200 프로세스를 보다 상세하게 설명하도록 한다.Below, the S200 process is explained in more detail.

도 6은 선반의 각 라인 선상의 일측에 제1 로드셀(121), 타측에 제2 로드셀(122)이 마련된 것을 예시한 도면이다.Figure 6 is a diagram illustrating that a first load cell 121 is provided on one side of each line of a shelf, and a second load cell 122 is provided on the other side.

본 개시의 제1 실시예에서 복수의 로드셀(120)은 각 라인 선상의 일측에 제1 로드셀(121)이 마련되고, 각 라인 선상의 타측에 제2 로드셀(122)이 마련된다.In the first embodiment of the present disclosure, the plurality of load cells 120 are provided with a first load cell 121 on one side of each line and a second load cell 122 on the other side of each line.

제1 프로세서(110)는 각 라인 선상의 제1 로드셀(121) 및 제2 로드셀(122)에서 센싱된 센싱값을 내분 계산하여 선반에 배치된 상품의 제1 위치 정보를 산출할 수 있다.The first processor 110 may calculate the first position information of the product placed on the shelf by internally calculating the sensing values sensed by the first load cell 121 and the second load cell 122 on each line.

도 6을 참조하면, 선반 상에 8개의 라인이 예시되어 있으며, 8개의 라인 일측(도 6에서 상측) 각각에 제1 로드셀(121)이 마련되어 있고, 8개의 라인 타측(도 6에서 하측) 각각에 제2 로드셀(122)이 마련되어 있다.Referring to FIG. 6, eight lines are illustrated on a shelf, and a first load cell 121 is provided on one side of each of the eight lines (upper side in FIG. 6), and a first load cell 121 is provided on each of the other sides of the eight lines (lower side in FIG. 6). A second load cell 122 is provided.

제1 프로세서(110)는 제1 로드셀(121-1, 121-2, 121-3)에서 "8"이 센싱되었고, 제2 로드셀(122-1, 122-2, 122-3)에서 "4"가 센싱되었기 때문에 좌측에서 4번째, 5번째, 6번째 라인 선상에 상품이 배치된 것으로 판단할 수 있다.The first processor 110 sensed “8” from the first load cells (121-1, 121-2, and 121-3) and “4” from the second load cells (122-1, 122-2, and 122-3). Since " was sensed, it can be determined that the product was placed on the 4th, 5th, and 6th lines from the left.

이에 대하여, 제1 프로세서(110)는 상품의 x축 상의 배치값을 산출할 수 있으며, 도 6에서 상품의 x축 상의 배치값은 4, 5, 6으로 산출될 수 있다.In response, the first processor 110 can calculate the placement value of the product on the x-axis, and in FIG. 6, the placement value of the product on the x-axis can be calculated as 4, 5, and 6.

그리고, 제1 프로세서(110)는 상품이 제1 로드셀(121) 및 제2 로드셀(122)에서 센싱된 센싱값을 내분(내분점 공식) 계산하여 상품의 제1 위치 정보를 산출할 수 있다.In addition, the first processor 110 may calculate the first location information of the product by calculating the sensing value sensed by the product in the first load cell 121 and the second load cell 122 (internal division point formula).

일 실시예로, 제1 프로세서(110)는 제1 로드셀(121) 및 제2 로드셀(122)에서 센싱된 센싱값을 내분점 공식으로 계산하여 선반에 배치된 상품의 제1 위치 정보(예: 좌표)를 산출하는 방식이라면 무엇이든 적용 가능하다.In one embodiment, the first processor 110 calculates the sensing values sensed by the first load cell 121 and the second load cell 122 using an internal point formula to provide first location information (e.g., coordinates) of the product placed on the shelf. ) Any method of calculating can be applied.

일 예로, 제1 프로세서(110)는 수학식 1을 기반으로 상품의 제1 위치 정보를 산출할 수 있다.As an example, the first processor 110 may calculate the first location information of the product based on Equation 1.

상품의 위치 정보 = (na + mb) / (m + n), (m: 제1 로드셀 센싱값, n: 제2 로드셀 센싱값, a: 제1 로드셀 좌표, b: 제2 로드셀 좌표)Product location information = (na + mb) / (m + n), (m: 1st load cell sensing value, n: 2nd load cell sensing value, a: 1st load cell coordinates, b: 2nd load cell coordinates)

이때, 상품이 여러 컬럼에 걸쳐 배치된 경우, 자판기, 냉장고 선반의 특성상 측정/센싱되는 무게값이 컬럼마다 다를 수 있다. 일 실시예로, 제1 프로세서(110)는 컬럼별 무게의 차이가 임계치 이하인 경우 동일한 물체로 인식하고 처리할 수 있다.At this time, when products are arranged across multiple columns, the measured/sensed weight value may be different for each column due to the characteristics of vending machine and refrigerator shelves. In one embodiment, the first processor 110 may recognize and process the objects as the same when the difference in weight between columns is less than a threshold.

도 7은 선반의 각 라인 선상의 일측에 제1 로드셀(121) 및 제2 로드셀(122)이 마련된 것을 예시한 도면이다.Figure 7 is a diagram illustrating that the first load cell 121 and the second load cell 122 are provided on one side of each line of the shelf.

도 7을 참조하면, 선반 상의 8개의 라인이 예시되어 있으며, 8개의 라인 일측(도 7의 상측) 각각에 제1 로드셀(121) 및 제2 로드셀(122)이 마련되어 있다.Referring to FIG. 7, eight lines on a shelf are illustrated, and a first load cell 121 and a second load cell 122 are provided on each side of the eight lines (upper side in FIG. 7).

제1 프로세서(110)는 제1 로드셀(121-1, 121-2, 121-3)에서 "8"이 센싱되었고, 제2 로드셀(122-1, 122-2, 122-3)에서 "4"가 센싱되었기 때문에 좌측에서 4번째, 5번째, 6번째 라인 선상에 상품이 배치된 것으로 판단할 수 있다.The first processor 110 sensed “8” from the first load cells (121-1, 121-2, and 121-3) and “4” from the second load cells (122-1, 122-2, and 122-3). Since " was sensed, it can be determined that the product was placed on the 4th, 5th, and 6th lines from the left.

이에 대하여, 제1 프로세서(110)는 상품의 x축 상의 배치값을 산출할 수 있으며, 도 6에서 상품의 x축 상의 배치값은 4, 5, 6으로 산출될 수 있다.In response, the first processor 110 can calculate the placement value of the product on the x-axis, and in FIG. 6, the placement value of the product on the x-axis can be calculated as 4, 5, and 6.

그리고, 제1 프로세서(110)는 상품이 제1 로드셀(121) 및 제2 로드셀(122)에서 센싱된 센싱값을 외분(외분점 공식) 계산하여 상품의 제1 위치 정보를 산출할 수 있다.In addition, the first processor 110 may calculate the first position information of the product by calculating the external differentiation (external point formula) of the sensing value of the product sensed by the first load cell 121 and the second load cell 122.

일 실시예로, 제1 프로세서(110)는 제1 로드셀(121) 및 제2 로드셀(122)에서 센싱된 센싱값을 외분점 공식으로 계산하여 선반에 배치된 상품의 제1 위치 정보(예: 좌표)를 산출하는 방식이라면 무엇이든 적용 가능하다.In one embodiment, the first processor 110 calculates the sensing values sensed by the first load cell 121 and the second load cell 122 using an extrinsic point formula to provide first location information (e.g., coordinates) of the product placed on the shelf. ) Any method of calculating can be applied.

일 예로, 제1 프로세서(110)는 수학식 2를기반으로 상품의 제1 위치 정보를 산출할 수 있다.As an example, the first processor 110 may calculate the first location information of the product based on Equation 2.

상품의 제1 위치 정보 = (mb - na) / (m - n), (m: 제1 로드셀 센싱값, n: 제2 로드셀 센싱값, a: 제1 로드셀 좌표, b: 제2 로드셀 좌표)First location information of product = (mb - na) / (m - n), (m: first load cell sensing value, n: second load cell sensing value, a: first load cell coordinates, b: second load cell coordinates)

제1 실시예와 같이 본 개시를 적용하는 경우, 로드셀(120)을 라인의 양쪽에 배치할 수 있게 된다. 그리고, 제2 실시예와 같이 본 개시를 적용하는 경우에는 로드셀(120)을 라인의 한쪽 끝에 배치할 수 있게 된다.When applying the present disclosure as in the first embodiment, the load cell 120 can be placed on both sides of the line. Also, when applying the present disclosure as in the second embodiment, the load cell 120 can be placed at one end of the line.

최종적으로 제1 실시예와 제2 실시예에서 생성되는 결과는 동일하며, 선반의 특성, 선반이 적용되는 장치(냉장고, 진열대 등)의 특성을 고려하여 발명의 실시자가 용이하게 선택할 수 있다.Ultimately, the results produced in the first and second embodiments are the same, and the practitioner of the invention can easily select one by considering the characteristics of the shelf and the characteristics of the device to which the shelf is applied (refrigerator, display stand, etc.).

제1 프로세서(110)가 S200의 산출 결과를 검증한다. (S300)The first processor 110 verifies the calculation result of S200. (S300)

도 8 및 도 9는 카메라(160) 촬영 영상을 이용하여 S200의 산출 결과를 검증하는 것을 예시한 도면이다.Figures 8 and 9 are diagrams illustrating verification of the calculation result of S200 using images captured by the camera 160.

본 개시의 실시예에서 S200의 산출 결과를 검증하는 것은 다양한 방식이 적용 가능하며, 하나의 방식이 적용될 수도 있고 다양한 방식이 혼합되어 적용될 수도 있다.In the embodiment of the present disclosure, various methods can be applied to verify the calculation result of S200, and a single method may be applied or a mixture of various methods may be applied.

도 8 및 도 9를 참조하면, 제1 프로세서(110)가 상품이 배치된 선반에 대한 복수의 카메라(160) 촬영 영상을 획득한다. (S310)Referring to FIGS. 8 and 9 , the first processor 110 acquires images captured by a plurality of cameras 160 of a shelf on which a product is placed. (S310)

제1 프로세서(110)가 S310에서 획득된 복수의 촬영 이미지를 기반으로 S200의 산출 결과를 검증한다. (S330)The first processor 110 verifies the calculation result of S200 based on the plurality of captured images acquired in S310. (S330)

일 실시예로, 선반은 선반의 적어도 일부 영역을 복수의 서로 다른 화각으로 촬영 가능한 적어도 하나의 카메라(160)가 설치되어 있다.In one embodiment, the shelf is equipped with at least one camera 160 capable of photographing at least a portion of the shelf at a plurality of different angles of view.

제1 프로세서(110)는 카메라(160)가 복수의 서로 다른 화각으로 선반을 촬영하여 복수의 촬영 이미지를 생성하도록 제어한다. 제1 프로세서(110)는 S200에서 산출된 상품의 제1 위치 정보를 복수의 촬영 이미지와 매칭하여 상품의 제1 위치 정보 산출 결과를 검증할 수 있다.The first processor 110 controls the camera 160 to generate a plurality of captured images by photographing the shelf at a plurality of different angles of view. The first processor 110 may verify the calculation result of the first location information of the product by matching the first location information of the product calculated in S200 with a plurality of captured images.

일 실시예로, 제1 프로세서(110)는 복수의 촬영 이미지를 기반으로 상품의 이미지 제2 위치 정보(카메라 영상을 기반으로 산출된 위치 정보)를 산출하고, 산출된 이미지 제2 위치 정보와 산출된 제1 위치 정보(로드셀 센싱값을 기반으로 산출된 위치 정보)의 일치 여부를 판단할 수 있다.In one embodiment, the first processor 110 calculates product image second location information (location information calculated based on camera images) based on a plurality of captured images, and calculates the calculated image second location information and It can be determined whether the first location information (position information calculated based on the load cell sensing value) matches.

일 실시예로, 선반은 기 설정된 복수의 지점에 선반 상의 위치(예: 좌표)를 인식할 수 있는 마커가 형성될 수 있다.In one embodiment, a shelf may have markers capable of recognizing a position (eg, coordinates) on the shelf at a plurality of preset points.

제1 프로세서(110)는 서로 다른 화각으로 촬영된 복수의 선반 촬영 이미지 내에서 상품의 이미지와 마커를 인식하고, 상품의 선반 상의 제2 위치 정보를 산출할 수 있다.The first processor 110 may recognize the image and marker of the product in a plurality of shelf images taken at different angles of view and calculate second position information on the shelf of the product.

일 실시예로, 제1 프로세서(110)는 복수의 선반 촬영 이미지에서 식별되지 않는 마커의 위치에 상품이 배치되어 있는 것으로 인식하여 상품의 제2 위치 정보를 산출할 수 있다.In one embodiment, the first processor 110 may recognize that a product is placed at the location of an unidentified marker in a plurality of shelf photographed images and calculate second location information for the product.

일 예로, 선반에 1~100의 마커가 존재하고, 복수의 선반 촬영 이미지에서 10~15, 20~25, 30~35 마커가 식별되지 않는 경우 해당 마커들이 존재하는 위치에 상품이 배치된 것으로 제2 위치 정보를 산출할 수 있다.For example, if there are markers 1 to 100 on a shelf, and markers 10 to 15, 20 to 25, and 30 to 35 are not identified in multiple shelf images, the product is considered to have been placed at the location where the corresponding markers exist. 2 Location information can be calculated.

이때, 제1 프로세서(110)는 인접하지 않은 둘 이상의 마커가 식별되지 않는 경우 카메라(160) 촬영이 잘못되었거나, 선반 상에 복수의 상품이 배치된 것으로 인식하고 오류 신호를 발생시킬 수 있다.At this time, if two or more non-adjacent markers are not identified, the first processor 110 may recognize that the camera 160 captured the product incorrectly or that multiple products are placed on the shelf and generate an error signal.

도 10 및 도 11은 라이다 센서(170)를 통해 센싱된 센싱값을 이용하여 S200의 산출 결과를 검증하는 것을 예시한 도면이다.Figures 10 and 11 are diagrams illustrating verification of the calculation result of S200 using the sensing value sensed through the lidar sensor 170.

일 실시예로, 선반은 양 측면 각각에 라이다 센서(170)가 마련/설치되어 있다.In one embodiment, a LiDAR sensor 170 is provided/installed on both sides of the shelf.

제1 프로세서(110)가 라이다 센서(170)를 통해 센싱된 센싱값을 획득한다. (S350)The first processor 110 acquires the sensing value sensed through the LiDAR sensor 170. (S350)

제1 프로세서(110)가 라이다 센서(170)의 센싱값을 기반으로 S200의 산출 결과를 검증한다. (S370)The first processor 110 verifies the calculation result of S200 based on the sensing value of the LiDAR sensor 170. (S370)

제1 프로세서(110)는 양 측면의 라이다 센서(170)를 통해 센싱된 센싱값을 기반으로 S200에서 산출된 상품의 제3 위치 정보를 검증할 수 있다.The first processor 110 may verify the third location information of the product calculated in S200 based on the sensing values sensed through the lidar sensors 170 on both sides.

구체적으로, 선반은 내부 일측면에 제1 라이다 센서(171)가 마련되어 있고, 내부 타측면에 제2 라이다 센서(172)가 마련되어 있다.Specifically, a first LiDAR sensor 171 is provided on one side of the interior of the shelf, and a second LiDAR sensor 172 is provided on the other side of the interior.

제1 프로세서(110)는 제1 라이다 센서(171)를 통해 센싱된 센싱값 및 제2 라이다 센서(172)를 통해 센싱된 센싱값을 기반으로 선반에 배치된 상품의 제3 위치 정보를 산출할 수 있다. 제1 프로세서(110)는 산출된 상품의 제2 위치 정보 및 산출된 제3 위치 정보를 비교하여 산출된 제2 위치 정보를 검증할 수 있다.The first processor 110 provides third location information of the product placed on the shelf based on the sensing value sensed through the first LiDAR sensor 171 and the sensing value sensed through the second LiDAR sensor 172. It can be calculated. The first processor 110 may verify the calculated second location information by comparing the calculated second location information of the product and the calculated third location information.

이때, 제1 프로세서(110)는 제1 라이다 센서(171)를 통해 센싱된 센싱값 및 제2 라이다 센서(172)를 통해 센싱된 센싱값을 기반으로 선반에 배치된 상품의 외형 정보를 생성할 수 있으며, 외형 정보를 기반으로 상품의 종류를 판단할 수 있다.At this time, the first processor 110 determines the appearance information of the product placed on the shelf based on the sensing value sensed through the first LiDAR sensor 171 and the sensing value sensed through the second LiDAR sensor 172. It can be created and the type of product can be judged based on appearance information.

제1 프로세서(110)는 외형 정보를 제1 메모리(150)에 저장되어 있는 상품 리스트의 각 상품 정보와 매칭하여 상품의 종류를 판단할 수 있다.The first processor 110 may match the appearance information with each product information in the product list stored in the first memory 150 to determine the type of product.

일 실시예로, 제1 프로세서(110)는 산출된 상품의 제1 위치 정보를 기반으로 제1 라이다 센서(171) 및 제2 라이다 센서(172) 각각에 복수의 센싱 포인트를 할당할 수 있다. 제1 프로세서(110)는 할당된 복수의 센싱 포인트에 대하여 제1 라이다 센서(171) 및 제2 라이다 센서(172)를 통해 센싱된 센싱값을 기반으로 상품의 제1 위치 정보를 검증할 수 있다.In one embodiment, the first processor 110 may assign a plurality of sensing points to each of the first LiDAR sensor 171 and the second LiDAR sensor 172 based on the calculated first location information of the product. there is. The first processor 110 verifies the first location information of the product based on the sensing values sensed through the first LiDAR sensor 171 and the second LiDAR sensor 172 for a plurality of assigned sensing points. You can.

제1 프로세서(110)가 선반에 배치된 상품의 종류를 판단한다. (S400)The first processor 110 determines the type of product placed on the shelf. (S400)

일 실시예로, 제1 프로세서(110)는 복수의 로드셀(120)에서 센싱된 센싱값 및 센싱값을 센싱한 복수의 로드셀(120) 각각의 위치 정보를 기반으로 선반에 배치된 상품의 무게와 하부 형상 예상값을 산출할 수 있다.In one embodiment, the first processor 110 calculates the weight and The expected value of the lower part shape can be calculated.

제1 프로세서(110)는 산출된 상품의 무게 및 상품의 하부 형상 예상값을 기반으로 상품의 종류를 판단할 수 있다.The first processor 110 may determine the type of product based on the calculated weight of the product and the expected shape of the bottom of the product.

본 개시의 실시예에서 제1 메모리(150)는 선반에 배치되는 상품 각각의 정보, 무게, 하부 형상 정보가 저장될 수 있다.In an embodiment of the present disclosure, the first memory 150 may store information, weight, and lower shape information of each product placed on the shelf.

제1 프로세서(110)가 상품의 정상 배치 여부를 판단한다. (S500)The first processor 110 determines whether the product is properly placed. (S500)

제1 프로세서(110)는 산출된 상품의 제1 위치 정보 및 판단된 상품의 종류를 기반으로 선반에 배치된 상품의 정상 배치 여부를 판단할 수 있다.The first processor 110 may determine whether the product placed on the shelf is normally placed based on the calculated first location information of the product and the determined product type.

제1 메모리(150)는 각 선반에 배치되어야 하는 상품의 종류, 해당 상품의 무게, 해당 상품의 외형 정보, 해당 상품의 하부 형상 정보 중 적어도 하나가 저장될 수 있다.The first memory 150 may store at least one of the type of product to be placed on each shelf, the weight of the product, the external shape of the product, and the bottom shape of the product.

제1 프로세서(110)는 각 선반에 배치되어야 하는 상품의 외형 정보 또는 하부 형상 정보를 제1 위치 정보와 비교하여 해당 선반에 배치되어야 하는 상품이 배치된 것이 맞는지, 또는 상품이 제대로 진열이 되었는지 여부를 판단할 수 있다.The first processor 110 compares the outer shape information or bottom shape information of the product to be placed on each shelf with the first position information to determine whether the product to be placed on the corresponding shelf is correctly placed or whether the product is displayed properly. can be judged.

이는, 제1 프로세서(110)가 상품 종류가 제대로 배치되었음을 판단하는 것은 물론 상품이 상하, 좌우가 제대로 배치되었는지도 판단할 수 있음을 의미한다.This means that the first processor 110 can determine whether the product type is properly placed, as well as whether the product is properly placed top and bottom and left and right.

이상으로 설명한 본 개시의 실시예에 따른 인공지능 기반의 상품 쇼케이스 내의 상품 위치 산출 장치(100)에 따르면, 다양한 형태, 무게의 상품이 선반에 배치되더라도 정확하게 위치를 산출할 수 있고, 제대로 된 상품이 제대로 배치되었는지 판단할 수 있게 되는 것은 물론, 산출된 위치 정보에 대한 검증을 수행하여 정확도를 더욱 향상시키는 효과를 발휘하게 된다.According to the product position calculation device 100 in the artificial intelligence-based product showcase according to the embodiment of the present disclosure described above, the position can be accurately calculated even if products of various shapes and weights are placed on the shelf, and the correct product can be Not only can it be determined whether it has been properly placed, but it also has the effect of further improving accuracy by verifying the calculated location information.

이상으로 본 개시의 실시예에 따른 상품 위치 산출 방법 및 장치(100)에 대해서 설명하였으며, 아래에서는 상품 위치 산출 장치(100)가 상품인식 알고리즘을 이용하여 상품 판매 개수를 산출하는 실시예에 대해서 추가적으로 설명하도록 한다.Above, the product location calculation method and device 100 according to an embodiment of the present disclosure have been described. Below, an embodiment in which the product location calculation device 100 calculates the number of product sales using a product recognition algorithm is additionally described. Let me explain.

상품의 위치를 산출하는 알고리즘과 상품을 인식하여 판매 개수를 산출하는 알고리즘은 각각이 독립적으로 실시될 수도 있고 함께 사용될 수도 있으므로, 2개의 실시예 각각을 실시할 수도 있고 2개의 실시예를 혼합하여 사용할 수도 있다.The algorithm that calculates the location of the product and the algorithm that recognizes the product and calculates the number of sales can be implemented independently or used together, so the two embodiments can be implemented separately or a mixture of the two embodiments can be used. It may be possible.

따라서, 본 개시의 실시예에 따른 상품 위치 산출 장치(100)는 아래에서 설명하는 상품 판매 개수를 산출하는 알고리즘을 위한 구성, 기능의 적어도 일부를 포함할 수 있다.Accordingly, the product location calculation device 100 according to an embodiment of the present disclosure may include at least a portion of the configuration and functions for the algorithm for calculating the number of products sold, which will be described below.

아래에서는 본 개시의 추가적인 실시예에 따른 상품인식 알고리즘을 이용한 상품 판매개수 산출 알고리즘에 대해서 설명하도록 한다.Below, an algorithm for calculating the number of product sales using a product recognition algorithm according to an additional embodiment of the present disclosure will be described.

본 개시의 실시예에 따른 상품 위치 산출 장치(100)는 상품 판매 개수를 산출할 수 있으며, 아래와 같은 구성들을 포함할 수 있다.The product location calculation device 100 according to an embodiment of the present disclosure can calculate the number of products sold and may include the following configurations.

본 개시의 실시에 따른 상품 위치 산출 장치(100)는 상품의 표준무게 및 미리 설정된 보정지수를 저장하는 메모리, 적어도 하나의 카메라(160) 및 무게측정 센서를 포함하는 외부장치(100)와 통신을 수행하는 통신모듈, 및 상기 메모리와 통신을 수행하는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 상품수납부의 문이 열리면, 상기 외부장치(100)로부터 제1 상품정보를 수신하고, 상기 상품수납부의 문이 닫히면, 상기 외부장치(100)로부터 제2 상품정보를 수신하고, 상기 제1 상품정보 및 상기 제2 상품정보 각각에 포함된 무게정보를 기초로 절대연산을 수행하여 상기 상품의 판매개수를 산출하고, 상기 제2 상품정보를 기초로 미리 결정된 오류검출 알고리즘에 따라 오류가 발생한 것으로 판단되면, 상기 절대연산을 중단하고, 상기 제1 상품정보 및 상기 제2 상품정보 각각에 포함된 상기 무게정보 차이 값을 기초로 상대연산을 수행하여 상기 상품의 판매개수를 산출하고, 상기 외부장치(100)로부터 수신한 로드셀(120)의 기울기 정보에 기초하여 상기 보정지수를 변경하여 상기 오류가 해소된 것으로 판단되면, 상기 상대연산을 중단하고 상기 절대연산을 다시 수행한다.The product location calculation device 100 according to the present disclosure communicates with an external device 100 including a memory for storing the standard weight of the product and a preset correction index, at least one camera 160, and a weight measurement sensor. It includes a communication module that performs communication, and at least one processor that communicates with the memory, wherein the at least one processor receives first product information from the external device 100 when the door of the product storage unit is opened, When the door of the product storage unit is closed, second product information is received from the external device 100, and an absolute calculation is performed based on the weight information included in each of the first product information and the second product information to product the product. The number of sales is calculated, and if it is determined that an error has occurred according to an error detection algorithm predetermined based on the second product information, the absolute operation is stopped and included in each of the first product information and the second product information. A relative operation is performed based on the weight information difference value to calculate the number of products sold, and the correction index is changed based on the tilt information of the load cell 120 received from the external device 100 to determine the error. If it is determined that is resolved, the relative operation is stopped and the absolute operation is performed again.

또한, 상기 절대연산 및 상기 상대연산은, 상기 카메라(160)로부터 촬영된 상기 상품 이미지에 기초하여 기계학습이 수행되어 각각에 대한 연산 값이 결정되고, 상기 기계학습을 수행하는 학습모델은 다중클래스 분류(Multiclass classification) 및 이진 분류(Binary classification)를 구현할 수 있고, 상기 다중클래스 분류는, 제1 합성곱 신경망(CNN, Convolutional neural network) 모델에 의해 수행되고, 상기 이진 분류는, 제2 합성곱 신경망 모델에 의해 수행되고, 상기 미리 결정된 오류검출 알고리즘은, 상기 제2 합성곱 신경망 모델에 의해 상기 로드셀(120)에 상기 상품이 없는 것으로 판단된 경우로서, 상기 무게측정 센서에 의해 측정된 상기 로드셀(120)의 무게정보에 기초하여 상기 상품이 존재하는 것으로 판단되는 경우는 오류가 발생한 것으로 판단하고, 그렇지 않은 경우 오류가 발생하지 않은 것으로 판단하는 알고리즘이고, 상기 오류가 발생한 것으로 판단되면, 상기 미리 설정된 보정지수의 변경이 필요한 것으로 판단하고, 상기 외부장치(100)로부터 상기 로드셀(120)의 기울기 정보를 수신하고, 상기 로드셀(120)의 기울기 정보에 기초하여 상기 미리 설정된 보정지수를 변경하고, 상기 미리 설정된 보정지수가 변경되면, 상기 오류가 해소된 것으로 판단할 수 있다.In addition, for the absolute calculation and the relative calculation, machine learning is performed based on the product image captured from the camera 160 to determine the calculation value for each, and the learning model that performs the machine learning is multi-class. Multiclass classification and binary classification can be implemented, and the multiclass classification is performed by a first convolutional neural network (CNN) model, and the binary classification is performed by a second convolutional neural network (CNN) model. It is performed by a neural network model, and the predetermined error detection algorithm is, when it is determined by the second convolutional neural network model that there is no product in the load cell 120, and the load cell measured by the weight measurement sensor If it is determined that the product exists based on the weight information in (120), it is determined that an error has occurred. Otherwise, it is an algorithm that determines that an error has not occurred. If it is determined that the error has occurred, the algorithm determines that the error has occurred. Determining that the set correction index needs to be changed, receiving tilt information of the load cell 120 from the external device 100, and changing the preset correction index based on the tilt information of the load cell 120, When the preset correction index is changed, it can be determined that the error has been resolved.

또한, 본 개시의 실시예에 따른 상품 위치 산출 장법은 상품 판매 개수를 산출할 수 있으며, 아래와 같은 구성들을 포함할 수 있다.Additionally, the product location calculation method according to an embodiment of the present disclosure can calculate the number of products sold and may include the following components.

상품 위치 산출 장치(100)는 상품의 표준무게 및 미리 설정된 보정지수를 메모리에 저장하고, 상품수납부의 문이 열리면, 카메라(160) 및 무게측정 센서를 포함한 외부장치(100)로부터 제1 상품정보를 수신하는 단계, 상기 상품수납부의 문이 닫히면, 상기 외부장치(100)로부터 제2 상품정보를 수신하는 단계, 상기 제1 상품정보 및 상기 제2 상품정보 각각에 포함된 무게정보를 기초로 절대연산을 수행하여 상기 상품의 판매개수를 산출하는 단계, 상기 제2 상품정보를 기초로 미리 결정된 오류검출 알고리즘에 따라 오류가 발생한 것으로 판단되면, 상기 절대연산을 중단하고, 상기 제1 상품정보 및 상기 제2 상품정보 각각에 포함된 상기 무게정보 차이 값을 기초로 상대연산을 수행하여 상기 상품의 판매개수를 산출하는 단계, 상기 외부장치(100)로부터 수신한 로드셀(120)의 기울기 정보에 기초하여 상기 보정지수를 변경하여 상기 오류가 해소된 것으로 판단되면, 상기 상대연산을 중단하고 상기 절대연산을 다시 수행하는 단계를 포함한다.The product location calculation device 100 stores the standard weight of the product and a preset correction index in the memory, and when the door of the product storage section is opened, the first product information is received from the external device 100 including the camera 160 and the weight measurement sensor. receiving, when the door of the product storage unit is closed, receiving second product information from the external device 100, absolute weight information included in each of the first product information and the second product information. Calculating the sales number of the product by performing an operation; if it is determined that an error has occurred according to a predetermined error detection algorithm based on the second product information, stopping the absolute calculation, and the first product information and the Calculating the number of products sold by performing a relative calculation based on the weight information difference value included in each second product information, based on the tilt information of the load cell 120 received from the external device 100 If it is determined that the error is resolved by changing the correction index, stopping the relative operation and performing the absolute operation again.

또한, 상기 제1 상품정보는, 상기 상품수납부의 문이 열리면, 상기 카메라(160)로부터 촬영된 상기 상품 이미지 및 상기 무게측정 센서로부터 측정된 상기 로드셀(120)의 무게에 대한 정보이고, 상기 제2 상품정보는, 상기 상품수납부의 문이 닫히면, 상기 카메라(160)로부터 촬영된 상기 상품 이미지 및 상기 무게측정 센서로부터 측정된 상기 로드셀(120)의 무게에 대한 정보인 것을 특징으로 한다.In addition, the first product information is information about the product image captured by the camera 160 and the weight of the load cell 120 measured by the weight measurement sensor when the door of the product storage unit is opened. 2 Product information is characterized in that it is information about the product image captured by the camera 160 and the weight of the load cell 120 measured by the weight measurement sensor when the door of the product storage unit is closed.

또한, 상기 절대연산 및 상기 상대연산은, 상기 카메라(160)로부터 촬영된 상기 상품 이미지에 기초하여 기계학습이 수행되어 각각에 대한 연산 값이 결정되고, 상기 기계학습을 수행하는 학습모델은 다중클래스 분류(Multiclass classification) 및 이진 분류(Binary classification)를 구현할 수 있고, 상기 다중클래스 분류는, 제1 합성곱 신경망(CNN, Convolutional neural network) 모델에 의해 수행되고, 상기 이진 분류는, 제2 합성곱 신경망 모델에 의해 수행될 수 있다.In addition, for the absolute calculation and the relative calculation, machine learning is performed based on the product image captured from the camera 160 to determine the calculation value for each, and the learning model that performs the machine learning is multi-class. Multiclass classification and binary classification can be implemented, and the multiclass classification is performed by a first convolutional neural network (CNN) model, and the binary classification is performed by a second convolutional neural network (CNN) model. It can be performed by a neural network model.

또한, 상기 미리 결정된 오류검출 알고리즘은, 문이 닫혔을 때를 기준으로, 상기 절대연산에 기초하여 재고수가 판단되면, 상기 재고수에 상기 상품의 표준무게를 곱한 값과 상기 무게측정 센서에 의해 측정된 상기 로드셀(120)의 무게에 대한 정보를 비교하여 비율을 산출하고, 상기 비율이 미리 설정된 값 이상으로 차이가 나면, 상기 오류가 발생한 것으로 판단하고, 상기 비율이 미리 설정된 값 미만으로 차이나면, 상기 오류가 발생하지 않은 것으로 판단하는 알고리즘인 것을 특징으로 한다In addition, the predetermined error detection algorithm determines the inventory number based on the absolute calculation based on when the door is closed, and calculates the inventory number multiplied by the standard weight of the product and measured by the weight measurement sensor. A ratio is calculated by comparing the information on the weight of the load cell 120, and if the ratio differs by more than a preset value, it is determined that the error has occurred, and if the ratio differs by less than a preset value, It is characterized by an algorithm that determines that the above error has not occurred.

또한, 상기 오류가 발생한 것으로 판단되면, 상기 미리 설정된 보정지수의 변경이 필요한 것으로 판단하고, 상기 외부장치(100)로부터 상기 로드셀(120)의 기울기 정보를 수신하고, 상기 로드셀(120)의 기울기 정보에 기초하여 상기 미리 설정된 보정지수를 변경하고, 상기 미리 설정된 보정지수가 변경되면, 상기 오류가 해소된 것으로 판단할 수 있다.In addition, if it is determined that the error has occurred, it is determined that the preset correction index needs to be changed, Tilt information of the load cell 120 is received from the external device 100, the preset correction index is changed based on the tilt information of the load cell 120, and when the preset correction index is changed, the error occurs. can be judged to have been resolved.

또한, 상기 미리 결정된 오류검출 알고리즘은, 상기 제2 합성곱 신경망 모델에 의해 상기 로드셀(120)에 상기 상품이 없는 것으로 판단된 경우로서, 상기 무게측정 센서에 의해 측정된 상기 로드셀(120)의 무게정보에 기초하여 상기 상품이 존재하는 것으로 판단되는 경우는 오류가 발생한 것으로 판단하고, 그렇지 않은 경우 오류가 발생하지 않은 것으로 판단하는 알고리즘인 것을 특징으로 한다.In addition, the predetermined error detection algorithm determines that there is no product in the load cell 120 by the second convolutional neural network model, and the weight of the load cell 120 measured by the weight measurement sensor If it is determined that the product exists based on the information, it is determined that an error has occurred, and if not, it is characterized as an algorithm that determines that an error has not occurred.

또한, 상기 오류가 발생한 것으로 판단되면, 상기 미리 설정된 보정지수의 변경이 필요한 것으로 판단하고, 상기 외부장치(100)로부터 상기 로드셀(120)의 기울기 정보를 수신하고, 상기 로드셀(120)의 기울기 정보에 기초하여 상기 미리 설정된 보정지수를 변경하고, 상기 미리 설정된 보정지수가 변경되면, 상기 오류가 해소된 것으로 판단할 수 있다.In addition, when it is determined that the error has occurred, it is determined that the preset correction index needs to be changed, tilt information of the load cell 120 is received from the external device 100, and tilt information of the load cell 120 is received. The preset correction index is changed based on , and when the preset correction index is changed, it can be determined that the error has been resolved.

본 개시의 실시예에서 도 3과 도 13을 비교하면, 장치(100)가 무게 측정 센서(133), 기울기 측정 센서(137) 및 도어부(190)를 더 포함하고 있다.Comparing FIGS. 3 and 13 in the embodiment of the present disclosure, the device 100 further includes a weight measurement sensor 133, a tilt measurement sensor 137, and a door unit 190.

이와 같이, 상품인식 알고리즘을 통한 상품 판매 개수 산출 방법, 알고리즘을 실행하기 위해서는 도 3의 상품 위치 산출 장치(100)에서 몇몇 구성이 생략되거나 몇몇 구성이 더 포함될 수도 있다.In this way, in order to execute the method and algorithm for calculating the number of product sales through a product recognition algorithm, some components may be omitted or some additional components may be included in the product location calculation device 100 of FIG. 3.

또한, 도 3의 로드셀(120), 카메라(160)는 도 3 내지 도 11에서 도시된 로드셀(120), 카메라(160)의 구성을 그대로 채택할 수도 있고, 별개의 추가적인 로드셀(120), 카메라(160)가 추가적으로 더 구비될 수도 있다. 이러한 경우, 상품 위치 산출 장치(100)는 적어도 하나의 제3 로드셀(120), 적어도 하나의 제2 카메라(160)를 포함할 수 있다.In addition, the load cell 120 and camera 160 of FIG. 3 may adopt the configuration of the load cell 120 and camera 160 shown in FIGS. 3 to 11, or may be used as a separate additional load cell 120 and camera. (160) may be additionally provided. In this case, the product location calculation device 100 may include at least one third load cell 120 and at least one second camera 160.

따라서, 본 개시의 실시예에서 로드셀(120)은 적어도 하나의 제1 로드셀 적어도 하나의 제2 로드셀 및 적어도 하나의 제3 로드셀을 포함할 수 있으며, 카메라(160)는 적어도 하나의 제1 카메라, 적어도 하나의 제2 카메라를 포함할 수 있다.Accordingly, in an embodiment of the present disclosure, the load cell 120 may include at least one first load cell, at least one second load cell, and at least one third load cell, and the camera 160 may include at least one first camera, It may include at least one second camera.

도 12는 일 실시예에 따른 상품 위치 산출 장치(100)가 서버와의 통신이 이루어지는 것을 개략적으로 나타낸 도면이고, 도 13은 일 실시예에 따른 상품 위치 산출 장치(100)와 서버에 포함된 구성을 개략적으로 나타낸 도면이다.Figure 12 is a diagram schematically showing communication between the product location calculation device 100 and the server according to an embodiment, and Figure 13 is a diagram showing the configuration included in the product location calculation device 100 and the server according to an embodiment. This is a diagram schematically showing.

도 12 및 도 13를 참고하면 본 발명의 동작을 수행하기 위해서는 상품 위치 산출 장치(100) 및 서버가 마련될 수 있다.Referring to Figures 12 and 13, a product location calculation device 100 and a server may be provided to perform the operation of the present invention.

또한, 아래에서 설명하는 실시예에서 상품 위치 산출 장치(100)에서 수집된 데이터를 서버에서 분석, 처리하는 것이 예시되어 있으나, 이에 한정되는 것은 아니며 서버의 제2 프로세서(210)에서 수행되는 모든 동작은 상품 위치 산출 장치(100)의 제1 프로세서(110)에서도 수행될 수 있다. 즉, 상품 위치 산출 장치(100)는 서버로 데이터를 전송하지 않고 상품 위치 산출 장치(100) 내에서 상품을 인식하고 상품 판매 개수를 산출할 수 있다.In addition, in the embodiment described below, it is exemplified that data collected from the product location calculation device 100 is analyzed and processed by the server, but this is not limited to this and all operations performed by the second processor 210 of the server Can also be performed by the first processor 110 of the product location calculation device 100. In other words, the product location calculation device 100 can recognize products within the product location calculation device 100 and calculate the number of products sold without transmitting data to the server.

도 13을 참조하면, 상품 위치 산출 장치(100)는 제1 프로세서(110), 로드셀(120), 산출부(130), 무게 측정 센서(133), 기울기 측정 센서(137), 검증부(140), 제1 메모리(150), 카메라(160), 라이다 센서(170), 제1 통신부(180) 및 도어부(190)를 포함한다.Referring to FIG. 13, the product position calculation device 100 includes a first processor 110, a load cell 120, a calculation unit 130, a weight measurement sensor 133, a tilt measurement sensor 137, and a verification unit 140. ), a first memory 150, a camera 160, a LiDAR sensor 170, a first communication unit 180, and a door unit 190.

서버는 제2 메모리(220), 상품 위치 산출 장치(100)와 통신을 수행할 수 있는 제2 통신부(230) 및 제2 프로세서(210) 등을 포함하도록 마련될 수 있다.The server may be provided to include a second memory 220, a second communication unit 230 capable of communicating with the product location calculation device 100, and a second processor 210.

한편 로드셀(120)은 상품 위치 산출 장치(100) 내에 상품을 수납할 수 있는 수납공간을 의미할 수 있다. 로드셀(120)은 경사각(θ1)만큼 기울어져 있기 때문에 이용자가 상품을 수취해 가면 경사면을 타고 상품이 도어부(190) 쪽으로 이동할 수 있다. 로드셀은 상품 위치 산출 장치(100) 내에 상품을 수납할 수 있는 수납공간 내에 마련/설치될 수 있다. 또한, 본 개시의 실시예에서 상품 위치 산출 장치는 상품을 판매하기 위해서 진열/전시 쇼케이스 내에 구비될 수 있다.Meanwhile, the load cell 120 may refer to a storage space in which products can be stored within the product position calculation device 100. Since the load cell 120 is inclined by the inclination angle θ1, when the user receives the product, the product can move toward the door unit 190 along the inclined plane. The load cell may be prepared/installed in a storage space that can store products within the product position calculation device 100. Additionally, in an embodiment of the present disclosure, the product location calculation device may be provided in a display/exhibition showcase to sell products.

한편 상품 위치 산출 장치(100)에 수납된 상품의 무게를 측정하기 위해, 로드셀(120)에는 무게 측정 센서(133)가 장착될 수 있다.Meanwhile, in order to measure the weight of a product stored in the product location calculation device 100, a weight measurement sensor 133 may be mounted on the load cell 120.

본 발명의 일 실시예에 따르면 무게 측정 센서(133)는 로드셀(120)의 아랫부분에 부착되어 로드셀(120) 위의 상품의 무게에 따라 센싱거리 및 센싱 저항값이 달라지고, 이에 기초하여 무게를 측정할 수 있다. 예를 들어, 로드셀(120) 위에 상품이 10개 남은 경우와 상품이 5개 남은 경우를 비교하여 볼 때, 상품이 10개 남아있는 경우에 센싱거리가 짧아짐에 따라 센싱 저항값이 커지며, 상품이 5개 남아이 있는 경우는 센싱거리가 길어짐에 따라 센싱 저항값이 작아질 수 있어 이에 기초하여 무게가 측정될 수 있다.According to one embodiment of the present invention, the weight measurement sensor 133 is attached to the lower part of the load cell 120, and the sensing distance and sensing resistance value vary depending on the weight of the product on the load cell 120, and based on this, the weight can be measured. For example, when comparing the case where there are 10 products remaining on the load cell 120 and the case where there are 5 products remaining, in the case where there are 10 products remaining, the sensing resistance value increases as the sensing distance becomes shorter, and the product In the case where there are five remaining teeth, the sensing resistance value may decrease as the sensing distance increases, and the weight can be measured based on this.

한편 로드셀(120)의 기울기를 측정하기 위해, 상품 위치 산출 장치(100)에는 기울기 측정 센서(137)가 마련될 수 있다. 기울기 측정 센서(137)는 후술하는 바에 따라 보정지수(k1)를 미리 설정하고, 오류가 발생한 경우 새로운 경사각을 측정하여 보정지수(k2)를 변경하는 데에 이용될 수 있다.Meanwhile, in order to measure the tilt of the load cell 120, a tilt measurement sensor 137 may be provided in the product position calculation device 100. The tilt measurement sensor 137 can be used to preset the correction index (k1) as described later, and to change the correction index (k2) by measuring a new tilt angle when an error occurs.

한편 무게 측정 센서(133) 및 기울기 측정 센서(137)는 본 장치(100)의 내 정보, 본 장치(100)를 둘러싼 주변 환경 정보 및 사용자 정보 중 적어도 하나를 센싱하고, 이에 대응하는 센싱 신호를 발생시킨다. 프로세서(110 or 210)는 이러한 센싱 신호에 기초하여, 본 장치(100)의 구동 또는 동작을 제어하거나, 본 장치(100)에 설치된 응용 프로그램과 관련된 데이터 처리, 기능 또는 동작을 수행할 수 있다.Meanwhile, the weight measurement sensor 133 and the tilt measurement sensor 137 sense at least one of the internal information of the device 100, the surrounding environment information surrounding the device 100, and the user information, and send a sensing signal corresponding thereto. generates Based on these sensing signals, the processor 110 or 210 may control the driving or operation of the device 100 or perform data processing, functions, or operations related to an application program installed on the device 100.

한편 도어부(190)는 상품 위치 산출 장치(100), 상품 쇼케이스에 장착된 상품수납부의 문일 수 있다. 후술하는 바에 따라 상품 판매 개수 산출 시 ABS모드의 절대연산을 수행하는 경우, 도어부(190)의 문이 열릴 때와 문이 닫힐 때를 기준으로 상기 연산이 수행될 수 있다.Meanwhile, the door unit 190 may be the product location calculating device 100 or a door of a product storage unit mounted on a product showcase. As described later, when performing absolute calculation in ABS mode when calculating the number of products sold, the calculation may be performed based on when the door of the door unit 190 is opened and when the door is closed.

한편 카메라(160)는 상품 위치 산출 장치(100)에 장착된 인공지능 기반의 머신비전 카메라를 의미할 수 있다. 카메라(160)에서 촬영된 상품의 이미지는 서버에 전달되어 제2 프로세서(210)에서 상기 수신한 이미지를 기초로 기계학습을 수행할 수 있다.Meanwhile, the camera 160 may refer to an artificial intelligence-based machine vision camera mounted on the product location calculation device 100. The image of the product captured by the camera 160 is transmitted to the server, and the second processor 210 can perform machine learning based on the received image.

전술한 바와 같이, 도 13의 카메라(160)는 도 3 내지 도 11을 통해서 설명하였던 카메라(160)와 다른 구성으로 적용될 수 있다. 예를 들어, 도 3의 카메라는 각 선반을 촬영하기 위한 구성이었다면 도 13의 카메라는 상품개수를 산출할 수 있도록 구비된 장치를 의미할 수 있다.As described above, the camera 160 of FIG. 13 may be applied in a different configuration from the camera 160 described with reference to FIGS. 3 to 11. For example, if the camera in FIG. 3 is configured to photograph each shelf, the camera in FIG. 13 may mean a device equipped to calculate the number of products.

즉, 본 개시의 실시예에서 장치(100)는 상품 쇼케이스의 각 선반에 설치되어 있는 카메라(160)의 촬영 영상을 기반으로 상품 판매 개수를 산출할 수도 있고, 추가적으로 다른 위치에 설치되어 있는 카메라(160)의 촬영 영상을 기반으로 상품 판매 개수를 산출할 수도 있다.That is, in the embodiment of the present disclosure, the device 100 may calculate the number of products sold based on the captured image of the camera 160 installed on each shelf of the product showcase, and may additionally calculate the number of products sold based on a camera installed at another location ( 160), the number of products sold can also be calculated based on the captured video.

또한, 장치(100)의 제1 프로세서(110) 또한 카메라(160)에서 촬영된 이미지를 기초로 기계학습을 수행할 수 있다.Additionally, the first processor 110 of the device 100 may also perform machine learning based on the image captured by the camera 160.

한편 머신비전 카메라는 상품 영상을 촬영하여 서버에 전송할 수 있다. 머신비전 카메라는 렌즈와 이미지 센서, 메인보드 및 인터페이스 보드로 구성될 수 있으나, 이에 제한되는 것은 아니다. 또한, 렌즈와 이미지 센서를 통해 만들어진 영상은 메인보드에서 필요에 따라 적합한 형태로 보정될수 있다. 이렇게 메인보드에서 처리된 영상은 서버에 전송될 수 있다. 머신비전 카메라는 GigE Vision 카메라(Gigabit Ethernet Vision Camera), USB3.0 카메라, CameraLink 카메라, CoaXPress 카메라 등이 포함될 수 있다.Meanwhile, machine vision cameras can capture product videos and transmit them to the server. A machine vision camera may consist of a lens, an image sensor, a main board, and an interface board, but is not limited to this. Additionally, images created through lenses and image sensors can be corrected into an appropriate form on the motherboard as needed. The video processed on the motherboard in this way can be transmitted to the server. Machine vision cameras may include GigE Vision cameras (Gigabit Ethernet Vision Cameras), USB3.0 cameras, CameraLink cameras, and CoaXPress cameras.

한편 메모리는, 후술하는 바에 따른 상품의 표준무게 및 미리 설정된 보정지수(k1)을 저장할 수 있다.Meanwhile, the memory can store the standard weight of the product and a preset correction index (k1) as described later.

상품의 표준무게는 로드셀(120) 위의 상품의 일반적 무게로서 메모리에 미리 저장되는 고정값일 수 있다.The standard weight of the product is the general weight of the product on the load cell 120 and may be a fixed value stored in advance in the memory.

상품의 표준무게는 로드셀(120)의 상품의 종류에 따라 다르게 저장될 수 있다. 예를 들어, 로드셀1의 상품이 185ml 캔사이다인 경우, 상기 캔사이다의 표준무게를 200g으로 저장될 수 있고, 로드셀2의 상품이 250ml 캔콜라인 경우, 상기 캔콜라의 표준무게를 300g으로 저장될 수 있다.The standard weight of a product may be stored differently depending on the type of product in the load cell 120. For example, if the product of load cell 1 is a 185ml can of cider, the standard weight of the can of cider can be stored as 200g, and if the product of load cell 2 is a 250ml can of cola, the standard weight of the can of cola can be stored as 300g. It can be.

메모리는 본 장치(100)의 다양한 기능을 지원하는 데이터와, 프로세서(110, 210)의 동작을 위한 프로그램을 저장할 수 있고, 입/출력되는 데이터들(예를 들어, 음악 파일, 정지영상, 동영상 등)을 저장할 있고, 본 장치(100)에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션(application)), 본 장치(100)의 동작을 위한 데이터들, 명령어들을 저장할 수 있다. 이러한 응용 프로그램 중 적어도 일부는, 무선 통신을 통해 외부 서버로부터 다운로드 될 수 있다. The memory can store data supporting various functions of the device 100 and programs for the operation of the processors 110 and 210, and can store input/output data (e.g., music files, still images, and videos). etc.), a plurality of application programs (application programs or applications) running on the device 100, data for operation of the device 100, and commands can be stored. At least some of these applications may be downloaded from an external server via wireless communication.

이러한, 메모리는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), SSD 타입(Solid State Disk type), SDD 타입(Silicon Disk Drive type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(random access memory; RAM), SRAM(static random access memory), 롬(read-only memory; ROM), EEPROM(electrically erasable programmable read-only memory), PROM(programmable read-only memory), 자기 메모리, 자기 디스크 및 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 또한, 메모리는 본 장치(100)와는 분리되어 있으나, 유선 또는 무선으로 연결된 데이터베이스가 될 수도 있다.These memories include flash memory type, hard disk type, SSD type (Solid State Disk type), SDD type (Silicon Disk Drive type), and multimedia card micro type. , card-type memory (e.g., SD or It may include at least one type of storage medium among (only memory), PROM (programmable read-only memory), magnetic memory, magnetic disk, and optical disk. Additionally, the memory is separate from the device 100, but may be a database connected wired or wirelessly.

적어도 하나의 프로세서(110 or 210)는 본 장치(100) 내의 구성요소들의 동작을 제어하기 위한 알고리즘 또는 알고리즘을 재현한 프로그램에 대한 데이터를 저장하는 메모리, 및 메모리에 저장된 데이터를 이용하여 전술한 동작을 수행할 수 있다. 이때, 메모리와 프로세서(110 or 210)는 각각 별개의 칩으로 구현될 수 있다. 또는, 메모리와 프로세서(110 or 210)는 단일 칩으로 구현될 수도 있다.At least one processor (110 or 210) has a memory that stores data for an algorithm for controlling the operation of components in the device 100 or a program that reproduces the algorithm, and performs the above-described operations using the data stored in the memory. can be performed. At this time, the memory and processor 110 or 210 may each be implemented as separate chips. Alternatively, the memory and processor 110 or 210 may be implemented as a single chip.

또한, 프로세서(110 or 210)는 이하의 도 13 내지 도 21에서 설명되는 본 개시에 따른 다양한 실시 예들을 본 장치(100) 상에서 구현하기 위하여, 위에서 살펴본 구성요소들을 중 어느 하나 또는 복수를 조합하여 제어할 수 있다.In addition, the processor 110 or 210 combines any one or a plurality of the above-described components to implement various embodiments according to the present disclosure described in FIGS. 13 to 21 below on the device 100. You can control it.

상기 구성요소들 중 상품 위치 산출 장치(100)의 제1 통신부(180) 및 서버의 제2 통신부(230)는 외부 장치(100)와 통신을 가능하게 하는 하나 이상의 구성 요소를 포함할 수 있으며, 예를 들어, 방송 수신 모듈, 유선통신 모듈, 무선통신 모듈, 근거리 통신 모듈, 위치정보 모듈 중 적어도 하나일 수 있다.Among the components, the first communication unit 180 of the product location calculation device 100 and the second communication unit 230 of the server may include one or more components that enable communication with the external device 100, For example, it may be at least one of a broadcast reception module, a wired communication module, a wireless communication module, a short-range communication module, and a location information module.

유선 통신 모듈은, 지역 통신(Local Area Network; LAN) 모듈, 광역 통신(Wide Area Network; WAN) 모듈 또는 부가가치 통신(Value Added Network; VAN) 모듈 등 다양한 유선 통신 모듈뿐만 아니라, USB(Universal Serial Bus), HDMI(High Definition Multimedia Interface), DVI(Digital Visual Interface), RS-232(recommended standard232), 전력선 통신, 또는 POTS(plain old telephone service) 등 다양한 케이블 통신 모듈을 포함할 수 있다.Wired communication modules include various wired communication modules such as Local Area Network (LAN) modules, Wide Area Network (WAN) modules, or Value Added Network (VAN) modules, as well as USB (Universal Serial Bus) modules. ), HDMI (High Definition Multimedia Interface), DVI (Digital Visual Interface), RS-232 (recommended standard 232), power line communication, or POTS (plain old telephone service).

무선 통신 모듈은 와이파이(Wifi) 모듈, 와이브로(Wireless broadband) 모듈 외에도, GSM(global System for Mobile Communication), CDMA(Code Division Multiple Access), WCDMA(Wideband Code Division Multiple Access), UMTS(universal mobile telecommunications system), TDMA(Time Division Multiple Access), LTE(Long Term Evolution), 4G, 5G, 6G 등 다양한 무선 통신 방식을 지원하는 무선 통신 모듈을 포함할 수 있다.In addition to Wi-Fi modules and WiBro (Wireless broadband) modules, wireless communication modules include GSM (global System for Mobile Communication), CDMA (Code Division Multiple Access), WCDMA (Wideband Code Division Multiple Access), and UMTS (universal mobile telecommunications system). ), TDMA (Time Division Multiple Access), LTE (Long Term Evolution), 4G, 5G, 6G, etc. may include a wireless communication module that supports various wireless communication methods.

무선 통신 모듈은 이동통신 신호를 송신하는 안테나 및 송신기(Transmitter)를 포함하는 무선 통신 인터페이스를 포함할 수 있다. 또한, 무선 통신 모듈은 제어부의 제어에 따라 무선 통신 인터페이스를 통해 제어부로부터 출력된 디지털 제어 신호를 아날로그 형태의 무선 신호로 변조하는 이동통신 신호 변환 모듈을 더 포함할 수 있다.The wireless communication module may include a wireless communication interface including an antenna and a transmitter that transmits a mobile communication signal. Additionally, the wireless communication module may further include a mobile communication signal conversion module that modulates a digital control signal output from the control unit through a wireless communication interface into an analog wireless signal under the control of the control unit.

무선 통신 모듈은 이동통신 신호를 수신하는 안테나 및 수신기(Receiver)를 포함하는 무선 통신 인터페이스를 포함할 수 있다. 또한, 무선 통신 모듈은 무선 통신 인터페이스를 통하여 수신한 아날로그 형태의 무선 신호를 디지털 제어 신호로 복조하기 위한 이동통신 신호 변환 모듈을 더 포함할 수 있다.The wireless communication module may include a wireless communication interface including an antenna and a receiver for receiving mobile communication signals. Additionally, the wireless communication module may further include a mobile communication signal conversion module for demodulating an analog wireless signal received through a wireless communication interface into a digital control signal.

근거리 통신 모듈은 근거리 통신(Short range communication)을 위한 것으로서, 블루투스(Bluetooth??), RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association; IrDA), UWB(Ultra Wideband), ZigBee, NFC(Near Field Communication), Wi-Fi(Wireless-Fidelity), Wi-Fi Direct, Wireless USB(Wireless Universal Serial Bus) 기술 중 적어도 하나를 이용하여, 근거리 통신을 지원할 수 있다.The short-range communication module is for short-range communication, including Bluetooth®, RFID (Radio Frequency Identification), Infrared Data Association (IrDA), UWB (Ultra Wideband), ZigBee, and NFC (Near). Short-distance communication can be supported using at least one of (Field Communication), Wi-Fi (Wireless-Fidelity), Wi-Fi Direct, and Wireless USB (Wireless Universal Serial Bus) technologies.

본 개시의 실시예에서 제1 프로세서(110) 또는 제2 프로세서(210)는 후술하는 바에 따라 ABS모드의 절대연산 및 REL모드의 상대연산을 수행하는 상품 판매 개수 연산부(213)와 머신비전 카메라(160)에 의해 촬영된 상품이미지를 기초로 인공지능 학습모델의 기계학습이 수행되는 기계학습부(215)를 포함할 수 있다.In an embodiment of the present disclosure, the first processor 110 or the second processor 210 includes a product sales count calculation unit 213 and a machine vision camera ( It may include a machine learning unit 215 that performs machine learning of an artificial intelligence learning model based on the product image captured by 160).

한편, 도 13에서 도시된 각각의 구성요소는 소프트웨어 및/또는 Field Programmable Gate Array(FPGA) 및 주문형 반도체(ASIC, Application Specific Integrated Circuit)와 같은 하드웨어 구성요소를 의미한다.Meanwhile, each component shown in FIG. 13 refers to software and/or hardware components such as Field Programmable Gate Array (FPGA) and Application Specific Integrated Circuit (ASIC).

도 14는 일 실시예에 따른 상품인식 알고리즘에 따른 모드전환을 나타낸 도면이고 도 15는 일 실시예에 따른 카메라(160) 및 무게 측정 센서(133)를 포함한 상품 위치 산출 장치(100)의 모습을 개략적으로 나타낸 도면이다.FIG. 14 is a diagram showing mode switching according to a product recognition algorithm according to an embodiment, and FIG. 15 is a diagram showing a product location calculation device 100 including a camera 160 and a weight measurement sensor 133 according to an embodiment. This is a schematic drawing.

도 14을 참고하면 경사각이 θ1인 로드셀(120)에는 상품이 수납될 수 있고, 경사면에 따라 이용자가 상품(30)을 수취한 경우 도어부(190)쪽으로 상품이 이동될 수 있다. 카메라(160)는 도어부(190)쪽과 가까운 로드셀(120)의 앞부분을 촬영할 수 있다. 따라서, 머신비전 카메라(160)에 의해 촬영된 상품 이미지가 프로세서(110 or 210)에 전달된 경우, 후술하는 바에 따라 제2 합성곱 신경망(CNN) 모델에 의해 학습이 수행되어 상품(30)이 존재하는지 유무를 판단할 수 있다. 후술하는 바에 따라 ABS모드의 절대연산 및 REL모드의 상대연산 시, 상품이 존재하는 경우 이미지 디지털 인식에 따른 코드 값인 Nv가 1로 판단될 수 있고, 상품이 존재하지 않는 경우 Nv는 0으로 판단될 수 있다.Referring to FIG. 14, a product can be stored in the load cell 120 with an inclination angle of θ1, and when a user receives the product 30 according to the slope, the product can be moved toward the door unit 190. The camera 160 can photograph the front part of the load cell 120 close to the door 190. Therefore, when the product image captured by the machine vision camera 160 is transmitted to the processor 110 or 210, learning is performed by the second convolutional neural network (CNN) model as described later, and the product 30 is You can determine whether it exists or not. As described later, when performing absolute calculations in ABS mode and relative calculations in REL mode, if a product exists, Nv, which is a code value based on image digital recognition, may be judged as 1, and if a product does not exist, Nv may be judged as 0. You can.

한편 도 14에서의 상품(30)은 로드셀(120)에 진열된 상품(30) 각각을 의미할 수 있다.Meanwhile, the product 30 in FIG. 14 may refer to each product 30 displayed on the load cell 120.

도 14을 참고하면 본 발명은 기본적으로 ABS모드(Absolute mode, 310)가 설정되어 있고, ABS모드(310)에 따라 상품 판매 개수 산출 시 절대연산이 수행될 수 있다. 이 때 미리 결정된 오류검출 알고리즘에 따라 오류가 발생한 것으로 판단되면 ABS모드(310)에 따른 절대연산을 중단하고, REL모드(Relative mode, 320)로 전환되어 상대연산을 수행할 수 있다(S410). 또한, 미리 결정된 보정 알고리즘에 따라 오류가 해소된 것으로 판단되면 REL모드(320)에 따른 상대연산을 중단하고, 다시 ABS모드(310)로 전환되어 절대연산을 수행할 수 있다(S420).Referring to Figure 14, the present invention is basically set to ABS mode (Absolute mode, 310), and absolute calculation can be performed when calculating the number of products sold according to ABS mode (310). At this time, if it is determined that an error has occurred according to a predetermined error detection algorithm, the absolute operation according to the ABS mode (310) is stopped, and the mode is switched to the REL mode (Relative mode, 320) to perform the relative operation (S410). In addition, when it is determined that the error has been resolved according to a predetermined correction algorithm, the relative operation according to the REL mode 320 is stopped, and the mode is switched back to the ABS mode 310 to perform an absolute operation (S420).

도 15를 참고하면 무게 측정 센서(133)는 전술한 바와 같이 로드셀(120)의 아랫부분에 장착되어 로드셀(120) 위의 상품 무게를 측정할 수 있다.Referring to FIG. 15, the weight measurement sensor 133 is mounted on the lower part of the load cell 120 as described above and can measure the weight of the product on the load cell 120.

한편 무게 측정 센서(133)는 상품 위치 산출 장치(100)의 도어부(190)의 문이 열리면 상품의 무게를 측정하고, 도어부(190)의 문이 닫히면 상품의 무게를 측정하도록 설정될 수 있다.Meanwhile, the weight measurement sensor 133 can be set to measure the weight of the product when the door of the door 190 of the product location calculation device 100 is opened and to measure the weight of the product when the door of the door 190 is closed. there is.

제1 상품정보는 도어부(190)의의 문이 열렸을 때를 기준으로 상품의 무게정보 및 카메라(160)에 의해 촬영된 상품의 이미지 정보를 포함할 수 있으나, 이에 제한되지 않는다.The first product information may include weight information of the product based on when the door of the door unit 190 is opened and image information of the product captured by the camera 160, but is not limited thereto.

제2 상품정보는 도어부(190)의 문이 닫혔을 때를 기준으로 상품의 무게정보 및 카메라(160)에 의해 촬영된 상품의 이미지 정보를 포함할 수 있으나, 이에 제한되지 않는다.The second product information may include, but is not limited to, weight information of the product and image information of the product captured by the camera 160 based on when the door of the door unit 190 is closed.

한편, 제1 상품정보 및 제2 상품정보는 로드셀(120) 상의 동일한 컬럼의 상품에 관한 정보로서, 문이 열렸을 때와 문이 닫혔을 때를 기준으로 한 상품정보일 수 있다.Meanwhile, the first product information and the second product information are information about products in the same column on the load cell 120, and may be product information based on when the door is opened and when the door is closed.

이렇게 제1 상품정보 및 제2 상품정보는 상품 위치 산출 장치(100)의 제1 통신부(180)와 서버의 제2 통신부간의 통신을 통해 상품 위치 산출 장치(100)에서 서버로 전송될 수 있다.In this way, the first product information and the second product information can be transmitted from the product location calculation device 100 to the server through communication between the first communication unit 180 of the product location calculation device 100 and the second communication unit of the server.

도 16은 일 실시예에 따른 서버 및 상품 위치 산출 장치(100)에서 이루어지는 단계를 나타낸 순서도이다.Figure 16 is a flowchart showing steps performed in the server and product location calculation device 100 according to an embodiment.

본 발명의 일 실시예에 따르면 이용자는 상품결제를 위하여 체크카드 및 신용카드를 포함하여 상품 결제가 가능한 결제수단을 상품 위치 산출 장치(100)에 인식시킬 수 있다(S601). 이렇게 인식된 카드정보는 서버의 제2 통신부를 통해 프로세서(210)에 전달될 수 있다(S602). 서버는 이렇게 전달된 카드정보를 수신할 수 있다(S603). 서버에서 올바른 카드정보라고 인식한 경우, 서버는 상품 위치 산출 장치(100)에 도어부(190) 문열림 명령을 전달할 수 있다(S604). 도어부(190) 문열림 명령이 전달됨에 따라, 상품 위치 산출 장치(100)의 도어부(190) 문이 열리면(S605), 도어부(190)의 문이 열렸다는 정보가 서버에 전달될 수 있다(S606). 도어부(190) 문이 열림에 따라, 서버는 제1 상품정보를 수신할 수 있다(S607). 이용자 상품 위치 산출 장치(100)에서 상품을 수취하고(S608) 도어부(190)의 문이 닫히면(S609), 도어부(190)의 문이 닫혔다는 정보가 서버에 전달될 수 있다(S610). 도어부(190)의 문이 닫힘에 따라, 프로세서(110 or 210)는 제2 상품정보를 수신할 수 있다(S611). 서버는 제1 상품정보 및 제2 상품정보를 수신함에 따라 제1 상품정보 및 제2 상품정보를 기초로 연산을 수행하여 이용자가 수취한 상품의 판매 개수를 산출할 수 있다(S612). 산출된 상품 판매 개수는 상품 위치 산출 장치(100)에 전달되어(S613) 판매 개수에 따른 상품결제가 진행될 수 있다(S614).According to one embodiment of the present invention, the user can make the product location calculation device 100 recognize payment methods that can pay for products, including check cards and credit cards, in order to pay for products (S601). The card information recognized in this way may be transmitted to the processor 210 through the second communication unit of the server (S602). The server can receive the card information transmitted in this way (S603). If the server recognizes the card information as correct, the server may transmit a command to open the door unit 190 to the product location calculation device 100 (S604). As the door unit 190 door open command is transmitted, when the door unit 190 of the product location calculation device 100 is opened (S605), information that the door unit 190 has been opened may be transmitted to the server. There is (S606). As the door unit 190 is opened, the server can receive first product information (S607). When a product is received from the user product location calculating device 100 (S608) and the door of the door unit 190 is closed (S609), information that the door of the door unit 190 is closed may be transmitted to the server (S610). . As the door of the door unit 190 is closed, the processor 110 or 210 may receive second product information (S611). As the server receives the first product information and the second product information, it can perform calculations based on the first product information and the second product information to calculate the number of products sold by the user (S612). The calculated number of products sold is transmitted to the product location calculation device 100 (S613), and product payment according to the number of products sold can be made (S614).

도 17은 일 실시예에 따른 기울기 측정 센서(137)에 의해 로드셀(120)의 경사각을 측정하는 모습을 개략적으로 나타낸 도면이다.FIG. 17 is a diagram schematically showing measuring the inclination angle of the load cell 120 using the inclination measurement sensor 137 according to an embodiment.

한편 도 17에서의 상품(30)은 로드셀(120)에 진열된 상품 각각을 의미할 수 있다.Meanwhile, the product 30 in FIG. 17 may refer to each product displayed on the load cell 120.

로드셀(120)은 평지를 기준으로 경사각(θ1)만큼 경사질 수 있어, 이용자가 상품 위치 산출 장치(100)에서 상품을 수취하는 경우, 경사면을 따라 도어부(190)에서 먼 쪽에 있는 상품이 도어부(190)쪽으로 이동할 수 있다.The load cell 120 may be inclined by an inclination angle θ1 based on a flat surface, so that when a user receives a product from the product location calculation device 100, the product on the side farthest from the door unit 190 along the inclined plane is moved to the door. You can move towards section 190.

본 발명의 일 실시예에 따른 기울기 측정 센서(137)는 로드셀(120)의 아래쪽에 부착되어 로드셀(120)의 기울기를 측정할 수 있다.The tilt measurement sensor 137 according to an embodiment of the present invention is attached to the bottom of the load cell 120 and can measure the tilt of the load cell 120.

한편 측정된 경사각(θ1)은 메모리에 저장되는 미리 설정된 보정지수(k1)를 결정하는데에 이용될 수 있다. 경사진 로드셀(120)에서의 무게는 평지에서의 무게와 다를 수 있기 때문에 미리 설정된 보정지수에 의한 보정모델을 이용할 수 있다. 즉, 로드셀(120)의 경사로 인해 발생하는 무게 측정 오차를 보정할 수 있는 보정지수를 이용하여 무게를 보정할 수 있다.Meanwhile, the measured inclination angle (θ1) can be used to determine a preset correction index (k1) stored in memory. Since the weight of the inclined load cell 120 may be different from the weight on flat ground, a correction model based on a preset correction index can be used. That is, the weight can be corrected using a correction index that can correct the weight measurement error that occurs due to the inclination of the load cell 120.

일 실시예에 따라 보정모델의 수학식은 다음 수학식 1과 같이 표현될 수 있다.According to one embodiment, the equation of the correction model can be expressed as Equation 1 below.

수학식 1을 참고하면 Mb는 경사진 로드셀(120) 위에서의 무게를 의미하고, k1은 미리 설정된 보정지수를 의미하고, Ma는 평지 위에서의 무게를 의미할 수 있다.Referring to Equation 1, Mb may mean the weight on the inclined load cell 120, k1 may mean the preset correction index, and Ma may mean the weight on flat ground.

한편 로드셀(120)의 경사각이 θ1인 경우 미리 설정된 보정지수 k1은 cos θ1 또는 cscθ1일 수 있으나 이에 제한되는 것은 아니다.Meanwhile, when the inclination angle of the load cell 120 is θ1, the preset correction index k1 may be cos θ1 or cscθ1, but is not limited thereto.

또한 일 실시예에 따른 미리 설정된 보정지수(k1)는 로드셀(120) 설치 시점에 무게 측정 센서(133) 위에 단위 무게(예를 들어, 100g, 200g 등) 추를 올려 놓으면서 해당 추의 실제 무게값으로 읽힐 수 있도록 무게 측정 센서(133)의 영점을 조정함으로써 설정될 수도 있다.In addition, the preset correction index (k1) according to one embodiment is the actual weight value of the weight (e.g., 100 g, 200 g, etc.) when placing a unit weight (e.g., 100 g, 200 g, etc.) on the weight measurement sensor 133 at the time of installing the load cell 120. It can also be set by adjusting the zero point of the weight measurement sensor 133 so that it can be read.

도 18은 일 실시예에 따른 모드전환이 이루어지고 오류가 해소되기까지의 과정을 알고리즘으로 나타낸 도면이다.Figure 18 is a diagram illustrating an algorithm for the process from when a mode change is made to when an error is resolved according to an embodiment.

본 발명은 기본적으로 ABS모드로 시작되며(S810), 제1 상품정보 및 제2 상품정보 각각에 포함된 무게정보에 기초하여 절대연산을 수행할 수 있다(S820). 이에 따라 상품 판매 개수가 산출될 수 있고(S830), 제2 상품정보를 기초로 미리 결정된 오류검출 알고리즘에 따라 오류가 발생된 것으로 판단(S840)하는 과정이 이루어진다. 오류가 발생하지 않은 경우 지속적으로 ABS모드에 따른 절대연산이 수행되며 오류가 발생한 것으로 판단되면 REL모드로 전환된다(S850). REL모드로 전환됨에 따라, 제1 상품정보 및 제2 상품정보 각각에 포함된 무게정보의 차이 값에 기초하여 상대연산을 수행할 수 있다(S860). 이에 따라 상품 판매 개수가 산출될 수 있고(S870), 동시에 미리 결정된 보정 알고리즘에 따라 상품 위치 산출 장치(100) 내에 포함된 기울기 측정 센서(137)로부터의 로드셀(120)의 기울기 정보에 기초하여 미리 설정된 보정지수(k1)을 변경할 수 있다(S880). 이에 따라 오류가 해소된 것으로 판단되면 다시 ABS모드에로 재 전환되어 절대연산을 수행할 수 있으나 오류가 해소되지 않은 것으로 판단되면 REL모드가 유지되어 상대연산에 따른 상품 판매 개수를 산출할 수 있다(S890).The present invention basically starts in ABS mode (S810), and absolute calculation can be performed based on weight information included in each of the first product information and the second product information (S820). Accordingly, the number of products sold can be calculated (S830), and a process of determining that an error has occurred according to a predetermined error detection algorithm based on the second product information is performed (S840). If no error occurs, absolute calculation according to ABS mode is continuously performed, and if it is determined that an error has occurred, it switches to REL mode (S850). As the mode is switched to REL mode, a relative calculation can be performed based on the difference value of the weight information included in each of the first product information and the second product information (S860). Accordingly, the number of products sold can be calculated (S870), and at the same time, based on the tilt information of the load cell 120 from the tilt measurement sensor 137 included in the product position calculation device 100 according to a predetermined correction algorithm, The set correction index (k1) can be changed (S880). Accordingly, if it is determined that the error has been resolved, it switches back to ABS mode and absolute calculation can be performed. However, if it is determined that the error has not been resolved, REL mode is maintained and the number of products sold according to relative calculation can be calculated ( S890).

도 19는 일 실시예에 따른 ABS모드에 따른 절대연산이 수행되는 과정을 알고리즘으로 나타낸 도면이다.Figure 19 is a diagram illustrating an algorithm for the process of performing an absolute operation in ABS mode according to an embodiment.

먼저 상품의 표준무게(Wm)를 메모리에 저장하고(S910), 문을 열었을 때 제1 상품정보가 수신(S920), 문을 닫았을 때 제2 상품정보가 수신될 수 있다(S930). 한편 제1 상품정보 및 제2 상품정보는 전술한 바와 같이, 문을 열었을 때와 문을 닫았을 때 각각에 대하여 무게 측정 센서(133)에 의한 로드셀(120)의 무게정보 및 머신비전 카메라(160)에 의해 촬영된 상품의 이미지정보를 포함할 수 있다.First, the standard weight (Wm) of the product is stored in memory (S910), the first product information can be received when the door is opened (S920), and the second product information can be received when the door is closed (S930). Meanwhile, as described above, the first product information and the second product information are the weight information of the load cell 120 by the weight measurement sensor 133 and the machine vision camera 160 for when the door is opened and when the door is closed, respectively. ) may include image information of the product taken by .

프로세서(110 or 210)는 학습모델에 의한 기계학습이 수행될 수 있다. ABS모드 절대연산 및 후술하는 바에 따른 REL모드 상대연산의 연산 값은 머신비전 카메라(160)로부터 촬영된 상품의 이미지를 데이터로 하여 기계학습을 수행하여 연산 값이 결정될 수 있다. 기계학습을 수행하는 학습모델은 다중클래스 분류(Multiclass classification) 및 이진 분류(Binary classification)를 구현할 수 있다. 한편 다중클래스 분류는, 제1 합성곱 신경망(CNN, Convolutional neural network) 모델에 의해 수행되고, 이진 분류는, 제2 합성곱 신경망 모델에 의해 수행될 수 있으나, 이에 제한되는 것은 아니다. 예를 들어, 상기 학습모델은, Random Forest (RF), Support Vector Machine (SVC), eXtra Gradient Boost (XGB), Decision Tree (DC), Knearest Neighbors (KNN), Gaussian Naive Bayes (GNB), Stochastic Gradient Descent (SGD), Linear Discriminant Analysis (LDA), Ridge, Lasso 및 Elastic net 중 적어도 하나의 알고리즘을 포함할 수 있다.The processor 110 or 210 may perform machine learning using a learning model. The calculation values of the absolute calculation in ABS mode and the relative calculation in REL mode as described later can be determined by performing machine learning using the image of the product captured by the machine vision camera 160 as data. A learning model that performs machine learning can implement multiclass classification and binary classification. Meanwhile, multiclass classification may be performed by a first convolutional neural network (CNN) model, and binary classification may be performed by a second convolutional neural network model, but are not limited thereto. For example, the learning models include Random Forest (RF), Support Vector Machine (SVC), eXtra Gradient Boost (XGB), Decision Tree (DC), Knearest Neighbors (KNN), Gaussian Naive Bayes (GNB), and Stochastic Gradient. It may include at least one algorithm among Descent (SGD), Linear Discriminant Analysis (LDA), Ridge, Lasso, and Elastic net.

도어부(190)의 문이 닫혔을 때 상품이 존재하는지 여부는 제2 합성곱 신경망 모델에 의해 이진분류(Binary classification)가 구현됨에 따라 결정될 수 있다.Whether a product exists when the door of the door unit 190 is closed can be determined by implementing binary classification by a second convolutional neural network model.

이용자의 상품 수취 후 문을 닫았을 때를 기준으로, 상품이 존재하는 경우로 인식하면 디지털코드 값인 Nv=1, 상품이 존재하지 않는 경우로 인식하면 디지털코드 값인 Nv=0으로 인식할 수 있다.Based on the time the door is closed after the user receives the product, if the product is recognized as existing, the digital code value Nv = 1, and if the product is recognized as not existing, the digital code value can be recognized as Nv = 0.

또한, 이용자의 상품 수취 후 문을 닫았을 때를 기준으로, 상품이 존재하는 경우로 인식하면 머신비전 카메라(160)가 인식한 상품의 표준무게 Wv를 메모리로부터 수신할 수 있고, 상품이 존재하지 않는 경우로 인식하면 머신비전 카메라(160)가 인식한 상품의 표준무게(Wv)가 0으로 판단될 수 있다.In addition, based on when the door is closed after the user receives the product, if it is recognized that the product exists, the standard weight Wv of the product recognized by the machine vision camera 160 can be received from the memory, and if the product does not exist, the standard weight Wv of the product can be received. If it is recognized as not being the case, the standard weight (Wv) of the product recognized by the machine vision camera 160 may be determined to be 0.

프로세서(110 or 210)는 ABS모드에 따른 절대연산을 수행(S970)할 수 있고, 절대연산의 수식은 다음 수학식 2와 같이 표현될 수 있다.The processor 110 or 210 can perform an absolute operation according to the ABS mode (S970), and the formula for the absolute operation can be expressed as Equation 2 below.

수학식 2를 참고하면 Ns는 상품 판매 개수를 의미하고, Nb는 문을 열었을 때 재고수를 의미하고, Nt는 문을 닫았을 때 재고수를 의미하고, Wm는 상품의 표준무게를 의미하고, Wc는 문을 닫았을 때 로드셀(120)의 무게를 의미하고, Wv는 카메라(160)에서 인식한 상품의 표준무게를 의미하고, Nv는 카메라(160)에서 인식한 상품의 디지털 코드 값을 의미할 수 있다.Referring to Equation 2, Ns refers to the number of products sold, Nb refers to the number of inventory when the door is opened, Nt refers to the number of inventory when the door is closed, Wm refers to the standard weight of the product, Wc refers to the weight of the load cell 120 when the door is closed, Wv refers to the standard weight of the product recognized by the camera 160, and Nv refers to the digital code value of the product recognized by the camera 160. can do.

절대연산이 수행됨에 따라 상품의 판매 개수(Ns)가 산출될 수 있다(S980). 이 때 정확한 판매 개수를 산출하기 위해, 제2 상품정보를 기초로 미리 결정된 오류검출 알고리즘에 따라 오류가 발생했는지 여부가 판단될 수 있다(S990). 오류가 발생한 경우 REL모드로 전환되어 상대연산이 수행될 수 있고(S9100), 오류가 발생하지 않은 경우 ABS모드가 유지되어 절대연산이 수행될 수 있다(S9110).As the absolute operation is performed, the number of products sold (Ns) can be calculated (S980). At this time, in order to calculate the exact number of units sold, it may be determined whether an error has occurred according to a predetermined error detection algorithm based on the second product information (S990). If an error occurs, the mode is switched to REL mode and a relative operation can be performed (S9100), and if an error does not occur, the ABS mode is maintained and an absolute operation can be performed (S9110).

도 20은 일 실시예에 따른 REL모드에 따른 상대연산이 수행되는 과정을 알고리즘으로 나타낸 도면이다.Figure 20 is a diagram illustrating an algorithm for a process in which a relative operation is performed in the REL mode according to an embodiment.

먼저 상품의 표준무게(Wm)를 메모리에 저장하고(S1010), 문을 열었을 때 제1 상품정보가 수신(S1020), 문을 닫았을 때 제2 상품정보가 수신될 수 있다(S1030). 문을 열었을 때 로드셀(120)의 무게를 W1으로 하고, 문을 닫았을 때 로드셀(120)의 무게를 W2이라 할 때, 제1 상품정보 및 제2 상품정보에 포함된 각각의 로드셀(120)의 무게정보에 기초하여 그 차이 값인 Wd=W1-W2이 계산될 수 있다(S1040).First, the standard weight (Wm) of the product is stored in the memory (S1010), the first product information can be received when the door is opened (S1020), and the second product information can be received when the door is closed (S1030). When the weight of the load cell 120 when the door is opened is W1 and the weight of the load cell 120 when the door is closed is W2, each load cell 120 included in the first product information and the second product information Based on the weight information, the difference value, Wd=W1-W2, can be calculated (S1040).

REL모드 상대연산의 경우도 ABS모드 절대연산과 마찬가지로, 도어부(190)의 문이 닫혔을 때 상품이 존재하는지 여부는 제2 합성곱 신경망 모델에 의해 이진분류(Binary classification)가 구현됨에 따라 결정될 수 있다. In the case of the relative operation in REL mode, as in the absolute operation in ABS mode, whether the product exists when the door of the door unit 190 is closed is determined by implementing binary classification by the second convolutional neural network model. You can.

이용자의 상품 수취 후 문을 닫았을 때를 기준으로, 상품이 존재하는 경우로 인식하면 디지털코드 값인 Nv=1, 상품이 존재하지 않는 경우로 인식하면 디지털코드 값인 Nv=0으로 인식할 수 있다.Based on the time the door is closed after the user receives the product, if the product is recognized as existing, the digital code value Nv = 1, and if the product is recognized as not existing, the digital code value can be recognized as Nv = 0.

또한, 이용자의 상품 수취 후 문을 닫았을 때를 기준으로, 상품이 존재하는 경우로 인식하면 머신비전 카메라(160)가 인식한 상품의 표준무게 Wv를 메모리로부터 수신할 수 있고, 상품이 존재하지 않는 경우로 인식하면 머신비전 카메라(160)가 인식한 상품의 표준무게(Wv)가 0으로 판단될 수 있다.In addition, based on when the door is closed after the user receives the product, if it is recognized that the product exists, the standard weight Wv of the product recognized by the machine vision camera 160 can be received from the memory, and if the product does not exist, the standard weight Wv of the product can be received. If it is recognized as not being the case, the standard weight (Wv) of the product recognized by the machine vision camera 160 may be determined to be 0.

프로세서(110 or 210)는 REL모드에 따른 상대연산을 수행(S1080)할 수 있고, 상대연산의 수식은 다음 수학식 3으로 표현될 수 있다.The processor 110 or 210 can perform a relative operation according to the REL mode (S1080), and the formula for the relative operation can be expressed as Equation 3 below.

수학식 3를 참고하면 Ns는 상품 판매 개수를 의미하고, W1는 문을 열었을 때 로드셀(120)의 무게를 의미하고, W2는 문을 닫았을 때 로드셀(120)의 무게를 의미하고, Wd는 문을 열었을 때와 문을 닫았을 때의 로드셀(120)의 무게 차이 값을 의미하고, Wm는 상품의 표준무게를 의미하고, Wv는 카메라(160)에서 인식한 상품의 표준무게를 의미하고, Nv는 카메라(160)에서 인식한 상품의 디지털 코드 값을 의미할 수 있다.Referring to Equation 3, Ns means the number of products sold, W1 means the weight of the load cell 120 when the door is opened, W2 means the weight of the load cell 120 when the door is closed, and Wd is It means the difference in weight of the load cell 120 when the door is opened and when the door is closed, Wm means the standard weight of the product, Wv means the standard weight of the product recognized by the camera 160, Nv may mean the digital code value of the product recognized by the camera 160.

상대연산이 수행됨에 따라 상품의 판매 개수(Ns)가 산출될 수 있다(S1090). 이 때 상품 위치 산출 장치(100)에 포함된 기울기 측정 센서(137)는 상기 로드셀(120)의 경사각(θ2)을 다시 측정할 수 있다. 상품 위치 산출 장치(100)로부터 수신한 로드셀(120)의 기울기 정보에 기초하여 보정지수(k1)을 변경하고, 오류가 해소되었는지 여부가 판단될 수 있다(S1100). 오류가 해소되었는지 여부는 제2 상품정보를 기초로 미리 결정된 오류검출 알고리즘을 다시 수행하면서 판단될 수 있다. 오류가 해소된 것으로 판단되면 REL모드에 따른 상대연산은 중단되어 ABS모드에 따른 절대연산이 다시 수행될 수 있고(S1110), 오류가 해소되지 않은 것으로 판단되면 REL모드가 유지되어 상대연산에 따른 상품 판매 개수가 산출됨과 동시에 지속적으로 보정지수 변경에 따른 오류 해소 알고리즘이 진행될 수 있다.As the relative operation is performed, the number of products sold (Ns) can be calculated (S1090). At this time, the tilt measurement sensor 137 included in the product position calculation device 100 can measure the tilt angle θ2 of the load cell 120 again. The correction index (k1) can be changed based on the tilt information of the load cell 120 received from the product position calculation device 100, and it can be determined whether the error has been resolved (S1100). Whether the error has been resolved can be determined by re-performing a predetermined error detection algorithm based on the second product information. If it is determined that the error has been resolved, the relative operation according to the REL mode is stopped and the absolute operation according to the ABS mode can be performed again (S1110). If it is determined that the error has not been resolved, the REL mode is maintained and the product according to the relative operation is At the same time as the number of sales is calculated, an error resolution algorithm can be implemented by continuously changing the correction index.

도 21은 일 실시예에 따른 오류가 발생된 경우, 오류를 해소하는 과정을 알고리즘으로 나타낸 도면이다.Figure 21 is a diagram illustrating an algorithm for a process for resolving an error when an error occurs according to an embodiment.

일 실시예에 따르면 기울기 측정 센서(137)에 의해 경사진 로드셀(120)의 기울기(θ1)을 측정하고(S110) 이에 기초하여 미리 설정된 보정지수(k1)을 산출할 수있다(S1120). 이 때, 미리 설정된 보정지수(k1)은 cosθ1 값 또는 cscθ1일 수 있으나 이에 제한되는 것은 아니다. 미리 설정된 보정지수(k1)는 메모리에 저장될 수 있다(S1130). ABS모드에 따른 절대연산이 수행되고(S1140), 오류검출 알고리즘에 따라 오류가 발생된 것으로 판단되면(S1150), REL모드에 따른 상대연산이 수행되어(S1160) 상품 판매 개수가 산출될 수 있다(S1170). 이와 동시에 오류발생 신호에 따라, 상품 위치 산출 장치(100)의 기울기 측정 센서(137)는 로드셀(120)의 기울기(θ2)를 다시 측정할 수 있다. 이에 따라 미리 설정된 보정지수(k1)은 새로운 보정지수(k2)로 변경되어 보정할 수 있다(S1190). 이 때, 새로운 보정지수(k2)은 cosθ2 값 또는 cscθ2일 수 있으나 이에 제한되는 것은 아니다. 오류가 해소되었는지 여부를 판단하는 과정에 따라(S11100) 오류가 해소된 것으로 판단되면 REL모드에 따른 상대연산이 중단되어(S1180) ABS모드에 따른 절대연산이 다시 수행될 수 있고, 오류가 해소되지 않은 것으로 판단되면 REL모드에 따른 상대연산이 유지되어 지속적으로 오류 해소 알고리즘이 진행될 수 있다.According to one embodiment, the tilt (θ1) of the inclined load cell 120 can be measured by the tilt measurement sensor 137 (S110), and a preset correction index (k1) can be calculated based on this (S1120). At this time, the preset correction index (k1) may be a cosθ1 value or cscθ1, but is not limited thereto. The preset correction index (k1) can be stored in memory (S1130). Absolute calculation according to ABS mode is performed (S1140), and if it is determined that an error has occurred according to the error detection algorithm (S1150), relative calculation according to REL mode is performed (S1160), and the number of products sold can be calculated (S1160) S1170). At the same time, according to the error occurrence signal, the tilt measurement sensor 137 of the product position calculation device 100 can measure the tilt (θ2) of the load cell 120 again. Accordingly, the preset correction index (k1) can be changed to a new correction index (k2) and corrected (S1190). At this time, the new correction index (k2) may be a cosθ2 value or cscθ2, but is not limited thereto. According to the process of determining whether the error has been resolved (S11100), if it is determined that the error has been resolved, the relative operation according to the REL mode is stopped (S1180) and the absolute operation according to the ABS mode can be performed again, and the error is not resolved. If it is determined that it is not, the relative operation according to the REL mode is maintained and the error resolution algorithm can continue to proceed.

한편 오류가 해소되었는지 여부를 판단하는 과정(S11100)은 오류가 검출되었는지 여부를 판단하는 과정과 동일한 과정에 의해 진행될 수 있다. 미리 결정된 오류검출 알고리즘은 상품의 유무를 판단할 수 있는 이진분류(Binary classification)를 구현하는 제2 합성곱 신경망 모델이 인식한 결과값과, 로드셀(120)의 무게를 측정할 수 있는 무게 측정 센서(133)의 측정 값의 차이를 기초로 하여 오류를 판단하는 알고리즘일 수 있으나 이에 제한되는 것은 아니다.Meanwhile, the process of determining whether an error has been resolved (S11100) may be performed by the same process as the process of determining whether an error has been detected. The predetermined error detection algorithm is a result value recognized by a second convolutional neural network model that implements binary classification that can determine the presence or absence of a product, and a weight measurement sensor that can measure the weight of the load cell 120. (133) It may be an algorithm that determines the error based on the difference in the measured values, but it is not limited to this.

일 실시예에 따른 오류가 검출되었는지 여부를 판단하는 과정은 문이 닫혔을 때를 기준으로, ABS모드의 절대연산에 기초하여 재고수가 판단되면, 상기 재고수(Nt)에 상품의 표준무게(Wm)를 곱한 값과 상기 무게 측정 센서(133)에 의해 측정된 상기 로드셀(120)의 무게에 대한 정보를 비교하여 비율을 산출하고, 산출된 비율이 미리 설정된 값 이상으로 차이가 나면, 상기 오류가 발생한 것으로 판단하고, 산출된 비율이 미리 설정된 값 미만으로 차이나면, 상기 오류가 발생하지 않은 것으로 판단하는 알고리즘일 수 있다.The process of determining whether an error has been detected according to one embodiment is based on when the door is closed. If the inventory number is determined based on absolute calculation in ABS mode, the standard weight of the product (Wm) is added to the inventory number (Nt). ) is calculated by comparing the multiplied value with the information on the weight of the load cell 120 measured by the weight measurement sensor 133, and if the calculated ratio differs by more than a preset value, the error occurs. It may be an algorithm that determines that the error has occurred and, if the calculated ratio differs by less than a preset value, determines that the error has not occurred.

일 실시예에 따른 오류가 검출되었는지 여부를 판단하는 과정은 이진분류를 구현하는 제2 합성곱 신경망 모델에 의해 로드셀(120)에 상품이 없는 것으로 판단된 경우(Nv=0)로서, 무게 측정 센서(133)에 의해 측정된 상기 로드셀(120)의 무게정보에 기초하여 상기 상품이 존재하는 것으로 판단되는 경우(Wc)는 오류가 발생한 것으로 판단하고, 그렇지 않은 경우 오류가 발생하지 않은 것으로 판단하는 알고리즘일 수 있다.The process of determining whether an error has been detected according to one embodiment is when it is determined that there is no product in the load cell 120 (Nv=0) by a second convolutional neural network model that implements binary classification, and the weight measurement sensor When it is determined that the product exists based on the weight information of the load cell 120 measured by (133) (Wc ) may be an algorithm that determines that an error has occurred, and if not, determines that an error has not occurred.

일 실시예에 따른 오류가 검출되었는지 여부를 판단하는 과정은 이진분류를 구현하는 제2 합성곱 신경망 모델에 의해 로드셀(120)에 상품이 있는 것으로 판단된 경우(Nv=1)로서, 메모리에 미리 저장된 상품의 표준무게(Wm)가 머신비전 카메라(160)에서 인식한 상품의 표준무게(Wv)와 일치하지 않는 경우는 오류가 발생한 것으로 판단하고, 그렇지 않은 경우 오류가 발생하지 않은 것으로 판단하는 알고리즘일 수 있다.The process of determining whether an error has been detected according to one embodiment is when it is determined that there is a product in the load cell 120 (Nv = 1) by a second convolutional neural network model that implements binary classification, and is stored in memory in advance. If the standard weight (Wm) of the stored product does not match the standard weight (Wv) of the product recognized by the machine vision camera 160, an algorithm determines that an error has occurred, otherwise, an algorithm determines that an error has not occurred. It can be.

한편, 개시된 실시예들은 컴퓨터에 의해 실행 가능한 명령어를 저장하는 기록매체의 형태로 구현될 수 있다. 명령어는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서(110 or 210)에 의해 실행되었을 때, 프로그램 모듈을 생성하여 개시된 실시예들의 동작을 수행할 수 있다. 기록매체는 컴퓨터로 읽을 수 있는 기록매체로 구현될 수 있다.Meanwhile, the disclosed embodiments may be implemented in the form of a recording medium that stores instructions executable by a computer. Instructions may be stored in the form of program code, and when executed by the processor 110 or 210, they may generate program modules to perform operations of the disclosed embodiments. The recording medium may be implemented as a computer-readable recording medium.

컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터에 의하여 해독될 수 있는 명령어가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치(100) 등이 있을 수 있다.Computer-readable recording media include all types of recording media storing instructions that can be decoded by a computer. For example, there may be read only memory (ROM), random access memory (RAM), magnetic tape, magnetic disk, flash memory, optical data storage device 100, etc.

한편 도 18 내지 도 21에서 설명한 내용은 본 발명의 동작을 설명하기 위한 일 예시에 불과하며 서버가 상품 위치 산출 장치(100)와의 통신을 수행하여 상품 판매 개수를 산출하는 하는 동작에는 그 제한이 없다.Meanwhile, the content described in FIGS. 18 to 21 is only an example for explaining the operation of the present invention, and there is no limitation to the operation in which the server performs communication with the product location calculation device 100 to calculate the number of products sold. .

이상에서 전술한 본 개시의 일 실시예에 따른 방법은, 하드웨어인 서버와 결합되어 실행되기 위해 프로그램(또는 어플리케이션)으로 구현되어 매체에 저장될 수 있다.The method according to an embodiment of the present disclosure described above may be implemented as a program (or application) and stored in a medium in order to be executed in combination with a server, which is hardware.

상기 전술한 프로그램은, 상기 컴퓨터가 프로그램을 읽어 들여 프로그램으로 구현된 상기 방법들을 실행시키기 위하여, 상기 컴퓨터의 제1 프로세서(CPU)가 상기 컴퓨터의 장치 인터페이스를 통해 읽힐 수 있는 C, C++, JAVA, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다. 이러한 코드는 상기 방법들을 실행하는 필요한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Functional Code)를 포함할 수 있고, 상기 기능들을 상기 컴퓨터의 제1 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수 있다. 또한, 이러한 코드는 상기 기능들을 상기 컴퓨터의 제1 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 상기 컴퓨터의 내부 또는 외부 제1 메모리의 어느 위치(주소 번지)에서 참조되어야 하는지에 대한 제1 메모리 참조관련 코드를 더 포함할 수 있다. 또한, 상기 컴퓨터의 제1 프로세서가 상기 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 상기 컴퓨터의 통신 모듈을 이용하여 원격에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수 있다.The above-described program includes C, C++, JAVA, and It may include code encoded in a computer language such as machine language. These codes may include functional codes related to functions that define the necessary functions for executing the methods, and control codes related to execution procedures necessary for the first processor of the computer to execute the functions according to predetermined procedures. may include. In addition, this code is related to a first memory reference as to which location (address address) of the internal or external first memory of the computer should be referenced by additional information or media required for the first processor of the computer to execute the functions. Additional code may be included. In addition, if the first processor of the computer needs to communicate with any other remote computer or server to execute the functions, the code can be transmitted to any other remote computer or server using the communication module of the computer. It may further include communication-related codes for how to communicate, etc., and what information or media should be transmitted and received during communication.

상기 저장되는 매체는, 레지스터, 캐쉬, 제1 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상기 저장되는 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있지만, 이에 제한되지 않는다. 즉, 상기 프로그램은 상기 컴퓨터가 접속할 수 있는 다양한 서버 상의 다양한 기록매체 또는 사용자의 상기 컴퓨터상의 다양한 기록매체에 저장될 수 있다. 또한, 상기 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장될 수 있다.The storage medium refers to a medium that stores data semi-permanently and can be read by a device, rather than a medium that stores data for a short period of time, such as a register, cache, or first memory. Specifically, examples of the storage medium include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, etc., but are not limited thereto. That is, the program may be stored in various recording media on various servers that the computer can access or on various recording media on the user's computer. Additionally, the medium may be distributed to computer systems connected to a network, and computer-readable code may be stored in a distributed manner.

본 개시의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 제1 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 개시가 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.The steps of the method or algorithm described in connection with the embodiments of the present disclosure may be implemented directly in hardware, implemented as a software module executed by hardware, or a combination thereof. Software modules include RAM (Random Access Memory), ROM (Read Only Memory), EPROM (Erasable Programmable ROM), EEPROM (Electrically Erasable Programmable ROM), Flash Memory, hard disk, removable disk, and CD-ROM. , or it may reside on any form of computer-readable recording medium well known in the art to which this disclosure pertains.

이상, 첨부된 도면을 참조로 하여 본 개시의 실시예를 설명하였지만, 본 개시가 속하는 기술분야의 통상의 기술자는 본 개시가 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다.Above, embodiments of the present disclosure have been described with reference to the attached drawings, but those skilled in the art will understand that the present disclosure can be implemented in other specific forms without changing its technical idea or essential features. You will be able to understand it. Therefore, the embodiments described above should be understood in all respects as illustrative and not restrictive.

10: 무인 판매 시스템
30: 상품
100: 상품 위치 산출 장치
110: 제1 프로세서
120: 로드셀
121: 제1 로드셀
122: 제2 로드셀
130: 산출부
133: 무게 측정 센서
137: 기울기 측정 센서
140: 검증부
150: 제1 메모리
160: 카메라
170: 라이다 센서
171: 제1 라이다 센서
172: 제2 라이다 센서
200: 서버
210: 제2 프로세서
220: 제2 메모리
230: 제2 통신부
10: Unmanned vending system
30: Goods
100: Product location calculation device
110: first processor
120: load cell
121: first load cell
122: second load cell
130: Calculation unit
133: Weight measurement sensor
137: Tilt measurement sensor
140: verification unit
150: first memory
160: camera
170: Lidar sensor
171: First lidar sensor
172: Second lidar sensor
200: server
210: second processor
220: second memory
230: Second Communications Department

Claims (10)

복수의 컬럼(column)으로 구분된 진열대의 선반에 배치된 상품의 위치를 센싱하기 위한 복수의 로드셀; 및
상기 복수의 로드셀에서 센싱되는 센싱값 및 상기 센싱값을 센싱한 상기 복수의 로드셀 각각의 위치 정보를 기반으로 상기 선반에 배치된 상품의 위치 정보를 산출하는 프로세서를 포함하고,
상기 복수의 로드셀은, 상기 복수의 컬럼을 각각 구분하기 위한 각 라인 선상에 각각 배치되고,
상기 각 라인 선상의 일측에는, 상기 복수의 로드셀 중 제1 로드셀 및 제2 로드셀이 서로 인접되게 배치되는,
인공지능 기반으로 상품의 정상 배치 여부를 판별하는 장치.
A plurality of load cells for sensing the positions of products placed on the shelves of a display stand divided into a plurality of columns; and
A processor that calculates location information of the product placed on the shelf based on the sensing values sensed by the plurality of load cells and the location information of each of the plurality of load cells that sense the sensing values,
The plurality of load cells are respectively disposed on each line to separate the plurality of columns,
On one side of each line, a first load cell and a second load cell among the plurality of load cells are disposed adjacent to each other,
A device that determines whether a product is properly placed based on artificial intelligence.
제1항에 있어서,
상기 프로세서는,
상기 각 라인 선상의 상기 제1 로드셀 및 상기 제2 로드셀에서 센싱된 센싱값을 내분 계산하여 상기 선반에 배치된 상품의 위치 정보를 산출하는 것을 특징으로 하는,
인공지능 기반으로 상품의 정상 배치 여부를 판별하는 장치.
According to paragraph 1,
The processor,
Characterized in calculating the position information of the product placed on the shelf by internal calculation of the sensing values sensed by the first load cell and the second load cell on each line,
A device that determines whether a product is properly placed based on artificial intelligence.
제2항에 있어서,
상기 프로세서는,
상기 복수의 로드셀에서 센싱되는 센싱값 및 상기 센싱값을 센싱한 복수의 로드셀 각각의 위치 정보를 기반으로 상기 선반에 배치된 상품의 무게와 하부 형상 예상값을 산출하는 것을 특징으로 하는,
인공지능 기반으로 상품의 정상 배치 여부를 판별하는 장치.
According to paragraph 2,
The processor,
Characterized in calculating the expected value of the weight and lower shape of the product placed on the shelf based on the sensing value sensed by the plurality of load cells and the location information of each of the plurality of load cells sensing the sensing value.
A device that determines whether a product is properly placed based on artificial intelligence.
제3항에 있어서,
상기 프로세서는,
상기 산출된 상기 상품의 무게 및 상기 상품의 하부 형상 예상값을 기반으로 상기 상품의 종류를 판단하는 것을 특징으로 하는,
인공지능 기반으로 상품의 정상 배치 여부를 판별하는 장치.
According to paragraph 3,
The processor,
Characterized in determining the type of the product based on the calculated weight of the product and the expected lower shape of the product,
A device that determines whether a product is properly placed based on artificial intelligence.
제4항에 있어서,
상기 프로세서는,
상기 산출된 상품의 위치 정보 및 상기 판단된 상기 상품의 종류를 기반으로 상기 선반에 배치된 상기 상품의 정상 배치 여부를 판단하는 것을 특징으로 하는,
인공지능 기반으로 상품의 정상 배치 여부를 판별하는 장치.
According to paragraph 4,
The processor,
Characterized in determining whether the product placed on the shelf is normally placed based on the calculated location information of the product and the determined type of the product.
A device that determines whether a product is properly placed based on artificial intelligence.
제5항에 있어서,
상기 선반은 상기 선반의 적어도 일부 영역을 복수의 서로 다른 화각으로 촬영 가능한 카메라를 포함하고,
상기 프로세서는,
상기 카메라가 복수의 서로 다른 화각으로 상기 선반을 촬영하여 복수의 촬영 이미지를 생성하도록 제어하고,
상기 산출된 상기 상품의 위치 정보를 상기 복수의 촬영 이미지와 매칭하여 상기 상품의 위치 정보 산출 결과를 검증하는 것을 특징으로 하는,
인공지능 기반으로 상품의 정상 배치 여부를 판별하는 장치.
According to clause 5,
The shelf includes a camera capable of photographing at least a portion of the shelf at a plurality of different angles of view,
The processor,
Controlling the camera to photograph the shelf at a plurality of different angles of view to generate a plurality of captured images,
Characterized in that the calculated location information of the product is matched with the plurality of captured images to verify the calculation result of the location information of the product.
A device that determines whether a product is properly placed based on artificial intelligence.
제6항에 있어서,
상기 프로세서는,
상기 복수의 촬영 이미지를 기반으로 상기 상품의 이미지 위치 정보를 산출하고,
상기 산출된 이미지 위치 정보와 상기 산출된 위치 정보의 일치 여부를 판단하는 것을 특징으로 하는,
인공지능 기반으로 상품의 정상 배치 여부를 판별하는 장치.
According to clause 6,
The processor,
Calculating image location information of the product based on the plurality of captured images,
Characterized in determining whether the calculated image location information matches the calculated location information,
A device that determines whether a product is properly placed based on artificial intelligence.
제1항에 있어서,
상기 선반은 양 측면 각각에 라이다 센서가 마련되고,
상기 프로세서는,
상기 라이다 센서를 통해 센싱된 센싱값을 기반으로 상기 산출된 상품의 위치 정보를 검증하는 것을 특징으로 하는,
인공지능 기반으로 상품의 정상 배치 여부를 판별하는 장치.
According to paragraph 1,
The shelf is provided with a LiDAR sensor on each side,
The processor,
Characterized in verifying the calculated location information of the product based on the sensing value sensed through the LiDAR sensor,
A device that determines whether a product is properly placed based on artificial intelligence.
상품 위치 산출 장치에 의해 수행되는 방법으로,
프로세서가 복수의 로드셀을 통해 복수의 컬럼(column)으로 구분된 진열대의 선반에 상품이 배치된 것을 감지하는 단계; 및
상기 복수의 로드셀에서 센싱되는 센싱값 및 상기 센싱값을 센싱한 상기 복수의 로드셀 각각의 위치 정보를 기반으로 상기 선반에 배치된 상품의 위치 정보를 산출하는 단계를 포함하고,
상기 복수의 로드셀은 상기 복수의 컬럼을 각각 구분하기 위한 각 라인 선상의 일측에 제1 로드셀 및 제2 로드셀이 마련된 것을 특징으로 하는,
인공지능 기반으로 상품의 정상 배치 여부를 판별하는 방법.
A method performed by a product location calculation device,
A processor detecting that a product is placed on a shelf divided into a plurality of columns through a plurality of load cells; and
Comprising a step of calculating position information of the product placed on the shelf based on the sensing value sensed by the plurality of load cells and the position information of each of the plurality of load cells that sensed the sensing value,
The plurality of load cells are characterized in that a first load cell and a second load cell are provided on one side of each line to separate the plurality of columns, respectively.
A method of determining whether a product is properly placed based on artificial intelligence.
하드웨어인 컴퓨터와 결합되어, 제9항의 인공지능 기반으로 상품의 정상 배치 여부를 판별하는 방법을 실행시키기 위하여 매체에 저장된, 프로그램.A program that is combined with a computer, which is hardware, and stored in a medium to execute the method of determining whether a product is properly placed based on the artificial intelligence of Paragraph 9.
KR1020220095350A 2022-06-02 2022-08-01 Apparatus, method and program to determine whether goods are normally placed or not based on artificial intelligence KR102669653B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220095350A KR102669653B1 (en) 2022-06-02 2022-08-01 Apparatus, method and program to determine whether goods are normally placed or not based on artificial intelligence
KR1020240066633A KR20240078426A (en) 2022-06-02 2024-05-22 Apparatus, method and program to determine whether goods are normally placed or not based on artificial intelligence

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020220067664A KR102430486B1 (en) 2022-06-02 2022-06-02 Device, method and program for calculating the position of products in a product showcase based on artificial intelligence using a load cell arrangement structure
KR1020220095350A KR102669653B1 (en) 2022-06-02 2022-08-01 Apparatus, method and program to determine whether goods are normally placed or not based on artificial intelligence

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020220067664A Division KR102430486B1 (en) 2022-06-02 2022-06-02 Device, method and program for calculating the position of products in a product showcase based on artificial intelligence using a load cell arrangement structure

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020240066633A Division KR20240078426A (en) 2022-06-02 2024-05-22 Apparatus, method and program to determine whether goods are normally placed or not based on artificial intelligence

Publications (2)

Publication Number Publication Date
KR20230167681A true KR20230167681A (en) 2023-12-11
KR102669653B1 KR102669653B1 (en) 2024-05-28

Family

ID=82845320

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020220067664A KR102430486B1 (en) 2022-06-02 2022-06-02 Device, method and program for calculating the position of products in a product showcase based on artificial intelligence using a load cell arrangement structure
KR1020220095350A KR102669653B1 (en) 2022-06-02 2022-08-01 Apparatus, method and program to determine whether goods are normally placed or not based on artificial intelligence
KR1020240066633A KR20240078426A (en) 2022-06-02 2024-05-22 Apparatus, method and program to determine whether goods are normally placed or not based on artificial intelligence

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020220067664A KR102430486B1 (en) 2022-06-02 2022-06-02 Device, method and program for calculating the position of products in a product showcase based on artificial intelligence using a load cell arrangement structure

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020240066633A KR20240078426A (en) 2022-06-02 2024-05-22 Apparatus, method and program to determine whether goods are normally placed or not based on artificial intelligence

Country Status (2)

Country Link
KR (3) KR102430486B1 (en)
WO (1) WO2023234605A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102430486B1 (en) * 2022-06-02 2022-08-08 (주) 인터마인즈 Device, method and program for calculating the position of products in a product showcase based on artificial intelligence using a load cell arrangement structure

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150055341A (en) * 2013-11-13 2015-05-21 현대자동차주식회사 Method for controlling walking robot
KR101797656B1 (en) 2015-12-09 2017-11-15 롯데알미늄 주식회사 Apparatus for detecting merchandise position on automatic vending machine
KR20180105779A (en) * 2017-03-16 2018-10-01 주식회사 인바디 Fall risk assessment system
KR20190017635A (en) * 2017-08-11 2019-02-20 (주) 인터마인즈 Apparatus and method for acquiring foreground image
KR102179614B1 (en) * 2020-08-24 2020-11-18 (주) 인터마인즈 Method And System for Providing Unmanned Sale

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102430486B1 (en) * 2022-06-02 2022-08-08 (주) 인터마인즈 Device, method and program for calculating the position of products in a product showcase based on artificial intelligence using a load cell arrangement structure

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150055341A (en) * 2013-11-13 2015-05-21 현대자동차주식회사 Method for controlling walking robot
KR101797656B1 (en) 2015-12-09 2017-11-15 롯데알미늄 주식회사 Apparatus for detecting merchandise position on automatic vending machine
KR20180105779A (en) * 2017-03-16 2018-10-01 주식회사 인바디 Fall risk assessment system
KR20190017635A (en) * 2017-08-11 2019-02-20 (주) 인터마인즈 Apparatus and method for acquiring foreground image
KR102179614B1 (en) * 2020-08-24 2020-11-18 (주) 인터마인즈 Method And System for Providing Unmanned Sale

Also Published As

Publication number Publication date
KR102430486B1 (en) 2022-08-08
KR102669653B1 (en) 2024-05-28
KR20240078426A (en) 2024-06-03
WO2023234605A1 (en) 2023-12-07

Similar Documents

Publication Publication Date Title
KR20240078426A (en) Apparatus, method and program to determine whether goods are normally placed or not based on artificial intelligence
US20210312772A1 (en) Storefront device, storefront management method, and program
US10650040B2 (en) Object recognition of feature-sparse or texture-limited subject matter
JP7260022B2 (en) Store equipment, store system, store management method, program
US11461753B2 (en) Automatic vending method and apparatus, and computer-readable storage medium
US12020304B1 (en) Item and action determination
US10540551B2 (en) Generation of two-dimensional and three-dimensional images of items for visual recognition in checkout apparatus
US11501514B2 (en) Universal object recognition
US11315073B1 (en) Event aspect determination
KR102665299B1 (en) Product sales calculation method and calculation device through product recognition algorithm
US10083233B2 (en) Video processing for motor task analysis
CN107967616A (en) Content recommendation method, apparatus and system
US9303982B1 (en) Determining object depth information using image data
KR102661590B1 (en) Apparatus and method for recognizing object in image
KR102166041B1 (en) Method And Apparatus For Performing Authentication Based On Biometrics
KR102305613B1 (en) Method and apparatus for recognizing emotion
KR20200017237A (en) Method for providing information on merchandise based on priority and electronic device thereof
KR20230172995A (en) Method for predicting bodily injury based on user posture recognition of conscious and unconscious status and apparatus for the same
US11935022B2 (en) Unmanned store operation method and unmanned store system using same
KR102616999B1 (en) Automated unmanned liquor sales system and sales data collection device using vision technology
US12039517B1 (en) Mitigating near-field-communication (NFC) antenna interference
KR102478569B1 (en) Method and apparatus for recognizing based on camera arranged on both sides of the front for each floor of showcase
US20230162267A1 (en) In-store automatic payment method, system, and program
KR102299393B1 (en) Server for matching product with buyer and matching system having the same
KR102436273B1 (en) Method and vending machine for determining inventory using vision recognition based on ai

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant