(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-05-07
(45)【発行日】2025-05-15
(54)【発明の名称】情報処理システム、方法、およびプログラム
(51)【国際特許分類】
G06K 7/14 20060101AFI20250508BHJP
G06K 19/06 20060101ALI20250508BHJP
G07G 1/00 20060101ALI20250508BHJP
【FI】
G06K7/14 034
G06K7/14 013
G06K19/06 028
G06K19/06 093
G07G1/00 311E
(21)【出願番号】P 2023532915
(86)(22)【出願日】2021-07-06
(86)【国際出願番号】 JP2021025413
(87)【国際公開番号】W WO2023281617
(87)【国際公開日】2023-01-12
【審査請求日】2023-12-28
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100178216
【氏名又は名称】浜野 絢子
(74)【代理人】
【識別番号】100149618
【氏名又は名称】北嶋 啓至
(72)【発明者】
【氏名】池澤 るみ
【審査官】太田 龍一
(56)【参考文献】
【文献】特開2005-250566(JP,A)
【文献】特開2008-257462(JP,A)
【文献】特開2017-187988(JP,A)
【文献】特開平08-044807(JP,A)
【文献】特開2001-243416(JP,A)
【文献】特開2005-202473(JP,A)
【文献】特開2013-229897(JP,A)
【文献】特開2002-245007(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06K 7/14
G06K 19/06
G07G 1/00
(57)【特許請求の範囲】
【請求項1】
顧客による操作を受け付ける可搬型の端末装置と、
商品登録を行うサーバと、
を備え、
前記可搬型の端末装置は、
前記可搬型の端末装置の撮像装置によって
前記顧客の操作により撮像された画像から、バーコードを認識する認識手段と、
認識された前記バーコードが所定以上の長さかを判定する判定手段と、
認識された前記バーコードが所定以上の長さの場合、前記バーコードに対応する複数の処理を行う処理手段と、
前記可搬型の端末装置に対する前記顧客の操作により商品登録の登録依頼を受け付けて、前記登録依頼を前記サーバに送信する受付手段と、
前記商品登録の登録結果を表示する表示制御手段と、
を備え
、
前記処理手段では、前記複数の処理として、前記認識手段によって認識された前記バーコードに含まれる商品のコードと、認識された前記バーコードに含まれる価格コードとを前記サーバに順次送信し、
前記サーバは、
前記登録依頼を受信すると、前記可搬型の端末装置から受信した前記商品のコードおよび価格コードに基づいて、前記商品登録を行い、前記商品登録の登録結果を前記可搬型の端末装置に送信するリスト生成手段、
を備える、
情報処理システム。
【請求項2】
前記判定手段は、認識された前記バーコードが表すコードが所定のコードを含むかによって認識された前記バーコードが所定以上の長さかを判定する、
請求項1に記載の情報処理システム。
【請求項3】
前記判定手段は、認識された前記バーコードが表すコードの桁数が所定数以上かによって認識された前記バーコードが所定以上の長さかを判定する、
請求項1に記載の情報処理システム。
【請求項4】
前記可搬型の端末装置は、
前記バーコードとともに
前記商品に表示される数字列を識別する識別手段、
を備え、
前記判定手段は、識別された前記数字列に基づいて、認識された前記バーコードが所定以上の長さかを判定する、
請求項1に記載の情報処理システム。
【請求項5】
前記判定手段は、認識された前記バーコードの形状によって認識された前記バーコードが所定以上の長さかを判定する、
請求項1に記載の情報処理システム。
【請求項6】
前記判定手段は、認識された前記バーコードの縦横比に基づいて、認識された前記バーコードが所定以上の長さかを判定する、
請求項5に記載の情報処理システム。
【請求項7】
前記認識手段は、前記バーコードの前半部分を認識し、前記バーコードの前半部分を認識した後に、前記バーコードの後半部分を認識する、
請求項1から6のいずれかに記載の情報処理システム。
【請求項8】
前記処理手段は、
前記認識手段によって認識された前記バーコードの前半部分が表すコードと、当該コードに続きがあることを示す情報と、を送信し、
当該コードと前記情報とを送信した後に、前記バーコードの後半部分が表すコードを送信する、
請求項7に記載の情報処理システム。
【請求項9】
顧客による操作を受け付ける可搬型の端末装置と、商品登録を行うサーバと、を備える情報処理システムの方法であって、
前記可搬型の端末装置は、
前記可搬型の端末装置の撮像装置によって
前記顧客の操作により撮像された画像から、バーコードを認識し、
認識された前記バーコードが所定以上の長さかを判定し、
認識された前記バーコードが所定以上の長さの場合、前記バーコードに対応する複数の処理を行
い、
前記可搬型の端末装置に対する前記顧客の操作により商品登録の登録依頼を受け付けて、前記登録依頼を前記サーバに送信し、
前記商品登録の登録結果を表示し、
前記複数の処理では、認識された前記バーコードに含まれる商品のコードと、認識された前記バーコードに含まれる価格コードとを前記サーバに順次送信し、
前記サーバは、
前記登録依頼を受信すると、前記可搬型の端末装置から受信した前記商品のコードおよび価格コードに基づいて、前記商品登録を行い、前記商品登録の登録結果を前記可搬型の端末装置に送信する、
方法。
【請求項10】
顧客による操作を受け付ける可搬型の端末装置に
、
前記可搬型の端末装置の撮像装置によって
前記顧客の操作により撮像された画像から、バーコードを認識する処理と、
認識された前記バーコードが所定以上の長さかを判定する処理と、
認識された前記バーコードが所定以上の長さの場合、前記バーコードに対応する複数の処理と、
前記可搬型の端末装置に対する前記顧客の操作により商品登録の登録依頼を受け付けて、前記登録依頼を、前記商品登録を行うサーバに送信する処理と、
前記商品登録の登録結果を表示する処理と、
を実行させ
、
前記複数の処理において、認識された前記バーコードに含まれる商品のコードと、認識された前記バーコードに含まれる価格コードとを前記サーバに順次送信し、
前記サーバに、
前記登録依頼を受信すると、前記可搬型の端末装置から受信した前記商品のコードおよび価格コードに基づいて、前記商品登録を行い、前記商品登録の登録結果を前記可搬型の端末装置に送信する処理、
を実行させる、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理システムなどに関する。
【背景技術】
【0002】
流通用のコードとして、商品にコードが表示され、商品のコードは、POSシステムで活用される。例えば、商品のコードは、JAN(Japanese Article Number)コード、EAN(European Article Number)コード、UPC(Universal Product Code)などがある。商品のコードは、例えば、1次元コード(バーコード)と2次元コードで表されて商品に表示される場合もある。また、商品のコードは、1次元コードや2次元コードとともに数字列で商品に表示される場合もある。また、非特許文献1には、JANコードにおけるバーコードのサイズについて記載されている。
【0003】
ここで、商品のコードには、様々な種類がある。例えば、一般的な商品を識別するためのJANコードは、価格のコードを含んでいない。一方、書籍用のコードと、定期刊行物(以降雑誌と呼ぶ)用のコードは、価格のコードを含んでいる。一般的な商品を識別するためのJANコードが表すバーコードは、1段で商品に表示される。書籍用のバーコードは、2段のバーコードとして書籍に表示される。すなわち、書籍用のバーコードは、2段のバーコードが上下に並べられて表示される。また、一般的な商品を識別するためのJANコードは、13桁または8桁である。雑誌用のコードは、18桁のコードである。非特許文献2には、雑誌用のバーコードの表示方法が記載されている。
【0004】
特許文献1には、書籍用の2段のバーコードを画像スキャナで読み取る際に、複数の書籍の2段のバーコードを一度に読み取る不正を防止する技術が記載されている。バーコードが書籍用の2段のバーコードである場合、バーコードの始点および終点の座標を取得し、2段のバーコードのベクトルを算出することが記載されている。そして、特許文献1には、ベクトルに基づいて、2段のバーコードの読み込みを行うかを判定することが記載されている。
【先行技術文献】
【特許文献】
【0005】
【非特許文献】
【0006】
【文献】“まめ知識[JANコードとITFコードの規定倍率とそのサイズ]”,[online],[令和3年6月18日検索],インターネット[http://insatsu-net.com/knowledge-bar-jan-itf]
【文献】“雑誌コードおよび定期刊行物コード(雑誌)の表示方法” ,[online],[令和3年6月18日検索],インターネット[http://jpo.or.jp/magcode/info/format.html]
【発明の概要】
【発明が解決しようとする課題】
【0007】
端末装置においてバーコードを撮像した画像からバーコードが表すコードを取得する場合、コードを取得できない場合がある。
【0008】
本開示の目的の一例は、商品のバーコードを適切に読み取ることができる情報処理システムなどを提供することにある。
【課題を解決するための手段】
【0009】
本開示の一態様における情報処理システムは、端末装置の撮像装置によって撮像された画像から、バーコードを認識する認識手段と、認識された前記バーコードが所定以上の長さかを判定する判定手段と、認識された前記バーコードが所定以上の長さの場合、前記バーコードに対応する複数の処理を行う処理手段と、を備える。
【0010】
本開示の一態様における方法は、端末装置の撮像装置によって撮像された画像から、バーコードを認識し、認識された前記バーコードが所定以上の長さかを判定し、認識された前記バーコードが所定以上の長さの場合、前記バーコードに対応する複数の処理を行う。
【0011】
本開示の一態様におけるコンピュータが読み取り可能な記録媒体は、コンピュータに、端末装置の撮像装置によって撮像された画像から、バーコードを認識する処理と、認識された前記バーコードが所定以上の長さかを判定する処理と、認識された前記バーコードが所定以上の長さの場合、前記バーコードに対応する複数の処理と、を実行させるプログラムを記録する。
【発明の効果】
【0012】
本開示よれば、商品のバーコードを適切に読み取ることができる。
【図面の簡単な説明】
【0013】
【
図1】情報処理システムの一例を示す説明図である。
【
図2】実施の形態1にかかる端末装置の一構成例を示すブロック図である。
【
図3】実施の形態1にかかるサーバの一構成例を示すブロック図である。
【
図4】書籍用のコードが書籍に表示される例を示す説明図である。
【
図5】書籍に表示されたバーコードが読み取られる例を示す説明図である。
【
図6】書籍が反転してバーコードが読み取られる例を示す説明図である。
【
図7】書籍に表示されたバーコードと書籍に表示されたその他の数字および文字が識別される例1を示す説明図である。
【
図8】書籍に表示されたバーコードと書籍に表示されたその他の数字および文字が識別される例2を示す説明図である。
【
図9】特定された書籍名と価格との表示例を示す説明図である。
【
図10】購入商品リストの表示例を示す説明図である。
【
図11】2つの枠を表示させる例を示す説明図である。
【
図12】2段のバーコードを両方撮影させる指示の表示例を示す説明図である。
【
図13】実施の形態1にかかる情報処理システムの書籍用のコードに関する一動作例を示すフローチャート(その1)である。
【
図14】実施の形態1にかかる情報処理システムの書籍用のコードに関する一動作例を示すフローチャート(その2)である。
【
図15】実施の形態1にかかる情報処理システムの書籍用のコードに関する一動作例を示すフローチャート(その3)である。
【
図16】雑誌にバーコードが表示される例を示す説明図である。
【
図17】バーコードが認識される例を示す説明図である。
【
図18】バーコードの横に表示された数字列による判定例を示す説明図である。
【
図20】雑誌名と月号と税抜価格と税込価格との表示例を示す説明図である。
【
図21】購入商品リストの表示例を示す説明図である。
【
図22】実施の形態1にかかる情報処理システムの雑誌用のコードに関する一動作例を示すフローチャートである。
【
図23】実施の形態2にかかる情報処理システムの一構成例を示すブロック図である。
【
図24】実施の形態2にかかる情報処理システムの一動作例を示すフローチャートである。
【
図25】コンピュータ装置のハードウェア構成例を示す説明図である。
【発明を実施するための形態】
【0014】
以下に図面を参照して、本開示にかかる情報処理システム、方法、プログラム、プログラムを記録する非一時的な記録媒体の各実施の形態を詳細に説明する。本実施の形態は、開示の技術を限定するものではない。なお、以下の説明で用いるコードは、例えば、英語や数字を用いて作成された文字列である。
【0015】
(実施の形態1)
実施の形態1では、書籍用の2段のバーコードを端末装置で読み取る例を詳細に説明する。また、実施の形態1では、桁数が一般のコードよりも長い雑誌用のコードを表すバーコードを端末装置で読み取る例を詳細に説明する。
【0016】
図1は、情報処理システムの一例を示す説明図である。情報処理システム1は、端末装置10と、サーバ11と、を含む。端末装置10と、サーバ11とは、例えば、通信ネットワーク12を介して接続される。
【0017】
端末装置10は、撮像装置によって商品のバーコードを撮像可能な装置である。端末装置10は、店舗の携帯端末装置であってもよいし、顧客の携帯端末装置であってもよい。端末装置10は、可搬型の端末装置であってもよい。具体的に、端末装置10は、スマートフォン、タブレット型の装置のいずれかであってもよい。また、端末装置10は、ショッピングカートなどの移動体に取り付けられた装置であってもよい。
【0018】
例えば、端末装置10は、顧客が自身で操作することにより商品登録を行うセルフスキャンショッピングに用いられてもよい。端末装置10は、店員の操作による商品登録に用いられてもよい。ここで、例えば、端末装置10は、商品登録を行うためのアプリケーションを経由して撮像装置を起動してもよい。そして、端末装置10は、撮像装置によって各バーコードを撮像する。
【0019】
実施の形態1では、端末装置10において撮像した画像から、バーコードを読み取る例について説明するため、決済については特に限定しない。このため、端末装置10が、決済を行ってもよいし、図示しない精算装置が決済を行ってもよい。また、決済については、サーバ11と、端末装置10または精算装置が共同して決済を行ってもよい。または、決済については、サーバ11以外の他のサーバ(図示しない)と、端末装置10または精算装置が共同して決済を行ってもよい。
【0020】
また、サーバ11は、商品の情報を記憶する商品DBを管理する。また、サーバ11は、顧客が購入する商品のリスト(以下、購入商品リストと呼ぶ。)を管理してもよい。
【0021】
図2は、実施の形態1にかかる端末装置10の一構成例を示すブロック図である。例えば、端末装置10は、取得部101と、認識部102と、識別部103と、上下判定部104と、処理部105と、長さ判定部106と、表示制御部107と、受付部108と、記憶部109と、を有する。
【0022】
記憶部109は、例えば、端末装置10の各部の処理に用いるデータを記憶する。記憶部109は、例えば、端末装置10の各部の処理結果を記憶する。端末装置10としては、ROM(Read Only Memory)、RAM(Random Access Memory)、半導体メモリ、HDD(Hard Disk Drive)、SSD(Solid State Drive)が挙げられる。記憶部109は、これらの組み合わせであってもよい。記憶部109は、通信ネットワーク12を介して接続された複数の装置によって実現されてもよい。すなわち、記憶部109は、分散されて配置されてもよい。
【0023】
端末装置10は、
図2に示す機能部のうちの一部を有していなくてもよい。もしくは、端末装置10は、図示しない機能部を有してもよい。
【0024】
図3は、実施の形態1にかかるサーバ11の一構成例を示すブロック図である。サーバ11は、処理部111と、記憶部115と、を有する。例えば、処理部111は、特定部112と、リスト生成部113と、精算情報生成部114と、を有する。記憶部115は、例えば、サーバ11の各部の処理に用いるデータを記憶する。記憶部115は、例えば、サーバ11の各部の処理結果を記憶する。記憶部115としては、ROM、RAM、半導体メモリ、HDD、SSDが挙げられる。記憶部115は、これらの組み合わせであってもよい。記憶部115は、通信ネットワーク12を介して接続された複数の装置によって実現されてもよい。すなわち、記憶部115は、分散されて配置されてもよい。記憶部115は、例えば、商品DB1000と、購入商品リストDB1001と、を記憶する。
【0025】
サーバ11は、
図3に示す機能部のうちの一部を有していなくてもよい。もしくは、サーバ11は、図示しない機能部を有してもよい。
【0026】
商品DB1000は、店舗または店舗を含む系列店舗で取り扱う商品の情報を記憶する。商品の情報を以降省略して商品情報と呼ぶ場合がある。具体的に、商品DB1000は、例えば、コード別に、商品の情報を記憶する。例えば、一般的なJANコードの場合、商品DB1000は、コードと、商品名、商品の分類、商品の価格、商品の特徴などの情報を記憶する。商品DB1000は、商品に関する前述の情報の一部を含まなくてもよい。また、商品DB1000は、商品に関する前述の情報以外の情報を含んでもよい。商品の分類は、特に限定されない。例えば、商品の分類は、食品、文具などといった大分類であってもよい。また、商品の分類は、菓子、肉、野菜などのように、大分類を分けた小分類であってもよい。商品の価格は、商品の値段である。商品の価格は、商品の基本価格である。基本価格とは、税込価格、小計、合計金額を算出する際の基本となる価格である。以降、基本価格を税抜価格とも呼ぶ。また、税抜価格に消費税を課税した価格が税込価格である。商品の特徴は、特に限定されない。書籍用のコードと、雑誌用のコードと、が商品DB1000に記憶される例については後述する。
【0027】
購入商品リストDB1001は、顧客別に、決済が終了していない最新の購入商品リストを記憶する。購入商品リストは、例えば、顧客別に、顧客を識別する情報と、顧客が購入する予定の商品の情報と、購入数量の情報と、を対応付けて記憶する。顧客を識別する情報は、例えば、顧客を一意に識別可能であればよく、特に限定されない。例えば、新たな顧客に対する商品の登録を開始する前に、顧客に顧客IDが付与される。なお、ポイントカードの番号などの会員IDを受け付ける場合、顧客IDとして会員IDが用いられてもよい。
【0028】
また、例えば、購入商品リストDB1001の購入商品リストに登録される商品の情報は、各種コードが挙げられる。これにより、端末装置10やサーバ11は、購入商品リストに登録された各種コードによって、商品DB1000から商品の価格、商品の名前などを得られる。
【0029】
ここで、購入商品リストの記憶内容は、情報処理システム1の構築方法によって種々変更可能である。
【0030】
各機能部および情報などの詳細について、書籍用のバーコードを読み取る例と、雑誌用のバーコードを読み取る例と、を用いて順に説明する。
【0031】
[書籍用のコード]
まず、書籍用のコードについて説明する。JANコードを用いる書籍用のコードは、一般的なJANコードと異なり、書籍に2段のバーコードで表示される。この2段のバーコードから各コードを適切に取得する必要がある。上段のバーコードは、978から始まるISBN(International Standard Book Number)用のコードを表すバーコードである。下段のバーコードは192からはじまる日本独自の図書分類と税抜き本体価格を表示したコードを表すバーコードである。
【0032】
より具体的に、上段のバーコードが表すコードは、先頭から順に、書籍を表す3桁のコード、書籍を発行する国や地域を表すコード、出版社を表すコード、書籍出版物の固有のコード、1桁のチェックデジットを含む。書籍を表すコードには、978と979がある。日本の場合、3桁の書籍を表すコードは、978である。以降の説明では、978を例に挙げて説明する。書籍を発行する国や地域を表すコードは、1桁の番号である。日本の場合、このコードは「4」である。また、出版社を表すコードは、出版社に割り当てられた番号である。書籍出版物の固有のコードとは、書籍名記号である。すなわち、このコードは、書籍名を表すコードである。書籍出版物の固有のコードを書籍名コードと呼ぶ。
【0033】
また、下段のバーコードが表すコードは、先頭から順に、下段のバーコードであることを示すコード、図書分類を示す4桁のコード、税抜き本体価格を識別するコード、1桁のチェックデジットを含む。
【0034】
下段のバーコードであることを示すコードは、192またはである。以降の説明では、192を例に挙げて説明する。図書分類を示すコードは、4桁のコードである。図書分類を示すコードは、先頭から1桁目が販売対象を示す図書分類を示すコードは、先頭から2桁目が形態を示す。図書分類を示すコードは、先頭から3、4桁目が内容を表す。税抜き本体価格を識別するコードは、価格を表すコードである。本体価格を識別するコードを価格コードと呼ぶ。
【0035】
書籍用のコードの場合、書籍名コードと価格コードとは、商品DB1000に記憶される。例えば、前述の商品DB1000は、書籍名コードと、書籍名と、を対応付けて記憶する。さらに、前述の商品DB1000は、価格コードと、税抜価格と、の情報を対応付けて記憶する。
【0036】
また、出版社コードについては、表示、決済、売上登録に出版社名を用いる場合、商品DB1000は、出版社コードと、出版社名と、の情報を対応付けて記憶してもよい。
【0037】
また、書籍について、購入商品リストDB1001の購入商品リストは、顧客ID別に、各コードによって特定された各情報を記憶してもよい。例えば、購入商品リストは、顧客ID別に、書籍名コードによって特定された書籍名と、価格コードによって特定された税抜価格と、を記憶する。
【0038】
図4は、書籍用のコードが書籍に表示される例を示す説明図である。
図4において、書籍には、2段のバーコードが表示される。また、書籍には、2段のバーコードの各段のバーコードの下に、バーコードが表すコードである数字列が表示される。また、書籍には、書籍名、著者名、価格などが表示されている場合がある。
【0039】
ここで、サーバ11は、2段のバーコードのそれぞれが表すコードを受け取った順に、商品マスターである商品DB1000から、それぞれのコードに対応する情報を特定する。なお、実施の形態1では、特定部112が、各コードに対応する情報を特定する。ここで、サーバ11は、例えば、端末装置10から上段のバーコードubが表すコード、下段のバーコードbbが表すコードを識別可能に受け取ることを前提としている。そこで、例えば、サーバ11は、端末装置10から上段のバーコードubが表すコード、下段のバーコードbbが表すコードの順に受け取ることを前提としてもよい。この際、サーバ11は、端末装置10から下段のバーコードbbが表すコード、上段のバーコードubが表すコードの順で受け取ると、各コードに対応する情報を特定することができない。
【0040】
例えば、顧客が自身の操作で商品登録するセルフスキャンショッピングにおいて、顧客は、このような前提を知らないため、2段のバーコードを適切に読み取れないことが考えられる。そこで、実施の形態1では、2段のバーコードであっても適切に読み取ることができる情報処理システム1を提供する。
【0041】
取得部101は、撮像装置によって撮像された画像を取得する。具体的に、取得部101は、例えば、購入対象の商品に含まれるバーコードを撮像装置に撮像させることにより、新たに画像を取得してもよい。または、取得部101は、記憶部109から、撮像装置によって撮像された画像を取得してもよい。
【0042】
認識部102は、取得された画像から、各バーコードを認識する。認識方法は、既存の技術を用いればよく、特に限定されない。各バーコードを認識するとは、例えば、各バーコードが表すコードを得ることである。認識部102は、例えば、各バーコードを撮像装置によって認識する。そして、認識部102は、2段のバーコードかを判定する。認識部102は、例えば、撮像された画像において、上下に2段のバーコードがある場合、2段のバーコードであると判定する。
【0043】
上下判定部104は、2段のバーコードの上下段を判定する。上下判定部104による上下段の判定方法は、特に限定されない。以下に複数の判定例について説明する。
【0044】
[上下段の判定例1]
上下判定部104は、画像から、2段のバーコードの上下を判定する。上下判定部104は、画像の上下および画像内における各バーコードの位置により、上下段を判定してもよい。画像は、例えば、予め上下が定められていてもよい。例えば、上下判定部104は、画像中の上に位置するバーコードを上段のバーコードubと判定し、画像中の下に位置するバーコードを下段のバーコードbbと判定する。
図5を用いて具体例を説明する。
【0045】
図5は、書籍に表示されたバーコードが読み取られる例を示す説明図である。
図5において、端末装置10には撮像装置が起動されている。画面d010には、読み取り用の枠が表示されている。読み取り用の枠は、端末装置10の撮像装置がバーコードを読み取り可能な位置を示す。以下読み取り用の枠は、省略して枠と呼ぶ場合がある。例えば、書籍の2段のバーコードが画面d010の枠内に入ると、認識部102は、画像から、各バーコードを認識する。そして、認識部102は、2段のバーコードかを判定する。
図5において、認識部102は、上下に並べられた2段のバーコードを認識する。前述の通り、画像は、撮像装置によって撮影されたときに上下が定義されてもよい。なお、破線の矢印は、上下の向きを示す。破線の矢印は、実際の画面d010上に表示されない。上下判定部104は、画像の上下および画像中の各バーコードの位置により、各バーコードの上下段を判定する。
【0046】
[上下段の判定例2]
上下判定部104は、2段のバーコードのそれぞれが表すコードに、所定のコードが含まれるかに基づいて、上下段を判定する。
【0047】
所定のコードは、例えば、2段のバーコードの上下段を識別可能なコードである。例えば、所定のコードとしては、上段のバーコードが表すコードに含まれる書籍を表すコードと、下段のバーコードが表すコードに含まれる、下段のバーコードbbであることを示すコードと、などがある。所定のコードは、例えば、書籍を表すコードである場合、上段のバーコードが表すコードに含まれる978である。具体的に、例えば、上下判定部104は、2段のバーコードのそれぞれが表すコードのうち、先頭に978を含むコードを表すバーコードを上段のバーコードと判定する。そして、上下判定部104は、先頭に978を含まないコードを表すバーコードを下段のバーコードと判定する。
【0048】
または、所定のコードが、例えば、下段のバーコードbbであることを示すコードである場合、所定のコードは、192である。具体的に、例えば、上下判定部104は、2段のバーコードのそれぞれが表すコードのうち、先頭に192を含むコードを表すバーコードを下段のバーコードと判定する。そして、上下判定部104は、先頭に192を含まないコードを表すバーコードを上段のバーコードと判定する。
【0049】
[上下の判定例3]
判定例3では、2段のバーコードとバーコードの周囲にある各数字列と、の位置関係に基づいて上下段を判定する。識別部103は、2段のバーコードの周囲にある各数字列を識別する。2段のバーコードの周囲にある各数字列は、端末装置10の撮像装置によって2段バーコードと同時に読み取られる位置にある数字列である。例えば、書籍用の2段のバーコードの場合、バーコードの周囲にある各数字列とは、バーコードの上下などにあるバーコードが表すコードである数字列である。具体的に、例えば、識別部103は、枠内にある数字列をOCR(Optical Character Recognition)によって識別する。上下判定部104は、2段のバーコードと、識別された各数字列と、の位置関係に基づいて、上下段を判定する。
【0050】
例えば、上下判定部104は、
図5のように、枠内において、上からバーコード、数字列、バーコード、数字列の順の位置関係である場合、枠において、上側にあるバーコードを上段のバーコードubとして判定する。そして、上下判定部104は、枠において、下側にあるバーコードを下段のバーコードbbとして判定する。
【0051】
図6は、書籍が反転してバーコードが読み取られる例を示す説明図である。上下判定部104は、
図6のように、画面d020の枠において、上から数字列、バーコード、数字列、バーコードの順の位置関係である場合、枠において、上側にあるバーコードを下段のバーコードbbとして判定する。そして、上下判定部104は、枠において、下側にあるバーコードを上段のバーコードubとして判定する。
【0052】
ここでは、コードが、数字列によって表される例を挙げて説明したが、英数字列で表される場合も同様に、識別部103は、2段のバーコードの周囲にある英数字列を識別すればよい。そして、上下判定部104は、2段のバーコードと、識別された各英数字列と、の位置関係に基づいて、上下段を判定する。
【0053】
[上下の判定例4]
識別部103は、画像から、数字と文字の少なくともいずれかを識別する。具体的に、識別部103は、画像から、OCRによって、数字と文字の少なくともいずれかを識別する。上下判定部104は、識別された文字と数字の少なくともいずれかの向きに基づいて、2段のバーコードの上下段を判定する。
【0054】
図7は、書籍に表示されたバーコードと書籍に表示されたその他の数字および文字が識別される例1を示す説明図である。識別部103は、
図7のように、画面d030の枠内にある数字と文字の少なくともいずれかを識別する。例えば、識別部103は、OCRによって、枠内にある「定価 1000円+税」を識別する。そして、上下判定部104は、識別された「定価 1000円+税」の各文字および数字の向きが枠に対して上から下の向きであるため、枠において上側にあるバーコードを上段のバーコードubと判定する。この向きは、破線の矢印で示す向きである。この破線の矢印は画面d030に表示されない。上下判定部104は、枠において下側にあるバーコードを下段のバーコードbbと判定する。
【0055】
図8は、書籍に表示されたバーコードと書籍に表示されたその他の数字および文字が識別される例2を示す説明図である。上下判定部104は、
図8のように、画面d040の枠内にある数字と文字の少なくともいずれかを識別する。例えば、識別部103は、OCRによって、枠内にある「定価 1000円+税」を識別する。そして、上下判定部104は、識別された「定価 1000円+税」の各文字および数字の向きが枠に対して下から上の向きであるため、枠において下側にあるバーコードを上段のバーコードubと判定する。この向きは、破線の矢印で示す向きである。この破線の矢印は、実際の画面d040に表示されない。上下判定部104は、枠において上側にあるバーコードを下段のバーコードbbと判定する。
【0056】
以上で、上下判定部104による判定方法の説明を終了する。なお、上下判定部104による判定方法は、組み合わせて用いられてもよい。
【0057】
つぎに、端末装置10の処理部105とサーバ11の処理部111について説明する。端末装置10の処理部105は、上下判定部104の判定結果に基づいて処理する。例えば、処理部105は、上下段が判定された2段のバーコードを所定の順で処理する。所定の順とは、例えば、2段のバーコードで定義されるコードの体系の順である。書籍の2段のバーコードである場合、所定の順は、上段のバーコードub、下段のバーコードbbの順である。
【0058】
例えば、処理部105は、上段のバーコードub、下段のバーコードbbを識別可能なように送信する。具体的に、例えば、処理部105は、上段のバーコードub、下段のバーコードbbの順に並べて送信してもよい。例えば、処理部105は、上段のバーコードubおよび下段のバーコードbbのそれぞれが表すコードを送信する場合、上段のバーコードubが表すコード、下段のバーコードbbが表すコードが識別可能に送信する。なお、上段のバーコードubが表すコード、下段のバーコードbbが表すコードのうち、サーバ11が使用するコードを送信し、他のコードを送信しなくてもよい。例えば、処理部105は、上段のバーコードubが表すコードのうち書籍名コードと、下段のバーコードbbが表すコードのうち価格コードと、を識別可能に送信してもよい。
【0059】
また、例えば、処理部105は、上段のバーコードubを含む画像、下段のバーコードbbを含む画像を識別可能に送信してもよい。より具体的に、例えば、処理部105は、上段のバーコードubを含む画像、下段のバーコードbbを含む画像の順に送信してもよい。なお、例えば、送信時の上段のバーコードubを含む画像には、下段のバーコードbbが含まれない。送信時の下段のバーコードbbを含む画像には、上段のバーコードubが含まれない。
【0060】
また、処理部105は、上段のバーコードubと下段のバーコードbbとを両方含む画像に、上段と下段とが判別可能な情報を付加してサーバ11へ送信してもよい。
【0061】
また、サーバ11の処理部111は、上下段が判定された2段のバーコードを所定の順で処理する。所定の順は、前述の通り、2段のバーコードが表すコードの体系によって定められた順である。前述の通り、具体的に、所定の順は、例えば、上段のバーコードub、下段のバーコードbbの順である。例えば、処理部105の特定部112は、上段のバーコードubが表すコードに基づいて、書籍を特定する。そして、処理部105の特定部112は、下段のバーコードbbが表すコードに基づいて、価格を特定する。より具体的に、例えば、処理部105は、上段のバーコードubが表すコードに含まれる書籍名コードに基づいて、商品DB1000から書籍名を特定する。そして、処理部105の特定部112は、下段のバーコードbbが表すコードに含まれる価格コードに基づいて、商品DB1000から税抜価格を特定する。特定部112は、書籍名(商品名)と、税抜価格と、を端末装置10へ送る。なお、特定部112は、各段のバーコードを含む画像を受信した場合、各画像から、バーコードが表すコードを得てもよい。
【0062】
なお、サーバ11が、書籍名コードと価格コードを受信し、それ以外を受信しない場合、特定部112は、書籍名コードに基づいて、商品DB1000から書籍名を特定する。特定部112は、価格コードに基づいて、商品DB1000から税抜価格を特定する。
【0063】
ここで、特定部112は、特定した税抜価格によって税込価格も算出してもよい。なお、サーバ11は、消費税に関する標準税率(例えば、10%)や一部の商品に適用される軽減税率(例えば、8%)などの情報を税率情報として記憶部109に記憶してもよい。このため、特定部112は、特定した価格と税率情報が示す税率によって税込価格を算出する。そして、特定部112は、書籍名(商品名)と、税抜価格と、税込価格と、を端末装置10へ送る。
【0064】
端末装置10の表示制御部107は、例えば、商品名と各価格とを表示させる。
図9は、特定された書籍名と価格との表示例を示す説明図である。表示制御部107は、画面d050内の所定の欄に、書籍名と価格とを画面d050に表示させる。
図9において、画面d050には、書籍名として「XXXX」が表示される。
図9において、画面d050には、書籍の税抜価格として「税抜き1000円」が表示される。
図9において、画面d050には、税込価格として「税込み 1100円」が表示される。
【0065】
つぎに、バーコードが読み取られた書籍が、顧客が購入する購入商品リストに追加される例を説明する。画面d050は、「買い物かごへ」ボタンを有する。例えば、受付部108は、「買い物かごへ」ボタンの押下を受け付ける。受付部108は、サーバ11へ書籍の登録依頼を送る。
【0066】
リスト生成部113は、登録依頼を受け付けると、顧客の購入商品リストに、書籍名コード、価格コードを関連付けて登録する。なお、リスト生成部113は、顧客の購入商品リストに、書籍名コード、書籍名、価格コード、および税抜価格を関連付けて登録してもよい。
【0067】
リスト生成部113は、登録後の購入商品リストを端末装置10へ送信する。端末装置10の表示制御部107は、登録後の購入商品リストを基に、購入商品リストを表示させる。
【0068】
図10は、購入商品リストの表示例を示す説明図である。表示制御部107は、購入商品リストを含む画面d060を表示させる。画面d060は、商品別に、登録された商品の名称、税引き価格の情報を含む。また、画面d060は、合計の商品点数、合計の税込みの価格などを含む。
【0069】
画面d060は、例えば、「商品追加」ボタン、「支払い」ボタン、「取引中止」ボタンを有する。受付部108は、「商品追加」ボタンの押下を受け付ける。表示制御部107は、受付部108によって「商品追加」ボタンの押下を受け付けると、バーコードを読み取り可能な位置を示す枠を含む画面d060を表示させる。また、受付部108が「取引中止」ボタンの押下を受け付けると、取引が終了する。
【0070】
受付部108は、「支払い」ボタンの押下を受け付けると、端末装置10は、決済の処理に移行する。
【0071】
つぎに、決済について説明する。受付部108は、「支払い」ボタンの押下を受け付けると、精算情報の要求をサーバ11へ送る。
【0072】
精算情報生成部114は、精算情報の要求を受け付けると、購入商品リストに基づいて精算情報を生成する。精算情報生成部114は、購入商品リストの全商品に対する税抜きの小計と税込みの合計金額である最終価格と、を算出する。購入商品リストに税抜価格が含まれていない場合、精算情報生成部114は、商品DB1000から、税抜価格を取得する。なお、購入商品リストに税抜価格が含まれている場合、精算情報生成部114は、購入商品リストから税抜価格を取得する。
【0073】
精算情報生成部114は、購入商品リストの全商品の税抜価格の合計値を小計として算出する。また、精算情報生成部114は、購入商品リストの全商品について税込価格を算出する。そして、精算情報生成部114は、全商品の税込価格の合計金額を最終価格として算出する。なお、税込価格の算出方法と最終価格の算出方法は、各商品の税抜価格に対して適切な税率が適用されていれば、特に限定されない。
【0074】
精算情報生成部114は、最終価格を基に精算情報を生成する。精算情報は、例えば、最終価格の情報を少なくとも含む。精算情報は、商品別の税抜価格、小計などの情報を含んでいてもよい。精算情報生成部114は、精算情報または精算情報を識別する識別子を端末装置10に対して送信する。
【0075】
端末装置10が、決済部(図示しない)を有する場合、決済部は、精算情報に基づいて、決済などを行う。例えば、端末装置10で行われる決済は、コード決済、ポイント決済、クレジット決済などである。また、端末装置10は、発行制御部(図示しない)を有し、発行制御部(図示しない)は、レシートを発行させてもよい。レシートは、紙のレシートであってもよいし、電子レシートであってもよく、特に限定されない。レシートには、購入した商品の情報(例えば、商品名や税抜価格)、税込価格、合計金額(最終価格)などの情報が含まれる。
【0076】
また、精算装置などに決済を行わせる場合、表示制御部107が、精算情報または精算情報を識別する識別子を表示させる。精算情報や識別子は1次元コードや2次元コードによって表されてもよい。そして、精算装置が、精算情報や精算情報を示す識別子を読み取る。または、精算装置は、近距離無線通信などによって端末装置10から精算情報や精算情報を示す識別子を読み取ってもよい。そして、精算装置が、決済を行ってもよい。精算装置における決済方法は特に限定されない。また、精算装置は発行制御部(図示しない)を有し、発行制御部(図示しない)は、レシートを発行させてもよい。
【0077】
また、商品のバーコードを読み取る際の画面例は、前述の例に限られない。
図11は、2つの枠を表示させる例を示す説明図である。表示制御部107は、2段のバーコードのそれぞれに対応する枠を含む画面d070を表示させてもよい。すなわち、画面d070は、2つの枠を含む。この2つの枠は、2段のバーコードを撮影させるための指標となる位置を示す。例えば、1つの枠は、上段のバーコードubを読み取り可能な位置を示してもよい。また、もう1つの枠は、下段のバーコードbbを読み取り可能な位置を示してもよい。図示しないが、例えば、画面d070は、2段のバーコードのいずれのバーコードを各枠に入れてほしいかを指示するメッセージを含んでもよい。
【0078】
また、表示制御部107は、認識されたバーコードが表すコードに、所定のコードが含まれる場合、2段のバーコードを認識させるための2つの枠を含む画面d070を表示させてもよい。具体的に、例えば、表示制御部107は、バーコードを読み取り可能な位置を示す1つの枠を含む画面を表示させておく。そして、表示制御部107は、認識されたバーコードが表すコードに、978または192が含まれる場合、2つの枠を含む画面d070を表示させる。
【0079】
また、表示制御部107は、1段のバーコードが認識され、認識されたバーコードが表すコードに、所定のコードが含まれる場合、2段のバーコードを両方撮影させる指示を表示させてもよい。
【0080】
図12は、2段のバーコードを両方撮影させる指示の表示例を示す説明図である。表示制御部107は、1段のバーコードが認識され、認識されたバーコードが表すコードに978が含まれているため、「2つのバーコードを両方撮影してください」という指示を画面d080に表示させている。なお、認識されたバーコードが上段のバーコードubであるため、表示制御部107は、上段のバーコードubの下に下段のバーコードbbを撮影させるような指示を画面d080に表示させる。例えば、
図12において、画面d080には、枠において上段のバーコードubの下に下矢印を含む。
【0081】
また、図示しないが、表示制御部107は、1段のバーコードが認識され、認識されたバーコードが表すコードに192が含まれている場合、「2つのバーコードを両方撮影してください」という指示を画面に表示させてもよい。そして、認識されたバーコードが下段のバーコードbbであるため、表示制御部107は、下段のバーコードbbの上に上段のバーコードubを撮影させるような指示を画面に表示させてもよい。例えば、図示しないが、画面は、枠において下段のバーコードbbの上に上矢印を含んでもよい。
【0082】
[書籍用のコードに関する動作例]
図13から
図15は、実施の形態1にかかる情報処理システム1の書籍用のコードに関する一動作例を示すフローチャートである。ここでは、動作の一例として、商品登録を行う例について説明する。
【0083】
取得部101は、商品のバーコードを含む画像を取得する(ステップS1001)。ステップS1001において、取得部101は、端末装置10の撮像装置によって商品のバーコードを含む画像を撮像させることにより、画像を取得してもよい。
【0084】
認識部102は、画像から、バーコードを認識する(ステップS1002)。つぎに、認識部102は、2段のバーコードかを判定する(ステップS1003)。ここで、2段のバーコードである場合(ステップS1003:Yes)、上下判定部104は、2段のバーコードの上下段を判定する(ステップS1004)。ステップS1004において、上下判定部104は、前述の上下段の判定方法の少なくともいずれかによって上下段の判定を行う。
【0085】
処理部105は、上段のバーコードと下段のバーコードの順に送信する(ステップS1005)。ステップS1005において、処理部105は、上段のバーコードが表すコードと、下段のバーコードが表すコードと、を識別可能に送信すればよい。ステップS1005においえ、処理部105は、上段のバーコードと下段のバーコードとの順に並べて送信してもよい。ここで、処理部105は、コードの一部を送信し、コードの一部を送信しなくてもよい。例えば、ステップS1005において、処理部105は、上段のバーコードが表すコードに含まれる書籍名コードと、下段のバーコードが表すコードに含まれる価格コードと、を識別可能に送信してもよい。なお、前述の通り、処理部105は、上段のバーコードを含む画像と、下段のバーコードを含む画像とを識別可能に送信してもよい。または、処理部105は、2段のバーコードを含む画像に、上段のバーコードと下段のバーコードとを識別可能な情報を付加して送信してもよい。
【0086】
特定部112は、書籍名および税抜価格を特定する(ステップS1006)。ステップS1006において、特定部112は、書籍名コードに基づいて、商品DB1000から書籍名を特定する。ステップS1006において、特定部112は、価格コードに基づいて、商品DB1000から税抜価格を特定する。また、ステップS1006において、特定部112は、税抜価格と税率情報とに基づいて、税込価格を算出してもよい。
【0087】
リスト生成部113は、特定された書籍名および税抜価格に基づいて、購入商品リストを更新する(ステップS1007)。リスト生成部113は、購入商品リストを送信する(ステップS1008)。そして、表示制御部107は、購入商品リストを表示させる(ステップS1009)。
【0088】
また、2段のバーコードでない場合(ステップS1003:No)、以降の処理は特に限定されない。
図14において2段のバーコードでない場合の処理について一例を挙げて説明する。2段のバーコードでない場合(ステップS1003:No)、認識部102は、バーコードが表す商品コードを送信する(ステップS1010)。そして、特定部112は、商品名および税抜価格を特定する(ステップS1011)。ステップS1011において、特定部112は、商品DB1000から、商品コードに対応付けられた商品名および税抜価格を特定する。なお、ステップS1011において、特定部112は、税抜価格と税率情報とに基づいて、税込価格を算出してもよい。
【0089】
そして、リスト生成部113は、商品名および税抜価格に基づいて、購入商品リストを更新する(ステップS1012)。リスト生成部113は、購入商品リストを送信する(ステップS1013)。そして、表示制御部107は、購入商品リストを表示させる(ステップS1014)。
【0090】
受付部108は、商品登録が完了したか否かを判定する(ステップS1015)。ステップS1015において、受付部108は、例えば、「支払い」ボタンが押されたかによって商品登録が完了したかを判定してもよい。商品登録が完了していない場合(ステップS1015:No)、情報処理システム1は、ステップS1001へ戻る。
【0091】
商品登録が完了した場合(ステップS1015:Yes)、受付部108は、精算情報の要求を送信する(ステップS1016)。リスト生成部113は、購入商品リストに基づいて、精算情報を生成する(ステップS1017)。リスト生成部113、端末装置10へ精算情報を送信する(ステップS1018)。
【0092】
表示制御部107は、決済用の画面を表示させる(ステップS1019)。決済部(図示しない)は、決済を行う(ステップS1020)。発行制御部(図示しない)は、レシートを発行させる(ステップS1021)。
【0093】
以上で、実施の形態1において、書籍用のJANコードの2段のバーコードを端末装置10で読み取る例の説明を終了する。
【0094】
[雑誌用のコード]
つぎに、雑誌用のードについて説明する。JANコードを用いる雑誌用のコードは、JANコードとアドオンコードとを含むため、他の商品のコードより長いコードである。雑誌用のコードは、これらを一連のコードとして読み出される必要がある。しかしながら、端末装置10の撮像装置によっては、長いバーコードを一度に認識できない場合がある。
【0095】
図16は、雑誌にバーコードが表示される例を示す説明図である。例えば、雑誌には、バーコードと、バーコードが表すコードの数字列と、が表示される。数字列は、例えば、バーコードの横に表示される。また、数字列は、JANコードとアドオンコードとのように2段に分けて表示される場合がある。
【0096】
例えば、雑誌用のコードは、18桁のコードである。雑誌用のコードは、雑誌用のJANコードと、アドオンコードと、を含む。
【0097】
雑誌用のJANコードは、13桁のコードである。雑誌用のJANコードは、定期刊行物用であることを表す3桁の定期刊行物コード、予備コード、5桁の雑誌コード、2桁の月号コード、1桁の年号コード、1桁のチェックデジットと、を含む。定期刊行物コードは、491である。予備コードは、例えば、雑誌コード5桁が満数になった場合などに利用される。5桁の雑誌コードは、雑誌を示すコードである。2桁の月号コードとは、雑誌の号数あるいは月号を表す。年号コードは、発行された西暦の下1桁を表す。チェックデジットは、所定の計算式で算出される数字である。チェックデジットについては特に説明しない。
【0098】
アドオンコードは、5桁のコードである。アドオンコードは、1桁の予備コードと、4桁の価格コードと、を含む。この予備コードは、用途が特に限定されていない。価格コードは、本体価格を示す。本体価格とは、税抜価格である。
【0099】
雑誌用のコードの場合、雑誌コードと価格コードとは、商品DB1000に記憶される。例えば、前述の商品DB1000は、雑誌コードと、雑誌名と、を対応付けて記憶する。さらに、前述の商品DB1000は、価格コードと、税抜価格と、の情報を対応付けて記憶する。また、月号、年号などの情報を用いる場合、商品DB1000は、雑誌コードと、年号コードと、月号コードと、雑誌名と、年号と、月号と、を対応付けて記憶する。
【0100】
取得部101は、撮像装置によって撮像された画像を取得する。取得部101による取得方法は、書籍用のコードで説明した通りである。
【0101】
認識部102は、端末装置10の撮像装置によって撮像された画像から、バーコードを認識する。より具体的に、例えば、認識部102は、画像に含まれるバーコードが表すコードを得る。ただし、認識部102は、バーコードが長いと、一度で認識できない場合がある。すなわち、認識部102は、バーコードが長いと、一度でバーコードが表すコードを得られない場合がある。具体的に、認識部102は、画像から、バーコードの前半部分を認識する。そして、認識部102は、バーコードの前半部分を認識した後に、バーコードの後半部分を認識する。バーコードのうち前半部分と後半部分との区切りは、特に限定されない。例えば、バーコードの前半部分としては、最初の13桁である雑誌用のJANコードを表す部分である。そして、例えば、バーコードの後半部分としては、後半の5桁であるアドオンコードを表す部分であってもよい。
【0102】
長さ判定部106は、認識されたバーコードが所定以上の長さかを判定する。ここで、長さ判定部106は、認識されたバーコードが所定以上の長さかを判定することにより、認識されたバーコードが雑誌用のバーコードかを判定することができる。例えば、長さ判定部106は、認識されたバーコードが所定以上の長さであると判定すると、認識されたバーコードが雑誌用のバーコードであると判定する。例えば、長さ判定部106は、認識されたバーコードが所定以上の長さでないと判定すると、認識されたバーコードが雑誌用のバーコードでないと判定する。
【0103】
長さ判定部106による判定方法は、特に限定されない。以下に複数の判定例について説明する。
【0104】
[長さの判定例1]
長さ判定部106は、認識されたバーコードが表すコードに、所定のコードが含まれているかによって、認識されたバーコードが所定以上の長さかを判定する。ここでの所定のコードは、例えば、定期刊行物コード(例えば、419)である。
【0105】
図17は、バーコードが認識される例を示す説明図である。
図17において、端末装置10には撮像装置が起動されている。このため、画面d110には、枠が表示されている。認識部102は、画像から、バーコードを認識する。
【0106】
具体的に、長さ判定部106は、認識されたバーコードが表すコードに含まれる先頭のコードが定期刊行物コードであれば、認識されたバーコードが所定以上の長さであると判定する。一方、長さ判定部106は、認識されたバーコードが表すコードに含まれる先頭のコードが定期刊行物コードでなければ、認識されたバーコードが所定以上の長さでないと判定する。
【0107】
[長さの判定例2]
長さ判定部106は、画像に含まれるバーコードが表すコードの桁数が所定数以上であるかによって認識されたバーコードが所定以上の長さかを判定する。一般的な商品コードは、13桁であるため、所定数は、例えば、14桁である。長さ判定部106は、画像に含まれるバーコードのバーの本数とスペースの数との少なくともいずれかに基づいて、コードの桁数が所定数以上であるかを判定してもよい。なお、2本のバーおよび2本のスペースで1文字が表される。長さ判定部106は、認識されたバーコードが表すコードが所定数以上であれば、認識されたバーコードが所定以上の長さであると判定する。一方、長さ判定部106は、認識されたバーコードが表すコードが所定数以上でなければ、認識されたバーコードが所定以上の長さであると判定する。
【0108】
[長さの判定例3]
判定例3では、バーコードと、バーコードとともに書籍に表示される数字列と、を用いて、認識されたバーコードが所定以上の長さであるかを判定する。識別部103は、認識されたバーコードとともに表示される数字列を識別する。具体的に、識別部103は、画像から、OCRによって、バーコードの横に表示された数字列を識別する。
【0109】
そして、長さ判定部106は、識別された数字列に基づいて、認識されたバーコードが所定以上の長さかを判定する。数字列に基づく判定方法について、複数の例を挙げて説明する。
【0110】
図18は、バーコードの横に表示された数字列による判定例を示す説明図である。画面d120の枠内には、バーコードとバーコードの横に数字列とが含まれる。
【0111】
長さ判定部106は、バーコードの横に数字列が表示されているかによって、認識されたバーコードが所定以上の長さかを判定してもよい。例えば、長さ判定部106は、バーコードの横に数字列が表示されていると識別された場合に、認識されたバーコードが所定以上の長さであると判定する。例えば、長さ判定部106は、バーコードの横に数字列が表示されていない場合に、認識されたバーコードが所定以上の長さでないと判定する。
【0112】
また、長さ判定部106は、識別された数字列の桁数が所定数以上であるかによって認識されたバーコードが所定以上の長さかを判定してもよい。所定数は、前述の通り、例えば、14桁である。長さ判定部106は、数字列の桁数が14桁以上であれば、認識されたバーコードが所定以上の長さであると判定する。一方、長さ判定部106は、数字列の桁絵数が14桁以上でなければ、認識されたバーコードが所定以上の長さでないと判定する。
【0113】
また、長さ判定部106は、バーコードが1段であり、識別された数字列が2段で表示されているかによって、認識されたバーコードが所定以上の長さかを判定してもよい。長さ判定部106は、バーコードが1段であり、識別された数字列が2段で表示されていれば、認識されたバーコードが所定以上の長さであると判定する。長さ判定部106は、識別された数字列が2段で表示されていなければ、認識されたバーコードが所定以上の長さでないと判定する。長さ判定部106は、識別された数字列が2段で表示されていても、バーコードが2段であれば、認識されたバーコードが所定以上の長さでないと判定する。なお、バーコードが2段の場合、前述の書籍用のバーコードである場合がある。
【0114】
[長さの判定例4]
長さ判定部106は、バーコードの形状によって、バーコードが所定以上の長さかを判定する。より具体的に、長さ判定部106は、バーコードの縦横比に基づいて、バーコードが所定以上の長さかを判定する。バーコードの縦とは、バーコードの高さである。具体的に、バーコードの縦とは、バーコードの各バーの高さである。バーコードの横とは、バーコード全体の幅である。縦横比とは、縦に対する横の長さの比率である。
【0115】
JANコードのバーコードの基準サイズは、横が37.29[mm]であり、縦が22.86[mm]である(非特許文献1参照)。バーコードの下に表示される商品コードを含めると、縦は、25.93[mm]である(非特許文献1参照)。また、JANコードのバーコードは、基準サイズの0.8倍から2.0倍のサイズまで読み取られる(非特許文献1参照)。このため、数字(商品コード)を含めない場合、一般的なJANコードの縦横比は、約0.6倍である。
【0116】
一方、雑誌用のバーコードについては、横が約50[mm]であり、縦は、読取のために約12[mm]以上必要である(非特許文献2参照。)。縦は、製本時に約15[mm]以上必要である。このため、雑誌用のバーコードの縦横比は、約0.24倍から0.3倍程度である。
【0117】
そこで、例えば、長さ判定部106は、バーコードの縦横比が0.5倍以下であるかによって、所定以上の長さかを判定してもよい。例えば、長さ判定部106は、バーコードの縦横比が0.5倍以下であれば、所定以上の長さであると判定する。一方、長さ判定部106は、バーコードの縦横比が0.5倍以下でなければ、所定以上の長さでないと判定する。なお、閾値である0.5倍は、一例であり、特に限定されない。閾値は、店舗で取り扱う雑誌のバーコードの縦横比に応じて決定されればよい。
【0118】
図19は、縦横比による判定例を示す説明図である。画面d130の枠には、撮像装置を介してバーコードが表示される。
【0119】
例えば、長さ判定部106は、バーコードの形状から、バーコードの縦横比を算出する。そして、長さ判定部106は、バーコードの縦横比が0.5倍以下であれば、バーコードが所定以上の長さであると判定する。一方、長さ判定部106は、バーコードの縦横比が0.5倍以下であれば、バーコードが所定以上の長さであると判定する。
【0120】
以上で、長さ判定部106による判定方法の説明を終了する。なお、長さ判定部106による判定方法は、組み合わせられてもよい。
【0121】
つぎに、端末装置10の処理部105は、長さ判定部106の判定結果に基づいて処理を実施する。具体的に、処理部105は、認識されたバーコードが所定以上の長さの場合、複数の処理を行う。複数の処理とは2以上の処理である。例えば、複数の処理は、例えば認識されたバーコードの情報を分割して送信する処理である。具体的に、例えば、処理部105は、認識されたバーコードの前半部分が表すコードと、当該コードに続きがあることを示す情報と、を送信する。例えば、処理部105は、バーコードの前半部分が表すコードとコードに続きがあることを示す情報と、を送信した後に、新たに認識されたバーコードの後半部分が表すコードを送信する。より具体的に、処理部105は、例えば、認識されたバーコードの前半部分が表すコードのうちのJANコードと、当該コードに続きがあることを示す情報と、をサーバ11へ送信する。そして、バーコードの後半部分が表すアドオンコードが認識されると、処理部105は、バーコードの後半部分が表すコードのうち、アドオンコードをサーバ11へ送信する。
【0122】
例えば、処理部105は、前半部分のバーコードを含む画像と、前半部分のバーコードが表すコードに続きがあることを示す情報と、を送信してもよい。そして、処理部105は、認識部102によって後から認識された後半部分のバーコードを含む画像を送信してもよい。
【0123】
また、サーバ11の処理部111は、認識されたバーコードが所定以上の長さの場合、複数の処理を行う。ここでの複数の処理は、バーコードが表すコードに基づいて商品(雑誌)の情報を特定する処理である。例えば、複数の処理とは、異なる複数の商品の情報を複数回に分けて特定する処理である。より具体的に、例えば、処理部111の特定部112は、受信したコードに基づいて、各雑誌の情報を順に特定する。雑誌の情報とは、雑誌名、雑誌の月号および雑誌の年号の少なくともいずれかと、価格(税抜き)とである。
【0124】
ここで、例えば、雑誌コードと、月号コードと、価格コードが用いられ、他のコードが用いられない場合を例に挙げて説明する。処理部105は、雑誌コードおよび月号コードと、価格コードを後から送信することを示す情報と、をサーバ11へ送信する。そして、処理部105は、アドオンコードが認識されると、価格コードをサーバ11へ送信する。
【0125】
そして、例えば、サーバ11の特定部112は、雑誌コードと、月号コードと、価格コードと、に基づいて、雑誌名と月号と税抜価格とを特定する。具体的に、例えば、特定部112は、雑誌コードおよび月号コードに基づいて、商品DB1000から、雑誌名および月号を特定する。特定部112は、価格コードに基づいて、商品DB1000から、税抜価格を特定する。特定部112は、特定した税抜価格によって税込価格も算出してもよい。例えば、特定部112は、特定した価格と税率情報が示す税率によって税込価格を算出する。そして、特定部112は、雑誌名(商品名)および月号と、税抜価格と、税込価格と、を端末装置10へ送る。
【0126】
図20は、雑誌名と月号と税抜価格と税込価格との表示例を示す説明図である。表示制御部107は、雑誌名(商品名)および月号と、税抜価格と、税込価格と、を画面d140に表示させる。
図20において、画面d140には、雑誌名として、「XYYX」が表示されている。また、画面d140には、月号として「5月号」が表示されている。また、画面d140には、税込価格として「税込 880円」、税抜価格として「税抜 800円」が表示されている。
【0127】
また、画面d140は、例えば、「買い物かごへ」ボタンを有する。例えば、受付部108は、「買い物かごへ」ボタンの押下を受け付ける。受付部108は、サーバ11へ雑誌の登録依頼を送る。
【0128】
リスト生成部113は、登録依頼を受け付けると、顧客の購入商品リストに、雑誌コード、月号コード、価格コードを関連付けて登録する。なお、リスト生成部113は、顧客の購入商品リストに、雑誌コード、雑誌名、月号コード、月号、価格コード、および税抜価格を関連付けて登録してもよい。
【0129】
リスト生成部113は、登録後の購入商品リストまたは購入商品リストを識別する識別子を端末装置10へ送信する。端末装置10の表示制御部107は、登録後の購入商品リストまたは識別子を基に、購入商品リストを表示させる。
【0130】
図21は、購入商品リストの表示例を示す説明図である。表示制御部107は、購入商品リストを含む画面d150を表示させる。画面d150は、商品別に、登録された商品の名称、税抜価格の情報を含む。また、画面d150は、合計の商品点数、合計の税込価格などを含む。
【0131】
図21において、商品名として、雑誌名である「XYYX」が表示されている。さらに、画面d150には、商品名とともに、号数である「5月号」が表示されている。また、画面d150には、税抜価格として、「800円」が表示されていえる。
【0132】
登録された商品が雑誌の場合、画面d150には、雑誌であることを示す情報(図示しない)が表示されてもよい。
【0133】
図10に示す画面d060と同様に、画面d150は、例えば、「商品追加」ボタン、「支払い」ボタン、「取引中止」ボタンを有する。受付部108は、「商品追加」ボタンの押下を受け付ける。表示制御部107は、受付部108によって「商品追加」ボタンの押下を受け付けると、バーコードを読み取り可能な枠を含む画面d150を表示させる。また、受付部108が「取引中止」ボタンの押下を受け付けると、取引が終了する。
【0134】
受付部108は、「支払い」ボタンの押下を受け付けると、端末装置10は、決済の処理に移行する。決済については、書籍の決済と同様であるため、詳細な説明を省略する。
【0135】
[雑誌用のコードに関する動作例]
図22は、実施の形態1にかかる情報処理システム1の雑誌用のコードに関する一動作例を示すフローチャートである。ここでは、動作の一例として、雑誌の商品登録を行う例について説明する。取得部101は、商品のバーコードを含む画像を取得する(ステップS1101)。つぎに、認識部102は、画像から、バーコードを認識する(ステップS1102)。長さ判定部106は、認識されたバーコードが所定以上の長さかを判定する(ステップS1103)。ステップS1103において、長さ判定部106による判定方法は、前述の通り、特に限定されない。
【0136】
所定以上の長さであると判定された場合(ステップS1103:Yes)、処理部105は、コードを分割して処理する(ステップS1104)。ステップS1104において、処理部105は、バーコードから、先に認識された前半部分が表すコードと、コードに続きがあることを示す情報と、をサーバ11へ送信する。そして、ステップS1104において、処理部105は、後から認識された後半部分が表すコードを送信する。なお、処理部105は、後半部分が表すコードを送信する際に、前半部分の続きであることを示す情報をともに送信してもよい。より具体的に、例えば、前半部分がJANコードを表し、後半部分がアドオンコードを表す場合、ステップS1104において、処理部105は、バーコードから、先に認識された前半部分が示すJANコードと、価格コードを後から送ることを示す情報と、をサーバ11へ送信する。後半部分が認識されると、処理部105は、後半部分が表すアドオンコードを送信する。なお、ステップS1103において、処理部105は、JANコードのうち、商品登録や決済などの会計に必要なコードを送信してもよい。例えば、処理部105は、定期刊行物コードを送信しなくてもよい。また、処理部105は、アドオンコードのうち価格コードを送信してもよい。
【0137】
また、特定部112は、雑誌名および号数と、税抜価格とを特定する(ステップS1105)。ステップS1105において、特定部112は、JANコードに含まれる雑誌コードおよび月号コードに基づいて、商品DB1000から、雑誌名および月号を特定する。そして、ステップS1105において、特定部112は、アドオンコードに含まれる価格コードに基づいて、商品DB1000から、税抜価格を特定する。
【0138】
そして、リスト生成部113は、雑誌名および月号と税抜価格に基づいて、購入商品リストを更新する(ステップS1106)。そして、リスト生成部113は、更新後の購入商品リストを端末装置10へ送信する(ステップS1107)。そして、表示制御部107は、購入商品リストを表示させる(ステップS1108)。
【0139】
また、情報処理システム1は、ステップS1108のつぎの処理として、
図15に示すステップS1015からステップS1021を行う。ステップS1108のつぎに、情報処理システム1は、
図15に示すステップS1015へ移行する。また、
図15に示すステップS1015のNoの場合、情報処理システム1は、ステップS1101へ移行する。
【0140】
また、所定以上の長さでないと判定された場合(ステップS1103:No)、情報処理システム1は、書籍用のバーコードのステップS1003のNoの場合と同様であってよい。すなわち、所定以上の長さでないと判定された場合(ステップS1103:No)、情報処理システム1は、
図14に示すステップS1010へ移行する。
【0141】
以上、実施の形態1において、情報処理システム1は、例えば、端末装置10の撮像装置によって撮像された画像から、2段のバーコードを認識する。情報処理システム1は、2段のバーコードの上下段を判定する。そして、情報処理システム1は、上下段が判定された2段のバーコードを所定の順で処理する。これにより、情報処理システム1は、端末装置10を用いる場合であっても2段のバーコードを適切に読み取ることができる。
【0142】
情報処理システム1は、2段のバーコードのそれぞれが表すコードに、所定のコードが含まれるかに基づいて、上下段を判定する。これにより、情報処理システム1は、2段のバーコードの上下段の判定精度の向上を図ることができる。
【0143】
また、情報処理システム1は、画像から、2段のバーコードの周囲にある各数字列を識別する。数字列は、例えば、2段のバーコードの上下にある場合がある。情報処理システム1は、2段のバーコードと、識別された各数字列と、の位置関係に基づいて、上下段を判定する。これにより、情報処理システム1は、2段のバーコードの上下段の判定精度の向上を図ることができる。
【0144】
また、情報処理システム1は、画像から、文字と数字の少なくともいずれかを識別する。情報処理システム1は、識別された文字と数字の少なくともいずれかの向きに基づいて、上下段を判定する。これにより、情報処理システム1は、2段のバーコードの上下段の判定精度の向上を図ることができる。
【0145】
前述の所定の順は、上段のバーコード、下段のバーコードの順である。これにより、情報処理システム1は、商品DB1000から、書籍名、税抜価格を適切に特定することができる。
【0146】
また、撮像された画像が、上段のバーコードを含む画像と下段のバーコードを含む画像との2つに分割されてもよい。情報処理システム1は、撮像された画像のうち、上段のバーコードを含む画像と、画像のうちの下段のバーコードを含む画像と、を識別可能に送信してもよい。そして、情報処理システム1は、上段のバーコードを含む画像と、画像のうちの下段のバーコードを含む画像と、の順で処理する。すなわち、情報処理システム1は、上段のバーコードを含む画像に基づいて、書籍名を特定し、画像のうちの下段のバーコードを含む画像に基づいて、税抜価格を特定する。これにより、情報処理システム1は、商品DB1000から、書籍名、税抜価格などの書籍の情報を適切に特定することができる。
【0147】
顧客は、端末装置10に表示された読み取り用の枠に対して、上段のバーコードが上、下段のバーコードが下となるような向きに書籍の2段バーコードを読み取りさせる場合がある。そこで、撮像された画像に上下が定義されてあり、情報処理システム1は、画像に定義された上下に基づいて、認識された2段のバーコードの上下段を判定してもよい。これにより、情報処理システム1は、2段のバーコードをより適切に読み取ることができる。
【0148】
情報処理システム1は、画像に1段のバーコードが認識された場合に、1段のバーコードが表すコードが、所定のコードを含む場合、2段のバーコードを撮像装置に撮像させる指示を表示させる。これにより、情報処理システム1は、端末装置10を用いる場合であっても書籍の2段のバーコードをより適切に読み取ることができる。
【0149】
情報処理システム1は、画像に2段のバーコードが含まれると認識された場合、2つの枠を表示させる。情報処理システム1は、2つの枠内の2段のバーコードを含む画像から、2段のバーコードを認識する。これにより、情報処理システム1は、より精度よくバーコードを読み取ることができる。
【0150】
また、以上、実施の形態1において、情報処理システム1は、端末装置10の撮像装置によって撮像された画像から、バーコードを認識する。情報処理システム1は、認識されたバーコードが所定以上の長さかを判定する。情報処理システム1は、認識されたバーコードが所定以上の長さの場合、バーコードに対応する複数の処理を行う。これにより、情報処理システム1は、端末装置10を用いる場合であっても、雑誌用の長いバーコードから適切にコードを取得することができる。
【0151】
情報処理システム1は、認識されたバーコードが表すコードが所定のコードを含むかによって認識されたバーコードが所定以上の長さかを判定する。これにより、情報処理システム1は、端末装置10を用いる場合であっても、雑誌用の長いバーコードから適切にコードを取得することができる。
【0152】
情報処理システム1は、認識されたバーコードが表すコードの桁数が所定数以上かによって認識されたバーコードが所定以上の長さかを判定する。これにより、情報処理システム1は、雑誌用のバーコードであることをより精度よく判定することができる。
【0153】
情報処理システム1は、バーコードとともに表示される数字列を識別する。情報処理システム1は、識別された数字列に基づいて、認識されたバーコードが所定以上の長さかを判定する。これにより、情報処理システム1は、雑誌用のバーコードであることをより精度よく判定することができる。
【0154】
情報処理システム1は、認識されたバーコードの形状によって認識されたバーコードが所定以上の長さかを判定する。これにより、情報処理システム1は、雑誌用のバーコードであることをより精度よく判定することができる。
【0155】
情報処理システム1は、認識されたバーコードの縦横比が所定の条件を満たすかによって認識されたバーコードが所定以上の長さかを判定する。これにより、情報処理システム1は、雑誌用のバーコードであることをより精度よく判定することができる。
【0156】
情報処理システム1は、すでに認識されたバーコードが表すコードと、当該コードに続きがあることを示す情報と、を送信する。そして、情報処理システム1は、バーコードの続きで後から認識されたバーコードが表すコードを送信する。これにより、情報処理システム1は、雑誌名、価格などの雑誌の情報を適切に特定させることができる。
【0157】
実施の形態1については上述した例に限られず、種々変更可能である。情報処理システム1の構成は特に限定されない。情報処理システム1は1台の装置によって実現されても、機能もしくはデータベース別に異なる装置によって実現されてもよい。情報処理システム1は、基幹サーバ、データベースサーバ、PLU(Price Look Up)サーバ、POS(Point of Sales)サーバ、及び、アプリケーションサーバなどのサーバの組み合わせにより構成されてもよい。例えば、PLUサーバとアプリケーションサーバは、リスト生成部113の実現に用いられてもよい。各種データベースを管理するサーバは、例えば、データベースサーバとして機能してもよい。端末装置10へ画面を表示させるサーバは、アプリケーションサーバ、POSサーバ、または、基幹サーバの少なくともいずれかであってもよい。各サーバは、例えば、通信ネットワーク12等を介して、それぞれが割り当てられた処理に用いる情報を受け渡す。ただし、情報処理システム1を構成するサーバの名称はこれらに限られるものではない。また、情報処理システム1は、これらのサーバのいくつかで構成されてもよい。
【0158】
また、例えば、情報処理システム1が、商品を検索するために、撮像装置を介してバーコードを読み取る商品検索システムとして用いられる場合、情報処理システム1は、リスト生成部113と精算情報生成部114とを有していなくてもよい。
【0159】
また、各画面において、各ボタンは、GUI(Graphic User Interface)のボタンであるが、ボタンの種類は特に限定されない。また、各画面において、各ボタンの位置、各表示欄の位置は、特に限定されない。各画面において、図示しないボタン、情報、表示欄などが追加されてもよい。また、画面の背景色などが、変更されてもよい。
【0160】
つぎに、実施の形態1の変形例について説明する。
【0161】
[実施の形態1の変形例1]
実施の形態1では、サーバ11のリスト生成部113が、購入商品リストを更新し、更新後の購入商品リストを端末装置10に送信する。そして、端末装置10の表示制御部107が、受信した購入商品リストを表示する。
【0162】
変形例1において、サーバ11のリスト生成部113が、購入商品リストを識別する識別子を端末装置10に送信してもよい。そして、端末装置10の表示制御部107が、購入商品リストを識別する識別子に対応する購入商品リストを購入商品リストDB1001から取得する。そして、端末装置10の表示制御部107が、読みだした購入商品リストを表示させてもよい。変形例1については、サーバ11が、データベースサーバと、POSサーバと、のように、異なる複数のサーバ11に分かれている際に有用である。
【0163】
[実施の形態1の変形例2]
実施の形態1では、サーバ11の精算情報生成部114が、税込価格の合計金額(最終価格)を算出し、最終価格を含む精算情報を端末装置10に送信する。そして、端末装置10の決済部(図示しない)もしくは精算装置(図示しない)の決済部は、受信した精算情報に基づいて、決済する。
【0164】
変形例2において、精算情報生成部114は、精算情報を記憶部109に記憶させ、精算情報を送信する代わりに、精算情報を識別する識別子を送信してもよい。そして、端末装置10の決済部(図示しない)や精算装置(図示しない)の決済部は、受信した識別子に対応する精算情報をサーバ11の記憶部109から取得してもよい。そして、端末装置10の決済部(図示しない)や精算装置(図示しない)の決済部は、取得した精算情報に基づいて、決済する。変形例2については、サーバ11が、データベースサーバと、POSサーバと、のように、異なる複数のサーバ11に分かれている際に有用である。
【0165】
[実施の形態1の変形例3]
実施の形態1では、サーバ11が精算情報生成部114を有す例を説明した。この例の場合、サーバ11の精算情報生成部114が、税込価格の合計金額(最終価格)を算出し、最終価格を含む精算情報を精算装置に送信する。そして、端末装置10の決済部(図示しない)や精算装置(図示しない)の決済部は、サーバ11が算出した最終価格を基に決済する。
【0166】
変形例3において、端末装置10や精算装置が、精算情報生成部114を有していてもよい。すなわち、端末装置10の精算情報生成部114や精算装置の精算情報生成部114が、購入商品リストに基づいて、消費税を含む税込価格の合計金額(最終価格)を算出してもよい。
【0167】
[実施の形態1の変形例4]
実施の形態1では、端末装置10が表示制御部107を備え、表示制御部107は、端末装置10の表示装置に各画面を表示させる制御を行う例を説明した。例えば、サーバ11が、表示制御部107を備えてもよい。このような場合、サーバ11の表示制御部107が、端末装置10の表示装置に表示させる画面の情報等を生成し、端末装置10は、画面の情報に基づいて、当該画面を表示装置に表示させればよい。
【0168】
[実施の形態1の変形例5]
実施の形態1では、複数段のバーコードの例として、書籍用の2段のバーコードを例に挙げたが、これに限られない。例えば、2段のバーコードは、書籍用に限られず、他の用途の2段のバーコードであってもよい。また、複数段のバーコードは、2段に限られない。例えば、3段以上の複数段のバーコードがある場合、情報処理システム1は、例えば、端末装置10の撮像装置によって撮像された画像から、認識された複数段のバーコードの上下関係を判定する。そして、情報処理システム1は、上下関係が判定された複数段のバーコードを所定の順で処理すればよい。所定の順は、複数段のバーコードが表すコードの体系で定義された順である。
【0169】
また、実施の形態1では、長いバーコードの例として、雑誌用のバーコードを例に挙げてが、これに限られない。
【0170】
[実施の形態1の変形例6]
実施の形態1では、商品DB1000から、書籍名コードに対応する書籍名、および価格コードに対応する税抜価格を特定する例を説明した。この例に限らず、特定部112は、商品DB1000において、書籍名コードに、書籍名以外の書籍に関する情報が対応付けられている場合、書籍名コードに対応付けられた情報を特定してもよい。例えば、書籍に関する情報としては、書籍の著者名、書籍の特徴などが挙げられる。
【0171】
また、実施の形態1では、商品DB1000から、雑誌コードに対応する雑誌名、および価格コードに対応する税抜価格を特定する例を説明した。この例に限らず、特定部112は、商品DB1000において、雑誌コードに、雑誌名以外の雑誌に関する情報が対応付けられている場合、雑誌コードに対応付けられた情報を特定してもよい。雑誌に関する情報としては、雑誌の特徴などが挙げられる。
【0172】
[実施の形態1の変形例7]
実施の形態1では、処理部105は、バーコードの前半部分が表すコードと続きがあることを表す情報とを送信した後に、バーコードの後半部分が表すコードを送信する例を説明した。処理部105は、認識部102によってバーコードの前半部分と後半部分との両方が認識された後に、前半部分が表すコードと後半部分が表すコードとの両方を一度に送信してもよい。
【0173】
また、処理部105は、2段のバーコードを含む画像を送信する場合、雑誌用のJANコードを含む部分と、アドオンコードを含む部分とが識別可能な情報を画像に付加して送信してもよい。
【0174】
以上で、実施の形態1にかかる変形例の説明を終了する。
【0175】
(実施の形態2)
実施の形態2では、本開示の情報処理システムの基本機能について説明する。
図23は、実施の形態2にかかる情報処理システムの一構成例を示すブロック図である。情報処理システム2は、認識部201と、判定部202と、処理部203と、を有する。
【0176】
認識部201は、実施の形態1で説明した認識部201の基本機能となる。また、判定部202は、実施の形態1で説明した長さ判定部106の基本機能となる。処理部203は、実施の形態1で説明した端末装置10の処理部105またはサーバ11の処理部111の基本機能となる。
【0177】
認識部201は、端末装置の撮像装置によって撮像された画像から、各バーコードを認識する。認識部201による認識方法は、既存の技術を用いればよく、特に限定されない。端末装置は、実施の形態1で説明した端末装置10のように、スマートフォン、タブレット型の装置、ショッピングカートなどの移動体に取り付けられた装置であってもよい。
【0178】
判定部202は、認識されたバーコードが所定以上の長さかを判定する。実施の形態1で説明した通り、判定部202による判定方法は、特に限定されない。ここで、所定以上の長さのバーコードの種類は、特に限定されない。例えば、所定以上の長さのバーコードは、雑誌用のバーコードであってもよい。
【0179】
処理部203は、判定部202による判定結果に基づいて処理する。処理部203は、認識されたバーコードが所定以上の長さの場合、複数の処理を行う。複数の処理とは2以上の処理である。複数の処理は、バーコードに対応する複数の処理である。複数の処理とは、例えば、バーコードの情報を分割して送信する処理である。例えば、複数の処理とは、バーコードが表すコードを複数回に分けて送信する処理である。または、複数の処理とは、バーコードを含む画像を複数回に分けて送信する処理である。処理部203が、バーコードまたはバーコードが表すコード、バーコードを含む画像をサーバなどに送信する場合、認識されたバーコードが所定以上の長さの場合に、複数回の送信を行ってもよい。
【0180】
複数の処理とは、例えば、異なる複数の商品の情報を複数回に分けて特定する処理である。具体的に、例えば、処理部203は、バーコードに対応するコードのうち、雑誌コード、年号コードおよび月号コードの少なくともいずれかのコードに対応する雑誌の情報を特定する。雑誌コードに対応する雑誌の情報は、雑誌名であり、年号コードに対応する雑誌の情報は、雑誌の年号であり、月号コードに対応する雑誌の情報は、雑誌の月号である。そして、例えば、処理部203は、バーコードに対応するコードのうち価格コードが示す価格を特定する。
【0181】
[実施の形態2にかかる動作例]
図24は、実施の形態2にかかる情報処理システム2の一動作例を示すフローチャートである。認識部201は、端末装置の撮像装置によって撮像された画像から、バーコードを認識する(ステップS201)。判定部202は、認識されたバーコードが所定以上の長さかを判定する(ステップS202)。処理部203は、認識されたバーコードが所定以上の長さの場合、複数の処理を行う(ステップS203)。複数の処理とは、例えば、バーコードが表すコードを複数回に分けて送信する処理である。ステップS203において、例えば、処理部203は、長いバーコードのうち認識済みのバーコードが表すコードを順に送信してもよい。または、複数の処理とは、例えば、商品の異なる情報を複数に分けて特定する処理である。ステップS203において、例えば、処理部203は、認識されたバーコードのうちの雑誌コードに基づいて、雑誌名を特定してもよい。そして、処理部203は、認識されたバーコードのうちの価格コードに基づいて、価格を特定してもよい。
【0182】
以上、実施の形態2において、情報処理システム2は、端末装置の撮像装置によって撮像された画像から、バーコードを認識する。そして、情報処理システム2は、バーコードが所定の長さ以上かを判定する。そして、情報処理システム2は、所定の長さ以上の場合、バーコードに対応する処理を分割した複数の処理を行う。これにより、情報処理システム2は、商品に表示されたバーコードから適切にコードを取得することができる。
【0183】
実施の形態2については上述した例に限られず、種々変更可能である。情報処理システム2の構成は特に限定されない。情報処理システム2は1台の装置によって実現されてもよい。また、情報処理システム2は、異なる複数の装置によって実現されてもよい。例えば、情報処理システム2は、機能もしくはデータベース別に異なる複数の装置によって実現されてもよい。
【0184】
例えば、認識部201、判定部202、および処理部203は、1台の装置によって実現されてもよい。また、例えば、認識部201および判定部202は1台の装置によって実現され、処理部203は別の1台の装置によって実現されてもよい。また、例えば、認識部201は1台の装置によって実現され、判定部202および処理部203は別の1台の装置によって実現されてもよい。また、例えば、認識部201と、判定部202と、処理部203とは、それぞれ異なる装置によって実現されてもよい。
【0185】
また、各実施形態と各実施形態で説明した変形例は組み合わせて用いられてもよい。
【0186】
(コンピュータ装置)
つぎに、実施の形態1で説明した端末装置、サーバなどの各装置をコンピュータ装置で実現した場合のハードウェア構成例について説明する。
図25は、コンピュータ装置のハードウェア構成例を示す説明図である。例えば、実施の形態1で説明した端末装置やサーバなどの装置の一部又は全部は、例えば
図25に示すようなコンピュータ装置30とプログラムとの任意の組み合わせを用いて実現することも可能である。
【0187】
コンピュータ装置30は、例えば、プロセッサ301と、ROM302と、RAM303と、記憶装置304と、通信インターフェース305と、入出力インターフェース306と、を有する。各構成部は、バス307を介してそれぞれ接続される。
【0188】
プロセッサ301は、コンピュータ装置30の全体を制御する。プロセッサ301は、例えば、CPU(Central Processing Unit)、DSP(Digital Signal Processor)などが挙げられる。プロセッサ301は、複数であってもよい。コンピュータ装置30は、記憶部として、ROM302、RAM303および記憶装置304などを有する。記憶装置304は、例えば、フラッシュメモリなどの半導体メモリ、HDD、SSDなどが挙げられる。例えば、記憶装置304はOS(Operating System)のプログラム、アプリケーションプログラム、各実施の形態にかかるプログラムなどを記憶する。または、ROM302は、アプリケーションプログラム、各実施の形態にかかるプログラムなどを記憶する。そして、RAM303は、プロセッサ301のワークエリアとして使用される。
【0189】
また、プロセッサ301は、記憶装置304、ROM302などに記憶されたプログラムをロードする。そして、プロセッサ301は、プログラムにコーディングされている各処理を実行する。また、プロセッサ301は、通信ネットワーク32を介して各種プログラムをダウンロードしてもよい。また、プロセッサ301は、コンピュータ装置30の一部または全部として機能する。そして、プロセッサ301は、プログラムに基づいて図示したフローチャートにおける処理または命令を実行してもよい。
【0190】
通信インターフェース305は、無線または有線の通信回線を通じて、LAN(Local Area Network)、WAN(Wide Area Network)などの通信ネットワーク32に接続される。これにより、コンピュータ装置30は、通信ネットワーク32を介して外部の装置や外部のコンピュータに接続される。通信インターフェース305は、通信ネットワーク32とコンピュータ装置30の内部とのインターフェースを司る。そして、通信インターフェース305は、外部の装置や外部のコンピュータからのデータの入出力を制御する。
【0191】
また、入出力インターフェース306は、入力装置、出力装置、および入出力装置の少なくともいずれかに接続される。接続方法は、無線であってもよいし、有線であってもよい。入力装置は、例えば、キーボード、マウス、マイクなどが挙げられる。出力装置は、例えば、表示装置、点灯装置、音声を出力するスピーカなどが挙げられる。また、入出力装置は、タッチパネルディスプレイなどが挙げられる。なお、入力装置、出力装置、および入出力装置などは、コンピュータ装置30に内蔵されていてもよいし、外付けであってもよい。
【0192】
コンピュータ装置30のハードウェア構成は一例である。コンピュータ装置30は、
図25に示す一部の構成要素を有していてもよい。コンピュータ装置30は、
図25に示す以外の構成要素を有していてもよい。例えば、コンピュータ装置30は、ドライブ装置などを有してもよい。そして、プロセッサ301は、ドライブ装置などに装着された記録媒体に記憶されたプログラムやデータをRAM303に読み出してもよい。記録媒体としては、光ディスク、フレキシブルディスク、磁気光ディスク、USB(Universal Serial Bus)メモリなどが挙げられる。また、前述の通り、例えば、コンピュータ装置30は、キーボードやマウスなどの入力装置を有してもよい。コンピュータ装置30は、ディスプレイなどの出力装置を有していてもよい。また、コンピュータ装置30は、PC(Personal Computer)のように入力装置と出力装置と、入出力装置をそれぞれ有してもよい。
【0193】
コンピュータ装置30は、バーコード等を読み取り可能な撮像装置を有してもよい。また、コンピュータ装置30は、前述のように、近距離無線通信などを行うための読取装置を有してもよい。
【0194】
コンピュータ装置30は、図示しない各種センサーを有してもよい。センサーの種類は特に限定されない。センサーは、例えば、加速度センサー、ジャイロセンサー、磁気センサー、GPS(Global Positioning System)、センサーなどが挙げられる。また、センサーは、指紋センサー、LiDAR(Light,Detection and Ranging)、近接センサー、環境光センサーなどが挙げられる。
【0195】
以上で、各装置のハードウェア構成の説明を終了する。また、各装置の実現方法には、様々な変形例がある。例えば、システムは、構成要素ごとにそれぞれ異なるコンピュータとプログラムとの任意の組み合わせにより実現されてもよい。また、各装置が備える複数の構成要素が、一つのコンピュータとプログラムとの任意の組み合わせにより実現されてもよい。
【0196】
また、システムの各構成要素の一部または全部は、特定用途向けの回路で実現されてもよい。また、システムの一部または全部は、FPGA(Field Programmable Gate Array)のようなプロセッサなどを含む汎用の回路によって実現されてもよい。また、システムの一部または全部は、特定用途向けの回路や汎用の回路などの組み合わせによって実現されてもよい。また、これらの回路は、単一の集積回路であってもよい。または、これらの回路は、複数の集積回路に分割されてもよい。そして、複数の集積回路は、バスなどを介して接続されることにより構成されてもよい。
【0197】
また、各装置の各構成要素の一部または全部が複数のコンピュータや回路などにより実現される場合、複数のコンピュータや回路などは、集中配置されてもよいし、分散配置されてもよい。
【0198】
各実施の形態で説明した方法は、端末装置やサーバが実行することにより実現される。また、購入支援方法は、予め用意されたプログラムを端末装置やサーバなどのコンピュータが実行することにより実現される。各実施の形態で説明したプログラムは、HDD、SSD、フレキシブルディスク、光ディスク、フレキシブルディスク、磁気光ディスク、USBメモリなどのコンピュータで読み取り可能な記録媒体に記録される。そして、プログラムは、コンピュータによって記録媒体から読み出されることによって実行される。また、プログラムは、通信ネットワーク32を介して配布されてもよい。
【0199】
以上説明した、各実施の形態におけるシステムの各構成要素は、コンピュータ装置のように、その機能をハードウェア的に実現されてもよい。または、各構成要素は、プログラム制御に基づくコンピュータ装置、ファームウェアで実現されてもよい。
【0200】
以上、各実施の形態を参照して本開示を説明したが、本開示は上記実施の形態に限定されるものではない。各本開示の構成や詳細には、本開示のスコープ内で当業者が把握し得る様々な変更を適用した実施の形態を含み得る。本開示は、本明細書に記載された事項を必要に応じて適宜に組み合わせ、または置換した実施の形態を含み得る。例えば、特定の実施の形態を用いて説明された事項は、矛盾を生じない範囲において、他の実施の形態に対しても適用され得る。例えば、複数の動作をフローチャートの形式で順番に記載してあるが、その記載の順番は複数の動作を実行する順番を限定するものではない。このため、各実施の形態を実施するときには、その複数の動作の順番を内容的に支障しない範囲で変更することができる。
【0201】
上記の実施の形態の一部または全部は、以下の付記のようにも記載されることができる。ただし、上記の実施の形態の一部または全部は、以下に限られない。
【0202】
(付記1)
端末装置の撮像装置によって撮像された画像から、バーコードを認識する認識手段と、
認識された前記バーコードが所定以上の長さかを判定する判定手段と、
認識された前記バーコードが所定以上の長さの場合、前記バーコードに対応する複数の処理を行う処理手段と、
を備える情報処理システム。
(付記2)
前記判定手段は、認識された前記バーコードが表すコードが所定のコードを含むかによって認識された前記バーコードが所定以上の長さかを判定する、
付記1に記載の情報処理システム。
(付記3)
前記判定手段は、認識された前記バーコードが表すコードの桁数が所定数以上かによって認識された前記バーコードが所定以上の長さかを判定する、
付記1に記載の情報処理システム。
(付記4)
前記バーコードとともに商品に表示される数字列を識別する識別手段、
を備え、
前記判定手段は、識別された前記数字列に基づいて、認識された前記バーコードが所定以上の長さかを判定する、
付記1に記載の情報処理システム。
(付記5)
前記判定手段は、認識された前記バーコードの形状によって認識された前記バーコードが所定以上の長さかを判定する、
付記1に記載の情報処理システム。
(付記6)
前記判定手段は、認識された前記バーコードの縦横比に基づいて、認識された前記バーコードが所定以上の長さかを判定する、
付記5に記載の情報処理システム。
(付記7)
前記認識手段は、前記バーコードの前半部分を認識し、前記バーコードの前半部分を認識した後に、前記バーコードの後半部分を認識する、
付記1から6のいずれかに記載の情報処理システム。
(付記8)
前記処理手段は、
前記認識手段によって認識された前記バーコードの前半部分が表すコードと、当該コードに続きがあることを示す情報と、を送信し、
当該コードと前記情報とを送信した後に、前記バーコードの後半部分が表すコードを送信する、
付記7に記載の情報処理システム。
(付記9)
端末装置の撮像装置によって撮像された画像から、バーコードを認識し、
認識された前記バーコードが所定以上の長さかを判定し、
認識された前記バーコードが所定以上の長さの場合、前記バーコードに対応する処理を分割した複数の処理を行う、
方法。
(付記10)
コンピュータに
端末装置の撮像装置によって撮像された画像から、バーコードを認識する処理と、
認識された前記バーコードが所定以上の長さかを判定する処理と、
認識された前記バーコードが所定以上の長さの場合、前記バーコードに対応する処理を分割した複数の処理と、
を実行させるプログラムを記録する前記コンピュータが読み取り可能な非一時的な記録媒体。
(付記11)
コンピュータに
端末装置の撮像装置によって撮像された画像から、バーコードを認識する処理と、
認識された前記バーコードが所定以上の長さかを判定する処理と、
認識された前記バーコードが所定以上の長さの場合、前記バーコードに対応する処理を分割した複数の処理と、
を実行させるプログラム。
【符号の説明】
【0203】
1 情報処理システム
2 情報処理システム
10 端末装置
11 サーバ
12 通信ネットワーク
30 コンピュータ装置
32 通信ネットワーク
101 取得部
102 認識部
103 識別部
104 上下判定部
105 処理部
106 判定部
107 表示制御部
108 受付部
109 記憶部
111 処理部
112 特定部
113 リスト生成部
114 精算情報生成部
115 記憶部
201 認識部
202 判定部
203 処理部
301 プロセッサ
302 ROM
303 RAM
304 記憶装置
305 通信インターフェース
306 入出力インターフェース
307 バス
1000 商品DB
1001 購入商品リストDB
ub 上段のバーコード
bb 下段のバーコード
d010 画面
d020 画面
d030 画面
d040 画面
d050 画面
d060 画面
d070 画面
d080 画面
d110 画面
d120 画面
d130 画面
d140 画面
d150 画面