JP2015090613A - 画像処理装置及び画像処理方法 - Google Patents
画像処理装置及び画像処理方法 Download PDFInfo
- Publication number
- JP2015090613A JP2015090613A JP2013230603A JP2013230603A JP2015090613A JP 2015090613 A JP2015090613 A JP 2015090613A JP 2013230603 A JP2013230603 A JP 2013230603A JP 2013230603 A JP2013230603 A JP 2013230603A JP 2015090613 A JP2015090613 A JP 2015090613A
- Authority
- JP
- Japan
- Prior art keywords
- feature line
- intersection
- feature
- end point
- pixel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Image Generation (AREA)
Abstract
【課題】入力画像から抽出した特徴線(エッジ線)に断線部分が生じることによる画質の劣化を回避する仕組みを提供する。【解決手段】入力画像から画素値の変化が近傍画素に比して大きな画素に基づき特徴線を抽出する特徴線抽出部120と、特徴線抽出部120で抽出された特徴線における端点を抽出する端点抽出部131と、端点抽出部131で抽出された端点から当該端点が存在する特徴線を延長して他の特徴線と接続する際の交点を探索する交点探索部132と、端点抽出部131で抽出された端点から当該端点が存在する特徴線を延長して交点探索部132で探索された交点に接続することにより、特徴線抽出部120で抽出された特徴線の断線部分を補正した補正済み特徴線を生成する補正済み特徴線生成部133を備える。【選択図】図1
Description
本発明は、入力画像の処理を行う画像処理装置及び画像処理方法、当該画像処理装置の各手段としてコンピュータを機能させるプログラム、並びに、当該プログラムを記憶したコンピュータ読み取り可能な記憶媒体に関するものである。
従来から、画像をベクトル表現する技術が広く知られている。ベクトル表現された画像は、拡大・縮小時に画質劣化が少ない、画像編集し易い、高い圧縮率を実現できるなどの利点がある。
イラストや文字をベクトル表現するために、オブジェクトの輪郭をベジェ関数(ベジェ曲線)やスプライン関数(スプライン曲線)などを用いて近似する手法がある。オブジェクト領域内は、単一色、線形グラデーション、放射状グラデーションなどで塗ることができるが、複雑なグラデーションの表現は困難である。
複雑なグラデーションを含むオブジェクトをベクトル表現するために、Adobe Illustrator(登録商標)のグラディエント・メッシュ・ツールが一般に用いられている。グラディエント・メッシュでは、メッシュに色と勾配を与えて3次関数を生成することで複雑なグラデーションを含むオブジェクトを描画できる(例えば、下記の特許文献1参照)。
上述したグラディエント・メッシュは4頂点からなる曲線メッシュであるが、3頂点からなる曲線メッシュにより、複雑なグラデーションをベクトル表現する技術が知られている(例えば、下記の非特許文献1参照)。この技術では、画像内のエッジを線分群(以下、「エッジ線」と称する)として抽出し、エッジ線を再現する3頂点曲線メッシュ群を構成することでベクトル表現を行う。この際、3頂点曲線メッシュとは、メッシュの頂点数が3であり、頂点間を結ぶメッシュの辺が直線または曲線であるものとする。
ここで、自然画像のような色が複雑に変化するオブジェクトを3頂点曲線メッシュ群によりベクトル表現することを考える。直線メッシュに対して曲線メッシュは、オブジェクトの形状や特徴を曲線で近似するため、より少ないメッシュ数でオブジェクトを近似できる。
3頂点曲線メッシュ群で画像を精度良く近似するためには、エッジ線を再現し、且つ、画像の大域的な色変化の特徴を捉えたメッシュ群を生成する必要がある。
例えば、下記の非特許文献1では、まず、画像内のエッジ線を抽出し、エッジ線に沿うようなメッシュ群を生成する。そして、その後、メッシュ毎にRGBの3成分に対して、メッシュ内の色を塗る薄板スプライン関数を入力画像の色を元に最適化して生成している。このとき、隣接するメッシュ間は、エッジ線をまたいでいない時のみ、薄板スプライン関数を連続させることでエッジ部分の急峻な色変化とグラデーション部分の緩やかな色変化を表現している。しかしながら、この方法では、メッシュ毎に色決定のための最適化演算を要するため、画像近似精度はよいが計算量が多くなってしまう。
他には、メッシュを更に微小な3頂点からなるメッシュに細分割し、細分割メッシュの頂点をサンプリング点として入力画像から色を取得し、それら微小な三角形内の色を双線形補間で補うことで、メッシュの色を表現する手法が考えられる。しかしながら、この手法では、エッジ部分において同じ頂点をサンプリング点として取得することとなるため、エッジの急峻な色変化を表現できなくなってしまう。特に、エッジ線が会合する交点部分においては、色の浸み出しが発生してしまい画質の劣化を招く。
Tian Xia, Binbin Liao, and Yizhou Yu, 「Patch−Based Image Vectorization with Automatic Curvilinear Feature Alignment」, ACM SIGGRAPH Asia 2009, Vol.28, No.5.
このため、本出願人は、エッジ線交点部分において色再現性のよい3頂点曲線メッシュ群を生成するための技術を提案している(特願2012−190615)。この技術では、まず、入力画像から特徴線を抽出し、抽出した特徴線に基づきメッシュの頂点を決定して、これら頂点を用いて前記入力画像を複数のメッシュに分割する。この際、特徴線が3本以上会合する交点では、会合する特徴線の本数と同数だけメッシュに分割する。そして、この交点を共通の頂点とし、それぞれのメッシュ用にこの頂点に異なる色を設定することによって、エッジ線交点部分において色再現性のよい3頂点曲線メッシュ群を生成する。
しかしながら、従来の技術では、エッジ抽出自体が、必ずしもどのような画像に対しても完璧なものではないために、そもそもの特徴線、即ち、画像の色変化が急峻なエッジ線がうまく抽出されずに、特徴線が断線してしまう場合がある。とりわけ、本来、特徴線が3本以上会合する交点となるべき部分での断線により色の浸み出しが発生してしまい、画質の劣化を招くことが起こり得る。
本発明は、このような問題点に鑑みてなされたものであり、入力画像から抽出した特徴線(エッジ線)に断線部分が生じることによる画質の劣化を回避する仕組みを提供することを目的とする。
本発明の画像処理装置は、入力画像から画素値の変化が近傍画素に比して大きな画素に基づき特徴線を抽出する特徴線抽出手段と、前記特徴線抽出手段で抽出された特徴線の断線部分を補正して補正済み特徴線を生成する特徴線補正手段と、前記特徴線補正手段で補正された補正済み特徴線に基づいて特徴点を抽出する特徴点抽出手段と、前記特徴点抽出手段で抽出された特徴点を用いて前記入力画像を複数のメッシュからなるメッシュ群に分割して当該メッシュを生成するメッシュ生成手段と、前記メッシュ生成手段で生成された各メッシュの色情報を設定する色設定手段と、前記メッシュ生成手段で生成された各メッシュについて前記色設定手段で設定された色情報に基づく処理を行って出力データを生成し、当該出力データを出力する出力手段と、を有する。
本発明の画像処理装置による他の態様は、入力画像から画素値の変化が近傍画素に比して大きな画素に基づき特徴線を抽出する特徴線抽出手段と、前記特徴線抽出手段で抽出された特徴線における端点を抽出する端点抽出手段と、前記端点抽出手段で抽出された端点から当該端点が存在する特徴線を延長して他の特徴線と接続する際の交点を探索する交点探索手段と、前記端点抽出手段で抽出された端点から当該端点が存在する特徴線を延長して前記交点探索手段で探索された交点に接続することにより、前記特徴線抽出手段で抽出された特徴線の断線部分を補正した補正済み特徴線を生成する補正済み特徴線生成手段と、を有する。
また、本発明は、上述した画像処理装置による画像処理方法、及び、当該画像処理装置の各手段としてコンピュータを機能させるためのプログラム、並びに、当該プログラムを記憶するコンピュータ読み取り可能な記憶媒体を含む。
本発明の画像処理装置による他の態様は、入力画像から画素値の変化が近傍画素に比して大きな画素に基づき特徴線を抽出する特徴線抽出手段と、前記特徴線抽出手段で抽出された特徴線における端点を抽出する端点抽出手段と、前記端点抽出手段で抽出された端点から当該端点が存在する特徴線を延長して他の特徴線と接続する際の交点を探索する交点探索手段と、前記端点抽出手段で抽出された端点から当該端点が存在する特徴線を延長して前記交点探索手段で探索された交点に接続することにより、前記特徴線抽出手段で抽出された特徴線の断線部分を補正した補正済み特徴線を生成する補正済み特徴線生成手段と、を有する。
また、本発明は、上述した画像処理装置による画像処理方法、及び、当該画像処理装置の各手段としてコンピュータを機能させるためのプログラム、並びに、当該プログラムを記憶するコンピュータ読み取り可能な記憶媒体を含む。
本発明によれば、入力画像から抽出した特徴線(エッジ線)に断線部分が生じることによる画質の劣化を回避することができる。
以下に、図面を参照しながら、本発明を実施するための形態(実施形態)について説明する。
(第1の実施形態)
まず、本発明の第1の実施形態について説明する。
まず、本発明の第1の実施形態について説明する。
図1は、本発明の第1の実施形態に係る画像処理装置の機能構成の一例を示すブロック図である。ここで、図1に示す画像処理装置を、「画像処理装置100−1」と称する。
図1に示すように、画像処理装置100−1は、画像入力部110、特徴線抽出部120、特徴線補正部130、特徴点抽出部140、曲線メッシュ生成部150、色設定部160、及び、データ出力部170の各機能構成を有して構成されている。
図1に示すように、画像処理装置100−1は、画像入力部110、特徴線抽出部120、特徴線補正部130、特徴点抽出部140、曲線メッシュ生成部150、色設定部160、及び、データ出力部170の各機能構成を有して構成されている。
また、特徴線抽出部120は、エッジ検出部121と、エッジ線構成部122とを有して構成されている。また、特徴線補正部130は、端点抽出部131と、交点探索部132と、補正済み特徴線生成部133とを有して構成されている。また、色設定部160は、色点抽出部161と、エッジ上色点補完部162と、交点色補完部163とを有して構成されている。
各機能構成の説明を行う前に、3頂点曲線メッシュについて説明する。
本実施形態で提案する処理手順に従えば、3頂点を結ぶ曲線は、ベジェ曲線、B−スプライン等の曲線の種類に関わらない。本実施形態では、好適な例として、3頂点曲線メッシュにパラメトリック曲面の1つである3頂点のベジェパッチを用いる。このベジェパッチの中でも特に3次のベジェパッチでは、メッシュの各辺が3次のベジェ曲線となるため、3頂点曲線メッシュを生成した後にユーザによる編集が容易であるという利点がある。P1、P2、P3を頂点とする3次のベジェパッチ内の点は、以下の(1)式で表せる。
本実施形態で提案する処理手順に従えば、3頂点を結ぶ曲線は、ベジェ曲線、B−スプライン等の曲線の種類に関わらない。本実施形態では、好適な例として、3頂点曲線メッシュにパラメトリック曲面の1つである3頂点のベジェパッチを用いる。このベジェパッチの中でも特に3次のベジェパッチでは、メッシュの各辺が3次のベジェ曲線となるため、3頂点曲線メッシュを生成した後にユーザによる編集が容易であるという利点がある。P1、P2、P3を頂点とする3次のベジェパッチ内の点は、以下の(1)式で表せる。
(1)式において、s、t、uは、パッチのパラメータである。また、p1、p2、p3は、それぞれ、頂点P1、P2、P3の座標値である。また、c1、c2、c3、c4、c5、c6及びc7は、曲線パッチの形状を定めるパラメータである。ここで、c1〜c6は、ベジェパッチの輪郭を決める3つのベジェ曲線の制御点に対応するパラメータである。また、c7は、ベジェパッチの輪郭には関与しないパラメータであり、本実施形態では、ベジェパッチの頂点の座標と、輪郭を成すベジェ曲線の制御点に対応するパラメータから、以下の(2)式によって定められる。
次に、図1に示す各機能構成について説明する。
画像入力部110は、例えば、ラスタ表現の画像(入力画像)を画像処理装置100−1の内部に入力する処理を行う。ここで、入力画像は、カラー画像、グレー画像、白黒画像のいずれでも構わない。また、入力画像は、矩形画像でも構わないし、画像の一部をベクトル化したい場合には背景部分を透過色に設定した画像等、切り出された領域が与えられてもよい。
特徴線抽出部120は、画像入力部110から入力された入力画像上の特徴を表す曲線形状の特徴線を抽出(構成)する処理を行う。具体的に、特徴線抽出部120は、画像入力部110から入力された入力画像から画素値の変化が近傍画素に比して大きな画素に基づき特徴線を抽出する処理を行う。この際、本実施形態では、特徴線としてエッジ線を用いる。以下に、特徴線抽出部120の内部に構成されている、エッジ検出部121と、エッジ線構成部122とに分けて、特徴線抽出部120の機能を説明する。
エッジ検出部121は、入力画像のエッジとなる画素(エッジ画素)を検出する処理を行う。本実施形態では、キャニー法という既知の方法を用いるが、他の手法を用いても構わない。また、キャニー法が効果的に機能するように、入力画像に明るさ調整、エッジ強調などの前処理を施しても構わない。
エッジ線構成部(特徴線構成部)122は、エッジ検出部121で検出されたエッジ画素のうち、隣接するもの同士を結ぶ線分を構築することにより、エッジを再現する線分群を構成する処理を行う。ここで、隣接画素を結んで線分群を構成する際に、注目画素(着目画素)の上、下、左、右にある4つの画素が隣接しているとみなす4連結接続がある。また、前記4方向に加えて右上、右下、左上、左下にある4つの画素も隣接していると見なす8連結接続もある。本実施形態では、8連結接続を用いる。エッジ検出部121においてキャニー法を用いた結果に対して、8連結接続で隣接しているとみなせる画素を結ぶと、エッジ線として望ましくない結果が得られる場合がある。図2を用いて説明する。
図2は、本発明の第1の実施形態を示し、図1に示す特徴線抽出部120が行う特徴線抽出処理の一例を説明するための図である。
図2(a)中にある四角は、それぞれ、入力画像の画素を表し、エッジ検出においてエッジと見なされた画素(エッジ画素)を灰色で示している。これらのエッジ画素に対して8連結接続で隣接した画素を結ぶと、図2(b)に示すように、エッジ画素201〜205のうち、エッジ画素202、203、204を結ぶようなループが発生してしまう。しかしながら、図2(a)に示すようなエッジ画素が検出された場合には、ループのないエッジ線によって結ばれるべきである。そこで、本実施形態では、8連結接続を行う前に、Hilditch細線化法という既知の手法を適用することにより、この問題を解決する。このHilditch細線化法を行うと、図2(b)に示したエッジ画素203は、エッジ画素でないと判断される。その結果、図2(c)に示すように、エッジ画素201〜202、204〜205がループのない1本のエッジ線210によって結ばれる。このとき、図2(d)に示すエッジ画素206のように、複数のエッジ線が一か所に会合するようなパターンが発生することがある。このような場合には、会合するエッジ線を分断し、それぞれ独立したエッジ線として扱うこととする。図2(d)に示す例でいえば、エッジ線は3本となる。
図2(a)中にある四角は、それぞれ、入力画像の画素を表し、エッジ検出においてエッジと見なされた画素(エッジ画素)を灰色で示している。これらのエッジ画素に対して8連結接続で隣接した画素を結ぶと、図2(b)に示すように、エッジ画素201〜205のうち、エッジ画素202、203、204を結ぶようなループが発生してしまう。しかしながら、図2(a)に示すようなエッジ画素が検出された場合には、ループのないエッジ線によって結ばれるべきである。そこで、本実施形態では、8連結接続を行う前に、Hilditch細線化法という既知の手法を適用することにより、この問題を解決する。このHilditch細線化法を行うと、図2(b)に示したエッジ画素203は、エッジ画素でないと判断される。その結果、図2(c)に示すように、エッジ画素201〜202、204〜205がループのない1本のエッジ線210によって結ばれる。このとき、図2(d)に示すエッジ画素206のように、複数のエッジ線が一か所に会合するようなパターンが発生することがある。このような場合には、会合するエッジ線を分断し、それぞれ独立したエッジ線として扱うこととする。図2(d)に示す例でいえば、エッジ線は3本となる。
特徴線抽出部120で抽出(構成)する特徴線としては、これまでに説明したエッジ線以外に、ベクトル化対象領域の輪郭などが考えられる。上述したように、入力画像の一部をベクトル表現するという目的で、入力画像の一部が透過色に設定されている場合には、透過色と非透過色の境界にある画素がオブジェクトの輪郭画素となる。ここで、オブジェクトとは、文字や物体像等を指している。オブジェクトの輪郭画素を1つの線分群にまとめることは、エッジ線構成部122と同様の手順に従って隣接する画素同士をつなぎ合わせることで実現できる。
特徴線抽出部120で抽出(構成)する特徴線として更に別のものとしては、入力画像を領域分割し、その境界線を用いる方法が考えられる。ここで、領域分割は、最近傍法を用いたもの、EMアルゴリズムを利用したものなど、多くの手法が知られている。
本実施形態では、濃度変化の基準として閾値を定めた上でキャニー法を行い、エッジ画素を抽出している。その後、抽出されたエッジ画素は、エッジ線構成部122により特徴線として構成される。
本実施形態では、濃度変化の基準として閾値を定めた上でキャニー法を行い、エッジ画素を抽出している。その後、抽出されたエッジ画素は、エッジ線構成部122により特徴線として構成される。
図3は、本発明の第1の実施形態を示し、図1に示す特徴線抽出部120で抽出される特徴線の一例を示す図である。
本来、図3(a)に示すような特徴線(エッジ線)が抽出できれば理想的である。
しかしながら、実際には、図3(b)の領域310や領域320で示される領域のように、必ずしも、画像の色変化が急峻な部分より抽出されるべきエッジ線が、うまく抽出されずに、断線してしまっている部分が生じることがある。
本来、図3(a)に示すような特徴線(エッジ線)が抽出できれば理想的である。
しかしながら、実際には、図3(b)の領域310や領域320で示される領域のように、必ずしも、画像の色変化が急峻な部分より抽出されるべきエッジ線が、うまく抽出されずに、断線してしまっている部分が生じることがある。
エッジ画素を生成する処理では、画像の各画素ごとに近隣画素との画素値の変化の大きさを表わす微分値を求め、当該微分値を用いて一画素の幅の線に細線化して得るのが一般的である。この際、画素値にばらつきがあったりすると、エッジ線に断線が生じやすい。キャニー法の場合には、注目画素と、注目画素での画素値の変化の方向と交差する方向の隣接画素とのそれぞれの画素での微分値の大きさを比較し、最大でなければエッジ画素とはしない。このような、非最大値抑制(Non-maximum Suppression)と呼ばれる処理を施してエッジの細線化を行う。
したがって、本来、3本以上のエッジ線が集中しているような部分では、比較的、画素値の変化が大きな画素が集中するような傾向があり、この様な部分では、上述の非最大値抑制処理によりエッジ線の断線が発生しがちである。なお、カラー画像での画素値の変化は、当該カラー画像の明るさ成分を用いてもよい。或いは、カラー画像での画素値の変化は、当該カラー画像中のRGB等の各色成分毎での変化の中で、それぞれの画素において最も絶対値が大きな変化となる色成分での変化をもって、その画素での画素値の変化とするものでもよい。
図4は、本発明の第1の実施形態を示し、図3(b)に示す特徴線の領域のうち、領域310の部分を抜き出した抜き出し領域311と、抜き出し領域311を拡大表示した拡大領域312を示す図である。
ここで、再び、図1の説明に戻って、特徴線補正部130の処理について、図5、図6及び図7を用いて説明する。
特徴線補正部130は、特徴線抽出部120で抽出された特徴線を補正する処理を行う。具体的に、特徴線補正部130は、特徴線抽出部120で抽出された特徴線の断線部分を補正して補正済み特徴線を生成する処理を行う。以下に、特徴線補正部130の内部に構成されている、端点抽出部131、交点探索部132、補正済み特徴線生成部133に分けて、特徴線補正部130の機能を説明する。
端点抽出部131は、特徴線抽出部120で抽出された特徴線における端点を抽出する処理を行う。以下に、端点抽出部131による具体的な端点抽出処理について説明する。
端点抽出部131には、まず、図3(b)に示すような、特徴線抽出部120で抽出された特徴線が入力される。端点抽出部131は、この特徴線から特徴線の端点を抽出する処理を行う。特徴線の端点は、例えば、上述したHilditch細線化法で細線化した際に、端点である画素の位置を記憶しておき、この位置にある画素を端点としてもよい。或いは、特徴線抽出部120で得られた特徴線を構成する画素を含む画像を、例えば、公知のチェーンコードを得るための境界線追跡を行い、追跡方向が折り返される画素、もしくは、45°以内(315°以上)の角度をなして変化する画素を特徴線の端点として抽出してもよい。
図5は、本発明の第1の実施形態を示し、図4に示す拡大領域312内に含まれる特徴線の端点501の一例を示す図である。端点抽出部131は、図5に示す拡大領域312については、特徴線の端点501を抽出する処理を行う。
交点探索部132は、端点抽出部131で抽出された端点とその端点が存在する特徴線上で端点に隣接する画素(以降、単に、「隣接画素」と称する)との配置の関係から、端点を延長して他の特徴線との交点の探索を開始する処理を行う。具体的に、交点探索部132は、端点抽出部131で抽出された端点から当該端点が存在する特徴線を延長して他の特徴線と接続する際の交点を探索する処理を行う。この交点探索部132による交点探索処理を図6及び図7を用いて説明する。
図6は、本発明の第1の実施形態を示し、図1に示す交点探索部132が行う処理の一例を説明するための図である。
図6には、端点である着目画素601を中心とした3×3の画素領域を、端点である着目画素601とその隣接画素との配置の関係に応じてタイプ分けして示したものである。
図6に示すように、黒塗り画素は、端点である着目画素601を表わしている。
また、図6において、右下りの斜線縞で示される画素は、端点の存在する特徴線上の画素であって、端点である着目画素601の右上、右下、左上、左下のいずれかに隣接画素が存在する場合にはその画素を表し、その様な画素が存在せず且つ上下左右のいずれかに隣接画素が存在する場合にはその画素を表わす。以降、右下がりの斜線縞で表わされる隣接画素を「端点隣接代表エッジ画素」602と称する。
また、図6において、左下がりの斜線縞で示される画素は、端点である着目画素601の右上、右下、左上、左下のいずれかに端点隣接代表エッジ画素602となる隣接画素が存在した上で、且つ、この隣接画素と端点との両方に隣接する隣接画素を表わしている。以降、左下がりの斜線縞で表わされる画素を「端点隣接非代表エッジ画素」603と称する。なお、端点隣接非代表エッジ画素603は、当該端点隣接非代表エッジ画素の斜め方向にエッジ画素が存在しない場合には、本来、Hilditch細線化を用いて8連結の細線化済み画像を生成した際に、特徴線上の画素とはなりえなかったはずの画素である。したがって、端点隣接非代表エッジ画素603は、当該端点隣接非代表エッジ画素の右上、右下、左上、左下のいずれかに、ある特徴線上のエッジ画素が接続している画素である。
図6には、端点である着目画素601を中心とした3×3の画素領域を、端点である着目画素601とその隣接画素との配置の関係に応じてタイプ分けして示したものである。
図6に示すように、黒塗り画素は、端点である着目画素601を表わしている。
また、図6において、右下りの斜線縞で示される画素は、端点の存在する特徴線上の画素であって、端点である着目画素601の右上、右下、左上、左下のいずれかに隣接画素が存在する場合にはその画素を表し、その様な画素が存在せず且つ上下左右のいずれかに隣接画素が存在する場合にはその画素を表わす。以降、右下がりの斜線縞で表わされる隣接画素を「端点隣接代表エッジ画素」602と称する。
また、図6において、左下がりの斜線縞で示される画素は、端点である着目画素601の右上、右下、左上、左下のいずれかに端点隣接代表エッジ画素602となる隣接画素が存在した上で、且つ、この隣接画素と端点との両方に隣接する隣接画素を表わしている。以降、左下がりの斜線縞で表わされる画素を「端点隣接非代表エッジ画素」603と称する。なお、端点隣接非代表エッジ画素603は、当該端点隣接非代表エッジ画素の斜め方向にエッジ画素が存在しない場合には、本来、Hilditch細線化を用いて8連結の細線化済み画像を生成した際に、特徴線上の画素とはなりえなかったはずの画素である。したがって、端点隣接非代表エッジ画素603は、当該端点隣接非代表エッジ画素の右上、右下、左上、左下のいずれかに、ある特徴線上のエッジ画素が接続している画素である。
図6のパターン1の列には、端点隣接非代表エッジ画素603が存在しない3×3の画素領域のパターンが描かれている。
一方、図6のパターン2の列には、端点隣接非代表エッジ画素603が存在するパターンが描かれている。上述のように、8連結接続での細線化を基本とするため、端点からの特徴線の延長方向を定めるためには、隣接画素の中で、端点隣接非代表エッジ画素603ではなく、端点隣接代表エッジ画素602と端点である着目画素601の配置の関係に注目する。この意味で、図6には、端点である着目画素601と端点隣接代表エッジ画素602との配置が、パターン1と同様となる3×3の画素領域のパターンを、同じタイプ(type)の行のパターン2の欄に描いてある。
図6の進行先候補の列には、各タイプの3×3の画素領域のパターン、即ち、端点である着目画素601と端点隣接代表エッジ画素602の配置パターンに対して、特徴線を延長する候補先となる画素群を斜め格子縞で示した画素を用いて同領域内に書き加えたパターンが対応する欄に描かれている。以降、斜め格子縞で示した画素を「進行先候補画素」604と称する。端点隣接代表エッジ画素602から端点である着目画素601へと繋がる特徴線を延長する候補先が進行先候補画素604である。なお、図6の進行先候補の欄に描かれている各パターンの中で、白塗りの画素は、注目している端点である着目画素601からは延長され得ない位置の画素である。即ち、端点である着目画素601が存在する特徴線が、8連結細線化の結果として得られているという前提のもと、延長後に生成され、可能性がある補正済みの特徴線も8連結の細線であるために、注目している端点である着目画素601からは延長され得ない画素として設定されている。
一方、図6のパターン2の列には、端点隣接非代表エッジ画素603が存在するパターンが描かれている。上述のように、8連結接続での細線化を基本とするため、端点からの特徴線の延長方向を定めるためには、隣接画素の中で、端点隣接非代表エッジ画素603ではなく、端点隣接代表エッジ画素602と端点である着目画素601の配置の関係に注目する。この意味で、図6には、端点である着目画素601と端点隣接代表エッジ画素602との配置が、パターン1と同様となる3×3の画素領域のパターンを、同じタイプ(type)の行のパターン2の欄に描いてある。
図6の進行先候補の列には、各タイプの3×3の画素領域のパターン、即ち、端点である着目画素601と端点隣接代表エッジ画素602の配置パターンに対して、特徴線を延長する候補先となる画素群を斜め格子縞で示した画素を用いて同領域内に書き加えたパターンが対応する欄に描かれている。以降、斜め格子縞で示した画素を「進行先候補画素」604と称する。端点隣接代表エッジ画素602から端点である着目画素601へと繋がる特徴線を延長する候補先が進行先候補画素604である。なお、図6の進行先候補の欄に描かれている各パターンの中で、白塗りの画素は、注目している端点である着目画素601からは延長され得ない位置の画素である。即ち、端点である着目画素601が存在する特徴線が、8連結細線化の結果として得られているという前提のもと、延長後に生成され、可能性がある補正済みの特徴線も8連結の細線であるために、注目している端点である着目画素601からは延長され得ない画素として設定されている。
交点探索部132は、端点抽出部131で抽出した各端点に対し、端点を着目画素として、それを中心とした3×3画素領域を参照し、端点とその端点が存在する特徴線上での隣接画素の画素配置から、上述した図6に記載のいずれのタイプであるのかを判定する。そして、交点探索部132は、対応するタイプに示される進行先候補となる近隣画素群の各画素での微分値の大きさの中で最大の値をもつ画素を進行先の画素(以降、「進行先画素」と称する)として定める。
次いで、交点探索部132は、定めた進行先画素と、当該進行先画素を定めた際の着目画素(上述の説明では、端点である)との配置の関係から、当該特徴線をこの進行先画素から更に延長して、他の特徴線との交点を探索する処理を行う。この処理を図7を用いて説明する。
次いで、交点探索部132は、定めた進行先画素と、当該進行先画素を定めた際の着目画素(上述の説明では、端点である)との配置の関係から、当該特徴線をこの進行先画素から更に延長して、他の特徴線との交点を探索する処理を行う。この処理を図7を用いて説明する。
図7は、本発明の第1の実施形態を示し、図1に示す交点探索部132が行う処理の一例を説明するための図である。
図7には、進行先画素である注目画素(以降、「進行後画素」と称す)702を中心とした3×3の画素領域を、当該3×3領域内での進行後画素を定める際の注目画素(以降、「進行前着目画素」と称す)701の配置に応じてタイプ分けして示したものである。
図7に示すように、黒塗り画素は、進行前着目画素701を表している。
また、図7において、横縞で示される画素は、進行後画素702を表わしている。
また、図7において、縦横格子縞で示される画素は、特徴線の更なる延長先の検索範囲を構成する画素(以降、「検索範囲画素」と称す)703を表わしている。
図7には、進行先画素である注目画素(以降、「進行後画素」と称す)702を中心とした3×3の画素領域を、当該3×3領域内での進行後画素を定める際の注目画素(以降、「進行前着目画素」と称す)701の配置に応じてタイプ分けして示したものである。
図7に示すように、黒塗り画素は、進行前着目画素701を表している。
また、図7において、横縞で示される画素は、進行後画素702を表わしている。
また、図7において、縦横格子縞で示される画素は、特徴線の更なる延長先の検索範囲を構成する画素(以降、「検索範囲画素」と称す)703を表わしている。
図7の進行パターンの列には、進行後画素702を中心画素とした、進行後画素702と進行前着目画素701の配置のパターンがタイプ(type)別に描かれている。
一方、エッジ検索範囲の列には、各タイプの3×3の画素領域のパターン、即ち、進行後画素702と進行前着目画素701の配置パターンに対し、特徴線を更に延長する候補先となる検索範囲を検索範囲画素703にて書き加えたパターンが対応する欄に描かれている。なお、エッジ検索範囲の列内の各パターンにおける白塗り画素も、上述した図6の進行先候補の欄に描かれている各パターンの場合と同様に、補正済みの特徴線も8連結の細線であるために、注目している端点からは延長され得ない画素として設定されている。
一方、エッジ検索範囲の列には、各タイプの3×3の画素領域のパターン、即ち、進行後画素702と進行前着目画素701の配置パターンに対し、特徴線を更に延長する候補先となる検索範囲を検索範囲画素703にて書き加えたパターンが対応する欄に描かれている。なお、エッジ検索範囲の列内の各パターンにおける白塗り画素も、上述した図6の進行先候補の欄に描かれている各パターンの場合と同様に、補正済みの特徴線も8連結の細線であるために、注目している端点からは延長され得ない画素として設定されている。
そして、交点探索部132は、これまでに求めた端点とその端点からの進行先画素に基づいて、端点を進行前着目画素701、進行先画素を進行後画素702とする。そして、交点探索部132は、進行後画素702を中心とした3×3画素領域を参照し、上述した図7に記載のいずれのタイプであるのかを判定する。
ここで、特徴線補正部130(例えば、交点探索部132)は、接続を試みる断線部分の範囲を1画素幅以内とする場合、対応するタイプに示される検索範囲画素703である近隣画素群の各画素のうちのいずれかの画素が他の特徴線上の画素であるか否かを判定する。もし、いずれかの画素が他の特徴線上の画素である場合には、交点探索部132は、この画素をもって、他の特徴線との交点とする。なお、交点探索部132は、検索範囲画素703である近隣画素群の中の複数の画素が他の特徴線上の画素となる場合には、それらの画素のうち、各画素での微分値の大きさの中で最大の値をもつ画素を他の特徴線との交点画素と定める。また、交点探索部132は、検索範囲画素703である近隣画素群の中のいずれの画素も他の特徴線上の画素ではない場合には、当該端点からの特徴線の延長は中止し、前記端点での断線状態のままとする。
特徴線補正部130(例えば、交点探索部132)は、接続を試みる断線部分の範囲を1画素幅よりも大きく、n画素(n>1)とする場合、図7に記載の対応するタイプに示される検索範囲となる近隣画素群の各画素のうち、各画素での微分値の大きさの中で最大の値をもつ画素を定める。そして、特徴線補正部130(例えば、交点探索部132)は、それまで進行後画素であった画素を改めて進行前画素とし、前記定めた画素を改めて進行後画素として設定し直す。その上で、交点探索部132は、再度、図7に記載の検索範囲内の画素の吟味を繰り返す。そして、交点探索部132は、この繰り返し処理をn−1回行い、最後の1回で、上述した検索範囲内の画素のいずれかが他の特徴線上の画素であればこれを交点と定め、さもなければ、当該端点からの特徴線の延長は中止し、前記端点での断線状態のままとする。
即ち、交点探索部132は、端点抽出部131で抽出された端点の近傍で最も画素値の変化が大きな画素方向にある他の特徴線上の交点を探索する処理を行う。そして、交点探索部132は、当該近傍の範囲を、最も画素値の変化が大きな画素と当該最も画素値の変化が大きな画素を求めた際の着目画素との配置に基づいて予め定められた範囲に更新して交点を定める。或いは、交点探索部132は、特徴線抽出部120において特徴線を抽出する際の近傍画素の範囲である予め定められた範囲に基づき予め定められた回数まで交点の探索を繰り返し行う。そして、交点探索部132は、前記予め定められた回数まで交点の探索を繰り返し行っても交点が定まらない場合には、当該端点から当該端点が存在する特徴線を延長した補正済み特徴線の生成は行われないことになる。
即ち、交点探索部132は、端点抽出部131で抽出された端点の近傍で最も画素値の変化が大きな画素方向にある他の特徴線上の交点を探索する処理を行う。そして、交点探索部132は、当該近傍の範囲を、最も画素値の変化が大きな画素と当該最も画素値の変化が大きな画素を求めた際の着目画素との配置に基づいて予め定められた範囲に更新して交点を定める。或いは、交点探索部132は、特徴線抽出部120において特徴線を抽出する際の近傍画素の範囲である予め定められた範囲に基づき予め定められた回数まで交点の探索を繰り返し行う。そして、交点探索部132は、前記予め定められた回数まで交点の探索を繰り返し行っても交点が定まらない場合には、当該端点から当該端点が存在する特徴線を延長した補正済み特徴線の生成は行われないことになる。
交点探索部132は、以上の処理を端点抽出部131で求めた全ての端点について行う。なお、接続を試みる断線部分の範囲を予め何画素幅までとするかは、予め定めておくものとする。例えば、特徴線抽出部120でエッジ画素を生成する際に、各画素ごとに画素値の変化の大きさを近隣の画素の画素値の変化の大きさと比較する範囲を注目画素の1画素隣の画素までとした場合、接続を試みる断線部分の範囲を2画素幅までとする。同じく、特徴線抽出部120でエッジ画素を生成する際に、各画素ごとに画素値の変化の大きさを近隣の画素の画素値の変化の大きさと比較する範囲を注目画素のn画素隣の画素までとした場合、接続を試みる断線部分の範囲を(n+1)画素幅までとしてもよい。
このようにして、交点探索部132では、予め定められた断線部分の幅の範囲で、端点の存在する特徴線の端点から、その端点を延長して他の特徴線との交点を探索する処理を行う。各端点において、上記の処理で、他の特徴線の上の交点に辿りついたものについては、経由した点(進行後画素となった点列)も含めて記憶する。
ここで、再び、図1の説明に戻る。
補正済み特徴線生成部133は、交点探索部132で得られた結果に基づき、ある特徴線の端点から、他の特徴線上の交点までの経路となった点列を前記特徴線に付け加え、補正済みの特徴線を生成する処理を行う。具体的に、補正済み特徴線生成部133は、端点抽出部131で抽出された端点から当該端点が存在する特徴線を延長して交点探索部132で探索された交点に接続することにより、補正済み特徴線を生成する処理を行う。
補正済み特徴線生成部133は、交点探索部132で得られた結果に基づき、ある特徴線の端点から、他の特徴線上の交点までの経路となった点列を前記特徴線に付け加え、補正済みの特徴線を生成する処理を行う。具体的に、補正済み特徴線生成部133は、端点抽出部131で抽出された端点から当該端点が存在する特徴線を延長して交点探索部132で探索された交点に接続することにより、補正済み特徴線を生成する処理を行う。
特徴線補正部130は、特徴線抽出部120で抽出され入力された特徴線中の全ての端点に対して、端点抽出部131、交点探索部132及び補正済み特徴線生成部133において処理を行い、最終的に補正済み特徴線を生成する。
図8は、本発明の第1の実施形態を示し、図1に示す特徴線補正部130による特徴線補正処理の処理手順の一例を示すフローチャートである。
まず、図8のステップS801において、端点抽出部131は、特徴線抽出部120で抽出された特徴線を入力し、当該特徴線の全ての端点を抽出する端点抽出処理を行う。
続いて、ステップS802において、特徴線補正部130(例えば、端点抽出部131或いは交点探索部132)は、ステップS801で抽出された端点(換言すれば、端点をもつ特徴線)が存在するか否かを判断する。
この判断の結果、ステップS801で抽出された端点が存在しない場合には(S802/NO)、図8に示すフローチャートの処理を終了する。
この判断の結果、ステップS801で抽出された端点が存在しない場合には(S802/NO)、図8に示すフローチャートの処理を終了する。
一方、ステップS802の判断の結果、ステップS801で抽出された端点が存在する場合には(S802/YES)、ステップS803に進む。
ステップS803に進むと、例えば、交点探索部132は、ステップS801で抽出された端点の中から、交点探索対象の端点を1つ選択する処理を行う。このステップS803では、未だ交点探索処理を行っていない端点を交点探索対象の端点として選択する。
ステップS803に進むと、例えば、交点探索部132は、ステップS801で抽出された端点の中から、交点探索対象の端点を1つ選択する処理を行う。このステップS803では、未だ交点探索処理を行っていない端点を交点探索対象の端点として選択する。
続いて、ステップS804において、交点探索部132は、図6及び図7を用いて上述した手法により、端点が存在する特徴線の端点から、その端点を延長して他の特徴線との交点を探索する交点探索処理を行う。
続いて、ステップS805において、特徴線補正部130(例えば、交点探索部132或いは補正済み特徴線生成部133)は、ステップS804の交点探索処理において交点が見つかったか否かを判断する。
ステップS805の判断の結果、ステップS804の交点探索処理において交点が見つかった場合には(S805/YES)、ステップS806に進む。
ステップS806に進むと、補正済み特徴線生成部133は、特徴線を、当該交点探索対象の端点から当該交点まで延長して、補正済み特徴線を生成する。
ステップS806に進むと、補正済み特徴線生成部133は、特徴線を、当該交点探索対象の端点から当該交点まで延長して、補正済み特徴線を生成する。
ステップS806の処理が終了した場合、或いは、ステップS805においてステップS804の交点探索処理で交点が見つからなかったと判断された場合には(S805/NO)、ステップS807に進む。
ステップS807に進むと、特徴線補正部130は、すべての端点が交点探索済みであるか否かを判断する。
ステップS807に進むと、特徴線補正部130は、すべての端点が交点探索済みであるか否かを判断する。
ステップS807の判断の結果、すべての端点については未だ交点探索処理を終了していない場合には(S807/NO)、ステップS802に戻り、未だ交点探索処理を行っていない端点を交点探索対象の端点として選択して、ステップS803以降の処理を再度行う。
一方、ステップS807の判断の結果、すべての端点が交点探索済みである場合には、図8に示すフローチャートの処理を終了する。
一方、ステップS807の判断の結果、すべての端点が交点探索済みである場合には、図8に示すフローチャートの処理を終了する。
ここで、再び、図1の説明に戻る。
特徴点抽出部140は、特徴線補正部130(補正済み特徴線生成部133)により得られた補正済み特徴線に基づいて特徴点を抽出する処理を行う。この処理を図9及び図10を用いて説明する。
特徴点抽出部140は、特徴線補正部130(補正済み特徴線生成部133)により得られた補正済み特徴線に基づいて特徴点を抽出する処理を行う。この処理を図9及び図10を用いて説明する。
図9は、本発明の第1の実施形態を示し、図1に示す特徴点抽出部140が行う処理の一例を説明するための図である。
図9(a)は、特徴線抽出部120で抽出された特徴線(或いは特徴線補正部130で補正された特徴線)を示す。ここで、特徴点抽出部140には、図9(a)に示す特徴線が入力されるものとする。そして、特徴点抽出部140は、入力された特徴線から特徴点をサンプリングする処理を行う。
図9(a)は、特徴線抽出部120で抽出された特徴線(或いは特徴線補正部130で補正された特徴線)を示す。ここで、特徴点抽出部140には、図9(a)に示す特徴線が入力されるものとする。そして、特徴点抽出部140は、入力された特徴線から特徴点をサンプリングする処理を行う。
図10は、本発明の第1の実施形態を示し、図1に示す特徴点抽出部140が行う処理の一例を説明するための図である。
図10(a)は特徴線を表しており、点1001、1002、1003、1004及び1005は、それぞれ、特徴線を構成する頂点である。そして、特徴点抽出部140は、特徴線の端点を起点として隣接頂点を順番に削除して近似関数を生成していく。
図10(a)は特徴線を表しており、点1001、1002、1003、1004及び1005は、それぞれ、特徴線を構成する頂点である。そして、特徴点抽出部140は、特徴線の端点を起点として隣接頂点を順番に削除して近似関数を生成していく。
図10(b)に示すように、特徴線の端点である頂点1001を起点として、特徴点抽出部140は、まず、頂点1002を削除して、頂点1001と頂点1003を近似曲線の端点として、頂点1002を近似するように近似関数1010を生成する。ここでは、近似関数は、3次のベジェ関数を最小自乗近似により生成しているが、B−スプライン関数など他の関数を用いても構わない。そして、特徴点抽出部140は、生成した近似関数1010と削除した頂点1002との距離から誤差を計算し、誤差が閾値以内であれば次の頂点を削除する。本実施形態では、誤差の閾値は1画素としている。図10(b)では、誤差が閾値以内であるとして、次の処理を説明する。
図10(c)に示すように、特徴点抽出部140は、次に隣接した頂点1003を削除して、頂点1001と頂点1004を近似曲線の端点として、頂点1002と1003を近似するように近似関数1020を生成する。そして、特徴点抽出部140は、近似関数1020と、頂点1002、1003との誤差を計算する。図10(c)では、誤差が閾値以内であるとして、次の処理を説明する。
図10(d)に示すように、特徴点抽出部140は、次に隣接した頂点1004を削除して、頂点1001と頂点1005を近似曲線の端点として、頂点1002、1003、1004を近似するように近似関数1030を生成する。そして、特徴点抽出部140は、近似関数1030と、頂点1002、1003、1004との誤差を計算する。ここでは、近似関数1030と、頂点1002及び1004との誤差が閾値を超えたとする。このとき、特徴点抽出部140は、近似関数1030を採用せずに、前に生成された近似関数1020を有効な近似関数として採用する。
そして、図10(e)に示すように、特徴点抽出部140は、特徴線の端点である頂点1001を起点として、頂点1002及び1003を削除して、近似曲線1020の端点である頂点1004を特徴点としてサンプリングする。図10に示す例では、特徴線の端点である頂点1001と1005、特徴点としてサンプリングされた頂点1004が、第1の特徴点として採用される。ここで特徴線として構成される頂点がより多いとき、頂点1004を起点として同様の処理を繰り返し、サンプリング点を決定していく。
以上の処理により、図2(c)に示す点201、205のような特徴線の端点と、図2(d)に示す点206のような特徴線の交点に加えて、特徴点が抽出される。図9に示す例では、最終的に、サンプリングされた特徴点は、図9(b)に示す白丸901と星印902で示される通りである。なお、画像の特徴を再現できるのであれば、特徴線の端点間を均等にサンプリングするなど他の方法を用いても構わない。
ここで、再び、図1の説明に戻る。
曲線メッシュ生成部150は、特徴線を再現する3頂点曲線メッシュ群を生成する処理を行う。具体的に、曲線メッシュ生成部150は、特徴点抽出部140で抽出された特徴点を用いて前記入力画像を複数のメッシュ(3頂点曲線メッシュ)からなるメッシュ群(3頂点曲線メッシュ群)に分割して当該メッシュ(3頂点曲線メッシュ)を生成する処理を行う。この処理を図11を用いて説明する。
曲線メッシュ生成部150は、特徴線を再現する3頂点曲線メッシュ群を生成する処理を行う。具体的に、曲線メッシュ生成部150は、特徴点抽出部140で抽出された特徴点を用いて前記入力画像を複数のメッシュ(3頂点曲線メッシュ)からなるメッシュ群(3頂点曲線メッシュ群)に分割して当該メッシュ(3頂点曲線メッシュ)を生成する処理を行う。この処理を図11を用いて説明する。
図11は、本発明の第1の実施形態を示し、図1に示す曲線メッシュ生成部150による曲線メッシュ生成処理の処理手順の一例を示すフローチャートである。
まず、図11のステップS1101において、曲線メッシュ生成部150は、曲線化対象とする辺を設定する処理を行う。ここでは、曲線メッシュ生成部150は、特徴点抽出部140で抽出された特徴点において、各特徴線上で隣接している特徴点同士を直線で接続した辺を曲線化対象とする辺として設定する。
続いて、ステップS1102において、曲線メッシュ生成部150は、3頂点直線メッシュ群を生成する処理を行う。ここでは、曲線メッシュ生成部150は、ステップS1101で設定した辺を制約条件として制約付きドロネー三角形分割を利用することにより、設定した辺がメッシュの辺となる3頂点直線メッシュ群を生成する。ここで、制約付きドロネー三角形分割とは、点群と制約条件を与えると、与えられた点群を頂点とし、且つ、制約条件を満たす直線メッシュを生成するアルゴリズムである。また、制約条件とは、点群の一部を結ぶ線分である。なお、設定した辺を再現するメッシュを生成することができるのであれば、他の方法を用いても構わない。
続いて、ステップS1103において、曲線メッシュ生成部150は、曲線化対象のすべての辺が曲線化済みであるか否かを判断する。
ステップS1103の判断の結果、曲線化対象のすべての辺については未だ曲線化済みでない場合(S1103/NO)、即ち、曲線化対象で曲線化されていない辺が存在する場合には、ステップS1104に進む。
ステップS1104に進むと、曲線メッシュ生成部150は、曲線化対象で曲線化されていない辺を1つ選択する処理を行う。
ステップS1104に進むと、曲線メッシュ生成部150は、曲線化対象で曲線化されていない辺を1つ選択する処理を行う。
続いて、ステップS1105において、曲線メッシュ生成部150は、ステップS1104で選択した辺について、曲線化処理を行う。ここで、曲線メッシュ生成部150は、特徴線を近似するようにメッシュの辺を曲線化処理する。本実施形態では、特徴点抽出部140で生成した3次のベジェ関数をそのままメッシュの辺として利用しているため、曲線を再計算する必要はない。
一方、ステップS1103の判断の結果、曲線化対象のすべての辺が曲線化済みである場合(S1103/YES)には、図11に示すフローチャートの処理を終了する。
図12は、本発明の第1の実施形態を示し、図1に示す曲線メッシュ生成部150で生成された3頂点曲線メッシュ群の一例を示す図である。
図12は、本発明の第1の実施形態を示し、図1に示す曲線メッシュ生成部150で生成された3頂点曲線メッシュ群の一例を示す図である。
ここで、再び、図1の説明に戻って、色設定部160の処理について説明する。
色設定部160は、曲線メッシュ生成部150で生成された各メッシュの色情報を設定する処理を行う。以下に、色設定部160の内部に構成されている、色点抽出部161、エッジ上色点補完部162、交点色補完部163に分けて、色設定部160の機能を説明する。
色設定部160は、曲線メッシュ生成部150で生成された各メッシュの色情報を設定する処理を行う。以下に、色設定部160の内部に構成されている、色点抽出部161、エッジ上色点補完部162、交点色補完部163に分けて、色設定部160の機能を説明する。
色点抽出部161は、メッシュの色を塗るために必要なサンプリング点となる色点を抽出する処理を行う。ここで、サンプリング点を定めてメッシュの色情報を生成するためには、様々な方法が考えられる。その方法の1つとして、上記の非特許文献1では、RGBの3成分に対して、メッシュ内の色を塗る薄板スプライン関数を入力画像の色に基づいて生成している。本実施形態では、各メッシュを更に微小な3頂点からなるメッシュ(サブメッシュ)に分割し、分割したサブメッシュの頂点の画素の色を入力画像から取得し、当該頂点に割り当てる(色割り当て)。そして、レンダリングの際には、それらの微小な三角形内の色を双線形補間で補うことにより、各メッシュの色を塗ることができる。
ここで、メッシュを構成するために必要な形状情報と色情報について説明する。
図13は、本発明の第1の実施形態を示し、3頂点曲線メッシュの形状情報と色情報を説明するための図である。
図13(a)は、3頂点から成り且つ3頂点間が曲線で結ばれている(いずれの辺も曲線で表現されている)メッシュ(3頂点曲線メッシュ)に係る形状情報を示している。図13(a)において、点1301、1302及び1303はメッシュの頂点であり、点1304〜1309はメッシュの制御点である。ここで、メッシュの形状情報は、曲線メッシュ生成部150で算出されている。
図13(b)は、図13(a)に示した曲線メッシュに係る色情報を示している。図13(b)において、点1310〜1324は曲線メッシュ内におけるサブメッシュの頂点(色点)であり、それぞれの色点は色情報を有する。ここでは、RGB値を色情報として有しているものとして説明するが、CMYKなど他の色空間の情報を有するものとしてもよい。またグレー画像の場合、対応する色点は、対応する画素の輝度情報を色情報として保持することになる。色点は、例えば、ベジェパッチを規則的に分割することにより導出される。ここでは、色点として15点を用いているが、ベジェパッチの辺を分割する数を変更し、色点数を変更しても構わない。
図14は、本発明の第1の実施形態を示し、分割数の異なるメッシュの色情報を説明するための図である。
例えば、図14(a)では、分割数が1であり、色点数は3となる。また、図14(b)、図14(c)、図14(d)では、それぞれ、分割数が2、3、4であり、色点数が6、10、15点となる。
図13は、本発明の第1の実施形態を示し、3頂点曲線メッシュの形状情報と色情報を説明するための図である。
図13(a)は、3頂点から成り且つ3頂点間が曲線で結ばれている(いずれの辺も曲線で表現されている)メッシュ(3頂点曲線メッシュ)に係る形状情報を示している。図13(a)において、点1301、1302及び1303はメッシュの頂点であり、点1304〜1309はメッシュの制御点である。ここで、メッシュの形状情報は、曲線メッシュ生成部150で算出されている。
図13(b)は、図13(a)に示した曲線メッシュに係る色情報を示している。図13(b)において、点1310〜1324は曲線メッシュ内におけるサブメッシュの頂点(色点)であり、それぞれの色点は色情報を有する。ここでは、RGB値を色情報として有しているものとして説明するが、CMYKなど他の色空間の情報を有するものとしてもよい。またグレー画像の場合、対応する色点は、対応する画素の輝度情報を色情報として保持することになる。色点は、例えば、ベジェパッチを規則的に分割することにより導出される。ここでは、色点として15点を用いているが、ベジェパッチの辺を分割する数を変更し、色点数を変更しても構わない。
図14は、本発明の第1の実施形態を示し、分割数の異なるメッシュの色情報を説明するための図である。
例えば、図14(a)では、分割数が1であり、色点数は3となる。また、図14(b)、図14(c)、図14(d)では、それぞれ、分割数が2、3、4であり、色点数が6、10、15点となる。
エッジ上色点補完部162は、エッジ線をまたぐ際に起こる急峻な色変化を表現するために、色点の色を補完する処理を行う。本実施形態では、特徴線に沿って曲線化された辺(以降、「曲線可辺」と称する)の各色点には、1つの色点に2種類の色を保持することにより上述の色変化を表現している。
図15は、本発明の第1の実施形態を示し、特徴線をまたぐメッシュの色情報を説明するための図である。
図15(a)の色点1501〜1505は、曲線化辺上にない頂点であるため、このような色点には、1色を保持させる。これ対して、図15(b)の色点1506〜1510は、曲線化辺上にある色点であるため、このような色点には、2色を保持させる。即ち、本実施例形態では、曲線化辺が2種類の色を有するものである。実際に色点に持たせる色としては、曲線化辺を当該曲線化辺に対して垂直方向に数画素分ずらした座標の入力画像の色を適用するなどが考えられる。図15(b)に示す例では、色点1506〜1510は、白と黒の色を有しており、右側のメッシュをレンダリングするときには、辺の右側の色を用い、また、左側のメッシュをレンダリングするときには、辺の左側の色を用いている。また、3本以上の曲線化辺が会合する図9(b)の星印902で示されるような交点に関しては、次の工程(交点色補完部163による処理工程)で補完するため、本工程での補完対象としない。
図15(a)の色点1501〜1505は、曲線化辺上にない頂点であるため、このような色点には、1色を保持させる。これ対して、図15(b)の色点1506〜1510は、曲線化辺上にある色点であるため、このような色点には、2色を保持させる。即ち、本実施例形態では、曲線化辺が2種類の色を有するものである。実際に色点に持たせる色としては、曲線化辺を当該曲線化辺に対して垂直方向に数画素分ずらした座標の入力画像の色を適用するなどが考えられる。図15(b)に示す例では、色点1506〜1510は、白と黒の色を有しており、右側のメッシュをレンダリングするときには、辺の右側の色を用い、また、左側のメッシュをレンダリングするときには、辺の左側の色を用いている。また、3本以上の曲線化辺が会合する図9(b)の星印902で示されるような交点に関しては、次の工程(交点色補完部163による処理工程)で補完するため、本工程での補完対象としない。
交点色補完部163は、曲線化辺が3本以上会合する交点部分における急峻な色変化を表現するために、色点の色を補完する処理を行う。本実施形態では、交点上の色点に会合する曲線化辺の本数と同数の色を保持することにより上述の色変化を表現している。
図16は、本発明の第1の実施形態を示し、特徴線が会合する交点を用いるメッシュの色情報を説明するための図である。
図16(a)の破線(1602、1603及び1604)は曲線化辺を表現し、実線はそれ以外のメッシュの辺を表現している。また、図16(a)の頂点1601は曲線化辺1602、1603及び1604の交点となっている。また、図16(a)の1605〜1610は、それぞれ、色点1601を共有するメッシュである。このとき、色点1601で会合する曲線化辺の本数は3本であるため、この色点1601は3色を有する。このような交点部分における色を決定するために、第1の実施形態における交点色補完部163が行う処理について、図17を用いて説明する。なお、図16(b)は、図16(a)の例における交点部分付近を拡大した図である。
図16(a)の破線(1602、1603及び1604)は曲線化辺を表現し、実線はそれ以外のメッシュの辺を表現している。また、図16(a)の頂点1601は曲線化辺1602、1603及び1604の交点となっている。また、図16(a)の1605〜1610は、それぞれ、色点1601を共有するメッシュである。このとき、色点1601で会合する曲線化辺の本数は3本であるため、この色点1601は3色を有する。このような交点部分における色を決定するために、第1の実施形態における交点色補完部163が行う処理について、図17を用いて説明する。なお、図16(b)は、図16(a)の例における交点部分付近を拡大した図である。
図17は、本発明の第1の実施形態を示し、図1に示す交点色補完部163による交点色補完処理の処理手順の一例を示すフローチャートである。
まず、図17のステップS1701において、交点色補完部163は、交点を形成する(交点に属する)曲線化辺の数Enumを算出する処理を行う。図16に示す例で言うと、Enum=3となる。
続いて、ステップS1702において、交点色補完部163は、カウンタの値iを0で初期化する処理を行う。
続いて、ステップS1703において、交点色補完部163は、曲線化辺EiとEi+1との間に挟まれるメッシュMij(j=0,1,…,Minum)を特定し、その数Minumを算出する処理を行う。図16(a)に示す例で言うと、例えば、曲線化辺1602と曲線化辺1603に挟まれるメッシュは、1605及び1606であるため、この場合、Minum=2となる。
続いて、ステップS1704において、交点色補完部163は、ステップS1703で算出したメッシュの数Minumが1であるか否かを判断する。
ステップS1704の判断の結果、ステップS1703で算出したメッシュの数Minumが1である場合には(S1704/YES)、ステップS1705に進む。
ステップS1705に進むと、交点色補完部163は、メッシュの数Minumが1となるパターンの交点色を求める。図16(a)に示す例で言うと、曲線化辺1603と曲線化辺1604に挟まれるメッシュ1607が本パターンに当たる。ここでは、まず、交点色補完部163は、参照中のメッシュにおいて、交点近傍の色点を2点特定する。図16(b)に示す例で言うと、点1612及び1613の2点がそれに当たる。この2点1612及び1613は、曲線化辺上色点である。そして、交点色補完部163は、特定した色点2点間を直線で結び、その中点座標を求め、この座標の入力画像の色を取得する。そして、この色を本パターンにおける交点の色として適用する。即ち、ステップS1705では、メッシュMi0における交点近傍の曲線化辺上色点の2点を結ぶ直線の中点の入力画像の色を、メッシュMi0の交点色とする処理が行われる。こうすることにより、エッジ付近の中間色を取ることなく、パッチ内部の安定した色で交点の色を補完することができる。
ステップS1705に進むと、交点色補完部163は、メッシュの数Minumが1となるパターンの交点色を求める。図16(a)に示す例で言うと、曲線化辺1603と曲線化辺1604に挟まれるメッシュ1607が本パターンに当たる。ここでは、まず、交点色補完部163は、参照中のメッシュにおいて、交点近傍の色点を2点特定する。図16(b)に示す例で言うと、点1612及び1613の2点がそれに当たる。この2点1612及び1613は、曲線化辺上色点である。そして、交点色補完部163は、特定した色点2点間を直線で結び、その中点座標を求め、この座標の入力画像の色を取得する。そして、この色を本パターンにおける交点の色として適用する。即ち、ステップS1705では、メッシュMi0における交点近傍の曲線化辺上色点の2点を結ぶ直線の中点の入力画像の色を、メッシュMi0の交点色とする処理が行われる。こうすることにより、エッジ付近の中間色を取ることなく、パッチ内部の安定した色で交点の色を補完することができる。
一方、ステップS1704の判断の結果、ステップS1703で算出したメッシュの数Minumが1でない場合には(S1704/NO)、ステップS1706に進む。
ステップS1706に進むと、交点色補完部163は、メッシュの数Minumが1でないパターンの交点色を求める。図16(a)に示す例で言うと、曲線化辺1604と曲線化辺1602に挟まれるメッシュ1608〜1610が本パターンに当たる。ここでは、まず、交点色補完部163は、参照中のメッシュにおいて、交点近傍であり、且つ、曲線化辺上ではない色点を特定する。図16(b)に示す例で言うと、点1614や点1615がそれに当たる。この点1614及び1615は、メッシュ辺上色点である。そして、交点色補完部163は、特定した色点の色を用いて本パターンにおける交点の色を補完する。ここで、本実施形態では、特定した色点の平均色を交点の色として適用する。即ち、ステップS1706では、メッシュMijにおける交点近傍で曲線化辺上でないメッシュ辺上色点の平均色を、メッシュMijの交点色とする処理が行われる。こうすることにより、エッジ付近の中間色を取ることなく、且つ、複数のメッシュとの色の連続性を保持しながら、交点の色を補完することができる。なお、図16(b)に示す例において、1611のように、曲線化辺の色点を除くと交点近傍の色点が1点しかない場合には、その色をそのまま交点の色として適用すればよい。
ステップS1706に進むと、交点色補完部163は、メッシュの数Minumが1でないパターンの交点色を求める。図16(a)に示す例で言うと、曲線化辺1604と曲線化辺1602に挟まれるメッシュ1608〜1610が本パターンに当たる。ここでは、まず、交点色補完部163は、参照中のメッシュにおいて、交点近傍であり、且つ、曲線化辺上ではない色点を特定する。図16(b)に示す例で言うと、点1614や点1615がそれに当たる。この点1614及び1615は、メッシュ辺上色点である。そして、交点色補完部163は、特定した色点の色を用いて本パターンにおける交点の色を補完する。ここで、本実施形態では、特定した色点の平均色を交点の色として適用する。即ち、ステップS1706では、メッシュMijにおける交点近傍で曲線化辺上でないメッシュ辺上色点の平均色を、メッシュMijの交点色とする処理が行われる。こうすることにより、エッジ付近の中間色を取ることなく、且つ、複数のメッシュとの色の連続性を保持しながら、交点の色を補完することができる。なお、図16(b)に示す例において、1611のように、曲線化辺の色点を除くと交点近傍の色点が1点しかない場合には、その色をそのまま交点の色として適用すればよい。
ステップS1705の処理が終了した場合、或いは、ステップS1706の処理が終了した場合には、ステップS1707に進む。
ステップS1707に進むと、交点色補完部163は、現在のカウンタの値iがEnum−1と同値であるか否かを判断する。
ステップS1707に進むと、交点色補完部163は、現在のカウンタの値iがEnum−1と同値であるか否かを判断する。
ステップS1707の判断の結果、現在のカウンタの値iがEnum−1と同値ではない場合には(S1707/NO)、ステップS1708に進む。
ステップS1708に進むと、交点色補完部163は、カウンタの値iに1を加えてインクリメントする処理を行う。その後、ステップS1703に戻り、変更したカウンタの値iに基づいて、ステップS1703以降の処理を行う。
ステップS1708に進むと、交点色補完部163は、カウンタの値iに1を加えてインクリメントする処理を行う。その後、ステップS1703に戻り、変更したカウンタの値iに基づいて、ステップS1703以降の処理を行う。
一方、ステップS1707の判断の結果、現在のカウンタの値iがEnum−1と同値である場合には(S1707/YES)、ステップS1709に進む。
ステップS1709に進むと、交点色補完部163は、最終区間の処理を行う。ここで、最終区間とは、Enum−1とE0で挟まれる区間を指す。ここでの処理は、当該最終区間をステップS1704〜S1706と同様のステップで行う。
ステップS1709に進むと、交点色補完部163は、最終区間の処理を行う。ここで、最終区間とは、Enum−1とE0で挟まれる区間を指す。ここでの処理は、当該最終区間をステップS1704〜S1706と同様のステップで行う。
ステップS1709の処理が終了すると、図17に示すフローチャートにおける処理が終了する。
ここまでの処理でメッシュによる画像表現のために必要な形状情報と色情報を設定することができる。
ここで、再び、図1の説明に戻る。
データ出力部170は、これまでの処理で得られたメッシュによる画像表現のために必要な形状情報と色情報に基づいてレンダリング処理して画像データを生成し、これを出力データとして出力する処理を行う。
データ出力部170は、これまでの処理で得られたメッシュによる画像表現のために必要な形状情報と色情報に基づいてレンダリング処理して画像データを生成し、これを出力データとして出力する処理を行う。
以上の処理を所望の入力画像に対して行うことにより、ビットマップで表現される画像をそのまま拡大した場合に発生するようなジャギーを発生させることなく、且つ、エッジの周辺や、交点部分の急峻な色変化を再現した画像を得ることができる。
具体的に、本実施形態によれば、入力画像から抽出されるべき特徴線(エッジ線)がうまく抽出されずに特徴線に断線部分が生じている部分を補正により接続することによって、より理想的な特徴線(エッジ線)を生成することができる。これにより、入力画像から抽出した特徴線(エッジ線)に断線部分が生じることによる画質の劣化を回避するすることができる。
具体的に、本実施形態によれば、入力画像から抽出されるべき特徴線(エッジ線)がうまく抽出されずに特徴線に断線部分が生じている部分を補正により接続することによって、より理想的な特徴線(エッジ線)を生成することができる。これにより、入力画像から抽出した特徴線(エッジ線)に断線部分が生じることによる画質の劣化を回避するすることができる。
<第1の実施形態の変形例>
図1に示す各機能構成は、ハードウェアで構成してもよいが、ソフトウェア(コンピュータプログラム)として実装してもよい。この場合、このソフトウェアは、PC(パーソナルコンピュータ)等、一般のコンピュータのメモリにインストールされることになる。そして、このコンピュータのCPUがこのインストールされたソフトウェアを実行することで、このコンピュータは、上述した画像処理装置100−1の機能(図1に示す各機能構成の機能)を実現することになる。即ち、このコンピュータは、上述した画像処理装置100−1に適用することができる。
図1に示す各機能構成は、ハードウェアで構成してもよいが、ソフトウェア(コンピュータプログラム)として実装してもよい。この場合、このソフトウェアは、PC(パーソナルコンピュータ)等、一般のコンピュータのメモリにインストールされることになる。そして、このコンピュータのCPUがこのインストールされたソフトウェアを実行することで、このコンピュータは、上述した画像処理装置100−1の機能(図1に示す各機能構成の機能)を実現することになる。即ち、このコンピュータは、上述した画像処理装置100−1に適用することができる。
図18は、本発明の第1の実施形態における変形例を示し、図1に示す画像処理装置として適用可能なコンピュータのハードウェア構成の一例を示すブロック図である。
図18に示すように、本発明に係る画像処理装置として適用可能なコンピュータ100は、CPU1801、RAM1802、ROM1803、キーボード1804、マウス1805、表示装置1806、外部記憶装置1807、記憶媒体ドライブ1808、I/F(インターフェース)1809、及び、バス1810の各ハードウェア構成を有して構成されている。
CPU1801は、RAM1802、ROM1803或いは外部記憶装置1807に記憶されているコンピュータプログラムやデータを用いて、コンピュータ100の全体の制御を行うと共に、画像処理装置が行うものとして説明した上述の各処理を実行する。即ち、図1に示した各機能構成が行うものとして上述した各処理を実行する。
RAM1802は、コンピュータ読み取り可能な記憶媒体の一例である。RAM1802は、ROM1803、外部記憶装置1807或いは記憶媒体ドライブ1808からロードされたコンピュータプログラムやデータ、I/F1809を介して外部装置Gから受信したデータなどを一時的に記憶するためのエリアを有する。さらに、RAM1802は、CPU1801が各種の処理を実行する際に用いるワークエリアを有する。即ち、RAM1802は、各種のエリアを適宜提供することができる。
ROM1803は、コンピュータ読み取り可能な記憶媒体の一例であり、コンピュータ100の設定データや、ブートプログラムなどが格納されている。
キーボード1804及びマウス1805は、コンピュータ100のユーザがこれらを操作することにより、各種の指示をCPU1801に対して入力することができる。
表示装置1806は、CRTや液晶画面などにより構成されており、CPU1801による処理結果を画像や文字などをもって表示することができる。例えば、上述した入力画像を表示したり、3頂点曲線メッシュ群などを表示したりすることができる。
外部記憶装置1807は、コンピュータ読み取り記憶媒体の一例であり、ハードディスクドライブ装置に代表される大容量情報記憶装置である。外部記憶装置1807には、OS(オペレーティングシステム)や、図1に示す各機能構成による機能をCPU1801に実現させるためのコンピュータプログラムやデータ、入力画像のデータ、既知の情報として説明した情報等が保存されている。外部記憶装置1807に記憶されているコンピュータプログラムやデータは、CPU1801による制御に従って適宜RAM1802にロードされ、CPU1801による処理対象となる。
記憶媒体ドライブ1808は、CD−ROMやDVD−ROMなどの記憶媒体に記録されているコンピュータプログラムやデータを読み出し、読み出したコンピュータプログラムやデータを外部記憶装置1807やRAM1802に出力する。なお、外部記憶装置1807に保存されているものとして説明した情報の一部若しくは全部をこの記憶媒体に記録させておき、この記憶媒体ドライブ1808に読み取らせてもよい。
I/F1809は、外部装置Gをコンピュータ100に接続するためのものである。例えば、ディジタルカメラなど、上述した入力画像を取得するための装置を、このI/F1809に接続し、この装置から入力画像をI/F1809を介してRAM1802や外部記憶装置1807に取得するようにしてもよい。
バス1810は、CPU1801、RAM1802、ROM1803、キーボード1804、マウス1805、表示装置1806、外部記憶装置1807、記憶媒体ドライブ1808及びI/F1809を通信可能に接続する。
図18に示すコンピュータ100において、電源(不図示)がONになると、CPU1801は、ROM1803に格納されているブートプログラムに従って、例えば外部記憶装置1807からOSをRAM1802にロードする。この結果、キーボード1804、マウス1805を介した情報入力操作が可能となり、表示装置1806にGUIを表示することが可能となる。ユーザがキーボード1804やマウス1805を操作し、外部記憶装置1807に記憶されている画像処理用アプリケーションプログラムの起動指示を入力すると、CPU1801は、このプログラムをRAM1802にロードして実行する。これにより、コンピュータ100が本発明に係る画像処理装置として機能することになる。
CPU1801が実行する画像処理用アプリケーションプログラムは、図1及び図22に示す各機能構成としてコンピュータ100を機能させ、また、図8、図11、図17及び図20に示すフローチャートの各ステップをコンピュータ100に実行させる。
CPU1801が実行する画像処理用アプリケーションプログラムは、図1及び図22に示す各機能構成としてコンピュータ100を機能させ、また、図8、図11、図17及び図20に示すフローチャートの各ステップをコンピュータ100に実行させる。
以下に、図1に示す画像処理装置100−1の機能構成と、図18に示すコンピュータ100のハードウェア構成との対応関係の一例について説明する。
例えば、図18に示すCPU1801及び外部記憶装置1807等に記憶されているプログラム並びにI/F1809から、図1に示す画像入力部110、データ出力部170が構成されている。また、例えば、図18に示すCPU1801及び外部記憶装置1807等に記憶されているプログラムから、図1に示す特徴線抽出部120、特徴線補正部130、特徴点抽出部140、曲線メッシュ生成部150、色設定部160が構成されている。
例えば、図18に示すCPU1801及び外部記憶装置1807等に記憶されているプログラム並びにI/F1809から、図1に示す画像入力部110、データ出力部170が構成されている。また、例えば、図18に示すCPU1801及び外部記憶装置1807等に記憶されているプログラムから、図1に示す特徴線抽出部120、特徴線補正部130、特徴点抽出部140、曲線メッシュ生成部150、色設定部160が構成されている。
(第2の実施形態)
上述した第1の実施形態では、図17で示した交点色補完処理においては交点近傍の色点の色若しくは色点間を結ぶ直線の中点座標における色そのものを交点の色として適用する形態であった。
しかしながら、この第1の実施形態の場合、メッシュ内の色の移り変わりを反映していないため、第2の実施形態ではこれを考慮し、メッシュ内の色を用いて線形外挿を行う。
上述した第1の実施形態では、図17で示した交点色補完処理においては交点近傍の色点の色若しくは色点間を結ぶ直線の中点座標における色そのものを交点の色として適用する形態であった。
しかしながら、この第1の実施形態の場合、メッシュ内の色の移り変わりを反映していないため、第2の実施形態ではこれを考慮し、メッシュ内の色を用いて線形外挿を行う。
ここで、第2の実施形態に係る画像処理装置の機能構成は、図1に示す第1の実施形態に係る画像処理装置の機能構成と同様である。
図19は、本発明の第2の実施形態を示し、特徴線が会合する交点を用いるメッシュの色情報を説明するための図である。
図19(a)の破線(1902、1903及び1904)は曲線化辺を表現し、実線はそれ以外のメッシュの辺を表現している。また、図19(a)の頂点1901は曲線化辺1902、1903及び1904の交点となっている。また、図19(a)の1905〜1910は、それぞれ、色点1901を共有するメッシュである。このとき、色点1901で会合する曲線化辺の本数は3本であるため、この色点1901は3色を有する。このような交点部分における色を決定するために、第2の実施形態における交点色補完部163が行う処理について、図20を用いて説明する。なお、図19(b)は、図19(a)の例における交点部分付近を拡大した図である。
図19(a)の破線(1902、1903及び1904)は曲線化辺を表現し、実線はそれ以外のメッシュの辺を表現している。また、図19(a)の頂点1901は曲線化辺1902、1903及び1904の交点となっている。また、図19(a)の1905〜1910は、それぞれ、色点1901を共有するメッシュである。このとき、色点1901で会合する曲線化辺の本数は3本であるため、この色点1901は3色を有する。このような交点部分における色を決定するために、第2の実施形態における交点色補完部163が行う処理について、図20を用いて説明する。なお、図19(b)は、図19(a)の例における交点部分付近を拡大した図である。
図20は、本発明の第2の実施形態を示し、図1に示す交点色補完部163による交点色補完処理の処理手順の一例を示すフローチャートである。
まず、図20のステップS2001において、交点色補完部163は、図17のステップS1701と同様に、交点を形成する(交点に属する)曲線化辺の数Enumを算出する処理を行う。図19に示す例で言うと、Enum=3となる。
続いて、ステップS2002において、交点色補完部163は、図17のステップS1702と同様に、カウンタの値iを0で初期化する処理を行う。
続いて、ステップS2003において、交点色補完部163は、図17のステップS1703と同様に、曲線化辺EiとEi+1との間に挟まれるメッシュMij(j=0,1,…,Minum)を特定し、その数Minumを算出する処理を行う。図19(a)に示す例で言うと、例えば、曲線化辺1902と曲線化辺1903に挟まれるメッシュは、1905及び1906であるため、この場合、Minum=2となる。
続いて、ステップS2004において、交点色補完部163は、ステップS2003で算出したメッシュの数Minumが奇数であるか否かを判断する。
ステップS2004の判断の結果、ステップS2003で算出したメッシュの数Minumが奇数である場合には(S2004/YES)、ステップS2005に進む。
ステップS2005に進むと、交点色補完部163は、メッシュの数Minumが奇数となるパターンの交点色を求める。図19(a)に示す例で言うと、曲線化辺1904と曲線化辺1902に挟まれるメッシュ1908,1909,1910が本パターンに当たる。ここでは、まず、交点色補完部163は、参照中のメッシュ群において、中心に当たるメッシュを特定する。図19(a)に示す例で言うと、メッシュ1909である。そして、中心に当たるメッシュを特定すると、交点色補完部163は、当該特定したメッシュを構成するメッシュ辺で色点1901を通る辺を特定する。図19(b)に示す例で言うと、辺1912と辺1913である。そして、交点色補完部163は、当該特定した各辺において、それぞれ交点に最近傍の色点と次に近い色点を特定する。図19(b)に示す例で言うと、点1916と点1918が最近傍の色点であり、点1917と点1919が次に近い色点である。そして、交点色補完部163は、当該特定した最近傍の色点同士を結ぶ直線の中点座標を求め、この中点座標の入力画像の色を取得する。図19(b)に示す例で言うと、中点座標1920の入力画像の色を取得する。また、同様に、交点色補完部163は、当該特定した次に近い色点同士を結ぶ直線の中点座標を求め、この中点座標の入力画像の色を取得する。図19(b)に示す例で言うと、中点座標1921の入力画像の色を取得する。そして、交点色補完部163は、取得した2つの色と座標を用いて、線形外挿法により交点色を決定する。
ステップS2005に進むと、交点色補完部163は、メッシュの数Minumが奇数となるパターンの交点色を求める。図19(a)に示す例で言うと、曲線化辺1904と曲線化辺1902に挟まれるメッシュ1908,1909,1910が本パターンに当たる。ここでは、まず、交点色補完部163は、参照中のメッシュ群において、中心に当たるメッシュを特定する。図19(a)に示す例で言うと、メッシュ1909である。そして、中心に当たるメッシュを特定すると、交点色補完部163は、当該特定したメッシュを構成するメッシュ辺で色点1901を通る辺を特定する。図19(b)に示す例で言うと、辺1912と辺1913である。そして、交点色補完部163は、当該特定した各辺において、それぞれ交点に最近傍の色点と次に近い色点を特定する。図19(b)に示す例で言うと、点1916と点1918が最近傍の色点であり、点1917と点1919が次に近い色点である。そして、交点色補完部163は、当該特定した最近傍の色点同士を結ぶ直線の中点座標を求め、この中点座標の入力画像の色を取得する。図19(b)に示す例で言うと、中点座標1920の入力画像の色を取得する。また、同様に、交点色補完部163は、当該特定した次に近い色点同士を結ぶ直線の中点座標を求め、この中点座標の入力画像の色を取得する。図19(b)に示す例で言うと、中点座標1921の入力画像の色を取得する。そして、交点色補完部163は、取得した2つの色と座標を用いて、線形外挿法により交点色を決定する。
一方、ステップS2004の判断の結果、ステップS2003で算出したメッシュの数Minumが奇数でない(偶数である)場合には(S2004/NO)、ステップS2006に進む。
ステップS2006に進むと、交点色補完部163は、メッシュの数Minumが偶数となるパターンの交点色を求める。図19(a)に示す例で言うと、曲線化辺1902と曲線化辺1903に挟まれるメッシュ1905,1906が本パターンに当たる。ここでは、まず、交点色補完部163は、参照中のメッシュ群において、中心に当たるメッシュ2つを特定する。図19(a)に示す例で言うと、メッシュ1905及び1906である。そして、中心に当たる2つのメッシュを特定すると、交点色補完部163は、当該特定したメッシュで共有するメッシュ辺を特定する。図19(b)に示す例で言うと、辺1911である。そして、交点色補完部163は、当該特定した各辺において、それぞれ交点に最近傍の色点と次に近い色点を特定する。図19(b)に示す例で言うと、点1914が最近傍の色点であり、点1915が次に近い色点である。そして、交点色補完部163は、当該特定した2つの色点の色と座標を用いて、線形外挿法により交点色を決定する。
ステップS2006に進むと、交点色補完部163は、メッシュの数Minumが偶数となるパターンの交点色を求める。図19(a)に示す例で言うと、曲線化辺1902と曲線化辺1903に挟まれるメッシュ1905,1906が本パターンに当たる。ここでは、まず、交点色補完部163は、参照中のメッシュ群において、中心に当たるメッシュ2つを特定する。図19(a)に示す例で言うと、メッシュ1905及び1906である。そして、中心に当たる2つのメッシュを特定すると、交点色補完部163は、当該特定したメッシュで共有するメッシュ辺を特定する。図19(b)に示す例で言うと、辺1911である。そして、交点色補完部163は、当該特定した各辺において、それぞれ交点に最近傍の色点と次に近い色点を特定する。図19(b)に示す例で言うと、点1914が最近傍の色点であり、点1915が次に近い色点である。そして、交点色補完部163は、当該特定した2つの色点の色と座標を用いて、線形外挿法により交点色を決定する。
ステップS2005の処理が終了した場合、或いは、ステップS2006の処理が終了した場合には、ステップS2007に進む。
ステップS2007に進むと、交点色補完部163は、図17のステップS1707と同様に、現在のカウンタの値iがEnum−1と同値であるか否かを判断する。
ステップS2007に進むと、交点色補完部163は、図17のステップS1707と同様に、現在のカウンタの値iがEnum−1と同値であるか否かを判断する。
ステップS2007の判断の結果、現在のカウンタの値iがEnum−1と同値ではない場合には(S2007/NO)、ステップS2008に進む。
ステップS2008に進むと、交点色補完部163は、図17のステップS1708と同様に、カウンタの値iに1を加えてインクリメントする処理を行う。その後、ステップS2003に戻り、変更したカウンタの値iに基づいて、ステップS2003以降の処理を行う。
ステップS2008に進むと、交点色補完部163は、図17のステップS1708と同様に、カウンタの値iに1を加えてインクリメントする処理を行う。その後、ステップS2003に戻り、変更したカウンタの値iに基づいて、ステップS2003以降の処理を行う。
一方、ステップS2007の判断の結果、現在のカウンタの値iがEnum−1と同値である場合には(S2007/YES)、ステップS2009に進む。
ステップS2009に進むと、交点色補完部163は、図17のステップS1709と同様に、最終区間の処理を行う。
ステップS2009に進むと、交点色補完部163は、図17のステップS1709と同様に、最終区間の処理を行う。
ステップS2009の処理が終了すると、図20に示すフローチャートにおける処理が終了する。
以上の処理を行うことで、メッシュ内の色の移り変わりも反映した交点色の補完を実現することができる。
(第3の実施形態)
上述した第1の実施形態では、図1に示す特徴点抽出部140において、特徴線上にベジェ近似の誤差の多寡でのみ特徴点とするか否かを決定していたが、交点からの距離が一定の箇所に必ず特徴点を取るようにして特徴点の補正を行ってもよい。こうすることにより、交点付近のメッシュは一定の大きさを保つことができるため、微小なメッシュでの交点色補正処理を行う必要がなくなり、より安定した交点の色補完を行うことができる。
上述した第1の実施形態では、図1に示す特徴点抽出部140において、特徴線上にベジェ近似の誤差の多寡でのみ特徴点とするか否かを決定していたが、交点からの距離が一定の箇所に必ず特徴点を取るようにして特徴点の補正を行ってもよい。こうすることにより、交点付近のメッシュは一定の大きさを保つことができるため、微小なメッシュでの交点色補正処理を行う必要がなくなり、より安定した交点の色補完を行うことができる。
(第4の実施形態)
第1の実施形態に係る画像処理装置では、図1に示すデータ出力部170から出力する出力データを画像データとしている。即ち、第1の実施形態では、メッシュの形状情報と色情報をその過程で中間データとしてのみ用いているが、当該メッシュの形状情報と色情報を符号データとし、これを出力データとして出力してもよい。
第1の実施形態に係る画像処理装置では、図1に示すデータ出力部170から出力する出力データを画像データとしている。即ち、第1の実施形態では、メッシュの形状情報と色情報をその過程で中間データとしてのみ用いているが、当該メッシュの形状情報と色情報を符号データとし、これを出力データとして出力してもよい。
図21は、本発明の第4の実施形態を示し、図1に示すデータ出力部170から出力する出力データとして符号データを適用した場合の概念図である。
本実施形態の場合、データ出力部170から出力する出力データは、例えば、図21に示すように、メッシュ頂点情報2110、メッシュ辺情報2120、メッシュ色情報2130のような形態で出力するとよい。
本実施形態の場合、データ出力部170から出力する出力データは、例えば、図21に示すように、メッシュ頂点情報2110、メッシュ辺情報2120、メッシュ色情報2130のような形態で出力するとよい。
メッシュ頂点情報2110は、メッシュ頂点数2111と、メッシュ頂点ID2112、メッシュ頂点座標2113からなる。
また、メッシュ辺情報2120は、メッシュ辺数2121と、メッシュ辺ID2122と、メッシュ辺を形成するメッシュ頂点のID2123と、メッシュ辺を曲線化するための制御点座標2124からなる。
また、メッシュ色情報2130は、メッシュ数2131と、メッシュを形成するメッシュ辺ID2132と、メッシュ内の色点の色2133からなる。
また、メッシュ辺情報2120は、メッシュ辺数2121と、メッシュ辺ID2122と、メッシュ辺を形成するメッシュ頂点のID2123と、メッシュ辺を曲線化するための制御点座標2124からなる。
また、メッシュ色情報2130は、メッシュ数2131と、メッシュを形成するメッシュ辺ID2132と、メッシュ内の色点の色2133からなる。
なお、復号の際には、上記の情報を読み込んで、メッシュをビットマップデータとしてレンダリングすることで所望の画像を得ることができる。このような符号データの生成や当該符号データから画像データを得るための復号は、図1に示す画像処理装置が行うようにしてもよいし、他の装置が行うようにしてもよい。
(第5の実施形態)
第4の実施形態では、符号データを生成する際に交点色補完を行った上で出力しているが、交点の色は設定済みの他の色点から補完することができるので、交点色補完を符号化時に行う必要は必ずしもない。例えば、図22に示すように、画像処理装置を、符号データを生成する側の符号データ生成機構2210と、当該符号データを復号する側の復号機構2220からなる構成としてもよい。
第4の実施形態では、符号データを生成する際に交点色補完を行った上で出力しているが、交点の色は設定済みの他の色点から補完することができるので、交点色補完を符号化時に行う必要は必ずしもない。例えば、図22に示すように、画像処理装置を、符号データを生成する側の符号データ生成機構2210と、当該符号データを復号する側の復号機構2220からなる構成としてもよい。
図22は、本発明の第5の実施形態に係る画像処理装置の機能構成の一例を示すブロック図である。ここで、図22に示す画像処理装置を、「画像処理装置100−5」と称する。なお、図22において、図1に示す構成と同様の構成については同じ符号を付しており、その説明は省略する。
図22に示すように、画像処理装置100−5は、符号データを生成する側の符号データ生成機構2210と、当該符号データを復号する側の復号機構2220からなるものである。この符号データ生成機構2210と復号機構2220とは、相互に通信可能に構成されている。
符号データ生成機構2210は、画像入力部110、特徴線抽出部120、特徴線補正部130、特徴点抽出部140、曲線メッシュ生成部150、色設定部2230、及び、符号データ出力部2240の各機能構成を有して構成されている。
色設定部2230には、図1に示す色設定部160と同様の色点抽出部161及びエッジ上色点補完部162と、図1に示す色設定部160とは異なる交点抽出部2231とを有して構成されている。
交点抽出部2231は、交点を抽出する。例えば、交点抽出部2231は、交点を用いているメッシュ頂点を特定する情報、例えばIDを抽出して出力する。
交点抽出部2231は、交点を抽出する。例えば、交点抽出部2231は、交点を用いているメッシュ頂点を特定する情報、例えばIDを抽出して出力する。
符号データ出力部2240は、メッシュの形状情報と色情報に加え、交点を用いている頂点を特定する情報を出力する。
復号機構2220は、符号データ入力部2250、交点色補完部2260、及び、画像出力部2270の各機能構成を有して構成されている。
符号データ入力部2250は、符号データ出力部2240が出力した符号データを受けて、これを後段の交点色補完部2260に入力する。
交点色補完部2260は、符号データ中の交点を用いている頂点を特定する情報に基づき、交点を用いているメッシュを抽出する。そして、交点色補完部2260は、抽出したメッシュにおいて、第1の実施形態における交点色補完部163と同様の処理を行う。
画像出力部2270は、これまでの処理で得られたメッシュによる画像表現のために必要な形状情報と色情報等に基づいてレンダリング処理して、これを画像データとして出力する処理を行う。
本実施形態では、このような構成により、符号化時には交点に複数の色を持たせなくてもよくなるため、符号データのサイズを第4の実施形態で説明した符号データのサイズよりも小さくすることができる。
(その他の実施形態)
また、本発明は、以下の処理を実行することによっても実現される。
即ち、上述した各実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。
このプログラム及び当該プログラムを記憶したコンピュータ読み取り可能な記録媒体は、本発明に含まれる。
また、本発明は、以下の処理を実行することによっても実現される。
即ち、上述した各実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。
このプログラム及び当該プログラムを記憶したコンピュータ読み取り可能な記録媒体は、本発明に含まれる。
なお、上述した本発明の実施形態は、いずれも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
100−1 画像処理装置、110 画像入力部、120 特徴線抽出部、121 エッジ検出部、122 エッジ線構成部、130 特徴線補正部、131 端点抽出部、132 交点探索部、133 補正済み特徴線生成部、140 特徴点抽出部、150 曲線メッシュ生成部、160 色設定部、161 色点抽出部、162 エッジ上色点補完部、163 交点色補完部、170 データ出力部
Claims (11)
- 入力画像から画素値の変化が近傍画素に比して大きな画素に基づき特徴線を抽出する特徴線抽出手段と、
前記特徴線抽出手段で抽出された特徴線の断線部分を補正して補正済み特徴線を生成する特徴線補正手段と、
前記特徴線補正手段で補正された補正済み特徴線に基づいて特徴点を抽出する特徴点抽出手段と、
前記特徴点抽出手段で抽出された特徴点を用いて前記入力画像を複数のメッシュからなるメッシュ群に分割して当該メッシュを生成するメッシュ生成手段と、
前記メッシュ生成手段で生成された各メッシュの色情報を設定する色設定手段と、
前記メッシュ生成手段で生成された各メッシュについて前記色設定手段で設定された色情報に基づく処理を行って出力データを生成し、当該出力データを出力する出力手段と、
を有することを特徴とする画像処理装置。 - 前記特徴線補正手段は、
前記特徴線抽出手段で抽出された特徴線における端点を抽出する端点抽出手段と、
前記端点抽出手段で抽出された端点から当該端点が存在する特徴線を延長して他の特徴線と接続する際の交点を探索する交点探索手段と、
前記端点抽出手段で抽出された端点から当該端点が存在する特徴線を延長して前記交点探索手段で探索された交点に接続することにより、前記補正済み特徴線を生成する補正済み特徴線生成手段と、
を含むことを特徴とする請求項1に記載の画像処理装置。 - 入力画像から画素値の変化が近傍画素に比して大きな画素に基づき特徴線を抽出する特徴線抽出手段と、
前記特徴線抽出手段で抽出された特徴線における端点を抽出する端点抽出手段と、
前記端点抽出手段で抽出された端点から当該端点が存在する特徴線を延長して他の特徴線と接続する際の交点を探索する交点探索手段と、
前記端点抽出手段で抽出された端点から当該端点が存在する特徴線を延長して前記交点探索手段で探索された交点に接続することにより、前記特徴線抽出手段で抽出された特徴線の断線部分を補正した補正済み特徴線を生成する補正済み特徴線生成手段と、
を有することを特徴とする画像処理装置。 - 前記交点探索手段は、前記端点抽出手段で抽出された端点の近傍で最も画素値の変化が大きな画素方向にある前記他の特徴線上の前記交点を探索することを特徴とする請求項2または3に記載の画像処理装置。
- 前記交点探索手段において前記交点を探索する際の前記近傍の範囲は、前記端点抽出手段で抽出された端点を着目画素とし、当該着目画素と当該端点が存在する特徴線上であって前記着目画素の隣にある画素との配置に基づいて予め定められた範囲であることを特徴とする請求項4に記載の画像処理装置。
- 前記特徴線抽出手段において前記特徴線を抽出する際の前記近傍画素の範囲は、予め定められた範囲であり、
前記交点探索手段は、前記近傍の範囲を、前記最も画素値の変化が大きな画素と当該最も画素値の変化が大きな画素を求めた際の前記着目画素との配置に基づいて予め定められた範囲に更新して、前記交点を定めるか、あるいは、前記特徴線抽出手段において前記特徴線を抽出する際の前記近傍画素の範囲である予め定められた範囲に基づき予め定められた回数まで前記交点の探索を繰り返し行うことを特徴とする請求項5に記載の画像処理装置。 - 前記交点探索手段において、前記予め定められた回数まで前記交点の探索を繰り返し行っても前記交点が定まらない場合には、当該端点から当該端点が存在する特徴線を延長した前記補正済み特徴線の生成は行われないことを特徴とする請求項6に記載の画像処理装置。
- 入力画像から画素値の変化が近傍画素に比して大きな画素に基づき特徴線を抽出する特徴線抽出ステップと、
前記特徴線抽出ステップで抽出された特徴線の断線部分を補正して補正済み特徴線を生成する特徴線補正ステップと、
前記特徴線補正ステップで補正された補正済み特徴線に基づいて特徴点を抽出する特徴点抽出ステップと、
前記特徴点抽出ステップで抽出された特徴点を用いて前記入力画像を複数のメッシュからなるメッシュ群に分割して当該メッシュを生成するメッシュ生成ステップと、
前記メッシュ生成ステップで生成された各メッシュの色情報を設定する色設定ステップと、
前記メッシュ生成ステップで生成された各メッシュについて前記色設定ステップで設定された色情報に基づく処理を行って出力データを生成し、当該出力データを出力する出力ステップと、
を有することを特徴とする画像処理方法。 - 入力画像から画素値の変化が近傍画素に比して大きな画素に基づき特徴線を抽出する特徴線抽出ステップと、
前記特徴線抽出ステップで抽出された特徴線における端点を抽出する端点抽出ステップと、
前記端点抽出ステップで抽出された端点から当該端点が存在する特徴線を延長して他の特徴線と接続する際の交点を探索する交点探索ステップと、
前記端点抽出ステップで抽出された端点から当該端点が存在する特徴線を延長して前記交点探索ステップで探索された交点に接続することにより、前記特徴線抽出ステップで抽出された特徴線の断線部分を補正した補正済み特徴線を生成する補正済み特徴線生成ステップと、
を有することを特徴とする画像処理方法。 - 請求項1乃至7のいずれか1項に記載の画像処理装置の各手段としてコンピュータを機能させることを特徴とするプログラム。
- 請求項10に記載のプログラムを記憶したことを特徴とするコンピュータ読み取り可能な記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013230603A JP2015090613A (ja) | 2013-11-06 | 2013-11-06 | 画像処理装置及び画像処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013230603A JP2015090613A (ja) | 2013-11-06 | 2013-11-06 | 画像処理装置及び画像処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015090613A true JP2015090613A (ja) | 2015-05-11 |
Family
ID=53194099
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013230603A Pending JP2015090613A (ja) | 2013-11-06 | 2013-11-06 | 画像処理装置及び画像処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2015090613A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017090248A (ja) * | 2015-11-10 | 2017-05-25 | 日本信号株式会社 | 液体または粉粒体の検出装置および検出システム |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11259653A (ja) * | 1998-03-12 | 1999-09-24 | Stanley Electric Co Ltd | 画像処理方法 |
JP2012230663A (ja) * | 2011-04-11 | 2012-11-22 | Canon Inc | 画像処理装置および画像処理方法 |
-
2013
- 2013-11-06 JP JP2013230603A patent/JP2015090613A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11259653A (ja) * | 1998-03-12 | 1999-09-24 | Stanley Electric Co Ltd | 画像処理方法 |
JP2012230663A (ja) * | 2011-04-11 | 2012-11-22 | Canon Inc | 画像処理装置および画像処理方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017090248A (ja) * | 2015-11-10 | 2017-05-25 | 日本信号株式会社 | 液体または粉粒体の検出装置および検出システム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10861232B2 (en) | Generating a customized three-dimensional mesh from a scanned object | |
JP7265639B2 (ja) | 優先点を識別して保持する点群の併合方法 | |
US8044955B1 (en) | Dynamic tessellation spreading for resolution-independent GPU anti-aliasing and rendering | |
JP5451285B2 (ja) | 画像処理装置、画像処理方法 | |
US10403005B2 (en) | Using signed distance fields in multicolored vector approximation | |
JP6863693B2 (ja) | グラフィックス処理システムおよび方法 | |
CN113012269A (zh) | 基于gpu的三维图像数据渲染方法及设备 | |
CN104821008A (zh) | 用于处理三维场景的几何图像的方法和设备 | |
US7948489B1 (en) | Minimizing tessellation of surfaces | |
EP4094231A1 (en) | Mesh optimization for computer graphics | |
CN112132164B (zh) | 目标检测方法、系统、计算机装置及存储介质 | |
US11087511B1 (en) | Automated vectorization of a raster image using a gradient mesh with arbitrary topology | |
JP6294700B2 (ja) | 画像処理装置及び画像処理方法 | |
US20050017969A1 (en) | Computer graphics rendering using boundary information | |
Heimann et al. | Frequency-selective mesh-to-mesh resampling for color upsampling of point clouds | |
JP5888989B2 (ja) | 画像処理装置および画像処理方法 | |
JP2015090613A (ja) | 画像処理装置及び画像処理方法 | |
Wu et al. | An effective content-aware image inpainting method | |
JP5798357B2 (ja) | 画像処理装置、画像処理方法 | |
JP5956875B2 (ja) | 画像処理装置、画像処理方法 | |
JP5587132B2 (ja) | 画像処理装置、画像処理方法 | |
JP2012230668A (ja) | 画像処理装置、画像処理方法、及びプログラム | |
CN111651033B (zh) | 一种人脸的驱动显示方法、装置、电子设备和存储介质 | |
EP2372659A1 (en) | Method and system for rapidly vectorizing image by gradient meshes based on parameterization | |
JP5567525B2 (ja) | 動画像処理方法、動画像処理装置及び動画像処理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161104 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170905 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170926 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20180320 |