(57)【要約】      （修正有）【課題】処理内容を設定できる自動絵画制作システムを提供する。【解決手段】コンピュータシステムであって、画像を入力し記憶する手段、出力画像を記憶し出力する手段、描画処理を制御する情報が記録されたレシピを読み取る手段、レシピに記録されたスキャン処理回数分のブラシパターンと、運行データと、塗装条件データと、色変換データとを抽出し順次描画処理フローとして記憶する手段、描画処理フローの順に、入力画像を運行データに基づいてスキャンし、その運行上の位置におけるブラシパターン各点の位置の色値を取り出し、塗装条件データと照らし塗装の是非を判定する手段、ブラシパターン各点の位置の色値と色変換データに基づき塗装色を算出する手段及び出力画像の運行上の位置におけるブラシパターン各点の位置に塗装色を設定する手段を備える。【選択図】図１
2017123131.tif 000002
【特許請求の範囲】
【請求項１】
入力部、記憶部、制御部、出力部を備えるコンピュータシステムであって、
入力画像を入力し記憶する手段、出力画像を記憶し出力する手段、及び、
描画処理を制御する情報が記録されたレシピを読み取る手段、
前記レシピに記録されたスキャン処理回数分の
ブラシパターンと、運行データと、塗装条件データと、色変換データとを抽出し順次描画処理フローとして記憶する手段、及び、
前記描画処理フローの順に、前記入力画像を前記運行データに基づいてスキャンし、その運行上の位置における前記ブラシパターン各点の位置の色値を取り出し、前記塗装条件データと照らし塗装の是非を判定する手段、
前記ブラシパターン各点の位置の色値と前記色変換データに基づき塗装色を算出する手段、
前記出力画像の運行上の位置における前記ブラシパターン各点の位置に前記塗装色を設定する手段
からなる自動絵画制作システム
【請求項２】
前記レシピはレシピ画像である請求項１記載の自動絵画制作システム
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、描画処理を制御する情報を記録したレシピを使って、入力された写真を題材にして自動的に絵画を制作するシステムに関する。
【背景技術】
【０００２】  写真をデジタル画像処理により異なる雰囲気、特に絵画調に変換するサービスは古くから行われており、様々な方法が報告されている。（例えば、特許文献１、特許文献２、特許文献３参照。）
なお、発明者は、本発明に関連する技術内容を開示している（例えば、非特許文献１参照）。
自動処理による絵画制作技術は手作業に比べて圧倒的な高能率化が可能であるため、様々な場面や用途での利用が期待されている。
【先行技術文献】
【０００３】
【特許文献１】特開２０１３−１５６９９９号公報
【特許文献２】特開２００４−２１３５９８号公報
【特許文献３】特開平８−４４８６７号公報
【非特許文献１】梅村高著，２０１１”Ｉｍａｇｉｎａｒｙ  Ｃｉｒｃｕｉｔ”ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｌｉｖｅｃｒａｆｔ．ｃｏ．ｊｐ／
【発明の開示】
【発明が解決しようとする課題】
【０００４】  しかしながら、従来は、絵画表現を決定する肝心の変換処理内容は予め用意されたプログラムの中から選択するしか道がなく、自動的に作られた絵画には利用者自ら作り上げたという感覚や達成感、愛着が持てないことが問題となっていた。【０００５】  仮に変換処理プログラムを利用者自らが作成または監修できればこの問題は大きく解決に近づくが、プログラミングには専門的なスキルや環境を要し、また絵を描く作業とは異質であるため、事実上不可能に近い状況であった。【０００６】  本発明は、このような課題に鑑みてなされたものであり、利用者が処理内容を設定できる自動絵画制作システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】入力部、記憶部、制御部、出力部を備えるコンピュータシステムであって、
入力画像を入力し記憶する手段、出力画像を記憶し出力する手段、及び、
描画処理を制御する情報が記録されたレシピを読み取る手段、
前記レシピに記録されたスキャン処理回数分の
ブラシパターンと、運行データと、塗装条件データと、色変換データとを抽出し順次描画処理フローとして記憶する手段、及び、
前記描画処理フローの順に、前記入力画像を前記運行データに基づいてスキャンし、その運行上の位置における前記ブラシパターン各点の位置の色値を取り出し、前記塗装条件データと照らし塗装の是非を判定する手段、
前記ブラシパターン各点の位置の色値と前記色変換データに基づき塗装色を算出する手段、
前記出力画像の運行上の位置における前記ブラシパターン各点の位置に前記塗装色を設定する手段
からなる自動絵画制作システム
【発明の効果】
【０００８】  利用者自身のレシピで自動作成された絵画は、利用者の思想を反映したものとなり、著作物としての価値が高まり、利用者に愛着をもたらす効果がある。【０００９】  また、新しい自動絵画表現の創出を促し、そのレシピを広く共有可能にする効果がある。また、レシピの部分的な張り合わせによる編集を可能にする効果がある。
また、様々な装置やサービスがレシピに対応することで、作成したレシピを様々な場面で利用可能にする効果がある。
【発明を実施するための形態】
【００１０】  以下、本発明の実施形態について説明する。
本発明は、
入力部、記憶部、制御部、出力部を備えるコンピュータシステムであって、
入力画像を入力し記憶する手段、出力画像を記憶し出力する手段、及び、
描画処理を制御する情報が記録されたレシピを読み取る手段、
前記レシピに記録されたスキャン処理回数分の
ブラシパターンと、運行データと、塗装条件データと、色変換データとを抽出し順次描画処理フローとして記憶する手段、及び、
前記描画処理フローの順に、前記入力画像を前記運行データに基づいてスキャンし、その運行上の位置における前記ブラシパターン各点の位置の色値を取り出し、前記塗装条件データと照らし塗装の是非を判定する手段、
前記ブラシパターン各点の位置の色値と前記色変換データに基づき塗装色を算出する手段、
前記出力画像の運行上の位置における前記ブラシパターン各点の位置に前記塗装色を設定する手段
を備える。
【００１１】  図１は本発明の実施形態に係るシステム構成であり、１０１．レシピ入力部、１０２．画像入力部、１０３．記憶部、１０４．制御部、１０５．画像出力部で構成される。
【００１２】  １０１．レシピ入力部は、後述するレシピを入力するファイル読み込み装置、キーボード、マウス、タッチパネル等の入力デバイスである。
【００１３】  １０２．画像入力部は、画像入力用のファイル読み込み装置、カメラ、スキャナ等の入力デバイスである。
【００１４】  １０３．記憶部は入出力画像および作業画像で構成される画像レイヤー、後述するレシピ、後述するフローチャートに示す動作を１０４．制御部のＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）に行わせるための主プログラムと、設定可能なプロパティを有する描画プログラムを記憶する。
【００１５】  １０５．画像出力部は作成された出力用画像をファイル、ディスプレイ、プリント等に出力するデバイスである。
【００１６】  図２は、本発明の実施形態におけるレシピの概念図である。
以下、レシピについて詳しく説明する。
【００１７】  レシピには描画処理を制御する情報が記録され、必要なスキャン処理回数分のデータで構成される。（ｄ０２）
【００１８】  スキャン処理とは、入力画像上を指定された運行経路により逐次処理することである。例えばテレビジョン型の走査であれば画面左上の点から右下の点まで、指定のステップ幅で折り返しながら運行する。任意の開始点と終了点と経路を指定してもよい。
【００１９】  一般的には初めは大きなブラシを使い、徐々にブラシを小さくして細部を描くように複数のスキャン処理を構成する。図５にその様子を示す。
【００２０】  １回分のスキャン処理データの内容は、ブラシパターン（ｄ０２−１）、運行データ（ｄ０２−２）、塗装条件データ（ｄ０２−３）、色変換データ（ｄ０２−４）とで構成される。
【００２１】  ブラシパターン（ｄ０２−１）は、ブラシの形状と色情報を定める、透明度（α値）付のビットマップ画像である。もちろんビットマップ画像に変換可能な形式であれば、ベクトル形式等のデータでもよい。
【００２２】  運行データ（ｄ０２−２）は、入力画像上でのブラシの運行経路を決めるパラメータであり、テレビジョン型の走査であれば縦横それぞれの方向のステップ幅がこれに相当する。
ブラシが運行するパスのデータであってもよい。
なお、全く同じブラシパターンが規則的に出現すると機械的な印象になるため、これを避けるためにブラシの位置と形状をランダムに変動させる変動許容量を追加してもよい。
また、ブラシの向きを入力画像の濃度勾配に合わせるような角度補正量を追加してもよい。
【００２３】  塗装条件データ（ｄ０２−３）は、運行するブラシ上の各点から取得した入力画像、作業画像の各レイヤーの値と統計的な測定値の許容範囲を設定するもので、この条件を満たした場合に塗装を行う。
通常は色相Ｈ，彩度Ｓ，明度Ｖの値と、赤Ｒ，緑Ｇ，青Ｂの分散値の範囲を定めるそれぞれの最小値と最大値である。
この他にも例えば微分値（エッジ値）や特定パターンへの類似度などの値の範囲を追加してもよい。また許容範囲をランダムに変動させる変動許容量を追加してもよい。
【００２４】  色変換データ（ｄ０２−４）は前記ブラシ上の各点から取得した入力画像、作業画像の各選択されたレイヤーの平均値を基に描画色を算出するためのもので、各レイヤーにオフセット値を数値データで指定するのが最も簡単である。より詳細な制御が望ましい場合は各レイヤーに変換テーブル（１次元配列）を指定する。
また出力レイヤーとブレンドする際の透明度や、色をランダムに変動させる変動許容量を追加してもよい。
【００２５】  上記のそれぞれのデータは上述にように幾つかのデータ要素で構成されるが、それらのデータ要素はすべて後述する描画プログラムの設定可能な各プロパティと１対１で対応するものであり、それらのプロパティの設定を変更することで描画プログラムにレシピの内容を反映させる。（ｄ０３）
【００２６】  以下に本発明における描画プログラムのプロパティについて詳しく説明する。
プロパティは描画プログラムが実行時に参照するデータであり、そのデータ型には数値、テーブル、及びビットマップの場合があり、
それぞれ０次元配列、１次元配列、２次元配列の数値に相当している。
【００２７】  ブラシパターンはビットマップ型のプロパティであり、これを設定することは描画プログラムが参照する２次元配列である画像リソースを書き換えることに他ならない。
【００２８】  色変換データのようにテーブル型のプロパティにおいては、設定は１次元配列の数値の書き換えに相当する。
【００２９】  運行データのステップ幅のように数値型のプロパティにおいては、設定は数値パラメータの書き換えに相当する。
【００３０】  本発明においてはプロパティを多数提供することが可能であるが、それぞれのプロパティには標準的なデフォルト値が定義されているため、レシピには変更したいプロパティだけを記載すればよい。また、テーブルを省略した場合はそのテーブルによる変換処理をスキップすることができる。
【００３１】  また、プロパティは本発明の要旨を逸脱することなく増設が可能であり、仮に増設してもレシピの互換性が損なわれないことは明らかである。
【００３２】  なお、レシピは複数の画像、複数の数値配列、複数の数値で構成されるため、データの保存にはスキャン処理毎にフォルダーを分けてファイルに格納し、持ち運ぶ際は圧縮アーカイブ化して一つのファイルに纏めるとよい。
【００３３】  また、レシピはＸＭＬやＨＴＭＬ等のマークアアップ言語を使って構造的に保管してもよい。特にこの形態は本発明をインターネットサーバーでＷｅｂアプリとして実施する場合には整合性がよい。
【００３４】  また、図３に示すようにレシピ全体を一の画像に記載することができる。即ち、この画像を編集することで、特定のソフウェアツールに依存することなく、レシピを設定することができる。以下に画像に記載するレシピについて詳しく説明する。
【００３５】  ブラシパターンは元々画像なので問題なく記載でき、テーブルと数値はとりうる値の範囲を規定し、値を範囲内での割合としてグラフ化して表現することで可視化して記載する。
【００３６】  また、グラフとして表現されたデータはエンコード過程を逆に処理し、ピクセルをカウントすることで元のテーブルまたは数値の形式にデコードできる。
【００３７】  具体的には、ｚ３１１ヘッダーアイコンの存在によって画像がレシピであることが識別され、
【００３８】  ｚ３２１クラスアイコンの存在によって識別可能なｚ３１２クラスグループのそれぞれに１スキャン処理分のレシピデータを記載する。
【００３９】  クラスグループ内にｚ３３１プロパティアイコンの存在によって識別可能な必要数のｚ３２２プロパティグループを設け、
【００４０】  ｚ３３１プロパティアイコンが示す特定プロパティに設定するためのデータを同じｚ３２２プロパティグループ内に記載されたｚ３３２プロパティ値から取得する。
【００４１】  取得したデータはこの段階では画像なので、描画プログラムのプロパティの形式にそれぞれ変換処理する。
【００４２】  ｚ３１２クラスグループとｚ３２２プロパティグループの記述形式はその纏まりが抽出可能なプロトコルであればよい。
【００４３】  例えば同じ色で塗装されている領域や、予約色で囲まれた領域とすればシードフィルアルゴリズムにより連結領域を纏まりとして抽出できる。また、抽出した領域内に空いた穴としてその領域に内包される各要素を抽出できる。
【００４４】  レシピ画像への記述形式は、上記以外でも、レシピのデータ構造とデータ内容、即ち、スキャン処理回数分のブラシパターンと、運行データと、塗装条件データと、色変換データを不足なく記述しうるプロトコルであればよい。
【００４５】  画像として記載したレシピのデータ要素の例を挙げる。
ｚ３９１−ａ、ｚ３９１−ｂは、数値データをスライダーコントロールのように記載した例である。
ｚ３９２−ａは色変換テーブルのようなｙ＝ｆ（ｘ）関数を格納する１次元配列のグラフ記載例である。ｆ（ｘ）部のピクセルをカウントすればデコードできる。
ｚ３９２−ｂは、ｙ＝ｒ（ａ，ｂ）関数を格納する２次元配列の記載例である。縦横がａ，ｂで交差点濃度がｙに相当する。
ｚ３９３−ａは、ブラシパターンのビットマップの記載例である。画像が印刷物のようにＲＧＢチャンネルしか使用できない場合は、ｚ３９３−ｂのようにαチャンネルを別プロパティとして与えればよい。
【００４６】  以下にレシピを新規に作成、または編集する方法について説明する。
【００４７】  ブラシパターンはファイルまたは画像入力デバイスから入力し、クロマキーによる切り抜きやタッチパネル等を用いた手動操作により透明度情報を設定する。
【００４８】  運行データと、塗装条件データと色変換データはキーボード、タッチパネル等のデバイスのＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）により入力する。
【００４９】  レシピを更新したら、レシピ全体を入力した場合と同様に、描画プログラムのプロパティを更新して描画処理を行い、出力画像をタッチパネル等のデバイスに表示してフィードバックする。
【００５０】  この工程を繰り返してレシピを完成させ、保存する。
【００５１】  なお、保存したレシピに記載されたすべてのデータはデジタルデータであるため、その組み合わせから一意に決定されるハッシュ値を計算できる。即ち構成された画風に対応するＩＤナンバーを付与することができ、公開鍵暗号を用いてＩＤナンバーに電子署名を行うことで、署名されていないレシピの使用だけに何らかの制約を課すことができ、利用者は傑作ができた時だけ代金を支払いシステム提供者の署名を得ることで制限の解除を受けるというビジネス方法が可能である。
【００５２】  図４は本発明の実施の形態における処理手順を示すフローチャートである。
【００５３】  以下では、レシピとそのデータはメモリに読み込まれ参照可能な状態になっているものとして説明する。
【００５４】  ｓ１．画像レイヤーを初期化する。
出力レイヤーは白く塗って初期化する。要望があれば他の色で塗ってもよい。
ＲＧＢからＨＳＶへの色座標変換や微分値（エッジ情報）等はこのステップで計算し、結果を作業レイヤーにキャッシュして再利用することで処理を高速化できる。
【００５５】  ｓ２．レシピから順次１スキャン処理分のデータ（ブラシパターンと、運行データと、塗装条件データと、色変換データ）を取り出し、それぞれのデータ要素毎に対応する描画プログラムのプロパティに内容を設定する。
【００５６】  この設定処理は、ブラシパターンの場合は描画プログラムが参照する画像リソースの入れ替えに相当し、色変換データがテーブルの場合は１次元配列の設定、運行データ等の数値ならパラメータ値の設定に相当する。
【００５７】  なお、プロパティにはすべてデフォルト値が定義されているため、必ずしもすべてのプロパティが再設定される必要はない。
【００５８】  ｓ３．画像レイヤーをブラシの運行データに基づいてスキャン処理する。
ブラシパターンは運行上の位置を中心としたピクセル単位のブラシ座標列に展開する。
なお、運行データにブラシ展開用の座標変換パラメータを追加し、ブラシパターンの拡大、回転、変形等を行ってもよい。
【００５９】  ｓ４．入力レイヤーと作業レイヤーのブラシ座標列のそれぞれの位置から値を取り出し、レイヤー毎に平均値と分散値を計算する。
【００６０】  ｓ５．塗装条件データが指定する許容範囲内に、ｓ４の平均値と分散値がそれぞれ収まっている場合は塗装を行い、そうでない場合は塗装をスキップしてｓ８へ進む。
【００６１】  ｓ６．ｓ４で計測した平均値に色変換データに基づく変換処理を施し、描画色を算出する。変換データが省略されている部分はその変換処理をスキップしてもよい。
【００６２】  ｓ７．出力レイヤーのブラシ座標列の位置に描画色を設定する。
【００６３】  この際、ブラシパターンの明度情報を描画色とブレンドすることでブラシを立体的に描画する。ブラシパターンに彩度情報が指定されている場合は彩度も描画色にブレンドする。
【００６４】  ｓ８．スキャンが終了したらｓ９へ進む。終了していない場合はｓ３へ戻る。
【００６５】  ｓ９．レシピに指定されたすべてのスキャン処理を実行したら終了する。終っていない場合はｓ２へ戻る。
【００６６】  また、本発明は上述の実施の形態に限らず本発明の要旨を逸脱することなくその他種々の構成を採り得ることはもちろんである。
【図面の簡単な説明】
【００６７】
【図１】本発明の実施形態に係るシステムを示すシステム構成図である。
【図２】本発明の実施の形態におけるレシピの概念図である。ｄ０２  レシピ全体の概念図である。ｄ０２−１  ブラシパターンの概念図である。ｄ０２−２  運行データの概念図である。ｄ０２−３  塗装条件データの概念図である。ｄ０２−４  色変換データの概念図である。ｄ０３  データが設定される描画プログラムのプロパティの概念図である。
【図３】本発明の実施の形態における画像に記録したレシピの構造図である。
【図４】本発明の実施の形態における処理手順を示すフローチャートである。
【図５】本発明の実施の形態における処理過程を示す実施例である。ｓｓ−１  １回目のスキャン処理終了時の出力画像である。ｓｓ−２  ２回目のスキャン処理終了時の出力画像である。ｓｓ−３  ３回目のスキャン処理終了時の出力両像である。ｓｓ−４  ４回目のスキャン処理終了時の出力画像である。ｓｓ−５  ５回目のスキャン処理終了時の出力画像である。ｓｓ−６  ６回目のスキャン処理終了時の出力画像である。
【符号の説明】
【００６８】１０１          レシピ入力部
１０２          画像入力部
１０３          記憶部（ＲＡＭ）
１０４          制御部（ＣＰＵ）
１０５          画像出力部
ｄ０２          レシピの構造
ｄ０２−１      ブラシパターン
ｄ０２−２      運行データ
ｄ０２−３      塗装条件データ
ｄ０２−４      色変換データ
ｄ０３          描画プログラムと設定可能プロパティ
ｚ３１１        レシピ画像のヘッダーアイコン
ｚ３１２        レシピ画像のクラスグループ
ｚ３２１        レシピ画像のクラスアイコン
ｚ３２２        レシピ画像のプロパティグループ
ｚ３３１        レシピ画像のプロパティアイコン
ｚ３３２        レシピ画像のプロパティ値
ｚ３９１−ａ    レシピ画像の数値の例
ｚ３９１−ｂ    レシピ画像の数値（負値）の例
ｚ３９２−ａ    レシピ画像のテーブル（ｙ＝ｆ（ｘ），１次元配列）の例
ｚ３９２−ｂ    レシピ画像のテーブル（ｙ＝ｆ（ａ，ｂ），２次元配列）の例
ｚ３９３−ａ    レシピ画像のビットマップの例
ｚ３９３−ｂ    レシピ画像のビットマップ（αチャンネル）の例
ｓ１            ステップ１．画像レイヤー初期化
ｓ２            ステップ２．レシピからスキャン処理を順次選択
ｓ３            ステップ３．スキャン処理
ｓ４            ステップ４．ブラシ上の色取得
ｓ５            ステップ５．塗装判定
ｓ６            ステップ６．塗装色の算出
ｓ７            ステップ７．出力レイヤーの塗装
ｓ８            ステップ８．スキャン終了判定
ｓ９            ステップ９．レシピ終了判定
ｓｓ−１        スキャン処理過程１
ｓｓ−２        スキャン処理過程２
ｓｓ−３        スキャン処理過程３
ｓｓ−４        スキャン処理過程４
ｓｓ−５        スキャン処理過程５
ｓｓ−６        スキャン処理過程６
【図１】
2017123131.tif 000003
【図２】
2017123131.tif 000004
【図３】
2017123131.tif 000005
【図４】
2017123131.tif 000006
【図５】
2017123131.tif 000007