WO2021152819A1 - コンピュータシステム、情報コード読取方法及びプログラム - Google Patents

コンピュータシステム、情報コード読取方法及びプログラム Download PDF

Info

Publication number
WO2021152819A1
WO2021152819A1 PCT/JP2020/003630 JP2020003630W WO2021152819A1 WO 2021152819 A1 WO2021152819 A1 WO 2021152819A1 JP 2020003630 W JP2020003630 W JP 2020003630W WO 2021152819 A1 WO2021152819 A1 WO 2021152819A1
Authority
WO
WIPO (PCT)
Prior art keywords
information code
image
computer
information
module
Prior art date
Application number
PCT/JP2020/003630
Other languages
English (en)
French (fr)
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 PCT/JP2020/003630 priority Critical patent/WO2021152819A1/ja
Priority to JP2021517720A priority patent/JP7058053B2/ja
Publication of WO2021152819A1 publication Critical patent/WO2021152819A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light

Definitions

  • the present invention relates to a computer system for reading an information code, an information code reading method, and a program.
  • information codes for example, one-dimensional code, two-dimensional code, AR marker
  • information codes have been used for various purposes such as goods management, work management, entrance / exit management, membership card, and payment. Utilization of such an information code is performed by reading the displayed information code by an application, a reading device, or the like.
  • a user-desired information code is specified from an image containing a plurality of information codes, and the specified information code is enlarged and photographed.
  • a system for reading an information code desired by this user is disclosed (see Patent Document 1).
  • the present invention provides a computer system, an information code reading method, and a program capable of reading an information code even when the size of the information code contained in the image is small or when a plurality of information codes exist. With the goal.
  • the present invention provides the following solutions.
  • the present invention is a computer system that reads an information code.
  • An acquisition means for acquiring an image in which the information code is taken, and An analysis means for analyzing the acquired image and A detection means for detecting the information code based on the analysis result of the image and the learned feature amount of the information code. If the detected information code cannot be recognized, an expansion means for expanding the information code and A recognition means for recognizing the expanded information code and Provide a computer system characterized by the provision of.
  • the computer system that reads the information code acquires the image in which the information code is taken, analyzes the acquired image, analyzes the analysis result of the image, and the feature amount of the learned information code. Based on the above, when the information code is detected and the detected information code cannot be recognized, the information code is expanded and the expanded information code is recognized.
  • the present invention is in the category of systems, but in other categories such as methods and programs, the same actions and effects are exhibited according to the categories.
  • a computer system an information code reading method, and a program capable of reading an information code even when the size of the information code included in the image is small or when a plurality of information codes exist are provided. It becomes possible to do.
  • FIG. 1 is a diagram showing an outline of the information code reading system 1.
  • FIG. 2 is an overall configuration diagram of the information code reading system 1.
  • FIG. 3 is a diagram showing a flowchart of a learning process executed by the computer 10.
  • FIG. 4 is a diagram showing a flowchart of the information code reading process executed by the computer 10.
  • FIG. 5 is a diagram showing a flowchart of the re-learning process executed by the computer 10.
  • FIG. 6 is a diagram schematically showing an example of an image including an information code.
  • FIG. 7 is a diagram schematically showing an enlarged state of the information code.
  • FIG. 1 is a diagram for explaining an outline of an information code reading system 1 which is a preferred embodiment of the present invention.
  • the information code reading system 1 is a computer system composed of a computer 10 and reading an information code.
  • the information code reading system 1 includes a photographing device such as a camera, a terminal device having a photographing function (for example, a mobile terminal such as a smartphone or a tablet terminal, a head-mounted display such as a smart glass, or a wearable terminal such as a smart watch). Other terminals, devices, etc. may be included. In this case, the information code reading system 1 is executed by any or a combination of the computer 10 and the included terminals, devices, and the like.
  • a photographing device such as a camera
  • a terminal device having a photographing function for example, a mobile terminal such as a smartphone or a tablet terminal, a head-mounted display such as a smart glass, or a wearable terminal such as a smart watch.
  • Other terminals, devices, etc. may be included.
  • the information code reading system 1 is executed by any or a combination of the computer 10 and the included terminals, devices, and the like.
  • the information code reading system 1 may be realized by one computer such as a computer 10, or may be realized by a plurality of computers such as a cloud computer.
  • the information code reading system 1 may be composed of the terminal device described above instead of the computer 10.
  • the computer 10 is connected to the above-mentioned photographing device, terminal device, other terminals, devices, etc. via a public network or the like so as to be capable of data communication, and executes necessary data and information transmission / reception.
  • the computer 10 acquires an image in which the information code is taken.
  • a photographing device or a terminal device photographs an information code and transmits the captured image to the computer 10.
  • the computer 10 acquires the image in which the information code is taken.
  • the terminal device captures the information code to acquire an image in which the information code is captured.
  • Computer 10 analyzes the acquired image.
  • the computer 10 analyzes the acquired image and extracts the feature amount in the image.
  • the feature amount is, for example, a statistical numerical value such as a shape, an outline, a hue, an average or dispersion of pixel values, or a histogram.
  • the computer 10 extracts unique features such as a finder pattern, an alignment pattern, a quiet zone, and a timing pattern existing in this image as feature quantities.
  • a unique one is extracted as a feature quantity.
  • the computer 10 detects the information code based on the analysis result and the feature amount of the learned information code.
  • the computer 10 machine-learns the feature amount of the information code in advance, and creates a learned model for information code detection based on the learning result.
  • the computer 10 detects the information code existing in the acquired image based on the feature amount extracted this time and the trained model for information code detection created in advance.
  • the computer 10 expands this information code. For example, the computer 10 tries to recognize the detected information code.
  • the computer 10 tries to recognize the detected information code.
  • the computer 10 cannot recognize the detected information code, for example, when the detected information code is not large enough (that is, smaller than a predetermined size), there are a plurality of detected information codes. (That is, one information code cannot be specified). If the computer 10 cannot recognize such a detected information code, the computer 10 expands the detected information code to a recognizable size.
  • Computer 10 recognizes the expanded information code. For example, the computer 10 recognizes the expanded information code and reads the information and the like stored in the information code.
  • the computer 10 may be configured to calculate the coordinates of the image of the information code recognized this time and update the feature amount of the learned information code based on the acquired image and the coordinates. For example, the computer 10 calculates the coordinates in the image of the information code recognized this time. The computer 10 creates a new learning data set based on the calculated coordinates and the image, and the information is based on the created learning data set and the information code detection trained model created in advance. Update the trained model for code detection. The computer 10 will use the updated information code detection trained model when detecting the information code from the next time onward.
  • the computer 10 acquires an image in which the information code is taken (step S01).
  • the photographing device or the terminal device photographs the information code and transmits the captured image to the computer 10.
  • the computer 10 receives this image.
  • the computer 10 acquires the image in which the information code is captured.
  • the computer 10 analyzes the acquired image (step S02).
  • the computer 10 performs image analysis on the acquired image and extracts the above-mentioned feature amount in this image.
  • the computer 10 detects the information code based on the analysis result and the feature amount of the learned information code (step S03).
  • the computer 10 detects the information code existing in the acquired image based on the learned model for information code detection created by machine learning the feature amount of the information code and the feature amount extracted this time.
  • the computer 10 expands this information code (step S04).
  • the computer 10 attempts to recognize this information code. If the computer 10 cannot recognize the information code as a result of trying the recognition, the computer 10 expands the information code to a recognizable size.
  • the computer 10 detects only one information code in the image, the computer 10 enlarges the one information code.
  • the computer 10 detects a plurality of information codes in the image, the computer 10 expands any one of the plurality of information codes based on a predetermined condition or the like.
  • the computer 10 may be configured to sequentially expand the plurality of information codes based on predetermined conditions and the like.
  • the computer 10 recognizes the expanded information code (step S05).
  • the computer 10 recognizes the enlarged information code and reads the information and the like stored in the information code.
  • FIG. 2 is a diagram showing a system configuration of an information code reading system 1 which is a preferred embodiment of the present invention.
  • the information code reading system 1 is a computer system composed of a computer 10 and reading an information code such as a one-dimensional code, a two-dimensional code, and an AR marker.
  • the computer 10 is connected to a photographing device, a terminal device, other terminals, devices, etc. via a public network or the like so that data communication is possible, and executes necessary data and information transmission / reception.
  • the information code reading system 1 may include a photographing device, a terminal device, other terminals and devices, and the like. In this case, the information code reading system 1 executes each process described later by any or a plurality of combinations of the computer 10 and the terminals and devices included in the computer 10.
  • the information code reading system 1 may be realized by one computer such as a computer 10, or may be realized by a plurality of computers such as a cloud computer.
  • the information code reading system 1 may be configured by the terminal device described above instead of the computer 10.
  • the computer 10 is provided with a CPU (Central Processing Unit), GPU (Graphics Processing Unit), RAM (Random Access Memory), ROM (Read Only Memory), etc. as a control unit, and is used as a communication unit with other terminals, devices, and the like.
  • a device for enabling communication for example, a Wi-Fi (Wi-Fi (Wi-Fi) compatible device compliant with IEEE802.11) and the like are provided.
  • the computer 10 includes a data storage unit such as a hard disk, a semiconductor memory, a recording medium, and a memory card as a recording unit.
  • the computer 10 includes various devices and the like that execute various processes as a processing unit.
  • control unit reads a predetermined program to realize the learning data set acquisition module 20 and the image acquisition module 21 in cooperation with the communication unit. Further, in the computer 10, the control unit reads a predetermined program to realize the recording module 30 in cooperation with the recording unit. Further, in the computer 10, when the control unit reads a predetermined program, the analysis module 40, the learning module 41, the model creation module 42, the detection module 43, the recognition module 44, and the recognition judgment module 45 cooperate with the processing unit. , Expansion module 46, calculation module 47, synthesis module 48, and model update module 49 are realized.
  • FIG. 3 is a diagram showing a flowchart of a learning process executed by the computer 10. The process executed by each of the above-mentioned modules will be described together with this process.
  • the learning data set acquisition module 20 acquires the learning data set of the information code (step S10).
  • the learning data set acquisition module 20 acquires this learning data set from another computer, an external server, or the like.
  • This learning data set is, for example, an image in which one or more information codes are captured.
  • the analysis module 40 analyzes the acquired learning data set (step S11).
  • the analysis module 40 performs image analysis on this learning data set and extracts the feature amount of the information code.
  • the feature amount is peculiar to the two-dimensional code such as the finder pattern, the alignment pattern, the quiet zone, and the timing pattern, and is other than the one-dimensional code and the AR marker. In some cases, it is unique to each of these.
  • the learning module 41 executes machine learning based on the analysis result (step S12). In step S12, the learning module 41 executes supervised learning using the extracted features as a teacher as machine learning.
  • the model creation module 42 creates a learned model for information code detection based on the learning result (step S13). In step S13, the model creation module 42 creates a trained model for information code detection incorporating the feature amount of the learned information code.
  • the recording module 30 records the created trained model for detecting the information code in itself (step S14).
  • the computer 10 will use the recorded information code detection trained model in the processing described later.
  • FIG. 4 is a diagram showing a flowchart of the information code reading process executed by the computer 10. The process executed by each of the above-mentioned modules will be described together with this process.
  • the image acquisition module 21 acquires an image in which the information code is captured (step S20). In step S20, the image acquisition module 21 acquires an image in which the photographing device or the terminal device has captured this information code. At this time, the photographing device or the terminal device transmits this image, and the image acquisition module 21 receives this image, so that the image acquisition module 21 acquires this image.
  • the terminal device When the information code reading system 1 is composed of a terminal device, the terminal device captures the information code to acquire an image in which the information code is captured.
  • the terminal device is configured to execute the processing described later using the captured image.
  • the analysis module 40 analyzes the acquired image (step S21).
  • the analysis module 40 extracts the feature amount of the acquired image.
  • the analysis module 40 extracts statistical values such as shape, contour, hue, average and variance of pixel values, and histogram as feature quantities, and is unique in one-dimensional code, two-dimensional code, AR marker, and the like. Extract things.
  • the detection module 43 detects the information code based on the analysis result and the feature amount of the learned information code (step S22). In step S22, the detection module 43 executes this process based on the feature amount extracted this time and the learned model for information code detection created by the above-mentioned learning process. The detection module 43 compares the feature amount extracted this time with the feature amount in the trained model for information code detection, determines whether or not they match or approximate, and determines whether or not they match or approximate, and the one that matches or approximates is an information code. Is detected.
  • the recognition module 44 recognizes the detected information code (step S23). In step S23, the recognition module 44 attempts to read the information stored in this information code.
  • the recognition determination module 45 determines whether or not the information code can be recognized (step S24). In step S24, the recognition determination module 45 determines that the information code could not be recognized when the detected information code is not large enough or when a plurality of detected information codes exist. When the recognition determination module 45 determines that the information code can be recognized (YES in step S24), the recognition module 44 reads the information stored in this information code (step 25). The computer 10 will execute necessary processing based on the read information.
  • step S24 when the recognition determination module 45 determines that the information code could not be recognized (step S24 NO), the expansion module 46 expands the detected information code (step S26). In step S26, the expansion module 46 increases the size of the detected information code. The computer 10 determines that the reason why it could not recognize it is the size of the detected information code. Specifically, this is to determine that the information code present in the image is not large enough to be recognized.
  • the expansion module 46 expands this one information code when the recognition module 44 cannot recognize one information code.
  • the expansion module 46 specifies one information code to be expanded based on a predetermined condition.
  • the predetermined conditions are, for example, the coordinates of the information code (for example, close to the center of the screen, far from the center of the screen, close to the edge of the screen, far from the edge of the screen), the size of the information code (for example, maximum and minimum), and the information code. The presence or absence of descriptive text.
  • the expansion module 46 expands this one identified information code.
  • the computer 10 When the computer 10 detects a plurality of information codes in the image, the computer 10 may be configured to sequentially expand the plurality of information codes based on a predetermined condition or the like.
  • the computer 10 determines that the information code cannot be recognized instead of enlarging it, and this process is performed. To finish. That is, the computer 10 ends this process without enlarging the information code that cannot be recognized even if it is enlarged.
  • the recognition module 44 recognizes the expanded information code (step S27). In step S27, the recognition module 44 recognizes the expanded information code and reads the information stored in the information code. The computer 10 will execute necessary processing based on the read information.
  • FIG. 6 is a diagram schematically showing an example of an image in which the information code is captured.
  • the image 200 has a plurality of information codes 210.
  • the detection module 43 detects nine information codes 210-218.
  • the recognition determination module 45 cannot recognize the nine information codes 210-218.
  • the expansion module 46 identifies one information code 214 based on a predetermined condition (for example, the information code 214 located at the center of the screen) among the nine information codes 210-218, and identifies the one information. Expand code 214.
  • FIG. 7 schematically shows an example of the enlarged information code.
  • the enlarged information code 300 is an enlarged version of the specified information code 214 to a recognizable size.
  • the recognition module 44 reads the information stored in the information code 214 by recognizing the expanded information code 300.
  • FIG. 5 is a diagram showing a flowchart of the re-learning process executed by the computer 10. The process executed by each of the above-mentioned modules will be described together with this process.
  • the calculation module 47 calculates the coordinates in the image of the information code recognized by the above-mentioned information code reading process (step S30). In step S30, the calculation module 47 calculates the coordinates of the information code in this image from the XY coordinates as the coordinates in this image. At this time, the center of the information code is calculated as these coordinates.
  • the composition module 48 synthesizes the calculated coordinates and the image (step S31).
  • step S31 the synthesis module 48 synthesizes the features of the coordinates and the information code with the image.
  • the synthesis module 48 synthesizes the feature amount of the information code with the coordinates corresponding to this information code in the image.
  • the computer 10 uses this synthesis result as a data set for re-learning in a process described later.
  • the learning module 41 relearns the feature amount of the information code based on the learned model for information code detection created by the above-mentioned learning process and the synthesis result (step S32). In step S32, the learning module 41 relearns the coordinates in the image of the information code and the feature amount of the information code based on the trained model for detecting the information code and the data set for relearning.
  • the model update module 49 updates the trained model for detecting the information code recorded by the recording module 30 based on the result of the re-learning (step S33).
  • the model update module 49 updates the trained model for information code detection by incorporating the coordinates in the image of the retrained information code and the feature amount of the information code into the trained model for information code detection.
  • the model update module 49 updates the feature amount of the learned information code based on the acquired image and the calculated coordinates.
  • the recording module 30 records the updated learned model for information code detection (step S34).
  • the computer 10 again executes the above-mentioned information code reading process, the computer 10 uses the updated information code detection learned model recorded by this process.
  • the above is the re-learning re-processing.
  • the above-mentioned means and functions are realized by a computer (including a CPU, an information processing device, and various terminals) reading and executing a predetermined program.
  • the program is provided, for example, in the form of being provided from a computer via a network (Software as a Service). Further, the program is provided in a form recorded on a computer-readable recording medium such as a flexible disc, a CD (CD-ROM or the like), or a DVD (DVD-ROM, DVD-RAM or the like).
  • the computer reads the program from the recording medium, transfers it to an internal recording device or an external recording device, records the program, and executes the program. Further, the program may be recorded in advance on a recording device (recording medium) such as a magnetic disk, an optical disk, or a magneto-optical disk, and the program may be provided from the recording device to a computer via a communication line.

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Electromagnetism (AREA)
  • General Health & Medical Sciences (AREA)
  • Toxicology (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)

