説明

バーコード読取装置及びプログラム

【課題】バーコードのイメージデータを合成する前に、バーコードを基準位置から読み取ったときのイメージデータに補正する処理を行うことにより、正確な合成処理を可能とする。
【解決手段】バーコード読取装置1は、読取部15によりバーコードを複数回読み取り、読取毎にバーコードイメージデータを取得し、取得された各バーコードイメージデータをRAM14に記憶し、バーコードの読取動作中における読取部15の3次元空間での移動状態をジャイロセンサ16により検出する。CPU10は、ジャイロセンサ16により検出された移動状態に基づいて、RAM14に記憶された各バーコードイメージデータを、予め設定された基準位置から読み取られた場合のバーコードイメージデータに補正し、補正された各バーコードイメージデータを合成し、デコードする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、バーコード読取装置及びプログラムに関する。
【背景技術】
【0002】
印刷品質が粗悪であったり、一部が破損したりしているなど、欠陥を有するバーコード(図21参照)を、レーザ光等を光源とする一次元スキャナで読み取る場合、光が照射される位置によっては、正確に読み取ることができず、デコードすることができないことがある。しかし、実際の読取動作はユーザがスキャナを手に持った状態で行われるため、読取中のユーザの手の動きによって、バーコード面上の様々な位置が読み取られている。このため、図21に示すような欠陥を有するバーコードの場合、図22に示すように、ユーザの手の動きによって光の照射位置(照射ライン)が異なる複数回の読取でそれぞれ得られたイメージデータをメモリに記憶しておき、それぞれのイメージデータを重ね合わせるなどの合成処理によって正しいイメージデータとして再生し、デコードする処理が行われている(例えば、特許文献1参照)。
【特許文献1】特開平7−57035号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかしながら、上述のように、バーコードの読取動作は、ユーザがスキャナを手に持った状態で行われているため、ユーザの手の動きに起因して、読取中の光の照射位置が、図22に示すように上下方向へ移動するだけでなく、バーの配列方向へ移動したり、当該配列方向に対して傾斜したりするなど、様々に変化する。よって、複数回の読取で得られたイメージデータをそのまま合成しても、正確な読取結果を得ることができないという問題がある。
【0004】
本発明の課題は、バーコードのイメージデータを合成する前に、バーコードを基準位置から読み取ったときのイメージデータに補正する処理を行うことにより、正確な合成処理を可能とすることである。
【課題を解決するための手段】
【0005】
請求項1に記載のバーコード読取装置は、バーコードを複数回読み取り、読取毎にバーコードイメージデータを取得する読取手段と、前記読取手段により取得された各バーコードイメージデータを記憶する記憶手段と、前記バーコードの読取動作中における前記読取手段の3次元空間での移動状態を検出する検出手段と、前記検出手段により検出された移動状態に基づいて、前記記憶手段に記憶された各バーコードイメージデータを、予め設定された基準位置から読み取られた場合のバーコードイメージデータに補正する補正手段と、前記補正手段により補正された各バーコードイメージデータを合成する合成手段と、前記合成手段により合成されたバーコードイメージデータをデコードするデコード手段と、を備える。
【0006】
請求項2に記載の発明は、請求項1に記載のバーコード読取装置において、前記検出手段は、ジャイロセンサを用いて前記移動状態を検出し、前記ジャイロセンサは、3次元空間での前記読取手段の加速度を検出する加速度センサと、3次元空間での前記読取手段の移動によって生じる当該読取手段の傾きを検出する傾きセンサと、を有する。
【0007】
請求項3に記載の発明は、コンピュータを、バーコードを読取手段により複数回読み取り、読取毎にバーコードイメージデータを取得する手段、前記取得された各バーコードイメージデータを記憶手段に記憶させる手段、前記バーコードの読取動作中における前記読取手段の3次元空間での移動状態を検出する手段、前記検出された移動状態に基づいて、前記記憶手段に記憶された各バーコードイメージデータを、予め設定された基準位置から読み取られた場合のバーコードイメージデータに補正する手段、前記補正された各バーコードイメージデータを合成する手段、前記合成されたバーコードイメージデータをデコードする手段、として機能させるためのプログラムである。
【発明の効果】
【0008】
本発明によれば、バーコードのイメージデータを合成する前に、バーコードを基準位置から読み取ったときのイメージデータに補正する処理を行うことにより、正確な合成処理が可能となり、正確な読取結果を得ることができる。
【発明を実施するための最良の形態】
【0009】
以下、図面を参照して、本発明の実施形態を説明する。
まず、本実施形態における構成を説明する。
【0010】
図1に、本発明の実施形態に係るバーコード読取装置1の主要部構成を示す。バーコード読取装置1は、ユーザがスキャナ部分を手に持ってバーコードを読み取らせる手持ち式の読取装置であり、図1に示すように、CPU(Central Processing Unit)10、表示部11、入力部12、記憶部13、RAM(Random Access Memory)14、読取部15、ジャイロセンサ16を備え、各部はバス17を介して電気的に接続され、電源部18からの電力供給を受けている。
【0011】
CPU10は、記憶部13に記憶された各種制御プログラムをRAM14に展開し、当該制御プログラムとの協働によって、各種の処理を行う。具体的にCPU10は、記憶部13に記憶された制御プログラムに従ってバーコード読取処理を行う(図2参照)。
【0012】
表示部11は、LCD(Liquid Crystal Display)等のディスプレイを有し、CPU10から入力される表示制御信号に従って所要の表示処理を行う。
【0013】
入力部12は、バーコードの読み取りを開始させるためのトリガキー等の各種のキーや、表示部11の表示画面上を覆うように設けられたタッチパネルを有し、キー操作又はタッチパネルの操作による操作信号をCPU10に出力する。
【0014】
記憶部13は、CPU10により実行される各種制御プログラム及びこれらの制御プログラムの実行時に必要なデータを記憶している。
【0015】
RAM14は、CPU10により実行される各種制御プログラムを展開するプログラム格納領域と、入力データ及び制御プログラムの実行時に生じる処理結果等のデータを一時的に格納するデータ格納領域とを有する。
【0016】
読取部15は、CMOS(Complementary Metal Oxide Semiconductor)イメージセンサ又はCCD(Charge Coupled Device)イメージセンサ、A/Dコンバータ等により構成される。読取部15は、CMOSイメージセンサ又はCCDイメージセンサにより、読取対象のバーコードに照射されたレーザ光の反射光によってバーコードを読み取り、読取により得られた光画像信号を光電変換により電気信号(アナログ信号)に変換し、A/Dコンバータにより、このアナログ信号をデジタル信号に変換し、バーコードのイメージデータを取得する。
【0017】
ジャイロセンサ16は、加速度センサ161及び傾きセンサ162を有し、バーコードの読取動作中における読取部15の3次元空間での移動状態を検出する。加速度センサ161は、3次元空間で移動した読取部15の加速度、移動した時間、移動した方向を検出する。加速度センサ161により検出された情報によって、読取部15の移動距離を算出することができる。傾きセンサ162は、3次元空間での読取部15の動きによって生じた読取部15の傾きを検出する。傾きセンサ162で検出された傾きによって、バーコード面に対する光の照射角度を算出することができる。
【0018】
次に、本実施形態における動作を説明する。
まず、図2のフローチャートを参照して、バーコード読取装置1のCPU10の制御の下で実行されるバーコード読取処理について説明する。
【0019】
入力部12のトリガキーが押下されると、所定のスキャン速度(例えば、100スキャン/秒)で読取部15によりバーコードの読取が開始され、読取毎にバーコードのイメージデータ(以下、「バーコードイメージデータ」という。)が取得される(ステップS1)。ステップS1で読取毎に取得された各々のバーコードイメージデータは、RAM14に保存される(ステップS2)。
【0020】
次いで、ステップS2においてRAM14に保存された各バーコードイメージデータを、予め設定された基準位置から読み取られた場合に取得されるバーコードイメージデータに補正する補正処理が行われる(ステップS3)。ステップS3の補正処理については、後に図3〜図20を参照して詳細に説明する。
【0021】
次いで、ステップS3において補正された各バーコードイメージデータの合成が行われる(ステップS4)。ステップS4での合成では、例えば、各バーコードイメージデータを重ね合わせることにより、一のバーコードイメージデータにおけるバーの欠損箇所(擦れた箇所、印字が薄い箇所など)を他のバーコードイメージデータで補うなどの処理が行われる。
【0022】
次いで、合成後のバーコードイメージデータを用いてバーコードのデコード処理が行われる(ステップS5)。ステップS5でのデコード処理では、バーコードイメージデータによって表される白色と黒色のバーの配列が、数値や文字の配列を表すデータに変換される。
【0023】
デコード処理が終了すると、ステップS5のデコード処理において正常にデコードすることができたか否かが判定される(ステップS6)。ステップS6において、正常にデコードすることができなかったと判定された場合(ステップS6;NO)、タイムアウトになる前であれば(ステップS7)、ステップS1に戻り、引き続きバーコードの読取動作を継続する。
【0024】
ステップS6において、正常にデコードすることができたと判定された場合(ステップS6;YES)、デコード処理の処理結果が出力(例えば、表示部11に表示)され(ステップS8)、本バーコード読取処理が終了する。
【0025】
次に、図3のフローチャート及び図4〜図20を参照して、バーコードイメージデータの補正処理(図2のステップS3)について詳細に説明する。
【0026】
本実施形態においてバーコードイメージデータの補正処理とは、ジャイロセンサ16から取得される読取部15の3次元空間(x−y−z)における移動状態に基づいて、読取部15から実際に取得されたバーコードイメージデータを、予め設定された基準位置から読み取られた場合に取得されるバーコードイメージデータに補正する処理である。以下では、バーコード面の中心部分を直交座標系の原点Oとし、バーコード面に垂直な方向をx軸方向、バーコード面上の各バーが配列する方向をy軸方向として説明する。
【0027】
本実施形態では、ジャイロセンサ16から取得される読取部15の3次元空間における移動状態を、読取部15の光源OSからの照射状態に基づいて以下の5通りに分類し、それぞれの移動状態に対応する補正処理(補正H1〜補正H5)について説明する。
【0028】
[1]バーコード面βに近づくように光を照射した状態(図4参照);
[2]バーコード面βから遠ざかるように光を照射した状態(図7参照);
[3]x−y平面内の基準方向(x軸方向に平行)に対して傾斜するように光を照射した状態(図10参照);
[4]バーコード面βに対してバーの配列方向(y軸方向)に移動するように光を照射した状態(図13参照);
[5]バーコード面β上の照射ラインがバーの配列方向(y軸方向)に対して傾斜するように光を照射した状態(図16参照).
【0029】
なお、実際にジャイロセンサ16で検出される移動状態は、上記[1]〜[5]に対応する移動状態が複合されたものであるが、これらの複合された移動状態を上記[1]〜[5]に分離して、各々の移動状態に対する補正処理を行うことにより、最終的には複合された移動状態に対する補正処理と同等の結果が得られる。
【0030】
図3に示すバーコードイメージデータの補正処理では、まず、ジャイロセンサ16から読取部15の移動状態が取得される(ステップS20)。そして、当該移動状態が、図4に示すようにバーコード面βに近づくように光を照射した状態(移動状態[1])又は図7に示すようにバーコード面βから遠ざかるように光を照射した状態(移動状態[2])を含むか否かが判定される(ステップS21)。
【0031】
ステップS21において、ジャイロセンサ16から取得された移動状態が、移動状態[1]又は移動状態[2]を含むと判定された場合(ステップS21;YES)、以下の補正H1又は補正H2が行われる(ステップS22)。
【0032】
[補正H1]
図4に示す移動状態[1]の場合、光源OSがバーコード面βに近づくにつれ、図5(a)に示すように、バーコード面βにおける光の照射ラインLの幅が狭くなる。よって、図5(b)に示すように、実際に読取部15が認識する各バーの幅は、図5(a)に示す元の幅よりも太くなる。図5(a)及び図5(b)において白色及び黒色それぞれに対応する「バー幅」は、バーの幅を表すカウンタ値であり、例えば、バーの配列順に、白色の幅が60、黒色の幅が10、白色の幅が20、…のように表される。以下の、図8、図11、図14、図17についても同様である。
【0033】
読取部15の光源OSの移動距離に応じてバー幅が太くなる割合は、読取部15で使用されるスキャナモジュールの特性により異なっており、予め設定されている。例えば、図6に示すように、1回目の読取で取得されるバー幅をB1、2回目の読取で取得されるバー幅をB2、ジャイロセンサ16から取得される光源OSの移動距離をΔD、移動距離に応じてバー幅が太くなる割合を補正係数f1とすると、補正H1での補正後のバー幅は、式(1)のように表される。
補正後のバー幅=補正前のバー幅×ΔD×f1 …(1)
【0034】
[補正H2]
図7に示す移動状態[2]の場合、光源OSがバーコード面βから遠ざかるにつれ、図8(a)に示すように、バーコード面βにおける光の照射ラインLが広くなる。よって、図8(b)に示すように実際に読取部15が認識する各バーの幅は、図8(a)に示す元の幅よりも細くなる。
【0035】
移動距離に応じてバー幅が細くなる割合は、読取部15で使用されるスキャナモジュールの特性により異なっており、予め設定されている。例えば、図9に示すように、1回目の読取で取得されるバー幅をB1、2回目の読取で取得されるバー幅をB2、ジャイロセンサ16から取得される光源OSの移動距離をΔD、移動距離に応じてバー幅が細くなる割合を補正係数f2とすると、補正H2での補正後のバー幅は、式(2)のように表される。
補正後のバー幅=補正前のバー幅×ΔD×f2 …(2)
【0036】
図3のステップS21において、ジャイロセンサ16から取得された移動状態が、移動状態[1]若しくは移動状態[2]の何れも含まないと判定された場合(ステップS21;NO)、又はステップS22の補正H1若しくは補正H2が終了すると、ジャイロセンサ16から取得された移動状態が、図10に示すように、x−y平面内において基準方向(x軸方向に平行)に対して傾斜するように光を照射した状態(移動状態[3])を含むか否かが判定される(ステップS23)。
【0037】
ステップS23において、ジャイロセンサ16から取得された移動状態が移動状態[3]を含むと判定された場合(ステップS23;YES)、以下の補正H3が行われる(ステップS24)。
【0038】
[補正H3]
図10に示すように、光の照射方向がx軸に対して傾斜している場合、図11(a)に示すバーコード面β上の照射ラインLは、バーの位置(y座標の値)によって光源OSからの距離が異なる。従って、図10に示す移動状態[3]の場合、図11(b)に示すように、y軸の正の方向に向かって光源OSからの距離が近くなるため、バー幅が太くなり、y軸の負の方向に向かって光源OSからの距離が遠くなるため、バー幅が細くなる。
【0039】
図12に示すように、光の照射方向がx軸に対して傾斜角Θで傾斜している場合、バーの位置(y=Bd)に応じてバー幅が変化する割合は、読取部15で使用されるスキャナモジュールの特性により異なっており、バーの位置Bd、ジャイロセンサ16から取得される傾斜角Θの関数として予め設定されている。バー幅が変化する割合を補正係数f(Bd,Θ)とすると、補正H3での補正後のバー幅は、式(3)のように表される。
補正後のバー幅=補正前のバー幅×f(Bd,Θ) …(3)
【0040】
図3のステップS23において、ジャイロセンサ16から取得された移動状態が、移動状態[3]を含まないと判定された場合(ステップS23;NO)、又はステップS24の補正H3が終了すると、ジャイロセンサ16から取得された移動状態が、図13に示すように、バーコード面βに対してバーの配列方向(y軸方向)に移動するように光を照射した状態(移動状態[4])を含むか否かが判定される(ステップS25)。
【0041】
ステップS25において、ジャイロセンサ16から取得された移動状態が、移動状態[4]を含むと判定された場合(ステップS25;YES)、以下の補正H4が行われる(ステップS26)。
【0042】
[補正H4]
図13に示す移動状態[4]の場合、図14(a)に示すバーコード面β上の照射ラインLは、バーの配列方向に移動するため、読取部15が認識するバーコードのスタートマージンの幅(又はエンドマージンの幅)は、図14(b)に示すように変化してしまう。そこで、補正H4では、1回目の読取で取得されたバーコードイメージデータを基準として、2回目の読取で取得されたバーコードイメージデータのスタートマージンの幅を、スタートコード等の特徴を有するバーコードイメージデータに基づいて補正する。
【0043】
図15に示すように、1回目、2回目の読取でのバーコードの最初の黒色までのカウンタ値をそれぞれc1、c2とすると、スタートマージンの幅を、cx=c1−c2の分だけ補正すればよい。即ち、補正後のスタートマージンの幅は、式(4)のように表される。
補正後のスタートマージンの幅=補正前のスタートマージンの幅+cx …(4)
【0044】
図3のステップS25において、ジャイロセンサ16から取得された移動状態が、移動状態[4]を含まないと判定された場合(ステップS25;NO)、又はステップS26の補正H4が終了すると、ジャイロセンサ16から取得された移動状態が、図16に示すように、バーコード面β上の照射ラインがバーの配列方向(y軸方向)に対して傾斜するように光を照射した状態(移動状態[5])を含むか否かが判定される(ステップS27)。
【0045】
ステップS27において、ジャイロセンサ16から取得された移動状態が、移動状態[5]を含むと判定された場合(ステップS27;YES)、以下の補正H5が行われる(ステップS28)。
【0046】
[補正H5]
図16に示す移動状態[5]では、図17(a)に示すように、バーコード面β上の照射ラインLがバーの配列方向(y軸方向)に対して傾斜しているため、図17(b)に示すように、各バーの幅は図17(a)に示す元の幅よりも太くなる。
【0047】
例えば、図18に示すように、1回目の読取方向がバーの配列方向と平行であり(バー幅B1)、2回目の読取方向がバーの配列方向に対して角度θ傾斜している場合、2回目の読取で得られるバー幅B2を補正したバー幅Bは式(5)のように表される。
B=B2・cosθ …(5)
【0048】
しかし、実際の読取では、1回目の読取が図18のようにバーの配列方向に平行になっているとは限らないため、図19に示すように、1回目の読取もバーの配列方向に対して傾斜している場合も含めてバー幅の補正値を算出すべきである。図19に示すように、1回目の読取で得られるバー幅をB1、2回目の読取で得られるバー幅をB2、1回目と2回目の読取の間にジャイロセンサ16から取得された傾斜角をθとする。この場合、図20に示すように、二辺の長さをB1、B2とし、両辺が挟む角度をθとした三角形において、角度θに対応する頂点から対辺(長さC)に下ろした垂線の長さBが、バー幅の補正値となる。
【0049】
図20の三角形において、長さCは式(6)のように算出される。
【数1】

