(57)【要約】【課題】画像領域間の境界で適切な１つの輪郭線を得る。【解決手段】画像領域抽出部１０２は、画像入力部１０１により入力された画像データについて２値化し、２値化された画像データを画素の特徴値に基づいてラベリングして、複数の画像領域に区分する。輪郭接続判定部１０４は、輪郭抽出部１０３により抽出された各画像領域の輪郭線について、輪郭線同士を接続する接続点があるか否かを判定する。輪郭修正部１０５は、輪郭接続判定部１０４により接続点があると判定されている場合に、この接続点で輪郭線同士を接続して輪郭線を修正する。【選択図】図１
2011216080.tif 000002
【特許請求の範囲】
【請求項１】
画像データにおいて、同一の特徴値を有し且つ８連結で接続されている画像領域を抽出する画像領域抽出手段と、
前記画像領域抽出手段によって抽出された各画像領域から輪郭線を抽出する輪郭抽出手段と、
前記輪郭抽出手段によって抽出された輪郭線に複数の内輪郭がある場合、当該内輪郭同士を接続する接続点があるか否かを判定する輪郭接続判定手段と、
前記輪郭接続判定手段により前記接続点があると判定された場合、当該接続点で前記内輪郭を接続して新たな輪郭線を生成し、当該生成した輪郭線を用いて修正する輪郭修正手段と、
を有することを特徴とする画像処理装置。
【請求項２】
前記同一の特徴値とは、同色として判断可能な画素値であることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記同一の特徴値を有し且つ８連結で接続されている画像領域とは、隣接する８方向のいずれかで接続している同色の画素群で構成される領域であることを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記輪郭修正手段は、前記内輪郭に対して１つまたは２つの接続点がある場合に、前記新たな輪郭線を生成することを特徴とする請求項１に記載の画像処理装置。
【請求項５】
前記輪郭抽出手段によって前記画像領域の１つから抽出された外輪郭が、他の画像領域から抽出された外輪郭と交差する場合、前記輪郭修正手段による修正を実行しないことを特徴とする請求項１に記載の画像処理装置。
【請求項６】
前記輪郭修正手段は、前記内輪郭に対して３つ以上の接続点がある場合、前記輪郭線の修正を実行しないことを特徴とする請求項１に記載の画像処理装置。
【請求項７】
前記画像領域抽出手段は、前記画像データに対してクラスタリング処理とラベリング処理とを実行することにより、前記同一の特徴値を有し且つ８連結で接続されている画像領域を抽出することを特徴とする請求項１に記載の画像処理装置。
【請求項８】
前記画像データにおける背景色を選定し、画像領域抽出手段で抽出された画像領域が前記背景色の画像領域のみと接するか否かを判定する背景判定手段をさらに備え、
前記輪郭接続判定手段は、判定対象の画像領域が前記背景色の画像領域以外とも接していると前記背景判定手段により判定された場合、前記判定対象の画像領域から抽出された輪郭線に接続点があるか否かを判定することを特徴とする請求項１に記載の画像処理装置。
【請求項９】
前記輪郭修正手段で修正処理を行った後の輪郭線に基づいて、異なる画像領域間の境界線を抽出する境界線抽出手段と、
前記抽出された境界線を関数近似する関数近似手段と、
前記関数近似後の境界線を繋ぎ合わせることにより、前記画像領域の境界線を表わすベクトルデータを生成するベクトルデータ出力手段と、
をさらに備えることを特徴とする請求項１に記載の画像処理装置。
【請求項１０】
画像データにおいて、同一の特徴値を有し且つ８連結で接続されている画像領域を抽出する画像領域抽出ステップと、
前記画像領域抽出ステップで抽出された各画像領域から輪郭線を抽出する輪郭抽出ステップと、
前記輪郭抽出ステップで抽出された輪郭線に複数の内輪郭がある場合、当該内輪郭同士を接続する接続点があるか否かを判定する輪郭接続判定ステップと、
前記輪郭接続判定ステップで前記接続点があると判定された場合、当該接続点で前記内輪郭を接続して新たな輪郭線を生成し、当該生成した輪郭線を用いて修正する輪郭修正ステップと、
を有することを特徴とする画像処理方法。
【請求項１１】
プログラムを格納した記憶媒体であって、該プログラムは、コンピュータを以下のユニットとして機能させる：
画像データにおいて、同一の特徴値を有し且つ８連結で接続されている画像領域を抽出する画像領域抽出ユニットと、
前記画像領域抽出ユニットによって抽出された各画像領域から輪郭線を抽出する輪郭抽出ユニットと、
前記輪郭抽出ユニットによって抽出された輪郭線に複数の内輪郭がある場合、当該内輪郭同士を接続する接続点があるか否かを判定する輪郭接続判定ユニットと、
前記輪郭接続判定ユニットにより前記接続点があると判定された場合、当該接続点で前記内輪郭を接続して新たな輪郭線を生成し、当該生成した輪郭線を用いて修正する輪郭修正ユニット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置に関し、特に、処理対象となる画像データ中の特定の画像領域について輪郭線を抽出し、隣接する画像領域間で同一の輪郭線を得ることが可能な画像処理装置、およびその方法に関する。
【背景技術】
【０００２】
近年、情報の電子化が進んでおり、紙文書をそのままの形態で物理的に保存するのではなく、スキャナ等により紙文書の内容を光学的に読み取り、読み取ったデータを電子文書として保存し、必要に応じてこの電子文書を他の装置に送信するシステムが普及している。この電子文書は、例えば、文字から構成される文字領域や、風景などを撮影した写真から構成される写真領域などを含んでいる。この電子文書に含まれる文字領域や写真領域を拡大・縮小して表示装置に表示させ、あるいは印刷装置などに出力させる場合がある。そのような場合において、表示または出力されるデータについて高い再現性が求められている。そこで、電子文書中の文字領域や写真領域について、一定の特徴値を有する画素から構成される画素群（以後、画像領域）ごとに輪郭線を抽出し、当該抽出した輪郭線をベクトルデータにして上述の再現性を高める技術が提案されている（例えば、特許文献１参照。）。
【０００３】
特許文献１は、２値画像データ中の全ての輪郭線を１回のラスタ走査のみで抽出できることを開示している。この技術では、画像データ中に設定された注目画素と、その注目画素の近傍にある近傍画素との状態（すなわち３×３画素の画素マトリクス内の画素配置）に基づいて水平方向及び垂直方向の画素間ベクトルを検出し、これら画素間ベクトル同士の接続状態を判別する。そして、判別された画素間ベクトルの接続状態に基づいて、画像領域の輪郭線を抽出する。画素の中心位置ではなく、画素の縁単位に輪郭を抽出するので、細線のような１画素幅の画素から構成される画像領域についても輪郭線を抽出することができる。更に、画像データ中の画素が４連結で接続された画素群からなる画像領域の輪郭線を抽出する場合について詳しく述べているが、８連結で接続された画素群からなる画像領域の輪郭線を抽出する場合も同様の手法で行えることを開示している。なお、４連結で接続された画素群とは、上下左右(４近傍)のいずれかで隣接する同色の画素群であることを示す。８連結で接続された画素群とは、上、下、左、右、右上、右下、左上、左下(８近傍)のいずれかで隣接する同色の画素群であることを示す。
【０００４】
ここで、特許文献１に記載の技術を用いて抽出される輪郭線について、図３を用いて説明する。図３Ａの２値画像から、黒色の画像領域３０１の輪郭線３１１が抽出される。輪郭線３１１は、画像領域３０１の外周を示すベクトル形式のベクトルデータから構成されている。なお、輪郭線３１１は、画像領域３０１の外周を示すので、外輪郭と称される。また、図３Ｂの２値画像に対して輪郭抽出処理を行った場合、黒色の画像領域３０２の輪郭線３１２および輪郭線３１３が抽出される。輪郭線３１３は、画像領域３０２の内周を示すので、内輪郭と称される。すなわち、画像領域３０２から抽出される輪郭線は、１つの外輪郭（輪郭線３１２）と、１つの内輪郭（輪郭線３１３）である。次に、図３Ｃの２値画像に対して輪郭抽出処理を行った場合、画像領域３０３から輪郭線３１４、輪郭線３１５、および輪郭線３１６が抽出される。すなわち、画像領域３０３から抽出される輪郭線は、１つの外輪郭（輪郭線３１４）と、２つの内輪郭（輪郭線３１５、３１６）である。特許文献１に記載の輪郭抽出処理では、３×３画素の画素マトリクス単位でラスタスキャンを行って輪郭線抽出するので、外輪郭と内輪郭の両方が抽出されることになる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第３０２６５９２号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に開示されている技術は２値画像の輪郭線を抽出するものであるが、以下のようにすれば、複数色で構成される多値画像に対して、各色の画像領域ごとに輪郭を抽出することも可能である。すなわち、多値画像内に含まれる各色を順番に処理対象として着目し、当該着目した色の画素を１、それ以外の色の画素を０にした２値画像を生成して、特許文献１に開示されている技術を適用すればよい。しかしながら、色毎に画像領域の輪郭線を抽出する場合、ある色の画像領域から抽出される輪郭線としての内輪郭と、当該内部の別の色の画像領域から抽出される輪郭線としての外輪郭とが一致しないことがある。ここで一致する場合としない場合について、図４を用いて説明する。まず、一致する場合の例として、図４Ａに示す白色の画像領域４０１および灰色の画像領域４０２についてそれぞれ輪郭線を抽出する場合について説明する。白色の画像領域４０１に着目して輪郭線を抽出した場合は輪郭線４１１（外輪郭）および輪郭線４１２（内輪郭）が抽出され、灰色の画像領域４０２に着目して輪郭線を抽出した場合は輪郭線４１２（外輪郭）が抽出される。このとき、白色の画像領域４０１の輪郭線４１２（内輪郭）と、灰色の画像領域４０２の輪郭線４１２（外輪郭）とは一致している。なお、図４Ａの例の場合は、輪郭線を４連結と８連結のどちらで抽出しても同じ形状になる。
【０００７】
一方、一致しない場合の例として、図４Ｂに示す白色の画像領域４０３および灰色の画像領域４０４についてそれぞれ輪郭線を抽出する場合について説明する。例えば、白色の画像領域４０３に着目して４連結で輪郭線を抽出すると、図４Ｃに示すように輪郭線４１３（外輪郭）および輪郭線４１４（内輪郭）が抽出される。一方、灰色の画像領域４０４に着目して４連結で輪郭線を抽出すると、斜め方向のみで隣接している箇所は接続していないと判定するので、図４Ｄに示すように輪郭線４１５（外輪郭）、輪郭線４１６（外輪郭）、および輪郭線４１７（外輪郭）が抽出される。このように、４連結で各画像領域の輪郭線を抽出した場合、白色の画像領域４０３の輪郭線としての内輪郭と、灰色の画像領域４０４の輪郭線としての外輪郭とが一致しない。すなわち、白色の画像領域の内輪郭（４１４）は１つ抽出されるが、灰色の画像領域の外輪郭（４１５，４１６，４１７）は３つ抽出されるので、一致しない。
【０００８】
また、白色の画像領域４０３に着目して８連結で輪郭線を抽出すると、斜め方向で隣接している白色の画素群は接続しているものとして処理するので、図４Ｅに示すように輪郭線４１８（外輪郭）、および輪郭線４１９〜４２１（内輪郭）が抽出される。一方、８連結で灰色の画像領域４０４の輪郭線を抽出すると、斜め方向で隣接している灰色の画素群は接続しているものとして処理するので、図４Ｆに示すように１つの輪郭線４２２（外輪郭）が抽出される。このように、８連結で各画像領域の輪郭線を抽出した場合も、白色の画像領域４０３の輪郭線としての内輪郭と、灰色の画像領域４０４の輪郭線としての外輪郭とが一致しない。
【０００９】
白色の画像領域４０３の輪郭線（内輪郭）および灰色の画像領域４０４の輪郭線（外輪郭）は同一の輪郭線で表すことができるはずであるが、上記のように異なる輪郭線がそれぞれ抽出される場合がある。このように、画像領域間の境界について、２つの異なる輪郭線が抽出されると、各輪郭線を関数近似してベクトルデータを生成した場合に、画像領域間で異なる形状のベクトルデータが生成されるおそれがある。
【００１０】
また、図５Ａのように斜め方向で接続される箇所を含む細線が画像データ中に存在する場合、その細線に対して４連結で輪郭線を抽出すると、斜め方向で接続される箇所で分断されることになるので、当該細線は細かく分断されてしまう。そして、その細かく分断された輪郭線ごとに関数近似を行うと、図５Ｂに示すようになるので、出力されるベクトルデータの画質が著しく劣化することとなる。したがって、このような細線の輪郭線はできるだけ８連結で抽出するのが望ましい。
【００１１】
本発明では、異なる画像領域から抽出される輪郭線ができるかぎり一致するように輪郭線の修正を行う。
【課題を解決するための手段】
【００１２】
前述した課題を解決するために、請求項１に記載の画像装置は、画像データにおいて、同一の特徴値を有し且つ８連結で接続されている画像領域を抽出する画像領域抽出手段と、前記画像領域抽出手段によって抽出された各画像領域から輪郭線を抽出する輪郭抽出手段と、前記輪郭抽出手段によって抽出された輪郭線に複数の内輪郭がある場合、当該内輪郭同士を接続する接続点があるか否かを判定する輪郭接続判定手段と、前記輪郭接続判定手段により前記接続点があると判定された場合、当該接続点で前記内輪郭を接続して新たな輪郭線を生成し、当該生成した輪郭線を用いて修正する輪郭修正手段と、を有することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、画像領域間の境界で適切な１つの輪郭線を得ることができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施例における画像処理装置の機能構成図である。
【図２】本発明の実施例に係る画像処理装置のブロック図である。
【図３】本発明の一実施例における画像領域の輪郭線を説明するための図である。
【図４】連結方法の違いにより抽出される輪郭線が異なることを説明するための図である。
【図５】抽出した輪郭線を４連結接続に統一して境界線を関数近似した画像の出力例を示す図である。
【図６】実施例１における画像処理装置のメイン処理を示すフローチャートである。
【図７】実施例１における接続判定処理および輪郭修正処理を説明するための図である。
【図８】実施例1における輪郭修正処理について内輪郭を接続しない場合の例を説明するための図である。
【図９】実施例１における境界線抽出処理を説明するための図である。
【図１０】実施例２における画像処理装置のメイン処理を示すフローチャートである。
【図１１】実施例２における画像領域が背景に接するか否かを判定する処理を説明するための図である。
【発明を実施するための形態】
【００１５】
（実施例１）
以下、添付の図面を参照して本発明の一実施例を説明する。ただし、この実施例に記載されている構成要素はあくまで例示であり、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、以下の個別の実施例によって限定されるわけではない。
【００１６】
本発明に係る一実施例における画像処理装置の構成例について、図２のブロック図を参照して説明する。ＣＰＵ（Central Processing Unit）２０７は、画像処理装置全体を制御する中央処理装置である。ＲＯＭ（Read Only Memory）２０６は、プログラムやパラメータを格納する読み取り専用の記憶媒体である。ＲＡＭ（Random Access Memory）２０５は、外部装置等から供給されるプログラムやデータを一時記憶する。スキャナ２０１は、例えば文書等の紙媒体を光電走査して、電子的な画像データを得ることができる光学式読取装置である。スキャナ２０１は、画像入出力Ｉ/Ｏ２０３を介してバス２１１に接続されており、バス２１１に接続されているその他の装置と通信することができる。画像メモリ２０２は、スキャナ２０１で読み取られた画像データ等を保持する。外部記憶装置２１２は、ハードディスクやメモリカード、あるいは着脱可能なフレキシブルディスク（ＦＤ）やCompact Disk（ＣＤ）等の光ディスク、磁気や光カード、ＩＣカード、メモリカード等から構成され、データを保持する。Ｉ/Ｏ２１３は、外部記憶装置２１２およびバス２１１に接続されており、外部記憶装置２１２と、バス２１１に接続されているその他の装置との間のデータのやりとりを可能にする入出力装置である。Ｉ/Ｏ２１５は、キーボード２０９、マウス２１０、およびバス２１１に接続されており、キーボード２０９、マウス２１０を介してユーザの操作を受け付け、受け付けたデータを、バス２１１に接続されているその他の装置に出力する入出力装置である。映像Ｉ/Ｏ２１４は、ディスプレイ装置２０８およびバス２１１に接続されており、バス２１１を介して映像データを入力し、ディスプレイ装置２０８に出力して当該映像データをディスプレイ装置２０８に表示させる入出力装置である。通信Ｉ/Ｆ２０４は、インターネット等のネットワーク回線に接続するためのインターフェースである。バス２１１は、接続される装置間の通信を可能にする。
【００１７】
図１は、本発明の実施例１に係る画像処理装置の機能ブロック図を示す。画像入力部１０１は、スキャナ２０１等から構成され、ベクトルデータを出力するための画像データを入力する。入力された画像データは、画像メモリ２０２等の記憶装置に記憶される。
【００１８】
画像領域抽出部１０２は、入力された画像データにおいてクラスタリング処理（色領域分割処理）を行うことにより、同一の特徴値（画素値）を示す画素の集合ごとに個別のクラスタ（色領域）に分割する。すなわち、類似する画素値を有する画素は同色と判断され、同じクラスタに属することになる。なお、このときクラスタ数が所定の目標値より多い場合は類似するクラスタ同士を統合してクラスタ数が目標値以下になるようにしてもよい。また、このとき、ノイズと判定されるクラスタを削減するようにしてもよい。更に、画像領域抽出部１０２は、当該分割された各クラスタに対して８連結のラベリング処理を行うことにより、８連結で接続されている画素群ごとに同一のラベル番号を付与する。この結果、同一の特徴値を有し且つ８方向のいずれかで接続している画像領域ごとにラベル番号が付与されることになる。画像領域が識別可能となるように、各画像領域にラベル番号を関連付けてＲＡＭ２０５等の記憶装置に記憶させる。なお、本実施形態では、クラスタリング処理を行った後にラベリング処理を行うものとして記載するが、これに限るものではなく、同時に行うようにしてもよい。例えば、画像内の各画素にラベルを付与する際に、同一の特徴値を有する画素が８方向のいずれかで隣接しているかどうかを検査して、そのような画素が隣接していれば同一のラベルを付与するように構成してもよい。
【００１９】
輪郭抽出部１０３は、画像領域抽出部１０２によって各ラベル番号が付与されたラベル領域ごとに、８連結での輪郭線抽出処理を実行する。例えば、各ラベル番号を順番に処理対象とし、当該処理対象のラベル番号が付与されている画素を１、それ以外の画素を０とすれば、２値画像として扱うことが可能であるので、各２値画像を用いて８連結で接続された画像領域の輪郭線を抽出すればよい。すなわち、特許第３０２６５９２号公報に記載の技術と同様に、各２値画像に対して、３×３画素マトリクス単位のラスタ走査で検査することにより、８連結で接続された輪郭ベクトルを検出し、当該検出された輪郭ベクトルを繋ぎ合わせて輪郭線を抽出すればよい。輪郭線抽出処理を実行した結果、輪郭抽出部１０３は、各ラベル番号が付与された画像領域（ラベル領域）と、当該画像領域の輪郭線を示すベクトルデータとを関連付けてＲＡＭ２０５等の記憶装置に記憶させる。なお、抽出される輪郭線には、当該ラベル領域に対して８連結接続で抽出した外輪郭と８連結接続で抽出した内輪郭の両方を含むことになる。
【００２０】
輪郭接続判定部１０４は、同じラベル領域から抽出された輪郭線に複数の内輪郭がある場合、当該内輪郭を構成するベクトルデータの座標を参照して、同じラベル領域から抽出された別の内輪郭と８連結（斜め方向）で接続可能な接続点があるか否かを判定する。輪郭接続判定部１０４は、接続点があると判定した場合、輪郭線と接続点とを関連付けてＲＡＭ２０５等の記憶装置に記憶させる。
【００２１】
輪郭修正部１０５は、輪郭接続判定部１０４により接続点が判定されている場合に、当該接続点で接続される輪郭線同士を接続させた新たな輪郭線を生成して、輪郭線の修正を行う。そして、輪郭修正部１０５は、当該新たな輪郭線についてのベクトルデータを当該ラベル領域と関連付けてＲＡＭ２０５等の記憶装置に記憶させる。
【００２２】
境界線抽出部１０６は、輪郭修正が為された後の各画像領域の輪郭線において一致する輪郭線を検出し、当該検出した輪郭線において隣接する画像領域（ラベル領域）の間で共通する区間ごとに境界線として抽出する。ここでは、３色以上の画像領域（３つのラベル領域）が接する位置を交点とし、交点ごとに輪郭線を分割することで、隣接する２つの画像領域間の境界線を抽出できる。なお、交点が無い輪郭線に関しては、当該輪郭線をそのまま境界線として扱えばよい。そして、境界線抽出部１０６は、抽出された境界線について、これに対応する画像領域を関連付けた再構成情報をＲＡＭ２０５等の記憶装置に記憶させる。
【００２３】
関数近似部１０７は、境界線を関数近似することにより、関数近似後の境界線を示すベクトルデータを生成する。また、関数近似部１０７は、画像領域と関数近似した境界線とを関連付けてＲＡＭ２０５等の記憶装置に記憶させる。
【００２４】
ベクトルデータ出力部１０８は、再構成情報に基づいて、画像領域ごとに関連付けられている関数近似後の境界線を繋ぎ合わせることにより、各画像領域の輪郭を表わすベクトルデータを生成・出力する。
【００２５】
次に、本願発明を実現する処理手順について、図６のフローチャートを参照して説明する。処理が開始すると、まず、ステップＳ６０１において、処理対象となる画像データが画像処理装置に入力される。この画像入力処理では、例えば、スキャナ２０１により読み取られた画像データが、画像入出力Ｉ/Ｏ２０３を介して画像メモリ２０２に格納される。また、例えば、通信Ｉ/Ｆ２０４を介して、画像処理装置の外部から処理対象となる画像領域を含む画像データを入力して、画像メモリ２０２に格納してもよい。また、例えば、外部記憶装置２１２に予め格納されている画像データについて、Ｉ/Ｏ２１３を介して画像メモリ２０２に格納してもよい。このように、ステップＳ６０１における画像入力により、得られた画像データが画像メモリ２０２に保持される。このステップＳ６０１における画像入力処理は、画像入力部１０１により実行される。
【００２６】
次に、入力された画像データについて、ステップＳ６０２で色領域分割処理（クラスタリング処理）を行い、同一の特徴値（画素値）を有する画素の集合（クラスタ：色領域とも言う）に分割する。なお、このときノイズ除去処理を行うようにしてもよい。例えば、クラスタリング処理で分割されたクラスタの中からノイズと判定したクラスタ（例えば小さいサイズのクラスタ）を、隣接するクラスタのうちの類似クラスタに統合すれば、ノイズを除去することが可能である。この色領域分割処理を実現する技術は、特開２００６−３４４０６９号公報に記載の技術と同様にして行うことが可能である。
【００２７】
なお、本実施形態では、入力された画像データに対して色領域分割処理を行うものとするがこれに限るものではない。例えば、入力された画像データを、属性ごとの領域（文字領域、写真領域、クリップアート画像など）に分離し、クリップアート画像（所定色数以下のイラストのような画像）を色領域分割処理の処理対象としてもよい。
【００２８】
次に、ステップＳ６０３において、色領域分割処理で分割された各クラスタに対して８連結でラベリング処理を行うことにより、８方向のいずれかで接続している同じ特徴値を有する画素群ごとに同じラベル番号を付与する。なお、ステップＳ６０２における色分割処理、およびステップＳ６０３におけるラベリング処理は、画像領域抽出部１０２により実行される。すなわち、画像領域抽出部１０２により、処理対象の画像データから、同一の特徴値（同じ色）を有し且つ８方向のいずれかで接続している画素群によって構成される画像領域を抽出することができる。
【００２９】
次に、ステップＳ６０４において、同じラベル番号が付与されている画素群で構成される画像領域ごとに、８連結で輪郭線を抽出する輪郭抽出処理を実行する。上述したように、ラベル番号を順に処理対象にし、当該処理対象のラベル番号が付与されている画素を１、それ以外の画素を０とすることによって得られる２値画像に対して、３×３画素マトリクス単位のラスタ走査で検査する。そして、８連結で接続された輪郭ベクトルを検出し、当該検出された輪郭ベクトルを繋ぎ合わせて輪郭線を抽出すればよい。なお、本実施形態では、特許第３０２６５９２号公報に記載の技術を用いて、２値画像から輪郭線を抽出するものとするが、これに限るものではない。
【００３０】
なお、同じラベル番号が付与された画素群で構成される画像領域（ラベル領域）に基づいて得られる２値画像に対して、３×３画素マトリクス単位のラスタ走査で検査する。そして、８連結で接続された輪郭ベクトルを検出して輪郭線を抽出することにより、最初に得られる輪郭線は当該画像領域の外輪郭となる。これは、画像をラスタ走査することに起因しており、ラスタ走査する場合、必ず外輪郭の方が内輪郭よりも先に抽出される。この特徴を利用すれば、抽出された輪郭線のうち、最初に抽出される輪郭線は必ず外輪郭であり、その次に抽出される輪郭線が存在する場合には、残りは全て内輪郭となる。したがって、最初に抽出された輪郭線を外輪郭とし、それ以降に抽出される輪郭線を内輪郭として扱うことができる。なお、ステップＳ６０４における輪郭抽出処理は、輪郭抽出部１０３により実現される。
【００３１】
次に、ステップＳ６０５において、Ｓ６０４で同じラベル領域から得られた輪郭線について、複数の内輪郭が存在する場合に、ある内輪郭とその他の内輪郭とが斜め方向で接続できる箇所があるかを判定する輪郭接続判定処理がなされる。このステップＳ６０５の輪郭接続判定処理について、図７を用いて説明する。
【００３２】
図７Ａは、白色画素で構成される画像領域（白色画素のラベルが付与されたラベル領域）７００に対してステップＳ６０４の輪郭抽出処理により抽出された輪郭線のうち、当該白色画素の画像領域の内輪郭（７０１〜７０３）を示す。また、図７Ａは、抽出された輪郭線における当該内輪郭を構成する各座標（Ｐ１〜Ｐ１０）を示している。白色画素で構成される画像領域に対して８連結での輪郭抽出処理を行う場合、斜め方向で隣接している白画素同士は繋がっているものと見なして輪郭抽出することになるので、内輪郭７０１〜７０３は３つになる。内輪郭７０１は、座標Ｐ１〜Ｐ４で構成され、内輪郭７０２は、座標Ｐ４〜Ｐ７で構成され、内輪郭７０３は、座標Ｐ７〜Ｐ１０で構成されている。ここで、内輪郭７０１は、Ｐ１を始点として、Ｐ２、Ｐ３を経由してＰ４からＰ１へ再び戻る閉曲線を示すベクトルデータとして記録される。このベクトルデータは、例えば、（Ｐ１、Ｐ２、Ｐ３、Ｐ４）のように各座標が始点から終点まで順に格納されるデータ構造とすることができる。同様に、内輪郭７０２は、（Ｐ５、Ｐ４、Ｐ６、Ｐ７）とし、内輪郭７０３は、（Ｐ８、Ｐ７、Ｐ９、Ｐ１０）としたデータ構造を持つベクトルデータである。
【００３３】
輪郭接続判定処理では、各内輪郭が、その他の内輪郭と斜め方向で接続できる接続点があるか否かを判定する。例えば、最初に内輪郭７０１を基準にして、内輪郭７０２および内輪郭７０３との接続点の有無を判定する。具体的には、内輪郭７０１を構成する各座標と、内輪郭７０２、および内輪郭７０３を構成する各座標とを比較し、一致する座標があれば当該座標を接続点として、接続点があるものと判定する。図７Ａの例では、内輪郭７０１を構成する座標のうちのＰ４と、内輪郭７０２を構成する座標のうちのＰ４とが一致しているので、Ｐ４を接続点とする。そして、内輪郭７０１および内輪郭７０２が、Ｐ４で接続可能であることを示す接続点座標Ｐ４と、内輪郭７０１、７０２とを関連付けて記憶させる。内輪郭７０１と内輪郭７０３とでは、一致する座標がないため、次に、内輪郭７０２を基準にして、内輪郭７０３との接続点の有無を判定する。このとき、内輪郭７０２を構成する座標のうちのＰ７と、内輪郭７０３を構成する座標のうちのＰ７とが一致しているので、Ｐ７を接続点とする。そして、内輪郭７０２および内輪郭７０３がＰ７で接続可能であることを示す接続点座標Ｐ７と、内輪郭７０２、７０３とを関連付けて記憶する。このように、輪郭接続判定処理では、輪郭抽出処理により同じラベル番号の画像領域から抽出された輪郭線について、内輪郭が複数存在する場合に、各内輪郭について順に接続点があるか否かを判定して、接続点があればそれを当該内輪郭と関連付けて記憶する。なお、ステップＳ６０５における輪郭接続判定処理は、輪郭接続判定部１０４により実現される。
【００３４】
次に、ステップＳ６０５の輪郭接続判定処理で接続点があると判定されている場合に、ステップＳ６０６において、当該接続点で内輪郭同士を接続させることにより新たな内輪郭を生成して、輪郭線の修正を行う輪郭修正処理が実行される。ステップＳ６０６における輪郭修正処理は、輪郭修正部１０５により実現される。
【００３５】
例えば、図７Ａに示すように、内輪郭７０１と内輪郭７０２とが、Ｐ４で接続可能な場合に、両輪郭線がＰ４で接続されるように修正した輪郭線７０４（図７Ｂ）を生成する。具体的には、内輪郭７０１のベクトルデータに、Ｐ４で接続することを含めた内輪郭７０２のベクトルデータを追加して、輪郭線７０４のベクトルデータを（Ｐ１、Ｐ２、Ｐ３、Ｐ４、Ｐ６、Ｐ７、Ｐ５、Ｐ４）とする。次に、内輪郭７０２と内輪郭７０３とが、Ｐ７で接続することが判定されているので、輪郭線７０４がＰ７で内輪郭７０３と接続するように修正した輪郭線７０５（図７Ｃ）を生成する。具体的には、輪郭線７０４のベクトルデータにＰ７で接続することを含めた内輪郭７０３のベクトルデータを追加して、輪郭線７０５のベクトルデータを（Ｐ１、Ｐ２、Ｐ３、Ｐ４、Ｐ６、Ｐ７、Ｐ９、Ｐ１０、Ｐ８、Ｐ７、Ｐ５、Ｐ４）とする。
【００３６】
このとき、内輪郭および外輪郭の向きを比較すると、図７Ｃに示すように、白色画素で構成される画像領域の外輪郭７０６は右回りとなっている。一方、接続後の内輪郭としての輪郭線７０５は、左回りとなっている。後述の境界線を抽出するステップＳ６０７では、灰色画素で構成される画像領域に基づいて抽出される外輪郭のベクトル方向と、白色画素で構成される画像領域に基づいて抽出される内輪郭のベクトル方向とが同一であることが好ましい。したがって、このようにベクトル方向が不一致の場合には、輪郭接続判定処理においてベクトル方向を同一の向きに修正する。具体的には、接続後の内輪郭の輪郭線７０５のベクトルデータについて、Ｐ１を始点とした逆ルートになるようにベクトルデータを置き換える。すなわち、輪郭線７０５のベクトルデータを（Ｐ１、Ｐ４、Ｐ５、Ｐ７、Ｐ８、Ｐ１０、Ｐ９、Ｐ７、Ｐ６、Ｐ４、Ｐ３、Ｐ２）として、図７Ｄに示す輪郭線７０７とすることができる。以上説明した輪郭修正処理により、最終的に、図７Ａで示した白色画素で構成される画像領域７００の輪郭線として、図７Ｅに示す外輪郭７０６、および内輪郭としての輪郭線７０７を得ることができる。
【００３７】
なお、図７に示す輪郭修正処理の例では、全ての内輪郭を互いに接続させているが、内輪郭の接続形態によっては、特別な処理が必要となる場合がある。例えば、図８Ａに示すように、灰色の画像領域に対して８連結で輪郭抽出処理を実行すると、２つの内輪郭８０１および８０２が抽出される。抽出された２つの内輪郭８０１，８０２は、斜め方向に接続している箇所が２カ所ある。このような場合は、２つの内輪郭８０１，８０２を当該２つの接続点で分離し、分離した内輪郭を別々に組み合わせて、２つの輪郭線８０３、８０４に修正する。このとき、灰色の画像領域において斜め方向に隣接している灰色画素が接続していないと考えると、灰色画像領域は外側と内側の２つの領域に分けて考えることができる。したがって、修正後の輪郭線８０３は外側の灰色の画像領域における内輪郭と見なし、輪郭線８０４は内側の灰色の画像領域における外輪郭と見なすようにすればよい。
【００３８】
また、別の例として、図８Ｂに示すような千鳥格子パターンの場合、灰色の画像領域の８連結での外輪郭と、白色の画像領域の８連結での外輪郭とを比較すると、外輪郭同士が交差する点がある。このように、異なる色の画像領域から抽出される外輪郭が交差する場合、ある色の画像領域の内輪郭を接続しても他の色の領域の外輪郭と一致しない場合がある。したがって、このような千鳥格子パターンの場合は、内輪郭同士を斜め方向の接続点で接続する処理を行う必要はない。
【００３９】
なお、外輪郭同士が交差するかどうかを判定する代わりに簡易的な判定処理として、ある内輪郭に接続する接続点の数（および内輪郭の数）に基づいて、内輪郭を接続する処理を行うかどうかを判定するように構成してもよい。例えば、ある内輪郭に対して３点以上の接続点がある場合には輪郭線を構成する各座標の列が一つに定まらない場合があるため、当該内輪郭を接続処理対象から除外するようにしてもよい。例えば、図８Ｂに示すように、４つの接続点（８１１〜８１４）がある場合には、内輪郭８１５を接続対象から除外するように構成しても構わない。
【００４０】
全ての画像領域について、輪郭抽出処理および輪郭修正処理が終わると、次に、ステップＳ６０７において、当該輪郭線に基づいて、隣り合う画像領域間で共通する区間ごとの境界線を抽出する境界線抽出処理が実行される。具体的には、ステップＳ６０６までに得られた輪郭線を構成する各座標について、輪郭線に沿って着目座標を設定し、この着目座標を中心とする２×２画素幅の周囲を参照する。この時、３色以上の画像領域（異なる特徴値を有する３つの画像領域）が交わる箇所を交点とし、交点間ごとに分割した輪郭線を境界線として抽出する。このとき、境界線を用いて元の画像領域の輪郭線を再構成できるように、再構成情報として、各境界線を対応する画像領域に関連付けて記憶させておく。なお、ステップＳ６０７における境界線抽出処理は、境界線抽出部１０６により実現される。
【００４１】
図９Ａは、画像領域と境界線との間の関係を示す。線９１１〜９１４は、上記の境界線を得るための処理により得られた、画像領域９０１についての境界線を示す。また、線９１５は、画像領域９０２についての境界線を示し、図９Ａに示す例では、画像領域９０２は、1つの境界線のみが関連付けられていることを示す。
【００４２】
図９Ｂは、境界線に関するデータを格納したデータテーブル（境界線情報）を示しており、線番号９２１に対して、端点座標９２２と、方向９２５とが関連付けられている。線番号９２１は、境界線に割り当てられる固有の番号である。端点座標９２２は、固有の線番号９２１が割り当てられている各境界線に関する始点座標９２３と、終点座標９２４とを示すものである。例えば、線番号として「１」が割り当てられている境界線の始点座標は（０、１）であり、終点座標は（５、１）である。方向９２５は、図９Ａに示すように、始点座標９２３から終点座標９２４への方向を示す情報である。例えば、線番号として「１」が割り当てられている境界線の場合、始点座標から終点座標への方向は「右」なので、方向９２５には「右」を示す情報が格納されている。また、例えば、線番号として「５」が割り当てられている境界線の場合、始点座標（１、４）から右方向に進んで画像領域９０２の外周を回って終点座標（１、４）に戻る閉曲線であることを示している。なお、座標は、図９Ａに示すように画素の最左端上を原点とし、原点から右向きを正のＸ軸方向とし、原点から下向きを正のＹ軸方向としたときの関係に対応するものである。
【００４３】
図９Ｃは、境界線についての再構成情報を示している。再構成情報とは、画像領域と境界線とが関連付けられているデータテーブルである。画像領域９３１の項目には、各画像領域に関連付けられているラベル番号が格納される。境界線９３２の項目には、再構成する際に用いる境界線の線番号が格納される。ここで再構成とは、格納されている線番号の境界線を順に接続することにより、対応する画像領域の輪郭線のベクトルデータを構成し直すことである。例えば、ラベル１の画像領域９０１の輪郭線を再構成する場合、図９Ｃの再構成情報に格納されているように「線１、線４、線３（逆順）、線２（逆順）」の順で境界線を接続すればよい。ここで、線「２」および線「３」において逆順となっているのは、再構成された輪郭線が閉曲線である場合に、図９Ｂに示す境界線情報における方向９２５と１８０°逆になっていることを示している。なお、ラベル番号「２」が関連付けられている画像領域については、境界線が１つのみであり、再構成情報においては、境界線として線番号「５」のみが格納される。
【００４４】
次に、ステップＳ６０８において、ステップＳ６０７の境界線抽出処理により得られた境界線について、滑らかなベクトルデータを得るために関数近似処理を行う。当該関数近似処理は、例えば、特開２００５−３１００７０号公報に記載されているように、ベジェ曲線を用いて近似することができる。なお、ステップＳ６０８における関数近似処理は、関数近似部１０７により実現される。
【００４５】
最後に、ステップＳ６０９において、ステップＳ６０７で得られた画像領域の再構成情報に基づいて、関数近似後の境界線を繋ぎ合わせることにより、各画像領域の輪郭線を表わすベクトルデータを生成して出力する。なお、ステップＳ６０９におけるベクトルデータ出力処理は、ベクトルデータ出力部１０８により実現される。
【００４６】
（実施例２）
実施例１では、全ての画像領域に対して、輪郭接続判定処理、輪郭修正処理、および境界線抽出処理が行われている。しかし、単一の色の画像領域からなる単色画像を処理する場合には、他の画像領域との間の境界線が存在しないため、これらの処理を行わないようにしてもよい。そこで、実施例２では、輪郭線の抽出後に処理対象となる画像領域が背景色の画像領域のみと接するか否かを判定して、背景色の画像領域以外とも接する場合には、実施例１と同様に輪郭接続判定処理、輪郭修正処理、および境界線抽出処理を行うようにする。一方、背景色の画像領域のみと接する場合、処理対象となる画像領域は単色画像であるため、輪郭線処理により抽出した輪郭線をそのまま関数近似する。
【００４７】
実施例２における処理フローを図１０に、また図１０中のステップＳ１００５における判定処理の説明を図１１に示す。なお、ステップＳ１００１からステップＳ１００４までの処理は、実施例１における図６で示したステップＳ６０１からステップＳ６０４までの処理と同一である。実施例２では、ステップＳ１００４における輪郭抽出処理の後、次に、ステップＳ１００５において、画像領域が背景色の画像領域のみと接しているか否かを判定する。なお、ステップＳ１００６からステップＳ１０１０までの処理は、実施例１における図６で示したステップＳ６０５からステップＳ６０９までの処理と同一である。
【００４８】
図１１Ａは、入力された画像データ１１００を示し、白色の画像領域１１０１と、灰色の画像領域１１０２と、黒色の画像領域１１０３、１１０４とを含んでいる。まず、画像データ１１００について、背景色を選定する。例えば、画像データ１１００を２値化することによって図１１Ｂのような２値画像１１１０を取得し、当該２値画像１１１０において面積が大きい方の色の画像領域に対応する色を背景色として選定するようにしてもよい。２値画像データ１１１０において、黒色の領域１１１１と１１１２の合計よりも、白色の領域の方が大きいので、当該白色領域に対応する位置の画像データ１１００における色（すなわち白色）を背景色として選定する。また、２値画像１１１０において、黒色領域１１１１と１１１２を前景部分として選定する。したがって、画像データ１１００において、当該前景部分に対応する位置の領域（灰色の画像領域１１０２と、黒色の画像領域１１０３および１１０４）は前景として判定される。
【００４９】
なお、背景・前景の選定方法は上記方法に限るものではない。例えば、処理対象の画像データ１１００の外周に占める色に基づいて背景色を選定してもよい。図１１Ａの画像データ１１００の外周部分は白色が大部分を占めているので、白色を背景色と選定する。
【００５０】
次に、前景として判定された色の画像領域が、背景色の画像領域のみに接しているか否か判定する。例えば、図１１Ｃに示す黒色の画像領域１１０３の形状は、図１１Ｂの２値画像１１１０における前景１１１１の形状と一致しないので、画像領域１１０３は背景以外の画像領域とも接していると判定される。同様に、図１１Ｄに示す灰色の画像領域１１０２の形状は、２値画像１１１０における前景１１１１の形状と一致しないので、画像領域１１０２は背景以外とも接している判定される。一方、図１１Ｅに示す黒色の画像領域１１０４の形状は、２値画像１１１０における前景１１１２の形状と一致するので、画像領域１１０４は背景のみと接していると判定される。
【００５１】
ある画像領域について、背景以外とも接していると判定された場合（ステップＳ１００５；ＮＯ）、ステップＳ１００６〜ステップＳ１００７に基づいて、当該画像領域の輪郭線を修正した後に、Ｓ１００８で境界線を抽出する。そして、Ｓ１００９において当該抽出された境界線が関数近似される。図１１の例では、画像領域１１０２および画像領域１１０３が該当し、ステップＳ１００６〜ステップＳ１００８に基づいて、輪郭線を修正した後に境界線を抽出し、Ｓ１００９において当該再構成された境界線が関数近似される。
【００５２】
一方、ある画像領域について、背景のみと接していると判定された場合（ステップＳ１００５；ＹＥＳ）、当該画像領域に対してＳ１００４で抽出された輪郭線を境界線として、ステップＳ１００９において関数近似される。この例では、画像領域１１０４から抽出された輪郭線が、Ｓ１００９において関数近似される。
【００５３】
このように、各画像領域の境界線がステップＳ１００９で関数近似される。そして、次に、ステップＳ１０１０において、ステップＳ６０９と同様にして関数近似された輪郭線に基づいてベクトルデータが生成され出力される。
【００５４】
（その他の実施例）
なお、図１で示した本発明の各処理部は、電子回路などのハードウェアで構成するようにしてもよい。また、コンピュータがプログラムを実行することにより、図１で示した各処理部として機能するようにしても構わない。
【００５５】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【００５６】
以上本発明にかかる実施形態を説明したが、実施形態の処理の多くは、情報処理装置上で実行されるコンピュータプログラムによるものであるので、当然、本発明はかかるコンピュータプログラムをもその範疇とする。通常、コンピュータプログラムはＲＡＭやＲＯＭ、またはＣＤ−ＲＯＭ等のコンピュータ可読記憶媒体に格納されており、それをコンピュータにセットし、システムにコピーもしくはインストールすることで実行可能になる。従って、かかるコンピュータ読み取り可能な記憶媒体も当然に本発明の範疇に入る。
【図１】
2011216080.tif 000003
【図２】
2011216080.tif 000004
【図３】
2011216080.tif 000005
【図４】
2011216080.tif 000006
【図５】
2011216080.tif 000007
【図６】
2011216080.tif 000008
【図７】
2011216080.tif 000009
【図８】
2011216080.tif 000010
【図９】
2011216080.tif 000011
【図１０】
2011216080.tif 000012
【図１１】
2011216080.tif 000013