JP6950237B2 - コンピュータプログラム及び画像処理装置 - Google Patents

コンピュータプログラム及び画像処理装置 Download PDF

Info

Publication number
JP6950237B2
JP6950237B2 JP2017065210A JP2017065210A JP6950237B2 JP 6950237 B2 JP6950237 B2 JP 6950237B2 JP 2017065210 A JP2017065210 A JP 2017065210A JP 2017065210 A JP2017065210 A JP 2017065210A JP 6950237 B2 JP6950237 B2 JP 6950237B2
Authority
JP
Japan
Prior art keywords
boundary
pixel
region
pixels
image
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.)
Active
Application number
JP2017065210A
Other languages
English (en)
Other versions
JP2018170584A (ja
Inventor
鑑地 吉田
鑑地 吉田
長谷川 智彦
智彦 長谷川
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.)
Brother Industries Ltd
Original Assignee
Brother Industries 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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2017065210A priority Critical patent/JP6950237B2/ja
Publication of JP2018170584A publication Critical patent/JP2018170584A/ja
Application granted granted Critical
Publication of JP6950237B2 publication Critical patent/JP6950237B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Processing (AREA)
  • Editing Of Facsimile Originals (AREA)

Description

本開示は、コンピュータプログラム及び画像処理装置に関する。
端部が破れていたりして破損している原稿の画像が画像読取装置等で読み取られると、読み取った読取画像において、原稿の破損部は所定の背景色となりうる。そして、背景色が原稿の地色と異なる場合、読取画像において破損部は見苦しく感じられる可能性がある。
特許文献1には、読取画像から原稿の端部を検出し、原稿の端部付近に破損部がある場合に破損部を補正する画像処理装置が開示されている。この画像処理装置は、次のように原稿の端部を検出する。
すなわち、画像処理装置は、背景色に対して輝度値が所定値以上異なる第1エッジ画素を原稿の端部に沿って所定間隔ごとに検出し、検出した第1エッジ画素から直線を検出する。そして、画像処理装置は、第1エッジ画素を、検出された直線から所定距離内にあるオンラインエッジ画素と、所定距離内にない非オンラインエッジ画素と、に分類する。
画像処理装置は、検出された直線に沿ってオンラインエッジ画素とその次のオンラインエッジ画素との間に非オンラインエッジ画素がある場合に、オンラインエッジ画素と次のオンラインエッジ画素との間の第2エッジ画素の連続数をカウントする。第2エッジ画素は、周辺画素との輝度値が所定値以上異なる画素である。そして、画像処理装置は、第2エッジ画素の連続数が所定値以上である場合、換言すれば、連続した第2エッジ画素が次のオンラインエッジ画素に連結しない可能性が高い場合、原稿の端部に文字、図形等のオブジェクトが存在すると判断する。一方、画像処理装置は、第2エッジ画素の連続数が所定値よりも小さい場合、換言すれば、連続した第2エッジ画素が次のオンラインエッジ画素に連結する可能性が高い場合、原稿の端部付近に破損部が存在すると判断する。
特開2014−147046号公報
しかしながら、第2エッジ画素の連続数が所定値よりも小さい場合であっても、原稿の端部に文字、図形等のオブジェクトが存在する場合があり、第2エッジ画素の連続数が所定値以上である場合であっても、原稿の端部に破損部が存在する場合がある。
本開示は、原稿の端部付近に存在する背景と同程度の色の領域がオブジェクトであるか背景であるかの判断精度を向上する技術を提供することを目的としている。
本開示の一態様は、取得部と、第1の特定部と、第2の特定部と、第1の判断部と、第2の判断部と、を備える画像処理装置としてコンピュータを機能させるコンピュータプログラムである。取得部は、原稿画像を含む読取画像を表すデータを取得する。第1の特定部は、読取画像において、矩形原稿領域を特定する。矩形原稿領域は、外形が原稿画像の矩形状の境界を表す領域である。第2の特定部は、矩形原稿領域において、境界領域を特定する。境界領域は、画素値が読取画像における背景色に応じてあらかじめ設定された画素範囲内である複数の画素が連結して形成された領域であって、その一部が矩形原稿領域の境界に接している領域である。第1の判断部は、境界画素部が、矩形原稿領域の境界に沿って分断されているか否かを判断する。境界画素部は、矩形原稿領域の境界に接している複数の画素によって構成される。境界画素部が矩形原稿領域の境界に沿って分断されているか否かは、画素値が画素範囲外の画素であって矩形原稿領域の境界に接している画素が所定数以上連続して並ぶか否かを判断することによって判断される。第2の判断部は、第1の判断部により境界画素部が分断されていないと判断される場合、境界領域を、読取画像における背景であると判断し、第1の判断部により境界画素部が分断されていると判断される場合、境界領域を、原稿画像におけるオブジェクトであると判断する。
このような構成によれば、原稿の端部付近に存在する背景と同程度の色の領域がオブジェクトであるか背景であるかの判断精度を向上することができる。
上記の画像処理装置そのもの、当該画像処理装置を実現するための制御方法、及び、上記のコンピュータプログラムを格納するコンピュータ読取可能記憶媒体も新規で有用である。
画像処理システムの構成を示すブロック図である。 第1実施形態の領域判断処理のフローチャートである。 (a)は読取画像を2値化することで生成された2値画像を示す図、(b)は矩形原稿領域を示す図、(c)は傾いて特定された矩形原稿領域を示す図、(d)は判断領域の第1の長さを説明する図、(e)は矩形原稿領域が傾いた状態の置換画像を示す図、(f)は判断領域の第2の長さを説明する図である。 第2実施形態の領域判断処理のフローチャートである。
以下、図面を参照しながら、本開示を実施するための形態を説明する。
[1.第1実施形態]
[1−1.構成]
(1−1)画像処理システム全体の概要
図1に示すように、本実施形態の画像処理システム1は、情報処理装置10と、画像読取装置20と、を備える。情報処理装置10及び画像読取装置20は、相互にデータ通信可能に構成されている。本実施形態では、一例として、情報処理装置10と画像読取装置20とがLAN150によって接続され、LAN150を通じて相互にデータ通信可能である。
なお、情報処理装置10と画像読取装置20とのデータ通信がLAN150を通じて行われることは一例であり、他の通信媒体を介して或いは他の通信方式にてデータ通信可能であってもよい。例えば、無線LAN、Bluetoothなどの無線通信を用いてデータ通信可能であってもよい。なお、Bluetoothは登録商標である。また例えば、USBケーブルを通じてUSB規格のデータ通信が可能な構成であってもよい。
画像読取装置20は、原稿の画像を読み取り、読み取った画像である読取画像を表すデータである読取画像データを生成する読取機能を有する。なお、本実施形態の画像読取装置20は、読取機能の他に、記録用紙に画像を印刷する印刷機能を少なくとも含む複数の機能を備えた、いわゆる複合機として構成されている。ただし、画像読取装置20は、読取機能のみ有する単一機能の装置であってもよい。
情報処理装置10は、画像読取装置20により生成された読取画像データをデータ通信にて画像読取装置20から取得する。情報処理装置10の具体的態様としては、例えば、パーソナルコンピュータ、タブレット端末、スマートフォンなどがある。もちろんこれらはあくまでも一例にすぎない。
(1−2)情報処理装置の構成
情報処理装置10は、制御部11、記憶部12、入力部13、表示部14及び通信部15を備え、これらがバス19を介して相互に接続されている。本実施形態では、制御部11はCPUを有する。記憶部12は、例えばROM、RAM、NVRAM、フラッシュメモリなどの半導体メモリを有する。即ち、情報処理装置10は、CPU及び半導体メモリを含むマイクロコンピュータを備えている。記憶部12は、ハードディスクドライブ、光ディスクなどの、半導体メモリ以外の他の記憶媒体を有していてもよい。
制御部11は、非遷移的実体的記録媒体に格納されたプログラムを実行することにより各種機能を実現する。本実施形態では、記憶部12が、プログラムを格納した非遷移的実体的記録媒体に該当する。なお、制御部11により実現される各種機能は、プログラムの実行によって実現することに限るものではなく、その一部又は全部について、一つあるいは複数のハードウェアを用いて実現してもよい。
本実施形態の情報処理装置10は、記憶部12に、プログラムとして少なくともOS(オペレーティングシステムの略称)16及び領域判断プログラム17が記憶されている。領域判断プログラム17が実行されることで、後述する図2に示す領域判断処理が情報処理装置10にて実行される。
入力部13は、各種入力操作を受け付けるための各種の入力用デバイスを有する。本実施形態の入力部13は、例えば、キーボード、マウス、及びタッチパネルを有する。表示部14は、例えば液晶ディスプレイや有機ELディスプレイなどの各種の表示デバイスの少なくとも1つを有する。前述のタッチパネルは、表示デバイスにおける画像表示領域に重畳配置される。
通信部15は、情報処理装置10をLAN150に接続するための通信インタフェースである。情報処理装置10と画像読取装置20との各種データ通信は、情報処理装置10においてはこの通信部15を介して行われる。
(1−3)画像読取装置の構成
画像読取装置20は、制御部21、記憶部22、入力部23、表示部24、通信部25、画像読取部26及び印刷部27を備え、これらがバス29を介して相互に接続されている。本実施形態では、制御部21はCPUを有する。記憶部22は、例えばROM、RAM、NVRAM、フラッシュメモリなどの半導体メモリを有する。即ち、画像読取装置20は、CPU及び半導体メモリを含むマイクロコンピュータを備えている。
制御部21は、非遷移的実体的記録媒体に格納されたプログラムを実行することにより各種機能を実現する。本実施形態では、記憶部22が、プログラムを格納した非遷移的実体的記録媒体に該当する。なお、制御部21により実現される各種機能は、プログラムの実行によって実現することに限るものではなく、その一部又は全部について、一つあるいは複数のハードウェアを用いて実現してもよい。記憶部22には、読取画像が記憶される。
入力部23は、各種入力操作を受け付けるための入力用デバイスを有する。本実施形態の入力部23は、例えば、操作ボタンやタッチパネルなどを有する。表示部24は、例えば液晶ディスプレイや有機ELディスプレイなどの各種の表示デバイスの少なくとも1つを有する。入力部23が有するタッチパネルは、表示部24の表示デバイスにおける画像表示領域に重畳配置される。
通信部25は、画像読取装置20をLAN150に接続するための通信インタフェースである。情報処理装置10と画像読取装置20との各種データ通信は、画像読取装置20においてはこの通信部25を介して行われる。
画像読取部26は、イメージセンサを備え、原稿載置部に載置された原稿を含むあらかじめ設定された読取範囲の画像を読み取ることで、読取画像データを生成する。図3(a)に示すように、読取画像A1は、矩形状であり、原稿の画像である原稿画像A2のサイズよりも大きな範囲の画像である。読取画像A1は、原稿画像A2以外の部分である背景A3を有する。本実施形態では、背景A3の色である背景色は灰色である。換言すれば、背景色は、無彩色であり、輝度値は所定値である。本実施形態では、輝度値は0〜255の256階調で表示され、背景色の輝度値は「96」である。ただし、この輝度値はあくまで一例にすぎない。
印刷部27は、インクジェット方式や電子写真方式の印刷機構を有し、シート状の記録用紙に画像を印刷することが可能である。
[1−2.処理]
次に、情報処理装置10の制御部11が実行する領域判断処理について、図2のフローチャートを用いて説明する。領域判断処理は、記憶部12に記憶されている領域判断プログラム17が実行されることにより、画像読取装置20からデータ通信にて取得された読取画像データの示す読取画像に対し、実行される。なお、領域判断処理は、原稿画像の端部付近に背景と同程度の色の領域があるときに、その領域が背景であるのか、背景と同程度の色の文字、図形等のオブジェクトであるのか、を判断する処理である。換言すれば、読取画像において原稿の端部を検出する処理である。
まず、S101で、制御部11は、画像読取装置20から読取画像データをデータ通信にて取得する。
続いて、S102で、制御部11は、取得した読取画像データが表す読取画像を、画素範囲に画素値が含まれる画素と含まれない画素とで2値化する。
ここでいう画素範囲とは、読取画像における背景色に応じてあらかじめ設定された画素値の範囲であり、背景色を含む範囲として設定される。具体的には、画素範囲は、輝度値が所定範囲内であること、及び、彩度値が所定値よりも小さいこと、の両方を満たす範囲である。輝度値が所定範囲内であることとは、換言すれば、輝度値が第1の輝度値以下であり、かつ、第1の輝度値よりも小さい第2の輝度値以上の範囲内であることを意味する。本実施形態では、第2の輝度値は、0よりも大きく、少なくとも16以上である。具体的には、第1の輝度値=144、第2の輝度値=48である。
また、S102では、画素範囲に含まれない画素が白画素、画素範囲に含まれる画素が黒画素となるように読取画像が2値化される。以下では、読取画像が2値化されて生成された画像を2値画像という。また、2値画像における白画素によって構成された領域を前景ともいう。前景は原稿画像と必ずしも一致するものではない。画素範囲に含まれる画素によって構成された文字や図形等のオブジェクトが原稿画像に存在する場合、このようなオブジェクトは黒画素となるため、前景は原稿画像よりも小さな領域となる。なお、図3(a)に示す例では、矩形状の領域において右端が部分的に欠けた形状の前景A4が現れている。
続いて、S103で、制御部11は、2値画像において、外形が原稿画像の矩形状の境界を表す領域である矩形原稿領域を特定する。この矩形原稿領域は、原稿画像に外接される最小の矩形状の領域である。矩形原稿領域の外形は、端部が破損していない原稿の矩形状の外形に相当する。図3(b)では、外形が原稿画像A2の矩形状の境界を表す領域である矩形原稿領域B1が特定される。図3(b)では、矩形原稿領域B1の外形(境界)は、破線で示されている。
本実施形態では、矩形原稿領域は、以下のようにして特定される。すなわち、矩形原稿領域は、矩形原稿領域の境界を構成する4つの直線を特定することで特定される。一例として、原稿の左端に対応する直線の特定の仕方を説明する。他の直線も同様に特定される。まず、2値画像において、原稿の左端に対応するエッジ画素を垂直方向(図3(b)の上下方向)に所定間隔毎に検出する。ここで、2値画像の最左端から右方向に画素を走査し、水平方向の両隣の画素の輝度値の差の絶対値が最初にしきい値を越えた各画素がそれぞれその垂直位置におけるエッジ画素とされる。そして、検出されたエッジ画素から原稿の左端に対応する直線が検出される。なお、直線を検出する方法としては、ハフ変換や最小二乗法などが挙げられる。
なお、原稿載置部に原稿が傾いて載置されて原稿の画像が読み取られた場合、図3(c)に示すように読取画像A1において矩形原稿領域B1が傾いて特定される。
続いて、S104で、制御部11は、2値画像における矩形原稿領域の外側の領域を構成する各画素を前景の画素と同一色とする。以下、S104の結果生成された画像を置換画像ともいう。図3(d)には、図3(b)の2値画像に対する置換画像A5が示されている。なお、S104を実行する理由については後述する。
続いて、S105で、制御部11は、生成した置換画像に対して領域分割を行う。領域分割では、置換画像が、同一色の複数の画素が連結して形成された領域ごとに分割される。
図3(d)に示す例では、置換画像A5は、白画素が連結して形成された領域31及び矩形原稿領域B1の右端に位置する、黒画素が連結して形成された領域32,33の3つの領域に分割される。領域31は、矩形原稿領域B1の外側の領域も含む。領域32は、矩形状である。領域33は、矩形状の領域において右端の中央部が欠けた形状、換言すれば、U字の開口が右を向いたU字状である。なお、領域32及び領域33の垂直方向の幅は同一である。
ここで、前述したS104の処理を実行せずに矩形原稿領域に対して領域分割を行うことも可能である。ただし、図3(c)に示すように矩形原稿領域B1が傾いて特定されている場合、領域分割の処理が複雑になる。具体的には、領域分割を行うに当たり、矩形原稿領域B1内の各画素の色を参照するため、矩形原稿領域B1内の画素が走査される。その際、上から下にかけて矩形原稿領域B1の内部が、矩形原稿領域B1の境界上の画素から水平方向反対側の境界上の画素まで水平方向に走査されるとすると、走査される行が変更される度に、水平方向の走査の開始位置と終了位置とが変更される必要がある。また、仮に、矩形原稿領域B1の境界を構成する辺に平行に、つまり斜め方向に矩形原稿領域B1内の画素が走査されると、水平方向に画素が走査される場合よりも処理が複雑になる。これに対して、S104の処理を実行することで、矩形状、つまり走査開始位置及び終了位置が変更される必要がない形状の置換画像A5(図3(e)参照)内を水平方向に走査すればよいため、処理の複雑化が抑制される。
続いて、S106で、制御部11は、分割された領域の中から前景と異なる色の領域、つまり黒色の領域を抽出する。図3(d)に示す例では、領域32及び領域33が抽出される。以下、S106で抽出された領域のそれぞれを判断領域ともいう。
続いて、S107で、制御部11は、未判断の判断領域があるか否かを判断する。後述するように、制御部11は、判断領域のそれぞれに対してS108以降の処理を実行することで、当該領域が原稿の破損部であるかオブジェクトであるかを判断する。なお、読取画像においては原稿の破損部には背景が現れるため、その領域が破損部であることは、その領域が背景(の一部)であることと同じである。S107では、判断領域のうちこの判断が実行されていない領域が1つでもある場合に、未判断の判断領域があると判断される。一方、すべての判断領域についてこの判断が実行された場合に、未判断の判断領域がないと判断される。
制御部11は、未判断の判断領域がないと判断した場合、領域判断処理を終了する。
一方、制御部11は、未判断の判断領域があると判断した場合、未判断の判断領域の中から任意に判断領域を1つ抽出し、抽出した判断領域に対してS108以降の処理を実行する。以下では、抽出された判断領域を注目判断領域という。
制御部11は、S108で、注目判断領域が矩形原稿領域の境界に接しているか否かを判断する。本実施形態では、制御部11は、注目判断領域に含まれる画素が矩形原稿領域の境界上に位置している場合に、注目判断領域が矩形原稿領域の境界に接していると判断する。一方、制御部11は、注目判断領域に含まれる画素が矩形原稿領域の境界上に位置していない場合に、注目判断領域が矩形原稿領域の境界に接していないと判断する。
制御部11は、S108で注目判断領域が矩形原稿領域の境界に接していないと判断した場合には、S109へ移行し、注目判断領域がオブジェクトであると判断する。これは以下の理由による。原稿の破損部は、原稿の端に生じやすい。よって、読取画像では、破損部は、矩形原稿領域の境界に接している領域として生じやすい。逆に言えば、矩形原稿領域の境界に接していない注目判断領域は、破損部(背景)でない可能性が高いからである。制御部11は、S109を実行すると、前述したS107に戻る。
一方、制御部11は、S108で注目判断領域が矩形原稿領域の境界に接していると判断した場合には、S110に移行する。
制御部11は、S110で、注目判断領域における矩形原稿領域の境界に接している部分の長さである第1の長さを算出する。この第1の長さは、換言すれば、境界画素部の長さである。境界画素部とは、注目判断領域における矩形原稿領域の境界に接している複数の画素(全画素)によって構成される注目判断領域の一部である。
具体的には、制御部11は、第1の長さを以下のように算出する。すなわち、制御部11は、境界画素部の画素数を取得する。そして、制御部11は、取得した画素数を第1の長さとして算出する。本実施形態では、単純化のため、矩形原稿領域の境界を構成する辺のうち原稿の右端又は左端に対応する辺に接している注目判断領域については、第1の長さは境界画素部の垂直方向の画素数として算出される。また、原稿の上端又は下端に対応する辺に接している注目判断領域については、第1の長さは境界画素部の水平方向の画素数として算出される。
具体的には、図3(d)に示す例では、注目定領域が領域32である場合、境界画素部32aの垂直方向の画素数は100画素であるため、第1の長さC1=100となる。一方、領域33については、矩形原稿領域の右側の境界の辺に沿って上下に離間した2つの部分33b,33cによって境界画素部33aが構成されている。上の部分33bの垂直方向の画素数c1は10画素であり、下の部分33cの垂直方向の画素数c2は10画素である。よって、注目判断領域が領域33である場合、第1の長さC2=c1+c2=10+10=20となる。
また、原稿画像の境界付近にはノイズ画素が発生しやすい。例えば、図3(e)に示すように矩形原稿領域B1が傾いた状態で置換画像A5が生成された場合、領域32の右端を構成する各画素がきれいに矩形原稿領域B1の境界上に位置せず、境界上からずれて位置する場合がある。つまり境界上にノイズ画素(白画素)が発生する場合がある。この場合、領域32の第1の長さを算出すると、ノイズ画素の分だけ第1の長さが変わってしまう。そこで、本実施形態では、第1の長さを算出するに当たり、制御部11は、例えば矩形原稿領域B1の右側の境界については、境界上の画素と、その境界上の画素の左側に隣接する画素と、の2画素を参照する。そして、制御部11は、2画素のうち少なくとも一方の画素が注目判断領域の画素である場合に、その垂直方向位置について注目判断領域の画素が境界に接していると判断する。矩形原稿領域B1の左側、上側及び下側の境界についても同様である。
続いて、S111で、制御部11は、注目判断領域の境界画素部の両端の画素の間の長さである第2の長さを算出する。本実施形態では、第2の長さは、両端の画素の間の画素数として算出される。ここでいう両端の画素とは、境界画素部において互いに最も離れている2画素を意味する。また、両端の画素の間の画素には、両端の画素も含まれる。
第2の長さは、両端の画素の座標値(x,y)を取得して算出される。ここで、x座標は読取画像における水平方向の座標値であり、y座標は読取画像における垂直方向の座標値である。x座標又はy座標は、画素の位置が水平方向又は垂直方向に1画素分変わると、1だけ変わる。矩形原稿領域B1の右端又は左端に存在する注目判断領域については、第2の長さは、境界画素部の両端の画素のy座標の差の絶対値として算出される。また、上端又は下端に存在する注目判断領域については、第2の長さは、境界画素部の両端の画素のx座標の差の絶対値として算出される。
例えば、注目判断領域が図3(f)に示す領域32である場合、境界画素部32aの両端の画素は、境界画素部32aのうち最も上方に位置する画素41及び最も下方に位置する画素42である。画素41の座標値は(x,y)=(300,20)であり、画素42の座標値は(x,y)=(300,120)である。よって、領域32の第2の長さD1=120−20=100となる。
同様に、注目判断領域が領域33である場合、境界画素部33aの両端の画素は、境界画素部33aのうち最も上方に位置する画素51及び最も下方に位置する画素52である。画素51の座標値は(x,y)=(300,200)であり、画素52の座標値は(x,y)=(300,300)である。よって、領域33の第2の長さD2=300−200=100となる。
続いて、S112で、制御部11は、第1の長さと第2の長さとが一致しているか否かを判断する。本実施形態では、ノイズ画素による影響もあるため、第1の長さと第2の長さとの差が所定値未満である場合に両方の長さが一致していると判断され、第1の長さと第2の長さとの差が所定値以上である場合に両方の長さが一致していないと判断される。ここでいう所定値は、例えば、5ミリメートルに相当する画素数に設定される。なお、本明細書では、特筆しない限り、領域判断処理における異なる処理における所定値、所定範囲等は、互いに関係のない独立したものとする。
制御部11は、S112で第1の長さと第2の長さとが一致していないと判断した場合には、前述したS109に移行する。つまり、この場合、注目判断領域はオブジェクトであると判断される。
すなわち、第1の長さと第2の長さとが一致していない場合、注目判断領域の境界画素部が矩形原稿領域の境界に沿って分断されている。ここでいう境界画素部の分断とは、画素範囲に画素値が含まれない画素(つまり白画素)であって矩形原稿領域の境界に接している画素が所定数以上連続して並ぶことによる分断を指す。
このように境界画素部が分断されている場合、注目判断領域はオブジェクトである可能性が高い。仮に、当該注目判断領域が背景であると仮定すると、原稿の端部が千切れており、千切れた原稿と千切れた切れ端とが読取画像に映っていることになるが、このような画像は読取画像として考えにくいからである。よって、第1の長さと第2の長さとが一致していない場合、注目判断領域はオブジェクトであると判断される。
図3(f)に示す例では、領域33については、第1の長さC2=20、第2の長さD2=100であり、第1の長さC2と第2の長さD2とが一致しない。よって、領域33はオブジェクトであると判断される。
一方、制御部11は、S112で第1の長さと第2の長さとが一致していると判断した場合には、S113へ移行し、注目判断領域が背景であると判断する。
すなわち、第1の長さと第2の長さとが一致している場合、境界画素部が矩形原稿領域の境界に沿って分断されていない。注目判断領域が原稿の破損部である場合、注目判断領域はこのような形状になることが多い。よって、本実施形態では、第1の長さと第2の長さとが一致している場合、注目判断領域は破損部、つまり背景であると判断される。
なお、図3(f)に示す例では、領域32については、第1の長さC1=100、第2の長さD1=100であり、第1の長さと第2の長さとが一致する。よって、領域32は背景であると判断される。
続いて、S114で、制御部11は、注目判断領域に対して補正処理する。つまり、S114で、制御部11は、背景であると判断された注目判断領域に対して特定の画像処理である補正処理を実行する。この補正処理は、読取画像において実行される。本実施形態では、補正処理は、注目判断領域を構成する全画素の画素値を、当該注目判断領域の周辺の画素の画素値のうち、最頻値で置換する処理である。制御部11は、S114を実行すると、前述したS107に戻る。
[1−3.効果]
以上詳述した第1実施形態によれば、以下の効果が得られる。
(1)本実施形態では、制御部11は、第1の長さと第2の長さとが一致しているか否かを判断する。換言すれば、制御部11は、注目判断領域の境界画素部が分断されているか否かを判断する。そして、制御部11は、第1の長さと第2の長さとが一致していると判断した場合、換言すれば、境界画素部が分断されていないと判断した場合、注目判断領域を背景であると判断する。一方、制御部11は、第1の長さと第2の長さとが一致していないと判断した場合、換言すれば、境界画素部が分断されていると判断した場合、注目判断領域をオブジェクトであると判断する。
前述したとおり、境界画素部が分断されている境界領域は背景と同程度の色のオブジェクトである可能性が高い。したがって、本実施形態によれば、境界画素部が分断されている境界領域をオブジェクトであると正しく判断できる。
よって、本実施形態によれば、原稿端部付近に存在する背景と同程度の色の領域がオブジェクトであるか背景であるかの判断精度を向上することができる。
(2)本実施形態では、制御部11は、境界画素部の長さである第1の長さと、境界画素部の両端の画素の間の長さである第2の長さと、を比較することで、境界画素部が分断されているか否かを判断する。
例えば、境界画素部が分断されているか否かは、矩形原稿領域内の画素を矩形原稿領域の境界に沿って順次探索し、境界画素部が途切れたか否か、境界画素部が途切れた場合に、同じ注目判断領域の境界画素部が再度発見されたか否かを判断することによっても判断できる。しかしながら、本実施形態によれば、矩形原稿領域内の画素を順次探索しなくても、境界画素部が分断されているか否か判断することができる。よって、矩形原稿領域内のより少ない画素を参照し、境界画素部が分断されているか否か判断することができる。
(3)本実施形態では、画素範囲は、輝度値が所定範囲内である画素値の範囲である。読取画像において背景と背景以外の部分とは、輝度値が異なる。したがって、輝度値に基づき設定された画素範囲を用いて判断領域を特定することで、輝度値に基づかずに設定された画素範囲を用いて判断領域を特定する構成と比較して、読取画像から背景を精度良く特定することができる。
(4)本実施形態では、制御部11は、置換画像を生成し、生成した置換画像内の矩形原稿領域において境界領域を特定する。したがって、前述したとおり、矩形原稿領域が傾いて特定された場合などにおいて、矩形原稿領域において境界領域を特定する処理が複雑になるのを抑制することができる。
(5)本実施形態では、制御部11は、背景であると判断した境界領域に対し、当該境界領域を構成する全画素の画素値を、当該注目判断領域の周辺の画素の画素値のうち、最頻値で置換する補正処理を実行する。したがって、原稿画像の見栄えを改善することができる。
なお、本実施形態では、制御部11が画像処理装置に相当し、領域判断プログラム17がコンピュータプログラムに相当する。また、領域32,33が境界領域に相当する。また、S101が取得部としての処理に相当し、S103が第1の特定部としての処理に相当し、S104が生成部としての処理に相当し、S105、S106及びS108が第2の特定部としての処理に相当し、S109及びS113が第2の判断部としての処理に相当し、S110〜S112が第1の判断部としての処理に相当し、S114が補正処理部としての処理に相当する。
[2.第2実施形態]
[2−1.第1実施形態との相違点]
第2実施形態は、基本的な構成は第1実施形態と同様であるため、共通する構成については説明を省略し、相違点を中心に説明する。なお、第1実施形態と同じ符号は、同一の構成を示すものであって、先行する説明を参照する。
前述した第1実施形態では、各判断領域につき第1の長さ及び第2の長さを算出して両方の長さを比較することで、境界画素部が分断されているか否かが判断される。これに対し、第2実施形態では、矩形原稿領域の画素を矩形原稿領域の境界に沿って順次探索することで、境界画素部が分断されているか否かが判断される点で、第1実施形態と相違する。
第2実施形態のハードウェア構成は、第1実施形態と同様である。ただし、第2実施形態の情報処理装置10の記憶部12に記憶されている領域判断プログラム17は、第1実施形態と異なる。つまり、情報処理装置10の制御部11によって実行される領域判断処理が第1実施形態と相違する。
[2−2.処理]
次に、第2実施形態の制御部11が、第1実施形態の領域判断処理(図2)に代えて実行する領域判断処理について、図4のフローチャートを用いて説明する。なお、図4におけるS201〜S207の処理は、図2におけるS101〜S107の処理と同様であるため、説明を省略する。
制御部11は、S207で未判断の判断領域があると判断した場合には、S208へ移行し、矩形原稿領域の境界上の各画素を探索する。換言すれば、制御部11は、矩形原稿領域内の画素であって矩形原稿領域の境界に接している各画素を探索する。本実施形態では、矩形原稿領域の境界を構成する4つの辺のそれぞれについて、その辺の一方の端部から他方の端部にかけて探索が行われる。また、4つの辺の探索は順次実行される。
続いて、S209で、制御部11は、注目判断領域の画素を発見したか否かを判断する。ここで、制御部11は、境界を構成する4つの辺のいずれかの探索において注目判断領域の画素を発見したと判断した場合に、注目判断領域の画素を発見したと判断する。一方、制御部11は、4つの辺のいずれの探索においても注目判断領域の画素を発見していないと判断した場合に、注目判断領域の画素を発見していないと判断する。
制御部11は、注目判断領域の画素を発見していないと判断した場合、S210に移行する。
S210で、制御部11は、注目判断領域をオブジェクトであると判断する。注目判断領域の画素が発見されなかった場合、その注目判断領域は原稿の端部から離間した原稿内部の領域であり、破損部(背景)でない可能性が高いからである。制御部11は、S210を実行すると、前述したS207に戻る。
一方、制御部11は、S209で注目判断領域の画素を発見したと判断した場合には、S211へ移行し、探索を継続する。
続いて、S212で、制御部11は、注目判断領域に含まれる連続する複数の画素の並びが途切れたか否かを判断する。
本実施形態では、制御部11は、画素を順次探索する過程で、探索されている探索対象画素が注目判断領域に含まれる画素から画素範囲に画素値が含まれない画素、つまり白画素に切り替わってから、白画素が所定数以上連続していると判断した場合に、連続する複数の画素の並びが途切れたと判断する。
逆に、制御部11は、探索が完了するまでに探索対象画素が注目判断領域に含まれる画素から白画素に切り替わらない場合(つまり白画素が発見されない場合)に連続する複数の画素の並びが途切れていないと判断する。また、制御部11は、白画素が発見されても白画素が所定数以上連続する前に注目判断領域の画素が発見された場合にも、連続する複数の画素の並びが途切れていないと判断する。なお、このように白画素が所定数以上連続することも複数の画素の並びが途切れたと判断することの要件とするのは、ノイズ画素の影響を考慮してのことである。
例えば、図3(f)に示す例では、領域32,33のいずれについても、連続する複数の画素の並びが途切れたと判断される。
制御部11は、S212で連続する複数の画素の並びが途切れたと判断した場合には、S213へ移行し、探索を継続する。
続いて、S214で、制御部11は、探索が完了するまでに注目判断領域の画素を再度発見したか否かを判断する。
制御部11は、注目判断領域の画素を再度発見したと判断した場合には、前述したS210に移行し、注目判断領域がオブジェクトであると判断する。なお、図3(f)に示す例では、注目判断領域が領域33の場合、注目判断領域の画素が再度発見されたと判断されて注目判断領域がオブジェクトであると判断される。
一方、制御部11は、S212で連続する複数の画素の並びが途切れていないと判断した場合、又は、S214で注目判断領域の画素を再度発見していないと判断した場合に、S215に移行し、注目判断領域が背景であると判断する。
S212で連続する複数の画素の並びが途切れていないと判断される場合としては、例えば、図3(e)に示す領域32が仮に原稿の右下の隅に位置しているとして、当該領域32が注目判断領域であるような場合である。なお、この場合、原稿の右端に対応する辺の上から下から探索が行われることを前提としている。また、注目判断領域の画素が再度発見されていないと判断される場合としては、注目判断領域が図3(e)に示す領域32の場合である。
続いて、制御部11は、S216で、補正処理する。なお、補正処理の内容は図2のS114と同様である。制御部11は、S216を実行すると、前述したS207に戻る。
[2−3.効果]
以上詳述した第2実施形態によれば、前述した第1実施形態の効果(1)及び(3)〜(5)に加え、以下の効果が得られる。
(1)本実施形態では、制御部11は、注目判断領域の画素を発見し、注目判断領域の連続する複数の画素の並び途切れたと判断した場合に、注目判断領域の画素を再度発見したか否かを判断する。つまり、制御部11は、注目判断領域の境界画素部が分断されているか否かを判断する。そして、制御部11は、注目判断領域の画素を再度発見しないと判断した場合、換言すれば、境界画素部が分断されていないと判断した場合、注目判断領域を背景であると判断する。一方、制御部11は、注目判断領域の画素を再度発見したと判断した場合、換言すれば、境界画素部が分断されていると判断した場合、注目判断領域をオブジェクトであると判断する。したがって、原稿端部付近に存在する背景と同程度の色の領域がオブジェクトであるか背景であるかの判断精度を向上することができる。
(2)本実施形態では、制御部11は、注目判断領域の連続する複数の画素の並びが途切れたと判断した場合、白画素が所定数以上連続して並んだ後、境界領域の画素を再度発見したか否かを判断することで、境界画素部が分断されているか否かを判断する。
したがって、前述した第1の実施形態の第1及び第2の長さといった各種長さを算出しなくても、境界画素部が分断されているか否かを判断することができる。したがって、この点に関してコンピュータの演算負荷を低減することができる。
なお、本実施形態では、S201が取得部としての処理に相当し、S203が第1の特定部としての処理に相当し、S204が生成部としての処理に相当し、S205、S206及びS209が第2の特定部としての処理に相当し、S210及びS215が第2の判断部としての処理に相当し、S212〜S214が第1の判断部としての処理に相当し、S216が補正処理部としての処理に相当する。
[3.他の実施形態]
以上、本開示を実施するための形態について説明したが、本開示は上述の実施形態に限定されることなく、種々変形して実施することができる。
(1)上記第1実施形態では、第1の長さは、境界画素部を構成する複数の画素の画素数として算出されるが、第1の長さはこれに限定されるものではない。例えば、第1の長さは、境界画素部の垂直方向又は水平方向の画素数と、矩形原稿領域の境界を構成する辺のうち注目判断領域が接している辺の傾きと、から算出されてもよい。例えば、注目判断領域が原稿の右端に対応する辺に接している場合、第1の長さはA=y/sinθとして算出されてもよい。ここで、yは境界画素部の垂直方向の画素数であり、θは注目判断領域が接している辺と水平方向とのなす角度である。
また、第2の長さは境界画素部の両端の画素の間の画素数として算出されるが、第2の長さはこれに限られるものではない。例えば、第2の長さは、境界画素部の両端の画素の間のユークリッド距離として算出されてもよい。
(2)上記第1実施形態では、制御部11は、図2のS112において第1の長さと第2の長さとの差が所定値未満である場合に両方の長さが一致していると判断し、第1の長さと第2の長さとの差が所定値以上である場合に両方の長さが一致していないと判断する。しかし、第1の長さと第2の長さとが一致しているか否かの判断はこれに限られるものではない。
例えば、第1の長さと第2の長さとが完全一致している場合に、両方の長さが一致していると判断し、第1の長さと第2の長さとが完全一致していない場合に、両方の長さが一致していないと判断してもよい。この場合も、第1の長さと第2の長さとが一致しているか否かを判断することで、境界画素部が、画素範囲に画素値が含まれない画素であって矩形原稿領域の境界に接している画素が所定数(以下、連続所定数)以上連続して並ぶことによって矩形原稿領域の境界に沿って分断されているか否かが判断される。この場合の連続所定数は1である。換言すれば、連続所定数は、1を含む適宜設定される設計値である。連続所定数は、固定値であってもよく、変動値であってもよい。連続所定数が変動値である場合、例えば、連続所定数は注目判断領域の大きさ等に応じて変動してもよい。
(3)上記実施形態では、補正処理は、背景と判断された注目判断領域を構成する全画素の画素値を、注目判断領域の周辺の画素の画素値のうち最頻値で置換する処理であるが、補正処理はこれに限られるものではない。例えば、補正処理は、周辺の画素の画素値の平均値で注目判断領域を構成する全画素の画素値を置換する処理であってもよい。また例えば、補正処理は、補正対象として確定された領域を構成する一部の画素のみを補正する処理であってもよい。
(4)上記実施形態で、情報処理装置10の制御部11が実行する機能の一部又は全部を、1つあるいは複数のIC等によりハードウェア的に構成してもよい。
(5)上記各実施形態では、領域判断処理は情報処理装置10で実行されるが、領域判断処理の実行主体はこれに限られるものではない。例えば、領域判断処理は、画像読取装置20で実行されてもよい。
(6)上記各実施形態における1つの構成要素が有する複数の機能を、複数の構成要素によって実現したり、1つの構成要素が有する1つの機能を、複数の構成要素によって実現したりしてもよい。また、複数の構成要素が有する複数の機能を、1つの構成要素によって実現したり、複数の構成要素によって実現される1つの機能を、1つの構成要素によって実現したりしてもよい。また、上記各実施形態の構成の一部を省略してもよい。また、上記各実施形態の構成の少なくとも一部を、他の上記各実施形態の構成に対して付加又は置換してもよい。なお、特許請求の範囲に記載した文言によって特定される技術思想に含まれるあらゆる態様が本開示の実施形態である。
1…画像処理システム、10…情報処理装置、11…情報処理装置10制御部、12…記憶部、13…入力部、14…表示部、15…通信部、17…領域判断プログラム、19…バス、20…画像読取装置、21…制御部、22…記憶部、23…入力部、24…表示部、25…通信部、26…画像読取部、27…印刷部。

