Nothing Special   »   [go: up one dir, main page]

JP4487000B2 - Image processing apparatus, image forming apparatus, image processing method, image processing system, image processing program, and recording medium thereof - Google Patents

Image processing apparatus, image forming apparatus, image processing method, image processing system, image processing program, and recording medium thereof Download PDF

Info

Publication number
JP4487000B2
JP4487000B2 JP2008134726A JP2008134726A JP4487000B2 JP 4487000 B2 JP4487000 B2 JP 4487000B2 JP 2008134726 A JP2008134726 A JP 2008134726A JP 2008134726 A JP2008134726 A JP 2008134726A JP 4487000 B2 JP4487000 B2 JP 4487000B2
Authority
JP
Japan
Prior art keywords
line
image
pixel
label
extending
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
JP2008134726A
Other languages
Japanese (ja)
Other versions
JP2009134686A (en
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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Priority to JP2008134726A priority Critical patent/JP4487000B2/en
Priority to CN2008101347678A priority patent/CN101369314B/en
Priority to US12/182,938 priority patent/US8351707B2/en
Publication of JP2009134686A publication Critical patent/JP2009134686A/en
Application granted granted Critical
Publication of JP4487000B2 publication Critical patent/JP4487000B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Analysis (AREA)

Description

本発明は、画像データの特徴量を抽出する特徴量算出部を備えた画像処理装置、画像形成装置、画像送信装置、画像読取装置、画像処理システム、画像データの特徴量を抽出する画像処理方法、画像処理プログラムおよびその記録媒体に関するものである。   The present invention relates to an image processing apparatus, an image forming apparatus, an image transmission apparatus, an image reading apparatus, an image processing system, and an image processing method for extracting a feature quantity of image data. The present invention relates to an image processing program and its recording medium.

従来より、スキャナで原稿画像を読み取って得られた入力画像データと事前に登録されている登録画像とを比較して両者の類似度を判定する技術が種々提案されている。   Conventionally, various techniques for comparing the input image data obtained by reading a document image with a scanner and a registered image registered in advance and determining the similarity between the two have been proposed.

類似度の判定方法としては、例えば、文字画像からOCR(Optical Character Reader)などでキーワードを抽出してマッチングを行う方法や、画像に含まれる罫線の特徴を抽出してマッチングを行う方法などが提案されている。   As a method for determining similarity, for example, a method of extracting a keyword from a character image using an OCR (Optical Character Reader) or the like and a method of matching by extracting a feature of a ruled line included in the image are proposed. Has been.

また、特許文献1には、入力画像から文字、文字列枠、枠などを認識し、枠情報に基づいて枠ごとのマッチングを行うことによって帳票画像などのフォーマット認識を行う技術が開示されている。   Patent Document 1 discloses a technique for recognizing a format of a form image or the like by recognizing a character, a character string frame, a frame or the like from an input image and performing matching for each frame based on the frame information. .

また、特許文献2には、英文文書における単語の重心、黒画素の連結成分の重心、漢字の閉鎖空間、画像中に繰り返し現れる特定部位などを特徴点として抽出し、抽出された各特徴点に対して局所的な特徴点の集合を決定し、決定された各集合から特徴点の部分集合を選択し、選択された各部分集合を特徴付ける量として部分集合中における特徴点の複数の組み合わせについて幾何学的変換に対する不変量をそれぞれ求め、求めた各不変量を特徴量とし、このように求めた特徴量に基づいて文書照合を行う技術が開示されている。
特開平8−255236号公報(公開日:1996年10月1日) 国際公開第WO2006/092957A1号パンフレット(公開日:2006年9月8日)
Patent Document 2 also extracts, as feature points, the centroid of words in English documents, the centroid of connected components of black pixels, the closed space of kanji, and specific parts that repeatedly appear in the image. In contrast, a set of local feature points is determined, a subset of feature points is selected from each determined set, and a plurality of combinations of feature points in the subset are determined as quantities that characterize each selected subset. A technique is disclosed in which invariants with respect to a scientific transformation are obtained, each obtained invariant is used as a feature quantity, and document matching is performed based on the thus obtained feature quantity.
JP-A-8-255236 (Publication date: October 1, 1996) International Publication No. WO2006 / 092957A1 (publication date: September 8, 2006)

しかしながら、上記特許文献1の技術では、入力画像から文字、文字列枠、枠、枠を示す直線などの複数種類の要素を抽出し、抽出した要素毎にマッチングを行う必要があるので、処理が複雑であり、また処理時間が長いという問題がある。   However, in the technique of Patent Document 1 described above, since it is necessary to extract a plurality of types of elements such as characters, character string frames, frames, and straight lines indicating the frames from the input image and perform matching for each extracted element, There is a problem that it is complicated and processing time is long.

また、上記特許文献2の技術のように文字の重心を特徴点とした場合、文字数が少ない原稿の場合などには抽出される特徴点の数が少なくなり、文書照合の精度が低下してしまうという問題がある。   In addition, when the character center of gravity is used as a feature point as in the technique of Patent Document 2 described above, the number of feature points to be extracted is reduced in the case of a document having a small number of characters, and the accuracy of document matching is reduced. There is a problem.

本発明は、上記の問題点に鑑みてなされたものであり、その目的は、入力画像データから当該入力画像データを適切に特定することのできる特徴点を容易かつ短時間で抽出することができる画像処理装置および画像処理方法を提供することにある。   The present invention has been made in view of the above-described problems, and an object of the present invention is to easily and quickly extract a feature point that can appropriately specify the input image data from the input image data. An object is to provide an image processing apparatus and an image processing method.

本発明の画像処理装置は、上記の課題を解決するために、入力画像データの特徴点を算出する特徴点算出部と、上記特徴点算出部が算出した特徴点同士の相対位置に基づいて上記入力画像データの特徴量を算出する特徴量算出部とを備えた画像処理装置であって、上記特徴点算出部は、上記入力画像データから、第1方向に延伸するライン画像および上記第1方向とは異なる第2方向に延伸するライン画像を検出するライン検出部と、上記第1方向に延伸するライン画像と上記第2方向に延伸するライン画像との交点を上記特徴点として算出する交点算出部とを備えていることを特徴としている。   In order to solve the above problems, the image processing apparatus of the present invention is based on a feature point calculation unit that calculates a feature point of input image data, and a relative position between the feature points calculated by the feature point calculation unit. An image processing apparatus including a feature amount calculation unit that calculates a feature amount of input image data, wherein the feature point calculation unit includes a line image extending in a first direction and the first direction from the input image data. A line detection unit that detects a line image extending in a second direction different from the above, and calculating an intersection point between the line image extending in the first direction and the line image extending in the second direction as the feature point It is characterized by having a part.

本発明の画像処理方法は、上記の課題を解決するために、入力画像データの特徴点を算出し、算出した特徴点同士の相対位置に基づいて上記入力画像データの特徴量を算出する画像処理方法であって、上記入力画像データから、第1方向に延伸するライン画像および上記第1方向とは異なる第2方向に延伸するライン画像を検出するライン検出工程と、上記第1方向に延伸するライン画像と上記第2方向に延伸するライン画像との交点を上記特徴点として算出する交点算出工程とを含むことを特徴としている。   In order to solve the above-described problem, the image processing method of the present invention calculates the feature points of the input image data, and calculates the feature amount of the input image data based on the relative positions of the calculated feature points. A method for detecting a line image extending in a first direction and a line image extending in a second direction different from the first direction from the input image data, and extending in the first direction. And an intersection calculation step of calculating an intersection between the line image and the line image extending in the second direction as the feature point.

本発明の画像処理システムは、上記の課題を解決するために、画像処理装置と、この画像処理装置に対して通信可能に接続されたサーバー装置とを備え、入力画像データの特徴点を算出する特徴点算出部と、上記特徴点算出部が算出した特徴点同士の相対位置に基づいて上記入力画像データの特徴量を算出する特徴量算出部とが上記画像処理装置または上記サーバー装置に備えられるか、あるいは上記画像処理装置と上記サーバー装置とに分散して備えられている画像処理システムであって、上記特徴点算出部は、上記入力画像データから、第1方向に延伸するライン画像および上記第1方向とは異なる第2方向に延伸するライン画像を検出するライン検出部と、上記第1方向に延伸するライン画像と上記第2方向に延伸するライン画像との交点を上記特徴点として算出する交点算出部とを備えていることを特徴としている。   In order to solve the above-described problems, an image processing system according to the present invention includes an image processing device and a server device that is communicably connected to the image processing device, and calculates feature points of input image data. The image processing device or the server device includes a feature point calculation unit and a feature amount calculation unit that calculates a feature amount of the input image data based on a relative position between the feature points calculated by the feature point calculation unit. Alternatively, the image processing system is provided in a distributed manner in the image processing device and the server device, wherein the feature point calculation unit includes a line image extending in a first direction from the input image data, and the A line detection unit that detects a line image extending in a second direction different from the first direction, a line image extending in the first direction, and a line image extending in the second direction The point is characterized in that it comprises a intersection calculation unit that calculates a point above features.

上記の画像処理装置、画像処理方法、および画像処理システムによれば、入力画像データから第1方向に延伸するライン画像および第1方向とは異なる第2方向に延伸するライン画像を検出し、第1方向に延伸するライン画像と第2方向に延伸するライン画像との交点を特徴点として算出する。このように、ライン画像同士の交点を特徴点とすることで、例えば文字が少ない原稿から読み取った入力画像データの場合であっても多数の特徴点を抽出することができるので、入力画像データを適切に特定することができる。また、ライン画像の抽出とライン画像同士の交点の算出とを行うだけでよいので、例えば上記特許文献1のように入力画像データから文字,文字列枠,枠,枠を示す直線などの複数種類の要素に基づいて特徴点を算出する場合に比べて特徴点算出処理にかかるアルゴリズムを簡略化するとともに、処理時間を短縮できる。   According to the image processing apparatus, the image processing method, and the image processing system, the line image extending in the first direction and the line image extending in the second direction different from the first direction are detected from the input image data. An intersection point between the line image extending in one direction and the line image extending in the second direction is calculated as a feature point. Thus, by using the intersection of line images as a feature point, a large number of feature points can be extracted even in the case of input image data read from a document with few characters, for example. Can be identified appropriately. Further, since it is only necessary to extract the line image and calculate the intersection between the line images, for example, as in Patent Document 1, a plurality of types such as characters, character string frames, frames, and straight lines indicating the frames are input from the input image data. Compared with the case where the feature points are calculated based on these elements, the algorithm for the feature point calculation process can be simplified and the processing time can be shortened.

なお、上記入力画像データは、原稿画像を読み取ることによって取得されるものであってもよく、画像処理装置に通信可能に接続された他の装置から通信によって取得されるものであってもよく、各種記録媒体に記録された画像データを読み出すことで取得されるものであってもよく、予め規定されたフォーマットに対してユーザが入力した情報を重畳させることで取得されるものであってもよい。   The input image data may be acquired by reading a document image, or may be acquired by communication from another device communicably connected to the image processing device, It may be acquired by reading image data recorded on various recording media, or may be acquired by superimposing information input by a user on a predetermined format. .

また、上記第1方向は入力画像データにおける水平方向であり、上記第2方向は入力画像データにおける垂直方向であってもよい。   The first direction may be a horizontal direction in the input image data, and the second direction may be a vertical direction in the input image data.

入力画像データに含まれる罫線は水平方向および垂直方向に延伸するラインを含む場合が多いので、上記の構成によれば、入力画像データに含まれる罫線の交点を特徴点として好適に抽出することができる。   Since the ruled lines included in the input image data often include lines extending in the horizontal direction and the vertical direction, according to the above configuration, the intersection of the ruled lines included in the input image data can be suitably extracted as a feature point. it can.

また、上記ライン検出部は、水平方向に連続して存在する画素値が所定値以上である画素の数を計数する第1カウント部と、垂直方向に連続して存在する画素値が所定値以上である画素の数を計数する第2カウント部とを備え、上記第1カウント部の計数した画素数が閾値以上である場合に水平方向に連続して存在する上記画素からなる画像を上記第1方向に延伸するライン画像として検出し、上記第2カウント部の計数した画素数が閾値以上である場合に垂直方向に連続して存在する上記画素からなる画像を上記第2方向に延伸するライン画像として検出する構成としてもよい。   The line detection unit includes a first count unit that counts the number of pixels whose pixel values continuously existing in the horizontal direction are equal to or larger than a predetermined value, and a pixel value that exists continuously in the vertical direction is equal to or larger than a predetermined value. A second counting unit that counts the number of pixels that are, and when the number of pixels counted by the first counting unit is greater than or equal to a threshold value, an image composed of the pixels that are continuously present in the horizontal direction is displayed on the first A line image that is detected as a line image that extends in the direction, and that includes the pixels that are continuously present in the vertical direction when the number of pixels counted by the second count unit is greater than or equal to a threshold value, extends in the second direction It is good also as a structure detected as.

上記の構成によれば、水平方向に延伸するライン画像および垂直方向に延伸するライン画像を容易に検出し、これら両画像の交点を特徴点とすることができる。   According to the above configuration, a line image extending in the horizontal direction and a line image extending in the vertical direction can be easily detected, and an intersection of these two images can be used as a feature point.

また、上記第1方向は上記入力画像データにおける水平方向に対して右下がりに傾斜した第1斜め方向であり、上記第2方向は上記入力画像データにおける水平方向に対して左下がりに傾斜した第2斜め方向であってもよい。   The first direction is a first oblique direction inclined downward to the right with respect to the horizontal direction in the input image data, and the second direction is a first oblique direction inclined downward to the left with respect to the horizontal direction in the input image data. Two diagonal directions may be used.

上記の構成によれば、第1斜め方向に延伸するライン画像と第2斜め方向に延伸するライン画像との交点を特徴点とすることにより、例えば文字や記号等に含まれるラインの交点を特徴点として算出することができる。   According to said structure, by making the intersection of the line image extended in the 1st diagonal direction and the line image extended in the 2nd diagonal direction into a feature point, for example, the intersection of the line contained in a character, a symbol, etc. is characterized. It can be calculated as a point.

また、上記入力画像データはマトリクス状に配置された複数の画素の画素値を表すものであり、上記ライン検出部は、水平方向に並ぶ複数の画素からなる複数のラインの各々について、各ラインの左から右に向かって注目画素を1画素ずつずらしていく処理を上端のラインから下端のラインにかけて順次行うとともに、各注目画素に対して当該注目画素の画素値と当該注目画素の周辺画素の画素値との関係に基づいて複数種類の第1ラベルのうちのいずれかを付与する第1ラベル付け処理を行う第1ラベリング部と、上記第1ラベリング部によって第1ラベルが付与された画素の数を第1ラベルの種類毎に計数する第1ラベルカウント部と、水平方向に並ぶ複数の画素からなる複数のラインの各々について、各ラインの右から左に向かって注目画素を1画素ずつずらしていく処理を上端のラインから下端のラインにかけて順次行うとともに、各注目画素に対して当該注目画素の画素値と当該注目画素の周辺画素の画素値との関係に基づいて複数種類の第2ラベルのうちのいずれかを付与する第2ラベル付け処理を行う第2ラベリング部と、上記第2ラベリング部によって第2ラベルが付与された画素の数を第2ラベルの種類毎に計数する第2ラベルカウント部とを備え、上記第1ラベリング部は、(1)注目画素の画素値が所定値未満の場合にはこの注目画素に対して第1ラベルを付与せず、(2)注目画素の画素値が所定値以上であって、この注目画素の左隣の画素に第1ラベルが付与されている場合にはこの注目画素に対して上記左隣の画素と同じ種類の第1ラベルを付与し、(3)注目画素の画素値が所定値以上であって、この注目画素の左隣の画素に対して第1ラベルが付与されておらず、この注目画素の上隣の画素に対して第1ラベルが付与されている場合にはこの注目画素に対して上記上隣の画素と同じ種類の第1ラベルを付与し、(4)注目画素の画素値が所定値以上であって、この注目画素の左隣および上隣の画素に対して第1ラベルが付与されていない場合にはこの注目画素に対して他の画素に付与されていない種類の第1ラベルを付与し、上記第2ラベリング部は、(a)注目画素の画素値が所定値未満の場合にはこの注目画素に対して第2ラベルを付与せず、(b)注目画素の画素値が所定値以上であって、この注目画素の右隣の画素に第2ラベルが付与されている場合にはこの注目画素に対して上記右隣の画素と同じ種類の第2ラベルを付与し、(c)注目画素の画素値が所定値以上であって、この注目画素の右隣の画素に対して第2ラベルが付与されておらず、この注目画素の上隣の画素に対して第2ラベルが付与されている場合にはこの注目画素に対して上記上隣の画素と同じ種類の第2ラベルを付与し、(d)注目画素の画素値が所定値以上であって、この注目画素の右隣および上隣の画素に対して第2ラベルが付与されていない場合にはこの注目画素に対して他の画素に付与されていない種類の第2ラベルを付与し、上記第1ラベルカウント部による計数結果が閾値以上である同一種類の第1ラベルを付与されている各画素からなる画像を第1方向に延伸するライン画像として検出し、上記第2ラベルカウント部による計数結果が閾値以上である同一種類の第2ラベルを付与されている各画素からなる画像を第2方向に延伸するライン画像として検出する構成としてもよい。   Further, the input image data represents pixel values of a plurality of pixels arranged in a matrix, and the line detection unit is configured so that each of a plurality of lines including a plurality of pixels arranged in a horizontal direction The process of shifting the target pixel one pixel at a time from left to right is sequentially performed from the upper end line to the lower end line, and for each target pixel, the pixel value of the target pixel and the peripheral pixels of the target pixel A first labeling unit that performs a first labeling process that assigns one of a plurality of types of first labels based on a relationship with a value, and the number of pixels to which the first label is assigned by the first labeling unit For each of a plurality of lines made up of a plurality of pixels arranged in the horizontal direction from the right to the left of each line. The process of shifting the pixels one pixel at a time is sequentially performed from the upper end line to the lower end line, and for each target pixel, based on the relationship between the pixel value of the target pixel and the pixel values of the surrounding pixels of the target pixel. A second labeling unit that performs a second labeling process for applying any one of a plurality of types of second labels, and the number of pixels to which the second label is applied by the second labeling unit is determined for each type of second label. The first labeling unit (1) does not give the first label to the target pixel when the pixel value of the target pixel is less than a predetermined value. 2) When the pixel value of the target pixel is equal to or greater than a predetermined value and the first label is assigned to the pixel adjacent to the left side of the target pixel, the same type as the pixel adjacent to the left side is applied to the target pixel. Give the first label, 3) The pixel value of the target pixel is equal to or greater than a predetermined value, and the first label is not assigned to the pixel adjacent to the left of the target pixel, and the first label is applied to the pixel adjacent to the target pixel. Is given to the target pixel, the same type of first label as that of the upper adjacent pixel is assigned. (4) The pixel value of the target pixel is equal to or greater than a predetermined value, and When the first label is not assigned to the left adjacent pixel and the upper adjacent pixel, a first label of a type that is not applied to other pixels is assigned to the target pixel, and the second labeling unit is (A) When the pixel value of the target pixel is less than the predetermined value, the second label is not given to the target pixel, and (b) the pixel value of the target pixel is equal to or greater than the predetermined value, If the second label is assigned to the pixel to the right of A second label of the same type as the pixel on the right is given, and (c) the pixel value of the pixel of interest is equal to or greater than a predetermined value, and the second label is assigned to the pixel on the right of the pixel of interest If the second label is assigned to the pixel adjacent to the target pixel, the second label of the same type as the upper adjacent pixel is applied to the target pixel. If the pixel value of the pixel of interest is greater than or equal to a predetermined value and the second label is not assigned to the pixel adjacent to the right and top of the pixel of interest, the pixel of interest is assigned to another pixel. A line image in which a second label of a non-type is assigned, and an image composed of pixels to which a first label of the same type whose count result by the first label count unit is greater than or equal to a threshold is given is extended in the first direction. And the counting result by the second label counting unit May detect an image composed of pixels that have been granted a second label of the same type is the threshold value or more as a line image extending in the second direction.

上記の構成によれば、第1斜め方向に延伸するライン画像と第2斜め方向に延伸するライン画像との交点を特徴点として算出できる。   According to said structure, the intersection of the line image extended in the 1st diagonal direction and the line image extended in the 2nd diagonal direction is computable as a feature point.

また、上記入力画像データはマトリクス状に配置された複数の画素の画素値を表すものであり、上記ライン検出部は、水平方向に並ぶ複数の画素からなる複数のラインの各々について、各ラインの左から右に向かって注目画素を1画素ずつずらしていく処理を上端のラインから下端のラインにかけて順次行うとともに、各注目画素に対して当該注目画素の画素値と当該注目画素の周辺画素の画素値との関係に基づいて複数種類の第1ラベルのうちのいずれかを付与する第1ラベル付け処理を行う第1ラベリング部と、上記第1ラベリング部によって第1ラベルが付与された画素について、ラベル付けされた領域の開始座標および終了座標を第1ラベルの種類毎に格納する第1ラベル開始終了座標格納部と、水平方向に並ぶ複数の画素からなる複数のラインの各々について、各ラインの右から左に向かって注目画素を1画素ずつずらしていく処理を上端のラインから下端のラインにかけて順次行うとともに、各注目画素に対して当該注目画素の画素値と当該注目画素の周辺画素の画素値との関係に基づいて複数種類の第2ラベルのうちのいずれかを付与する第2ラベル付け処理を行う第2ラベリング部と、上記第2ラベリング部によって第2ラベルが付与された画素について、ラベル付けされた領域の開始座標および終了座標を第2ラベルの種類毎に格納する第2ラベル開始終了座標格納部とを備え、上記第1ラベリング部は、(1)注目画素の画素値が所定値未満の場合にはこの注目画素に対して第1ラベルを付与せず、(2)注目画素の画素値が所定値以上であって、この注目画素の左隣の画素に第1ラベルが付与されている場合にはこの注目画素に対して上記左隣の画素と同じ種類の第1ラベルを付与し、(3)注目画素の画素値が所定値以上であって、この注目画素の左隣の画素に対して第1ラベルが付与されておらず、この注目画素の上隣の画素に対して第1ラベルが付与されている場合にはこの注目画素に対して上記上隣の画素と同じ種類の第1ラベルを付与し、(4)注目画素の画素値が所定値以上であって、この注目画素の左隣および上隣の画素に対して第1ラベルが付与されていない場合にはこの注目画素に対して他の画素に付与されていない種類の第1ラベルを付与し、上記第2ラベリング部は、(a)注目画素の画素値が所定値未満の場合にはこの注目画素に対して第2ラベルを付与せず、(b)注目画素の画素値が所定値以上であって、この注目画素の右隣の画素に第2ラベルが付与されている場合にはこの注目画素に対して上記右隣の画素と同じ種類の第2ラベルを付与し、(c)注目画素の画素値が所定値以上であって、この注目画素の右隣の画素に対して第2ラベルが付与されておらず、この注目画素の上隣の画素に対して第2ラベルが付与されている場合にはこの注目画素に対して上記上隣の画素と同じ種類の第2ラベルを付与し、(d)注目画素の画素値が所定値以上であって、この注目画素の右隣および上隣の画素に対して第2ラベルが付与されていない場合にはこの注目画素に対して他の画素に付与されていない種類の第2ラベルを付与し、同一種類の第1ラベルが付与されている各画素からなる画像であって上記第1ラベル開始終了座標格納部に格納されている当該第1ラベルの開始座標から終了座標までの距離が閾値以上である画像を第1方向に延伸するライン画像として検出し、同一種類の第2ラベルを付与されている各画素からなる画像であって上記第2ラベル開始終了座標格納部に格納されている当該第2ラベルの開始座標から終了座標までの距離が閾値以上である画像を第2方向に延伸するライン画像として検出する構成としてもよい。   Further, the input image data represents pixel values of a plurality of pixels arranged in a matrix, and the line detection unit is configured so that each of a plurality of lines including a plurality of pixels arranged in a horizontal direction The process of shifting the target pixel one pixel at a time from left to right is sequentially performed from the upper end line to the lower end line, and for each target pixel, the pixel value of the target pixel and the peripheral pixels of the target pixel A first labeling unit that performs a first labeling process that assigns one of a plurality of types of first labels based on a relationship with a value, and a pixel that is given a first label by the first labeling unit, 1st label start end coordinate storage part which stores the start coordinate and end coordinate of the labeled area | region for every kind of 1st label, and several pixels arranged in a horizontal direction For each of the number of lines, the process of shifting the target pixel by one pixel from the right to the left of each line is sequentially performed from the upper end line to the lower end line, and for each target pixel, the pixel of the target pixel A second labeling unit that performs a second labeling process that assigns one of a plurality of types of second labels based on a relationship between a value and a pixel value of a peripheral pixel of the target pixel, and the second labeling unit A second label start / end coordinate storage unit that stores a start coordinate and an end coordinate of a labeled region for each type of second label with respect to a pixel to which a second label is assigned, and the first labeling unit includes: (1) If the pixel value of the pixel of interest is less than the predetermined value, the first label is not assigned to the pixel of interest, and (2) the pixel value of the pixel of interest is greater than or equal to the predetermined value. When the first label is assigned to the left adjacent pixel, a first label of the same type as the left adjacent pixel is assigned to the target pixel, and (3) the pixel value of the target pixel is a predetermined value. When the first label is not assigned to the pixel adjacent to the left of the pixel of interest and the first label is applied to the pixel adjacent to the pixel of interest, the attention is paid. A first label of the same type as the upper adjacent pixel is assigned to the pixel, and (4) the pixel value of the target pixel is equal to or greater than a predetermined value, In the case where the first label is not assigned, a first label of a type that is not given to other pixels is given to the target pixel, and the second labeling unit is configured such that (a) the pixel value of the target pixel is If it is less than the predetermined value, the second label is not assigned to this pixel of interest, and (b) When the pixel value of the pixel is equal to or greater than a predetermined value and the second label is given to the pixel on the right side of the pixel of interest, the second label of the same type as the pixel on the right side of the pixel of interest (C) the pixel value of the pixel of interest is greater than or equal to a predetermined value, the second label is not assigned to the pixel on the right side of the pixel of interest, and the pixel above the pixel of interest On the other hand, when the second label is given, a second label of the same type as the upper adjacent pixel is given to the target pixel, and (d) the pixel value of the target pixel is a predetermined value or more. When the second label is not assigned to the right adjacent pixel and the upper adjacent pixel of the target pixel, the second label of the type not assigned to other pixels is assigned to the target pixel, and the same An image composed of each pixel to which a first label of a type is assigned, wherein the first label An image in which the distance from the start coordinate to the end coordinate of the first label stored in the start / end coordinate storage unit is equal to or greater than a threshold is detected as a line image extending in the first direction, and the same type of second label is assigned. An image composed of each pixel that is stored in the second label start / end coordinate storage unit and whose distance from the start coordinate to the end coordinate of the second label is equal to or greater than a threshold value is extended in the second direction. The line image may be detected as a line image.

上記の構成によれば、第1斜め方向に延伸するライン画像と第2斜め方向に延伸するライン画像との交点を特徴点として算出できる。また、ライン画像の開始座標から終了座標までに距離に応じてライン画像の検出を行うことにより、検出対象の画像の太さに依存せずに長さに基づいてライン画像の検出を行うことができる。   According to said structure, the intersection of the line image extended in the 1st diagonal direction and the line image extended in the 2nd diagonal direction is computable as a feature point. Also, by detecting the line image according to the distance from the start coordinate to the end coordinate of the line image, the line image can be detected based on the length without depending on the thickness of the detection target image. it can.

また、上記入力画像データはマトリクス状に配置された複数の画素の画素値を表すものであり、上記ライン検出部は、水平方向に並ぶ複数の画素からなる複数のラインの各々について、各ラインの左から右に向かって注目画素を1画素ずつずらしていく処理を上端のラインから下端のラインにかけて順次行うとともに、各注目画素に対して当該注目画素の画素値と当該注目画素の周辺画素の画素値との関係に基づいて複数種類の第1ラベルのうちのいずれかを付与する第1ラベル付け処理を行う第1ラベリング部と、上記第1ラベリング部によって第1ラベルが付与された画素の数を第1ラベルの種類毎に計数する第1ラベルカウント部と、水平方向に並ぶ複数の画素からなる複数のラインの各々について、各ラインの右から左に向かって注目画素を1画素ずつずらしていく処理を上端のラインから下端のラインにかけて順次行うとともに、各注目画素に対して当該注目画素の画素値と当該注目画素の周辺画素の画素値との関係に基づいて複数種類の第2ラベルのうちのいずれかを付与する第2ラベル付け処理を行う第2ラベリング部と、上記第2ラベリング部によって第2ラベルが付与された画素の数を第2ラベルの種類毎に計数する第2ラベルカウント部とを備え、上記第1ラベリング部は、(1)注目画素の画素値が所定値未満の場合にはこの注目画素に対して第1ラベルを付与せず、(2)注目画素の画素値が所定値以上であって、この注目画素の左隣の画素に第1ラベルが付与されている場合にはこの注目画素に対して上記左隣の画素と同じ種類の第1ラベルを付与し、(3)注目画素の画素値が所定値以上であって、この注目画素の左隣の画素に対して第1ラベルが付与されておらず、この注目画素の上隣の画素に対して第1ラベルが付与されている場合にはこの注目画素に対して上記上隣の画素と同じ種類の第1ラベルを付与し、(4)注目画素の画素値が所定値以上であって、この注目画素の左隣の画素および上隣の画素に対して第1ラベルが付与されておらず、左上隣の画素に対して第1ラベルが付与されている場合にはこの注目画素に対して上記左上隣の画素と同じ種類の第1ラベルを付与し、(5)注目画素の画素値が所定値以上であって、この注目画素の左隣、上隣、および左上隣の画素に対して第1ラベルが付与されていない場合にはこの注目画素に対して他の画素に付与されていない種類の第1ラベルを付与し、上記第2ラベリング部は、(a)注目画素の画素値が所定値未満の場合にはこの注目画素に対して第2ラベルを付与せず、(b)注目画素の画素値が所定値以上であって、この注目画素の右隣の画素に第2ラベルが付与されている場合にはこの注目画素に対して上記右隣の画素と同じ種類の第2ラベルを付与し、(c)注目画素の画素値が所定値以上であって、この注目画素の右隣の画素に対して第2ラベルが付与されておらず、この注目画素の上隣の画素に対して第2ラベルが付与されている場合にはこの注目画素に対して上記上隣の画素と同じ種類の第2ラベルを付与し、(d)注目画素の画素値が所定値以上であって、この注目画素の右隣の画素および上隣の画素に対して第2ラベルが付与されておらず、右上隣の画素に対して第2ラベルが付与されている場合にはこの注目画素に対して上記右上隣の画素と同じ種類の第2ラベルを付与し、(e)注目画素の画素値が所定値以上であって、この注目画素の右隣、上隣、および右上隣の画素に対して第2ラベルが付与されていない場合にはこの注目画素に対して他の画素に付与されていない種類の第2ラベルを付与し、上記第1ラベルカウント部による計数結果が閾値以上である同一種類の第1ラベルを付与されている各画素からなる画像を第1方向に延伸するライン画像として検出し、上記第2ラベルカウント部による計数結果が閾値以上である同一種類の第2ラベルを付与されている各画素からなる画像を第2方向に延伸するライン画像として検出する構成としてもよい。   Further, the input image data represents pixel values of a plurality of pixels arranged in a matrix, and the line detection unit is configured so that each of a plurality of lines including a plurality of pixels arranged in a horizontal direction The process of shifting the target pixel one pixel at a time from left to right is sequentially performed from the upper end line to the lower end line, and for each target pixel, the pixel value of the target pixel and the peripheral pixels of the target pixel A first labeling unit that performs a first labeling process that assigns one of a plurality of types of first labels based on a relationship with a value, and the number of pixels to which the first label is assigned by the first labeling unit For each of a plurality of lines made up of a plurality of pixels arranged in the horizontal direction from the right to the left of each line. The process of shifting the pixels one pixel at a time is sequentially performed from the upper end line to the lower end line, and for each target pixel, based on the relationship between the pixel value of the target pixel and the pixel values of the surrounding pixels of the target pixel. A second labeling unit that performs a second labeling process for applying any one of a plurality of types of second labels, and the number of pixels to which the second label is applied by the second labeling unit is determined for each type of second label. The first labeling unit (1) does not give the first label to the target pixel when the pixel value of the target pixel is less than a predetermined value. 2) When the pixel value of the target pixel is equal to or greater than a predetermined value and the first label is assigned to the pixel adjacent to the left side of the target pixel, the same type as the pixel adjacent to the left side is applied to the target pixel. Give the first label, 3) The pixel value of the target pixel is equal to or greater than a predetermined value, and the first label is not assigned to the pixel adjacent to the left of the target pixel, and the first label is applied to the pixel adjacent to the target pixel. Is given to the target pixel, the same type of first label as that of the upper adjacent pixel is assigned. (4) The pixel value of the target pixel is equal to or greater than a predetermined value, and When the first label is not assigned to the left adjacent pixel and the upper adjacent pixel, and the first label is assigned to the upper left adjacent pixel, A first label of the same type as that of the pixel is assigned, and (5) the pixel value of the target pixel is equal to or greater than a predetermined value, and the first label is applied to the pixel adjacent to the left, upper, and upper left of the target pixel. If it is not assigned, this type of pixel is not assigned to other pixels. 1 label is assigned, and the second labeling unit (a) does not assign the second label to the pixel of interest when the pixel value of the pixel of interest is less than a predetermined value, and (b) the pixel of the pixel of interest If the value is equal to or greater than the predetermined value and the second label is assigned to the pixel on the right side of the pixel of interest, the second label of the same type as the pixel on the right is attached to the pixel of interest. (C) The pixel value of the target pixel is equal to or greater than a predetermined value, and the second label is not assigned to the pixel adjacent to the right of the target pixel. When two labels are given, the same type of second label as that of the upper adjacent pixel is given to the target pixel, and (d) the pixel value of the target pixel is equal to or greater than a predetermined value. The second label is not assigned to the pixel on the right side of the pixel and the pixel on the top side. When the second label is given to the element, a second label of the same type as the pixel on the upper right is given to the target pixel, and (e) the pixel value of the target pixel is equal to or greater than a predetermined value. In the case where the second label is not assigned to the right adjacent pixel, the upper adjacent pixel, and the upper right adjacent pixel of the target pixel, the second of the type that is not applied to the other pixels with respect to the target pixel. A label is applied, and an image composed of pixels to which a first label of the same type whose counting result by the first label counting unit is equal to or greater than a threshold is detected as a line image extending in a first direction, and the first It is good also as a structure which detects the image which consists of each pixel provided with the 2nd label of the same kind whose count result by a 2 label count part is more than a threshold value as a line image extended in a 2nd direction.

上記の構成によれば、第1ラベリング部が注目画素にラベル付けを行う際、注目画素の左隣および上隣の画素に対するラベル付け結果に加えて、左上隣の画素に対するラベル付け結果を考慮して注目画素に対するラベル付けを行う。また、第2ラベリング部がラベル付けを行う際、注目画素の右隣および上隣の画素に対するラベル付け結果に加えて、右上隣の画素に対するラベル付け結果を考慮して注目画素に対するラベル付けを行う。これにより、画像読取時の誤差等によって生じたばらつきによって斜め方向のラインの位置にずれが生じている場合であっても、本来は同一であるラインに対して別々のラベルが付されてラインとして検出されなくなることを防止し、ラインの検出精度を向上させることができる。   According to the above configuration, when the first labeling unit labels the target pixel, the labeling result for the upper left adjacent pixel is considered in addition to the labeling result for the left adjacent and upper adjacent pixels of the target pixel. To label the pixel of interest. In addition, when the second labeling unit performs labeling, the target pixel is labeled in consideration of the labeling result for the pixel adjacent to the upper right side in addition to the labeling result for the right adjacent pixel and the upper adjacent pixel. . As a result, even if there is a deviation in the position of the diagonal line due to variations caused by errors at the time of image reading, different labels are attached to the originally identical lines as lines. It is possible to prevent the detection from being lost and improve the line detection accuracy.

