説明

画像取込装置及び画像取込方法

【課題】画素の論理行が、画像取込装置の物理画素構造と整合していない画素の論理行の読取速度を向上させる。
【解決手段】複数の画素セルを有し、画像の一部を表示する複数の行および列に形成された画素アレイと、コマンドおよびデータを送受信するための外部インタフェースと、前記外部インタフェースから前記コマンドを受信し、前記画像取込装置を制御するためのタイミングおよび制御ロジックと、を備え、論理画素行を読み出すための1つのコマンドが、前記タイミングおよび制御ロジックに、前記論理画素行を有する複数の画素を識別させ、前記外部インタフェースへ転送させ、前記複数の画素が、前記画素アレイ内の複数の行および列から読み出され、前記複数の行の上を少なくとも1つの異なる列を読み出す。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、バーコードの画像取込装置に関し、特に、画素の論理行が、画像取込装置の物理画素構造と整合していない画素の論理行を読み出すための速度を向上させた画像読取技術に関する。
【背景技術】
【0002】
画像読取装置の一つであるバーコード・スキャナは、情報を格納するためのバーコードに依存する種々様々な用途に使用される。小売業界、航空業界、セルフサービス業界、自動車業界、小荷物配達業界、製薬業界、医療業界およびその他の業界のような産業は、在庫管理、顧客識別、アイテムの追跡、セキュリティおよび多くの他の機能を行うためにバーコードを使用している。典型的なバーコードは、スペースにより分離されている多数のバーより構成されている。情報は、バーおよびスペースの幅を変化させることによりバーコード上で符号化される。バーコードがバーコード・スキャナの視野内に置かれると、スキャナは、その内部で符号化されている情報を検索するために、バーコードを含むバーおよびスペースを検出し、分析し、復号する。この動作は、バーコードの走査または読み取りとも呼ばれる。バーコード上で符号化されている情報は、通常、一連の英数字記号(例えば、万国製品コード(UPC:Universal Product Code)またはEAN(European Article Number)コード)である。
【0003】
バーコード・スキャナ(画像スキャナとも呼ばれる)は、バーコードのデジタル画像を取り込み、次に、バーコードを検出し、復号するために画像を処理することによりバーコードを読み取る。スキャナにより各バーコードを1回走査するだけで、スキャナに提示されたすべてのバーコードを読み取ることができれば、バーコード・スキャナにとって有利である。これは1回の走査による読み取りの成功と呼ばれる。1回の走査でバーコードを読み取ることに成功すれば、チェックアウト・ステーションのところでの作業の流れを良好に維持するのが楽になり、全チェックアウト・プロセスがスピードアップする。1回の走査での読み取りの成功率が高くなれば、スキャナを操作しているスタッフにかかる負担が少なくなることも分かっている。このことは、オペレータが、チェックアウト端末を操作する顧客である場合に特に当てはまる。
【0004】
画像取込技術及び画像処理技術をベースとする高性能のパスバイ・バーコード・スキャナは、今までパスバイ走査環境で容易に受け入れられなかった。小売環境においては、画像スキャナは、30〜50インチ/秒(76.2〜127cm/秒)の読取通過速度を達成しなければならない。現在市販されている画像スキャナは、このような速度を達成することができず、それがレーザ・ベースのバーコード・スキャナがパスバイ走査環境を支配しているのである。
【発明の概要】
【発明が解決しようとする課題】
【0005】
画像スキャナが、このような速い通過速度を達成することができない1つの重大な障害は、それぞれの画像の画素情報が大容量であるため、画像取込装置で取り込んだ画素情報を転送、加工、解読するのに多大な時間を要することである。現在の画像取込装置における画像データの読み取り方法は限られている。結果として、より多くの画像データを画像取込装置で読み取る必要がある。
【課題を解決するための手段】
【0006】
このため、本発明は、複数の画素セルを有し、画像の一部を表示する複数の行および列に形成された画素アレイと、コマンドおよびデータを送受信するための外部インタフェースと、前記外部インタフェースから前記コマンドを受信し、前記画像取込装置を制御するためのタイミングおよび制御ロジックと、を備え、論理画素行を読み出すための1つのコマンドが、前記タイミングおよび制御ロジックに、前記論理画素行を有する複数の画素を識別させ、前記外部インタフェースへ転送させ、前記複数の画素が、前記画素アレイ内の複数の行および列から読み出され、前記複数の行の上を少なくとも1つの異なる列が読み出される画像取込装置を提供するものである。ここで、前記論理画素行を読み出すための前記コマンドは、前記論理画素行を含む前記画素アレイ内の前記画素を定義する情報を含むことを特徴とする。
【図面の簡単な説明】
【0007】
【図1】画像スキャン・システムのある実施形態を示す高レベル・ブロック図である。
【図2】画像取込装置のある実施形態を示す高レベル・ブロック図である。
【図3】インクリメント・レジスタおよび関連ロジックを示す高レベル・ブロック図である。
【図4】本発明のある実施形態の高レベル・フローチャートである。
【図5】論理画素行の一例を含む画素アレイの部分図である。
【発明を実施するための形態】
【0008】
図1は、バーコード145を走査するために使用する画像スキャン・システム100のある実施形態のブロック図の形での高レベル図を示す。画像スキャン・システム100は、画像スキャナ115と、店舗サーバ155と、ラベル150上に印刷されているバーコード145とを含む。画像スキャナ115は、コンピュータ・データ・ネットワーク160を通して店舗サーバ155と通信する。ネットワーク160は、有線ネットワーク(例えば、イーサネット(登録商標)・ネットワーク)であってもよいし、無線ネットワーク(例えば、IEEE802.11Gベースのネットワーク)であってもよいし、またはこれらの組合せであってもよい。ある実施形態においては、店舗サーバ155は、画像スキャナが位置する店舗から物理的に分離されていて、インターネットまたはワイド・エリア・ネットワークまたはこれらの組合せまたは異なるタイプのネットワークを通して画像スキャナ115と通信する。ある実施形態においては、複数の画像スキャナ115は、店舗サーバ155へデータ・ネットワーク160を通して通信する。
【0009】
画像スキャナ115は、画像を受信し、画像取込装置120上に画像の焦点を結ぶ画像焦点合わせ装置125を含む。画像スキャナ115は、さらに、処理モジュール130と、ユーザ・インタフェース・ハードウェア140と、通信ハードウェア135とを含む。処理モジュール130は、画像スキャナ115の他のデバイスおよびモジュールを制御するために、少なくとも1つのプロセッサと、メモリと、格納している命令と、制御装置およびインタフェース・ハードウェアとを備える。処理モジュール130は、格納している命令を実行することにより、画像スキャナ115を含んでいるか、または画像スキャナ115に接続しているハードウェア・デバイスおよびモジュールを制御する。さらに、格納している命令は、プロセッサに、画像取込装置120が取り込む画像のようなデータを処理させ、データ・ネットワーク160上で使用するプロトコルを実施するために通信ハードウェア135を制御させ、画像スキャナ115の他のソフトウェア特徴および機能を実施させる。ある実施形態においては、店舗サーバ155は、画像スキャナ115の更新を、画像スキャナ115の格納している命令または動作パラメータに送信する。これらの更新した格納している命令は、画像スキャナ115内に格納され、次に、必要に応じて実行される。
【0010】
画像取込装置120は、バーコード145から反射した光を電気信号に変換する。反射光のソースは、周囲の光であってもよいし、または十分な周囲の光が得られない場合には、照明装置からの光であってもよい。画像取込装置120は、光回路および集積回路の両方を備えるシリコン系デバイスであり、相補型金属酸化膜半導体(CMOS)集積回路として製造することができる。画像取込装置120は、電荷結合素子(CCD)またはCMOSデバイスを含むことができる。
【0011】
画像取込装置120は、光学像を、行および列に組織されている画素情報を含む電子デジタル画像に変換することにより、その表面上に焦点を結んでいる光学像を取り込む。画像取込装置120からすべての生の画素データを読み取るのにかかる時間は、画像取込装置120内のデジタル画像を単に取り込むのにかかる時間と比較すると比較的長い。
【0012】
ここで図2を参照すると、この図は、画像取込装置120の高レベル・ブロック図を示す。この実施形態においては、画像取込装置120は、CMOSデバイスとして実施される。画素アレイ205は、画像取込装置120の光学的にアクティブな領域を形成し、光または光子エネルギーが電気エネルギーに変換され、個々の画素データとして格納される領域を形成する。個々の画素セル(本願では、適宜、単に「画素」という)はデータを含んでいて、データの大きさは、ある時間の間に集積した画素アレイ205の所与の領域に衝突する光子エネルギー全体の量に比例する。画素は、物理的に複数の行および複数の列に編成される。タイミングおよび制御ロジック265は、画像の取り込みおよび取り込んだ画像を示す画素アレイ205からの画素データの読み取りを含む画像取込装置120の動作を制御する。外部インタフェース260は、外部デバイス(すなわち、プロセッサまたは画像取込装置120からのデータを処理するように設計されているかまたはプログラミングされている特殊なハードウェア)へのタイミングおよび制御ロジック265へのアクセスおよび制御を可能にする。外部インタフェース260は、また、外部デバイスからのコマンドを受信し、画素データを含むデータを送受信するためにも使用される。画像取込装置120により取り込んだ画素データは、画素アレイ205から画素バッファ255に転送され、次に、外部デバイスがデータを除外する準備ができたことを知らせた場合に、外部インタフェース260を通して外部に転送される。外部インタフェース260は、画像取込装置120の外部に位置するデータ/制御バス(図示せず)に対してインタフェースとして機能する。タイミングおよび制御ロジック265は、データ/制御バスおよび1つまたは複数の外部デバイスとの相互作用を管理する。
【0013】
画素アレイ205から全画素データを読み出すコマンドにより、タイミングおよび制御ロジック265は、画素アレイ205の第1の行番号で行ラッチ215をロードし、画素アレイ205の第1の列番号で列ラッチ235をロードする。行ラッチ215は、画素アレイの各行を必要に応じて順次選択することができるようにするために、タイミングおよび制御ロジック265からのコマンド上の行番号をインクリメントする行カウンタ220を駆動する。行カウンタ220の出力は、画素アレイ205内の1つの行に対応する選択行信号を生成する行デコーダ225を駆動する。行デコーダ225の出力は、画素データの1つの行を選択するために、画素アレイ205に行選択信号をバッファし、送信する行ドライバ230に接続される。列ラッチ235は、行内の各列をその順番が来た場合、または必要に応じて選択することができるようにするために、タイミングおよび制御ロジック265からのコマンド上の列番号をインクリメントする列カウンタ240を駆動する。列カウンタ240の出力は、画素アレイ205内の1つの列に対応する1つの列選択信号を生成する列デコーダ245を駆動する。列デコーダ245の出力は、列ドライバ250に接続し、この列ドライバ250は、列選択信号をバッファし、それを画素アレイ205に送信する。行および列選択信号は、画素アレイ205から1つの画素を選択するために結合する。選択した画素に対する画素データは、画素バッファ255に移動し、そこで画像取込装置120の外部に位置するコンピュータまたはコンピュータ・ロジックにより読み取られる前に格納される。ある実施形態においては、画素バッファ255は、複数の画素からのデータをバッファするので、複数の画素は、画像取込装置に外部からアクセスが行われる度に読み取られる。これにより、全画素アレイ205を読み取るために必要なバス時間が低減する。ある実施形態においては、画素バッファ255は、画素データを調整したりアナログ形式からデジタル形式に変換する。
【0014】
読み出すための行および列の適切な開始および終了位置を指示することにより、全部の画素データより少ない画素データを読み出すことができる。例えば、タイミングおよび制御ロジック265へのコマンドは、必要な最初の2つの行だけを要求することができる。この例の場合には、開始行の位置は0であり、終了行の位置は1である。全部の列を読み出す必要がある場合には、開始列の位置は0であり、終了列の位置は最終列の番号になる。最終行および列の番号は、画像取込装置120の解像度により異なる。装置が大きければ大きいほど、行および列の数も多くなる。パラメータを設定すると、タイミングおよび制御ロジック265は、画素アレイ205から適切な画素が読み出されるように、行ラッチ215および列ラッチ235をロードし、カウンタを作動する。このようにして、1つのコマンドは、画像取込装置120の1つまたは複数の物理行から、同じ列が読み出される画素データのブロックを読み出すことができる。複数の行を読み出すことができたとしても、読み出される画素の列は一定である(各行の読み出しのために同じ列が読み出される)。
【0015】
画素データの物理行を読み出す他に、1つのコマンドは、タイミングおよび制御ロジック265に、画素アレイ205から画素の論理行を読み出させることができる。論理画素行は、画素の1つの物理行上にすべての画素データが順次常駐していないで、異なる列を各行から読み出すことができる画素データの組合せである。他の言い方をすれば、論理画素行を形成している画素は、画素の2つ以上の物理行からおよび異なる列から取り出される。例えば、画素アレイ205のある隅から対向する隅に対角線方向に延びる論理画素行を生成することができ、画素アレイ205上に対角線方向に置いたラインにより表示することができる。論理画素行は、論理画素行を表す対角線方向のラインの下に完全にまたはほぼ完全に位置する画素アレイ205内の各物理行からの画素を含む。タイミングおよび制御ロジック265には、論理画素行に対応する画素データを読み出すための1つのコマンドが送られる。このコマンドは、論理画素行の一部である画素を識別する情報を含んでいるので、これらの画素を画素アレイ205から検索することができる。次に、検索した画素データはバッファされるので、この画素データを外部デバイスにより画像取込装置120から読み出すことができる。画素データを読み出すためにこの方法を使用すれば、画素の物理行と整合していない画素の論理行を読み出すために必要な時間が大幅に低減し、画素アレイ205の物理行とほとんどあらゆる角度で整合している論理画素行を生成することができる。それぞれが物理画素行に対して異なる角度を有する複数の論理画素行を読み出すことができるので、特に、バーコードの縦軸が画素アレイ205の物理画素行に平行でない場合に、画像スキャナ115は、取り込んだ画像内のバーコードの存在を迅速に識別することができる。
【0016】
対角線方向の論理画素行を読み出す上記例の場合には、いくつかの従来技術のデバイスは、各行から要求された1つの画素にアクセスするためだけに、各物理行上のすべての画素データを読み出さなければならない。他の従来技術のデバイスの場合には、画素の1つの行から1つまたは複数の画素を読み出すようにデバイスをプログラムすることができるが、読み出さなければならない画素アレイ205内の各行に対してコマンドを発行しなければならない。両方の方法とも時間がかかり、リソースを無駄に使用する。論理画素行に属する画素データだけを転送すれば、転送しなければならないデータの量および転送に関連する時間およびリソースが大幅に低減する。複数のコマンドの代わりに、画像取込装置120に1つの読み出しコマンドだけを使用して論理画素行を転送しても、論理画素行を読み出すのに必要な時間が低減する。
【0017】
論理画素行は、「点と傾き」の方程式により数学的に定義することができる。点と傾きの方程式は、ラインが通過する二次元の点(x,y)およびそのラインを定義するラインの傾き(m)を使用する。点と傾きの方程式の一般的な形は、y−y=m(x−x)である。2つの座標(x,y)およびラインの傾きにより定義される1つの既知の位置を使用することにより、どの物理画素が論理画素行を含んでいるのかを判定するために、論理画素行の位置を表すラインを定義し、画素アレイ205を横切って重畳することができる。次に、これらの物理画素は画素アレイ205から読み出される。ある実施形態の場合には、タイミングおよび制御ロジック265は、論理画素行を含む物理画素を識別するために必要な数学的計算を行うことができる演算ロジックおよびソフトウェアを含む。論理画素行を読み出すためのコマンドは、座標(x,y)および傾き(m)を含む。この情報を使用して、タイミングおよび制御ロジック265は、論理画素行を含む物理画素を計算する。しかし、ある実施形態の場合には、タイミングおよび制御ロジック265がより少ないハードウェアおよび計算時間しか必要としない簡単なアプローチを使用している。このアプローチについては、以下にさらに詳細に説明し、図3、図4および図5に示す。
【0018】
図3を参照すると、この図は、論理画素行を含む物理画素の位置を識別するために使用するインクリメント・レジスタ300の高レベル・ブロック図を示す。タイミングおよび制御ロジック265は、画素アレイ205を通る近似線を定義し、それにより論理画素行を含む物理画素を識別するために、インクリメント・レジスタ300内の情報を使用する。インクリメント・レジスタ300は、4つの領域、すなわち、傾き方向フラグ305、インクリメント方向フラグ310、第1のサイクルおよび第2のサイクルに分割される。各フィールドは、そのフィールド内に格納している情報を表すための1つまたは複数のデータ・ビットを含む。インクリメント・レジスタ300の第1のフィールドは、傾き方向フラグ305である。傾き方向は、「0」であっても「1」であってもよい。「0」の傾き方向は、傾きが点の右に位置していて、正の傾き値を有することを示す。「1」の傾き方向は、傾きが点の左に位置していて、負の傾き値を有することを示す。インクリメント・レジスタ300の第2のフィールドは、定義した方向の動きが、2サイクル・フィールド内に含まれている値により決まる画素アレイ205の方向を定義するインクリメント方向フラグ310である。インクリメント方向「0」は、水平方向(列を横切って移動する)を示し、インクリメント方向「1」は、垂直方向(行を横切って移動する)を示す。インクリメント方向フラグ310が選択しなかった方向は、いつでも、選択した方向の各インクリメント/デクリメント・サイクルの後に1つだけ変化する。
【0019】
引き続き図3を参照すると、最後の2つのフィールドは、第1のサイクル・フィールド315および第2のサイクル・フィールド320と呼ばれる。これらのフィールドは、近いラインの一部として選択される画素の数を含む。第1のサイクル・フィールド315の値は、カウンタ325に転送され、第2のサイクル・フィールド320の値は、カウンタ330に転送される。タイミングおよび制御ロジック265は、選択する画素数を判定するために両方のカウンタ325および330を使用する。タイミングおよび制御ロジック265は、また、インクリメント方向フラグ310の値により行カウンタ220または列カウンタ240を制御するために、両方のカウンタ325、330を使用する。行カウンタ220または列カウンタ240の値をインクリメントすると、画素アレイ205内の所望の画素を選択し、読み出すことができる。
【0020】
インクリメント・レジスタ300の他の実施形態は、異なるサイズのフィールドを有していて、異なるタイプのデータを含む1つのまたは複数の追加のフィールドを有することができる。これらすべてのフィールドは、論理画素行を定義するために使用される。
【0021】
図4を参照すると、この図は、論理画素行を含む物理画素を読み出すための方法を示す高レベル・フローチャートを示す。ステップ400において、画像取込装置120は、論理画素行を読み出すためのコマンドを受信する。タイミングおよび制御ロジック265は、このコマンドを外部ソースから受信する。このコマンドは、画素アレイ205からのどの物理画素が、論理画素行を含んでいるのかを判定するために必要な情報を含む。
【0022】
ステップ410において、タイミングおよび制御ロジック265は、行ラッチ215、列ラッチ235およびインクリメント・レジスタ300を、コマンド内に含まれている値またはコマンドが含んでいる情報から計算した値でロードする。インクリメント・レジスタ300がロードされた後で、第1のサイクル・フィールド315内の値がカウンタ325に送られ、第2のサイクル・フィールド320内の値がカウンタ330に送られる。
【0023】
ステップ420において、第1の物理画素が、行ラッチ215および列ラッチ235にロードされている値により画素アレイ205から読み出される。この画素データは、一時的に格納するために画素バッファ255に転送される。
【0024】
ステップ430において、行カウンタ220および列カウンタ240内に格納している値が、インクリメント・レジスタ300内に格納している値に基づいて修正されるので、論理画素行内の次の画素が、画素アレイ205から選択される。行カウンタ220および列カウンタ240内に格納している値を修正する動作は、値をインクリメントし、値をデクリメントし、または値をそのままに維持するステップを含むことができる。インクリメント・レジスタ300のフィールド内に格納している値は、各カウンタに対して取るべき適切な動作を判定する。インクリメント・レジスタ300のサイクル・フィールドの動作については、画素選択プロセスのところでさらに詳細に説明する。
【0025】
ステップ440において、行カウンタ220または列カウンタ240の値が画素アレイ205の物理境界を超えたか否かを判定するためのチェックが行われる。どちらかのカウンタの値が境界を超えた場合には、論理画素行を含むすべての画素が読み出され、コマンドが終了する(ステップ460)。両方のカウンタの値が境界を超えていない場合には、カウンタにより現在ポイントされている画素データが、一時的に格納するために画素バッファ255に転送される。画素バッファ255は、1回で複数の画素からのデータを格納することができる。このようにして、外部デバイスは、1回のバス読み出し動作で、複数の画素のためのデータを読み出すことができる。
【0026】
画素アレイ205からすべての画素をアドレス指定または読み出すプロセスは、画素選択プロセスと呼ばれ、タイミングおよび制御ロジック265により制御される。画素選択プロセスを開始する前に、行ラッチ215および列ラッチ235が、論理画素行の一部として読み出される第1の物理画素の開始位置でロードされる。このプロセスは、第1のサイクル・フィールド315の値をカウンタ325に転送することにより開始する。行ラッチ215および列ラッチ235によりポイントされている物理画素が読み出される。カウンタ325の値がデクリメントされる。カウンタ325の値が0でない場合には、タイミングおよび制御ロジック265は、傾き方向フラグ305およびインクリメント方向フラグ310の値に基づいて、行カウンタ220または列カウンタ240の値を増大または低減させる。カウンタ(行カウンタ220または列カウンタ240)のうちの一方は、インクリメント方向フラグ310の値に基づいてカウントしない。行カウンタ220および列カウンタ240の新しい値により、新しい物理画素が、画素アレイ205から選択され、読み出される。このプロセスは、カウンタ325の値がゼロになるまで継続して行われる。行カウンタ220および列カウンタ240は、傾き方向フラグ305に基づいて別々にインクリメントされるか、またはデクリメントされる。次に、タイミングおよび制御ロジック265は、第2のサイクル・フィールド320内の値をカウンタ330に転送する。物理画素を選択するためのプロセスは、第1のサイクル・フィールドおよびカウンタ325の代わりに、第2のサイクル・フィールドおよびカウンタ330を使用して引き続き行われる。カウンタ330がゼロになると、このプロセスは、論理画素行を含むすべての物理画素が、画素アレイ205から読み出されるまで、再度第1のサイクル・フィールドを使用して繰り返される。
【0027】
他の実施形態の場合には、論理画素行を含む物理画素を識別するための他の方法が実施される。しかし、それぞれの方法の場合、1つのコマンドにより、画像取込装置120は、画素アレイ205から論理画素行を含むすべての物理画素を読み出す。ある場合には、開始値およびパラメータを設定するために追加のコマンドが使用されるが、画像取込装置120が読み出しを行い、論理画素行を含むすべての画素を使用可能にするのに1つのコマンドだけですむ。また、外部デバイスが、バッファしている画素データを画像取込装置120から外部の位置に転送する複数のデータ・バス読み出しコマンドを発行することができることにも留意されたい。データ・バス読み出しコマンドは、論理画素行内のすべての画素の読み出しを要求している画像取込装置に送られた高レベル・コマンドとは異なるものである。データ・バス読み出しコマンドは、単に、論理画素行を含むすべての画素を読み出すための高レベル・コマンドに由来するバッファされている画素データを転送するだけである。
【0028】
図5を参照すると、この図は、画素アレイ205の一部内で選択した論理画素行の一例である。影を付けた画素は、論理画素行から選択した、または画素アレイ205から読み出した画素を示す。この論理画素行を選択するために使用したインクリメント・レジスタ300の値は「01010011」である。傾き方向フラグ(レジスタの一番左のビット)は、「0」であり、これは傾きが右に傾いていることを意味する。インクリメント方向フラグ(左から2番目のビット)は「1」であり、これはサイクル・フィールドの値を使用して、垂直方向に画素を選択することを意味する。第1のサイクル・フィールドは、「010」または十進法の「2」である。第2のサイクル・フィールドは、「011」または十進法の「3」である。この例の場合、開始画素点510は、行0、列0である。傾き方向フラグ305は、ラインが右に傾いていることを示していて、インクリメント方向フラグ310は、選択した画素が垂直方向を向いていることを示している。第1のサイクル・フィールド315は、2つの画素が選択され、これらの第1の2つの画素515に影が付けられていることを示している。インクリメント方向が垂直であるので、第1の2つの画素が選択された後で、水平方向に1つだけインクリメントする。次に、第2のサイクル・フィールド320は、3つの画素を選択すべきことを示す。3つの画素520が選択される。再度水平方向に1つだけインクリメントし、第1のサイクル・フィールド値315を使用して、シーケンスが再度繰り返される。画素アレイの縁部205に到着するまで、物理画素を選択するこのシーケンスは続行する。
【0029】
図5の論理画素行は、画素アレイ205の物理行から68.2度の角度を有するラインを表す。「01001001」というインクリメント・レジスタ300の値を使用して生成した第2の論理画素行(図示せず)は、画素アレイ205の行に対して45度の角度を有する。インクリメント・レジスタ300の値を変更することにより、画素アレイ205の行に対してほぼすべての角度を形成している複数の論理画素行を定義することができる。論理画素行を含む物理画素が識別されると、物理画素データが画素アレイ205から読み出され、バッファされ、外部に転送される。
【0030】
論理画素行を定義するために点と傾きの方法により画像取込装置を参照しながら本発明を説明してきたが、当業者であれば上記説明および添付の特許請求の範囲により、種々様々な実施態様を使用することができることを理解することができるだろう。さらに、この画像取込装置120は、バーコード認識に関連していない他の機能でも使用することができる。
【産業上の利用可能性】
【0031】
本発明は、バーコードの画像取込装置に関し、特に、画素の論理行が、画像取込装置の物理画素構造と整合していない画素の論理行を読み出すための速度を向上させた画像読取技術に関するものであり、産業上の利用可能性を有する。