この三角形の面積は(1/2)B・C=(1/2)B1・B2・sinθゆえ、補正後のバー幅Bは、式(7)のように算出される。
【数2】

【0050】
図3のステップS27において、ジャイロセンサ16から取得された移動状態が、移動状態[5]を含まないと判定された場合(ステップS27;NO)、又はステップS28の補正H5が終了すると、補正されたバーコードイメージデータがRAM14に保存され(ステップS29)、本補正処理が終了する。
【0051】
以上のように、本実施形態のバーコード読取装置1によれば、ジャイロセンサ16から取得された移動状態に基づいて、読取部15により取得されたバーコードイメージデータを、予め設定された基準位置から読み取った場合のバーコードイメージデータに補正することにより、図21に示すような欠陥を有するバーコードであっても正しく合成処理を行うことができる。これにより、正確な読取結果を得ることができる。
【0052】
なお、本実施形態における記述内容は、本発明の趣旨を逸脱しない範囲で適宜変更可能である。
【0053】
例えば、上述の実施形態では、バーコード面βに対して光源OSが略x−y平面内を移動したときの補正処理を示したが、上記の移動状態[1]〜[5]に加えてz軸方向への移動を含めた移動状態に対応した補正処理を行うと、より精密な合成処理が可能となる。
【0054】
また、上述の実施形態では、ジャイロセンサ16を用いて読取部15の移動状態を検出する場合を示したが、3次元空間での移動状態が検出可能なものであれば、他のセンサを用いてもよい。
【図面の簡単な説明】
【0055】
【図1】本発明の実施形態に係るバーコード読取装置の主要部構成を示すブロック図。
【図2】本実施形態のバーコード読取装置のCPUの制御の下で実行されるバーコード読取処理を示すフローチャート。
【図3】図2に示した補正処理の詳細を示すフローチャート。
【図4】バーコード面に対する光の照射状態を模式的に示す図であって、バーコード面に近づくように光を照射した状態を示す図。
【図5】読取対象のバーコードのイメージデータ及び光の照射ラインを示す図(a)と、図4に示す照射状態において読取部により認識されるバーコードのイメージデータを示す図(b)。
【図6】図4に示す照射状態におけるバー幅の補正方法を説明するための図。
【図7】バーコード面に対する光の照射状態を模式的に示す図であって、バーコード面から遠ざかるように光を照射した状態を示す図。
【図8】読取対象のバーコードのイメージデータ及び光の照射ラインを示す図(a)と、図7に示す照射状態において読取部により認識されるバーコードのイメージデータを示す図(b)。
【図9】図7に示す照射状態におけるバー幅の補正方法を説明するための図。
【図10】バーコード面に対する光の照射状態を模式的に示す図であって、x−y平面内において基準方向(x軸方向に平行)から傾斜するように光を照射した状態を示す図。
【図11】読取対象のバーコードのイメージデータ及び光の照射ラインを示す図(a)と、図10に示す照射状態において読取部により認識されるバーコードのイメージデータを示す図(b)。
【図12】図10に示す照射状態におけるバー幅の補正方法を説明するための図。
【図13】バーコード面に対する光の照射状態を模式的に示す図であって、バーコード面に対してy軸方向に移動するように光を照射した状態を示す図。
【図14】読取対象のバーコードのイメージデータ及び光の照射ラインを示す図(a)と、図13に示す照射状態において読取部により認識されるバーコードのイメージデータを示す図(b)。
【図15】図13に示す照射状態におけるスタートマージン幅の補正方法を説明するための図。
【図16】バーコード面に対する光の照射状態を模式的に示す図であって、バーコード面上の照射ラインがバーの配列方向(y軸方向)に対して傾斜するように光を照射した状態を示す図。
【図17】読取対象のバーコードのイメージデータ及び光の照射ラインを示す図(a)と、図16に示す照射状態の場合に読取部により認識されるバーコードのイメージデータを示す図(b)。
【図18】図16に示す照射状態におけるバー幅の補正方法を説明するための図。
【図19】図16に示す照射状態におけるバー幅の補正方法を説明するための図。
【図20】図16に示す照射状態におけるバー幅の補正方法を説明するための図。
【図21】欠陥を有するバーコードの一例を示す図。
【図22】図21に示すバーコード面において光の照射位置が異なる複数の照射ラインを示す図。
【符号の説明】
【0056】
1 バーコード読取装置
10 CPU
11 表示部
12 入力部
13 記憶部
14 RAM
15 読取部
16 ジャイロセンサ
161 加速度センサ
162 傾きセンサ
18 電源部

