KR20230167687A - 상품인식 알고리즘을 통한 상품 판매개수 산출방법 및 산출장치 - Google Patents
상품인식 알고리즘을 통한 상품 판매개수 산출방법 및 산출장치 Download PDFInfo
- Publication number
- KR20230167687A KR20230167687A KR1020220104973A KR20220104973A KR20230167687A KR 20230167687 A KR20230167687 A KR 20230167687A KR 1020220104973 A KR1020220104973 A KR 1020220104973A KR 20220104973 A KR20220104973 A KR 20220104973A KR 20230167687 A KR20230167687 A KR 20230167687A
- Authority
- KR
- South Korea
- Prior art keywords
- product
- weight
- information
- determined
- error
- Prior art date
Links
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 57
- 238000004364 calculation method Methods 0.000 title claims abstract description 53
- 238000012937 correction Methods 0.000 claims abstract description 51
- 238000000034 method Methods 0.000 claims abstract description 39
- 238000001514 detection method Methods 0.000 claims abstract description 16
- 238000004891 communication Methods 0.000 claims description 37
- 238000005259 measurement Methods 0.000 claims description 34
- 238000013527 convolutional neural network Methods 0.000 claims description 16
- 238000010801 machine learning Methods 0.000 claims description 11
- 230000008859 change Effects 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 21
- 230000008569 process Effects 0.000 description 16
- 238000005516 engineering process Methods 0.000 description 6
- 238000013473 artificial intelligence Methods 0.000 description 5
- 238000010295 mobile communication Methods 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 2
- 235000019987 cider Nutrition 0.000 description 2
- 238000003066 decision tree Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000007637 random forest analysis Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- 208000025721 COVID-19 Diseases 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000002301 combined effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000005303 weighing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F9/00—Details other than those peculiar to special kinds or types of apparatus
- G07F9/006—Details of the software used for the vending machines
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01G—WEIGHING
- G01G3/00—Weighing apparatus characterised by the use of elastically-deformable members, e.g. spring balances
- G01G3/12—Weighing apparatus characterised by the use of elastically-deformable members, e.g. spring balances wherein the weighing element is in the form of a solid body stressed by pressure or tension during weighing
- G01G3/14—Weighing apparatus characterised by the use of elastically-deformable members, e.g. spring balances wherein the weighing element is in the form of a solid body stressed by pressure or tension during weighing measuring variations of electrical resistance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/64—Three-dimensional objects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/57—Mechanical or electrical details of cameras or camera modules specially adapted for being embedded in other devices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Signal Processing (AREA)
- Image Analysis (AREA)
Abstract
본 발명의 일 실시예에 따른 상품 판매개수 산출방법은, 상품의 표준무게 및 미리 설정된 보정지수를 메모리에 저장하고, 상품수납부의 문이 열렸을 때의 제1 상품정보 및 상기 상품수납부의 문이 닫혔을 때의 제2 상품정보 각각에 포함된 무게정보를 기초로 절대연산을 수행하여 상기 상품의 판매개수를 산출하는 단계, 상기 제2 상품정보를 기초로 미리 결정된 오류검출 알고리즘에 따라 오류가 발생한 것으로 판단되면, 상기 절대연산을 중단하고, 상기 제1 상품정보 및 상기 제2 상품정보 각각에 포함된 상기 무게정보 차이 값을 기초로 상대연산을 수행하여 상기 상품의 판매개수를 산출하는 단계 및 외부장치로부터 수신한 로드셀의 기울기 정보에 기초하여 상기 보정지수를 변경하여 상기 오류가 해소된 것으로 판단되면, 상기 상대연산을 중단하고 상기 절대연산을 다시 수행하는 단계를 포함하고, 상기 보정지수를 변경하는 것은, (Mb : 경사진 로드셀 위에서의 무게, k1 : 미리 설정된 보정지수, Ma : 평지 위에서의 무게)의 식에 기초하여 결정하는 특징을 포함한다.
Description
본 발명은 상품 판매개수 산출방법에 관한 것으로 보다 상세하게는 무인 상품판매 장치에서 상품이 판매되는 경우 상품을 인식하는 알고리즘을 이용하여 상품 판매개수를 산출하는 방법과 관련된 발명이다.
무인점포가 일상을 파고들고 있다. COVID-19 영향에 따른 비대면 소비 증가와 인건비 부담, 정보통신기술(ICT) 발전이 복합적으로 작용하며 소매업 전반에 무인화가 빠르게 확산되고 있는 것이다.
무인점포 확산에 따라 키오스크와 인공지능(AI) 비전, 보안 솔루션 등 관련 기술의 수요도 함께 증가하며 무인매장 산업 생태계가 급속도로 커지고 있는 실정이다.
무인점포에 도입된 주요기술 중 머신비전은, 인공지능 기반의 이미지 및 동영상 분석을 통해 고객의 구매행동을 식별하는 기술이다. 상품 재고 판단은 이러한 머신비전 기반의 AI카메라를 이용하거나 무게측정 센서에 의해 이루어지고 있으나, 오작동에 의해 판매개수를 정확하게 판단하지 못하는 경우 상품 결제 시 정확한 결제정보를 획득하지 못하는 문제점이 존재하였다.
본 발명이 해결하고자 하는 과제는 무인 상품판매 장치로부터 상품판매 시, 오류가 발생하여 상품 판매개수를 정확하게 판단하지 못하는 경우, 모드 전환에 따른 대체 알고리즘을 통해 상품의 판매개수를 판단하여 정확한 결제정보를 획득하기 위한 상품 판매개수 산출방법을 제공하는 것이다.
본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
본 발명의 일 실시예에 따른 상품 판매개수 산출방법은, 상품의 표준무게 및 미리 설정된 보정지수를 메모리에 저장하고,
상품수납부의 문이 열리면, 카메라 및 무게측정 센서를 포함한 외부장치로부터 제1 상품정보를 수신하는 단계와
상기 상품수납부의 문이 닫히면, 상기 외부장치로부터 제2 상품정보를 수신하는 단계와
상기 제1 상품정보 및 상기 제2 상품정보 각각에 포함된 무게정보를 기초로 절대연산을 수행하여 상기 상품의 판매개수를 산출하는 단계와
상기 제2 상품정보를 기초로 미리 결정된 오류검출 알고리즘에 따라 오류가 발생한 것으로 판단되면, 상기 절대연산을 중단하고, 상기 제1 상품정보 및 상기 제2 상품정보 각각에 포함된 상기 무게정보 차이 값을 기초로 상대연산을 수행하여 상기 상품의 판매개수를 산출하는 단계와
상기 외부장치로부터 수신한 로드셀의 기울기 정보에 기초하여 상기 보정지수를 변경하여 상기 오류가 해소된 것으로 판단되면, 상기 상대연산을 중단하고 상기 절대연산을 다시 수행하는 단계를 포함한다.
또한, 상기 제1 상품정보는,
상기 상품수납부의 문이 열리면, 상기 카메라로부터 촬영된 상기 상품 이미지 및 상기 무게측정 센서로부터 측정된 상기 로드셀의 무게에 대한 정보일 수 있고,
상기 제2 상품정보는,
상기 상품수납부의 문이 닫히면, 상기 카메라로부터 촬영된 상기 상품 이미지 및 상기 무게측정 센서로부터 측정된 상기 로드셀의 무게에 대한 정보일 수 있다.
또한, 상기 절대연산 및 상기 상대연산은, 상기 카메라로부터 촬영된 상기 상품 이미지에 기초하여 기계학습이 수행되어 각각에 대한 연산 값이 결정되고,
상기 기계학습을 수행하는 학습모델은 다중클래스 분류(Multiclass classification) 및 이진 분류(Binary classification)를 구현할 수 있고,
상기 다중클래스 분류는, 제1 합성곱 신경망(CNN, Convolutional neural network) 모델에 의해 수행되고,
상기 이진 분류는, 제2 합성곱 신경망 모델에 의해 수행될 수 있다.
또한, 상기 미리 결정된 오류검출 알고리즘은,
문이 닫혔을 때를 기준으로, 상기 절대연산에 기초하여 재고수가 판단되면, 상기 재고수에 상기 상품의 표준무게를 곱한 값과 상기 무게측정 센서에 의해 측정된 상기 로드셀의 무게에 대한 정보를 비교하여 비율을 산출하고, 상기 비율이 미리 설정된 값 이상으로 차이가 나면, 상기 오류가 발생한 것으로 판단하고,
상기 비율이 미리 설정된 값 미만으로 차이나면, 상기 오류가 발생하지 않은 것으로 판단하는 알고리즘일 수 있다.
본 발명의 일 실시예에 따른 상품 판매개수 산출방법은,
또한, 상기 오류가 발생한 것으로 판단되면,
상기 미리 설정된 보정지수의 변경이 필요한 것으로 판단하고,
상기 외부장치로부터 상기 로드셀의 기울기 정보를 수신하고,
상기 로드셀의 기울기 정보에 기초하여 상기 미리 설정된 보정지수를 변경하고,
상기 미리 설정된 보정지수가 변경되면, 상기 오류가 해소된 것으로 판단할 수 있다.
또한, 상기 미리 결정된 오류검출 알고리즘은,
상기 제2 합성곱 신경망 모델에 의해 상기 로드셀에 상기 상품이 없는 것으로 판단된 경우로서,
*상기 무게측정 센서에 의해 측정된 상기 로드셀의 무게정보에 기초하여 상기 상품이 존재하는 것으로 판단되는 경우는 오류가 발생한 것으로 판단하고,
그렇지 않은 경우 오류가 발생하지 않은 것으로 판단하는 알고리즘일 수 있다.
본 발명의 일 실시예에 따른 상품 판매개수 산출방법은,
상기 오류가 발생한 것으로 판단되면,
상기 미리 설정된 보정지수의 변경이 필요한 것으로 판단하고,
상기 외부장치로부터 상기 로드셀의 기울기 정보를 수신하고,
상기 로드셀의 기울기 정보에 기초하여 상기 미리 설정된 보정지수를 변경하고,
상기 미리 설정된 보정지수가 변경되면, 상기 오류가 해소된 것으로 판단할 수 있다.
이 외에도, 본 개시를 구현하기 위한 실행하기 위한 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램이 더 제공될 수 있다.
이 외에도, 본 개시를 구현하기 위한 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 컴퓨터 판독 가능한 기록 매체가 더 제공될 수 있다.
일 측면에 따른 상품 판매개수 산출방법 및 산출장치에 의하면 상품인식에 따른 알고리즘에 따라 상품 판매개수 산출 모드전환을 제공하여 오류가 발생한 경우에도 모드전환에 따른 상품 판매개수를 산출할 수 있다.
일 측면에 따른 상품 판매개수 산출방법 및 산출장치에 의하면 미리 결정된 오류검출 알고리즘에 따라 오류가 발생한 경우를 판단하고 모드전환이 이루어질 수 있도록 하여 정확한 결제정보를 획득할 수 있다.
일 측면에 따른 상품 판매개수 산출방법 및 산출장치에 의하면 모드전환에 따른 상품 판매개수 연산이 수행되더라도, 오류를 해소하는 알고리즘이 동시에 진행되어 기존 모드의 오류를 해소하고 정확한 결제정보를 획득할 수 있다.
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도1은 일 실시예에 따른 외부장치가 서버와의 통신이 이루어지는 것을 개략적으로 나타낸 도면이다.
도2a는 일 실시예에 따른 외부장치와 서버에 포함된 구성을 개략적으로 나타낸 도면이다.
도2b는 일 실시예에 따른 프로세서에 포함된 구성을 개략적으로 나타낸 도면이다.
도3은 일 실시예에 따른 상품인식 알고리즘에 따른 모드전환을 나타낸 도면이다.
도4는 일 실시예에 따른 카메라 및 무게측정 센서를 포함한 외부장치의 모습을 개략적으로 나타낸 도면이다.
도5는 일 실시예에 따른 외부장치 및 서버에서 이루어지는 단계를 나타낸 순서도이다.
도6은 일 실시예에 따른 기울기측정 센서에 의해 로드셀의 경사각을 측정하는 모습을 개략적으로 나타낸 도면이다.
도7은 일 실시예에 따른 모드전환이 이루어지고 오류가 해소되기까지의 과정을 알고리즘으로 나타낸 도면이다.
도8은 일 실시예에 따른 ABS모드에 따른 절대연산이 수행되는 과정을 알고리즘으로 나타낸 도면이다.
도9는 일 실시예에 따른 REL모드에 따른 상대연산이 수행되는 과정을 알고리즘으로 나타낸 도면이다.
도10은 일 실시예에 따른 오류가 발생된 경우, 오류를 해소하는 과정을 알고리즘으로 나타낸 도면이다.
도2a는 일 실시예에 따른 외부장치와 서버에 포함된 구성을 개략적으로 나타낸 도면이다.
도2b는 일 실시예에 따른 프로세서에 포함된 구성을 개략적으로 나타낸 도면이다.
도3은 일 실시예에 따른 상품인식 알고리즘에 따른 모드전환을 나타낸 도면이다.
도4는 일 실시예에 따른 카메라 및 무게측정 센서를 포함한 외부장치의 모습을 개략적으로 나타낸 도면이다.
도5는 일 실시예에 따른 외부장치 및 서버에서 이루어지는 단계를 나타낸 순서도이다.
도6은 일 실시예에 따른 기울기측정 센서에 의해 로드셀의 경사각을 측정하는 모습을 개략적으로 나타낸 도면이다.
도7은 일 실시예에 따른 모드전환이 이루어지고 오류가 해소되기까지의 과정을 알고리즘으로 나타낸 도면이다.
도8은 일 실시예에 따른 ABS모드에 따른 절대연산이 수행되는 과정을 알고리즘으로 나타낸 도면이다.
도9는 일 실시예에 따른 REL모드에 따른 상대연산이 수행되는 과정을 알고리즘으로 나타낸 도면이다.
도10은 일 실시예에 따른 오류가 발생된 경우, 오류를 해소하는 과정을 알고리즘으로 나타낸 도면이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야의 통상의 기술자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다.
도1은 일 실시예에 따른 외부장치(100)가 서버(200)와의 통신이 이루어지는 것을 개략적으로 나타낸 도면이고, 도 2a는 일 실시예에 따른 외부장치(100)와 서버(200)에 포함된 구성을 개략적으로 나타낸 도면이다.
도1 및 도2a를 참고하면 본 발명의 동작을 수행하기 위해서는 외부장치(100) 및 서버(200)가 마련될 수 있다.
외부장치(100)는 상품을 수납할 수 있는 로드셀(110), 무게측정센서(120), 기울기 측정센서(130), 도어부(140) 및 카메라(150)를 포함하는 상품수납부(170)와 서버(200)와의 통신을 수행할 수 있는 제1 통신모듈(160) 등을 포함하도록 마련될 수 있다.
서버(200)는 메모리(210), 외부장치(100)와 통신을 수행할 수 있는 제2 통신모듈(230) 및 메모리(210)와 통신을 수행할 수 있는 적어도 하나의 프로세서(220) 등을 포함하도록 마련될 수 있다.
한편 로드셀(110)은 외부장치(100) 내에 상품을 수납할 수 있는 수납공간을 의미할 수 있다. 로드셀(110)은 경사각(θ1)만큼 기울어져 있기 때문에 이용자가 상품을 수취해 가면 경사면을 타고 상품이 도어부(140) 쪽으로 이동할 수 있다.
한편 외부장치(100)에 수납된 상품의 무게를 측정하기 위해, 로드셀(110)에는 무게측정 센서(120)가 장착될 수 있다.
본 발명의 일 실시예에 따르면 무게측정센서(120)는 로드셀(110)의 아랫부분에 부착되어 로드셀(110) 위의 상품의 무게에 따라 센싱거리 및 센싱 저항값이 달라지고, 이에 기초하여 무게를 측정할 수 있다. 예를 들어, 로드셀(110) 위에 상품이 10개 남은 경우와 상품이 5개 남은 경우를 비교하여 볼 때, 상품이 10개 남아있는 경우에 센싱거리가 짧아짐에 따라 센싱 저항값이 커지며, 상품이 5개 남아이 있는 경우는 센싱거리가 길어짐에 따라 센싱 저항값이 작아질 수 있어 이에 기초하여 무게가 측정될 수 있다.
한편 로드셀(110)의 기울기를 측정하기 위해, 외부장치(100)에는 기울기측정 센서(130)가 마련될 수 있다. 기울기측정 센서(130)는 후술하는 바에 따라 보정지수(k1)를 미리 설정하고, 오류가 발생한 경우 새로운 경사각을 측정하여 보정지수(k2)를 변경하는 데에 이용될 수 있다.
한편 무게측정 센서(120) 및 기울기측정 센서(130)는 본 장치의 내 정보, 본 장치를 둘러싼 주변 환경 정보 및 사용자 정보 중 적어도 하나를 센싱하고, 이에 대응하는 센싱 신호를 발생시킨다. 프로세서(220)는 이러한 센싱 신호에 기초하여, 본 장치의 구동 또는 동작을 제어하거나, 본 장치에 설치된 응용 프로그램과 관련된 데이터 처리, 기능 또는 동작을 수행할 수 있다.
한편 도어부(140)는 외부장치(100)에 장착된 상품수납부(170)의 문일 수 있다. 후술하는 바에 따라 상품 판매개수 산출 시 ABS모드의 절대연산을 수행하는 경우, 도어부(140)의 문이 열릴 때와 문이 닫힐 때를 기준으로 상기 연산이 수행될 수 있다.
한편 카메라(150)는 외부장치(100)에 장착된 인공지능 기반의 머신비전 카메라를 의미할 수 있다. 카메라(150)에서 촬영된 상품의 이미지는 서버(200)에 전달되어 프로세서(220)에서 상기 수신한 이미지를 기초로 기계학습을 수행할 수 있다.
한편 머신비전 카메라는 상품 영상을 촬영하여 서버(200)에 전송할 수 있다. 머신비전 카메라는 렌즈와 이미지 센서, 메인보드 및 인터페이스 보드로 구성될 수 있으나, 이에 제한되는 것은 아니다. 또한, 렌즈와 이미지 센서를 통해 만들어진 영상은 메인보드에서 필요에 따라 적합한 형태로 보정될수 있다. 이렇게 메인보드에서 처리된 영상은 서버(200)에 전송될 수 있다. 머신비전 카메라는 GigE Vision 카메라(Gigabit Ethernet Vision Camera), USB3.0 카메라, CameraLink 카메라, CoaXPress 카메라 등이 포함될 수 있다.
한편 메모리(210)는, 후술하는 바에 따른 상품의 표준무게 및 미리 설정된 보정지수(k1)을 저장할 수 있다.
상품의 표준무게는 로드셀(110) 위의 상품의 일반적 무게로서 메모리(210)에 미리 저장되는 고정값일 수 있다.
상품의 표준무게는 로드셀(110)의 상품의 종류에 따라 다르게 저장될 수 있다. 예를 들어, 로드셀1의 상품이 185ml 캔사이다인 경우, 상기 캔사이다의 표준무게를 200g으로 저장될 수 있고, 로드셀2의 상품이 250ml 캔콜라인 경우, 상기 캔콜라의 표준무게를 300g으로 저장될 수 있다.
메모리(210)는 본 장치의 다양한 기능을 지원하는 데이터와, 프로세서(220)의 동작을 위한 프로그램을 저장할 수 있고, 입/출력되는 데이터들(예를 들어, 음악 파일, 정지영상, 동영상 등)을 저장할 있고, 본 장치에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션(application)), 본 장치의 동작을 위한 데이터들, 명령어들을 저장할 수 있다. 이러한 응용 프로그램 중 적어도 일부는, 무선 통신을 통해 외부 서버로부터 다운로드 될 수 있다.
이러한, 메모리(210)는 플래시 메모리 타입(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), 자기 메모리, 자기 디스크 및 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 또한, 메모리(210)는 본 장치와는 분리되어 있으나, 유선 또는 무선으로 연결된 데이터베이스가 될 수도 있다.
적어도 하나의 프로세서(220)는 본 장치 내의 구성요소들의 동작을 제어하기 위한 알고리즘 또는 알고리즘을 재현한 프로그램에 대한 데이터를 저장하는 메모리, 및 메모리(210)에 저장된 데이터를 이용하여 전술한 동작을 수행할 수 있다. 이때, 메모리(210)와 프로세서(220)는 각각 별개의 칩으로 구현될 수 있다. 또는, 메모리(210)와 프로세서(220)는 단일 칩으로 구현될 수도 있다.
또한, 프로세서(220)는 이하의 도2b 내지 도10에서 설명되는 본 개시에 따른 다양한 실시 예들을 본 장치 상에서 구현하기 위하여, 위에서 살펴본 구성요소들을 중 어느 하나 또는 복수를 조합하여 제어할 수 있다.
상기 구성요소들 중 외부장치(100)의 제1 통신모듈(160) 및 서버의 제2 통신모듈(230)은 외부 장치와 통신을 가능하게 하는 하나 이상의 구성 요소를 포함할 수 있으며, 예를 들어, 방송 수신 모듈, 유선통신 모듈, 무선통신 모듈, 근거리 통신 모듈, 위치정보 모듈 중 적어도 하나일 수 있다.
유선 통신 모듈은, 지역 통신(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) 등 다양한 케이블 통신 모듈을 포함할 수 있다.
무선 통신 모듈은 와이파이(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 등 다양한 무선 통신 방식을 지원하는 무선 통신 모듈을 포함할 수 있다.
무선 통신 모듈은 이동통신 신호를 송신하는 안테나 및 송신기(Transmitter)를 포함하는 무선 통신 인터페이스를 포함할 수 있다. 또한, 무선 통신 모듈은 제어부의 제어에 따라 무선 통신 인터페이스를 통해 제어부로부터 출력된 디지털 제어 신호를 아날로그 형태의 무선 신호로 변조하는 이동통신 신호 변환 모듈을 더 포함할 수 있다.
무선 통신 모듈은 이동통신 신호를 수신하는 안테나 및 수신기(Receiver)를 포함하는 무선 통신 인터페이스를 포함할 수 있다. 또한, 무선 통신 모듈은 무선 통신 인터페이스를 통하여 수신한 아날로그 형태의 무선 신호를 디지털 제어 신호로 복조하기 위한 이동통신 신호 변환 모듈을 더 포함할 수 있다.
근거리 통신 모듈은 근거리 통신(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) 기술 중 적어도 하나를 이용하여, 근거리 통신을 지원할 수 있다.
도2b는 일 실시예에 따른 프로세서(220)에 포함된 구성을 개략적으로 나타낸 도면이다.
도2b를 참고하면 서버(200) 내의 프로세서(220)는 후술하는 바에 따라 ABS모드의 절대연산 및 REL모드의 상대연산을 수행하는 상품 판매개수 연산부(221)와 머신비전 카메라에 의해 촬영된 상품이미지를 기초로 인공지능 학습모델의 기계학습이 수행되는 기계학습부(222)로 구성될 수 있다.
도2b에 도시된 구성 요소들의 성능에 대응하여 적어도 하나의 구성요소가 추가되거나 삭제될 수 있다. 또한, 구성 요소들의 상호 위치는 시스템의 성능 또는 구조에 대응하여 변경될 수 있다는 것은 당해 기술 분야에서 통상의 지식을 가진 자에게 용이하게 이해될 것이다.
한편, 도2b에서 도시된 각각의 구성요소는 소프트웨어 및/또는 Field Programmable Gate Array(FPGA) 및 주문형 반도체(ASIC, Application Specific Integrated Circuit)와 같은 하드웨어 구성요소를 의미한다.
도3은 일 실시예에 따른 상품인식 알고리즘에 따른 모드전환을 나타낸 도면이고 도4는 일 실시예에 따른 카메라 및 무게측정 센서를 포함한 외부장치(100)의 모습을 개략적으로 나타낸 도면이다.
도3을 참고하면 경사각이 θ1인 로드셀(110)에는 상품(111)이 수납될 수 있고, 경사면에 따라 이용자가 상품(111)을 수취한 경우 도어부(140)쪽으로 상품(111)이 이동될 수 있다. 카메라(150)는 도어부(140)쪽과 가까운 로드셀(110)의 앞부분을 촬영할 수 있다. 따라서, 머신비전 카메라(150)에 의해 촬영된 상품 이미지가 프로세서(220)에 전달된 경우, 후술하는 바에 따라 제2 합성곱 신경망(CNN) 모델에 의해 학습이 수행되어 상품(111)이 존재하는지 유무를 판단할 수 있다. 후술하는 바에 따라 ABS모드의 절대연산 및 REL모드의 상대연산 시, 상품(111)이 존재하는 경우 이미지 디지털 인식에 따른 코드 값인 Nv가 1로 판단될 수 있고, 상품(111)이 존재하지 않는 경우 Nv는 0으로 판단될 수 있다.
한편 도3에서의 상품(111)은 로드셀(110)에 진열된 상품 각각을 의미할 수 있다.
도3을 참고하면 본 발명은 기본적으로 ABS모드(Absolute mode)(310)가 설정되어 있고, ABS모드(310)에 따라 상품(111) 판매개수 산출 시 절대연산이 수행될 수 있다. 이 때 미리 결정된 오류검출 알고리즘에 따라 오류가 발생한 것으로 판단되면 ABS모드(310)에 따른 절대연산을 중단하고, REL모드(Relative mode)(320)로 전환되어 상대연산을 수행할 수 있다(S410). 또한, 미리 결정된 보정 알고리즘에 따라 오류가 해소된 것으로 판단되면 REL모드(320)에 따른 상대연산을 중단하고, 다시 ABS모드(310)로 전환되어 절대연산을 수행할 수 있다(S420).
도4를 참고하면 무게측정 센서(120)는 전술한 바와 같이 로드셀(110)의 아랫부분에 장착되어 로드셀(110) 위의 상품(111) 무게를 측정할 수 있다.
한편 무게측정 센서(120)는 외부장치(100)의 도어부(140)의 문이 열리면 상품의 무게를 측정하고, 도어부(140)의 문이 닫히면 상품의 무게를 측정하도록 설정될 수 있다.
제1 상품정보는 도어부의(140)의 문이 열렸을 때를 기준으로 상품의 무게정보 및 카메라(150)에 의해 촬영된 상품의 이미지 정보를 포함할 수 있으나, 이에 제한되지 않는다.
제2 상품정보는 도어부(140)의 문이 닫혔을 때를 기준으로 상품의 무게정보 및 카메라(150)에 의해 촬영된 상품의 이미지 정보를 포함할 수 있으나, 이에 제한되지 않는다.
한편, 제1 상품정보 및 제2 상품정보는 로드셀 상의 동일한 컬럼의 상품에 관한 정보로서, 문이 열렸을 때와 문이 닫혔을 때를 기준으로 한 상품정보일 수 있다.
이렇게 제1 상품정보 및 제2 상품정보는 외부장치(100)의 제1 통신모듈(160)와 서버(200)의 제2 통신모듈(230)간의 통신을 통해 외부장치(100)에서 서버(200)로 전송될 수 있다.
도5는 일 실시예에 따른 서버(200) 및 외부장치(100)에서 이루어지는 단계를 나타낸 순서도이다.
본 발명의 일 실시예에 따르면 이용자는 상품결제를 위하여 체크카드 및 신용카드를 포함하여 상품 결제가 가능한 결제수단을 외부장치(100)에 인식시킬 수 있다(S601). 이렇게 인식된 카드정보는 서버(200)의 제2 통신모듈(230)을 통해 프로세서(220)에 전달될 수 있다(S602). 서버(200)는 이렇게 전달된 카드정보를 수신할 수 있다(S603). 서버(200)에서 올바른 카드정보라고 인식한 경우, 서버(200)는 외부장치(100)에 도어부(140) 문열림 명령을 전달할 수 있다(S604). 도어부(140) 문열림 명령이 전달됨에 따라, 외부장치(100)의 도어부(140) 문이 열리면(S605), 도어부(140)의 문이 열렸다는 정보가 서버(200)에 전달될 수 있다(S606). 도어부(140) 문이 열림에 따라, 서버(200)는 제1 상품정보를 수신할 수 있다(S607). 이용자 외부장치(100)에서 상품을 수취하고(S608) 도어부(140)의 문이 닫히면(S609), 도어부(140)의 문이 닫혔다는 정보가 서버(200)에 전달될 수 있다(S610). 도어부(140)의 문이 닫힘에 따라, 프로세서(220)는 제2 상품정보를 수신할 수 있다(S611). 서버(200)는 제1 상품정보 및 제2 상품정보를 수신함에 따라 제1 상품정보 및 제2 상품정보를 기초로 연산을 수행하여 이용자가 수취한 상품의 판매개수를 산출할 수 있다(S612). 산출된 상품 판매개수는 외부장치(100)에 전달되어(S613) 판매개수에 따른 상품결제가 진행될 수 있다(S614).
도6은 일 실시예에 따른 기울기측정 센서(130)에 의해 로드셀(110)의 경사각을 측정하는 모습을 개략적으로 나타낸 도면이다.
한편 도6에서의 상품(111)은 로드셀(110)에 진열된 상품 각각을 의미할 수 있다.
로드셀(110)은 평지를 기준으로 경사각(θ1)만큼 경사질 수 있어, 이용자가 외부장치(100)에서 상품을 수취하는 경우, 경사면을 따라 도어부(140)에서 먼 쪽에 있는 상품이 도어부(140)쪽으로 이동할 수 있다.
본 발명의 일 실시예에 따른 기울기측정 센서(130)는 로드셀(110)의 아래쪽에 부착되어 로드셀(110)의 기울기를 측정할 수 있다.
한편 측정된 경사각(θ1)은 메모리(210)에 저장되는 미리 설정된 보정지수(k1)를 결정하는데에 이용될 수 있다. 경사진 로드셀(110)에서의 무게는 평지에서의 무게와 다를 수 있기 때문에 미리 설정된 보정지수에 의한 보정모델을 이용할 수 있다. 즉, 로드셀(110)의 경사로 인해 발생하는 무게 측정 오차를 보정할 수 있는 보정지수를 이용하여 무게를 보정할 수 있다.
일 실시예에 따라 보정모델의 수학식은 다음 수학식 1과 같이 표현될 수 있다.
수학식 1
수학식 1을 참고하면 Mb는 경사진 로드셀 위에서의 무게를 의미하고, k1은 미리 설정된 보정지수를 의미하고, Ma는 평지 위에서의 무게를 의미할 수 있다.
한편 로드셀(110)의 경사각이 θ1인 경우 미리 설정된 보정지수 k1은 cos θ1 또는 cscθ1일 수 있으나 이에 제한되는 것은 아니다.
또한 일 실시예에 따른 미리 설정된 보정지수(k1)는 로드셀(110) 설치 시점에 무게측정 센서(120) 위에 단위 무게(예를 들어, 100g, 200g 등) 추를 올려 놓으면서 해당 추의 실제 무게값으로 읽힐 수 있도록 무게측정 센서의 영점을 조정함으로써 설정될 수도 있다.
도7은 일 실시예에 따른 모드전환이 이루어지고 오류가 해소되기까지의 과정을 알고리즘으로 나타낸 도면이다.
본 발명은 기본적으로 ABS모드로 시작되며(S810), 제1 상품정보 및 제2 상품정보 각각에 포함된 무게정보에 기초하여 절대연산을 수행할 수 있다(S820). 이에 따라 상품 판매개수가 산출될 수 있고(S830), 제2 상품정보를 기초로 미리 결정된 오류검출 알고리즘에 따라 오류가 발생된 것으로 판단(S840)하는 과정이 이루어진다. 오류가 발생하지 않은 경우 지속적으로 ABS모드에 따른 절대연산이 수행되며 오류가 발생한 것으로 판단되면 REL모드로 전환된다(S850). REL모드로 전환됨에 따라, 제1 상품정보 및 제2 상품정보 각각에 포함된 무게정보의 차이 값에 기초하여 상대연산을 수행할 수 있다(S860). 이에 따라 상품 판매개수가 산출될 수 있고(S870), 동시에 미리 결정된 보정 알고리즘에 따라 외부장치(100) 내에 포함된 기울기측정 센서(130)로부터의 로드셀(110)의 기울기정보에 기초하여
미리 설정된 보정지수(k1)을 변경할 수 있다(S880). 이에 따라 오류가 해소된 것으로 판단되면 다시 ABS모드에로 재 전환되어 절대연산을 수행할 수 있으나 오류가 해소되지 않은 것으로 판단되면 REL모드가 유지되어 상대연산에 따른 상품 판매개수를 산출할 수 있다(S890).
도8은 일 실시예에 따른 ABS모드에 따른 절대연산이 수행되는 과정을 알고리즘으로 나타낸 도면이다.
먼저 상품의 표준무게(Wm)를 메모리(210)에 저장하고(S910), 문을 열었을 때 제1 상품정보가 수신(S920), 문을 닫았을 때 제2 상품정보가 수신될 수 있다(S930). 한편 제1 상품정보 및 제2 상품정보는 전술한 바와 같이, 문을 열었을 때와 문을 닫았을 때 각각에 대하여 무게측정 센서(120)에 의한 로드셀(110)의 무게정보 및 머신비전 카메라(150)에 의해 촬영된 상품의 이미지정보를 포함할 수 있다.
프로세서(220)의 기계학습부(222)에서는 학습모델에 의한 기계학습이 수행될 수 있다. ABS모드 절대연산 및 후술하는 바에 따른 REL모드 상대연산의 연산 값은 머신비전 카메라(150)로부터 촬영된 상품의 이미지를 데이터로 하여 기계학습을 수행하여 연산 값이 결정될 수 있다. 기계학습을 수행하는 학습모델은 다중클래스 분류(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 중 적어도 하나의 알고리즘을 포함할 수 있다.
도어부(140)의 문이 닫혔을 때 상품이 존재하는지 여부는 제2 합성곱 신경망 모델에 의해 이진분류(Binary classification)가 구현됨에 따라 결정될 수 있다.
이용자의 상품 수취 후 문을 닫았을 때를 기준으로, 상품이 존재하는 경우로 인식하면 디지털코드 값인 Nv=1, 상품이 존재하지 않는 경우로 인식하면 디지털코드 값인 Nv=0으로 인식할 수 있다.
또한, 이용자의 상품 수취 후 문을 닫았을 때를 기준으로, 상품이 존재하는 경우로 인식하면 머신비전 카메라(150)가 인식한 상품의 표준무게 Wv를 메모리(220)로부터 수신할 수 있고, 상품이 존재하지 않는 경우로 인식하면 머신비전 카메라(150)가 인식한 상품의 표준무게(Wv)가 0으로 판단될 수 있다.
프로세서(220)의 판매개수 연산부(221)에서는 ABS모드에 따른 절대연산을 수행(S970)할 수 있고, 절대연산의 수식은 다음 수학식 2과 같이 표현될 수 있다.
수학식 2
수학식 2를 참고하면 Ns는 상품 판매개수를 의미하고, Nb는 문을 열었을 때 재고수를 의미하고, Nt는 문을 닫았을 때 재고수를 의미하고, Wm는 상품의 표준무게를 의미하고, Wc는 문을 닫았을 때 로드셀의 무게를 의미하고, Wv는 카메라에서 인식한 상품의 표준무게를 의미하고, Nv는 카메라에서 인식한 상품의 디지털 코드 값을 의미할 수 있다.
절대연산이 수행됨에 따라 상품의 판매개수(Ns)가 산출될 수 있다(S980). 이 때 정확한 판매개수를 산출하기 위해, 제2 상품정보를 기초로 미리 결정된 오류검출 알고리즘에 따라 오류가 발생했는지 여부가 판단될 수 있다(S990). 오류가 발생한 경우 REL모드로 전환되어 상대연산이 수행될 수 있고(S9100), 오류가 발생하지 않은 경우 ABS모드가 유지되어 절대연산이 수행될 수 있다(S9110).
도9는 일 실시예에 따른 REL모드에 따른 상대연산이 수행되는 과정을 알고리즘으로 나타낸 도면이다.
먼저 상품의 표준무게(Wm)를 메모리(210)에 저장하고(S1010), 문을 열었을 때 제1 상품정보가 수신(S1020), 문을 닫았을 때 제2 상품정보가 수신될 수 있다(S1030). 문을 열었을 때 로드셀(110)의 무게를 W1으로 하고, 문을 닫았을 때 로드셀(110)의 무게를 W2이라 할 때, 제1 상품정보 및 제2 상품정보에 포함된 각각의 로드셀(110)의 무게정보에 기초하여 그 차이 값인 Wd=W1-W2이 계산될 수 있다(S1040).
REL모드 상대연산의 경우도 ABS모드 절대연산과 마찬가지로, 도어부(140)의 문이 닫혔을 때 상품이 존재하는지 여부는 제2 합성곱 신경망 모델에 의해 이진분류(Binary classification)가 구현됨에 따라 결정될 수 있다.
이용자의 상품 수취 후 문을 닫았을 때를 기준으로, 상품이 존재하는 경우로 인식하면 디지털코드 값인 Nv=1, 상품이 존재하지 않는 경우로 인식하면 디지털코드 값인 Nv=0으로 인식할 수 있다.
또한, 이용자의 상품 수취 후 문을 닫았을 때를 기준으로, 상품이 존재하는 경우로 인식하면 머신비전 카메라(150)가 인식한 상품의 표준무게 Wv를 메모리(220)로부터 수신할 수 있고, 상품이 존재하지 않는 경우로 인식하면 머신비전 카메라(150)가 인식한 상품의 표준무게(Wv)가 0으로 판단될 수 있다.
프로세서(220)의 판매개수 연산부(221)에서는 REL모드에 따른 상대연산을 수행(S1080)할 수 있고, 상대연산의 수식은 다음 수학식 3으로 표현될 수 있다.
수학식 3
수학식 3를 참고하면 Ns는 상품 판매개수를 의미하고, W1는 문을 열었을 때 로드셀의 무게를 의미하고, W2는 문을 닫았을 때 로드셀의 무게를 의미하고, Wd는 문을 열었을 때와 문을 닫았을 때의 로드셀의 무게 차이 값을 의미하고, Wm는 상품의 표준무게를 의미하고, Wv는 카메라에서 인식한 상품의 표준무게를 의미하고, Nv는 카메라에서 인식한 상품의 디지털 코드 값을 의미할 수 있다.
상대연산이 수행됨에 따라 상품의 판매개수(Ns)가 산출될 수 있다(S1090). 이 때 외부장치(100)에 포함된 기울기측정 센서(130)는 상기 로드셀(110)의 경사각(θ2)을 다시 측정할 수 있다. 외부장치(100)로부터 수신한 로드셀(110)의 기울기 정보에 기초하여 보정지수(k1)을 변경하고, 오류가 해소되었는지 여부가 판단될 수 있다(S1100). 오류가 해소되었는지 여부는 제2 상품정보를 기초로 미리 결정된 오류검출 알고리즘을 다시 수행하면서 판단될 수 있다. 오류가 해소된 것으로 판단되면 REL모드에 따른 상대연산은 중단되어 ABS모드에 따른 절대연산이 다시 수행될 수 있고(S1110), 오류가 해소되지 않은 것으로 판단되면 REL모드가 유지되어 상대연산에 따른 상품 판매개수가 산출됨과 동시에 지속적으로 보정지수 변경에 따른 오류 해소 알고리즘이 진행될 수 있다.
도10은 일 실시예에 따른 오류가 발생된 경우, 오류를 해소하는 과정을 알고리즘으로 나타낸 도면이다.
일 실시예에 따르면 기울기측정 센서(130)에 의해 경사진 로드셀(110)의 기울기(θ1)을 측정하고(S110) 이에 기초하여 미리 설정된 보정지수(k1)을 산출할 수있다(S1120). 이 때, 미리 설정된 보정지수(k1)은 cosθ1 값 또는 cscθ1일 수 있으나 이에 제한되는 것은 아니다. 미리 설정된 보정지수(k1)는 메모리(210)에 저장될 수 있다(S1130). ABS모드에 따른 절대연산이 수행되고(S1140), 오류검출 알고리즘에 따라 오류가 발생된 것으로 판단되면(S1150), REL모드에 따른 상대연산이 수행되어(S1160) 상품 판매개수가 산출될 수 있다(S1170). 이와 동시에 오류발생 신호에 따라, 외부장치(100)의 기울기측정 센서(130)는 로드셀(110)의 기울기(θ2)를 다시 측정할 수 있다. 이에 따라 미리 설정된 보정지수(k1)은 새로운 보정지수(k2)로 변경되어 보정할 수 있다(S1190). 이 때, 새로운 보정지수(k2)은 cosθ2 값 또는 cscθ2일 수 있으나 이에 제한되는 것은 아니다. 오류가 해소되었는지 여부를 판단하는 과정에 따라(S11100) 오류가 해소된 것으로 판단되면 REL모드에 따른 상대연산이 중단되어(S1180) ABS모드에 따른 절대연산이 다시 수행될 수 있고, 오류가 해소되지 않은 것으로 판단되면 REL모드에 따른 상대연산이 유지되어 지속적으로 오류 해소 알고리즘이 진행될 수 있다.
한편 오류가 해소되었는지 여부를 판단하는 과정(S11100)은 오류가 검출되었는지 여부를 판단하는 과정과 동일한 과정에 의해 진행될 수 있다. 미리 결정된 오류검출 알고리즘은 상품의 유무를 판단할 수 있는 이진분류(Binary classification)를 구현하는 제2 합성곱 신경망 모델이 인식한 결과값과, 로드셀(110)의 무게를 측정할 수 있는 무게측정 센서(120)의 측정 값의 차이를 기초로 하여 오류를 판단하는 알고리즘일 수 있으나 이에 제한되는 것은 아니다.
일 실시예에 따른 오류가 검출되었는지 여부를 판단하는 과정은 문이 닫혔을 때를 기준으로, ABS모드의 절대연산에 기초하여 재고수가 판단되면, 상기 재고수(Nt)에 상품의 표준무게(Wm)를 곱한 값과 상기 무게측정 센서(120)에 의해 측정된 상기 로드셀(110)의 무게에 대한 정보를 비교하여 비율을 산출하고, 산출된 비율이 미리 설정된 값 이상으로 차이가 나면, 상기 오류가 발생한 것으로 판단하고, 산출된 비율이 미리 설정된 값 미만으로 차이나면, 상기 오류가 발생하지 않은 것으로 판단하는 알고리즘일 수 있다.
일 실시예에 따른 오류가 검출되었는지 여부를 판단하는 과정은 이진분류를 구현하는 제2 합성곱 신경망 모델에 의해 로드셀(110)에 상품이 없는 것으로 판단된 경우(Nv=0)로서, 무게측정 센서(120)에 의해 측정된 상기 로드셀(110)의 무게정보에 기초하여 상기 상품이 존재하는 것으로 판단되는 경우(Wc)는 오류가 발생한 것으로 판단하고, 그렇지 않은 경우 오류가 발생하지 않은 것으로 판단하는 알고리즘일 수 있다.
일 실시예에 따른 오류가 검출되었는지 여부를 판단하는 과정은 이진분류를 구현하는 제2 합성곱 신경망 모델에 의해 로드셀(110)에 상품이 있는 것으로 판단된 경우(Nv=1)로서, 메모리(120)에 미리 저장된 상품의 표준무게(Wm)가 머신비전 카메라(150)에서 인식한 상품의 표준무게(Wv)와 일치하지 않는 경우는 오류가 발생한 것으로 판단하고, 그렇지 않은 경우 오류가 발생하지 않은 것으로 판단하는 알고리즘일 수 있다.
한편, 개시된 실시예들은 컴퓨터에 의해 실행 가능한 명령어를 저장하는 기록매체의 형태로 구현될 수 있다. 명령어는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 프로그램 모듈을 생성하여 개시된 실시예들의 동작을 수행할 수 있다. 기록매체는 컴퓨터로 읽을 수 있는 기록매체로 구현될 수 있다.
컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터에 의하여 해독될 수 있는 명령어가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다.
한편 도7 내지 도10에서 설명한 내용은 본 발명의 동작을 설명하기 위한 일 예시에 불과하며 서버(200)가 외부장치(100)와의 통신을 수행하여 상품 판매 개수를 산출하는 하는 동작에는 그 제한이 없다.
본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.
이상, 첨부된 도면을 참조로 하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다.
100 : 외부장치
200 : 서버
200 : 서버
Claims (10)
- 상품의 표준무게 및 미리 설정된 보정지수를 메모리에 저장하고,
상품수납부의 문이 열렸을 때의 제1 상품정보 및 상기 상품수납부의 문이 닫혔을 때의 제2 상품정보 각각에 포함된 무게정보를 기초로 절대연산을 수행하여 상기 상품의 판매개수를 산출하는 단계;
상기 제2 상품정보를 기초로 미리 결정된 오류검출 알고리즘에 따라 오류가 발생한 것으로 판단되면, 상기 절대연산을 중단하고, 상기 제1 상품정보 및 상기 제2 상품정보 각각에 포함된 상기 무게정보의 차이 값을 기초로 상대연산을 수행하여 상기 상품의 판매개수를 산출하는 단계;
외부장치로부터 수신한 로드셀의 기울기 정보에 기초하여 상기 보정지수를 변경하여 상기 오류가 해소된 것으로 판단되면, 상기 상대연산을 중단하고 상기 절대연산을 다시 수행하는 단계를 포함하고,
상기 보정지수를 변경하는 것은,
(Mb : 경사진 로드셀 위에서의 무게, k1 : 미리 설정된 보정지수, Ma : 평지 위에서의 무게)의 식에 기초하여 결정하는, 상품인식 알고리즘을 통한 상품 판매개수 산출방법. - 제1 항에 있어서,
상기 제1 상품정보는,
상기 상품수납부의 문이 열리면, 상기 카메라로부터 촬영된 상기 상품 이미지 및 상기 무게측정 센서로부터 측정된 상기 로드셀의 무게에 대한 정보이고,
상기 제2 상품정보는,
상기 상품수납부의 문이 닫히면, 상기 카메라로부터 촬영된 상기 상품 이미지 및 상기 무게측정 센서로부터 측정된 상기 로드셀의 무게에 대한 정보인 것을 특징으로 하는, 상품인식 알고리즘을 통한 상품 판매개수 산출방법. - 제2 항에 있어서,
상기 절대연산은, 식에 기초하여결정하고,
상기 상대연산은 의 식에 기초하여 결정하고
(단, Ns : 상품 판매개수, Nb : 문을 열었을 때 재고수, Nt : 문을 닫았을 때 재고수, Wm : 상품의 표준무게, Wc : 문을 닫았을 때 로드셀의 무게, Wv : 카메라에서 인식한 상품의 표준무게, Nv : 카메라에서 인식한 상품의 디지털 코드 값, Wd : 문을 열었을 때와 문을 닫았을 때의 로드셀의 무게 차이 값),
상기 상품수납부의 문이 닫혔을 때를 기준으로,
상기 카메라로부터 상기 상품이 존재하는 경우로 인식하면 Nv=1, 상기 카메라로부터 상기 상품이 존재하지 않는 경우로 인식하면 Nv=0으로 결정하고,
상기 Nv=1인 경우,
상기 카메라가 인식한 상기 상품의 표준무게 Wv를 상기 메모리로부터 수신할 수 있고,
상기 Nv=0인 경우,
상기 Wv=0으로 판단하는 것을 특징으로 하는, 상품인식 알고리즘을 통한 상품 판매개수 산출방법. - 제2 항에 있어서,
상기 절대연산 및 상기 상대연산은, 상기 카메라로부터 촬영된 상기 상품의 이미지에 기초하여 기계학습이 수행되어 각각에 대한 연산 값이 결정되는 것을 특징으로 하는, 상품인식 알고리즘을 통한 상품 판매개수 산출방법. - 제4 항에 있어서,
상기 미리 결정된 오류검출 알고리즘은,
문이 닫혔을 때를 기준으로, 상기 절대연산에 기초하여 재고수가 판단되면, 상기 재고수에 상기 상품의 표준무게를 곱한 값과 상기 무게측정 센서에 의해 측정된 상기 로드셀의 무게에 대한 정보를 비교하여 비율을 산출하고, 상기 비율이 미리 설정된 값 이상으로 차이가 나면, 상기 오류가 발생한 것으로 판단하고,
상기 비율이 미리 설정된 값 미만으로 차이나면, 상기 오류가 발생하지 않은 것으로 판단하는 알고리즘이고,
상기 오류가 발생한 것으로 판단되면,
상기 미리 설정된 보정지수의 변경이 필요한 것으로 판단하고,
상기 외부장치로부터 상기 로드셀의 기울기 정보를 수신하고,
상기 로드셀의 기울기 정보에 기초하여 상기 미리 설정된 보정지수를 변경하고,
상기 미리 설정된 보정지수가 변경되면, 상기 오류가 해소된 것으로 판단하는 것을 특징으로 하는, 상품인식 알고리즘을 통한 상품 판매개수 산출방법. - 제4 항에 있어서,
상기 미리 결정된 오류검출 알고리즘은,
이진분류를 구현하는 합성곱 신경망 모델(CNN)에 의해 상기 로드셀에 상기 상품이 없는 것으로 판단된 경우로서,
상기 메모리에 미리 저장된 상기 상품의 표준무게가 상기 카메라에서 인식한 상품의 표준무게와 일치하지 않는 경우는 오류가 발생한 것으로 판단하고,
그렇지 않은 경우 오류가 발생하지 않은 것으로 판단하는 알고리즘인 것을 특징으로 하는, 상품인식 알고리즘을 통한 상품 판매개수 산출방법. - 제6 항에 있어서,
상기 오류가 발생한 것으로 판단되면,
상기 미리 설정된 보정지수의 변경이 필요한 것으로 판단하고,
상기 외부장치로부터 상기 로드셀의 기울기 정보를 수신하고,
상기 로드셀의 기울기 정보에 기초하여 상기 미리 설정된 보정지수를 변경하고,
상기 미리 설정된 보정지수가 변경되면, 상기 오류가 해소된 것으로 판단하는 것을 특징으로 하는, 상품인식 알고리즘을 통한 상품 판매개수 산출방법. - 상품의 표준무게 및 미리 설정된 보정지수를 저장하는 메모리;
적어도 하나의 카메라 및 무게측정 센서를 포함하는 외부장치와 통신을 수행하는 통신모듈; 및
상기 메모리와 통신을 수행하는 적어도 하나의 프로세서를 포함하고,
상기 적어도 하나의 프로세서는,
상품수납부의 문이 열렸을 때의 제1 상품정보 및 상기 상품수납부의 문이 닫혔을 때의 제2 상품정보 각각에 포함된 무게정보를 기초로 절대연산을 수행하여 상기 상품의 판매개수를 산출하고,
상기 제2 상품정보를 기초로 미리 결정된 오류검출 알고리즘에 따라 오류가 발생한 것으로 판단되면,
상기 절대연산을 중단하고, 상기 제1 상품정보 및 상기 제2 상품정보 각각에 포함된 상기 무게정보의 차이 값을 기초로 상대연산을 수행하여 상기 상품의 판매개수를 산출하고,
상기 외부장치로부터 수신한 로드셀의 기울기 정보에 기초하여 상기 보정지수를 변경하여 상기 오류가 해소된 것으로 판단되면, 상기 상대연산을 중단하고 상기 절대연산을 다시 수행하고,
상기 보정지수를 변경하는 것은,
(Mb : 경사진 로드셀 위에서의 무게, k1 : 미리 설정된 보정지수, Ma : 평지 위에서의 무게)의 식에 기초하여 결정하는, 상품인식 알고리즘을 통한 상품 판매개수 산출 서버. - 제8 항에 있어서,
상기 절대연산 및 상기 상대연산은, 상기 카메라로부터 촬영된 상기 상품의 이미지에 기초하여 기계학습이 수행되어 각각에 대한 연산 값이 결정되고,
상기 미리 결정된 오류검출 알고리즘은,
문이 닫혔을 때를 기준으로, 상기 절대연산에 기초하여 재고수가 판단되면, 상기 재고수에 상기 상품의 표준무게를 곱한 값과 상기 무게측정 센서에 의해 측정된 상기 로드셀의 무게에 대한 정보를 비교하여 비율을 산출하고,
상기 비율이 미리 설정된 값 이상으로 차이가 나면, 상기 오류가 발생한 것으로 판단하고,
상기 비율이 미리 설정된 값 미만으로 차이나면, 상기 오류가 발생하지 않은 것으로 판단하는 알고리즘이고,
상기 오류가 발생한 것으로 판단되면,
상기 미리 설정된 보정지수의 변경이 필요한 것으로 판단하고,
상기 외부장치로부터 상기 로드셀의 기울기 정보를 수신하고,
상기 로드셀의 기울기 정보에 기초하여 상기 미리 설정된 보정지수를 변경하고,
상기 미리 설정된 보정지수가 변경되면, 상기 오류가 해소된 것으로 판단하는 것을 특징으로 하는, 상품인식 알고리즘을 통한 상품 판매개수 산출 서버. - 제1 항 내지 제7 항 중 어느 한 항에 따른 방법을 실행시키기 위하여 매체에 저장된 컴퓨터프로그램.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220104973A KR102665299B1 (ko) | 2022-06-02 | 2022-08-22 | 상품인식 알고리즘을 통한 상품 판매개수 산출방법 및 산출장치 |
KR1020240059848A KR20240065238A (ko) | 2022-06-02 | 2024-05-07 | 상품인식 알고리즘을 통한 상품 판매개수 산출방법 및 산출장치 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220067378A KR102436494B1 (ko) | 2022-06-02 | 2022-06-02 | 상품인식 알고리즘을 통한 상품 판매개수 산출방법 및 산출장치 |
KR1020220104973A KR102665299B1 (ko) | 2022-06-02 | 2022-08-22 | 상품인식 알고리즘을 통한 상품 판매개수 산출방법 및 산출장치 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220067378A Division KR102436494B1 (ko) | 2022-06-02 | 2022-06-02 | 상품인식 알고리즘을 통한 상품 판매개수 산출방법 및 산출장치 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020240059848A Division KR20240065238A (ko) | 2022-06-02 | 2024-05-07 | 상품인식 알고리즘을 통한 상품 판매개수 산출방법 및 산출장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20230167687A true KR20230167687A (ko) | 2023-12-11 |
KR102665299B1 KR102665299B1 (ko) | 2024-05-10 |
Family
ID=83113492
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220067378A KR102436494B1 (ko) | 2022-06-02 | 2022-06-02 | 상품인식 알고리즘을 통한 상품 판매개수 산출방법 및 산출장치 |
KR1020220104973A KR102665299B1 (ko) | 2022-06-02 | 2022-08-22 | 상품인식 알고리즘을 통한 상품 판매개수 산출방법 및 산출장치 |
KR1020240059848A KR20240065238A (ko) | 2022-06-02 | 2024-05-07 | 상품인식 알고리즘을 통한 상품 판매개수 산출방법 및 산출장치 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220067378A KR102436494B1 (ko) | 2022-06-02 | 2022-06-02 | 상품인식 알고리즘을 통한 상품 판매개수 산출방법 및 산출장치 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020240059848A KR20240065238A (ko) | 2022-06-02 | 2024-05-07 | 상품인식 알고리즘을 통한 상품 판매개수 산출방법 및 산출장치 |
Country Status (1)
Country | Link |
---|---|
KR (3) | KR102436494B1 (ko) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102544909B1 (ko) * | 2022-11-07 | 2023-06-21 | 퓨처게이트 주식회사 | 상품 진열용 선반을 구비한 무인 판매대 |
KR102544908B1 (ko) * | 2022-11-07 | 2023-06-21 | 퓨처게이트 주식회사 | 상품 입출입 감지용 센서를 구비한 무인 판매대 |
CN116222669B (zh) * | 2023-04-23 | 2023-10-24 | 乐山市计量测试所 | 一种自动售水机的水质、计重实时监测系统及其监测方法 |
CN116708801B (zh) * | 2023-08-04 | 2023-11-03 | 广东星云开物科技股份有限公司 | 视频压缩方法、共享售卖柜和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190078543A (ko) * | 2017-12-26 | 2019-07-04 | 삼성전자주식회사 | 이미지 획득 장치 및 그의 제어 방법 |
KR102097905B1 (ko) * | 2019-06-04 | 2020-04-06 | 주식회사 딥엑스 | 이미지 객체 인식 장치 및 방법 |
KR102179614B1 (ko) * | 2020-08-24 | 2020-11-18 | (주) 인터마인즈 | 무인 판매 방법 및 시스템 |
KR20210024871A (ko) * | 2019-08-26 | 2021-03-08 | 에스케이텔레콤 주식회사 | 기계학습 모델 관리 시스템과 방법 및 영상 분석 장치 |
KR20210141234A (ko) | 2020-05-15 | 2021-11-23 | 하나시스 주식회사 | 무인판매 시스템 |
-
2022
- 2022-06-02 KR KR1020220067378A patent/KR102436494B1/ko active IP Right Grant
- 2022-08-22 KR KR1020220104973A patent/KR102665299B1/ko active IP Right Grant
-
2024
- 2024-05-07 KR KR1020240059848A patent/KR20240065238A/ko active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190078543A (ko) * | 2017-12-26 | 2019-07-04 | 삼성전자주식회사 | 이미지 획득 장치 및 그의 제어 방법 |
KR102097905B1 (ko) * | 2019-06-04 | 2020-04-06 | 주식회사 딥엑스 | 이미지 객체 인식 장치 및 방법 |
KR20210024871A (ko) * | 2019-08-26 | 2021-03-08 | 에스케이텔레콤 주식회사 | 기계학습 모델 관리 시스템과 방법 및 영상 분석 장치 |
KR20210141234A (ko) | 2020-05-15 | 2021-11-23 | 하나시스 주식회사 | 무인판매 시스템 |
KR102179614B1 (ko) * | 2020-08-24 | 2020-11-18 | (주) 인터마인즈 | 무인 판매 방법 및 시스템 |
Also Published As
Publication number | Publication date |
---|---|
KR102665299B1 (ko) | 2024-05-10 |
KR102436494B1 (ko) | 2022-08-26 |
KR20240065238A (ko) | 2024-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102665299B1 (ko) | 상품인식 알고리즘을 통한 상품 판매개수 산출방법 및 산출장치 | |
JP7248689B2 (ja) | 自動販売方法および装置、ならびにコンピュータ可読記憶媒体 | |
US20210133474A1 (en) | Image processing apparatus, system, method, and non-transitory computer readable medium storing program | |
US20200265239A1 (en) | Method and apparatus for processing video stream | |
US10573022B2 (en) | Object recognition system and method of registering a new object | |
US10061909B2 (en) | Device authentication based on behavior classification using convolution neural network | |
KR102661590B1 (ko) | 이미지 내에서 객체를 인식하기 위한 장치 및 방법 | |
CN108460908A (zh) | 自动售货方法和系统以及自动售货装置和自动贩售机 | |
CN102119343B (zh) | 对象检测装置和对象检测方法 | |
US20180158015A1 (en) | Inventory management system and inventory management method | |
JP7264401B2 (ja) | 会計方法、装置及びシステム | |
CN109146629B (zh) | 目标对象的锁定方法、装置、计算机设备和存储介质 | |
CN111625793B (zh) | 身份识别、订单支付、子人脸库建立方法、装置及设备、订单支付系统 | |
US20170344972A1 (en) | Recognition system, information processing apparatus, and information processing method | |
CN110363626A (zh) | 一种无人货柜行为模式监测方法、电子设备及无人货柜 | |
US10713614B1 (en) | Weight and vision based item tracking | |
KR20220055168A (ko) | 무인 매장에서 자동 결제 방법 및 그것을 구현하는 무인 매장 플랫폼 장치 | |
US20230098811A1 (en) | Computer vision grouping recognition system | |
US12039517B1 (en) | Mitigating near-field-communication (NFC) antenna interference | |
US20210125166A1 (en) | Systems and methods of identifying a retail item at a checkout node | |
CN111008210B (zh) | 商品识别方法、装置、编解码器及存储装置 | |
CN116051636A (zh) | 位姿计算方法、装置和设备 | |
US20230162267A1 (en) | In-store automatic payment method, system, and program | |
CN115170903A (zh) | 一种车辆场景图像处理方法、系统及电子设备 | |
KR102330366B1 (ko) | 스마트 카트를 이용한 매장에서의 결제 처리 방법 및 결제 처리 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
A107 | Divisional application of patent | ||
GRNT | Written decision to grant |