JPH117491A - 画像データ読み取り装置及び読み取り方法 - Google Patents

画像データ読み取り装置及び読み取り方法

Info

Publication number
JPH117491A
JPH117491A JP9158742A JP15874297A JPH117491A JP H117491 A JPH117491 A JP H117491A JP 9158742 A JP9158742 A JP 9158742A JP 15874297 A JP15874297 A JP 15874297A JP H117491 A JPH117491 A JP H117491A
Authority
JP
Japan
Prior art keywords
address
image data
start point
scanning
inclination
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.)
Withdrawn
Application number
JP9158742A
Other languages
English (en)
Inventor
Hisashi Nishimura
西村  久
Kazumasa Kunugi
和正 功刀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Olympus Corp
Original Assignee
Olympus Optical Co Ltd
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 Olympus Optical Co Ltd filed Critical Olympus Optical Co Ltd
Priority to JP9158742A priority Critical patent/JPH117491A/ja
Publication of JPH117491A publication Critical patent/JPH117491A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Image Input (AREA)
  • Image Processing (AREA)

Abstract

(57)【要約】 【課題】従来、撮像した画像データの傾きをソフトウェ
アで検出すると、読み取り速度が遅くなり、処理装置の
高性能化や新たなソフトウェア開発等が必要となる。ま
た専用ハードウェアは、画像データの傾きに応じた複数
のアドレス発生回路が必要となり、回路規模が増大し且
つコストアップとなる。 【解決手段】本発明は、撮像部4で取り込まれた画像デ
ータから、メモリ制御部8、コード検出/転送部13及
びプロセッサ(CPU)6により、画像データの傾き
(傾き値)を導出し、この傾き値に基づく、画素の列か
らなるアドレス列をフレーム上から発生させる。そのア
ドレス列の発生に際して、等間隔にスキャンが開始され
るように、アドレス位置を確定するための直交する辺に
沿ったアドレス開始点の移動間隔を辺間を移る際に、傾
き値から傾き値の逆数に変えて算出することにより、等
間隔な読み取りアドレス列を生成する画像データ読み取
り装置及び読み取り方法である。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、特定の認識パター
ンを有する画像データを撮像素子により取り込み画像処
理を行う装置に係り、特に傾きを有する画像データの読
み取り補正を行う画像データ読み取り装置に関する。
【0002】
【従来の技術】一般に、画像読み取り装置は、CCD等
の固体撮像素子を用いて、線分とスペースとを組み合わ
せ配列させて何等かの情報を表すバーコード等の画像デ
ータを撮像し、得られた画像データの情報(画素単位の
自黒の明暗値)を1フレーム分、メモリに蓄えている。
このメモリに格納した時点では、画像データが傾いてい
ても、補正されて格納されているわけではない。
【0003】つまり、図14(a)〜(d)に示すよう
に、画像データの傾きに応じて、少なくとも4パターン
の可能性を持った情報として前記メモリに格納される。
このメモリに格納されたこれらの画像データは、まず、
認識パターンを検出、即ち、スタート地点及びストップ
地点を示すスタートコード及びストップコードを見出す
処理を行う。
【0004】前述したスタートコード/ストップコード
は、PDF417コード特有の認識パターンである。勿
論、画像データは、PDF417コードに限定されるも
のではなく、その他の特定の認識パターンを有する画像
データの場合も何らかの手段を用いて、特異な認識パタ
ーンを認識する必要がある。
【0005】このスタートコード及びストップコードを
見出す処理とは、認識パターンが存在するメモリのアド
レスを検索するという検索処理である。図14における
検索処理時においては、メモリアドレスを座標とした場
合に、X軸方向のアドレス(Xアドレス)若しくは、Y
軸方向のアドレス(Yアドレス)にラスタースキャンす
る。
【0006】このラスタースキャンにより、認識パター
ンのアドレスを見出すことで、例えば、画像データをP
DFコードとすれば、その全体の傾きがわかる。そして
画像データの傾きが検出された後、図14(a)に示す
a〜fラインに代表される各ラインに沿って読み取りを
行い、得られた画像データの情報をデコード処理する。
ここで、図14(a)の場合、開始アドレス(X,Y)
=(0,1)からスタートし、Xアドレスが常に0の第
1辺を走査開始点とする走査を行い、Yアドレスが常に
Ymax の第2辺を走査開始点とする走査を行って、
(X,Y)=(Xmax ,Ymax )にて、走査終了とな
る。
【0007】従来、画像データの傾きに沿った、フレー
ムメモリの内容を読み出す際のアドレス発生をソフトウ
ェアによって処理していた。また、前記アドレス発生機
構のさらなる高速化を狙って、別途に専用ハードウェア
を設ける構成もあった。
【0008】
【発明が解決しようとする課題】前述したように従来の
画像データ読み取り装置は、撮像された画像データの傾
きに応じた読み取りアドレスの生成を行っていたが、こ
の構成でさらなる処理の高速化を実現にするには、以下
の問題が発生する。
【0009】まず、画像データの傾きを見出すアドレス
の生成処理をソフトウェアによって実施していた場合、
処理時間が読み取り速度よりも大幅にかかるため、読み
取り速度が著しく低下しており、これらを改善するに
は、処理装置の高性能化やソフトウェアの開発など、実
現に費やす時間やコスト的にも大きな問題となる。
【0010】さらに、従来技術における専用ハードウェ
アを備える場合では、図14(a)〜(d)に示した4
つの認識パターンのような傾きに応じた複数のアドレス
発生回路を設けなければなない。このような構成は、専
用ハードウェア分の規模が増大し、システム全体のコス
トアップを招くこととなる。
【0011】またバーコード等の画像データの傾きに応
じた走査をする際、図14(a)に代表されるように、
画像データが45度未満の傾きの場合に、一定間隔の走
査が実施されていなかった。これは、1ラインの走査が
終了し、次の走査に移る際の移動する距離を+1に固定
しているためである。この状態では、図14に示すよう
にY軸に+1移動するa,b,cラインのような走査間
隔に対して、X軸に+1移動するd,e,fラインの走
査間隔は、狭まってくることで理解される。つまりX
軸、Y軸に対して、画像データの傾きがちょうど45度
でなければ、走査間隔の上側の方と下側の方とが異なっ
ている。このメモリのアドレスに対する、この走査状態
を図15に詳細に示す。ここで、図15に示すVa,V
b,Vc,Vd,Ve,Vfは、画素情報そのものを示
している。
【0012】図15(a)は、1ラインの走査が、X=
0の近傍から開始されている例であり、この時はa,
b,cラインの各走査時において、同一アドレスの画素
情報を読み出すことはない。
【0013】一方、図15(b)は、1ラインの走査
が、Y=Ymax の近傍から開始されている場合であり、
この時はd,e,fラインの各走査時において、同一ア
ドレスの画素情報を読み出す場合がある。例えば、dラ
インの走査時に、Vd3を読み出した後、eラインの走
査で、再びVd3を読み出している。
【0014】図15では、便宜上、重複している画素
は、Vd3,Ve2,Vf1というように別の表現をし
ているが、内容としては同一である。同図中で重複して
いる画素は以下の通りである。
【0015】(Vd3,Ve2,Vf1)、(Ve3,
Vf2)、(Vd5,Ve4)、(Vd6,Ve5,V
f4)、(Ve6,Vf5)、(Vd8,Ve7)、
(Vd9,Ve8,Vf7)、(Ve9,Vf8)の以
上の組み合わせが重複している。
【0016】このように、従来のメモリアクセスでは、
同一のアドレスヘのアクセスが頻繁に発生し、走査終了
迄の時間を増加させてしまうという問題がある。そこで
本発明は、低コストで簡易な構成で高精度化され、重複
するアドレス処理を防止することにより処理速度の高速
化を実現する画像データ読み取り装置を提供することを
目的とする。
【0017】
【課題を解決するための手段】本発明は上記目的を達成
するために、特定の認識パターンを含む画像データを撮
像する撮像手段と、前記画像データを画素単位で記憶す
る記憶手段と、記憶された画像データから認識パターン
を検出し、この認識パターンに基づいて撮像されたフレ
ームに対する画像データの傾きを導出する傾き検出手段
と、前記傾きに基づいて画像データの読み取りを行うた
めに連続した読み取りアドレスの列を生成するアドレス
発生手段と、前記アドレス発生手段が前記傾きに基づい
て、連続的に生成する各アドレス列の開始点となるアド
レスを発生するアドレス開始点発生手段と、前記傾きに
基づいて前記開始点のアドレスに続くべきアドレスの増
分を生成するアドレス増分発生手段と、生成されるアド
レス列が撮像されたフレームの範囲内にあることを監視
する境界条件検出手段と、最初の開始点及び前記境界条
件検出手段で得られた情報に基づいて、前記アドレス開
始点発生手段と前記アドレス増分発生手段とによるアド
レス列の生成を制御する制御手段とを備える画像データ
読み取り装置。
【0018】さらに、直交する第1の辺及び第2の辺か
らなる矩形のフレームで撮像された画像データの情報を
読み取る画像データ読み取り方法において、前記画像デ
ータを画素単位で記録したメモリから、前記認識パター
ンを検出して、この認識パターンに基づいて、メモリの
アドレス位置に対する画像データの傾き値を検出し、前
記第1の辺上から第2の辺上の順に、傾きの絶対値が4
5度未満の場合には、Y軸上及び、X=Xmax 上であれ
ば1間隔に、X軸上及び、Y=Ymax 上であれば前記傾
き値の逆数間隔にアドレス開始点を移動させ、傾きの絶
対値が45度以上90度以下の場合には、X軸上及び、
Y=Ymax 上であれば1間隔に、Y軸上及び、X=Xma
x 上であれば前記傾き値間隔にアドレス開始点を移動さ
せ、前記アドレス開始点から傾き値に沿った方向のアド
レス列を生成する画像データ読み取り方法を提供する。
【0019】以上のような構成の画像データ読み取り装
置及び読み取り方法は、1フレームの画像データの認識
パターンのスタート、ストップコードを検出したメモリ
のアドレスに基づき、画像データの傾き(傾き値)を導
出する。そして、この傾き値に基づく、画素の列からな
るアドレス列をフレーム上から発生させるいずれの傾き
にも対応するハードウェアを備え、またアドレス列の発
生に際して、等間隔にスキャンが開始されるように、ア
ドレス位置を確定するための第1の辺から第2の辺に、
アドレス開始点が移動する間隔を、傾き値の逆数あるい
は傾き値により算出することにより、等間隔な読み取り
アドレス列を生成する。
【0020】
【発明の実施の形態】以下、図面を参照して本発明の実
施形態について詳細に説明する。図1は、本発明による
第1の実施形態の画像データ読み取り装置の概略的な構
成を示す図である。本実施形態では、読み取るべき認識
パターンとしてバーコードを一例にする。
【0021】この画像データ読み取り装置において、光
電変換により認識パターンに基づく画像信号を生成する
CCD等の撮像素子1及びその画像信号を所定増幅する
増幅器2及び所望のビット長の画像データに多値変換す
るA/D変換器3からなる撮像部4と、変換された画像
データを1フレーム毎の画像データとして格納するメモ
リ部5と、システム全体を制御するプロセッサ(CP
U)6からプロセッサバス7を経て与えられる指示によ
り、メモリ部5を制御するメモリ制御部(アドレス発生
部含む)8と、メモリ制御部8により読み出された画像
データを2値化する2値化部9及び2値化画像データか
らスタートコード/ストップコードを検出するコード検
出部10及びメモリ部5から読み出されたデータをワー
クメモリ11に転送するDMA転送機能を有するDMA
部12からなるコード検出/転送部13と、プロセッサ
6を補助する周辺回路14とで構成される。
【0022】このように構成された画像データ読み取り
装置において、撮像部4で取り込まれたバーコードを含
む画素データは、A/D変換器によって、1フレームを
基準とする所望のビット長に多値変換され、メモリ部5
に格納される。次に、メモリ部5に記憶される画像デー
タをメモリ制御部8により、ラスタースキャンにより読
み出し、画像データを逐次、コード検出部10に与え、
検出したスタートコード/ストップコードのアドレス値
をプロセッサ6に知らせる。このプロセッサ6は、前記
アドレス値に基づき、読み取ったバーコードの傾きを後
述する方法で演算し、その傾きの値をメモリ制御部8に
指示する。
【0023】このようにして、バーコードの傾きに沿っ
たメモリ部5ヘのアドレス発生開始前の処理を行う。前
記傾きが指示されたメモリ制御部8は、そのバーコード
の傾きに沿ったメモリ部ヘのアドレス発生を開始する。
そして逐次、メモリ部5から読み出された画像データ
は、DMA部による転送機能を通じて、ワークメモリ1
1ヘ送られる。
【0024】そして、1フレーム分のデータをワークメ
モリ11ヘの転送終了した時点で、プロセッサ6は、ワ
ークメモリ11に格納するバーコード情報に基づき、デ
コード処理を実施する。尚、1フレーム分のデータをワ
ークメモリヘの転送完了を示す信号は、メモリ制御部8
からプロセッサ6ヘ指示される。
【0025】図2は、本実施形態のメモリ制御部8の詳
細な構成を示す図である。このメモリ制御部8は、メモ
リ部5ヘのライト信号を生成するためのモジュール21
と、スタートコード/ストップコードの検出時にアクテ
ィブとなり、メモリ部5からの読み出し信号を生成する
ためのモジュール22と、バーコードの傾きに沿ったメ
モリ部5ヘの読み出し信号を発生するモジュール23
と、リフレッシュパルスを生成するモジュール24と、
プロセッサ6からの指示により、これらのモジュールを
選択するためのモードレジスタ25及びデコーダ26
と、各モジュールからの出力信号を選択して出力するセ
レクタ27と、後述するシステムクロック(SCLK)
信号に同期し、XRST信号により駆動して、それぞれ
出力を行うレジスタ28a〜28eとで構成される。
【0026】前記モジュール22は、メモリ部5からの
読み出し信号を生成するためのものであり、スタートコ
ード/ストップコードの検出の際、アクティブになり、
前述したように、メモリアドレスをXアドレス若しくは
Yアドレス方向にラスタースキャンする。
【0027】また本実施形態において、メモリ部5にD
RAMを想定しているため、リフレッシュパルスを生成
するモジュール24を備えたが、SRAM等のスタティ
ックな記憶素子を用いれば、このモジュールは不要であ
る。その他の記憶素子を用いた場合であっても、その駆
動に必要な回路は備えるものとする。
【0028】そして図3には、図2に示したモジュール
23の構成の一例を示し、図4には、Xアドレス、Yア
ドレス発生に必要なアドレスレジスタ(図3に示すCT
X1,CTX2,CTY1,CTY2)の動作条件を示
す。以下、図3及び図4を参照して、本実施形態の画像
データ読み取り装置について説明する。
【0029】まず、図3において、XアドレスはCTX
1+CTX2、、YアドレスはCTY1+CTY2によ
り与えられる。CTX2は、1回の走査におけるX座標
の開始点に対する増分を示し、CTY2は、1回の走査
におけるY座標の開始点に対する増分を示す。CTX1
は、走査におけるX座標の開始点を示し、CTY1は走
査におけるY座標の開始点を示す。
【0030】ここで、バーコードの傾きK、バーコード
の傾きの逆数1/K、バーコードの傾き情報モード(Mo
de)、走査開始信号スタート(START )、Xmax 値、Y
max値は上位プロセッサから予め設定されるものであ
る。
【0031】この逆数1/Kは、符号付きのバーコード
の傾き値の逆数を示す。ここでKは、符号付きのバーコ
ードの傾き値を示す。Kの値は、必ず1未満の小数とし
て意味付けられており、例えば、バーコードの傾きが−
1/3の時は、以下の様に示されるものとする。
【0032】K=110101011(符号ビット+8
ビットで示された時、符号ビット=1で負) 1/K=111111101 モードはバーコードの傾きが、図14で示した4つの傾
きのいずれかを示すものである。2ビットで表現され、
ビット1,0と傾きの関係は、例えば以下のようにな
る。
【0033】 モード=00 図14(b) モード=01 図14(a) モード=10 図14(d) モード=11 図14(c) また、Xmax 、Ymax は、1フレーム枠の最大値であ
る。なお、図3に示す構成では、傾きの絶対値が45度
未満の場合(図14(a)、(b))に対応させてい
る。それ以外の傾きの場合でも、Xアドレス、Yアドレ
スを入れ替えれば、同様であり、ここでの説明は省略す
る。
【0034】本実施形態において、CTX1、CTX
2、CTY1、CTY2の各レジスタにおいて、バーコ
ードの傾きがいずれであっても適切なXアドレス、Yア
ドレスを発生することについて説明する。
【0035】まず、CTX1の動作は、図3に示したセ
レクタS1と、スタート、ストップモード(Start,Stop
Mode )信号により決定される。そして、CTX1の動
作条件は、図4に示す真理値表で規定されている。な
お、図4に示すC1〜C5は、それぞれCondition1〜
Condition5に対応する。
【0036】そして、CTX2の動作は、図3に示すセ
レクタS2と、スタート、ストップモード信号により決
定される。CTX2の動作条件は、図4に示す真理値表
で規定される。なお、図4のC1〜C5は、それぞれC
ondition1〜Condition5に対応する。
【0037】次に、CTY1の動作は、図3に示すセレ
クタS3と、スタート、ストップモード信号により決定
される。CTY1の動作条件は、図4に示す真理値表で
規定される。なお、図4に示すC1〜C5は、それぞれ
Conditon 1〜Condition5に対応する。
【0038】CTY2の動作は、図3に示すセレクタS
4と、スタート、ストップモード信号により決定され
る。CTY2の動作条件は、図4に示す真理値表で規定
される。なお、図4に示すC1〜C5は、それぞれCon
dition1〜Condition5に対応する。
【0039】次に、図14に示す様に、傾きが「−」
で、第2辺を走査開始点とする走査の場合、1ラインの
走査が終了して、次ラインの走査に移る際に、CTX1
を+1のインクリメントとすると、先の走査と重複した
アドレスにアクセスしてしまうことになる。
【0040】従って、Condition1若しくは、Condtio
n 2の状態になった時(走査経過後、Xアドレス若しく
はYアドレスが、それぞれXmax 、Ymax に到達した
時)、−1/Kを加算することで、先の走査と重複する
アドレスにアクセスすることを回避する。
【0041】また、傾きが「+」で、第1辺を走査開始
点とする走査の場合、前述したと同様に、1ラインの走
査が終了して、次ラインの走査に移る際に、CTX1を
+1のインクリメントとすると、先の走査と重複したア
ドレスにアクセスしてしまうことになる。
【0042】従って、Condition1若しくはCondition
2の状態になった時、−1/Kを加算することで、先の
走査と重複するアドレスにアクセスすることを回避す
る。以上のように構成された本実施形態の画像データ読
み取り装置のアドレス発生部の動作について図5〜図8
を参照して説明する。
【0043】図5は、撮像してメモリ部内に格納された
バーコードが右肩上がりの傾き、つまり、負の方向(4
5度未満)に傾いて格納されている状態を示している。
この場合、走査は(Xアドレス,Yアドレス)=(0,
1)を開始位置として始まり、(Xアドレス,Yアドレ
ス)=(Xmax ,Ymax )で全走査を終了する。
【0044】図5に示した走査部分を、Aのエリア、B
のエリア、Cのエリアに分割し、これらの中で代表的な
部分境界1、2、3、〜終了の様子を図6〜図8のタイ
ムチャートに示す。
【0045】図6に示すタイムチャートは、境界1まで
の走査の状態を示している。まず、開始パルスSTAR
TがHになり、且つSCLK2がHになった時点で、開
始アドレス(X,Y)=(0,1)がCTX1、CTY
1にロードされ、CTX2、CTY2は、0に初期化さ
れる。本実施形態では、システムクロックSCLK1を
4分周して、SCLK2を得ており、SCLK1が4ク
ロックで1画素の読み出しが完了する。ここで、V
(0,1)等は、メモリ部5の内容である。
【0046】図6に示すV(3,0)が読み取られた時
点で、CTY1=0、即ち、Condition5の条件がアク
ティブとなる。 ここで、 1ラインの走査が終了すると共
に、次ラインの走査のための初期値CTX1=0,CT
Y1=CTY1+1が設定される。
【0047】この場合、V(0,2)以降が次ラインの
走査になる。V(0,1)〜V(3,0)迄のCTY2
の経緯は次の様になる。Yアドレスは、CTY1とCT
Y2の加算であるが、CTY2の小数点以下は切り捨て
ている。 初期値 :CTY2=0 :Yアドレス=1 V(0,1)読み出し後:CTY2=0−1/3 =−1/3 :Yアドレス=1 V(1,1)読み出し後:CTY2=−1/3 −1/3 =−2/3 :Yアドレス=1 V(2,1)読み出し後:CTY2=−2/3 −1/3 =−1 :Yアドレス=0 V(3,0)読み出し後:CTY2=0 :Yアドレス=2 図7に示すタイムチャートは、境界2までの走査の状態
を示している。
【0048】ここで、CTX1、CTY1は(0,Y
n)であるものとする(但し、Yn<Ymax )。この場
合、V(Xmax −1,0)が読まれた時点で、CTY1
=0、即ち、Condition5の条件がアクティブとなり、
ここで、1ラインの走査が終了すると共に、次ラインの
走査のための初期値CTX1=0,CTY1=Yn+1
が設定される。この設定により、V(0,Yn+1)以
降が次ラインの走査になる。
【0049】さらに走査を継続し、V(Xmax ,1)が
読まれた時点で、CTX1=Xmax、すなわちConditio
n1の条件がアクティブとなり、ここで、1ラインの走
査が終了する。
【0050】この時、次ラインの走査のための初期値C
TX1=0,CTY1=Yn+1=Ymax が設定される
と、Condtion 4の条件がアクティブになり、このライ
ンの走査が終了して以降、CTX1には1ラインの走査
が終了する毎に1/Kが加算される。
【0051】図8に示すタイムチャートは、境界3から
終了までの走査の状態を示している。まず、CTX1、
CTY1は(Xmax −7,Ymax )の状態にあるものと
する(図8中のP1)。まず走査が(Xmax −7,Yma
x )から開始され、(Xmax,Ymax −2)の時点でCo
ndition1の条件がアクティブになり、この走査は終了
する。
【0052】次の走査には、1/KがCTX2に加えら
れるため、CTX2=CTX2+(−1/K)=Xmax
−7+3(K=−3)=Xmax −4が開始点となる(図
8中のP2)。これは、(Xmax −7,Ymax )を開始
点とする走査で、既にアクセスした画素を通らないこと
を意味するものである。
【0053】この様にして、(Xmax ,Ymax )までの
読み出しを終えたところで、1フレーム分の読み出しが
終了となり、図3に示したS20の比較条件結果が1に
なり、ENDレジスタがセットされる。
【0054】上位プロセッサは、走査開始指令を与えた
後、このENDレジスタをポーリング若しくは、割り込
みによって監視すればよい。次に図9乃至図13に示す
フローチャートを参照して、本実施形態の傾き毎のによ
る示し説明する。
【0055】図9は、本実施形態のメインルーチンを示
している。まず図14に示したようなモード01[傾き
負(45度未満)],モード00[傾き正(45度未
満)],モード11[傾き負(45度以上)],モード
10[傾き正(45度以上)]のうちいずれかを選択す
る(ステップS1〜S3)これらのモードについては、
それぞれ後述するように検出を行う(ステップS4〜S
7)。
【0056】図10、図11には、モード00[傾き正
(45度未満)]が選択された場合のフローチャートを
示し説明する。ここで、Xアドレスは、CTX1+CT
X2で求められ、Yアドレスは、CTY1+CTY2で
求められるものとする。
【0057】まず図10に示すように、開始パルスST
ARTがHレベル及びSCLK2がHレベルになってい
るか判定し(ステップS11)、共にHレベルであれば
(YES)、初期値の設定を行う(ステップS12)。
この初期値の設定は、CTX1=Xmax-1 、CTX2=
H’000、CTY1=H’000、CTY2=H’0
00とする。
【0058】次に1走査ライン移動するために、1画素
移動を移動する(ステップS13)。この1画素移動
は、CTX1=CTX1、CTX2=CTX2+H’0
00、CTY1=CTY1、CTY2=CTY2+Kと
する。
【0059】そして走査を行い、XアドレスがXmax に
達したか、または、YアドレスがYmax に達した否かを
判定し(ステップS14)、Xmax またはYmax に達し
た場合には(YES)、CTX1がH’000に達した
か否か判定する(ステップS15)。ステップS14に
おいて、Xmax またはYmax に達していない場合(N
O)、ステップS13に戻る。
【0060】前記ステップS15において、CTX1が
H’000に達していない場合(NO)、ステップS1
6に移行し、走査ラインの開始点を設定する。ここで、
開始点は、CTX1=CTX1+1/K、CTX2=
H’000、CTY1=CTY1、CTY2=H’00
0とする。また、CTX1=H’000に達した場合
(YES)、後述する図11のフローチャートに示すよ
うに、第2辺の走査を行った後(ステップS17)、図
9のメインフローチャートにリターンする。
【0061】次に、図11に示すフローチャートを参照
して、第2辺の走査について説明する。ここで、Xアド
レス=CTX1+CTX2、Yアドレス=CTY1+C
TY2にて求められるものとする。
【0062】まず、スキャンを行うための走査ラインを
設定するために1画素移動を移動する(ステップS1
9)。この1画素移動は、CTX1=CTX1、CTX
2=CTX2+H’001、CTY1=CTY1、CT
Y2=CTY2+Kとする。
【0063】そして走査を行い、YアドレスがYmax に
達したか否か判定し(ステップS20)、Yアドレスが
Ymax に達していない場合(NO)、ステップS19に
戻り、再度1画素の移動を行い、走査する。しかし、Y
max に達した場合には(YES)、次の走査ラインに移
動するために次の走査ラインの開始点を設定する(ステ
ップS21)。ここで、開始点は、CTX1=CTX
1、CTX2=H’000、CTY1=CTY1+H’
001、CTY2=H’000とする。
【0064】そして走査を行った後、CTX1=H’0
00及びCTY1=Ymax に達したか否か判定し(ステ
ップS22)、達していなければ(NO)、ステップS
20に戻り、Yアドレスを判定し、共に達していたなら
ば(YES)、図9のメインフローチャートにリターン
する。
【0065】次に、図12、図13に示すフローチャー
トを参照して、モード01[傾き負(45度未満)]に
ついて説明する。本モードにおいて、前述したモードと
同様に、Xアドレスは、CTX1+CTX2で求めら
れ、Yアドレスは、CTY1+CTY2で求められるも
のとする。
【0066】まず図12に示すように、開始パルスST
ARTがHレベル及びSCLK2がHレベルになってい
るか判定し(ステップS31)、共にHレベルであれば
(YES)、初期値の設定を行う(ステップS32)。
この初期値の設定は、CTX1=H’000、CTX2
=H’000、CTY1=H’001、CTY2=H’
000とする。
【0067】次に1走査ライン移動するために、1画素
移動を移動する(ステップS33)。この1画素移動
は、CTX1=CTX1、CTX2=CTX2+H’0
01、CTY1=CTY1、CTY2=CTY2+Kと
する。
【0068】そして走査を行い、YアドレスがH’00
0に達したかまたはXアドレスがXmax に達したか否か
を判定し(ステップS34)、H’000またはXmax
に達した場合には(YES)、CTY1=Ymax に達し
たか否か判定する(ステップS35)。ステップS34
において、H’000またはXmax に達していない場合
(NO)、ステップS33に戻る。
【0069】前記ステップS35で、CTY1がYmax
に達していない場合(NO)、ステップS36に移行
し、再度、走査ラインの開始点を設定する。ここで、開
始点は、CTX1=H’000、CTX2=H’00
0、CTY1=CTY1+H’001、CTY2=H’
000とする。しかし、CTY1=Ymax に達した場合
(YES)、後述する図13のフローチャートに示すよ
うに、第2辺の走査を行った後(ステップS37)、図
9のメインフローチャートにリターンする。
【0070】次に、図13に示すフローチャートを参照
して、第2辺の走査について説明する。まず、スキャン
を行うための走査ラインを設定するために1画素移動を
移動する(ステップS39)。この1画素移動は、CT
X1=CTX1、CTX2=CTX2+H’001、C
TY1=CTY1、CTY2=CTY2+Kとする。
【0071】そして走査を行い、XアドレスがXmax に
達したか否か判定し(ステップS40)、Xアドレスが
Xmax に達していない場合(NO)、ステップS39に
戻り、再度1画素の移動を行い、走査する。しかし、X
max に達した場合には(YES)、次の走査ラインに移
動するために次の走査ラインの開始点を設定する(ステ
ップS41)。ここで、開始点は、CTX1=CTX1
+1/K、CTX2=H’000、CTY1=CTY
1、CTY2=H’000とする。
【0072】そして走査を行った後、CTX1=Xmax
及びCTY1=Ymax に達したか否か判定し(ステップ
S42)、達していなければ(NO)、ステップS40
に戻り、Yアドレスを判定し、共に達していたならば
(YES)、図9のメインフローチャートにリターンす
る。
【0073】なお、モード11[傾き負(45度以
上)],モード10[傾き正(45度以上)]について
は、設定値が異なるだけで、前述したモードとほぼ同様
であるため、ここでの説明は省略する。
【0074】以上の実施形態について説明したが、本明
細書には以下のような発明及び効果も含まれている。 (1)特定の認識パターンを含む画像データを撮像する
撮像手段と、前記画像データを画素単位で記憶する記憶
手段と、記憶された画像データから認識パターンを検出
し、この認識パターンに基づいて撮像されたフレームに
対する画像データの傾きを導出する傾き検出手段と、前
記傾きに基づいて画像データの読み取りを行うために連
続した読み取りアドレスの列を生成するアドレス発生手
段と、前記アドレス発生手段が前記傾きに基づいて、連
続的に生成する各アドレス列の開始点となるアドレスを
発生するアドレス開始点発生手段と、前記傾きに基づい
て前記開始点のアドレスに続くべきアドレスの増分を生
成するアドレス増分発生手段と、生成されるアドレス列
が撮像されたフレームの範囲内にあることを監視する境
界条件検出手段と、最初の開始点及び前記境界条件検出
手段で得られた情報に基づいて、前記アドレス開始点発
生手段と前記アドレス増分発生手段とによるアドレス列
の生成を制御する制御手段と、を具備することを特徴と
する画像データ読み取り装置。
【0075】本発明は、画像データを撮像し、白黒の明
暗値の画像データとしてフレーム単位でメモリに記憶
し、その明暗値による画像データの特異的な認識パター
ンを検出したアドレスに基づき、画像データの傾きを導
出する。その傾きに従って、画像データの読み取りを行
うために累積加算によって、連続した読み取りアドレス
列を生成し、開始点アドレスに続くべきアドレスの増分
を生成する。
【0076】従って、演算速度の高精度化、高速化を実
現する専用ハードウェアを設け、且つ、該ハードウェア
にて実施するアドレス発生機構を、いずれの傾きにおい
ても対応可能な様に共有できる。
【0077】(2) 前記(1)記載の前記アドレス開
始点発生手段は、等間隔な読み取りアドレス列が生成さ
れるように前記開始点アドレスを演算により求める等間
隔アドレス演算手段を、さらに具備することを特徴とす
る画像データ読み取り装置。
【0078】本発明は、等間隔アドレス演算手段を有
し、求められたアドレスに−1/Kを加算し、傾き絶対
値が45度未満の場合は、水平軸(X軸及びY=Ymax
)上の読み取りアドレスの開始点を傾きの逆数おきに
発生し、傾きの絶対値が45度以上の場合は、垂直軸
(Y軸及びX=Xmax )上のアドレス開始点を傾きおき
に発生する。
【0079】従って、等間隔な読み取りアドレス列を生
成することで、撮像領域の全てのアドレスを指定し、か
つ重複したアドレスを指定することがないため、メモリ
内のアクセスにおいて1度アクセスした番地を再びアク
セスせず、メモリ内走査終了迄の時間が短縮される。
【0080】
【発明の効果】以上詳述したように本発明によれば、低
コストで簡易な構成で高精度化され、重複するアドレス
処理を防止することにより処理速度の高速化を実現する
画像データ読み取り装置提供することができる。
【図面の簡単な説明】
【図1】本発明による実施形態の画像データ読み取り装
置の概略的な構成を示す図である。
【図2】図1に示したメモリ制御部の詳細な構成例を示
す図である。
【図3】図2に示したモジュールの構成例を示す図であ
る。
【図4】Xアドレス及びYアドレス発生に必要なアドレ
スレジスタの動作条件を示す図である。
【図5】撮像してメモリ部内、バーコードが負の方向
(45度未満)に傾いて格納されている状態を示す図で
ある。
【図6】境界1までの走査の状態を示すタイムチャート
である。
【図7】境界2までの走査の状態を示すタイムチャート
である。
【図8】境界3までの走査の状態を示すタイムチャート
である。
【図9】本実施形態の動作を説明するためのメインルー
チンを示すフローチャートである。
【図10】モード00[傾き正(45度未満)]につい
て説明するためのフローチャートである。
【図11】図10のサブルーチンを示し、第2辺の走査
について説明するためのフローチャートである。
【図12】モード01[傾き負(45度未満)]につい
て説明するためのフローチャートである。
【図13】図12のサブルーチンを示し、第2辺の走査
について説明するためのフローチャートである。
【図14】撮像されたメモリに格納される画像データの
傾きの例を示す図である。
【図15】従来のメモリに格納された画像データの読み
取り方法におけるメモリのアドレスに対する走査間隔の
例を示す図である。
【符号の説明】
1…撮像素子 2…増幅器 3…A/D変換器 4…撮像部 5…メモリ部 6…プロセッサ(CPU) 7…プロセッサバス 8…メモリ制御部 9…2値化部 10…コード検出部 11…ワークメモリ 12…DMA部 13…コード検出/転送部 14…周辺回路
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 FI G06F 15/66 350A

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 特定の認識パターンを含む画像データを
    撮像する撮像手段と、 前記画像データを画素単位で記憶する記憶手段と、 記憶された画像データから認識パターンを検出し、この
    認識パターンに基づいて撮像されたフレームに対する画
    像データの傾きを導出する傾き検出手段と、 前記傾きに基づいて画像データの読み取りを行うために
    連続した読み取りアドレスの列を生成するアドレス発生
    手段と、 前記アドレス発生手段が前記傾きに基づいて、連続的に
    生成する各アドレス列の開始点となるアドレスを発生す
    るアドレス開始点発生手段と、 前記傾きに基づいて前記開始点のアドレスに続くべきア
    ドレスの増分を生成するアドレス増分発生手段と、 生成されるアドレス列が撮像されたフレームの範囲内に
    あることを監視する境界条件検出手段と、 最初の開始点及び前記境界条件検出手段で得られた情報
    に基づいて、前記アドレス開始点発生手段と前記アドレ
    ス増分発生手段とによるアドレス列の生成を制御する制
    御手段と、を具備することを特徴とする画像データ読み
    取り装置。
  2. 【請求項2】 前記アドレス開始点発生手段は、等間隔
    な読み取りアドレス列が生成されるように前記開始点ア
    ドレスを演算により求める等間隔アドレス演算手段を、
    さらに具備することを特徴とする請求項1に記載の画像
    データ読み取り装置。
  3. 【請求項3】 直交する第1の辺及び第2の辺からなる
    矩形のフレームで撮像された画像データの情報を読み取
    る画像データ読み取り方法において、 前記画像データを画素単位で記録したメモリから、前記
    認識パターンを検出して、この認識パターンに基づい
    て、メモリのアドレス位置に対する画像データの傾き値
    を検出し、 前記第1の辺上から第2の辺上の順に、 傾きの絶対値が45度未満の場合には、 Y軸上及び、X=Xmax 上であれば、1間隔に、 X軸上及び、Y=Ymax 上であれば、前記傾き値の逆数
    間隔にアドレス開始点を移動させ、 傾きの絶対値が45度以上90度以下の場合には、 X軸上及び、Y=Ymax 上であれば、1間隔に、 Y軸上及び、X=Xmax 上であれば、前記傾き値間隔に
    アドレス開始点を移動させ、 前記アドレス開始点から傾き値に沿った方向のアドレス
    列を生成することを特徴とする画像データ読み取り方
    法。