【特許請求の範囲】
【請求項1】
バーコードを複数回読み取り、読取毎にバーコードイメージデータを取得する読取手段と、
前記読取手段により取得された各バーコードイメージデータを記憶する記憶手段と、
前記バーコードの読取動作中における前記読取手段の3次元空間での移動状態を検出する検出手段と、
前記検出手段により検出された移動状態に基づいて、前記記憶手段に記憶された各バーコードイメージデータを、予め設定された基準位置から読み取られた場合のバーコードイメージデータに補正する補正手段と、
前記補正手段により補正された各バーコードイメージデータを合成する合成手段と、
前記合成手段により合成されたバーコードイメージデータをデコードするデコード手段と、
を備えるバーコード読取装置。
【請求項2】
前記検出手段は、ジャイロセンサを用いて前記移動状態を検出し、
前記ジャイロセンサは、3次元空間での前記読取手段の加速度を検出する加速度センサと、3次元空間での前記読取手段の移動によって生じる当該読取手段の傾きを検出する傾きセンサと、を有する請求項1に記載のバーコード読取装置。
【請求項3】
コンピュータを、
バーコードを読取手段により複数回読み取り、読取毎にバーコードイメージデータを取得する手段、
前記取得された各バーコードイメージデータを記憶手段に記憶させる手段、
前記バーコードの読取動作中における前記読取手段の3次元空間での移動状態を検出する手段、
前記検出された移動状態に基づいて、前記記憶手段に記憶された各バーコードイメージデータを、予め設定された基準位置から読み取られた場合のバーコードイメージデータに補正する手段、
前記補正された各バーコードイメージデータを合成する手段、
前記合成されたバーコードイメージデータをデコードする手段、
として機能させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate