説明

画像処理装置、画像処理方法

【課題】 グラディエント・メッシュによるオブジェクトの近似を効率的に行うための技術を提供すること。
【解決手段】 メッシュ生成部103は、オブジェクト領域の枠部上の4つの代表点を頂点とする四角形領域と、オブジェクト領域と、の差分領域のサイズを規定するサイズ情報を求める。そしてメッシュ生成部103は、サイズ情報が示すサイズが閾値よりも小さい場合は第1のメッシュ生成方法でオブジェクト領域を複数のメッシュに分割し、閾値以上の場合には第2のメッシュ生成方法でオブジェクト領域を複数のメッシュに分割する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、解像度フリー表現技術に関するものである。
【背景技術】
【0002】
従来、イラストや文字の解像度フリー表現には、オブジェクトの輪郭をベジェ、スプライン関数などで関数近似する手法が用いられている。この手法は高速かつ一般的であるが、複雑なグラデーションの表現が困難である。
【0003】
複雑なグラデーションを含むオブジェクトを解像度フリーで描画するためには、Adobe Illustrator(登録商標)のグラディエント・メッシュ・ツールが一般に用いられている。グラディエント・メッシュでは、メッシュに色と勾配を与えて3次関数を生成することで複雑なオブジェクトを描画することができる(特許文献1、2)。
【0004】
ラスタ画像中のオブジェクトを解像度フリー表現するために、画像をメッシュで近似する手法が幾つか提案されている。まず、三角形パッチを用いて画像を近似する手法が挙げられる(特許文献3)。しかしこの手法では、オブジェクト境界の表現において問題がある。オブジェクト境界が滑らかな曲線である場合、線形メッシュで曲線を忠実に近似することは困難であり、忠実に近似するためには多数のメッシュを用いなければならない。より少ないメッシュ数で複雑な境界を近似するためには、高次のメッシュを用いる必要がある。
【0005】
高次のメッシュを用いる手法としては、ベジェパッチを細分割して近似誤差を低減する手法(非特許文献1)、グラディエント・メッシュを用いて画像を近似する手法などが挙げられる。また、メッシュで近似する手法以外では、画像の特徴線をベジェ曲線により近似し、曲線の両側に色情報を付加し、曲線の色を用いた偏微分方程式を解いて画像を描画する解像度フリー表現手法が提案されている(非特許文献2)。
【0006】
グラディエント・メッシュを用いて画像を近似する手法としては、最適化問題を解いてグラディエント・メッシュの近似誤差を低減する手法がある(特許文献4)。また、オブジェクトを三角形メッシュに分割し、メッシュのパラメータ化を行い、グラディエント・メッシュを構築する手法が提案されている(非特許文献3)。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開平11−345347号公報
【特許文献2】特登録04220010号
【特許文献3】特登録03764765号
【特許文献4】USP 2008/0278479
【非特許文献】
【0008】
【非特許文献1】Brian Price,William Barrett,「Object−based vectorization for interactive image editing」,In proceedings of Pacific Graphics 2006,2006,vol.22,no.9−11,p.661−670.
【非特許文献2】Alexandrina Orzan,Adrien Bousseau,Holger Winnemoller,Pascal Barla,Joelle Thollot,David Salesin,「Diffusion Curves:A Vector Representation for Smooth−Shaded Images」,In proceedings of SIGGRAPH 2008,2008,vol.27.
【非特許文献3】Yu−Kun Lai,Shi−Min Hu,Ralph R.Martin,「Automatic and Topology−Preserving Gradient Mesh Generation for Image Vectorization」,ACM SIGGRAPH 2009.
【発明の概要】
【発明が解決しようとする課題】
【0009】
高次のメッシュを用いることで、少ないメッシュ数で、オブジェクトの形状を近似することができるが、オブジェクトの色を忠実に近似するには、表現能力、演算量、データ量の面で課題が残る。以下に課題を説明する。
【0010】
上述のベジェパッチを細分割して近似誤差を低減する手法では高次のメッシュを用いるため、オブジェクト境界の近似を忠実に行うことができる。しかし、近似誤差を低減するためにメッシュを細分割しているため、オブジェクトの色変化が複雑な部分でメッシュ数が増え、データ量が増大してしまう。
【0011】
上述の画像の特徴線をベジェ曲線により近似する手法ではオブジェクト形状を少ないデータ量で表現できるが、特徴線間の色を制御し難いため、複雑な色変化を持つオブジェクトを忠実に表現することは困難である。
【0012】
上述のグラディエント・メッシュを用いて画像を近似する2つの手法では、色変化が複雑なオブジェクトにおいても、より少ないメッシュ数(データ量)で解像度フリーを実現できる。しかしこれらの手法では、最適化問題を解くためにかかる演算量、三角形メッシュをパラメータ化するための演算量が非常に多いため、計算量の削減が課題となっている。
【0013】
本発明は以上の問題に鑑みて成されたものであり、グラディエント・メッシュによるオブジェクトの近似を効率的に行うための技術を提供することを目的とする。
【課題を解決するための手段】
【0014】
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。即ち、画像処理装置であって、画像からオブジェクトの領域をオブジェクト領域として抽出する手段と、前記オブジェクト領域の枠部を構成する各画素の画素位置を用いて、当該枠部上に4つの代表点を設定する設定手段と、前記設定手段が設定した4つの代表点を頂点とする四角形領域と、前記オブジェクト領域と、の差分領域のサイズを規定するサイズ情報を求める計算手段と、第1のメッシュ生成方法を用いて前記オブジェクト領域を複数のメッシュに分割する第1のメッシュ生成手段と、第2のメッシュ生成方法を用いて前記オブジェクト領域を複数のメッシュに分割する第2のメッシュ生成手段と、前記サイズ情報が示すサイズが閾値よりも小さい場合には前記第1のメッシュ生成手段に前記オブジェクト領域を複数のメッシュに分割させ、前記サイズ情報が示すサイズが閾値以上の場合には、前記第2のメッシュ生成手段に前記オブジェクト領域を複数のメッシュに分割させる制御手段と、前記制御手段による制御によって前記第1のメッシュ生成手段、前記第2のメッシュ生成手段の何れかによって生成されたメッシュ群を符号化する符号化手段とを備え、前記第1のメッシュ生成手段は、隣接する代表点の間の前記枠部の形状を近似する曲線を求める処理を、それぞれの代表点間について行うことで4つの曲線を求める手段と、前記4つの曲線を用いて、前記4つの曲線で囲まれた領域に対する曲面を求める手段と、2次元的に前記曲面上の点をサンプリングすることで、4点で規定されるメッシュ単位で前記オブジェクト領域を分割する手段とを備え、前記第2のメッシュ生成手段は、前記オブジェクト領域を三角形メッシュ群に分割する手段と、前記三角形メッシュ群の歪みが極小化されるように前記オブジェクト領域を前記4つの代表点を頂点とする四角形領域に変換する手段と、2次元的に前記四角形領域上の点をサンプリングし、サンプリングしたそれぞれの点の前記四角形領域内における座標位置を前記オブジェクト領域上の座標位置に変換することで、前記サンプリングしたそれぞれの点の前記オブジェクト領域上における座標位置を求める演算手段と、前記演算手段により求めたそれぞれの座標位置における前記オブジェクト領域上の点をサンプリングすることで、4点で規定されるメッシュ単位で前記オブジェクト領域を分割する手段とを備えることを特徴とする。
【発明の効果】
【0015】
本発明によれば、グラディエント・メッシュによるオブジェクトの近似を効率的に行うことができる。
【図面の簡単な説明】
【0016】
【図1】画像処理装置の機能構成例を示すブロック図。
【図2】ステップS902の詳細を示すフローチャート。
【図3】オブジェクト領域に対する代表点設定処理を説明する図。
【図4】メッシュ生成処理を説明する図。
【図5】メッシュ生成方法を選択する為の判断処理を説明する図。
【図6】メッシュ符号化処理のフローチャート。
【図7】メッシュ生成方法を選択する為の判断処理を説明する図。
【図8】コンピュータのハードウェア構成例を示すブロック図。
【発明を実施するための形態】
【0017】
以下、添付図面を参照し、本発明の実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載した構成の具体的な実施例の一つである。
【0018】
[第1の実施形態]
先ず、図1を用いて、本実施形態に係る画像処理装置の機能構成例について説明する。なお、係る説明では、本実施形態に係る画像処理装置によるメッシュ符号化処理のフローチャートを示す図6を適宜参照する。
【0019】
オブジェクト抽出部101には、1以上のオブジェクトを含む入力画像が入力される。この「オブジェクト」とは、文字や物体像などを指し示しており、本実施形態では、この「オブジェクト」は、色のグラデーションを有しているものとして説明する。即ち、本実施形態では、色のグラデーションを有するオブジェクトに対するメッシュ符号化を行う。
【0020】
そしてオブジェクト抽出部101は、この入力画像からオブジェクトの領域をオブジェクト領域として抽出する処理を行う(ステップS901)。オブジェクト領域の抽出には、グラブ・カット法という既知の抽出方法を用いるが、他の抽出手法を用いても構わない。図3(a)に、抽出されたオブジェクト領域の一例を示す。
【0021】
抽出されたオブジェクト領域のデータには、オブジェクト領域301の枠部(オブジェクト領域の境界線)303を構成する各画素の、入力画像上における座標位置と、オブジェクト領域301の内部302を構成する各画素の画素値と、が含まれている。本実施形態では、画素値は、RGBのそれぞれの色成分が8ビットで表現されているものとして説明するが、グレースケール、CMYKなどの色成分の種別、1つの色成分を構成するビット数、についてはこれに限定するものではない。また、オブジェクト領域のデータの構成については、オブジェクト領域301の枠部303を構成する各画素の座標位置、オブジェクト領域301の内部302を構成する各画素の画素値、が導出できるのであれば、他のデータ構成であっても良い。そしてオブジェクト抽出部101は、抽出したオブジェクト領域のデータを、後段の代表点抽出部102に送出する。
【0022】
代表点抽出部102は、オブジェクト領域の境界線上に4点の代表点を設定する(ステップS902)。図2を用いて、ステップS902における処理の詳細について説明する。
【0023】
ステップS201では、代表点抽出部102は、オブジェクト領域の枠部を構成する各画素の座標位置を用いて、オブジェクト領域内における基準位置を求める。本実施形態では、この基準位置として、オブジェクト領域の重心位置(中心位置)を求める。もちろん、オブジェクト領域内における基準位置は中心位置に限定するものではないし、中心位置を求めるための処理はこれに限定するものではない。
【0024】
次に、ステップS202では、代表点抽出部102は、ステップS201で求めた中心位置で互いに直交する2軸(x軸、y軸)をオブジェクト領域上に設けることで、この2軸でオブジェクト領域を4分割する。即ち、4つの分割領域を求める。
【0025】
図3(b)を用いて、ステップS201、S202における処理を説明する。図3(b)において304は、ステップS201で求めた中心位置を示す。305,306は、この中心位置304で互いに直交する2軸で、それぞれ入力画像におけるx軸方向、y軸方向に沿っている。このような2軸305,306を設定することで、オブジェクト領域301は、分割領域307,308,309,310に分割される。
【0026】
図2に戻って、次に、ステップS203、S204では、代表点抽出部102は、それぞれの分割領域の枠部上に代表点を、対向する分割領域で代表点間の距離が最も長くなるように設定する。
【0027】
図3(c)、(d)を用いて、ステップS203、S204における処理を説明する。図3(c)において311は分割領域307の枠部を示しており、312は分割領域308の枠部を示しており、313は分割領域309の枠部を示しており、314は分割領域310の枠部を示している。
【0028】
ここで代表点抽出部102は、分割領域307の枠部311上に代表点を設けると共に、分割領域307と対向する分割領域309の枠部313上にも代表点を設けるが、それぞれの代表点間の距離が最大となるように、それぞれの代表点の位置を決める。その結果、図3(c)に示す如く、枠部311上における代表点として代表点317が設定され、枠部313上における代表点として代表点319が設定される。
【0029】
同様に代表点抽出部102は、分割領域308の枠部312上に代表点を設けると共に、分割領域308と対向する分割領域310の枠部314上にも代表点を設けるが、それぞれの代表点間の距離が最大となるように、それぞれの代表点の位置を決める。その結果、図3(c)に示す如く、枠部312上における代表点として代表点318が設定され、枠部314上における代表点として代表点320が設定される。
【0030】
その結果、図3(d)に示す如く、設定された代表点317、318、319、320を端点として区切られた枠部321、322、323、324が設定される。即ち、係る処理によれば、それぞれの分割領域の枠部上に一つの代表点を設定することができ、これにより、4つの代表点を偏りなく配置することができる。なお、代表点4点317、318、319、320を決定するための方法については上記に説明した方法に限定するものではなく、例えば、非特許文献3に開示されているような他の方法を用いても構わない。
【0031】
そして代表点抽出部102は、設定した代表点4点317、318、319、320の入力画像上における座標位置と、オブジェクト領域のデータと、を後段のメッシュ生成部103に送出する。
【0032】
次に、図4を用いて、メッシュ生成部103が行うメッシュ生成処理について説明する。メッシュ生成部103は、オブジェクト領域の境界形状に応じて、第1のメッシュ生成方法及び第2のメッシュ生成方法のうち1つを選択し、選択したメッシュ生成方法を用いて、オブジェクト領域に対してメッシュを生成する。
【0033】
第1のメッシュ生成方法では、代表点4点の座標位置と、オブジェクト領域のデータに含まれている「オブジェクト領域の枠部(オブジェクト領域の境界線)を構成する各画素の、入力画像上における座標位置」とを用いてメッシュを生成する。第2のメッシュ生成方法では、代表点4点の座標位置と、オブジェクト領域のデータとを用いてメッシュを生成する。ここで、第1のメッシュ生成方法、第2のメッシュ生成方法のそれぞれについてより詳細に説明する。
【0034】
先ず、第1のメッシュ生成方法について説明する。第1のメッシュ生成方法では先ず、隣接する代表点の間を結ぶ3次ベジェスプライン曲線(パラメトリック曲線)を求める処理を、それぞれの代表点間について行うことで、オブジェクト領域の枠部の形状を近似する4つの3次ベジェスプライン曲線を求める。これにより、オブジェクト領域の枠部の形状を、この4つの3次ベジェスプライン曲線を用いて近似することができる。
【0035】
次に、メッシュ生成部103は、この求めた4つの3次ベジェスプライン曲線からクーンズパッチを生成することで、この4つの3次ベジェスプライン曲線から1つのパラメトリック曲面を求める。
【0036】
図4(b)を用いて、第1のメッシュ生成方法について説明する。図4(b)において390は、代表点317と代表点318とを結ぶ3次ベジェスプライン曲線である。また、391は、代表点318と代表点319とを結ぶ3次ベジェスプライン曲線である。また、392は、代表点319と代表点320とを結ぶ3次ベジェスプライン曲線である。また、393は、代表点320と代表点317とを結ぶ3次ベジェスプライン曲線である。
【0037】
従って図4(b)の場合、メッシュ生成部103は、4つの3次ベジェスプライン曲線390〜393を求める。そしてメッシュ生成部103は、この4つの3次ベジエスプライン曲線390〜393で囲まれた領域をクーンズパッチでパラメトリック曲面表現することで、パラメトリック曲面を求める。なお、係る処理については周知の技術であるので、これ以上の説明は省略する。
【0038】
次に、メッシュ生成部103は、この求めたパラメトリック曲面を、パラメトリック曲面で規定されたu方向、v方向、それぞれに均一に分割してメッシュ群を生成する。図4(b)では、3次ベジエスプライン曲線391,393がu方向(即ちパラメトリック曲面が規定する方向)、3次ベジエスプライン曲線390,392がv方向(即ちパラメトリック曲面が規定する方向)とする。この場合、u方向、v方向に2次元的にパラメトリック曲面上の点をサンプリングすることで、サンプリングした4点で規定されるメッシュ単位でパラメトリック曲面を分割し、これによりメッシュ群を生成する。即ち、パラメトリック曲面を複数のメッシュに均一に分割する。
【0039】
ここで「均一に分割」とは、パラメトリック曲面はu、v方向それぞれ0〜1の値を取る媒介変数で表現されているため、例えば、パラメトリック曲面を10分割する場合、媒介変数を0.1刻みで変化させた場合の各位置の点をサンプリングすることを指す。もちろん、分割数は任意に設定しても良い。
【0040】
このように、u方向、v方向に2次元的にパラメトリック曲面上の点をサンプリングすることで、サンプリングした4点で規定されるメッシュ単位で、パラメトリック曲面(オブジェクト領域)を分割する。この分割処理により、メッシュを構成する各頂点について、その位置を示す位置情報、その位置における勾配を示す勾配情報、その位置における色を示す色情報が求まる。
【0041】
ここで、第1のメッシュ生成手法で生成するグラディエント・メッシュの特徴を、図4(b)、(c)を用いて説明する。第1のメッシュ生成手法では上述の通り、オブジェクト領域の内部については参酌せず、オブジェクト領域の境界部分のみに基づいてグラディエント・メッシュを生成する。従って、第1のメッシュ生成方法は、オブジェクト領域の境界部分に加えてオブジェクト領域の内部までをも参酌する第2のメッシュ生成方法よりも高速にグラディエント・メッシュを生成することができる。また、第1のメッシュ生成手法は、図4(b)に示す如く、オブジェクト領域が単純な形状を有する場合には、歪みの少ないグラディエント・メッシュを生成することができる。しかし、図4(c)に示す如く、オブジェクト領域が複雑な形状を有する場合、特に形状が大きく凹んでいる(凹みの強度が大きい)場合、メッシュが大きく歪んでしまい、オブジェクト領域を忠実に近似することが困難となる。
【0042】
次に、第2のメッシュ生成方法について説明する。第2のメッシュ生成方法では先ず、オブジェクト領域のデータに含まれる「オブジェクト領域内の各画素の画素値」を用いてオブジェクト領域内に複数の特徴点を設定する。そして設定した特徴点群と、オブジェクト領域のデータに含まれる「オブジェクト領域の枠部を構成する各画素の座標位置」と、を用いてドロネー三角形分割を行うことで、図4(a)に示す如く、オブジェクト領域を三角形メッシュ群に分割する。そして代表点317〜320が四角形領域(長方形領域)の各頂点、枠部321と枠部323とがこの四角形領域で対向する平行な辺、枠部322と枠部324とがこの四角形領域で対向する平行な辺、となるように、オブジェクト領域を四角形領域に変換する。この変換は、三角形メッシュ群の形状の歪みが極小化されるように行われる。なお、係る変換は、三角形メッシュ群の色の歪みが極小化されるように行う等、他の方法を用いて実現しても良い。
【0043】
そしてこの求めた四角形領域を、この四角形領域で規定されたu方向、v方向それぞれに均一に分割して四辺形のメッシュ群を生成する。四角形領域はu、v方向それぞれ0〜1の値を取る媒介変数で表現されているため、例えば、四角形領域をu、v方向それぞれに10分割する場合、媒介変数を0.1刻みで変化させた場合の各位置の点をサンプリングする。もちろん、分割数、刻み幅は任意に設定しても良い。このように、u方向、v方向に2次元的に四角形領域上の点をサンプリングすることで、サンプリングした4点で規定されるメッシュ単位で、四角形領域を分割する。
【0044】
そして、この求めたメッシュの頂点の四角形領域内における位置情報をオブジェクト領域上の座標位置に変換することで、上記分割されたそれぞれのメッシュの4頂点のオブジェクト領域上における座標位置を求める(演算する)。そしてこの求めたオブジェクト領域上におけるそれぞれの座標位置の点をサンプリングすることで、4点で規定されるメッシュ単位でオブジェクト領域を分割する。この分割処理により、メッシュを構成する各頂点について、その位置を示す位置情報、その位置における勾配情報、その位置における色情報が求まる。なお、第2のメッシュ生成方法については非特許文献3でも開示されているように周知の技術であるので、これ以上の説明は省略する。
【0045】
第2のメッシュ生成手法では上述の通り、オブジェクト領域の境界に加えて内部をも考慮してメッシュ生成を行うため、複雑な形状のグラディエント・メッシュを生成できるという特徴がある。従って、第1のメッシュ生成方法、第2のメッシュ生成方法のそれぞれの特徴を考慮し、入力画像中のオブジェクト領域に対して何れのメッシュ生成方法を用いるのかを、このオブジェクト領域の境界形状に応じて決定する。より具体的には、オブジェクト領域の境界が単純な形状である場合には、第1のメッシュ生成手法を用いて高速にグラディエント・メッシュを生成する。一方、オブジェクト領域の境界が複雑な形状である場合には、第2のメッシュ生成手法を用いて高精度にグラディエント・メッシュを生成する。このように、これらの2通りのメッシュ生成手法を切り替えて用いることで、グラディエント・メッシュの生成を効率的に行うことができる。
【0046】
次に、メッシュ生成部103が第1のメッシュ生成方法、第2のメッシュ生成方法の何れか一方を選択する為に行う判断処理について説明する。メッシュ生成部103は先ず、図5(a)、(b)に示す如く、隣接する代表点間を線分で繋ぎ、代表点4点317、318、319、320を頂点とする四角形を求める(ステップS903)。
【0047】
そして、枠部321を構成する各画素から代表点317と代表点318とを結ぶ線分501に垂線をおろした場合に、その長さが最長となる垂線l1を特定し、その垂線l1の長さL1を求める(ステップS904)。同様に、枠部322を構成する各画素から代表点318と代表点319とを結ぶ線分502に垂線をおろした場合に、その長さが最長となる垂線l2を特定し、その垂線l2の長さL2を求める(ステップS904)。同様に、枠部323を構成する各画素から代表点319と代表点320とを結ぶ線分503に垂線をおろした場合に、その長さが最長となる垂線l3を特定し、その垂線l3の長さL3を求める(ステップS904)。同様に、枠部324を構成する各画素から代表点320と代表点317とを結ぶ線分504に垂線をおろした場合に、その長さが最長となる垂線l4を特定し、その垂線l4の長さL4を求める(ステップS904)。なお、何れの垂線の長さも、符号付きであるとする。即ち、この四角形の外側に向かって垂線の距離を求めた場合、この距離には負の符号を付け、この四角形の内側に向かって垂線の距離を求めた場合、この距離には正の符号を付ける。
【0048】
そして求めた長さL1〜L4のうち最大値を特定し、特定した最大値が閾値以上であるか否かを判断する(ステップS905)。係る判断の結果、特定した最大値が閾値以上であれば処理をステップS906に進める。ステップS906では、メッシュ生成部103は第2のメッシュ生成方法を選択する。一方、閾値よりも小さければ処理をステップS907に進める。ステップS907では、メッシュ生成部103は第1のメッシュ生成方法を選択する。
【0049】
なお、メッシュ生成部103が第1のメッシュ生成方法、第2のメッシュ生成方法の何れか一方を選択する為に行う判断処理についてはこれに限定するものではなく、次のような方法も考えられる。メッシュ生成部103は先ず、図5(c)、(d)に示す如く、隣接する代表点間を線分で繋ぎ、代表点4点317、318、319、320を頂点とする四角形を求める。そして、代表点317と代表点318とを結ぶ線分501と枠部321とで囲まれた領域のうち、四角形の内側に位置する領域の面積(画素数)を求める。この場合、この囲まれた領域は四角形の外側に位置しているので、面積の計算は行わなくて良い。
【0050】
同様に、代表点318と代表点319とを結ぶ線分502と枠部322とで囲まれた領域のうち、四角形の内側に位置する領域の面積(画素数)を求める。同様に、代表点319と代表点320とを結ぶ線分503と枠部323とで囲まれた領域のうち、四角形の内側に位置する領域の面積(画素数)を求める。同様に、代表点320と代表点317とを結ぶ線分504と枠部324とで囲まれた領域のうち、四角形の内側に位置する領域の面積(画素数)を求める。そして図5(c)に示す如く、求めた面積のうち最大の面積が閾値以上であれば第2のメッシュ生成方法を選択する。一方、図5(d)に示す如く、求めた面積のうち最大の面積が閾値よりも小さければ第1のメッシュ生成方法を選択する。
【0051】
このように、4つの代表点を頂点とする四角形領域とオブジェクト領域との差分領域のサイズを規定するサイズ情報としては、オブジェクト領域の枠部と四角形領域の各辺との間の距離を用いても良いし、この差分領域の面積を用いても良い。もちろん、サイズ情報として用いることができる情報はこれ以外にも考えられる。そして何れにせよ、メッシュ生成部103は、サイズ情報が示すサイズが閾値よりも小さい場合には第1のメッシュ生成方法でメッシュ生成を行い、サイズ情報が示すサイズが閾値以上である場合には第2のメッシュ生成方法でメッシュ生成を行う。このようにメッシュ生成部103は、サイズ情報に応じて、メッシュ生成方法の選択制御を行う。
【0052】
メッシュ生成部103は、このような判断処理を行うことで第1のメッシュ生成方法、第2のメッシュ生成方法の何れか1つを選択し、選択したメッシュ生成方法でオブジェクト領域に対してグラディエント・メッシュを生成する(ステップS908)。
【0053】
符号化部104は、メッシュ生成部103で生成されたグラディエント・メッシュのデータを符号化して管理する(ステップS909)。グラディエント・メッシュのデータには、次の項目の内容がテキストとして記されている。
【0054】
・ メッシュのu方向の頂点数、メッシュのv方向の頂点数、領域数等を含むヘッダ
・ メッシュの頂点のx座標、y座標、u方向の勾配、v方向の勾配、u方向のスケール値、v方向のスケール値、RGB値、色のu方向の勾配、色のv方向の勾配
本実施形態では、符号化部104は、このような項目の内容が記されたテキストデータをzip符号化して管理しているが、非可逆符号化を含めた他の符号化方法を用いても構わない。また、メッシュの位置情報、勾配情報、色情報が導出できれば、他のデータ記述方法でも構わない。
【0055】
以上の説明により、本実施形態によれば、オブジェクトの境界形状を判断基準としてメッシュ生成手法を切り替えるので、グラディエント・メッシュによるオブジェクトの近似を効率的に行うことができる。
【0056】
<変形例>
図1に示した各部はハードウェアで構成しても良いが、ソフトウェア(コンピュータプログラム)として実装しても良い。この場合、このソフトウェアは、PC(パーソナルコンピュータ)等の一般のコンピュータのメモリにインストールされることになる。そしてこのコンピュータのCPUがこのインストールされたソフトウェアを実行することで、このコンピュータは、上述の画像処理装置の機能(図1に示した各部の機能)を実現することになる。即ち、このコンピュータは、上述の画像処理装置に適用することができる。第1の実施形態に係る画像処理装置として適用可能なコンピュータのハードウェア構成例について図8を用いて説明する。
【0057】
CPU801は、RAM802やROM803に格納されているコンピュータプログラムやデータを用いてコンピュータ全体の制御を行うと共に、画像処理装置が行うものとして説明した上述の各処理を実行する。即ち、図1に示した各部が行うものとして上述した各処理を実行する。
【0058】
RAM802は、コンピュータ読み取り可能な記憶媒体の一例である。RAM802は、外部記憶装置807や記憶媒体ドライブ808からロードされたコンピュータプログラムやデータ、I/F(インターフェース)809を介して外部装置から受信したデータなどを一時的に記憶するためのエリアを有する。更に、RAM802は、CPU801が各種の処理を実行する際に用いるワークエリアを有する。即ち、RAM802は、各種のエリアを適宜提供することができる。
【0059】
ROM803には、コンピュータの設定データや、ブートプログラムなどが格納されている。キーボード804、マウス805は、コンピュータの操作者が操作することで、各種の指示をCPU801に対して入力することができる。
【0060】
表示装置806は、CRTや液晶画面などにより構成されており、CPU801による処理結果を画像や文字などでもって表示することができる。例えば、上記入力画像を表示したり、抽出したオブジェクト領域を明示的に表示したり、メッシュ符号化の過程で求めた3次ベジエスプライン曲線やパラメトリック曲面等を表示したりすることができる。
【0061】
外部記憶装置807は、コンピュータ読み取り可能な記憶媒体の一例であり、ハードディスクドライブ装置に代表される大容量情報記憶装置である。外部記憶装置807には、OS(オペレーティングシステム)や、図1に示した各部の機能をCPU801に実現させるためのコンピュータプログラムやデータ、上記入力画像のデータ、既知の情報として説明した情報等が保存されている。外部記憶装置807に保存されているコンピュータプログラムやデータは、CPU801による制御に従って適宜RAM802にロードされ、CPU801による処理対象となる。
【0062】
記憶媒体ドライブ808は、CD−ROMやDVD−ROMなどの記憶媒体に記録されているコンピュータプログラムやデータを読み出し、読み出したコンピュータプログラムやデータを外部記憶装置807やRAM802に出力する。なお、外部記憶装置807に保存されているものとして説明した情報の一部若しくは全部をこの記憶媒体に記録させておき、この記憶媒体ドライブ808に読み取らせても良い。
【0063】
I/F809は、外部装置をコンピュータに接続する為のものである。例えば、ディジタルカメラなど、上記入力画像を取得するための装置を、このI/F809に接続し、この装置から入力画像をI/F809を介してRAM802や外部記憶装置807に取得するようにしても良い。810は、上述の各部を繋ぐバスである。
【0064】
なお、CPU801が実行する画像処理用のアプリケーションプログラムは、基本的に図1の各処理部、及び図2の各ステップに示す各構成要素に相当する関数を備えることになる。ここで、符号化したグラディエント・メッシュのデータは外部記憶装置807に保存することになる。
【0065】
[第2の実施形態]
第1の実施形態では、隣接する代表点の間を直線で結び、直線とオブジェクト領域の枠部との符号付き距離の最大値を、メッシュ生成方法の選択基準とした。このとき、第1の実施形態では、この直線で囲まれた四角形の内側のみの垂線の長さを考慮しており、凹形状のオブジェクト領域に対して有効であるが、四角形の外側については考慮していない。従って、本実施形態では、第1の実施形態では垂線の距離に付していた符号を付けないようにする。即ち、垂線が四角形の内側に位置していようと外側に位置していようと、距離は常に正の値として計算する。
【0066】
[第3の実施形態]
本実施形態では、第1のメッシュ生成方法、第2のメッシュ生成方法の何れを選択するのかを判断するための処理のみが第1,2の実施形態とは異なる。従って、以下では、係る判断処理について、図7を用いて説明する。
【0067】
790はオブジェクト領域の枠部(境界線)であり、メッシュ生成部103は先ず、オブジェクト領域のデータに含まれている「オブジェクト領域の枠部を構成する各画素の座標位置」を用いて、枠部790上の凹部、凸部を検出する。
【0068】
凹部、凸部の検出では、例えば、オブジェクト領域の枠部790上の画素を一定間隔d(d>0)毎にサンプリングする。なお、このdは、サンプリング画素間に凹部、凸部が含まれない程度のサイズに規定する。そして時計回りにサンプリング画素を参照する。
【0069】
ここで、現在参照しているサンプリング画素の画素位置P(x)が、2つ前に参照したサンプリング画素の画素位置P(x−2)から1つ前に参照したサンプリング画素の画素位置P(x−1)に向かって右手側(正面側でも良い)に位置しているとする。このとき、次に参照するサンプリング画素の画素位置P(x+1)が画素位置P(x−1)から画素位置P(x)に向かって左手側に位置していれば、画素位置P(x)が凸部であると判断できる。
【0070】
一方、P(x)が画素位置P(x−2)から画素位置P(x−1)に向かって左手側(正面側でも良い)に位置しているとする。このとき、画素位置P(x+1)が画素位置P(x−1)から画素位置P(x)に向かって右手側に位置していれば、画素位置P(x)が凹部であると判断できる。
【0071】
そしてメッシュ生成部103は、このようにして検出した凹部、凸部のそれぞれの位置に特徴点を設定する。702は凸部上に設定された特徴点(凸部特徴点)を示しており、701は凹部上に設定された特徴点(凹部特徴点)を示している。例えばもちろん、凹部、凸部を求める方法についてはこれに限定するものではない。
【0072】
そしてメッシュ生成部103は、隣接する凸部上の特徴点間を直線703で結ぶ。そしてメッシュ生成部103は、隣接する凸部の特徴点間に位置する凹部の特徴点から、隣接する凸部の特徴点間を結ぶ直線への垂線の長さを求める。この処理は、隣接する凸部特徴点間のそれぞれについて行う。そして求めたそれぞれの距離のうち、最大値が閾値以上であれば第2のメッシュ生成方法を選択し、閾値よりも小さければ第1のメッシュ生成方法を選択する。
【0073】
[その他の実施形態]
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。

