(57)【特許請求の範囲】
【請求項１】
２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出し、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出し、算出した特徴量に基づいて画像同士の類似判定を行う画像処理方法において、
特定した画素領域の画素の個数を計数し、
特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断し、
特定した画素領域の画素の個数が前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに特徴点の数を計数し、
計数した特徴点の数が第２の閾値以下であるか否かを判定し、
計数した特徴点の数が第２の閾値を超えると判定した場合は前記画素領域から抽出した特徴点に基づいて前記特徴量を算出し、
計数した特徴点の数が第２の閾値以下であると判定した場合は前記第１の閾値を変更することを特徴とする画像処理方法。
【請求項２】
２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出し、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出し、算出した特徴量に基づいて画像同士の類似判定を行う画像処理方法において、
特定した画素領域の画素の個数を計数し、
特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断する際、複数の異なる第１の閾値を設定し、
それぞれ第１の閾値以上であるか否かを判断し、
前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに、複数の異なる第１の閾値毎に特徴点の数を計数し、
計数した特徴点の数が最多となる画素領域から抽出した特徴点に基づいて特徴量を算出することを特徴とする画像処理方法。
【請求項３】
２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出し、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出し、算出した特徴量に基づいて画像同士の類似判定を行う画像処理方法において、
原稿画像の領域を複数に分割し、
分割された各々の領域に対して第１の閾値を設定し、
分割されたそれぞれの領域において、特定した画素領域の画素の個数を計数し、
分割された領域において特定した画素領域の画素の個数が、分割された領域における第１の閾値以上であるか否かを判断し、
分割された領域において特定した画素領域の画素の個数が前記分割された領域における第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに特徴点の数を計数し、
計数した特徴点の数が第２の閾値以下であるか否かを判定し、
計数した特徴点の数が第２の閾値を超えると判定した場合は前記画素領域から抽出した特徴点に基づいて前記特徴量を算出し、
計数した特徴点の数が第２の閾値以下であると判定した場合は前記第１の閾値を変更することを特徴とする画像処理方法。
【請求項４】
２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出し、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出し、算出した特徴量に基づいて画像同士の類似判定を行う画像処理方法において、
特定した画素領域の画素の個数を計数し、
特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断し、
特定した画素領域の画素の個数が第１の閾値以上であると判断した場合、前記画素領域の特徴点を抽出し、
抽出した特徴点の周辺領域内に位置する近傍の特徴点を決定し、
決定した近傍の特徴点の点数を計数し、
計数した特徴点の点数が第２の閾値以下であるか否かを判定し、
計数した特徴点の点数が第２の閾値を超えると判定した場合は前記近傍の特徴点に基づいて前記特徴量を算出し、
計数した特徴点の点数が前記第２の閾値以下であると判定した場合は前記第１の閾値、または、前記第１の閾値並びに前記周辺領域の範囲を変更することを特徴とする画像処理方法。
【請求項５】
２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出し、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出し、算出した特徴量に基づいて画像同士の類似判定を行う画像処理方法において、
特定した画素領域の画素の個数を計数し、
特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断する際、複数の異なる第１の閾値を設定し、
それぞれ第１の閾値以上であるか否かを判断し、
前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに、複数の異なる第１の閾値毎に特徴点の数を計数し、
計数した特徴点の数が最多となる画素領域の特徴点を抽出し、
抽出した特徴点の周辺領域内に位置する近傍の特徴点を決定し、
決定した近傍の特徴点の点数を計数し、
計数した特徴点の点数が第２の閾値以下であるか否かを判定し、
計数した特徴点の点数が第２の閾値を超えると判定した場合は前記近傍の特徴点に基づいて前記特徴量を算出し、
計数した特徴点の点数が第２の閾値以下であると判定した場合は前記周辺領域の範囲を変更することを特徴とする画像処理方法。
【請求項６】
前記周辺領域は、２値の画像の一又は複数の画素からなる画素ブロックで構成され、前記周辺領域の範囲の変更は、前記画素ブロックのサイズ又はブロック数を変更することにより行うことを特徴とする請求項４又は５に記載の画像処理方法。
【請求項７】
２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出し、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出し、算出した特徴量に基づいて画像同士の類似判定を行う画像処理装置において、
特定した画素領域の画素の個数を計数する手段と、
特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断する手段と、
特定した画素領域の画素の個数が前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに特徴点の数を計数する手段と、
計数した特徴点の数が第２の閾値以下であるか否かを判定する手段と
を備え、
計数した特徴点の数が第２の閾値を超えると判定した場合は前記画素領域から抽出した特徴点に基づいて前記特徴量を算出し、計数した特徴点の数が第２の閾値以下であると判定した場合は前記第１の閾値を変更するようにしてあることを特徴とする画像処理装置。    
【請求項８】
２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出し、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出し、算出した特徴量に基づいて画像同士の類似判定を行う画像処理装置において、
特定した画素領域の画素の個数を計数する手段と、
特定した画素領域の個数が第１の閾値以上であるか否かを判断する際、複数の異なる第１の閾値を設定し、それぞれ第１の閾値以上であるか否かを判断する判断手段と、
前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに、複数の異なる第１の閾値毎に特徴点の数を計数する手段と
を備え、
計数した特徴点の数が最多となる画素領域から抽出した特徴点に基づいて特徴量を算出するようにしてあることを特徴とする画像処理装置。
【請求項９】
２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出し、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出し、算出した特徴量に基づいて画像同士の類似判定を行う画像処理装置において、
原稿画像の領域を複数に分割する手段と、
分割した各々の領域に対して第１の閾値を設定する手段と、
分割されたそれぞれの領域において、特定した画素領域の画素の個数を計数する手段と、
分割された領域において特定した画素領域の画素の個数が、分割された領域における第１の閾値以上であるか否かを判断する手段と、
分割された領域において特定した画素領域の画素の個数が前記分割された領域における第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに特徴点の数を計数する手段と、
計数した特徴点の数が第２の閾値以下であるか否かを判定する手段と
を備え、
計数した特徴点の数が第２の閾値を超えると判定した場合は前記画素領域から抽出した特徴点に基づいて前記特徴量を算出し、計数した特徴点の数が第２の閾値以下であると判定した場合は前記第１の閾値を変更するようにしてあることを特徴とする画像処理装置。    
【請求項１０】
２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出し、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出し、算出した特徴量に基づいて画像同士の類似判定を行う画像処理装置において、
特定した画素領域の画素の個数を計数する手段と、
特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断する手段と、
特定した画素領域の画素の個数が第１の閾値以上であると判断した場合、前記画素領域の特徴点を抽出する手段と、
抽出した特徴点の周辺領域内に位置する近傍の特徴点を決定する手段と、
決定した近傍の特徴点の点数を計数する手段と、
計数した特徴点の点数が第２の閾値以下であるか否かを判定する手段と
を備え、
計数した特徴点の点数が前記第２の閾値を超えると判定した場合は前記近傍の特徴点に基づいて前記特徴量を算出し、計数した特徴点の点数が前記第２の閾値以下であると判定した場合は前記第１の閾値、または前記第１の閾値並びに前記周辺領域の範囲を変更するようにしてあることを特徴とする画像処理装置。
【請求項１１】
２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出し、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出し、算出した特徴量に基づいて画像同士の類似判定を行う画像処理装置において、
特定した画素領域の画素の個数を計数する手段と、
特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断する際、複数の異なる第１の閾値を設定し、それぞれ第１の閾値以上であるか否かを判断する判断手段と、  前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに、複数の異なる第１の閾値に特徴点の数を計数する手段と、
計数した特徴点の数が最多となる画素領域の特徴点を抽出する手段と、
抽出した特徴点の周辺領域内に位置する近傍の特徴点を決定する手段と、
決定した近傍の特徴点の点数を計数する手段と、
計数した特徴点の点数が第２の閾値以下であるか否かを判定する手段と
を備え、
計数した特徴点の点数が第２の閾値を超えると判定した場合は前記近傍の特徴点に基づいて前記特徴量を算出し、計数した特徴点の点数が第２の閾値以下であると判定した場合は前記周辺領域の範囲を変更するようにしてあることを特徴とする画像処理装置。
【請求項１２】
前記周辺領域は、２値の画像の一又は複数の画素からなる画素ブロックで構成され、前記周辺領域の範囲の変更は、前記画素ブロックのサイズ又はブロック数を変更することにより行うようにしてあることを特徴とする請求項１０又は１１に記載の画像処理装置。
【請求項１３】
請求項７から１２のいずれか一つに記載の画像処理装置と、
該画像処理装置で処理された画像の形成を行う画像形成手段と
を備えることを特徴とする画像形成装置。
【請求項１４】
コンピュータに、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定させ、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出させ、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出させ、算出した特徴量に基づいて画像同士の類似の判定をさせるコンピュータプログラムにおいて、
コンピュータに、特定した画素領域の画素の個数を計数させるステップと、
コンピュータに、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断させるステップと、
コンピュータに、特定した画素領域の画素の個数が前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに特徴点の数を計数させるステップと、  コンピュータに、計数した特徴点の数が第２の閾値以下であるか否かを判定させるステップと、
コンピュータに、計数した特徴点の数が第２の閾値を超えると判定した場合は前記画素領域から抽出した特徴点に基づいて前記特徴量を算出させるステップと、
コンピュータに、計数した特徴点の数が第２の閾値以下であると判定した場合は前記第１の閾値を変更させるステップと
を実行させることを特徴とするコンピュータプログラム。
【請求項１５】
コンピュータに、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定させ、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出させ、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出させ、算出した特徴量に基づいて画像同士の類似の判定をさせるコンピュータプログラムにおいて、
コンピュータに、特定した画素領域の画素の個数を計数させるステップと、
コンピュータに、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断する際、複数の異なる第１の閾値を設定し、それぞれ第１の閾値以上であるか否かを判断させるステップと、
コンピュータに、前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに、複数の異なる第１の閾値毎に特徴点の数を計数させるステップと、
コンピュータに、計数した特徴点の数が最多となる画素領域から抽出した特徴点に基づいて特徴量を算出させるステップと
を実行させることを特徴とするコンピュータプログラム。
【請求項１６】
コンピュータに、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定させ、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出させ、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出させ、算出した特徴量に基づいて画像同士の類似の判定をさせるコンピュータプログラムにおいて、
コンピュータに、原稿画像の領域を複数に分割させるステップと、
コンピュータに、分割された各々の領域に対して第１の閾値を設定させるステップと、  コンピュータに、分割されたそれぞれの領域において、特定した画素領域の画素の個数を計数させるステップと、
コンピュータに、特定した画素領域の画素の個数が、分割された領域における第１の閾値以上であるか否かを判断させるステップと、
コンピュータに、分割された領域において特定した画素領域の画素の個数が前記設定された第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに特徴点の数を計数させるステップと、
コンピュータに、計数した特徴点の数が第２の閾値以下であるか否かを判定させるステップと、
コンピュータに、計数した特徴点の数が第２の閾値を超えると判定した場合は前記画素領域から抽出した特徴点に基づいて前記特徴量を算出させるステップと、
コンピュータに、計数した特徴点の数が第２の閾値以下であると判定した場合は前記第１の閾値を変更させるステップと
を実行させることを特徴とするコンピュータプログラム。
【請求項１７】
コンピュータに、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定させ、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出させ、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出させ、算出した特徴量に基づいて画像同士の類似の判定をさせるコンピュータプログラムにおいて、
コンピュータに、特定した画素領域の画素の個数を計数させるステップと、
コンピュータに、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断させるステップと、
コンピュータに、特定した画素領域の画素の個数が第１の閾値以上であると判断した場合、前記画素領域の特徴点を抽出させるステップと、
コンピュータに、抽出した特徴点の周辺領域内に位置する近傍の特徴点を決定させるステップと、
コンピュータに、決定した近傍の特徴点の点数を計数させるステップと、
コンピュータに、計数した特徴点の点数が第２の閾値以下であるか否かを判定させるステップと、
コンピュータに、計数した特徴点の点数が前記第２の閾値を超えると判定した場合は前記近傍の特徴点に基づいて前記特徴量を算出させるステップと、
コンピュータに、計数した特徴点の点数が前記第２の閾値以下であると判定した場合は前記第１の閾値、または前記第１の閾値並びに前記周辺領域の範囲を変更させるステップと
を実行させることを特徴とするコンピュータプログラム。
【請求項１８】
コンピュータに、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定させ、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出させ、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出させ、算出した特徴量に基づいて画像同士の類似の判定をさせるコンピュータプログラムにおいて、
コンピュータに、特定した画素領域の画素の個数を計数させるステップと、
コンピュータに、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断する際、複数の異なる第１の閾値を設定し、それぞれ第１の閾値以上であるか否かを判断させるステップと、
コンピュータに、前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに、複数の異なる第１の閾値毎に特徴点の数を計数させるステップと、
コンピュータに、計数した特徴点の数が最多となる画素領域の特徴点を抽出させるステップと、
コンピュータに、抽出した特徴点の周辺領域内に位置する近傍の特徴点を決定させるステップと、
コンピュータに、決定した近傍の特徴点の点数させるステップと、
コンピュータに、計数した特徴点の点数が第２の閾値以下であるか否かを判定させるステップと、
コンピュータに、計数した特徴点の点数が第２の閾値を超えると判定した場合は前記近傍の特徴点に基づいて前記特徴量を算出させるステップと、
コンピュータに、計数した特徴点の点数が第２の閾値以下であると判定した場合は前記周辺領域の範囲を変更させるステップと
を実行させることを特徴とするコンピュータプログラム。
【請求項１９】
コンピュータに、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定させ、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出させ、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出させ、算出した特徴量に基づいて画像同士の類似の判定をさせるコンピュータプログラムを記録してあるコンピュータでの読み取りが可能な記録媒体において、
コンピュータに、特定した画素領域の画素の個数を計数させるステップと、
コンピュータに、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断させるステップと、
コンピュータに、特定した画素領域の画素の個数が前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに特徴点の数を計数させるステップと、  コンピュータに、計数した特徴点の数が第２の閾値以下であるか否かを判定させるステップと、
コンピュータに、計数した特徴点の数が第２の閾値を超えると判定した場合は前記画素領域から抽出した特徴点に基づいて前記特徴量を算出させるステップと、
コンピュータに、計数した特徴点の数が第２の閾値以下であると判定した場合は前記第１の閾値を変更させるステップと
を実行させるコンピュータプログラムを記録してあることを特徴とするコンピュータでの読み取りが可能な記録媒体。
【請求項２０】
コンピュータに、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定させ、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出させ、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出させ、算出した特徴量に基づいて画像同士の類似の判定をさせるコンピュータプログラムを記録してあるコンピュータでの読み取りが可能な記録媒体において、
コンピュータに、特定した画素領域の画素の個数を計数させるステップと、
コンピュータに、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断する際、複数の異なる第１の閾値を設定し、それぞれ第１の閾値以上であるか否かを判断させるステップと、
コンピュータに、前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに、複数の異なる第１の閾値毎に特徴点の数を計数させるステップと、
コンピュータに、計数した特徴点の数が最多となる画素領域から抽出した特徴点に基づいて特徴量を算出させるステップと
を実行させるコンピュータプログラムを記録してあることを特徴とするコンピュータでの読み取りが可能な記録媒体。
【請求項２１】
コンピュータに、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定させ、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出させ、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出させ、算出した特徴量に基づいて画像同士の類似の判定をさせるコンピュータプログラムを記録してあるコンピュータでの読み取りが可能な記録媒体において、
コンピュータに、原稿画像の領域を複数に分割させるステップと、
コンピュータに、分割された各々の領域に対して第１の閾値を設定させるステップと、  コンピュータに、分割されたそれぞれの領域において、特定した画素領域の画素の個数を計数させるステップと、
コンピュータに、分割された領域において特定した画素領域の画素の個数が、前記分割された領域における第１の閾値以上であるか否かを判断させるステップと、
コンピュータに、分割された領域において特定した画素領域の画素の個数が前記分割された領域における第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに特徴点の数を計数させるステップと、
コンピュータに、計数した特徴点の数が第２の閾値以下であるか否かを判定させるステップと、
コンピュータに、計数した特徴点の数が第２の閾値を超えると判定した場合は前記画素領域から抽出した特徴点に基づいて前記特徴量を算出させるステップと、
コンピュータに、計数した特徴点の数が第２の閾値以下であると判定した場合は前記第１の閾値を変更させるステップと
を実行させるコンピュータプログラムを記録してあることを特徴とするコンピュータでの読み取りが可能な記録媒体。
【請求項２２】
コンピュータに、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定させ、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出させ、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出させ、算出した特徴量に基づいて画像同士の類似の判定をさせるコンピュータプログラムを記録してあるコンピュータでの読み取りが可能な記録媒体において、
コンピュータに、特定した画素領域の画素の個数を計数させるステップと、
コンピュータに、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断させるステップと、
コンピュータに、特定した画素領域の画素の個数が第１の閾値以上であると判断した場合、前記画素領域の特徴点を抽出させるステップと、
コンピュータに、抽出した特徴点の周辺領域内に位置する近傍の特徴点を決定させるステップと、
コンピュータに、決定した近傍の特徴点の点数を計数させるステップと、
コンピュータに、計数した特徴点の点数が第２の閾値以下であるか否かを判定させるステップと、
コンピュータに、計数した特徴点の点数が前記第２の閾値を超えると判定した場合は前記近傍の特徴点に基づいて前記特徴量を算出させるステップと、
コンピュータに、計数した特徴点の点数が前記第２の閾値以下であると判定した場合は前記第１の閾値、または前記第１の閾値並びに前記周辺領域の範囲を変更させるステップと
を実行させるコンピュータプログラムを記録してあることを特徴とするコンピュータでの読み取りが可能な記録媒体。
【請求項２３】
コンピュータに、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定させ、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出させ、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出させ、算出した特徴量に基づいて画像同士の類似の判定をさせるコンピュータプログラムを記録してあるコンピュータでの読み取りが可能な記録媒体において、
コンピュータに、特定した画素領域の画素の個数を計数させるステップと、
コンピュータに、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断する際、複数の異なる第１の閾値を設定し、それぞれ第１の閾値以上であるか否かを判断させるステップと、
コンピュータに、前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに、複数の異なる第１の閾値毎に特徴点の数を計数させるステップと、
コンピュータに、計数した特徴点の数が最多となる画素領域の特徴点を抽出させるステップと、
コンピュータに、抽出した特徴点の周辺領域内に位置する近傍の特徴点を決定させるステップと、
コンピュータに、決定した近傍の特徴点の点数を計数させるステップと、
コンピュータに、計数した特徴点の点数が第２の閾値以下であるか否かを判定させるステップと、
コンピュータに、計数した特徴点の点数が第２の閾値を超えると判定した場合は前記近傍の特徴点に基づいて前記特徴量を算出させるステップと、
コンピュータに、計数した特徴点の点数が第２の閾値以下であると判定した場合は前記周辺領域の範囲を変更させるステップと
を実行させるコンピュータプログラムを記録してあることを特徴とするコンピュータでの読み取りが可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像の類似を判定する画像処理方法、該方法を実行する画像処理装置、画像形成装置、前記方法を前記画像処理装置に実行させるためのコンピュータプログラム及び当該コンピュータプログラムを記録した記録媒体において、特に特徴点の少ない画像の類似判定の精度を向上させることができる画像処理方法、画像処理装置、画像形成装置、コンピュータプログラム及び記録媒体に関する。
【背景技術】
【０００２】
従来、スキャナで原稿画像を読み取って得られた入力画像データと事前に登録されている登録画像とを比較して両者の類似度を判定し、判定結果に基づいて入力画像データに対する処理（例えば複写、送信、編集等）を制御する技術が用いられている。
【０００３】
類似度の判定方法としては、例えば、ＯＣＲ（Optical Character Reader）などで画像からキーワードを抽出してキーワードによるマッチングを行う方法や、対象画像を罫線のある帳票画像に限定し、罫線の特徴によるマッチングを行う方法が知られている（例えば、特許文献１）。
【０００４】
また、特許文献２には、デジタル画像から複数の特徴点を抽出し、抽出した各特徴点に対して局所的な特徴点の集合を決定し、決定した各集合から特徴点の部分集合を選択し、選択した各部分集合を特徴付ける量として、部分集合中の特徴点の複数の組み合わせに基づいて、幾何学的変換に対する不変量をそれぞれ求め、求めた各不変量を組み合わせて特徴量を計算し、計算した特徴量に基づいてデータベース中の文書・画像に投票することにより、上記デジタル画像に対応する文書・画像を検索する技術が開示されている（例えば、特許文献２）。
【特許文献１】特開平８−２５５２３６号公報
【特許文献２】国際公開第２００６／０９２９５７号パンフレット
【０００５】
図２４は連結成分の重心を示す説明図、図２５は重心を特徴点とする例を示す説明図である。連結成分の重心はノイズの影響を受け難く対象画像が回転又は平行移動したときでもその位置が変化しないため、重心を特徴点として特徴量を算出し、算出した特徴量に基づいて画像の類似判定を行う前記画像処理方法は、外乱に強く高精度な画像の類似判定を実現できるとされている（図２４参照）。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、当該方法では、入力される原稿によって算出される重心数が少なくなるため、特徴点数が少なくなる場合がある。また、少ない特徴点を用いて特徴量を算出すると、算出に必要となる特徴点が十分確保できないため、算出された特徴量自体の精度が低下するという問題がある。
【０００７】
本発明はかかる事情に鑑みてなされたものであり、その目的とするところは、画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の個数が第１の閾値以上である場合、特定した画素領域から抽出した特徴点に基づいて算出した特徴量を用いて画像同士の類似判定を行う際に、抽出した特徴点の点数が第２の閾値以下である場合に前記第１の閾値を変更することにより、画像の類似判定を判定精度を低下させることなく安定して処理を行うことができる画像処理方法、画像処理装置、画像形成装置、コンピュータプログラム及び記録媒体を提供することにある。
【０００８】
また、本発明の他の目的は、画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断する際、複数の異なる第１の閾値を設定し、それぞれの第１の閾値以上であるか否かを判断し、前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに、複数の異なる第１の閾値毎に特徴点の数を計数し、計数した特徴点の数が最多となる画素領域から抽出した特徴点に基づいて算出した特徴量で画像同士の類似判定を行うことにより、画像の類似判定を判定精度を低下させることなく安定して処理を行うことができる画像処理方法、画像処理装置、画像形成装置、コンピュータプログラム及び記録媒体を提供することにある。
【０００９】
また、本発明の他の目的は、原稿画像を分割し、その分割した領域に対して各々で連結領域の画素数に対する下限値、即ち、第１の閾値を設定する構成とすることにより、原稿画像の上下左右端領域のノイズを重心として算出されないような閾値の設定が可能となるだけでなく、原稿画像の重要な領域（例えば、中央の領域など）においても、より小さな連結領域に対して重心算出をするような閾値設定が可能となり、精度の高い重心を十分数確保できる画像処理方法、画像処理装置、画像形成装置、コンピュータプログラム及び記録媒体を提供することにある。
【００１０】
また、本発明の他の目的は、特徴点を選択する領域を生成し、生成した領域内に位置する特徴点に基づいて算出した特徴量を用いて画像同士の類似判定を行うと共に、抽出した特徴点の点数が第２の閾値以下である場合に前記特徴点を選択する領域を変更することにより、画像の類似判定を判定精度を低下させることなく安定して処理を行うことができる画像処理方法、画像処理装置、画像形成装置、コンピュータプログラム及び記録媒体を提供することにある。
【００１１】
また、本発明の他の目的は、特徴点を抽出する際、所定の範囲（画素ブロックライン）で特徴点の点数を計数しておくことにより、注目特徴点の処理毎に特徴点を読み出すことなく、マスクサイズまたは参照ブロック数を変更することができるため、近傍特徴点の抽出を何度も行う必要がなくなり、処理の容易化・高速化を図ることができる画像処理方法、画像処理装置、画像形成装置、コンピュータプログラム及び記録媒体を提供することにある。
【００１２】
また、本発明の他の目的は、画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の個数が第１の閾値以上である場合、特定した画素領域から抽出した特徴点のうち、設定した領域内に位置するものに基づいて算出した特徴量を用いて画像同士の類似判定を行う際に、抽出した特徴点の点数が第２の閾値以下である場合に前記第１の閾値、または前記第１の閾値並びに前記設定した領域の範囲を変更することにより、画像の類似判定を判定精度を低下させることなく安定して処理を行うことができる画像処理方法、画像処理装置、画像形成装置、コンピュータプログラム及び記録媒体を提供することにある。
【００１３】
また、本発明の他の目的は、画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断する際、複数の異なる第１の閾値を設定し、それぞれの第１の閾値以上であるか否かを判断し、前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに、複数の異なる第１の閾値毎に特徴点の数を計数し、計数した特徴点の数が最多となる画素領域から抽出した特徴点のうち、設定した領域の範囲内に位置する最多点数の特徴点に基づいて算出した特徴量で画像同士の類似判定を行うことにより、画像の類似判定を判定精度を低下させることなく安定して処理を行うことができる画像処理方法、画像処理装置、画像形成装置、コンピュータプログラム及び記録媒体を提供することにある。
【００１４】
また、本発明の他の目的は、特徴点を抽出する領域を一又は複数の画素で構成する画素ブロックで定めることにより、当該画素ブロックのサイズ又はブロック数を変更することで前記特徴点を抽出する領域を変更することができる画像処理方法、画像処理装置及び画像形成装置を提供することにある。
【課題を解決するための手段】
【００１５】
上記課題を解決するために本発明に係る画像処理方法は、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出し、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出し、算出した特徴量に基づいて画像同士の類似判定を行う画像処理方法において、特定した画素領域の画素の個数を計数し、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断し、特定した画素領域の画素の個数が前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに特徴点の数を計数し、計数した特徴点の数が第２の閾値以下であるか否かを判定し、計数した特徴点の数が第２の閾値を超えると判定した場合は前記画素領域から抽出した特徴点に基づいて前記特徴量を算出し、計数した特徴点の数が第２の閾値以下であると判定した場合は前記第１の閾値を変更することを特徴とする。
【００１６】
また、本発明に係る画像処理方法は、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出し、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出し、算出した特徴量に基づいて画像同士の類似判定を行う画像処理方法において、特定した画素領域の画素の個数を計数し、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断する際、複数の異なる第１の閾値を設定し、それぞれ第１の閾値以上であるか否かを判断し、前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに、複数の異なる第１の閾値毎に特徴点の数を計数し、計数した特徴点の数が最多となる画素領域から抽出した特徴点に基づいて特徴量を算出することを特徴とする。
【００１７】
また、本発明に係る画像処理方法は、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出し、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出し、算出した特徴量に基づいて画像同士の類似判定を行う画像処理方法において、原稿画像の領域を複数に分割し、分割された各々の領域に対して第１の閾値を設定し、分割されたそれぞれの領域において、特定した画素領域の画素の個数を計数し、分割された領域において特定した画素領域の画素の個数が、分割された領域における第１の閾値以上であるか否かを判断し、分割された領域において特定した画素領域の画素の個数が前記分割された領域における第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに特徴点の数を計数し、計数した特徴点の数が第２の閾値以下であるか否かを判定し、計数した特徴点の数が第２の閾値を超えると判定した場合は前記画素領域から抽出した特徴点に基づいて前記特徴量を算出し、計数した特徴点の数が第２の閾値以下であると判定した場合は前記第１の閾値を変更することを特徴とする。
【００２０】
また、本発明に係る画像処理方法は、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出し、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出し、算出した特徴量に基づいて画像同士の類似判定を行う画像処理方法において、特定した画素領域の画素の個数を計数し、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断し、特定した画素領域の画素の個数が第１の閾値以上であると判断した場合、前記画素領域の特徴点を抽出し、抽出した特徴点の周辺領域内に位置する近傍の特徴点を決定し、決定した近傍の特徴点の点数を計数し、計数した特徴点の点数が第２の閾値以下であるか否かを判定し、計数した特徴点の点数が第２の閾値を超えると判定した場合は前記近傍の特徴点に基づいて前記特徴量を算出し、計数した特徴点の点数が前記第２の閾値以下であると判定した場合は前記第１の閾値、または、前記第１の閾値並びに前記周辺領域の範囲を変更することを特徴とする。
【００２１】
また、本発明に係る画像処理方法は、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出し、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出し、算出した特徴量に基づいて画像同士の類似判定を行う画像処理方法において、特定した画素領域の画素の個数を計数し、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断する際、複数の異なる第１の閾値を設定し、それぞれ第１の閾値以上であるか否かを判断し、前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに、複数の異なる第１の閾値毎に特徴点の数を計数し、計数した特徴点の数が最多となる画素領域の特徴点を抽出し、抽出した特徴点の周辺領域内に位置する近傍の特徴点を決定し、決定した近傍の特徴点の点数を計数し、計数した特徴点の点数が第２の閾値以下であるか否かを判定し、計数した特徴点の点数が第２の閾値を超えると判定した場合は前記近傍の特徴点に基づいて前記特徴量を算出し、計数した特徴点の点数が第２の閾値以下であると判定した場合は前記周辺領域の範囲を変更することを特徴とする。
【００２２】
また、本発明に係る画像処理方法は、前記周辺領域は、２値の画像の一又は複数の画素からなる画素ブロックで構成され、前記周辺領域の範囲の変更は、前記画素ブロックのサイズ又はブロック数を変更することにより行うことを特徴とする。
【００２３】
また、本発明に係る画像処理装置は、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出し、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出し、算出した特徴量に基づいて画像同士の類似判定を行う画像処理装置において、特定した画素領域の画素の個数を計数する手段と、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断する手段と、特定した画素領域の画素の個数が前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに特徴点の数を計数する手段と、計数した特徴点の数が第２の閾値以下であるか否かを判定する手段とを備え、計数した特徴点の数が第２の閾値を超えると判定した場合は前記画素領域から抽出した特徴点に基づいて前記特徴量を算出し、計数した特徴点の数が第２の閾値以下であると判定した場合は前記第１の閾値を変更するようにしてあることを特徴とする。
【００２４】
また、本発明に係る画像処理装置は、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出し、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出し、算出した特徴量に基づいて画像同士の類似判定を行う画像処理装置において、特定した画素領域の画素の個数を計数する手段と、特定した画素領域の個数が第１の閾値以上であるか否かを判断する際、複数の異なる第１の閾値を設定し、それぞれ第１の閾値以上であるか否かを判断する判断手段と、前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに、複数の異なる第１の閾値毎に特徴点の数を計数する手段とを備え、計数した特徴点の数が最多となる画素領域から抽出した特徴点に基づいて特徴量を算出するようにしてあることを特徴とする。
【００２５】
また、本発明に係る画像処理装置は、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出し、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出し、算出した特徴量に基づいて画像同士の類似判定を行う画像処理装置において、原稿画像の領域を複数に分割する手段と、分割した各々の領域に対して第１の閾値を設定する手段と、分割されたそれぞれの領域において、特定した画素領域の画素の個数を計数する手段と、分割された領域において特定した画素領域の画素の個数が、分割された領域における第１の閾値以上であるか否かを判断する手段と、分割された領域において特定した画素領域の画素の個数が前記分割された領域における第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに特徴点の数を計数する手段と、計数した特徴点の数が第２の閾値以下であるか否かを判定する手段とを備え、計数した特徴点の数が第２の閾値を超えると判定した場合は前記画素領域から抽出した特徴点に基づいて前記特徴量を算出し、計数した特徴点の数が第２の閾値以下であると判定した場合は前記第１の閾値を変更するようにしてあることを特徴とする。
【００２８】
また、本発明に係る画像処理装置は、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出し、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出し、算出した特徴量に基づいて画像同士の類似判定を行う画像処理装置において、特定した画素領域の画素の個数を計数する手段と、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断する手段と、特定した画素領域の画素の個数が第１の閾値以上であると判断した場合、前記画素領域の特徴点を抽出する手段と、抽出した特徴点の周辺領域内に位置する近傍の特徴点を決定する手段と、決定した近傍の特徴点の点数を計数する手段と、計数した特徴点の点数が第２の閾値以下であるか否かを判定する手段とを備え、計数した特徴点の点数が前記第２の閾値を超えると判定した場合は前記近傍の特徴点に基づいて前記特徴量を算出し、計数した特徴点の点数が前記第２の閾値以下であると判定した場合は前記第１の閾値、または前記第１の閾値並びに前記周辺領域の範囲を変更するようにしてあることを特徴とする。
【００２９】
また、本発明に係る画像処理装置は、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定し、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出し、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出し、算出した特徴量に基づいて画像同士の類似判定を行う画像処理装置において、特定した画素領域の画素の個数を計数する手段と、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断する際、複数の異なる第１の閾値を設定し、それぞれ第１の閾値以上であるか否かを判断する判断手段と、前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに、複数の異なる第１の閾値に特徴点の数を計数する手段と、計数した特徴点の数が最多となる画素領域の特徴点を抽出する手段と、抽出した特徴点の周辺領域内に位置する近傍の特徴点を決定する手段と、決定した近傍の特徴点の点数を計数する手段と、計数した特徴点の点数が第２の閾値以下であるか否かを判定する手段とを備え、計数した特徴点の点数が第２の閾値を超えると判定した場合は前記近傍の特徴点に基づいて前記特徴量を算出し、計数した特徴点の点数が第２の閾値以下であると判定した場合は前記周辺領域の範囲を変更するようにしてあることを特徴とする。
【００３０】
また、本発明に係る画像処理装置は、前記周辺領域は、２値の画像の一又は複数の画素からなる画素ブロックで構成され、前記周辺領域の範囲の変更は、前記画素ブロックのサイズ又はブロック数を変更することにより行うようにしてあることを特徴とする。
【００３１】
また、本発明に係る画像形成装置は、本発明に係る画像処理装置と、該画像処理装置で処理された画像の形成を行う画像形成手段とを備えることを特徴とする。
【００３２】
また、本発明に係るコンピュータプログラムは、コンピュータに、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定させ、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出させ、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出させ、算出した特徴量に基づいて画像同士の類似の判定をさせるコンピュータプログラムにおいて、コンピュータに、特定した画素領域の画素の個数を計数させるステップと、コンピュータに、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断させるステップと、コンピュータに、特定した画素領域の画素の個数が前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに特徴点の数を計数させるステップと、コンピュータに、計数した特徴点の数が第２の閾値以下であるか否かを判定させるステップと、コンピュータに、計数した特徴点の数が第２の閾値を超えると判定した場合は前記画素領域から抽出した特徴点に基づいて前記特徴量を算出させるステップと、コンピュータに、計数した特徴点の数が第２の閾値以下であると判定した場合は前記第１の閾値を変更させるステップとを実行させることを特徴とする。
【００３３】
また、本発明に係るコンピュータプログラムは、コンピュータに、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定させ、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出させ、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出させ、算出した特徴量に基づいて画像同士の類似の判定をさせるコンピュータプログラムにおいて、コンピュータに、特定した画素領域の画素の個数を計数させるステップと、コンピュータに、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断する際、複数の異なる第１の閾値を設定し、それぞれ第１の閾値以上であるか否かを判断させるステップと、コンピュータに、前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに、複数の異なる第１の閾値毎に特徴点の数を計数させるステップと、コンピュータに、計数した特徴点の数が最多となる画素領域から抽出した特徴点に基づいて特徴量を算出させるステップとを実行させることを特徴とする。
【００３４】
また、本発明に係るコンピュータプログラムは、コンピュータに、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定させ、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出させ、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出させ、算出した特徴量に基づいて画像同士の類似の判定をさせるコンピュータプログラムにおいて、コンピュータに、原稿画像の領域を複数に分割させるステップと、コンピュータに、分割された各々の領域に対して第１の閾値を設定させるステップと、コンピュータに、分割されたそれぞれの領域において、特定した画素領域の画素の個数を計数させるステップと、コンピュータに、特定した画素領域の画素の個数が、分割された領域における第１の閾値以上であるか否かを判断させるステップと、コンピュータに、分割された領域において特定した画素領域の画素の個数が前記設定された第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに特徴点の数を計数させるステップと、コンピュータに、計数した特徴点の数が第２の閾値以下であるか否かを判定させるステップと、コンピュータに、計数した特徴点の数が第２の閾値を超えると判定した場合は前記画素領域から抽出した特徴点に基づいて前記特徴量を算出させるステップと、コンピュータに、計数した特徴点の数が第２の閾値以下であると判定した場合は前記第１の閾値を変更させるステップとを実行させることを特徴とする。
【００３７】
また、本発明に係るコンピュータプログラムは、コンピュータに、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定させ、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出させ、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出させ、算出した特徴量に基づいて画像同士の類似の判定をさせるコンピュータプログラムにおいて、コンピュータに、特定した画素領域の画素の個数を計数させるステップと、コンピュータに、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断させるステップと、コンピュータに、特定した画素領域の画素の個数が第１の閾値以上であると判断した場合、前記画素領域の特徴点を抽出させるステップと、コンピュータに、抽出した特徴点の周辺領域内に位置する近傍の特徴点を決定させるステップと、コンピュータに、決定した近傍の特徴点の点数を計数させるステップと、コンピュータに、計数した特徴点の点数が第２の閾値以下であるか否かを判定させるステップと、コンピュータに、計数した特徴点の点数が前記第２の閾値を超えると判定した場合は前記近傍の特徴点に基づいて前記特徴量を算出させるステップと、コンピュータに、計数した特徴点の点数が前記第２の閾値以下であると判定した場合は前記第１の閾値、または前記第１の閾値並びに前記周辺領域の範囲を変更させるステップとを実行させることを特徴とする。
【００３８】
また、本発明に係るコンピュータプログラムは、コンピュータに、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定させ、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出させ、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出させ、算出した特徴量に基づいて画像同士の類似の判定をさせるコンピュータプログラムにおいて、コンピュータに、特定した画素領域の画素の個数を計数させるステップと、コンピュータに、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断する際、複数の異なる第１の閾値を設定し、それぞれ第１の閾値以上であるか否かを判断させるステップと、コンピュータに、前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに、複数の異なる第１の閾値毎に特徴点の数を計数させるステップと、コンピュータに、計数した特徴点の数が最多となる画素領域の特徴点を抽出させるステップと、コンピュータに、抽出した特徴点の周辺領域内に位置する近傍の特徴点を決定させるステップと、コンピュータに、決定した近傍の特徴点の点数させるステップと、コンピュータに、計数した特徴点の点数が第２の閾値以下であるか否かを判定させるステップと、コンピュータに、計数した特徴点の点数が第２の閾値を超えると判定した場合は前記近傍の特徴点に基づいて前記特徴量を算出させるステップと、コンピュータに、計数した特徴点の点数が第２の閾値以下であると判定した場合は前記周辺領域の範囲を変更させるステップとを実行させることを特徴とする。
【００３９】
また、本発明に係る記録媒体は、コンピュータに、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定させ、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出させ、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出させ、算出した特徴量に基づいて画像同士の類似の判定をさせるコンピュータプログラムを記録してあるコンピュータでの読み取りが可能な記録媒体において、コンピュータに、特定した画素領域の画素の個数を計数させるステップと、コンピュータに、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断させるステップと、コンピュータに、特定した画素領域の画素の個数が前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに特徴点の数を計数させるステップと、コンピュータに、計数した特徴点の数が第２の閾値以下であるか否かを判定させるステップと、コンピュータに、計数した特徴点の数が第２の閾値を超えると判定した場合は前記画素領域から抽出した特徴点に基づいて前記特徴量を算出させるステップと、コンピュータに、計数した特徴点の数が第２の閾値以下であると判定した場合は前記第１の閾値を変更させるステップとを実行させるコンピュータプログラムを記録してあることを特徴とする。
【００４０】
また、本発明に係る記録媒体は、コンピュータに、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定させ、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出させ、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出させ、算出した特徴量に基づいて画像同士の類似の判定をさせるコンピュータプログラムを記録してあるコンピュータでの読み取りが可能な記録媒体において、コンピュータに、特定した画素領域の画素の個数を計数させるステップと、コンピュータに、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断する際、複数の異なる第１の閾値を設定し、それぞれ第１の閾値以上であるか否かを判断させるステップと、コンピュータに、前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに、複数の異なる第１の閾値毎に特徴点の数を計数させるステップと、コンピュータに、計数した特徴点の数が最多となる画素領域から抽出した特徴点に基づいて特徴量を算出させるステップとを実行させるコンピュータプログラムを記録してあることを特徴とする。
【００４１】
また、本発明に係る記録媒体は、コンピュータに、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定させ、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出させ、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出させ、算出した特徴量に基づいて画像同士の類似の判定をさせるコンピュータプログラムを記録してあるコンピュータでの読み取りが可能な記録媒体において、コンピュータに、原稿画像の領域を複数に分割させるステップと、コンピュータに、分割された各々の領域に対して第１の閾値を設定させるステップと、コンピュータに、分割されたそれぞれの領域において、特定した画素領域の画素の個数を計数させるステップと、コンピュータに、分割された領域において特定した画素領域の画素の個数が、前記分割された領域における第１の閾値以上であるか否かを判断させるステップと、コンピュータに、分割された領域において特定した画素領域の画素の個数が前記分割された領域における第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに特徴点の数を計数させるステップと、コンピュータに、計数した特徴点の数が第２の閾値以下であるか否かを判定させるステップと、コンピュータに、計数した特徴点の数が第２の閾値を超えると判定した場合は前記画素領域から抽出した特徴点に基づいて前記特徴量を算出させるステップと、コンピュータに、計数した特徴点の数が第２の閾値以下であると判定した場合は前記第１の閾値を変更させるステップとを実行させるコンピュータプログラムを記録してあることを特徴とする。
【００４４】
また、本発明に係る記録媒体は、コンピュータに、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定させ、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出させ、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出させ、算出した特徴量に基づいて画像同士の類似の判定をさせるコンピュータプログラムを記録してあるコンピュータでの読み取りが可能な記録媒体において、コンピュータに、特定した画素領域の画素の個数を計数させるステップと、コンピュータに、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断させるステップと、コンピュータに、特定した画素領域の画素の個数が第１の閾値以上であると判断した場合、前記画素領域の特徴点を抽出させるステップと、コンピュータに、抽出した特徴点の周辺領域内に位置する近傍の特徴点を決定させるステップと、コンピュータに、決定した近傍の特徴点の点数を計数させるステップと、コンピュータに、計数した特徴点の点数が第２の閾値以下であるか否かを判定させるステップと、コンピュータに、計数した特徴点の点数が前記第２の閾値を超えると判定した場合は前記近傍の特徴点に基づいて前記特徴量を算出させるステップと、コンピュータに、計数した特徴点の点数が前記第２の閾値以下であると判定した場合は前記第１の閾値、または前記第１の閾値並びに前記周辺領域の範囲を変更させるステップとを実行させるコンピュータプログラムを記録してあることを特徴とする。
【００４５】
更にまた、本発明に係る記録媒体は、コンピュータに、２値の画像から画素値が同じであると判断される画素が隣り合う画素領域を複数特定させ、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出させ、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出させ、算出した特徴量に基づいて画像同士の類似の判定をさせるコンピュータプログラムを記録してあるコンピュータでの読み取りが可能な記録媒体において、コンピュータに、特定した画素領域の画素の個数を計数させるステップと、コンピュータに、特定した画素領域の画素の個数が第１の閾値以上であるか否かを判断する際、複数の異なる第１の閾値を設定し、それぞれ第１の閾値以上であるか否かを判断させるステップと、コンピュータに、前記第１の閾値以上であると判断した場合、前記画素領域の特徴点を算出するとともに、複数の異なる第１の閾値毎に特徴点の数を計数させるステップと、コンピュータに、計数した特徴点の数が最多となる画素領域の特徴点を抽出させるステップと、コンピュータに、抽出した特徴点の周辺領域内に位置する近傍の特徴点を決定させるステップと、コンピュータに、決定した近傍の特徴点の点数を計数させるステップと、コンピュータに、計数した特徴点の点数が第２の閾値以下であるか否かを判定させるステップと、コンピュータに、計数した特徴点の点数が第２の閾値を超えると判定した場合は前記近傍の特徴点に基づいて前記特徴量を算出させるステップと、コンピュータに、計数した特徴点の点数が第２の閾値以下であると判定した場合は前記周辺領域の範囲を変更させるステップとを実行させるコンピュータプログラムを記録してあることを特徴とする。
【００４６】
本発明にあっては、特徴点の点数が第２の閾値以下の場合、第１の閾値を変更して画素領域から抽出する特徴点を増やすことにより、特徴量を算出するための特徴点の点数が極端に少なくならないように調整し、類似判定の精度を低下させることなく安定させることができる。
【００４７】
また、本発明にあっては、複数の異なる第１の閾値に基づいて限定した画素領域から特徴点を抽出し、抽出した特徴点のうち最多点数のものに基づいて特徴量を算出するので、特徴点の点数が極端に少なくならないように調整し、類似判定の精度を低下させることなく安定させることができる。
【００４８】
また、本発明にあっては、原稿画像を分割し、その分割した領域に対して各々で連結領域の画素数に対する下限値、即ち、第１の閾値を設定する構成とすることにより、原稿画像の上下左右端領域のノイズを重心として算出されないような閾値の設定が可能となるだけでなく、原稿画像の重要な領域（例えば、中央の領域など）においても、より小さな連結領域に対して重心算出をするような閾値設定が可能となり、精度の高い重心を十分数確保できる。
【００４９】
また、本発明にあっては、特徴点を抽出する際、所定の範囲（画素ブロックライン）で特徴点の点数を計数しておくことにより、注目特徴点の処理毎に特徴点を読み出すことなく、マスクサイズまたは参照ブロック数を変更することができるため、近傍特徴点の抽出を何度も行う必要がなくなり、処理の容易化・高速化を図ることができる。
【００５０】
更にまた、本発明にあっては、これらを組み合わせることにより、複数の作用が生じさせることができる。
【発明の効果】
【００５１】
本発明にあっては、外乱に強い画像の類似判定方法である画像内の画素領域の重心を利用した画像処理方法を、類似判定の精度を低下させることなく安定して実行させることができる。尚、当該処理は、画像を登録する処理並びに入力された画像と登録されている画像との照合処理を行う際に行われる。画像を登録する際は、例えば、デジタル複写機（または、複合機）の操作パネルより登録モードを選択して行えば良い。ソフトウェアとして実現する場合は、例えば、ディスプレイにスキャナの動作を設定する画面を表示させ、マウスやキーボードを用いて登録モードを選択するようにすれば良い。
【発明を実施するための最良の形態】
【００５２】
以下、本発明に係る画像処理方法、画像処理装置、画像形成装置、コンピュータプログラム及び記録媒体について、実施の形態を示す図面に基づいて説明する。図１は本発明に係る画像処理装置２を備える画像形成装置の全体構成を示す模式図である。以下、主となる実施の形態を説明しつつ、説明の各箇所において従属する実施例を適宜説明する。
【００５３】
図中の画像形成装置は、例えば、デジタル複写機、複合機（マルチファンクションプリンタ：ＭＦＰ）などであり、画像入力装置１、画像処理装置２、画像出力装置３及び操作パネル４で構成されている。画像入力装置１は、例えば、ＣＣＤ（Charged Coupled Device）を備えたスキャナであり、原稿からの反射光をＲＧＢのアナログ信号として受け付け、画像処理装置２へ出力する。画像処理装置２は、受け付けたＲＧＢのアナログ信号に後述の処理を施し、ＣＭＹＫのデジタルカラー信号として画像出力装置３へ出力する。画像出力装置３は、例えば、電子写真方式又はインクジェット方式を用いたカラー画像出力装置であり、画像処理装置２から出力されたＣＭＹＫのデジタルカラー信号を受け付け、受け付けたデジタルカラー信号に基づいて紙などの記録媒体の面にカラー画像を出力する。
【００５４】
画像処理装置２は、Ａ／Ｄ変換部２０、シェーディング補正部２１、画像照合処理部２２、入力階調補正部２３、領域分離処理部２４、色補正部２５、黒生成下色除去部２６、空間フィルタ処理部２７、出力階調補正部２８及び階調再現処理部２９を備える。
【００５５】
Ａ／Ｄ変換部２０は、画像入力装置１から受け付けたＲＧＢのアナログ信号をデジタル信号に変換し、変換したデジタル信号をシェーディング補正部２１へ出力する。
【００５６】
シェーディング補正部２１は、Ａ／Ｄ変換部２０から出力されたデジタル信号を受け付け、受け付けたデジタル信号に画像入力装置１の照明系、結像系及び撮像系で生じる各種の歪みを除去する処理を行う。また、シェーディング補正部２１は、画像処理装置２での処理が最適な信号に変換すると共に、カラーバランスを整える処理を行い、処理済みのデジタル信号を画像照合処理部２２へ出力する。
【００５７】
画像照合処理部２２は、本発明に係る画像処理装置に該当し、受け付けた画像のデジタル信号に基づいて画像を２値化し、２値画像から同値の画素が連続する画素領域（連結成分）を特定し、特定した画素領域の画素の座標値に基づいて該画素領域の特徴点を抽出し、抽出した特徴点に基づいて画像の特徴を示す特徴量を算出し、算出した特徴量に基づいて画像同士の類似判定を行い、類似判定の結果を示す判定結果を後述するメモリ２２５へ出力する。ＣＰＵ又はＭＰＵである後述する制御部２２６は、判定結果に応じて所定の処理を行う。例えば、制御部２２６は、画像が類似する旨を示す判定結果を受け付けた場合、画像の出力を放棄するか、画像の複写を禁止するか、又は、画像を所定のフォルダに記憶する処理（ファイリング）を行う。尚、本実施の形態において、画像同士とは、今回判定すべく画像入力装置１を介して受け付けた画像と、予め画像入力装置１を介して受け付け後述するハッシュテーブルに登録してある他方の原稿の画像データとを示すがこれに限定しない。また、画像照合処理部２２は、前記処理を行うと共に、シェーディング補正部２１から受け付けたデジタル信号を修正することなく入力階調補正部２３へ出力する。
【００５８】
入力階調補正部２３は、画像照合処理部２２から出力されたデジタル信号を受け付け、受け付けたデジタル信号に下地濃度の除去又はコンストラストなどの画質階調処理を施し、処理済みのデジタル信号を領域分離処理部２４へ出力する。
【００５９】
領域分離処理部２４は、入力階調補正部２３から出力されたデジタル信号を受け付け、受け付けたデジタル信号に基づいて画像を文字領域、網点領域及び写真領域の何れかに振り分ける。領域分離処理部２４は、振り分け結果に基づいて文字領域、網点領域及び写真領域のいずれに属しているかを示す領域識別信号を生成し、生成した領域識別信号を黒生成下色除去部２６、空間フィルタ処理部２７、出力階調補正部２８及び階調再現処理部２９へ出力すると共に、入力階調補正部２３から受け付けたデジタル信号を色補正部２５へ出力する。
【００６０】
色補正部２５は、領域分離処理部２４から出力されたデジタル信号を受け付け、受け付けたデジタル信号に不要吸収成分を含むＣＭＹ色材の分光特性による色濁りを除去する処理を施し、処理済みのデジタル信号を黒生成下色除去部２６へ出力する。
【００６１】
黒生成下色除去部２６は、色補正部２５から出力されたデジタル信号（ＣＭＹ）を受け付け、受け付けたデジタル信号から黒信号（Ｋ）を生成し、生成した黒信号を前記デジタル信号から差し引いた新たなデジタル信号（ＣＭＹ）を生成し、生成した新デジタル信号（ＣＭＹ）及び黒信号（Ｋ）を空間フィルタ処理部２７へ夫々出力する。
【００６２】
空間フィルタ処理部２７は、黒生成下色除去部２６から出力されたデジタル信号（ＣＭＹＫ）を受け付け、受け付けたデジタル信号に領域分離処理部２４から受け付けた領域識別信号に基づく空間フィルタ処理を施して空間周波数特性を補正し、処理済みのデジタル信号を出力階調補正部２８へ出力する。かかる処理により、出力すべき画像のぼやけ又は粒状性劣化を軽減することができる。
【００６３】
階調再現処理部２９は、空間フィルタ処理部２７から出力されたデジタル信号を受け付け、受け付けたデジタル信号に以下の処理を施し、処理済みのデジタル信号（ＣＭＹＫ）を記憶装置（図示せず）に記憶し、所定のタイミングで読み出して画像出力装置３へ出力する。また、階調再現処理部２９は、領域分離処理部２４から受け付けた領域識別信号に基づいて画像から文字領域を選択し、選択した文字領域の高周波成分をデジタルフィルタにより強調する。かかる処理により文字の再現性を高めることができる。また、階調再現処理部２９は、高周波成分の再現に最適な高解像度スクリーンにより画像の２値化又は多値化処理を行う。また、階調再現処理部２９は、前記領域識別信号に基づいて画像から網点領域を選択し、ローパスフィルタを用いて、選択した網点領域から入力網点成分を除去する。また、階調再現処理部２９は、前記領域識別信号に基づいて画像から写真領域を選択し、選択した写真領域に階調再現性を重視したスクリーンにより２値化又は多値化処理を施す。
【００６４】
次に、画像照合処理部２２について説明する。図２は画像照合処理部２２の全体構成を示す模式図である。画像照合処理部２２は、特徴点算出部２２１、特徴量算出部２２２、投票処理部２２３、類似判定処理部２２４、メモリ２２５、制御部２２６及び登録処理部２２７を備える。
【００６５】
特徴点算出部２２１は、受け付けた２値の画像データから同値の画素が連続する連結成分を複数特定し、特定した連結成分の画素の座標値に基づいて連結成分の特徴点を抽出し、抽出した特徴点を特徴量算出部２２２へ出力する。尚、特徴点算出部２２１の構成及び処理手順は後述する。
【００６６】
特徴量算出部２２２は、特徴点算出部２２１が算出した特徴点に基づいて画像の特徴を示す特徴量を算出する。尚、特徴量算出部２２２の構成及び処理手順は後述する。
【００６７】
投票処理部２２３は、特徴量算出部２２２が算出した特徴量（ハッシュ値）に基づいてメモリ２２５に記憶してあるハッシュテーブルを検索し、ハッシュテーブルに登録してあるインデックスの画像に対して投票を行い、当該投票を累積加算した結果を類似判定処理部２２４へ出力する。
【００６８】
類似判定処理部２２４は、投票処理部２２３から出力された結果を受け付け、受け付けた結果に基づいて画像の類似を判定し、当該判定の判定結果を登録処理部２２７を経て出力する。この時、登録処理部２２７での処理はスルー（処理を行わない）となる。尚、具体的な処理手順は後述する。
【００６９】
メモリ２２５には、画像照合処理部２２が実行する処理で発生したデータ、後述のハッシュテーブルなどが記憶されている。
【００７０】
制御部２２６は、画像照合処理部２２が備えるハードウェア夫々が一連の処理を成すように制御する。
【００７１】
登録処理部２２７は、特徴量算出部２２２が算出した特徴量（ハッシュ値）と、原稿（登録画像）を表すインデックス（原稿ＩＤ）とをメモリ２２５に記憶してあるハッシュテーブルに順次登録していく（図２３（ａ）参照）。ハッシュ値がすでに登録されている場合は当該ハッシュ値に対応付けて原稿ＩＤを登録する。
【００７２】
次に、画像照合処理部２２の特徴点算出部２２１について説明する。図３は特徴点算出部２２１の構成を示す模式図である。特徴点算出部２２１は、無彩化処理部２２１０、解像度変換部２２１１、ＭＴＦ補正処理部２２１２、２値化処理部２２１３及び重心算出部２２１４を備える。
【００７３】
無彩化処理部２２１０は、受け付けた画像データがカラー画像である場合に当該画像データを無彩化して明度又は輝度信号に変換する処理を行う。例えば、無彩化処理部２２１０は、Ｙj ＝０．３０Ｒj ＋０．５９Ｇj ＋０．１１Ｂj を演算し、当該演算結果を用いて無彩化を行う。但し、Ｙj ：各画素の輝度値、Ｒj Ｇj Ｂj ：各画素の色成分である。尚、ＲＧＢ信号は、ＣＩＥ１９７６Ｌ*ａ*ｂ*信号に変換しても良い。但し、ＣＩＥ：Commission International de l’Eclairage、Ｌ*：明度、ａ*ｂ*：色度である。
【００７４】
解像度変換部２２１１は、受け付けた画像データが画像入力装置１で光学的に変倍されている場合に所定の解像度になるように再度変倍する処理を行う。尚、前記画像データが光学的に変倍されていない場合、解像度変換部２２１１は、画像データを低解像度に変換して処理すべき容量を抑制して処理を軽くするようにできる。
【００７５】
ＭＴＦ補正処理部２２１２は、機種毎に空間周波数特性が異なる画像入力装置１から受け付けた画像データに適切なフィルタ処理を施すことにより、当該画像データの空間周波数特性に基づいて劣化して発生するぼやけを修復する。また、ＭＴＦ補正処理部２２１２は、不要な高周波成分を抑制すべく、混合フィルタを用いて強調及び平滑化の処理を行う。
【００７６】
２値化処理部２２１３は、受け付けた画像データが無彩のもの又は無彩化処理部２２１０で無彩化された画像データについて、後述する重心の算出に適した２値画像データへ変換する処理を行う。例えば、２値化処理部２２１３は、画像の画素値の平均値を算出し、算出した平均値を閾値として当該画像の各画素を２値化する処理を行う。
【００７７】
重心算出部２２１４は、後述の処理により、２値化処理部２２１３で２値化した２値画像データから同値の画素が連続する連結成分の重心を求め、当該重心を特徴点としてメモリ２２５へ出力する。図４は重心算出部２２１４の構成を示す模式図である。重心算出部２２１４は、ラベリング処理部２２１４ａ、連結成分閾値処理部２２１４ｂ、重心計算処理部２２１４ｃ、重心格納バッファ２２１４ｄ及び制御部２２１４ｅを備える。
【００７８】
ラベリング処理部２２１４ａは、画像から連結成分を特定し、特定した連結成分の画素に順次ラベル付けを行う。
【００７９】
制御部２２１４ｅは、ラベル付けされた画素の座標値を累積加算し、加算結果を重心格納バッファ２２１４ｄに格納する。
【００８０】
重心格納バッファ２２１４ｄは、ｘ座標の加算結果、ｙ座標の加算結果、各ラベルに加算した回数（即ちラベリングされた画素数）及び判定に使用するフラグを格納している。
【００８１】
制御部２２１４ｅは、画像の１ラインについての累積加算が終了した後に対象外のラベルが存在した場合、即ち、次ラインの画素と連続していない場合、累積加算の処理を終了する。また、制御部２２１４ｅは、第１の閾値を変更する。
【００８２】
連結成分閾値処理部２２１４ｂは、重心格納バッファ２２１４ｄに格納してある加算結果に基づいて後述の重心算出判定を行う。
【００８３】
連結成分閾値処理部２２１４ｂで重心算出判定をした場合、重心計算処理部２２１４ｃは、重心格納バッファ２２１４ｄに格納してある加算結果に基づいて重心計算を行い、算出した重心を特徴点としてメモリ２２５へ出力する。
【００８４】
次に、特徴点算出部２２１の重心算出部２２１４が行う重心算出処理の手順を説明する。図５は重心算出部２２１４の重心算出処理の手順を示すフローチャートである。尚、図中で示す変数は、夫々、前記ｘ座標の加算結果、ｙ座標の加算結果、各ラベルに加算した回数（即ちラベリングされた画素数）及び判定に使用するフラグに該当する。
【００８５】
ｃｎｔは、連結成分に対するラベル付与の最大値を示す内部カウンタであり、例えば、最大２０４７のラベルを付与する場合、ｃｎｔを１１ｂｉｔ（０〜２０４７）で表す。即ち、ｃｎｔ＝１１の場合、少なくとも特定された連結成分の数が１１であることを示している。
【００８６】
また、ｒｅｎｅｗ＿ｆｌｇは、該当ラベルを更新したか否かを示す２ｂｉｔ信号のフラグであり、該当ラベルの情報が空のときは「００ｂ」と表し、該当ラベルの情報の更新がないときは「０１ｂ」と表し、該当ラベルの情報の更新があるときは「１０ｂ」と表す。例えば、ｒｅｎｅｗ＿ｆｌｇ［ｃｎｔ］は、ｃｎｔ値をアドレスとしたデータを重心格納バッファ２２１４ｄから読み出したときの更新フラグであり、ｒｅｎｅｗ＿ｆｌｇ［５］は、アドレス５に格納するデータの更新フラグを表す。
【００８７】
また、ｌｂｎｕｍは、該当ラベルの画素数を示すものであり、ラベル付けの都度該当ラベルのｌｂｎｕｍ値に１をインクリメントする。例えば、ｌｂｎｕｍ［ｃｎｔ］は、ｃｎｔ値をアドレスとしたデータを重心格納バッファ２２１４ｄから読み出したときのラベルの画素数を表す。これにより、連結成分の画素の個数を計数することができる。
【００８８】
また、ｓｕｍｘは、該当ラベルの画素のｘ座標を加算した総和を示すものであり、ラベル付けの都度該当ラベルのｓｕｍｘ値に現在の注目画素のｘ座標を加算する。例えば、ｓｕｍｘ［ｃｎｔ］は、ｃｎｔ値をアドレスとしたデータを重心格納バッファ２２１４ｄから読み出したときのｘ座標和を表す。
【００８９】
また、ｓｕｍｙは、該当ラベルの画素のｙ座標を加算した総和を示すものであり、ラベル付けの都度該当ラベルのｓｕｍｙ値に現在の注目画素のｙ座標を加算する。例えば、ｓｕｍｙ［ｃｎｔ］は、ｃｎｔ値をアドレスとしたデータを重心格納バッファ２２１４ｄから読み出したときのｙ座標和を表す。
【００９０】
また、ｌｂｔｂｌは、ラベルテーブルを読み出したときのラベル情報を示すものであり、ｌｂｔｂｌ［ｃｎｔ］は、ｃｎｔ値をアドレスとしたラベルテーブルを重心格納バッファ２２１４ｄから読み出したときのラベル情報を表す。
【００９１】
重心算出部２２１４は、処理を開始したとき、ラベリング処理部２２１４ａでｃｎｔを初期化し（Ｓ１０１）、現時点のｃｎｔが０であるか否かを判定し（Ｓ１０２）、ｃｎｔが０の場合（Ｓ１０２でＹＥＳ）、処理を終了する。尚、初期値は、特定された連結成分の数と等しく、ラベルの最大数又はｃｎｔの最大値である２０４７の何れかになる。
【００９２】
一方、重心算出部２２１４は、ラベリング処理部２２１４ａでｃｎｔが０でないと判定した場合（Ｓ１０２でＮＯ）、現時点のｃｎｔ値をアドレスとするデータを重心格納バッファ２２１４ｄから読み出し（Ｓ１０３）、読み出したデータが含むｒｅｎｅｗ＿ｆｌｇ［ｃｎｔ］が００ｂであるか否かを判定する（Ｓ１０４）。即ち、重心算出部２２１４は、該当ラベルの情報が空であるか否かを判定する。その結果、重心算出部２２１４は、ラベリング処理部２２１４ａでｒｅｎｅｗ＿ｆｌｇ［ｃｎｔ］が００ｂであると判定した場合（Ｓ１０４でＹＥＳ）、該当ラベルが空になったことを示す空きフラグを更新し（Ｓ１０５）、現時点のｃｎｔをデクリメントし（Ｓ１０６）、ステップＳ１０２の判定に戻る。
【００９３】
一方、重心算出部２２１４は、ラベリング処理部２２１４ａでｒｅｎｅｗ＿ｆｌｇ［ｃｎｔ］が００ｂでないと判定した場合（Ｓ１０４でＮＯ）、更にｌｂｔｂｌ［ｃｎｔ］が現時点のｃｎｔ値と等しいか否かを判定し（Ｓ１０７）、ｌｂｔｂｌ［ｃｎｔ］が現時点のｃｎｔ値と等しくないと判定した場合（Ｓ１０７でＮＯ）、ｌｂｔｂｌ［ｃｎｔ］値をアドレスとしたデータを重心格納バッファ２２１４ｄから読み出す（Ｓ１０８）。
【００９４】
重心算出部２２１４は、ラベリング処理部２２１４ａで読み出したデータに後述する加算処理を施し（Ｓ１０９）、前記ｌｂｔｂｌ［ｃｎｔ］値をアドレスとしたデータを加算処理の結果で更新する（Ｓ１１０）。
【００９５】
重心算出部２２１４は、ラベリング処理部２２１４ａでｃｎｔ値をアドレスとして読み出したデータを初期化し（Ｓ１１１）、現時点のｃｎｔをデクリメントし（Ｓ１０６）、ステップＳ１０２の判定に戻る。
【００９６】
一方、重心算出部２２１４は、ラベリング処理部２２１４ａでｌｂｔｂｌ［ｃｎｔ］が現時点のｃｎｔ値と等しいと判定した場合（Ｓ１０７でＹＥＳ）、更にｒｅｎｅｗ＿ｆｌｇ［ｃｎｔ］が０１ｂであるか否か判定する（Ｓ１１２）。即ち、該当ラベルの情報の更新がないか否かを判定する。その結果、重心算出部２２１４は、ラベリング処理部２２１４ａでｒｅｎｅｗ＿ｆｌｇ［ｃｎｔ］が０１ｂであると判定した場合（Ｓ１１２でＹＥＳ）、後述する閾値判定の処理を実行し（Ｓ１１３）、ｃｎｔ値をアドレスとして読み出したデータを初期化し（Ｓ１１４）、該当ラベルが空になったことを示す空きフラグを更新し（Ｓ１１５）、現時点のｃｎｔをデクリメントし（Ｓ１０６）、ステップＳ１０２の判定に戻る。
【００９７】
一方、重心算出部２２１４は、ラベリング処理部２２１４ａでｒｅｎｅｗ＿ｆｌｇ［ｃｎｔ］が０１ｂでないと判定した場合（Ｓ１１２でＮＯ）、ｒｅｎｅｗ＿ｆｌｇ［ｃｎｔ］を０１ｂに更新し（Ｓ１１６）、即ち、該当ラベルの情報が更新なしにリセットされた旨を示し、現時点のｃｎｔをデクリメントし（Ｓ１０６）、ステップＳ１０２の判定に戻る。
【００９８】
次に、重心算出部２２１４が前記重心算出処理のステップＳ１１３で実行する閾値判定の手順について説明する。重心算出部２２１４は、対象ラベルの画素の個数ｌｂｎｕｍを計数し、計数した対象ラベルの画素の個数ｌｂｎｕｍが第１の閾値以上であるか否かを判定し、判定の結果に応じて重心計算処理部２２１４ｃで重心計算を行うか否かを決定する。図６は重心算出部２２１４の閾値判定の手順を示すフローチャートである。
【００９９】
重心算出部２２１４は、連結成分閾値処理部２２１４ｂでｃｎｔ値をアドレスとして読み出し、計数した対象ラベルの画素の個数であるｌｂｎｕｍ［ｃｎｔ］が第１の閾値未満であるか否かを判定し（Ｓ２０１）、ｌｂｎｕｍ［ｃｎｔ］が第１の閾値未満であると判定した場合（Ｓ２０１でＹＥＳ）、ｌｂｎｕｍ［ｃｎｔ］を含むデータを破棄し（Ｓ２０２）、後述するように第１の閾値の変更を行い、閾値判定を終了する。
【０１００】
一方、重心算出部２２１４は、連結成分閾値処理部２２１４ｂでｌｂｎｕｍ［ｃｎｔ］が第１の閾値以上であると判定した場合（Ｓ２０１でＮＯ）、読み出したデータが含むｓｕｍｘ、ｓｕｍｙ及びｌｂｎｕｍを重心計算処理部２２１４ｃへ出力し（Ｓ２０３）、閾値判定を終了する。
【０１０１】
ここで、前記閾値判定の具体例を示しておく。図８は閾値判定の一例を示す説明図、図９は特徴点が少ない原稿の一例を示す説明図である。例えば、第１の閾値を１００と設定した場合、図８中の文字「い」のラベルの連結成分は、その左側連結成分の画素の個数が１０９であるから重心算出の対象となるが、その右側連結成分の画素の個数が３８であるから重心算出の対象にならず、得られた結果が破棄される。従って、図８の文字「い」を含む原稿が罫線枠及び少数の文字で構成されている場合（図９参照）、連結成分の画素数が少なく、重心算出の対象が少なくなり、特徴点の点数を必要数確保できず、判定精度が低下することになる。そこで、重心算出部２２１４は、例えば、第１の閾値を３０に変更する。その結果、前記右側連結成分は重心対象となり、特徴点の点数が増えるため、判定精度の低下を回避することができる。
【０１０２】
次に、重心算出部２２１４が前記重心算出処理のステップＳ１０９で実行する加算処理の手順について説明する。重心算出部２２１４は、ラベルの連結成分の画素の座標値を累積加算し、累積加算に用いた画素数を計数し、これらの結果を重心計算処理部２２１４ｃへ出力する。図７は重心算出部２２１４の加算処理の手順を示すフローチャートである。
【０１０３】
重心算出部２２１４は、制御部２２１４ｅで重心格納バッファ２２１４ｄからｃｎｔ値をアドレスとして読み出したデータが含むｓｕｍｘを同バッファからｌｂｔｂｌ［ｃｎｔ］値をアドレスとして読み出したデータが含むｓｕｍｘに加算し（Ｓ３０１）、同バッファからｃｎｔ値をアドレスとして読み出したデータが含むｓｕｍｙを、同バッファからｌｂｔｂｌ［ｃｎｔ］値をアドレスとして読み出したデータが含むｓｕｍｙに加算する（Ｓ３０２）。重心算出部２２１４は、制御部２２１４ｅで同バッファからｃｎｔ値をアドレスとして読み出したデータが含むｌｂｎｕｍを同バッファからｌｂｔｂｌ［ｃｎｔ］値をアドレスとして読み出したデータが含むｌｂｎｕｍに加算し（Ｓ３０３）、加算後のｌｂｎｕｍが最大値であるＦＦＦｈを超えるか否かを判定する（Ｓ３０４）。その結果、重心算出部２２１４は、制御部２２１４ｅで加算後のｌｂｎｕｍがＦＦＦｈを超えると判定した場合（Ｓ３０４でＹＥＳ）、ＦＦＦｈを選択し（Ｓ３０５）、選択したＦＦＦｈをクリップする。
【０１０４】
一方、重心算出部２２１４は、制御部２２１４ｅで加算後のｌｂｎｕｍがＦＦＦｈを超えないと判定した場合（Ｓ３０４でＮＯ）、加算後のｌｂｎｕｍを選択し（Ｓ３０６）、選択した加算後のｌｂｎｕｍをクリップする。
【０１０５】
そして、重心算出部２２１４は、制御部２２１４ｅでｒｅｎｅｗ＿ｆｌｇ［ｃｎｔ］が１０ｂであるか否かを判定し（Ｓ３０７）、ｒｅｎｅｗ＿ｆｌｇ［ｃｎｔ］が１０ｂであると判定した場合（Ｓ３０７でＹＥＳ）、重心格納バッファ２２１４ｄからｌｂｔｂｌ［ｃｎｔ］値をアドレスとして読み出したデータが含むｒｅｎｅｗ＿ｆｌｇ［ｌｂｔｂｌ［ｃｎｔ］］を１０ｂに更新し（Ｓ３０９）、加算処理を終了する。
【０１０６】
一方、重心算出部２２１４は、制御部２２１４ｅでｒｅｎｅｗ＿ｆｌｇ［ｃｎｔ］が１０ｂでないと判定した場合（Ｓ３０７でＮＯ）、ｒｅｎｅｗ＿ｆｌｇ［ｌｂｔｂｌ［ｃｎｔ］］を更新しないで（Ｓ３０８）、加算処理を終了する。
【０１０７】
当該加算処理の終了後、重心算出部２２１４は、制御部２２１４ｅでｌｂｔｂｌ［ｃｎｔ］値をアドレスとして読み出したデータを加算後のｓｕｍｘ、ｓｕｍｙ及びクリップした加算後のｌｂｎｕｍ又はＦＦＦｈに更新する（ステップＳ１１０参照）。
【０１０８】
尚、本実施の形態において、重心算出部２２１４は、一つの第１の閾値に基づいて閾値判定を行うが、これに限らず、複数の異なる第１の閾値に基づいて閾値判定を並行的に行い、判定の結果、連結成分の数が最多になる第１の閾値を決定し、決定した第１の閾値に基づいて前記重心算出処理、閾値判定及び加算処理を実行するようにしてもよい。以下、実施例１として説明する。
【０１０９】
実施例１．
図１０は実施例１に係る重心算出部２２１４の構成を示す模式図である。実施例１において、連結成分閾値処理部２２１４ｂは第１連結成分閾値処理部２２１４ｂ1 及び第２連結成分閾値処理部２２１４ｂ2 とし、重心計算処理部２２１４ｃは第１重心計算処理部２２１４ｃ1 及び第２重心計算処理部２２１４ｃ2 とし、重心格納バッファ２２１４ｄは第１重心格納バッファ２２１４ｄ1 及び第２重心格納バッファ２２１４ｄ2 とする。他の実施例に係る重心算出部２２１４は、第１連結成分閾値及び第２連結成分閾値の異なる第１の閾値（例えば、３０，１００）に基づいて閾値判定し、判定結果に基づいて重心算出を夫々行い、選択部２２１５ｆにて重心（特徴点）が最多になる結果を選択し、選択した特徴点をメモリ２２５へ出力する。以上、実施例１を説明した。
【０１１０】
また、本実施の形態において、原稿画像を分割することなく下限値、即ち第１の閾値を変更する一例を説明したが、これに限らず、原稿画像を分割し、その分割した領域に対して各々で第１の閾値を変更するようにしてもよい。以下、実施例２として説明する。
【０１１１】
実施例２．
図２８は入力される原稿画像の一例を示す説明図である。一般的に入力される原稿のフォーマットは、多種多様であるが、原稿全体に亘り、一様に文字が存在するような場合は少なく、原稿の上下左右端領域には文字が存在しない場合が多い。例えば、図２８に示すとおり、閾値判定の下限が一様に１００と設定されている場合、ノイズが閾値判定の範囲内となるため、重心算出の対象となってしまう。また、原稿画像の中央領域に存在する文字の連結成分の画素数が１００以下である場合（たとえばｉの点の画素数）、重心算出の対象とならない。以上のことから、算出される重心の精度が落ちる可能性がある。
【０１１２】
そこで、実施例２では、原稿画像を分割し、その分割した領域に対して、各々で下限値を設定するような構成とすることにより、上下左右端領域のノイズを重心として算出されないような閾値が設定可能となるだけでなく、原稿画像の重要な領域（例えば、中央の領域など）においても、より小さな連結領域に対して重心算出をするような閾値設定が可能となるため、総合的に精度向上を狙った柔軟な閾値設定が可能となる。即ち、ノイズの除去と共に、文字部分の小さな連結成分に対しても重心を算出できるため、精度の高い重心を十分数確保できる。
【０１１３】
図２９は原稿画像を均等に４分割した一例を示す説明図、図３０は実施例２に係る重心算出部２２１４の構成を示す模式図、図３１及び図３２は閾値テーブルの構造を示す説明図、図３３は原稿画像を分割した一例を示す説明図である。
【０１１４】
図２９では、上端の領域から順に、領域１、領域２、領域３、および領域４と定義している。そして、実施例２では、領域１の下限閾値を２００、領域２の下限閾値を３０、領域３の下限閾値を３０、領域４の下限閾値を２００と設定している。このように構成とすることにより、領域１では、画素数４００の文字「Ａ」のみが重心算出対象となり、ノイズは対象とならない。領域２、および領域３では、ｉの点など画素数の少ない文字連結成分も重心算出対象となる。領域４では、ノイズのみしか存在しないが、このノイズは重心算出対象とならない。
【０１１５】
以上のことから、実施例２の方法では、重心算出を精度よく行うことができる。また、この方法によると、並行して閾値判定を行い、判定の結果から範囲の決定を行うといった手順を取る必要がないため、処理を容易にし、高速に行うことができる。
【０１１６】
重心算出部２２１４は、閾値テーブルを備える（図３０参照）。閾値テーブルは、図３１に示すように、アドレスと領域番号を対応付けて下限閾値を格納しておいても良く、図３２に示すように、アドレスと原稿画像の領域の分割数を対応付けて各々の下限閾値を格納しておく構成でもよい。尚、重心算出部２２１４が備えるその他の構成は、図４で示す重心算出部２２１４の構成と同様であるので、同一符号を付してその説明を省略する。
【０１１７】
原稿画像の分割数に関しては、さまざまな原稿画像から統計を取って分割数を決めればよい。他の方法としては、原稿画像の種別、あるいはレイアウト認識の結果を用いて分割数を決めてもよい。
【０１１８】
原稿画像の分割に関しては、図２９に示すように、分割数に応じて均一に区切る必要はなく、領域ごとにライン数を設定してもよいし、設定された重みづけから自動的に算出する、例えば、重み係数を設定し算出するような構成でもよい。また、主走査方向、副走査方向のいずれか一方のみに分割するのではなく、図３３に示すように、主走査方向、および副走査方向のオフセット（ＨＯＦＴ、ＶＯＦＴ）、画素数（ＨＭＡＸ、ＶＭＡＸ）を設定することにより、原稿画像の左右上下端領域と、中央領域とに分割し、それぞれ異なる下限閾値を設定するような構成であってもよい。尚、図３３の例では、分割数は２となる。
【０１１９】
尚、上記説明した原稿画像を分割し、分割されたそれぞれ領域において連結領域の下限値を設定して算出された特徴点の数が第２の閾値以下である場合、特徴量を求める周辺領域の範囲（マスクサイズ、参照ブロックの数）を変更するようにしても良い。以上、実施例２を説明した。
【０１２０】
次に画像照合処理部２２の特徴量算出部２２２について説明する。図１１は特徴量算出部２２２の構成を示す模式図、図１２は注目特徴点の周辺領域を示す説明図である。特徴量算出部２２２は、画素ブロック設定部２２２０、近傍点抽出部２２２１及び特徴量抽出部２２２２を備える。
【０１２１】
画素ブロック設定部２２２０は、抽出した特徴点の何れか一つを注目特徴点とし、該注目特徴点の周辺領域を示すべく、画像の一又は複数の画素からなる画素ブロックを設定し、周辺領域を変更すべく、設定した画素ブロックのマスクサイズ又は参照ブロック数を変更する処理を行う。
【０１２２】
近傍点抽出部２２２１は、抽出した特徴点のうち、前記周辺領域内に位置する近傍の特徴点を決定し、決定した近傍の特徴点の点数を計数し、計数した点数が第２の閾値以下であるか否かを判定する処理を行う。判定の結果、計数した点数が第２の閾値を超えると判定した場合、特徴量抽出部２２２２が特徴量算出処理を行う。尚、前記周辺領域内に位置する近傍の特徴点が多数存在する場合は、注目特徴点から最短距離にある４つの特徴点を近傍の特徴点として決定するようにしてもよい（図１２参照）。
【０１２３】
特徴量抽出部２２２２は、注目特徴点及び／又は決定した近傍の特徴点に基づいて画像の特徴を示す特徴量を算出する処理を行い、算出した特徴量をメモリ２２５へ出力する。尚、特徴量の算出方法は後述する。
【０１２４】
次に、注目特徴点の周辺領域内に位置する近傍の特徴点の点数と該周辺領域の変更との関係について説明する。図１３は周辺領域のマスクサイズと該周辺領域内に位置する近傍の特徴点との関係を示す説明図である。
【０１２５】
例えば、特徴量算出部２２２は、画素ブロック設定部２２２０で抽出した特徴点の何れか一つを注目特徴点としたとき、１個当たり２５６画素×２５６画素のマスクサイズになるように画素ブロックを設定し、前記注目特徴点を含む画素ブロックを中心とする近傍８画素ブロックを「周辺領域」として設定する。このとき、特徴量算出部２２２は、近傍点抽出部２２２１で該周辺領域内に位置する近傍の特徴点を３個抽出することができる（図１３（ａ）参照）。そこで、特徴量算出部２２２は、画素ブロック設定部２２２０で画素ブロックのマスクサイズを１個当たり５１２画素×５１２画素になるように変更する。特徴量算出部２２２は、近傍点抽出部２２２１で該周辺領域内に位置する近傍の特徴点を４個抽出することができる（図１３（ｂ）参照）。即ち、特徴点の点数を増やして判定精度の低下を回避することができる。
【０１２６】
ここで、特徴量算出部２２２の周辺領域の設定処理、近傍の特徴点の決定処理及び特徴量算出処理について説明する。図１４は特徴量算出部２２２の処理の手順を示すフローチャートである。
【０１２７】
特徴量算出部２２２は、画素ブロック設定部２２２０で画像の一又は複数の画素からなる画素ブロックを設定し、設定した画素ブロックのマスクサイズを設定する（Ｓ４０１）。特徴量算出部２２２は、画素ブロック設定部２２２０で抽出した特徴点の何れか一つを注目特徴点とし、当該注目特徴点を含む画素ブロックを中心とする近傍８画素ブロックを「周辺領域」として設定し、設定した画素ブロック、マスクサイズ及び周辺領域を含むデータを近傍点抽出部２２２１へ出力する。
【０１２８】
特徴量算出部２２２は、近傍点抽出部２２２１で画素ブロック設定部２２２０から出力されたデータを受け付け、受け付けたデータに基づいて周辺領域内に位置する近傍の特徴点を抽出する（Ｓ４０２）。特徴量算出部２２２は、近傍点抽出部２２２１で抽出した近傍の特徴点の点数を計数し（Ｓ４０３）、計数した点数が予め設定した第２の閾値以下であるか否かを判定する（Ｓ４０４）。その結果、特徴量算出部２２２は、近傍点抽出部２２２１で計数した点数が第２の閾値以下であると判定した場合（Ｓ４０４でＹＥＳ）、その旨を示す信号を画素ブロック設定部２２２０へ出力する。特徴量算出部２２２は、当該信号を受け付けた画素ブロック設定部２２２０で画素ブロックのマスクサイズを変更し（Ｓ４０５）、変更したマスクサイズを含むデータを近傍点抽出部２２２１へ出力する。特徴量算出部２２２は、近傍点抽出部２２２１でステップＳ４０２を繰り返す。
【０１２９】
一方、特徴量算出部２２２は、近傍点抽出部２２２１で計数した点数が第２の閾値を超えると判定した場合（Ｓ４０４でＮＯ）、抽出した近傍の特徴点に関するデータを特徴量抽出部２２２２へ出力する。特徴量算出部２２２は、特徴量抽出部２２２２で近傍点抽出部２２２１から出力されたデータを受け付け、受け付けたデータに基づいて特徴量を算出する（Ｓ４０６）。特徴量算出部２２２は、特徴量抽出部２２２２で算出した特徴量をメモリ２２５へ出力し、処理を終了する。
【０１３０】
尚、本実施の形態において、特徴量算出部２２２は、一定の条件を満たす場合に特徴量抽出部２２２２で特徴量算出を実行するが（ステップＳ４０４、４０６参照）、これに限らず、特徴量算出部２２２は、特徴量抽出部２２２２で特徴量算出を実行した後に一定条件の判定を行うようにしてもよい。以下、実施例３として説明する。
【０１３１】
実施例３．
図１５は実施例３に係る特徴量算出部２２２の処理の手順を示すフローチャートである。実施例３に係る特徴量算出部２２２は、画素ブロック設定部２２２０で画像の一又は複数の画素からなる画素ブロックを設定し、設定した画素ブロックのマスクサイズを設定する（Ｓ５０１）。特徴量算出部２２２は、画素ブロック設定部２２２０で抽出した特徴点の何れか一つを注目特徴点とし、当該注目特徴点を含む画素ブロックを中心とする近傍８画素ブロックを「周辺領域」として設定し、設定した画素ブロック、マスクサイズ及び周辺領域を含むデータを近傍点抽出部２２２１へ出力する。
【０１３２】
特徴量算出部２２２は、近傍点抽出部２２２１で画素ブロック設定部２２２０から出力されたデータを受け付け、受け付けたデータに基づいて周辺領域内に位置する近傍の特徴点を抽出する（Ｓ５０２）。特徴量算出部２２２は、近傍点抽出部２２２１で抽出した近傍の特徴点に関するデータを特徴量抽出部２２２２へ出力する。特徴量算出部２２２は、特徴量抽出部２２２２で近傍点抽出部２２２１から出力されたデータを受け付け、受け付けたデータに基づいて特徴量の算出を行い（Ｓ５０３）、算出した特徴量が有効であるか否かを判定する（Ｓ５０４）。その結果、特徴量算出部２２２は、特徴量抽出部２２２２で算出した特徴量が有効でないと判定した場合（Ｓ５０４でＮＯ）、その旨を示す信号を画素ブロック設定部２２２０へ出力する。特徴量算出部２２２は、当該信号を受け付けた画素ブロック設定部２２２０で画素ブロックのマスクサイズを変更し（Ｓ５０５）、変更したマスクサイズを含むデータを近傍点抽出部２２２１へ出力する。特徴量算出部２２２は、近傍点抽出部２２２１でステップＳ５０２の処理を実行する。
【０１３３】
一方、特徴量算出部２２２は、特徴量抽出部２２２２で算出した特徴量が有効であると判定した場合（Ｓ５０４でＹＥＳ）、算出した特徴量をメモリ２２５へ出力し、処理を終了する。
【０１３４】
ここで、算出した特徴量が有効であるか否かの判定は、例えば、ステップＳ５０３で抽出すべき特徴点の点数が４であるところ２つしか確保できず当該２つの特徴点に基づいて特徴量の算出を行う場合（Ｓ５０３）、確保できなかった２点に対して初期値として座標の最大値を与えることにより、マスクサイズの対角線距離以上の距離が算出されるか否かで判定する。以上、実施例３を説明した。
【０１３５】
また、本実施の形態において、画素ブロックライン単位で重心をカウントすることなく、マスクサイズを変更する一例を説明したが、これに限らず、画素ブロックライン単位で重心をカウントしておき、その結果に応じてマスクサイズを変更するようにしてもよい。以下、実施例４として説明する。
【０１３６】
実施例４．
図３４は画素ブロックライン単位にて重心をカウントするための重心算出部２２１４の構成を示す模式図である。重心算出部２２１４は、重心カウントバッファ２２１４ｆを備える。重心カウントバッファ２２１４ｆは、画素ブロックライン単位でカウントした重心数を格納しており、重心を格納する際に、対応する画素ブロックに対応するカウンタに１を加算する構成となっている。尚、重心算出部２２１４が備えるその他の構成は、図４で示す重心算出部２２１４の構成と同様であるので、同一符号を付してその説明を省略する。
【０１３７】
図３５は重心カウントバッファ２２１４ｆによるカウントの例を示す説明図である。図３５は、画素ブロックライン１のカウント結果が１４、画素ブロックライン２のカウント結果が１２、以降画素ブロックライン３２までのカウント結果を示している。これらのカウント結果が重心カウントバッファ２２１４ｆに格納されている。
【０１３８】
図３６は実施例４に係る特徴量算出部２２２の処理の手順を示すフローチャートである。特徴量算出部２２２は、最初に、重心カウントバッファ２２１４ｆに格納した画素ブロックに対応するマスクサイズを設定する（Ｓ８０１）。
【０１３９】
特徴量算出部２２２は、注目点を含む画素ブロック、およびその周辺のブロックを含む処理を行う画素ブロックラインに対応する重心カウント結果を重心カウントバッファ２２１４ｆから読み出し（Ｓ８０２）、読み出した画素ブロックライン分、即ち、近傍マスクラインの重心カウント結果を加算する（Ｓ８０３）。
【０１４０】
特徴量算出部２２２は、加算結果が第３の閾値より小さいか否かを判定する（Ｓ８０４）。ここで、近傍４点の特徴点を抽出する場合、注目特徴点と周辺に４点以上の特徴点がなければ、精度良く特徴量を算出できないため、マスクサイズを変更する必要がある。
【０１４１】
特徴量算出部２２２は、加算結果が第３の閾値より小さいと判定した場合（Ｓ８０４でＹＥＳ）、特徴点を算出するために必要な近傍特徴点が存在しないため、より大きなマスクサイズへ変更し（Ｓ８０５）、ステップＳ８０２へ戻り、重心カウントバッファ２２１４ｆからのデータ読み出しを行う。
【０１４２】
一方、特徴量算出部２２２は、加算結果が第３の閾値以上であると判定した場合（Ｓ８０４でＮＯ）、近傍の特徴点を抽出し（Ｓ８０６）、特徴量抽出部２２２２へ出力する。特徴量抽出部２２２２は、受け付けたデータに基づいて特徴量を算出する（Ｓ８０７）。特徴量算出部２２２は、処理を終了する。
【０１４３】
図３７は閾値判定およびマスクサイズ変更を説明する模式図である。図３７では、マスクサイズ設定が２５６画素×２５６画素に設定されている。この場合、注目特徴点を含む画素ブロックラインのカウント数ＢＣＣＮＴ３＝１，周辺のブロックを含む画素ブロックラインのカウント数はそれぞれＢＣＣＮＴ２＝１、ＢＣＣＮＴ４＝２であるため、加算結果は４となる。また、第３の閾値（ＴＨ＿ＳＰＲＥＡＤ）は、近傍特徴点４個＋注目特徴点１個＝５となる。仍って、特徴量算出部２２２は、加算結果が第３の閾値より小さいと判定し（Ｓ８０４でＹＥＳを参照）、最初に設定したマスクサイズ２５６画素×２５６画素を５１２画素×５１２画素へ変更する。これにより、近傍特徴点を４個確保することができる。
【０１４４】
尚、上記説明した原稿画像を分割し、分割されたそれぞれ領域において連結領域の下限値を設定し、分割されたそれぞれの領域において、注目点を含む画素ブロック、およびその周辺のブロックを含む処理を行う画素ブロックラインに対応する重心カウント結果を、重心カウントバッファ２２１４ｆから読み出して加算し、加算結果が第２の閾値以下のとき、マスクサイズを変更するようにしても良い。
【０１４５】
また、注目点を含む画素ブロック、およびその周辺のブロックを含む処理を行う画素ブロックラインに対応する重心カウント結果を、重心カウントバッファ２２１４ｆから読み出して加算し、加算結果が第３の閾値より小さいとき、特徴点を求める連結領域を抽出する画素数の下限値、あるいは、特徴点を求める連結領域を抽出する画素数の下限値とマスクサイズを変更するようにしても良い。
【０１４６】
更にまた、特徴点を求める連結領域を抽出する画素数の下限値を複数設定し、計数された最多の特徴点が第３の閾値より小さいとき、マスクサイズを変更するようにしても良い。以上、実施例４を説明した。
【０１４７】
次に、注目特徴点の周辺領域内に位置する近傍の特徴点の点数と該周辺領域の変更との関係について、実施例３に基づいて説明する。図１６は周辺領域の画素ブロック数と該周辺領域内に位置する近傍の特徴点との関係を示す説明図である。
【０１４８】
例えば、特徴量算出部２２２は、画素ブロック設定部２２２０で抽出した特徴点の何れか一つを注目特徴点としたとき、１個当たり３×３の参照ブロック数になるように画素ブロックを設定し、前記注目特徴点を含む画素ブロックを中心とする近傍の画素ブロックを「周辺領域」として設定する。このとき、特徴量算出部２２２は、近傍点抽出部２２２１で該周辺領域内に位置する近傍の特徴点を３個抽出することができる（図１３（ａ）参照）。そこで、特徴量算出部２２２は、画素ブロック設定部２２２０で画素ブロックの参照ブロック数を５×５になるように変更する。その結果、特徴量算出部２２２は、近傍点抽出部２２２１で該周辺領域内に位置する近傍の特徴点を４個抽出することができ（図１６参照）、特徴点の点数が増えるため、判定精度の低下を回避することができる。
【０１４９】
ここで、特徴量算出部２２２の周辺領域の設定処理、近傍の特徴点の決定処理及び特徴量算出処理について説明する。図１７は実施例３に係る特徴量算出部２２２の処理の手順を示すフローチャートである。
【０１５０】
特徴量算出部２２２は、画素ブロック設定部２２２０で画像の一又は複数の画素からなる画素ブロックを設定し、設定した画素ブロックの参照ブロック数を設定する（Ｓ６０１）。特徴量算出部２２２は、画素ブロック設定部２２２０で抽出した特徴点の何れか一つを注目特徴点として該注目特徴点を含む画素ブロックを中心とする近傍の画素ブロックを「周辺領域」として設定し、設定した画素ブロック、参照ブロック数及び周辺領域を含むデータを近傍点抽出部２２２１へ出力する。
【０１５１】
特徴量算出部２２２は、近傍点抽出部２２２１で画素ブロック設定部２２２０から出力されたデータを受け付け、受け付けたデータに基づいて周辺領域内に位置する近傍の特徴点を抽出し（Ｓ６０２）、抽出した近傍の特徴点の点数を計数し（Ｓ６０３）、計数した点数が予め設定した第２の閾値以下であるか否かを判定する（Ｓ６０４）。その結果、特徴量算出部２２２は、近傍点抽出部２２２１で計数した点数が第２の閾値以下であると判定した場合（Ｓ６０４でＹＥＳ）、その旨を示す信号を画素ブロック設定部２２２０へ出力する。特徴量算出部２２２は、当該信号を受け付けた画素ブロック設定部２２２０で画素ブロックの参照ブロック数を変更し（Ｓ６０５）、変更した参照ブロック数を含むデータを近傍抽出部２２２０へ出力する。特徴量算出部２２２は、近傍点抽出部２２２１でステップＳ６０２を行う。
【０１５２】
一方、特徴量算出部２２２は、近傍点抽出部２２２１で計数した点数が第２の閾値を超えると判定した場合（Ｓ６０４でＮＯ）、抽出した近傍の特徴点に関するデータを特徴量抽出部２２２２へ出力する。特徴量算出部２２２は、特徴量抽出部２２２２で近傍点抽出部２２２１から出力されたデータを受け付け、受け付けたデータに基づいて特徴量を算出し（Ｓ６０６）、算出した特徴量をメモリ２２５へ出力し、処理を終了する。以上、実施例３に基づいて説明した。
【０１５３】
尚、実施例３に基づく説明において、特徴量算出部２２２は、一定条件を満たす場合に特徴量抽出部２２２２で特徴量算出を実行する一例を示したが（ステップＳ６０４、Ｓ６０６参照）、これに限らず、特徴量抽出部２２２２が特徴量算出を実行した後、特徴量算出部２２２は、一定の条件の判定を行うようにしてもよい。以下、実施例５として説明する。
【０１５４】
実施例５．
図１８は実施例５に係る特徴量算出部２２２の処理の手順を示すフローチャートである。特徴量算出部２２２は、画素ブロック設定部２２２０で画像の一又は複数の画素からなる画素ブロックを設定し、設定した画素ブロックの参照ブロック数を設定する（Ｓ７０１）。特徴量算出部２２２は、画素ブロック設定部２２２０で抽出した特徴点の何れか一つを注目特徴点とし、該注目特徴点を含む画素ブロックを中心とする近傍の画素ブロックを「周辺領域」として設定し、設定した画素ブロック、参照ブロック数及び周辺領域を含むデータを近傍点抽出部２２２１へ出力する。
【０１５５】
特徴量算出部２２２は、近傍点抽出部２２２１で画素ブロック設定部２２２０から出力されたデータを受け付け、受け付けたデータに基づいて、周辺領域内に位置する近傍の特徴点を抽出する（Ｓ７０２）。特徴量算出部２２２は、近傍点抽出部２２２１で抽出した近傍の特徴点に関するデータを特徴量抽出部２２２２へ出力する。特徴量算出部２２２は、特徴量抽出部２２２２で近傍点抽出部２２２１から出力されたデータを受け付け、受け付けたデータに基づいて特徴量を算出し（Ｓ７０３）、算出した特徴量が有効であるか否かを判定する（Ｓ７０４）。その結果、特徴量算出部２２２は、特徴量抽出部２２２２で算出した特徴量が有効でないと判定した場合（Ｓ７０４でＮＯ）、その旨を示す信号を画素ブロック設定部２２２０へ出力する。特徴量算出部２２２は、当該信号を受け付けた画素ブロック設定部２２２０で画素ブロックの参照ブロック数を変更し（Ｓ７０５）、変更した参照ブロック数を含むデータを近傍点抽出部２２２１へ出力する。特徴量算出部２２２は、近傍点抽出部２２２１でステップＳ７０２を行う。
【０１５６】
一方、特徴量算出部２２２は、特徴量抽出部２２２２で算出した特徴量が有効であると判定した場合（Ｓ７０４でＹＥＳ）、算出した特徴量をメモリ２２５へ出力し、処理を終了する。以上、実施例５を説明した。
【０１５７】
尚、本実施の形態において、特徴量算出部２２２は、周辺領域の設定処理、近傍の特徴点抽出処理及び特徴量算出処理について直列的に行う一例を説明したが、これに限らず、複数の異なるマスクサイズ又は参照ブロック数に基づいて一連の処理を行い、近傍の特徴点の点数が最多になる処理を選択し、選択した処理によるデータに基づいて特徴量を算出するようにしてもよい。以下、実施例６として説明する。
【０１５８】
実施例６．
図１９は実施例６に係る特徴量算出部２２２の構成を示す模式図である。実施例６において、画素ブロック設定部２２２０は第１画素ブロック設定部２２２０ａ及び第２画素ブロック設定部２２２０ｂとし、近傍点抽出部２２２１は第１近傍点抽出部２２２１ａ及び第２近傍点抽出部２２２１ｂとし、更に、分配部２２２３及び選択部２２２４を備える。分配部２２２３は、メモリ２２５に格納されている特徴点のデータを受け付け、受け付けたデータを第１画素ブロック設定部２２２０ａ及び第２画素ブロック設定部２２２０ｂへ割り振る。第１画素ブロック設定部２２２０ａ（及び第２画素ブロック設定部２２２０ｂ）は、夫々、画像の一又は複数の画素からなる画素ブロックを設定し、設定した画素ブロックのマスクサイズ又は参照ブロック数を設定し、抽出した特徴点の何れか一つを注目特徴点として該注目特徴点を含む画素ブロックを中心とする近傍の画素ブロックを「周辺領域」として設定し、設定した画素ブロック、マスクサイズ又は参照ブロック数並びに周辺領域を含むデータを第１近傍点抽出部２２２１ａ（及び第２近傍点抽出部２２２１ｂ）へ出力する。第１近傍点抽出部２２２１ａ（及び第２近傍点抽出部２２２１ｂ）は、夫々、第１画素ブロック設定部２２２０ａ（及び第２画素ブロック設定部２２２０ｂ）から出力されたデータを受け付け、受け付けたデータに基づいて周辺領域内に位置する近傍の特徴点を抽出し、抽出した近傍の特徴点の点数を計数し、計数した点数が第２の閾値以下であるか否かを判定し、判定結果を選択部２２２４へ出力する。選択部２２２４は、第１近傍点抽出部２２２１ａ（及び第２近傍点抽出部２２２１ｂ）から出力された判定結果を受け付け、受け付けた判定結果のうち、計数した点数が第２の閾値を超えると判定した方（両者とも第２の閾値を超えている場合はその点数が多い方）を選択し、選択した判定結果を導出した近傍点抽出部から特徴量抽出部２２２２へ近傍の特徴点に関するデータを出力させる。特徴量抽出部２２２２は、近傍点抽出部から出力されたデータを受け付け、受け付けたデータに基づいて特徴量を算出し、算出した特徴量をメモリ２２５へ出力する。以上、実施例６を説明した。
【０１５９】
また、本実施の形態において、画素ブロックライン単位で重心をカウントすることなく、参照ブロック数を変更する一例を説明したが、これに限らず、画素ブロックライン単位で重心をカウントしておき、その結果に応じて参照ブロック数を変更するようにしてもよい。以下、実施例７として説明する。
【０１６０】
実施例７．
実施例７において、画素ブロックライン単位にて重心をカウントするための重心算出部２２１４の構成は、図３４と同じであるので、同一の符号を付してその説明を省略する。
【０１６１】
図３８は実施例７に係る特徴量算出部２２２の処理の手順を示すフローチャートである。特徴量算出部２２２は、最初に、重心カウントバッファ２２１４ｆに格納した画素ブロック単位で、参照するブロック数を設定する（Ｓ９０１）。
【０１６２】
特徴量算出部２２２は、注目特徴点を含む画素ブロック、および参照するブロックがそれぞれ存在する処理を行う画素ブロックラインに対応する重心カウント結果を、重心カウントバッファ２２１４ｆから読み出し（Ｓ９０２）、読み出した画素ブロックライン分、即ち、参照ブロックラインの重心カウント結果を加算する（Ｓ９０３）。
【０１６３】
特徴量算出部２２２は、加算結果が第３の閾値より小さいか否かを判定する（Ｓ９０４）。ここで、近傍４点の特徴点を抽出する場合、注目特徴点と周辺に４点以上の特徴点がなければ、精度良く特徴量を算出できないため、参照ブロック数を変更する必要がある。
【０１６４】
特徴量算出部２２２は、加算結果が第３の閾値より小さいと判定した場合（Ｓ９０４でＹＥＳ）、特徴点を算出するために必要な近傍特徴点が存在しないため、より大きな参照ブロック数へ変更し（Ｓ９０５）、ステップＳ９０２へ戻り、重心カウントバッファ２２１４ｆからのデータ読み出しを行う。
【０１６５】
一方、特徴量算出部２２２は、加算結果が第３の閾値以上であると判定した場合（Ｓ９０４でＮＯ）、近傍の特徴点を抽出し（Ｓ９０６）、特徴量抽出部２２２２へ出力する。特徴量抽出部２２２２は、受け付けたデータに基づいて特徴量を算出する（Ｓ９０７）。特徴量算出部２２２は、処理を終了する。
【０１６６】
図３９は閾値判定および参照ブロック数の変更を説明する模式図である。図３９では、参照ブロック数設定は９（３×３マスク）に設定されている。この場合、注目特徴点を含む画素ブロックラインのカウント数ＢＣＣＮＴ３＝１、参照ブロックの画素ブロックラインのカウント数はそれぞれＢＣＣＮＴ２＝１、ＢＣＣＮＴ４＝２であるため、加算結果は４となる。また、第３の閾値（ＴＨ＿ＳＰＲＥＡＤ）は、近傍特徴点４個＋注目特徴点１個＝５となる。仍って、特徴量算出部２２２は、加算結果が第３の閾値より小さいと判定し（Ｓ９０４でＹＥＳを参照）、最初に設定した参照ブロック数９（３×３マスク）を２５（５×５マスク）へ変更する。これにより、近傍特徴点を４個確保することができる。
【０１６７】
尚、上記説明した原稿画像を分割し、分割されたそれぞれ領域において連結領域の下限値を設定し、分割されたそれぞれの領域において、注目点を含む画素ブロック、およびその周辺のブロックを含む処理を行う画素ブロックラインに対応する重心カウント結果を、重心カウントバッファ２２１４ｆから読み出して加算し、加算結果が第２の閾値以下のとき、参照ブロック数を変更するようにしても良い。
【０１６８】
また、注目点を含む画素ブロック、およびその周辺のブロックを含む処理を行う画素ブロックラインに対応する重心カウント結果を、重心カウントバッファ２２１４ｆから読み出して加算し、加算結果が第３の閾値より小さいとき、特徴点を求める連結領域を抽出する画素数の下限値、あるいは、特徴点を求める連結領域を抽出する画素数の下限値と参照ブロック数を変更するようにしても良い。
【０１６９】
更にまた、特徴点を求める連結領域を抽出する画素数の下限値を複数設定し、計数された最多の特徴点が第３の閾値より小さいとき、参照ブロック数を変更するようにしても良い。以上、実施例７を説明した。
【０１７０】
次に特徴量算出部２２２がステップＳ４０６等で実行する特徴量算出処理について説明する。図２０は注目特徴点と近傍の特徴点との関係を示す説明図、図２１及び図２２は注目特徴点による不変量の算出例を示す説明図、図２３はハッシュテーブルの構造を示す説明図である。
【０１７１】
特徴量算出部２２２は、特徴量抽出部２２２２でメモリ２２５から受け付けたデータに基づいて例えば、注目特徴点Ｐ１に対して、例えば、周辺領域Ｓ１内に位置する４個の特徴点を、注目特徴点Ｐ１からの距離が近い順に抽出する（注目特徴点Ｐ２を近傍の特徴点とする）。また、注目特徴点Ｐ２に対して、周辺領域Ｓ２内に位置する４個の特徴点を上記と同様に注目特徴点Ｐ２からの距離が近い順に抽出する（注目特徴点Ｐ１は近傍の特徴点とする）。
【０１７２】
特徴量算出部２２２は、特徴量抽出部２２２２で抽出した４個の特徴点の中から３個の特徴点を選択して後述の方法で不変量を算出する。尚、選択する特徴点は３個に限るものではなく、４個、５個の特徴点を選択するようにしてもよい。
【０１７３】
注目特徴点Ｐ１の周辺領域内に位置する４個の近傍の特徴点から３個の近傍の特徴点を選択し、３通りの不変量夫々をＨ１ｊ（ｊ＝１、２、３）とする。不変量Ｈ１ｊは、Ｈ１ｊ＝Ａ１ｊ／Ｂ１ｊの式を用いて不変量Ｈ１１、Ｈ１２及びＨ１３を求める（図２１参照）。尚、Ａ１ｊ、Ｂ１ｊは特徴点間の距離を示しており、特徴点間の距離は、各周辺特徴点の座標値に基づいて算出される。これにより、画像が回転、移動、傾いた場合でも、不変量Ｈ１１等は一定であるから当該不変量を用いる画像の類似判定の精度を安定させることができる。
【０１７４】
また、注目特徴点Ｐ２の周辺領域内に位置する４個の近傍の特徴点から３個の近傍の特徴点を選択し、３通りの不変量夫々をＨ２ｊ（ｊ＝１、２、３）とする。不変量Ｈ２ｊは、Ｈ２ｊ＝Ａ２ｊ／Ｂ２ｊの式を用いて不変量Ｈ２１、Ｈ２２、Ｈ２３を求める（図２２参照）。尚、Ａ２ｊ、Ｂ２ｊは特徴点間の距離を示しており、上記と同様に特徴点間の距離は、各周辺特徴点の座標値に基づいて算出される。これにより、画像が回転、移動、傾いた場合でも、不変量Ｈ１１等は一定であるから当該不変量を用いる画像の類似判定の精度を安定させることができる。
【０１７５】
また、特徴量算出部２２２は、特徴量抽出部２２２２で前記不変量に基づいてハッシュ値（特徴量）Ｈｉｊを算出する。ハッシュ値Ｈｉｊは、Ｈｉｊ＝（Ｈｉ１×１０2 ＋Ｈｉ
２×１０1 ＋Ｈｉ３×１０0 ）／Ｅにより求める。但し、ｉは自然数であり特徴点の数を表しており、Ｅは余りをどの程度設定するかにより決定される定数である。例えば、Ｅ＝１０とした場合、余りは１乃至９となり、これが算出するハッシュ値の範囲となる。
【０１７６】
図２６及び図２７は注目特徴点による不変量の算出例を示す説明図である。注目特徴点による不変量を算出する方法としては、例えば、図２６に示すように、注目特徴点Ｐ３の周辺特徴点Ｐ１，Ｐ２，Ｐ４，Ｐ５の４点より４通りの組み合わせを選択し、不変量Ｈ３ｊ（ｊ＝１，２，３，４）を前述の場合と同様に、Ｈ３ｊ＝Ａ３ｊ／Ｂ３ｊにより算出しても良い。また、注目特徴点をＰ４としたときも同様に、注目特徴点Ｐ４の周辺特徴点Ｐ２，Ｐ３，Ｐ５，Ｐ６の４点より４通りの組み合わせを選択し（図２７参照）、不変量Ｈ４ｊ（ｊ＝１，２，３，４）をＨ４ｊ＝Ａ４ｊ／Ｂ４ｊにより算出しても良い。この場合、ハッシュ値Ｈｉは、Ｈｉ＝（Ｈｉ１×１０3 ＋Ｈｉ２×１０2 ＋Ｈｉ３×１０1 ＋Ｈｉ４×１０0 ）／Ｅで算出される。
尚、特徴量としての前記のハッシュ値は一例であり、他のハッシュ関数を用いることができる。また、前記例では、３個の近傍の特徴点に基づいてハッシュ値を算出するが、これに限らず、４個、５個の近傍の特徴点に基づいてハッシュ値を算出するようにしてもよい。
【０１７７】
算出したハッシュ値は、インデックスが対応付けられてハッシュテーブルに格納される（図２３（ａ）参照）。ハッシュテーブルには、照合すべき他方の原稿の画像データが予め登録され、該原稿を表すインデックスに対応付けてハッシュ値が登録されている。ハッシュテーブルは、メモリ２２５に記憶されている。尚、ハッシュ値が同一である場合（例えば、Ｈ１１及びＨ２２）、該当する２つのエントリを一つに纏めてもよい（図２３（ｂ）参照）。また、照合すべき他方の原稿の画像データは、予め画像入力装置１を介して受け付けておき、ハッシュテーブルに登録しておく。
【０１７８】
次に、投票処理部２２３及び類似判定処理部２２４が実行する類似判定処理について説明する。
【０１７９】
投票処理部２２３は、特徴量算出部２２２から出力された特徴量（ハッシュ値）を受け付け、受け付けた特徴量に基づいてメモリ２２５に記憶しているハッシュテーブルを検索し、該特徴量に対応するインデックスの原稿について投票し、投票を累積加算した投票数を類似判定処理部２２４へ出力する。
【０１８０】
類似判定処理部２２４は、投票処理部２２３から出力された投票数を受け付け、受け付けた投票数が設定する閾値以上であるか否かを判定し、投票数が閾値以上であると判定した場合、今回判定すべき画像がハッシュテーブルに登録している他方の原稿の画像に類似する旨を示す判定結果をメモリ２２５へ出力する。また、類似判定処理部２２４は、投票数が閾値に比し極めて大きい場合、今回判定すべき画像がハッシュテーブルに登録している他方の原稿の画像と一致する旨を示す判定結果をメモリ２２５へ出力する。一方、類似判定処理部２２４は、投票数が閾値未満であると判定した場合、今回判定すべき画像はハッシュテーブルに登録している他方の原稿の画像と類似していない旨の判定結果を出力する。制御部は、判定結果に応じて、例えば、画像出力禁止、複写禁止、所定のフォルダへの記憶などの所定の処理を実行する。
【０１８１】
尚、類似判定処理部２２４の類似判定処理は一例であり、例えば、得票数を原稿毎の最大投票数で除算して正規化し、その結果に基づいて、類似判定を行うようにしてもよい。
【０１８２】
また、上述した実施の形態では、特徴点算出部２２１は、重心算出部２２１４で閾値判定をして算出すべき重心（特徴点）の点数を調整し、更に画素ブロックのマスクサイズ又は参照ブロック数を変更して参照すべき特徴点の点数を調整している例を説明したが（図６、図１４等参照）、これに限らず、特徴点の点数の調整は、特徴点算出部２２１の重心算出部２２１４が閾値判定をして算出すべき重心（特徴点）の点数を調整するだけであってもよい。
【０１８３】
上述した実施の形態では、登録画像、ハッシュテーブルを予めメモリ２２５に記憶しておく構成であるが、これに限定されるものではなく、画像形成装置と通信回線（ネットワーク）を通じて接続されたサーバ装置の記憶部に登録画像を記憶しておき、ハッシュテーブルはメモリ２２５に分散して記憶させてもよい。
【０１８４】
画像形成装置が備える画像照合処理部２２及び制御部２２６を構成する各部（各ブロック）は、ＣＰＵ等のプロセッサを用いてソフトウェアによって実現される。
【０１８５】
すなわち、画像形成装置は、各機能を実現する制御プログラムの命令を実行するＣＰＵ（central processing unit）、制御プログラムを格納したＲＯＭ（read only memory）
、制御プログラムを展開するＲＡＭ（random access memory）、制御プログラムおよび各種データを格納するメモリ等の記憶装置（記録媒体）などを備える（図示せず）。
【０１８６】
本発明の目的は、上述した機能を実現するソフトウェアである複合機の制御プログラムのプログラムコードが含むステップ（実行形式プログラム、中間コードプログラム、ソースプログラム）を実行することによって達成される。また、当該制御プログラムを記録したコンピュータで読み取り可能な記録媒体を画像形成装置に挿入し、そのコンピュータ（又はＣＰＵ若しくはＭＰＵ）が当該記録媒体に記録されているプログラムコードを読み出し、実行することによって達成される。
【０１８７】
記録媒体として、例えば、磁気テープ又はカセットテープ等のテープ系、フロッピー（登録商標）ディスク／ハードディスク等の磁気ディスク又はＣＤ−ＲＯＭ／ＭＯ／ＭＤ／ＤＶＤ／ＣＤ−Ｒ等の光ディスクを含むディスク系、ＩＣカード（メモリカードを含む）／光カード等のカード系、並びにマスクＲＯＭ／ＥＰＲＯＭ／ＥＥＰＲＯＭ／フラッシュＲＯＭ等の半導体メモリ系などが該当する。
【０１８８】
また、画像形成装置を通信ネットワークと接続させ、通信ネットワークを介して前記プログラムを供給してもよい。当該通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、ＬＡＮ、ＩＳＤＮ、ＶＡＮ、ＣＡＴＶ通信網、仮想専用網（virtual private network）、電話回線網、移動体通信網、衛
星通信網等が該当する。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、ＩＥＥＥ１３９４、ＵＳＢ、電力線搬送、ケーブルＴＶ回線、電話線、ＡＤＳＬ回線等の有線、ＩｒＤＡやリモコンのような赤外線、Ｂｌｕｅｔｏｏｔｈ（登録商標）、８０２．１１無線、ＨＤＲ、携帯電話網、衛星回線、地上波デジタル網等の無線が該当する。なお、本発明は、プログラムのコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
【０１８９】
また、画像形成装置の各ブロックは、ソフトウェアを用いて実現されるものに限らず、ハードウェアロジックによって構成されるものであってもよく、処理の一部を行うハードウェアと当該ハードウェアの制御や残余の処理を行うソフトウェアを実行する演算手段とを組み合わせたものであってもよい。
【０１９０】
また、本発明のコンピュータシステムは、フラットベッドスキャナ・フィルムスキャナ・デジタルカメラなどの画像入力装置、所定のプログラムがロードされることにより上記類似度算出処理や類似性判定処理など様々な処理が行われるコンピュータ、コンピュータの処理結果を表示するＣＲＴディスプレイ・液晶ディスプレイなどの画像表示装置、およびコンピュータの処理結果を紙などに出力するプリンタ等の画像形成訴追により構成されてもよい。さらには、ネットワークを介してサーバなどに接続するための通信手段としてのネットワークカードやモデムなどが備えられていてもよい。
【図面の簡単な説明】
【０１９１】
【図１】本発明に係る画像処理装置を備える画像形成装置の全体構成を示す模式図である。
【図２】画像照合処理部の全体構成を示す模式図である。
【図３】特徴点算出部の構成を示す模式図である。
【図４】重心算出部の構成を示す模式図である。
【図５】重心算出部の重心算出処理の手順を示すフローチャートである。
【図６】重心算出部の閾値判定の手順を示すフローチャートである。
【図７】重心算出部の加算処理の手順を示すフローチャートである。
【図８】閾値判定の一例を示す説明図である。
【図９】特徴点が少ない原稿の一例を示す説明図である。
【図１０】実施例１に係る重心算出部の構成を示す模式図である。
【図１１】特徴量算出部の構成を示す模式図である。
【図１２】注目特徴点の周辺領域を示す説明図である。
【図１３】周辺領域のマスクサイズと該周辺領域内に位置する近傍の特徴点との関係を示す説明図である。
【図１４】特徴量算出部の処理の手順を示すフローチャートである。
【図１５】実施例３に係る特徴量算出部の処理の手順を示すフローチャートである。
【図１６】周辺領域の画素ブロック数と該周辺領域内に位置する近傍の特徴点との関係を示す説明図である。
【図１７】実施例３に係る特徴量算出部の処理の手順を示すフローチャートである。
【図１８】実施例５に係る特徴量算出部の処理の手順を示すフローチャートである。
【図１９】実施例６に係る特徴量算出部の構成を示す模式図である。
【図２０】注目特徴点と近傍の特徴点との関係を示す説明図である。
【図２１】注目特徴点による不変量の算出例を示す説明図である。
【図２２】注目特徴点による不変量の算出例を示す説明図である。
【図２３】ハッシュテーブルの構造を示す説明図である。
【図２４】連結成分の重心を示す説明図である。
【図２５】重心を特徴点とする例を示す説明図である。
【図２６】注目特徴点による不変量の算出例を示す説明図である。
【図２７】注目特徴点による不変量の算出例を示す説明図である。
【図２８】入力される原稿画像の一例を示す説明図である。
【図２９】原稿画像を均等に４分割した一例を示す説明図である。
【図３０】実施例２に係る重心算出部の構成を示す模式図である。
【図３１】閾値テーブルの構造を示す説明図である。
【図３２】閾値テーブルの構造を示す説明図である。
【図３３】原稿画像を分割した一例を示す説明図である。
【図３４】画素ブロックライン単位にて重心をカウントするための重心算出部の構成を示す模式図である。
【図３５】重心カウントバッファによるカウントの例を示す説明図である。
【図３６】実施例４に係る特徴量算出部の処理の手順を示すフローチャートである。
【図３７】閾値判定およびマスクサイズ変更を説明する模式図である。
【図３８】実施例７に係る特徴量算出部の処理の手順を示すフローチャートである。
【図３９】閾値判定および参照ブロック数の変更を説明する模式図である。
【符号の説明】
【０１９２】
２          画像処理装置
２２        画像照合処理部
２２１      特徴点算出部
２２１３    ２値化処理部
２２１４    重心算出部
２２１４ａ  ラベリング処理部
２２１４ｂ  連結成分閾値処理部
２２１４ｃ  重心計算処理部
２２１４ｄ  重心格納バッファ
２２１４ｅ  制御部
２２１４ｆ  重心カウントバッファ
２２２      特徴量算出部
２２２０    画素ブロック設定部
２２２１    近傍点抽出部
２２２２    特徴量抽出部
２２４      類似判定処理部
２２５      メモリ
２２６      制御部
【図１】
0004340711.tif 000002
【図２】
0004340711.tif 000003
【図３】
0004340711.tif 000004
【図４】
0004340711.tif 000005
【図５】
0004340711.tif 000006
【図６】
0004340711.tif 000007
【図７】
0004340711.tif 000008
【図８】
0004340711.tif 000009
【図９】
0004340711.tif 000010
【図１０】
0004340711.tif 000011
【図１１】
0004340711.tif 000012
【図１２】
0004340711.tif 000013
【図１３】
0004340711.tif 000014
【図１４】
0004340711.tif 000015
【図１５】
0004340711.tif 000016
【図１６】
0004340711.tif 000017
【図１７】
0004340711.tif 000018
【図１８】
0004340711.tif 000019
【図１９】
0004340711.tif 000020
【図２０】
0004340711.tif 000021
【図２１】
0004340711.tif 000022
【図２２】
0004340711.tif 000023
【図２３】
0004340711.tif 000024
【図２４】
0004340711.tif 000025
【図２５】
0004340711.tif 000026
【図２６】
0004340711.tif 000027
【図２７】
0004340711.tif 000028
【図２８】
0004340711.tif 000029
【図２９】
0004340711.tif 000030
【図３０】
0004340711.tif 000031
【図３１】
0004340711.tif 000032
【図３２】
0004340711.tif 000033
【図３３】
0004340711.tif 000034
【図３４】
0004340711.tif 000035
【図３５】
0004340711.tif 000036
【図３６】
0004340711.tif 000037
【図３７】
0004340711.tif 000038
【図３８】
0004340711.tif 000039
【図３９】
0004340711.tif 000040