また、上記入力画像データはマトリクス状に配置された複数の画素の画素値を表すものであり、上記ライン検出部は、水平方向に並ぶ複数の画素からなる複数のラインの各々について、各ラインの左から右に向かって注目画素を1画素ずつずらしていく処理を上端のラインから下端のラインにかけて順次行うとともに、各注目画素に対して当該注目画素の画素値と当該注目画素の周辺画素の画素値との関係に基づいて複数種類の第1ラベルのうちのいずれかを付与する第1ラベル付け処理を行う第1ラベリング部と、上記第1ラベリング部によって第1ラベルが付与された画素の開始座標および終了座標を第1ラベルの種類毎に格納する第1ラベル開始終了座標格納部と、水平方向に並ぶ複数の画素からなる複数のラインの各々について、各ラインの右から左に向かって注目画素を1画素ずつずらしていく処理を上端のラインから下端のラインにかけて順次行うとともに、各注目画素に対して当該注目画素の画素値と当該注目画素の周辺画素の画素値との関係に基づいて複数種類の第2ラベルのうちのいずれかを付与する第2ラベル付け処理を行う第2ラベリング部と、上記第2ラベリング部によって第2ラベルが付与された画素の開始座標および終了座標を第2ラベルの種類毎に格納する第2ラベル開始終了座標格納部とを備え、上記第1ラベリング部は、(1)注目画素の画素値が所定値未満の場合にはこの注目画素に対して第1ラベルを付与せず、(2)注目画素の画素値が所定値以上であって、この注目画素の左隣の画素に第1ラベルが付与されている場合にはこの注目画素に対して上記左隣の画素と同じ種類の第1ラベルを付与し、(3)注目画素の画素値が所定値以上であって、この注目画素の左隣の画素に対して第1ラベルが付与されておらず、この注目画素の上隣の画素に対して第1ラベルが付与されている場合にはこの注目画素に対して上記上隣の画素と同じ種類の第1ラベルを付与し、(4)注目画素の画素値が所定値以上であって、この注目画素の左隣の画素および上隣の画素に対して第1ラベルが付与されておらず、左上隣の画素に対して第1ラベルが付与されている場合にはこの注目画素に対して上記左上隣の画素と同じ種類の第1ラベルを付与し、(5)注目画素の画素値が所定値以上であって、この注目画素の左隣、上隣、および左上隣の画素に対して第1ラベルが付与されていない場合にはこの注目画素に対して他の画素に付与されていない種類の第1ラベルを付与し、上記第2ラベリング部は、(a)注目画素の画素値が所定値未満の場合にはこの注目画素に対して第2ラベルを付与せず、(b)注目画素の画素値が所定値以上であって、この注目画素の右隣の画素に第2ラベルが付与されている場合にはこの注目画素に対して上記右隣の画素と同じ種類の第2ラベルを付与し、(c)注目画素の画素値が所定値以上であって、この注目画素の右隣の画素に対して第2ラベルが付与されておらず、この注目画素の上隣の画素に対して第2ラベルが付与されている場合にはこの注目画素に対して上記上隣の画素と同じ種類の第2ラベルを付与し、(d)注目画素の画素値が所定値以上であって、この注目画素の右隣の画素および上隣の画素に対して第2ラベルが付与されておらず、右上隣の画素に対して第2ラベルが付与されている場合にはこの注目画素に対して上記右上隣の画素と同じ種類の第2ラベルを付与し、(e)注目画素の画素値が所定値以上であって、この注目画素の右隣、上隣、および右上隣の画素に対して第2ラベルが付与されていない場合にはこの注目画素に対して他の画素に付与されていない種類の第2ラベルを付与し、同一種類の第1ラベルが付与されている各画素からなる画像であって上記第1ラベル開始終了座標格納部に格納されている当該第1ラベルの開始座標から終了座標までの距離が閾値以上である画像を第1方向に延伸するライン画像として検出し、同一種類の第2ラベルを付与されている各画素からなる画像であって上記第2ラベル開始終了座標格納部に格納されている当該第2ラベルの開始座標から終了座標までの距離が閾値以上である画像を第2方向に延伸するライン画像として検出する構成としてもよい。   Further, the input image data represents pixel values of a plurality of pixels arranged in a matrix, and the line detection unit is configured so that each of a plurality of lines including a plurality of pixels arranged in a horizontal direction The process of shifting the target pixel one pixel at a time from left to right is sequentially performed from the upper end line to the lower end line, and for each target pixel, the pixel value of the target pixel and the peripheral pixels of the target pixel A first labeling unit that performs a first labeling process that assigns one of a plurality of types of first labels based on a relationship with a value, and a start of a pixel that is given the first label by the first labeling unit A first label start / end coordinate storage unit that stores coordinates and end coordinates for each type of first label, and each of a plurality of lines composed of a plurality of pixels arranged in the horizontal direction, The process of shifting the target pixel one pixel at a time from the right to the left of IN is sequentially performed from the upper end line to the lower end line, and for each target pixel, the pixel value of the target pixel and the peripheral pixels of the target pixel A second labeling unit for performing a second labeling process for applying any one of a plurality of types of second labels based on the relationship with the pixel value of the pixel, and a pixel to which the second label is applied by the second labeling unit And a second label start / end coordinate storage unit that stores the start coordinates and end coordinates of each of the second label types, wherein the first labeling unit is (1) when the pixel value of the target pixel is less than a predetermined value. Does not assign a first label to this pixel of interest, and (2) if the pixel value of the pixel of interest is greater than or equal to a predetermined value and the first label is assigned to the pixel adjacent to the left of this pixel of interest Is this featured picture Is assigned the same type of first label as the left adjacent pixel, and (3) the pixel value of the target pixel is equal to or greater than a predetermined value, and the first label is set to the left adjacent pixel of the target pixel. In the case where the first label is not given to the pixel adjacent above the target pixel, the first label of the same type as the above adjacent pixel is applied to the target pixel. (4) The pixel value of the pixel of interest is equal to or greater than a predetermined value, and the first label is not assigned to the pixel adjacent to the left and the pixel adjacent to the upper side of the pixel of interest. When one label is given, the same type of first label as the pixel on the upper left is given to the target pixel, and (5) the pixel value of the target pixel is equal to or greater than a predetermined value. When the first label is not assigned to the pixel on the left, top, and top left of the pixel Assigns a first label of a type not assigned to other pixels to the target pixel, and the second labeling unit (a) selects the target pixel when the pixel value of the target pixel is less than a predetermined value. If the pixel value of the target pixel is equal to or greater than a predetermined value and the second label is applied to the pixel on the right side of the target pixel, the target pixel And (c) the pixel value of the target pixel is equal to or greater than a predetermined value, and the second label is assigned to the right adjacent pixel of the target pixel. In the case where the second label is given to the pixel above the target pixel that is not given, the second label of the same type as the above neighboring pixel is given to the target pixel, (D) the pixel value of the pixel of interest is greater than or equal to a predetermined value, When the second label is not assigned to the adjacent pixel and the second label is assigned to the adjacent pixel on the upper right, (E) When the pixel value of the target pixel is equal to or greater than a predetermined value, and the second label is not applied to the pixel adjacent to the right side, the upper side, and the upper right side of the target pixel. Is a second label of a type that is not given to other pixels for this pixel of interest, and is an image composed of each pixel that is given the same type of first label, and the first label start / end coordinates An image in which the distance from the start coordinate to the end coordinate of the first label stored in the storage unit is greater than or equal to the threshold is detected as a line image extending in the first direction, and the second label of the same type is given. An image comprising each pixel, the second label May detect the image distance to the end coordinate is equal to or larger than the threshold from the second label of the start coordinates stored in the Le start end coordinate storage section as a line image extending in the second direction.

上記の構成によれば、第1ラベリング部が注目画素にラベル付けを行う際、注目画素の左隣および上隣の画素に対するラベル付け結果に加えて、左上隣の画素に対するラベル付け結果を考慮して注目画素に対するラベル付けを行う。また、第2ラベリング部がラベル付けを行う際、注目画素の右隣および上隣の画素に対するラベル付け結果に加えて、右上隣の画素に対するラベル付け結果を考慮して注目画素に対するラベル付けを行う。これにより、画像読取時の誤差等によって生じたばらつきによって斜め方向のラインの位置にずれが生じている場合であっても、本来は同一であるラインに対して別々のラベルが付されてラインとして検出されなくなることを防止し、ラインの検出精度を向上させることができる。また、ライン画像の開始座標から終了座標までに距離に応じてライン画像の検出を行うことにより、検出対象の画像の太さに依存せずに長さに基づいてライン画像の検出を行うことができる。   According to the above configuration, when the first labeling unit labels the target pixel, the labeling result for the upper left adjacent pixel is considered in addition to the labeling result for the left adjacent and upper adjacent pixels of the target pixel. To label the pixel of interest. In addition, when the second labeling unit performs labeling, the target pixel is labeled in consideration of the labeling result for the pixel adjacent to the upper right side in addition to the labeling result for the right adjacent pixel and the upper adjacent pixel. . As a result, even if there is a deviation in the position of the diagonal line due to variations caused by errors at the time of image reading, different labels are attached to the originally identical lines as lines. It is possible to prevent the detection from being lost and improve the line detection accuracy. Also, by detecting the line image according to the distance from the start coordinate to the end coordinate of the line image, the line image can be detected based on the length without depending on the thickness of the detection target image. it can.

また、上記ライン検出部は、水平方向に延伸するライン画像および垂直方向に延伸するライン画像を検出し、上記交点算出部は、上記第1方向に延伸するライン画像と上記第2方向に延伸するライン画像との交点に加えて、水平方向に延伸するライン画像と垂直方向に延伸するライン画像との交点を上記特徴点として算出する構成としてもよい。   The line detection unit detects a line image extending in the horizontal direction and a line image extending in the vertical direction, and the intersection calculation unit extends in the second direction and the line image extending in the first direction. In addition to the intersection with the line image, the intersection between the line image extending in the horizontal direction and the line image extending in the vertical direction may be calculated as the feature point.

上記の構成によれば、第1斜め方向に延伸するライン画像と第2斜め方向に延伸するライン画像との交点に加えて、水平方向に延伸するライン画像と垂直方向に延伸するライン画像との交点を特徴点として算出することができる。したがって、より多数の特徴点を算出できるので、入力画像データをより適切に特定することができる。また、入力画像データに含まれる罫線は水平方向および垂直方向に延伸するラインを含む場合が多いので、入力画像データに含まれる罫線の交点を特徴点として好適に抽出することができる。   According to the above configuration, in addition to the intersection of the line image extending in the first oblique direction and the line image extending in the second oblique direction, the line image extending in the horizontal direction and the line image extending in the vertical direction Intersection points can be calculated as feature points. Therefore, since a larger number of feature points can be calculated, input image data can be specified more appropriately. Further, since the ruled lines included in the input image data often include lines extending in the horizontal direction and the vertical direction, the intersections of the ruled lines included in the input image data can be suitably extracted as feature points.

また、上記ライン検出部は、水平方向に延伸するライン画像および垂直方向に延伸するライン画像の検出処理を、上記第1方向に延伸するライン画像および第2方向に延伸するライン画像の検出処理よりも先に行うようになっており、上記交点算出部は、水平方向に延伸するライン画像と垂直方向に延伸するライン画像との交点の数が所定値以上である場合には、上記第1方向に延伸するライン画像および第2方向に延伸するライン画像の検出処理を行わない構成としてもよい。   In addition, the line detection unit performs detection processing of a line image extending in the horizontal direction and a line image extending in the vertical direction from detection processing of the line image extending in the first direction and the line image extending in the second direction. The intersection calculation unit is configured to perform the first direction when the number of intersections between the line image extending in the horizontal direction and the line image extending in the vertical direction is equal to or greater than a predetermined value. The line image extending in the second direction and the line image extending in the second direction may not be detected.

上記の構成によれば、水平方向に延伸するライン画像と垂直方向に延伸するライン画像との交点の数が所定値以上の場合に、第1方向に延伸するライン画像および第2方向に延伸するライン画像の検出処理を行わないようにすることで、第1方向に延伸するライン画像および第2方向に延伸するライン画像の検出にかかる負荷および処理時間を低減できる。また、上記所定値を、水平方向に延伸するライン画像と垂直方向に延伸するライン画像との交点を特徴点とした場合にこの特徴点によって入力画像データを適切に特定することができる程度の数に設定しておくことで、第1方向に延伸するライン画像と第2方向に延伸するライン画像との交点を特徴点として算出しなくても、入力画像データを適切に特定することができる。   According to the above configuration, when the number of intersections between the line image extending in the horizontal direction and the line image extending in the vertical direction is greater than or equal to a predetermined value, the line image extends in the first direction and the line image extends in the second direction. By not performing the line image detection process, it is possible to reduce the load and processing time required to detect the line image extending in the first direction and the line image extending in the second direction. In addition, when the predetermined value is the intersection of a line image extending in the horizontal direction and a line image extending in the vertical direction as a feature point, the number is such that input image data can be appropriately specified by the feature point. By setting to, it is possible to appropriately specify the input image data without calculating the intersection of the line image extending in the first direction and the line image extending in the second direction as a feature point.

また、上記交点算出部は、ユーザからの指示入力を受け付ける指示入力部を備え、上記指示入力部に対するユーザの指示入力に応じて、上記第1方向に延伸するライン画像および第2方向に延伸するライン画像の検出処理を行うか否かを決定する構成としてもよい。   The intersection calculation unit includes an instruction input unit that receives an instruction input from a user, and extends in the line direction extending in the first direction and the second direction in accordance with the user instruction input to the instruction input unit. It may be configured to determine whether or not to perform line image detection processing.

上記の構成によれば、第1方向に延伸するライン画像および第2方向に延伸するライン画像の検出処理を行うか否かをユーザが選択することができる。したがって、例えば、ユーザは、入力画像データの特定精度の向上と特徴点算出処理に要する処理時間の短縮とのいずれを重視するかに応じて、第1方向に延伸するライン画像および第2方向に延伸するライン画像の検出処理の要否を選択できる。   According to said structure, a user can select whether the detection process of the line image extended in a 1st direction and the line image extended in a 2nd direction is performed. Therefore, for example, the user can select a line image extending in the first direction and a second direction depending on whether the improvement in the accuracy of specifying the input image data or the reduction in the processing time required for the feature point calculation process is important. The necessity of the detection process of the line image to extend | stretch can be selected.

また、上記交点算出部は、上記第1方向に延伸するライン画像と上記第2方向に延伸するライン画像との交点が互いに隣接する複数画素からなる場合に、これら複数画素の中心座標、重心座標、またはこれら複数画素からなる領域における所定位置の座標を上記特徴点として算出する構成としてもよい。なお、上記所定位置としては、例えば、複数画素からなる上記領域のうち、第1方向の座標値が最小または最大であって且つ第2方向の座標値が最小または最大である画素の座標、第1方向の座標値の平均値および第2方向の座標値の平均値に対応する座標などをあげることができる。   In addition, when the intersection of the line image extending in the first direction and the line image extending in the second direction is composed of a plurality of adjacent pixels, the intersection calculation unit calculates the center coordinates and the barycentric coordinates of the plurality of pixels. Alternatively, the coordinates of a predetermined position in an area composed of a plurality of pixels may be calculated as the feature point. The predetermined position may be, for example, the coordinates of the pixel having the minimum or maximum coordinate value in the first direction and the minimum or maximum coordinate value in the second direction in the region including a plurality of pixels. For example, the coordinates corresponding to the average value of the coordinate values in one direction and the average value of the coordinate values in the second direction can be given.

上記の構成によれば、第1方向に延伸するライン画像と第2方向に延伸するライン画像との交点が互いに隣接する複数画素からなる場合であっても、特徴点の座標を適切に特定することができる。   According to the above configuration, even when the intersection of the line image extending in the first direction and the line image extending in the second direction is composed of a plurality of adjacent pixels, the coordinates of the feature points are appropriately specified. be able to.

また、上記交点算出部は、上記第1方向に延伸するライン画像に対応する直線の式と、上記第2方向に延伸するライン画像に対応する直線の式とを算出し、これら2つの直線の式に基づいて両直線の交点を算出し、算出した交点に対応する座標を上記特徴点として算出する構成としてもよい。   The intersection calculation unit calculates a straight line expression corresponding to the line image extending in the first direction and a straight line expression corresponding to the line image extending in the second direction. An intersection of both straight lines may be calculated based on the equation, and coordinates corresponding to the calculated intersection may be calculated as the feature point.

上記の構成によれば、各ライン画像の開始座標および終了座標に基づいて算出される計算式によって一意に両ライン画像の交点を算出できるので、交点を算出する際に第1方向に延伸するライン画像および第2方向に延伸するライン画像の両方に含まれる画素を画素単位で調べる必要がないため、交点の算出処理を簡略化し、交点の算出に要する処理時間を短縮できる。   According to the above configuration, since the intersection point of both line images can be uniquely calculated by the calculation formula calculated based on the start coordinate and the end coordinate of each line image, the line extending in the first direction when calculating the intersection point Since it is not necessary to examine pixels included in both the image and the line image extending in the second direction on a pixel-by-pixel basis, the intersection calculation process can be simplified and the processing time required to calculate the intersection can be shortened.

また、登録画像を識別するための識別情報を登録画像が有する特徴量に関連付けて記憶する記憶部と、上記特徴量算出部が入力画像データから算出した特徴量と上記記憶部に記憶されている登録画像の特徴量とに基づいて入力画像と登録画像との類似性を判定する類似判定部とを備えている構成としてもよい。   The storage unit stores identification information for identifying the registered image in association with the feature amount of the registered image, the feature amount calculated from the input image data by the feature amount calculation unit, and the storage unit. It is good also as a structure provided with the similarity determination part which determines the similarity of an input image and a registration image based on the feature-value of a registration image.

上記の構成によれば、入力画像データから取得した特徴量と上記記憶部に記憶されている登録画像の特徴量とを比較することで入力画像と登録画像との類似性を判定することができる。また、上記特徴点を用いて類似性判定を行うことで、入力画像と登録画像との類似性を精度よく判定できる。   According to the above configuration, the similarity between the input image and the registered image can be determined by comparing the feature amount acquired from the input image data with the feature amount of the registered image stored in the storage unit. . Further, by performing similarity determination using the feature points, it is possible to accurately determine the similarity between the input image and the registered image.

また、上記入力画像データに含まれる原稿画像の傾き角度を検出する傾き検知部と、上記傾き検知部の検出した傾き角度に基づいて上記原稿画像の傾きを補正する傾き補正部とを備え、上記傾き補正後の入力画像データを上記交点算出部に入力する構成としてもよい。   A tilt detection unit configured to detect a tilt angle of the document image included in the input image data; and a tilt correction unit configured to correct the tilt of the document image based on the tilt angle detected by the tilt detection unit. The input image data after the inclination correction may be input to the intersection calculation unit.

上記の構成によれば、入力画像データに含まれる原稿画像が傾斜している場合(例えば画像読取装置の読取位置における所定の配置角度に対して傾斜して配置された状態で読み取られた画像データである場合など)であっても、この傾斜を補正することができる。したがって、上記傾斜の影響を受けずに特徴点を算出することができるので、特徴点を精度よく算出できる。   According to the above configuration, when the document image included in the input image data is tilted (for example, image data read while being tilted with respect to a predetermined placement angle at the reading position of the image reading device) Even if this is the case, this inclination can be corrected. Therefore, since the feature point can be calculated without being affected by the inclination, the feature point can be calculated with high accuracy.

また、上記入力画像データにおける注目画素および当該注目画素の周辺画素に含まれる黒画素の数をカウントし、カウント値が第1閾値以上である注目画素を黒画素とし、カウント値が第1閾値未満である注目画素を白画素とする膨張処理を行う膨張処理部と、膨張処理後の入力画像データにおける注目画素および当該注目画素の周辺画素に含まれる白画素の数をカウントし、カウント値が第2閾値以上である注目画素を白画素とし、カウント値が第2閾値未満である注目画素とする縮退処理を行う縮退処理部とを備え、縮退処理後の入力画像データを上記交点算出部に入力する構成としてもよい。   Further, the number of black pixels included in the pixel of interest and the peripheral pixels of the pixel of interest in the input image data is counted, and a pixel of interest having a count value equal to or greater than the first threshold is set as a black pixel, and the count value is less than the first threshold. A dilation processing unit that performs dilation processing with the target pixel as a white pixel, and the number of white pixels included in the pixel of interest and the surrounding pixels of the target pixel in the input image data after the dilation processing. A reduction processing unit that performs a reduction process that sets a target pixel that is equal to or greater than two thresholds as a white pixel and a target pixel that has a count value less than the second threshold, and inputs the input image data after the reduction process to the intersection calculation unit It is good also as composition to do.

上記の構成によれば、膨張処理と縮退処理とを行うことにより、入力画像データにおけるライン部分に読み取り誤差や送受信エラー等に起因するギャップ(画像データの欠落)が生じている場合であっても、このギャップを補正してからラインの検出処理を行うことができる。したがって、ギャップ(画像データの欠落)によってラインが本来よりも短く切断されて検出されることを防止し、入力画像データの特徴点を精度よく検出できる。   According to the above configuration, even if a gap (missing image data) occurs due to a reading error or a transmission / reception error in the line portion of the input image data by performing the expansion processing and the reduction processing. The line detection process can be performed after correcting the gap. Therefore, it is possible to prevent the line from being cut and detected by a gap (missing image data) and to accurately detect the feature points of the input image data.

本発明の画像形成装置は、上記したいずれかの画像処理装置と、入力画像データに応じた画像を記録材上に形成する画像出力部とを備えている。また、本発明の画像送信装置は、上記したいずれかの画像処理装置と、入力画像データを通信可能に接続された他の装置に送信する送信装置とを備えている。また、本発明の画像読取装置は、原稿画像を読み取って入力画像データを取得する画像入力装置と、上記したいずれかの画像処理装置とを備えている。   An image forming apparatus of the present invention includes any one of the above-described image processing apparatuses and an image output unit that forms an image corresponding to input image data on a recording material. An image transmission apparatus according to the present invention includes any one of the above-described image processing apparatuses and a transmission apparatus that transmits input image data to another apparatus that is communicably connected. The image reading apparatus of the present invention includes an image input apparatus that reads an original image and acquires input image data, and any one of the image processing apparatuses described above.

上記の画像形成装置、画像送信装置、画像読取装置によれば、ライン画像同士の交点を特徴点とすることで、例えば文字が少ない原稿から読み取った入力画像データの場合であっても多数の特徴点を抽出することができるので、入力画像データを適切に特定することができる。また、ライン画像の抽出とライン画像同士の交点の算出とを行うだけでよいので、例えば上記特許文献1のように入力画像データから文字,文字列枠,枠,枠を示す直線などの複数種類の要素に基づいて特徴点を算出する場合に比べて特徴点算出処理にかかるアルゴリズムを簡略化するとともに、処理時間を短縮できる。   According to the image forming apparatus, the image transmitting apparatus, and the image reading apparatus described above, a feature point is an intersection of line images. For example, even in the case of input image data read from a document with few characters, a large number of features Since a point can be extracted, input image data can be specified appropriately. Further, since it is only necessary to extract the line image and calculate the intersection between the line images, for example, as in Patent Document 1, a plurality of types such as characters, character string frames, frames, and straight lines indicating the frames are input from the input image data. Compared with the case where the feature points are calculated based on these elements, the algorithm for the feature point calculation process can be simplified and the processing time can be shortened.

なお、上記画像処理装置は、コンピュータによって実現してもよく、この場合には、コンピュータを上記特徴点算出部として動作させることにより、上記画像処理装置をコンピュータにて実現させる画像処理プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に含まれる。   The image processing apparatus may be realized by a computer. In this case, an image processing program for causing the image processing apparatus to be realized by a computer by causing the computer to operate as the feature point calculation unit, and A computer-readable recording medium on which is recorded is also included in the category of the present invention.

以上のように、本発明の画像処理装置、画像処理方法、および画像処理システムは、入力画像データから第1方向に延伸するライン画像および第1方向とは異なる第2方向に延伸するライン画像を検出し、第1方向に延伸するライン画像と第2方向に延伸するライン画像との交点を特徴点として算出する。   As described above, the image processing apparatus, the image processing method, and the image processing system of the present invention are configured to extract a line image extending in the first direction and a line image extending in the second direction different from the first direction from the input image data. Detecting and calculating the intersection of the line image extending in the first direction and the line image extending in the second direction as a feature point.

それゆえ、多数の特徴点を抽出することができるので、入力画像データを適切に特定することができる。また、特徴点算出処理にかかるアルゴリズムを簡略化するとともに、処理時間を短縮できる。   Therefore, since a large number of feature points can be extracted, input image data can be specified appropriately. In addition, the algorithm for the feature point calculation process can be simplified and the processing time can be shortened.

〔実施形態1〕
本発明の一実施形態について説明する。なお、本実施形態では、本発明をデジタルカラー複合機(MFP:Multi-Function Printer)に適用する場合の一例について説明する。
[Embodiment 1]
An embodiment of the present invention will be described. In the present embodiment, an example in the case where the present invention is applied to a digital color multifunction peripheral (MFP) will be described.

(1−1. デジタルカラー複合機1の構成)
図2は、本実施形態にかかるデジタルカラー複合機(画像処理装置、画像形成装置、画像読取装置)1の概略構成を示すブロック図である。このデジタルカラー複合機1は、コピー機能、プリンタ機能、ファクシミリ送信機能、スキャナ機能、scan to e-mail機能等を有している。
(1-1. Configuration of Digital Color Multifunction Machine 1)
FIG. 2 is a block diagram showing a schematic configuration of a digital color multifunction peripheral (image processing apparatus, image forming apparatus, image reading apparatus) 1 according to the present embodiment. The digital color multifunction peripheral 1 has a copy function, a printer function, a facsimile transmission function, a scanner function, a scan to e-mail function, and the like.

図2に示すように、デジタルカラー複合機1は、カラー画像入力装置2、カラー画像処理装置3、カラー画像出力装置4、通信装置5、操作パネル6を備えている。   As shown in FIG. 2, the digital color MFP 1 includes a color image input device 2, a color image processing device 3, a color image output device 4, a communication device 5, and an operation panel 6.

カラー画像入力装置(画像読取装置)2は、例えばCCD(Charge Coupled Device )などの光学情報を電気信号に変換するデバイスを備えたスキャナ部(図示せず)より構成され、原稿からの反射光像を、RGB(R:赤・G:緑・B:青)のアナログ信号としてカラー画像処理装置3に出力する。   The color image input device (image reading device) 2 is composed of a scanner unit (not shown) having a device that converts optical information into an electrical signal, such as a CCD (Charge Coupled Device), for example, and a reflected light image from a document. Are output to the color image processing apparatus 3 as analog signals of RGB (R: red, G: green, B: blue).

カラー画像処理装置3は、A/D変換部11、シェーディング補正部12、文書照合処理部13、入力階調補正部14、領域分離処理部15、色補正部16、黒生成下色除去部17、空間フィルタ処理部18、出力階調補正部19、および階調再現処理部20を備えている。カラー画像入力装置2からカラー画像処理装置3に出力されたアナログ信号は、カラー画像処理装置3内を、A/D変換部11、シェーディング補正部12、文書照合処理部13、入力階調補正部14、領域分離処理部15、色補正部16、黒生成下色除去部17、空間フィルタ処理部18、出力階調補正部19、階調再現処理部20の順で送られ、CMYKのデジタルカラー信号としてカラー画像出力装置4に出力される。   The color image processing apparatus 3 includes an A / D conversion unit 11, a shading correction unit 12, a document matching processing unit 13, an input tone correction unit 14, a region separation processing unit 15, a color correction unit 16, and a black generation and under color removal unit 17. A spatial filter processing unit 18, an output tone correction unit 19, and a tone reproduction processing unit 20. An analog signal output from the color image input device 2 to the color image processing device 3 is converted into an A / D conversion unit 11, a shading correction unit 12, a document matching processing unit 13, and an input tone correction unit in the color image processing device 3. 14, the region separation processing unit 15, the color correction unit 16, the black generation and under color removal unit 17, the spatial filter processing unit 18, the output gradation correction unit 19, and the gradation reproduction processing unit 20 are sent in this order, and CMYK digital color The signal is output to the color image output device 4 as a signal.

A/D(アナログ/デジタル)変換部11は、RGBのアナログ信号をデジタル信号に変換するものである。   The A / D (analog / digital) converter 11 converts RGB analog signals into digital signals.

シェーディング補正部12は、A/D変換部11より送られてきたデジタルのRGB信号に対して、カラー画像入力装置2の照明系、結像系、撮像系で生じる各種の歪みを取り除く処理を施すものである。また、シェーディング補正部12は、カラーバランスの調整、および濃度信号などカラー画像処理装置3に採用されている画像処理システムの扱い易い信号に変換する処理を施す。   The shading correction unit 12 performs a process for removing various distortions generated in the illumination system, the imaging system, and the imaging system of the color image input apparatus 2 on the digital RGB signal sent from the A / D conversion unit 11. Is. Further, the shading correction unit 12 performs a process of converting color balance adjustment and a signal such as a density signal that can be easily handled by the image processing system employed in the color image processing apparatus 3.

文書照合処理部13は、入力された画像データから特徴点を抽出し、抽出した特徴点に基づいて特徴量を算出する。また、文書照合処理部13は、上記のように算出した特徴量を画像データと対応付けて後述するハッシュテーブルに記憶(登録)させる。また、文書照合処理部13は、入力画像データから上記のように算出した特徴量をハッシュテーブルに記憶されている登録画像の特徴量と比較することで入力画像と登録画像との類似性を判定する。また、文書照合処理部13は入力されたRGB信号をそのまま後段の入力階調補正部14へ出力する。なお、文書照合処理部13の詳細については後述する。   The document matching processing unit 13 extracts feature points from the input image data, and calculates feature amounts based on the extracted feature points. Further, the document matching processing unit 13 stores (registers) the feature amount calculated as described above in association with image data in a hash table described later. In addition, the document matching processing unit 13 determines the similarity between the input image and the registered image by comparing the feature amount calculated as described above from the input image data with the feature amount of the registered image stored in the hash table. To do. Further, the document matching processing unit 13 outputs the input RGB signal as it is to the input tone correction unit 14 at the subsequent stage. Details of the document collation processing unit 13 will be described later.

入力階調補正部14は、シェーディング補正部にて各種の歪みが取り除かれたRGB信号に対して、下地色(下地色の濃度成分:下地濃度)の除去やコントラストなどの画質調整処理を施す。   The input tone correction unit 14 performs image quality adjustment processing such as removal of background color (background color density component: background density) and contrast on the RGB signal from which various distortions have been removed by the shading correction unit.

領域分離処理部15は、RGB信号より、入力画像中の各画素を文字領域、網点領域、写真領域のいずれかに分離するものである。領域分離処理部15は、分離結果に基づき、画素がどの領域に属しているかを示す領域識別信号を、色補正部16、黒生成下色除去部17、空間フィルタ処理部18、および階調再現処理部20へと出力するとともに、入力階調補正部14より出力された入力信号をそのまま後段の色補正部16に出力する。   The region separation processing unit 15 separates each pixel in the input image into one of a character region, a halftone dot region, and a photo region from the RGB signal. Based on the separation result, the region separation processing unit 15 generates a region identification signal indicating which region the pixel belongs to, the color correction unit 16, the black generation and under color removal unit 17, the spatial filter processing unit 18, and the gradation reproduction. The output signal is output to the processing unit 20, and the input signal output from the input tone correction unit 14 is output to the subsequent color correction unit 16 as it is.

色補正部16は、色再現の忠実化実現のために、不要吸収成分を含むCMY(C:シアン・M:マゼンタ・Y:イエロー)色材の分光特性に基づいた色濁りを取り除く処理を行うものである。   The color correction unit 16 performs a process of removing color turbidity based on spectral characteristics of CMY (C: cyan, M: magenta, Y: yellow) color materials including unnecessary absorption components in order to realize faithful color reproduction. Is.

黒生成下色除去部17は、色補正後のCMYの3色信号から黒(K)信号を生成する黒生成、元のCMY信号から黒生成で得たK信号を差し引いて新たなCMY信号を生成する処理を行うものである。これにより、CMYの3色信号はCMYKの4色信号に変換される。   The black generation and under color removal unit 17 generates black (K) signals from the CMY three-color signals after color correction, and subtracts the K signals obtained by black generation from the original CMY signals to generate new CMY signals. The process to generate is performed. As a result, the CMY three-color signal is converted into a CMYK four-color signal.

空間フィルタ処理部18は、黒生成下色除去部17より入力されるCMYK信号の画像データに対して、領域識別信号を基にデジタルフィルタによる空間フィルタ処理を行い、空間周波数特性を補正する。これにより、出力画像のぼやけや粒状性劣化を軽減することができる。階調再現処理部20も、空間フィルタ処理部18と同様、CMYK信号の画像データに対して領域識別信号を基に所定の処理を施すものである。   The spatial filter processing unit 18 performs spatial filter processing using a digital filter on the image data of the CMYK signal input from the black generation and under color removal unit 17 to correct the spatial frequency characteristics. As a result, blurring of the output image and deterioration of graininess can be reduced. Similar to the spatial filter processing unit 18, the gradation reproduction processing unit 20 also performs predetermined processing on the image data of the CMYK signal based on the region identification signal.

例えば、領域分離処理部15にて文字に分離された領域は、特に黒文字あるいは色文字の再現性を高めるために、空間フィルタ処理部18による空間フィルタ処理における鮮鋭強調処理で高周波数の強調量が大きくされる。同時に、階調再現処理部20においては、高域周波数の再現に適した高解像度のスクリーンでの2値化または多値化処理が選択される。   For example, the region separated into characters by the region separation processing unit 15 has a high frequency enhancement amount in the sharp enhancement processing in the spatial filter processing by the spatial filter processing unit 18 in order to improve the reproducibility of black characters or color characters. Increased. At the same time, the gradation reproduction processing unit 20 selects binarization or multi-value processing on a high-resolution screen suitable for high frequency reproduction.

また、領域分離処理部15にて網点領域に分離された領域に関しては、空間フィルタ処理部18において、入力網点成分を除去するためのローパス・フィルタ処理が施される。そして、出力階調補正部19では、濃度信号などの信号をカラー画像出力装置4の特性値である網点面積率に変換する出力階調補正処理を行った後、階調再現処理部20で、最終的に画像を画素に分離してそれぞれの階調を再現できるように処理する階調再現処理(中間調生成)が施される。領域分離処理部15にて写真に分離された領域に関しては、階調再現性を重視したスクリーンでの2値化または多値化処理が行われる。   Further, with respect to the region separated into halftone dot regions by the region separation processing unit 15, the spatial filter processing unit 18 performs low-pass filter processing for removing the input halftone component. The output tone correction unit 19 performs an output tone correction process for converting a signal such as a density signal into a halftone dot area ratio that is a characteristic value of the color image output device 4. Then, gradation reproduction processing (halftone generation) is performed so that the image is finally separated into pixels and each gradation is reproduced. With respect to the region separated into photographs by the region separation processing unit 15, binarization or multi-value processing is performed on the screen with an emphasis on gradation reproducibility.

上述した各処理が施された画像データは、いったん記憶装置(図示せず)に記憶され、所定のタイミングで読み出されてカラー画像出力装置4に入力される。   The image data subjected to the above-described processes is temporarily stored in a storage device (not shown), read out at a predetermined timing, and input to the color image output device 4.

カラー画像出力装置4は、カラー画像処理装置3から入力された画像データを記録材(例えば紙等)上に出力するものである。カラー画像出力装置4の構成は特に限定されるものではなく、例えば、電子写真方式やインクジェット方式を用いたカラー画像出力装置を用いることができる。   The color image output device 4 outputs the image data input from the color image processing device 3 onto a recording material (for example, paper). The configuration of the color image output device 4 is not particularly limited, and for example, a color image output device using an electrophotographic method or an inkjet method can be used.

通信装置5は、例えばモデムやネットワークカードより構成される。通信装置5は、ネットワークカード、LANケーブル等を介して、ネットワークに接続された他の装置(例えば、パーソナルコンピュータ、サーバー装置、他のデジタルカラー複合機、ファクシミリ装置等)とデータ通信を行う。   The communication device 5 is composed of a modem or a network card, for example. The communication device 5 performs data communication with other devices (for example, personal computers, server devices, other digital color multifunction peripherals, facsimile devices, etc.) connected to the network via a network card, a LAN cable, or the like.

なお、通信装置5は、画像データを送信する場合、相手先との送信手続きを行って送信可能な状態が確保されると、所定の形式で圧縮された画像データ(スキャナで読み込まれた画像データ)をメモリから読み出し、圧縮形式の変更など必要な処理を施して、通信回線を介して相手先に順次送信する。   When the image data is transmitted, the communication device 5 performs the transmission procedure with the other party and secures a state in which the image data can be transmitted. Then, the communication device 5 compresses the image data (image data read by the scanner) in a predetermined format. ) Is read from the memory, and necessary processing such as changing the compression format is performed, and then sequentially transmitted to the other party via the communication line.

また、通信装置5は、画像データを受信する場合、通信手続きを行うとともに、相手先から送信されてくる画像データを受信してカラー画像処理装置3に入力する。受信した画像データは、カラー画像処理装置3で伸張処理、回転処理、解像度変換処理、出力階調補正、階調再現処理などの所定の処理が施され、カラー画像出力装置4によって出力される。なお、受信した画像データを記憶装置(図示せず)に保存し、カラー画像処理装置3が必要に応じて読み出して上記所定の処理を施すようにしてもよい。   Further, when receiving the image data, the communication device 5 performs a communication procedure and receives the image data transmitted from the other party and inputs it to the color image processing device 3. The received image data is subjected to predetermined processing such as expansion processing, rotation processing, resolution conversion processing, output gradation correction, gradation reproduction processing, and the like by the color image processing apparatus 3 and is output by the color image output apparatus 4. The received image data may be stored in a storage device (not shown), and the color image processing device 3 may read it out as necessary to perform the predetermined processing.

操作パネル6は、例えば、液晶ディスプレイなどの表示部と設定ボタンなどより構成され(いずれも図示せず)、デジタルカラー複合機1の主制御部(図示せず)の指示に応じた情報を上記表示部に表示するとともに、上記設定ボタンを介してユーザから入力される情報を上記主制御部に伝達する。ユーザは、操作パネル6を介して入力画像データに対する各種の処理要求(例えば、処理モード(複写、印刷、送信、編集、交点算出部45における特徴点算出方法(斜め方向のライン画像を抽出することの要否)など)、処理枚数(複写枚数、印刷枚数)、入力画像データの送信先など)を入力することができる。上記主制御部は、例えばCPU(Central Processing Unit)等からなり、図示しないROM等に格納されたプログラムや各種データ、操作パネル6から入力される情報等に基づいて、デジタルカラー複合機1の各部の動作を制御する。   The operation panel 6 includes, for example, a display unit such as a liquid crystal display and setting buttons (none of which are shown), and information corresponding to an instruction from a main control unit (not shown) of the digital color multifunction peripheral 1 is described above. While displaying on a display part, the information input from a user via the said setting button is transmitted to the said main control part. The user can make various processing requests for input image data via the operation panel 6 (for example, processing mode (copy, print, transmission, editing, feature point calculation method in the intersection calculation unit 45 (extract oblique line images)). And the like), the number of processed sheets (the number of copies, the number of printed sheets), the destination of the input image data, etc.). The main control unit includes, for example, a CPU (Central Processing Unit) and the like, and is based on programs and various data stored in a ROM (not shown) and the like, information input from the operation panel 6, and the like. To control the operation.

(1−2. 文書照合処理部13の構成)
次に、文書照合処理部13の詳細について説明する。本実施形態にかかる文書照合処理部13は、入力画像データから複数の特徴点を抽出し、抽出した各特徴点に対して局所的な特徴点の集合を決定し、決定した各集合から特徴点の部分集合を選択し、選択した各部分集合を特徴付ける量として、部分集合中の特徴点に関する複数の組み合わせに基づいて、幾何学的変換に対する不変量をそれぞれ求め、求めた各不変量を組み合わせてハッシュ値(特徴量)を算出する。また、計算したハッシュ値に対応する登録画像に投票することにより、入力画像データに類似する登録画像の検索、当該登録画像に対する類似性の判定処理(類似あり/類似なしの判定)を行う。また、計算したハッシュ値と、このハッシュ値を抽出した画像とを対応付けてハッシュテーブルに記憶(登録)させる処理を行うこともできる。
(1-2. Configuration of Document Collation Processing Unit 13)
Next, details of the document matching processing unit 13 will be described. The document matching processing unit 13 according to the present embodiment extracts a plurality of feature points from input image data, determines a set of local feature points for each extracted feature point, and features points from the determined sets. As a quantity that characterizes each selected subset, an invariant for geometric transformation is obtained based on a plurality of combinations of feature points in the subset, and the obtained invariants are combined. A hash value (feature value) is calculated. In addition, by voting for a registered image corresponding to the calculated hash value, a registered image similar to the input image data is searched, and similarity determination processing (similarity / non-similarity determination) for the registered image is performed. It is also possible to perform processing for associating the calculated hash value with the image from which the hash value has been extracted and storing (registering) it in the hash table.

図1は、文書照合処理部13の概略構成を示すブロック図である。この図に示すように、文書照合処理部13は、特徴点算出部31、特徴量算出部32、投票処理部33、類似度判定処理部34、登録処理部37、制御部7、メモリ8を備えている。   FIG. 1 is a block diagram illustrating a schematic configuration of the document matching processing unit 13. As shown in this figure, the document matching processing unit 13 includes a feature point calculation unit 31, a feature amount calculation unit 32, a voting processing unit 33, a similarity determination processing unit 34, a registration processing unit 37, a control unit 7, and a memory 8. I have.

制御部7は、文書照合処理部13の各部の動作を制御する。なお、制御部7は、デジタルカラー複合機1の各部の動作を制御するための主制御部に備えられていてもよく、主制御部とは別に備えられ、主制御部と協働して文書照合処理部13の動作を制御するものであってもよい。   The control unit 7 controls the operation of each unit of the document collation processing unit 13. The control unit 7 may be provided in a main control unit for controlling the operation of each unit of the digital color multifunction peripheral 1, and is provided separately from the main control unit. The operation of the verification processing unit 13 may be controlled.

メモリ8には、登録画像を特定するためのインデックスと、登録画像から抽出した特徴量とを互いに対応付けて記憶するハッシュテーブル103が備えられている。また、メモリ8には、ハッシュテーブル103の他、文書照合処理部13の各部の処理に用いられる各種データ、処理結果等を記憶する記憶部(図示せず)を備えている。なお、ハッシュテーブル103の詳細については後述する。   The memory 8 includes a hash table 103 that stores an index for specifying a registered image and a feature amount extracted from the registered image in association with each other. In addition to the hash table 103, the memory 8 includes a storage unit (not shown) that stores various data used for processing of each unit of the document collation processing unit 13, processing results, and the like. Details of the hash table 103 will be described later.

特徴点算出部31は、入力画像データに含まれる文字や罫線などの画像からライン画像を抽出し、ライン画像同士の交点を特徴点として算出する。   The feature point calculation unit 31 extracts line images from images such as characters and ruled lines included in the input image data, and calculates intersections between the line images as feature points.

図3は、特徴点算出部31の概略構成を示すブロック図である。この図に示すように、特徴点算出部31は、信号変換処理部(無彩化処理部)41、解像度変換部42、MTF処理部43、2値化処理部44、交点算出部45を備えている。   FIG. 3 is a block diagram illustrating a schematic configuration of the feature point calculation unit 31. As shown in this figure, the feature point calculation unit 31 includes a signal conversion processing unit (achromatic processing unit) 41, a resolution conversion unit 42, an MTF processing unit 43, a binarization processing unit 44, and an intersection calculation unit 45. ing.

信号変換処理部(無彩化処理部)41は、シェーディング補正部12から入力された画像データ(RGB信号)がカラー画像であった場合にこの画像データを無彩化して、明度信号もしくは輝度信号に変換するものである。   When the image data (RGB signal) input from the shading correction unit 12 is a color image, the signal conversion processing unit (achromatic processing unit) 41 achromatizes the image data to obtain a brightness signal or a luminance signal. It is to convert to.

例えば、信号変換処理部(無彩化処理部)41は、下記式によりRGB信号を輝度信号Yに変換する。   For example, the signal conversion processing unit (achromatic processing unit) 41 converts the RGB signal into the luminance signal Y by the following equation.

Yi=0.30Ri+0.59Gi+0.11Bi
ここで、Yは各画素の輝度信号であり、R,G,Bは各画素のRGB信号における各色成分であり、添え字のiは画素毎に付与された値(iは1以上の整数)である。
Yi = 0.30Ri + 0.59Gi + 0.11Bi
Here, Y is a luminance signal of each pixel, R, G, and B are each color component in the RGB signal of each pixel, and the subscript i is a value assigned to each pixel (i is an integer of 1 or more). It is.

あるいは、RGB信号をCIE1976L***信号(CIE:Commission International de l'Eclairage、L*:明度、a*,b*:色度)に変換してもよい。 Alternatively, the RGB signal may be converted into a CIE 1976 L * a * b * signal (CIE: Commission International de l'Eclairage, L * : brightness, a * , b * : chromaticity).

解像度変換部42は、入力画像データを変倍処理する。例えば、解像度変換部42は、入力画像データがカラー画像入力装置2で光学的に変倍されている場合に、所定の解像度になるように入力画像データを再度変倍する。また、解像度変換部42が、後段の各処理部における処理量を軽減するために、カラー画像入力装置2で等倍時に読み込まれる解像度よりも解像度を落とすための解像度変換を行うようにしてもよい(例えば、600dpi(dot per inch)で読み込まれた画像データを300dpiに変換するなど)。   The resolution conversion unit 42 performs a scaling process on the input image data. For example, when the input image data is optically scaled by the color image input device 2, the resolution conversion unit 42 scales the input image data again so that the predetermined resolution is obtained. Further, the resolution conversion unit 42 may perform resolution conversion for lowering the resolution than the resolution read at the same magnification in the color image input device 2 in order to reduce the processing amount in each processing unit in the subsequent stage. (For example, image data read at 600 dpi (dot per inch) is converted to 300 dpi).

MTF(modulation transfer function)処理部43は、カラー画像入力装置2の空間周波数特性が機種ごとに異なることを吸収(調整)するために用いられる。CCDの出力する画像信号には、レンズやミラー等の光学部品、CCDの受光面のアパーチャ開口度、転送効率や残像、物理的な走査による積分効果及び走査むら等に起因しMTFの劣化が生じている。このMTFの劣化により、読み込まれた画像がぼやけたものとなっている。MTF処理部43は、適切なフィルタ処理(強調処理)を施すことにより、MTFの劣化により生じるぼやけを修復する処理を行う。また、後述する特徴点抽出処理に不要な高周波成分を抑制するためにも用いる。すなわち、混合フィルタ(図示せず)を用いて強調および平滑化処理を行う。なお、図4は、この混合フィルタにおけるフィルタ係数の一例を示している。   An MTF (modulation transfer function) processing unit 43 is used to absorb (adjust) that the spatial frequency characteristics of the color image input device 2 are different for each model. In the image signal output by the CCD, MTF degradation occurs due to optical parts such as lenses and mirrors, aperture aperture of the light receiving surface of the CCD, transfer efficiency and afterimage, integration effects due to physical scanning, and scanning unevenness. ing. Due to the deterioration of the MTF, the read image is blurred. The MTF processing unit 43 performs a process of repairing the blur caused by the deterioration of the MTF by performing an appropriate filter process (enhancement process). It is also used to suppress high-frequency components that are unnecessary for the feature point extraction process described later. That is, enhancement and smoothing processing is performed using a mixing filter (not shown). FIG. 4 shows an example of the filter coefficient in this mixed filter.

2値化処理部44は、無彩化された画像データ(輝度値(輝度信号)または明度値(明度信号))と、予め設定された閾値とを比較することにより画像データを2値化する。   The binarization processing unit 44 binarizes the image data by comparing the achromatic image data (luminance value (luminance signal) or brightness value (brightness signal)) with a preset threshold value. .

交点算出部45は、2値化された画像データからライン画像を抽出し、抽出したライン画像同士の交点を特徴点として特徴量算出部32に出力する。なお、交点算出部45における処理の詳細については後述する。   The intersection calculation unit 45 extracts line images from the binarized image data and outputs the intersections of the extracted line images to the feature amount calculation unit 32 as feature points. Details of the processing in the intersection calculation unit 45 will be described later.

特徴量算出部32は、特徴点抽出部32a、不変量算出部32b、ハッシュ値算出部32cを備えており、特徴点算出部31で算出された特徴点を用いて、原稿画像の回転、平行移動、拡大、縮小、平行移動等の幾何学的変形に対して不変な量である特徴量(ハッシュ値および/または不変量)を算出する。   The feature amount calculation unit 32 includes a feature point extraction unit 32a, an invariant calculation unit 32b, and a hash value calculation unit 32c. The feature point calculated by the feature point calculation unit 31 is used to rotate and parallelize a document image. A feature amount (hash value and / or invariant) that is an invariable amount with respect to geometric deformation such as movement, enlargement, reduction, and parallel movement is calculated.

特徴点抽出部32aは、図5に示すように、1つの特徴点を注目特徴点とし、この注目特徴点の周辺の特徴点を、注目特徴点からの距離が近いものから順に所定数(ここでは4点)だけ周辺特徴点として抽出する。図5の例では、特徴点aを注目特徴点とした場合には特徴点b,c,d,eの4点が周辺特徴点として抽出され、特徴点bを注目特徴点とした場合には特徴点a,c,e,fの4点が周辺特徴点として抽出される。   As shown in FIG. 5, the feature point extraction unit 32a sets one feature point as a target feature point, and sets a predetermined number of feature points in the vicinity of the target feature point in order from the closest distance from the target feature point (here 4 points) are extracted as peripheral feature points. In the example of FIG. 5, when the feature point a is the feature point of interest, four feature points b, c, d, e are extracted as the peripheral feature points, and when the feature point b is the feature point of interest, Four points of feature points a, c, e, and f are extracted as peripheral feature points.

また、特徴点抽出部32aは、上記のように抽出した周辺特徴点4点の中から選択しうる3点の組み合わせを抽出する。例えば、図6(a)〜図6(c)に示すように、図5に示した特徴点aを注目特徴点とした場合、周辺特徴点b,c,d,eのうちの3点の組み合わせ、すなわち、周辺特徴点b,c,d、周辺特徴点b,c,e、周辺特徴点c,d,eの各組み合わせが抽出される。   Further, the feature point extraction unit 32a extracts a combination of three points that can be selected from the four peripheral feature points extracted as described above. For example, as shown in FIGS. 6A to 6C, when the feature point a shown in FIG. 5 is the feature point of interest, three of the peripheral feature points b, c, d, and e are selected. Combinations, that is, combinations of peripheral feature points b, c, d, peripheral feature points b, c, e, and peripheral feature points c, d, e are extracted.

次に、不変量算出部32bは、抽出した各組み合わせについて、幾何学的変形に対する不変量(特徴量の1つ)Hijを算出する。ここで、iは注目特徴点を示す数(iは1以上の整数)であり、jは周辺特徴点3点の組み合わせを示す数(jは1以上の整数)である。本実施形態では、周辺特徴点同士を結ぶ線分の長さのうちの2つの比を不変量Hijとする。なお、上記線分の長さは、各周辺特徴点の座標値に基づいて算出すればよい。例えば、図6(a)の例では、特徴点cと特徴点dとを結ぶ線分の長さをA11、特徴点cと特徴点bとを結ぶ線分の長さをB11とすると、不変量H11はH11=A11/B11である。また、図6(b)の例では、特徴点cと特徴点bとを結ぶ線分の長さをA12、特徴点bと特徴点eとを結ぶ線分の長さをB12とすると、不変量H12はH12=A12/B12である。また、図6(c)の例では、特徴点dと特徴点bとを結ぶ線分の長さをA13、特徴点bと特徴点eとを結ぶ線分の長さをB13とすると、不変量H13はH13=A13/B13である。このようにして、図6(a)〜図6(c)の例では、不変量H11,H12,H13が算出される。   Next, the invariant calculation unit 32b calculates an invariant (one of feature quantities) Hij with respect to geometric deformation for each extracted combination. Here, i is a number indicating the feature point of interest (i is an integer equal to or greater than 1), and j is a number indicating a combination of three peripheral feature points (j is an integer equal to or greater than 1). In the present embodiment, the ratio of two of the lengths of the line segments connecting the peripheral feature points is set as the invariant Hij. The length of the line segment may be calculated based on the coordinate value of each peripheral feature point. For example, in the example of FIG. 6A, if the length of the line segment connecting the feature point c and the feature point d is A11 and the length of the line segment connecting the feature point c and the feature point b is B11, The variable H11 is H11 = A11 / B11. In the example of FIG. 6B, if the length of the line segment connecting the feature point c and the feature point b is A12 and the length of the line segment connecting the feature point b and the feature point e is B12, The variable H12 is H12 = A12 / B12. In the example of FIG. 6C, if the length of the line segment connecting the feature point d and the feature point b is A13, and the length of the line segment connecting the feature point b and the feature point e is B13, The variable H13 is H13 = A13 / B13. In this way, invariants H11, H12, and H13 are calculated in the examples of FIGS. 6 (a) to 6 (c).

次に、ハッシュ値算出部32cは、(Hi1×10+Hi2×10+Hi3×10)/Dの余りの値をハッシュ値(特徴量の1つ)Hiとして算出し、メモリ8に記憶させる。なお、上記Dは余りが取り得る値の範囲をどの程度に設定するかに応じて予め設定される定数である。 Next, the hash value calculation unit 32c calculates a remainder value of (Hi1 × 10 2 + Hi2 × 10 1 + Hi3 × 10 0 ) / D as a hash value (one of feature amounts) Hi and stores it in the memory 8. . Note that D is a constant set in advance according to how much the range of values that the remainder can take is set.

なお、不変量Hijの算出方法は特に限定されるものではなく、例えば、注目特徴点の近傍5点の複比、近傍n点(nはn≧5の整数)から抽出した5点の複比、近傍n点から抽出したm点(mはm<nかるm≧5の整数)の配置およびm点から抽出した5点の複比に基づいて算出される値などを注目特徴点についての上記不変量Hijとしてもよい。なお、複比とは、直線上の4点または平面上の5点から求められる値であり、幾何学的変換の一種である射影変形に対する不変量として知られている。   Note that the method for calculating the invariant Hij is not particularly limited. For example, the cross ratio of five points in the vicinity of the feature point of interest, or the double ratio of five points extracted from the neighboring n points (n is an integer of n ≧ 5). The value calculated based on the arrangement of m points extracted from n points in the vicinity (m is an integer of m <n and m ≧ 5) and the cross ratio of the five points extracted from m points, etc. The invariant Hij may be used. The cross ratio is a value obtained from four points on a straight line or five points on a plane, and is known as an invariant with respect to projective deformation which is a kind of geometric transformation.

また、ハッシュ値Hiの算出するための式についても上記式(2)に限るものではなく、他のハッシュ関数(例えば特許文献4に記載されているハッシュ関数のうちのいずれか)を用いてもよい。   Also, the formula for calculating the hash value Hi is not limited to the above formula (2), and other hash functions (for example, any one of the hash functions described in Patent Document 4) may be used. Good.

また、特徴量算出部32の各部は、1つの注目特徴点に対する周辺特徴点の抽出およびハッシュ値Hiの算出が終わると、注目特徴点を他の特徴点に変更して周辺特徴点の抽出およびハッシュ値の算出を行い、全ての特徴点についてのハッシュ値を算出する。   Further, each part of the feature quantity calculation unit 32, after completing the extraction of the peripheral feature points for one target feature point and the calculation of the hash value Hi, changes the target feature point to another feature point, A hash value is calculated, and hash values for all feature points are calculated.

図5の例では、特徴点aを注目特徴点とした場合の周辺特徴点およびハッシュ値の抽出が終わると、次に特徴点bを注目特徴点とした場合の周辺特徴点およびハッシュ値の抽出を行う。図5の例では、特徴点bを注目特徴点とした場合、特徴点a,c,e,fの4点が周辺特徴点として抽出される。そして、図7(a)〜図7(c)に示すように、これら周辺特徴点a,c,e,fの中から選択される3点の組み合わせ(周辺特徴点a,e,f、周辺特徴点c,e,f、周辺特徴点a,c,f)を抽出し、各組み合わせについてハッシュ値Hiを算出し、メモリ8に記憶させる。そして、この処理を各特徴点について繰り返し、各特徴点を注目特徴点とした場合のハッシュ値をそれぞれ求めてメモリ8に記憶させる。   In the example of FIG. 5, when the extraction of the peripheral feature point and the hash value when the feature point a is the target feature point is finished, the peripheral feature point and the hash value are extracted when the feature point b is the target feature point. I do. In the example of FIG. 5, when the feature point b is set as the feature point of interest, four feature points a, c, e, and f are extracted as the peripheral feature points. Then, as shown in FIGS. 7A to 7C, a combination of three points selected from these peripheral feature points a, c, e, and f (peripheral feature points a, e, f, and peripheral points) Feature points c, e, f, peripheral feature points a, c, f) are extracted, and a hash value Hi is calculated for each combination and stored in the memory 8. Then, this process is repeated for each feature point, and a hash value when each feature point is a feature point of interest is obtained and stored in the memory 8.

なお、特徴点aを注目特徴点としたときの不変量の算出方法は上記の方法に限るものではない。例えば、図30(a)〜図30(d)に示すように、図5に示した特徴点aを注目特徴点とした場合、特徴点aから最も近い4つの周辺特徴点b,c,d,eを選択し、さらに選択した4つの周辺特徴点のうちの3点の組み合わせ、すなわち、周辺特徴点b,c,d、周辺特徴点b,c,e、周辺特徴点b,d,e、周辺特徴点c,d,eの各組み合わせを抽出し、抽出した各組み合わせについて、幾何学的変形に対する不変量(特徴量の1つ)Hijを算出するようにしてもよい。この場合、不変量の算出方法としては上記した方法と同様の方法を用いることができる。   Note that the invariant calculation method when the feature point a is the feature point of interest is not limited to the above method. For example, as shown in FIGS. 30A to 30D, when the feature point a shown in FIG. 5 is the feature point of interest, the four neighboring feature points b, c, d closest to the feature point a are used. , E, and a combination of three of the selected four peripheral feature points, that is, peripheral feature points b, c, d, peripheral feature points b, c, e, peripheral feature points b, d, e Alternatively, each combination of the peripheral feature points c, d, and e may be extracted, and for each extracted combination, an invariant (one of feature quantities) Hij with respect to geometric deformation may be calculated. In this case, a method similar to the method described above can be used as the invariant calculation method.

例えば、注目特徴点に最も近い周辺特徴点と2番目に近い周辺特徴点とを結ぶ線分をAij、注目特徴点に最も近い周辺特徴点と3番目に近い周辺特徴点とを結ぶ線分をBijとし、不変量Hij=Aij/Bijとしてもよい。この場合、図30(a)の例では、特徴点bと特徴点cとを結ぶ線分の長さをA11、特徴点bと特徴点dとを結ぶ線分の長さをB11とすると、不変量H11はH11=A11/B11となる。また、図30(b)の例では、特徴点bと特徴点cとを結ぶ線分の長さをA12、特徴点bと特徴点eとを結ぶ線分の長さをB12とすると、不変量H12はH12=A12/B12となる。また、図30(c)の例では、特徴点bと特徴点dとを結ぶ線分の長さをA13、特徴点bと特徴点eとを結ぶ線分の長さをB13とすると、不変量H13はH13=A13/B13となる。また、図30(d)の例では、特徴点cと特徴点dとを結ぶ線分の長さをA14、特徴点cと特徴点eとを結ぶ線分の長さをB14とすると、不変量H14はH14=A14/B14となる。   For example, a line connecting the peripheral feature point closest to the target feature point and the second closest peripheral feature point is Aij, and a line segment connecting the peripheral feature point closest to the target feature point and the third closest peripheral feature point Bij may be used, and the invariant Hij = Aij / Bij. In this case, in the example of FIG. 30A, if the length of the line segment connecting the feature point b and the feature point c is A11, and the length of the line segment connecting the feature point b and the feature point d is B11, The invariant H11 is H11 = A11 / B11. In the example of FIG. 30B, if the length of the line segment connecting the feature point b and the feature point c is A12 and the length of the line segment connecting the feature point b and the feature point e is B12, The variable H12 is H12 = A12 / B12. In the example of FIG. 30C, if the length of the line segment connecting the feature point b and the feature point d is A13 and the length of the line segment connecting the feature point b and the feature point e is B13, The variable H13 is H13 = A13 / B13. In the example of FIG. 30D, if the length of the line segment connecting the feature point c and the feature point d is A14 and the length of the line segment connecting the feature point c and the feature point e is B14, The variable H14 is H14 = A14 / B14.

また、図5に示した特徴点bを注目特徴点とした場合、図31(a)〜図31(d)に示すように、特徴点bから最も近い4つの特徴点a,c,e,fを選択し、この4点の周辺特徴点の中から、ある3点の組み合わせ(周辺特徴点a,e,f、周辺特徴点a,c,e、周辺特徴点a,f,c、周辺特徴点e,f,c)を抽出し、各組み合わせについて幾何学的変形に対する不変量Hijを算出するようにしてもよい。   Further, when the feature point b shown in FIG. 5 is set as the feature point of interest, as shown in FIGS. 31 (a) to 31 (d), the four feature points a, c, e, closest to the feature point b are used. f is selected, and among these four peripheral feature points, a combination of three points (peripheral feature points a, e, f, peripheral feature points a, c, e, peripheral feature points a, f, c, peripheral Feature points e, f, c) may be extracted, and invariants Hij for geometric deformation may be calculated for each combination.

不変量に基づいてハッシュ値を算出する方法は、上記した方法と同様の方法を用いることができる。すなわち、(Hi1×10+Hi2×10+Hi3×10+Hi4×10)/Dの余りの値をハッシュ値として算出し、メモリ8に記憶させればよい。 As a method for calculating the hash value based on the invariant, the same method as described above can be used. That is, the remainder value of (Hi1 × 10 3 + Hi2 × 10 2 + Hi3 × 10 1 + Hi4 × 10 0 ) / D may be calculated as a hash value and stored in the memory 8.

上記の例では、注目特徴点に最も近い周辺特徴点と2番目に近い周辺特徴点とを結ぶ線分をAij、注目特徴点に最も近い周辺特徴点と3番目に近い周辺特徴点とを結ぶ線分をBijとしたが、これに限らず、例えば周辺特徴点間を結ぶ線分の長さを基準にして選定する等、不変量Hijの算出に用いる線分は任意の方法で選定すればよい。   In the above example, the line segment connecting the peripheral feature point closest to the target feature point and the second closest peripheral feature point is Aij, and the peripheral feature point closest to the target feature point and the third closest peripheral feature point are connected. The line segment is set as Bij. However, the present invention is not limited to this. For example, the line segment used for calculation of the invariant Hij may be selected by an arbitrary method such as selecting the line segment connecting the peripheral feature points as a reference. Good.

なお、特徴量算出部32は、入力画像データを登録画像として登録する登録処理を行う場合には、上記のように算出した入力画像データの各特徴点についてのハッシュ値(特徴量)を登録処理部37に送る。また、特徴量算出部32は、入力画像データが既に登録されている登録画像の画像データであるかどうかの判定処理(類似性判定処理)を行う場合には、上記のように算出した入力画像データの各特徴点についてのハッシュ値を投票処理部33に送る。   Note that, when performing registration processing for registering input image data as a registered image, the feature amount calculation unit 32 performs registration processing for hash values (feature amounts) for each feature point of the input image data calculated as described above. Send to part 37. In addition, when performing a determination process (similarity determination process) on whether or not the input image data is image data of a registered image that has already been registered, the feature amount calculation unit 32 calculates the input image calculated as described above. A hash value for each feature point of the data is sent to the voting processing unit 33.

登録処理部37は、特徴量算出部32が算出した各特徴点についてのハッシュ値と、原稿(入力画像データ)を表すインデックス(原稿ID)とを互いに対応付けてメモリ8に設けられたハッシュテーブル103に順次登録していく(図8(a)参照)。ハッシュ値がすでに登録されている場合は、当該ハッシュ値に対応付けて原稿IDを登録する。原稿IDは重複することなく順次番号が割り当てられる。なお、ハッシュテーブル103に登録されている原稿の数が所定値(例えば、登録可能な原稿の数の80%)より多くなった場合、古い原稿IDを検索して順次消去するようにしてもよい。また、消去された原稿IDは、新たな入力画像データの原稿IDとして再度使用できるようにしてもよい。また、算出されたハッシュ値が同値である場合(図8(b)の例ではH1=H5)、これらを1つにまとめてハッシュテーブル103に登録してもよい。   The registration processing unit 37 has a hash table provided in the memory 8 in association with a hash value for each feature point calculated by the feature amount calculation unit 32 and an index (document ID) representing a document (input image data). The information is sequentially registered in 103 (see FIG. 8A). If the hash value is already registered, the document ID is registered in association with the hash value. Document IDs are sequentially assigned numbers without duplication. When the number of documents registered in the hash table 103 exceeds a predetermined value (for example, 80% of the number of documents that can be registered), the old document ID may be searched and sequentially deleted. . The deleted document ID may be used again as the document ID of new input image data. Further, when the calculated hash values are the same value (H1 = H5 in the example of FIG. 8B), these may be combined and registered in the hash table 103.

投票処理部33は、入力画像データから算出した各特徴点のハッシュ値をハッシュテーブル103に登録されているハッシュ値と比較し、同じハッシュ値を有する登録画像に投票する。言い換えれば、登録画像毎に、登録画像が有するハッシュ値と同じハッシュ値が入力画像データから算出された回数をカウントし、カウント値をメモリ8に記憶させる。図9は、登録画像ID1,ID2,ID3に対する投票数の一例を示すグラフである。   The voting processing unit 33 compares the hash value of each feature point calculated from the input image data with the hash value registered in the hash table 103, and votes for registered images having the same hash value. In other words, for each registered image, the number of times the same hash value as the hash value of the registered image is calculated from the input image data is counted, and the count value is stored in the memory 8. FIG. 9 is a graph showing an example of the number of votes for registered images ID1, ID2, and ID3.

類似度判定処理部34は、メモリ8から投票処理部33の投票処理結果(各登録画像のインデックスおよび各登録画像に対する投票数;類似度)を読み出し、最大得票数および最大得票数を得た登録画像のインデックスを抽出する。そして、抽出された最大得票数を予め定められている閾値THaと比較して類似性(入力画像データが登録画像の画像データであるかどうか)を判定し、判定結果を示す判定信号を制御部7に送る。つまり、最大得票数が予め定められた閾値THa以上である場合には「類似性あり(入力画像データは登録画像の画像データである)」と判定し、閾値THa未満である場合には「類似性なし(入力画像データは登録画像の画像データではない)」と判定する。   The similarity determination processing unit 34 reads the voting result (the index of each registered image and the number of votes for each registered image; similarity) of the voting processing unit 33 from the memory 8 and obtains the maximum number of votes and the maximum number of votes obtained. Extract image index. Then, the extracted maximum number of votes is compared with a predetermined threshold THa to determine similarity (whether or not the input image data is image data of a registered image), and a determination signal indicating the determination result is sent to the control unit Send to 7. That is, when the maximum number of votes is greater than or equal to a predetermined threshold value THa, it is determined that there is similarity (the input image data is image data of a registered image). No determination is made (the input image data is not image data of a registered image) ”.

あるいは、類似度判定処理部34が、各登録画像に対する得票数を投票総数(入力画像データから抽出された特徴点の総数)で除算して正規化することで類似度を算出し、この類似度と予め定められている閾値THa(例えば投票総数の80%)との比較を行うことによって類似度を判定してもよい。   Alternatively, the similarity determination processing unit 34 calculates the similarity by dividing and normalizing the number of votes obtained for each registered image by the total number of votes (the total number of feature points extracted from the input image data). And the threshold value THa (for example, 80% of the total number of votes) may be compared to determine the similarity.

また、類似度判定処理部34が、各登録画像に対する得票数を、ハッシュ値の登録数が最も多い登録画像についてのハッシュ値の登録数(最大登録数)で除算して正規化することで類似度を算出し、この類似度と予め定められている閾値THa(例えば投票総数の80%)との比較を行うことによって類似性を判定してもよい。つまり、算出した類似度が閾値THa以上である場合には「類似性あり」と判定し、閾値THa未満である場合には「類似性なし」と判定すればよい。なお、この場合、入力画像データから抽出されるハッシュ値の総数は上記最大登録数よりも大きくなる場合があるため(特に原稿および/または登録画像の少なくとも一部に手書き部分がある場合など)、類似度の算出値は100%を超える場合も有り得る。   In addition, the similarity determination processing unit 34 normalizes the number of votes obtained for each registered image by dividing by the number of registered hash values (maximum registered number) for the registered image having the largest number of registered hash values. The degree of similarity may be determined by calculating the degree and comparing the degree of similarity with a predetermined threshold THa (for example, 80% of the total number of votes). That is, if the calculated similarity is equal to or higher than the threshold THa, it is determined as “similar”, and if it is lower than the threshold THa, it is determined as “not similar”. In this case, the total number of hash values extracted from the input image data may be larger than the maximum registered number (particularly when at least a part of the original and / or registered image has a handwritten part). The calculated value of similarity may exceed 100%.

また、類似性を判定する際の閾値THaは、各登録画像について一定であってもよく、あるいは各登録画像の重要度等に応じて登録画像毎に設定されてもよい。登録画像の重要度は、例えば、紙幣、有価証券、極秘書類、社外秘の書類等については重要度を最大にし、秘密書類については重要度を紙幣等よりも低くするといったように、登録画像に応じて段階的に設定してもよい。この場合、メモリ8に、登録画像の重要度に応じた重み付け係数を当該登録画像のインデックスと関連付けて記憶させておき、類似度判定処理部34が、最大得票数を得た登録画像に対応する閾値THaを用いて類似性を判定するようにすればよい。   The threshold value THa for determining similarity may be constant for each registered image, or may be set for each registered image according to the importance of each registered image. The importance of the registered image depends on the registered image, for example, the importance is maximized for banknotes, securities, confidential documents, confidential documents, etc., and the importance is lower for banknotes, etc. May be set step by step. In this case, a weighting coefficient corresponding to the importance of the registered image is stored in the memory 8 in association with the index of the registered image, and the similarity determination processing unit 34 corresponds to the registered image that has obtained the maximum number of votes. The similarity may be determined using the threshold THa.

また、類似性を判定する際、閾値THaは一定にする一方、各登録画像に対する投票数(各登録画像の得票数)に各登録画像の重み係数を掛けて類似性を判定するようにしてもよい。この場合、メモリ8に、各登録画像の重要度に応じた重み付け係数を各登録画像のインデックスと関連付けて記憶させておき、類似度判定処理部34が、各登録画像の得票数に当該登録画像の重み付け係数を掛けた補正得票数を算出し、この補正得票数に基づいて類似性を判定するようにすればよい。例えば、最大補正得票数と閾値THaとを比較してもよく、最大補正得票数を投票総数で正規化したものを閾値THaと比較してもよく、最大補正得票数を最大登録数で正規化したものを閾値THaと比較してもよい。また、この場合、重み係数は、例えば、1より大きい値であって、かつ登録画像の重要度が高くなるにつれて大きい値になるように設定すればよい。   In determining similarity, the threshold THa is kept constant, while the similarity is determined by multiplying the number of votes for each registered image (the number of votes obtained for each registered image) by the weight coefficient of each registered image. Good. In this case, a weighting coefficient corresponding to the importance of each registered image is stored in the memory 8 in association with the index of each registered image, and the similarity determination processing unit 34 determines the number of registered images for each registered image. The number of corrected votes multiplied by the weighting coefficient is calculated, and the similarity may be determined based on the number of corrected votes. For example, the maximum correction vote number may be compared with the threshold value THa, the maximum correction vote number normalized with the total number of votes may be compared with the threshold value THa, and the maximum correction vote number is normalized with the maximum registration number. This may be compared with the threshold value THa. In this case, for example, the weighting factor may be set to a value larger than 1, and to become a larger value as the importance of the registered image becomes higher.

また、本実施形態では、1つの特徴点(注目特徴点)に対して1つのハッシュ値を算出するものとしているが、これに限らず、1つの特徴点(注目特徴点)に対して複数のハッシュ値を算出するようにしてもよい。例えば、注目特徴点の周辺特徴点として6点を抽出し、この6点から5点を抽出した6通りの組み合わせそれぞれについて、5点から3点を抽出して不変量を求めてハッシュ値を算出する方法を用いてもよい。この場合には、1つの特徴点に対して6個のハッシュ値が算出されることになる。   In this embodiment, one hash value is calculated for one feature point (attention feature point). However, the present invention is not limited to this, and a plurality of one feature point (attention feature point) may be calculated. A hash value may be calculated. For example, 6 points are extracted as the peripheral feature points of the feature point of interest, and for each of the 6 combinations obtained by extracting 5 points from these 6 points, 3 points are extracted from 5 points to obtain an invariant and a hash value is calculated. You may use the method to do. In this case, six hash values are calculated for one feature point.

(1−3. 文章照合処理部13における処理)
次に、文書照合処理部13における処理について、図10に示すフロー図を参照しながら説明する。
(1-3. Processing in the sentence matching processing unit 13)
Next, processing in the document collation processing unit 13 will be described with reference to the flowchart shown in FIG.

まず、制御部7は、入力画像データ、および、操作パネル6あるいは通信装置5を介してユーザから入力される処理要求(指示入力)を取得する(S1、S2)。なお、入力画像データは、カラー画像入力装置2で原稿画像を読み取ることによって取得してもよく、通信装置5によって外部の装置から送信される入力画像データを取得してもよく、デジタルカラー複合機1に備えられるカードリーダー(図示せず)等を介して各種記録媒体から入力画像データを読み出して取得してもよい。   First, the control unit 7 acquires input image data and a processing request (instruction input) input from the user via the operation panel 6 or the communication device 5 (S1, S2). The input image data may be acquired by reading a document image with the color image input device 2, or input image data transmitted from an external device may be acquired with the communication device 5. The input image data may be read and acquired from various recording media via a card reader (not shown) provided in FIG.

次に、制御部7は、特徴点算出部31に特徴点算出処理を実行させ(S3)、特徴量算出部32に特徴量を算出させる(S4)。   Next, the control unit 7 causes the feature point calculation unit 31 to execute a feature point calculation process (S3), and causes the feature amount calculation unit 32 to calculate a feature amount (S4).

次に、制御部7は、上記処理要求によって要求されている処理が登録処理であるか否かを判断する(S5)。そして、登録処理であると判断した場合、制御部7は、特徴量算出部32が算出した特徴量と原稿ID(登録画像のID)とを対応付けてハッシュテーブル103に登録させ(S6)、処理を終了する。   Next, the control unit 7 determines whether or not the process requested by the process request is a registration process (S5). If it is determined that the registration process is being performed, the control unit 7 associates the feature amount calculated by the feature amount calculation unit 32 with the document ID (ID of the registered image) and registers it in the hash table 103 (S6). The process ends.

一方、登録処理ではないと判断した場合(類似性の判定処理であると判断した場合)、制御部7は、投票処理部33に投票処理を実行させ(S7)、類似度判定処理部34に類似性の判定処理を実行させる(S8)。   On the other hand, when determining that it is not a registration process (when determining that it is a similarity determination process), the control unit 7 causes the voting processing unit 33 to execute a voting process (S7), and causes the similarity determination processing unit 34 to perform the voting process. A similarity determination process is executed (S8).

そして、類似ありと判定した場合には、入力画像データに対する画像処理(例えば、複写、印刷、電子配信、ファクシミリ送信、ファイリング、画像データの補正,編集等の処理)の実行を禁止し(S11)、処理を終了する。また、類似なしと判定した場合には、入力画像データに対する画像処理の実行を許可し(S12)、処理を終了する。なお、本実施形態では、類似ありの場合に画像処理の実行を許可し、類似なしの場合に画像処理の実行を禁止する例について説明しているが、これに限るものではない。例えば、類似性の判定結果を所定の通知先への通知するようにしてもよい。また、類似性の判定結果に応じて入力画像データの記録の要否、入力画像データに対応する出力画像に所定の記号等を重畳させることの要否、ユーザ認証を行うことの要否、類似性判定結果の表示の要否などを判断するようにしてもよい。   If it is determined that there is similarity, execution of image processing (for example, processing such as copying, printing, electronic distribution, facsimile transmission, filing, image data correction, editing, etc.) on the input image data is prohibited (S11). The process is terminated. On the other hand, if it is determined that there is no similarity, execution of image processing on the input image data is permitted (S12), and the processing ends. In the present embodiment, an example is described in which execution of image processing is permitted when there is similarity, and execution of image processing is prohibited when there is no similarity, but this is not a limitation. For example, the similarity determination result may be notified to a predetermined notification destination. Further, it is necessary to record the input image data according to the similarity determination result, whether to superimpose a predetermined symbol or the like on the output image corresponding to the input image data, whether to perform user authentication, similarity It may be determined whether or not to display the sex determination result.

(1−4. 交点算出部45の構成および処理)
次に、交点算出部45の構成および交点算出部45における処理の詳細について説明する。まず、交点算出部45における処理の概要について、図11に示すフロー図を参照しながら説明する。この図に示すように、制御部7は、交点算出部45に、2値化された画像データ(例えば、「1」(黒画素)、「0」(白画素)で表される)に基づいて、水平方向に伸びるライン画像および垂直方向に伸びるライン画像を抽出させ(S21)、これら両方向に伸びるライン画像の交点を抽出させる(S22)。なお、水平方向に伸びるライン画像および垂直方向に伸びるライン画像の抽出処理および交点の抽出処理については後述する。
(1-4. Configuration and processing of intersection calculation unit 45)
Next, the configuration of the intersection calculation unit 45 and details of processing in the intersection calculation unit 45 will be described. First, an outline of processing in the intersection calculation unit 45 will be described with reference to a flowchart shown in FIG. As shown in this figure, the control unit 7 causes the intersection point calculation unit 45 to use binarized image data (for example, represented by “1” (black pixels) and “0” (white pixels)). Then, the line image extending in the horizontal direction and the line image extending in the vertical direction are extracted (S21), and the intersection of the line images extending in both directions is extracted (S22). Note that the extraction process of line images extending in the horizontal direction and the line image extending in the vertical direction and the extraction process of intersections will be described later.

次に、制御部7は、斜め方向に伸びるライン画像同士の交点を特徴点として抽出するか否かを判断する(S23)。この判断は、例えば、S22で抽出された特徴点の数が所定値未満である場合に斜め方向に伸びるライン画像同士の交点を特徴点として抽出するようにしてもよく、操作パネル6あるいは通信可能に接続された外部装置から入力されるユーザのモード選択指示に応じて判断してもよい。例えば、ユーザは、斜め方向のライン検出にかかる処理時間や処理にかかる負荷を軽減したい場合には斜め方向のライン検出を行わないモードを選択することができ、類似性判定処理の精度をより向上させたい場合には斜め方向のライン検出を行うモードを選択することができる。また、例えば、入力画像に罫線が含まれており、罫線の交点が多数あって、入力画像にスキューがない場合などには、水平方向および垂直方向のライン画像の交点を特徴点とすることにより十分な類似性判定精度を確保できるので、斜め方向のライン画像の検出を行わないようにしてもよい。   Next, the control unit 7 determines whether or not to extract an intersection of line images extending in an oblique direction as a feature point (S23). In this determination, for example, when the number of feature points extracted in S22 is less than a predetermined value, an intersection of line images extending in an oblique direction may be extracted as a feature point, and the operation panel 6 or communication is possible. The determination may be made according to a user mode selection instruction input from an external device connected to the. For example, the user can select a mode in which diagonal line detection is not performed in order to reduce the processing time and processing load required for diagonal line detection, thereby further improving the accuracy of similarity determination processing. If desired, a mode for performing line detection in an oblique direction can be selected. In addition, for example, when the input image includes ruled lines, and there are many intersections of the ruled lines, and the input image has no skew, the intersection of the horizontal and vertical line images is used as a feature point. Since sufficient similarity determination accuracy can be ensured, detection of a line image in an oblique direction may not be performed.

そして、斜め方向に伸びるライン画像同士の交点を特徴点として抽出しないと判断した場合、制御部7は、S22で抽出した交点を特徴点として特徴量算出部32に出力し(S24)、交点算出処理を終了する。   If it is determined that the intersection of the line images extending in the oblique direction is not extracted as the feature point, the control unit 7 outputs the intersection extracted in S22 to the feature amount calculation unit 32 as the feature point (S24), and calculates the intersection. The process ends.

一方、S23において斜め方向に伸びるライン画像同士の交点を特徴点として抽出しないと判断した場合、制御部7は、交点算出部45に斜め2方向(左上から右下へ向かう方向(右下がりの方向);第1斜め方向、および右上から左下へ向かう方向(左下がりの方向);第2斜め方向)に伸びるライン画像を抽出させ(S25,S26)、これら両方向に伸びるライン画像の交点を抽出させる(S27)。なお、S25の処理とS26の処理とは並行して行ってもよく、いずれか一方を先に行ってもよい。斜め方向に伸びるライン画像の抽出処理および斜め方向に伸びるライン画像同士の交点の抽出処理については後述する。   On the other hand, if it is determined in S23 that the intersection of the line images extending in the oblique direction is not extracted as the feature point, the control unit 7 causes the intersection calculation unit 45 to perform two oblique directions (from the upper left to the lower right (the lower right direction). ); A line image extending in the first diagonal direction and a direction from the upper right to the lower left (downward direction in the left); the second diagonal direction) is extracted (S25, S26), and an intersection of the line images extending in both directions is extracted. (S27). In addition, the process of S25 and the process of S26 may be performed in parallel, and either one may be performed first. The process of extracting line images extending in the oblique direction and the process of extracting intersections between line images extending in the oblique direction will be described later.

そして、制御部7は、交点算出部45に、S22で抽出した交点とS27で抽出した交点とを特徴点として特徴量算出部32に出力させ(S28)、交点算出処理を終了する。   And the control part 7 makes the intersection calculation part 45 output the intersection extracted by S22 and the intersection extracted by S27 to the feature-value calculation part 32 as a feature point (S28), and complete | finishes an intersection calculation process.

なお、上記の説明では、S23において制御部7が斜め方向に伸びるライン画像同士の交点を特徴点として抽出するか否かを判断するものとしたが、これに限らず、例えば、水平方向および垂直方向に伸びるライン画像同士の交点の算出と、斜め2方向に伸びるライン画像同士の交点の算出とを必ず行うようにしてもよく、予め設定されたいずれか一方の交点のみを算出するようにしてもよい。また、斜め方向に伸びるライン画像同士の交点の算出を先に行い、その算出結果等に応じて制御部7が水平方向に伸びるライン画像と垂直方向に伸びるライン画像との交点の算出の要否を判断するようにしてもよい。ただし、水平方向および垂直方向のライン画像の検出処理よりも、斜め方向のライン画像の検出処理の方が処理のアルゴリズムが複雑であり、処理時間を要することから、水平方向および垂直方向のライン画像の検出および交点の算出を先に行い、斜め方向のライン画像の検出および交点の算出については必要に応じて行う構成とすることが好ましい。   In the above description, in S23, the control unit 7 determines whether or not to extract an intersection of line images extending in an oblique direction as a feature point. However, the present invention is not limited to this. The calculation of the intersection of line images extending in the direction and the calculation of the intersection of line images extending in two diagonal directions may be performed without fail, and only one of the preset intersections may be calculated. Also good. Further, it is necessary to calculate the intersection of the line images extending in the diagonal direction first, and according to the calculation result, the control unit 7 needs to calculate the intersection between the line image extending in the horizontal direction and the line image extending in the vertical direction. May be determined. However, since the processing algorithm of the diagonal line image detection process is more complex and requires more processing time than the horizontal and vertical line image detection processes, the horizontal and vertical line images It is preferable that the detection of the point and the calculation of the intersection are performed first, and the detection of the oblique line image and the calculation of the intersection are performed as necessary.

次に、ライン画像の抽出処理および交点の抽出処理ついてより詳細に説明する。図12は交点算出部45の構成を示すブロック図である。この図に示すように、交点算出部45は、水平カウンタ61、垂直カウンタ62、第1ラベリング部63、第1斜めカウンタ64、第2ラベリング部67、および第2斜めカウンタ68を備えた計数部60と、ライン判定部71と、交点抽出部72とを備えている。   Next, the line image extraction process and the intersection extraction process will be described in more detail. FIG. 12 is a block diagram illustrating a configuration of the intersection calculation unit 45. As shown in this figure, the intersection calculation unit 45 includes a horizontal counter 61, a vertical counter 62, a first labeling unit 63, a first diagonal counter 64, a second labeling unit 67, and a second diagonal counter 68. 60, a line determination unit 71, and an intersection extraction unit 72.

まず、水平方向および垂直方向のライン画像の抽出処理および交点の抽出処理について説明する。   First, horizontal line and vertical line image extraction processing and intersection extraction processing will be described.

水平カウンタ61は、2値化された画像データに対する水平方向のランレングスカウントのカウント値を記憶する。ここで、ランレングスカウントとは、画素値「1」の画素が所定方向に連続する数をカウントする処理である。   The horizontal counter 61 stores the count value of the horizontal run-length count for the binarized image data. Here, the run length count is a process of counting the number of pixels having a pixel value “1” continuous in a predetermined direction.

より具体的には、制御部7は、2値化された画像データを左から右(あるいは右から左)へ水平方向に走査して各画素が黒画素(「1」)であるか否かを判断し、黒画素である場合には水平カウンタ61のカウンタ値をインクリメントさせる。また、黒画素でない場合には水平カウンタ61のカウンタ値をリセットさせる。また、上記走査が水平方向の端部に達した場合、水平カウンタ61のカウンタ値をリセットさせるとともに、垂直方向に隣接する次のラインについてランレングスカウント処理を行う。また、制御部7は、水平カウンタ61のカウンタ値をリセットさせる場合、リセット直前のカウンタ値とこのリセットを行うときに走査した画素の座標(あるいはリセットの直前に走査した画素の画像)とを水平カウンタ61からライン判定部71に出力させる。   More specifically, the control unit 7 scans the binarized image data from left to right (or right to left) in the horizontal direction to determine whether each pixel is a black pixel (“1”). If the pixel is a black pixel, the counter value of the horizontal counter 61 is incremented. If the pixel is not a black pixel, the counter value of the horizontal counter 61 is reset. When the scanning reaches the end in the horizontal direction, the counter value of the horizontal counter 61 is reset and the run length count process is performed for the next line adjacent in the vertical direction. Further, when resetting the counter value of the horizontal counter 61, the control unit 7 horizontally displays the counter value immediately before the reset and the coordinates of the pixel scanned when the reset is performed (or the image of the pixel scanned immediately before the reset). A line 61 is output from the counter 61.

垂直カウンタ62は、2値化された画像データに対する垂直方向のランレングスカウントのカウンタ値を記憶する。   The vertical counter 62 stores the counter value of the run length count in the vertical direction for the binarized image data.

なお、本実施形態では、垂直カウンタ62は、水平方向の画素数iと同数の列カウンタ62_1〜62_iを備えている。そして、制御部7は、2値化された画像データを左から右(あるいは右から左)へ水平方向に走査して各画素が黒画素(「1」)であるか否かを判断し、黒画素である場合には当該画素の水平方向(x方向)の位置に応じた列カウンタのカウンタ値をインクリメントさせる。つまり、2値化された画像データに対する垂直方向のランレングスカウントのカウンタ値を各列カウンタによって列毎(x座標毎)に記憶する。また、黒画素でない場合には当該画素の水平方向の位置に応じた列カウンタのカウンタ値をリセットさせる。また、上記走査が水平方向の端部に達した場合、垂直方向に隣接する次のラインについてランレングスカウント処理を行う。また、制御部7は、列カウンタのカウンタ値をリセットさせる場合、リセット直前のカウンタ値とこのリセットを行うときに走査した画素の座標(あるいはリセットの直前に走査した画素の画像)とを垂直カウンタ62からライン判定部71に出力させる。   In the present embodiment, the vertical counter 62 includes the same number of column counters 62_1 to 62_i as the number of pixels i in the horizontal direction. Then, the control unit 7 scans the binarized image data from left to right (or right to left) in the horizontal direction to determine whether each pixel is a black pixel (“1”), In the case of a black pixel, the counter value of the column counter is incremented according to the horizontal position (x direction) of the pixel. That is, the counter value of the run length count in the vertical direction for the binarized image data is stored for each column (for each x coordinate) by each column counter. If the pixel is not a black pixel, the counter value of the column counter corresponding to the horizontal position of the pixel is reset. When the scanning reaches the end in the horizontal direction, the run length count process is performed on the next line adjacent in the vertical direction. In addition, when resetting the counter value of the column counter, the control unit 7 uses the counter value immediately before the reset and the coordinates of the pixel scanned when the reset is performed (or the image of the pixel scanned immediately before the reset) as a vertical counter. The line determination unit 71 outputs the data from 62.

ライン判定部71は、水平カウンタ61から入力されたカウンタ値が閾値(例えば5)以上の数mである場合、このカウンタ値mをリセットするときに走査した画素の座標に基づいてカウンタ値1〜mに対応する各画素を求め、これら各画素からなる画像をライン画像と判定する。また、ライン判定部71は、垂直カウンタ62から入力されたカウンタ値が閾値(例えば5)以上の数nである場合、このカウンタ値nをリセットするときに走査した画素の座標に基づいて、カウンタ値1〜nに対応する各画素を求め、これら各画素に対応する各画素からなる画像をライン画像と判定する。また、ライン判定部71は、ライン画像であると判定した場合、このライン画像に含まれる各画素の座標(あるいは画素値「1」の開始画素および終了画素の座標)を交点抽出部72に出力する。   When the counter value input from the horizontal counter 61 is a number m equal to or greater than a threshold value (for example, 5), the line determination unit 71 sets the counter values 1 to 4 based on the coordinates of the scanned pixels when resetting the counter value m. Each pixel corresponding to m is obtained, and an image composed of these pixels is determined as a line image. In addition, when the counter value input from the vertical counter 62 is a number n equal to or greater than a threshold value (for example, 5), the line determination unit 71 determines the counter based on the coordinates of the scanned pixel when resetting the counter value n. Each pixel corresponding to the values 1 to n is obtained, and an image composed of each pixel corresponding to each pixel is determined as a line image. If the line determination unit 71 determines that the line image is included, the coordinates of each pixel included in the line image (or the coordinates of the start pixel and the end pixel of the pixel value “1”) are output to the intersection extraction unit 72. To do.

交点抽出部72は、ライン判定部71からの入力に基づいて、水平方向のライン画像と垂直方向のライン画像との交点を抽出し、抽出した交点を特徴点として特徴量算出部32に出力する。なお、互いに隣接する複数の画素が交点として抽出された場合、交点抽出部72は、これら複数画素の中心座標、重心座標、あるいは複数画素からなる領域に含まれる所定の位置(例えば左上)の座標を特徴点とする。   The intersection extraction unit 72 extracts an intersection between the horizontal line image and the vertical line image based on the input from the line determination unit 71 and outputs the extracted intersection to the feature quantity calculation unit 32 as a feature point. . Note that when a plurality of pixels adjacent to each other are extracted as intersections, the intersection extraction unit 72 coordinates the center coordinates, barycentric coordinates, or predetermined positions (for example, upper left) included in the area composed of the plurality of pixels. Is a feature point.

図13は、交点算出部45に入力される画像データの一例を示す説明図である。また、図14は、図13に示した画像データに対してライン判定処理を行った場合の、水平カウンタ61および垂直カウンタ62のカウンタ値の推移を示す説明図である。   FIG. 13 is an explanatory diagram illustrating an example of image data input to the intersection calculation unit 45. FIG. 14 is an explanatory diagram showing the transition of the counter values of the horizontal counter 61 and the vertical counter 62 when line determination processing is performed on the image data shown in FIG.

まず、ライン判定処理の開始時には水平カウンタ61および垂直カウンタ62に備えられる列カウンタ62_1〜62_iを「0」に初期化する。   First, at the start of the line determination process, column counters 62_1 to 62_i included in the horizontal counter 61 and the vertical counter 62 are initialized to “0”.

その後、左上の画素から右下方向の画素へ(座標(0,0)→(1,0)→(2,0)→・・・→(8,0)→(0,1)→(1,1)→・・・の順に)各画素を走査し、黒画素であるか否かの判定を行う。なお、走査方向はこれに限るものではなく、例えば右上から左下へ走査してもよい。   Then, from the upper left pixel to the lower right pixel (coordinates (0,0) → (1,0) → (2,0) → ・ ・ ・ → (8,0) → (0,1) → (1 , 1) →...) Each pixel is scanned to determine whether it is a black pixel. The scanning direction is not limited to this. For example, scanning may be performed from the upper right to the lower left.

図13の例では、座標(3,1)までは黒画素が存在しないため水平カウンタ61・垂直カウンタ62の各列カウンタはいずれも初期値「0」のままである。座標(4,1)では黒画素が存在するため、水平カウンタ61と垂直カウンタ62_4(x座標4に対応する列カウンタ)をインクリメントする。そして、次の座標である座標(5,1)では黒画素が存在しないため、水平カウンタ61を「0」にリセットし、リセット直前のカウンタ値「1」とリセットを行うときに走査した画素の座標(4,1)とを水平カウンタ61からライン判定部71に出力させる。この場合、リセット直前の水平カウンタは「1」であり、ライン判定閾値(5)より小さいため、ライン判定部71はライン画像ではないと判定する。なお、この時点ではx座標が5であるため垂直カウンタ62_4はリセットされない。また、垂直カウンタ62_5は黒画素ではないので「0」のままである。   In the example of FIG. 13, since there are no black pixels up to the coordinates (3, 1), both the column counters of the horizontal counter 61 and the vertical counter 62 remain at the initial value “0”. Since the black pixel exists at the coordinates (4, 1), the horizontal counter 61 and the vertical counter 62_4 (column counter corresponding to the x coordinate 4) are incremented. Then, since there is no black pixel at the next coordinate (5, 1), the horizontal counter 61 is reset to “0”, and the counter value “1” immediately before the reset is reset to the pixel scanned. The coordinate (4, 1) is output from the horizontal counter 61 to the line determination unit 71. In this case, since the horizontal counter immediately before the reset is “1” and is smaller than the line determination threshold (5), the line determination unit 71 determines that the line image is not a line image. At this time, since the x coordinate is 5, the vertical counter 62_4 is not reset. Further, since the vertical counter 62_5 is not a black pixel, it remains “0”.

同様の手順で処理を進めていくと、座標(2,3)〜(6,3)では水平方向に連続して黒画素が存在するため座標(6,3)になったときには水平カウンタ61は「5」までインクリメントされている。そして、次の座標の座標(7,3)になると黒画素が存在しないので水平カウンタ61は「0」にリセットされる。このリセット直前の水平カウンタは「5」でありライン判定閾値(5)以上であるため、ライン判定部71は、リセットしたカウンタ値カウント値「1」〜「5」に対応する画素(座標(2,3)〜(6,3)の各画素)からなる画像を水平方向に伸びるライン画像であると判定する。   If the process proceeds in the same procedure, the horizontal counter 61 is set to the coordinate (6, 3) because the black pixels are continuously present in the horizontal direction at the coordinates (2, 3) to (6, 3). It is incremented to “5”. When the next coordinate (7, 3) is reached, there is no black pixel, so the horizontal counter 61 is reset to “0”. Since the horizontal counter immediately before the reset is “5” and is equal to or greater than the line determination threshold (5), the line determination unit 71 sets the pixels (coordinates (2) corresponding to the reset counter value count values “1” to “5”. , 3) to (6, 3)) is determined to be a line image extending in the horizontal direction.

また、座標(2,3)〜(6,3)には黒画素が存在するので、列カウンタ62_2〜62_6がインクリメントされる。ただし、座標(2,4),(3,4),(5,4),(6,4)では黒画素が存在しないため、列カウンタ62_2、62_3、62_5、62_6は「0」にリセットされる。ライン判定部71は、これら各列カウンタにおけるリセット直前のカウンタ値は「1」でありライン判定閾値(5)より小さいため、上記のカウンタ値「1」に対応する各画素についてはライン画像ではないと判定する。   In addition, since black pixels exist at the coordinates (2, 3) to (6, 3), the column counters 62_2 to 62_6 are incremented. However, since there is no black pixel at the coordinates (2, 4), (3,4), (5, 4), (6, 4), the column counters 62_2, 62_3, 62_5, and 62_6 are reset to “0”. The Since the counter value immediately before the reset in each column counter is “1” and smaller than the line determination threshold value (5), the line determination unit 71 is not a line image for each pixel corresponding to the counter value “1”. Is determined.

その後、同様の手順で各画素を走査していくと、座標(8,6)ではリセット前の水平カウンタ値は「7」でありライン判定閾値(5)以上であるため、リセットしたカウンタ値カウント値「1」〜「7」に対応する各画素(座標1,6)〜(7,6))が水平方向のライン画像と判定される。   After that, when each pixel is scanned in the same procedure, the horizontal counter value before reset is “7” at the coordinates (8, 6), which is equal to or greater than the line determination threshold value (5). Each pixel (coordinates 1, 6) to (7, 6) corresponding to the values “1” to “7” is determined as a horizontal line image.

また、座標(4,7)ではリセット直前の列カウンタ62_4のカウンタ値は「6」でありライン判定閾値(5)以上であるため、リセットしたカウンタ値カウント値「1」〜「6」に対応する各画素(座標(4,1)〜(4,6))が垂直方向のライン画像と判定される。   Further, at the coordinates (4, 7), the counter value of the column counter 62_4 immediately before the reset is “6”, which is equal to or greater than the line determination threshold (5), and therefore corresponds to the reset counter value count values “1” to “6”. Each pixel (coordinates (4, 1) to (4, 6)) is determined to be a vertical line image.

その後、交点抽出部72では、水平方向および垂直方向の両方においてライン画像の一部であると判定された画素を交点として抽出し、抽出した交点を特徴点として特徴量算出部32に出力する。なお、互いに隣接する複数の画素が交点として抽出された場合、交点抽出部72は、これら複数の画素の中心座標、重心座標、あるいは複数画素からなる領域に含まれる所定の位置(例えば左上)の座標を算出し、算出結果を特徴点として特徴量算出部32に出力する。   Thereafter, the intersection extraction unit 72 extracts pixels determined to be part of the line image in both the horizontal direction and the vertical direction as intersections, and outputs the extracted intersections to the feature quantity calculation unit 32 as feature points. Note that when a plurality of pixels adjacent to each other are extracted as intersections, the intersection extraction unit 72 selects the center coordinates, the barycentric coordinates, or a predetermined position (for example, upper left) included in the region composed of the plurality of pixels. The coordinates are calculated, and the calculation result is output to the feature amount calculation unit 32 as a feature point.

図15は、図13に示した画像データについての水平方向および垂直方向のライン画像の抽出結果、および交点の抽出結果を示す説明図である。この図に示すように、図13の画像データの場合、座標(4,3),(4,6)が水平方向および垂直方向の両方向においてライン画像と判定されており、これら両座標が交点として抽出される。   FIG. 15 is an explanatory diagram showing the extraction results of horizontal and vertical line images and the extraction results of intersections for the image data shown in FIG. As shown in this figure, in the case of the image data of FIG. 13, the coordinates (4,3), (4,6) are determined as line images in both the horizontal direction and the vertical direction, and these two coordinates are used as intersections. Extracted.

次に、図12に示した交点算出部45において行われる斜め2方向のライン画像の抽出処理および交点の抽出処理について説明する。   Next, two diagonal line image extraction processing and intersection extraction processing performed in the intersection calculation unit 45 shown in FIG. 12 will be described.

第1ラベリング部63は、2値化された画像データにおける黒画素に対して左上から右下に向かって各画素を走査したときに、各画素が黒画素であるか否かと、隣接する画素(左隣の画素および上隣の画素)に割り付けているラベルとに応じて当該各画素のラベル付けを行い、ラベルの割り付け結果を第1ラベル履歴テーブル66に記憶させる。なお、上記のラベル付けを行う際、第1ラベリング部63は、隣接する画素に割り付けているラベルを第1ラベル履歴テーブル66に記憶させておいた情報に基づいて判断する。また、第1ラベリング部63は、ラベル付けを行った各画素(ラベルが「0」以外である各画素)について、各画素の座標と各画素に割り付けたラベルとを対応付けて図示しない記憶部に記憶させる。ラベル付け方法の詳細については後述する。   When the first labeling unit 63 scans each pixel from the upper left to the lower right with respect to the black pixel in the binarized image data, whether or not each pixel is a black pixel and an adjacent pixel ( Each pixel is labeled according to the label assigned to the left adjacent pixel and the upper adjacent pixel), and the label assignment result is stored in the first label history table 66. When performing the above labeling, the first labeling unit 63 makes a determination based on information stored in the first label history table 66 for labels assigned to adjacent pixels. In addition, the first labeling unit 63 stores, for each pixel that has been labeled (each pixel whose label is other than “0”), the coordinates of each pixel and the label assigned to each pixel in association with each other. Remember me. Details of the labeling method will be described later.

第1斜めカウンタ64は、第1ラベルカウンタ65と第1ラベル履歴テーブル66とを備えている。   The first diagonal counter 64 includes a first label counter 65 and a first label history table 66.

第1ラベル履歴テーブル66は、第1ラベリング部63によって各画素に割り付けられたラベルを列毎(x座標毎)に記憶する。なお、本実施形態では、各画素にラベルを割り付ける毎に、当該画素に対応する列のラベルを更新するようになっている。つまり、第1ラベル履歴テーブル66には注目画素の上隣のラインにおける注目画素の上隣の画素から右側の各画素、および注目画素を含むラインにおける左端の画素から注目画素の左隣の画素までの合計1水平ライン分のラベルが格納されている。そして、注目画素を含む列に割り付けていたラベル(注目画素の上隣の画素に割り付けていたラベル)を注目画素に対して割り付けたラベルに更新するようになっている。これにより、全画素に割り付けたラベルを記憶する場合に比べて、ライン判定の精度を低下させることなく、第1ラベル履歴テーブル66に要求される記憶容量を低減できるようになっている。また、注目画素の左隣および上隣の画素のラベルを容易かつ迅速に抽出できる。   The first label history table 66 stores a label assigned to each pixel by the first labeling unit 63 for each column (for each x coordinate). In this embodiment, every time a label is assigned to each pixel, the label of the column corresponding to the pixel is updated. In other words, in the first label history table 66, each pixel on the right side from the upper adjacent pixel of the target pixel in the upper adjacent line of the target pixel, and from the leftmost pixel in the line including the target pixel to the left adjacent pixel of the target pixel. A total of one horizontal line label is stored. The label assigned to the column including the pixel of interest (the label assigned to the pixel adjacent to the pixel of interest) is updated to the label assigned to the pixel of interest. As a result, the storage capacity required for the first label history table 66 can be reduced without lowering the accuracy of line determination compared to storing labels assigned to all pixels. In addition, the labels of the pixels adjacent to the left and top of the target pixel can be extracted easily and quickly.

第1ラベルカウンタ65は、各ラベルが割り付けられた回数をラベル毎にカウントする。そして、制御部7は、全画素に対する走査が完了したときに、各ラベルと各ラベルのカウント値とを第1ラベルカウンタ65からライン判定部71に出力させる。   The first label counter 65 counts the number of times each label is allocated for each label. Then, the control unit 7 causes the first label counter 65 to output the label and the count value of each label to the line determination unit 71 when scanning for all the pixels is completed.