Claims (7)

  1. 原稿画像を含む読取画像を表すデータを取得する取得部と、
    前記読取画像を、画素範囲に画素値が含まれる画素と含まれない画素とで2値化した画像である2値画像を生成する2値画像生成部であって、前記画素範囲は、前記読取画像における背景色に応じてあらかじめ設定された画素値の範囲である、前記2値画像生成部と、
    前記2値画像において、矩形原稿領域を特定する第1の特定部であって、前記矩形原稿領域は、外形が前記原稿画像の矩形状の境界を表す領域である前記第1の特定部と、
    前記矩形原稿領域において、境界領域を特定する第2の特定部であって、前記境界領域は、画素値が前記画素範囲内である複数の画素が連結して形成された領域であって、その一部が前記矩形原稿領域の境界に接している領域である前記第2の特定部と、
    前記境界領域における境界画素部が、前記矩形原稿領域の境界に沿って分断されているか否かを判断する第1の判断部であって、前記境界画素部は、前記矩形原稿領域の境界に接している複数の画素によって構成され、前記境界画素部が前記矩形原稿領域の境界に沿って分断されているか否かは、画素値が前記画素範囲外の画素であって前記矩形原稿領域の境界に接している画素が所定数以上連続して並ぶか否かを判断することによって判断される前記第1の判断部と、
    前記第1の判断部により前記境界画素部が分断されていないと判断される場合、前記境界領域を、前記読取画像における背景であると判断し、前記第1の判断部により前記境界画素部が分断されていると判断される場合、前記境界領域を、前記原稿画像におけるオブジェクトであると判断する第2の判断部と、
    を備える画像処理装置としてコンピュータを機能させるコンピュータプログラム。
  2. 請求項1に記載のコンピュータプログラムであって、
    前記第1の判断部は、前記境界画素部の両端の画素の間の長さと、前記境界画素部の長さと、を比較することで、前記境界画素部が分断されているか否かを判断する、コンピュータプログラム。
  3. 請求項1に記載のコンピュータプログラムであって、
    前記第1の判断部は、前記矩形原稿領域内の画素であって前記矩形原稿領域の境界に接している画素を前記矩形原稿領域の境界に沿って順次探索し、前記境界画素部に含まれる連続する複数の画素の並びが途切れたか否かを判断し、前記連続する複数の画素の並びが途切れたと判断する場合、前記探索を継続して前記画素範囲に画素値が含まれない画素であって前記矩形原稿領域の境界に接している画素が所定数以上連続して並んだ後、前記境界画素部の画素を再度発見したか否かを判断することで、前記境界画素部が分断されているか否かを判断する、コンピュータプログラム。
  4. 請求項1から請求項3までのいずれか1項に記載のコンピュータプログラムであって、
    前記画素範囲は、輝度値が所定範囲内である画素値の範囲である、コンピュータプログラム。
  5. 請求項1から請求項4までのいずれか1項に記載のコンピュータプログラムであって、
    前記読取画像における前記矩形原稿領域の外側の領域の各画素の画素値を、前記画素範囲に含まれない画素値に置換した前記読取画像である置換画像を生成する生成部
    として更にコンピュータを機能させ、
    前記第2の特定部は、前記置換画像内の前記矩形原稿領域において前記境界領域を特定する、コンピュータプログラム。
  6. 請求項1から請求項5までのいずれか1項に記載のコンピュータプログラムであって、
    前記第2の判断部により前記背景であると判断された前記境界領域に対し、当該境界領域を構成する複数の画素の画素値を、当該境界領域の周辺の画素の画素値のうち、最頻値で置換する補正処理を実行する補正処理部
    として更にコンピュータを機能させるコンピュータプログラム。
  7. 原稿画像を含む読取画像を表すデータを取得する取得部と、
    前記読取画像を、画素範囲に画素値が含まれる画素と含まれない画素とで2値化した画像である2値画像を生成する2値画像生成部であって、前記画素範囲は、前記読取画像における背景色に応じてあらかじめ設定された画素値の範囲である、前記2値画像生成部と、
    前記2値画像において、矩形原稿領域を特定する第1の特定部であって、前記矩形原稿領域は、外形が前記原稿画像の矩形状の境界を表す領域である前記第1の特定部と、
    前記矩形原稿領域において、境界領域を特定する第2の特定部であって、前記境界領域は、画素値が前記画素範囲内である複数の画素が連結して形成された領域であって、その一部が前記矩形原稿領域の境界に接している領域である前記第2の特定部と、
    前記境界領域における境界画素部が、前記矩形原稿領域の境界に沿って分断されているか否かを判断する第1の判断部であって、前記境界画素部は、前記矩形原稿領域の境界に接している複数の画素によって構成され、前記境界画素部が前記矩形原稿領域の境界に沿って分断されているか否かは、画素値が前記画素範囲外の画素であって前記矩形原稿領域の境界に接している画素が所定数以上連続して並ぶか否かを判断することによって判断される前記第1の判断部と、
    前記第1の判断部により前記境界画素部が分断されていないと判断される場合、前記境界領域を、前記読取画像における背景であると判断し、前記第1の判断部により前記境界画素部が分断されていると判断される場合、前記境界領域を、前記原稿画像におけるオブジェクトであると判断する第2の判断部と、
    を備える画像処理装置。
