Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7375261B2 - Code processing device, code processing method, and program - Google Patents
[go: Go Back, main page]

JP7375261B2 - Code processing device, code processing method, and program - Google Patents

Code processing device, code processing method, and program Download PDF

Info

Publication number
JP7375261B2
JP7375261B2 JP2019232631A JP2019232631A JP7375261B2 JP 7375261 B2 JP7375261 B2 JP 7375261B2 JP 2019232631 A JP2019232631 A JP 2019232631A JP 2019232631 A JP2019232631 A JP 2019232631A JP 7375261 B2 JP7375261 B2 JP 7375261B2
Authority
JP
Japan
Prior art keywords
code
angle
information
unit
target code
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2019232631A
Other languages
Japanese (ja)
Other versions
JP2021101283A (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 JP2019232631A priority Critical patent/JP7375261B2/en
Publication of JP2021101283A publication Critical patent/JP2021101283A/en
Application granted granted Critical
Publication of JP7375261B2 publication Critical patent/JP7375261B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Analysis (AREA)

Description

特許法第30条第2項適用 令和1年11月27日から11月29日 関西物流展 実行委員会主催の「第1回 関西物流展」おいて出展Article 30, Paragraph 2 of the Patent Act applies From November 27th to November 29th, 2020 Exhibited at the "1st Kansai Logistics Exhibition" sponsored by the Kansai Logistics Exhibition Executive Committee

本発明は、コードを処理する装置等に関するものである。 The present invention relates to a code processing device and the like.

従来の技術として、画像から2次元コードの領域を特定し、その2次元コードによってコード化された情報を識別する技術が知られていた(例えば、特許文献1参照)。 As a conventional technique, a technique is known in which a two-dimensional code area is specified from an image and information coded by the two-dimensional code is identified (for example, see Patent Document 1).

特開2001-195536号公報(第1頁、第1図等)Japanese Patent Application Publication No. 2001-195536 (Page 1, Figure 1, etc.)

しかしながら、従来の技術においては、コードから読み取ることができる情報は、通常、コード毎に予め決められており、ユーザが、コードを配置する際に、コードに対して所望の情報を容易に付加することができない、という課題があった。 However, in the conventional technology, the information that can be read from the code is usually predetermined for each code, and the user easily adds desired information to the code when arranging the code. The problem was that I couldn't do it.

本発明は、上記のような課題を解消するためなされたものであり、コードを配置する際に、コードに対して所望の情報を容易に付加することができるコード処理装置等を提供することを目的とする。 The present invention has been made to solve the above-mentioned problems, and it is an object of the present invention to provide a code processing device etc. that can easily add desired information to the code when arranging the code. purpose.

本発明のコード処理装置は、1以上のコードを撮影した撮影画像を受け付ける画像受付部と、画像受付部が受け付けた撮影画像からコードを検出するコード検出部と、コード検出部が検出した1以上のコードを読み取って情報を取得する読取取得部と、コード検出部が検出した1以上のコードが配置されている角度を取得し、取得した角度に対応する情報を取得する角度情報取得部と、コード検出部が検出した1以上のコードについて読取取得部が取得した情報と、角度情報取得部が取得した角度に対応した情報と、を出力する出力部と、を備えたコード処理装置である。 The code processing device of the present invention includes an image reception unit that receives a captured image of one or more codes, a code detection unit that detects a code from the captured image received by the image reception unit, and one or more codes detected by the code detection unit. a reading acquisition unit that acquires information by reading the code; and an angle information acquisition unit that acquires the angle at which one or more codes detected by the code detection unit are arranged and acquires information corresponding to the acquired angle; The code processing device includes an output unit that outputs information acquired by a reading acquisition unit regarding one or more codes detected by the code detection unit, and information corresponding to an angle acquired by the angle information acquisition unit.

かかる構成により、コードを配置する際の角度によって、コードに対して所望の情報を容易に付加することができることができる。 With this configuration, desired information can be easily added to the code depending on the angle at which the code is arranged.

また、本発明のコード処理装置は、前記コード処理装置において角度情報取得部は、コードが配置されている角度として、3以上の異なる角度を取得可能であり、取得した角度にそれぞれ対応する情報を取得するようにしてもよい。 Further, in the code processing device of the present invention, the angle information acquisition unit in the code processing device is capable of acquiring three or more different angles as the angle at which the code is arranged, and stores information corresponding to each of the acquired angles. You may also obtain it.

かかる構成により、コードを配置する際の角度によって、コードに対して3以上の所望の情報を付加することができることができる。 With this configuration, three or more pieces of desired information can be added to the code depending on the angle at which the code is placed.

また、本発明のコード処理装置は、前記コード処理装置において、画像受付部は、コードが配置されている角度を角度情報取得部が取得する際に角度の基準となる方向を示す基準対象をさらに撮影した撮影画像を受け付け、角度情報取得部は、コード検出部が検出したコードが配置されている角度として、撮影画像内の基準対象が示す方向と、コードの特定の向きを示す方向とがなす相対的な角度を取得するようにしてもよい。 Further, in the code processing device of the present invention, in the code processing device, the image reception unit further includes a reference object indicating a direction as a reference of the angle when the angle information acquisition unit acquires the angle at which the code is arranged. The angle information acquisition section receives the photographed image, and determines the angle between the direction indicated by the reference object in the photographed image and the direction indicating the specific orientation of the code, as the angle at which the code detected by the code detection section is arranged. A relative angle may also be obtained.

かかる構成により、コードが配置されている角度の基準となる方向を、コードが配置されている実空間において指定することができる。 With this configuration, it is possible to specify the direction that serves as a reference for the angle at which the code is arranged in the real space where the code is arranged.

また、本発明のコード処理装置は、前記コード処理装置において、基準対象を、基準となる方向を示すコードとしてもよい。 Further, in the code processing device of the present invention, the reference object may be a code indicating a reference direction.

かかる構成により、コードが配置されている角度の基準となる方向を、コードが配置されている実空間に基準となるコードを配置することで、容易に指定することができる。 With this configuration, it is possible to easily specify the reference direction of the angle at which the code is arranged by placing the reference code in the real space where the code is arranged.

また、本発明のコード処理装置は、前記コード処理装置において、画像受付部は、コードが配置されたプレートであって、コードの向きを視覚的に認識可能な1以上のプレートを撮影した撮影画像を受け付けるようにしてもよい。 Further, in the code processing device of the present invention, in the code processing device, the image receiving unit is a plate on which a code is arranged, and the photographed image is a photographed image of one or more plates in which the direction of the code can be visually recognized. It may also be possible to accept .

かかる構成により、ユーザがコードを所望の角度となるよう配置する際に、コードの向きを容易に把握することができる。 With this configuration, the user can easily grasp the orientation of the cord when arranging the cord at a desired angle.

また、本発明のコード処理装置は、前記コード処理装置において、角度情報取得部は、90度単位で各コードが配置される角度を検出するとともに、90度と270度とに対応する情報として、同じ情報を取得するようにしてもよい。 Further, in the code processing device of the present invention, in the code processing device, the angle information acquisition unit detects the angle at which each code is arranged in units of 90 degrees, and as information corresponding to 90 degrees and 270 degrees, The same information may be acquired.

かかる構成により、コードを配置する際に、ユーザが区別しにくい角度を実質的に同じ角度として扱うことができ、コードを配置する角度による情報の指定の間違いを低減することができる。 With this configuration, when placing the code, angles that are difficult for the user to distinguish can be treated as substantially the same angle, and errors in information specification due to the angle at which the code is placed can be reduced.

本発明によるコード処理装置等によれば、コードを配置する際に、コードに対して所望の情報を容易に付加することができる。 According to the code processing device and the like according to the present invention, desired information can be easily added to the code when arranging the code.

本発明の実施の形態におけるコード処理装置のブロック図Block diagram of a code processing device according to an embodiment of the present invention 同コード処理装置の動作について説明するフローチャートFlowchart explaining the operation of the code processing device 同コード処理装置の一例と、コードが配置される進捗管理ボードを示す図A diagram showing an example of the code processing device and a progress management board on which the code is placed. 同コード処理装置に用いられるコードを説明するための図(図4(a)、図4(b))Diagrams for explaining the codes used in the code processing device (FIGS. 4(a) and 4(b)) 同コード処理装置が取得した撮影画像を示す図Diagram showing a photographed image acquired by the code processing device 同コード処理装置の読取管理表を示す図Diagram showing the reading management table of the code processing device 同コード処理装置の角度管理表を示す図Diagram showing the angle management table of the code processing device 同コード処理装置の取得情報管理表を示す図Diagram showing the acquisition information management table of the code processing device 本発明の実施の形態におけるコンピュータシステムの構成の一例を示す図A diagram showing an example of the configuration of a computer system according to an embodiment of the present invention.

以下、コード処理装置等の実施の形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。 Embodiments of the code processing device and the like will be described below with reference to the drawings. Note that in the embodiments, constituent elements with the same reference numerals perform similar operations, and therefore, repeated explanation may be omitted.

(実施の形態)
図1は、本実施の形態におけるコード処理装置1のブロック図である。
(Embodiment)
FIG. 1 is a block diagram of a code processing device 1 in this embodiment.

コード処理装置1は、画像受付部100、撮影部101、コード検出部102、読取取得部103、角度情報取得部104、出力部105、読取情報格納部106、および角度情報格納部107を備える。 The code processing device 1 includes an image reception section 100, a photographing section 101, a code detection section 102, a reading acquisition section 103, an angle information acquisition section 104, an output section 105, a reading information storage section 106, and an angle information storage section 107.

コード処理装置1は、例えば、パーソナルコンピュータであってもよく、いわゆるスマートフォン等の多機能携帯電話やタブレット端末、PDA(Personal Digital Assistant)等などの携帯可能な情報処理端末であってもよく、撮影された画像等に関して処理を行う専用の装置であってもよく、サーバ等であってもよい。 The code processing device 1 may be, for example, a personal computer, a portable information processing terminal such as a multifunctional mobile phone such as a so-called smartphone, a tablet terminal, or a PDA (Personal Digital Assistant). It may be a dedicated device that processes images etc., or it may be a server or the like.

画像受付部100は、1または2以上のコードを撮影した撮影画像を受け付ける。撮影画像は、例えば1または2以上のコードが配置された領域を撮影した画像である。ここでの1または2以上のコードは、後述するように、配置される角度の取得対象となるコードである。以下、説明の便宜上、配置される角度の取得対象となるコードを、他のコードと区別するために、対象コードと呼ぶ。つまり、画像受付部100が受け付ける撮影画像は、1または2以上の対象コードを撮影した画像である。撮影画像は、1または2以上の対象コードとともに、他の1または2以上のコードを撮影した画像であってもよい。他のコードとしては、例えば、対象コードとして利用可能なコードと同様のコードが利用可能である。対象コードは、例えば、コードを読み取った情報により、他のコードと識別可能なコードであればよい。例えば、対象コードは、コードを読み取った識別子等の情報が、予め用意された1以上の対象コードから読取り可能な情報のうちの一つと一致するコードであればよい。また、対象コードは、例えば、コードを読み取った情報が、あらかじめ決められた対象コードであることを示す情報を有しているコードであってもよい。また、対象コードは、例えば、コードを読み取った情報を用いて生成される情報、例えばハッシュ値等が、対象コードであることを示す情報となるコードであってもよい。あるいは、対象コードは、他のコードとはコード体系や種類等が異なるコードであってもよい。 The image reception unit 100 receives a photographed image of one or more codes. The photographed image is, for example, an image obtained by photographing an area in which one or more codes are arranged. The one or more codes here are codes from which the angle of arrangement is to be obtained, as will be described later. Hereinafter, for convenience of explanation, the code whose placement angle is to be obtained will be referred to as a target code to distinguish it from other codes. In other words, the captured images accepted by the image receiving unit 100 are images of one or more target codes. The photographed image may be an image obtained by photographing one or more other codes together with one or more target codes. As the other code, for example, a code similar to the code that can be used as the target code can be used. The target code may be any code as long as it can be distinguished from other codes based on information obtained by reading the code. For example, the target code may be a code in which information such as an identifier read from the code matches one of the information readable from one or more target codes prepared in advance. Further, the target code may be, for example, a code having information indicating that the information obtained by reading the code is a predetermined target code. Further, the target code may be, for example, a code in which information generated using information obtained by reading the code, such as a hash value, serves as information indicating that the code is the target code. Alternatively, the target code may be a code that has a different code system, type, etc. from other codes.

撮影画像は、静止画像であっても、動画像であってもよく、連続した静止画像であってもよい。撮影画像の画素数等は問わない。撮影画像のデータ形式や、ファイル形式等は問わない。また、撮影画像は、カラー画像であっても良く、モノクローム画像であってもよい。ただし、撮影画像内のコードとして、カラーコードを用いる場合、撮影画像は通常、カラー画像である必要がある。 The photographed images may be still images, moving images, or continuous still images. The number of pixels of the captured image does not matter. The data format or file format of the captured image does not matter. Further, the photographed image may be a color image or a monochrome image. However, when using a color code as a code in a photographed image, the photographed image usually needs to be a color image.

ここでの対象コード等のコードは、情報が読み取り可能なコードであり、例えば、撮影画像から対応する情報が読取り可能なコードである。コードは、例えば、文字列以外の画像等で表されるコードである。例えば、コードは、カメレオンコード(登録商標)などのカラーコードであってもよく、QRコード(登録商標)であってもよく、バーコードであってもよく、その他のコードであってもよい。ここでのコードは、撮影画像を用いて同時に複数のコードが読み取り可能なコードであることが好ましい。以下、本実施の形態では、主として、対象コードがカラーコードである場合について説明する。 The code such as the target code here is a code that can read information, for example, a code that can read corresponding information from a photographed image. The code is, for example, a code represented by an image or the like other than a character string. For example, the code may be a color code such as a Chameleon code (registered trademark), a QR code (registered trademark), a barcode, or another code. Preferably, the code here is a code that can be read simultaneously using a photographed image. Hereinafter, in this embodiment, the case where the target code is a color code will be mainly described.

撮影画像に撮影される対象コードは、配置する角度を自由に設定可能なコードや、配置する角度を自由に変更可能なコードであることが好ましい。対象コードが配置される角度については後述する。 The target code photographed in the photographed image is preferably a code whose arrangement angle can be freely set or a code whose arrangement angle can be freely changed. The angle at which the target code is arranged will be described later.

撮影画像に撮影される対象コードは、ユーザが所望の面の、所望の領域に着脱可能に取り付けることが可能なコードであることが好ましい。撮影画像に撮影される対象コードは、例えば、プレートに配置されたコードである。例えば、対象コードは、プレートに印刷されたコードや、プレートに貼付けられたコードである。対象コードが配置されるプレートの形状やサイズ、色、材質等は問わない。通常、一のプレートに一のコードが配置される。ただし、一のプレートに複数のコードが配置されてもよい。対象コードが配置されたプレートは、例えば、磁性体や面ファスナー、吸着面、粘着面等を有しており、ホワイトボード等のボードや壁面、紙面等の面に着脱可能に取り付けられるプレートである。プレートが着脱可能であることにより、プレートに配置された対象コードが、所望の領域に着脱可能に取り付け可能となる。画像受付部100は、例えば、対象コードが配置された1以上のプレートを撮影した1または2以上の撮影画像を受け付けてもよい。 The target code photographed in the photographed image is preferably a code that can be detachably attached to a desired region of a desired surface by the user. The target code photographed in the photographed image is, for example, a code arranged on a plate. For example, the target code is a code printed on a plate or a code affixed to the plate. The shape, size, color, material, etc. of the plate on which the target code is placed does not matter. Usually, one code is placed on one plate. However, a plurality of codes may be arranged on one plate. The plate on which the target code is placed has, for example, a magnetic material, a hook-and-loop fastener, an adsorption surface, an adhesive surface, etc., and is a plate that can be removably attached to a board such as a whiteboard, a wall surface, a paper surface, etc. . Since the plate is removable, the target cord arranged on the plate can be removably attached to a desired area. For example, the image receiving unit 100 may receive one or more captured images of one or more plates on which the target code is arranged.

画像受付部100は、例えば、対象コードが配置されたプレートであって、対象コードの向きを視覚的に認識可能な1以上のプレートを撮影した撮影画像を受け付けることが好ましい。対象コードの向きとは、例えば、対象コードの上下左右等の方向である。ここでの対象コードの向きは、後述するように、角度情報取得部104が撮影画像内の対象コードを用いて取得する対象コードの向きである。対象コードの向きを視覚的に認識可能とは、例えば、ユーザが目視によって、対象コードの向きを判断可能であることである。例えば、対象コードの向きを視覚的に認識可能なプレートは、対象コードが配置されている表面の、対象コードに隣接する位置に、対象コードの向きを視覚的に認識可能な情報が配置されたプレートである。対象コードの向きを視覚的に認識可能な情報は、例えば、以下に述べるような1以上の文字やマークである。 It is preferable that the image receiving unit 100 receives, for example, a photographed image of one or more plates on which a target code is arranged, and the orientation of the target code can be visually recognized. The direction of the target code is, for example, the direction of the target code, such as up, down, left, or right. The orientation of the target code here is the orientation of the target code that the angle information acquisition unit 104 acquires using the target code in the captured image, as will be described later. Being able to visually recognize the orientation of the target code means, for example, that the user can visually determine the orientation of the target code. For example, a plate that allows the direction of the target code to be visually recognized has information that allows the direction of the target code to be visually recognized on the surface where the target code is placed, at a position adjacent to the target code. It is a plate. Information that allows the direction of the target code to be visually recognized is, for example, one or more characters or marks as described below.

例えば、対象コードの向きを視覚的に認識可能なプレートは、1以上の文字が配置されたプレートであって、この文字の向きが、対象コードの向きに対応しているプレートである。例えば、対象コードの向きを視覚的に認識可能なプレートは、対象コードに隣接して文字が配置されたプレートであって、対象コードの下から上に向かう向きが、隣接して配置された文字の下から上に向かう方向と一致しており、対象コードの右から左に向かう方向が、隣接して配置される文字の右から左に向かう方向と一致しているプレートである。 For example, a plate on which the orientation of the target code can be visually recognized is a plate on which one or more characters are arranged, and the orientation of the characters corresponds to the orientation of the target code. For example, a plate on which the direction of the target code can be visually recognized is a plate in which characters are arranged adjacent to the target code, and the direction from the bottom to the top of the target code is the one in which the characters are arranged adjacent to each other. The direction from the bottom to the top of the target code matches the direction from the bottom to the top, and the direction from the right to the left of the target code matches the direction from the right to the left of the adjacent characters.

また、対象コードの向きを視覚的に認識可能なプレートとは、例えば、文字以外の、視覚的に向きを示すことが可能な1以上のマークが配置されたプレートであって、このマークが示す向きが、対象コードの特定の向きに対応しているプレートであってもよい。このマークは、例えば、矢印や二等辺三角形等のマークであってもよい。 In addition, a plate on which the direction of the target code can be visually recognized is, for example, a plate on which one or more marks other than letters that can visually indicate the direction are arranged, and this mark indicates It may be a plate whose orientation corresponds to a specific orientation of the target code. This mark may be, for example, an arrow or an isosceles triangle mark.

また、対象コードの向きを視覚的に認識可能なプレートとは、例えば、対象コードが配置されている面の、対象コードに隣接する位置に1以上のマークが配置されたプレートであって、対象コードからこのマークに向かう方向が、対象コードの特定の向きに対応しているプレートであってもよい。対象コードからマークに向かう方向とは、例えば、対象コードから、マークまでを最短距離で結んだ線分の長さ方向である。対象コードの向きを視覚的に認識可能なプレートは、例えば、対象コードの上方にマークが配置されたプレートであって、対象コードの下から上に向かう向きが、対象コードからマークに向かう方向と一致しているプレートである。対象コードの向きを視覚的に認識可能なプレートは、例えば、対象コードの右側にマークが配置されたプレートであって、対象コードの右側に向かう向きが、対象コードからマークに向かう方向と一致しているプレートである。ここでのマークは、どのようなサイズや形状であってもよく、プレートの一部を着色したものであってもよい。また、ここでのマークは、1以上の文字であってもよい。 Furthermore, a plate on which the direction of the target code can be visually recognized is, for example, a plate on which one or more marks are arranged adjacent to the target code on the surface where the target code is arranged, and The plate may be such that the direction from the code to this mark corresponds to a specific orientation of the target code. The direction from the target code to the mark is, for example, the length direction of a line segment connecting the target code to the mark at the shortest distance. A plate on which the direction of the target code can be visually recognized is, for example, a plate in which a mark is placed above the target code, and the direction from the bottom of the target code to the top is the direction from the target code to the mark. This is a matching plate. A plate on which the direction of the target code can be visually recognized is, for example, a plate in which a mark is placed on the right side of the target code, and the direction toward the right of the target code matches the direction from the target code toward the mark. That's the plate. The mark here may be of any size or shape, and may be a portion of the plate that is colored. Further, the mark here may be one or more characters.

なお、上記のマークは、1以上の突起物や、凹部であってもよい。マークとして、突起物や凹部を用いることで、手で触ることによっても、対象コードの向きを認識可能である。 Note that the above mark may be one or more protrusions or recesses. By using protrusions or recesses as marks, the orientation of the target code can be recognized even by touching it with the hand.

なお、プレートに配置される上記のような対象コードの向きを視覚的に認識可能とするための文字やマーク等の情報は、プレートの対象コードが配置されている表面とは異なる裏面に配置されていてもよい。プレートの裏面にこれらのマークや文字が配置されていても、プレートを配置する際に、プレートの裏面を見れば対象コードの向きをユーザが把握することは可能である。プレートに配置される1以上の文字が、ユーザのプライバシーや、企業内の機密に関連する文字列等である場合、プライバシー保護や、セキュリティの観点から、文字列は、プレートの裏面に配置されることが好ましい。プライバシーに関連する文字列は、例えば、ユーザの名前等に関する情報である。企業内の機密に関連する文字列は、例えば、プロジェクト名や、作業名や、新製品名等である。プレートに配置される文字列が、対象コードから読み取ることができる情報であるか否かは問わない。また、プレートに配置される文字列が、対象コードから読み取ることができる情報に関連した情報であるか否かは問わない。 In addition, information such as letters and marks placed on the plate to make it possible to visually recognize the orientation of the target code as described above is placed on the back side of the plate, which is different from the front side where the target code is placed. You can leave it there. Even if these marks and characters are placed on the back side of the plate, the user can still grasp the orientation of the target code by looking at the back side of the plate when placing the plate. If one or more characters placed on the plate are character strings related to user privacy or corporate confidentiality, the character strings are placed on the back side of the plate from the viewpoint of privacy protection and security. It is preferable. The character string related to privacy is, for example, information regarding the user's name and the like. Character strings related to company secrets include, for example, project names, work names, new product names, and the like. It does not matter whether the character string placed on the plate is information that can be read from the target code. Further, it does not matter whether the character string placed on the plate is information related to information that can be read from the target code.

また、対象コードの向きを視覚的に認識可能なプレートは、対象コードの向きを視覚的に示す形状のプレートであってもよい。例えば、対象コードの特定の向きに向かって、プレートの幅が狭くなっているプレートや、対象コードの特定の向きに位置する辺に複数の凹凸等が形成された形状であってもよい。 Further, the plate that allows the direction of the target code to be visually recognized may be a plate having a shape that visually indicates the direction of the target code. For example, the plate may have a shape in which the width of the plate becomes narrower toward a specific direction of the target code, or a shape in which a plurality of unevenness or the like is formed on the side of the target code located in a specific direction.

なお、対象コードの向きを視覚的に認識可能なプレートは、配置されている対象コード自体が、対象コードの向きを視覚的に認識可能なコードであってもよい。例えば、対象コードの一部が、対象コードの向きを示すような配置を有していてもよい。例えば、対象コードの一部が、対象コードの向きを示すような矢印等の画像を有していてもよい。また、対象コードがカラーコートである場合、対象コードの一部の色の配列が、対象コードの向きを示す配置であってもよい。例えば、対象コードの向きを視覚的に認識可能なプレートは、配置されている対象コードが複数のセルがマトリクス上に配置されたカラーコードであって、特定の向きに位置する辺に配置されるセルの色が特定の色とであるカラーコードが配置されたプレートであってもよい。この場合、この特定の色のセルで構成される辺が位置する向きが、対象コードの特定の向きとなる。 Note that the plate in which the orientation of the target code can be visually recognized may be such that the target code itself arranged thereon can be a code that allows the orientation of the target code to be visually recognized. For example, a part of the target code may have an arrangement that indicates the direction of the target code. For example, a part of the target code may include an image such as an arrow indicating the direction of the target code. Further, when the target code is a color coat, the arrangement of colors in a part of the target code may be an arrangement indicating the direction of the target code. For example, in a plate where the orientation of the target code can be visually recognized, the target code is a color code in which multiple cells are arranged on a matrix, and the target code is placed on the side located in a specific direction. It may also be a plate on which a color code is arranged in which the color of the cell is a specific color. In this case, the direction in which the side made up of cells of this specific color is located is the specific direction of the target code.

視覚的に対象コードの向きを認識可能とすることで、ユーザが対象コードの特定の向きを認識することができ、ユーザが、対象コードを所望の角度で配置することが可能となる。 By making the orientation of the target code visually recognizable, the user can recognize the specific orientation of the target code, and the user can arrange the target code at a desired angle.

なお、ここでは、対象コードがプレートに配置されている場合について説明したが、対象コードは、フィルムやシート等に印刷されたものであってもよい。このような場合においても、上記のように、対象コードが配置される近傍等に、対象コードの向きを視覚的に認識可能とする情報等を配置するようにしてもよく、フィルム等の形状を、対象コードの向きを認識可能な形状としてもよい。また、対象コードを物品の表面や、物品の包装材等に配置してもよい。ここでの配置は、貼付であっても印刷であってもよい。この場合、物品等の向きと、対象コードが示す向きとを一致させることが好ましい。また、対象コードは、モニタ等に表示されるコードであってもよい。 Note that although the case where the target code is arranged on a plate has been described here, the target code may be printed on a film, a sheet, or the like. Even in such a case, as described above, information that allows the orientation of the target code to be visually recognized may be placed near where the target code is placed, and the shape of the film, etc. , it may be a shape that allows the orientation of the target code to be recognized. Further, the target code may be placed on the surface of the article, the packaging material of the article, or the like. The arrangement here may be pasting or printing. In this case, it is preferable that the orientation of the article or the like matches the orientation indicated by the target code. Further, the target code may be a code displayed on a monitor or the like.

撮影画像は、例えば、1または2以上の対象コードが着脱可能に配置された作業の実施状況を示す表や作業の管理表等を撮影した画像であってもよい。ここでの対象コードの配置は、例えば、対象コードが配置されたプレートやシート等の配置と考えてもよい。また、作業画像は、1または2以上の対象コードが配置された商品の陳列棚や書棚等を撮影した画像であってもよい。ただし、撮影画像は、これらの画像に限定されるものではない。 The photographed image may be, for example, a photographed image of a table showing the implementation status of the work, a work management table, etc., in which one or more target codes are removably arranged. The arrangement of the target code here may be considered, for example, as the arrangement of a plate, a sheet, etc., on which the target code is arranged. Further, the work image may be an image of a product display shelf, a bookshelf, etc., on which one or more target codes are arranged. However, the photographed images are not limited to these images.

画像受付部100は、対象コードが配置されている角度を、後述する角度情報取得部104が取得する際に、この角度の基準となる方向を示す基準対象をさらに撮影した撮影画像を受け付けるようにしてもよい。基準対象をさらに撮影した撮影画像とは、1以上の対象コードと基準対象とを撮影した画像であり、1以上の対象コードも基準画像も含まれている撮影画像である。対象コードが配置されている角度については後述する。基準対象は、例えば、対象コードが配置される面に表示された罫線等であってもよく、この罫線が伸びている方向を、上記の基準となる方向と判断してよい。また、基準対象は、例えば、水平方向に伸びており、上面にコードが貼付された物品が配置される陳列棚の棚板等であってもよく、この棚板の伸びている方向を、上記の基準となる方向と判断してよい。また、基準対象は、角度の基準となる方向を示すコード(以下、基準コードと称す)であってもよい。つまり、画像受付部100は、基準コードをさらに撮影した撮影画像を受け付けても良い。基準コードをさらに撮影した撮影画像とは、1以上の対象コードと1以上の基準コードとを撮影した画像であり、1以上の対象コードも1以上の基準画像も含まれている撮影画像である。この場合、この基準コードが示す方向を、角度の基準となる方向と考えてもよい。基準コードは、コードから読み取られる情報が、基準コードであることを示す情報であることが好ましい。基準コードが示す方向は、例えば、基準コードの特定の向きを示す方向(例えば、右方向、上方向等)であってもよく、基準コードの長手方向や短手方向等であってもよい。基準コードは、上記の対象コードと同様に、プレート等に配置されていてもよい。基準コードは、複数の基準コードによって角度の基準となる方向を示すものであってもよい。例えば、二つの基準コードの中心を結ぶ方向や、結ぶ方向に垂直な方向等が、角度の基準となる方向であってもよい。なお、通常のコードにおいては、コードの読取時にコードの向き等を検出することから、コードを用いて、コードの特定の向きを検出する処理は公知技術であり、ここでは説明を省略する。 The image reception unit 100 is configured to receive an image obtained by further photographing a reference object indicating a reference direction of this angle when an angle information acquisition unit 104 (described later) obtains the angle at which the target code is arranged. It's okay. A photographed image obtained by further photographing the reference object is an image obtained by photographing one or more object codes and the reference object, and is a photographed image that includes both the one or more object codes and the reference image. The angle at which the target code is arranged will be described later. The reference object may be, for example, a ruled line displayed on the surface on which the target code is arranged, and the direction in which this ruled line extends may be determined to be the direction serving as the above-mentioned reference. Further, the reference object may be, for example, a shelf board of a display shelf that extends in the horizontal direction and on which items with codes affixed to the upper surface are arranged, and the direction in which this shelf board extends is defined as above. It may be determined that the direction is the reference direction. Further, the reference object may be a code (hereinafter referred to as a reference code) indicating a direction that is a reference for an angle. In other words, the image reception unit 100 may receive an additional photographed image of the reference code. A photographed image obtained by further photographing a reference code is an image obtained by photographing one or more target codes and one or more reference codes, and is a photographed image that also includes one or more target codes and one or more reference images. . In this case, the direction indicated by this reference code may be considered as the direction that serves as the angle reference. The reference code is preferably information indicating that the information read from the code is the reference code. The direction indicated by the reference code may be, for example, a direction indicating a specific orientation of the reference code (for example, rightward, upward direction, etc.), or may be a longitudinal direction, a lateral direction, or the like of the reference code. The reference code may be arranged on a plate or the like similarly to the above-mentioned target code. The reference code may indicate a direction that serves as a reference angle using a plurality of reference codes. For example, the angle reference direction may be a direction that connects the centers of two reference cords, or a direction perpendicular to the connecting direction. Note that in a normal code, since the direction of the code is detected when reading the code, the process of detecting a specific direction of the code using the code is a known technique, and the explanation thereof will be omitted here.

ここでの撮影画像の受け付けとは、後述する撮影部101が撮影した撮影情報の受け付けであってもよく、コード処理装置1の外部に設けられた後述する撮影部101と同様の撮影部を有する撮影装置(図示せず)等から有線もしくは無線の通信回線を介して送信された撮影画像の受信であってもよく、光ディスクや磁気ディスク、半導体メモリなどの記録媒体(図示せず)から読み出された撮影画像の受け付け等であってもよい。画像受付部100が、どのように撮影画像を受け付けるかについては、上記に限定されるものではない。 The reception of a photographed image here may be the reception of photographic information photographed by a photographing section 101 described later, which has a photographing section similar to the photographing section 101 described below provided outside the code processing device 1. It may also be the reception of photographed images transmitted via a wired or wireless communication line from a photographing device (not shown), etc., and read from a recording medium (not shown) such as an optical disk, magnetic disk, or semiconductor memory. It may also be possible to accept a photographed image that has been taken. How the image receiving unit 100 receives captured images is not limited to the above.

なお、本実施の形態においては、一例として、コード処理装置1が撮影部101を備えており、この撮影部101が撮影した撮影画像を画像受付部100が受け付ける場合について説明するが、画像受付部100が、外部等に設けられた撮影部等から撮影画像を受け付ける場合、コード処理装置1は、後述するカメラ等の撮影部101を有していなくてもよい。例えば、いわゆるスマートフォン等が有するカメラで撮影され、このスマートフォンから送信された撮影画像を画像受付部100が受け付ける場合、後述する撮影部101は省略してもよい。 In this embodiment, as an example, a case will be described where the code processing device 1 includes the photographing section 101 and the image receiving section 100 receives a photographed image taken by the photographing section 101. When the code processing device 100 receives a photographed image from a photographing section or the like provided externally, the code processing device 1 does not need to have the photographing section 101 such as a camera to be described later. For example, when the image receiving unit 100 receives a photographed image taken with a camera included in a so-called smartphone or the like and transmitted from the smartphone, the photographing unit 101 described later may be omitted.

画像受付部100は、撮影画像を受け付けるためのインターフェース等と考えてもよい。画像受付部100は、例えば、撮影画像を受信したり読み出したりするためのデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現される。 The image reception unit 100 may be considered as an interface or the like for accepting captured images. The image reception unit 100 is realized by, for example, a device driver for receiving and reading captured images, menu screen control software, and the like.

撮影部101は、撮影画像を取得する。例えば、撮影部101は、1または2以上のコードが配置された領域を撮影して撮影画像を取得する。ここでの1または2以上のコードは、対象コードである。例えば、撮影部101は、対象コードが配置された1または2以上のプレートが配置された領域を撮影して撮影画像を取得する。このプレートは、例えば、上述したような対象コードの向きを視覚的に認識可能なプレートである。撮影部101が撮影する画像は、上記において画像受付部100に関連して説明したような撮影画像である。なお、撮影部101は、1または2以上の対象コードと、基準対象とが配置された領域を撮影して撮影画像を取得してもよい。また、撮影部101は、1または2以上の対象コードに加えて、対象コード以外の1または2以上のコードが配置された領域を撮影して撮影画像を取得してもよい。この対象コード以外の1または2以上のコードは、基準コードを含んでいてもよい。 The photographing unit 101 acquires a photographed image. For example, the photographing unit 101 acquires a photographed image by photographing an area in which one or more codes are arranged. The one or more codes here are target codes. For example, the imaging unit 101 obtains a photographed image by photographing an area where one or more plates on which target codes are arranged are arranged. This plate is, for example, a plate that allows the direction of the target code to be visually recognized as described above. The image photographed by the photographing section 101 is the photographed image as described above in relation to the image receiving section 100. Note that the imaging unit 101 may obtain a photographed image by photographing an area in which one or more target codes and a reference object are arranged. Furthermore, in addition to one or more target codes, the imaging unit 101 may acquire a photographed image by photographing an area in which one or more codes other than the target code are arranged. One or more codes other than this target code may include a reference code.

撮影部101は、通常、デジタルカメラや、光学式スキャナや、ラインセンサ等で実現される。 The photographing unit 101 is usually realized by a digital camera, an optical scanner, a line sensor, or the like.

コード検出部102は、画像受付部100が受け付けた撮影画像から1または2以上のコードを検出する。撮影画像からコードを検出するということは、例えば、撮影画像内において、コードの画像を検出することである。コードの画像を検出することは、コードの領域を検出することであってもよい。コード検出部102が撮影画像から検出するコードは、1または2以上の対象コードを含むコードである。例えば、コード検出部102は、撮影画像内の全てのコードを検出してもよく、1以上の対象コードを含む一部のコードのみを検出してもよい。撮影画像が、基準対象として、基準コードを用いる場合、コード検出部102は、この基準コードも検出することが好ましい。撮影画像から1または2以上のコードを検出する処理は公知技術であるため、ここでは詳細な説明は省略する。 The code detection unit 102 detects one or more codes from the captured image received by the image reception unit 100. Detecting a code from a photographed image means, for example, detecting an image of the code within the photographed image. Detecting an image of the code may be detecting a region of the code. The code that the code detection unit 102 detects from the captured image is a code that includes one or more target codes. For example, the code detection unit 102 may detect all codes in the photographed image, or may detect only some codes including one or more target codes. When the captured image uses a reference code as a reference object, it is preferable that the code detection unit 102 also detects this reference code. Since the process of detecting one or more codes from a photographed image is a known technique, detailed explanation will be omitted here.

読取取得部103は、コード検出部102が検出した1以上のコードを読み取って情報を取得する。ここでの読み取る1以上のコードは、対象コードである。読取取得部103が対象コードを読み取って取得する情報(以下、読取情報と称す)は、例えば、対象コードから直接読み取られる情報であってもよく、対象コードから読み取られる識別子等の情報と対応付けられて図示しない格納部に格納されている情報であってもよい。コード検出部102が検出した1以上のコードが対象コード以外のコードを含む場合、この対象コード以外のコードも読み取るようにしてもよい。例えば、コード検出部102が検出した1以上のコードが基準コードを含む場合、読取取得部103は基準コードも読み取るようにしてもよい。読取情報は、どのような情報であってもよい。以下においては、読取取得部103が、対象コードを読み取って識別子を取得し、この識別子と対応付けられた読取情報を、読取情報格納部106に格納されている複数の異なる読取管理情報から検索等により取得する場合を例に挙げて説明する。読取管理情報は、対象コードから読み取られる識別子と読取情報とを有する情報である。なお、コードを読み取る処理については、公知技術であるため、ここでは詳細な説明は省略する。 The reading acquisition unit 103 reads one or more codes detected by the code detection unit 102 and acquires information. The one or more codes read here are target codes. The information that the reading acquisition unit 103 acquires by reading the target code (hereinafter referred to as read information) may be, for example, information that is directly read from the target code, and is associated with information such as an identifier read from the target code. The information may be stored in a storage unit (not shown). If one or more codes detected by the code detection unit 102 include a code other than the target code, the code other than the target code may also be read. For example, if one or more codes detected by the code detection unit 102 include a reference code, the reading acquisition unit 103 may also read the reference code. The read information may be any information. In the following, the reading acquisition unit 103 reads the target code to acquire an identifier, and searches for reading information associated with this identifier from a plurality of different reading management information stored in the reading information storage unit 106. This will be explained by taking as an example the case where the data is acquired by . The reading management information is information that includes an identifier read from the target code and reading information. Note that since the process of reading the code is a known technique, a detailed explanation will be omitted here.

角度情報取得部104は、コード検出部102が検出した1以上のコードが配置されている角度を取得し、取得した角度に対応する情報(以下、角度対応情報と称す)を取得する。ここでの角度情報取得部104が角度を取得する1以上のコードは、1以上の対象コードである。対象コードが配置されている角度とは、例えば、対象コードの向きを示す角度と考えてもよい。対象コードが配置されている角度は、例えば、撮影画像内における対象コードが配置されている角度である。コードが配置されている角度とは、例えば、対象コードの特定の向きを示す方向と、角度の基準となる方向とがなす角度である。対象コードの特定の向きを示す方向とは、例えば、コードにおいて特定可能な予め決められた方向であって、コードの表面に平行な方向である。対象コードの特定の向きを示す方向は、例えば、対象コードの上方向や、右方向や、左方向や、下方向等である。なお、角度情報取得部104が、対象コードが配置されている角度として、対象コードの長手方向や短手方向が示す角度を取得する場合、対象コードの特定の向きを示す方向は、例えば、コードの長手方向や、短手方向であってもよい。 The angle information acquisition unit 104 acquires the angle at which one or more codes detected by the code detection unit 102 are arranged, and acquires information corresponding to the acquired angle (hereinafter referred to as angle correspondence information). The one or more codes whose angles are acquired by the angle information acquisition unit 104 here are one or more target codes. The angle at which the target code is arranged may be considered, for example, as an angle indicating the orientation of the target code. The angle at which the target code is arranged is, for example, the angle at which the target code is arranged within the captured image. The angle at which the code is arranged is, for example, the angle between a direction indicating a specific orientation of the target code and a direction that is a reference for the angle. The direction indicating a specific orientation of the target code is, for example, a predetermined direction that can be specified in the code, and is a direction parallel to the surface of the code. The direction indicating the specific orientation of the target code is, for example, upward, rightward, leftward, downward, or the like of the target code. Note that when the angle information acquisition unit 104 acquires an angle indicated by the longitudinal direction or the lateral direction of the subject code as the angle at which the subject code is arranged, the direction indicating the specific orientation of the subject code is, for example, It may be in the longitudinal direction or in the lateral direction.

なお、以下の説明において角度情報取得部104が取得する角度を、説明の便宜上、0~360度までの範囲に限定して説明する。ただし、角度の範囲はこの範囲に限定されるものではなく、これ以外の範囲、例えば、-180度から180度までの範囲としてもよい。上記以外の範囲を用いる場合、以下の説明等における角度や角度の範囲等は、適宜対応する値に変換して読み替えるようにすればよい。例えば、350度の角度についての説明を、-10度の角度についての説明に読み替えてもよい。 In the following description, the angle acquired by the angle information acquisition unit 104 will be limited to a range of 0 to 360 degrees for convenience of explanation. However, the angle range is not limited to this range, and may be in a range other than this, for example, from -180 degrees to 180 degrees. When using ranges other than the above, angles, angle ranges, etc. in the following description etc. may be appropriately converted and read as corresponding values. For example, a description of an angle of 350 degrees may be replaced with a description of an angle of -10 degrees.

まず、角度情報取得部104が、コード検出部102が検出した1以上の対象コードが配置されている角度を取得する処理について説明する。角度情報取得部104は、例えば、コード検出部102が検出した1以上の対象コードについて、特定の向きを示す方向を取得する。例えば、角度情報取得部104は、対象コードの向きを特定するために、対象コード内に配置された1以上のドットやセル等を用いて、対象コードの上下左右を検出し、検出した上下左右を用いて、特定の向きを示す方向を取得してもよい。ここでの方向は、例えば、撮影画像内における方向である。方向の取得とは、方向を示す情報の取得と考えてもよい。例えば、セルがマトリクス状に配置されたカラーコードにおいて、カラーコードの上下左右を検出し、左下隅のセルから右下隅のセルに向かう方向や、左上隅のセルから右上隅のセルに向かう方向を、特定の向きを示す方向である右方向として検出してもよい。同様に、左下隅のセルから左上隅のセルに向かう方向を、上方向として検出してもよい。 First, a process in which the angle information acquisition unit 104 acquires the angle at which one or more target codes detected by the code detection unit 102 are arranged will be described. The angle information acquisition unit 104 acquires, for example, a direction indicating a specific orientation of one or more target codes detected by the code detection unit 102. For example, in order to identify the orientation of the target code, the angle information acquisition unit 104 detects the upper, lower, left, and right sides of the target code using one or more dots or cells arranged within the target code, and detects the detected upper, lower, left, and right directions. may be used to obtain a direction indicating a specific orientation. The direction here is, for example, a direction within a captured image. Obtaining a direction may be considered to be obtaining information indicating the direction. For example, in a color code where cells are arranged in a matrix, the top, bottom, left and right sides of the color code are detected, and the direction from the cell in the lower left corner to the cell in the lower right corner, or from the cell in the upper left corner to the cell in the upper right corner, is detected. , it may be detected as the right direction, which is a direction indicating a specific direction. Similarly, the direction from the cell in the lower left corner to the cell in the upper left corner may be detected as the upward direction.

また、例えば、角度情報取得部104は、コード検出部102が検出した1以上の対象コードの画像を用いて、対象コードの画像内の座標系を検出し、この座標系を用いて、特定の向きを示す方向(例えば、右方向や上方向等)を特定してもよい。特定の向きを示す方向は、座標系の一の座標軸が示す方向であってもよい。対象コードの画像内の座標系とは、例えば、対象コードを構成するドットやセル、バー等の配列方向等から検出される2次元座標系である。ただし、上記で説明した対象コードの特定の向きを示す方向の特定は、一例であり、上記の処理に限定されるものではない。 Further, for example, the angle information acquisition unit 104 uses the images of one or more target codes detected by the code detection unit 102 to detect a coordinate system within the image of the target code, and uses this coordinate system to determine a specific target code. A direction indicating the orientation (for example, right direction, upward direction, etc.) may be specified. The direction indicating the specific orientation may be the direction indicated by one coordinate axis of the coordinate system. The coordinate system in the image of the target code is, for example, a two-dimensional coordinate system detected from the arrangement direction of dots, cells, bars, etc. that constitute the target code. However, the specification of the direction indicating the specific orientation of the target code described above is just one example, and the process is not limited to the above process.

角度情報取得部104は、上記で取得した対象コードの特定の向きを示す方向が、角度の基準となる方向に対してなす角度を取得する。角度の基準となる方向としては、例えば、撮影画像の予め決められた方向を用いてもよい。撮影画像の予め決められた方向とは、撮影画像の右方向や、左方向や、上方向や、下方向である。撮影画像の予め決められた方向は、撮影画像の長手方向や、短手方向であってもよい。撮影画像の予め決められた方向は、撮影画像から取得可能である。例えば、角度情報取得部104が上記で対象コードについて取得した撮影画像内における対象コードの特定の向きを示す方向が、撮影画像内の予め決められた方向に対してなす角度を、対象コードが配置されている角度として取得する。例えば、角度情報取得部104は、上記のように、撮影画像内のカラーコードの左下隅のセルから右下隅のセルに向かう方向を、対象コードの特定の向き示す方向である対象コードの右方向として検出し、この方向が、撮影画像の右方向(例えば、撮影画像の左辺から右辺に向き合う方向に対してなす角度を、対象コードが配置されている角度として取得してもよい。 The angle information acquisition unit 104 acquires the angle that the direction indicating the specific orientation of the target code acquired above makes with respect to the direction that is the reference angle. For example, a predetermined direction of the captured image may be used as the direction that serves as the reference angle. The predetermined direction of the photographed image is the right direction, left direction, upward direction, or downward direction of the photographed image. The predetermined direction of the photographed image may be the longitudinal direction or the lateral direction of the photographed image. The predetermined direction of the captured image can be obtained from the captured image. For example, the target code is arranged at an angle that the direction indicating the specific orientation of the target code in the captured image acquired by the angle information acquisition unit 104 regarding the target code above makes with respect to a predetermined direction in the captured image. Get it as the angle. For example, as described above, the angle information acquisition unit 104 may direct the direction from the lower left corner cell to the lower right corner cell of the color code in the photographed image to the right direction of the target code, which is a direction indicating a specific orientation of the target code. , and the angle that this direction makes with respect to the right direction of the photographed image (for example, the direction from the left side to the right side of the photographed image) may be acquired as the angle at which the target code is arranged.

また、対象コードが配置されている角度を特定する際に利用される角度の基準となる方向は、上述した基準対象が示す方向であってもよい。すなわち、角度情報取得部104は、コード検出部102が検出した対象コードが配置されている角度として、撮影画像内の基準対象が示す方向と、対象コードの特定の向きを示す方向とがなす相対的な角度を取得してもよい。 Furthermore, the reference direction of the angle used when specifying the angle at which the target code is arranged may be the direction indicated by the reference target described above. That is, the angle information acquisition unit 104 determines the angle at which the target code detected by the code detection unit 102 is arranged, based on the relative relationship between the direction indicated by the reference object in the photographed image and the direction indicating the specific orientation of the target code. It is also possible to obtain a specific angle.

例えば、基準対象が、罫線や、棚板等である場合、角度情報取得部104は、画像認識処理等を行なって撮影画像内においてこれらの基準対象を検出し、基準対象の伸びている方向(例えば、罫線や、棚板等の伸びる方向)を検出する。基準対象の伸びている方向が、撮影画像の左右である場合、基準対象が伸びている方向の、撮影画像の左から右に向かう方向を右方向、右から左に向かう方向を左方向として取得してもよい。なお、基準対象の伸びる方向が上下方向である場合、上記の左右を上下に読み替えた処理を行なうことで、上方向および下方向を判断してもよい。例えば、上記で取得した基準対象の伸びている方向と、撮影画像の左右方向とがなす角度が45度から135度の間でない場合、基準対象の伸びる方向を撮影画像の左右と考え、45度から135度の間である場合、基準対象の伸びる方向を撮影画像の上下と考えるようにしてもよい。 For example, when the reference object is a ruled line, a shelf board, etc., the angle information acquisition unit 104 performs image recognition processing, etc. to detect these reference objects in the photographed image, and detects the direction in which the reference object extends ( For example, the direction in which a ruled line or shelf board extends is detected. If the direction in which the reference object extends is to the left or right of the photographed image, the direction in which the reference object extends from the left to the right of the photographed image is obtained as the right direction, and the direction from right to left is obtained as the left direction. You may. Note that when the direction in which the reference object extends is the up-down direction, the upward direction and the downward direction may be determined by performing a process in which the above-mentioned left and right are read as up and down. For example, if the angle between the extending direction of the reference object obtained above and the horizontal direction of the photographed image is not between 45 degrees and 135 degrees, the direction in which the reference object extends is considered to be the left and right of the photographed image, and the angle is 45 degrees. If the angle is between 135 degrees and 135 degrees, the direction in which the reference object extends may be considered to be above and below the photographed image.

また、基準対象が基準コードである場合、角度の基準となる方向を、この基準コードにおいて特定される予め決められた方向としてもよい。例えば、角度情報取得部104は、1以上の対象コードにおいて特定した予め決められた方向と、基準コードにおいて特定した予め決められた方向とがなす角度を取得する。基準コードにおいて予め決められた方向を特定する処理は、上記の対象コードにおいて予め決められた方向を特定する処理と同様であるため、ここでは、説明を省略する。 Furthermore, when the reference object is a reference code, the direction that serves as the reference for the angle may be a predetermined direction specified in this reference code. For example, the angle information acquisition unit 104 acquires an angle formed by a predetermined direction specified in one or more target codes and a predetermined direction specified in the reference code. The process of specifying the predetermined direction in the reference code is the same as the process of specifying the predetermined direction in the target code, so the explanation will be omitted here.

基準コード等の基準対象が示す角度の基準となる方向は、対象コードが配置される面の上下方向や高さ方向に対して、平行な方向、または垂直な方向であることが好ましい。例えば、対象コードが、水平面以外の平面、例えば、壁面等に配置される場合、基準対象が示す基準となる方向は、水平方向または、水平方向に垂直な方向であることが好ましい。 The direction that serves as the reference for the angle indicated by the reference object such as the reference code is preferably a direction parallel to or perpendicular to the vertical direction or height direction of the surface on which the object code is arranged. For example, when the target code is placed on a plane other than a horizontal plane, such as a wall surface, the reference direction indicated by the reference target is preferably a horizontal direction or a direction perpendicular to the horizontal direction.

なお、角度情報取得部104が1以上の対象コードについて取得する角度は、撮影画像内の角度に限定されるものではなく、実空間における対象コードが配置されている角度を取得してもよい。実空間における対象コードが配置されている角度は、例えば、実空間の対象コードが配置されている面内における対象コードが配置されている角度である。例えば、画像受付部100が受け付けた撮影画像を、対象コードに対して垂直な方向から撮影した画像に相当する画像となるよう射影変換等を行なって補正し、この補正した撮影画像について、対象コードが配置されている角度を特定することで、実空間における対象コードが配置されている角度を取得してもよい。この場合、例えば、基準対象が示す角度の基準となる方向も、補正した撮影画像から取得するようにする。撮影画像についての補正は、例えば、撮影画像内の1以上のコードが本来のコードの縦横比と同じ縦横比を有する形状となるようにする補正や、基準対象が示す方向を、撮影画像の横方向や縦方向等の予め決められた方向と一致させるようにする補正である。また、仮想現実の技術等を用いて、撮影画像から、実空間における対象コードの特定の向きを示す方向や、対象コードが配置されている角度の基準となる方向を取得し、取得した方向を用いて実空間における対象コードが配置される角度を取得してもよい。例えば、仮想現実の技術を用いれば、撮影画像内のコードから、実空間の方向等を取得することが可能である。角度の基準となる方向は、実空間における水平方向や垂直方向であってもよく、実空間における基準対象が示す方向であってもよい。 Note that the angle that the angle information acquisition unit 104 acquires for one or more target codes is not limited to the angle in the captured image, and may also acquire the angle at which the target code is arranged in real space. The angle at which the target code is arranged in real space is, for example, the angle at which the target code is arranged in the plane in which the target code is arranged in real space. For example, the captured image received by the image reception unit 100 is corrected by projective transformation so that it becomes an image corresponding to an image captured from a direction perpendicular to the target code, and the corrected captured image is corrected by the target code. By specifying the angle at which the target code is arranged, the angle at which the target code is arranged in real space may be obtained. In this case, for example, the direction that serves as a reference for the angle indicated by the reference object is also acquired from the corrected captured image. Corrections for captured images include, for example, making corrections such that one or more codes in the captured image have a shape with the same aspect ratio as the original code, or changing the direction indicated by the reference object to the width and width of the captured image. This is a correction to match a predetermined direction such as a direction or a vertical direction. In addition, using virtual reality technology, etc., we acquire from the captured image the direction that indicates the specific orientation of the target code in real space and the direction that serves as a reference for the angle at which the target code is arranged. The angle at which the target code is arranged in real space may be obtained using the following method. For example, by using virtual reality technology, it is possible to obtain the direction of real space, etc. from the code in the captured image. The angle reference direction may be a horizontal direction or a vertical direction in real space, or may be a direction indicated by a reference object in real space.

角度情報取得部104は、対象コードが配置されている角度として、3以上の異なる角度を取得可能なものであり、取得した角度にそれぞれ対応する情報を取得することが好ましい。例えば、角度情報取得部104は、3以上の異なる角度を取得可能なものであり、異なる角度に対応して取得される情報が、互いに異なる情報であることが好ましい。例えば、角度情報取得部104は、対象コードが配置されている角度として3以上の異なる角度のうちの一つを取得し、取得した角度に対応する情報を取得することが好ましい。 The angle information acquisition unit 104 is capable of acquiring three or more different angles at which the target code is arranged, and preferably acquires information corresponding to each of the acquired angles. For example, the angle information acquisition unit 104 is capable of acquiring three or more different angles, and it is preferable that the information acquired corresponding to the different angles be mutually different information. For example, it is preferable that the angle information acquisition unit 104 acquires one of three or more different angles as the angle at which the target code is arranged, and acquires information corresponding to the acquired angle.

なお、角度情報取得部104が取得する対象コードが配置されている角度の最小の単位は、1度単位であってもよく、10度単位であってもよく、45度単位であってもよく、90度単位であってもよく、その単位は問わない。角度の最小の単位は、例えば、0度より大きく180度以下である範囲内の角度である。例えば、角度情報取得部104は、最小単位に満たない角度の端数は切り捨てるようにしてもよく、切り上げるようにしてもよく、最小単位未満の任意の閾値以上の角度の端数を切り上げ、閾値未満の角度の端数は切り捨てるようにしてもよい。この閾値は、最小単位の半分程度の値であることが好ましい。 Note that the minimum unit of angle in which the target code acquired by the angle information acquisition unit 104 is arranged may be 1 degree, 10 degree, or 45 degree. , may be in units of 90 degrees, and the unit does not matter. The smallest unit of angle is, for example, an angle within a range of greater than 0 degrees and less than or equal to 180 degrees. For example, the angle information acquisition unit 104 may round down fractions of angles that are less than the minimum unit, may round up fractions of angles that are less than the minimum unit, and may round up fractions of angles that are greater than or equal to an arbitrary threshold value that are less than the minimum unit. Fractions of angles may be rounded down. Preferably, this threshold value is about half the minimum unit.

次に、角度情報取得部104が、上記で取得した対象コードが配置されている角度について、角度対応情報を取得する処理に関して説明する。角度情報取得部104は、例えば、異なる角度と対応付けられて角度情報格納部107等に格納されている複数の角度対応情報から、上記で取得した対象コードが配置されている角度と対応付けられた角度対応情報を検出し、取得する。異なる角度と対応付けて格納されている複数の角度対応情報において、一の角度対応情報に対応付けられている角度は、複数であってもよい。異なる角度と対応付けて格納されている複数の角度対応情報として、例えば、角度の範囲と対応付けて格納されている複数の角度対応情報を用いてもよい。この場合、角度情報取得部104は、角度情報取得部104が取得した対象コードが配置されている角度を含む角度の範囲と対応付けられた角度対応情報を、図示しない格納部から検出して取得する。ここでの複数の角度の範囲は、通常、互いに重複した部分(すなわち角度)を有さない角度の範囲であることが好ましいが、重複していてもよい。例えば、対象コードが配置されている角度が、重複した部分の角度である場合、重複したそれぞれの値に対応した情報を取得するようにしても良い。 Next, a process in which the angle information acquisition unit 104 acquires angle correspondence information regarding the angle at which the target code acquired above is arranged will be described. For example, the angle information acquisition unit 104 associates the acquired target code with the angle at which it is arranged from a plurality of angle correspondence information stored in the angle information storage unit 107 or the like in correspondence with different angles. Detect and obtain angle correspondence information. Among the plurality of angle correspondence information stored in association with different angles, a plurality of angles may be associated with one angle correspondence information. As the plurality of angle correspondence information stored in association with different angles, for example, a plurality of angle correspondence information stored in correspondence with angle ranges may be used. In this case, the angle information acquisition unit 104 detects and acquires angle correspondence information associated with the range of angles including the angle at which the target code acquired by the angle information acquisition unit 104 is located from a storage unit (not shown). do. The ranges of the plurality of angles here are usually preferably ranges of angles that do not have mutually overlapping portions (i.e., angles), but may overlap. For example, if the angle at which the target code is arranged is the angle of an overlapping part, information corresponding to each of the overlapping values may be acquired.

角度対応情報は、どのような情報であってもよい。例えば、角度対応情報は、対応する対象コードに対応するユーザが出社しているか否かを示す情報や、入室しているか否かを示す情報であってもよい。また、角度対応情報は、対応する対象コードに対応する処理や作業等が、認証前であるか、認証処理中であるか、認証が完了したかを示す情報であってもよい。対象コードに対応するユーザとは、例えば、対象コードから読み取った読取情報であるユーザ識別子が示すユーザである。対象コードに対応する処理や作業とは、例えば、対象コードから読み取った読取情報である処理識別子や作業識別子が示す処理や作業である。処理識別子は、例えば、処理名や、処理に割り当てられた文字列である。作業識別子は、例えば、作業名や、作業に割り当てられた文字列である。 The angle correspondence information may be any information. For example, the angle correspondence information may be information indicating whether the user corresponding to the corresponding target code is at work or not, or information indicating whether the user is entering the office. Further, the angle correspondence information may be information indicating whether the process, work, etc. corresponding to the corresponding target code has not been authenticated, is in the process of being authenticated, or has been authenticated. The user corresponding to the target code is, for example, the user indicated by the user identifier, which is read information read from the target code. The process or work corresponding to the target code is, for example, the process or work indicated by the process identifier or work identifier that is read information read from the target code. The process identifier is, for example, a process name or a character string assigned to the process. The work identifier is, for example, a work name or a character string assigned to the work.

なお、例えば、角度情報取得部104は、コード検出部102が検出した1以上の対象コードについて、各対象コードが配置されている角度を90度単位で取得するようにし、角度情報格納部107に90度単位の角度と対応付けられて格納されている角度対応情報から、各対象コードについて取得した角度に対応付けられた角度対応情報を取得してもよい。この場合において、角度情報取得部104は、90度と270度とに対応する角度対応情報として、同じ角度対応情報を取得するようにしてもよい。特に、対象コードの上下が、撮影画像の上下と一致するときに対象コードが配置されている角度が0度となるよう設定されている場合であって、対象コードが、その上下の向きが視覚的に認識可能なプレートに配置されている場合においては、角度情報取得部104は、コード検出部102が検出した対象コードが配置されている角度が、90度であるときと、270度であるときとに、同じ角度対応情報を取得するようにしてもよい。 For example, the angle information acquisition unit 104 acquires the angle at which each target code is arranged in units of 90 degrees for one or more target codes detected by the code detection unit 102, and stores the angle information in the angle information storage unit 107. The angle correspondence information associated with the angle acquired for each target code may be acquired from the angle correspondence information stored in association with angles in units of 90 degrees. In this case, the angle information acquisition unit 104 may acquire the same angle correspondence information as the angle correspondence information corresponding to 90 degrees and 270 degrees. In particular, if the target code is set so that the angle at which it is placed is 0 degrees when the top and bottom of the target code match the top and bottom of the captured image, and the target code is visually When the target code is placed on a visually recognizable plate, the angle information acquisition unit 104 determines whether the angle at which the target code detected by the code detection unit 102 is placed is 90 degrees or 270 degrees. The same angle correspondence information may be acquired from time to time.

例えば、上記のような場合、対象コードが配置されている角度が0度である状態と、プレートごと対象コードを180度回転させて配置した状態(プレートを上下逆に配置した状態)とにおける対象コードが配置されている角度の違いは、比較的容易に視覚的に認識できるが、0度である状態から、プレートごと対象コードを90度回転させて配置した場合と、プレートごと対象コードを-90度回転させて配置した場合との対象コードの配置される角度の違いを即座に視覚的に区別することは困難な場合が多い。例えば、プレートの上部が左に位置する場合と右に位置する場合とにおいて、どちらが対象コードを90度回転させた状態であるかを、即座に区別することは難しい。このため、対象コードが配置されている角度を90度とした場合と270度とした場合とを区別して、それぞれ異なる情報が取得されるようにすると、ユーザが回転方向を間違えて対象コードを配置したりすること等によって、意図としない情報が取得される可能性がある。このため、対象コードが配置される角度が90度と270度とでそれぞれ取得される角度対応情報を同じ情報として、対象コードが配置されている角度が90度である場合と270度である場合とを区別しないようすることで、対象コードを配置する角度の誤りによって、間違った角度対応情報が取得されることを防ぐことができる。 For example, in the above case, the target code is placed at an angle of 0 degrees, and the target code is placed with the plate rotated 180 degrees (the plate is placed upside down). The difference in the angle at which the code is placed can be visually recognized relatively easily, but there are cases where the target code is rotated 90 degrees from the 0 degree position, and when the target code is rotated 90 degrees with the plate and - In many cases, it is difficult to immediately visually distinguish the difference in the angle at which the target code is arranged compared to when the target code is arranged rotated by 90 degrees. For example, it is difficult to immediately distinguish whether the upper part of the plate is located on the left or the right, in which case the target code is rotated by 90 degrees. Therefore, if the angle at which the target code is placed is 90 degrees and the angle at which it is placed at 270 degrees, and different information is obtained for each case, it is possible for the user to place the target code in the wrong rotation direction. There is a possibility that unintended information may be obtained by For this reason, assuming that the angle correspondence information obtained when the target code is placed at an angle of 90 degrees and 270 degrees is the same information, if the angle at which the target code is placed is 90 degrees and 270 degrees, By not distinguishing between the two, it is possible to prevent incorrect angle correspondence information from being acquired due to an error in the angle at which the target code is placed.

角度情報取得部104が、90度と270度とに対応する角度対応情報として、どのようにして同じ角度対応情報を取得するかは問わない。例えば、角度情報格納部107に90度単位の角度と対応付けられて格納されている角度対応情報において、90度と270度とが、同じ角度対応情報と対応付けられているようにすることで、90度と270度とに対応する角度対応情報として、同じ角度対応情報を取得するようにしてもよい。また、角度情報取得部104は、取得した角度が270度である場合にも、90度に対応付けて格納された角度対応情報を読み出すようにしてもよい。また、対象コードが配置されている角度が270度である場合に、配置されている角度として90度を取得するようにしてもよい。 It does not matter how the angle information acquisition unit 104 acquires the same angle correspondence information as the angle correspondence information corresponding to 90 degrees and 270 degrees. For example, in the angle correspondence information stored in the angle information storage unit 107 in association with angles in units of 90 degrees, by making 90 degrees and 270 degrees correspond to the same angle correspondence information, , the same angle correspondence information may be acquired as the angle correspondence information corresponding to 90 degrees and 270 degrees. Further, even when the acquired angle is 270 degrees, the angle information acquisition unit 104 may read out the angle correspondence information stored in association with 90 degrees. Further, when the angle at which the target code is arranged is 270 degrees, 90 degrees may be acquired as the angle at which the target code is arranged.

なお、角度情報取得部104は、コード検出部102が検出した1以上の対象コードについて、各対象コードが配置されている角度を90度単位で取得するようにするとともに、90度と270度とに対応する角度対応情報として、同じ角度対応情報を取得するようにするとともに、0度と180度とに対応する角度対応情報として、90度と270度とに対応する情報とは異なる同じ角度対応情報を取得するようにしてもよい。この場合、例えば、角度情報取得部104は、対象コードが配置されている角度として、0度または90度のいずれかを取得できればよいため、対象コードの特定の向きを示す方向、および、角度の基準として用いる方向としては、長手方向や、短手方向(ただし、対象コードや撮影画像等が長手方向を有する場合)等の、上下や左右を識別できない方向を取得するようにしてもよい。 Note that the angle information acquisition unit 104 acquires the angle at which each target code is arranged in units of 90 degrees for one or more target codes detected by the code detection unit 102, and also acquires the angle at which each target code is arranged in units of 90 degrees and 270 degrees. The same angle correspondence information is acquired as the angle correspondence information corresponding to 0 degrees and 180 degrees, and the same angle correspondence information that is different from the information corresponding to 90 degrees and 270 degrees is acquired as the angle correspondence information corresponding to 0 degrees and 180 degrees. Information may also be acquired. In this case, for example, the angle information acquisition unit 104 only needs to be able to acquire either 0 degrees or 90 degrees as the angle at which the target code is arranged. As a direction to be used as a reference, a direction in which the top and bottom or left and right cannot be identified, such as a longitudinal direction or a lateral direction (however, if the target code, photographed image, etc. has a longitudinal direction) may be acquired.

以下においては、角度情報取得部104が、対象コードが配置されている角度に対応する角度対応情報を、角度情報格納部107に格納されている対象コードが配置されている角度または角度の範囲と、角度対応情報とを有する複数の角度管理情報から検索等により取得する場合を例に挙げて説明する。 In the following, the angle information acquisition unit 104 converts the angle correspondence information corresponding to the angle at which the target code is arranged into the angle or range of angles at which the target code stored in the angle information storage unit 107 is arranged. , angle correspondence information, and the like, will be described by taking as an example a case where the angle management information is acquired by searching or the like.

なお、角度情報取得部104が、対象コードが配置されている角度を取得する処理は、上記のような処理に限定されるものではない。例えば、対象コードの形状等のパターンマッチングによって、対象コードが配置されている角度を取得しても良い。例えば、対象コードが、長手方向を有する形状である場合、撮影画像内の対象コードの形状が、配置されている角度が0度である場合と、90度である場合とのどちらの形状に近いかをパターンマッチングにより判断し、近いと判断された角度を取得してもよい。 Note that the process by which the angle information acquisition unit 104 acquires the angle at which the target code is arranged is not limited to the above process. For example, the angle at which the target code is arranged may be obtained by pattern matching such as the shape of the target code. For example, if the target code has a longitudinal direction, the shape of the target code in the captured image is closer to either the case where the angle at which it is arranged is 0 degrees or the case where it is arranged at 90 degrees. It is also possible to determine the angle by pattern matching and obtain the angle determined to be close.

出力部105は、コード検出部102が検出した1以上の対象コードについて、読取取得部103が取得した読取情報と、角度情報取得部104が取得した角度対応情報と、を出力する。例えば、出力部105は、読取取得部103が取得した情報と、角度情報取得部104が取得した角度に対応した情報とを、コード毎に対応付けて出力する。 The output unit 105 outputs the reading information acquired by the reading acquisition unit 103 and the angle correspondence information acquired by the angle information acquisition unit 104 for one or more target codes detected by the code detection unit 102. For example, the output unit 105 outputs the information acquired by the reading acquisition unit 103 and the information corresponding to the angle acquired by the angle information acquisition unit 104 in association with each other for each code.

また、出力部105は、読取取得部103が対象コード以外のコードから読み取った情報も出力するようにしてもよい。例えば、対象コードに対応する位置に配置されていた対象コード以外のコードから読み取った情報を、この対象コードについて取得した読取情報と角度対応情報とに対応付けて出力してもよい。 Further, the output unit 105 may also output information read by the reading acquisition unit 103 from codes other than the target code. For example, information read from a code other than the target code placed at a position corresponding to the target code may be output in association with the read information and angle correspondence information acquired for the target code.

なお、出力部105は、読取取得部103が取得した読取情報と、角度情報取得部104が取得した角度対応情報との組み合わせに対応した情報を、図示しない格納部から取得して出力してもよい。この場合、図示しない格納部に、読取取得部103が取得する情報と、角度情報取得部104が取得した角度に対応する情報との1以上の組み合わせと、この組み合わせに対応した情報とを対応付けて予め蓄積しておくようにして、この情報から、読取取得部103が取得した情報と、角度情報取得部104が取得した角度に対応した情報との組み合わせに対応した情報を検出して出力すればよい。 Note that the output unit 105 may acquire and output information corresponding to the combination of the reading information acquired by the reading acquisition unit 103 and the angle correspondence information acquired by the angle information acquisition unit 104 from a storage unit (not shown). good. In this case, one or more combinations of information acquired by the reading acquisition unit 103 and information corresponding to the angle acquired by the angle information acquisition unit 104 are associated with information corresponding to this combination in a storage unit (not shown). From this information, the information corresponding to the combination of the information acquired by the reading acquisition unit 103 and the information corresponding to the angle acquired by the angle information acquisition unit 104 is detected and output. Bye.

なお、出力部105は、読取情報と角度対応情報とに対して、これらの情報を送信するコード処理装置1の装置識別子(図示せず)や、コード処理装置1を利用するユーザのユーザ識別子を対応づけて出力(例えば、送信)してもよい。装置識別子は、例えば、コード処理装置1に割り当てられた固有の文字列や、コード処理装置1の製造番号や、コード処理装置1のMACアドレス等である。ユーザ識別子は、ユーザに割り当てられた文字列や、ユーザの社員番号や、ユーザのメールアドレス等である。 Note that the output unit 105 outputs the device identifier (not shown) of the code processing device 1 that transmits these information and the user identifier of the user who uses the code processing device 1 to the read information and angle correspondence information. They may be output (for example, transmitted) in association with each other. The device identifier is, for example, a unique character string assigned to the code processing device 1, a serial number of the code processing device 1, a MAC address of the code processing device 1, or the like. The user identifier is a character string assigned to the user, the user's employee number, the user's e-mail address, or the like.

ここでの出力とは、モニタ等への表示、プロジェクターを用いた投影、プリンタへの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。 Output here means displaying on a monitor, etc., projecting using a projector, printing on a printer, outputting sound, sending to an external device, storing on a recording medium, sending to other processing devices or other programs, etc. This concept includes the delivery of processing results.

出力部105は、モニタやスピーカー等の出力デバイスを含むと考えても含まないと考えてもよい。出力部105は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。 The output unit 105 may or may not include an output device such as a monitor and a speaker. The output unit 105 can be realized by output device driver software, output device driver software and the output device, or the like.

読取情報格納部106には、1または2以上の読取管理情報が格納される。読取管理情報は、コードから読み取られる識別子と、読取情報とを有する情報である。読取情報格納部106は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。かかることは、他の格納部についても同様である。 The reading information storage unit 106 stores one or more pieces of reading management information. The reading management information is information that includes an identifier read from the code and reading information. The read information storage unit 106 is preferably a non-volatile recording medium, but it can also be realized by a volatile recording medium. This also applies to other storage units.

角度情報格納部107には、1または2以上の角度管理情報が格納される。角度管理情報は、コードが配置されている1または2以上の角度と、角度対応情報とを有する情報である。ここでの一の角度対応情報が有する2以上の角度は、角度の範囲であってもよい。つまり、角度管理情報は、角度の範囲と、角度対応情報とを有する情報であってもよい。 The angle information storage unit 107 stores one or more pieces of angle management information. The angle management information is information including one or more angles at which the code is arranged and angle correspondence information. The two or more angles included in one angle correspondence information may be a range of angles. That is, the angle management information may be information including an angle range and angle correspondence information.

次に、コード処理装置1の動作の一例について図2のフローチャートを用いて説明する。 Next, an example of the operation of the code processing device 1 will be described using the flowchart of FIG.

(ステップS100)撮影部101は、1以上の対象コードが配置された領域を撮影するか否かを判断する。例えば、撮影部101は、ユーザから、図示しない操作受付部を介して撮影を行なう操作を受け付けた場合に、撮影を行なうと判断し、受け付けていない場合、撮影を行なわないと判断する。撮影する場合、ステップS101に進み、撮影しない場合、ステップS100に戻る。 (Step S100) The photographing unit 101 determines whether to photograph an area in which one or more target codes are arranged. For example, the imaging unit 101 determines to perform imaging if it receives an operation to perform imaging from the user via an operation receiving unit (not shown), and determines not to perform imaging if it does not. If photographing is to be performed, the process proceeds to step S101, and if not, the process is returned to step S100.

(ステップS101)撮影部101は、1以上の対象コードが配置された領域を撮影して、撮影画像を取得する。撮影部101は、1以上の対象コードに加えて、対象コード以外の基準コード等の他のコードを1以上含むコードが更に配置された領域を撮影してもよい。なお、撮影部101は、撮影画像を、対象コードに対して垂直な撮影方向から撮影した画像に相当する画像となるよう射影変換等の補正を適宜行なうようにしてもよい。撮影方向は、例えば、例えば、撮影部101のレンズ(図示せず)等の光軸方向である。 (Step S101) The photographing unit 101 photographs a region in which one or more target codes are arranged, and obtains a photographed image. The photographing unit 101 may photograph an area in which a code including one or more codes other than the target code, such as a reference code, in addition to the one or more target codes is further arranged. Note that the photographing unit 101 may appropriately perform correction such as projective transformation on the photographed image so that it becomes an image corresponding to an image photographed from a photographing direction perpendicular to the target code. The photographing direction is, for example, the optical axis direction of a lens (not shown) of the photographing unit 101, for example.

(ステップS102)画像受付部100は、撮影部101が取得した撮影画像を受け付ける。 (Step S102) The image receiving unit 100 receives the photographed image acquired by the photographing unit 101.

(ステップS103)コード検出部102は、ステップS102で受け付けた撮影画像から1以上の対象コードを検出する。撮影画像が対象コード以外の基準コード等のコードも撮影した画像である場合、コード検出部102は、これらの対象コード以外のコードも検出する。 (Step S103) The code detection unit 102 detects one or more target codes from the captured image received in step S102. If the photographed image is an image in which codes other than the target code, such as a reference code, are also photographed, the code detection unit 102 also detects codes other than these target codes.

(ステップS104)読取取得部103は、ステップS103で検出した1以上の対象コードを読み取って、読取情報を取得する。例えば、読取取得部103は、各対象コードを読み取って、対象コードに対応する識別子を取得し、取得した識別子に対応する読取情報を、読取情報格納部106に格納されている複数の読取管理情報から取得する。対象コードであるか否かは、例えば、コードを読み取った識別子等の情報により判断可能である。例えば、コードを読み取った情報が、予め指定された1以上の対象コードから読取り可能な情報のうちの一つと一致する場合や、コードを読み取った情報が、予め決められた対象コードであることを示す情報を有している場合や、コードを読み取った情報を用いて生成されるハッシュ値等の情報が対象コードであることを示す値である場合、コードを対象コードと判断することができる。なお、読取取得部103が、コードから読み取った識別子が、基準コードの識別子である場合には、このコードを基準コードとして検出する。基準コードであるか否かは、例えば、対象コードであるか否か等と同様の判断を行なうことで判断可能である。また、対象コードおよび基準コード以外のコードからも情報を読み取ってもよい。なお、読取取得部103は、コード検出部102が1つのコードを検出するごとに、この検出されたコードを読み取るようにしてもよい。 (Step S104) The reading acquisition unit 103 reads one or more target codes detected in step S103 and acquires reading information. For example, the reading acquisition unit 103 reads each target code, acquires an identifier corresponding to the target code, and transfers the reading information corresponding to the acquired identifier to a plurality of reading management information stored in the reading information storage unit 106. Get from. Whether or not the code is a target code can be determined based on information such as an identifier read from the code, for example. For example, if the information read from a code matches one of the information that can be read from one or more pre-specified target codes, or if the information read from a code is a predetermined target code. A code can be determined to be a target code if the code has information indicating that the code is a target code, or if information such as a hash value generated using information obtained by reading the code is a value indicating that the code is a target code. Note that if the identifier read from the code by the reading acquisition unit 103 is the identifier of the reference code, this code is detected as the reference code. Whether or not it is a reference code can be determined, for example, by making the same determination as whether or not it is a target code. Information may also be read from codes other than the target code and reference code. Note that the reading acquisition unit 103 may read the detected code every time the code detection unit 102 detects one code.

(ステップS105)読取取得部103は、ステップS104で各対象コードについて取得した読取情報を、ステップS103で検出した対象コードと対応付けて、図示しない格納部に蓄積する。ここでの蓄積は一時記憶であってもよい。対象コード以外のコードから読み取った情報も、各コードと対応付けて蓄積するようにしてもよい。 (Step S105) The reading acquisition unit 103 stores the reading information acquired for each target code in step S104 in a storage unit (not shown) in association with the target code detected in step S103. The accumulation here may be temporary memory. Information read from codes other than the target code may also be stored in association with each code.

(ステップS106)角度情報取得部104は、ステップS104において基準コードが検出されたか否かを判断する。基準コードが検出された場合、ステップS107に進み、検出されていない場合、ステップS108に進む。 (Step S106) The angle information acquisition unit 104 determines whether the reference code was detected in step S104. If the reference code is detected, the process proceeds to step S107; if not detected, the process proceeds to step S108.

(ステップS107)角度情報取得部104は、ステップS104で検出された基準コードを用いて、対象コードが配置されている角度を取得する際の基準となる方向を取得する。基準となる方向は、例えば、基準コードの特定の向きを示す方向である。この方向は、例えば、撮影画像内における方向である。そして、ステップS109に進む。 (Step S107) The angle information acquisition unit 104 uses the reference code detected in step S104 to acquire a reference direction for acquiring the angle at which the target code is arranged. The reference direction is, for example, a direction indicating a specific orientation of the reference code. This direction is, for example, a direction within the photographed image. Then, the process advances to step S109.

(ステップS108)角度情報取得部104は、対象コードが配置されている角度を取得する際の基準となる方向を、基準対象等の画像を用いずに、撮影画像から取得する。例えば、撮影画像の右方向、すなわち撮影画像の左辺から右辺へ向かう方向や、通常の撮影画像において設定されるx軸の正方向を、基準となる方向として取得する。 (Step S108) The angle information acquisition unit 104 acquires a reference direction for acquiring the angle at which the target code is arranged from the photographed image without using an image of the reference target or the like. For example, the right direction of the photographed image, that is, the direction from the left side to the right side of the photographed image, or the positive direction of the x-axis set in a normal photographed image is acquired as the reference direction.

(ステップS109)角度情報取得部104は、カウンターmに1を代入する。 (Step S109) The angle information acquisition unit 104 assigns 1 to the counter m.

(ステップS110)角度情報取得部104は、撮影画像において検出された対象コードに、m番目の対象コードがあるか否かを判断する。ある場合、ステップS111に進み、ない場合、ステップS116に進む。 (Step S110) The angle information acquisition unit 104 determines whether there is an m-th target code among the target codes detected in the photographed image. If there is, the process advances to step S111; if not, the process advances to step S116.

(ステップS111)角度情報取得部104は、m番目の対象コードについて、この対象コードにおいて特定される予め決められた方向を取得する。ここでの方向は、例えば、撮影画像内における方向である。 (Step S111) The angle information acquisition unit 104 acquires, for the m-th target code, a predetermined direction specified in this target code. The direction here is, for example, a direction within a captured image.

(ステップS112)角度情報取得部104は、ステップS111で取得したm番目の対象コードにおいて特定される予め決められた方向と、ステップS107またはステップS108で取得した基準となる方向とを用いて、m番目の対象コードが配置されている角度を取得する。例えば、これらの二つの方向がなす角度を取得する。 (Step S112) The angle information acquisition unit 104 uses the predetermined direction specified in the m-th target code acquired in step S111 and the reference direction acquired in step S107 or step S108 to Get the angle at which the th target code is placed. For example, obtain the angle formed by these two directions.

(ステップS113)角度情報取得部104は、ステップS112で取得した角度を用いて、m番目の対象コードに対応する角度対応情報を取得する。例えば、角度情報取得部104は、ステップS112で取得した角度と一致する角度、または、取得した角度を含む角度の範囲を有する角度管理情報を、角度情報格納部107から検索し、検出した角度管理情報が有する角度対応情報を取得する。 (Step S113) The angle information acquisition unit 104 uses the angle acquired in step S112 to acquire angle correspondence information corresponding to the m-th target code. For example, the angle information acquisition unit 104 searches the angle information storage unit 107 for angle management information having an angle that matches the angle acquired in step S112 or a range of angles that includes the acquired angle, and Obtain angle correspondence information included in the information.

(ステップS114)角度情報取得部104は、ステップS113で取得した角度対応情報を、蓄積する。例えば、角度情報取得部104は、ステップS113で取得した角度対応情報を、ステップS105で読取情報を蓄積した格納部(図示せず)に、m番目の対象コードに対応する読取情報と対応付けて蓄積(例えば、追記)する。 (Step S114) The angle information acquisition unit 104 accumulates the angle correspondence information acquired in step S113. For example, the angle information acquisition unit 104 associates the angle correspondence information acquired in step S113 with the read information corresponding to the m-th target code in a storage unit (not shown) that has accumulated the read information in step S105. Accumulate (eg, add).

(ステップS115)角度情報取得部104は、カウンターmの値を1インクリメントする。そして、ステップS110に戻る。 (Step S115) The angle information acquisition unit 104 increments the value of the counter m by 1. Then, the process returns to step S110.

(ステップS116)出力部105は、ステップS104およびステップS113において対象コードについて取得した読取情報と角度対応情報とを、出力する。例えば、ステップS105およびステップS114でコード毎に対応付けて蓄積した読取情報と角度対応情報とを出力する。なお、出力部105は、ステップS104において、対象コード以外のコードについて読み取った情報等も出力してよい。そして、処理を終了する。 (Step S116) The output unit 105 outputs the reading information and angle correspondence information acquired for the target code in step S104 and step S113. For example, the reading information and angle correspondence information accumulated in association with each code in step S105 and step S114 are output. Note that the output unit 105 may also output information read regarding codes other than the target code in step S104. Then, the process ends.

なお、ステップS106において、基準コードがないと判断された場合、罫線等の基準対象を撮影画像から検出して、この基準対象を用いて基準となる方向を取得してもよい。 Note that if it is determined in step S106 that there is no reference code, a reference object such as a ruled line may be detected from the photographed image, and the reference direction may be obtained using this reference object.

以下、本実施の形態におけるコード処理装置1の具体的な動作について一例を挙げて説明する。 Hereinafter, the specific operation of the code processing device 1 in this embodiment will be explained by giving an example.

図3は、本実施の形態のコード処理装置1を説明するための図であり、コード処理装置1の一例と、コード処理装置1で撮影する対象コードが配置される進捗管理ボード30を示す図である。進捗管理ボード30は、企業のある部署に勤務する複数のユーザの作業の進捗状況を管理するための、対象コードが配置されるボードであるとする。ここでは、進捗管理ボード30が壁に掛けられている例について説明する。 FIG. 3 is a diagram for explaining the code processing device 1 of the present embodiment, and is a diagram showing an example of the code processing device 1 and a progress management board 30 on which the target code to be photographed by the code processing device 1 is arranged. It is. It is assumed that the progress management board 30 is a board on which target codes are placed for managing the progress status of work of a plurality of users working in a certain department of a company. Here, an example in which the progress management board 30 is hung on a wall will be described.

図4(a)および図4(b)は、進捗管理ボード30に配置される対象コードを説明するための図である。 FIGS. 4A and 4B are diagrams for explaining target codes placed on the progress management board 30.

進捗管理ボード30は、磁石等を着脱可能に取り付けることが可能な、鉄等の強磁性体を有するボードである。進捗管理ボード30には、表面にコードが配置されたいわゆるマグネットシート製のプレートが着脱可能に取り付けられる。ここでは、複数の対象コード32a~32eがそれぞれ配置された複数のプレート31a~31eが、進捗管理ボード30に取り付けられるものとする。対象コード32a~32eからそれぞれ読み取られる識別子は作業名と対応付けられているものとする。なお、プレート31a~31eのそれぞれを区別しないで呼ぶ場合、単にプレート31と呼ぶ場合がある。また、対象コード32a~32eのそれぞれを区別しないで呼ぶ場合、単に対象コード32と呼ぶ場合がある。対象コード32は、図4(a)に示すような、複数の色の正方形のセルが所望の間隔を隔てて縦横に配列された長方形形状のカラーコードであるとする。プレート31も長方形形状であり、その長手方向と、対象コード32の長手方向とが一致しているものとする。長手方向が左右方向となるように配置した各プレート31の、対象コード32が配置されている領域の右隣には、対象コード32に対応する作業名を表す文字列33が配置されている。この文字列33の上下方向および左右方向が、同じプレート31に配置された対象コード32の上下方向および左右方向と一致しているものとする。各プレート31の、対象コード32から文字列に向かう方向が、ここでは、プレート31および対象コード32の右方向であるとする。 The progress management board 30 is a board made of a ferromagnetic material such as iron to which a magnet or the like can be detachably attached. A so-called magnetic sheet plate having a code arranged on its surface is removably attached to the progress management board 30. Here, it is assumed that a plurality of plates 31a to 31e, each having a plurality of target codes 32a to 32e arranged thereon, are attached to the progress management board 30. It is assumed that the identifiers read from each of the target codes 32a to 32e are associated with a work name. Note that when each of the plates 31a to 31e is referred to without distinction, they may be simply referred to as plate 31. Further, when each of the target codes 32a to 32e is called without distinguishing them, they may be simply called the target code 32. The target code 32 is assumed to be a rectangular color code in which square cells of a plurality of colors are arranged vertically and horizontally at desired intervals, as shown in FIG. 4(a). It is assumed that the plate 31 also has a rectangular shape, and the longitudinal direction of the plate 31 coincides with the longitudinal direction of the target code 32. On each plate 31 arranged so that the longitudinal direction is the left-right direction, a character string 33 representing the work name corresponding to the object code 32 is arranged to the right of the area where the object code 32 is arranged. It is assumed that the vertical direction and horizontal direction of this character string 33 match the vertical direction and horizontal direction of the target code 32 arranged on the same plate 31. It is assumed here that the direction of each plate 31 from the target code 32 toward the character string is the right direction of the plate 31 and the target code 32.

また、このプレート31a~31eとは別に、表面に基準コード34が配置されたプレート35が着脱可能に進捗管理ボード30に取り付けられる。基準コード34も、対象コード32と同様のカラーコードであるとする。 In addition to the plates 31a to 31e, a plate 35 having a reference code 34 arranged on its surface is detachably attached to the progress management board 30. It is assumed that the reference code 34 is also a color code similar to the target code 32.

進捗管理ボード30においては、複数のユーザの名前が、表面の左側に上から下に向かって配列されており、各ユーザの名前の右横に、各ユーザが担当している作業の作業名と対応付けられた対象コード32a~32eが配置されたプレート31a~31eのいずれか一つが配置されるものとする。これにより、複数のユーザにそれぞれ対応した名前およびプレート31a~31eが、上から順に配列されることとなり、対象コード32の上からの配列順番により、対象コード32がどのユーザに対応した対象コードであるかを判別可能であるとする。また、ユーザの名前と名前との間には、横方向に伸びる罫線38が配置されているものとする。 On the progress management board 30, the names of multiple users are arranged from top to bottom on the left side of the surface, and the name of the work each user is responsible for is displayed to the right of each user's name. It is assumed that one of the plates 31a to 31e on which the associated target codes 32a to 32e are arranged is arranged. As a result, the names and plates 31a to 31e corresponding to multiple users are arranged in order from the top, and depending on the order in which the target codes 32 are arranged from the top, the target code 32 corresponds to which user. Assume that it is possible to determine whether there is a Further, it is assumed that a horizontally extending ruled line 38 is placed between the user names.

複数のユーザは、例えば、勤務時間が終了して帰宅する時に、それぞれが行なった作業の作業名が配置されたプレート31を、進捗管理ボード30のそれぞれのユーザの名前の横に取り付けるものとする。このとき、行なった作業が完了していない場合、対応する作業名が配置されたプレート31を、プレート31の右方向が、進捗管理ボード30の右方向を向くように取り付ける。また、作業が完了した場合、プレート31の右方向が、進捗管理ボード30の上方向を向くように取り付ける。なお、ここではプレート31dを配置するユーザが、作業が完了したことを示すために、プレート31dを、右方向が上方向を向くように取り付けるべきところを、誤って、右方向が下方向を向くように取り付けていたとする。 For example, when a plurality of users return home after their working hours, they attach a plate 31 on which the name of the work they have performed is placed next to each user's name on the progress management board 30. . At this time, if the performed work is not completed, the plate 31 on which the corresponding work name is arranged is attached so that the right side of the plate 31 faces the right side of the progress management board 30. Further, when the work is completed, the plate 31 is attached so that the right side of the plate 31 faces upward of the progress management board 30. In this case, the user placing the plate 31d mistakenly placed the plate 31d so that the right side was facing upward, to indicate that the work was completed, but the right side was facing downward. Suppose you installed it like this.

複数のユーザの管理者は、作業が完了していることを示すプレート31が進捗管理ボード30に配置されている場合、各プレート31に配置されている作業名が示す作業が、完了しているか否かを確認する。そして、完了している場合は、プレートをそのままにしておく。作業が完了していないと判断した場合には、プレート31の右方向が左方向を向くように、プレート31を進捗管理ボード30に取り付け直す。 When a plate 31 indicating that a task has been completed is placed on the progress management board 30, the administrator of multiple users can check whether the task indicated by the task name placed on each plate 31 has been completed or not. Check whether or not. And if done, leave the plate alone. If it is determined that the work is not completed, the plate 31 is reattached to the progress management board 30 so that the right side of the plate 31 faces to the left.

図3は、このような確認作業等が完了した状態の進捗管理ボード30を示しているものとする。 It is assumed that FIG. 3 shows the progress management board 30 in a state in which such confirmation work and the like have been completed.

そして、管理者は、上記の確認後、進捗管理ボード30を、コード処理装置1を用いて撮影したとする。撮影する際には、進捗管理ボード30の上側が、撮影画像の上側に位置するように撮影を行なうものとする。ここでは、コード処理装置1は、撮影部101としてカメラを有するいわゆるスマートフォンであるとする。この撮影部101のレンズ(図示せず)は、コード処理装置1の裏面側に設けられているものとする。 It is assumed that the administrator photographs the progress management board 30 using the code processing device 1 after confirming the above. When photographing, it is assumed that the upper side of the progress management board 30 is positioned above the photographed image. Here, it is assumed that the code processing device 1 is a so-called smartphone having a camera as the photographing section 101. It is assumed that a lens (not shown) of the photographing section 101 is provided on the back side of the code processing device 1.

図5は、撮影部101が進捗管理ボード30を撮影して取得した撮影画像40を示す図である。撮影画像40は、長手方向が縦方向である画像であるとする。 FIG. 5 is a diagram showing a photographed image 40 obtained by photographing the progress management board 30 by the photographing unit 101. It is assumed that the photographed image 40 is an image whose longitudinal direction is the vertical direction.

図6は、読取情報格納部106に格納されている読取管理情報を管理する読取管理表を示す図である。読取管理表は、「識別子」および「情報」という属性を有している。「識別子」は、対象コードから読み取られる識別子に相当する識別子である。「情報」は、読取情報を示し、ここでは、作業名を示している。読取管理表の各レコード(行)が、各読取管理情報を示している。 FIG. 6 is a diagram showing a reading management table that manages the reading management information stored in the reading information storage unit 106. The read management table has attributes of "identifier" and "information". The "identifier" is an identifier corresponding to the identifier read from the target code. "Information" indicates read information, and here indicates the work name. Each record (row) of the reading management table indicates each piece of reading management information.

画像受付部100は、撮影部101が取得した図5に示す撮影画像40を受け付ける。コード検出部102は、撮影画像40において対象コード32および基準コード34を検出する。ここでは、撮影画像40において、対象コード32a~32eおよび基準コード34が検出される。 The image receiving unit 100 receives the photographed image 40 shown in FIG. 5 acquired by the photographing unit 101. The code detection unit 102 detects the target code 32 and the reference code 34 in the captured image 40. Here, the target codes 32a to 32e and the reference code 34 are detected in the photographed image 40.

読取取得部103は、コード検出部102が検出した対象コードを読み取って識別子を取得する。まず、基準コードであることを示す識別子が読み取られたコードについては、基準コードであると判断する。次に、基準コード以外の対象コード32から読み取った識別子については、それぞれ、読取情報格納部106に格納されている読取管理情報から、対応する読取情報である作業名を取得する。例えば、図6に示した読取管理表において、「識別子」の値が各対象コード32から読み取った識別子と一致するレコード(行)を検索等により検出し、検出したレコードの「情報」の値を、各対象コード32に対応する読取情報として取得する。取得した読取情報は各対象コード32と対応付けて格納部(図示せず)に蓄積する。ここでは、識別子を読み取った対象コード32の、撮影画像内の上からの配列順番の値を取得し、取得した配列順番の値と対応付けて読取情報を蓄積する。 The reading acquisition unit 103 reads the target code detected by the code detection unit 102 and acquires an identifier. First, a code whose identifier indicating that it is a standard code is read is determined to be a standard code. Next, for each identifier read from the target code 32 other than the reference code, the work name, which is the corresponding read information, is acquired from the read management information stored in the read information storage section 106. For example, in the read management table shown in FIG. , acquired as read information corresponding to each target code 32. The acquired reading information is stored in a storage unit (not shown) in association with each target code 32. Here, the value of the arrangement order from the top in the captured image of the target code 32 whose identifier has been read is obtained, and the read information is stored in association with the obtained arrangement order value.

例えば、読取取得部103は、撮影画像40内の、基準コード34以外の1番上に配置されている対象コード32aを読み取り、識別子を取得する。取得した識別子が「J002」であったとすると、読取取得部103は、さらに、図6に示した読取管理表において、「識別子」の値が「J002」であるレコード(行)を検出し、検出したレコードの「情報」の値である「梱包」を取得する。そして、この対象コード32aの上からの配列順番を示す値「1」と対応付けて、格納部(図示せず)に蓄積する。また、読取取得部103は、上から2番目に配置されている対象コード32bを読み取り、識別子「J004」を取得すると、図6に示した読取管理表の、「識別子」の値が「J004」であるレコード(行)から、「情報」の値である「仕分」を取得する。そして、この対象コード32bの上からの配列順番を示す値「2」と対応付けて、格納部(図示せず)に蓄積する。同様の処理を、上記で検出された対象コードの全てについて行なう。 For example, the reading acquisition unit 103 reads the target code 32a placed at the top of the captured image 40 other than the reference code 34, and acquires the identifier. Assuming that the acquired identifier is "J002", the reading acquisition unit 103 further detects a record (row) whose "identifier" value is "J002" in the reading management table shown in FIG. Get the "Packaging" value of "Information" of the record. Then, it is stored in a storage unit (not shown) in association with the value "1" indicating the arrangement order from the top of the target code 32a. Further, when the reading acquisition unit 103 reads the second target code 32b from the top and acquires the identifier "J004", the value of "identifier" in the reading management table shown in FIG. 6 is changed to "J004". From the record (row) that is, obtain the "sort" which is the value of "information". Then, it is stored in a storage unit (not shown) in association with the value "2" indicating the arrangement order from the top of the target code 32b. Similar processing is performed for all of the target codes detected above.

図7は、角度情報格納部107に格納されている角度管理情報を管理する角度管理表を示す図である。角度管理表は、「角度」と、「対応情報」という属性を有している。「角度」は、対象コードが配置されている角度に相当し、ここでは、0度以上360度未満の範囲内の90度単位の値が格納されている。「対応情報」は角度対応情報であり、ここでは、作業の進捗状況を示す値が格納されている。 FIG. 7 is a diagram showing an angle management table for managing angle management information stored in the angle information storage unit 107. The angle management table has attributes of "angle" and "correspondence information." "Angle" corresponds to the angle at which the target code is arranged, and here, a value in units of 90 degrees within a range of 0 degrees or more and less than 360 degrees is stored. "Correspondence information" is angle correspondence information, and here, a value indicating the progress of the work is stored.

次に、角度情報取得部104は、基準コードであるコード34から、この基準コード34の長手方向を検出し、検出した長手方向において、撮影画像40の右側に向かう方向を、角度を検出する際の基準となる方向である右方向として取得する。図5の矢印44が、基準となる方向を示している。基準コード34の長手方向は、例えば、着色されたセルが長方形形状となるようマトリクス状に配置されたコード34の、セル数が多い辺に平行な方向である。なお、基準コード34の上下左右方向を検出して、右方向を取得してもよい。 Next, the angle information acquisition unit 104 detects the longitudinal direction of the reference code 34 from the reference code 34, and in the detected longitudinal direction, the direction toward the right side of the photographed image 40 is detected when detecting the angle. Obtained as the right direction, which is the reference direction. An arrow 44 in FIG. 5 indicates a reference direction. The longitudinal direction of the reference code 34 is, for example, a direction parallel to the side with the largest number of cells of the code 34 arranged in a matrix so that the colored cells are rectangular. Note that the right direction may be obtained by detecting the up, down, left and right directions of the reference code 34.

次に、角度情報取得部104は、コード検出部102が検出したコードのうちの、基準コード34以外の対象コード32のそれぞれについて、対象コード32の特定の向きを示す方向である右方向を検出し、検出した対象コード32の右方向と、上記で基準コード34から取得した矢印44が示す角度の基準となる方向である基準コード34の右方向とがなす角度を取得する。そして、取得した角度に対応する角度対応情報を、図7に示す角度管理表を用いて取得し、取得した角度対応情報を対応する対象コードと対応付けて格納部(図示せず)に蓄積する。ここでは、読取情報の場合と同様に、配置されている角度を取得した対象コード32の、撮影画像40内の上からの配列順番の値を取得し、取得した配列順番の値と対応付けて角度対応情報を蓄積する。 Next, the angle information acquisition unit 104 detects the right direction, which is a direction indicating a specific orientation of the target code 32, for each of the target codes 32 other than the reference code 34 among the codes detected by the code detection unit 102. Then, the angle formed by the right direction of the detected target code 32 and the right direction of the reference code 34, which is the reference direction of the angle indicated by the arrow 44 obtained from the reference code 34 above, is obtained. Then, the angle correspondence information corresponding to the acquired angle is acquired using the angle management table shown in FIG. 7, and the acquired angle correspondence information is associated with the corresponding target code and stored in a storage unit (not shown). . Here, as in the case of read information, the value of the arrangement order from the top in the photographed image 40 of the target code 32 whose arranged angle has been obtained is obtained, and the value of the arrangement order is correlated with the obtained arrangement order value. Accumulate angle correspondence information.

例えば、角度情報取得部104は、撮影画像40内の1番上に配置されている対象コード32aについて、対象コード32aの特定の向きを示す方向である右方向を検出する。矢印42aが、検出した対象コード32aの右方向を示している。そして、この対象コード32aの右方向と、基準コード34が示す基準方向である基準コード34の右方向とがなす角度を90度単位で取得する。まず、角度情報取得部104は、矢印42aが示す対象コード32aの右方向が、撮影画像の右方向に対してなす角度を取得する。同様に、基準コード34の矢印44が示す右方向が、撮影画像の右方向に対してなす角度を取得する。そして、対象コード32aの右方向の角度から、基準コード34の右方向の角度を減算する。減算により得られた値は、適宜、基準コード34の右方向を0度とした0度以上360度未満の値に変換する。さらに、減算により得られた角度に最も近い90度単位の角度を対象コード32aが配置されている角度として取得する。例えば、減算により得られた角度が、0度以上45度未満である場合、「0度」を取得し、45度以上135度未満である場合、「90度」を取得し、135度以上225度未満である場合、「180度」を取得し、225度以上315度未満である場合、「270度」を取得し、315度以上360度未満である場合、「0度」を取得する。ここでは、例えば、減算により得られた角度が「10度」であったとすると、0度以上45度未満の値であるため、対象コード32aが配置されている角度として「0度」を取得する。 For example, the angle information acquisition unit 104 detects the right direction, which is a direction indicating a specific orientation of the target code 32a, for the target code 32a placed at the top in the photographed image 40. An arrow 42a indicates the right direction of the detected target code 32a. Then, the angle between the right direction of the target code 32a and the right direction of the reference code 34, which is the reference direction indicated by the reference code 34, is obtained in units of 90 degrees. First, the angle information acquisition unit 104 acquires the angle that the right direction of the target code 32a indicated by the arrow 42a makes with respect to the right direction of the photographed image. Similarly, the angle that the right direction indicated by the arrow 44 of the reference code 34 makes with respect to the right direction of the photographed image is obtained. Then, the rightward angle of the reference code 34 is subtracted from the rightward angle of the target code 32a. The value obtained by the subtraction is appropriately converted into a value of 0 degrees or more and less than 360 degrees, with the right direction of the reference code 34 being 0 degrees. Further, the angle in units of 90 degrees that is closest to the angle obtained by the subtraction is acquired as the angle at which the target code 32a is arranged. For example, if the angle obtained by subtraction is greater than or equal to 0 degrees and less than 45 degrees, "0 degrees" will be obtained; if the angle obtained by subtraction is greater than or equal to 45 degrees and less than 135 degrees, "90 degrees" will be obtained; If it is less than 315 degrees, "180 degrees" is acquired; if it is 225 degrees or more and less than 315 degrees, "270 degrees" is acquired; if it is 315 degrees or more and less than 360 degrees, "0 degrees" is acquired. Here, for example, if the angle obtained by subtraction is "10 degrees", the value is greater than or equal to 0 degrees and less than 45 degrees, so "0 degrees" is obtained as the angle at which the target code 32a is arranged. .

角度情報取得部104は、図7に示した角度管理表において、「角度」の値が上記で取得した「0度」であるレコード(行)、すなわち、角度管理情報を検索し、検出したレコードの「対応情報」の値である「作業中」を、対象コード32aが配置されている角度に対応する角度対応情報として取得する。そして、取得した角度対応情報を、対象コード32aの上からの配列順番を示す値「1」と対応付けて、格納部(図示せず)に蓄積する。ここでは、上記で対象コード32の配列順番と対応付けて格納された読取情報のうちの、同じ配列順番を示す値「1」と対応付けて格納されている読取情報と対応付けて、角度対応情報を蓄積する。 The angle information acquisition unit 104 searches for records (rows) in which the value of "angle" is "0 degree" acquired above in the angle management table shown in FIG. 7, that is, the detected record by searching for angle management information. The value of "correspondence information" "in progress" is acquired as the angle correspondence information corresponding to the angle at which the target code 32a is arranged. Then, the acquired angle correspondence information is stored in a storage unit (not shown) in association with a value "1" indicating the arrangement order from the top of the target code 32a. Here, among the reading information stored in association with the arrangement order of the target code 32 above, the reading information stored in association with the value "1" indicating the same arrangement order is Accumulate information.

同様に、角度情報取得部104は、撮影画像40内の、基準コード34以外の上から2番目に配置されている対象コード32bから右方向を検出する。矢印42bが、角度情報取得部104が検出した対象コード32bの右方向を示している。そして、この対象コード32aの右方向と、基準コード34が示す基準方向である基準コード34の右方向とがなす90度単位の角度を取得する。ここでは、対象コード32bが配置されている角度として「90度」を取得したとすると、角度情報取得部104は、図7に示した角度管理表の、「角度」の値が「90度」であるレコード(行)の「対応情報」の値である「作業完了」を、対象コード32bが配置されている角度に対応する角度対応情報として取得する。そして、取得した角度対応情報を、対象コード32bの上からの配列順番を示す値「2」と対応付けて、格納部(図示せず)に蓄積する。ここでは、同じ配列順番を示す値「2」と対応付けて格納されている読取情報と対応付けて、角度対応情報を蓄積する。 Similarly, the angle information acquisition unit 104 detects the right direction from the target code 32b placed second from the top other than the reference code 34 in the photographed image 40. An arrow 42b indicates the right direction of the target code 32b detected by the angle information acquisition unit 104. Then, the angle in units of 90 degrees between the right direction of the target code 32a and the right direction of the reference code 34, which is the reference direction indicated by the reference code 34, is obtained. Here, if "90 degrees" is acquired as the angle at which the target code 32b is arranged, the angle information acquisition unit 104 determines that the value of "Angle" in the angle management table shown in FIG. 7 is "90 degrees". "Work completed" which is the value of the "correspondence information" of the record (row) is acquired as the angle correspondence information corresponding to the angle at which the target code 32b is arranged. Then, the obtained angle correspondence information is stored in a storage unit (not shown) in association with the value "2" indicating the arrangement order from the top of the target code 32b. Here, the angle correspondence information is stored in association with the read information stored in association with the value "2" indicating the same arrangement order.

同様の処理を、上記で検出された対象コードの全てについて行なう。例えば、上から3番目の対象コード32cについては、矢印42cが示す方向を右方向として検出し、対象コード32cが配置されている角度として、180度を取得し、これに対応する角度対応情報である「作業未完了」を取得して、対象コード32cの上からの配列順番を示す値「3」と対応付けて、格納部(図示せず)に蓄積する。 Similar processing is performed for all of the target codes detected above. For example, for the third target code 32c from the top, the direction indicated by the arrow 42c is detected as the right direction, 180 degrees is obtained as the angle at which the target code 32c is arranged, and the angle correspondence information corresponding to this is obtained. A certain "work incomplete" is acquired and stored in a storage unit (not shown) in association with the value "3" indicating the arrangement order from the top of the target code 32c.

また、例えば、上から4番目の対象コード32dについては、矢印42dが示す方向を右方向として検出し、対象コード32dが配置されている角度として、270度を取得し、これに対応する角度対応情報である「作業未完了」を取得して、対象コード32dの上からの配列順番を示す値「4」と対応付けて、格納部(図示せず)に蓄積する。 For example, for the fourth target code 32d from the top, the direction indicated by the arrow 42d is detected as the right direction, 270 degrees is obtained as the angle at which the target code 32d is arranged, and the angle corresponding to this is obtained. The information "work incomplete" is acquired and stored in a storage unit (not shown) in association with the value "4" indicating the arrangement order from the top of the target code 32d.

また、例えば、上から5番目の対象コード32eについては、矢印42eが示す方向を右方向として検出し、対象コード32eが配置されている角度として0度を取得し、これに対応する角度対応情報である「作業中」を取得して、対象コード32eの上からの配列順番を示す値「5」と対応付けて、格納部(図示せず)に蓄積する。 For example, for the fifth target code 32e from the top, the direction indicated by the arrow 42e is detected as the right direction, 0 degrees is obtained as the angle at which the target code 32e is arranged, and the angle correspondence information corresponding to this is obtained. "Work in progress" is acquired and stored in a storage unit (not shown) in association with the value "5" indicating the arrangement order from the top of the target code 32e.

なお、ここでは、配置されている角度が90度である対象コード32bについて取得する角度対応情報と、270度である対象コード32dについて取得する角度対応情報と、が、いずれも同じ情報である「作業完了」としている。例えば、対象コード32に隣接して配置されている文字列33等の対象コード32の向きを視覚的に認識可能な情報が配置されている場合、ユーザにとっては、この向きを視覚的に示す情報から、対象コード32が配置されたプレート31の上方向が、進捗管理ボード30の上下のいずれかを向いているかについては、容易に判別できるが、このプレート31の上方向が、右に90度傾けられて配置されているか、左に90度傾けられて配置されているかについては、即座には判断しにくい。例えば、対象コード32bのような配置も、対象コード32dのような配置も、いずれも、ユーザにとっては、同じ90度の配置と感じられてしまう場合が多く、対象コード32を配置する際に区別することが困難である。このため、ユーザが本来は右方向を、進捗管理ボード30の上方向に向けて配置しなければならない完了した作業についての対象コード32が配置されているプレート31を、誤って、下方向に向けて配置してしまうことが考えられる。しかしながら、この具体例のように、対象コード32が配置されている角度が90度である場合と270度である場合とで、同じ角度対応情報が得られるようにして、配置されている角度が90度である場合と270度である場合とを区別しないようにすることで、ユーザが誤って、右方向を進捗管理ボード30の上方向に向けて配置しなければならない完了した作業についての対象コード32を、右方向を下方向に向けて配置した場合であっても、結果的に、右方向を上方向に向けて配置した場合と同様に、作業が完了したことを示す情報を取得することができる。なお、90度と270度とを区別しないことで、この具体例においては、対象コード32が配置される角度として、実質的に3つの異なる角度が取得可能となっている。 Note that here, the angle correspondence information acquired for the target code 32b whose arranged angle is 90 degrees and the angle correspondence information acquired about the target code 32d whose arranged angle is 270 degrees are the same information. The work is complete.'' For example, if information that allows the user to visually recognize the orientation of the target code 32, such as a character string 33 placed adjacent to the target code 32, is provided, the user will need information that visually indicates this orientation. From this, it can be easily determined whether the top of the plate 31 on which the target code 32 is placed is facing either the top or bottom of the progress management board 30. It is difficult to immediately determine whether the display is tilted or tilted 90 degrees to the left. For example, the placement of the target code 32b and the placement of the target code 32d often feel like the same 90-degree placement to the user, and when placing the target code 32, it is difficult to distinguish between them. difficult to do. For this reason, the user mistakenly placed the plate 31 on which the target code 32 for the completed work, which should originally be placed with the right side facing the top of the progress management board 30, was placed with the right side facing downward. It is conceivable that you may end up placing the However, as in this specific example, the same angle correspondence information is obtained whether the angle at which the target code 32 is arranged is 90 degrees or 270 degrees. By not distinguishing between 90 degrees and 270 degrees, the user may mistakenly place the completed work with the right side facing upwards on the progress management board 30. Even if the code 32 is placed with the right side facing downward, information indicating that the work is completed is obtained as in the case where the code 32 is placed with the right side facing upward. be able to. Note that by not distinguishing between 90 degrees and 270 degrees, in this specific example, it is possible to obtain substantially three different angles as the angles at which the target code 32 is arranged.

図8は、図示しない格納部に蓄積された、対応する対象コード32の配列順番が一致する読取取得部103が取得した読取情報と、角度情報取得部104が取得した角度対応情報とを対応付けて管理する取得情報管理表である。この取得情報管理表で管理される読取情報は、読取取得部103が上記で蓄積した読取情報であり、この取得情報管理表で管理される角度対応情報は、角度情報取得部104が上記で蓄積した角度対応情報である。取得情報管理表は、「順番」と、「読取」と、「角度対応」という属性を有している。 FIG. 8 shows the correspondence between the reading information acquired by the reading acquisition unit 103 that has the corresponding target codes 32 stored in a storage unit (not shown) in the same arrangement order, and the angle correspondence information acquired by the angle information acquisition unit 104. This is an acquired information management table that is managed by The reading information managed by this acquisition information management table is the reading information accumulated by the reading acquisition unit 103 as described above, and the angle correspondence information managed by this acquisition information management table is the reading information accumulated by the angle information acquisition unit 104 as described above. This is the angle correspondence information. The acquisition information management table has attributes of "order", "reading", and "angle correspondence".

出力部105は、図8に示すように、コード検出部102が検出した全ての対象コード32について読取情報と角度対応情報とが取得された場合、取得した読取情報と角度対応情報とを、これらに対応する対象コード32と対応付けて出力する。ここでは、対象コード32の配列順番の値と、進捗管理ボード30の右側に配列されているユーザの名前のうちの、上からの配列順番の値が対象コード32の配列順番の値と同じとなる名前の情報とが、予め対応付けられて図示しない格納部等に格納されており、一の配列順番の対象コード32に対応付けて格納された読取情報と角度対応情報とを出力する場合に、この配列順番に対応する名前の情報を読み出し、対応付けて出力されるものとする。これにより、例えば、図8の取得情報管理表の「順番」が「1」であるレコード(行)の読取情報と角度対応情報とに対しては、進捗管理ボード30の右側に配列されているユーザの名前のうちの、上から1番目の名前が対応付けて出力され、取得情報管理表の「順番」が「2」であるレコード(行)の読取情報と角度対応情報とに対しては、進捗管理ボード30の右側のユーザの名前のうちの、上から2番目の名前が対応付けて出力される。 As shown in FIG. 8, when reading information and angle correspondence information are acquired for all the target codes 32 detected by the code detection unit 102, the output unit 105 converts the acquired reading information and angle correspondence information into these information. is output in association with the target code 32 corresponding to . Here, the value of the arrangement order of the target code 32 and the value of the arrangement order from the top of the user names arranged on the right side of the progress management board 30 are the same as the value of the arrangement order of the target code 32. When outputting the read information and the angle correspondence information stored in correspondence with the target code 32 in one arrangement order, , the name information corresponding to this arrangement order is read out and output in association with each other. As a result, for example, the read information and angle correspondence information of a record (row) whose "order" is "1" in the acquired information management table in FIG. 8 are arranged on the right side of the progress management board 30. Among the user names, the first name from the top is output in correspondence, and for the read information and angle correspondence information of the record (row) whose "order" in the acquisition information management table is "2": , among the names of the users on the right side of the progress management board 30, the second name from the top is output in association.

出力部105は、例えば、読取情報と角度対応情報と、対象コード32に対応するユーザの名前とを対応付けた情報を、ユーザの進捗状況を管理するサーバ装置(図示せず)等に送信する。出力された情報から、例えば、ユーザが行なっている作業名(例えば、梱包や仕分等)と、この作業の進捗状況(例えば、作業中、作業完了等)を把握することが可能となる。 The output unit 105 transmits, for example, information in which the reading information, the angle correspondence information, and the user's name corresponding to the target code 32 are associated with each other to a server device (not shown) that manages the user's progress status. . From the output information, it is possible to understand, for example, the name of the work the user is doing (for example, packing, sorting, etc.) and the progress status of this work (for example, work in progress, work completed, etc.).

なお、上記具体例においては、対象コード32に向きを視覚的に認識可能な情報として、文字列を配置した場合について説明したが、図4(b)に示すように、文字列の代わりに、対象コード32の上方となるプレート31の上辺に、上辺に沿って配置された帯状のマーク36等を配置するようにしてもよい。 In the above specific example, a case has been described in which a character string is arranged in the target code 32 as information that allows the orientation to be visually recognized. However, as shown in FIG. 4(b), instead of the character string, On the upper side of the plate 31 above the target code 32, a band-shaped mark 36 or the like may be arranged along the upper side.

また、上記においては、90度単位で対象コード32が配置されている角度を取得する場合を例に挙げて説明したが、上述したように、角度を取得する単位等は問わない。例えば、対象コード32について取得した予め指定された方向と、基準コード34等から取得した基準となる方向とがなす角度との差を示す値を、対象コード32が配置されている角度として用いてもよい。また、このような角度の差を用いる場合のように、角度情報取得部104が取得する対象コード32が配置されている角度の値が、90度などとは異なり、1度単位等の細かい単位である場合等においては、角度管理情報は、角度の範囲と、角度対応情報とを有する情報とすることが好ましい。そして、角度情報取得部104は、対象コード32が配置されている角度を取得した場合に、この角度が含まれる角度の範囲を有する角度管理情報を検索し、検出した角度管理情報が有する角度対応情報を取得するようにしてもよい。 Further, in the above description, the case where the angle at which the target code 32 is arranged is acquired in units of 90 degrees has been described as an example, but as described above, the unit of acquiring the angle is not limited. For example, a value indicating the difference between the angle formed by a pre-specified direction acquired for the target code 32 and a reference direction acquired from the reference code 34 etc. is used as the angle at which the target code 32 is arranged. Good too. Further, as in the case where such an angle difference is used, the value of the angle at which the target code 32 acquired by the angle information acquisition unit 104 is arranged is different from 90 degrees, etc., but is in fine units such as 1 degree. In such cases, the angle management information is preferably information including an angle range and angle correspondence information. Then, when the angle information acquisition unit 104 acquires the angle at which the target code 32 is arranged, it searches for angle management information having a range of angles that include this angle, and searches for angle management information that has an angle range that includes this angle. Information may also be acquired.

また、上記具体例においては、基準コード34を用いて、対象コード32の配置される角度の基準となる方向を検出するようにしたが、基準対象として、横方向に伸びている1以上の罫線38を検出して、この罫線38の伸びる方向を用いて、角度の基準となる方向、例えば、右方向や、左方向を検出するようにしてもよい。 Further, in the above specific example, the reference code 34 is used to detect the reference direction of the angle at which the target code 32 is arranged, but one or more ruled lines extending in the horizontal direction are used as the reference target. 38 may be detected, and the direction in which the ruled line 38 extends may be used to detect a direction that serves as a reference for the angle, for example, the right direction or the left direction.

なお、上記具体例においては、対象コード32の上からの配列順番を利用して、対象コード32に対応するユーザの名前等を取得する例について説明したが、各対象コード32に対して予め指定された方向(例えば、左方向等)に、ユーザの名前等と対応付けられた対象コード32とは異なるコードを配置しておくようにして、これらのコードを用いて、対応する対象コード32に対応するユーザの名前等を取得するようにしてもよい。なお、これらのコードは、対象コード32を識別する処理と同様に、コードから読み取られる情報等を用いてコード32や、基準コード34に対して識別できるようしてもよい。 In addition, in the above specific example, an example was explained in which the name of the user corresponding to the target code 32 is obtained by using the arrangement order from the top of the target code 32. By placing codes different from the target code 32 associated with the user's name, etc. in the direction (for example, to the left) that corresponds to the target code 32, use these codes. The corresponding user's name, etc. may also be acquired. Note that, similar to the process of identifying the target code 32, these codes may be identified with respect to the code 32 and the reference code 34 using information read from the code.

以上、本実施の形態によれば、対象コードを読み取った情報に加えて、対象コードが配置される角度に応じた情報を撮影画像から取得することができるため、対象コードを配置する際に、対象コードに対して所望の情報を容易に付加することができる。 As described above, according to the present embodiment, in addition to the information obtained by reading the target code, information corresponding to the angle at which the target code is placed can be obtained from the captured image, so when placing the target code, Desired information can be easily added to the target code.

なお、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。 In each of the above embodiments, each process (each function) may be realized by being centrally processed by a single device (system), or may be realized by being distributed by multiple devices. may be done.

また、上記各実施の形態では、コード処理装置がスタンドアロンである場合について説明したが、コード処理装置は、スタンドアロンの装置であってもよく、サーバ・クライアントシステムにおけるサーバ装置であってもよい。後者の場合には、出力部や受付部は、通信回線を介して入力を受け付けたり、画面を出力したりすることになる。 Further, in each of the above embodiments, a case has been described in which the code processing device is a standalone device, but the code processing device may be a standalone device or a server device in a server/client system. In the latter case, the output unit and reception unit will accept input via a communication line and output a screen.

また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。その実行時に、プログラム実行部は、格納部(例えば、ハードディスクやメモリ等の記録媒体)にアクセスしながらプログラムを実行してもよい。 Further, in each of the embodiments described above, each component may be configured by dedicated hardware, or components that can be realized by software may be realized by executing a program. For example, each component can be realized by a program execution unit such as a CPU reading and executing a software program recorded on a recording medium such as a hard disk or a semiconductor memory. At the time of execution, the program execution section may execute the program while accessing a storage section (for example, a recording medium such as a hard disk or a memory).

なお、上記各実施の形態におけるコード処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、1以上のコードを撮影した撮影画像を受け付ける画像受付部と、画像受付部が受け付けた撮影画像からコードを検出するコード検出部と、コード検出部が検出した1以上のコードを読み取って情報を取得する読取取得部と、コード検出部が検出した1以上のコードが配置されている角度を取得し、取得した角度に対応する情報を取得する角度情報取得部と、コード検出部が検出した1以上のコードについて読取取得部が取得した情報と、角度情報取得部が取得した角度に対応した情報と、を出力する出力部として機能させるためのプログラムである。 Note that the software that implements the code processing device in each of the above embodiments is the following program. In other words, this program connects a computer to an image reception section that receives a captured image of one or more codes, a code detection section that detects a code from the captured image received by the image reception section, and one code detected by the code detection section. a reading acquisition section that reads the above codes and acquires information; and an angle information acquisition section that acquires the angle at which one or more codes detected by the code detection section are arranged and acquires information corresponding to the acquired angle. , is a program for functioning as an output unit that outputs information acquired by the reading acquisition unit regarding one or more codes detected by the code detection unit, and information corresponding to the angle acquired by the angle information acquisition unit.

なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には含まれない。 Note that in the above program, the functions realized by the program do not include functions that can only be realized by hardware. For example, functions that can only be realized by hardware such as a modem or an interface card in an acquisition unit that acquires information, an output unit that outputs information, etc. are not included in the functions that are realized by the above program.

また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。 Further, the number of computers that execute this program may be one or more. That is, centralized processing or distributed processing may be performed.

図9は、上記プログラムを実行して、上記実施の形態によるコード処理装置を実現するコンピュータシステム900の一例を示す図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。 FIG. 9 is a diagram showing an example of a computer system 900 that executes the program described above to realize the code processing device according to the embodiment described above. The above embodiments can be implemented by computer hardware and a computer program executed on the computer hardware.

図9において、コンピュータシステム900は、MPU(Micro Processing Unit)911と、ブートアッププログラム等のプログラムや、アプリケーションプログラム、システムプログラム、及びデータが記憶されるフラッシュメモリ等のROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM913と、タッチパネル914と、無線通信モジュール915と、MPU911、ROM912等を相互に接続するバス916とを備える。なお、無線通信モジュール915に代えて、有線通信モジュールを備えていてもよい。また、タッチパネル914に代えて、ディスプレイと、マウスやキーボード等の入力デバイスとを備えていてもよい。 In FIG. 9, a computer system 900 is connected to an MPU (Micro Processing Unit) 911, a ROM 912 such as a flash memory in which programs such as a boot-up program, application programs, system programs, and data are stored, and the MPU 911. It includes a RAM 913 that temporarily stores instructions of an application program and provides a temporary storage space, a touch panel 914, a wireless communication module 915, and a bus 916 that interconnects the MPU 911, ROM 912, and the like. Note that instead of the wireless communication module 915, a wired communication module may be provided. Further, instead of the touch panel 914, a display and an input device such as a mouse or a keyboard may be provided.

コンピュータシステム900に、上記実施の形態によるコード処理装置の機能を実行させるプログラムは、無線通信モジュール915を介してROM912に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、ネットワークから直接、ロードされてもよい。 A program that causes the computer system 900 to execute the functions of the code processing device according to the embodiment described above may be stored in the ROM 912 via the wireless communication module 915. The program is loaded into RAM 913 during execution. Note that the program may be loaded directly from the network.

プログラムは、コンピュータシステム900に、上記実施の形態によるコード処理装置の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能やモジュールを呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するかは周知であり、詳細な説明は省略する。 The program does not necessarily need to include an operating system (OS) or a third party program that causes computer system 900 to execute the functions of the code processing device according to the above embodiment. A program may include only those portions of instructions that call appropriate functions or modules in a controlled manner to achieve desired results. How computer system 900 operates is well known and will not be described in detail.

本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。 It goes without saying that the present invention is not limited to the above-described embodiments, and that various modifications can be made, and these are also included within the scope of the present invention.

以上のように、本発明にかかるコード処理装置等は、コードの情報を読み取る装置等として適しており、特に、撮影画像からコードの情報を読み取る装置等として有用である。 As described above, the code processing device or the like according to the present invention is suitable as a device for reading code information, and is particularly useful as a device for reading code information from a photographed image.

1 コード処理装置
100 画像受付部
101 撮影部
102 コード検出部
103 読取取得部
104 角度情報取得部
105 出力部
106 読取情報格納部
107 角度情報格納部
1 Code processing device 100 Image receiving section 101 Photographing section 102 Code detecting section 103 Reading acquisition section 104 Angle information acquisition section 105 Output section 106 Reading information storage section 107 Angle information storage section

Claims (7)

1以上のコードを撮影した撮影画像を受け付ける画像受付部と、
前記画像受付部が受け付けた撮影画像からコードを検出するコード検出部と、
前記コード検出部が検出した1以上のコードを読み取って情報を取得する読取取得部と、
前記コード検出部が検出した1以上のコードが配置されている角度を取得し、取得した角度に対応する情報を取得する角度情報取得部と、
前記コード検出部が検出した1以上のコードについて前記読取取得部が取得した情報と、前記角度情報取得部が取得した角度に対応した情報と、を出力する出力部とを備え
前記画像受付部は、コードが配置されている角度を前記角度情報取得部が取得する際に角度の基準となる方向を示す基準対象をさらに撮影した撮影画像を受け付け、
前記角度情報取得部は、前記コード検出部が検出したコードが配置されている角度として、撮影画像内の基準対象が示す方向と、コードの特定の向きを示す方向とがなす相対的な角度を取得するコード処理装置。
an image reception unit that accepts captured images of one or more codes;
a code detection unit that detects a code from the captured image received by the image reception unit;
a reading acquisition unit that reads one or more codes detected by the code detection unit and acquires information;
an angle information acquisition unit that acquires an angle at which one or more codes detected by the code detection unit is arranged, and acquires information corresponding to the acquired angle;
an output unit that outputs information acquired by the reading acquisition unit regarding one or more codes detected by the code detection unit and information corresponding to the angle acquired by the angle information acquisition unit ,
The image receiving unit further receives a captured image of a reference object indicating a reference direction of an angle when the angle information obtaining unit obtains the angle at which the code is arranged;
The angle information acquisition unit determines, as the angle at which the code detected by the code detection unit is arranged, a relative angle between a direction indicated by a reference object in the captured image and a direction indicating a specific orientation of the code. Code processing device to obtain .
前記角度情報取得部は、コードが配置されている角度として、3以上の異なる角度を取得可能であり、取得した角度にそれぞれ対応する情報を取得する請求項1記載のコード処理装置。 The code processing device according to claim 1, wherein the angle information acquisition unit is capable of acquiring three or more different angles at which the code is arranged, and acquires information corresponding to each of the acquired angles. 前記基準対象は、前記基準となる方向を示すコードである請求項1または請求項2記載のコード処理装置。 3. The code processing device according to claim 1 , wherein the reference object is a code indicating the reference direction. 前記画像受付部は、コードが配置されたプレートであって、コードの向きを視覚的に認識可能な1以上のプレートを撮影した撮影画像を受け付ける請求項1から請求項いずれか一項記載のコード処理装置。 4. The image receiving unit according to any one of claims 1 to 3 , wherein the image receiving unit receives a photographed image of one or more plates on which a code is arranged, and the direction of the code can be visually recognized. Code processing device. 前記角度情報取得部は、90度単位で各コードが配置される角度を検出するとともに、90度と270度とに対応する情報として、同じ情報を取得する請求項記載のコード処理装置。 5. The code processing device according to claim 4 , wherein the angle information acquisition unit detects the angle at which each code is arranged in units of 90 degrees, and acquires the same information as information corresponding to 90 degrees and 270 degrees. 画像受付部と、コード検出部と、読取取得部と、角度情報取得部と、出力部とを用いて行なわれるコード処理方法であって、
前記画像受付部が、1以上のコードを撮影した撮影画像を受け付ける画像受付ステップと、
前記コード検出部が、前記画像受付ステップで受け付けた撮影画像からコードを検出するコード検出ステップと、
前記読取取得部が、前記コード検出ステップで検出した1以上のコードを読み取って情報を取得する読取取得ステップと、
前記角度情報取得部が、前記コード検出ステップで検出した1以上のコードが配置されている角度を取得し、取得した角度に対応する情報を取得する角度情報取得ステップと、
前記出力部が、前記コード検出ステップで検出した1以上のコードについて前記読取取得ステップで取得した情報と、前記角度情報取得ステップで取得した角度に対応した情報と、を出力する出力ステップとを備え
前記画像受付ステップは、コードが配置されている角度を前記角度情報取得ステップで取得する際に角度の基準となる方向を示す基準対象をさらに撮影した撮影画像を受け付け、
前記角度情報取得ステップは、前記コード検出ステップで検出したコードが配置されている角度として、撮影画像内の基準対象が示す方向と、コードの特定の向きを示す方向とがなす相対的な角度を取得するコード処理方法。
A code processing method performed using an image reception unit, a code detection unit, a reading acquisition unit, an angle information acquisition unit, and an output unit, the code processing method comprising:
an image reception step in which the image reception unit receives a captured image of one or more codes;
a code detection step in which the code detection unit detects a code from the captured image received in the image reception step;
a reading acquisition step in which the reading acquisition unit reads one or more codes detected in the code detection step to acquire information;
an angle information acquisition step in which the angle information acquisition unit acquires an angle at which one or more codes detected in the code detection step are arranged, and acquires information corresponding to the acquired angle;
an output step in which the output unit outputs information acquired in the reading acquisition step and information corresponding to the angle acquired in the angle information acquisition step regarding one or more codes detected in the code detection step; ,
The image receiving step receives a photographed image of a reference object indicating a reference direction of the angle when the angle at which the code is arranged is obtained in the angle information obtaining step;
The angle information acquisition step determines, as the angle at which the code detected in the code detection step is arranged, the relative angle between the direction indicated by the reference object in the captured image and the direction indicating the specific orientation of the code. How to process the code to get .
コンピュータを、
1以上のコードを撮影した撮影画像を受け付ける画像受付部と、
前記画像受付部が受け付けた撮影画像からコードを検出するコード検出部と、
前記コード検出部が検出した1以上のコードを読み取って情報を取得する読取取得部と、
前記コード検出部が検出した1以上のコードが配置されている角度を取得し、取得した角度に対応する情報を取得する角度情報取得部と、
前記コード検出部が検出した1以上のコードについて前記読取取得部が取得した情報と、前記角度情報取得部が取得した角度に対応した情報と、を出力する出力部として機能させ
前記画像受付部は、コードが配置されている角度を前記角度情報取得部が取得する際に角度の基準となる方向を示す基準対象をさらに撮影した撮影画像を受け付け、
前記角度情報取得部は、前記コード検出部が検出したコードが配置されている角度として、撮影画像内の基準対象が示す方向と、コードの特定の向きを示す方向とがなす相対的な角度を取得するプログラム。
computer,
an image reception unit that accepts captured images of one or more codes;
a code detection unit that detects a code from the captured image received by the image reception unit;
a reading acquisition unit that reads one or more codes detected by the code detection unit and acquires information;
an angle information acquisition unit that acquires an angle at which one or more codes detected by the code detection unit is arranged, and acquires information corresponding to the acquired angle;
Functioning as an output unit that outputs information acquired by the reading acquisition unit regarding one or more codes detected by the code detection unit and information corresponding to the angle acquired by the angle information acquisition unit ,
The image receiving unit further receives a captured image of a reference object indicating a reference direction of an angle when the angle information obtaining unit obtains the angle at which the code is arranged;
The angle information acquisition unit determines, as the angle at which the code detected by the code detection unit is arranged, a relative angle between a direction indicated by a reference object in the captured image and a direction indicating a specific orientation of the code. Program to obtain .
JP2019232631A 2019-12-24 2019-12-24 Code processing device, code processing method, and program Active JP7375261B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019232631A JP7375261B2 (en) 2019-12-24 2019-12-24 Code processing device, code processing method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019232631A JP7375261B2 (en) 2019-12-24 2019-12-24 Code processing device, code processing method, and program

Publications (2)

Publication Number Publication Date
JP2021101283A JP2021101283A (en) 2021-07-08
JP7375261B2 true JP7375261B2 (en) 2023-11-08

Family

ID=76651390

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019232631A Active JP7375261B2 (en) 2019-12-24 2019-12-24 Code processing device, code processing method, and program

Country Status (1)

Country Link
JP (1) JP7375261B2 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006319416A (en) 2005-05-10 2006-11-24 Nec Corp Information reading apparatus, object, information processing apparatus, information communication system, information reading method, and program
JP2017041047A (en) 2015-08-19 2017-02-23 ワム・システム・デザイン株式会社 Color code processing apparatus, color code processing method, and program

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006319416A (en) 2005-05-10 2006-11-24 Nec Corp Information reading apparatus, object, information processing apparatus, information communication system, information reading method, and program
JP2017041047A (en) 2015-08-19 2017-02-23 ワム・システム・デザイン株式会社 Color code processing apparatus, color code processing method, and program

Also Published As

Publication number Publication date
JP2021101283A (en) 2021-07-08

Similar Documents

Publication Publication Date Title
JP5587516B1 (en) Management object management system
US8943097B2 (en) Information management apparatus, information management system, non-transitory computer readable medium that stores information management program and information management method
JP6579654B2 (en) Color code processing apparatus, color code processing method, and program
JP7435998B2 (en) Article position management device, article, article position management system, article position management method and program
CN107979709A (en) Image processing apparatus, system, control method and computer-readable medium
JP6913606B2 (en) Image processing device
US20190124229A1 (en) Image processing apparatus and non-transitory computer readable medium storing image processing program
JP6662264B2 (en) Display system
CN108234815A (en) Certification initialization system and image forming apparatus
US20100080490A1 (en) Apparatus and method for processing image
CN105391889A (en) Data processing apparatus, data processing system, and control method for data processing apparatus
CN111507120A (en) Two-dimensional code positioning frame identification method, device, electronic device and storage medium
CN106203545B (en) System and method for processing information
US20160219168A1 (en) Electronic apparatus and program
JP7375261B2 (en) Code processing device, code processing method, and program
US20200036847A1 (en) Operation support information providing apparatus, operation support information providing system, and non-transitory recording medium
JPWO2017179543A1 (en) Information processing apparatus, information processing method, and program recording medium
JP2022145190A (en) Information processing system, position management method, information processing apparatus, and program
JP6288487B2 (en) Image processing apparatus and program
JP7427851B2 (en) Code processing device, code processing method, and program
JP5117890B2 (en) Information processing apparatus, information processing method, and program thereof
JP6717228B2 (en) Image reading apparatus, image reading method, and image forming apparatus
JP6639257B2 (en) Information processing apparatus and control method therefor
US20160224854A1 (en) Information processing apparatus, information processing method, and storage medium
JP2008092451A (en) Scanner system

Legal Events

Date Code Title Description
A80 Written request to apply exceptions to lack of novelty of invention

Free format text: JAPANESE INTERMEDIATE CODE: A80

Effective date: 20200116

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221117

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230711

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230712

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230808

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230829

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20230926

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230926

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20230926

R150 Certificate of patent or registration of utility model

Ref document number: 7375261

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150