第2ラベリング部67は、2値化された画像データにおける黒画素に対して右上から左下に向かって各画素を走査したときに、各画素が黒画素であるか否か、および隣接する画素(右隣の画素および上隣の画素)に割り付けているラベルに応じて当該各画素のラベル付けを行い、ラベルの割り付け結果を第2ラベル履歴テーブル70に記憶させる。なお、上記のラベル付けを行う際、第2ラベリング部67は、隣接する画素に割り付けているラベルを第2ラベル履歴テーブル70に記憶させておいた情報に基づいて判断する。また、第2ラベリング部67は、ラベル付けを行った各画素(ラベルが「0」以外である各画素)について、各画素の座標と各画素に割り付けたラベルとを対応付けて図示しない記憶部に記憶させる。ラベル付け方法の詳細については後述する。   When the second labeling unit 67 scans each black pixel in the binarized image data from the upper right to the lower left, whether or not each pixel is a black pixel and an adjacent pixel ( Each pixel is labeled according to the label assigned to the right adjacent pixel and the upper adjacent pixel, and the label assignment result is stored in the second label history table 70. When performing the above labeling, the second labeling unit 67 makes a determination based on information stored in the second label history table 70 for labels assigned to adjacent pixels. The second labeling unit 67 is a storage unit (not shown) that associates the coordinates of each pixel and the label assigned to each pixel for each pixel that has been labeled (each pixel whose label is other than “0”). Remember me. Details of the labeling method will be described later.

第2斜めカウンタ68は、第2ラベルカウンタ69と第2ラベル履歴テーブル70とを備えている。   The second diagonal counter 68 includes a second label counter 69 and a second label history table 70.

第2ラベル履歴テーブル70は、第2ラベリング部67によって各画素に割り付けられたラベルを列毎(x座標毎)に記憶する。なお、本実施形態では、各画素にラベルを割り付ける毎に、当該画素に対応する列のラベルを更新するようになっている。これにより、全画素に割り付けたラベルを記憶する場合に比べて、ライン判定の精度を低下させることなく、第2ラベル履歴テーブル70に要求される記憶容量を低減できるようになっている。また、注目画素の右隣および上隣の画素のラベルを容易かつ迅速に抽出できる。   The second label history table 70 stores the label assigned to each pixel by the second labeling unit 67 for each column (for each x coordinate). In this embodiment, every time a label is assigned to each pixel, the label of the column corresponding to the pixel is updated. As a result, the storage capacity required for the second label history table 70 can be reduced without lowering the accuracy of line determination compared to storing labels assigned to all pixels. In addition, the labels of the pixels adjacent to the right and top of the target pixel can be extracted easily and quickly.

第2ラベルカウンタ69は、各ラベルが割り付けられた回数をラベル毎にカウントする。そして、制御部7は、全画素に対する走査が完了したときに、各ラベルと各ラベルのカウント値とを第2ラベルカウンタ69からライン判定部71に出力させる。   The second label counter 69 counts the number of times each label is allocated for each label. Then, the control unit 7 causes the second label counter 69 to output the label and the count value of each label to the line determination unit 71 when scanning for all pixels is completed.

ライン判定部71は、第1斜めカウンタ64から入力されたカウンタ値が閾値(例えば5)以上である場合に、このカウンタ値に対応するラベルに対応する各画素からなる画像をライン画像と判定する。また、これと同様に、第2斜めカウンタ68から入力されたカウンタ値が閾値(例えば5)以上である場合に、このカウンタ値に対応するラベルに対応する各画素からなる画像をライン画像と判定する。また、ライン判定部71は、ライン画像であると判定した場合、当該ライン画像を構成する各画素の座標を上記記憶部から読み出して交点抽出部72に出力する。   When the counter value input from the first diagonal counter 64 is greater than or equal to a threshold value (for example, 5), the line determination unit 71 determines that an image including each pixel corresponding to the label corresponding to the counter value is a line image. . Similarly, when the counter value input from the second oblique counter 68 is greater than or equal to a threshold value (for example, 5), an image including pixels corresponding to the label corresponding to the counter value is determined as a line image. To do. If the line determination unit 71 determines that the line image is a line image, the line determination unit 71 reads out the coordinates of each pixel constituting the line image from the storage unit and outputs the coordinates to the intersection extraction unit 72.

交点抽出部72は、ライン判定部71からの入力に基づいて、上記した斜め2方向のライン画像同士の交点を抽出し、抽出した交点を特徴点として特徴量算出部32に出力する。なお、互いに隣接する複数の画素が交点として抽出された場合、交点抽出部72は、これら複数画素の中心座標、重心座標、あるいは複数画素からなる領域に含まれる所定の位置(例えば左上)の座標を特徴点とする。   Based on the input from the line determination unit 71, the intersection extraction unit 72 extracts the intersections between the above-described two diagonal line images, and outputs the extracted intersections to the feature quantity calculation unit 32 as feature points. Note that when a plurality of pixels adjacent to each other are extracted as intersections, the intersection extraction unit 72 coordinates the center coordinates, barycentric coordinates, or predetermined positions (for example, upper left) included in the area composed of the plurality of pixels. Is a feature point.

次に、第1ラベリング部63におけるラベル付け方法について説明する。第1ラベリング部63は、以下のルールに基づいて各画素のラベル付けを行う。
(1)注目画素が黒画素であって、注目画素の左隣の画素に対してラベル付けされている場合(左隣の画素のラベルが「0」ではない場合)、この左隣の画素と同じラベルを割り付ける。例えば、図16(a)に示すように注目画素の左隣の画素のラベルが「1」、注目画素の上隣の画素のラベルが「2」であった場合、注目画素のラベルは「1」となる。
(2)注目画素が黒画素であって、注目画素の左隣の画素に対してラベル付けされておらず(左隣の画素のラベルが「0」であり)、注目画素の上隣の画素に対してラベル付けされている場合、この上隣の画素と同じラベルを割り付ける。例えば、図16(b)に示すように注目画素の左隣の画素のラベルが「0」、注目画素の上隣の画素のラベルが「2」であった場合、注目画素のラベルは「2」となる。
(3)注目画素が黒画素であって、注目画素の左隣の画素および上隣の画素がいずれもラベル付けされていない場合、当該注目画素に対して新規のラベルを割り付ける。したがって、図16(c)に示すように注目画素の左隣の画素および上隣の画素のラベルがいずれも「0」であった場合、注目画素にはそれまでの走査(左上から右下に向かう走査)において他の画素に割り付けられていない新たなラベルが割り付けられる。
(4)注目画素が黒画素ではない場合、当該注目画素のラベルを「0」とする。
Next, a labeling method in the first labeling unit 63 will be described. The first labeling unit 63 labels each pixel based on the following rules.
(1) When the pixel of interest is a black pixel and is labeled with respect to the pixel adjacent to the left of the pixel of interest (when the label of the pixel adjacent to the left is not “0”), Assign the same label. For example, as shown in FIG. 16A, when the label of the pixel adjacent to the left of the target pixel is “1” and the label of the pixel adjacent to the target pixel is “2”, the label of the target pixel is “1”. "
(2) The pixel of interest is a black pixel, and is not labeled with respect to the pixel adjacent to the left of the pixel of interest (the label of the pixel adjacent to the left is “0”). Is labeled, the same label as the adjacent pixel is assigned. For example, as illustrated in FIG. 16B, when the label of the pixel adjacent to the left of the target pixel is “0” and the label of the pixel adjacent to the target pixel is “2”, the label of the target pixel is “2”. "
(3) When the pixel of interest is a black pixel and neither the pixel adjacent to the left of the pixel of interest nor the pixel adjacent above is labeled, a new label is assigned to the pixel of interest. Therefore, as shown in FIG. 16C, when both the left adjacent pixel and the upper adjacent pixel label of the target pixel are “0”, the target pixel is scanned so far (upper left to lower right). A new label is assigned that is not assigned to any other pixel in the incoming scan.
(4) If the target pixel is not a black pixel, the label of the target pixel is set to “0”.

なお、第2ラベリング部67におけるラベル付け方法は、右上から左下に向かって各画素を走査する点、および上記(1)〜(4)における「左隣」を「右隣」に変更する点以外は第1ラベリング部63におけるラベル付け方法と同様である。   The labeling method in the second labeling unit 67 is other than the point that each pixel is scanned from the upper right to the lower left, and the “left adjacent” in the above (1) to (4) is changed to “right adjacent”. Is the same as the labeling method in the first labeling unit 63.

したがって、右上から左下への走査時には、例えば図17(a)に示すように注目画素の右隣の画素のラベルが「1」、注目画素の上隣の画素のラベルが「2」であった場合、注目画素のラベルは「1」となる。また、例えば、図17(b)に示すように注目画素の右隣の画素のラベルが「0」、注目画素の上隣の画素のラベルが「2」であった場合、注目画素のラベルは「2」となる。また、図17(c)に示すように注目画素の左隣の画素および上隣の画素のラベルがいずれも「0」であった場合、注目画素にはそれまでの走査(右上から左下に向かう走査)において他の画素に割り付けられていない新たなラベルが割り付けられる。   Therefore, at the time of scanning from the upper right to the lower left, for example, as shown in FIG. 17A, the label of the pixel adjacent to the right of the target pixel is “1”, and the label of the upper adjacent pixel of the target pixel is “2”. In this case, the label of the target pixel is “1”. Further, for example, as shown in FIG. 17B, when the label of the pixel adjacent to the right of the target pixel is “0” and the label of the pixel adjacent to the target pixel is “2”, the label of the target pixel is “2”. Also, as shown in FIG. 17C, when both the left adjacent pixel and the upper adjacent pixel label of the target pixel are “0”, the target pixel is scanned so far (from the upper right to the lower left). In scanning, a new label that is not assigned to another pixel is assigned.

次に、斜め方向についてのライン画像の抽出処理および交点の抽出処理について、図18に示す画像データに対する処理を例としてより詳細に説明する。   Next, the line image extraction process and the intersection extraction process in the oblique direction will be described in more detail using the process for the image data shown in FIG. 18 as an example.

まず、左上から右下に向かって走査するときのラベル付け方法について、図19を参照しながら説明する。図19は、左上から右下に向かって走査するときのラベル付けの手順を示す説明図である。   First, a labeling method when scanning from the upper left to the lower right will be described with reference to FIG. FIG. 19 is an explanatory diagram showing a labeling procedure when scanning from the upper left to the lower right.

まず、走査開始時には第1ラベルカウンタ65および第1ラベル履歴テーブル66を「0」に初期化する。その後、左上から右下方向へ(座標(0,0)→(1,0)→(2,0)→・・・→(8,0)→(0,1)→(1,1)→・・・の順に)走査していく。   First, at the start of scanning, the first label counter 65 and the first label history table 66 are initialized to “0”. Then, from upper left to lower right (coordinates (0,0) → (1,0) → (2,0) → ・ ・ ・ → (8,0) → (0,1) → (1,1) → Scan in order.

座標(6,1)となるまでは黒画素が存在しないため第1ラベルカウンタ65および第1ラベル履歴テーブル66に格納されている情報は全て初期値「0」のままである。   Until there is a coordinate (6, 1), there is no black pixel, so all the information stored in the first label counter 65 and the first label history table 66 remains the initial value “0”.

座標(6,1)では黒画素が存在するためラベル付けを行う。ここでは、左隣の画素のラベル(第1ラベル履歴テーブル66におけるx=5の値)と上隣の画素のラベル(第1ラベル履歴テーブル66におけるx=6の更新前の値)が共に「0」であり、それまでのいずれの画素にもラベルが割り付けられていないので、第1ラベリング部63は、座標(6,1)の画素に対して新規ラベル(ラベル「1」)を割り付ける。また、座標(6,1)と座標(6,1)の画素に割り付けたラベル「1」とを対応付けて図示しない記憶部に記憶させる。また、ラベル「1」のラベルカウンタを「1」にインクリメントする。また、第1ラベル履歴テーブル66におけるx=6のラベルを「1」に更新する。   Since the black pixel exists at the coordinates (6, 1), labeling is performed. Here, both the label of the pixel on the left (the value of x = 5 in the first label history table 66) and the label of the upper adjacent pixel (the value before the update of x = 6 in the first label history table 66) are both “ 0 ”, and no label is assigned to any of the pixels so far, the first labeling unit 63 assigns a new label (label“ 1 ”) to the pixel at coordinates (6, 1). Further, the coordinates (6, 1) and the label “1” assigned to the pixel at the coordinates (6, 1) are associated with each other and stored in a storage unit (not shown). Further, the label counter of the label “1” is incremented to “1”. Also, the label of x = 6 in the first label history table 66 is updated to “1”.

次の座標(7,1)においても黒画素が存在するためラベル付けを行う。ここでは、左隣の画素のラベル(第1ラベル履歴テーブル66におけるx=6の値)が「0」でないため、第1ラベリング部63は、座標(7,1)の画素に対して左隣の画素のラベルと同じラベル(ラベル「1」)を割り付ける。また、座標(7,1)と座標(7,1)の画素に割り付けたラベル「1」とを対応付けて図示しない記憶部に記憶させる。また、ラベル「1」のラベルカウンタを「2」にインクリメントする。また、第1ラベル履歴テーブル66におけるx=7のラベルを「1」に更新する。   Since there is a black pixel at the next coordinate (7, 1), labeling is performed. Here, since the label of the pixel on the left (the value of x = 6 in the first label history table 66) is not “0”, the first labeling unit 63 is adjacent to the pixel at the coordinate (7, 1). The same label (label “1”) as the label of the pixel is assigned. Further, the coordinate (7, 1) and the label “1” assigned to the pixel at the coordinate (7, 1) are associated with each other and stored in a storage unit (not shown). Further, the label counter of the label “1” is incremented to “2”. Further, the label of x = 7 in the first label history table 66 is updated to “1”.

同様の手順で走査を続けると、座標(2,2)で新規ラベル(ラベル「2」)が割り付けられ、座標(2,2)と座標(2,2)の画素に割り付けたラベル「2」とが対応付けられて図示しない記憶部に記憶され、ラベル「2」のラベルカウンタが「1」にインクリメントされ、第1ラベル履歴テーブル66におけるx=2のラベルが「1」に更新される。また、座標(3,2)では、ラベル「2」が割り付けられ、座標(3,2)と座標(3,2)の画素に割り付けたラベル「2」とが対応付けられて図示しない記憶部に記憶され、ラベル「2」のラベルカウンタが「2」にインクリメントされ、第1ラベル履歴テーブル66におけるx=3のラベルが「2」に更新される。   If scanning continues in the same procedure, a new label (label "2") is assigned at coordinates (2,2), and label "2" assigned to the pixels at coordinates (2,2) and coordinates (2,2) Are stored in a storage unit (not shown), the label counter of the label “2” is incremented to “1”, and the label of x = 2 in the first label history table 66 is updated to “1”. Further, at coordinate (3,2), label “2” is assigned, and coordinate (3,2) and label “2” assigned to the pixel at coordinate (3,2) are associated with each other and not shown. , The label counter of the label “2” is incremented to “2”, and the label of x = 3 in the first label history table 66 is updated to “2”.

また、座標(5,2)では新規ラベル(ラベル「3」)が割り付けられ、座標(5,2)と座標(5,2)の画素に割り付けたラベル「3」とが対応付けられて図示しない記憶部に記憶され、ラベル「3」のラベルカウンタが「1」にインクリメントされ、第1ラベル履歴テーブル66におけるx=5のラベルが「1」に更新される。また、座標(6,2)では、ラベル「3」が割り付けられ、座標(6,2)と座標(6,2)の画素に割り付けたラベル「3」とが対応付けられて図示しない記憶部に記憶され、ラベル「3」のラベルカウンタが「2」にインクリメントされ、第1ラベル履歴テーブル66におけるx=6のラベルが「3」に更新される。   Also, a new label (label “3”) is assigned to the coordinate (5,2), and the label (3) assigned to the pixel of the coordinate (5,2) and the coordinate (5,2) is associated with the illustration. The label counter of the label “3” is incremented to “1”, and the label of x = 5 in the first label history table 66 is updated to “1”. Also, at coordinate (6,2), label “3” is assigned, and the storage unit (not shown) is associated with coordinate (6,2) and label “3” assigned to the pixel at coordinate (6,2). , The label counter of the label “3” is incremented to “2”, and the label of x = 6 in the first label history table 66 is updated to “3”.

また、座標(3,3)では、黒画素であり、左隣の画素のラベル(第1ラベル履歴テーブル66におけるx=2の値)が「0」であり、上隣の画素のラベル(第1ラベル履歴テーブル66におけるx=3の更新前の値)が「2」なので、ラベル「2」が割り付けられ、座標(3,3)と座標(3,3)の画素に割り付けたラベル「2」とが対応付けられて図示しない記憶部に記憶され、ラベル「2」のラベルカウンタが「3」にインクリメントされ、第1ラベル履歴テーブル66におけるx=3のラベルが「2」に更新される。   Further, at the coordinates (3, 3), it is a black pixel, the label of the pixel on the left side (x = 2 value in the first label history table 66) is “0”, and the label of the pixel on the upper side (the first pixel) Since the value of x = 3 in the one-label history table 66 before update) is “2”, the label “2” is assigned, and the label “2” assigned to the pixel at coordinates (3,3) and coordinates (3,3) ”Is stored in a storage unit (not shown), the label counter of the label“ 2 ”is incremented to“ 3 ”, and the label of x = 3 in the first label history table 66 is updated to“ 2 ”. .

以下、右下の画素(座標(8,6))まで同様に走査およびラベル付けを行う。そして、右下の画素(座標(8,6))まで走査およびラベル付けが完了すると、制御部7は、第1斜めカウンタ64からライン判定部71に各ラベルと各ラベルのカウント値とを出力させる。   Thereafter, scanning and labeling are similarly performed up to the lower right pixel (coordinates (8, 6)). When the scanning and labeling are completed up to the lower right pixel (coordinate (8, 6)), the control unit 7 outputs each label and the count value of each label from the first diagonal counter 64 to the line determination unit 71. Let

次に、右上から左下に向かって走査するときのラベル付け方法について、図20を参照しながら説明する。図20は、右上から左下に向かって走査するときのラベル付けの手順を示す説明図である。   Next, a labeling method when scanning from the upper right to the lower left will be described with reference to FIG. FIG. 20 is an explanatory diagram showing a labeling procedure when scanning from the upper right to the lower left.

まず、走査開始時には第2ラベルカウンタ69および第2ラベル履歴テーブル70を「0」に初期化する。その後、右上から左下方向へ(座標(8,0)→(7,0)→(6,0)→・・・→(0,0)→(8,1)→(7,1)→・・・の順に)走査していく。   First, at the start of scanning, the second label counter 69 and the second label history table 70 are initialized to “0”. Then, from upper right to lower left (coordinates (8,0) → (7,0) → (6,0) → ・ ・ ・ → (0,0) → (8,1) → (7,1) → ・(In order of)

座標(7,1)となるまでは黒画素が存在しないため第1ラベルカウンタ65および第1ラベル履歴テーブル66に格納されている情報は全て初期値「0」のままである。   Until the coordinate (7, 1) is reached, there is no black pixel, so all the information stored in the first label counter 65 and the first label history table 66 remains the initial value “0”.

座標(7,1)では黒画素が存在するためラベル付けを行う。ここでは、右隣の画素のラベル(第2ラベル履歴テーブル70におけるx=8の値)と上隣の画素のラベル(第2ラベル履歴テーブル70におけるx=7の更新前の値)が共に「0」であり、それまでのいずれの画素にもラベルが割り付けられていないので、第2ラベリング部76は、座標(7
,1)の画素に対して新規ラベル(ラベル「1」)を割り付ける。また、制御部7は、座標(7,1)と座標(7,1)の画素に割り付けたラベル「1」とを対応付けて図示しない記憶部に記憶させる。また、ラベル「1」のラベルカウンタを「1」にインクリメントする。また、第2ラベル履歴テーブル70におけるx=7のラベルを「1」に更新する。
Since the black pixel exists at the coordinates (7, 1), labeling is performed. Here, the label of the pixel on the right (the value of x = 8 in the second label history table 70) and the label of the upper adjacent pixel (the value before x = 7 in the second label history table 70) are both “ 0 ”and no label is assigned to any of the pixels up to that point, the second labeling unit 76 uses coordinates (7
, 1) is assigned a new label (label “1”). Further, the control unit 7 stores the coordinates (7, 1) and the label “1” assigned to the pixel at the coordinates (7, 1) in association with each other in a storage unit (not shown). Further, the label counter of the label “1” is incremented to “1”. Further, the label of x = 7 in the second label history table 70 is updated to “1”.

以下、同様にして、黒画素に対して、右隣の画素のラベル、上隣の画素のラベル、それまでに割り付けたラベルに応じて各画素にラベルを割り付けるとともに、第2ラベル履歴テーブル70における当該各画素を含む列のラベルを更新していく。また、各ラベルを割り付ける毎に当該ラベルのラベルカウンタ値をインクリメントしていく。また、ラベル付けを行った各画素(ラベルが「0」以外である各画素)について、各画素の座標と各画素に割り付けたラベルとを対応付けて図示しない記憶部に記憶させていく。   In the same manner, for the black pixel, a label is assigned to each pixel according to the label of the right adjacent pixel, the label of the upper adjacent pixel, and the label assigned so far, and in the second label history table 70, The column label including each pixel is updated. Each time a label is assigned, the label counter value of the label is incremented. For each pixel that has been labeled (each pixel whose label is other than “0”), the coordinates of each pixel and the label assigned to each pixel are associated with each other and stored in a storage unit (not shown).

そして、左下の画素(座標(0,6))まで走査およびラベル付けが完了すると、制御部7は、第2斜めカウンタ68からライン判定部71に各ラベルと各ラベルのカウント値とを出力させる。   When scanning and labeling are completed up to the lower left pixel (coordinates (0, 6)), the control unit 7 causes the second oblique counter 68 to cause the line determination unit 71 to output each label and the count value of each label. .

図21は、図18に示した画像データについての斜め2方向のライン画像の抽出結果、および交点の抽出結果を示す説明図である。この図に示すように、図18の画像データの場合、左上から右下への走査では、5種類のラベル(ラベル「1」〜「5」)が割り付けられる。また、各ラベルのカウント値は、ラベル「1」,「3」,「4」,「5」が「2」、ラベル「2」が「7」となる。したがって、この場合、ライン判定部71は、カウント値が閾値「5」以上であるラベル「2」に対応する画素からなる画像をライン画像と判定する。そして、ライン判定部71は、ライン画像であると判定した場合、当該ライン画像を構成する各画素の座標を上記記憶部から読み出して交点抽出部72に出力する。   FIG. 21 is an explanatory diagram showing the result of extracting line images in two oblique directions and the result of extracting intersections for the image data shown in FIG. As shown in FIG. 18, in the case of the image data of FIG. 18, five types of labels (labels “1” to “5”) are assigned in the scanning from the upper left to the lower right. The count values of the labels are “2” for labels “1”, “3”, “4”, and “5”, and “7” for label “2”. Therefore, in this case, the line determination unit 71 determines that an image including pixels corresponding to the label “2” whose count value is equal to or greater than the threshold “5” is a line image. When determining that the line image is a line image, the line determination unit 71 reads out the coordinates of each pixel constituting the line image from the storage unit and outputs the coordinates to the intersection extraction unit 72.

右上から左下への走査では、図21に示すように、3種類のラベル(ラベル「1」〜「3」)が割り付けられる。また、各ラベルのカウント値は、ラベル「2」,「3」が「2」、ラベル「1」が「11」となる。したがって、この場合、ライン判定部71は、カウント値が閾値「5」以上であるラベル「1」に対応する画素からなる画像をライン画像と判定する。そして、ライン判定部71は、ライン画像であると判定した場合、当該ライン画像を構成する各画素の座標を上記記憶部から読み出して交点抽出部72に出力する。   In scanning from the upper right to the lower left, as shown in FIG. 21, three types of labels (labels “1” to “3”) are assigned. The count values of the labels are “2” for labels “2” and “3” and “11” for label “1”. Therefore, in this case, the line determination unit 71 determines that an image including pixels corresponding to the label “1” whose count value is equal to or greater than the threshold “5” is a line image. When determining that the line image is a line image, the line determination unit 71 reads out the coordinates of each pixel constituting the line image from the storage unit and outputs the coordinates to the intersection extraction unit 72.

そして、交点抽出部72は、左上から右下への走査および右上から左下への走査の両方においてライン画像であると判定された画素の座標(3,3),(4,3),(5,3)の中心座標である座標(4,3)を交点として算出する。また、交点抽出部72は、算出した交点を特徴点として特徴量算出部32に出力する。   The intersection extraction unit 72 then coordinates (3, 3), (4, 3), (5) of the pixels determined to be a line image in both the upper left to lower right scanning and the upper right to lower left scanning. , 3) is calculated as the intersection (4, 3), which is the center coordinate. In addition, the intersection extraction unit 72 outputs the calculated intersection to the feature amount calculation unit 32 as a feature point.

以上のように、本実施形態にかかるデジタルカラー複合機1の文書照合処理部13では、交点算出部45が、入力画像データからライン画像(例えば文字や罫線におけるライン部分)を抽出し、ライン画像同士の交点を抽出して特徴点とする。   As described above, in the document matching processing unit 13 of the digital color multifunction peripheral 1 according to the present embodiment, the intersection calculation unit 45 extracts a line image (for example, a line part in a character or ruled line) from the input image data, and the line image The intersection point between them is extracted and used as a feature point.

このように、ライン画像同士の交点を特徴点とすることで、例えば文字が少ない原稿から読み取った入力画像データの場合であっても多数の特徴点を抽出することができるので、入力画像データを適切に特定することができ、類似性判定処理(照合処理)の精度を向上させることができる。   Thus, by using the intersection of line images as a feature point, a large number of feature points can be extracted even in the case of input image data read from a document with few characters, for example. It is possible to specify appropriately, and it is possible to improve the accuracy of the similarity determination process (collation process).

また、ライン画像の抽出とライン画像同士の交点の算出とを行うだけで特徴点を算出できるので、入力画像データから文字,文字列枠,枠,枠を示す直線などを抽出し、抽出した複数種類の要素について類似性判定処理を行う構成に比べて、特徴点算出処理にかかるアルゴリズムを簡略化するとともに、処理時間を短縮できる。   In addition, since feature points can be calculated simply by extracting line images and calculating intersections between line images, characters, character string frames, frames, straight lines indicating frames, etc. are extracted from the input image data and extracted. Compared to a configuration in which similarity determination processing is performed on types of elements, the algorithm for the feature point calculation processing can be simplified and the processing time can be shortened.

なお、本実施形態では、図12に示した交点算出部45において、左上から右下、および右上から左下への走査を行って各画素にラベル付けを行い、同一ラベルを付された画素の数に応じてライン画像を判定する構成について説明したが、ライン画像の検出方法はこれに限るものではない。   In this embodiment, the intersection calculation unit 45 shown in FIG. 12 performs scanning from the upper left to the lower right and the upper right to the lower left to label each pixel, and the number of pixels having the same label. Although the configuration for determining a line image according to the above has been described, the method for detecting a line image is not limited to this.

例えば、左上から右下、および右上から左下への走査を行う際、各画素のラベル付けを上述した方法で行うとともに、ラベルの種類ごとにその開始座標と終了座標を記憶しておき、各ラベルについての開始座標と終了座標とを用いてライン画像の検出を行うようにしてもよい。図22は、この場合の交点算出部45の構成を示すブロック図であり、図12に示した交点算出部45に代えて文書照合処理部13に備えられる。   For example, when scanning from the upper left to the lower right and from the upper right to the lower left, each pixel is labeled by the method described above, and the start and end coordinates are stored for each type of label, and each label is stored. The line image may be detected using the start coordinate and the end coordinate. FIG. 22 is a block diagram showing the configuration of the intersection calculation unit 45 in this case, and is provided in the document matching processing unit 13 instead of the intersection calculation unit 45 shown in FIG.

図22に示す交点算出部45は、図12に示した交点算出部45における第1斜めカウンタ64に代えて第1ラベル付け情報記憶部64bを備えており、第2斜めカウンタ68に代えて第2ラベル付け情報記憶部68bを備えている。   The intersection calculation unit 45 shown in FIG. 22 includes a first labeling information storage unit 64b instead of the first diagonal counter 64 in the intersection calculation unit 45 shown in FIG. A two-labeling information storage unit 68b is provided.

第1ラベル付け情報記憶部64bは、第1ラベル開始終了座標格納部65bと第1ラベル履歴テーブル66とを備えている。第1ラベル開始終了座標格納部65bは、第1ラベリング部63による各画素へのラベル割り付け結果に基づいて、ラベルの種類毎にその開始座標と終了座標とを記憶するものである。第1ラベル履歴テーブル66は図12で説明した機能と略同様の機能を有する。   The first labeling information storage unit 64b includes a first label start / end coordinate storage unit 65b and a first label history table 66. The first label start / end coordinate storage unit 65b stores the start coordinate and the end coordinate for each type of label based on the result of label assignment to each pixel by the first labeling unit 63. The first label history table 66 has substantially the same function as that described with reference to FIG.

第2ラベル付け情報記憶部68bは、第2ラベル開始終了座標格納部69bと第2ラベル履歴テーブル70とを備えている。第2ラベル開始終了座標格納部69bは、第2ラベリング部67による各画素へのラベル割り付け結果に基づいて、ラベルの種類毎にその開始座標と終了座標とを記憶するものである。第2ラベル履歴テーブル70は図12で説明した機能と略同様の機能を有する。   The second labeling information storage unit 68 b includes a second label start / end coordinate storage unit 69 b and a second label history table 70. The second label start / end coordinate storage unit 69b stores the start coordinate and the end coordinate for each type of label based on the result of label assignment to each pixel by the second labeling unit 67. The second label history table 70 has substantially the same function as that described with reference to FIG.

次に、図22に示した交点算出部45によるライン画像の抽出処理および交点の抽出処理について説明する。   Next, line image extraction processing and intersection extraction processing performed by the intersection calculation unit 45 illustrated in FIG. 22 will be described.

第1ラベリング部63は、上述したラベル付け方法でラベル付け処理を行っていく。その際、各画素にラベルを付す毎に、ラベルの割り付け結果を第1ラベル履歴テーブル66に記憶させるとともに、第1ラベル開始終了座標格納部65bに記憶させている当該ラベルの開始座標および終了座標を更新していく。同様に、第2ラベリング部67は、各画素にラベルを付す毎に、ラベルの割り付け結果を第2ラベル履歴テーブル70に記憶させるとともに、第2ラベル開始終了座標格納部69bに記憶させている当該ラベルの開始座標および終了座標を更新していく。   The first labeling unit 63 performs the labeling process using the labeling method described above. At that time, each time a label is assigned to each pixel, the label allocation result is stored in the first label history table 66, and the start and end coordinates of the label stored in the first label start / end coordinate storage unit 65b are stored. Will be updated. Similarly, the second labeling unit 67 stores the label allocation result in the second label history table 70 and the second label start / end coordinate storage unit 69b each time a label is assigned to each pixel. Update the start and end coordinates of the label.

なお、ラベリング時には、x座標およびy座標のそれぞれについて各ラベルの最小座標と最大座標を求める。これにより、そのラベルの外接矩形の4点の座標を求めることができる。左上から右下に向かって走査するときは同一ラベルを付された画素からなる画像の外接矩形左上を開始座標、外接矩形右下を終了座標とし、右上から左下に向かって走査するときは同一ラベルを付された画素からなる画像の外接矩形右上を開始座標、外接矩形左下を終了座標とする。   At the time of labeling, the minimum and maximum coordinates of each label are obtained for each of the x coordinate and the y coordinate. Thereby, the coordinates of the four points of the circumscribed rectangle of the label can be obtained. When scanning from the upper left to the lower right, the upper left corner of the circumscribed rectangle of the image consisting of pixels with the same label is the start coordinate, the lower right corner of the circumscribed rectangle is the end coordinate, and the same label when scanning from the upper right to the lower left The upper right corner of the circumscribed rectangle of the image consisting of pixels marked with is the start coordinate, and the lower left corner of the circumscribed rectangle is the end coordinate.

開始座標および終了座標の更新手順は以下の通りである。
(1)新規ラベル割り付け時は開始座標(xst,yst)、終了座標(xend,yend)共に現在の座標(xcrt,ycrt)とする。(2)既存ラベルの更新時には以下の条件(a)〜(d)および(e)〜(h)に基づいてxst,yst,xend,yendをそれぞれ更新する。
The procedure for updating the start coordinates and the end coordinates is as follows.
(1) When assigning a new label, both the start coordinates (xst, yst) and the end coordinates (xend, yend) are set to the current coordinates (xcrt, ycrt). (2) When updating an existing label, xst, yst, xend, and yend are updated based on the following conditions (a) to (d) and (e) to (h), respectively.

左上から右下に向かって走査する場合、
(a)xcrt<xstであればxstを更新する。
(b)ycrt<ystであればystを更新する。
(c)xcrt>xendであればxendを更新する。
(d)ycrt>yendであればyendを更新する。
When scanning from upper left to lower right,
(A) If xcrt <xst, xst is updated.
(B) If ycrt <yst, update yst.
(C) If xcrt> xend, xend is updated.
(D) If ycrt> yend, update yend.

右上から左下に向かって走査する場合、
(e)xcrt>xstであればxstを更新する。
(f)ycrt<ystであればystを更新する。
(g)xcrt<xendであればxendを更新する。
(h)ycrt>yendであればyendを更新する。
When scanning from upper right to lower left,
(E) If xcrt> xst, xst is updated.
(F) If ycrt <yst, update yst.
(G) If xcrt <xend, xend is updated.
(H) If ycrt> yend, update yend.

次に、図22に示した交点算出部45による斜め方向についてのライン画像の抽出処理および交点の抽出処理について、図23に示す画像データに対する処理を例としてより詳細に説明する。   Next, the line image extraction process and the intersection extraction process in the oblique direction by the intersection calculation unit 45 illustrated in FIG. 22 will be described in more detail using the process for the image data illustrated in FIG. 23 as an example.

図24は、図23に示した画像に対して左上から右下に向かって走査するときのラベル付けの手順を示す説明図である。この図を参照しながら、まず左上から右下への走査時の処理について説明する。   FIG. 24 is an explanatory diagram showing a labeling procedure when scanning the image shown in FIG. 23 from the upper left to the lower right. With reference to this figure, the processing at the time of scanning from the upper left to the lower right will be described first.

まず、走査開始時には第1ラベル履歴テーブル66を「0」に初期化する。その後、左上から右下方向へ(座標(0,0)→(1,0)→(2,0)→・・・→(11,0)→(0,1)→(1,1)→・・・の順に)走査していく。   First, at the start of scanning, the first label history table 66 is initialized to “0”. Then, from upper left to lower right (coordinates (0,0) → (1,0) → (2,0) → ・ ・ ・ → (11,0) → (0,1) → (1,1) → Scan in order.

座標(7,1)となるまでは黒画素が存在しないため第1ラベル履歴テーブル66に格納されている情報は全て初期値「0」のままである。   Until the coordinate (7, 1) is reached, there is no black pixel, so all the information stored in the first label history table 66 remains the initial value “0”.

座標(7,1)では黒画素が存在するためラベル付けを行う。ここでは、左隣の画素のラベル(第1ラベル履歴テーブル66におけるx=6の値)と上隣の画素のラベル(第1ラベル履歴テーブル66におけるx=7の更新前の値)が共に「0」であり、それまでのいずれの画素にもラベルが割り付けられていないので、第1ラベリング部63は、座標(7,1)の画素に対して新規ラベル(ラベル「1」)を割り付ける。また、座標(7,1)と座標(7,1)の画素に割り付けたラベル「1」とを対応付けて図示しない記憶部に記憶させる。また、ラベル「1」の開始座標を(7,1)、終了座標を(7,1)にする。すなわち、xst=7,yst=1,xend=7,yend=1に設定する。また、第1ラベル履歴テーブル66におけるx=7のラベルを「1」に更新する。   Since the black pixel exists at the coordinates (7, 1), labeling is performed. Here, both the label of the pixel on the left (the value of x = 6 in the first label history table 66) and the label of the upper adjacent pixel (the value before the update of x = 7 in the first label history table 66) are both “ 0 ”and no label is assigned to any of the pixels up to that time, the first labeling unit 63 assigns a new label (label“ 1 ”) to the pixel at coordinates (7, 1). Further, the coordinates (7, 1) and the label “1” assigned to the pixel at the coordinates (7, 1) are associated with each other and stored in a storage unit (not shown). Further, the start coordinate of the label “1” is set to (7, 1), and the end coordinate is set to (7, 1). That is, xst = 7, yst = 1, xend = 7, and yend = 1 are set. Further, the label of x = 7 in the first label history table 66 is updated to “1”.

次の座標(8,1)においても黒画素が存在するためラベル付けを行う。ここでは、左隣の画素のラベル(第1ラベル履歴テーブル66におけるx=7の値)が「0」でないため、第1ラベリング部63は、座標(8,1)の画素に対して左隣の画素のラベルと同じラベル(ラベル「1」)を割り付ける。また、座標(8,1)と座標(8,1)の画素に割り付けたラベル「1」とを対応付けて図示しない記憶部に記憶させる。また、上記式(c)を満たすため、ラベル「1」の終了座標を(8,1)に更新する。すなわち、xendの値を8に更新する。また、第1ラベル履歴テーブル66におけるx=8のラベルを「1」に更新する。   Since the black pixel exists also at the next coordinate (8, 1), labeling is performed. Here, since the label of the pixel on the left side (the value of x = 7 in the first label history table 66) is not “0”, the first labeling unit 63 is adjacent to the pixel at the coordinate (8, 1) on the left side. The same label (label “1”) as the label of the pixel is assigned. Further, the coordinates (8, 1) and the label “1” assigned to the pixel at the coordinates (8, 1) are associated with each other and stored in a storage unit (not shown). Further, the end coordinate of the label “1” is updated to (8, 1) in order to satisfy the above formula (c). That is, the value of xend is updated to 8. Further, the label of x = 8 in the first label history table 66 is updated to “1”.

座標(9,1),(10,1)についても同様の処理を行うことにより、これら各座標にラベル「1」が割り付けられ、座標(9,1)(10,1)の画素に割り付けたラベル「1」とを対応付けて図示しない記憶部に記憶させる。また、座標(10,1)のラベル付け時には、上記式(c)を満たすためラベル「1」の終了座標が(10,1)に更新される(座標(9,1)の時点でも更新されているが座標(10,1)の情報で上書きされている)。また、第1ラベル履歴テーブル66におけるx=9、10のラベルを「1」に更新する。   By performing the same processing for the coordinates (9, 1) and (10, 1), the label “1” is assigned to each of these coordinates, and the coordinates (9, 1) (10, 1) are assigned to the pixels. The label “1” is associated and stored in a storage unit (not shown). In addition, when labeling the coordinates (10, 1), the end coordinates of the label “1” are updated to (10, 1) to satisfy the above formula (c) (also updated at the time of the coordinates (9, 1)). Is overwritten with information of coordinates (10, 1)). Also, the labels of x = 9, 10 in the first label history table 66 are updated to “1”.

同様の手順で走査を続けると、座標(2,2)で新規ラベル(ラベル「2」)が割り付けられ、座標(2,2)と座標(2,2)の画素に割り付けたラベル「2」とが対応付けられて図示しない記憶部に記憶され、ラベル「2」の開始座標が(2,2)、終了座標が(2,2)にされ、第1ラベル履歴テーブル66におけるx=2のラベルが「2」に更新される。   If scanning is continued in the same procedure, a new label (label “2”) is assigned at coordinates (2, 2), and label “2” assigned to the pixels at coordinates (2, 2) and coordinates (2, 2). Are stored in a storage unit (not shown), the start coordinate of the label “2” is (2,2), the end coordinate is (2,2), and x = 2 in the first label history table 66 The label is updated to “2”.

また、座標(3,2)ではラベル「2」が割り付けられ、座標(3,2)と座標(3,2)の画素に割り付けたラベル「2」とが対応付けられて図示しない記憶部に記憶され、上記式(c)を満たすためラベル「2」の終了座標が(3,2)に更新され、第1ラベル履歴テーブル66におけるx=3のラベルが「2」に更新される。   Further, the label “2” is assigned to the coordinate (3, 2), and the label (2) assigned to the pixel of the coordinate (3, 2) and the coordinate (3, 2) is associated with a storage unit (not shown). The end coordinates of the label “2” are updated to (3, 2) to satisfy the above formula (c), and the label of x = 3 in the first label history table 66 is updated to “2”.

同様に、座標(4,2)にはラベル「2」が割り付けられ、座標(4,2)と座標(4,2)の画素に割り付けたラベル「2」とが対応付けられて図示しない記憶部に記憶される。また、上記式(c)を満たすためラベル「2」の終了座標が(4,2)に更新される。また、第1ラベル履歴テーブル66におけるx=4のラベルが「2」に更新される。   Similarly, the label “2” is assigned to the coordinate (4, 2), and the label (2) assigned to the pixel at the coordinate (4, 2) is associated with the memory (not shown). Stored in the department. Further, the end coordinate of the label “2” is updated to (4, 2) to satisfy the above formula (c). Further, the label of x = 4 in the first label history table 66 is updated to “2”.

また、座標(6,2)では新規ラベル(ラベル「3」)が割り付けられ、座標(6,2)と座標(6,2)の画素に割り付けたラベル「3」とが対応付けられて図示しない記憶部に記憶され、ラベル「3」の開始座標が(6,2)、終了座標が(6,2)にされ、第1ラベル履歴テーブル66におけるx=6のラベルが「3」に更新される。   In addition, a new label (label “3”) is assigned to the coordinate (6, 2), and the label (3) assigned to the pixel at the coordinate (6, 2) and the coordinate (6, 2) is associated with the illustration. Stored in the storage unit, the start coordinate of the label “3” is set to (6,2), the end coordinate is set to (6,2), and the label of x = 6 in the first label history table 66 is updated to “3”. Is done.

座標(7,2)〜(10,2)についても同様の処理が実行され、これら各座標にはラベル「3」が割り付けられ、座標(7,2)〜(10,2)の画素に割り付けたラベル「3」とを対応付けて図示しない記憶部に記憶させる。また、ラベル「3」の終了座標は座標(10,2)に対する処理時に(10,2)に更新される(座標(7,2)〜(9,2)の時点でも更新されているが座標(10,2)の情報で上書きされる)。また、第1ラベル履歴テーブル66におけるx=7〜10のラベルが「3」に更新される。   The same processing is performed for the coordinates (7,2) to (10,2), and the label “3” is assigned to each of these coordinates, and the coordinates (7,2) to (10,2) are assigned to the pixels. The label “3” is stored in a storage unit (not shown) in association with it. Further, the end coordinate of the label “3” is updated to (10, 2) during the processing for the coordinate (10, 2) (although it is also updated at the time of the coordinates (7, 2) to (9, 2)) (Overwritten with information of (10, 2)). Further, the label of x = 7 to 10 in the first label history table 66 is updated to “3”.

また、座標(3,3)では、黒画素であり、左隣の画素のラベル(第1ラベル履歴テーブル66におけるx=2の値)が「0」であり、上隣の画素のラベル(第1ラベル履歴テーブル66におけるx=3の更新前の値)が「2」なので、ラベル「2」が割り付けられ、座標(3,3)と座標(3,3)の画素に割り付けたラベル「2」とが対応付けられて図示しない記憶部に記憶され、上記式(d)を満たすためラベル「2」の終了座標が(4,3)に更新される。また、第1ラベル履歴テーブル66におけるx=3のラベルが「2」に更新される。   Further, at the coordinates (3, 3), the pixel is a black pixel, the label on the left adjacent pixel (the value of x = 2 in the first label history table 66) is “0”, and the label on the upper adjacent pixel (the first pixel) Since the value before update of x = 3 in the one label history table 66 is “2”, the label “2” is assigned, and the label “2” assigned to the pixel at the coordinates (3,3) and the coordinates (3,3) is assigned. ”Is stored in a storage unit (not shown), and the end coordinates of the label“ 2 ”are updated to (4, 3) to satisfy the above formula (d). Further, the label of x = 3 in the first label history table 66 is updated to “2”.

座標(4,3)〜(8,3)についても同様の処理が実行され、これら各座標にはラベル「2」が割り付けられ、座標(4,3)〜(8,3)と座標(4,3)〜(8,3)の画素に割り付けたラベル「2」とが対応付けられて図示しない記憶部に記憶される。また、上記式(c)を満たすためラベル「2」の終了座標が(8,3)に更新される(座標(5,3)〜(7,3)の時点でも更新されているが座標(8,3)の情報で上書きされる)。また、第1ラベル履歴テーブル66におけるx=4〜8のラベルが「2」に更新される。   The same processing is executed for the coordinates (4, 3) to (8, 3), and the label “2” is assigned to each of these coordinates, and the coordinates (4, 3) to (8, 3) and the coordinates (4 , 3) to (8, 3) are associated with the label “2” assigned to the pixels and stored in a storage unit (not shown). Further, the end coordinate of the label “2” is updated to (8, 3) in order to satisfy the above formula (c) (although updated at the time of the coordinates (5, 3) to (7, 3), the coordinate ( Overwritten with the information of 8,3)). Further, the labels of x = 4 to 8 in the first label history table 66 are updated to “2”.

以下、右下の画素(座標(11,8))まで同様に走査およびラベル付けを行う。そして、右下の画素(座標(11,8))まで走査およびラベル付けが完了すると、制御部7は、各ラベルと各ラベルの開始座標および終了座標とを第1ラベル付け情報記憶部64bからライン判定部71に出力させる。   Thereafter, scanning and labeling are similarly performed up to the lower right pixel (coordinates (11, 8)). When scanning and labeling are completed up to the lower right pixel (coordinates (11, 8)), the control unit 7 obtains each label and the start coordinate and end coordinate of each label from the first labeling information storage unit 64b. The output is output to the line determination unit 71.

次に、右上から左下への走査時のラベル付け処理について図25を参照しながら説明する。図25は、図23に示した画像に対して右上から左下に向かって走査するときのラベル付けの手順を示す説明図である。   Next, labeling processing at the time of scanning from upper right to lower left will be described with reference to FIG. FIG. 25 is an explanatory diagram showing a labeling procedure when scanning the image shown in FIG. 23 from the upper right to the lower left.

まず、走査開始時には第2ラベル履歴テーブル70を「0」に初期化する。その後、右上から左下方向へ(座標(11,0)→(10,0)→(9,0)→・・・→(0,0)→(11,1)→(10,1)→・・・の順に)走査していく。   First, at the start of scanning, the second label history table 70 is initialized to “0”. Then, from upper right to lower left (coordinates (11,0) → (10,0) → (9,0) → ・ ・ ・ → (0,0) → (11,1) → (10,1) → (In order of)

座標(10,1)となるまでは黒画素が存在しないため第2ラベル履歴テーブル70に格納されている情報は全て初期値「0」のままである。   Until the coordinate (10, 1) is reached, there is no black pixel, so all the information stored in the second label history table 70 remains the initial value “0”.

座標(10,1)では黒画素が存在するためラベル付けを行う。ここでは、右隣の画素のラベル(第2ラベル履歴テーブル70におけるx=11の値)と上隣の画素のラベル(第2ラベル履歴テーブル70におけるx=10の更新前の値)が共に「0」であり、それまでのいずれの画素にもラベルが割り付けられていないので、第2ラベリング部76は、座標(10,1)の画素に対して新規ラベル(ラベル「1」)を割り付ける。また、制御部7は、座標(10,1)と座標(10,1)の画素に割り付けたラベル「1」とを対応付けて図示しない記憶部に記憶させる。また、ラベル「1」の開始座標を(10,1)、終了座標を(10,1)にする。また、第2ラベル履歴テーブル70におけるx=10のラベルを「1」に更新する。   Since the black pixel exists at the coordinates (10, 1), labeling is performed. Here, the label of the pixel on the right (the value of x = 11 in the second label history table 70) and the label of the upper adjacent pixel (the value before x = 10 in the second label history table 70) are both “ 0 ”and no label is assigned to any of the pixels so far, the second labeling unit 76 assigns a new label (label“ 1 ”) to the pixel at coordinates (10, 1). In addition, the control unit 7 stores the coordinates (10, 1) and the label “1” assigned to the pixel at the coordinates (10, 1) in association with each other in a storage unit (not shown). Further, the start coordinate of the label “1” is (10, 1) and the end coordinate is (10, 1). Also, the label of x = 10 in the second label history table 70 is updated to “1”.

以下、同様にして、黒画素に対して、右隣の画素のラベル、上隣の画素のラベル、それまでに割り付けたラベルに応じて各画素にラベルを割り付けるとともに、第2ラベル履歴テーブル70における当該各画素を含む列のラベルを更新していく。また、各ラベルを割り付ける毎に当該ラベルの開始座標および終了座標を更新していく。また、ラベル付けを行った各画素(ラベルが「0」以外である各画素)について、各画素の座標と各画素に割り付けたラベルとを対応付けて図示しない記憶部に記憶させていく。   In the same manner, for the black pixel, a label is assigned to each pixel according to the label of the right adjacent pixel, the label of the upper adjacent pixel, and the label assigned so far, and in the second label history table 70, The column label including each pixel is updated. Further, each time a label is assigned, the start coordinate and end coordinate of the label are updated. For each pixel that has been labeled (each pixel whose label is other than “0”), the coordinates of each pixel and the label assigned to each pixel are associated with each other and stored in a storage unit (not shown).

そして、左下の画素(座標(0,8))まで走査およびラベル付けが完了すると、制御部7は、各ラベルと各ラベルの開始/終了座標とを第2ラベル付け情報記憶部68bからライン判定部71に出力させる。   When scanning and labeling are completed up to the lower left pixel (coordinates (0, 8)), the control unit 7 determines the line and the start / end coordinates of each label from the second labeling information storage unit 68b. Output to the unit 71.

次に、ライン判定部71におけるライン判定処理および交点抽出部72における交点抽出処理について図46を参照しながら説明する。図46は、図23に示した画像データ、この画像データに対するラベル付け結果、ライン判定結果、および交点抽出結果を示す説明図である。   Next, line determination processing in the line determination unit 71 and intersection extraction processing in the intersection extraction unit 72 will be described with reference to FIG. FIG. 46 is an explanatory diagram showing the image data shown in FIG. 23, the labeling result, the line determination result, and the intersection extraction result for this image data.

図46に示すように、図23の画像データの場合、左上から右下への走査では、5種類のラベル(ラベル「1」〜「5」)が割り付けられる。   As shown in FIG. 46, in the case of the image data in FIG. 23, five types of labels (labels “1” to “5”) are allocated in the scanning from the upper left to the lower right.

ライン判定部71は、各ラベルの開始座標(xst,yst)と終了座標(xend,yend)の距離dをd=√((xst−xend)+(yst−yend))に基づいて算出する。図46の例では、各ラベルについての距離dは、ラベル「1」が「3」,ラベル「2」が「8.94」,「3」が「4」,「4」が「2」,「5」が「3.16」となる。 The line determination unit 71 sets the distance d between the start coordinates (x st , y st ) and the end coordinates (x end , y end ) of each label as d = √ ((xst−xend) 2 + (yst−yend) 2 ). Calculate based on In the example of FIG. 46, the distance d for each label is “3” for label “1”, “8.94” for label “2”, “4” for “3”, “2” for “4”, “5” becomes “3.16”.

また、ライン判定部71は、上記のように算出した各ラベルについての距離dと予め設定された閾値(本実施形態では「8」)とを比較し、距離dが閾値以上であるラベルに対応する各画素からなる画像をライン画像であると判定する。図46の例ではラベル「2」に対応する画素からなる画像がライン画像と判定される。   In addition, the line determination unit 71 compares the distance d for each label calculated as described above with a preset threshold value (“8” in the present embodiment), and copes with a label whose distance d is equal to or greater than the threshold value. An image made up of each pixel to be determined is a line image. In the example of FIG. 46, an image including pixels corresponding to the label “2” is determined as a line image.

そして、ライン判定部71は、ライン画像であると判定した場合、当該ライン画像を構成する各画素の座標を上記記憶部から読み出して交点抽出部72に出力する。   When determining that the line image is a line image, the line determination unit 71 reads out the coordinates of each pixel constituting the line image from the storage unit and outputs the coordinates to the intersection extraction unit 72.

右上から左下への走査では、図46に示すように、4種類のラベル(ラベル「1」〜「4」)が割り付けられる。また、各ラベルについての距離dは、ラベル「1」が「10.82」,ラベル「2」が「2」,「3」が「2」,「4」が「2」となる。したがって、この場合、ライン判定部71は、距離dが閾値「8」以上であるラベル「1」に対応する画素からなる画像をライン画像と判定する。そして、ライン判定部71は、ライン画像であると判定した場合、当該ライン画像を構成する各画素の座標を上記記憶部から読み出して交点抽出部72に出力する。   In the scanning from the upper right to the lower left, as shown in FIG. 46, four types of labels (labels “1” to “4”) are assigned. The distance d for each label is “10.82” for the label “1”, “2” for the label “2”, “2” for “3”, and “2” for “4”. Therefore, in this case, the line determination unit 71 determines that an image including pixels corresponding to the label “1” whose distance d is equal to or greater than the threshold “8” is a line image. When determining that the line image is a line image, the line determination unit 71 reads out the coordinates of each pixel constituting the line image from the storage unit and outputs the coordinates to the intersection extraction unit 72.

交点抽出部72は、左上から右下への走査および右上から左下への走査の両方においてライン画像であると判定された画素の中心座標をライン画像同士の交点として算出する。なお、中心座標の算出は、例えばx座標およびy座標の平均値をそれぞれ算出し、小数点以下を四捨五入することによって算出すればよい。これにより、図46の例では、左上から右下への走査および右上から左下への走査の両方においてライン画像であると判定された画素として座標(3,3)〜(8,3)、(4,4)〜(8,4)が抽出され、これら各画素の中心座標である座標(6,3)がライン画像同士の交点として算出される。   The intersection extraction unit 72 calculates the center coordinates of the pixels determined to be a line image in both the upper left to lower right scanning and the upper right to lower left scanning as the intersection of the line images. The center coordinates may be calculated by, for example, calculating the average value of the x coordinate and the y coordinate, respectively, and rounding off after the decimal point. Thus, in the example of FIG. 46, the coordinates (3, 3) to (8, 3), (8) are determined as pixels determined to be a line image in both the upper left to lower right scanning and the upper right to lower left scanning. 4, 4) to (8, 4) are extracted, and coordinates (6, 3), which are the center coordinates of these pixels, are calculated as intersections of the line images.

図47は、斜め方向のライン画像の検出処理に関し、ラベルカウント値を用いてライン画像を検出する場合と、ライン画像の開始座標から終了座標までの距離を用いてライン画像を検出する場合との検出結果の違いを示す説明図である。   FIG. 47 relates to the detection processing of the line image in the oblique direction, when detecting the line image using the label count value and when detecting the line image using the distance from the start coordinate to the end coordinate of the line image. It is explanatory drawing which shows the difference in a detection result.

図47の上段は、図23と同じ画像について、ラベルカウント値を用いてライン画像を検出した結果、およびライン画像の開始座標から終了座標までの距離を用いてライン画像を検出した結果を示している。図47の上段右側に示したように、この場合、ラベル1のラベルカウント値は30、開始座標から終了座標までの距離は10.82となる。   The upper part of FIG. 47 shows the result of detecting the line image using the label count value for the same image as FIG. 23 and the result of detecting the line image using the distance from the start coordinate to the end coordinate of the line image. Yes. 47, in this case, the label count value of label 1 is 30, and the distance from the start coordinate to the end coordinate is 10.82.

一方、図47の下段は、図23の画像におけるライン画像部分を全体的に細くした画像について、ラベルカウント値を用いてライン画像を検出した結果、およびライン画像の開始座標から終了座標までの距離を用いてライン画像を検出した結果を示している。図47の下段右側に示したように、この場合、ラベル1のラベルカウント値は20、開始座標から終了座標までの距離は10.82となる。   On the other hand, the lower part of FIG. 47 shows the result of detecting the line image using the label count value and the distance from the start coordinate to the end coordinate of the line image for the image obtained by thinning the entire line image portion in the image of FIG. The result of having detected the line image using is shown. 47, in this case, the label count value of label 1 is 20, and the distance from the start coordinate to the end coordinate is 10.82.

このようにラベルカウント値を用いてライン画像の検出を行う場合、ラインの太さが太いほどラベルカウント値が増加するため、ライン画像の長さが同じ場合であっても太さによってラベルカウント値が増減する。このため、例えば図47に示した例の場合、ラベルカウント値の閾値が20と30の間(例えば25)であれば、線の太さによってライン検出結果が変わることになる。   When line image detection is performed using the label count value in this way, the label count value increases as the line thickness increases, so even if the line image length is the same, the label count value depends on the thickness. Increases or decreases. Therefore, for example, in the case of the example shown in FIG. 47, if the threshold value of the label count value is between 20 and 30 (for example, 25), the line detection result changes depending on the thickness of the line.

一方、ライン画像の開始座標から終了座標までの距離を用いてライン画像の検出を行う場合、ライン画像の太さが異なっていてもライン画像の長さが同じであれば開始座標から終了座標までの距離は略一定になる。   On the other hand, when the line image is detected using the distance from the start coordinate to the end coordinate of the line image, from the start coordinate to the end coordinate if the length of the line image is the same even if the thickness of the line image is different. The distance is substantially constant.

したがって、ライン画像の太さに依存せずにライン画像の判定を行いたい場合には、ライン画像の開始座標から終了座標までの距離を用いてライン画像の検出を行うことが好ましい。   Therefore, when it is desired to determine the line image without depending on the thickness of the line image, it is preferable to detect the line image using the distance from the start coordinate to the end coordinate of the line image.

なお、上述の例では、交点抽出部72が、左上から右下への走査および右上から左下への走査の両方においてライン画像であると判定された画素の中心座標をライン画像同士の交点とするものとしたが、交点の抽出方法はこれにかぎるものではない。   In the above example, the intersection extraction unit 72 uses the center coordinates of the pixels determined to be a line image in both the scan from the upper left to the lower right and the scan from the upper right to the lower left as the intersection of the line images. However, the method of extracting the intersection is not limited to this.

例えば、図51に示すように、左上から右下への走査において検出されたライン画像の開始座標および終了画像からこのライン画像の直線(線分)の式を算出し、右上から左下への走査において検出されたライン画像についても同様に開始座標および終了画像からこのライン画像の直線(線分)の式を算出し、これら2つの直線(線分)の式に基づいて交点の座標を算出するようにしてもよい。   For example, as shown in FIG. 51, a straight line (line segment) expression of this line image is calculated from the start coordinates and end images of the line image detected in the upper left to lower right scanning, and the upper right to lower left scanning is performed. Similarly, for the line image detected in step 1, the straight line (line segment) formula of the line image is calculated from the start coordinate and the end image, and the coordinates of the intersection point are calculated based on the two straight line (line segment) formulas. You may do it.

具体的には、図51に示すように、図23の画像の場合、左上から右下への走査時においてラインと判定されたラベル「2」の開始座標は(2,2)、終了座標は(10,6)であるから、この2点間の直線(線分)の式は以下のようになる。
y=x/2+1(ただし、2≦x≦10,2≦y≦6)
また、右上から左下への走査時においてラインと判定されたラベル「1」の開始座標は(10,1)、終了座標は(1,7)であることから、この2点間の直線(線分)の式は以下のようになる。
y=−2x/3+23/3(ただし、1≦x≦10,1≦y≦7)
これら2つの直線(線分)の式から交点を求めると、(40/7,27/7)≒(5.71,3.86)となり、小数点以下を四捨五入すると交点座標は(6,4)となる。
Specifically, as shown in FIG. 51, in the case of the image of FIG. 23, the start coordinate of the label “2” determined as a line at the time of scanning from the upper left to the lower right is (2, 2), and the end coordinate is Since (10, 6), the formula of the straight line (line segment) between the two points is as follows.
y = x / 2 + 1 (2 ≦ x ≦ 10, 2 ≦ y ≦ 6)
Further, since the start coordinates of the label “1” determined as a line at the time of scanning from the upper right to the lower left are (10, 1) and the end coordinates are (1, 7), a straight line (line) between these two points The equation of (minute) is as follows.
y = -2x / 3 + 23/3 (where 1 ≦ x ≦ 10, 1 ≦ y ≦ 7)
When the intersection point is calculated from these two straight line (line segment) equations, (40/7, 27/7) ≈ (5.71,3.86), and when the decimal point is rounded off, the intersection point coordinates are (6.4). It becomes.

なお、水平方向のライン画像と垂直方向のライン画像との交点を算出する場合にも、斜め方向のライン画像同士の交点を算出する場合と同様、両ライン画像の直線の式を算出し、これら2つの直線の式に基づいて両直線の交点を算出し、算出した交点に対応する座標を両ライン画像の交点とするようにしてもよい。   In addition, when calculating the intersection of the horizontal line image and the vertical line image, as in the case of calculating the intersection of the diagonal line images, the straight line equations of both line images are calculated. The intersection of both lines may be calculated based on the formula of the two lines, and the coordinates corresponding to the calculated intersection may be used as the intersection of both line images.

また、本実施形態では、2値化処理部44によって2値化された全ての画素について交点の算出処理を行っているが、これに限るものではない。   In the present embodiment, the intersection calculation processing is performed on all the pixels binarized by the binarization processing unit 44, but the present invention is not limited to this.

例えば、黒画素の連結領域の面積が所定値以上である場合、あるいは黒画素の連結領域の垂直方向の幅および水平方向の幅が所定値以上の場合などには、この連結領域については交点算出処理を行わないようにしてもよい。これにより、例えば、所定範囲以上の領域が黒く塗りつぶされている場合などに、この領域を、例えば局所的な背景(サイズが大きい場合)、あるいは孤立点(サイズが小さい場合)として検出し、交点算出処理から除外できる。   For example, when the area of the connected area of black pixels is greater than or equal to a predetermined value, or when the vertical width and horizontal width of the connected area of black pixels are greater than or equal to a predetermined value, the intersection calculation is performed for this connected area. Processing may not be performed. Thus, for example, when an area of a predetermined range or more is painted black, this area is detected as, for example, a local background (when the size is large) or an isolated point (when the size is small), and the intersection It can be excluded from the calculation process.

また、交点算出処理よりも前に入力画像データに対してエッジ検出処理を施すエッジ検出手段を設け、エッジとして検出された画素に対して交点算出処理を行うようにしてもよい。この場合、例えば所定範囲以上の領域が黒く塗りつぶされている場合などであっても、この領域における周縁部から数画素程度の部分をエッジとして検出し、この部分に対してライン検出処理および交点算出処理を施すことができる。エッジ検出手段としては、例えば、注目画素と注目画素に隣接する画素との画素値の絶対値を算出し、算出した絶対値が予め定められている閾値以上の場合にエッジと判定する方法や、ゾーベルフィルタやラプラシアンフィルタの処理結果に閾値処理を施してエッジを抽出する方法等を用いることができる。   Further, an edge detection unit that performs an edge detection process on the input image data before the intersection calculation process may be provided, and the intersection calculation process may be performed on a pixel detected as an edge. In this case, for example, even when a region of a predetermined range or more is painted black, a portion of about several pixels from the peripheral portion in this region is detected as an edge, and line detection processing and intersection calculation are performed on this portion. Processing can be performed. As the edge detection means, for example, a method of calculating the absolute value of the pixel value of the target pixel and a pixel adjacent to the target pixel, and determining the edge when the calculated absolute value is equal to or greater than a predetermined threshold, A method of extracting an edge by performing threshold processing on the processing result of the Sobel filter or Laplacian filter can be used.

また、本実施形態では、本発明をデジタルカラー複合機1に適用する場合について説明したが、本発明の適用対象はこれに限るものではない。例えば、モノクロの複合機に適用してもよい。また、複合機に限らず、例えば単体のファクシミリ通信装置、複写機、画像読取装置などの画像処理装置に適用してもよい。   In the present embodiment, the case where the present invention is applied to the digital color multifunction peripheral 1 has been described. However, the application target of the present invention is not limited to this. For example, the present invention may be applied to a monochrome multifunction device. Further, the present invention is not limited to a multifunction machine, and may be applied to an image processing apparatus such as a single facsimile communication apparatus, a copying machine, and an image reading apparatus.

図26は、本発明をフラットベッドスキャナ(画像読取装置、画像処理装置)1’に適用した場合の構成例を示すブロック図である。   FIG. 26 is a block diagram showing a configuration example when the present invention is applied to a flatbed scanner (image reading apparatus, image processing apparatus) 1 ′.

この図に示すように、フラットベッドスキャナ1’は、カラー画像入力装置2とカラー画像処理装置3’とを備えている。カラー画像処理装置3’は、A/D変換部11、シェーディング補正部12、文書照合処理部13、制御部7(図26では図示せず)、メモリ8(図26では図示せず)から構成されており、これに、カラー画像入力装置2が接続され、全体として画像読取装置1’を構成している。なお、カラー画像入力装置(画像読取手段)2におけるA/D変換部11、シェーディング補正部12、文書照合処理部13、制御部7、メモリ8の機能は、上述したデジタルカラー複合機1と略同様であるのでここでは説明を省略する。   As shown in this figure, the flatbed scanner 1 'includes a color image input device 2 and a color image processing device 3'. The color image processing device 3 ′ includes an A / D conversion unit 11, a shading correction unit 12, a document collation processing unit 13, a control unit 7 (not shown in FIG. 26), and a memory 8 (not shown in FIG. 26). The color image input device 2 is connected to the image reading device 1 ′ as a whole. The functions of the A / D conversion unit 11, the shading correction unit 12, the document collation processing unit 13, the control unit 7, and the memory 8 in the color image input device (image reading unit) 2 are substantially the same as those of the digital color multifunction peripheral 1 described above. Since it is the same, description is abbreviate | omitted here.

また、文書照合処理部13の機能を、画像処理装置と、この画像処理装置に通信可能に接続されたサーバー装置とからなる画像処理システムによって実現してもよい。図27は、画像処理装置(複合機(MFP)A,B,・・・、プリンタA,B,・・・、ファクシミリA,B,・・・、コンピュータA,B,・・・、デジタルカメラA,B,・・・、スキャナA,B,・・・)と、サーバー装置50とが通信可能に接続されてなる画像処理システム100の構成を示す説明図である。なお、画像処理システム100の構成はこれに限るものではなく、例えば、サーバー装置50と、複合機、プリンタ(画像形成装置)、ファクシミリ、コンピュータ、デジタルカメラ(画像読取装置)、スキャナ(画像読取装置)のうちのいずれか1つ以上とからなるものであってもよい。   Further, the function of the document collation processing unit 13 may be realized by an image processing system including an image processing device and a server device that is communicably connected to the image processing device. 27 shows an image processing apparatus (MFPs A, B,..., Printers A, B,..., Facsimiles A, B,..., Computers A, B,. (A, B,..., Scanners A, B,...) And a server apparatus 50 are explanatory diagrams showing the configuration of an image processing system 100 that is communicably connected. The configuration of the image processing system 100 is not limited to this. For example, the server device 50, a multifunction device, a printer (image forming device), a facsimile, a computer, a digital camera (image reading device), a scanner (image reading device). ) May be included.

上記スキャナは、原稿台、光走査部、CCD(charge coupled device)等を備えており、原稿台に載置された原稿画像を光走査部によって走査することで原稿画像を読み込んで画像データを生成する。また、上記デジタルカメラは、撮像レンズ、CCD等(画像入力装置)を備えており、原稿画像、人物や風景等を撮影して画像データを生成する。なお、上記スキャナおよびデジタルカメラは、画像を適切に再現するために所定の画像処理(例えば各種補正処理等)を施す機能を有していてもよい。上記プリンタは、コンピュータ、スキャナ、デジタルカメラによって生成された画像データに基づく画像をシート(記録用紙)に印刷する。また、上記ファクシミリは、画像入力装置より読み込まれた画像データに対して、2値化処理、解像度変換処理、回転等の処理を行って所定の形式に圧縮した画像データを相手先に送信したり、相手先から送信されてきた画像データを伸張して画像出力装置の性能に応じて回転処理や解像度変換処理、中間調処理を施し、ページ単位の画像として出力したりする。また、上記複合機は、スキャナ機能、ファクシミリ送信機能、印刷機能(複写機能、プリンタ機能)のうちの少なくとも2つ以上を有するものである。また、上記コンピュータは、スキャナやデジタルカメラにより読み込まれた画像データに対して編集を行ったり、アプリケーションソフトウェアを用いて文書の作成を行ったりする。   The scanner includes a document table, an optical scanning unit, a CCD (charge coupled device), etc., and scans the document image placed on the document table by the optical scanning unit to read the document image and generate image data. To do. The digital camera includes an imaging lens, a CCD, and the like (image input device), and shoots a document image, a person, a landscape, and the like to generate image data. The scanner and the digital camera may have a function of performing predetermined image processing (for example, various correction processes) in order to appropriately reproduce the image. The printer prints an image based on image data generated by a computer, a scanner, and a digital camera on a sheet (recording paper). Further, the facsimile performs processing such as binarization processing, resolution conversion processing, and rotation on the image data read from the image input device, and transmits the image data compressed to a predetermined format to the other party. Then, the image data transmitted from the other party is decompressed, subjected to rotation processing, resolution conversion processing, and halftone processing according to the performance of the image output apparatus, and output as a page unit image. The multifunction machine has at least two of a scanner function, a facsimile transmission function, and a printing function (copying function, printer function). The computer edits image data read by a scanner or a digital camera, or creates a document using application software.

画像処理システム100では、上述した文書照合処理部13の各部が、サーバー装置50と、サーバー装置50にネットワークを介して接続される画像処理装置とに分散して備えられている。そして、画像処理装置とサーバー装置50とが協働して文書照合処理部13の機能を実現するようになっている。   In the image processing system 100, each unit of the document collation processing unit 13 described above is distributed and provided in a server device 50 and an image processing device connected to the server device 50 via a network. The image processing device and the server device 50 cooperate to realize the function of the document collation processing unit 13.

図28は、文書照合処理部13が有する機能が、サーバー装置50とデジタルカラー複合機1とに分散して備えられている場合の一構成例を示すブロック図である。   FIG. 28 is a block diagram illustrating a configuration example in which the functions of the document matching processing unit 13 are provided in a distributed manner in the server device 50 and the digital color multifunction peripheral 1.

図28に示すように、デジタルカラー複合機1のカラー画像処理装置3は、特徴点算出部31および特徴量算出部32を備えた文書照合処理部13aと、文書照合処理部13aの動作を制御する制御部7aと、文書照合処理部13aの処理に必要な情報を記憶するメモリ8aと、外部の装置との通信を行う通信装置5とを備えている。また、サーバー装置50は、外部の装置との通信を行う通信装置51、投票処理部33、類似度判定処理部34、および登録処理部37を備えた文書照合処理部13bと、文書照合処理部13bを制御する制御部7bと、文書照合処理部13bの処理に必要な情報を記憶するメモリ8bとを備えている。なお、デジタルカラー複合機1に備えられる各機能ブロックとサーバー装置50に備えられる各機能ブロックとの間でデータの送受信が必要な場合には、制御部7aおよび制御部7bが通信装置5および51を制御して適宜データの送受信を行う。その他の機能については上述した構成と同様である。   As shown in FIG. 28, the color image processing apparatus 3 of the digital color multifunction peripheral 1 controls the operation of the document matching processing unit 13a including the feature point calculating unit 31 and the feature amount calculating unit 32, and the document matching processing unit 13a. Control unit 7a, a memory 8a for storing information necessary for processing of the document collation processing unit 13a, and a communication device 5 for communicating with an external device. The server device 50 includes a communication device 51 that performs communication with an external device, a voting processing unit 33, a similarity determination processing unit 34, and a document matching processing unit 13b that includes a registration processing unit 37, and a document matching processing unit. A control unit 7b for controlling 13b and a memory 8b for storing information necessary for processing of the document collation processing unit 13b. When data transmission / reception is required between each functional block provided in the digital color multifunction peripheral 1 and each functional block provided in the server device 50, the control unit 7a and the control unit 7b are connected to the communication devices 5 and 51, respectively. To transmit and receive data as appropriate. Other functions are the same as those described above.

また、図28の例では、特徴量算出部32の全部(特徴点抽出部32a、不変量算出部32b、ハッシュ値算出部32c)がデジタルカラー複合機1に備えられているが、これに限らず、例えば図29に示すように、特徴点抽出部32aおよび不変量算出部32bをデジタルカラー複合機1に備える一方、ハッシュ値算出部32cをサーバー装置50に備えた構成としてもよい。   In the example of FIG. 28, all of the feature amount calculation unit 32 (feature point extraction unit 32a, invariant calculation unit 32b, and hash value calculation unit 32c) are provided in the digital color multifunction peripheral 1, but this is not limitative. For example, as shown in FIG. 29, the feature point extraction unit 32 a and the invariant calculation unit 32 b may be provided in the digital color multifunction peripheral 1, while the hash value calculation unit 32 c may be provided in the server device 50.

また、特徴量算出部32の各部をサーバー装置50に備えておき、特徴点算出部31の算出した特徴点に関するデータをデジタルカラー複合機1からサーバー装置50に送信し、サーバー装置50に備えられる特徴量算出部32がメモリ8bに格納されているハッシュテーブル103と受信した特徴点のデータとに基づいてハッシュ値を算出するようにしてもよい。また、特徴点算出部31および特徴量算出部32の各部をサーバー装置50に備えておき、デジタルカラー複合機1からサーバー装置50に入力画像データを送信し、サーバー装置50に備えられる特徴点算出部31および特徴量算出部32がサーバー装置50から受信した入力画像データとメモリ8bに格納されているハッシュテーブル103とに基づいてハッシュ値を算出するようにしてもよい。   Each unit of the feature amount calculation unit 32 is provided in the server device 50, and data related to the feature points calculated by the feature point calculation unit 31 is transmitted from the digital color multifunction peripheral 1 to the server device 50, and is provided in the server device 50. The feature amount calculation unit 32 may calculate a hash value based on the hash table 103 stored in the memory 8b and the received feature point data. Further, the feature point calculation unit 31 and the feature amount calculation unit 32 are provided in the server device 50, and input image data is transmitted from the digital color multifunction peripheral 1 to the server device 50 to calculate the feature points provided in the server device 50. The unit 31 and the feature amount calculation unit 32 may calculate the hash value based on the input image data received from the server device 50 and the hash table 103 stored in the memory 8b.

また、上記の説明では、類似性の判定処理を行う場合の例について説明したが、登録処理を行う場合には、サーバー装置50に備えられる登録処理部37が、デジタルカラー複合機1から受信した原稿IDとハッシュ値(あるいはサーバー装置50に備えられるハッシュ値算出部32cが算出したハッシュ値)とをメモリ8bに設けられたハッシュテーブル103に登録すればよい。なお、類似性判定処理を行うか登録処理を行うかは、デジタルカラー複合機1のユーザが操作パネル6を介して指定し、何れの処理を行うのかを示す信号をサーバー装置50に送信するようにしてもよく、サーバー装置50が類似性判定処理の結果、類似なしと判定した入力画像について登録処理を行うようにしてもよい。   Further, in the above description, an example in which the similarity determination process is performed has been described. However, in the case of performing the registration process, the registration processing unit 37 provided in the server device 50 has received from the digital color multifunction peripheral 1. The document ID and the hash value (or the hash value calculated by the hash value calculation unit 32c provided in the server device 50) may be registered in the hash table 103 provided in the memory 8b. Whether the similarity determination process or the registration process is performed is designated by the user of the digital color multifunction peripheral 1 via the operation panel 6, and a signal indicating which process is performed is transmitted to the server device 50. Alternatively, the registration process may be performed for the input image that the server device 50 has determined as not similar as a result of the similarity determination process.

なお、ハッシュ値算出部32cをサーバー装置50に備える場合、ハッシュテーブル103に格納されているハッシュ値の算出方法とは異なる方法で(別のハッシュ関数を用いて)ハッシュ値を算出し、算出したハッシュ値を採用してハッシュテーブル103を更新してもよい。これにより、例えば原稿画像の種類等に応じて特徴量(不変量)を参照した適切なハッシュ値をハッシュテーブル103に登録(更新)することができ、それを用いて投票処理を行えるので、照合精度(類似性の判定精度)を向上させることができる。   When the server device 50 includes the hash value calculation unit 32c, the hash value is calculated by using a method different from the method for calculating the hash value stored in the hash table 103 (using another hash function). The hash table 103 may be updated using a hash value. As a result, for example, an appropriate hash value referring to a feature value (invariant) according to the type of document image or the like can be registered (updated) in the hash table 103, and voting processing can be performed using it. The accuracy (similarity determination accuracy) can be improved.

〔実施形態2〕
本発明の他の実施形態について説明する。なお、説明の便宜上、実施形態1と同様の機能を有する部材について実施形態1と同じ符号を付し、その説明を省略する。
[Embodiment 2]
Another embodiment of the present invention will be described. For convenience of explanation, members having the same functions as those of the first embodiment are denoted by the same reference numerals as those of the first embodiment, and description thereof is omitted.

図32は、本実施形態にかかるデジタルカラー複合機1に備えられる特徴点算出部31bの概略構成を示すブロック図である。この特徴点算出部31bは、実施形態1における特徴点算出部31に代えてデジタルカラー複合機1に備えられる。なお、本実施形態にかかるデジタルカラー複合機1の構成は、特徴点算出部の構成が異なる以外は実施形態1におけるデジタルカラー複合機1と略同様である。   FIG. 32 is a block diagram illustrating a schematic configuration of the feature point calculation unit 31b provided in the digital color multifunction peripheral 1 according to the present embodiment. The feature point calculation unit 31b is provided in the digital color multifunction peripheral 1 instead of the feature point calculation unit 31 in the first embodiment. The configuration of the digital color MFP 1 according to the present embodiment is substantially the same as that of the digital color MFP 1 according to the first embodiment except that the configuration of the feature point calculation unit is different.

図32に示すように、特徴点算出部31bは、実施形態1における特徴点算出部31の構成に加えて、信号変換処理部(無彩化処理部)41の前段に傾き検知部47および傾き補正処理部48を備えている。   As shown in FIG. 32, in addition to the configuration of the feature point calculation unit 31 in the first embodiment, the feature point calculation unit 31b includes an inclination detection unit 47 and an inclination in front of the signal conversion processing unit (achromatic processing unit) 41. A correction processing unit 48 is provided.

傾き検知部47は、入力画像の傾き(入力画像データの縦方向・横方向に対する、この入力画像データ中の原稿画像の縦方向・横方向の傾き)を検知する処理を行う。傾きの検知方法は特に限定されるものではなく、従来から公知の種々の方法を用いることができる。   The inclination detection unit 47 performs processing for detecting the inclination of the input image (the inclination of the original image in the input image data in the vertical direction and the horizontal direction with respect to the vertical and horizontal directions of the input image data). The tilt detection method is not particularly limited, and various conventionally known methods can be used.

例えば、図33に示すように、入力画像データにおけるx方向の中心(スキャナで読み取られる領域におけるx方向の中心)からx方向両側にw/2だけ離れた2点で原稿の端部(エッジ)e1,e2、および入力画像データの端部E1,E2を検出する。そして、原稿の端部e1から入力画像データのE1までのy方向に沿った距離d1、原稿の端部e2から入力画像データのE2までのy方向に沿った距離d2、および原稿の端部e1からe2までのx方向に沿った距離wとに基づいてtanθ=(d2−d1)/wを算出し、傾き角度θを算出する。傾き角度θの算出方法は特に限定されるものではないが、例えば図34に示すような正接−角度テーブルを用いることによって容易に算出できる。   For example, as shown in FIG. 33, the edge of the document at two points separated by w / 2 on both sides in the x direction from the center in the x direction in the input image data (the center in the x direction in the area read by the scanner). e1 and e2 and end portions E1 and E2 of the input image data are detected. Then, a distance d1 along the y direction from the edge e1 of the document to E1 of the input image data, a distance d2 along the y direction from the edge e2 of the document to E2 of the input image data, and an edge e1 of the document. Tan θ = (d2−d1) / w is calculated based on the distance w along the x direction from to e2, and the tilt angle θ is calculated. The calculation method of the inclination angle θ is not particularly limited, but can be easily calculated by using, for example, a tangent-angle table as shown in FIG.

なお、原稿のエッジを抽出する方法としては、例えば、図33に示すようにエッジ計測ウィンド内の輝度値を投影して求める方法を用いることができる。具体的には、図35に示すように、所定の大きさ(ここではx方向20画素×y方向150画素)のエッジ計測ウィンド内の入力画像データに対してエッジ強調フィルタ処理(エッジ強調処理)を施してエッジ強調画像を得る。図36はエッジ検知用フィルタの一例である。そして、エッジ強調画像に対して、縦方向(y方向)のエッジを検出するために、横方向(x方向)の画素値の合計を求める投影処理を行い、縦方向のピークをとる位置(例えば最小値)を求める。投影処理(ウィンド内におけるx方向に並ぶ各画像の輝度値を合計する処理)を行うのは、ノイズの影響を抑えるためである。図37は投影結果を示すグラフである。   As a method of extracting the edge of the document, for example, a method of calculating the luminance value in the edge measurement window as shown in FIG. 33 can be used. Specifically, as shown in FIG. 35, edge enhancement filter processing (edge enhancement processing) is performed on input image data in an edge measurement window having a predetermined size (here, 20 pixels in the x direction × 150 pixels in the y direction). To obtain an edge-enhanced image. FIG. 36 shows an example of an edge detection filter. Then, in order to detect the edge in the vertical direction (y direction) on the edge-enhanced image, a projection process for calculating the sum of the pixel values in the horizontal direction (x direction) is performed, and the position where the peak in the vertical direction is taken (for example, Find the minimum value. The reason for performing the projection processing (processing for summing up the luminance values of the images arranged in the x direction in the window) is to suppress the influence of noise. FIG. 37 is a graph showing the projection results.

傾き補正処理部48は、傾き検知部47の検出した傾き角度θに基づいて入力画像データにおける原稿の傾きを補正する。傾き補正処理の方法は特に限定されるものではないが、例えば回転行列を用いたアフィン変換処理などを用いることができる。   The tilt correction processing unit 48 corrects the tilt of the document in the input image data based on the tilt angle θ detected by the tilt detection unit 47. The method of the inclination correction process is not particularly limited, and for example, an affine transformation process using a rotation matrix can be used.

一般に、座標(x,y)をθ回転させた座標(x’,y’)は、下記の回転行列式で表すことができる。   In general, coordinates (x ′, y ′) obtained by rotating the coordinates (x, y) by θ can be expressed by the following rotation determinant.

Figure 0004487000
Figure 0004487000

画像の画素値として出力する場合には、整数値(x’,y’)に対応する小数値(xs,ys)を算出し、これをバイリニア等で補間演算すればよい。小数値(xs,ys)は、上記の回転行列式の逆変換式である下記の行列式によって算出される。   When outputting as a pixel value of an image, a decimal value (xs, ys) corresponding to an integer value (x ′, y ′) may be calculated, and this may be interpolated by bilinear or the like. The decimal value (xs, ys) is calculated by the following determinant, which is an inverse transformation formula of the above rotation determinant.

Figure 0004487000
Figure 0004487000

x−y座標系において、(xs,ys)を取り囲む4点の画素の座標は、図38に示すように、(x,y)、(xi+1,y)、(x,yi+1)、(xi+1,yi+1)で表される(i,jは1以上の整数)。ここで、x≦xs<xi+1、y≦ys<yj+1である。そして、上記4つの画素の値をそれぞれ(x,y):Z、(xi+1,y):Z、(x,yi+1):Z、(xi+1,yi+1):Zとし、xとxsとのx方向についての距離と、xsとxi+1とのx方向についての距離との比をu:1−u、yとysとのy方向についての距離と、ysとyi+1とのy方向についての距離との比をv:1−vすると、バイリニアによる補間後の座標値Zは、Z(x’,y’)=Z(xs,ys)=(1−v){(1−u)Z+u・Z}+v{(i−u)Z+u・Z}で表される。なお、三角比の演算方法については特に限定されるものではないが、例えば上述した図34の例と同様、テーブルを用いて行ってもよい。 In the xy coordinate system, the coordinates of four pixels surrounding (xs, ys) are (x i , y i ), (x i + 1 , y i ), (x i , y) as shown in FIG. i + 1 ), (x i + 1 , y i + 1 ) (i and j are integers of 1 or more). Here, x i ≦ xs <x i + 1 and y j ≦ ys <y j + 1 . Then, the values of the four pixels are set to (x i , y i ): Z 1 , (x i + 1 , y i ): Z 2 , (x i , y i + 1 ): Z 3 , (x i + 1 , y i + 1 ), respectively. : and Z 4, the distance in the x direction between x i and xs, the ratio of the distance for the x-direction between xs and x i + 1 u: 1- u, the distance in the y direction between y i and ys And the ratio of ys and the distance in the y direction between y i + 1 and v: 1−v, the coordinate value Z after bilinear interpolation is Z (x ′, y ′) = Z (xs, ys) = (1-v) {(1-u) Z 1 + u · Z 2 } + v {(i−u) Z 3 + u · Z 4 } Note that the method of calculating the trigonometric ratio is not particularly limited, but may be performed using a table, for example, as in the example of FIG. 34 described above.

図39は、本実施形態にかかるデジタルカラー複合機1における特徴点算出処理の流れを示すフロー図である。   FIG. 39 is a flowchart showing the flow of the feature point calculation process in the digital color multifunction peripheral 1 according to the present embodiment.

この図に示すように、シェーディング補正部12から特徴点算出部31bに画像データが入力されると、傾き検知部47が入力画像の傾き(傾き角度)検知処理を行い(S20a)、傾き検知部47の検出結果に基づいて傾き補正処理部が傾き(傾き角度)補正処理を行う(S20b)。その後、信号変換処理部(無彩化処理部)41による無彩化処理、解像度変換部42による解像度変換処理、MTF処理部43によるMTF処理、2値化処理部44による2値化処理を行った後(いずれも図示せず)、交点算出部45が図11と同様の方法によって交点(特徴点)の検出処理を行う(S21〜S28)。   As shown in this figure, when image data is input from the shading correction unit 12 to the feature point calculation unit 31b, the tilt detection unit 47 performs a tilt (tilt angle) detection process of the input image (S20a), and the tilt detection unit. Based on the detection result 47, the tilt correction processing unit performs tilt (tilt angle) correction processing (S20b). Thereafter, the achromatization processing by the signal conversion processing unit (achromatic processing unit) 41, the resolution conversion processing by the resolution conversion unit 42, the MTF processing by the MTF processing unit 43, and the binarization processing by the binarization processing unit 44 are performed. After that (none of them are shown), the intersection calculation unit 45 performs intersection (feature point) detection processing by the same method as in FIG. 11 (S21 to S28).

以上のように、本実施形態では、傾き検知部47および傾き補正処理部48を備えており、入力画像の傾き補正を行った後に交点(特徴点)の抽出を行う。これにより、例えば、入力画像データ中における原稿画像が傾斜している場合(例えば、画像読取装置の読取位置における所定の配置角度に対して原稿が傾斜して配置された状態で読み取られた場合など)でも、傾斜がない場合と同様、特徴点を精度よく抽出することが可能となる。したがって、このように抽出した特徴点に基づいて算出される特徴量に基づいて画像の類似度を算出することにより、入力画像と登録画像との類似性を精度よく判定できる。   As described above, in the present embodiment, the tilt detection unit 47 and the tilt correction processing unit 48 are provided, and the intersection (feature point) is extracted after the tilt correction of the input image. Thereby, for example, when the document image in the input image data is tilted (for example, when the document is read while being tilted with respect to a predetermined arrangement angle at the reading position of the image reading apparatus) However, as in the case where there is no inclination, the feature points can be extracted with high accuracy. Therefore, the similarity between the input image and the registered image can be accurately determined by calculating the image similarity based on the feature amount calculated based on the extracted feature points.

〔実施形態3〕
本発明のさらに他の実施形態について説明する。なお、説明の便宜上、実施形態1,2と同様の機能を有する部材については実施形態1,2と同じ符号を付し、その説明を省略する。
[Embodiment 3]
Still another embodiment of the present invention will be described. For convenience of explanation, members having the same functions as those of the first and second embodiments are denoted by the same reference numerals as those of the first and second embodiments, and description thereof is omitted.

図40は、本実施形態にかかるデジタルカラー複合機1に備えられる特徴点算出部31cの概略構成を示すブロック図である。この特徴点算出部31cは、実施形態1における特徴点算出部31に代えてデジタルカラー複合機1に備えられる。なお、本実施形態にかかるデジタルカラー複合機1の構成は、特徴点算出部の構成が異なる以外は実施形態1におけるデジタルカラー複合機1と略同様である。   FIG. 40 is a block diagram illustrating a schematic configuration of the feature point calculation unit 31c provided in the digital color multifunction peripheral 1 according to the present embodiment. The feature point calculation unit 31c is provided in the digital color multifunction peripheral 1 in place of the feature point calculation unit 31 in the first embodiment. The configuration of the digital color MFP 1 according to the present embodiment is substantially the same as that of the digital color MFP 1 according to the first embodiment except that the configuration of the feature point calculation unit is different.

図40に示すように、特徴点算出部31cは、実施形態1における特徴点算出部31の構成に加えて、2値化処理部44の後段に、膨張処理部52と縮退処理部53とからなる欠落補正部54を備えている。   As illustrated in FIG. 40, the feature point calculation unit 31 c includes, in addition to the configuration of the feature point calculation unit 31 in the first embodiment, an expansion processing unit 52 and a degeneration processing unit 53, following the binarization processing unit 44. The missing correction unit 54 is provided.

膨張処理部52は、注目画素および当該注目画素の周辺画素に含まれる黒画素の数をカウントし、カウント値が閾値(第1閾値)以上である注目画素を黒画素とし、カウント値が閾値未満である注目画素を白画素とする(以下、膨張処理と称する)。上記閾値は特に限定されるものではないが、本実施形態では上記閾値を1とする。   The expansion processing unit 52 counts the number of black pixels included in the pixel of interest and the peripheral pixels of the pixel of interest, sets the pixel of interest whose count value is equal to or greater than a threshold (first threshold) as a black pixel, and the count value is less than the threshold The pixel of interest is a white pixel (hereinafter referred to as expansion processing). The threshold value is not particularly limited, but in the present embodiment, the threshold value is 1.

図41(a)は膨張処理を行う前の画像データの一例を示す説明図であり、図41(b)は図41(a)の画像データに対して上記閾値を1として膨張処理を施した画像データを示す説明図である。   FIG. 41A is an explanatory diagram showing an example of image data before the expansion process is performed. FIG. 41B is an example in which the expansion process is performed on the image data of FIG. It is explanatory drawing which shows image data.

縮退処理部53は、膨張処理後の画像データにおける注目画素および注目画素の周辺画素に含まれる白画素の数をカウントし、カウント値が閾値(第2閾値)以上である注目画素を白画素とし、カウント値が閾値未満である画素を黒画素とする(以下、縮退処理と称する)。上記閾値は特に限定されるものではないが、本実施形態では上記閾値を1とする。   The reduction processing unit 53 counts the number of white pixels included in the target pixel and the peripheral pixels of the target pixel in the image data after the expansion processing, and sets the target pixel whose count value is equal to or greater than a threshold (second threshold) as a white pixel. A pixel having a count value less than the threshold is defined as a black pixel (hereinafter referred to as a degeneration process). The threshold value is not particularly limited, but in the present embodiment, the threshold value is 1.

図42(a)は縮退処理を行う前の画像データの一例(図41(b)の画像データと同じ)を示す説明図であり、図42(b)は図41(a)の画像データに対して上記閾値を1として縮退処理を施した画像データを示す説明図である。   Fig.42 (a) is explanatory drawing which shows an example (it is the same as the image data of FIG.41 (b)) before performing degeneration processing, FIG.42 (b) shows the image data of Fig.41 (a). On the other hand, it is explanatory drawing which shows the image data which performed the degeneracy process by setting the said threshold value to 1.

図43は、本実施形態にかかるデジタルカラー複合機1における特徴点算出処理の流れを示すフロー図である。   FIG. 43 is a flowchart showing the flow of the feature point calculation process in the digital color multifunction peripheral 1 according to the present embodiment.

この図に示すように、シェーディング補正部12から特徴点算出部31cに画像データが入力されると、信号変換処理部(無彩化処理部)41による無彩化処理、解像度変換部42による解像度変換処理、MTF処理部43によるMTF処理、2値化処理部44による2値化処理を行った後(いずれも図示せず)、膨張処理部52が入力画像データに対して上記した膨張処理を施し(S20c)、縮退処理部53が膨張処理後の画像データに対して縮退処理を施す(S20d)。その後、交点算出部45が図11と同様の方法によって交点(特徴点)の検出処理を行う(S21〜S28)。   As shown in this figure, when image data is input from the shading correction unit 12 to the feature point calculation unit 31c, the achromatization processing by the signal conversion processing unit (achromatic processing unit) 41 and the resolution by the resolution conversion unit 42 are performed. After performing the conversion processing, the MTF processing by the MTF processing unit 43, and the binarization processing by the binarization processing unit 44 (both not shown), the expansion processing unit 52 performs the expansion processing described above on the input image data. (S20c), the reduction processing unit 53 performs the reduction processing on the image data after the expansion processing (S20d). Thereafter, the intersection calculation unit 45 performs intersection (feature point) detection processing by the same method as that in FIG. 11 (S21 to S28).

以上のように、本実施形態では、膨張処理部52が、注目画素および当該注目画素の周辺画素に含まれる黒画素の数をカウントし、カウント値が閾値以上である注目画素を黒画素とする。さらに、縮退処理部53が、膨張処理後の画像データにおける注目画素および注目画素の周辺画素に含まれる白画素の数をカウントし、カウント値が閾値以上である注目画素を白画素とする。   As described above, in the present embodiment, the expansion processing unit 52 counts the number of black pixels included in the target pixel and the peripheral pixels of the target pixel, and sets the target pixel whose count value is equal to or greater than the threshold as the black pixel. . Further, the reduction processing unit 53 counts the number of white pixels included in the target pixel and the peripheral pixels of the target pixel in the image data after the expansion process, and sets the target pixel whose count value is equal to or greater than the threshold as the white pixel.

これにより、入力画像データにおけるライン部分にギャップ(画像データの欠落)が生じている場合であっても、このギャップを補正してからラインの検出処理を行うことができる。したがって、ギャップ(画像データの欠落)によってラインが本来よりも短く切断されて検出されることを防止し、入力画像データの特徴点を精度よく検出できる。   Thereby, even when a gap (missing image data) occurs in the line portion of the input image data, the line detection process can be performed after correcting the gap. Therefore, it is possible to prevent the line from being cut and detected by a gap (missing image data) and to accurately detect the feature points of the input image data.

なお、本実施形態では、実施形態1における特徴点算出部31の各構成に加えて膨張処理部52と縮退処理部53とを備える構成について説明したが、これに限るものではない。例えば、図44に示すように、実施形態2に示した特徴点算出部31bに膨張処理部52と縮退処理部53とを設けた特徴点算出部31dを用いてもよい。この場合、図45に示すように、シェーディング補正部12から特徴点算出部31dに画像データが入力されると、傾き検知部47が入力画像の傾き(傾き角度)検知処理を行い(S20a)、傾き検知部47の検出結果に基づいて傾き補正処理部が傾き(傾き角度)補正処理を行う(S20b)。その後、信号変換処理部(無彩化処理部)41による無彩化処理、解像度変換部42による解像度変換処理、MTF処理部43によるMTF処理、2値化処理部44による2値化処理を行った後(いずれも図示せず)、膨張処理部52が入力画像データに対して上記した膨張処理を施し(S20c)、縮退処理部53が膨張処理後の画像データに対して縮退処理を施す(S20d)。その後、交点算出部45が図11と同様の方法によって交点(特徴点)の検出処理を行う(S21〜S28)。   In addition, although this embodiment demonstrated the structure provided with the expansion process part 52 and the degeneration process part 53 in addition to each structure of the feature point calculation part 31 in Embodiment 1, it does not restrict to this. For example, as shown in FIG. 44, a feature point calculation unit 31d provided with an expansion processing unit 52 and a degeneration processing unit 53 in the feature point calculation unit 31b shown in the second embodiment may be used. In this case, as shown in FIG. 45, when image data is input from the shading correction unit 12 to the feature point calculation unit 31d, the inclination detection unit 47 performs an inclination (inclination angle) detection process of the input image (S20a). Based on the detection result of the tilt detection unit 47, the tilt correction processing unit performs tilt (tilt angle) correction processing (S20b). Thereafter, the achromatization processing by the signal conversion processing unit (achromatic processing unit) 41, the resolution conversion processing by the resolution conversion unit 42, the MTF processing by the MTF processing unit 43, and the binarization processing by the binarization processing unit 44 are performed. (Neither is shown), the expansion processing unit 52 performs the expansion processing described above on the input image data (S20c), and the compression processing unit 53 performs the compression processing on the image data after the expansion processing (S20c). S20d). Thereafter, the intersection calculation unit 45 performs intersection (feature point) detection processing by the same method as that in FIG. 11 (S21 to S28).

〔実施形態4〕
本発明のさらに他の実施形態について説明する。なお、説明の便宜上、上記各実施形態と同様の機能を有する部材については上記各実施形態と同じ符号を付し、その説明を省略する。
[Embodiment 4]
Still another embodiment of the present invention will be described. For convenience of explanation, members having the same functions as those in the above embodiments are denoted by the same reference numerals as those in the above embodiments, and description thereof is omitted.

なお、本実施形態にかかるデジタルカラー複合機1は、第1ラベリング部63および第2ラベリング部67によるラベリング(ラベル付け)方法が異なっている以外は実施形態1におけるデジタルカラー複合機1と略同様の構成である。   The digital color multifunction peripheral 1 according to the present embodiment is substantially the same as the digital color multifunction peripheral 1 according to the first embodiment except that the labeling method by the first labeling unit 63 and the second labeling unit 67 is different. It is the composition.

実施形態1では、第1ラベリング部63は、左上から右下に向かって各画素を走査していき、注目画素が黒画素であるか否かと、注目画素の左隣および上隣の画素に対するラベル付け結果とに基づいて注目画素のラベル付けを行っていた。また、第2ラベリング部67は、右上から左下に向かって各画素を走査していき、注目画素が黒画素であるか否かと、注目画素の右隣および上隣の画素に対するラベル付け結果とに応じて注目画素のラベル付けを行っていた。   In the first embodiment, the first labeling unit 63 scans each pixel from the upper left to the lower right, whether or not the pixel of interest is a black pixel, and labels for the pixels adjacent to the left and top of the pixel of interest. Based on the result of the labeling, the target pixel is labeled. In addition, the second labeling unit 67 scans each pixel from the upper right to the lower left, and determines whether or not the target pixel is a black pixel and the labeling result for the right adjacent and upper adjacent pixels of the target pixel. Accordingly, the target pixel is labeled.