Abstract

【課題】本発明は、画像に含まれる情報コードのサイズが小さい場合や複数の情報コードが存在する場合であっても、情報コードを読み取ることが可能なコンピュータシステム、情報コード読取方法及びプログラムを提供することを目的とする。 【解決手段】情報コードを読み取るコンピュータシステムは、前記情報コードが撮影された画像を取得し、取得した前記画像を解析し、前記画像の解析結果と、学習済みの前記情報コードの特徴量とに基づいて、前記情報コードを検出し、検出した前記情報コードを認識できなかった場合、当該情報コードを拡大し、拡大後の前記情報コードを認識する。

Description

コンピュータシステム、情報コード読取方法及びプログラム
 本発明は、情報コードを読み取るコンピュータシステム、情報コード読取方法及びプログラムに関する。
 近年、物品管理、作業管理、入退場管理、会員証、決済等の様々な用途において、情報コード(例えば、一次元コード、二次元コード、ARマーカ)が活用されている。このような情報コードの活用は、アプリケーションや読取装置等により、表示された情報コードを読み取ることにより行われる。
 このような情報コードを活用する技術の例として、複数の情報コードが含まれる画像の中から、ユーザが所望する情報コードを指定し、この指定された情報コードを拡大して撮影することにより、このユーザが所望した情報コードを読み取るシステムが開示されている(特許文献1参照)。