【特許請求の範囲】
【請求項1】
画像処理装置であって、
画像からオブジェクトの領域をオブジェクト領域として抽出する手段と、
前記オブジェクト領域の枠部を構成する各画素の画素位置を用いて、当該枠部上に4つの代表点を設定する設定手段と、
前記設定手段が設定した4つの代表点を頂点とする四角形領域と、前記オブジェクト領域と、の差分領域のサイズを規定するサイズ情報を求める計算手段と、
第1のメッシュ生成方法を用いて前記オブジェクト領域を複数のメッシュに分割する第1のメッシュ生成手段と、
第2のメッシュ生成方法を用いて前記オブジェクト領域を複数のメッシュに分割する第2のメッシュ生成手段と、
前記サイズ情報が示すサイズが閾値よりも小さい場合には前記第1のメッシュ生成手段に前記オブジェクト領域を複数のメッシュに分割させ、前記サイズ情報が示すサイズが閾値以上の場合には、前記第2のメッシュ生成手段に前記オブジェクト領域を複数のメッシュに分割させる制御手段と、
前記制御手段による制御によって前記第1のメッシュ生成手段、前記第2のメッシュ生成手段の何れかによって生成されたメッシュ群を符号化する符号化手段とを備え、
前記第1のメッシュ生成手段は、
隣接する代表点の間の前記枠部の形状を近似する曲線を求める処理を、それぞれの代表点間について行うことで4つの曲線を求める手段と、
前記4つの曲線を用いて、前記4つの曲線で囲まれた領域に対する曲面を求める手段と、
2次元的に前記曲面上の点をサンプリングすることで、4点で規定されるメッシュ単位で前記オブジェクト領域を分割する手段とを備え、
前記第2のメッシュ生成手段は、
前記オブジェクト領域を三角形メッシュ群に分割する手段と、
前記三角形メッシュ群の歪みが極小化されるように前記オブジェクト領域を前記4つの代表点を頂点とする四角形領域に変換する手段と、
2次元的に前記四角形領域上の点をサンプリングし、サンプリングしたそれぞれの点の前記四角形領域内における座標位置を前記オブジェクト領域上の座標位置に変換することで、前記サンプリングしたそれぞれの点の前記オブジェクト領域上における座標位置を求める演算手段と、
前記演算手段により求めたそれぞれの座標位置における前記オブジェクト領域上の点をサンプリングすることで、4点で規定されるメッシュ単位で前記オブジェクト領域を分割する手段と
を備えることを特徴とする画像処理装置。
【請求項2】
前記設定手段は、
前記オブジェクト領域内における基準位置を求める手段と、
前記基準位置を通り、互いに直交する2軸を前記オブジェクト領域内に設けることで、この2軸によって前記オブジェクト領域を4つの分割領域に分割する手段と、
それぞれの分割領域の枠部上に代表点を、対向する分割領域で代表点間の距離が最も長くなるように設定する手段と
を備えることを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記計算手段は、隣接する代表点の間を結ぶ線分に対して、当該隣接する代表点の間の前記オブジェクト領域の枠部を構成する各画素から垂線を求め、求めた垂線のうち最長の垂線の長さを求める処理を、それぞれの隣接する代表点間について行い、それぞれの隣接する代表点間について求めた長さのうち最大値を前記サイズ情報として求め、
前記制御手段は、前記最大値が閾値よりも小さい場合には前記第1のメッシュ生成手段に前記オブジェクト領域を複数のメッシュに分割させ、前記最大値が閾値以上の場合には、前記第2のメッシュ生成手段に前記オブジェクト領域を複数のメッシュに分割させる
ことを特徴とする請求項1又は2に記載の画像処理装置。
【請求項4】
前記計算手段は、前記垂線が前記四角形の内部に位置している場合には、当該垂線の長さに正の符号を付し、前記垂線が前記四角形の外部に位置している場合には、当該垂線の長さに負の符号を付す、ことを特徴とする請求項3に記載の画像処理装置。
【請求項5】
前記計算手段は、隣接する代表点の間を結ぶ線分と、当該隣接する代表点の間の前記オブジェクト領域の枠部と、で囲まれた領域の面積を求める処理を、それぞれの隣接する代表点間について行い、それぞれの隣接する代表点間について求めた面積のうち最大値を前記サイズ情報として求め、
前記制御手段は、前記最大値が閾値よりも小さい場合には前記第1のメッシュ生成手段に前記オブジェクト領域を複数のメッシュに分割させ、前記最大値が閾値以上の場合には、前記第2のメッシュ生成手段に前記オブジェクト領域を複数のメッシュに分割させる
ことを特徴とする請求項1に記載の画像処理装置。
【請求項6】
前記計算手段は、前記四角形の内部に位置している前記囲まれた領域の面積を求めることを特徴とする請求項5に記載の画像処理装置。
【請求項7】
画像処理装置であって、
画像からオブジェクトの領域をオブジェクト領域として抽出する手段と、
前記オブジェクト領域の枠部を構成する各画素の画素位置を用いて、当該枠部上に4つの代表点を設定する手段と、
前記オブジェクト領域の枠部を構成する各画素の画素位置を用いて、当該枠部上の凹部、凸部を検出し、検出したそれぞれの凹部の画素位置に凹部特徴点を設定すると共に、検出したそれぞれの凸部の画素位置に凸部特徴点を設定する設定手段と、
隣接する凸部特徴点の間の凹部特徴点から、当該隣接する凸部特徴点の間を結ぶ直線に降ろした垂線の長さを求める処理を、それぞれの隣接する凸部特徴点間について行う計算手段と、
第1のメッシュ生成方法を用いて前記オブジェクト領域を複数のメッシュに分割する第1のメッシュ生成手段と、
第2のメッシュ生成方法を用いて前記オブジェクト領域を複数のメッシュに分割する第2のメッシュ生成手段と、
前記計算手段がそれぞれの隣接する凸部特徴点間について求めた長さのうち最大値が閾値よりも小さい場合には前記第1のメッシュ生成手段に前記オブジェクト領域を複数のメッシュに分割させ、前記最大値が閾値以上の場合には、前記第2のメッシュ生成手段に前記オブジェクト領域を複数のメッシュに分割させる制御手段と、
前記制御手段による制御によって前記第1のメッシュ生成手段、前記第2のメッシュ生成手段の何れかによって生成されたメッシュ群を符号化する符号化手段とを備え、
前記第1のメッシュ生成手段は、
隣接する代表点の間の前記枠部の形状を近似する曲線を求める処理を、それぞれの代表点間について行うことで4つの曲線を求める手段と、
前記4つの曲線を用いて、前記4つの曲線で囲まれた領域に対する曲面を求める手段と、
2次元的に前記曲面上の点をサンプリングすることで、4点で規定されるメッシュ単位で前記オブジェクト領域を分割する手段とを備え、
前記第2のメッシュ生成手段は、
前記オブジェクト領域を三角形メッシュ群に分割する手段と、
前記三角形メッシュ群の歪みが極小化されるように前記オブジェクト領域を前記4つの代表点を頂点とする四角形領域に変換する手段と、
2次元的に前記四角形領域上の点をサンプリングし、サンプリングしたそれぞれの点の前記四角形領域内における座標位置を前記オブジェクト領域上の座標位置に変換することで、前記サンプリングしたそれぞれの点の前記オブジェクト領域上における座標位置を求める演算手段と、
前記演算手段により求めたそれぞれの座標位置における前記オブジェクト領域上の点をサンプリングすることで、4点で規定されるメッシュ単位で前記オブジェクト領域を分割する手段と
を備えることを特徴とする画像処理装置。
【請求項8】
画像処理装置が行う画像処理方法であって、
画像からオブジェクトの領域をオブジェクト領域として抽出する工程と、
前記オブジェクト領域の枠部を構成する各画素の画素位置を用いて、当該枠部上に4つの代表点を設定する設定工程と、
前記設定工程で設定した4つの代表点を頂点とする四角形領域と、前記オブジェクト領域と、の差分領域のサイズを規定するサイズ情報を求める計算工程と、
第1のメッシュ生成方法を用いて前記オブジェクト領域を複数のメッシュに分割する第1のメッシュ生成工程と、
第2のメッシュ生成方法を用いて前記オブジェクト領域を複数のメッシュに分割する第2のメッシュ生成工程と、
前記サイズ情報が示すサイズが閾値よりも小さい場合には前記第1のメッシュ生成工程で前記オブジェクト領域を複数のメッシュに分割させ、前記サイズ情報が示すサイズが閾値以上の場合には、前記第2のメッシュ生成工程で前記オブジェクト領域を複数のメッシュに分割させる制御工程と、
前記制御工程による制御によって前記第1のメッシュ生成工程、前記第2のメッシュ生成工程の何れかによって生成されたメッシュ群を符号化する符号化工程とを備え、
前記第1のメッシュ生成工程は、
隣接する代表点の間の前記枠部の形状を近似する曲線を求める処理を、それぞれの代表点間について行うことで4つの曲線を求める工程と、
前記4つの曲線を用いて、前記4つの曲線で囲まれた領域に対する曲面を求める工程と、
2次元的に前記曲面上の点をサンプリングすることで、4点で規定されるメッシュ単位で前記オブジェクト領域を分割する工程とを備え、
前記第2のメッシュ生成工程は、
前記オブジェクト領域を三角形メッシュ群に分割する工程と、
前記三角形メッシュ群の歪みが極小化されるように前記オブジェクト領域を前記4つの代表点を頂点とする四角形領域に変換する工程と、
2次元的に前記四角形領域上の点をサンプリングし、サンプリングしたそれぞれの点の前記四角形領域内における座標位置を前記オブジェクト領域上の座標位置に変換することで、前記サンプリングしたそれぞれの点の前記オブジェクト領域上における座標位置を求める演算工程と、
前記演算工程で求めたそれぞれの座標位置における前記オブジェクト領域上の点をサンプリングすることで、4点で規定されるメッシュ単位で前記オブジェクト領域を分割する工程と
を備えることを特徴とする画像処理方法。
【請求項9】
画像処理装置が行う画像処理方法であって、
画像からオブジェクトの領域をオブジェクト領域として抽出する工程と、
前記オブジェクト領域の枠部を構成する各画素の画素位置を用いて、当該枠部上に4つの代表点を設定する工程と、
前記オブジェクト領域の枠部を構成する各画素の画素位置を用いて、当該枠部上の凹部、凸部を検出し、検出したそれぞれの凹部の画素位置に凹部特徴点を設定すると共に、検出したそれぞれの凸部の画素位置に凸部特徴点を設定する設定工程と、
隣接する凸部特徴点の間の凹部特徴点から、当該隣接する凸部特徴点の間を結ぶ直線に降ろした垂線の長さを求める処理を、それぞれの隣接する凸部特徴点間について行う計算工程と、
第1のメッシュ生成方法を用いて前記オブジェクト領域を複数のメッシュに分割する第1のメッシュ生成工程と、
第2のメッシュ生成方法を用いて前記オブジェクト領域を複数のメッシュに分割する第2のメッシュ生成工程と、
前記計算工程でそれぞれの隣接する凸部特徴点間について求めた長さのうち最大値が閾値よりも小さい場合には前記第1のメッシュ生成工程で前記オブジェクト領域を複数のメッシュに分割させ、前記最大値が閾値以上の場合には、前記第2のメッシュ生成工程で前記オブジェクト領域を複数のメッシュに分割させる制御工程と、
前記制御工程による制御によって前記第1のメッシュ生成工程、前記第2のメッシュ生成工程の何れかによって生成されたメッシュ群を符号化する符号化工程とを備え、
前記第1のメッシュ生成工程は、
隣接する代表点の間の前記枠部の形状を近似する曲線を求める処理を、それぞれの代表点間について行うことで4つの曲線を求める工程と、
前記4つの曲線を用いて、前記4つの曲線で囲まれた領域に対する曲面を求める工程と、
2次元的に前記曲面上の点をサンプリングすることで、4点で規定されるメッシュ単位で前記オブジェクト領域を分割する工程とを備え、
前記第2のメッシュ生成工程は、
前記オブジェクト領域を三角形メッシュ群に分割する工程と、
前記三角形メッシュ群の歪みが極小化されるように前記オブジェクト領域を前記4つの代表点を頂点とする四角形領域に変換する工程と、
2次元的に前記四角形領域上の点をサンプリングし、サンプリングしたそれぞれの点の前記四角形領域内における座標位置を前記オブジェクト領域上の座標位置に変換することで、前記サンプリングしたそれぞれの点の前記オブジェクト領域上における座標位置を求める演算工程と、
前記演算工程で求めたそれぞれの座標位置における前記オブジェクト領域上の点をサンプリングすることで、4点で規定されるメッシュ単位で前記オブジェクト領域を分割する工程と
を備えることを特徴とする画像処理方法。
【請求項10】
コンピュータを、請求項1乃至7の何れか1項に記載の画像処理装置が有する各手段として機能させる為のコンピュータプログラム。
【請求項11】
請求項10に記載のコンピュータプログラムを格納した、コンピュータ読み取り可能な記憶媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2011−59735(P2011−59735A)
【公開日】平成23年3月24日(2011.3.24)
【国際特許分類】
【出願番号】特願2009−205242(P2009−205242)
【出願日】平成21年9月4日(2009.9.4)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】