(58)【調査した分野】(Int.Cl.,DB名)
前記設定ファイルは、前記合成された絵を生成するために前記原素材を書き込むための位置、サイズ、及び/若しくは回転角、又は、前記位置、前記サイズ、及び/若しくは前記回転角を決定するための計算方法を含む、
請求項1に記載の方法。
クライアントを介してユーザからの合成された絵の要求を受信する前に、前記絵の前記原素材のいくつかを用いて予め前記共用画像を生成するよう構成された第1の共用画像部;又は、
クライアントを介してユーザからの合成された絵の要求を受信した後に、前記要求に応じて専用画像を生成するための前記原素材のいくつかを用いて前記共用画像を生成するよう構成された第2の共用画像部;を更に備える、
請求項6に記載の装置。
前記設定ファイルは、前記合成された絵を生成するために、前記原素材を書き込むための位置、サイズ、及び/若しくは回転角のうちの少なくとも1つ、又は、前記位置、前記サイズ、及び/若しくは前記回転角のうちの少なくとも1つを決定するための計算方法を含む、
請求項6に記載の装置。
【発明を実施するための形態】
【0010】
プロモーション活動において、短時間で生成する必要のある多数の異なる絵は、通常、多くの共通要素、例えば同一の背景画像、企業ロゴ、アクティビティ名等、を有する一方で、それら絵の間の相違点は少ない。例えば、
図1には、パスワードを入力し、アリペイ(AliPay)が発行する紅包を獲得するアクティビティに用いられる2つのパスワード絵が示されているが、ここでは、2つの絵の、背景絵要素と、プロンプト(動作をするよう促す)コピーライティングとの両方が同一であり、パスワード及び情報量のみが変わっている。
【0011】
絵の上記特徴に応じて、本願の実施の形態においては、生成する必要がある絵は、複数のユーザに対し共通に用いることのできる共用画像と、ユーザに対応する専用画像との2つの部分に分けられており、これら2つの部分を組み合わせることによって絵が形成される。具体的な組み合わせ方法は多様である。例えば、専用画像を共用画像の背景上に表示したり、専用画像を共用画像の或る境界に接続したりする等である。共用画像をサービスタイプに対応させてもよく、或るタイプの複数のサービスは少なくとも一つの共用画像を含んでおり、異なるタイプのサービスによって、適用される共用画像は互いに異なる。共用画像をユーザタイプに対応させてもよく、或るタイプの複数のユーザは少なくとも一つの共用画像を含んでおり、異なるタイプのユーザによって、適用される共用画像は互いに異なる。共用画像をサービスタイプ及びユーザタイプに対応させてもよく、専用画像を一つ以上のユーザに対応させてもよい。このことは本願の実施の形態において限定されない。
【0012】
本願の実施の形態は絵の新規な合成方法を提案し、係る方法において、共用画像はサーバ側で生成され、共用画像と、専用画像を生成するためのいくつかの原素材とがクライアントにて絵に合成され、これによりサーバの絵の合成動作を軽減できるとともにクライアントに原素材を配信するために必要な帯域を削減でき、よって従来技術における課題を解決できる。この実施の形態におけるこの方法はサーバに適用され、その手順は
図2に示す通りである。
【0013】
ステップ210:クライアントを介してユーザからの絵の要求を受信する。
【0014】
ステップ220:クライアントが、受信した原素材と共用画像とを用い設定ファイルに従って、要求された絵を生成するために、絵の共用画像と、要求された絵の専用画像を生成するための原素材と、設定ファイルとを絵を要求するクライアントへ配信する。
【0015】
要求された絵の原素材のいくつかにより生成されている共用画像。クライアントでユーザに提示される必要のある多数の絵に関して、それらの絵から共通の部分が抽出され、これらの共通の部分は共用画像に分類される。留意すべきは、共用画像は全てのユーザに適用可能な共通の部分であってもよいし、一部のユーザに適用可能な共通の部分であってもよい。共用画像を除き、絵における構成部分はユーザの専用画像に相当する。
【0016】
共用画像と専用画像を分ける場合、絵を生成する際に原素材を組み合わせる便利さの度合い、及び、生成される絵の美しさの度合いも考慮してよく、これにより、複数のユーザに共通して用いることのできるいくつかの絵の要素を専用画像に分類できる。そのまま
図1におけるパスワード絵を例にとれば、言葉「紅包金額(amount of red envelope)」及び「元(ユアン、yuan)」は両方の絵に存在するが、その金額の変化に伴いその言葉の行のスペースを変更すればより整頓され美しくなるであろうことを考慮すると、言葉の全体行を専用画像に分類できる。これに対応する共用画像を
図3に示す。
【0017】
共用画像を合成するための原素材のいくつかは、絵を合成するために必要な全ての原素材の中から選択され、サーバは原素材のこのパーツを用いて共用画像を生成する。クライアントを介してユーザからの絵の要求を受信する前に、サーバは予め絵の原素材のいくつかを用いて共用画像を生成してもよい。このような方法は、ユーザによって要求される特定のコンテンツに共用画像が関連しない状況に適用可能である。また、クライアントを介してユーザからの絵の要求を受信した後に、サーバは、受信した要求に応じて絵の原素材のいくつかを用いて共用画像を生成してもよい。このような方法は、ユーザによって要求される特定のコンテンツにより共用画像が異なり得る状況に適用可能である。
【0018】
クライアントから絵の要求を受信した後、サーバは、共用画像と、要求された絵の専用画像を生成するために必要な原素材と、設定ファイルとをクライアントに配信する。この設定ファイルは、共用画像と配信された原素材とを絵に合成するために必要な操作情報を含む。すなわち、この設定ファイルは、どのようにして共用画像と他の配信された原素材とを組み合わせて絵を得るかをクライアントに通知するために用いられる。例えば、設定ファイルには、原素材及び共用画像の書き込み方法及び書き込み位置、そして原素材又は共用画像に対して実行される特定の処理等が記載され得る。別の例として、設定ファイルは、共用画像上に専用画像を生成するために原素材を書き込むステップ、並びに原素材の書き込み位置、サイズ、及び/若しくは回転角を含んでもよく、又は、書き込み位置、サイズ、及び/又は回転角を決定するための計算方法を含んでもよい。
【0019】
サーバによって配信された上記コンテンツを受信した後、クライアントは設定ファイルに従って、共用画像と受信した原素材とを合成して絵を得てもよい。クライアントの観点からは、共用画像も絵を合成するための原素材の一つであり、よってクライアントはこのような工程を実行するために従来技術の絵の合成方法を用いることができるが、これに関しては説明しない。それに加え、絵を描く際、クライアントはユーザがクライアントを介して入力したコンテンツを合成してもよい、すなわち、指定された画像(image)、及び/又は他の素材を一緒に絵中に合成してもよい。また、ユーザは、上記素材を、共用画像及び受信した原素材と共に絵に合成する方法をカスタマイズしてもよい。
【0020】
複数の異なる実用的なアプリケーションシナリオに応じて、サーバは、設定ファイルと要求された絵の専用画像を生成するための原素材とを配信する異なる複数の方法を用いてもよい。
【0021】
例えば、各ユーザに向けて、サーバはユーザが用いる設定ファイルを生成してもよく、ユーザ用に絵の専用画像を生成するために必要な原素材を生成してもよい。
【0022】
別の例として、同じ共用画像を含む複数の絵について、サーバは、これらの絵の専用画像を生成するために必要な全ての原素材と、全ての原素材に対応する複数の設定ファイルとをクライアントに配信してもよい。すなわち、サーバは同じ共用画像、原素材、設定ファイルを、異なる複数のユーザに配信する。クライアントを介してユーザからの絵の要求を受信した後、サーバはクライアントの要求に応じてユーザに対応するテキスト情報を生成し、生成したテキスト情報をクライアントに配信する。配信されたテキスト情報はユーザの専用画像を生成するのに用いられる原素材であることを示し、クライアントは設定ファイルに従ってテキスト情報に対応する原素材と共用画像とを用い、これによりユーザの絵を生成できる。テキスト情報を処理するために占用されるハードウェアリソースは画像処理のためのリソースよりも大幅に少ないので、このような方法はサーバの負荷を更に軽減する。
【0023】
いくつかのアプリケーションシナリオにおいては、クライアントにて提示される、異なるタイプのサービスの、絵の共通の特徴は互いに異なる。これらのシナリオにおいて、サーバは絵が適用されるサービスタイプに応じてサービスタイプに対応する共用画像を生成してもよく、サービスタイプに対応する共用画像と、サービスタイプに適用される絵の専用画像を生成するために必要な全ての原素材と、設定ファイルとを、サービスタイプに対応するリソースファイルパッケージにパッケージする。サービスタイプの絵の要求をクライアントから受信した後、サーバは受信した要求に応じて、サービスタイプに関するテキスト情報を生成し、生成したテキスト情報とサービスタイプに対応するリソースファイルパッケージとを、サービスタイプを要求したクライアントに配信する。設定ファイルとテキスト情報とを組み合わせ、クライアントはリソースファイルパッケージ内の共用画像と原素材のいくつかとを絵に合成する。
【0024】
本願の実施の形態において見て取れることは、本願の実施の形態において、共用画像はサーバ側で生成され、クライアントにて共用画像と原素材のいくつかとが絵に合成されるということである。よってサーバは、全てのユーザの要求を満たすにあたって少ない数の絵を生成するだけでよく、これによりサーバの負荷は著しく軽減される。また、クライアントも、絵を生成するにあたって少ない数の原素材を受信するだけでよく、これによりクライアントのトラフィック消費量が削減される。
【0025】
なお、本実施の形態におけるサーバは論理サーバであっても物理サーバであってもよく、また二つ以上の論理サーバであっても物理サーバであってもよく、これらのサーバは協働して上記方法における様々なステップを実行する。
【0026】
本願の一のアプリケーション例において、サーバ側は、2つの論理サーバ、すなわちサービスサーバ及び絵サーバを含み、サービスサーバはクライアントのサービス要求を受信及び応答するために用いられ、絵サーバは要求されたサービスタイプに対応するリソースファイルパッケージを生成及びクライアントに配信するために用いられる。
【0027】
絵サーバ上では、各サービスタイプにより用いられる絵について、絵の共用画像と専用画像とが分けられており、サービスタイプに対応する共用画像が予め生成される。そして、絵サーバは、或るサービスタイプの絵の専用画像を生成するために必要な全ての原素材と、サービスタイプに対応する共用画像と、これらの原素材及び共用画像に関する設定ファイルとを、そのサービスタイプに対応するリソースファイルパッケージにパッケージし、そこに格納する。
【0028】
アリペイ(AliPay)紅包のサービスタイプのパスワード絵を例にとれば、絵サーバ上でサービスタイプに対して生成されるリソースファイルパッケージの構成は
図4に示す通りであり、ここでbg.jpgは全てのユーザパスワード絵の共用画像であり、configは設定ファイルであり、その他のファイルはパスワード絵の専用画像を生成するために必要な全ての原素材であり、専用画像で用いることのできる各漢字及び記号は画像形式の一つの原素材である。
【0029】
図5は、合成された絵が生成される際のクライアントとサーバとの処理手順を示し、ここでユーザは、クライアントを介してサービスサーバに対する或るサービスタイプの絵の要求を開始し、サービスサーバは、クライアントから送信された要求を受信した後、リソースファイルパッケージを配信する指示を絵サーバに送信し、指示はリソースファイルパッケージのサービスタイプと配信のためのクライアントのアドレスとを含み、サービスサーバは、クライアントの要求に応じて、ユーザに対応するテキスト情報を生成し、これをクライアントに返送する。絵サーバはサービスサーバの指示を受信し、指示内のサービスタイプに対応するリソースファイルパッケージを指示内のクライアントに配信する。クライアントは、サービスサーバからテキスト情報を受信し絵サーバからリソースファイルパッケージを受信した後、完成絵を生成しこれをユーザに提示する。
【0030】
一の実施例において、クライアントを介してユーザがアリペイ紅包のパスワード絵をサービスサーバに要求したと想定した場合、サービスサーバは「紅包金額0-9元」及び「password=85599」を含むテキスト情報を生成し、これをクライアントへ配信する。絵サーバからクライアントへ配信されるリソースファイルパッケージでは、configファイルは以下のコンテンツを含む:
“width”:640,
“height”:1136,
“fonts”:{
“0”:{
“path”:”0.png” //数字”0”に対応する原素材は0.pngである
},
“紅”:{
“path”:”10.png” //漢字”紅”に対応する原素材は10.pngである
},
},
“variables”:{
“password”:{
“type”:”text”,
“x”:110, //”password”の行の始点x座標
“y”:740, //”password”の行の始点y座標
“angle”:0, //”password”の行の文字列の傾斜角
“length”:420, //”password”の文字列の長さ
“rotate”:0, //”password”の行の単一の文字がランダムに回転し得る最大角度
“fongColor”:“oxff59493f” //”password”の行の文字列の色
},
}
【0031】
クライアントは、テキスト情報中の「紅包金額0-9元」に応じて、設定ファイル内の各文字、数字、又は記号に対応する原素材を見つけ、設定ファイル内の指定された位置及びサイズに応じて原素材を共用画像上に書き込む。テキスト情報中の「password=85599」について、パスワードに関する設定ファイル内の指定された位置及び書き込みフォーマットに応じて「85599」が共用画像上に書き込まれる。
図6に、クライアントにて合成された絵を示す。
【0032】
設定ファイルにおいては、原素材を書き込むための位置、サイズ、回転角等の因子の計算方法が更に指定されていてもよい。例えば、(x,y)を始点とし、長さをlengthとし、傾斜角(X軸との挟角)をangleとして直線上にN個の文字を含む文字列を書き込む、i番目の文字に対応する原素材画像の中央位置は、設定ファイルにおいて:
として指定でき、各文字が書き込まれる際の原素材画像のサイズは:
として指定でき、各文字がランダムに或る角度だけ回転することが望ましいのであれば、各文字が書き込まれる際の原素材画像の回転角は:
として指定でき、式中rotateは直線の傾斜角に基づいて各文字の原素材画像がランダムに回転し得る最大角度である。
【0033】
上記手順に対応して、本願の実施の形態は絵合成装置を更に提供する。この装置はソフトウェアを用いて実装でき、ハードウェアまたはソフトウェアとハードウェアとの組み合わせを用いても実装できる。論理的な意味での装置として、ソフトウェアによる実装を例にとれば、それはコンピューティングデバイスのCPU(Central Processing Unit)によって構成され、対応するコンピュータプログラムの指示をメモリに読み出し実行するために設けられる。ハードウェアのレベルからは、合成絵を生成するための装置を備えるデバイスは、通常、
図7に示すCPUとメモリと非揮発性メモリとに加え、ネットワーク通信機能を実装するためのボードカード等、他のハードウェアを更に含む。
【0034】
図8は、本願の実施の形態により提供され、サーバに適用される絵合成装置を示す。この装置を機能面で分けると、要求受信部と素材応答部とを含むことになり、要求受信部はクライアントを介してユーザからの絵の要求を受信するように構成されており、素材応答部は、絵の共用画像と、絵の専用画像を生成するための原素材と、設定ファイルとを、クライアントが受信した原素材と、絵の原素材のいくつかにより生成された共用画像とを用いて設定ファイルに基づき絵を生成するために、クライアントに配信するように構成されている。
【0035】
必要に応じて、装置は、要求に応じてユーザに対応するテキスト情報を生成しクライアントに配信するよう構成されたテキスト応答部を更に含み、テキスト情報は、クライアントがテキスト情報に対応する原素材と共用画像とを用いて設定ファイルに従って絵を生成するのに用いられる。
【0036】
必要に応じて、共用画像には、絵が適用されるサービスタイプに応じて原素材のいくつかを用いて生成された、且つサービスタイプに対応する共用画像を含み;装置は、サービスタイプに対応する共用画像と、サービスタイプに適用される専用画像を生成するために必要な全ての原素材と、設定ファイルとを、リソースファイルパッケージにパッケージするよう構成されたリソースファイルパッケージ生成部を更に含み;素材応答部は、具体的には、サービスタイプを要求するクライアントへリソースファイルパッケージを配信するように構成されている。
【0037】
必要に応じて、装置は第1の共用画像部又は第2の共用画像部を更に備え、第1の共用画像部は、クライアントを介してユーザからの絵の要求を受信する前に、絵の原素材のいくつかを用いて予め共用画像を生成するよう構成されており、第2の共用画像部は、クライアントを介してユーザからの絵の要求を受信した後に、要求に応じて絵の原素材のいくつかを用いて共用画像を生成するよう構成されている。
【0038】
必要に応じて、設定ファイルは、共用画像上に専用画像を生成するための原素材を書き込むための位置、サイズ、及び/若しくは回転角、又は、位置、サイズ、及び/若しくは回転角を決定するための計算方法を含む。
【0039】
以上の記載は本願の好適な実施の形態にすぎず、本願を限定することを意図するものではない。本願の趣旨及び原理の範囲内の変形例、均等物交換、改良は全て本願の保護の範囲に包含される。
【0040】
典型的な構成では、コンピューティングデバイスは一つ以上のプロセッサ(CPU)、入/出力インターフェース、ネットワークインターフェース及びメモリを含む。
【0041】
メモリは、非永久的メモリ、ランダムアクセスメモリ(RAM)、及び/又は、コンピュータで読取可能な媒体内の不揮発性メモリ(例えば、読取り専用メモリ(ROM)又はフラッシュメモリ(フラッシュRAM))などを含んでよい。メモリはコンピュータ可読媒体の一例である。
【0042】
コンピュータで読取り可能な媒体は、永久的又は非永久的なリムーバブル及び非リムーバブル媒体を備え、また、任意の方法あるいは技術によって情報記憶装置を実現することができる。情報はコンピュータで読取り可能な命令、データ構造、プログラムモジュール又はその他のデータであってよい。
【0043】
コンピュータの記憶媒体の例は、例えば、相変化メモリ(PRAM)、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、その他のタイプのランダムアクセスメモリ(RAM)、読出し専用メモリ(ROM)、電気的消去再書込可能な読出し専用メモリ(EEPROM)、フラッシュメモリ又はその他のメモリ技術、コンパクトディスク読取り専用メモリ(CD−ROM)、デジタル多目的ディスク又はその他の光学記憶装置、磁気カセットテープ、磁気テープ及び磁気ディスク記憶デバイス又はその他の磁気記憶デバイス、あるいは任意のその他の非伝送媒体を非限定的に含み、これらはコンピューティングデバイスによってアクセス可能な情報を保存するために使用できる。本明細書での定義によれば、コンピュータ可読媒体は、変調データ信号及び搬送波のような一時的な媒体を含まない。
【0044】
さらに、用語「含む」、「備える」又はこれらのその他のあらゆる適用形は、非排他的な包含をカバーするものであるため、一連の要素を含む工程、方法、商品、デバイスは、このような要素を含むだけでなく、明記されていないその他の要素をも含むか、あるいは、その工程、方法、商品、デバイスに固有のすべての要素をさらに含むことができる点にも留意する必要がある。さらなる限定がなければ、表現「を備える〜(comprising a/an…)」によって限定される要素は、その要素含む工程、方法、商品、デバイスに存在しているその他の同一の要素を除外するものではない。
【0045】
本願の実施の形態は方法、システム、コンピュータプログラム製品としての提供が可能であることを、当業者は理解するだろう。したがって、本願は、完全なハードウェアの実施の形態、完全なソフトウェアの実施の形態、又はソフトウェアとハードウェアを組み合わせた実施の形態を採用できる。さらに、本願は、一つ以上のコンピュータで使用可能な記憶媒体(ディスクメモリ、CD−ROM、光学メモリなどを非限定的に含む)上で実施できるコンピュータプログラム製品(コンピュータ使用可能プログラムコードを含む)の形態を採用することが可能である。