JP2017065210A 2017-03-29 2017-03-29 コンピュータプログラム及び画像処理装置 Active JP6950237B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017065210A JP6950237B2 (ja) 2017-03-29 2017-03-29 コンピュータプログラム及び画像処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017065210A JP6950237B2 (ja) 2017-03-29 2017-03-29 コンピュータプログラム及び画像処理装置

Publications (2)

Publication Number Publication Date
JP2018170584A JP2018170584A (ja) 2018-11-01
JP6950237B2 true JP6950237B2 (ja) 2021-10-13

Family

ID=64019401

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017065210A Active JP6950237B2 (ja) 2017-03-29 2017-03-29 コンピュータプログラム及び画像処理装置

Country Status (1)

Country Link
JP (1) JP6950237B2 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4107812B2 (ja) * 2001-06-11 2008-06-25 株式会社リコー 画像処理装置および画像処理方法および記録媒体
JP2009272723A (ja) * 2008-04-30 2009-11-19 Ricoh Co Ltd 画像処理装置、方法及びプログラム
JP6021665B2 (ja) * 2013-01-30 2016-11-09 株式会社Pfu 画像処理装置、画像処理方法及びコンピュータプログラム
JP6459384B2 (ja) * 2014-10-23 2019-01-30 ブラザー工業株式会社 画像読取装置,プログラム,および読取画像の補正方法