JP9158742A 1997-06-16 1997-06-16 画像データ読み取り装置及び読み取り方法 Withdrawn JPH117491A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9158742A JPH117491A (ja) 1997-06-16 1997-06-16 画像データ読み取り装置及び読み取り方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9158742A JPH117491A (ja) 1997-06-16 1997-06-16 画像データ読み取り装置及び読み取り方法

Publications (1)

Publication Number Publication Date
JPH117491A true JPH117491A (ja) 1999-01-12

Family

ID=15678354

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9158742A Withdrawn JPH117491A (ja) 1997-06-16 1997-06-16 画像データ読み取り装置及び読み取り方法

Country Status (1)

Country Link
JP (1) JPH117491A (ja)

Similar Documents

Publication Publication Date Title
EP2309420A1 (en) Method for improving the barcode recognition efficiency using continuous sampling, computer readable medium, and barcode recognition apparatus
EP0200885A2 (en) Method and apparatus for processing image data
JP2750226B2 (ja) 二値化閾値の設定方法
JPH06325162A (ja) 画像処理装置
US10846862B2 (en) Image processing method and image processing device
EP0235298A1 (en) Image processor
JP3237975B2 (ja) 画像処理装置
JPH117491A (ja) 画像データ読み取り装置及び読み取り方法
JPH0130180B2 (ja)
JP4661529B2 (ja) 画像処理装置
US20220392207A1 (en) Information processing apparatus, information processing method, and non-transitory computer-readable storage medium
JPH04188284A (ja) 画像追尾装置
JP2785269B2 (ja) ノイズ除去装置
JP2003016439A (ja) 画像データ処理装置
JP2004157812A (ja) 情報読取装置およびプログラム
JP2861435B2 (ja) パイプライン形演算装置
JPH1013672A (ja) 画像入力方法及び装置
JP2910295B2 (ja) 輪郭情報抽出装置
KR890003986B1 (ko) 영상처리를 위한 체인 코드 추출회로
JPH064651A (ja) 画像処理装置
JPH01151362A (ja) 画像処理装置
JPH0654941B2 (ja) 画像処理装置
JPH0787321A (ja) 画像データ処理装置
JPS63229589A (ja) 読取装置
JPH0385681A (ja) 画像処理装置

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20040907