特開2011-84384号公報
 しかしながら、特許文献1のシステムでは、ユーザが読み取る情報コードを指定する必要があるため、ユーザが、どの情報コードを指定すべきかの判断ができないおそれがあった。
 本発明は、画像に含まれる情報コードのサイズが小さい場合や複数の情報コードが存在する場合であっても、情報コードを読み取ることが可能なコンピュータシステム、情報コード読取方法及びプログラムを提供することを目的とする。
 本発明では、以下のような解決手段を提供する。
 本発明は、情報コードを読み取るコンピュータシステムであって、
 前記情報コードが撮影された画像を取得する取得手段と、
 取得した前記画像を解析する解析手段と、
 前記画像の解析結果と、学習済みの前記情報コードの特徴量とに基づいて、前記情報コードを検出する検出手段と、
 検出した前記情報コードを認識できなかった場合、当該情報コードを拡大する拡大手段と、
 拡大後の前記情報コードを認識する認識手段と、
 を備えることを特徴とするコンピュータシステムを提供する。
 本発明によれば、情報コードを読み取るコンピュータシステムは、前記情報コードが撮影された画像を取得し、取得した前記画像を解析し、前記画像の解析結果と、学習済みの前記情報コードの特徴量とに基づいて、前記情報コードを検出し、検出した前記情報コードを認識できなかった場合、当該情報コードを拡大し、拡大後の前記情報コードを認識する。
 本発明は、システムのカテゴリであるが、方法及びプログラム等の他のカテゴリにおいても、そのカテゴリに応じた同様の作用・効果を発揮する。
 本発明によれば、画像に含まれる情報コードのサイズが小さい場合や複数の情報コードが存在する場合であっても、情報コードを読み取ることが可能なコンピュータシステム、情報コード読取方法及びプログラムを提供することが可能となる。
