(57)【要約】【課題】例えばアニメーションで用いられる画像のように部分的に輪郭が強調されているような画像から輪郭抽出処理によって自然な線画を生成すること。【解決手段】原画像において輝度が所定値よりも小さい領域を墨線領域として検出し、墨線領域を取り囲むこの墨線領域近傍の領域（ステップＳ３４でＹＥＳと判断された画素）を近傍領域として検出する。さらに、原画像における墨線領域および近傍領域を除いた領域（ステップＳ３４でＮＯと判断された画素）について、画像の輪郭部分（ステップＳ３６でＹＥＳと判断された画素）を輪郭領域として検出する。そして、墨線領域および輪郭領域（ステップＳ３２でＹＥＳと判断された画素およびステップＳ３６でＹＥＳと判断された画素）と、その他の領域に対して、異なる色を割り当てる。【選択図】        図６
2004334303.tif 000002
【特許請求の範囲】
【請求項１】
原画像データに基づいて塗り絵用の線画データを生成するための塗り絵画像生成装置であって、
原画像において輝度が所定値よりも小さい領域を墨線領域として検出する墨線領域検出手段と、
前記墨線領域を取り囲む該墨線領域近傍の領域を近傍領域として検出する近傍領域検出手段と、
原画像における前記墨線領域および前記近傍領域を除いた領域について、画像の輪郭部分を輪郭領域として検出する輪郭領域検出手段と、
前記線画データを格納するための線画データ格納手段と、
前記線画データ格納手段の記憶領域のうち、前記墨線領域および前記輪郭領域に対応する記憶領域と、その他の領域に対応する記憶領域に対して、異なる色データを書き込む色データ書込手段とを備える塗り絵画像生成装置。
【請求項２】
原画像が複数の画素で構成されており、
前記近傍領域検出手段は、前記原画像におけるある処理対象画素を中心とした所定領域に前記墨線領域が含まれておりかつ該処理対象画素が前記墨線領域に含まれないときに、該処理対象画素を前記近傍領域として検出することを特徴とする、請求項１に記載の塗り絵画像生成装置。
【請求項３】
前記墨線領域検出手段は、輝度が所定値よりも小さい領域であってかつ該領域の輪郭近傍の領域を前記墨線領域として検出することを特徴とする、請求項１に記載の塗り絵画像生成装置。
【請求項４】
原画像が複数の画素で構成されており、
前記墨線領域検出手段は、輝度が所定値よりも小さい領域に含まれるある処理対象画素を中心とした所定領域に前記墨線領域以外の領域が含まれるときに、該処理対象画素を前記墨線領域として検出することを特徴とする、請求項３に記載の塗り絵画像生成装置。
【請求項５】
動画像データから任意の静止画像データを抽出する静止画像データ抽出手段をさらに備え、
前記静止画像データ抽出手段によって抽出された静止画像データを前記原画像データとして利用して前記線画データを生成することを特徴とする、請求項１に記載の塗り絵画像生成装置。
【請求項６】
原画像データに基づいて塗り絵用の線画データを生成するための塗り絵画像生成プログラムであって、
原画像において輝度が所定値よりも小さい領域を墨線領域として検出する墨線領域検出ステップと、
前記墨線領域を取り囲む該墨線領域近傍の領域を近傍領域として検出する近傍領域検出ステップと、
原画像における前記墨線領域および前記近傍領域を除いた領域について、画像の輪郭部分を輪郭領域として検出する輪郭領域検出ステップと、
前記線画データを格納するための線画データ格納手段の記憶領域のうち、前記墨線領域および前記輪郭領域に対応する記憶領域と、その他の領域に対応する記憶領域に対して、異なる色データを書き込む色データ書込ステップとをコンピュータに実行させるための塗り絵画像生成プログラム。
【請求項７】
原画像が複数の画素で構成されており、
前記近傍領域検出ステップは、前記原画像におけるある処理対象画素を中心とした所定領域に前記墨線領域が含まれておりかつ該処理対象画素が前記墨線領域に含まれないときに、該処理対象画素を前記近傍領域として検出することを特徴とする、請求項６に記載の塗り絵画像生成プログラム。
【請求項８】
前記墨線領域検出ステップは、輝度が所定値よりも小さい領域であってかつ該領域の輪郭近傍の領域を前記墨線領域として検出することを特徴とする、請求項６に記載の塗り絵画像生成プログラム。
【請求項９】
原画像が複数の画素で構成されており、
前記墨線領域検出ステップは、輝度が所定値よりも小さい領域に含まれるある処理対象画素を中心とした所定領域に前記墨線領域以外の領域が含まれるときに、該処理対象画素を前記墨線領域として検出することを特徴とする、請求項８に記載の塗り絵画像生成プログラム。
【請求項１０】
動画像データから任意の静止画像データを抽出する静止画像データ抽出ステップをさらにコンピュータに実行させ、
前記静止画像データ抽出ステップによって抽出された静止画像データを前記原画像データとして利用して前記線画データを生成することを特徴とする、請求項６に記載の塗り絵画像生成プログラム。
【請求項１１】
原画像データに基づいて塗り絵用の線画データを生成するための塗り絵画像生成方法であって、
原画像において輝度が所定値よりも小さい領域を墨線領域として検出する墨線領域検出ステップと、
前記墨線領域を取り囲む該墨線領域近傍の領域を近傍領域として検出する近傍領域検出ステップと、
原画像における前記墨線領域および前記近傍領域を除いた領域について、画像の輪郭部分を輪郭領域として検出する輪郭領域検出ステップと、
前記線画データを格納するための線画データ格納手段の記憶領域のうち、前記墨線領域および前記輪郭領域に対応する記憶領域と、その他の領域に対応する記憶領域に対して、異なる色データを書き込む色データ書込ステップとを備える塗り絵画像生成方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、塗り絵画像生成装置、プログラム及び方法に関し、より特定的には、原画像データに基づいて塗り絵用の線画データを生成するための塗り絵画像生成装置、プログラム及び方法に関する。
【０００２】
【従来の技術】
従来、原画像データに対して所定の処理を行って原画像の輪郭を抽出する技術がある（例えば、特許文献１参照。）。一般的な輪郭抽出処理では、ある処理対象画素とその近傍領域（例えば３×３ピクセル）に位置する画素との輝度差や色差を評価し、所定値以上の輝度差や色差がある場合に、その処理対象画素を輪郭として抽出する。そして、輝度差や色差を評価するときの上記近傍領域を広げる（例えば５×５ピクセル）ことにより、抽出される輪郭線の幅を太くし、かつ輪郭線の連続性を向上させることができる。
【０００３】
このような輪郭抽出処理によって任意の画像データから線画データを生成し、この線画データに基づいてＴＶ画面に線画を表示し、この線画にペイントソフトで色を塗って楽しむことが考えられる。
【０００４】
【特許文献１】
特許第２６２７７４４号公報
【０００５】
【発明が解決しようとする課題】
ところで、アニメーションで用いられる画像（セル画と呼ばれる）では、通常、墨線と呼ばれる黒色の線でキャラクタが縁取られており、一方、キャラクタの服の模様や背景の草の輪郭は、特に黒色の線で縁取られていない（図１３参照）。ところが、このように輪郭がすでに部分的に強調されているような画像に対して従来の輪郭抽出処理を適用した場合、最終的に得られる線画において輪郭線の太さのばらつきが大きくなってしまう。よって、例えば図１３に示す画像の背景にある草の輪郭線の連続性を向上させるべく、輝度差や色差を評価するときに参照される処理対象画素の近傍領域を広げると、図１４に示すように、最終的に得られる線画においてキャラクタの輪郭線が不必要に太くなってしまい、画像が不自然になってしまうという問題がある。
【０００６】
それゆえに、本発明の目的は、例えばアニメーションで用いられる画像のように部分的に輪郭が強調されているような画像から輪郭抽出処理によって自然な線画を生成することのできる塗り絵画像生成装置、プログラム及び方法を提供することである。
【０００７】
【課題を解決するための手段】
本発明は、上記目的を達成するために下記の構成を採用した。なお、括弧内の参照符号等は、本発明の理解を助けるために付したものであって、本発明の範囲を何ら限定するものではない。
【０００８】
本発明の塗り絵画像生成装置は、原画像データ（図１３）に基づいて塗り絵用の線画データを生成するためのものであって、墨線領域検出手段（ステップＳ２２を実行するＣＰＵ３６）と、近傍領域検出手段（ステップＳ３４を実行するＣＰＵ３６）と、輪郭領域検出手段（ステップＳ３５を実行するＣＰＵ３６）と、線画データを格納するための線画データ格納手段（８４）と、色データ書込手段（ステップＳ３１およびステップＳ３７を実行するＣＰＵ３６）とを備える。墨線領域検出手段は、原画像において輝度が所定値（Ｌ）よりも小さい領域（ステップＳ２２でＹＥＳと判断された画素）を墨線領域として検出する。近傍領域検出手段は、墨線領域を取り囲むこの墨線領域近傍の領域（ステップＳ３４でＹＥＳと判断された画素）を近傍領域として検出する。輪郭領域検出手段は、原画像における墨線領域および近傍領域を除いた領域（ステップＳ３４でＮＯと判断された画素）について、画像の輪郭部分（ステップＳ３６でＹＥＳと判断された画素）を輪郭領域として検出する。色データ書込手段は、線画データ格納手段の記憶領域のうち、墨線領域および輪郭領域に対応する記憶領域（ステップＳ３２でＹＥＳと判断された画素およびステップＳ３６でＹＥＳと判断された画素）と、その他の領域に対応する記憶領域に対して、異なる色データ（黒と白）を書き込む。
【０００９】
なお、原画像が複数の画素（６４０×４８０ピクセル）で構成されており、近傍領域検出手段は、原画像におけるある処理対象画素を中心とした所定領域（３×３ピクセル）に墨線領域が含まれておりかつこの処理対象画素が墨線領域に含まれないときに、この処理対象画素を近傍領域として検出するようにしてもよい。
【００１０】
また、墨線領域検出手段は、輝度が所定値（Ｌ）よりも小さい領域であってかつこの領域の輪郭近傍の領域を墨線領域として検出するようにしてもよい。
【００１１】
また、原画像が複数の画素（６４０×４８０ピクセル）で構成されており、墨線領域検出手段は、輝度が所定値（Ｌ）よりも小さい領域に含まれるある処理対象画素を中心とした所定領域（３×３ピクセル）に墨線領域以外の領域が含まれるときに、この処理対象画素を墨線領域として検出するようにしてもよい。
【００１２】
また、上記塗り絵画像生成装置が、動画像データから任意の静止画像データを抽出する静止画像データ抽出手段（ステップＳ１１を実行するＣＰＵ３６）をさらに備え、静止画像データ抽出手段によって抽出された静止画像データを原画像データ（図１３）として利用して線画データを生成するようにしてもよい。
【００１３】
本発明の塗り絵画像生成プログラムは、原画像データ（図１３）に基づいて塗り絵用の線画データを生成するためのものであって、墨線領域検出ステップ（Ｓ２２）と、近傍領域検出ステップ（Ｓ３４）と、輪郭領域検出ステップ（Ｓ３５）と、色データ書込ステップ（Ｓ３１、Ｓ３７）とをコンピュータ（３６）に実行させるためのプログラムである。墨線領域検出ステップは、原画像において輝度が所定値（Ｌ）よりも小さい領域（ステップＳ２２でＹＥＳと判断された画素）を墨線領域として検出する。近傍領域検出ステップは、墨線領域を取り囲むこの墨線領域近傍の領域（ステップＳ３４でＹＥＳと判断された画素）を近傍領域として検出する。輪郭領域検出ステップは、原画像における墨線領域および近傍領域を除いた領域（ステップＳ３４でＮＯと判断された画素）について、画像の輪郭部分（ステップＳ３６でＹＥＳと判断された画素）を輪郭領域として検出する。色データ書込ステップは、線画データを格納するための線画データ格納手段（８４）の記憶領域のうち、墨線領域および輪郭領域に対応する記憶領域（ステップＳ３２でＹＥＳと判断された画素およびステップＳ３６でＹＥＳと判断された画素）と、その他の領域に対応する記憶領域に対して、異なる色データ（黒と白）を書き込む。
【００１４】
本発明の塗り絵画像生成方法は、原画像データ（図１３）に基づいて塗り絵用の線画データを生成するためのものであって、墨線領域検出ステップ（Ｓ２２）と、近傍領域検出ステップ（Ｓ３４）と、輪郭領域検出ステップ（Ｓ３５）と、色データ書込ステップ（Ｓ３１、Ｓ３７）とを備える。墨線領域検出ステップは、原画像において輝度が所定値（Ｌ）よりも小さい領域（ステップＳ２２でＹＥＳと判断された画素）を墨線領域として検出する。近傍領域検出ステップは、墨線領域を取り囲むこの墨線領域近傍の領域（ステップＳ３４でＹＥＳと判断された画素）を近傍領域として検出する。輪郭領域検出ステップは、原画像における墨線領域および近傍領域を除いた領域（ステップＳ３４でＮＯと判断された画素）について、画像の輪郭部分（ステップＳ３６でＹＥＳと判断された画素）を輪郭領域として検出する。色データ書込ステップは、線画データを格納するための線画データ格納手段（８４）の記憶領域のうち、墨線領域および輪郭領域に対応する記憶領域（ステップＳ３２でＹＥＳと判断された画素およびステップＳ３６でＹＥＳと判断された画素）と、その他の領域に対応する記憶領域に対して、異なる色データ（黒と白）を書き込む。
【００１５】
【発明の実施の形態】
以下、本発明の一実施形態に係るゲームシステムについて説明する。
図１は、本発明の一実施形態に係るゲームシステムの構成を示す外観図であり、図２はそのブロック図である。図１、図２に示すように、ゲームシステム１０は、ゲーム機本体１２、ＤＶＤ−ＲＯＭ１８、外部メモリカード３０、コントローラ２２、スピーカ３４ａおよびＴＶモニタ３４を備える。ＤＶＤ−ＲＯＭ１８および外部メモリカード３０は、ゲーム機本体１２に着脱自在に装着される。コントローラ２２は、通信ケーブルを介して、ゲーム機本体１２に設けられた複数（図１では４つ）のコントローラポート用コネクタのいずれかに接続される。ＴＶモニタ３４およびスピーカ３４ａは、ＡＶケーブル等によってゲーム機本体１２と接続される。なお、ゲーム機本体１２とコントローラ２２との通信は無線通信であってもよい。以下、図２を参照しながら、ゲームシステム１０の各部についてより詳細に説明する。
【００１６】
ＤＶＤ−ＲＯＭ１８はゲームプログラムや動画像データ等を固定的に記憶しており、プレイヤがゲームを行うときにゲーム機本体１２に装着される。なお、ゲームプログラム等を記憶する手段として、ＤＶＤ−ＲＯＭ１８の代わりに、例えばＣＤ−ＲＯＭ、ＭＯ、メモリカード、ＲＯＭカートリッジ等、コンピュータ読み取り可能な任意の記憶媒体を用いてもよい。
【００１７】
外部メモリカード３０は、例えばフラッシュメモリ等の書き換え可能な記憶媒体によって構成され、例えばゲームにおけるセーブデータ等のデータを記録する。
【００１８】
ゲーム機本体１２は、ＤＶＤ−ＲＯＭ１８に記録されているゲームプログラムや動画像データを読み出し、ゲーム処理を行う。
【００１９】
コントローラ２２は、プレイヤがゲーム操作に関する入力を行うための入力装置であり、複数の操作スイッチを有する。コントローラ２２は、プレイヤによる操作スイッチの押圧等に応じて操作データをゲーム機本体１２に出力する。
【００２０】
ＴＶモニタ３４は、ゲーム機本体１２から出力された画像データを画面に表示する。なお、スピーカ３４ａは、典型的にはＴＶモニタ３４に内蔵されており、ゲーム機本体１２から出力されたゲーム中の音声を出力する。
【００２１】
次に、ゲーム機本体１２の構成について説明する。図２において、ゲーム機本体１２には、ＣＰＵ３６およびそれに接続されるメモリコントローラ３８が設けられる。さらにゲーム機本体１２において、メモリコントローラ３８は、グラフィックスプロセッシングユニット（ＧＰＵ）４２と、メインメモリ４０と、ＤＳＰ４４と、各種インターフェース（Ｉ／Ｆ）４８〜５６とに接続される。メモリコントローラ３８は、これら各構成要素間のデータ転送を制御する。
【００２２】
ゲーム開始の際、まず、ディスクドライブ１６は、ゲーム機本体１２に装着されたＤＶＤ−ＲＯＭ１８を駆動する。ＤＶＤ−ＲＯＭ１８に記憶されているゲームプログラムは、ディスクＩ／Ｆ５６およびメモリコントローラ３８を介して、メインメモリ４０に読み込まれる。メインメモリ４０上のプログラムをＣＰＵ３６が実行することによってゲームが開始される。ゲーム開始後、プレイヤは、操作スイッチを用いてコントローラ２２に対してゲーム操作等の入力を行う。プレイヤによる入力に従い、コントローラ２２は、操作データをゲーム機本体１２に出力する。コントローラ２２から出力される操作データは、コントローラＩ／Ｆ４８およびメモリコントローラ３８を介してＣＰＵ３６に入力される。ＣＰＵ３６は、入力された操作データに応じてゲーム処理を行う。ゲーム処理における画像データ生成等に際して、ＧＰＵ４２やＤＳＰ４４が用いられる。ＡＲＡＭ（Ａｕｄｉｏ−ｇｒａｄｅ  ＤＲＡＭ）４６は、ＤＳＰ４４が所定の処理を行う際に用いられる。
【００２３】
ＧＰＵ４２は、ＴＶモニタ３４に表示すべき画像データを生成し、メモリコントローラ３８およびビデオＩ／Ｆ５０を介して画像データをＴＶモニタ３４に適宜出力する。なお、ゲームプログラム実行時にＣＰＵ３６において生成される音声データは、メモリコントローラ３８からオーディオＩ／Ｆ５４を介してスピーカ３４ａに出力される。
【００２４】
図３に、メインメモリ４０のメモリマップを示す。メインメモリ４０には、プログラムを格納するためのプログラム記憶領域５８と、データを格納するためのデータ記憶領域７６が設けられる。
【００２５】
プログラム記憶領域５８には、ゲームメイン処理プログラム６０や、動画再生プログラム６２や、静止画取得プログラム６４や、塗り絵作成プログラム６６や、ペイントプログラム７４等が格納される。これらのプログラムは、ＤＶＤ−ＲＯＭ１８より適宜読み出されてメインメモリ４０に格納される。塗り絵作成プログラム６６には、墨線検出プログラム６８や墨線近傍領域検出プログラム７０や輪郭抽出プログラム７２が含まれる。
【００２６】
データ記憶領域７６には、動画データ記憶領域７８や、表示バッファ８０や、墨線画像バッファ８２や、塗り絵格納バッファ８４が設けられ、さらにペイントプログラム用画像データ８６等が格納される。動画データ記憶領域７８には、ＤＶＤ−ＲＯＭから読み出された動画データが一時的に格納される。ペイントプログラム用画像データ８６は、ＤＶＤ−ＲＯＭ１８より適宜読み出されてメインメモリ４０に格納される。
【００２７】
以下、ゲームシステム１０の動作について説明する。
本実施形態ではゲームが開始すると、プレイヤは適宜動画を選択し、つづいて選択された動画の再生処理が行われる。プレイヤは、動画再生中の任意のタイミングにおいて、コントローラ２２を操作して現在表示中の画像を静止画として抽出することができる。静止画が抽出されると、この静止画から塗り絵用の線画が生成される。プレイヤは、ＴＶモニタ３４の画面上で、こうして生成された線画に自由に色を塗って遊ぶことができる。
【００２８】
図４〜図６のフローチャートを参照して、本実施形態のＣＰＵ３６の処理について説明する。
図４において、ゲーム処理が開始すると、ＣＰＵ３６は動画再生プログラム６２に基づいて動画再生処理を行う。具体的には、ＤＶＤ−ＲＯＭ１８に格納されている（もしくはＤＶＤ−ＲＯＭ１８から読み出されて動画データ記憶領域７８に一時的に格納されている）動画データに含まれる所定フレームの画像データを表示バッファ８０に転送し（Ｓ１１）、表示バッファ８０に転送された画像データに基づく映像信号をＴＶモニタ３４に出力する（Ｓ１３）。そして、動画再生処理が終了したか否かを判断し（Ｓ１４）、終了していなければ、次のフレームの画像データについて同様の処理を行う。こうしてステップＳ１１およびステップＳ１３の処理を繰り返すことによって、ＴＶモニタ３４の画面上に動画が表示される。ステップＳ１３において動画再生処理が終了したと判断された場合には、ゲーム処理が終了する。
【００２９】
なお、動画再生処理中は、ＣＰＵ３６は静止画取得プログラム６４に基づいてコントローラ２２からの入力を監視し（Ｓ１２）、コントローラ２２からの入力があった場合には動画再生処理を中断する。そして、この時点で表示バッファ８０に格納されている静止画データを原画像データとして用いて、塗り絵作成プログラム６６に基づく塗り絵作成処理を開始する（Ｓ１５）。塗り絵作成処理の詳細は後述する。
【００３０】
塗り絵作成処理の結果、塗り絵格納バッファ８４には塗り絵用の線画データが格納されているが、ＣＰＵ３６は、この線画データを表示バッファ８０に転送し（Ｓ１６）、表示バッファ８０に転送された線画データに基づく映像信号をＴＶモニタ３４に出力する（Ｓ１７）。そして、この線画データを利用して、ペイントプログラム７４による塗り絵遊び処理を実行し（Ｓ１８）、ゲームを終了する。
【００３１】
次に、図５および図６を参照して、ステップＳ１５の塗り絵作成処理の詳細を説明する。
図５において、塗り絵作成処理が開始すると、まず墨線検出プログラム６８に基づいて、原画像における墨線領域（セル画の墨線のように、輝度が低い領域）を検出する処理が行われる。具体的には、まずＣＰＵ３６は、墨線画像バッファ８２をクリアする（全ての画素に白を書き込む）とともに、処理対象画素を指定するための座標を表すＸ、Ｙに初期値として１を設定し、さらに墨線領域を判断するための輝度の閾値Ｌに１０を設定する（Ｓ２１）。なお、ここでは画像データの各画素の輝度が０〜２５５の値で規定されていると仮定している。閾値Ｌの値は１０に限らず最適な値に設定されるべきである。
【００３２】
つづいてＣＰＵ３６は、表示バッファ８０に格納されている原画像データに基づいて、原画像における処理対象画素（Ｘ，Ｙ）の輝度がＬ以下であるかどうか判断する（Ｓ２２）。判断の結果、輝度がＬ以下であった場合には墨線画像バッファ８２の画素（Ｘ，Ｙ）に対応する記憶領域に黒を書き込んでから（Ｓ２３）ステップＳ２４に進む。一方、輝度がＬよりも大きかった場合にはそのままステップＳ２４に進む。
【００３３】
ＣＰＵ３６は、ステップＳ２４でＸをインクリメントし、ステップＳ２５でＸが６４０よりも小さいかどうか判断する。なお、ここでは処理すべき画像データのサイズが６４０×４８０ピクセルであると仮定している。判断の結果、Ｘが６４０以下であった場合にはステップＳ２２に戻り、Ｘが６４０よりも大きかった場合にはステップＳ２６に進む。ステップＳ２６では、ＣＰＵ３６はＹが４８０であるかどうか判断する。判断の結果、Ｙが４８０でなかった場合には、ステップＳ２７でＹをインクリメントしかつＸに１を設定してからステップＳ２２に戻る。一方、Ｙが４８０であった場合には図６のステップＳ３１に進む。これらのステップＳ２４〜Ｓ２７の処理によって、走査線を走査するように処理対象画素が順次シフトされ、最終的に全ての画素が処理される。
【００３４】
以上のステップＳ２１〜Ｓ２７の処理の結果、墨線画像バッファ８２の状態は、図７に示すように、原画像の墨線領域（輝度が低い領域）に対応する画素に黒が書き込まれ、その他の画素に白が書き込まれた状態となる。
【００３５】
図６において、まずＣＰＵ３６は、塗り絵格納バッファ８４をクリアする（全ての画素に白を書き込む）とともに、処理対象画素を指定するための座標を表すＸ、Ｙに初期値として１を設定する（Ｓ３１）。そして、墨線画像バッファ８２において、処理対象画素（Ｘ，Ｙ）が黒であるかどうか（すなわち処理対象画素が墨線領域に含まれるかどうか）を判断する（Ｓ３２）。判断の結果、処理対象画素が黒であった場合にはステップＳ３７で塗り絵格納バッファ８４の画素（Ｘ，Ｙ）に黒を書き込んでからステップＳ３８に進む。一方、処理対象画素が黒でなかった場合にはステップＳ３３に進む。
【００３６】
ＣＰＵ３６は、ステップＳ３３で、Ｘが２以上６３９以下であって、かつＹが２以上４７９以下であるかどうかを判断する。判断結果が肯定であればステップＳ３４に進み、判断結果が否定であればステップＳ３８に進む。この結果、処理対象画素が画像データの端部（上下端部、左右端部）の画素である場合には後続のステップＳ３４〜Ｓ３６の処理が省略されることとなる。
【００３７】
ステップＳ３４で、ＣＰＵ３６は、墨線近傍領域検出プログラム７０に基づいて、墨線画像バッファ８２における処理対象画素（Ｘ，Ｙ）の近傍画素のいずれかが黒であるかどうか（つまり、処理対象画素が墨線領域の近傍に位置するかどうか）を判断する。なお、処理対象画素（Ｘ，Ｙ）の近傍画素とは、処理対象画素を中心とした所定領域（ここでは３×３ピクセル）に含まれる画素であって、より具体的には、画素（Ｘ−１，Ｙ−１）、画素（Ｘ，Ｙ−１）、画素（Ｘ＋１，Ｙ−１）、画素（Ｘ−１，Ｙ）、画素（Ｘ＋１，Ｙ）、画素（Ｘ−１，Ｙ＋１）、画素（Ｘ，Ｙ＋１）、画素（Ｘ＋１，Ｙ＋１）の８画素である。ステップＳ３４の判断の結果、近傍画素のいずれかが黒であった場合にはステップＳ３８に進み、近傍画素がいずれも黒でなかった場合にはステップＳ３５に進む。つまり、墨線領域およびその近傍領域に含まれないような画素（Ｘ，Ｙ）についてのみ、後述するステップＳ３５の輪郭抽出処理が適用されることになる。
【００３８】
ステップＳ３５で、ＣＰＵ３６は、輪郭抽出プログラム７２に基づいて、表示バッファ８０の処理対象画素（Ｘ，Ｙ）に対して輪郭抽出処理を適用する。この輪郭抽出処理としては公知の任意の輪郭抽出アルゴリズムを利用することができる。ここでは一例として、差分オペレータの一種であるＳｏｂｅｌオペレータを用いた輪郭抽出処理を行うものとする。
【００３９】
図８（ａ）に示すように、処理対象画素を中心とした所定エリア（３×３ピクセル）の画素をそれぞれ画素Ａ〜Ｉと称する。そして、画素Ａ〜Ｉの輝度値をそれぞれＬ（Ａ）〜Ｌ（Ｉ）と称する。Ｓｏｂｅｌオペレータを用いた輪郭抽出処理では、これらの９画素の輝度値を図８（ｂ１）および図８（ｂ２）に示す差分オペレータで重み付けてそれらの合計を求める。これにより、輝度値の水平方向および垂直方向の変化量が図８（ｃ１）および図８（ｃ２）に示すようにして求まる。これらの各変化量から輝度変化量ベクトルが決定される。つまり、輝度変化量ベクトルの水平成分が輝度値の水平方向の変化量に相当し、輝度変化量ベクトルの垂直成分が輝度値の垂直方向の変化量に相当する。輪郭部分とは輝度値が大きく変化する部分であるので、輝度変化量ベクトルの大きさが所定の閾値よりも大きい部分を抽出することによって輪郭部分を抽出することができる。なお、差分オペレータの適用範囲を広げたり、輝度変化量ベクトルの大きさを評価する時の閾値を調整したりすること等により、輪郭抽出処理の結果を様々に操作することができる。例えば、輝度変化量ベクトルの大きさを評価する時の閾値を小さくすることによって、抽出される輪郭線の連続性を向上させることができる（ただし、図１４に示すように、従来の輪郭抽出処理では、その逆効果として墨線部分が必要以上に太くなってしまう。）。
【００４０】
ステップＳ３６で、ＣＰＵ３６は、ステップＳ３５の処理結果に基づいて処理対象画素（Ｘ，Ｙ）が輪郭部分に相当するかどうかを判断する。判断の結果、処理対象画素が輪郭部分に相当する場合にはステップＳ３７で塗り絵格納バッファ８４の画素（Ｘ，Ｙ）に黒を書き込んでからステップＳ３８に進む。一方、処理対象画素が輪郭部分に相当しなかった場合にはそのままステップＳ３８に進む。
【００４１】
ステップＳ３８〜Ｓ４１の処理は、図５におけるステップＳ２４〜Ｓ２７と同様の処理、すなわち処理対象画素を順次シフトするための処理である。こうして最終的に全ての画素が処理され、塗り絵作成処理が終了する。
【００４２】
上記の塗り絵作成処理の結果、塗り絵格納バッファ８４の状態は、図９に示すように、原画像の墨線領域に対応する画素と、さらにこの墨線領域およびその近傍領域を除いた領域における輪郭部分に対応する画素に黒が書き込まれ、その他の画素に白が書き込まれた状態となる。この塗り絵格納バッファ８４に格納された線画データが塗り絵遊びに使用される。このように、本実施形態によれば墨線領域近傍の画素に対して輪郭抽出処理が適用されないため、線画において、墨線部分が原画像に比べて太くなってしまうことがなくなる。したがって、例えば背景の草やキャラクタの服の模様の輪郭線の連続性を向上させるようにステップＳ３５の輪郭抽出処理の結果を操作した場合にも、墨線部分がそれに応じて太くなってしまうという問題は発生せず、図９に示すような自然でかつ連続性に優れた線画を得ることができる。
【００４３】
なお、図９に示す線画には、キャラクターの瞳や額の影など、輪郭線以外の黒い領域が存在するが、プレイヤは塗り絵遊びにおいてこれらの領域にも好きな色を塗りたいと思うかも知れない。そこで、これらの領域にも色を塗って遊べるような線画を生成する方法について以下で説明する。
【００４４】
この場合、メインメモリ４０のデータ記憶領域７６に新たなバッファ（以下、追加バッファと称す）を設け、さらに、図５に示すステップＳ２６の処理と図６に示すステップＳ３１の処理との間に、図１０に示す処理を追加すればよい。すなわち、まずＣＰＵ３６は、墨線画像バッファ８２のデータを追加バッファにコピーするとともに、処理対象画素を指定するための座標を表すＸ、Ｙに初期値として１を設定する（Ｓ５１）。そして、墨線画像バッファ８２において、処理対象画素（Ｘ，Ｙ）の近傍領域（ここでは処理対象画素を中心とした５×５ピクセルの領域）の画素が全て黒であるかどうかを判断する（Ｓ５２）。判断の結果、全ての画素が黒であった場合にはステップＳ５３で追加バッファの画素（Ｘ，Ｙ）に白を書き込んでからステップＳ５４に進む。一方、黒でない画素が存在した場合にはそのままステップＳ５４に進む。この結果、墨線領域のうち、この墨線領域の輪郭から離れた位置にある画素には白が書き込まれることになる。
【００４５】
ステップＳ５４〜Ｓ５７の処理は、図５におけるステップＳ２４〜Ｓ２７と同様の処理、すなわち処理対象画素を順次シフトするための処理である。こうして最終的に全ての画素が処理されると、図６のステップＳ３１に進む。このとき、追加バッファには図１１に示すような画像データが格納されている。ステップＳ３１以降の処理では、墨線画像バッファ８２の代わりに追加バッファを参照する。こうした塗り絵作成処理の結果、塗り絵格納バッファ８４には図１２に示すような線画データが格納される。プレイヤは、この線画データに基づいて、キャラクターの瞳や額の影などにも好きな色を塗って遊ぶことができる。
【００４６】
なお、本実施形態では、処理対象画素が墨線領域に位置するかどうかを判断するときに処理対象画素の輝度値を用いて判断するとしたが、本発明はこれに限らず、例えば処理対象画素のＲ，Ｇ，Ｂの値を用いてこれを判断しても構わない。
【００４７】
また、本実施形態では、ステップＳ３４やステップＳ３５において処理対象画素を中心とした３×３ピクセルの範囲を参照して所定の処理を行うとしたが、本発明はこれに限らず、例えば５×５ピクセルの範囲を参照するようにしても構わない。ステップＳ５２についても近傍領域は５×５ピクセルの領域に限定されない。
【００４８】
また、本実施形態では、塗り絵格納バッファの各画素に白または黒を書き込むとしたが、本発明はこれに限らず、例えば赤や青や茶を書き込んでも構わない。
【００４９】
【発明の効果】
以上のように、本発明によれば、例えばアニメーションで用いられる画像のように部分的に輪郭が強調されているような画像から輪郭抽出処理によって自然な線画を生成することが可能となる。
【図面の簡単な説明】
【図１】本発明の一実施形態に係るゲームシステムの外観図である。
【図２】ゲーム機本体の構成を示すブロック図である。
【図３】メインメモリのメモリマップを示す図である。
【図４】ＣＰＵ３６の動作を示すフローチャートである。
【図５】塗り絵作成処理の流れを示すフローチャートの一部である。
【図６】塗り絵作成処理の流れを示すフローチャートの一部である。
【図７】墨線格納バッファに最終的に格納される画像データの一例を示す図である。
【図８】輪郭抽出アルゴリズムについて説明するための図である。
【図９】塗り絵格納バッファに最終的に格納される線画データの一例を示す図である。
【図１０】本発明の一実施形態の変形例に係る処理の流れを示すフローチャートである。
【図１１】追加バッファに最終的に格納される画像データの一例を示す図である。
【図１２】変形例において塗り絵格納バッファに最終的に格納される線画データの一例を示す図である。
【図１３】原画像の一例を示す図である。
【図１４】従来の輪郭抽出処理によって生成される線画を示す図である。
【符号の説明】
１０  ゲームシステム
１２  ゲーム機本体
１６  ディスクドライブ
１８  ＤＶＤ−ＲＯＭ
２２  コントローラ
３０  外部メモリカード
３４  ＴＶモニタ
３４ａ  スピーカ
３６  ＣＰＵ
３８  メモリコントローラ
４０  メインメモリ
４２  ＧＰＵ
４４  ＤＳＰ
４６  ＡＲＡＭ
４８  コントローラＩ／Ｆ
５０  ビデオＩ／Ｆ
５２  外部メモリＩ／Ｆ
５４  オーディオＩ／Ｆ
５６  ディスクＩ／Ｆ
５８  プログラム記憶領域
６０  ゲームメイン処理プログラム
６２  動画再生プログラム
６４  静止画取得プログラム
６６  塗り絵作成プログラム
６８  墨線検出プログラム
７０  墨線近傍領域検出プログラム
７２  輪郭抽出プログラム
７４  ペイントプログラム
７６  データ記憶領域
７８  動画データ記憶領域
８０  表示バッファ
８２  墨線画像バッファ
８４  塗り絵格納バッファ
８６  ペイントプログラム用画像データ
【図１】
2004334303.tif 000003
【図２】
2004334303.tif 000004
【図３】
2004334303.tif 000005
【図４】
2004334303.tif 000006
【図５】
2004334303.tif 000007
【図６】
2004334303.tif 000008
【図７】
2004334303.tif 000009
【図８】
2004334303.tif 000010
【図９】
2004334303.tif 000011
【図１０】
2004334303.tif 000012
【図１１】
2004334303.tif 000013
【図１２】
2004334303.tif 000014
【図１３】
2004334303.tif 000015
【図１４】
2004334303.tif 000016