JP2010044586A - 2次元コード読取装置とそのプログラム - Google Patents
2次元コード読取装置とそのプログラム Download PDFInfo
- Publication number
- JP2010044586A JP2010044586A JP2008208095A JP2008208095A JP2010044586A JP 2010044586 A JP2010044586 A JP 2010044586A JP 2008208095 A JP2008208095 A JP 2008208095A JP 2008208095 A JP2008208095 A JP 2008208095A JP 2010044586 A JP2010044586 A JP 2010044586A
- Authority
- JP
- Japan
- Prior art keywords
- dimensional code
- point
- boundary
- image data
- target coordinate
- 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.)
- Granted
Links
Images
Landscapes
- Facsimile Image Signal Circuits (AREA)
- Image Processing (AREA)
- Editing Of Facsimile Originals (AREA)
Abstract
【解決手段】 カメラ2により撮像された2次元コードの画像データを二値化画像に変換した後、当該二値化画像から2次元コードのファインダパターンを検出し、この検出されたファインダパターンの上下左右各辺の座標値を検出する。そして、この検出されたファインダパターンの上下左右各辺の座標値をもとに、上記2次元コードの画像データの上下左右各辺の形状を直線及び曲線で近似した近似線を生成し、この生成された近似線をもとに上記2次元コードの画像データの歪みを矯正して、この歪みが矯正された2次元コードの画像データをもとに上記2次元コードを解読する。
【選択図】 図1
Description
第1の構成は、上記2次元コードの画像データの4辺の形状を近似して当該4辺の境界線を検出する際に、複数のファインダパターンの辺の境界点をもとに上記2次元コードの画像データの輪郭を表す辺の傾きを算出し、この算出された辺の傾きから推測される方向に画素探索を行って、上記2次元コードの画像データの辺を表す境界点を検出する。そして、上記算出された辺の傾きをもとに、上記検出された境界点に含まれるエラー点を除去する。
より具体的には、上記2次元コード画像の辺の傾きを算出する際に、第1及び第2のファインダパターンの各辺を表す境界点をもとにそれぞれ当該各辺の傾きを算出し、この算出された第1及び第2のファインダパターンの各辺の傾きをもとに、上記2次元コードの画像データの一辺の傾きを推測する。
このようにすることで、2次元コードの画像データの4辺において探索された境界点の集合に含まれるエラー点を、より一層確実に削除することが可能となる。
以上の処理を行うことで、曲線状歪みを有する2次元コードの画像データを長方形に矯正することが可能となる。
図1は、この発明の一実施形態における2次元コード読取装置のハードウエア及びソフトウエアの構成を示すブロック図である。
本実施形態の2次元コード読取装置は、中央処理制御ユニット1と、カメラ2と、入力デバイス3と、表示デバイス4とを具備している。なお、2次元コード読取装置が携帯電話機に設けられる場合には、上記中央処理制御ユニット1、カメラ2、入力デバイス3及び表示デバイス4はいずれも携帯電話機が備える既存の構成を利用する。
(1)2次元コードの画像データの取り込み
入力デバイス3においてユーザが撮像操作を行うと、CPU11はステップS11により上記撮像操作を入出力I/F15を介して検出する。そして、ステップS12に移行し、カメラI/F14を介してカメラ2を起動して、当該カメラ2により撮像された2次元コードの画像データをカメラI/F14を介して取り込んでデータメモリ16に記憶させる。
p(x,y)=(r,g,b)
と表される。
上記二次元コードの画像データが取り込まれると、CPU11はステップS2において二値化画像生成プログラム131を起動し、上記二次元コードの画像データのコントラストを強調するために、当該二次元コードの画像データを二値化画像データに変換する処理を以下のように実行する。
Grayscale(x,y)=RGBtoLuminance(r,g,b)
によって輝度値を算出して、グレースケール画像を生成する。なお、輝度値は0以上255以下の値を持つものとする。
上記二値化画像データの生成が終了すると、CPU11は次にステップS3によりファインダパターン検出プログラム132を起動し、上記二値化画像データからQRコードに含まれる3個の位置パターン、つまりファインダパターンを検出するための処理を以下のように実行する。
上記3個のファインダパターンの検出が終了すると、CPU11は続いてステップS4に移行して画像回線処理プログラム133を起動し、上記検出されたファインダパターンの位置をもとに上記二値化画像データを以下のように回転させる。
すなわち、先ずステップS41において、上記検出された3個のファインダパターンF1,F2,F3の重心をそれぞれ算出する。そして、この算出された重心をW1=(u1,v1)、W2=(u2,v2)、W3=(u3,v3)として、下記(4)式によりD1,D2,D3を算出する。
次にCPU11は、ステップS5によりファインダパターン境界検出プログラム134を起動し、上記回転処理後の二値化画像データから3個のファインダパターンの黒枠の辺を表す境界点を検出する処理を以下のように実行する。
すなわち、CPU11は先ずステップS51において、例えば図9に示すように黒枠のセグメントSを抽出し、黒枠の4角の座標を算出する。4角の座標は、セグメントSに含まれる座標のうち、−x−yが最大となる座標を左上の角(cx1,cy1)、x−yが最大となる座標を右上の角(cx2,cy2)、y−xが最大となる座標を左下の角(cx3,cy3)、x−yが最大となる座標を右下の角(cx4,cy4)となるようにそれぞれ設定する。
CPU11は、次にステップS6に移行して2次元コード境界線算出プログラム135を起動し、上記検出された3個のファインダパターンの黒枠の上下左右各辺の座標値に基づいて、2次元コード画像の輪郭を表す上下左右各辺に含まれる座標をそれぞれ検出し、その近似線を上下左右各辺の境界線として算出する処理を実行する。
(x1,y1),(x2,y2),…,(xn,yn)
とすると、最小二乗法による近似直線y=ax+bは
すなわち、CPU11は、ステップS631〜S635において、例えば図14に示すようにMiddleBottomEdgeに含まれる各点(bxi,byi)から傾き−1の閾値直線、つまり
y=−(x-bxi)+bxi
を引き、各直線の上方向に位置し、bxi≦rxjでかつy座標の最も大きいMiddleRightEdge内の点を示すjの値を算出する関数f(i)を
以上の処理により2次元コード画像の上下左右各辺についての境界線が算出されると、続いてCPU11は図5に示すステップS7において2次元コード歪み矯正プログラム136を起動し、上記算出された2次元コード画像の上下左右各辺の境界線を利用して2次元コード画像の歪みの矯正を次のように行う。
BaseCross(TopWeight,LeftWeight)は、
Claims (7)
- 撮像手段から2次元コードの画像データを取り込んでメモリに記憶する手段と、
前記メモリに記憶された2次元コードの画像データを読み出し、この読み出した画像データから当該2次元コードに含まれる複数のファインダパターンを検出するファインダパターン検出手段と、
前記検出された複数のファインダパターンの各々についてその輪郭を表す辺の境界点を検出するファインダパターン境界検出手段と、
前記検出された複数のファインダパターンの辺の境界点をもとに、前記2次元コードの画像データの輪郭を表す4辺の形状を直線及び曲線の少なくとも一方で近似した近似線を生成する2次元コード境界線検出手段と、
前記生成された近似線をもとに前記2次元コードの画像データの歪みを矯正し、歪みが矯正された2次元コードの画像データを前記メモリに記憶する2次元コード歪み矯正手段と、
前記歪みが矯正された2次元コードの画像データをもとに前記2次元コードを解読し、その解読データを出力する解読手段と
を具備することを特徴とする2次元コード読取装置。 - 前記2次元コード境界線検出手段は、
前記ファインダパターン境界検出手段により検出された複数のファインダパターンの辺の境界点をもとに、前記2次元コードの画像データの輪郭を表す辺の傾きを算出する手段と、
前記算出された辺の傾きから推測される方向に画素探索を行って、前記2次元コードの辺を表す境界点を検出する手段と、
前記検出された境界点に含まれるエラー点を除去する手段と
を備えることを特徴とする請求項1記載の2次元コード読取装置。 - 前記辺の傾きを算出する手段は、第1及び第2のファインダパターンの各辺を表す境界点をもとにそれぞれ当該各辺の傾きを算出し、この算出された第1及び第2のファインダパターンの各辺の傾きをもとに、前記2次元コードの画像データの一辺の傾きを推測することを特徴とする請求項2記載の2次元コード読取装置。
- 前記エラー点を除去する手段は、前記検出された境界点の各々について、当該境界点が、前記算出された辺の傾きから推測される範囲内に含まれているか否かを判定し、含まれていないと判定された境界点をエラー点として前記境界点から削除することを特徴とする請求項2記載の2次元コード読取装置。
- 前記エラー点を除去する手段は、前記2次元コードの画像データの4辺のうち直交する第1及び第2の辺の交点を算出する手段と、この算出された交点より外側の範囲に位置する境界点をエラー点として削除する手段とを備え、
前記2次元コードの画像データの第1及び第2の辺の交点を算出する手段は、
第1の辺を表す境界点の集合に含まれる1個以上の境界点を算出基準点としてしきい値線を引き、第2の辺を表す境界点集合に含まれる境界点が前記しきい値線より交点側に位置するか否かを判定する手段と、
前記第2の辺を表す境界点の集合のうち前記しきい値線より交点側に位置しない境界点の中から、当該交点に最も近い境界点をしきい値外近接点として検出する手段と、
前記算出基準点から前記第1の辺の傾きを推定して引いた直線と、前記第2の辺のしきい値外近接点から第2の辺の傾きを推定して引いた直線との交点をもとに、交点候補点を算出する手段と、
前記第1の辺を表す境界点の集合に含まれる境界点のうち前記しきい値線より交点側に位置する境界点の中から前記しきい値直線に最も近い境界点をしきい値内近接点として検出すると共に、前記第2の辺を表す境界点集合に含まれる境界点のうち前記しきい値線より交点側に位置する境界点の中から前記しきい値直線に最も近い境界点をしきい値内近接点として検出する手段と、
前記検出された第1の辺のしきい値内近接点と、前記検出された第2の辺のしきい値内近接点のうち、前記算出された交点候補点より外側にあるものはどれかを判定する手段と
を有することを特徴とする請求項2記載の2次元コード読取装置。 - 前記2次元コード歪み矯正手段は、
2次元コードの画像データの各頂点を結ぶ頂点フレームを生成する頂点フレーム生成手段と、
前記矯正対象の2次元コードの画像データにおける目標座標のピクセル値を算出する際に、前記生成された頂点フレームの、上辺における前記目標座標に対応する点の座標値と、下辺における前記目標座標に対応する点の座標値と、左辺における前記目標座標に対応する点の座標値と、右辺における前記目標座標に対応する点の座標値をそれぞれ算出する頂点フレーム対応点算出手段と、
前記2次元コードの画像データの、上辺における前記目標座標に対応する境界点の座標値と、下辺における前記目標座標に対応する境界点の座標値と、左辺における前記目標座標に対応する境界点の座標値と、右辺における前記目標座標に対応する境界点の座標値をそれぞれ算出する境界対応点算出手段と、
前記頂点フレームにおいて前記目標座標に対応する目標座標値を算出する頂点フレーム内目標座標値算出手段と、
前記頂点フレームの上下左右の各辺について算出された前記目標座標に対応する点から、前記2次元コードの画像データの上下左右の各辺について算出された前記目標座標に対応する境界点へのベクトルを重み付け加算して、2次元コード歪みベクトルを算出する2次元コード歪み算出手段と、
前記頂点フレームについて算出された目標座標値に、前記算出された2次元コード歪みベクトルを加算して、前記2次元コードの画像データにおける前記目標座標に対応する目標座標値を算出する2次元コード内目標座標値算出手段と
を
備えることを特徴とする請求項1記載の2次元コード読取装置。 - 前記請求項1乃至6のいずれか記載の2次元コード読取装置において、各手段の処理を実行するために使用されるプログラム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008208095A JP4970385B2 (ja) | 2008-08-12 | 2008-08-12 | 2次元コード読取装置とそのプログラム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008208095A JP4970385B2 (ja) | 2008-08-12 | 2008-08-12 | 2次元コード読取装置とそのプログラム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2010044586A true JP2010044586A (ja) | 2010-02-25 |
| JP4970385B2 JP4970385B2 (ja) | 2012-07-04 |
Family
ID=42015921
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2008208095A Expired - Fee Related JP4970385B2 (ja) | 2008-08-12 | 2008-08-12 | 2次元コード読取装置とそのプログラム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4970385B2 (ja) |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101109510B1 (ko) | 2010-07-02 | 2012-01-31 | (주) 애니모비 | 2차원 바코드 인식방법 |
| CN105488552A (zh) * | 2016-01-01 | 2016-04-13 | 江苏图码信息科技有限公司 | 非线性二维码产品及应用组件 |
| CN113076768A (zh) * | 2021-04-08 | 2021-07-06 | 中山大学 | 一种模糊可识别二维码的定位、畸变校正方法 |
| KR20230105405A (ko) * | 2022-01-04 | 2023-07-11 | 주식회사 큐에스택 | 진단용 영상 보정 시스템 및 방법 |
| JP2024035801A (ja) * | 2022-09-02 | 2024-03-14 | ジック アーゲー | 光学コードの位置の特定 |
| WO2025253888A1 (ja) * | 2024-06-03 | 2025-12-11 | 村田機械株式会社 | 対象部分検出装置及び走行台車 |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH07152906A (ja) * | 1993-11-26 | 1995-06-16 | Tec Corp | 2次元シンボル画像の認識処理装置 |
| JP2004086305A (ja) * | 2002-08-23 | 2004-03-18 | Seiko Epson Corp | バーコード傾き角度検出方法及びバーコード読み取り装置 |
| JP2005316755A (ja) * | 2004-04-28 | 2005-11-10 | Nec Electronics Corp | 2次元矩形コードシンボル読み取り装置及び2次元矩形コードシンボル読み取り方法 |
| JP2005322061A (ja) * | 2004-05-10 | 2005-11-17 | Ricoh Co Ltd | 2次元コード読取装置 |
| JP2009129222A (ja) * | 2007-11-26 | 2009-06-11 | Denso Wave Inc | 光学情報読取装置 |
-
2008
- 2008-08-12 JP JP2008208095A patent/JP4970385B2/ja not_active Expired - Fee Related
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH07152906A (ja) * | 1993-11-26 | 1995-06-16 | Tec Corp | 2次元シンボル画像の認識処理装置 |
| JP2004086305A (ja) * | 2002-08-23 | 2004-03-18 | Seiko Epson Corp | バーコード傾き角度検出方法及びバーコード読み取り装置 |
| JP2005316755A (ja) * | 2004-04-28 | 2005-11-10 | Nec Electronics Corp | 2次元矩形コードシンボル読み取り装置及び2次元矩形コードシンボル読み取り方法 |
| JP2005322061A (ja) * | 2004-05-10 | 2005-11-17 | Ricoh Co Ltd | 2次元コード読取装置 |
| JP2009129222A (ja) * | 2007-11-26 | 2009-06-11 | Denso Wave Inc | 光学情報読取装置 |
Cited By (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101109510B1 (ko) | 2010-07-02 | 2012-01-31 | (주) 애니모비 | 2차원 바코드 인식방법 |
| CN105488552A (zh) * | 2016-01-01 | 2016-04-13 | 江苏图码信息科技有限公司 | 非线性二维码产品及应用组件 |
| CN105488552B (zh) * | 2016-01-01 | 2018-05-15 | 江苏图码信息科技有限公司 | 非线性二维码产品及应用组件 |
| CN113076768A (zh) * | 2021-04-08 | 2021-07-06 | 中山大学 | 一种模糊可识别二维码的定位、畸变校正方法 |
| KR20230105405A (ko) * | 2022-01-04 | 2023-07-11 | 주식회사 큐에스택 | 진단용 영상 보정 시스템 및 방법 |
| KR102597459B1 (ko) * | 2022-01-04 | 2023-11-02 | 주식회사 큐에스택 | 진단용 영상 보정 시스템 및 방법 |
| JP2024035801A (ja) * | 2022-09-02 | 2024-03-14 | ジック アーゲー | 光学コードの位置の特定 |
| JP7571217B2 (ja) | 2022-09-02 | 2024-10-22 | ジック アーゲー | 光学コードの位置の特定 |
| WO2025253888A1 (ja) * | 2024-06-03 | 2025-12-11 | 村田機械株式会社 | 対象部分検出装置及び走行台車 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP4970385B2 (ja) | 2012-07-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4551018B2 (ja) | 画像結合装置 | |
| JP4657367B2 (ja) | 画像処理装置、撮像装置、および画像歪み補正方法 | |
| CN110298282B (zh) | 文档图像处理方法、存储介质和计算设备 | |
| US10187546B2 (en) | Method and device for correcting document image captured by image pick-up device | |
| CN114155546B (zh) | 一种图像矫正方法、装置、电子设备和存储介质 | |
| CN109871841B (zh) | 图像处理方法、装置、终端及存储介质 | |
| RU2631765C1 (ru) | Способ и система исправления перспективных искажений в изображениях, занимающих двухстраничный разворот | |
| JP4970385B2 (ja) | 2次元コード読取装置とそのプログラム | |
| JP2005122320A (ja) | 撮影装置、その画像処理方法及びプログラム | |
| CN112927163A (zh) | 图像数据增强方法、装置、电子设备及存储介质 | |
| CN102088555A (zh) | 全景图像合成器、全景图像合成方法和程序 | |
| CN111767752B (zh) | 一种二维码识别方法及装置 | |
| WO2024169397A9 (zh) | 印章识别方法、装置、电子设备及存储介质 | |
| JP6075294B2 (ja) | 画像処理システム及び画像処理方法 | |
| TWI567654B (zh) | 圖像條碼編碼方法、圖像條碼解碼方法、圖像條碼編碼裝置及圖像條碼解碼裝置 | |
| US20120038785A1 (en) | Method for producing high resolution image | |
| CN119048343B (zh) | 一种基于特征匹配的视频图像拼接方法及系统 | |
| CN112532884A (zh) | 识别方法、装置及电子设备 | |
| CN115134521B (zh) | 视频拍摄防抖动方法、装置、设备及存储介质 | |
| CN113452920B (zh) | 一种对焦点确定方法、装置、设备及介质 | |
| CN116934591A (zh) | 多尺度特征提取的图像拼接方法、装置、设备及存储介质 | |
| JP6056354B2 (ja) | 画像処理装置、画像処理方法および画像処理プログラム | |
| CN115205112A (zh) | 一种真实复杂场景图像超分辨率的模型训练方法及装置 | |
| CN112615993A (zh) | 深度信息获取方法、双目摄像模组、存储介质及电子设备 | |
| JP4397866B2 (ja) | 2次元パターン読み取り装置、2次元パターン読み取り方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100805 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110929 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111011 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111207 |
|
| 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: 20120306 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120404 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150413 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| LAPS | Cancellation because of no payment of annual fees |