図1は、情報コード読取システム1の概要を示す図である。 図2は、情報コード読取システム1の全体構成図である。 図3は、コンピュータ10が実行する学習処理のフローチャートを示す図である。 図4は、コンピュータ10が実行する情報コード読取処理のフローチャートを示す図である。 図5は、コンピュータ10が実行する再学習処理のフローチャートを示す図である。 図6は、情報コードが含まれる画像の一例を模式的に示す図である。 図7は、情報コードを拡大した状態を模式的に示す図である。
 以下、本発明を実施するための最良の形態について図を参照しながら説明する。なお、これはあくまでも例であって、本発明の技術的範囲はこれに限られるものではない。
 [情報コード読取システム1の概要]
 本発明の好適な実施形態の概要について、図1に基づいて説明する。図1は、本発明の好適な実施形態である情報コード読取システム1の概要を説明するための図である。情報コード読取システム1は、コンピュータ10から構成され、情報コードを読み取るコンピュータシステムである。
 なお、情報コード読取システム1は、カメラ等の撮影装置、撮影機能を備えた端末装置(例えば、スマートフォンやタブレット端末等の携帯端末や、スマートグラス等のヘッドマウントディスプレイやスマートウォッチといったウェアラブル端末)、その他の端末や装置類等が含まれていてもよい。この場合、情報コード読取システム1は、コンピュータ10と、含まれる端末や装置類等との何れか又は複数の組み合わせにより実行する事になる。
 また、情報コード読取システム1は、例えば、コンピュータ10等の1台のコンピュータで実現されてもよいし、クラウドコンピュータのように、複数のコンピュータで実現されてもよい。
 また、情報コード読取システム1は、コンピュータ10の代わりに、上述した端末装置から構成されてもよい。
 コンピュータ10は、上述した撮影装置、端末装置、その他の端末や装置類等と、公衆回線網等を介して、データ通信可能に接続されており、必要なデータや情報の送受信を実行する。
 コンピュータ10は、情報コードが撮影された画像を取得する。例えば、撮影装置や端末装置は、情報コードを撮影し、撮影した画像をコンピュータ10に送信する。コンピュータ10は、この画像を受信することにより、情報コードが撮影された画像を取得することになる。
 なお、情報コード読取システム1が、端末装置から構成される場合、この端末装置が、情報コードを撮影することにより、情報コードが撮影された画像を取得することになる。
 コンピュータ10は、取得した画像を解析する。例えば、コンピュータ10は、取得した画像を画像解析し、この画像における特徴量を抽出する。特徴量は、例えば、形状、輪郭、色相、画素値の平均や分散やヒストグラム等の統計的な数値である。例えば、二次元コードである場合、コンピュータ10は、この画像に存在するファインダパターン、アライメントパターン、クワイエットゾーン、タイミングパターン等の特有のものを特徴量として抽出する。一次元コードやARマーカ等の他のものであっても同様に、特有のものを特徴量として抽出する。
 コンピュータ10は、解析結果と、学習済みの情報コードの特徴量とに基づいて、情報コードを検出する。コンピュータ10は、予め、情報コードの特徴量を機械学習し、この学習結果に基づいた情報コード検出用学習済モデルを作成する。コンピュータ10は、今回抽出した特徴量と、予め作成した情報コード検出用学習済モデルとに基づいて、取得した画像に存在する情報コードを検出する。
 コンピュータ10は、検出した情報コードを認識できなかった場合、この情報コードを拡大する。例えば、コンピュータ10は、検出した情報コードの認識を試行する。コンピュータ10が、検出した情報コードを認識できなかった場合とは、例えば、検出した情報コードの大きさが、十分ではない(すなわち、所定の大きさよりも小さい)場合、検出した情報コードが複数存在する(すなわち、一の情報コードを特定できない)場合である。コンピュータ10は、このような、検出した情報コードを認識できなかった場合、この情報コードを、認識可能なサイズまで拡大する。
 コンピュータ10は、拡大後の情報コードを認識する。例えば、コンピュータ10は、拡大後の情報コードを認識し、この情報コードに格納された情報等を読み取る。
 なお、コンピュータ10は、今回認識した情報コードの画像における座標を算出し、取得した画像と、この座標とに基づいて、学習済みの情報コードの特徴量を更新する構成であってもよい。例えば、コンピュータ10は、今回認識した情報コードの画像における座標を算出する。コンピュータ10は、算出した座標と、画像とに基づいて、新たな学習用データセットを作成し、この作成した学習用データセットと、予め作成した情報コード検出用学習済モデルとに基づいて、情報コード検出用学習済モデルを更新する。コンピュータ10は、次回以降の情報コードの検出の際、この更新後の情報コード検出用学習済モデルを用いることになる。
 次に、情報コード読取システム1が実行する処理の概要について説明する。
 はじめに、コンピュータ10は、情報コードが撮影された画像を取得する(ステップS01)。撮影装置や端末装置は、情報コードを撮影し、撮影した画像をコンピュータ10に送信する。コンピュータ10は、この画像を受信する。この結果、コンピュータ10は、情報コードが撮影された画像を取得することになる。
 コンピュータ10は、取得した画像を解析する(ステップS02)。コンピュータ10は、取得した画像を画像解析し、この画像における上述した特徴量を抽出する。
 コンピュータ10は、解析結果と、学習済みの情報コードの特徴量とに基づいて、情報コードを検出する(ステップS03)。コンピュータ10は、情報コードの特徴量を機械学習して作成した情報コード検出用学習済モデルと、今回抽出した特徴量とに基づいて、取得した画像に存在する情報コードを検出する。
 コンピュータ10は、検出した情報コードを認識できなかった場合、この情報コードを拡大する(ステップS04)。コンピュータ10は、この情報コードの認識を試行する。コンピュータ10は、認識を試行した結果、情報コードの認識ができなかった場合、この情報コードを認識可能なサイズにまで拡大する。コンピュータ10は、画像中に一の情報コードのみを検出した場合、この一の情報コードを拡大する。また、コンピュータ10は、画像中に複数の情報コードを検出した場合、所定の条件等に基づいて、複数の内の何れかの情報コードを拡大する。なお、コンピュータ10は、画像中に複数の情報コードを検出した場合、この複数の情報コードを、所定の条件等に基づいて、順次、拡大する構成であってもよい。
 コンピュータ10は、拡大後の情報コードを認識する(ステップS05)。コンピュータ10は、拡大した情報コードを認識し、この情報コードに格納された情報等を読み取る。
 以上が、情報コード読取システム1が実行する処理の概要である。
 [情報コード読取システム1のシステム構成]
 図2に基づいて、本発明の好適な実施形態である情報コード読取システム1のシステム構成について説明する。図2は、本発明の好適な実施形態である情報コード読取システム1のシステム構成を示す図である。図2において、情報コード読取システム1は、コンピュータ10から構成され、一次元コード、二次元コード、ARマーカ等の情報コードを読み取るコンピュータシステムである。
 コンピュータ10は、撮影装置、端末装置、その他の端末や装置類等と、公衆回線網等を介して、データ通信可能に接続されており、必要なデータや情報の送受信を実行する。
 なお、情報コード読取システム1は、撮影装置、端末装置、その他の端末や装置類等が含まれていてもよい。この場合、情報コード読取システム1は、後述する各処理を、コンピュータ10と含まれる端末や装置類等との何れか又は複数の組み合わせにより実行することになる。
 また、情報コード読取システム1は、例えば、コンピュータ10等の1台のコンピュータで実現されてもよいし、クラウドコンピュータのように、複数のコンピュータで実現されてもよい。
 また、情報コード読取システム1は、コンピュータ10の代わりに、上述した端末装置で構成されてもよい。
 コンピュータ10は、制御部として、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)等を備え、通信部として、他の端末や装置等と通信可能にするためのデバイス、例えば、IEEE802.11に準拠したWi―Fi(Wireless―Fidelity)対応デバイス等を備える。また、コンピュータ10は、記録部として、ハードディスクや半導体メモリ、記録媒体、メモリカード等によるデータのストレージ部を備える。また、コンピュータ10は、処理部として、各種処理を実行する各種デバイス等を備える。
 コンピュータ10において、制御部が所定のプログラムを読み込むことにより、通信部と協働して、学習データセット取得モジュール20、画像取得モジュール21を実現する。また、コンピュータ10において、制御部が所定のプログラムを読み込むことにより、記録部と協働して、記録モジュール30を実現する。また、コンピュータ10において、制御部が所定のプログラムを読み込むことにより、処理部と協働して、解析モジュール40、学習モジュール41、モデル作成モジュール42、検出モジュール43、認識モジュール44、認識判断モジュール45、拡大モジュール46、算出モジュール47、合成モジュール48、モデル更新モジュール49を実現する。
 [学習処理]
 図3に基づいて、情報コード読取システム1が実行する学習処理について説明する。図3は、コンピュータ10が実行する学習処理のフローチャートを示す図である。上述した各モジュールが実行する処理について、本処理に併せて説明する。
 学習データセット取得モジュール20は、情報コードの学習用データセットを取得する(ステップS10)。ステップS10において、学習データセット取得モジュール20は、他のコンピュータや外部サーバ等から、この学習用データセットを取得する。この学習用データセットは、例えば、一又は複数の情報コードが撮影された画像である。
 解析モジュール40は、取得した学習用データセットを解析する(ステップS11)。ステップS11において、解析モジュール40は、この学習用データセットを、画像解析し、情報コードの特徴量を抽出する。特徴量は、上述した通り、二次元コードである場合、ファインダパターン、アライメントパターン、クワイエットゾーン、タイミングパターン等の二次元コードに特有のものであり、一次元コードやARマーカ等の他のものである場合、これらの其々に特有のものである。
 学習モジュール41は、解析結果に基づいて、機械学習を実行する(ステップS12)。ステップS12において、学習モジュール41は、機械学習として、抽出した特徴量を教師とした教師あり学習を実行する。
 モデル作成モジュール42は、学習結果に基づいて、情報コード検出用学習済モデルを作成する(ステップS13)。ステップS13において、モデル作成モジュール42は、学習した情報コードの特徴量を組み込んだ情報コード検出用学習済モデルを作成する。
 記録モジュール30は、作成した情報コード検出用学習済モデルを、自身に記録する(ステップS14)。コンピュータ10は、後述する処理において、この記録した情報コード検出用学習済モデルを用いることになる。
 以上が、学習処理である。
 [情報コード読取処理]
 図4に基づいて、情報コード読取システム1が実行する情報コード読取処理について説明する。図4は、コンピュータ10が実行する情報コード読取処理のフローチャートを示す図である。上述した各モジュールが実行する処理について、本処理に併せて説明する。
 画像取得モジュール21は、情報コードが撮影された画像を取得する(ステップS20)。ステップS20において、画像取得モジュール21は、撮影装置や端末装置がこの情報コードを撮影した画像を取得する。このとき、撮影装置や端末装置が、この画像を送信し、画像取得モジュール21が、この画像を受信することにより、画像取得モジュール21は、この画像を取得することになる。
 なお、情報コード読取システム1が、端末装置から構成される場合、この端末装置が、情報コードを撮影することにより、情報コードが撮影された画像を取得することになる。端末装置は、後述する処理を、この撮影した画像を用いて実行する構成となる。
 解析モジュール40は、取得した画像を解析する(ステップS21)。ステップS21において、解析モジュール40は、取得した画像の特徴量を抽出する。解析モジュール40は、特徴量として、上述した通り、形状、輪郭、色相、画素値の平均や分散やヒストグラム等の統計的な数値を抽出し、一次元コード、二次元コード、ARマーカ等における固有のものを抽出する。
 検出モジュール43は、解析結果と、学習済みの情報コードの特徴量とに基づいて、情報コードを検出する(ステップS22)。ステップS22において、検出モジュール43は、今回抽出した特徴量と、上述した学習処理により作成した情報コード検出用学習済モデルとに基づいて、この処理を実行する。検出モジュール43は、今回抽出した特徴量と、情報コード検出用学習済モデルにおける特徴量とを比較し、一致又は近似するか否かを判断し、一致又は近似するものを、情報コードであるものと検出する。
 なお、コンピュータ10は、情報コードを検出できなかった場合、本処理を終了する。
 認識モジュール44は、検出した情報コードを認識する(ステップS23)。ステップS23において、認識モジュール44は、この情報コードに格納された情報を読み取ることを試行する。
 認識判断モジュール45は、情報コードを認識できたか否かを判断する(ステップS24)。ステップS24において、認識判断モジュール45は、検出した情報コードの大きさが十分ではない場合、検出した情報コードが複数存在する場合であるとき、情報コードを認識できなかったと判断することになる。認識判断モジュール45は、情報コードを認識できたと判断した場合(ステップS24 YES)、認識モジュール44は、この情報コードに格納された情報を読み取る(ステップ25)。コンピュータ10は、読み取った情報に基づいて、必要な処理を実行することになる。
 一方、ステップS24において、認識判断モジュール45は、情報コードを認識できかなかったと判断した場合(ステップS24 NO)、拡大モジュール46は、検出した情報コードを拡大する(ステップS26)。ステップS26において、拡大モジュール46は、検出した情報コードのサイズを拡大する。コンピュータ10は、認識できなかったことの理由が、検出した情報コードのサイズにあると判断するためである。具体的には、画像中に存在する情報コードが、認識するに足るサイズではなかったと判断するためである。
 拡大モジュール46は、認識モジュール44が認識できなかった情報コードが一つであった場合、この一の情報コードを拡大する。
 また、拡大モジュール46は、認識モジュール44が認識できなかった情報コードが複数存在する場合、所定の条件に基づいて、拡大する一の情報コードを特定する。所定の条件は、例えば、情報コードの座標(例えば、画面中央に近い、画面中央から遠い、画面端に近い、画面端から遠い)、情報コードのサイズ(例えば、最大、最小)、情報コードの説明テキストの有無である。拡大モジュール46は、この特定した一の情報コードを拡大する。
 なお、コンピュータ10は、画像中に複数の情報コードを検出した場合、この複数の情報コードを、所定の条件等に基づいて、順次、拡大する構成であってもよい。
 また、コンピュータ10は、認識できなかった原因が、サイズ以外の場合、例えば、破損や汚損、歪み等である場合、コンピュータ10は、情報コードを拡大するのでなく、認識できないと判断し、本処理を終了する。すなわち、コンピュータ10は、拡大しても認識できない情報コードについては、拡大せずに、本処理を終了することになる。
 認識モジュール44は、拡大後の情報コードを認識する(ステップS27)。ステップS27において、認識モジュール44は、この拡大後の情報コードを認識し、この情報コードに格納された情報を読み取る。コンピュータ10は、読み取った情報に基づいて、必要な処理を実行することになる。
 図6及び図7に基づいて、上述した情報コード読取処理について説明する。図6は、情報コードが撮影された画像の一例を模式的に示した図である。図6において、画像200には、複数の情報コード210が存在する。検出モジュール43は、この画像200の解析の結果、9個の情報コード210-218を検出する。認識モジュール44の試行の結果、認識判断モジュール45は、この9個の情報コード210-218を認識できなかったと判断するものとする。拡大モジュール46は、この9個の情報コード210-218のうち、所定の条件(例えば、画面中央に位置する情報コード214)に基づいて、一の情報コード214を特定し、特定した一の情報コード214を拡大する。
 図7は、拡大後情報コードの一例を模式的に示したものである。図7において、拡大後情報コード300は、特定された一の情報コード214を、認識可能なサイズにまで拡大したものである。認識モジュール44は、この拡大後情報コード300を認識することにより、この情報コード214に格納された情報を読み取る。
 以上が、情報コード読取処理である。
 [再学習処理]
 図5に基づいて、情報コード読取システム1が実行する再学習処理について説明する。図5は、コンピュータ10が実行する再学習処理のフローチャートを示す図である。上述した各モジュールが実行する処理について、本処理に併せて説明する。
 算出モジュール47は、上述した情報コード読取処理により認識した情報コードの、画像における座標を算出する(ステップS30)。ステップS30において、算出モジュール47は、この画像における座標として、XY座標により、この画像における情報コードの座標を算出する。このとき、情報コードの中心を、この座標として算出する。
 合成モジュール48は、算出した座標と、画像とを合成する(ステップS31)。ステップS31において、合成モジュール48は、画像に、座標及び情報コードの特徴量を合成する。合成モジュール48は、画像における、この情報コードに該当する座標に、情報コードの特徴量を合成することになる。コンピュータ10は、この合成結果を、再学習用データセットとして、後述する処理に用いる。
 学習モジュール41は、上述した学習処理により作成した情報コード検出用学習済モデルと、合成結果とに基づいて、情報コードの特徴量を再学習する(ステップS32)。ステップS32において、学習モジュール41は、情報コード検出用学習済モデルと、再学習用データセットとに基づいて、情報コードの画像における座標及び情報コードの特徴量を再学習する。
 モデル更新モジュール49は、再学習の結果に基づいて、記録モジュール30が記録する情報コード検出用学習済モデルを更新する(ステップS33)。ステップS33において、モデル更新モジュール49は、再学習した情報コードの画像における座標及び情報コードの特徴量を、情報コード検出用学習済モデルに組み込むことにより、情報コード検出用学習済モデルを更新する。
 この結果、モデル更新モジュール49は、取得した画像と、算出した座標とに基づいて、学習済みの情報コードの特徴量を更新することになる。
 記録モジュール30は、更新後の情報コード検出用学習済モデルを記録する(ステップS34)。コンピュータ10は、再度、上述した情報コード読取処理を実行する際、本処理により記録した更新後の情報コード検出用学習済モデルを用いる。
 以上が、再学習更処理である。
 上述した手段、機能は、コンピュータ(CPU、情報処理装置、各種端末を含む)が、所定のプログラムを読み込んで、実行することによって実現される。プログラムは、例えば、コンピュータからネットワーク経由で提供される(SaaS:ソフトウェア・アズ・ア・サービス)形態で提供される。また、プログラムは、例えば、フレキシブルディスク、CD(CD-ROMなど)、DVD(DVD-ROM、DVD-RAMなど)等のコンピュータ読取可能な記録媒体に記録された形態で提供される。この場合、コンピュータはその記録媒体からプログラムを読み取って内部記録装置又は外部記録装置に転送し記録して実行する。また、そのプログラムを、例えば、磁気ディスク、光ディスク、光磁気ディスク等の記録装置(記録媒体)に予め記録しておき、その記録装置から通信回線を介してコンピュータに提供するようにしてもよい。
 以上、本発明の実施形態について説明したが、本発明は上述したこれらの実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施形態に記載されたものに限定されるものではない。
 1 情報コード読取システム10 コンピュータ