これに対して、本実施形態では、第1ラベリング部63が、左上から右下に向かって各画素を走査していき、注目画素が黒画素であるか否かと、注目画素の左隣と上隣と左上隣の画素に対するラベル付け結果とに基づいて注目画素のラベル付けを行う。また、第2ラベリング部67が、右上から左下に向かって各画素を走査していき、注目画素が黒画素であるか否かと、注目画素の右隣と上隣と右上隣の画素に対するラベル付け結果とに基づいて注目画素のラベル付けを行う。   On the other hand, in the present embodiment, the first labeling unit 63 scans each pixel from the upper left to the lower right, whether or not the target pixel is a black pixel, and the left and upper sides of the target pixel. The pixel of interest is labeled based on the labeling result for the adjacent pixel and the upper left adjacent pixel. In addition, the second labeling unit 67 scans each pixel from the upper right to the lower left, whether or not the pixel of interest is a black pixel, and labels the pixels adjacent to the right, upper, and upper right of the pixel of interest. Based on the result, the target pixel is labeled.

また、第1ラベル履歴テーブル66には、注目画素の上隣のラインにおける注目画素の左上隣の画素から右側の各画素、および注目画素を含むラインにおける左端の画素から注目画素の左隣の画素までの合計1水平ライン+1画素分のラベルが格納される。そして、第1ラベル履歴テーブル66は、注目画素に対するラベル付けが完了する毎に、当該注目画素の左上隣の画素に対するラベル付け結果を削除し、当該注目画素に対するラベル付け結果を記憶する。これにより、全画素に割り付けたラベルを記憶する場合に比べて、ライン判定の精度を低下させることなく、第1ラベル履歴テーブル66に要求される記憶容量を低減できるようになっている。また、注目画素の左隣、上隣、および左上隣の画素のラベルを容易かつ迅速に抽出できるようになっている。   In the first label history table 66, each pixel on the right side from the upper left adjacent pixel of the target pixel in the upper adjacent line of the target pixel, and the pixel on the left side of the target pixel from the left end pixel in the line including the target pixel. A total of 1 horizontal line + 1 pixel label is stored. The first label history table 66 deletes the labeling result for the pixel on the upper left side of the target pixel every time the labeling for the target pixel is completed, and stores the labeling result for the target pixel. As a result, the storage capacity required for the first label history table 66 can be reduced without lowering the accuracy of line determination compared to storing labels assigned to all pixels. Further, the labels of the pixels on the left side, the upper side, and the upper left side of the target pixel can be easily and quickly extracted.

同様に、第2ラベル履歴テーブル70には、注目画素の上隣のラインにおける注目画素の右上隣の画素から左側の各画素、および注目画素を含むラインにおける右端の画素から注目画素の右隣の画素までの合計1水平ライン+1画素分のラベルが格納される。そして、第2ラベル履歴テーブル70は、注目画素に対するラベル付けが完了する毎に、当該注目画素の右上隣の画素に対するラベル付け結果を削除し、当該注目画素に対するラベル付け結果を記憶する。これにより、全画素に割り付けたラベルを記憶する場合に比べて、ライン判定の精度を低下させることなく、第2ラベル履歴テーブル70に要求される記憶容量を低減できるようになっている。また、注目画素の右隣、上隣、および右上隣の画素のラベルを容易かつ迅速に抽出できるようになっている。   Similarly, in the second label history table 70, each pixel on the left side from the pixel on the upper right side of the target pixel in the line on the upper side of the target pixel, and on the right side of the target pixel from the right end pixel in the line including the target pixel. A total of 1 horizontal line + 1 pixel label up to the pixel is stored. Then, every time the labeling for the target pixel is completed, the second label history table 70 deletes the labeling result for the pixel on the upper right side of the target pixel and stores the labeling result for the target pixel. As a result, the storage capacity required for the second label history table 70 can be reduced without lowering the accuracy of line determination compared to storing labels assigned to all pixels. In addition, the labels of the pixels adjacent to the right side, the upper side, and the upper right side of the target pixel can be easily and quickly extracted.

次に、第1ラベリング部63によるラベル付け方法について、図を参照しながらより詳細に説明する。図48は、第1ラベリング部63が注目画素に対するラベル付けを行う際の、隣接画素の参照順序を示す説明図である。   Next, the labeling method by the first labeling unit 63 will be described in more detail with reference to the drawings. FIG. 48 is an explanatory diagram showing the reference order of adjacent pixels when the first labeling unit 63 labels the target pixel.

