本発明は、テキストを画像データに合成するテキスト合成処理システムに関する。特にそのテキスト合成処理システムを、携帯電話、PHS、PDA、スマートフォンなどの可搬型通信端末で用いる場合に関する。
近年、多くの人が可搬型通信端末を所持しており、通話機能のほか、電子メール機能を利用している。この電子メール機能としては、単にテキストデータを送受信する電子メールのほか、cHTML形式で電子メールを送受信することによって、電子メールの背景、文字の色や大きさを変更したり、文字を点滅、左右に移動させる、あるいはフレームの中に文字を入力するなど、様々な演出効果を伴う電子メールを送受信することが出来る。このような装飾された電子メールは、文字だけのメールよりも自らの感情などを表現豊かに伝えることが出来るとともに、華やかさを演出できるなどの効果があることから、広く普及しつつある。
この装飾された電子メールのサービスは、各携帯電話会社によって提供されており、例えば株式会社エヌ・ティ・ティ・ドコモによって提供されるデコメールサービスなどがある。このデコメールサービスの仕組みは、下記非特許文献1及び非特許文献2などに開示されている。
株式会社エヌ・ティ・ティ・ドコモ、"デコメールサービスの仕組み"、[online]、<URL: http://www.nttdocomo.co.jp/service/imode/make/content/deco_mail/mechanism/>
大和 哲、"デコメールとは"、[online]、インプレス株式会社、インターネット<URL: http://k-tai.impress.co.jp/cda/article/keyword/17872.html>
しかし上述のような従来の装飾された電子メール機能を用いたとしても、電子メールの背景の画像に、通常のフォントを組み合わせているだけなので、文字や絵文字のみの電子メールよりは装飾が施されているもののまだ十分とは言えない。これは、メッセージを入力可能な領域が背景ごとに定められており、更に、メッセージの文字は、予め定められた行に従って表示されることに起因している。
そのためその入力可能領域以外の領域にメッセージを表示させることは行えず、例えば背景が砂浜の画像データに、砂浜に文字を書いたようにメッセージを表示させたり、背景が壁の画像データに、メッセージをその壁に沿って表示させるようなことは行えない。そのため、装飾性や演出効果に欠けている。
本発明者は上記課題に鑑み、従来の装飾された電子メール機能よりも、より演出効果の高い電子メールを送信することが出来るテキスト合成処理システム及びそれを備える可搬型通信端末を発明した。
第1の発明は、画像データにテキストを合成するテキスト合成処理システムであって、前記テキスト合成処理システムは、画像データと、その画像データに合成させるテキストを表示させるフォント、表示位置、表示方向、表示サイズ、回転位置のうちいずれか一以上の情報とが対応づけられており、テンプレートとして記憶している画像データ記憶部と、ユーザによって選択されたテンプレートの画像データを前記画像データ記憶部から取得する画像データ取得部と、前記画像データに合成させるテキストの入力を受け付けるテキスト入力受付部と、前記選択されたテンプレートにおける表示位置、表示方向、表示サイズ、回転位置のうちいずれか一以上の情報に基づいて、前記テンプレートにおけるフォントの情報に基づくグリフデータで前記テキストを前記画像データに合成し、所定の記憶装置に記憶させる合成画像保存処理部と、を有するテキスト合成処理システムである。
本発明のように構成することで、ユーザは容易に、画像データにメッセージであるテキストを合成することが可能となる。この画像データを電子メールで送信すれば、装飾性及び演出効果の高い電子メールを送信することが出来る。
第2の発明は、画像データにテキストを合成するテキスト合成処理システムであって、前記テキスト合成処理システムは、前記画像データを取得する画像データ取得部と、前記画像データに合成させるテキストの入力を受け付けるテキスト入力受付部と、前記テキストに含まれるグリフデータの種類の数に基づいて、前記テキストのグリフデータの解像度を設定するフォント処理部と、前記フォント処理部で設定された解像度のグリフデータで、前記画像データに前記グリフデータを合成し、所定の記憶装置に記憶させる合成画像保存処理部と、を有するテキスト合成処理システムである。
第3の発明は、画像データにテキストを合成するテキスト合成処理システムであって、前記テキスト合成処理システムは、前記画像データを取得する画像データ取得部と、前記画像データに合成させるテキストの入力を受け付け、前記テキストの表示位置、表示方向、表示サイズ、回転位置のいずれか一以上の情報を決定するテキスト処理部と、前記テキストに含まれるグリフデータの種類の数に基づいて、前記テキストのグリフデータの解像度を設定するフォント処理部と、前記テキスト処理部で決定した情報に基づいて、フォントのグリフデータで前記テキストを前記画像データに合成し、所定の記憶装置に記憶させる合成画像保存処理部と、を有しており、前記テキスト処理部は、前記フォント処理部で設定された解像度のグリフデータを、前記画像データにレンダリングして表示装置に表示させる、テキスト合成処理システムである。
ユーザは自由にテキストを入力することから、テキストがすべてのグリフデータを使用する可能性もある。そしてユーザの入力に従って、それらのグリフデータが高速に再描画される必要があるが、このような処理を行うには、フォント処理に使用するメモリに容量が必要となる。しかし、容量に限定があるメモリを使用している可搬型通信端末などの場合では、すべてのグリフデータを展開してしまうと、上記を行えない問題点がある。そこで本発明の処理を行うことで、フォントに対するメモリの使用量を一定限度に抑え、上述の問題点を解消することが出来る。
本発明のテキスト合成処理プログラムを可搬型端末で実行することによって、第1の発明を実現することが出来る。すなわち、画像データと、その画像データに合成させるテキストを表示させるフォント、表示位置、表示方向、表示サイズ、回転位置のうちいずれか一以上の情報とが対応づけられており、テンプレートとして記憶している記憶装置を備える可搬型端末を、ユーザによって選択されたテンプレートの画像データを前記記憶装置から取得する画像データ取得部、前記画像データに合成させるテキストの入力を受け付けるテキスト入力受付部、前記選択されたテンプレートにおける表示位置、表示方向、表示サイズ、回転位置のうちいずれか一以上の情報に基づいて、前記テンプレートにおけるフォントの情報に基づくグリフデータで前記テキストを前記画像データに合成し、所定の記憶装置に記憶させる合成画像保存処理部、として機能させるテキスト合成処理プログラムのように構成することが出来る。
本発明のテキスト合成処理プログラムを可搬型端末で実行することによって、第2の発明を実現することが出来る。可搬型端末を、画像データを取得する画像データ取得部、前記画像データに合成させるテキストの入力を受け付けるテキスト入力受付部、前記テキストに含まれるグリフデータの種類の数に基づいて、前記テキストのグリフデータの解像度を設定するフォント処理部、前記フォント処理部で設定された解像度のグリフデータで、前記画像データに前記グリフデータを合成し、所定の記憶装置に記憶させる合成画像保存処理部、として機能させるテキスト合成処理プログラムのように構成することが出来る。
本発明のテキスト合成処理プログラムを可搬型端末で実行することによって、第3の発明を実現することが出来る。可搬型端末を、画像データを取得する画像データ取得部、前記画像データに合成させるテキストの入力を受け付け、前記テキストの表示位置、表示方向、表示サイズ、回転位置のいずれか一以上の情報を決定するテキスト処理部、前記テキストに含まれるグリフデータの種類の数に基づいて、前記テキストのグリフデータの解像度を設定するフォント処理部、前記テキスト処理部で決定した情報に基づいて、フォントのグリフデータで前記テキストを前記画像データに合成し、所定の記憶装置に記憶させる合成画像保存処理部、として機能させるテキスト合成処理プログラムであって、前記テキスト処理部は、前記フォント処理部で設定された解像度のグリフデータを、前記画像データにレンダリングして表示装置に表示させる、テキスト合成処理プログラムのように構成することが出来る。
また上述の各発明のテキスト合成処理プログラムは、可搬型通信端末に備えることが好ましい。
また、前記可搬型通信端末は、前記テキスト合成処理プログラムにおいて生成した合成画像データを、電子メールのデータとして送信する電子メール処理部を備える、可搬型通信端末であることが好ましい。
本発明の可搬型通信端末のテキスト合成処理システムにより生成された合成画像データを電子メールとして送信することによって、従来の装飾された電子メールよりも、装飾性が高く、且つ演出効果の高い電子メールを実現することが出来る。
本発明の可搬型通信端末1のハードウェア構成の一例を図1に示す。本発明の可搬型通信端末1では、プログラムの演算処理を実行するCPUなどの演算装置10と、情報を記憶するRAMやROMなどの記憶装置11と、ディスプレイなどの表示装置12と、キーパッドやキーボードなどの文字や数字、記号などの入力を行う入力装置13と、演算装置10の処理結果や記憶装置11に記憶する情報をインターネットなどのネットワークを介して送受信する通信装置14と、撮像装置15と、可搬型通信端末1における傾き方向、傾き量などを検出する動き検出装置16などを有している。
動き検出装置16は、可搬型通信端末1に備えられた加速度センサーや傾きセンサー、ジャイロなどが一例としてある。つまり可搬型通信端末1が傾けられた方向やその傾き量などを検出する装置であれば如何なるものであっても良い。また上記のようなセンサーやジャイロのほか、可搬型通信端末1の外側または内側に備えられた撮像装置15で撮像したデータを用いて、可搬型通信端末1の傾けられた方向や傾き量などを検出しても良い。この場合、撮像装置15で撮像した画像データに基づいて、傾き方向や傾き量などが所定の処理プロセスによって処理されることで、動き検出装置16を実現する。
また本発明の可搬型通信端末1に備える、ユーザの入力したテキストと背景の画像データとを合成処理するテキスト合成処理システム2(以下、「テキスト合成処理システム2」)は、可搬型通信端末1において、所定のプログラムやモジュールが実行されることにより実現される。本発明における各手段は、その機能が論理的に区別されているのみであって、物理上あるいは事実上は同一の領域を為していても良い。
可搬型通信端末1の演算装置10で実行されるテキスト合成処理システム2は、画像データ記憶部3と画像データ取得部4とテキスト処理部5と合成画像保存処理部6と合成画像データ記憶部7とを有する。図2にテキスト合成処理システム2の機能構成の一例を模式的に示す。
画像データ記憶部3は、電子メールで送信する際の背景となる画像データ、特に好ましくは可搬型通信端末1の撮像装置15で撮像した画像データを記憶する。なお撮像装置15で撮像した画像データのみならず、ウェブサイトからダウンロードした画像データ、ほかのコンピュータ端末や可搬型通信端末1から受信した画像データなどであっても良い。また予め記憶された画像データであっても良い。
画像データ取得部4は、テキスト合成処理システム2で用いる、背景となる画像データを画像データ記憶部3から取得する。
テキスト処理部5は、画像データ取得部4で取得した、背景となる画像データに合成する、テキストやそのフォント、テキストの表示位置、表示方向、表示サイズ、回転位置、色などの情報にかかる処理を実行する。テキスト処理部5は、更に、テキスト入力受付部51とフォント選択受付部52と位置決定処理部53と方向決定処理部54とサイズ決定処理部55と回転位置決定処理部56とカラー決定処理部57とを有する。図3にテキスト処理部5の機能構成の一例を模式的に示す。なお本明細書において「テキスト」とは文字以外にも、数字、記号、特殊記号、絵文字など、電子メールのメッセージに使用可能な情報であれば如何なるものであっても良い。
合成画像保存処理部6は、テキスト処理部5で処理したテキストの表示位置などの情報に基づいて、そのテキストのグリフデータを、画像データ取得部4で取得した画像データに合成処理し、それを合成画像データとして後述する合成画像データ記憶部7に記憶させる。
合成画像データ記憶部7は、合成画像保存処理部6において保存させた合成画像データを記憶する。ここで保存した合成画像データが電子メールのデータとして、送信先に送信される。
上述のテキスト処理部5におけるテキスト入力受付部51は、画像データ取得部4で取得した画像に合成するテキストの入力を、可搬型通信端末1の入力装置13から受け付ける。ここで入力を受け付けたテキストのグリフデータがメッセージとして画像データに合成される。
フォント選択受付部52は、テキスト入力受付部51で受け付けたテキストのフォントの選択を受け付ける。ここで選択されたフォントのグリフデータによりテキストが画像データに合成される。
位置決定処理部53は、入力されたテキストをどの位置で合成するか、の表示位置の決定処理を行う。この表示位置の決定処理の際には、入力装置13で入力された情報によってテキスト位置を上下左右に変更したり、可搬型通信端末1を前後左右に傾けることによって動き検出装置16でその傾き方向や傾き量を検出し、その検出した傾き方向や傾き量に応じてテキスト位置を上下左右に変更する。
方向決定処理部54は、位置決定処理部53において表示位置を決定したテキストについて、その表示方向の決定処理を行う。この表示方向の決定処理の際には、入力装置13で入力された情報によってテキストの表示方向を変更したり、可搬型通信端末1を前後左右に傾けることによって動き検出装置16でその傾き方向や傾き量を検出し、その検出した傾き方向に傾き量に応じて、テキストの表示方向を変更する。例えば可搬型通信端末1を前方向に傾けることによって、テキストの中心点が回転の中心点となり、前方向に傾けられる。また右方向に傾けた場合には、テキストの中心点から右方向に傾けられる。
サイズ決定処理部55は、位置決定処理部53、方向決定処理部54で表示位置、表示方向を決定したテキストについて、テキストの表示サイズの決定処理を行う。表示サイズの決定処理の際には、入力装置13で入力された情報によって表示サイズを上下左右方向に伸縮したり、可搬型通信端末1を前後左右に傾けることによって動き検出装置16でその傾き方向や傾き量を検出し、その検出した傾き方向に傾き量に応じて、表示サイズを上下左右方向に伸縮させる。
回転位置決定処理部56は、位置決定処理部53、方向決定処理部54、サイズ決定処理部55で表示位置、表示方向、表示サイズを決定したテキストについて、テキストを回転させ、その位置を決定する処理を行う。回転位置の決定処理の際には、入力装置13で入力された情報によってテキストの中心点を回転の中心点として、テキストを時計回りまたは反時計回りに回転させたり、可搬型通信端末1を前後左右に傾けることによって動き検出装置16でその傾き方向や傾き量を検出し、その検出した傾き方向に傾き量に応じて、テキストの中心点を回転の中心点として、テキストを時計回りまたは反時計回りに回転させる。
カラー決定処理部57は、上述のテキストに対する各処理について、テキストのフォントが色つきであるかどうかを判定し、色つきでない場合には、テキストの色度、彩度及び明度を決定する処理を行う。この処理の際には、入力装置13で入力された情報によってテキストの色度、彩度及び明度を変更させたり、可搬型通信端末1を前後左右に傾けることによって動き検出装置16でその傾き方向や傾き量を検出し、その検出した傾き方向に傾き量に応じて、テキストの色度、彩度及び明度を変更させる。ここで、色度、彩度及び明度を決定するにあたり、HSV色空間を用いて値を指定しても良いし、それ以外の方法、例えばRGB色空間、HLS色空間などを用いて値を指定しても良い。
なおテキスト処理部5における各処理手段の実行順番は任意であり、またそのすべてを実行せずとも、一部のみを実行しても良い。
次に本発明の可搬型通信端末1を用いてテキスト合成処理システム2を機能させ、装飾された電子メール(以下、「電子メール」という)を送信する場合の一例を模式的に示す。
なお以下の説明においては可搬型通信端末1が携帯電話機である場合を説明するが、それ以外にも、PHS、PDA、スマートフォンなどの端末であっても良い。
携帯電話機の利用者(ユーザ)は、携帯電話機に備えられた撮像装置15などで、電子メールの背景として使用する画像データを撮像する。撮像装置15で撮像した画像データは、携帯電話機の記憶装置11における画像データ記憶部3に記憶される。なお画像データ記憶部3には、電子メールの背景として使用する画像データのほか、使用しない画像データが記憶されていても良い。つまり、撮像した画像データ、携帯電話機で取得した画像データなどが記憶されていればよい。
そしてユーザが本発明のテキスト合成処理システム2により電子メールを送信する場合には、携帯電話機の入力装置13を用いて所定の操作を行うことによって、テキスト合成システムを起動させる。この際に表示されるメニュー画面の一例が図5である。
なお図5の画面において、「オリジナル背景」とは、上述のように、背景として使用する画像データを先に撮像装置15で撮像するのではなく、「オリジナル背景」を選択することによって撮像装置15を起動させて撮像することによって、当該撮像した画像データが画像データ記憶部3に記憶されるとともに、背景画像として使用可能なように選択されるメニューである。また「データフォルダ」とは、上述のように予め撮像した画像データや、携帯電話機で取得した画像データなど、画像データ記憶部3に予め記憶されていた画像データを、背景として使用する場合のメニューである。「くも」「すなはま」とは、「くも」や「すなはま」の画像データとそれに対応するフォントの情報、テキストのグリフデータを合成する際の表示位置などの必要な情報が予め記憶されており、テンプレートとしてそれらを使用する場合のメニューである。「その他背景(ダウンロード)」とは、背景として使用する画像データを任意のウェブサイトからダウンロードして画像データ記憶部3に記憶させる場合のメニューである。
上述のように本実施例では、先に携帯電話機の撮像装置15で画像データを撮像し、その撮像した画像データの中から、背景として使用する画像データを選択する場合なので、ユーザは、図5のメニュー画面から「データフォルダ」を選択することで、背景として使用する画像データを選択する。
ここで背景として使用する画像データが選択されると、受け付けた選択に基づいて、画像データ取得部4が、当該選択された画像データを画像データ記憶部3から取得する(S100)。つまり画像データ記憶部3に記憶されている、選択された画像データをロードすることとなる。
画像データ取得部4は、画像データ記憶部3から選択された画像データを取得(ロード)する場合、ロード対象として選択された画像データの縦あるいは横のサイズが携帯電話機の表示装置12の解像度より大きい場合、縦、横とも表示装置12の解像度以下になるようにアスペクト比を維持して縮小した画像データとしてロードする。また逆に、ロード対象として選択された画像データの縦、横のサイズが携帯電話機の表示装置12におけるアプリケーション表示領域(表示装置12の表示領域から、ピクト領域などの携帯電話機のバッテリー残量、電波状況などを示す表示領域を除いた領域。アプリケーションの表示に用いる領域)よりも大きい場合には、画像データをセンタリングしてロードする。
また本実施例では画像データを画像データ記憶部3から取得する場合であったが、図5のメニュー画面において、「オリジナル背景」のように撮像装置15を起動させて撮像する場合には、その撮像時の画像データの解像度を表示装置12の解像度と同一に設定した上で撮像し、その撮像した画像データを画像データ記憶部3に記憶させることがよい。
以上のように画像データ取得部4は、電子メールの背景として使用する画像データを取得(ロード)する。背景として選択された画像データが図6であるとする。
次に、背景に合成するテキストにかかる処理をテキスト処理部5で実行する。まず、背景の画像データに合成するテキストの入力を行う。これは画像データ取得部4において背景として使用する画像データが選択されると、テキスト入力受付部51は、図7に示すようにメッセージ入力を促す画面を表示させ、ユーザが入力装置13から何らのボタン等を押下することによって、図8に示すテキストエディタを起動させる。そしてこのテキストエディタに、ユーザは、入力装置13からメッセージを入力する。ここで入力されたメッセージは、テキスト入力受付部51で受け付ける(S110)。例えば「こんにちは」と入力したとすると、それをテキスト入力受付部51が受け付ける。
このようにしてメッセージとするテキストの入力を受け付けると、フォント選択受付部52は、入力したテキストのフォントの選択を受け付ける(S120)。これはテキスト入力受付部51でテキストを受け付けると、フォント選択受付部52は、図9に示すようにフォント選択を促す画面を表示させ、当該背景の画像データに対して使用可能なフォントで、入力されたテキストのグリフデータを表示する(つまり入力したテキストを、使用可能なフォントのグリフデータでレンダリングして表示する)。この状態を示す画面が図10である。
この際に使用可能なフォントは、予め記憶装置11に記憶されていることが好ましい。またここでは使用可能なフォントとして2種類の場合を説明したが、3種類以上であっても良い。
使用可能なフォントのうち、ユーザは使用したいフォントを入力装置13から選択する(例えば上下キーを上下することで選択する)ことで、その選択をフォント選択受付部52で受け付け、選択されたフォントの識別情報(例えばフォント名など)を記憶する。
使用するフォントが選択されると、次に、テキストの表示位置を決定する処理を位置決定処理部53で行う(S130)。これはフォント選択受付部52で使用するフォントの選択を受け付けると、当該フォントのグリフデータでレンダリングしたテキストを、背景となる画像データの中心に表示させ、それとともに、図11に示すようなテキストの表示位置の決定を行うことを促す画面を表示する。なおS130以降のテキストに対する処理については、S120で選択されたフォントのグリフデータでレンダリングされたテキストに対する処理を説明しているが、単に「テキスト」との記載であっても「S120で選択されたフォントのグリフデータでレンダリングされたテキスト」に対する処理である。
そしてユーザが携帯電話機を前後左右に傾けることで、その傾き方向、傾き量を動き検出装置16が検出する。そして、その傾き方向、傾き量の情報を動き検出装置16から位置決定処理部53が受け付けることによって、傾き方向、傾き量に応じて、当該テキストの表示位置を上下左右方向に移動させる。例えばユーザが携帯電話機を前方向に傾けた場合、テキストの表示位置は上方向に移動し、ユーザが携帯電話機を右方向に傾けた場合、テキストの表示位置は右方向に移動する。
図12はテキストの表示位置が初期状態(中心)の場合を示しており、図13は、図12の状態からユーザが携帯電話機を前方向に傾けたことによって、テキストの表示位置が上方向に移動したことを示す。
なお携帯電話機を傾けることでその傾き方向、傾き量に応じて表示位置を決定するほか、入力装置13において上下左右方向が入力され、その入力を位置決定処理部53で受け付けることによって当該テキストの表示位置を上下左右方向に移動させても良い。
このようにしてユーザによって入力されたテキストの表示位置の情報、例えば画像データにおけるテキストの表示位置の相対座標の情報を記憶する。
背景の画像データにおけるテキストの表示位置を決定すると、次にそのテキストの表示方向を決定する処理を方向決定処理部54で行う(S140)。これはまず、位置決定処理部53でテキストの表示位置を決定すると、図14に示すようなテキストの表示方向の決定を行うことを促す画面を表示する。
そしてユーザが携帯電話機を前後左右に傾けることで、その傾き方向、傾き量を動き検出装置16が検出する。そして、その傾き方向、傾き量の情報を動き検出装置16から方向決定処理部54が受け付けることによって、傾き方向、傾き量に応じて、当該テキストの表示方向を変更する。
つまり、テキストの中心点を回転の中心点として、前方向に傾けられた場合にはx軸上から負の方向をみて時計回り、後ろ方向に傾けられた場合にはx軸上から負の方向をみて反時計回り、右方向に傾けられた場合にはy軸上から負の方向をみて時計回り、左方向に傾けられた場合にはy軸上から負の方向をみて反時計回りの方向に、テキストを回転させる。なお初期状態は、テキストの表示方向は、ユーザに対して正面方向であるとする。これを模式的に示すのが図15である。
例えばユーザが携帯電話機を右方向に傾けた場合、図16に示すように、テキストの中心点から右方向に傾いた状態となる。
なお携帯電話機を傾けることでその傾き方向、傾き量に応じて表示方向を決定するほか、入力装置13において上下左右方向が入力され、その入力を方向決定処理部54で受け付けることによって当該テキストの表示方向を変更しても良い。
このようにしてユーザによって入力されたテキストの表示方向の情報、例えばx軸、y軸に対する傾きの角度などの情報を記憶する。
テキストの表示方向を決定すると、次にそのテキストの表示サイズ(大きさ)を決定する処理をサイズ決定処理部55で行う(S150)。これは、方向決定処理部54でテキストの表示方向を決定すると、図17に示すようなテキストの表示サイズの決定を行うことを促す画面を表示する。
そしてユーザが携帯電話機を前後左右に傾けることで、その傾き方向、傾き量を動き検出装置16が検出する。そして、その傾き方向、傾き量の情報を動き検出装置16からサイズ決定処理部55が受け付けることによって、傾き方向、傾き量に応じて、当該テキストの表示サイズを変更する。
つまりテキストの中心点を表示サイズ変更の中心点とし、前方向に傾けられた場合にはテキストの高さを小さくし、後ろ方向に傾けられた場合にはテキストの高さを大きくし、右方向に傾けられた場合にはテキストの幅を大きくし、左方向に傾けられた場合にはテキストの幅を小さくするように、テキストの表示サイズを変更する。これを模式的に示すのが図18である。
例えばユーザが携帯電話機を左方向に傾けた場合、図19に示すように、テキストの幅が小さい状態となる。
なおサイズ決定処理部55におけるテキストの表示サイズの決定処理の際には、テキストの表示サイズと背景の画像データの表示サイズとを比較し、テキストの表示サイズが背景の表示サイズを超えないようにその変更範囲に制限を設けても良い。また画像データの表示サイズの所定割合、例えば7割を超えないように変更範囲に制限を設けても良い。更に、その変更範囲として、テキストの表示サイズが所定の表示サイズ未満にならないように小さいサイズへの変更範囲の制限を設けても良い。
なお携帯電話機を傾けることでその傾き方向、傾き量に応じて表示サイズを決定するほか、入力装置13において上下左右方向が入力され、その入力をサイズ決定処理部55で受け付けることによって当該テキストの表示サイズを変更しても良い。
このようにしてユーザによって入力されたテキストの表示サイズの情報、例えばテキストの縦横のサイズの情報を記憶する。
テキストの表示サイズを決定すると、次にそのテキストの回転位置を決定する処理を回転位置決定処理部56で行う(S160)。これは、サイズ決定処理部55でテキストの表示サイズを決定すると、図20に示すようなテキストの回転位置の決定を行うことを促す画面を表示する。
そしてユーザが携帯電話機を左右に傾けることで、その傾き方向、傾き量を動き検出装置16が検出する。そして、その傾き方向、傾き量の情報を動き検出装置16から回転位置決定処理部56が受け付けることによって、傾き方向、傾き量に応じて、当該テキストの回転位置を決定する。
つまりテキストの中心点を回転の中心点とし、右方向に傾けられた場合には中心点を中心として、ユーザからみて時計回りにテキストを回転させ、左方向に傾けられた場合には中心点を中心としてユーザからみて反時計回りにテキストを回転させる。なお初期状態は水平位置とする。これを模式的に示すのが図21である。
例えばユーザが携帯電話機を左方向に傾けた場合、図22に示すように、テキストの中心点を中心として、反時計回りにテキストが回転した状態となる。
なお携帯電話機を傾けることでその傾き方向、傾き量に応じて回転位置を決定するほか、入力装置13において左右方向が入力され、その入力を回転位置決定処理部56で受け付けることによって当該テキストの回転位置を変更しても良い。
このようにしてユーザによって入力されたテキストの回転位置の情報、例えば水平状態から回転させた角度の情報を記憶する。
以上のようにして、テキストの表示位置、表示方向、表示サイズ、回転位置を決定すると、カラー決定処理部57は、当該テキストのフォントが色つきであるかどうかを判定し(S170)、色つきでない場合にはフォントに対する色度、その彩度及び明度の選択の処理をカラー決定処理部57で行う(S180、S190)。またテキストのフォントが色つきである場合には、S200の処理にうつる。なお、フォントが色つきであるとは、S120で選択したフォントについて、レンダリングすべき色度、及びその彩度と明度が定められている場合を意味しており、フォントが色つきでないとは、S120で選択したフォントについて、レンダリングすべき色度、及びその彩度と明度が定められていない場合を意味している。なお上述のテキストに対する各処理において、S120で選択したフォントが色つきである場合にはその色度、及び彩度と明度でレンダリングを行い、S120で選択したフォントが色つきではない場合には予め設定されている色度(好ましくは目立つ色)、及び彩度と明度でレンダリングを行った後、後述するS180及びS190の処理において、フォントに対して実際にレンダリングする色度、及び彩度と明度の決定を行う。
また上述のS170において、フォントに対して色つきであるか否かは以下のように判定すればよい。すなわちフォントのグリフデータはラスタ形式であって、アルファ値(アルファチャンネル)とRGB値とを有している。そしてフォントが色つきである場合にはアルファ値とRGB値とが設定されており、フォントが色つきでない場合にはアルファ値のみが設定されている(RGB値が設定されていない)。そこでフォントのグリフデータに対して、カラー決定処理部57は、RGB値が設定されていない場合にはフォントが色つきではないと判定し、RGB値が設定されている場合にはフォントが色つきであると判定すればよい。
S170においてフォントが色つきではないと、カラー決定処理部57で判定すると、当該フォントの色度を決定する処理をカラー決定処理部57で行う(S180)。これは、回転位置決定処理部56でテキストの回転位置を決定し、テキストのフォントが色つきではないと判定した場合に、図23に示すようなテキスト(フォント)の表示色の決定を行うことを促す画面を表示する。
なおテキストを表示する色度、及び彩度と明度を決定するカラー決定処理部57において、本実施例ではHSV色空間に基づいて決定する場合を説明するが、それ以外の色空間に基づいて決定することも出来る。
まずユーザが携帯電話機を左右に傾けることで、その傾き方向、傾き量を動き検出装置16が検出する。そして、その傾き方向、傾き量の情報を動き検出装置16からカラー決定処理部57が受け付けることによって、傾き方向、傾き量に応じて、HSV環上のHue値を決定する。
これを模式的に示す画面の一例が図24である。
例えばユーザが携帯電話機を右方向に傾けた場合にはその傾き量に応じて、ユーザからみて時計回りに選択マークがHSV環上を移動し、それに伴ってHue値(色度)が増加する。また左方向に傾けた場合にはその傾き量に応じて、ユーザからみて反時計回りに選択マークがHSV環上を移動し、それに伴ってHue値が減少する。そしてその各時点において対応したHue値で当該テキストを、選択されたフォントでレンダリングして表示を行う。このような操作によってテキスト(フォント)の色度が初期値(緑色)から赤色に変更された場合を模式的に示すのが図25である。
なお携帯電話機を傾けることでその傾き方向、傾き量に応じて色度を決定するほか、入力装置13において左右方向が入力され、その入力をカラー決定処理部57で受け付けることによって当該テキスト(フォント)の色度を決定しても良い。
このようにしてユーザによって入力されたテキストの色度(Hue値など)の情報を記憶する。
このようにしてテキストの色度を決定すると、当該フォントの彩度及び明度を決定する処理をカラー決定処理部57で行う(S190)。これは、カラー決定処理部57でテキスト(フォント)の色度を決定し、図26に示すようなテキスト(フォント)の彩度及び明度の決定を行うことを促す画面を表示する。
そしてユーザが携帯電話機を前後左右に傾けることで、その傾き方向、傾き量を動き検出装置16が検出する。そして、その傾き方向、傾き量の情報を動き検出装置16からカラー決定処理部57が受け付けることによって、傾き方向、傾き量に応じて、HSV環上のSaturation値(彩度)、Value値(明度)を決定する。
これを模式的に示す画面の一例が図27である。
例えばユーザが携帯電話機を前方向に傾けた場合にはその傾き量に応じて、選択マークがHSV環の三角形において上方に移動し、それに伴ってSaturation値が増加し、後ろ方向に傾けた場合にはその傾き量に応じて、選択マークがHSV環の三角形において下方に移動し、それに伴ってSaturation値が減少する。また右方向に傾けた場合には、選択マークがHSV環の三角形において右方に移動し、それに伴ってValue値が増加し、左方向に傾けた場合には、選択マークがHSV環の三角形において左方に移動し、それに伴ってValue値が減少する。そしてその各時点において対応したSaturation値、Value値で当該テキストを、選択されたフォントでレンダリングして表示を行う。このような操作によってテキスト(フォント)の彩度及び明度が決定された場合を模式的に示すのが図28である。なおSaturation値の初期値は100%、Value値の初期値は50%とする。
また携帯電話機を傾けることでその傾き方向、傾き量に応じて彩度及び明度を決定するほか、入力装置13において上下左右方向が入力され、その入力をカラー決定処理部57で受け付けることによって当該テキスト(フォント)の彩度及び明度を決定しても良い。
このようにしてユーザによって入力されたテキストの彩度及び明度(Saturation値、Value値)の情報を記憶する。
なお上記のように決定したHSV値を所定の方法でRGB値に変換し、グリフデータのRGB値に用いても良い。
以上のようなテキスト処理部5における各処理を実行することで、背景として選択された画像データに、ユーザが入力したテキストを、希望する表示位置、表示方向、表示サイズ、回転位置、色度、彩度及び明度で合成することが出来る。
カラー決定処理部57において彩度及び明度を決定すると、ユーザが携帯電話機において、画像を合成して保存する所定の操作を入力装置13から入力することで、その入力を受け付ける。そして、合成画像保存処理部6は、テキスト処理部5の各処理で取得した各情報に基づいて、画像データ取得部4で取得(ロード)した画像データと、テキスト入力受付部51で受け付けたテキストを、フォント選択受付部52で選択したフォントのグリフデータとを合成し、合成画像データとして合成画像データ記憶部7に記憶させる(S200)。このようにして合成された合成画像データの一例が図38である。
以上のようにして生成された合成画像データを電子メールに挿入することによって、従来の装飾された電子メールよりも、演出効果の高い電子メールを送信することが可能となる。特に、従来の装飾された電子メールでは、テキストの入力位置などが定められていたが、テキストを背景となる画像データにあうように、その表示位置や方向、サイズなど様々にユーザがアレンジして生成した合成画像データを電子メールとして送信することが可能となる。
実施例1における各処理を実行することによって、背景として選択した画像データにテキストのグリフデータを合成することが出来るが、単に合成するだけでは、背景の画像データにおける環境光がテキストのグリフデータに及んでいないため、綺麗になじまない。
そこで上述の実施例1において、更に、環境光を反映した上で合成処理を、合成画像保存処理部6が行うと良い。
具体的には、上記画像データにおいて、テキストのグリフデータを配置する範囲のピクセルの明度の平均を合成画像保存処理部6で算出し、またその範囲の画像データのピクセルの明度のガウスぼかし(ガウスぼかしはガウスぼかし関数などを用いることによって算出可能である)を合成画像保存処理部6で算出し、テキストのグリフデータの各ピクセルについて、その位置のガウスぼかし明度が、上記で算出した平均明度より高ければグリフデータのピクセルの明度を所定値だけ高くし、そうでない場合には当該ピクセルの明度を所定値だけ低くする処理を実行する。なお、ガウスぼかし以外の平滑化処理の方法を用いて同様の処理を実行することも出来る。
以上のような処理を行うことで、環境光を背景の画像データになじませる処理を実現することが可能となり、背景の画像データとテキストがより馴染むこととなる。
上述のテキスト処理部5における各処理では、S120でユーザが選択したフォントで当該テキストのグリフデータをリアルタイムにレンダリングしながら処理を実行している。これはユーザによる入力値をリアルタイムに反映することで、ユーザがその入力結果を容易に認識できるようにするためである。
そのためには背景とした画像データにテキストのグリフデータを高速にレンダリングする必要があるが、携帯電話機の場合にはパーソナルコンピュータなどとは異なり、その性能に限界があることから、そのままでは困難である。
このような問題点から、画像処理を行う場合には、その処理性能に併せて画質を落とすなどによって処理速度の向上を図ることが従前より行われている。しかし、その場合、生成される合成画像データも低画質となってしまうこととなるが、ユーザは高画質の画像データを送信することを望んでいる。特に近年のように、携帯電話機の撮像装置15の高画質化が進んでいる状態においてはなおのことである。
そこで上述の実施例1の処理において、処理に負荷がかかるテキストの表示位置の決定処理、表示方向の決定処理、表示サイズの決定処理、回転位置の決定処理、カラー決定処理については、高速モードで実行するものの、合成画像を保存する処理については、高画質モードで処理を行わせるように構成することも出来る。
つまり位置決定処理部53、方向決定処理部54、サイズ決定処理部55、回転位置決定処理部56、カラー決定処理部57においては、その処理の負荷を軽減するために、実施例2における環境光に対する処理及びアンチエイリアス処理を行わずに各手段における処理を実行する。つまり環境光に対する処理、アンチエイリアス処理を行うことによって、テキストのグリフデータと背景の画像データとは綺麗に馴染むこととなるが、これらの処理には負荷が発生することから、処理能力が高くない携帯電話機の場合には描画が遅延し、操作に対するストレスになりかねない。またテキスト処理部5における各処理は、背景の画像データにどのようにテキストのグリフデータを合成するか、その表示位置、表示方向、表示サイズ、回転位置、グリフデータの色度、彩度及び明度(HSV値)を決定することが重要であって、それさえ決まれば、それらの各情報に基づいて、合成画像保存処理部6における、背景の画像データとテキストのグリフデータとの合成処理の際にのみ環境光に対する処理、アンチエイリアス処理を行えば何等不都合はない。なぜならば実際に電子メールで送信される合成画像データは、合成画像保存処理部6で合成された後の画像データのみであって、テキストをどの位置に表示させるか、といったことを決定する際の画像データは、電子メールで送信されないからである。
そこで上述の位置決定処理部53、方向決定処理部54、サイズ決定処理部55、回転位置決定処理部56、カラー決定処理部57における各処理の際に、テキストのグリフデータを背景の画像データにレンダリングする場合には、高速モードとして環境光に対する処理、アンチエイリアス処理のいずれかまたは双方を行わないことによって、携帯電話機に対する負荷を軽減し、それらの処理を高速に実現する。その一方で、合成画像保存処理部6でテキストのグリフデータと背景の画像データとを合成する際には、上述の各処理における各情報に基づいて、実施例2の環境光に対する処理、アンチエイリアス処理を行うことで高画質の合成画像データとすることが出来る。
携帯電話機に備える撮像装置15で撮像した場合、撮像された画像データにはレンズ歪みが存在する。そしてレンズ歪みを考慮せずにテキストのグリフデータを合成すると、画像データの辺縁部について、特に綺麗に馴染まない。そこで合成画像保存処理部6は、レンズ歪みも加味してテキストのグリフデータを、背景の画像データに合成すると良い。
例えば、格子を撮像した場合、レンズ歪みが存在しないとするならば図29のように撮像されるはずである。そこに図30に示す格子を合成するとしたら、綺麗に馴染み、図31のようになる。ここで図29が上述の背景の画像データであり、図30の格子がテキストのグリフデータに相当する。
しかし実際に、図29と同一の格子を撮像した場合、レンズ歪みが存在することから、その撮像された画像データは図32のようになる(なお図32では、わかりやすさのため、レンズ歪みを強調して示している)。そこに図30の格子を合成したとしても、図33に示すように、背景の画像データのレンズ歪みがテキストのグリフデータにまで及ばず、合成した画像も馴染まないものとなる。
そこで本実施例では、更に上述の実施例1乃至実施例3に加え、背景の画像データのレンズ歪みを加味してテキストのグリフデータを合成する処理を行う場合を説明する。
まず本実施例においては、テキストのグリフデータ全体を一つの矩形とせず、一辺が所定ピクセル(例えば40ピクセル)のメッシュに分け、その各メッシュに対して数1により樽型歪みの補正処理を行った上で合成処理を行う。
ただし画像データの中心を(0,0)とし、画像データの縦横サイズが(2w,2h)、メッシュの頂点の歪み適用前の座標が(x,y)、適用後の座標が(dx,dy)、歪み係数をdとする。
なお上述の数1において歪み係数dは、携帯電話機に備えられた撮像装置15のレンズによって異なるが、例えば−0.04などの値を用いることが出来る。
以上のような処理を合成画像保存処理部6が、テキストのグリフデータを背景の画像データに合成する処理を行う際に実行することで、レンズ歪みをも加味した、より馴染んだ合成画像データとすることが出来る。図34に、上述のレンズ歪みの補正処理を行った場合の一例を示す。
上述の各実施例においてテキストを表現するにはどのようなフォントを用いても良いが、演出効果を高めるためには専用のフォントを用いることが好ましい。しかしフォントのグリフデータはラスター形式であって、フォントを携帯電話機のメモリ上にロードする際に、すべてのグリフデータをラスター形式で展開することは、メモリ性能が高くない携帯電話機においては制約上行えない。
しかしユーザは携帯電話機の入力装置13を用いて、背景となる画像データに合成させるテキストを自由に入力することから、テキストがすべてのグリフデータを使用する可能性も否定できない。また背景となる画像データにテキストのグリフデータを合成して、合成画像データを電子メールとして送信する機能であることの性質上、画像データに合成するテキストのグリフデータはすべて同時に可視状態となっており、かつ、テキスト処理部5におけるテキストに対する各処理の際に、ユーザの入力に従って、それらのグリフデータが高速に再描画される必要性がある。従って、すべてのグリフデータがラスター形式で携帯電話機のメモリ上に展開できなければならない。
そこで本実施例では、携帯電話機においても上記課題を解決し得る場合を説明する。すなわち、本実施例においては、入力されたテキストに含まれるグリフデータの種類の数によって携帯電話機のメモリ上のグリフデータの解像度を変更しながら、それをロードする場合を説明する。このように、本実施例の携帯電話機においては、フォントに対する処理を実行するフォント処理部(図示せず)を備えている。
まずフォント処理部は、テキスト入力受付部51で受け付けた、ユーザにより入力されたテキストから、使用するグリフデータの種類の数を判定する(この種類の数をCとする)。そしてグリフデータのために使用する総メモリ量を設定する(この総メモリ量をMとする)。総メモリ量は予め設定しておいても良いし、何らかの演算により算出することで設定しても良い。
次にフォント処理部は、グリフデータの最大寸法に基づいて、グリフデータ一つに使用する最大のメモリ量を算出する(このメモリ量をGとする)。そして数2を演算することでSを算出する(ただしSは整数に切り上げる)。
数2を用いて算出したSに基づいて、各グリフデータをロードする際に、各グリフデータの縦横の解像度をそれぞれS分の1にリサンプルしながら、携帯電話機のメモリにロードを行う。
本実施例の処理を実行することによって、グリフデータをロードするために使用する総メモリ量を一定以下に抑えることが可能となる。使用されるグリフデータの種類の数と総メモリ量との関係性を示すグラフを図35に示す。
なお、グリフデータの種類の数が増加するに従い、グリフデータの解像度が低下することとなるが、画質に与える影響は軽微である。なぜならば、グリフデータの種類の数が多い場合にはテキストに含まれる文字の数も多い。このときテキスト全体が背景となる画像データに収まる程度のサイズでテキストが描画されるので、個々のグリフデータの解像度が低下したとしても画質に対して与える影響は小さくなるからである。
上述の実施例1乃至実施例5においては、背景となる画像データをユーザが選択し、入力したテキストの表示位置、表示方向、表示サイズ、回転位置、カラーなどをユーザが決定する場合であったが、予めテンプレートを携帯電話機に記憶させておくことで、ユーザによる操作入力を減らすことも出来る。この場合を本実施例では説明する。
つまり本実施例の場合には、テンプレートとして予め画像データ記憶部3に記憶された画像データをユーザが選択し、その画像データに合成したいテキストをユーザが入力するだけで、画像データに入力したテキストが合成される場合である。つまりユーザはテンプレートを選択する手間と、テキストを入力する手間だけしか発生しない。
画像データ記憶部3に記憶した、テンプレートとして使用可能な画像データに、テキストを表示するフォント、テキストの表示位置、表示方向、表示サイズ、回転位置、色度、彩度及び明度(HSV値)などの情報が対応づけて記憶されている。つまり実施例1などにおいてテキスト処理部5でユーザが入力を行っていた情報が、テンプレートの画像データに対応づけて記憶されている。
例えば図5のメニュー画面からユーザがテンプレートである「すなはま」を選択した場合、その選択を受け付けることで、画像データ取得部4は、画像データ記憶部3から「すなはま」のテンプレートの画像データと、テキストを表示するフォント、テキストの表示位置、表示方向、表示サイズ、回転位置、色度、彩度及び明度(HSV値)などの情報を画像データ記憶部3から取得する。
このようにテンプレートをユーザが選択することで、画像データ取得部4は、電子メールの背景として使用する画像データを取得(ロード)する。そして図36に示すようなテキストの入力を促す画面が表示される。
この画面が表示されると、ユーザが入力装置13から何らのボタン等を押下することによって、実施例1の図8に示すテキストエディタを起動させる。そしてこのテキストエディタに、ユーザは、入力装置13からメッセージを入力する。ここで入力されたメッセージは、テキスト入力受付部51で受け付ける。例えば「こんにちは」と入力したとすると、それをテキスト入力受付部51が受け付ける。
このようにしてメッセージとするテキストの入力を受け付け、ユーザが携帯電話機において、画像を合成して保存する所定の操作を入力装置13から入力することで、合成画像保存処理部6は、テンプレートの画像データに対応づけられたテキストを表示するフォント、テキストの表示位置、表示方向、表示サイズ、回転位置、色度、彩度及び明度(HSV値)などの情報と、テキスト入力受付部51で受け付けたテキストの情報に基づいて、画像データ取得部4で取得(ロード)した画像データにテキストを合成し、合成画像データとして合成画像データ記憶部7に記憶させる。この場合の合成画像データの一例を図37に示す。
以上のようにして生成された合成画像データを電子メールに挿入することによって、従来の装飾された電子メールよりも、演出効果の高い電子メールを送信することが可能となる。またテンプレートとして表示位置などの情報が設定されているので、より簡便に、従来よりも演出効果の高い合成画像データを電子メールとして送信することが可能となる。
本発明の可搬型通信端末1のテキスト合成処理システム2により生成された合成画像データを電子メールとして送信することによって、従来の装飾された電子メールよりも、演出効果の高い電子メールを実現することが出来る。
可搬型通信端末のハードウェア構成の一例を模式的に示す概念図である。
テキスト合成処理システムの構成の一例を模式的に示す概念図である。
テキスト処理部の構成の一例を模式的に示す概念図である。
本発明の処理の一例を示すフローチャートである。
メニュー画面の一例である。
背景として選択された画像データの一例である。
テキストの入力を促す画面の一例である。
テキストエディタの画面の一例である。
フォントを選ぶことを促す画面の一例である。
フォントを選ぶ画面の一例である。
テキストの表示位置を決定することを促す画面の一例である。
テキストの表示位置を決定する際の初期状態の画面の一例である。
テキストの表示位置を変更した際の画面の一例である。
テキストの表示方向を決定することを促す画面の一例である。
テキストの表示方向を決定する処理を模式的に示す図である。
テキストの表示方向を変更した際の画面の一例である。
テキストの表示サイズを決定することを促す画面の一例である。
テキストの表示サイズを決定する処理を模式的に示す図である。
テキストの表示サイズを変更した際の画面の一例である。
テキストの回転位置を決定することを促す画面の一例である。
テキストの回転位置を決定する処理を模式的に示す図である。
テキストの回転位置を変更した際の画面の一例である。
テキストの色度を決定することを促す画面の一例である。
テキストの色度を決定する処理を模式的に示す図である。
テキストの色度を変更した際の画面の一例である。
テキストの彩度及び明度を決定することを促す画面の一例である。
テキストの彩度及び明度を決定する処理を模式的に示す図である。
テキストの彩度及び明度を変更した際の画面の一例である。
背景の画像データを想定した格子を撮像した場合に、レンズ歪みが存在しない場合の撮像した画像データの一例である。
テキストのグリフデータを想定した格子の一例である。
図29の画像データに図30を合成した場合の一例である。
背景の画像データを想定した格子を撮像した場合に、レンズ歪みが存在する場合の撮像した画像データの一例である。
図32の画像データに図30を合成した場合の一例である。
図30にレンズ歪み補正処理を施して図32の画像データに合成した場合の一例である。
使用されるグリフデータの種類の数と総メモリ量との関係性を示すグラフの一例である。
テンプレートである画像データを用いた場合に、テキスト入力を促す画面の一例である。
テンプレートである画像データを用いて、テキストが合成された場合の合成画像データの画面の一例である。
合成画像データの画面の一例である。
符号の説明
1:可搬型通信端末
2:テキスト合成処理システム
3:画像データ記憶部
4:画像データ取得部
5:テキスト処理部
6:合成画像保存処理部
7:合成画像データ記憶部
10:演算装置
11:記憶装置
12:表示装置
13:入力装置
14:通信装置
15:撮像装置
16:動き検出装置
51:テキスト入力受付部
52:フォント選択受付部
53:位置決定処理部
54:方向決定処理部
55:サイズ決定処理部
56:回転位置決定処理部
57:カラー決定処理部