Claims (4)

  1.  情報コードを読み取るコンピュータシステムであって、
     前記情報コードが撮影された画像を取得する取得手段と、
     取得した前記画像を解析する解析手段と、
     前記画像の解析結果と、学習済みの前記情報コードの特徴量とに基づいて、前記情報コードを検出する検出手段と、
     検出した前記情報コードを認識できなかった場合、当該情報コードを拡大する拡大手段と、
     拡大後の前記情報コードを認識する認識手段と、
     を備えることを特徴とするコンピュータシステム。
  2.  認識した前記情報コードの画像における座標を算出する算出手段と、
     取得した前記画像と、算出した前記座標とに基づいて、前記学習済みの情報コードの特徴量を更新する更新手段と、
     を備えることを特徴とする請求項1に記載のコンピュータシステム。
  3.  情報コードを読み取るコンピュータシステムが実行する情報コード読取方法であって、
     前記情報コードが撮影された画像を取得するステップと、
     取得した前記画像を解析するステップと、
     前記画像の解析結果と、学習済みの前記情報コードの特徴量とに基づいて、前記情報コードを検出するステップと、
     検出した前記情報コードを認識できなかった場合、当該情報コードを拡大するステップと、
     拡大後の前記情報コードを認識するステップと、
     を備えることを特徴とする情報コード読取方法。
  4.  情報コードを読み取るコンピュータに、
     前記情報コードが撮影された画像を取得するステップ、
     取得した前記画像を解析するステップ、
     前記画像の解析結果と、学習済みの前記情報コードの特徴量とに基づいて、前記情報コードを検出するステップ、
     検出した前記情報コードを認識できなかった場合、当該情報コードを拡大するステップ、
     拡大後の前記情報コードを認識するステップ、
     を実行させるためのコンピュータ読み取り可能なプログラム。