Also Published As

Publication number Publication date
JP2018170584A (ja) 2018-11-01

Similar Documents

Publication Publication Date Title
US9179035B2 (en) Method of editing static digital combined images comprising images of multiple objects
JP4525787B2 (ja) 画像抽出装置、及び画像抽出プログラム
JP6099457B2 (ja) 画像処理装置、領域決定方法及びコンピュータプログラム
US8634659B2 (en) Image processing apparatus, computer readable medium storing program, and image processing method
EP2974261A2 (en) Systems and methods for classifying objects in digital images captured using mobile devices
JP4574503B2 (ja) 画像処理装置、画像処理方法およびプログラム
US9554014B2 (en) Image processing apparatus for detecting and removing a document wrinkle area in a scanned image
JP6021665B2 (ja) 画像処理装置、画像処理方法及びコンピュータプログラム
US9392140B2 (en) Image processing apparatus
JP2010074342A (ja) 画像処理装置、画像形成装置、及びプログラム
JP6950237B2 (ja) コンピュータプログラム及び画像処理装置
US11153447B2 (en) Image processing apparatus and non-transitory computer readable medium storing program
JP4208520B2 (ja) 画像処理装置および画像処理方法、プログラムおよび記憶媒体
JP6883199B2 (ja) 画像処理装置、画像読み取り装置、および、プログラム
US8260057B2 (en) Image processing apparatus that obtains a ruled line from a multi-value image
JP6950236B2 (ja) コンピュータプログラム及び画像処理装置
JP6693184B2 (ja) 画像処理装置、および画像処理方法
JP6645143B2 (ja) 画像解析装置
JP2021039698A (ja) 画像処理装置、方法、および、コンピュータプログラム
US10375261B2 (en) Image scanning apparatus
JP2020120330A (ja) 画像処理装置および画像処理プログラム
JP7516170B2 (ja) 画像処理装置、画像処理方法、およびプログラム
JP2018121270A (ja) コンピュータプログラム、および、画像処理装置
JP6573124B2 (ja) 画像処理装置
JP6464891B2 (ja) 傍線問題採点方法、傍線問題採点プログラム及び傍線問題採点装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200204

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210209

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210407

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: 20210824

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210906

R150 Certificate of patent or registration of utility model

Ref document number: 6950237

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150