【特許請求の範囲】
【請求項1】
複数の画素セルを有し、画像の一部を表示する複数の行および列に形成された画素アレイと、
コマンドおよびデータを送受信するための外部インタフェースと、
前記外部インタフェースから前記コマンドを受信し、前記画像取込装置を制御するためのタイミングおよび制御ロジックと、
を備え、
論理画素行を読み出すための1つのコマンドが、前記タイミングおよび制御ロジックに、前記論理画素行を有する複数の画素を識別させ、前記外部インタフェースへ転送させ、前記複数の画素が、前記画素アレイ内の複数の行および列から読み出され、前記複数の行の上を少なくとも1つの異なる列を読み出す、ことを特徴とする画像取込装置。
【請求項2】
論理画素行を読み出すための前記コマンドが、前記論理画素行を含む前記画素アレイ内の前記画素を定義する情報を含む、請求項1に記載の画像取込装置。
【請求項3】
前記情報が、読み出すための前記第1の画素の位置を含む、請求項2に記載の画像取込装置。
【請求項4】
前記情報が、前記論理画素行を含む前記残りの画素を定義する点と傾きの情報をさらに含む、請求項3に記載の画像取込装置。
【請求項5】
識別され、前記外部インタフェースに転送された前記複数の画素が、前記論理画素行を含むすべての画素を含む、請求項1に記載の画像取込装置。
【請求項6】
全論理画素行を読み出す画像取込装置による画像取込方法であって、
前記画像取込装置内の画素アレイから全論理画素行を読み出すためのコマンドを受信するステップであって、前記画素アレイの前記画素が、行および列の形に組織され、前記論理画素行を含む画素が、複数の行および列内に常駐し、前記複数の行の上を少なくとも1つの異なる列が読み出されるステップと、
画素アレイ内で、前記論理画素行を含む第1の画素を識別するステップと、
前記第1の画素のデータを、外部インタフェースに転送するステップと、
前記画素アレイ内で、前記論理画素行を含む以降の画素を識別し、前記以降の画素のデータを前記外部インタフェースに転送し、前記論理画素行を含むすべての画素が、識別され、前記外部インタフェースに転送されるまでこのステップを繰り返すステップと、
の各ステップを含む画像取込方法。
【請求項7】
前記コマンドが、前記論理画素行を含む前記画素アレイからすべての画素を識別する情報を含む、請求項6に記載の画像取込方法。
【請求項8】
前記情報が、前記画素アレイから、前記論理画素行を含むすべての画素を識別するための点と傾きの方法を使用する、請求項7に記載の画像取込方法。
【請求項9】
光学コードを読み出すための画像取込装置であって、
店舗サーバ・コンピュータと、
前記店舗サーバ・コンピュータに接続しているネットワークと、
前記ネットワークに接続している光学コード画像スキャナであって、前記光学コード画像スキャナが、
前記光学コードの画像を取り込むための画像取込装置を備え、前記画像取込装置が、
各画素が取り込んだ画像の一部を表している複数の行および列の形に組織されている画素アレイと、
前記画像取込装置にコマンドおよびデータを送受信するための外部インタフェースと、
前記外部インタフェースからコマンドを受信し、前記画像取込装置を制御するためのタイミングおよび制御ロジックと、
を備え、
論理画素行を読み出すための1つのコマンドが、前記タイミングおよび制御ロジックに、前記論理画素行を含む複数の画素を識別させ、前記外部インタフェースへ転送させ、前記複数の画素が、画素アレイ内の複数の行および列から読み出され、前記複数の行の上を少なくとも1つの異なる列が読み出される光学コード画像スキャナと、
を備える画像取込装置。
【請求項10】
論理画素行を読み出すための前記コマンドが、前記論理画素行を含む前記画素アレイ内の前記画素を定義する情報を含む、請求項9に記載の画像取込装置。
【請求項11】
前記情報が、読み出すための前記第1の画素の位置を含む、請求項10に記載の画像取込装置。
【請求項12】
前記情報が、前記論理画素行を含む前記残りの画素を定義する点と傾きの情報をさらに含む、請求項11に記載の画像取込装置。
【請求項13】
識別され、前記外部インタフェースに転送された前記複数の画素が、前記論理画素行を含むすべての画素を含む、請求項9に記載の画像取込装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2010−140481(P2010−140481A)
【公開日】平成22年6月24日(2010.6.24)
【国際特許分類】
【出願番号】特願2009−277760(P2009−277760)
【出願日】平成21年12月7日(2009.12.7)
【出願人】(391007161)エヌ・シー・アール・コーポレイション (85)
【氏名又は名称原語表記】NCR CORPORATION
【Fターム(参考)】