PCT/JP2020/003630 2020-01-31 2020-01-31 コンピュータシステム、情報コード読取方法及びプログラム WO2021152819A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2020/003630 WO2021152819A1 (ja) 2020-01-31 2020-01-31 コンピュータシステム、情報コード読取方法及びプログラム
JP2021517720A JP7058053B2 (ja) 2020-01-31 2020-01-31 コンピュータシステム、情報コード読取方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/003630 WO2021152819A1 (ja) 2020-01-31 2020-01-31 コンピュータシステム、情報コード読取方法及びプログラム

Publications (1)

Publication Number Publication Date
WO2021152819A1 true WO2021152819A1 (ja) 2021-08-05

Family

ID=77078809

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/003630 WO2021152819A1 (ja) 2020-01-31 2020-01-31 コンピュータシステム、情報コード読取方法及びプログラム

Country Status (2)

Country Link
JP (1) JP7058053B2 (ja)
WO (1) WO2021152819A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022211064A1 (ja) * 2021-03-31 2022-10-06 株式会社デンソーウェーブ 情報読取装置
CN115329795A (zh) * 2022-10-17 2022-11-11 北京搜狐新动力信息技术有限公司 一种识别二维码的方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06139396A (ja) * 1992-10-26 1994-05-20 Nippon Electric Ind Co Ltd ニューラル・ネットワークを用いたバーコード・シンボルの認識方法
JP2012064110A (ja) * 2010-09-17 2012-03-29 Casio Comput Co Ltd 情報読取装置及びプログラム
JP2019049967A (ja) * 2017-07-12 2019-03-28 ジック アーゲー 光電式コードリーダ及び光学コードの読み取り方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06139396A (ja) * 1992-10-26 1994-05-20 Nippon Electric Ind Co Ltd ニューラル・ネットワークを用いたバーコード・シンボルの認識方法
JP2012064110A (ja) * 2010-09-17 2012-03-29 Casio Comput Co Ltd 情報読取装置及びプログラム
JP2019049967A (ja) * 2017-07-12 2019-03-28 ジック アーゲー 光電式コードリーダ及び光学コードの読み取り方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022211064A1 (ja) * 2021-03-31 2022-10-06 株式会社デンソーウェーブ 情報読取装置
CN115329795A (zh) * 2022-10-17 2022-11-11 北京搜狐新动力信息技术有限公司 一种识别二维码的方法及装置