この図に示すように、第1ラベリング部63は、画像データを左上から右下に向かって走査していき(各ラインを左端から右端へ向かって走査していく処理を上端のラインから下端のラインへ向かって順次行っていき)、以下の(a)〜(e)のルールに基づいてラベル付けを行う。
(a)注目画素が黒画素であって、注目画素の左隣の画素に対してラベル付けされている場合(左隣の画素のラベルが「0」ではない場合)、この左隣の画素と同じラベルを割り付ける。
(b)注目画素が黒画素であって、注目画素の左隣の画素に対してラベル付けされておらず(左隣の画素のラベルが「0」であり)、注目画素の上隣の画素に対してラベル付けされている場合、この上隣の画素と同じラベルを割り付ける。
(c)注目画素が黒画素であって、注目画素の左隣および上隣の画素に対してラベル付けされておらず(左隣の画素および上隣の画素のラベルが「0」であり)、注目画素の左上隣の画素に対してラベル付けされている場合、この左上隣の画素と同じラベルを割り付ける。
(d)注目画素が黒画素であって、注目画素の左隣、上隣、および左上隣の画素のいずれにもラベル付けされていない場合、当該注目画素に対して新規のラベルを割り付ける。
(e)注目画素が黒画素ではない場合、当該注目画素のラベルを「0」とする。
As shown in this figure, the first labeling unit 63 scans the image data from the upper left to the lower right (the process of scanning each line from the left end to the right end is performed from the upper end line to the lower end line. The labeling is performed based on the following rules (a) to (e).
(A) When the target pixel is a black pixel and is labeled with respect to the pixel adjacent to the left of the target pixel (when the label of the pixel adjacent to the left is not “0”), Assign the same label.
(B) The pixel of interest is a black pixel and is not labeled with respect to the pixel adjacent to the left of the pixel of interest (the label of the pixel adjacent to the left is “0”), and the pixel above the pixel of interest Is labeled, the same label as the adjacent pixel is assigned.
(C) The target pixel is a black pixel, and is not labeled with respect to the left and upper adjacent pixels of the target pixel (the labels of the left adjacent pixel and the upper adjacent pixel are “0”) If the pixel adjacent to the upper left of the target pixel is labeled, the same label as the pixel adjacent to the upper left is assigned.
(D) If the pixel of interest is a black pixel and is not labeled on any of the pixels adjacent to the left, top, or top left of the pixel of interest, a new label is assigned to the pixel of interest.
(E) When the target pixel is not a black pixel, the label of the target pixel is set to “0”.

なお、第2ラベリング部67におけるラベル付け方法は、右上から左下に向かって各画素を走査する点、および上記(a)〜(e)における「左隣」を「右隣」に変更し、「左上隣」を「右上隣」に変更する点以外は第1ラベリング部63におけるラベル付け方法と同様である。図49は、第2ラベリング部76が、注目画素に対するラベル付けを行う際の、隣接画素の参照順序を示す説明図である。   Note that the labeling method in the second labeling unit 67 changes the point of scanning each pixel from the upper right to the lower left, and changes the “left neighbor” in the above (a) to (e) to “right neighbor”. The labeling method in the first labeling unit 63 is the same as that in the first labeling unit 63, except that “upper left” is changed to “upper right”. FIG. 49 is an explanatory diagram showing the reference order of adjacent pixels when the second labeling unit 76 labels the target pixel.

以上のように、本実施形態では、第1ラベリング部63によるラベル付けを行う際、注目画素の左隣および上隣の画素に対するラベル付け結果に加えて、左上隣の画素に対するラベル付け結果を考慮して注目画素に対するラベル付けを行う。また、第2ラベリング部67によるラベル付けを行う際、注目画素の右隣および上隣の画素に対するラベル付け結果に加えて、右上隣の画素に対するラベル付け結果を考慮して注目画素に対するラベル付けを行う。   As described above, in the present embodiment, when labeling is performed by the first labeling unit 63, in addition to the labeling result for the left adjacent pixel and the upper adjacent pixel of the target pixel, the labeling result for the upper left adjacent pixel is considered. Then, the target pixel is labeled. In addition, when performing labeling by the second labeling unit 67, in addition to the labeling result for the right adjacent pixel and the upper adjacent pixel of the target pixel, the labeling for the target pixel is performed in consideration of the labeling result for the pixel adjacent to the upper right. Do.

これにより、画像読取時の誤差等によって生じたばらつきによって斜め方向のラインの位置にずれが生じている場合であっても、本来は同一であるラインに対して別々のラベルが付され、ラインとして検出されなくなることを防止し、ラインの検出精度を向上させることができる。   As a result, even if there is a shift in the position of the diagonal line due to variations caused by errors at the time of image reading, separate labels are attached to the lines that are originally the same. It is possible to prevent the detection from being lost and improve the line detection accuracy.

この点について、図50(a)〜図50(c)を参照しながらより詳細に説明する。図50(a)は、図18に示した画像がカラー画像入力装置2によって適切に読み取られた場合に、この画像を実施形態1に示したラベル付け方法でラベル付けした結果を示す説明図である。図50(b)は、図18に示した画像をカラー画像入力装置2によって読み取る際に読み取り誤差が生じた場合に、この読み取り誤差が生じた画像を実施形態1に示したラベル付け方法でラベル付けした結果を示す説明図である。図50(c)は、図18に示した画像をカラー画像入力装置2によって読み取る際に読み取り誤差が生じた場合に、この読み取り誤差が生じた画像を本実施形態に示したラベル付け方法でラベル付けした結果を示す説明図である。   This point will be described in more detail with reference to FIGS. 50 (a) to 50 (c). FIG. 50A is an explanatory diagram showing a result of labeling this image by the labeling method shown in the first embodiment when the image shown in FIG. 18 is appropriately read by the color image input apparatus 2. is there. FIG. 50B shows a case where a reading error occurs when the image shown in FIG. 18 is read by the color image input device 2, and the image in which this reading error has occurred is labeled by the labeling method shown in the first embodiment. It is explanatory drawing which shows the attached result. FIG. 50C shows a case where a reading error occurs when the image shown in FIG. 18 is read by the color image input device 2, and the image in which this reading error has occurred is labeled by the labeling method shown in the present embodiment. It is explanatory drawing which shows the attached result.

図50(b)に示した例では、左上から右下に向かうライン画像に読み取り誤差による位置ずれが生じている。そして、このような位置ずれが生じた画像に対して実施形態1に示したラベル付け方法を適用すると、本来は同一のラインであるにもかかわらず、位置によって異なるラベルが付されてしまい、ラインとして検出されなくなる。   In the example shown in FIG. 50B, a position shift due to a reading error occurs in the line image from the upper left to the lower right. Then, when the labeling method shown in the first embodiment is applied to an image in which such a positional deviation has occurred, a label different depending on the position is attached even though the label is originally the same line. Will not be detected as.

これに対して、図50(c)に示すように、本実施形態のラベル付け方法によれば、読み取り誤差に起因する位置ずれが生じていても、左上隣の画素に対するラベル付け結果を考慮することにより、本来同一のラインである画素に対して同じラベルが付され、ラインとして検出することができる。したがって、読み取り誤差が生じている場合であっても、ラインを精度よく検出することができる。   On the other hand, as shown in FIG. 50 (c), according to the labeling method of the present embodiment, the labeling result for the upper left adjacent pixel is taken into account even if there is a positional shift due to the reading error. Thus, the same label is attached to the pixels that are originally the same line, and can be detected as a line. Therefore, even when a reading error occurs, the line can be detected with high accuracy.

なお、本実施形態にかかるラベル付け方法(ライン検出方法)は、上記した各実施形態のいずれの構成にも適用できる。   Note that the labeling method (line detection method) according to the present embodiment can be applied to any configuration of the above-described embodiments.

また、上記各実施形態において、デジタルカラー複合機1および/またはサーバー装置50に備えられる文書照合処理部および制御部を構成する各部(各ブロック)は、CPU等のプロセッサを用いてソフトウェアによって実現される。すなわち、デジタルカラー複合機1および/またはサーバー装置50は、各機能を実現する制御プログラムの命令を実行するCPU(central processing unit)、上記プログラムを格納したROM(read only memory)、上記プログラムを展開するRAM(random access memory)、上記プログラムおよび各種データを格納するメモリ等の記憶装置(記録媒体)などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアであるデジタルカラー複合機1および/またはサーバー装置50の制御プログラムのプログラムコード(実行形式プログラム、中間コードプログラム、ソースプログラム)をコンピュータで読み取り可能に記録した記録媒体を、デジタルカラー複合機1および/またはサーバー装置50に供給し、そのコンピュータ(またはCPUやMPU)が記録媒体に記録されているプログラムコードを読み出し実行することによって達成される。   In each of the above embodiments, each unit (each block) constituting the document collation processing unit and the control unit provided in the digital color multifunction peripheral 1 and / or the server device 50 is realized by software using a processor such as a CPU. The That is, the digital color multifunction peripheral 1 and / or the server device 50 develops a central processing unit (CPU) that executes instructions of a control program that realizes each function, a read only memory (ROM) that stores the program, and the program. A random access memory (RAM), and a storage device (recording medium) such as a memory for storing the program and various data. An object of the present invention is to read the program code (execution format program, intermediate code program, source program) of the control program of the digital color multifunction peripheral 1 and / or the server device 50, which is software that realizes the functions described above, with a computer. This is achieved by supplying the recording medium recorded as possible to the digital color multifunction peripheral 1 and / or the server device 50, and reading out and executing the program code recorded on the recording medium by the computer (or CPU or MPU). .

上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ系、フロッピー(登録商標)ディスク/ハードディスク等の磁気ディスクやCD−ROM/MO/MD/DVD/CD−R等の光ディスクを含むディスク系、ICカード(メモリカードを含む)/光カード等のカード系、あるいはマスクROM/EPROM/EEPROM/フラッシュROM等の半導体メモリ系などを用いることができる。   Examples of the recording medium include tapes such as magnetic tapes and cassette tapes, magnetic disks such as floppy (registered trademark) disks / hard disks, and disks including optical disks such as CD-ROM / MO / MD / DVD / CD-R. Card system such as IC card, IC card (including memory card) / optical card, or semiconductor memory system such as mask ROM / EPROM / EEPROM / flash ROM.

また、デジタルカラー複合機1および/またはサーバー装置50を通信ネットワークと接続可能に構成し、通信ネットワークを介して上記プログラムコードを供給してもよい。この通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、LAN、ISDN、VAN、CATV通信網、仮想専用網(virtual private network)、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、IEEE1394、USB、電力線搬送、ケーブルTV回線、電話線、ADSL回線等の有線でも、IrDAやリモコンのような赤外線、Bluetooth(登録商標)、802.11無線、HDR、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。   Further, the digital color multifunction peripheral 1 and / or the server device 50 may be configured to be connectable to a communication network, and the program code may be supplied via the communication network. The communication network is not particularly limited. For example, the Internet, intranet, extranet, LAN, ISDN, VAN, CATV communication network, virtual private network, telephone line network, mobile communication network, satellite communication. A net or the like is available. Further, the transmission medium constituting the communication network is not particularly limited. For example, even in the case of wired such as IEEE 1394, USB, power line carrier, cable TV line, telephone line, ADSL line, etc., infrared rays such as IrDA and remote control, Bluetooth ( (Registered trademark), 802.11 wireless, HDR, mobile phone network, satellite line, terrestrial digital network, and the like can also be used. The present invention can also be realized in the form of a computer data signal embedded in a carrier wave in which the program code is embodied by electronic transmission.

また、デジタルカラー複合機1および/またはサーバー装置50の各ブロックは、ソフトウェアを用いて実現されるものに限らず、ハードウェアロジックによって構成されるものであってもよく、処理の一部を行うハードウェアと当該ハードウェアの制御や残余の処理を行うソフトウェアを実行する演算手段とを組み合わせたものであってもよい。   In addition, each block of the digital color multifunction peripheral 1 and / or the server device 50 is not limited to being realized using software, and may be configured by hardware logic, and performs a part of the processing. A combination of hardware and arithmetic means for executing software for controlling the hardware and performing the remaining processing may be used.

本発明のコンピュータシステムは、フラットベッドスキャナ・フィルムスキャナ・デジタルカメラなどの画像入力装置、所定のプログラムがロードされることにより上記類似度算出処理や類似性判定処理など様々な処理が行われるコンピュータ、コンピュータの処理結果を表示するCRTディスプレイ・液晶ディスプレイなどの画像表示装置、およびコンピュータの処理結果を紙などに出力するプリンタ等の画像形成装置により構成されてもよい。さらには、ネットワークを介してサーバーなどに接続するための通信手段としてのネットワークカードやモデムなどが備えられていてもよい。   The computer system of the present invention includes an image input device such as a flatbed scanner, a film scanner, and a digital camera, a computer in which various processes such as the similarity calculation process and the similarity determination process are performed by loading a predetermined program, An image display device such as a CRT display or a liquid crystal display that displays the processing results of the computer, and an image forming device such as a printer that outputs the processing results of the computer to paper or the like may be used. Furthermore, a network card, a modem, or the like as communication means for connecting to a server or the like via a network may be provided.

また、上記の実施形態では、2値化処理部44によって2値化処理を施した入力画像データに基づいて各画素が白画素であるか黒画素であるかを判定することでライン画像の検出処理を行う場合について説明したが、これに限らず、多値画像データにおける各画素の画素値が所定値以上であるか否かを判定することでライン画像の検出処理を行ってもよい。   In the above embodiment, the line image is detected by determining whether each pixel is a white pixel or a black pixel based on the input image data subjected to the binarization processing by the binarization processing unit 44. Although the case where the process is performed has been described, the present invention is not limited thereto, and the line image detection process may be performed by determining whether or not the pixel value of each pixel in the multi-valued image data is equal to or greater than a predetermined value.

本発明は上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能である。すなわち、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態、および請求項に示した範囲で適宜変更した技術的手段を組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。   The present invention is not limited to the above-described embodiments, and various modifications can be made within the scope shown in the claims. That is, the technical aspects of the present invention also apply to embodiments obtained by appropriately combining technical means disclosed in different embodiments and embodiments obtained by combining technical means appropriately changed within the scope of the claims. Included in the range.

本発明は、入力画像データから当該入力画像データを特定するための特徴点を抽出する画像処理装置に適用できる。   The present invention can be applied to an image processing apparatus that extracts feature points for specifying input image data from the input image data.

本発明の一実施形態にかかる画像処理装置に備えられる文書照合処理部の概略構成を示すブロック図である。It is a block diagram which shows schematic structure of the document collation process part with which the image processing apparatus concerning one Embodiment of this invention is equipped. 本発明の一実施形態にかかる画像処理装置の概略構成を示すブロック図である。1 is a block diagram illustrating a schematic configuration of an image processing apparatus according to an embodiment of the present invention. 図1に示した文書照合処理部に備えられる特徴点算出部の概略構成を示すブロック図である。It is a block diagram which shows schematic structure of the feature point calculation part with which the document collation process part shown in FIG. 1 is equipped. 図3に示した特徴点算出部のMTF処理部に備えられる混合フィルタのフィルタ係数の一例を示す説明図である。It is explanatory drawing which shows an example of the filter coefficient of the mixing filter with which the MTF process part of the feature point calculation part shown in FIG. 3 is equipped. 図1に示した文書照合処理部に備えられる特徴量算出部によって特徴量を算出する際に抽出される注目特徴点および周辺特徴点の一例を示す説明図である。It is explanatory drawing which shows an example of the attention feature point and periphery feature point which are extracted when the feature-value calculation part with which the document collation process part shown in FIG. 1 is provided calculates a feature-value. (a)〜(c)は、特徴量算出部によって特徴量を算出する際に抽出される注目特徴点および周辺特徴点の組み合わせの一例を示す説明図である。(A)-(c) is explanatory drawing which shows an example of the combination of the attention feature point and peripheral feature point which are extracted when a feature-value calculation part calculates a feature-value. (a)〜(c)は、特徴量算出部によって特徴量を算出する際に抽出される注目特徴点および周辺特徴点の組み合わせの一例を示す説明図である。(A)-(c) is explanatory drawing which shows an example of the combination of the attention feature point and peripheral feature point which are extracted when a feature-value calculation part calculates a feature-value. (a)および(b)は、図1に示した文書照合処理部において、ハッシュテーブルに登録されるハッシュ値および入力画像データを表すインデックスの一例を示す説明図である。(A) And (b) is explanatory drawing which shows an example of the index showing the hash value registered into a hash table, and input image data in the document collation process part shown in FIG. 図1に示した文書照合処理部に備えられる投票処理部における、各登録画像に対する投票数の一例を示すグラフである。3 is a graph showing an example of the number of votes for each registered image in a voting processing unit provided in the document matching processing unit shown in FIG. 1. 図1に示した文書照合処理部における処理の流れを示すフロー図である。It is a flowchart which shows the flow of a process in the document collation process part shown in FIG. 図1に示した文書照合処理部に備えられる交点算出部における処理の流れを示すフロー図である。It is a flowchart which shows the flow of a process in the intersection calculation part with which the document collation process part shown in FIG. 1 is equipped. 図1に示した文書照合処理部に備えられる交点算出部の概略構成を示すブロック図である。It is a block diagram which shows schematic structure of the intersection calculation part with which the document collation process part shown in FIG. 1 is equipped. 入力画像データの一例を示す説明図である。It is explanatory drawing which shows an example of input image data. 図13に示した入力画像データに対して水平方向および垂直方向のライン画像の検出を行う場合の処理を説明するための説明図である。It is explanatory drawing for demonstrating the process in the case of detecting the line image of a horizontal direction and a vertical direction with respect to the input image data shown in FIG. 図13に示した入力画像データに対する水平方向および垂直方向のライン画像の検出結果、および交点の算出結果を示す説明図である。It is explanatory drawing which shows the detection result of the horizontal and vertical line image with respect to the input image data shown in FIG. 13, and the calculation result of an intersection. (a)〜(c)は、入力画像データにおける左上から右下へ斜め方向に伸びるライン画像を検出する場合の、各画素へのラベルの割り付け方法を示す説明図である。(A)-(c) is explanatory drawing which shows the allocation method of the label to each pixel in the case of detecting the line image extended in the diagonal direction from upper left to lower right in input image data. (a)〜(c)は、入力画像データにおける右上から左下へ斜め方向に伸びるライン画像を検出する場合の、各画素へのラベルの割り付け方法を示す説明図である。(A)-(c) is explanatory drawing which shows the allocation method of the label to each pixel in the case of detecting the line image extended in the diagonal direction from the upper right to the lower left in input image data. 入力画像データの一例を示す説明図である。It is explanatory drawing which shows an example of input image data. 図18に示した入力画像データに対して左上から右下に伸びるライン画像の検出処理を行う場合のラベル付けの手順を示す説明図である。It is explanatory drawing which shows the procedure of labeling in the case of performing the detection process of the line image extended from upper left to lower right with respect to the input image data shown in FIG. 図18に示した入力画像データに対して右上から左下に伸びるライン画像の検出処理を行う場合のラベル付けの手順を示す説明図である。It is explanatory drawing which shows the procedure of the labeling in the case of performing the detection process of the line image extended from upper right to lower left with respect to the input image data shown in FIG. 図18に示した入力画像データに対する斜め方向のライン画像の検出結果、および交点の算出結果を示す説明図である。It is explanatory drawing which shows the detection result of the diagonal line image with respect to the input image data shown in FIG. 18, and the calculation result of an intersection. 図1に示した文書照合処理部に備えられる交点算出部の変形例を示すブロック図である。It is a block diagram which shows the modification of the intersection calculation part with which the document collation process part shown in FIG. 1 is equipped. 入力画像データの一例を示す説明図である。It is explanatory drawing which shows an example of input image data. 図23に示した入力画像データに対して左上から右下に伸びるライン画像の検出処理(ラインの開始・終了座標使用)を行う場合のラベル付けの手順を示す説明図である。FIG. 24 is an explanatory diagram illustrating a labeling procedure in the case of performing detection processing of line images extending from upper left to lower right (using line start / end coordinates) for the input image data illustrated in FIG. 23. 図23に示した入力画像データに対して右上から左下に伸びるライン画像の検出処理(ラインの開始・終了座標使用)を行う場合のラベル付けの手順を示す説明図である。FIG. 24 is an explanatory diagram illustrating a labeling procedure in a case where detection processing of line images extending from upper right to lower left (using line start / end coordinates) is performed on the input image data illustrated in FIG. 23. 本発明の一実施形態にかかる画像処理装置の変形例を示すブロック図である。It is a block diagram which shows the modification of the image processing apparatus concerning one Embodiment of this invention. 本発明の一実施形態にかかる画像処理システムの構成を示す説明図である。It is explanatory drawing which shows the structure of the image processing system concerning one Embodiment of this invention. 本発明の一実施形態にかかる画像処理システムの一構成例を示すブロック図である。1 is a block diagram illustrating a configuration example of an image processing system according to an embodiment of the present invention. 本発明の一実施形態にかかる画像処理システムの他の構成例を示すブロック図である。It is a block diagram which shows the other structural example of the image processing system concerning one Embodiment of this invention. (a)〜(d)は、本発明の一実施形態にかかる画像処理装置の特徴量算出部によって特徴量を算出する際に抽出される注目特徴点および周辺特徴点の組み合わせの一例を示す説明図である。(A)-(d) is description which shows an example of the combination of the attention feature point and peripheral feature point which are extracted when the feature-value calculation part of the image processing apparatus concerning one Embodiment of this invention calculates a feature-value. FIG. (a)〜(d)は、本発明の一実施形態にかかる画像処理装置の特徴量算出部によって特徴量を算出する際に抽出される注目特徴点および周辺特徴点の組み合わせの一例を示す説明図である。(A)-(d) is description which shows an example of the combination of the attention feature point and peripheral feature point which are extracted when the feature-value calculation part of the image processing apparatus concerning one Embodiment of this invention calculates a feature-value. FIG. 図1に示した文書照合処理部に備えられる特徴点算出部の変形例を示すブロック図である。It is a block diagram which shows the modification of the feature point calculation part with which the document collation process part shown in FIG. 1 is equipped. 図32に示した特徴点算出部における傾き検知部で行われるエッジ検出処理の一例を説明するための説明図である。FIG. 33 is an explanatory diagram for describing an example of edge detection processing performed by an inclination detection unit in the feature point calculation unit illustrated in FIG. 32. 図32に示した特徴点算出部における傾き検知部で用いられる正接−角度テーブルの一例を示す説明図である。It is explanatory drawing which shows an example of the tangent-angle table used by the inclination detection part in the feature point calculation part shown in FIG. 図32に示した特徴点算出部における傾き検知部で行われるエッジ検出処理の一例を説明するための説明図である。FIG. 33 is an explanatory diagram for describing an example of edge detection processing performed by an inclination detection unit in the feature point calculation unit illustrated in FIG. 32. 図32に示した特徴点算出部における傾き検知部で行われるエッジ検出処理に用いられるエッジ検知用フィルタの一例を示す説明図である。FIG. 33 is an explanatory diagram illustrating an example of an edge detection filter used in edge detection processing performed by an inclination detection unit in the feature point calculation unit illustrated in FIG. 32. 図32に示した特徴点算出部における傾き検知部で行われるエッジ検出処理の一例を説明するための説明図である。FIG. 33 is an explanatory diagram for describing an example of edge detection processing performed by an inclination detection unit in the feature point calculation unit illustrated in FIG. 32. 図32に示した特徴点算出部における傾き補正処理部で行われる傾き補正処理の一例を説明するための説明図である。FIG. 33 is an explanatory diagram for describing an example of an inclination correction process performed by an inclination correction processing unit in the feature point calculation unit illustrated in FIG. 32. 図32に示した特徴点算出部における処理の流れを示すフロー図である。It is a flowchart which shows the flow of a process in the feature point calculation part shown in FIG. 図1に示した文書照合処理部に備えられる特徴点算出部の変形例を示すブロック図である。It is a block diagram which shows the modification of the feature point calculation part with which the document collation process part shown in FIG. 1 is equipped. (a)および(b)は図40に示した特徴点算出部における膨張処理部で行われる膨張処理を説明するための説明図である。(A) And (b) is explanatory drawing for demonstrating the expansion process performed in the expansion process part in the feature point calculation part shown in FIG. (a)および(b)は図40に示した特徴点算出部における縮退処理部で行われる縮退処理を説明するための説明図である。(A) And (b) is explanatory drawing for demonstrating the reduction process performed in the reduction process part in the feature point calculation part shown in FIG. 図40に示した特徴点算出部における処理の流れを示すフロー図である。It is a flowchart which shows the flow of a process in the feature point calculation part shown in FIG. 図1に示した文書照合処理部に備えられる特徴点算出部の変形例を示すブロック図である。It is a block diagram which shows the modification of the feature point calculation part with which the document collation process part shown in FIG. 1 is equipped. 図44に示した特徴点算出部における処理の流れを示すフロー図である。It is a flowchart which shows the flow of a process in the feature point calculation part shown in FIG. 図23に示した入力画像データに対する斜め方向のライン画像の検出結果、および交点の算出結果を示す説明図である。It is explanatory drawing which shows the detection result of the diagonal line image with respect to the input image data shown in FIG. 23, and the calculation result of an intersection. 斜め方向のライン画像の検出に関して、右上から左下に伸びるライン画像の検出処理を例として、それぞれの方法(ラベルカウント使用、ラインの開始・終了座標間の距離使用)による結果の違いを示す説明図である。Explanatory drawing which shows the difference in the result by each method (use of label count, distance use between the start and end coordinates of a line) regarding the detection of the line image in the diagonal direction, taking the detection process of the line image extending from the upper right to the lower left as an example It is. 図1に示した文書照合処理部に備えられる交点算出部において、斜め方向に伸びるライン画像を検出する場合の各画素へのラベルの割り付け方法の一例を示す説明図である。It is explanatory drawing which shows an example of the allocation method of the label to each pixel in the case of detecting the line image extended in the diagonal direction in the intersection calculation part with which the document collation process part shown in FIG. 1 is equipped. 図1に示した文書照合処理部に備えられる交点算出部において、斜め方向に伸びるライン画像を検出する場合の各画素へのラベルの割り付け方法の一例を示す説明図である。It is explanatory drawing which shows an example of the allocation method of the label to each pixel in the case of detecting the line image extended in the diagonal direction in the intersection calculation part with which the document collation process part shown in FIG. 1 is equipped. (a)は図18に示した画像が適切に読み取られた場合にこの画像を実施形態1に示したラベル付け方法でラベル付けした結果を示す説明図である。(b)は図18に示した画像を読み取る際に読み取り誤差が生じた場合にこの読み取り誤差が生じた画像を実施形態1に示したラベル付け方法でラベル付けした結果を示す説明図である。(c)は図18に示した画像を読み取る際に読み取り誤差が生じた場合に、この読み取り誤差が生じた画像を実施形態4に示したラベル付け方法でラベル付けした結果を示す説明図である。(A) is explanatory drawing which shows the result of having labeled this image with the labeling method shown in Embodiment 1 when the image shown in FIG. 18 is read appropriately. FIG. 19B is an explanatory diagram illustrating a result of labeling the image in which the reading error occurs when the image illustrated in FIG. 18 is read by the labeling method illustrated in the first embodiment. FIG. 19C is an explanatory diagram illustrating a result of labeling an image in which the reading error has occurred by the labeling method illustrated in the fourth embodiment when a reading error occurs when the image illustrated in FIG. 18 is read. . 図46でのラインの交点算出時に、直線(線分)の式を用いた場合の説明図である。FIG. 47 is an explanatory diagram when a straight line (line segment) formula is used when calculating the intersection of lines in FIG. 46;

符号の説明Explanation of symbols

1 デジタルカラー複合機(画像処理装置、画像形成装置、画像読取装置、画像処理装置)
1’ フラットベッドスキャナ(画像処理装置、画像読取装置)
2 カラー画像入力装置(入力データ取得部、スキャナ装置)
3,3’ カラー画像処理装置(画像処理装置)
4 カラー画像出力装置(画像出力部)
5,51 通信装置(入力データ取得部、送信装置)
6 操作パネル(処理入力部)
7,7a,7b 制御部
8,8a,8b メモリ(記憶部)
13,13a,13b 文書照合処理部(類似度算出部)
31,31b〜31f 特徴点算出部
32 特徴量算出部
33 投票処理部(類似度算出部)
34 類似度判定処理部
37 登録処理部
41 信号変換処理部(無彩化処理部)
42 解像度変換部
43 MTF処理部
44 2値化処理部
45 交点算出部
46 重心算出部
47 傾き検知部
48 傾き補正処理部
50 サーバー装置
52 膨張処理部
53 縮退処理部
54 欠落補正部
100 画像処理システム
103 ハッシュテーブル
1 Digital color MFP (image processing device, image forming device, image reading device, image processing device)
1 'Flatbed scanner (image processing device, image reading device)
2 Color image input device (input data acquisition unit, scanner device)
3,3 'color image processing device (image processing device)
4 color image output device (image output unit)
5, 51 Communication device (input data acquisition unit, transmission device)
6 Operation panel (Processing input section)
7, 7a, 7b Control unit 8, 8a, 8b Memory (storage unit)
13, 13a, 13b Document collation processing unit (similarity calculation unit)
31, 31b to 31f Feature point calculation unit 32 Feature amount calculation unit 33 Voting processing unit (similarity calculation unit)
34 similarity determination processing unit 37 registration processing unit 41 signal conversion processing unit (achromatic processing unit)
42 Resolution Conversion Unit 43 MTF Processing Unit 44 Binarization Processing Unit 45 Intersection Calculation Unit 46 Center of Gravity Calculation Unit 47 Inclination Detection Unit 48 Inclination Correction Processing Unit 50 Server Device 52 Expansion Processing Unit 53 Degeneration Processing Unit 54 Missing Correction Unit 100 Image Processing System 103 Hash table

Claims (14)

入力画像データの特徴点を算出する特徴点算出部と、上記特徴点算出部が算出した特徴点同士の相対位置に基づいて上記入力画像データの特徴量を算出する特徴量算出部とを備えた画像処理装置であって、
上記特徴点算出部は、
上記入力画像データから、上記入力画像データにおける水平方向に対して右下がりに傾斜した第1方向に延伸するライン画像、上記入力画像データにおける水平方向に対して左下がりに傾斜した第2方向に延伸するライン画像、水平方向に延伸するライン画像、および垂直方向に延伸するライン画像を検出するライン検出部と、
上記第1方向に延伸するライン画像と上記第2方向に延伸するライン画像との交点、および水平方向に延伸するライン画像と垂直方向に延伸するライン画像との交点を上記特徴点として算出する交点算出部とを備えており、
上記ライン検出部は、
水平方向に延伸するライン画像および垂直方向に延伸するライン画像の検出処理を、上記第1方向に延伸するライン画像および第2方向に延伸するライン画像の検出処理よりも先に行い、
上記交点算出部は、
水平方向に延伸するライン画像と垂直方向に延伸するライン画像との交点の数が所定値以上である場合には、上記第1方向に延伸するライン画像および第2方向に延伸するライン画像の検出処理を行わないことを特徴とする画像処理装置。
A feature point calculation unit that calculates a feature point of the input image data; and a feature amount calculation unit that calculates a feature amount of the input image data based on a relative position between the feature points calculated by the feature point calculation unit. An image processing apparatus,
The feature point calculation unit
A line image extending in a first direction inclined downward to the right with respect to the horizontal direction in the input image data from the input image data, and extending in a second direction inclined downward to the left with respect to the horizontal direction in the input image data. A line detection unit that detects a line image that extends, a line image that extends in a horizontal direction, and a line image that extends in a vertical direction ;
The intersection point between the line image extending in the first direction and the line image extending in the second direction, and the intersection point between the line image extending in the horizontal direction and the line image extending in the vertical direction are calculated as the feature points. A calculation unit ,
The line detector is
The detection process of the line image extending in the horizontal direction and the line image extending in the vertical direction is performed prior to the detection process of the line image extending in the first direction and the line image extending in the second direction.
The intersection calculation unit
Detection of the line image extending in the first direction and the line image extending in the second direction when the number of intersections between the line image extending in the horizontal direction and the line image extending in the vertical direction is equal to or greater than a predetermined value. An image processing apparatus characterized by not performing processing.
入力画像データの特徴点を算出する特徴点算出部と、上記特徴点算出部が算出した特徴点同士の相対位置に基づいて上記入力画像データの特徴量を算出する特徴量算出部とを備えた画像処理装置であって、A feature point calculation unit that calculates a feature point of the input image data; and a feature amount calculation unit that calculates a feature amount of the input image data based on a relative position between the feature points calculated by the feature point calculation unit. An image processing apparatus,
上記特徴点算出部は、The feature point calculation unit
上記入力画像データから、上記入力画像データにおける水平方向に対して右下がりに傾斜した第1方向に延伸するライン画像、上記入力画像データにおける水平方向に対して左下がりに傾斜した第2方向に延伸するライン画像、水平方向に延伸するライン画像、および垂直方向に延伸するライン画像を検出するライン検出部と、A line image extending in a first direction inclined downward to the right with respect to the horizontal direction in the input image data from the input image data, and extending in a second direction inclined downward to the left with respect to the horizontal direction in the input image data. A line detection unit that detects a line image that extends, a line image that extends in a horizontal direction, and a line image that extends in a vertical direction;
上記第1方向に延伸するライン画像と上記第2方向に延伸するライン画像との交点、および水平方向に延伸するライン画像と垂直方向に延伸するライン画像との交点を上記特徴点として算出する交点算出部と、An intersection point between the line image extending in the first direction and the line image extending in the second direction, and the intersection point between the line image extending in the horizontal direction and the line image extending in the vertical direction are calculated as the feature points. A calculation unit;
ユーザからの指示入力を受け付ける指示入力部とを備えており、An instruction input unit that receives an instruction input from the user,
上記交点算出部は、The intersection calculation unit
上記指示入力部に対するユーザの指示入力に応じて、上記第1方向に延伸するライン画像および第2方向に延伸するライン画像の検出処理を行うか否かを決定することを特徴とする画像処理装置。An image processing apparatus that determines whether or not to perform detection processing of the line image extending in the first direction and the line image extending in the second direction in response to a user instruction input to the instruction input unit. .
上記交点算出部は、上記第1方向に延伸するライン画像と上記第2方向に延伸するライン画像との交点が互いに隣接する複数画素からなる場合に、これら複数画素の中心座標、重心座標、またはこれら複数画素からなる領域における所定位置の座標を上記特徴点として算出することを特徴とする請求項1または2に記載の画像処理装置。 When the intersection of the line image extending in the first direction and the line image extending in the second direction is composed of a plurality of adjacent pixels, the intersection calculation unit, the center coordinates of the plurality of pixels, the barycentric coordinates, or the image processing apparatus according to the coordinates of the predetermined position in the region consisting of the plurality of pixels to claim 1 or 2, characterized in that calculated as a point above features. 上記交点算出部は、
上記第1方向に延伸するライン画像に対応する直線の式と、上記第2方向に延伸するライン画像に対応する直線の式とを算出し、これら2つの直線の式に基づいて両直線の交点を算出し、算出した交点に対応する座標を上記特徴点として算出することを特徴とする請求項1または2に記載の画像処理装置。
The intersection calculation unit
A straight line expression corresponding to the line image extending in the first direction and a straight line expression corresponding to the line image extending in the second direction are calculated, and an intersection of both straight lines is calculated based on the two straight line expressions. calculating the image processing apparatus according to coordinates corresponding to the calculated intersection point to claim 1 or 2, characterized in that calculated as a point above features.
登録画像を識別するための識別情報を登録画像が有する特徴量に関連付けて記憶する記憶部と、
上記特徴量算出部が入力画像データから算出した特徴量と上記記憶部に記憶されている登録画像の特徴量とに基づいて入力画像と登録画像との類似性を判定する類似判定部とを備えていることを特徴とする請求項1からのいずれか1項に記載の画像処理装置。
A storage unit that stores identification information for identifying the registered image in association with the feature amount of the registered image;
A similarity determination unit that determines the similarity between the input image and the registered image based on the feature amount calculated from the input image data by the feature amount calculation unit and the feature amount of the registered image stored in the storage unit; the image processing apparatus according to claim 1, any one of 4, characterized in that is.
上記入力画像データに含まれる原稿画像の傾き角度を検出する傾き検知部と、
上記傾き検知部の検出した傾き角度に基づいて上記原稿画像の傾きを補正する傾き補正部とを備え、上記傾き補正後の入力画像データを上記交点算出部に入力することを特徴とする請求項1からのいずれか1項に記載の画像処理装置。
An inclination detection unit for detecting an inclination angle of the document image included in the input image data;
An inclination correction unit that corrects an inclination of the document image based on an inclination angle detected by the inclination detection unit, and the input image data after the inclination correction is input to the intersection calculation unit. The image processing apparatus according to any one of 1 to 5 .
上記入力画像データにおける注目画素および当該注目画素の周辺画素に含まれる黒画素の数をカウントし、カウント値が第1閾値以上である注目画素を黒画素とし、カウント値が第1閾値未満である注目画素を白画素とする膨張処理を行う膨張処理部と、
膨張処理後の入力画像データにおける注目画素および当該注目画素の周辺画素に含まれる白画素の数をカウントし、カウント値が第2閾値以上である注目画素を白画素とし、カウント値が第2閾値未満である注目画素とする縮退処理を行う縮退処理部とを備え、
縮退処理後の入力画像データを上記交点算出部に入力することを特徴とする請求項1からのいずれか1項に記載の画像処理装置。
The number of black pixels included in the pixel of interest and the peripheral pixels of the pixel of interest in the input image data is counted, and a pixel of interest having a count value equal to or greater than the first threshold is set as a black pixel, and the count value is less than the first threshold. An expansion processing unit that performs expansion processing with the target pixel as a white pixel;
The number of white pixels included in the target pixel and the peripheral pixels of the target pixel in the input image data after the dilation processing is counted, and the target pixel whose count value is equal to or larger than the second threshold is set as the white pixel, and the count value is the second threshold. A reduction processing unit that performs a reduction process with the target pixel being less than
The image processing apparatus according to any one of the input image data after the reduction process of claims 1, wherein the input to the intersection calculation unit 6.
請求項1からのいずれか1項に記載の画像処理装置と、入力画像データに応じた画像を記録材上に形成する画像出力部とを備えていることを特徴とする画像形成装置。 An image processing apparatus according to any one of claims 1 to 7, the image forming apparatus characterized by comprising an image output section for forming on a recording material an image corresponding to input image data. 入力画像データの特徴点を算出し、算出した特徴点同士の相対位置に基づいて上記入力画像データの特徴量を算出する画像処理方法であって、
上記入力画像データから、水平方向に延伸するライン画像、および垂直方向に延伸するライン画像を検出する第1ライン検出工程と、
上記水平方向に延伸するライン画像と上記垂直方向に延伸するライン画像との交点を上記特徴点として算出する第1交点算出工程と、
上記入力画像データから、上記入力画像データにおける水平方向に対して右下がりに傾斜した第1方向に延伸するライン画像、および上記入力画像データにおける水平方向に対して左下がりに傾斜した上記第1方向とは異なる第2方向に延伸するライン画像を検出する第2ライン検出工程と、
上記第1方向に延伸するライン画像と上記第2方向に延伸するライン画像との交点を上記特徴点として算出する第2交点算出工程とを含み、
上記第1ライン検出工程および上記第1交点算出工程を上記第2ライン検出工程よりも先に行い、水平方向に延伸するライン画像と垂直方向に延伸するライン画像との交点の数が所定値以上である場合には上記第2ライン検出工程および上記第2交点算出工程を行わないことを特徴とする画像処理方法。
An image processing method for calculating feature points of input image data and calculating feature amounts of the input image data based on relative positions of the calculated feature points,
A first line detecting step for detecting a line image extending in the horizontal direction and a line image extending in the vertical direction from the input image data;
A first intersection calculation step of calculating an intersection of the line image extending in the horizontal direction and the line image extending in the vertical direction as the feature point;
A line image extending in a first direction inclined downward to the right with respect to the horizontal direction in the input image data from the input image data , and the first direction inclined downward to the left with respect to the horizontal direction in the input image data. A second line detection step of detecting a line image extending in a second direction different from
Look including a second intersection point calculation step of calculating the intersection of the line image extending in the line image and the second direction extending in the first direction as a point above features,
The first line detection step and the first intersection calculation step are performed before the second line detection step, and the number of intersections between the line image extending in the horizontal direction and the line image extending in the vertical direction is equal to or greater than a predetermined value. In the case of the image processing method, the second line detection step and the second intersection calculation step are not performed .
入力画像データの特徴点を算出し、算出した特徴点同士の相対位置に基づいて上記入力画像データの特徴量を算出する画像処理方法であって、An image processing method for calculating feature points of input image data and calculating feature amounts of the input image data based on relative positions of the calculated feature points,
上記入力画像データから、水平方向に延伸するライン画像、および垂直方向に延伸するライン画像を検出する第1ライン検出工程と、A first line detecting step for detecting a line image extending in the horizontal direction and a line image extending in the vertical direction from the input image data;
上記水平方向に延伸するライン画像と上記垂直方向に延伸するライン画像との交点を上記特徴点として算出する第1交点算出工程と、A first intersection calculation step of calculating an intersection of the line image extending in the horizontal direction and the line image extending in the vertical direction as the feature point;
上記入力画像データから、上記入力画像データにおける水平方向に対して右下がりに傾斜した第1方向に延伸するライン画像、および上記入力画像データにおける水平方向に対して左下がりに傾斜した上記第1方向とは異なる第2方向に延伸するライン画像を検出する第2ライン検出工程と、A line image extending in a first direction inclined downward to the right with respect to the horizontal direction in the input image data from the input image data, and the first direction inclined downward to the left with respect to the horizontal direction in the input image data. A second line detection step of detecting a line image extending in a second direction different from
上記第1方向に延伸するライン画像と上記第2方向に延伸するライン画像との交点を上記特徴点として算出する第2交点算出工程と、A second intersection calculation step of calculating an intersection of the line image extending in the first direction and the line image extending in the second direction as the feature point;
ユーザからの指示入力を受け付ける指示入力工程とを含み、Including an instruction input process for receiving an instruction input from a user,
上記指示入力工程で受け付けたユーザの指示入力に応じて、上記第2ライン検出工程および上記第2交点算出工程を行うか否かを決定することを特徴とする画像処理方法。  An image processing method comprising: determining whether or not to perform the second line detection step and the second intersection calculation step in accordance with a user instruction input received in the instruction input step.
画像処理装置と、この画像処理装置に対して通信可能に接続されたサーバー装置とを備え、入力画像データの特徴点を算出する特徴点算出部と、上記特徴点算出部が算出した特徴点同士の相対位置に基づいて上記入力画像データの特徴量を算出する特徴量算出部とが上記画像処理装置または上記サーバー装置に備えられるか、あるいは上記画像処理装置と上記サーバー装置とに分散して備えられている画像処理システムであって、
上記特徴点算出部は、
上記入力画像データから、上記入力画像データにおける水平方向に対して右下がりに傾斜した第1方向に延伸するライン画像、上記入力画像データにおける水平方向に対して左下がりに傾斜した第2方向に延伸するライン画像、水平方向に延伸するライン画像、および垂直方向に延伸するライン画像を検出するライン検出部と、
上記第1方向に延伸するライン画像と上記第2方向に延伸するライン画像との交点、および水平方向に延伸するライン画像と垂直方向に延伸するライン画像との交点を上記特徴点として算出する交点算出部とを備えており、
上記ライン検出部は、
水平方向に延伸するライン画像および垂直方向に延伸するライン画像の検出処理を、上記第1方向に延伸するライン画像および第2方向に延伸するライン画像の検出処理よりも先に行い、
上記交点算出部は、
水平方向に延伸するライン画像と垂直方向に延伸するライン画像との交点の数が所定値以上である場合には、上記第1方向に延伸するライン画像および第2方向に延伸するライン画像の検出処理を行わないことを特徴とする画像処理システム。
A feature point calculation unit that includes an image processing device and a server device that is communicably connected to the image processing device, calculates feature points of input image data, and feature points calculated by the feature point calculation unit A feature amount calculation unit for calculating a feature amount of the input image data based on the relative position of the image processing device or the server device, or distributed in the image processing device and the server device. An image processing system,
The feature point calculation unit
A line image extending in a first direction inclined downward to the right with respect to the horizontal direction in the input image data from the input image data, and extending in a second direction inclined downward to the left with respect to the horizontal direction in the input image data. A line detection unit that detects a line image that extends, a line image that extends in a horizontal direction, and a line image that extends in a vertical direction ;
The intersection point between the line image extending in the first direction and the line image extending in the second direction, and the intersection point between the line image extending in the horizontal direction and the line image extending in the vertical direction are calculated as the feature points. A calculation unit ,
The line detector is
The detection process of the line image extending in the horizontal direction and the line image extending in the vertical direction is performed prior to the detection process of the line image extending in the first direction and the line image extending in the second direction.
The intersection calculation unit
Detection of the line image extending in the first direction and the line image extending in the second direction when the number of intersections between the line image extending in the horizontal direction and the line image extending in the vertical direction is equal to or greater than a predetermined value. An image processing system characterized by not performing processing.
画像処理装置と、この画像処理装置に対して通信可能に接続されたサーバー装置とを備え、入力画像データの特徴点を算出する特徴点算出部と、上記特徴点算出部が算出した特徴点同士の相対位置に基づいて上記入力画像データの特徴量を算出する特徴量算出部とが上記画像処理装置または上記サーバー装置に備えられるか、あるいは上記画像処理装置と上記サーバー装置とに分散して備えられている画像処理システムであって、
上記特徴点算出部は、
上記入力画像データから、上記入力画像データにおける水平方向に対して右下がりに傾斜した第1方向に延伸するライン画像、上記入力画像データにおける水平方向に対して左下がりに傾斜した第2方向に延伸するライン画像、水平方向に延伸するライン画像、および垂直方向に延伸するライン画像を検出するライン検出部と、
上記第1方向に延伸するライン画像と上記第2方向に延伸するライン画像との交点、および水平方向に延伸するライン画像と垂直方向に延伸するライン画像との交点を上記特徴点として算出する交点算出部
ユーザからの指示入力を受け付ける指示入力部とを備えており、
上記交点算出部は、
上記指示入力部に対するユーザの指示入力に応じて、上記第1方向に延伸するライン画像および第2方向に延伸するライン画像の検出処理を行うか否かを決定することを特徴とする画像処理システム。
A feature point calculation unit that includes an image processing device and a server device that is communicably connected to the image processing device, calculates feature points of input image data, and feature points calculated by the feature point calculation unit A feature amount calculation unit for calculating a feature amount of the input image data based on the relative position of the image processing device or the server device, or distributed in the image processing device and the server device. An image processing system,
The feature point calculation unit
A line image extending in a first direction inclined downward to the right with respect to the horizontal direction in the input image data from the input image data, and extending in a second direction inclined downward to the left with respect to the horizontal direction in the input image data. A line detection unit that detects a line image that extends, a line image that extends in a horizontal direction, and a line image that extends in a vertical direction ;
The intersection point between the line image extending in the first direction and the line image extending in the second direction, and the intersection point between the line image extending in the horizontal direction and the line image extending in the vertical direction are calculated as the feature points. Calculation part ,
An instruction input unit that receives an instruction input from the user,
The intersection calculation unit
An image processing system for determining whether or not to perform detection processing of the line image extending in the first direction and the line image extending in the second direction in response to a user instruction input to the instruction input unit. .
請求項1からのいずれか1項に記載の画像処理装置を動作させるプログラムであって、コンピュータを上記特徴点算出部として機能させるためのプログラム。 A program for operating an image processing apparatus according to any one of claims 1 to 7, a program for causing a computer to function as the feature point calculating unit. 請求項13に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。 A computer-readable recording medium on which the program according to claim 13 is recorded.
JP2008134726A 2007-07-31 2008-05-22 Image processing apparatus, image forming apparatus, image processing method, image processing system, image processing program, and recording medium thereof Active JP4487000B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2008134726A JP4487000B2 (en) 2007-07-31 2008-05-22 Image processing apparatus, image forming apparatus, image processing method, image processing system, image processing program, and recording medium thereof
CN2008101347678A CN101369314B (en) 2007-07-31 2008-07-29 Image processing apparatus, image forming apparatus, image processing system, and image processing method
US12/182,938 US8351707B2 (en) 2007-07-31 2008-07-30 Image processing apparatus, image forming apparatus, image processing system, and image processing method

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2007199975 2007-07-31
JP2007285349 2007-11-01
JP2008134726A JP4487000B2 (en) 2007-07-31 2008-05-22 Image processing apparatus, image forming apparatus, image processing method, image processing system, image processing program, and recording medium thereof

Publications (2)

Publication Number Publication Date
JP2009134686A JP2009134686A (en) 2009-06-18
JP4487000B2 true JP4487000B2 (en) 2010-06-23

Family

ID=40866481

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008134726A Active JP4487000B2 (en) 2007-07-31 2008-05-22 Image processing apparatus, image forming apparatus, image processing method, image processing system, image processing program, and recording medium thereof

Country Status (2)

Country Link
JP (1) JP4487000B2 (en)
CN (1) CN101369314B (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012212287A (en) * 2011-03-31 2012-11-01 Dainippon Printing Co Ltd Individual identification device, individual identification method, and program
CN103577816A (en) * 2012-07-24 2014-02-12 夏普株式会社 Image processing device and image processing method
JP2019012040A (en) * 2017-06-30 2019-01-24 ブラザー工業株式会社 Control device and control method
JP2019102047A (en) * 2017-11-28 2019-06-24 Thk株式会社 Image processor, mobile robot control system, and mobile robot control method
CN110312070B (en) * 2019-04-23 2021-08-24 维沃移动通信有限公司 Image processing method and terminal
CN112560539B (en) * 2019-09-10 2024-08-13 中国电子技术标准化研究院 Resolution testing method, device and system of iris acquisition equipment
CN114654093A (en) * 2022-03-07 2022-06-24 刘国林 Dynamic parameter big data visual analysis system and method

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3639283B2 (en) * 2003-07-14 2005-04-20 株式会社東芝 Image processing apparatus and image processing method
WO2006092957A1 (en) * 2005-03-01 2006-09-08 Osaka Prefecture University Public Corporation Document/image searching method and program, and document/image recording and searching device

Also Published As

Publication number Publication date
CN101369314A (en) 2009-02-18
JP2009134686A (en) 2009-06-18
CN101369314B (en) 2012-05-16

Similar Documents

Publication Publication Date Title
US8351707B2 (en) Image processing apparatus, image forming apparatus, image processing system, and image processing method
JP4565015B2 (en) Image processing apparatus, image forming apparatus, image processing system, image processing program, and recording medium thereof
JP4362528B2 (en) Image collation apparatus, image collation method, image data output processing apparatus, program, and recording medium
JP4469885B2 (en) Image collation apparatus, image collation method, image data output processing apparatus, program, and recording medium
JP4604100B2 (en) Image processing method, image processing apparatus, image forming apparatus, program, and storage medium
JP4362538B2 (en) Image processing apparatus, image forming apparatus, image transmitting apparatus, image reading apparatus, image processing system, image processing method, image processing program, and recording medium thereof
US8208163B2 (en) Image processing apparatus, image forming apparatus, image processing system, and image processing method
JP4486987B2 (en) Image data output processing apparatus, image data output processing method, program, and recording medium
JP4487000B2 (en) Image processing apparatus, image forming apparatus, image processing method, image processing system, image processing program, and recording medium thereof
US8300944B2 (en) Image processing method, image processing apparatus, image reading apparatus, image forming apparatus, image processing system, and storage medium
US8180159B2 (en) Image processing apparatus, image forming apparatus, image processing system, and image processing method
JP2009031876A (en) Image processor, image forming device and image reader therewith, image processing method, image processing program and recording medium recording image processing program
JP4913094B2 (en) Image collation method, image collation apparatus, image data output processing apparatus, program, and storage medium
JP4362537B2 (en) Image processing apparatus, image forming apparatus, image transmitting apparatus, image reading apparatus, image processing system, image processing method, image processing program, and recording medium thereof
US8184912B2 (en) Image processing apparatus, image forming apparatus, image processing system, and image processing method
JP4361946B2 (en) Image processing apparatus, image processing method, image processing program, and recording medium storing the program
US7986839B2 (en) Image processing method, image processing apparatus, image forming apparatus, and storage medium
JP4487003B2 (en) Image data output processing apparatus, image data output processing method, program, and recording medium
JP4378408B2 (en) Image processing apparatus, image reading apparatus, and image forming apparatus
JP2008245147A (en) Image processor, image reader, image forming apparatus, image processing method, computer program and recording medium
JP2010130634A (en) Image processing apparatus, image data output processing device, image processing method, program and recording medium therefor
JP2009071565A (en) Image processor
JP2010157878A (en) Image processor, image data output processor, image processing method, program and recording medium thereof

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091116

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091124

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100121

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

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

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4487000

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130402

Year of fee payment: 3