Also Published As

Publication number Publication date
JPWO2021152819A1 (ja) 2021-08-05
JP7058053B2 (ja) 2022-04-21

Similar Documents

Publication Publication Date Title
US11527105B2 (en) System and method for scalable cloud-robotics based face recognition and face analysis
US9183429B2 (en) Method and apparatus for facial recognition
JP4755202B2 (ja) 顔特徴の検出方法
US7227893B1 (en) Application-specific object-based segmentation and recognition system
US20150339536A1 (en) Collaborative text detection and recognition
WO2021152819A1 (ja) コンピュータシステム、情報コード読取方法及びプログラム
Vazquez-Fernandez et al. Built-in face recognition for smart photo sharing in mobile devices
CN111753764A (zh) 一种边缘端基于姿态估计的手势识别方法
US20100172587A1 (en) Method and apparatus for setting a lip region for lip reading
JP2010262601A (ja) パターン認識システム及びパターン認識方法
US20200218772A1 (en) Method and apparatus for dynamically identifying a user of an account for posting images
CN106471440A (zh) 基于高效森林感测的眼睛跟踪
US11907783B2 (en) Hologram detection service providing server and hologram detection method
CN111881740A (zh) 人脸识别方法、装置、电子设备及介质
JP2006323779A (ja) 画像処理方法、画像処理装置
CN110598555A (zh) 一种图像的处理方法、装置及设备
EP1589474A1 (en) Method for supporting data linkage between applications
CN110956093A (zh) 基于大数据的模型识别方法、装置、设备及介质
US20220114837A1 (en) Image processing apparatus, image processing method, image input apparatus, image processing system, and program
CN104318251A (zh) 一种相片实时处理方法和装置
US11620360B2 (en) Methods and systems for recognizing object using machine learning model
US11205258B2 (en) Image processing apparatus, image processing method, and storage medium
CN114360015A (zh) 活体检测方法、装置、设备及存储介质
Khabarlak Face detection on mobile: Five implementations and analysis
CN112699810A (zh) 一种提升室内监控系统人物识别精度的方法及装置

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2021517720

Country of ref document: JP

Kind code of ref document: A

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20916721

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20916721

Country of ref document: EP

Kind code of ref document: A1